Я хотел бы получить маску для небольшого (измененного размера) изображения (800x600).Затем я хотел бы изменить размер маски и применить ее к большему изображению (3000x2000).Какова была бы лучшая практика для этой цели?
Без изменения размера она работает нормально следующим образом, где mask
- это 800x600
mask2 = np.where((mask==1) + (mask==3),255,0).astype('uint8')
output = cv.bitwise_and(img2,img2,mask=mask2)
При изменении размера я также вижу прямоугольник (нежелательный), который янарисовали только изображение, но не маску.mask
- это 800x600, а mask2
и img3
- 3000x2000
mask2 = cv.resize(mask,dsize=(ih,iw),interpolation=cv.INTER_CUBIC)
mask3 = np.where((mask2==1) + (mask2==3),255,0).astype('uint8')
output = cv.bitwise_and(img3,img3,mask=mask3)
Я хотел бы знать, связана ли проблема с cv.resize
.
Есть изображениядва выхода.Правильный вывод:
Неправильный вывод (см. Прямоугольник вокруг лица):