OpenCV - Reading a 16 bit grayscale image

后端 未结 3 1869
离开以前
离开以前 2020-12-15 18:27

I\'m trying to read a 16 bit grayscale image using OpenCV 2.4 in Python, but it seems to be loading it as 8 bit.

I\'m doing:

im = cv2.imread(path,0)
         


        
相关标签:
3条回答
  • 2020-12-15 18:52

    Figured it out. In case anyone else runs into this problem:

    im = cv2.imread(path,-1)
    

    Setting the flag to 0, to load as grayscale seems to default to 8 bit. Setting to -1 loads the image as is.

    0 讨论(0)
  • 2020-12-15 18:55

    To improve readability use the flag cv2.IMREAD_ANYDEPTH

    image = cv2.imread( path, cv2.IMREAD_ANYDEPTH )
    
    0 讨论(0)
  • 2020-12-15 18:57

    I had the same issue (16-bit .tif loading as 8-bit using cv2.imread). However, using the -1 flag didn't help. Instead, I was able to load 16-bit images using the tifffile package.

    0 讨论(0)
提交回复
热议问题