直方图的均衡化原理及代码实现
创作时间:
作者:
@小白创作中心
直方图的均衡化原理及代码实现
引用
CSDN
1.
https://blog.csdn.net/AI_dataloads/article/details/133893140
直方图均衡化是一种用于增强图像对比度的图像处理技术。它的原理是通过重新分布图像的像素值,使图像的直方图变得更加均匀,从而增强图像中不同区域的亮度差异,使图像更具视觉吸引力和清晰度。
原理解释
- 计算原始图像的直方图:
- 首先,对输入的图像进行灰度化处理,将彩色图像转换为灰度图像。
- 然后,计算灰度图像的直方图,直方图是一个表示不同灰度级别在图像中出现频率的图表。
- 计算累积直方图:
- 累积直方图是将每个灰度级别的频率累积起来的直方图。
- 累积直方图的目的是为了确定每个灰度级别在均衡化后图像中所占的比例。
- 均衡化像素值:
- 对于每个像素,使用累积直方图来映射原始灰度级别到新的灰度级别。
- 这个映射过程将使直方图变得更加均匀,以便更多的像素值可以覆盖整个灰度范围。
- 创建均衡化后的图像:
- 使用映射后的灰度级别替代原始图像中的每个像素值。
- 这将生成一个均衡化后的图像,其中亮度差异更加明显,对比度增强。
- 优点和应用:
- 直方图均衡化可以用于图像增强、目标检测、图像分割和计算机视觉中的许多应用,特别是在具有低对比度的图像中。
- 它帮助凸显图像中的细节,改善可视化效果。
代码实现
import cv2
from matplotlib import pyplot as plt
import numpy as np
# 读取图像为灰度图像
face = cv2.imread('face1.jpg', cv2.IMREAD_GRAYSCALE)
# 计算并显示原始图像的直方图
phone_hist = cv2.calcHist([face], [0], None, [256], [0, 256])
plt.hist(face.ravel(), bins=256) # numpy中的ravel将数组多维度拉成一维数组
plt.show()
# 进行直方图均衡化
face_equalize = cv2.equalizeHist(face)
# 显示均衡化后的直方图
plt.hist(face_equalize.ravel(), bins=256) # numpy中的ravel将数组多维度拉成一维数组
plt.show()
# 横向拼接原始图像和均衡化后的图像
res = np.hstack((face, face_equalize))
cv2.imshow('face_equalize', res)
cv2.waitKey(100000)
# 使用CLAHE进行局部直方图均衡化
clahe = cv2.createCLAHE(clipLimit=1.0, tileGridSize=(16, 16)) # 通过类创建了一个局部均衡化对象
face_clahe = clahe.apply(face)
# 横向拼接原始图像、全局均衡化和局部均衡化后的图像
res = np.hstack((face, face_equalize, face_clahe))
cv2.imshow('face_equalize', res)
cv2.waitKey(100000)
运行结果
总结
直方图均衡化可以显著增强图像的对比度,使图像中的细节更加清晰。然而,需要注意的是,直方图均衡化可能会导致一些不希望的效果,如图像的噪声增强和失真。因此,在应用均衡化时,需要谨慎选择合适的参数和调整,以确保最佳的结果。
热门推荐
库车城尊古焕新
液体硅橡胶如何选择合适硬度?
AI技术如何赋能小程序开发:应用场景、新价值与整合方案
市北区打造“机构+社区+居家”三级养老服务体系
他们(不吃)的食物:忽视对老人的虐待?
维生素B6是改善睡眠、预防脑梗死的常用药,科学服用注意4点
农田水利灌溉渠道维护与管理策略
奔跑吧,“急救跑者”!
看剧普法 | 《凡人歌》:写好活在当下的法律注脚
高校专项计划的利弊
上海老城厢文化遗产保护与城市活力复兴:同济大学实践团队调研纪实
Excel中多个表格的单个存储方法详解
梨花声音研修院:如何营造场景氛围
《哪吒2》告诉所有电影人,成功只有一个“笨办法”
文玩的保养误区你还在这么做么?
打爆恩比德!20岁文班亚马再创神迹,NBA78年前无古人的纪录诞生
自闭症儿童刻板行为解析及家庭干预策略
WPS自动编号功能使用指南:从开启到关闭的全方位教程
如何评估一个公司的薪资方案是否合理?
夏枯草入药是花好还是茎好?用量和采摘时机全解析
变形铝合金在汽车轻量化应用中的优势及应用方向研究
如何缓解胃痉挛
怎样在银行查询贷款利率?
凤凰的历史演变:从商周到明清的凤纹艺术
交通法规宣传是什么?如何有效实施?
孔雀鱼的正确饲养方法:从水温到喂食的全方位指南
房屋租赁中介费开票指南及网签备案相关问题解答
称呼“兄弟”和“弟兄”的区别:从古至今的语言演变与文化内涵
怎样才能不当老好人
心学问心理教育,友情的温暖:青春期孩子的友谊与社交技巧