基于模板匹配的钢包水口视觉识别定位研究
2019-10-21丁振华
丁振华
摘 要:在阐述了机器视觉相关知识的基础上,应用模板的相关性匹配对钢包水口安装位置的识别定位进行研究。通过程序实现,验证了机器视觉在钢铁相关工位应用的可行性。
关键词:机器视觉;模板匹配;识别定位
Research on Vision Recognition and Location
of Ladle Nozzle Based on model matching
Ding Zhenhua
Steelmaking Plant,Baoshan Iron & Steel Co.,Ltd. Shanghai 201900
Abstract:Based on the knowledge of machine vision,the recognition and location of the installation position of ladle nozzle is researched by applying NCC model matching.By program implementation,the feasibility of machine vision application in related workshops of iron and steel company is verified.
Key words:Machine vision;Model matching;Recognition and location
1 绪论
近年来,随着机器人、机器视觉、人工智能等技术的发展,钢铁冶金装备朝着智能化、无人化方向快速发展。但是,对于高温熔融态冶炼环节的车间,高智能化冶炼装备的应用还非常受限,因此,需要不断的尝试新技术,来适应无人化和智能化冶炼的趋势,不断提高钢铁企业的生产效率和效益。
目前,就连铸工序而言,浇钢过程全部需要在认为的干预下完成,而利用机器视觉来替代人的视觉进行识别判断,给机器人装上的一双“眼睛”,对于实现无人化、智能化浇钢来说是一个先进、符合未来科技趋势的最佳选择。钢包水口安装作为连铸浇钢的重要环节,利用机器视觉协助系统实现无人化、智能化,提高水口安装精度和准确度,保证安全的重要手段。因此,钢包水口的视觉识别定位的研究具有非常重要的现实意义。
2 机器视觉
视觉是人类生存不可或缺的重要器官,通过眼睛我们可以看到多彩的世界,与身体的其他部位配合完成复杂的工作。机器视觉是将人类从复杂的重复劳动中解放出来的重要载体,也是在现代社会各行各业发展需求自然驱动的结果,它的发展离不开数学、光学、计算机及编程、图像处理等多学科知识,是一門综合的新兴技术。
2.1 机器视觉概念
机器视觉,就是用一个或多个摄像机代替人的眼睛获取场景图像,对图像进行自动处理,并根据逻辑运算结果进行识别判断。美国制造工程师协会(SME Society of Manufacturing Engineers)机器视觉分会和美国机器人工业协会(RIA Robotic Industries Association)的自动化视觉分会对机器视觉下的定义为:“机器视觉是通过光学的装置和非接触的传感器自动地接收和处理一个真实物体的图像,以获得所需信息或用于控制机器人运动的装置”。具体来讲,是指通过镜头将被测目标转化为图像信号,投射至影像接受器件(一般为CCD元件)上再通过数字计算机进行分析处理。
2.2 机器视觉硬件
典型的机器视觉系统一般包括:光源,镜头,相机,图像采集卡,图像处理计算机,通讯接口等组成的。机器视觉系统的构成如图1所示:
光源:在机器视觉应用系统中,合适的光源与照明方案队整个系统有决定性的影响,在确定方案时应该结合被检测物体的形状、颜色、透明度等特征进行选择。目前主流的可见光源有荧光灯、卤素灯和LED灯,其中LED光源寿命长、节能、形状多样、光照稳定可调,因此,LED光源的应用较为普遍。
镜头:一般有光学元件和机械装置两部分组成,光学元件可能包含多个透镜,以保证获取正确清晰的图像;机械装置包含固定光学元件的零部件,如镜筒、透镜座、调节机构、连接环等。镜头的主要参数包括:焦距、物距、视场范围、光圈、景深等。
相机:相机的主要功能是将光信号转换成相应的电信号,以获取场景的原始信息,主流的相机有CMOS和CCD两种相机,相机不同,采集到的图像质量也不同。相机的主要指标有:分辨率、像素深度、最大帧率、接口类型等。
图像采集卡:又称图像捕捉卡,将采集到的图像经过A/D转换变成数字图像,完成图像采集与数字化,然后按照相应的格式进行存储。其技术参数有:输入接口类型、灰度等级、分辨率、带宽和传输速率等。
2.3 机器视觉软件
专业的机器视觉算法软件有Halcon,VisionPro,OpenCV、LabView等,集成开发工具主要是Visual studio,支持VB,C#,C++等多种语言。这里主要阐述Halcon及其与C#的联合编程。
Halcon是德国MVTec公司的专业图像处理软件,由一千多个各自独立的函数,以及底层的数据管理核心构成。其中包含了各类滤波、色彩分析以及几何、数学变换、形态学计算分析、校正、分类、辨识、形状搜索等等基本的几何以及图像计算功能,应用前景广阔。HALCON有一套交互式的程序设计接口HDevelop,可在其中直接编写、修改、执行程序,设计完成后,可以直接输出C#、C++等程序代码,以供开发灵活多样的应用程序。
Halcon联合C#编程,需要对Visual Studio进行配置,主要包括halcondotnet.dll库文件配置,并在窗体代码中调用其命名空间。
3 识别定位原理
识别定位是通过图像匹配完成的,图像匹配是指将观察到的图像与模型进行匹配,以及图像之间的匹配,匹配的结果表示对景物的一种解释。
3.1 模板匹配
模板是图像(或其子图)的一种表达方式,它本身仍然是一幅图像。一般情况下,模板在目标图像中来回移动,直到找到使某个匹配函数值达到最大的位置为止。图像模板匹配流程如图2所示:
图像采集是通过光学装置,由相机采集图像,图像转换成数字格式式并传入计算机存储器。
图像处理是运用不同的算法来处理对决策有重要影响的图像要素,如对图像进行颜色辨识,面积、长度测量,图像增强,边缘锐化,降噪等处理。
特性提取是识别并量化图像的关键特性,例如检測出的物体颜色和杂质的形状等等。然后这些数据传送到控制程序。
结果和控制是根据收到的数据进行各种运算做出结论。并根据这曲结论输出相关的信号指令控制现场的设备或输入输出系统执行相应的动作。
模板图像和目标图像内容的相似程度可以用如下函数来衡量:
SE(x,y)=∑Ni=1∑Nj=1f2(x-i,y-j)-2∑Ni=1∑Nj=1f(x-i,y-j)T(i,j)+∑Ni=1∑Nj=1T2(i,j)
式中第一项是目标图像中感兴趣点(邻域)亮度的平方和,它与匹配与否无关;第三项是模板中元素平方和,是一个常数,与模板处在图像什么位置无关;第二项是匹配与否的重点,该项表示相关性的计算。
3.2 模板匹配的分类及特点
模板匹配主要有:基于灰度值、基于描述符、基于相关性、基于形状、基于组件和基于可变形等几种模板匹配。
基于灰度值的图像模板匹配,通过比对模板图像与目标图像的灰度值信息,但是灰度特征易受环境因素干扰,匹配结果不稳定。基于形状的图像模板匹配是提取目标的轮廓特征,生成形状模板,该技术对环境、噪声的抗干扰能力很强。基于组件的图像模板匹配是形状匹配的升级,其工作原理与形状匹配大致相同,其优点表现在对于一个包含多个部件的目标对象的检测上,相对基于形状的图像模板匹配的多模板匹配,其匹配速度更快。基于相关性的模板匹配,它是采用归一化交叉相关性Normalized cross correlation(NCC)用来比较两幅图像的相似程度已经是一个常见的图像处理手段。在工业生产环节检测、监控领域对对象检测与识别均有应用。
4 系统实现
4.1 主要算子
Halcon中用于NCC模板匹配的算子有两个:create_ncc_model()创建NCC模板算子和find_ncc_model()寻找模板算子。
其部分主要参数包括:
NumLevels:金字塔的最大层级
AngleStart:模板的最小旋转
AngleExtent:旋转角度范围
AngleStep:角度步长
MinScore:被找到的模板最小分数
NumMatches:被找到的模板个数
Row:被找到的模板实例行坐标
Column:被找到的模板实例列坐标
Angle:被找到的模板实例的旋转角度
Score:被找到的模板实例的分数
4.2 程序实现
根据算法的流程,编写程序实现相关性匹配,部分主要程序段如下:
*创建ROI区域
draw_rectangle1(WindowHandle,Row1,Column1,Row2,Column2)
gen_rectangle1(Rectangle,Row1,Column1,Row2,Column2)
area_center(Rectangle,Area,Row,Column)
orientation_region(Rectangle,Phi)
reduce_domain(GrayImage,Rectangle,ImageReduced)
*创建模板
create_ncc_model(ImageReduced,0,rad(0),rad(360),'auto','use_polarity',ModelID)
dev_set_draw('margin')
dev_set_color('blue')
*寻找模板
find_ncc_model(GrayImage1,ModelID,rad(0),rad(360),0.7,1,0.8,'true',0,Row3,Column3,Angle,Score)
*判断和仿射变换,结果输出
if(|Score|>0)
vector_angle_to_rigid(Row,Column,0,Row3,Column3,Angle,HomMat2D)
affine_trans_region(Rectangle,RegionAffineTrans,HomMat2D,'nearest_neighbor')
dev_display(GrayImage1)
dev_display(RegionAffineTrans)
4.3 匹配结果
在Halcon中通过程序的编写实现,先在模板图像中绘制感兴趣的ROI区域,如图3所示:
然后通过核心算子create_ncc_model()和find_ncc_model()以及相关参数的控制,按照算法的流程进行寻找待匹配的目标区域。如图4所示:
从图3和图4可以看出,尽管模板图像和目标图像存在角度的偏移和形状变形,通过相关性匹配搜索,仍能找到感兴趣的目标区域,达到识别定位的目的。
5 结论
机器视觉具有非接触识别定位,速度快,准确度高的特点,不受人为视觉疲劳的影响,是大势所趋,将来在各行各业的应用一定会越来越广,因此,钢铁业也不例外,本文将机器视觉引入钢铁生产的工艺流程之中,通过模拟实现,达到了目的,具备应用的前景,对钢铁生产实现无人化、智能化具有重要意义。
参考文献:
[1]刘庆宏.基于机器视觉的工件位置识别软件开发[D].大连:大连理工大学,2016.
[2]曹梦柔.基于机器视觉的模板匹配系统的研究[J].企业导报,2015,12:92-93.
[3]候海燕.基于模板匹配的机器视觉话机检测系统[J].开发案例,2013,10:63-65.
[4]Halcon手册.MVTec Software GmbH,2007.