《数字图像处理》胡学龙第四版,第六章图像增强 课后6.1 6.2 6.5 6.6 6.8 6.9题答案参考(matlab代码)

本篇内容详细解答了《数字图像处理》胡学龙第四版第六章图像增强的相关习题,涵盖了图像增强的目的、方法,包括线性变换、直方图均衡化、平滑滤波、锐化处理等,并提供了MATLAB代码实现,还涉及了图像复原的区别。
摘要由CSDN通过智能技术生成

《数字图像处理》胡学龙第四版,第六章图像增强 课后6.1 6.2 6.5 6.6 6.8 6.9题答案参考(matlab代码)

6.1图像增强的目的是什么?它包含哪些研究内容?与图像复原有何区别?
答:①图像增强的目的在于采用一系列技术改善图像的视觉效果,提高图像的可懂度;或者将图像转化成一种更适合于人或机器进行分析处理的形式。
②包含图像增强的原理和方法。方法包括单点增强方法:灰度级校正、灰度变换、灰度直方图变换等;区域增强的平滑方法:邻域平均法、中值滤波和各种边界保持类滤波方法;区域增强的锐化方法:梯度锐化法、拉普拉斯算子、高通滤波及其他常用的锐化算子。
③ 图像增强是一类对图像降质进行改善的方法,他们有选择性的突出图像的边缘、轮廓、对比度的特征,以便于显示、观察或进一步分析处理。图像复原是与图像增强类似的技术,不过其主要目的是为了提高图像的保真度。图像复原是在研究图像退化原因的基础上,以退化图像为依据,根据一定的先验知识,建立一个退化模型,然后用相反的运算来恢复原始景物图像。
6.2试分别给出将灰度范围(10,100)拉伸到(0,150)和(10,200)、压缩到(50,100)和(10,125)、平移到(110,225)的线性变换。
答:MATLAB程序:
clear
clc
I=imread(‘pout.jpg’); %读入图像
figure,subplot(1,2,1),imshow(I);
subplot(1,2,2),imhist(I); %显示原始图像及直方图
A=imadjust(I,[10/255,100/255],[0,150/255],1); %拉伸到(0,150)
B=imadjust(I,[10/255,100/255],[10/255,200/255],1); %拉伸到(10,200)
C=imadjust(I,[10/255,100/255],[50/255,100/255],1); %压缩到(50,100)
D=imadjust(I,[10/255,100/255],[10/255,125/255],1); %压缩到(10,125)
E=imadjust(I,[10/255,100/255],[110/255,225/255],1); %平移到(110,225)
figure,subplot(1,2,1),imshow(A); %显示线性变换后的图像及直方图
subplot(1,2,2),imhist(A);
figure,subplot(1,2,1),imshow(B);
subplot(1,2,2),imhist(B);
figure,subplot(1,2,1),imshow©;
subplot(1,2,2),imhist©;
figure,subplot(1,2,1),imshow(D);
subplot(1,2,2),imhist(D);
figure,subplot(1,2,1),imshow(E);
subplot(1,2,2),imhist(E);
6.5设有一幅64*64的离散图像,其灰度分成8层,灰度n_k的值和分布情况如图。试绘制该图像的直方图,并求经过直方图均衡后的图像的直方图。说明为什么对数字图像进行直方图均衡化后,通常并不能产生完全平坦的直方图。
K 0 1 2 3 4 5 6 7
r_k 0 1/7 2/7 3/7 4/7 5/7 6/7 1
n_k 560 920 1046 705 356 267 170 72
答:MATLAB程序:
clear
clc
rk=0:1/7:1;
nk=[560 920 1046 705 356 267 170 72];
pr=nk./sum(nk); %归一化
figure,stem(rk,pr) %显示图像归一化直方图
title(‘原图的直方图’)
%直方图均衡
%1.计算sk1
sk1=zeros(1,8); %sk1预设成全为0的数组
for i=1:8
for j=1:i
sk1(i)=sk1(i)+pr(j);
end
end
%得到sk1 =[0.1367 0.3613 0.6167 0.7888 0.8757 0.9409 0.9824 1.0000]
%2.计算sk2
%得到sk2=[1/7, 3/7, 4/7, 6/7, 6/7, 1, 1, 1]
%所以可以得到sk=[1/7, 3/7,4/7,6/7, 1]
%对应的像素nk’=[560 1261 705 1061 509]
sk=[1/7 3/7 4/7 6/7 1];
nk1=[560 1261 705 1061 509];
pr1=nk1./sum(nk1); %归一化
figure,stem(sk,pr1) %显示图像均衡化后的直方图
title(‘均衡化后的直方图’)
结果图:
1在这里插入图片描述

在这里插入图片描述
不能产生完全平坦的直方图的原因:
由于采用离散公式,其概率密度函数是近似的,原直方图上频率较小的某些灰度级被合并到一个或几个灰度级中,频率小的部分被压缩,频率大的部分被增强。结果中可以看到,这是一种近似的、非理想的均衡化。虽然均衡所在的图像的灰度直方图不是很平坦,但从分布来看比原图像直方图平坦多了,而且动态范围扩大了。
6.6讲述图像平滑的目的、采用空间域和频率域滤波的原理。
答:①图像处理的目的是去噪和改善图像的质量、抽出图像的特征。
②空间域的滤波原理大部分噪声可以视为随机信号,它们对图像的影响可以看成是孤立的。对于某一像素而言,如果它与周围像素点相比,有明显的不同,就可以认为该点被噪声感染了。基于这样的分析,我们可以用邻域平均的方法,来判断每一点是否含有噪声,并用适当的方法消除所发现的噪声。图像待处理像素为f(x,y),邻域的平均g(x,y)可以表示为
g(x,y)=1/M ∑_((x,y)∈S)▒f(x,y) ,|█(f(x.y)-1/M ∑_((x,y)∈S)▒f(x,y) )|>T
式中M为邻域S中像素的个数。由此式可知,平均是以图像的模糊为代价来换取噪声的降低的。邻域越大,降噪效果越好。可以证明,平均后噪声的标准差降为原来的1/√M。
③频率域滤波原理设滤波器的冲激响应为H(r,s),于是滤波器输出的结果为g(x,y),可以表示成卷积(运算符*)的形式,即上式进行二维DFT,则将空间域的卷积关系转化为频率域的乘法关系G(u,v)=H(u,v)·F(u,v)式中,G(u,v)=DFT[g(u,v)],而H(u,v)=DFT[h(u,v))为低通滤波器。由于图像的细节也趋于高频段,所以选择的通滤波器的截止频率时要特别小心,兼顾解决降噪和保持图像细节的矛盾。
6.8如下图,设原图像为1010的点矩阵,求边界点保持不变、经过33窗口中值滤波的图像。
1 1 1 1 1 1 1 1 1 1;
1 1 1 1 1 1 1 1 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 8 8 5 5 1 1;
1 1 5 5 8 8 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 1 1 1 1 1 1 1 1;
1 1 1 1 1 1 1 1 1 1

答:MATLAB程序①使用medfilt2函数:
clear
clc
I=[ 1 1 1 1 1 1 1 1 1 1;
1 1 1 1 1 1 1 1 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 8 8 5 5 1 1;
1 1 5 5 8 8 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 1 1 1 1 1 1 1 1;
1 1 1 1 1 1 1 1 1 1]; %读入原图像
J=ones(10,10); %预设J为全1的1010矩阵
A=medfilt2(I,[3 3]); %使用中值滤波函数,窗口大小3
3
for i=2:9 % 处理过后的图像四个角落的值会发生变化
for j=2:9 %对图像结果进行边缘修正
J(i,j)=A(i,j);
end
end
J %输出J矩阵,即为滤波后的图像

输出结果:
在这里插入图片描述
②自编程序:
clear
clc
I=[ 1 1 1 1 1 1 1 1 1 1;
1 1 1 1 1 1 1 1 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 8 8 5 5 1 1;
1 1 5 5 8 8 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 5 5 5 5 5 5 1 1;
1 1 1 1 1 1 1 1 1 1;
1 1 1 1 1 1 1 1 1 1]; %读入原图像
J=ones(10,10); %预设J为全1的1010矩阵
for i=2:9
for j=2:9
A=I([i-1:1:i+1],[j-1:1:j+1]); %抽取一个3
3窗口
B=sort(A(:)); %把A矩阵从小到大排序
J(i,j)=median(B); %把中间值赋值给J(i,j)
end
end
J %输出J矩阵,即为滤波后的图像
结果图为:
在这里插入图片描述
6.9设图像如图所示,分别求经过领域平滑和高通算子锐化的结果。其边缘点保持不变,领域平滑掩模取33矩阵,即H=1/8.[1 1 1;1 0 1;1 1 1];领域高通算子取3*3矩阵,即H=[-1 -1 -1;-1 8 -1;-1 -1 -1]
1 1 3 4 5
2 1 4 5 5
2 3 5 4 5
3 2 3 3 2
4 5 4 1 1

答:MATLAB程序:
clear
clc
I=[ 1 1 3 4 5;
2 1 4 5 5;
2 3 5 4 5;
3 2 3 3 2;
4 5 4 1 1];
M=I;
N=I; %读入原图像
h3=1/8.*[1 1 1;1 0 1;1 1 1]; %读入题目要求的平滑模板
h=[-1 -1 -1;-1 8 -1;-1 -1 -1]; %读入题目要求领域高通算子
A=filter2(h3,I) ; %用模板进行滤波处理
for i=2:4 %使其边缘点保持不变
for j=2:4
M(i,j)=A(i,j);
end
end
M %显示平滑处理结果
B=imfilter(I,h); %对图像进行锐化处理
for i=2:4 %使其边缘点保持不变
for j=2:4
N(i,j)=B(i,j);
end
end
N %显示锐化处理结果
平滑处理结果和平滑处理结果依次如下:
在这里插入图片描述
在这里插入图片描述

欢迎使用Markdown编辑器

你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

新的改变

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

  1. 全新的界面设计 ,将会带来全新的写作体验;
  2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
  3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
  4. 全新的 KaTeX数学公式 语法;
  5. 增加了支持甘特图的mermaid语法1 功能;
  6. 增加了 多屏幕编辑 Markdown文章功能;
  7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
  8. 增加了 检查列表 功能。

功能快捷键

撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G

合理的创建标题,有助于目录的生成

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

如何改变文本的样式

强调文本 强调文本

加粗文本 加粗文本

标记文本

删除文本

引用文本

H2O is是液体。

210 运算结果是 1024.

插入链接与图片

链接: link.

图片: Alt

带尺寸的图片: Alt

居中的图片: Alt

居中并且带尺寸的图片: Alt

当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

如何插入一段漂亮的代码片

博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

// An highlighted block
var foo = 'bar';

生成一个适合你的列表

  • 项目
    • 项目
      • 项目
  1. 项目1
  2. 项目2
  3. 项目3
  • 计划任务
  • 完成任务

创建一个表格

一个简单的表格是这么创建的:

项目Value
电脑$1600
手机$12
导管$1

设定内容居中、居左、居右

使用:---------:居中
使用:----------居左
使用----------:居右

第一列第二列第三列
第一列文本居中第二列文本居右第三列文本居左

SmartyPants

SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

TYPEASCIIHTML
Single backticks'Isn't this fun?'‘Isn’t this fun?’
Quotes"Isn't this fun?"“Isn’t this fun?”
Dashes-- is en-dash, --- is em-dash– is en-dash, — is em-dash

创建一个自定义列表

Markdown
Text-to- HTML conversion tool
Authors
John
Luke

如何创建一个注脚

一个具有注脚的文本。2

注释也是必不可少的

Markdown将文本转换为 HTML

KaTeX数学公式

您可以使用渲染LaTeX数学表达式 KaTeX:

Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n1)!nN 是通过欧拉积分

Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=0tz1etdt.

你可以找到更多关于的信息 LaTeX 数学表达式here.

新的甘特图功能,丰富你的文章

Mon 06 Mon 13 Mon 20 已完成 进行中 计划一 计划二 现有任务 Adding GANTT diagram functionality to mermaid
  • 关于 甘特图 语法,参考 [这儿][2],

UML 图表

可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图:

张三 李四 王五 你好!李四, 最近怎么样? 你最近怎么样,王五? 我很好,谢谢! 我很好,谢谢! 李四想了很长时间, 文字太长了 不适合放在一行. 打量着王五... 很好... 王五, 你怎么样? 张三 李四 王五

这将产生一个流程图。:

链接
长方形
圆角长方形
菱形
  • 关于 Mermaid 语法,参考 [这儿][3],

FLowchart流程图

我们依旧会支持flowchart的流程图:

Created with Raphaël 2.2.0 开始 我的操作 确认? 结束 yes no
  • 关于 Flowchart流程图 语法,参考 [这儿][4].

导出与导入

导出

如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

导入

如果你想加载一篇你写过的.md文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。


  1. mermaid语法说明 ↩︎

  2. 注脚的解释 ↩︎

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值