在OpenCV里实现灰度直方图1
Opencv 实现 直方图 灰度
2023-09-14 09:10:33 时间
有时候,我们看到一张照片它不清楚,那么这个不清楚用什么来表示,或者说评价呢?其实我们在使用数码相机时有很多参数,其中有一项有关曝光的图表最容易被人忽略,也最难理解,它就是相机内自带的曝光助手—直方图。现在就来理解直方图的世界,了解直方图的奥秘。
灰度直方图是关于灰度级分布的函数,是对图像中灰度级分布的统计。灰度直方图是将数字图像中的所有像素,按照灰度值的大小,统计其出现的频率。灰度直方图是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图像中某种灰度出现的频率。
比如一幅图有5个像素组成[1, 20, 20, 50, 10],在这幅图中,进行直方图统计就是把每个像素出现的次数单独加起来,在这里就是1出现1次,20出现2次,50出现1次,10出现1次,如果以像素值为横轴,以出现次数为纵轴,把这个图画出来,就是灰度直方图了。那么灰度直方图作用是什么呢?在现实的拍摄过程中,比如说视频监控领域,由于其图像的灰度分布集中在较窄的范围内,这就导致了图像的细节不够清晰。为什么不清晰呢,因为灰度分布较窄时,那么,在计算对比度的时候,对比度就很小,所以就不清晰。为了使得图像变得清晰,那么就需要使得灰度值的差别变大,为了使得灰度值的差别变大,就意味着灰度分布就变的较宽,使得灰度值分布变得均匀,在某个灰度级区间内,像素的个数分布大致相同,这样才能使得图像的对比度增强,细节变得清晰可见。
相关文章
- Python+OpenCV使用摄像头追踪人脸面部血液变化实现脉搏评估
- Python 图像处理 OpenCV (6):图像的阈值处理
- OpenCV每日函数 特征检测和描述模块(1) SimpleBlobDetector类(从图像中提取blobs)
- OpenCV每日函数 结构分析和形状描述符(4) findContours函数寻找轮廓
- 已解决ERROR: Could not build wheels for opencv-python-headless, which is required to install
- OpenCV使用分水岭算法实现图像分割
- OpenCV使用分水岭变换来实现图像中对象计数
- 使用OpenCV实现复古效果Lomography
- OpenCV Python threshold阈值功能
- OpenCV成长之路:视频的处理
- OpenCV在矩阵上的卷积
- 在OpenCV里学习常见问题汇编19
- 在OpenCV里学习常见问题汇编7
- 在OpenCV里使用机器学习库sklearn 实现手写数字识别1
- 在OpenCV里实现扑克牌识别2
- 在OpenCV里实现小波变换
- 在OpenCV里实现数学sin曲线显示
- 在OpenCV里实现直方图反向投影算法
- 在OpenCV里实现全局直方图均衡化1
- 在OpenCV里实现全局直方图均衡化2
- 在OpenCV里实现高斯平滑4
- 在OpenCV里实现导向滤波
- 在OpenCV里实现全局阈值分割3
- 在OpenCV里实现闭运算
- 在OpenCV里实现Sobel算子
- 【OpenCV 例程 300篇】238. OpenCV 中的 Harris 角点检测
- 【图像处理OpenCV(C++版)】——4.3 对比度增强之直方图正规化
- 【图像处理OpenCV(C++版)】——2.1 深入理解OpenCV之Mat类及相关成员函数
- 【图像配准】使用OpenCV进行多图配准拼接