matlab 中 ordfilt2() 函数

Posted lgjc1314

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab 中 ordfilt2() 函数相关的知识,希望对你有一定的参考价值。

简介:

  ordfilt2 是一个二维数据过滤器,首先对根据滤窗口中的非零元素对目标矩阵中的元素进行排序,然后用其中第K(通过参数指定)大的元素代替原数据值,并以此过程遍历目标矩阵中的每一个元素。

一、ordfilt2 应用的三种形式

  1、B = ordfilt2(A, order, domain);

    根据 domain 过滤窗口的大小,取Input中的每个元素关于 domain 相同尺寸大小的区域中的第order的元素代替原像素的值 ,(注意:domain中0元素对应的位置不参与排序);

  2、B = ordfilt2(A, order, domain, S);

    S —— Additive offsets ,即附加偏移。 对于某个元素关于 domain 相同尺寸大小的区域中的每一个位置,若与之对应的 domain 位置的值不为零,则该位置加上S中对应位置的值,再进行相应的滤波计算。

  3、B = ordfilt2(A, order, domain, S,padopt);

    padopt —— Padding option,用来指明如何拓展边界。

二、参数介绍

  1、A —— Input Marix (输入矩阵)

   A 是一个2维的,非稀疏的矩阵。

  2、order — Element to replace the target pixel

   指明对于A中某个元素值,要用其邻域中的第几大的元素去替代这个元素的值。

  3、domain — Neighborhood

  说明过滤窗口的大小,domain中的零元素的位置表示该位置不在过滤窗口之内。

 

  技术图片

  4、S —— Additive offsets ,附加偏移。

  对于某个元素关于 domain 相同尺寸大小的区域中的每一个位置,若与之对应的 domain 位置的值不为零,则该位置加上S中对应位置的值,再进行相应的滤波计算。

 

   5、padopt —— Padding option

  用来指明如何拓展边界

 技术图片   默认用 0 拓展边界,‘symmetric’  表是镜像填充。

 

以上是关于matlab 中 ordfilt2() 函数的主要内容,如果未能解决你的问题,请参考以下文章

胸片分割基于matlab GUI最小误差法胸片分割系统含Matlab源码 1065期

如何用matlab绘制三维地形图

matlab中保存tif图像堆栈能保留原图像格式吗

matlab三维阴影曲面绘图函数surfsurfcfurflmatlab图行绘制六

matlab三维阴影曲面绘图函数surfsurfcfurflmatlab图行绘制六

基础教程基于matlab图像去噪总结含Matlab源码 1274期