代码:
import cv2 as cv
import matplotlib.pyplot as plt
#读取图像
img = cv.imread("../data/images/zidane.jpg")
#显示图像
#2.1 OpenCV
cv.imshow("dili",img)
cv.waitKey(0)
cv.destroyAllWindows()
#2.2 matplotlib
plt.imshow(img[:,:,::-1])
plt.show()
复制
用opencv展示的结果:
用matplotlib展示的结果:
以上是读取彩色图,读取灰度图👇👇:
import cv2
import cv2 as cv
import matplotlib.pyplot as plt
#读取图像
img = cv.imread("../data/images/zidane.jpg",0) #设置成灰度图
#显示图像
#2.1 OpenCV
cv.imshow("dili",img)
cv.waitKey(0)
cv.destroyAllWindows()
#2.2 matplotlib
plt.imshow(img,cmap=plt.cm.gray)#灰度图只有一个通道,不需要翻转
plt.show()
复制
保存灰度图:
cv.imwrite("../data/images/dili.jpg",img)
复制
关于翻转问题:
一般情况下的存储方式:【RGB】
这三个值是不一样的,每个通道是一个独立的灰度图,他们的参数是不一样的。如果是图像,里面的值都是0~255的,图上不是0~255是因为这是随便截的一个三维数组
等opencv(cv.imread)读出来是一个BGR通道,因此需要翻转(plt.imshow(img[:,:,::-1]))。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。