图像处理

图片处理-opencv-6.灰度直方图

2020-10-19  本文已影响0人  lk311

灰度直方图

# 使用matplotlib绘制直方图
import cv2  
import numpy as np
import matplotlib.pyplot as plt

img = cv2.imread('data/test3.jpg')
src = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)


plt.figure(figsize=(10,4))
plt.subplot(1,2,1)
plt.imshow(src)
plt.title('src')
plt.xticks([]), plt.yticks([])

# ravel()将多维数组降为一维数组
# hist(数据源, 像素级)
plt.subplot(1,2,2)
plt.hist(src.ravel(), 256)
plt.title('histogram')
plt.show()
image.png

使用OpenCV绘制直方图

hist = cv2.calcHist(images, channels, mask, histSize, ranges, accumulate)

import cv2  
import numpy as np
import matplotlib.pyplot as plt

src = cv2.imread('data/test3.jpg')

histb = cv2.calcHist([src], [0], None, [256], [0,255])
histg = cv2.calcHist([src], [1], None, [256], [0,255])
histr = cv2.calcHist([src], [2], None, [256], [0,255])


plt.plot(histb, color='b')
plt.plot(histg, color='g')
plt.plot(histr, color='r')
plt.show()
image.png
上一篇 下一篇

猜你喜欢

热点阅读