我想为小(调整大小)图像(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
有关。
有两个输出的图像。正确的输出:
错误的输出(请参见面部周围的矩形):