[英].png image fail to do binary gray, while .jpg image can
非常简单的代码,我可以从image1中读取图像为png或从image2中读取图像为jpg。 同一张图片,格式不同。
然后将较暗的部分过滤为黑色,将较亮的部分过滤为白色。
#image = mpimg.imread('image1.png')
image = mpimg.imread('image2.jpg')
gray = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
thresh = (180, 255)
binary = np.zeros_like(gray)
binary[(gray > thresh[0]) & (gray <= thresh[1])] = 1
问题很可能是由于matplotlib.image
成功读取png
而jpg
退回使用Pillow
所致。 读取的png
图像将是一个范围为0.0到1.0的浮点值数组,而读取的jpg
将是一个值为0..255的字节数组。 结果,您的剪辑操作将导致全黑图像,因为所有图像均低于1。
有关更多信息,请参见http://matplotlib.org/users/image_tutorial.html 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.