📄 第3章 图象的平滑(去噪声)、锐化.htm
字号:
lang=EN-US><SUB> <IMG height=75 src="第3章 图象的平滑(去噪声)、锐化.files/image027.gif"
width=107 v:shapes="_x0000_i1077"> </SUB></SPAN><SPAN
style="FONT-FAMILY: 宋体">,可以看出,距离越近的点,加权系数越大。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">新的模板也是一个常用的平滑模板,称为高斯</SPAN><SPAN
lang=EN-US>(Gauss)</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板。为什么叫这个名字,这是因为这个模板是通过采样</SPAN><SPAN
lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">维高斯函数得到的。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN style="FONT-FAMILY: 宋体">设图象为</SPAN><SPAN
lang=EN-US><SUB> <IMG height=96 src="第3章 图象的平滑(去噪声)、锐化.files/image028.gif"
width=96 v:shapes="_x0000_i1078"> </SUB></SPAN><SPAN
style="FONT-FAMILY: 宋体">,分别用两种平滑模板处理</SPAN><SPAN lang=EN-US>(</SPAN><SPAN
style="FONT-FAMILY: 宋体">周围一圈象素直接从原图拷贝</SPAN><SPAN lang=EN-US>)</SPAN><SPAN
style="FONT-FAMILY: 宋体">。采用</SPAN><SPAN lang=EN-US>Box</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板的结果为</SPAN><SPAN lang=EN-US><SUB> <IMG height=96
src="第3章 图象的平滑(去噪声)、锐化.files/image030.gif" width=135 v:shapes="_x0000_i1079">
</SUB></SPAN><SPAN style="FONT-FAMILY: 宋体">,采用高斯模板的结果为</SPAN><SPAN
lang=EN-US><SUB> <IMG height=96 src="第3章 图象的平滑(去噪声)、锐化.files/image032.gif"
width=136 v:shapes="_x0000_i1080"> </SUB></SPAN><SPAN
style="FONT-FAMILY: 宋体">。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">可以看到,原图中出现噪声的区域是第</SPAN><SPAN lang=EN-US>2</SPAN><SPAN
style="FONT-FAMILY: 宋体">行第</SPAN><SPAN lang=EN-US>2</SPAN><SPAN
style="FONT-FAMILY: 宋体">列和第</SPAN><SPAN lang=EN-US>3</SPAN><SPAN
style="FONT-FAMILY: 宋体">行第</SPAN><SPAN lang=EN-US>2</SPAN><SPAN
style="FONT-FAMILY: 宋体">列,灰度从</SPAN><SPAN lang=EN-US>2</SPAN><SPAN
style="FONT-FAMILY: 宋体">一下子跳到了</SPAN><SPAN lang=EN-US>6</SPAN><SPAN
style="FONT-FAMILY: 宋体">,用</SPAN><SPAN lang=EN-US>Box</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板处理后,灰度从</SPAN><SPAN lang=EN-US>3.11</SPAN><SPAN
style="FONT-FAMILY: 宋体">跳到</SPAN><SPAN lang=EN-US>4.33</SPAN><SPAN
style="FONT-FAMILY: 宋体">;用高斯模板处理后,灰度从</SPAN><SPAN lang=EN-US>3.</SPAN><SPAN
style="FONT-FAMILY: 宋体">跳到</SPAN><SPAN lang=EN-US>4.56,</SPAN><SPAN
style="FONT-FAMILY: 宋体">都缓和了跳变的幅度,从这一点上看,两者都达到了平滑的目的。但是,原图中的第</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">,第</SPAN><SPAN
lang=EN-US>4</SPAN><SPAN style="FONT-FAMILY: 宋体">行总的来说,灰度值是比较高的,经模板</SPAN><SPAN
lang=EN-US>1</SPAN><SPAN style="FONT-FAMILY: 宋体">处理后,第</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">行第</SPAN><SPAN
lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">列元素的灰度变成了</SPAN><SPAN
lang=EN-US>4.33</SPAN><SPAN style="FONT-FAMILY: 宋体">,与第</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">,第</SPAN><SPAN
lang=EN-US>4</SPAN><SPAN style="FONT-FAMILY: 宋体">行的总体灰度相比偏小,另外,原图中第</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">行第</SPAN><SPAN
lang=EN-US>2</SPAN><SPAN style="FONT-FAMILY: 宋体">列元素的灰度为</SPAN><SPAN
lang=EN-US>6</SPAN><SPAN style="FONT-FAMILY: 宋体">,第</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">行第</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">列元素的灰度为</SPAN><SPAN
lang=EN-US>4</SPAN><SPAN style="FONT-FAMILY: 宋体">,变换后,后者</SPAN><SPAN
lang=EN-US>4.56</SPAN><SPAN style="FONT-FAMILY: 宋体">反而比前者</SPAN><SPAN
lang=EN-US>4.33</SPAN><SPAN
style="FONT-FAMILY: 宋体">大了。而采用高斯模板没有出现这些问题,究其原因,就是因为它考虑了位置的影响。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">举个实际的例子:下图中,从左到右分别是原图,用高斯模板处理的图,用</SPAN><SPAN
lang=EN-US>Box</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板处理的图,可以看出,采用高斯模板,在实现平滑效果的同时,要比</SPAN><SPAN
lang=EN-US>Box</SPAN><SPAN style="FONT-FAMILY: 宋体">模板清晰一些。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">在学习锐化后,我们将给出一个通用的</SPAN><SPAN lang=EN-US>3</SPAN><SPAN
style="FONT-FAMILY: 宋体">×</SPAN><SPAN lang=EN-US>3</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板操作的程序。</SPAN></P>
<P class=a style="LINE-HEIGHT: 18pt"><SPAN lang=EN-US><IMG height=193
src="第3章 图象的平滑(去噪声)、锐化.files/image033.gif" width=537 v:shapes="_x0000_i1039">
</SPAN></P>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><B><SPAN
style="FONT-FAMILY: 宋体">图</SPAN>3.3 </B><B><SPAN
style="FONT-FAMILY: 宋体">高斯模板和</SPAN><SPAN lang=EN-US>Box</SPAN></B><B><SPAN
style="FONT-FAMILY: 宋体">模板的对比图</SPAN><SPAN lang=EN-US></SPAN></B></P>
<H2><SPAN lang=EN-US>3.2</SPAN> <SPAN lang=EN-US></SPAN><A
name=_Toc486331875></A><A name=_Toc486332875></A><A name=_Toc486338984></A><A
name=_Toc454810849></A><A
name=_Toc454856623><SPAN><SPAN>中值滤波</SPAN></SPAN></A></H2>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">中值滤波也是一种典型的低通滤波器,它的目的是保护图象边缘的同时去除噪声。所谓中值滤波,是指把以某点</SPAN><SPAN
lang=EN-US>(x,y)</SPAN><SPAN
style="FONT-FAMILY: 宋体">为中心的小窗口内的所有象素的灰度按从大到小的顺序排列,将中间值作为</SPAN><SPAN
lang=EN-US>(x,y)</SPAN><SPAN style="FONT-FAMILY: 宋体">处的灰度值</SPAN><SPAN
lang=EN-US>(</SPAN><SPAN
style="FONT-FAMILY: 宋体">若窗口中有偶数个象素,则取两个中间值的平均</SPAN><SPAN
lang=EN-US>)</SPAN><SPAN
style="FONT-FAMILY: 宋体">。中值滤波是如何去除噪声的呢?举个例子就很容易明白了。</SPAN></P>
<TABLE cellSpacing=0 cellPadding=0 border=0>
<TBODY>
<TR>
<TD class=Normal vAlign=top width=276>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">原图</SPAN></P></TD>
<TD class=Normal vAlign=top width=276>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">处理后的图</SPAN></P></TD></TR>
<TR>
<TD class=Normal vAlign=top width=276>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
lang=EN-US><SUB><IMG height=141 src="第3章 图象的平滑(去噪声)、锐化.files/image035.gif"
width=149 v:shapes="_x0000_i1040"> </SUB></SPAN></P></TD>
<TD class=Normal vAlign=top width=276>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
lang=EN-US><SUB><IMG height=141 src="第3章 图象的平滑(去噪声)、锐化.files/image037.gif"
width=104 v:shapes="_x0000_i1041"> </SUB></SPAN></P></TD></TR></TBODY></TABLE>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">图中数字代表该处的灰度。可以看出原图中间的</SPAN><SPAN
lang=EN-US>6</SPAN><SPAN
style="FONT-FAMILY: 宋体">和周围的灰度相差很大,是一个噪声点。经过</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">×</SPAN><SPAN
lang=EN-US>1</SPAN><SPAN style="FONT-FAMILY: 宋体">窗口</SPAN><SPAN
lang=EN-US>(</SPAN><SPAN style="FONT-FAMILY: 宋体">即水平</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">个象素取中间值</SPAN><SPAN
lang=EN-US>)</SPAN><SPAN
style="FONT-FAMILY: 宋体">的中值滤波,得到右边那幅图,可以看出,噪声点被去除了。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">下面将中值滤波和上面介绍的两种平滑模板作个比较,看看中值滤波有什么特点。我们以一维模板为例,只考虑水平方向,大小为</SPAN><SPAN
lang=EN-US>3</SPAN><SPAN style="FONT-FAMILY: 宋体">×</SPAN><SPAN
lang=EN-US>1(</SPAN><SPAN style="FONT-FAMILY: 宋体">宽×高</SPAN><SPAN
lang=EN-US>)</SPAN><SPAN style="FONT-FAMILY: 宋体">。</SPAN><SPAN
lang=EN-US>Box</SPAN><SPAN style="FONT-FAMILY: 宋体">模板为</SPAN><SPAN
lang=EN-US><SUB> <IMG height=41 src="第3章 图象的平滑(去噪声)、锐化.files/image039.gif"
width=85 v:shapes="_x0000_i1033"> </SUB></SPAN><SPAN
style="FONT-FAMILY: 宋体">,高斯模板为</SPAN><SPAN lang=EN-US><SUB> <IMG height=41
src="第3章 图象的平滑(去噪声)、锐化.files/image041.gif" width=88 v:shapes="_x0000_i1034">
</SUB></SPAN><SPAN style="FONT-FAMILY: 宋体">。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN style="FONT-FAMILY: 宋体">先考察第一幅图:</SPAN></P>
<TABLE cellSpacing=0 cellPadding=0 border=0>
<TBODY>
<TR>
<TD class=Normal vAlign=top width=141>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">原图</SPAN></P></TD>
<TD class=Normal vAlign=top width=137>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">经</SPAN><SPAN lang=EN-US>Box</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板处理后</SPAN></P></TD>
<TD class=Normal vAlign=top width=137>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">经</SPAN><SPAN lang=EN-US>Gauss</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板处理后</SPAN></P></TD>
<TD class=Normal vAlign=top width=136>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">经中值滤波处理后</SPAN></P></TD></TR>
<TR>
<TD class=Normal width=141>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
lang=EN-US><SUB><IMG height=112 src="第3章 图象的平滑(去噪声)、锐化.files/image043.gif"
width=127 v:shapes="_x0000_i1035"> </SUB></SPAN></P></TD>
<TD class=Normal width=137>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
lang=EN-US><SUB><IMG height=155 src="第3章 图象的平滑(去噪声)、锐化.files/image045.gif"
width=104 v:shapes="_x0000_i1036"> </SUB></SPAN></P></TD>
<TD class=Normal width=137>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
lang=EN-US><SUB><IMG height=155 src="第3章 图象的平滑(去噪声)、锐化.files/image047.gif"
width=117 v:shapes="_x0000_i1037"> </SUB></SPAN></P></TD>
<TD class=Normal width=136>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
lang=EN-US><SUB><IMG height=112 src="第3章 图象的平滑(去噪声)、锐化.files/image049.gif"
width=84 v:shapes="_x0000_i1038"> </SUB></SPAN></P></TD></TR></TBODY></TABLE>
<P style="LINE-HEIGHT: 18pt"><SPAN
style="FONT-FAMILY: 宋体">从原图中不难看出左边区域灰度值低,右边区域灰度值高,中间有一条明显的边界</SPAN><SPAN
lang=EN-US>,</SPAN><SPAN style="FONT-FAMILY: 宋体">这一类图象称之为</SPAN><SPAN
lang=EN-US>“step”(</SPAN><SPAN style="FONT-FAMILY: 宋体">就象灰度上了个台阶</SPAN><SPAN
lang=EN-US>)</SPAN><SPAN
style="FONT-FAMILY: 宋体">。应用平滑模板后,图象平滑了,但是也使边界模糊了。应用中值滤波,就能很好地保持原来的边界。所以说,中值滤波的特点是保护图象边缘的同时去除噪声。</SPAN></P>
<P style="LINE-HEIGHT: 18pt"><SPAN style="FONT-FAMILY: 宋体">再看第二幅图:</SPAN></P>
<TABLE cellSpacing=0 cellPadding=0 border=0>
<TBODY>
<TR>
<TD class=Normal vAlign=top width=138>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">原图</SPAN></P></TD>
<TD class=Normal vAlign=top width=138>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">经</SPAN><SPAN lang=EN-US>Box</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板处理后</SPAN></P></TD>
<TD class=Normal vAlign=top width=138>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">经</SPAN><SPAN lang=EN-US>Gauss</SPAN><SPAN
style="FONT-FAMILY: 宋体">模板处理后</SPAN></P></TD>
<TD class=Normal vAlign=top width=138>
<P style="LINE-HEIGHT: 18pt; TEXT-ALIGN: center" align=center><SPAN
style="FONT-FAMILY: 宋体">经中值滤波处理后</SPAN></P></TD></TR>
<TR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -