机器视觉------- SciSmart图像定位-ROI校正算法

小白学视觉

共 2483字,需浏览 5分钟

 ·

2021-08-05 23:35

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

小编讲解的内容是ROI生成ROI校正两大功能。


感兴趣区域(ROI,region of interest),在机器视觉、图像处理中,被处理的图像上以方框、圆、椭圆、不规则多边形等方式勾勒出需要处理的区域,称为感兴趣区域,简称ROI。在图像处理领域,感兴趣区域是从图像中选择的一个图像区域,这个区域是图像分析所关注的重点。圈定该区域以便进行进一步处理,或使用ROI圈定你想处理的目标,可以减少处理时间,提高精度。


在具体的视觉应用中,当工件来料位置固定不变时,常量ROI可以覆盖工件来料。但是当来料位置存在较大波动时,就无法通过固定的ROI来实现视觉应用。这时候我们可以通过粗定位对产品进行定位,根据定位位置、长宽,角度等数据使用生成ROI,通过生成ROI工具来满足视觉应用的要求;或者通过粗定位数据使用ROI校正工具对固定的ROI进行仿射变换,跟随产品位置来满足视觉应用的要求。


什么是ROI生成?


ROI生成,通过在图像上绘制一个ROI或者用前面模块的输出结果,或用户定义的指定数据生成特定ROI。可以创建的ROI类型有:点、直线、旋转矩形、椭圆、环形、不规则。


在后面的算子中调用所生成的ROI,将不进行全图搜索检测,只在ROI区域内进行搜索,这样可以屏蔽不感兴趣区域,令检测时间缩短。


一、ROI生成的应用场合

1、目标物体周边存在干扰点时,可以通过限定感兴趣区域来规避;

2、图片数据量大,感兴趣区域小,可以通过划定感兴趣区域,令检测时间缩短;


二、ROI生成算法界面

如图1中蓝色矩形框即为划定的旋转矩形ROI:


图1  ROI生成功能界面


三、ROI生成参数设置

ROI类型:支持自定义的ROI类型。

1、点

2、直线

3、旋转矩形

4、椭圆

5、环形

6、不规则

7、多边形


ROI的生成可手动自定义参数,也可以从外部引用变量参数,如图2所示:

              

图2  ROI类型示例


四、应用场合案例


图3中矩形框即为划定的矩形ROI,ROI设置选定ROI生成后,找直线功能只在该ROI区域进行搜索边缘点。


图3  ROI生成案例


什么是ROI校正?


在实际应用中,每一个待检测工件在图像中的位置都发生偏移,从而ROI也需要移动,否则会导致检测不到所需要的特征。此时就可以创建定位基准,使ROI跟随基准移动,能够很好的解决这个问题。


图4  使用ROI校正前后效果对比示例

(单击图片放大可查看详情)


一、ROI校正应用场合

1、定位产品抓取类项目应用

2、定位产品放料类项目应用

3、激光打标、切割类项目应用

4、点胶、焊点定位类项目应用


二、ROI进行校正的步骤


第一步:确定基准源。通过匹配或Blob分析等功能对此图像部分进行分析,获得基准点和基准角度。

第二步:选择生成仿射矩阵的参数。根据校正模式、参考点、参考角度生成仿射变换矩阵。

第三步:引用基准对ROI进行校正。选择支持的ROI校正方式的算子(例如定位、测量、检测、识别等算子工具),在算子中引用ROI基准对应的仿射变换矩阵,使ROI跟随基准进行移动,保证ROI能够准确框住测量区域。


三、算法原理


其工作原理是找到校正前后的基准点及基准角度,通过两点和两角度之间的关系计算出仿射变换矩阵,原ROI的位置信息通过仿射变换求得校正后的位置信息,根据校正后的位置信息重新生成ROI。


校正模式:补正可选方法有水平方向补正,垂直方向补正,水平和垂直方向上进行补正,水平、垂直以及角度进行补正,水平方向加角度补正,垂直方向加角度补正。

参考点:依据参考点计算出仿射矩阵中平移分量,可以由Blob分析结果、匹配结果、几何关系或用户自定义变量等点变量构成。

参考角度:依据参考角度计算出仿射矩阵中旋转分量,可以由Blob分析结果、匹配结果、几何关系或用户自定义变量等数值变量构成。


图5  ROI校正原理


图6  ROI校正示例


四、应用场合案例


以灰度匹配的匹配结果中心点作为参考点,选择水平和垂直方向上进行补正,生成带有平移分量的仿射变换。当工件的位置发生偏移时,ROI校正能保证ROI相对于工件测量的位置是不变的,从而能够精确地进行找圆操作。


图7  ROI校正案例示意

(单击图片放大可查看详情)


下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


浏览 35
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报