我们来看看下面这张图,美不美
这么好看的图是咋个整出来的呢?哦!原来是这样:一幅图像III由很多个像素点组成的,而每个像素点又包含RGB(red,green,blue)三个通道值,范围是0-255,这样我们就能在计算机上看见彩色图片,画个丑图将就看
单独提取三个通道试试
灰度化怎么使得图像灰度化呢?
需要R=G=B=gray
我们现在列出一些方法来计算这个gray值
gray=Rgray=Rgray=R
or
gray=Ggray=Ggray=G
or
gray=Bgray=Bgray=B
gray=max(R,G,B)gray=max(R,G,B)gray=max(R,G,B)
三、RGB中平均值作为graygray=mean(R,G,B)gray=mean(R,G,B)gray=mean(R,G,B)
四、RGB中加权平均值作为graygray=0.299∗R+0.578∗G+0.114∗Bgray=0.299 * R+0.578 * G +0.114 * Bgray=0.299∗R+0.578∗G+0.114∗B
python+opencv可以调函数gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
MATLAB中的函数是gray=rgb2gray(img) 当然也可以自己写,附上自己写的加权平均数的python代码def rgb2gray(img):
b=img[:,:,0].copy()
g=img[:,:,1].copy()
r=img[:,:,2].copy()
out = 0.2126 * r + 0.7152 * g + 0.0722 * b
img[:,:,0]=out
img[:,:,1]=out
img[:,:,2]=out
img = img.astype(np.uint8)
return img
------------------------------------------------------------------------------------------------------------
结果还是展示一下具体的情况选择具体的方法来做~