美文网首页
49. 灰度直方图源码

49. 灰度直方图源码

作者: 十里江城 | 来源:发表于2019-11-13 08:52 被阅读0次

灰度直方图绘制步骤:

  • 读取维度信息
  • 读取灰度图片
  • 灰度值计数与归一化
  • 设置横纵坐标
  • 显示灰度直方图
import cv2
import numpy as np
import matplotlib.pyplot as plt

# 1 读取维度信息
img = cv2.imread('2.jpg', 1)
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]
print('imgInfo: ', imgInfo)

# 2 读取灰度图片
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

# 3 灰度值计数
count = np.zeros(256, np.float)
for i in range(0, height):
    for j in range(0, width):
        index = int(gray[i, j])
        count[index] =  count[index] + 1
# 归一化数据
for i in range(0, 255):
    count[i] = count[i] / (height * width)
    
# 4 设置横纵坐标    
# 0~255 256点
x = np.linspace(0, 255, 256)
y = count 

# 5 显示灰度直方图  不透明设置: 1
plt.bar(x, y, 0.9, alpha = 1, color = 'b')
plt.show()

cv2.waitKey(0)

原图片维度信息与灰度直方图结果如下:


image.png

相关文章

网友评论

      本文标题:49. 灰度直方图源码

      本文链接:https://www.haomeiwen.com/subject/gixcictx.html