首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在OpenCV中读取.tif图像

如何在OpenCV中读取.tif图像
EN

Stack Overflow用户
提问于 2019-07-19 04:13:38
回答 2查看 15K关注 0票数 3

我想在OpenCV Python中加载并显示一个.tif图像。我使用cv2.imread('1_00001.tif')加载图像,然后使用plt.imshow(img)显示它,但是显示的图像是全黑的,而不是它最初的样子。

我可以使用PIL的Image.open()和matplotlib的mpimg.imread()正确地加载和显示图像,所以我认为这是cv2特有的问题。但是,我也已经使用相同的cv2.imread()函数成功地显示了.jpg和.tiff图像,因此这对于特定的.tif图像也可能是一个问题。

代码语言:javascript
运行
复制
import cv2
import matplotlib.pyplot as plt

img = cv2.imread('1_00001.tif')
plt.imshow(img)

我希望看到一个内部有几条模糊线条的圆的图像,但实际输出的只是一张黑色图像。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-02-17 02:32:21

检查您的图像像素值。plt.imshow剪切的像素值从0到255,所以我猜你输入的是一个大于255的PNG图像,它们都被剪切到255(黑色)。Usually you'll want to normalize a TIFF or PNG image,然后将它们提供给plt.imshow,所以有趣的是,您在一些tiff图像上看不到这个问题。

票数 2
EN

Stack Overflow用户

发布于 2019-07-19 04:20:39

我认为,一些tiff标签在openCV try中无法正常工作

代码语言:javascript
运行
复制
img=cv2.imread("YOURPATH/opencv/samples/data/lena.jpg",cv2.IMREAD_COLOR)
cv2.imwrite("1_00001.tif",img)
img1=cv2.imread("1_00001.tif")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57102018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档