在Python OpenCV2中打开多通道图像

时间:2013-07-08 19:31:59

标签: python image opencv

我有一个4波段多声道图像(TIF),它是一个无符号的16位图像。我使用以下内容:

    opencv2 
    python 

我在代码的开头做了以下内容

    import cv2 

当我使用

  i = cv2.imread('img.tif') 

它正在读取所有四个乐队但是作为UINT8。当我使用

  i = cv2.imread('img.tif', cv2.CV_16U)

它只读取图像的一个通道。如何读取16位无符号的所有四个通道?

1 个答案:

答案 0 :(得分:1)

尝试传递旗帜cv2.IMREAD_ANYDEPTHdocumentation表示此标志将:

  

如果设置,当输入具有相应深度时返回16位/ 32位图像,否则将其转换为8位。

i = cv2.imread('img.tif', flags=cv2.IMREAD_ANYDEPTH)

如果不起作用,请尝试使用cv2.IMREAD_UNCHANGED标志。它没有记录,但看起来它也可能有用。