我需要澄清一下我们使用cv2和matplotlib读取图像文件的方式。
我有一个图像掩码文件在我的存储,这是512 x 512,单通道掩码的东西。
以下是我的观察:
img_plt = plt.imread('mask1.png')
img_cv2 = cv2.imread('mask1.png')
print(np.unique(img_cv2),np.unique(img_plt))
字符串
(array([ 0,255],dtype=uint8),array([0,1.],dtype=float32))
所以,我们可以看到这里:CV2读取的单通道图像文件为0s和255s,而matplotlib读取的图像为0.0s和1.0s
我的问题是:
如果我们用matplotlib保存文件,用cv2读取同一个文件,会有什么问题吗?反之呢?
1条答案
按热度按时间h4cxqtbf1#
这两种方法之间没有区别,因为它们都将图像导出为PNG文件。事实上,您可以将cv2或plt读取的图像转换为其他格式。
您可以尝试以下代码:
字符串
这里,cv2plt_img等同于plt_img。