MATLAB——直方图操作

本文介绍了图像处理中的直方图均衡化技术,通过MATLAB代码展示了如何对图像进行直方图均衡化,以及直方图匹配的过程。此外,还探讨了局部直方图操作,利用3x3领域进行图像的局部直方图均衡化,以改善图像的视觉效果。这些技术在图像增强和对比度调整中具有广泛应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直方图均衡化

代码:

I=dicomread('img');%img为输入的图像文件
[h]=imhist(I);
I1=histeq(I,256);
[h1]=imhist(I1);
subplot(2,2,1),imshow(I),title('orginal');
subplot(2,2,2),bar(h,20,'c'),title('原始图的直方图');
subplot(2,2,3),imshow(I1),title('直方图均衡化');
subplot(2,2,4),bar(h1,20,'c'),title('均衡化后的直方图');

结构显示:
在这里插入图片描述
画图函数bar()详解

直方图匹配

代码:

Imatch=imread('office_4.jpg');
I_out=imhistmatch(I,Imatch(:,:,1));%直方图匹配
subplot(3,2,1),imshow(I),title('orginal');
subplot(3,2,2),imhist(I),title('原始图的直方图');
subplot(3,2,3),imshow(Imatch(:,:,1)),title('匹配图');
subplot(3,2,4),imhist(Imatch(:,:,1)),title('匹配图的直方图');
subplot(3,2,5),imshow(I_out),title('直方图匹配');
subplot(3,2,6),imhist(I_out),title('匹配后的直方图');

结果显示:
在这里插入图片描述
参考资源:直方图匹配详细

局部直方图操作

代码:

img=imread('ch3.bmp');
I1=imresize(img,[510 510]);
[m,n]=size(I1);
%对图片进行3*3领域的局部直方图操作
for i=1:3:m
    for j=1:3:n
        zz(i:i+3-1,j:j+3-1)=histeq(I1(i:i+3-1,j:j+3-1));
    end
end
subplot(2,2,1),imshow(I1),title('原图');
subplot(2,2,2),imhist(I1),title('原图的直方图');
subplot(2,2,3),imshow(zz),title('局部直方图的均衡化');
subplot(2,2,4),imhist(zz),title('局部直方图均衡化之后的直方图');

结构显示:
在这里插入图片描述
学习资源:理论讲解

学习资源汇总

画图函数bar()详解
直方图匹配
局部直方图均衡化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值