5 图像的邻域和块操作

        在很多图像处理过程中,对图像分块操作而不是同时处理整幅图像的方法是非常通用而且有效的,尤其是在后面章节中将要介绍的图像滤波和图像形态学操作中有很重要的应用。相比全图像操作,图像分块操作至少有以下 3 个优点:

更多MATLAB图像处理视频请点击  http://study.163.com/course/courseMain.htm?courseId=1003594013

            • 节省运算时占用的存储空间;
            • 降低计算的复杂性,提高处理速度;
            • 充分考虑图像的局部特性。
        本节将会结合图像块操作的类型,介绍几个通用的图像块操作函数。这些块操作函数通常需要指定图像块的大小和对图像块进行特定处理的功能函数。图像块操作的类型有两种:

     • 非重叠块操作(distinct block)
     • 滑动邻域操作(sliding neighborhood)

        这两种操作都是基于一个图像块的整体操作,按照指定的图像处理功能函数得到仅涉及该图像块的计算结果,而且,在对原图像进行块操作时,都可以根据需要指定不同大小的矩形块。然而,不同的是,非重叠块操作对原图像的划分不存在重叠区域,而且在对某一图像块进行处理后,得到的是对应输出图像中同样大小的图像块;滑动邻域操作是基于像素级的操作模式,以原图像某像素点为中心,以指定大小的图像块作为该像素点的邻域,对该像素点的整个邻域进行处理,每次处理后仅得到输出图像中对应像素点的值,而不是一个图像块的计算结果,而且,接下来不改变邻域的大小,仅仅移动邻域的中心像素位置,从而计算出所有的输出图像像素值,在这一过程中相邻图像邻域很明显有重叠区域。


1.非重叠图像块操作

      非重叠图像块的定义将图像的数据矩阵划分为同样大小的矩形区域,不同的图像块在图像上面排列,相互之间没有重叠。它的排列顺序是从左上角开始。如果图像不能恰好被划分,则在图像的右、下部对其补零。如图所示,一个 15×30 的图像按照 4×8 的图像块进行划分,结果在图像的右边补了两列“0”,在图像的下边补了一行“0”。

    另外,对于一些特别的图像处理操作,可能还需要进行一些特别的图像块划分,即包含有“重叠(Overlap)”定义区域的非重叠(Distinct)图像块划分方式,


  图中阴影区域表示对图像块进行补“0”操作。


           MATLAB 提供了一个通用的非重叠图像块操作函数 blkproc,其语法格式为:

          B = blkproc(A,[m n],fun)
          B = blkproc(A,[m n],fun,P1,P2,⋯)

          B = blkproc(A,[m n],[mborder nb

  • 5
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术提高效率

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值