直方图均衡化

简介: 直方图均衡化
import cv2
import matplotlib.pyplot as plt
import numpy as np

img = cv2.imread('./image/dog.png')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

#Lena变黑
gray_dark = gray - 40
#Lena变亮
gray_bright = gray + 40

hist_gray = cv2.calcHist([gray],[0],None,[256], [0,255])
hist_dark = cv2.calcHist([gray_dark],[0],None,[256], [0,255])
hist_bright = cv2.calcHist([gray_bright],[0],None,[256], [0,255])

plt.plot(hist_gray)
plt.plot(hist_dark)
plt.plot(hist_bright)
plt.show()

#进行均衡化处理
dark_equ = cv2.equalizeHist(gray_dark)
bright_equ = cv2.equalizeHist(gray_bright)
cv2.imshow('gray_dark',np.hstack((gray_dark,dark_equ)))
cv2.imshow('gray_bright',np.hstack((gray_bright, bright_equ)))

cv2.waitKey(0)
cv2.destroyAllWindows()
目录
相关文章
|
26天前
|
计算机视觉
直方图均衡化
直方图均衡化是一种图像处理技术,通过改变图像灰度级分布,增强图像对比度。手动实现包括计算灰度直方图、像素总数、灰度分布频率、累积分布频率,然后归一化映射到新灰度级,最终得到增强对比度的图像。该方法适用于改善灰度集中或明暗对比不明显的图像,但全局处理可能导致背景干扰增强,丢失细节,且某些图像可能过度增强。局部直方图均衡化可作为改进方案。
12 1
|
7月前
|
计算机视觉 Python
直方图与直方图均衡化
直方图与直方图均衡化
|
20天前
|
计算机视觉
图像直方图
以下是内容摘要: 本文介绍了直方图在图像处理中的应用,包括图像增强和图像分割。直方图均衡化用于改善图像的亮度分布,而根据直方图可获取分割阈值以实现图像分割。此外,直方图对比有助于图像分类。直方图是表示图像亮度分布的图表,通过分析直方图的峰值可判断图像属于低调、中间调还是高调。直方图均衡化则能将图像转换为灰度分布更均匀的新图像。
11 0
|
4月前
|
算法 计算机视觉
OpenCV对图像进行Otsu二值分割、Canny边缘检测、Harris角点检测实战(附源码)
OpenCV对图像进行Otsu二值分割、Canny边缘检测、Harris角点检测实战(附源码)
36 0
|
6月前
|
C++
C++-灰度图上色GrayToColor
C++-灰度图上色GrayToColor
|
11月前
|
API 计算机视觉 Python
OpenCV_07 直方图:灰度直方图+直方图均衡化
直方图是对数据进行统计的一种方法,并且将统计值组织到一系列实现定义好的 bin 当中。其中, bin 为直方图中经常用到的一个概念,可以译为 “直条” 或 “组距”,其数值是从数据中计算出的特征统计量,这些数据可以是诸如梯度、方向、色彩或任何其他特征。
125 0
|
11月前
|
资源调度 算法 API
OpenCV_06 图像平滑:图像噪声+图像平滑+滤波
由于图像采集、处理、传输等过程不可避免的会受到噪声的污染,妨碍人们对图像理解及分析处理。常见的图像噪声有高斯噪声、椒盐噪声等。
103 0
|
编解码 Android开发 计算机视觉
多分辨率找图sift和直方图
牙叔教程 简单易懂
200 0
|
计算机视觉
灰度直方图及直方图均衡化
灰度直方图及直方图均衡化
68 0
|
计算机视觉 异构计算