直方图均衡化C++实现

直方图均衡化能有效增强图像局部对比度,尤其在图像数据对比度接近时。它通过扩展常用亮度来提升局部对比度,不影响整体对比度。参考链接:http://blog.csdn.net/xiajun07061225/article/details/6910129,更多细节可见《数字图像处理》。
摘要由CSDN通过智能技术生成


直方图均衡化通常用来增加许多图像的局部对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。(http://blog.csdn.net/xiajun07061225/article/details/6910129)出自这里。具体细节可以参看《数字图像处理》那本书。


L-1:最大灰度值     M:图像行数  N:图像列数     nj:灰度值为j的像素的个数     Sk:均衡化后的灰度值

#include <iostream>
#include <opencv2/opencv.hpp>
#include <vector>
using namespace std;
using namespace cv;
int main()
{
	const int grayMax=255;
	vector<vector<int>>graylevel(grayMax+1);
  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值