MATLAB直方图均衡化函数用法histeq

matlab直方图均衡化问题_百度知道
matlab直方图均衡化问题
我想画直方图,可是程序总是出错误。程序如下:a=imread('D:\matlab\work\1.jpg');%读取图像
b=a(:,:,1);
imshow(b);
c=histeq(b);
%直方图均衡化
imshow(c);
%显示处理后的图...
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
直方图均衡化是专门对于灰度图像而言的处理算法,所以你得先转化为灰度图像,具体程序如下:a=imread('e:\b.jpg');%读取图像b=rgb2gray(a);&&&&&&&%转化为灰度图像&&&&&&&&&&&&&imshow(b);&&&&&&&&&&&%显示原图c=histeq(b);&&&&&&&&&%直方图均衡化subplot(121),imshow(a);subplot(122),imshow(c);&&&&&&&&&&&%显示处理后的图像&效果如下图所示
采纳率:19%
为您推荐:
其他类似问题
直方图均衡化的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。三、histeq的原理和用法
本系列文章都是通过自己的学习经验,以及啃文档所写。如需转载,请注明出处
参考文档:Image Processing Toolbox(TM) 6User’s Guide
联系方式:
%图像应该是灰度图,若图像为彩色图,需要对每个通道进行计算
%这个是需要注意的地方,一定要变换成double类型
);imshow(H);
MATLAB——histeq函数
matlab histeq函数介绍
图像增强之直方图均衡化(不用histeq)与直方图规定化
matlab灰度变换rgb2gray与直方图均衡化histeq
histeq && imadjust
限制对比度自适应直方图均衡化算法原理、实现及效果
没有更多推荐了,图像增强之直方图均衡化(不用histeq)与直方图规定化
histeq 是MATLAB里面直方图均衡化的函数,这里我们不用它手动实现直方图均衡化,以加深对图像直方图均衡化操作的理解。前些天数字图像处理课上老师留了一个作业,要求自选一副图像对其做直方图均衡化处理,然后对图像进行灰度变换,使变换后的图像大致具有下图所示归一化直方图的趋势,并绘制直方图。首先我们先使用histeq来写一下直方图均衡化的程序,然后跑一下看看结果:I = imread('pout .tif');
figure(1);
subplot(211);imshow(I);subplot(212);imhist(I);
[J,T] = histeq(I);
figure(2);subplot(211);imshow(J);subplot(212);
imhist(J);
figure(3);plot([0:255]/255,T);嗯,还是比较简单的嘛,看着效果也不错,这个代码大家可以自己试一下嘛。接下来我们来完成上面的作业,代码如下:clc
I =imread('C:\Users\Administrator\Desktop\静静.jpg');
GI=rgb2gray(I); %彩色图转灰度图Grey_Image
figure('NumberTitle', 'on', 'Name', '原图像');
imshow(I),title('小姐姐');
%展示原灰度图及直方图
figure('NumberTitle', 'on', 'Name', '原灰度图像');
subplot(2,1,1);imshow(GI),title('灰度图像');
subplot(2,1,2);imhist(GI),title('直方图');
%图像均衡化处理过程
[M,N]=size(GI);
GI1=reshape(GI,M*N,1);
GI1_sort=sortrows(GI1);%按灰度值排序方便统计
[a, b, c] = unique(GI1_sort);%a为不同种灰度值数组,b为不同灰度值第一次出现的索引号
%统计每个灰度值的个数,计算概率
for i=1:size(a)-1
num(i)=b(i+1)-b(i);
p(i)=num(i)/(M*N);
num(i+1)=M*N-b(i+1)+1;
p(i+1)=num(i+1)/(M*N);
%计算像素映射关系
for i=1:size(a)
sum=sum+p(i);
ss(i)=floor((double(max(GI1)-min(GI1))*s(i))+0.5);
%有的均衡化理论中不是该图像最大灰度值减去最小灰度值,而是(2^n-1)-0
%对原图进行映射
for i=1:M*N
GI_new1(i)=ss(find(a==GI1(i))) ;
GI_new=uint8(reshape(GI_new1,M,N));
%展示均衡化后的图像和直方图
figure('NumberTitle', 'on', 'Name', '均衡化处理结果')
subplot(2,1,1);imshow(GI_new),title('灰度图像');
subplot(2,1,2);imhist(GI_new),title('直方图');
%预设规定化概率密度值
%索引1-255代表像素0-254,没有计算第256是因为加上那一个概率后总概率超过1了
for i=1:128
p1(i)=-1/127^2*(i-1)+1/127;
for i=129:255
p1(i)=1/127^2*(i-2)-1/127;
%计算像素映射关系
for i=1:255
sum1=sum1+p1(i);
s1(i)=sum1;
ss1(i)=floor((254*s1(i))+0.5);%同上,有的均衡化理论中不是254-0=254,而是(2^8-1)-0=255
%将均衡图像映射到规定化图像
[a1, b1, c1] = unique(ss1);%a1为不同种灰度值数组,b1为不同灰度值第一次出现的索引号
for i=1:M*N
flag=find(a1==GI_new1(i)); %flag用于判断均衡后像素是否在规定化映射中找得到
if isempty(flag)
GI_regular1(i)=GI_new1(i);
GI_regular1(i)=b1(find(a1==GI_new1(i)))-1;
GI_regular=uint8(reshape(GI_regular1,M,N));
%展示规定化后的图像和直方图
figure('NumberTitle', 'on', 'Name', '规定化处理结果')
subplot(2,1,1);imshow(GI_regular),title('灰度图像');
subplot(2,1,2);imhist(GI_regular),title('直方图');什么你问我静静是谁,当然是我喜欢的一个小姐姐,是个美女了,不信你们看嘛然后给你们看看处理后的结果原灰度图和直方图:均衡化后的结果和直方图分布:规定化后的结果和直方图分布;嗯!效果还是蛮不错的嘛,没有小姐姐的图片我才不愿意做这作业呢。奥,有小伙伴看不懂代码想知道原理,那我就后续补上。直方图均衡化请点这儿:直方图规定化请戳这儿:
直方图规定化(匹配)
直方图均衡化(Histogram equalization)与直方图规定化
直方图均衡化与规定化
matlab实现直方图规定化
数字图像处理之二直方图规定化
直方图规定化
直方图规定化(直方图匹配)
直方图规定化之SML和GML映射
没有更多推荐了,豆丁微信公众号
君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
matlab histeq函数做直方图规定化
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口使用直方图均衡化histeq函数对图像直方图进行均衡化操作,参数分别为64、128、256? - 知乎有问题,上知乎。知乎作为中文互联网最大的知识分享平台,以「知识连接一切」为愿景,致力于构建一个人人都可以便捷接入的知识分享网络,让人们便捷地与世界分享知识、经验和见解,发现更大的世界。1被浏览56分享邀请回答暂时还没有回答,开始写第一个回答}

我要回帖

更多关于 matlab直方图均衡化函数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信