io.imread无法正确读取灰度jpg图像文件。产生只有灰色噪点的图像。
收到此错误:“图像数据范围低;显示对比度增强的图像。”
我有一堆20个几乎相同的图像,它们的尺寸相同,为1024 x1280。有些显示正常,但有些显示为灰色噪声。我尝试了几个读取插件,并得到相同的结果。
image = io.imread('Image_00019.jpg')
plt.imshow(image, cmap='gray')
预期:图像正常显示。
实际:显示的图像只是灰色杂讯。
答案 0 :(得分:0)
看起来它与颜色图的自动缩放有关。显然,该解决方案涉及将vmin和vmax参数设置为原始图像的比例,而不是默认情况下使用的imread读取的数组的比例。
不幸的是,imread函数无法从原始图像文件确定真实比例,并将该信息自动传递给imshow。但是我认为这是多余的附加信息,因为imread只是严格捕获像素阵列。这不是图像显示失真的常见原因吗?
如果有人有任何其他评论,请随时添加。
problems low contrast image(contrast stretching) in matplotlib