直方图均衡化的实现

本文介绍了直方图均衡化的概念,并提供了使用Matlab中histeq函数及手动实现该算法的代码示例,展示了直方图均衡化后的图像效果和原图直方图对比。
摘要由CSDN通过智能技术生成

直方图均衡化的实现

       直方图均衡是数字图像的一个基础算法,原理在这里我就不再多说的,如果还没弄懂直方图均衡原理的朋友,建议先去看懂原理,这里是传送门
       下面,先来看看用Matlab中的histeq方法处理的代码:

clc
clear
img = imread('river.jpg');  %读取图像
figure(1);                  %画出原图及其直方图
subplot(3, 2, 1);
imshow(img);
title('原图');
subplot(3, 2, [3 4]);
imhist(img);
title('原图的直方图');
[J,T] = histeq(img, 256);   %直方图均衡化
subplot(3, 2, 2);           %画出均衡化后的图及直方图
imshow(J);
title('均衡化的图');
subplot(3,2, [5 6]);
imhist(J);
title('均衡化后的直方图');

       然后,我们再来试试不直接调用histeq方法,根据直方图的数学原理,直接计算出均衡化之后的图像。具体实现如下:

clc;
clear;
img = imread('river.jpg');  %读取图片
[M,N] = size(img);          %获取行列数据
[count, x] = imhist(img);   %获取每个灰度级的像素数目及累积概率密度
a = 255.0/(M*N);            %计算L/A0
s = zero
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值