工业机器人视觉与传感技术 课件 ch09 视觉应用一一物体追踪_第1页
工业机器人视觉与传感技术 课件 ch09 视觉应用一一物体追踪_第2页
工业机器人视觉与传感技术 课件 ch09 视觉应用一一物体追踪_第3页
工业机器人视觉与传感技术 课件 ch09 视觉应用一一物体追踪_第4页
工业机器人视觉与传感技术 课件 ch09 视觉应用一一物体追踪_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高等院校公共课系列精品教材工业机器人视觉与传感技术第九章视觉应用一一物体追踪内容摘要物体追踪的步骤14253跟随被测目标读取模板图像创建模板

定义测试窗口输出信息读取模板图像第一,打开Halcon软件,单击菜单栏中的“助手"菜单,选择“打开新的ImageAcquisition"命令,打开ImageAcquisition窗口(见图8-1),选中“图像文件"单选按钮。第二,单击“图像文件”下的“选择文件”。选择已保存在电脑中的图像,这里选择电脑G盘中名称为1、格式为jpg的图像,.如图9-1(a)所示。第三,单击ImageAcquisition窗口中的“代码生成",这样名称为1的图像的代码就会自动生成。该代码的第一行以“*"开头,是注释行。第二行是读图像算子,此时,光标正好指在这一行,但程序并没有执行到这一行,要想程序执行这一行,光标应指向该行的下面一行。第四,单击“运行"图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行"命令,光标就会移动到下一行,如图9-1(b)所示。读取模板图像第五,获取图像大小。获取图像大小是指获取图像宽和高的像素:此时需用到算子get_image_size(Image'Width'Height)'其参数介绍如下。Image:输入参数,输入图像。Width:输出参数,图像的宽度。Height:输出參数,图像的高度。打开Halcon软件的变量窗口,图像参数值如图9-2所示。读取模板图像第六,打开一个新窗口。此时需用到算子dev-open_window(Row,Column,Width'Height,Background'WindowHandle)'其参数介绍如下。Row:控制输入参数,即左上角的行索引。默认值为0,典型值的范围要求是行0。Column:控制输入参数,即左上角的列索引。默认值为0,典型值的范围要求是列0。Width:控制输入参数,即新窗口的宽度。默认值为256,典型值的范围要求是宽度0。最小增量为1。Height:控制输入参数,即新窗户的高度。默认值为256,典型值的范围要求是高度0。最小增量为1。Background:控制输入参数,即新窗口的背景颜色。默认值为blackoWindowHandle:控制输出参数,即新窗口的ID号。读取模板图像由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入"dev_open_window(0,0,Width,Height,'black',WindowHandIe)",然后单击图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行"选项。这样,光标就移动至下一行,如图9-3所示。读取模板图像第六,重新显示图像。此时需使用算子dev_display(Object),其参数介绍如下。Object:输入参数,即要显示的图像。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入"dev-display(Image)",然后单击图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行"命令。这样,光标就移至末行,如图9-4所示。创建形状模板第一,区域输出的填充模式。此时需用到算子devsetdraw(DrawMode),其參数介绍如下。DrawMode:区域输出的填充模式,默认值为“fill”,还可以选择“margin”。第二,在图像上画矩形。此时需用到算子drawrectangle2(WindowHandIe,Row,Column,Phi,Lengthl,Length2),其参数介绍如下。WindowHandle:控制输入参数,窗口的ID号。Row:控制输出参数,中心的行坐标(单位是像素)。Column:控制输出参数,中心的列标(单位是像素)。Phi:输出控制参数,以弧度表示的较大的半轴方向。Lengthl:控制输出参数,大的半轴。Length2:控制输出参数,小的半轴。创建形状模板第三,创建所画矩形的方向。此时需使用算子genrectangle2(Rectangle,Row,column,Phi,Lengthl,Length-2)'其参数介绍如下。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入

gen_rectangle2(Rectangle,Row,Column,Phi,Lengthl,Length2)";然后单击图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行”命令,其运行结果如图9-6所示。创建形状模板第四,剪切所创建的矩形图像。此时需使用算子reducedomain(Image,Region,ImageReduced),其参数介绍如下。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入"reducedomain(Image,Rectangle,ImageReduced)";然后单击图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行"命令。剪切后的图像如图9-7所示。创建形状模板第五,创建形状模型。此时需使用算子create_shape_model(Template,NumLevels,AngleStart,AngleExtent'AngleStep,Optimization'Metric'Contrast'MinContrast'ModelID),其参数介绍如下。第六,查找模型。此时需使用算子findshape_model(Image,Mode11D,Anglestart,AngleExtent,MinScore,NumMatches,MaxOver1ap,SubPixe1,NumLevels,Greediness,Row,Column,Angle,Score)”,其参数介绍如下。Image:输入参数,即能在其中找到所创建模型的输入图像。第七,返回形状模型的轮。此时需使用算子"get_shape_model_contours(Mode℃ontours,ModelID,Level)”,其参数介绍如下。定义测试窗囗第一,显示图像。此时需使用算子devdisplay(Object)",其参数介绍如下。Object:输入参数,即要显示的图像对象。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入"dev_display(lmage)";然后单击图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行"命令。其显示的图像如图9-8所示。定义测试窗囗第二,设置行和列的偏移量。请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入如下程序。OffsetROw:=Row—ModeIRowOffsetC01um-n:=C01urnn—Mode1C01um_no第三,读取预先保存在电脑G盘中的图片,该图片的格式是.jpg。请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入如下程序。测试被测图像第一,用for循环语句实现连续读取多张图片。在Halcon软件的程序编辑器窗口中,接着上面的程序输入第二,读取图像。此时需使用算子read_image(Image,FileName)。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入“read_image(Image‘ImageFi1es[Index])”;然后单击图标,或者按F5键,或者选择菜单栏“执行”菜单下的“运行”命令。测试被测图像第三,显示图像。此时需使用算子dev_display(Image),由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入“dev-display(lmage)”;然后单击图标,或者按F5键,或者选择菜单栏“执行”菜单下的“运行”命令。第四,在Halcon软件的“程序编辑器”窗口中,接着上面的程序输入如下的参数“RowCheck:=O”“ColumnCheck:=0”“AngleCheck:=0Score:=0”;然后单击图标,或者按下F5键,或者选择菜单栏“执行”菜单下的“运行”命令。第五,在图像中查找形状模型的最佳匹配项。此时需使用算子find_shape_model(Image'ModellD,AngleStart,AngleExtent,MinScore,NumMatches,MaxOverlap,SubPixel,Num-Levels,Greediness,Row,Column,Angle,Score),其参数介绍如下。测试被测图像第六,生成二维齐次矩阵。此时需使用算子hommat2d_identity(HomMat2DIdentity)。第七,向齐次二维变换矩阵添加平移。此时需使用算子hommat2dtranslate(HomMat2D,TX,Ty,HomMat2DTransIate)。第八,向齐次二维变换矩阵添加旋转。这里算子hornmat2drotate(HomMat2D,Phi,PX,py,HomN‘Iat2DRotate)。测试被测图像第九,对模板进行仿射变换。此时需使用算子affinetranscontourxld(Contours‘ContoursAffinTrans,HomMat2D)。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入"affinetranscontourxld(ShapeModel,ShapeModelTrans,HomMat2DRotate)”;然后单击)图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行"命令:如图9-9所示为仿射变换后的轮廓。测试被测图像第十,对OffsetRow、Offsetcolumn这两个坐标执行仿射变换。此时需使用算子trans_pixel(HomMat2D,ROW‘Col’RowTrans,ColTrans)。第十一,创建任意方向的矩开/多。此时需使用算子gen_rectangIe2(Rectangle,Row,Column,Phi,Lengthl,Length2)。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入

genrectangle2(OutRectangIe,OutLeftRow,OutLeftCOIumn,Phi+Ang1eCheck,Lengthl,Length2)";然后单击图标,或者按F5键,或者选择菜单栏“执行"菜单下的“运行"命令。如图9-10用所示为创建的任意方向的矩形。测试被测图像第十二,在当前窗口中显示图像。此时需使用算子dev_display(Image)。由于参数的调整,请读者在Halcon软件的程序编辑器窗口中,接着前面的程序输入"dev_display(Image)";然后单击)图标,或者按F5键,或者选择菜单栏“执行”菜单下的“运行”命令。如图9-1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论