0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用VPLC系列机器视觉运动控制一体机对图像进行ROI创建

正运动技术 来源:正运动技术 作者:正运动技术 2022-05-07 10:50 次阅读
1.png

背景

ROI即感兴趣区域是我们机器视觉图像处理经常使用的基本功能。在实际的视觉检测项目过程中,我们将待检测目标的检测特征框选出来的区域称作ROI(感兴趣区域)。使用ROI功能我们可以针对性的处理目标特征,提升检测效率和准确性,同时还可以过滤掉环境中引入的干扰因素。

ROI创建有以下两个优点:

1.可缩减处理图像的区域范围,减少图像像素处理量,缩短图像处理时间,提升效率。

2.基准模板。框选检测目标特征后可过滤掉干扰因素,提高检测方案的准确度。

在采集到一张图像后,即可在图像上框选感兴趣的区域创建ROI。

常见的ROI类型有:矩形、旋转矩形、圆形、圆环。本期课程以创建矩形ROI为例。

2.png

在上期课程中,我们讲述了如何使用 VPLC系列机器视觉运动控制一体机进行图像开闭运算的课程。本期课程正运动小助手给大家分享一下VPLC系列机器视觉运动控制一体机对图像进行ROI创建的课程。

01VPLC控制器

(一)VPLC516E构架图

3.png

(二)课前准备

1.电脑一台,安装ZDevelop3.10以上版本软件

2.VPLC516E一台

3.24V直流电源一个

4.网线一根

5.WinSCP软件

6.电线若干

02课程主要使用的指令

1.SET_REDRAW -- 指定区域重新绘制(需要在自定义元件的刷新函数中使用)

SET_REDRAW ([x, y, width, height])

参数

X,Y:显示区域左上角的坐X、Y坐标位置

width,height:区域宽和高

2.MOUSE_SCAN -- 扫描触摸按下动作

MOUSE_SCAN (num)

参数:

num:触摸对应的位置的X、Y坐标分别存储在table(num), table(num+1)

3.ZV_HMIADJRECT -- 矩形ROI调整

hittype = ZV_HMIADJRECT(mousex,mousey,tab_rect,hittype)

参数:

mousex:HMI 控件的鼠标X坐标

mousey:HMI 控件的鼠标Y坐标

tab_rect:保存矩形ROI参数的TABLE索引,依次为ltx、lty、 rbx、rby,即分别为正矩形左上角坐标ltx、lty,右下角坐标rbx、 rby,对应的是hmi控件坐标系下的值,调整后的值将直接替换调整前的值。

hittype:指定击中区域编号,表示指令要调整的矩形对应部分,为-1时表示无效编号,不对矩形做调整;为有效编号时则调整矩形对应的部分。按下鼠标左键则返回当前选中的击中区域编号,按住鼠标左键不放再移动鼠标表示在不断地在调整指定编号所对应的矩形部分,此时返回的击中区域编号与输入的编号一致。

返回值:

hittype:根据鼠标点击位置计算的新的击中区域编号

4.MOUSE_STATE -- 读取触摸状态

MOUSE_STATE (num)

参数:

num:触摸对应的位置的 X,Y 坐标分别存储在 table(num), table(num+1)

5.HMI_CONTROLSIZEX -- 获取控件宽度

HMI_CONTROLSIZEX ([winid, controlid])

参数:

winid:HMI文件里面窗口编号

controlid:元件编号,缺省为当前自定义元件宽度

6.HMI_CONTROLSIZEY -- 获取控件高度

HMI_CONTROLSIZEX ([winid, controlid])

参数:

winid:HMI文件里面窗口编号

controlid:元件编号,缺省为当前自定义元件高度

7.ZV_POSTOIMG -- HMI控件坐标转图像坐标

ZV_POSTOIMG(latch_id,num,tab_in_id,tab_out_id)

参数:

latch_id:锁存通道号

num:坐标点数量

tab_in_id:存放转换前坐标点的TABLE索引,num个坐标点数据依次为x、y、x、y......

tab_out_id:存放转换后坐标点的TABLE索引

8.DRAWRECT --绘制矩形

DRAWRECT(x1,y1,x2,y2)

参数:

x1,y1:显示区域左上角的坐标位置

x2,y2:显示区域右下角的坐标位置



03软件实现


1.打开ZDevelop软件:新建名称为“创建ROI.zpj”项目→新建“HMI”文件→新建“main.bas”文件(用于编写界面响应函数、并开启HMI自动运行任务)→新建“相机采集.bas”文件(用于实现相机采集功能)→新建“初始化.bas”文件(用于初始化测量参数)→文件添加到项目。

4.png

2.设计HMI主界面和关联它的控件变量。

5.png

3.编写实现对图像进行ROI创建的执行函数。

'ROI创建的执行函数

GLOBAL SUB update_roi()

local is_redraw,lv_i

SET_REDRAW '全局绘制

if ROI_flag=1 THEN

if mouse_scan(11) = 1 then '扫描鼠标按下操作

hit_pos = ZV_HMIADJRECT(table(11), table(12), 25, -1) '获取调整区域标志

is_redraw = 1 '将绘图标志置1

endif

if mouse_scan(11) = -1 then '扫描鼠标松开操作

ZV_HMIADJRECT(table(11), table(12), 25, hit_pos) '调整ROI的位置

is_redraw = 1 '将绘图标志置1

endif

if (MOUSE_state(11)) then

ZV_HMIADJRECT(table(11), table(12), 25, hit_pos) '调整ROI的位置

is_redraw = 1 '将绘图标志置1

endif

if (TABLE(25) >= 0) AND (TABLE(27) <= and="">= 0) AND (TABLE(28) <= HMI_CONTROLSIZEY(10,2))  THEN

TABLE(30) = TABLE(25) ' CX

TABLE(31) = TABLE(26) ' CY

TABLE(32) = TABLE(27) ' Width

TABLE(33) = TABLE(28) ' Height

ELSEIF (TABLE(25) < 0) OR (table(27) > HMI_CONTROLSIZEX(10,2)) OR (table(26) < 0) OR (table(28) > HMI_CONTROLSIZEY(10,2)) THEN

TABLE(25) = TABLE(30)

TABLE(26) = TABLE(31)

TABLE(27) = TABLE(32)

TABLE(28) = TABLE(33)

endif

if (1 = is_redraw) then

is_redraw = 0 '将绘图标志置0

ZV_POSTOIMG(0, 2, 25, 15)'将ROI的控件坐标数据转到图像坐标数据

d_roi_rect(0) = TABLE(15)'将ROI的图像坐标数据赋值给定义的变量

d_roi_rect(1) = TABLE(16)

d_roi_rect(2) = table(17)

d_roi_rect(3) = table(18)

SET_REDRAW '全局绘制

endif

endif

ENDSUB


'ROI区域更新后实时绘制ROI区域

GLOBAL SUB draw_roi()

if ROI_flag= 1 THEN

SET_COLOR(rgb(0,255,0)) '设置绘制时画笔的颜色为绿色

'绘制矩形

DRAWRECT(table(25),table(26),table(27),table(28))

'绘制十字标

DRAWLINE((table(25)+table(27))/2-5,(table(28)+table(26))/2,(table(25)+table(27))/2+5,(table(28)+table(26))/2)

DRAWLINE((table(25)+table(27))/2,(table(28)+table(26))/2-5,(table(25)+table(27))/2,(table(28)+table(26))/2+5)

endif

END SUB

本次,正运动技术【机器视觉运动控制一体机小课堂】三分钟对图像进行ROI创建,就分享到这里。

审核编辑:汤梓红


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器视觉
    +关注

    关注

    161

    文章

    4340

    浏览量

    120085
  • 一体机
    +关注

    关注

    0

    文章

    856

    浏览量

    32668
  • 运动控制
    +关注

    关注

    4

    文章

    564

    浏览量

    32821
收藏 人收藏

    评论

    相关推荐

    机器视觉运动控制一体机在DELTA并联机械手视觉上下料应用

    机器视觉运动控制一体机在DELTA并联机械手视觉上下料的应用
    的头像 发表于 10-24 09:02 238次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>视觉</b><b class='flag-5'>运动</b><b class='flag-5'>控制</b><b class='flag-5'>一体机</b>在DELTA并联机械手<b class='flag-5'>视觉</b>上下料应用

    聚徽-工控一体机有什么创新

    工控一体机作为新代的工业控制设备,具有多项创新点,这些创新使得工控一体机能够更好地满足工业控制的需求,提高自动化生产的效率和质量。
    的头像 发表于 09-14 09:34 238次阅读

    聚徽-触摸一体机包含哪些产品

    触摸一体机包含多种产品,这些产品主要基于不同的触摸屏技术和应用场景进行分类。以下是些主要的触摸一体机产品分类:
    的头像 发表于 09-05 09:22 237次阅读

    蓝海华腾参股公司顶控科技发布运动控制一体机系列产品

    蓝海华腾参股公司深圳市顶控科技有限公司运动控制一体机系列产品上市!本次新品发布会发布三个系列产品,这三个
    的头像 发表于 09-03 09:28 449次阅读

    机器视觉运动控制一体机VPLC532E在汽车胶带缠绕的开放式CNC应用

    机器视觉运动控制一体机VPLC532E在汽车胶带缠绕的开放式CNC应用
    的头像 发表于 08-19 10:03 291次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>视觉</b><b class='flag-5'>运动</b><b class='flag-5'>控制</b><b class='flag-5'>一体机</b><b class='flag-5'>VPLC</b>532E在汽车胶带缠绕的开放式CNC应用

    VPLC系列机器视觉运动控制一体机在五轴联动点胶上的应用

    技术针对现有市场需求,开发了种基于VPLC系列机器视觉运动
    发表于 07-29 14:29

    机器视觉控制运动原理是什么

    机器视觉控制运动原理是个复杂而深入的主题。下面将从以下几个方面进行介绍:
    的头像 发表于 07-04 10:42 485次阅读

    聚徽触控-工控一体机和 PLC 一体机有什么不同

    在工业自动化领域,工控一体机和 PLC 一体机都扮演着重要角色。尽管它们在某种程度上有所重叠,但它们在功能、应用和设计结构等方面存在显著的不同。工控一体机和 PLC 一体机有什么不同,
    的头像 发表于 06-21 10:05 402次阅读

    集特一体机

    显卡一体机
    jf_67464575
    发布于 :2024年05月22日 09:05:55

    工业一体机在物联网领域的应用

    工业一体机在物联网领域的应用变得愈发重要,工业一体机作为种集计算、控制、通信于一体的设备,具备了在物联网环境下应用的独特特点.
    的头像 发表于 05-18 16:54 273次阅读

    基于VPLC711的曲面外观检测XYR运动控制解决方案

    中心线永远与产品表面垂直(曲面处相机中心线始终与切线方向垂直)。 (2)相机到被检测产品的距离保持致,任何位置L1=L2 VPLC711机器视觉
    发表于 04-16 17:58

    机器视觉运动控制一体机在喇叭跟随点胶上的应用

    等问题。 正运动技术视觉点胶整体解决方案: 在此背景下,正运动技术的视觉点胶整体解决方案脱颖而出,方案是基于VPLC
    发表于 04-16 17:37

    机器视觉运动控制一体机在光伏汇流焊机器人系统的解决方案

    一体机结合SCARA机械手+机器视觉的电池片汇流焊解决方案。可解决不同角度来料、规格等光伏太阳能电池板的串焊需求,实现生产效率和精度等大幅提升,同时将废品率降至仅12%,并显著加快数据处理速度,提高了
    发表于 02-28 15:01

    人脸考勤打卡一体机

    一体机
    jf_66410442
    发布于 :2024年01月09日 11:09:22