opencv+python入门学习之二 图像灰度化

灰度化:加快处理速度 黑色到白色直接有不同的颜色深度(0,255),注意与黑白图像的区别
1.直接读成灰度图像

 img = cv.imread("image_2.jpg", cv.IMREAD_GRAYSCALE) 

2.读入RGB图像,分量法,以某个颜色值作为灰度图像值

img = cv.imread("image_2.jpg", cv.IMREAD_COLOR) 
for i in range(img.shape[0]):
    for j in range(img.shape[1]):
        img[i, j] =img[i, j, 0]

3.最大值法,以三元色的最大值作为灰度图像值

for i in range(img.shape[0]):
    for j in range(img.shape[1]):
        img[i, j] =max(img[i, j, 0],img[i, j, 1],img[i, j, 2])

4.平均值法,以三元色均值作为灰度图像值,注意,越界超过255

for i in range(img.shape[0]):
    for j in range(img.shape[1]):
        img[i, j] =(img[i, j, 0]+img[i, j, 1]+img[i, j, 2])/3

5.加权平均法,以0.11 R+0.59G+0.3B比例相加作为灰度图像值

for i in range(img.shape[0]):
    for j in range(img.shape[1]):
        img[i, j] =0.11*img[i, j, 0]+0.59*img[i, j, 1]+0.3*img[i, j, 2]

opencv 自带的灰度转换函数

gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)

opencv 自带的灰度转换函数

猜你喜欢

转载自blog.csdn.net/liuyang_1106/article/details/88227584