没有合适的资源?快使用搜索试试~ 我知道了~
首页数字图像处理上机作业二(直方图均衡化)
数字图像处理上机作业二(直方图均衡化)
5星 · 超过95%的资源 需积分: 10 55 下载量 74 浏览量
更新于2023-06-29
评论 3
收藏 1.43MB DOC 举报
1.设计一个程序,对一幅灰度图像现直方图均衡化处理。画出均衡化前后的图像及其直方图. 2.设计一个程序,绘制一幅灰度图像的梯度幅度图像,选择适当的阈值将其二值化. 3.设计一个程序对图像实现缩放(0.75,3倍)及旋转(绕图象中心)处理.(用最邻近和双线性两种插值方法实现).
资源详情
资源评论
资源推荐
数字图像处理第二次作业
数字图像第二讲作业
1. 设计一个程序,对一幅灰度图像实现直方图均衡化处理。画出均
衡化前后的图像及其直方图.
分析:要实现对一幅灰度图直方图的均衡化处理,须经四步来完成。首先,获
得直方图,及各灰度值对应像素数占总像素数的比例,用矩阵 c 表示,这是第
一次直方图作业的内容。第二步对 c 求累加和,得到 s 矩阵。第三步,对 s 进行
合理的近似,得到均衡图中的灰度等级。这里我的处理办法是对 s 执行 s*255 操
作,得到的值再取 uint8(),这样就实现了对 s*255 的合理近似,即四舍五入,从
而得到了新的灰度等级 d。第四步,赋予各像素点新的灰度值,计算出不同灰
度等级对应的比例值 Ps(sk),这里我用:
for j=1:256
p(d(j)+1)=p(d(j)+1)+c(j);
I2(find(I==j))=d(j);
end
来求得 Ps(sk),循环的作用是将灰度等级 d(j)相同的各 j 对应的原灰度值比例 c
累加起来。I2(find(I==j))=d(j)是将灰度值为 j 的像素点的灰度值换为 d(j);p(d(j)
+1)中加 1 的作用是避免出现 p(0)而进行的处理。
代码及注释如下:
function junheng(x) % x 为要分析的图像名加单引号
I=imread(x);
b=size(I);
a=zeros(1,256); %a 为一个 1*256 的矩阵分别记录灰度为 0 到 255 的像素的
个数
for m=1:b(1) %两个 for 语句将整张图的所有像素都扫描一遍
for n=1:b(2)
a(I(m,n)+1)= a(I(m,n)+1)+1; % 将 灰 度 为 I(m,n) 的 像 素 个 数 存 储 在
%a(I(m,n)+1) 中 , 因 为 matlab 里 没 有
a(0)
end
end
n=0:255;
c=a/sum(a); %c 为个灰度像素数占总像素数的比例
subplot(2,2,1);bar(n,c);title('直方图 Pr(rk)'); %画出直方图
s=zeros(1,256);
第 1 页 共 16 页
数字图像处理第二次作业
s(1)=c(1);
for k=2:256
s(k)=s(k-1)+c(k);
end %s 为 Pr(rk)的累加和
subplot(2,2,2);bar(n,s);title('sk'); %画出 sk 的图形
d=uint8(s*255); %d 是对 s 的合理近似值,即四舍五入
p=zeros(1,256);
I2=I*0;
for j=1:256
p(d(j)+1)=p(d(j)+1)+c(j);
I2(find(I==j))=d(j);
end %以 d 为灰度值,计算相同 d 值对应的 c 值的累加和 f
imwrite(I2,'junheng.bmp');
subplot(2,2,3);bar(n,p);title('均衡化直方图 Ps(sk)') %画出均衡化直方图
figure;
bar(n,c);title('直方图 Pr(rk)'); %单独显示直方图
figure;
bar(n,p);title('均衡化直方图 Ps(sk)') %单独显示均衡后直方图
figure;
subplot(1,2,1);imshow(x);title('原图'); %显示原图
subplot(1,2,2);imshow('junheng.bmp');title('均衡后图');%显示均衡化之后图形
运行:在命令窗口中输入 junheng(‘Lenna.bmp’),输出如下四幅图:
这幅图体现了整个程序设计的思路,先由直方图 Pr(rk)到累加和的 sk 图形,最
第 2 页 共 16 页
数字图像处理第二次作业
后到均衡图 Ps(sk).
这两幅图是单独显示的原直方图和均衡化后的直方图。由图可以看出均衡化之
后直方图灰度值动态范围增加了,分布比较均衡。
第 3 页 共 16 页
数字图像处理第二次作业
这两幅图是原始图像和均衡化之后图像的比较,发现均衡化之后图像变亮了。
整体图像给人一种清晰的感觉。
结论:均衡化之后图像变亮了,整体图像给人一种清晰的感觉。直方图灰度值
动态范围增加了,分布比较均衡。
2. 设计一个程序,绘制一幅灰度图像的梯度幅度图像,选择适当的阈
值将其二值化.
分析:1.灰度图像的梯度图其实就是图像的边缘图像,绘制一幅图像的梯度图
像,可采用公式 f(x,y)=max(|f(x,y)-f(x+1,y)|,|f(x,y)-f(x,y+1)|),也就是水平方向相邻
像素之差和垂直方向相邻像素之差的绝对值中的最大者。
2.为了更好地显示梯度图,可以选择适当的阀值将其二值化,首先,画出
没有二值化的梯度图的直方图以便确定二值化阀值的范围,并在给范围内选择
一效果比较好的阀值,这里我取 235,进行二值化处理。二值化代码为 I2=(I2-
235)*255;大于 235 的全部变为 255,小于 235 的全部变为 0。
第 4 页 共 16 页
剩余15页未读,继续阅读
yicun261539299
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论4