彩色图片转灰度图片,可以有多种方法,在这里我主要介绍三种简便的方法供大家参考。
1.利用opencv读取图片的时候,设置参数来转灰度图片,处理后通道数为1。
import cv2 img = cv2.imread("图片的路径",参数(0,1)) #0表示灰色图片 1表示原始图片 ,默认为1
2.利用cv2.cvtColor()函数来实现,一般都是使用它来完成灰度处理,处理后通道数为1。
cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
3.自己手动实现,取每个通道数的平均值来作为新的值,处理后通道数仍为3。
import cv2 img = cv2.imread('a.jpg') w,h,_ = img.shape for i in range(w): for j in range(h): sum = a[i,j].sum() gray = int(sum) / 3 for k in range(3): a[i,j,k] = gray cv2.imshow("gray",a) #显示图片 ,第一个参数为窗口的名称 ,第二个参数为要显示的图片 cv2.waitKey(0)
thank for your reading
公众号:FPGA之旅