我想用Python OpenCV从tiff图像中读取alpha通道。我用的是带OpenCV 2.4.5-3模块的热顶篷。
我使用cv2.imread遵循了OpenCV网站的教程,但似乎不起作用。
我现在拥有的是:
import cv2
image = cv2.imread('image.tif', -1)
然后我使用:print (image.shape)
,它仍然显示(81928192,3)。但是我用Matlab读取了同样的图像,我可以看到这个图像的维数是(819281924)。
我不知道该怎么读这张图片的alpha通道。
提前谢谢!! 南
我在通过PIL库将原始图像转换为RBGA格式时找到了解决这个问题的方法。
输出(800、689、4)
这是一个老问题,但只是为了防止别人发现:如果img.tiff是一个4通道tiff,那么
收益率(212296,4)如预期。
如果你使用
您可以引用alpha层(
channels[3]
)-例如,作为掩码。这个想法来自How do I use Gimp / OpenCV Color to separate images into coloured RGB layers?,它巧妙地使用了一个假层和
merge
来恢复实际颜色的各个RGB层。我解决了同样的问题:
相关问题 更多 >
编程相关推荐