Halcon学习 ROI(感兴趣区域)

来源:互联网 发布:js年月日时间轴 编辑:程序博客网 时间:2024/06/01 14:19

        这是我第一篇博客,从本科的机械专业,主要学习工艺设计方面的,上了研究生,导师是研究机器视觉方向的,所以涉及到图像处理方面,自己开始学了大概半年多点时间,断断续续的,把自己学习的总结一下,大家可以交流交流。

         ROI (Region of Interest),感兴趣区域。顾名思义,就是你主要想处理的区域。Halcon中处理的对象分为三类,分别是图像(image),区域(region),XLD(extended line description)(主要用在亚像素边缘的提取)。所以从这里可以知道,ROI的作用,其一是加快程序处理速度,原因在于,是程序处理只需处理ROI,其他区域直接跳过。其二,在图像匹配中,可以定义模板。

        1.ROI 的实现

        在halcon中,ROI需要两步来完成,第一步是划定区域,第二步是裁剪出区域。

        划分区域,有两种方式,第一种是使用界面的create ROI,可以选择各种框图。第二种是使用算子:gen_rectangle等。

         裁剪出区域,因为我们在图像中,只是画了区域,并没有裁剪出来,使用算子reduce_domain.这个算子,你可以理解为,ROI ,也就是图像的作用域,ROI 的建立,使原来的整张图像的作用域减少为ROI,即我们指定的区域,作用域减少了,就有了算子名称的由来。

        2.ROI 的应用


上面的图表表示ROI 使用的完整顺序。实际应用,可能只需要简单的几步就可以了,常用的就是draw region and create ROI,if needed,visualize results 可以显示。

         3.ROI 的应用例子

             3.1 简单的例子

              给定一张图,鼠标绘制一个区域,建立ROI。

        

              从结果可以看到,我们定义的ROI 区域。

halcon的算子:draw_region (Region, WindowHandle)
                         reduce_domain (Image, Region, ImageReduced)

         (示例的ROI曲线是鼠标绘制的,后面的结果可视化,会谈到WindowHandle句柄)

       这里只是对ROI 简单的了解,但相信,有这些基础过后,ROI 的很多问题,思路有了,就好解决了。


疑惑:不太了解Halcon内部的算子的运行机制。


1 0
原创粉丝点击