Error with shadows
ll2pakll opened this issue · 6 comments
Hi, I occasionally get this error when I use A.RandomShadow(p=0.5). If I disable this augmenter in the conveyor, the error does not appear anymore. What can it be related to?
File "C:\Users****\anaconda3\envs\python_torch\lib\site-packages\albumentations\augmentations\functional.py", line 915, in add_shadow
cv2.fillPoly(mask, vertices, 255)
cv2.error: OpenCV(4.5.4)👎 error: (-5:Bad argument) in function 'fillPoly'
Overload resolution failed:
- Layout of the output array img is incompatible with cv::Mat
- Expected Ptrcv::UMat for argument 'img'
Hi. Is it possible that you provide an example that could be reproduced?
You may use Replay/Compose functionality to get the reproducibility.
мы можем говорить по русски?
Мне прислать видео или прислать пакет с кодом где я это всё запускаю?
Просто приведите кусок кода в коментарии с помощью которого можно воспроизвести проблему.
Что-то вроде такого:
import albumentations as A
import numpy as np
import random
import matplotlib.pyplot as plt
random.seed(0)
np.random.seed(0)
transform = A.Compose([A.RandomShadow(p=1)])
image = np.full([100, 100, 3], 255, dtype=np.uint8)
res = transform(image=image)["image"]
plt.imshow(res)
plt.show()
Не получится просто прислать часть кода, потому что там большой пакет, зависимый от датасетов, так что надо и датасет и пакет присылать и показывать как им пользоваться. Ошибка возникает только в процессе обучения нейросети, если запускать аугументатор отдельно, то ошибка эта не возникает. Я могу снять видео где покажу структуру пакета, и то при каких обстоятельствах возникает ошибка, а вы как программисты (я не программист), уже сможете указать какие именно части пакета прислать. Либо можно просто забыть об этом, потому что тени конечно хорошая идея, но я могу обойтись и без них.
Нет, так мы точно не поможем.
Просто поставтье try .. except
в этом месте и сохраните трансформы через A.save(transform, "file_path")
и сохраните изображение рядом. Можно использовать ReplayCompose
чтобы дополнительно сохранить на каких параметрах всё падает.
Но почти навярняка проблема в том, что изображение имеет неправильный тип данных.
Вполне возможно, тут в изображения прописаны метаданные - то бишь там хранятся и метки и предикт, сделано это при помощи пакета из DFL, такие изображения спокойно открываются везде, но разумеется там есть места в коде самого изображения, которые отличаются от обычных изображений. Но ошибка с ними возникает только в случае с shadow. Совет с try exept, можно попробовать, спасибо за помощь