这篇文章主要为大家详细介绍了如何在python中利用opencv把图片转为灰度图,文中示例代码介绍的非常详细,具有一定的参考价值,发现的小伙伴们可以参考一下:
创新互联建站专注于钦南网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供钦南营销型网站建设,钦南网站制作、钦南网页设计、钦南网站官网定制、小程序开发服务,打造钦南网络公司原创品牌,更为您提供钦南网站排名全网营销落地服务。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最初的设计是用于编写自动化脚本,随着版本的不断更新和新功能的添加,常用于用于开发独立的项目和大型项目。
使用opencv将图片转为灰度图主要有两种方法,第一种是将彩色图转为灰度图,第二种是在使用OpenCV读取图片的时候直接读取为灰度图
。
将彩色图转为灰度图
import cv2 import numpy as np if __name__ == "__main__": img_path = "timg.jpg" img = cv2.imread(img_path) #获取图片的宽和高 width,height = img.shape[:2][::-1] #将图片缩小便于显示观看 img_resize = cv2.resize(img, (int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC) cv2.imshow("img",img_resize) print("img_reisze shape:{}".format(np.shape(img_resize))) #将图片转为灰度图 img_gray = cv2.cvtColor(img_resize,cv2.COLOR_RGB2GRAY) cv2.imshow("img_gray",img_gray) print("img_gray shape:{}".format(np.shape(img_gray))) cv2.waitKey()
img_reisze shape:(337, 600, 3)
img_gray shape:(337, 600)
使用opencv读取图片的时候,默认使用的是BGR来读取图片的,可以看到原始读取的图片是3通道的,经过转换之后变成了单通道。
直接将图片采用灰度图的方式进行读取
import cv2 import numpy as np if __name__ == "__main__": img_path = "timg.jpg" img = cv2.imread(img_path) #获取图片的宽和高 width,height = img.shape[:2][::-1] #将图片缩小便于显示观看 img_resize = cv2.resize(img, (int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC) cv2.imshow("img",img_resize) print("img_reisze shape:{}".format(np.shape(img_resize))) #读取灰度图 img_gray = cv2.imread(img_path,cv2.IMREAD_GRAYSCALE) #将图片缩小便于显示观看 img_gray = cv2.resize(img_gray, (int(width*0.5),int(height*0.5)),interpolation=cv2.INTER_CUBIC) cv2.imshow("img_gray",img_gray) print("img_gray shape:{}".format(np.shape(img_gray))) cv2.waitKey()
img_reisze shape:(337, 600, 3)
img_gray shape:(337, 600)
以上就是创新互联小编为大家收集整理的如何在python中利用opencv把图片转为灰度图,如何觉得创新互联网站的内容还不错,欢迎将创新互联网站推荐给身边好友。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款