В приложении OpenCV
с Python
у меня есть маска и изображение RGB
, я хочу извлечь часть изображения, которая соответствует маске, но я не знаю, как это сделать.Извлечение части изображения в соответствии с маской в OpenCV
я это сделать:
temp = cv2.bitwise_and(img ,img, mask=feature_map)
, но это дает мне и ошибки:
cv2.error: /Users/mee/opencv/modules/core/src/arithm.cpp:1589: error: (-215) (mtype == CV_8U || mtype == CV_8S) && _mask.sameSize(*psrc1) in function binary_op
У меня нет настройки, чтобы попробовать сейчас, но чувствуется как '(mtype == CV_8U || mtype == CV_8S)' part говорит, что ваша маска должна быть 'CV_8UC3'. – seleciii44
Используйте copyTo для черного инициализированного изображения, с перевернутой маской – Miki
@ seleciii44 Я ожидал бы, что маска будет единственным каналом, но я думаю, что ваше наблюдение за типом правильное. Я также ожидал, что маска будет инвертирована перед нанесением на изображение. – beaker