基于双目立体视觉的工件识别定位与抓取系统研究_第1页
基于双目立体视觉的工件识别定位与抓取系统研究_第2页
基于双目立体视觉的工件识别定位与抓取系统研究_第3页
基于双目立体视觉的工件识别定位与抓取系统研究_第4页
基于双目立体视觉的工件识别定位与抓取系统研究_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

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

文档简介

西安理工大学硕士学位论文PAGE68PAGEI摘要随着机器视觉技术的发展,立体视觉尤其是双目立体视觉被广泛应用于物体识别、虚拟现实、工业检测、机器人导航和航空航天等领域。双目立体视觉技术可在多种条件下灵活的获得景物的立体信息,相对单目视觉而言有着不可比拟的优势,是图像处理与机器视觉领域的前沿研究方向。本文采用双目立体视觉系统对目标工件识别定位和机器人抓取试验进行了研究,主要涉及摄像机的标定、目标工件的识别定位匹配和机器人对目标工件的抓取三大部分内容。另外,对目标跟踪进行了初步地研究与试验。1)采用基于透视变换模型的线性标定方法,在MATLAB软件环境中,利用双目立体视觉系统对摄像机进行标定。该标定方法过程简便,精度基本满足要求。2)利用HALCON编程环境,对目标工件的图像进行识别匹配,并通过提取边缘特殊点和几何中心,完成工件的定位。该方法在采集图像时可以对图像进行预处理,计算速度快,使用灵活。3)将工件图像的定位结果传到机器人的控制系统中,通过运动学反解将计算出的世界坐标值转化成机器人各关节需要转过的角度值,然后驱动机器人,完成工件的抓取。通过工件识别定位和机器人抓取试验,证明该方法计算过程简单,具有较高的控制精度,使用方便,能满足要求。关键词:双目视觉;标定;HALCON;识别;定位西安理工大学硕士学位论文ABSTRACTTitle:THERESEARCHONLOCATIONANDRECOGNITIONSYSTEMOFWORKPIECEBASEDONBINOCULARSTEREOVISIONANDGRABBINGSYSTEMSupportedbytheNationalNaturalScienceFoundationofChina(No.10872160);KeyLaboratoryProjectofMechanicalManufacturingEquipmentofShaanxiProvinceMajor:MachineryElectronicEngineeringName:JingqiangWeiSignature:Supervisor:Prof.WeipingFUSignature:AbstractWiththedevelopmentofcomputervisiontechnology,thestereovision,particularlythebinocularstereovisioniswidelyusedinobjectrecognition,virtualreality,industrialinspection,robotnavigationandaerospaceandotherfields.Thebinocularvisioncanflexiblyobtainthree-dimensionalinformationofobjectsinvariousconditions.Ithasunparalleledadvantagescomparedwiththemonocularvision,anditistheforefrontoftheresearchdirectionsofimageprocessingandmachinevisionfield.Inthispaper,usingthebinocularstereovisionsystemtostudytherecognition-positioningoftargetworkpieceandgrabbingrobot,itmainlyrelatestothethreecontentsofcameracalibration,recognition,loactionandmatchingofthetargetworkpieceandtheworkpiecemanipulatorgrabbing.Inaddition,italsoresolvespreliminarystudyandexperimentalontargettracking.1)UseingthelinearcalibrationmethodbasedonaperspectivetransformationmodeltocalibratethebinocularstereovisionsystemintheMATLABsoftware.Thismethodissimple,anditsprecisioncanrelativelymeettherequest.2)RecognitionandmatchingtheimagesoftargetworkpieceintheprogrammingenvironmentofHALCON,andextractionoftheedgeofthespecialpointsandthegeometriccentertolocationthetargetworkpiece.Themethodcantreattheimagepre-processingwhenacquiringtheimages,itisfastsandflexibility.3)Sendingthelocationresultsofworkpieceimagetothecontrolsystemoftherobotandcalculatingtheworldcoordinatestogettherequiredturningangleoftherobotjointsbyinversekinematicssolution,thendrivetherobottograbtheworkpiece.Bytheexperimentofrecognition-positionofworkpieceandrobotgrabbing,itprovedthatthemethodhassimplecalculation,highercontrolprecition,convenience,anditcanmeettherequst.Keywords:binocularvision;calibration;HALCON;recognition;location目录PAGE67目录1绪论 11.1本课题的来源及研究背景 11.1.1课题来源 11.1.2研究背景 11.2国内外研究现状 21.3主要研究内容及论文安排 42双目立体视觉系统的标定 72.1引言 72.2双目立体视觉标定原理 72.2.1标定原理 72.2.2标定方法 72.3基于透视模型的摄像机线性标定方法 82.3.1透视模型简介 82.3.2坐标系的建立 92.3.3摄像机投影矩阵 112.3.4摄像机投影矩阵的求解 112.4标定实验及结果分析 132.4.1标定模板的选取 132.4.2标定点图像和世界坐标的获取 142.4.3投影矩阵的计算 162.4.4标定结果验证及分析 162.5本章小结 183工件的识别与对应特殊点的匹配 193.1引言 193.2HALCON的功能简介 193.3工件识别的原理 203.3.1模板匹配原理 203.3.2模板的处理 213.3.3工件识别 223.4图像边缘特征点检测 243.4.1现有角点检测方法 243.4.2边缘轮廓的提取 253.4.3边缘特殊点的提取 253.5对应特殊点匹配 303.5.1现有立体匹配方法 303.5.2改进的对应特殊点匹配方法 323.6本章小结 354工件位姿的三维重建 374.1引言 374.2三维重建原理 374.3三维重建试验与结果分析 384.4本章小结 395双目立体视觉工件识别定位与抓取系统的开发与试验研究 415.1引言 415.2GRB-400型四自由度工业机器人 415.2.1机器人的结构和简图 415.2.2机器人的控制程序界面 435.3GXYZ-3030型三维数控平台 435.3.1三维数控平台的结构和简图 435.3.2三维数控平台的控制界面 445.4HV1302UC数字摄像头 455.4.1HV1302UC数字摄像头的外观与安装 465.4.2HV1302UV数字摄像头的性能 465.5工件识别定位与抓取控制系统 475.5.1控制界面整合 495.5.2HALCON与VC混合编程 515.5.3MATLAB与VC混合编程 525.6工件识别定位与抓取试验 545.7本章小结 566目标工件跟踪试验 576.1引言 576.2试验仪器介绍 576.3跟踪原理 596.4跟踪试验与结果分析 606.5本章小结 607总结与展望 617.1总结 617.2展望 61致谢 63参考文献 65攻读硕士学位期间发表的论文及参加科研项目 69第一章绪论1绪论1.1本课题的来源及研究背景1.1.1课题来源本课题来自陕西省机械制造装备重点实验室项目(05JS29):柔性加工系统的工件检测、识别与仓储技术。1.1.2研究背景随着计算机视觉技术的不断发展,立体视觉得到了一定的应用。特别是双目视觉以其结构简单、使用方便、速度和精度高等优点使得它在工业检测、机械加工、物体识别、工件定位、机器人自引导和航天及军事等领域倍受青睐。机器视觉可以代替人类从事检验、目标跟踪、机器人导航等工作,特别是需要重复、迅速从图像中获取精准信息、进行非接触精密测量及条件恶劣的场合。随着计算机技术和光电技术的发展,图像硬件设备的分辨率和处理速度越来越高,为机器视觉在高精度实时图像检测识别中的应用提供了硬件基础。因此,基于视觉的以图像作为信息来源的自动检测、识别技术越来越受到人们的重视。该技术具有高效、经济、灵活、非接触等优点,特别在微型、大型、复杂、多曲面工件检测识别中的应用,有效避免了人工检测识别劳动强度大,效率低,易疲劳性和传统检测功能比较单一,自动化、智能化程度不高等缺点,且识别精度和实时性也越来越好。目前实现检测精度优于1.0微米,使处理速度100帧/秒或更高的图像检测系统成为可能,为该技术在现代工业中的发展提供了更广阔的空间和研究领域。如:零件、产品无损检测识别,焊缝及内部缺陷检查;流水线零件自动检测识别;邮件自动分检、包裹分检识别;印制板质量、缺陷的检出;生产过程的监控;交通管制、机场监控;金相分析;石油、煤矿等地质钻探中数据流自动监测和滤波;密封元器件内部质量检测等【1-2】;交通管理系统中,用于车辆检测【3】、车牌识别【4】和车辆跟踪【5】等。当前,我国各类制造业正在步入“以信息化带动工业化”的新阶段【6】。随着经济的发展和效率意识的提高,用先进的技术、装备来武装和改造传统产业就变得越来越重要。因此,研制并普及智能化、高精度、高稳定性的自动化工业系统,已经成为我国工业发展和社会进步的必然要求。在我国很多制造型企业中,都需要对产品进行实时检测、识别与分类等。特别是生产规模大,产品种类多、数量多的制造企业,采用人工方式对各类产品进行检测识别、分类统计往往很困难。尤其是对于一些诸如瓶盖、小金属构件之类的轻工产品,由于其生产的数量大、种类多,如果每类产品、每道工序都安排专门的人员进行在线检测,则需要占用很多人力,而且长时间地进行单一、重复性的产品在线检测工作,往往会使人感到单调乏味,尤其是在某些噪音大、气味刺激性强的生产环境下,很容易造成工人的疲劳,这将直接导致检测准确性的下降。另外,工人的责任心、个人的工作能力等也都对产品检测的准确性有直接的影响。这不仅将直接导致企业的生产效率下降与产品成本提高,更不利于企业的信息化管理。而且,随着现代生产模式向多品种、小批量方向转变,对车间动态生产环境不仅提出自动化要求,还有智能化要求。相比而言,计算机的最大优点就是速度快、效率高,使用它有利于提高生产效率。将机器视觉检测识别系统应用于制造企业的产品生产现场,不仅可以实现实时、准确地在线检测识别,极大地提高生产效率,而且有利于产品质量的信息化管理,能够更好地适应现代生产模式的转变。总之,应用机器视觉技术来代替人对产品进行检测、识别与分类,是企业发展的大势所趋,也是企业现代化建设的必然要求。构建基于双目立体视觉的工件识别定位与抓取系统平台,对实际生产环境中出入库识别、搬运到加工定位过程进行模拟实验,提高工业生产过程中的自动化程度。1.2国内外研究现状国外立体视觉已经有了很大的发展,从早期的以统计相关理论为基础的相关匹配,发展到具有很强生理学背景的特征匹配,从串行到并行,从直接依赖于输入信号的低层处理到依赖于特征、结构、关系和知识的高层次处理,性能不断提高,其理论正处在不断发展与完善之中。机器视觉的应用普及主要体现在半导体及电子行业,其中大概40%~50%都集中在半导体行业。日本东京大学将实时双目立体视觉和机器人整体姿态信息集成,开发了仿真机器人动态行走导航系统【7】。该系统实现分两个步骤:首先,利用平面分割算法分离所拍摄图像对中的地面与障碍物,再结合机器人躯体姿态的信息,将图像从摄像机的二维平面坐标系转换到描述躯体姿态的世界坐标系,建立机器人周围区域的地图;其次,根据实时建立的地图进行障碍物检测,从而确定机器人的行走方向。该系统仅要求两幅图像中都有静止的参考标志,无需摄像机参数,而传统的视觉跟踪伺服系统需事先知道摄像机的运动、光学等参数和目标的运动方式。日本大阪大学自适应机械系统研究院研制了一种自适应双目视觉伺服系统【8】,利用双目体视的原理,以每幅图像中相对静止的三个标志为参考,实时计算目标图像的雅可比矩阵,从而预测出目标下一步运动方向实现了对运动方式未知的目标的自适应跟踪。华盛顿大学与微软公司合作为火星卫星“探测者”号研制了宽基线立体视觉系统【9】,使“探测者”号能够在火星上对其即将跨越的几千米内的地形进行精确地定位和导航。现在有许多经过优化的标准算法应用于摄像机标定、物体重建、图像处理、人脸识别等方面,如微软的视觉开发软件包SDK和Intel公司开发OpenVision视觉开发软件包。研究已经在外星遥测、机器人视觉、军事、医疗等领域得到一些应用。美国制造业在电子工业印刷电路板和集成电路芯片的自动检测已广泛采用计算机技术【10】。其它工业如汽车、纺织和包装【11-14】等也都有各自专用的机器视觉系统。如1999年L.Angrisani等人【15】描述了一个估算汽车垫圈的几何和物理参数的自动测量系统。系统可以测量垫圈截线部分和挠性部分的几何尺寸,整个测量过程需要大概1分钟。1995年TIMOTHYS.NEWAN等人【16】描述了一个铸件各种表面缺陷的自动视觉检测系统。2001年Lu【17】基于机器视觉开发了无缝钢管直线度在线检测系统,该系统使用激光投影到钢管上获取圆弧的几何中心并拟合直线。2002年Chen【18】描述了非连续圆弧的圆度视觉检测方法,该方法使用链码技术通过检测一维图像的非连续信息达到检测目的。2001年DimitriosKosmopoulos等人【19】介绍一个利用机器视觉自动检测间隙系统,它可以测量车身与装在其上的各种面板(包括门,发动机罩等)之间的间隙尺寸。KapLukChan等人【20】应用非接触传感和图像处理技术先识别芯片上的字符串,然后将其与产品模型数据库中的字符串相匹配,辨别集成电路的类型和标号,实现对IC类型的自动识别。美国Unimation公司研制的PYMATM/VS—100通用传送带零件识别、分拣视觉系统,适用于一般传送带上零件分拣的任务要求。英国机器人系统有限公司(BRSL)开发的视觉分拣系统,用于柔性制造单元(FMC),它可以检查零件是否处在正确的装夹位置,还可以检查半成品的方向。R.Bukowiski等以IBM-PC386和固定的立体视觉系统控制引导PUMA560工业机器人,用安装在其末端操作器上的网来识别和抓取运动的球【21】。G.Hizinger和G.Skoftelard研究了利用视觉引导机器人捕获空间自由分析的多面体的问题,成功进行了空间试验。国内的立体视觉研究起步晚,但近年也取得了一些可喜的成绩,浙江大学、东南大学和哈尔滨工业大学在这方面研究最为突出。但这些研究仅处于实验阶段,实际应用中很少。浙江大学机械系统完全利用透视成像原理,采用双目体视方法实现了对多自由度机械装置的动态、精确位姿检测,仅需从两幅对应图像中抽取必要的特征点的三维坐标,信息量少,处理速度快,尤其适于动态情况。与手眼系统相比,被测物的运动对摄像机没有影响,且不需知道被测物的运动先验知识和限制条件,有利于提高检测精度;东南大学电子工程系基于双目立体视觉,提出了一种灰度相关多峰值视差绝对值极小化立体匹配新方法,可对三维不规则物体的三维空间坐标进行非接触精密测量;哈工大采用异构双目活动视觉系统实现了全自主足球机器人导航[22]。将一个固定摄像机和一个可以水平旋转的摄像机,分别安装在机器人的顶部和中下部,可以同时监视不同方位视点,体现出比人类视觉优越的一面。通过合理的资源分配及协调机制,使机器人在视野范围、测距精度及处理速度方面达到最佳匹配。双目协调技术可使机器人同时捕捉多个有效目标,观测相遇目标时通过数据融合,也可提高测量精度。在实际比赛中其他传感器失效的情况下,仅仅依靠双目协调仍然可以实现全自主足球机器人导航。火星863计划课题“人体三维尺寸的非接触测量”[23],采用“双视点投影光栅三维测量”原理,由双摄像机获取图像对,通过计算机进行图像数据处理,不仅可以获取服装设计所需的特征尺寸,还可根据需要获取人体图像上任意一点的三维坐标。该系统已通过中国人民解放军总后勤部军需部鉴定,可达到的技术指标为:数据采集时间小于5s/人;提供身高、胸围、腰围、臀围等围度的测量精度不低于1.0cm。华中理工大学的谷红勋,北京大学的钟春香、刘华方提出了基于子形心集Hausdorff距离的平面形状识别新方法【24】。哈尔滨工业大学的陈东、王炎提出改进的傅立叶描述子的方法,提取出目标在任意仿射变换下都不改变的特征,并对六种飞机进行特征提取并识别【25】。清华大学的王涛、刘文印、孙家广等利用基于曲线多边形近似的连续傅立叶变换方法计算傅立叶描述子,并通过形状的主方向消除边界起始点相位影响的方法,定义了新的具有旋转、平移和尺度不变的归一化傅立叶描述子来进行形状识别【26】。浙江大学的唐国良、荆仁杰、姚庆榛利用不变矩和标准矩从二维数字图像中对五种飞机目标进行识别【27】。北京邮电大学的王波涛、孙景鳌、蔡安妮研究了相对矩及其在几何形状识别中的应用【28】。上海交通大学的黄红艳、杨煜普研究了基于高阶神经网络的机械零件形状识别,提出一种机械零件在线自动检测的形状识别系统。该系统以零件各边的长度,角度,圆心角和与邻边夹角4个特征来表示零件的形状【29】。目前中国的半导体和电子市场已初具规模,而如此强大的半导体产业将需要高质量的技术做后盾。同时它对于产品的高质量、高集成度的要求将越来越高。恰巧,机器视觉将能解决以上的问题,因此该行业将是机器视觉最好的用武之地。同时,对于机器视觉的需求将蒸蒸日上。在工件识别定位抓取方面,王红涛【42】基于遗传算法对目标工件进行了识别。袁国文【43】提取工件的内部特征,利用单目视觉,通过内部特征识别工件,完成了对目标工件的抓取实验。梁元月【44】利用sift算子对工件特征进行提取完成工件识别。白生瑞【82】基于双目立体视觉的自主导航车运行环境识别。以上均利用工件的内部或表面特征,很少利用到工件的外部特征。另外编程环境多为MATLAB环境,运行速度较慢,并且不能对设备进行直接控制。综合上所述国内外研究现状,经综合考虑,决定从工件的外部轮廓特征出发,对工件进行识别定位,提取外部轮廓特征进行匹配。编程环境以HALCON和VC为主,以MATLAB为辅。1.3主要研究内容及论文安排本课题的主要研究内容是,利用HALCON等软件通过双目立体视觉系统对模板的图像进行处理,得到其图像坐标,通过坐标变换将其转换为世界坐标,从而完成标定过程;然后对工件图像进行处理,提取图像的边缘和中心点,再利用标定结果得到中心点的世界坐标,实现其中心点的三维重建,从而完成了定位过程;再将工件中心点的世界坐标值传到机器人的控制系统中,最后通过机器人的反解完成工件的抓取。整个过程,通过标定与坐标变换确定工件相对于机器人坐标的位置与姿态,并将这些信息传送至其它设备如自动搬运系统、加工系统等,实现工件从出库识别、搬运到加工定位过程的自动化。本论文的安排如下:第1章主要阐述本论文的研究背景、研究内容及目前国内外的发展现状。针对本论文所要完成的基于双目立体视觉的工件识别定位与抓取系统研究,提出本论文的主要研究内容。第2章研究双目立体视觉系统的标定。阐述现有的标定方法,从中选择合适本文的基于线性透视模型的立体标定方法,并进行理论推导,然后用该方法对双目立体视觉系统进行标定实验,最后对标定结果进行分析。第3章研究对目标工件的识别和对应点的匹配。利用HALCON的图像处理功能,对图像处理中的获取图像和边缘检测做了进一步的研究,阐述一些角点检测的算子,说明各自的优缺点,并实现基于数学形态学的特殊点检测方法,对工件的图像边缘进行检测;利用从工件中找出的边缘特殊点,将这些特殊点按照改进的极线约束法和形态学欧氏距离相结合的方法进行匹配,找到两幅图像中的对应匹配点。第4章研究三维重建的具体实现方法。将第2章的标定结果与第3章匹配成功的对应特殊点相结合,直接从图像坐标获得其世界坐标。第5章研究双目立体视觉工件识别定位和机器人抓取系统。简介机器人、三维数控平台和数字摄像机的结构和简图,以及三维数控平台和机器人的控制系统,进行综合试验和车间实验,对抓取过程做进一步的研究。第6章研究基于简单特征匹配的目标物跟踪方法。将摄像头安装于云台之上,使摄像头可以随云台一起运动,跟踪目标物,使目标始终处于视野的适当范围以内。第7章总结与展望。总结本文的工作,并对最终实验结果做出评价;然后说明本文的不足与后续改进及发展方向。第二章双目立体视觉系统的标定2双目立体视觉系统的标定2.1引言双目立体视觉系统的中心任务是从摄像机获取的图像信息出发,计算三维环境中物体的位置、形状等几何信息,并由此识别环境中的物体或提取其它相关信息。当空间的三维场景投影成二维图像时,场景中的很多因素,像光照条件、景物几何形状和物理特性、噪声干扰和镜头畸变等,都被综合成单一的二维图像中的灰度值[30]。图像上每一点的亮度反映了空间物体表面某点反射光的强度,而该点在图像上的位置则与空间物体表面相应点的几何位置有关。这些位置的相互关系,由摄像机成像几何模型所决定。该几何模型的参数称为摄像机参数,这些参数必须由实验与计算来确定,实验与计算的过程就称为摄像机标定[31]。因此,可以这样说,摄像机标定就是为了建立基于摄像机模型的图像与三维空间的对应关系,如图2-1所示。图2-1摄像机标定示意图Fig.2-1Thediagramofcameracalibration2.2双目立体视觉标定原理2.2.1标定原理在一般立体视觉系统中,摄像机的标定不仅要得到各个摄像机的内部参数矩阵和外部参数矩阵,而且需要确定两个摄像机的相对位置关系。这个关系可以通过两个摄像机的外参数矩阵获得。在本文的双目立体视觉系中,只需要从某点的图像坐标求出该点对应的世界坐标,至于两个摄像机之间的位置关系并不重要。只用一个摄像机的一幅图像,当已知某一点的图像坐标和投影矩阵时,并不能求出该点对应的世界坐标,因为已知量为二维,而未知量为三维。但是如果由两个摄像机同时拍摄相同场景,而且每个摄像机得到该点的图像坐标和投影矩阵已知,那么已知量便有四维,可以求出该点对应的三维世界坐标【32】。这样,可以直接由某点在两个摄像机中的图像坐标和它们的投影矩阵求出该点对应的世界坐标。2.2.2标定方法摄像机标定方法大致可以分为两类【33-34】:传统的摄像机标定方法和摄像机自标定方法。传统的摄像机标定方法是在一定的摄像机模型下,基于特定的实验条件如形状、尺寸已知的参照物,经过对其进行图像处理,利用一系列数学变换和计算方法,求取摄像机模型的各项参数。传统的摄像机标定方法又可以分为四类,即利用最优化算法的标定方法,利用摄像机变换矩阵的标定方法,进一步考虑畸变补偿的两步法和采用更为合理的摄像机成像模型的双平面标定方法。自标定方法适用于需要经常性调整摄像机的场合,它不依赖于参照物,而是利用了摄像机本身参数之间的约束关系来标定,与场景和摄像机的运动无关。目前,摄像机自标定方法主要有:利用本质矩阵和基本矩阵的摄像机标定方法,利用绝对二次曲线和外极线变换性质的摄像机标定方法和利用主动系统控制摄像机做特定运动的自标定方法等。综合考虑各方法的优缺点,本论文采用基于透视模型的线性标定方法对双目立体视觉系统进行标定。下面一节将详细叙述该方法的模型、原理及其过程。2.3基于透视模型的摄像机线性标定方法2.3.1透视模型简介基于透视模型的摄像机线性标定方法[31]是一种简单实用的标定方法,已经被广泛应用于实际工程中。本节将对该方法进行理论上的推导及证明,为稍后的实际应用做准备。大多数的摄像机标定方法都是基于某种摄像机成像的几何模型而求得的,因此,可以说不同的标定方法对应着不同的成像模型。透视模型又称线性模型或针孔模型[35],是最简单的成像模型。最初的针孔模型如图2-2(a)所示,投影中心点距成像平面的距离为焦距,经物点发出的光线穿过投影中心,与成像平面相交于像点。由于成像平面位于投影中心的后边,这种针孔摄像机模型又称为后投影模型。如果将成像平面沿着光轴平移到投影中心前面处,如图2-2(b)所示,则可以得到与后投影模型等价的反常模型,即前投影模型。前投影模型因为较为简洁,所以常用来代替更符合实际情况的后投影模型。从图2-2(b)中不难看出,在由物点A与光轴组成的平面AOD中,由物点A向光轴作垂线与光轴交于点B,则三角形OAB与三角形OCD为相似三角形,故有(2.1)上式便为透视模型的基本关系,它是一切后续推理的基础。(a)(b)图2-2针孔模型示意图Fig.2-2Thediagramofpinholemodel2.3.2坐标系的建立摄像机标定的任务是建立图像与现实三维世界的映射关系,具体表现为图像坐标系与世界坐标系之间的映射关系,所以建立相应的坐标系是必需的步骤。在整个理论推导过程中,会用到图像坐标系、成像平面坐标系、摄像机坐标系和世界坐标系等四组体系:a.图像坐标系UOV对于灰度图像来说,每一幅数字图像其实就是一个二维的数字矩阵,矩阵元素的不同值代表了不同的亮度,各个位置的不同亮度(元素)组合到一起,表达了一幅图像所包含的信息。图像坐标系就建立在这个数字矩阵的基础上,以矩阵的行数为V坐标,以矩阵的列数为U坐标,坐标单位为1,如图2-3所示。图像矩阵中第一行第一列的元素(像素)的图像坐标为(1,1),以此类推。图2-3图像平面坐标系图2-4成像平面坐标系Fig.2-3TheimageplanecoordinatesystemFig.2-4Theimagingplanecoordinatesystemb.成像平面坐标系XIOIYI成像平面坐标系建立在成像平面上,对于数字摄像机来说,成像平面即是像机CCD(或者CMOS)感应元件平面。成像平面坐标系以成像平面与光轴的交点为原点,坐标单位为mm,如图3-4所示。摄像机的感应元件将成像平面上的光线按一定比例转换成图像矩阵,故图像平面坐标系UOV中的点(,)与成像平面坐标系XIOIYI中的点(,)有如下关系:,(2.2)其中,(,)为成像平面坐标系XIOIYI原点OI在图像坐标系UOV中对应的坐标,和为图像中每一个像素在成像平面上对应的物理尺寸,即成像平面坐标系中每一个面积为(单位为mm2)的小单元在图像中表现为一个像素。为了便于表示和运算,将式(2.2)用齐次坐标与矩阵的形式改写为:(2.3)c.摄像机坐标系OCXCYCZC摄像机坐标系OCXCYCZC建立在摄像机上,如图2-2所示,坐标原点OC与投影中心重合,XC轴和YC轴分别与成像平面坐标系XIOIYI的XI轴和YI轴平行,ZC轴与光轴重合。图中OCOI的距离即为摄像机的焦距。将由图2-2得出的结论式(2.1)可以应用到图2-5,可以得到摄像机坐标系OCXCYCZC中的物点(,,)与成像平面坐标系XIOIYI中的像点p(,)之间存在如下关系:,(2.4)可将上式用齐次坐标和矩阵的形式表示为(2.5)图2-5摄像机坐标系与成像平面坐标系的关系Fig.2-5Therelationshipbetweencameracoordinatesystemandimagingplanesystemd.世界坐标系OWXWYWZW由于摄像机可以安放在环境中的任何位置,我们还需要在环境中选择一个基准坐标系来描述摄像机的位置,并用它描述环境中任何物体的位置,该坐标系称为世界坐标系OWXWYWZW。摄像机坐标系的设置与具体应用场合有关,以方便应用为准。摄像机坐标系与世界坐标系之间的关系可以用旋转矩阵与平移向量来描述。因此,空间中某一点在世界坐标系OWXWYWZW中的坐标(,,)与其在摄像机坐标系OCXCYCZC中的坐标(,,)存在如下关系:(2.6)其中,为正交单位矩阵,为三维平移向量。2.3.3摄像机投影矩阵摄像机标定的目的是建立图像坐标系中的坐标(,)与世界坐标中的坐标(,,)之间的映射关系,故将式(2.5)和(2.6)代入式(2.3)得(2.7)其中,,,,、、、只与摄像机的内部结构有关,称为摄像机的内部参数,称为内部参数矩阵,,它只与摄像机与世界坐标系的相对位置有关,称为摄像机的外部参数矩阵,,为矩阵,它表示了图像坐标系中的点与世界坐标系中的点之间的关系,称为投影矩阵。2.3.4摄像机投影矩阵的求解由式(2.7)可知,只要获得投影矩阵,便可由图像中的信息获得世界坐标系中物体的信息,所以摄像机标定的过程最后归结为求解投影矩阵的问题。不难想象,只要得到若干组点在世界坐标系中的坐标以及对应的图像坐标系中的坐标,即可由式(2.7)来反求投影矩阵,这就是基于透视模型的摄像机标定方法。假定有n个世界坐标系中的点(,,…,),其中第个点在世界坐标系中的坐标为(,,),其在图像坐标系中的对应点的坐标为(,),设投影矩阵,则对于第个点,由式(2.7)可得(2.8)上式包含三个方程:(2.9)在上式中,将第一式和第二式分别除以第三式,得(2.10)将所有的n个点按照式(2.10)的关系写成矩阵形式,可得(2.11)由式(2.7)可知,投影矩阵乘以任意不为零的常数并不影响世界坐标系中点的坐标与图像坐标中的对应点的坐标之间的映射关系,因此可以在式(2.7)两端同时除以,以“作为”投影矩阵(即令),这样式(2.11)可以简写为:(2.12)其中,为由n个点的世界坐标与图像坐标构成的大小为的二维矩阵,为由投影矩阵的元素(除)构成的11维列向量,为由n个点的图像坐标构成的2n维列向量。式(2.12)中只有为未知,共有11个未知数,故只要有六个以上的有效点(即),便可以用最小二乘法求出,进而求出投影矩阵:(2.13)投影矩阵由和共同构成,并且可以由式(2.7)将摄像机的各项内外参数矩阵求出,在此不再赘述。2.4标定实验及结果分析按照基于透视模型的线性标定方法对双目立体视觉系统进行了标定。标定试验中需要到如下装置和软件:固高四自由度工业机械臂、固高三维数控平台、大恒摄像机和HALCON软件。以上装置详细介绍见第5章第2~4节,软件详细介绍见第3章第2节。2.4.1标定模板的选取不同的标定模板适合于不同的标定方法。目前常见的标定模板有平面模板和三维模板。如图2-6所示,(a)【35】为三维模板,(b)【36】和(c)【36】为平面模板。用三维模板进行摄像机标定比平面模板的精度略高,但是制作过程烦琐,使用不方便。平面模板虽然不能像三维模板一样提供在世界坐标系下三个方向均匀分布的标定点,但是能够通过移动或者将模板倾斜放置等方法弥补其不足,故在实际应用中较为普遍。在平面模板中,有的学者应用棋盘方格的角点来提供标定点,如图2-6(b),有的学者应用圆的圆心来提供标定点,如图2-6(c)。一般来说,用圆的圆心作为标定点精度会比较高一些,但是必须保证标定模板与摄像机光轴垂直,否则会因为圆的变形而导致圆心提取偏离。综合考虑,本论文选取用圆心阵列型平面标定模板来进行双目立体视觉系统的标定。(a)(b)(c)图2-6各种不同的标定模板Fig.2-6Differentkindsofcalibrationtemplates在HALCON里,画出49个小圆,每个小圆的直径为5mm,相邻小圆圆心之间的距离均为9mm,如图2-图2-7标定模板Fig.2-7Calibrationtemplateinthispaper2.4.2标定点图像和世界坐标的获取为了进行视觉系统的标定,需要得到空间点的三维坐标以及该点在左右两幅图像中坐标的对应关系。拍摄标定板图像时,要保证标定板在左右两个摄像机中都能够完整成像。a.图像坐标的获取使用大恒双目摄像机拍摄模板图片,并将图片传输到HALCON软件环境中。处理模板图片,获取模板中49个圆的圆心坐标值,并将计算出的模板左右两幅图像中49个圆心坐标值保存到指定文件中。然后将标定模板抬高50mm。按照同样的方法,获取模板图像和49个圆心坐标值。图像的效果如图2-8(a)和图2-8(b)所示。(a)高度为0时的左右图像(b)高度为50mm时的左右图像图2-8模板左右图像Fig.2-8Leftandrightimageofthetemplate使用HALCON标准标定板,首先可以通过函数find_caltab()在标定板图像中分离出标定板区域,然后利用find_marks_and_pose()算子,该算子通过亚象素阈值、亚象素边缘提取、圆心确定等一系列操作计算标定板上每个点的图像坐标以及标定板与摄像机之间大约的位置关系,即摄像机的外参初始值。其中使用find_caltab()分离标定板区域运算时间大约为5ms,find_marks_and_pose()计算标定板上49个标志点的坐标大约需要时间为40ms,计算坐标精度为亚象素级。提取的圆心效果图如图2-9(a)和图2-9(b)所示。(a)高度为0时的左右图像(b)高度为50mm时的左右图像图2-949个标定点圆心Fig.2-9Centersof49calibrationpointsb.世界坐标的获取使用固高GRB-400型四自由度工业机器人的末端执行器获取49个标定点的世界坐标值,并保存到指定文件中以备标定程序使用。由于末端执行器体积的存在,肉眼找到的各标定点的坐标值与实际的坐标值是不一致的,这样就会影响到标定结果的精度。为了能够获得更精确的标定精度,需要获取尽量精确世界坐标值,因此,在获取世界坐标值时,已将末端执行器取下,并用中性笔代替,使笔尖尽量接近于标定模板各圆的圆心,已获得更精确的标定点坐标值。对于安装中性笔时存在的安装误差,经测定,中性笔笔尖与手抓旋转所在中心的同轴度误差为1mm。获取标定点世界坐标的操作过程如图2-10所示。图2-10获取标定点的世界坐标Fig.2-10Obtainingworldcoordinationofcalibrationpoints2.4.3投影矩阵的计算按照透视模型线性标定方法,利用HALCON获取图2-9标定图像中的49组对应点,用它们的图像坐标系坐标与世界坐标系坐标分别对左、右摄像机进行标定,所获得的投影矩阵如下:其中,ML为左摄像机的投影矩阵,MR为右摄像机的投影矩阵。2.4.4标定结果验证及分析对标定纸上的49个圆的圆心标定结果进行验证,结果如表2-1所示,其中,计算结果一列为各点按标定结果计算得出的世界坐标系坐标,实测结果一列为各点在世界坐标系中的实际坐标值。绝对误差一列为各点计算结果与实测结果的误差值。X轴、Y轴、Z轴坐标值之间以逗号隔开。分析表2-1中的数据,可以得到如下结论:(1)X坐标的最大绝对误差为0.699(mm),Y坐标的最大绝对误差为0.359(mm),Z坐标的最大绝对误差为0.618(mm);以上均满足标定要求不大于1mm。(2)视场范围的大小直接影响标定精度。在相同条件下,摄像机的视场范围越大,标定精度越低;反之,标定精度越高。(3)利用基于透视变换模型的线性标定方法,基本上可以满足标定和机器人抓取的精度需要。机器人抓取要求误差不大于8mm表2-1标定结果的验证及误差Tab.2-1Validationanderrorsofthecalibrationresult序号计算结果(mm)实测结果(mm)绝对误差(mm)1-4.525,389.233,0.0085-4.077,389.403,0.4890.448,0.169,0.48123.525,388.844,0.00834.212,388.817,0.4480.687,-0.026,0.439312.031,388.244,0.008312.568,388.217,0.4840.537,-0.026,0.47420.694,387.636,0.008320.904,387.617,0.5650.211,-0.019,0.557529.003,387.036,0.008329.193,387.013,0.5820.19,-0.232,0.573637.113,386.536,0.008337.511,386.412,0.5480.398,-0.123,0.540745.919,385.835,0.008345.858,385.780,0.5680.615,-0.055,0.5618-3.971,382.215,0.0083-3.815,382.261,0.4920.156,0.046,0.48494.506,381.609,0.00834.531,381.677,0.3810.247,0.068,0.3721012.805,380.849,0.008312.916,381.074,0.39140.11,0.224,0.3831121.304,380.449,0.008321.307,380.457,0.4110.314,0.080,0.4021229.846,379.835,0.008329.643,379.843,0.4350.203,0.080,0.4231338.338,379.235,0.008338.020,379.215,0.4390.318,-0.020,0.4311445.927,378.535,0.008346.415,378.591,0.4130.489,0.056,0.40415-3.346,375.122,0.0083-3.551,375.064,0.2720.204,-0.058,0.263164.621,374.609,0.00834.836,374.457,0.2510.214,-0.152,0.2421713.176,374.191,0.008313.291,373.832,0.2360.115,-0.359,0.2271821.692,373.462,0.008321.725,373.211,0.1930.033,-0.251,0.181930.460,372.849,0.008330.103,3725.833,0.2840.360,-0.266,0.2752038.609,372.135,0.008338.523,371.954,0.2460.086,-0.181,0.2382147.120,371.335,0.008346.975,371.308,0.1280.145,-0.026,0.12122-3.298,367.773,0.0083-3.285,367.764,0.1740.014,-0.008,0.166235.242,367.049,0.00835.165,367.138,0.0990.077,0.089,0.0912413.868,366.479,0.008313.662,366.511,0.0340.206,0.115,0.0342522.408,365.757,0.008322.139,365.873,0.4270.268,0.115,0.3442630.743,365.036,0.008330.568,365.238,0.0330.175,0.202,0.0252739.237,364.535,0.008339.042,364.598,-0.0120.194,0.063,-0.0202848.027,363.835,0.008347.537,363.953,-0.0730.491,0.118,-0.08129-2.684,360.478,0.0083-3.011,360.346,-0.0780.327,-0.132,-0.086305.549,359.946,0.00835.479,359.705,-0.1620.699,-0.241,-0.1693113.923,359.232,0.008314.043,359.051,-0.0990.120,-0.181,-0.1073222.674,358.549,0.008322.563,358.412,-0.1760.111,-0.137,-0.184续表2-1序号计算结果(mm)实测结果(mm)绝对误差(mm)3331.429,357.828,0.008331.041,357.764,-0.2070.388,-0.064,-0.2153439.589,357.212,0.008339.552,357.108,-0.1600.037,-0.104,-0.1683547.894,356.412,0.008348.119,356.449,-0.2760.225,0.373,-0.28436-2.635,352.752,0.0083-2.729,352.861,-0.2930.094,0.101,-0.301375.984,352.011,0.00835.815,352.210,-0.3740.169,0.199,-0.3813814.759,351.396,0.008314.412,351.552,-0.3760.341,0.155,-0.3843923.028,350.584,0.008322.993,350.894,-0.3810.035,0.309,-0.3894031.523,350.083,0.008331.519,350.236,-0.3900.003,0.153,-0.3984140.183,349.567,0.008340.094,349.571,-0.4320.089,0.003,-0.4404248.486,348.631,0.008348.707,348.903,-0.5470.221,0.271,-0.55543-2.632,345.252,0.00832.444,345.261,-0.5350.046,-0.214,0.545446.096,344.809,0.00836.142,344.259,-0.6470.053,-0.360,-0.5174514.751,344.282,0.008314.803,343.922,-0.5090.138,-0.095,-0.5184623.288,343.347,0.008323.426,343.252,-0.6100.216,0.079,-0.6184731.795,342.502,0.008332.010,342.578,0.5060.537,-0.285,-0.5164840.102,341.903,0.008340.556,341.892,0.5050.405,0.245,-0.4984948.713,341.203,0.008349.327,341.217,0.5040.657,0.037,-0.496如果想进一步提高系统标定的精度,可以考虑:(1)减小视场范围。视场范围的大小直接决定了标定的精度,在相同情况下,视场越大,图像中单个像素所代表的实际尺寸就越大,因而误差也就越大;(2)制作专用的三维标定块。专用三维标定块可以提供在世界坐标系中分布更为合理的标定点,从而提高系统的标定精度;(3)用精度更高的标定方法。可以应用考虑非线性误差的其它摄像机标定方法来提高标定的精度。2.5本章小结本章首先简要介绍了当前各种摄像机标定方法,并比较了各种方法的优缺点。在此基础上,详细推导了基于透视变换模型的线性标定方法。运用该方法对双目立体视觉系统进行了标定,通过对标定结果的分析说明标定精度基本能够满足抓取的精度需要,并指出了本论文标定结果的绝对误差较一般文献结果偏大的原因,提出了提高标定精度的方法。第三章工件的识别与对应特殊点的匹配3工件的识别与对应特殊点的匹配3.1引言本章主要介绍使用HALCON编程环境在图像处理方面的强大功能,对获取的工件图像进行处理,完成目标工件的识别、特殊点的检测和对应点的匹配,以便于为机械臂的抓取提供可能性。图像预处理是图像识别过程中的一个必要环节,对特征提取和识别结果有着直接的影响。为了减少识别误差,更好地保持图像的特征信息(边缘信息),需对图像进行灰度化、滤波去噪等预处理。本章主要介绍图像处理中的边缘提取问题。

边缘是图像中重要的特征之一,是计算机视觉、模式识别等研究领域的重要基础。图像的大部分主要信息都存在于图像的边缘中,主要表现为图像局部特征的不连续性,是图像中灰度变化比较强烈的地方,也即通常所说的信号发生奇异变化的地方。经典的边缘检测算法是利用边缘处的一阶导数取极值、二阶导数在阶梯状边缘处呈零交叉或在屋顶状边缘处取极值的微分算法。图像边缘检测一直是图像处理中的热点和难点。近年来,随着数学和人工智能技术的发展,各种类型的边缘检测算法不断涌现,如神经网络、遗传算法、数学形态学等理论运用到图像的边缘检测中。但由于边缘检测存在着检测精度、边缘定位精度和抗噪声等方面的矛盾及对于不同的算法边缘检测结果的精度却没有统一的衡量标准,所以至今都还不能取得令人满意的效果。HALCON利用其强大的图像处理功能,将图像采集与图像处理基于一体,并且可以dev形式的HALCON程序转化成VC++中的可执行程序,直接对设备进行驱动,更利于实现从理论到实际的应用。本章主要介绍在HALCON环境中,进行工件识别和对应特殊点的匹配。3.2HALCON的功能简介HALCON【37】是在世界范围内广泛使用的机器视觉软件。用户可以利用其开放式结构快速开发图像处理和机器视觉应用软件。它支持Linux/UNIX及Windows,所有的库均可以使用C,C++,VisualBasic和Delphi编程语言访问,避免重复开发,性能优异。HALCON包含Blob分析、形态学、模式识别、测量、3维摄像机定标、双目立体视觉等性能杰出的算法等。具体包含的算法:维条码识别、维码识别、二进制和灰度值形态学、彩色图像处理、基于基本元件的匹配、轮廓处理与焦平面距离测定、边缘与线提取、特征提取、点滤波、区域处理、基于形状匹配、平滑滤波、模板匹配等。同时HALCON保障与硬件无关,支持大多数图像采集卡及带有DirectShow和IEEE1394驱动的采集设备。HALCON在现在这个科技迅速发展的时代有很广泛的应用,可以应用于许多工业领域:宇宙航空和太空旅行、汽车零件制造、制陶业、玻璃制造和生产、身体健康和生命科学、冶金业、机械、医疗、制药业、精密工程和光学、车轨和火车检测、轮船制造、保安监控、人造材料等行业。本论文中使用的Hdevelop是HALCON高级交互式编程环境。它可在Windows、Linux和UNIX下使用。使用Hdevelop可以使用户快速有效地解决图像处理问题,有许多简单的处理程序可以在图像采集设备采集图像的时候同时完成。当用户对于编程代码满意后,Hdevelop可将此部分代码译为C++、C或者VisualBasic源代码,以便将其集成在应用系统中。3.3工件识别的原理3.3.1模板匹配原理模板匹配是数字图像处理的重要组成部分之一。把不同传感器或同一传感器在不同时间、不同成像条件下对同一景物获取的两幅或多幅图像在空间上对准,或根据已知模式到另一幅图中寻找相应模式的处理方法就叫做模板匹配。模板匹配是图像处理和计算机视觉中的基本操作,是进行滤波、边缘检测、图像匹配和目标识别的有效方法。简单的说,模板匹配方法就是计算一个固定的目标模式和一个未知图像块的相异程度,用一个阈值决定输出。模板匹配可以用来确认一幅图中是否存在某种己知模板图像。例如在图3-1(a)中寻找图3-1(b)中的椭圆图像,若在被搜索图中有待寻的目标,且同模板有一样的大小和方向,则用相关函数就能找到它以及它在被搜索图中的坐标位置。(a)搜索图(b)模板图3-1搜索图与模板Fig.3-1ObjectImageandTemplate模板匹配在许多方面已经获得了广泛的应用。如将字模对印刷页的图像匹配;目标模板与侦测图像相匹配;目标模板与制导系统获得的图像匹配;星图模板与天空图像的匹配等。模板匹配技术早在上世纪60年代已开始研究,并在以后的实际应用中得到了不断改善[38]。综合考虑,本论文采用的是基于图像紧密性(compactness)特征的模板匹配方法[83]。典型的机器视觉分类识别系统包括:图像获取、预处理、特征提取、分类决策(模式识别)和分类器设计等五个部分。本文将图像获取、预处理、特征提取部分作为图像的前期处理过程。在图像采集过程中,不可避免地受到各种干扰而混入随机噪声。为了减少识别误差,更好地保持图像的特征信息(边缘信息),需对图像进行滤波去噪等预处理,同时也是为边缘特征提取做好准备。边缘特征是工件的重要特征,在对工件图像进行边缘提取过程中,为了保证边缘特征的连续性和封闭性,还需要对工件图像进行腐蚀、膨胀、区域填充、边缘连接等前期处理。3.3.2模板的处理a.图像的获取图像获取设备使用大恒图像的HV1302UC双目摄像头。两摄像头平行安装,水平距离为7cm(约等于人两眼之间的距离),摄像头与工件之间的垂直距离为30cm~50cm,白炽灯光源照射。采集到的图像大小为1280*1204。图3-2模板图像Fig.3-2Templateimagesb.模板图像预处理对模板进行中值滤波,除去一些不必要的噪声点。图3-3预处理后的模板图像Fig.3-3Templateimagesafterpretreatmentc.模板的生成使用灰度直方图确定进行图像分割的灰度值,提取出边缘轮廓。为了达到更好的效果,将边缘轮廓进行连接,形成封闭区域,进而计算封闭区域的紧密性C。紧密性C的计算公式如下:,其中L为封闭区域的周长,F为封闭区域的面积。根据封闭区域的紧密性,生成模板图像区域,并利用HALCON中的减小图像区域函数reduce_domain,将要处理的工件图像限定在一个较小的区域里面(将处理范围限定在一个较小的圆内),如图3-4所示,生成模板模型,以加快图像处理的速度。图3-4生成的模板图像Fig.3-4Templateimagesaftercreation3.3.3工件识别a.获取图像将左右摄像头获取的待识别工件图像传输到HALCON界面中,结果如图3-5所示。左图像右图像图3-5待识别工件图像Fig.3-5Imagesofworkpiecetorecogniseb.寻找待识别工件并确定其方位使用find_shape_model函数在待识别图像中通过搜寻模板模型,获取待识别图像中目标工件的位置、旋转角度和个数。(1)位置的确定。将寻找到的各个工件使用vector_angle_to_rigid函数,将各自从find_shape_model函数中计算出的位置和旋转角度转化成转换矩阵的形式。因此,该转换矩阵包括平移矩阵和旋转矩阵两部分。使用affine_trans_contour_xld函数根据转换矩阵将检测出的工件边缘转化成XLD轮廓形式,并将工件的位置显示出来。XLD(轮廓数据)是eXtendedLineDescription的缩写,是一种用于纪录区域的数据结构。这种区域是任意的,可以是多边型,可以是开放或封闭的等值线、直线等。XLD对象以次像元精度来记录,它有两种基本结构:等值线和多边型。XLD对象的建立方法是由线(等值线,边缘等)上的取样点连接而成,藉由改变取样密度和位置,可以提高精度。此外还包含了角度,弧度等数据。一般来说,XLD用来记录边缘侦测计算的结果,可以用在次像元精度等级的计算及应用。位置检测效果如图3-6所示。左图像右图像图3-6位置检测效果Fig.3-6Detectedresultofposition(2)方向的确定。使用affine_trans_pixel函数根据转换矩阵计算出各个工件的方向,并将工件的方向用箭头表示出来。方向检测效果如图3-7所示。左图像右图像图3-7方向检测效果Fig.3-7Detectedresultofdirection对于多工件的检测,将不同工件的位置和方向检测结果如图3-8所示。图像1图像2图3-8多工件检测效果Fig.3-8Detectingresultofmulti-workpieces3.4图像边缘特征点检测为了满足机器人抓取的实时性要求,本文使用基于图像边缘特殊点的立体匹配方法。它是通过计算图像边缘特征,将两幅图像(左右摄像机同时拍摄得到的一对图像)的边缘特征点进行匹配。3.4.1现有角点检测方法将两幅或者更多的图像进行准确匹配,而后从中提取有用的信息(如对应点的位置),这是许多应用中所要求的。在大多数应用中,对两幅图像中的每对像素点分别进行比较显然是不切实际的,因为运算量太大。从直观上看,我们只需对图像中的一些感兴趣的点(称为兴趣点)进行匹配,通过这些点就可以找到两幅图像之间的对应关系。这样就极大地减少了运算量。根据具体不同的要求。我们定义兴趣点为角点、具有高度对称性的点及纹理变化快的点等。角点是应用比较多的一种兴趣点,它是图像边界曲线上具有极大曲率值的点,或者说,是两个物体或者物体两部分之间所形成的若干边缘线的交点。角点反应了物体较大的信息,能对图像理解的后续步骤提供有效的指导。利用角点进行目标图像特征匹配、运动估计、目标跟踪等。图像中的角点的数量远远小于总像素数,如果通过角点的处理就能完成某功能的话,那将极大提高处理效率。这样,有效的提取角点就成为了计算机视觉和图像理解首要的关键问题。到目前为止,角点检测方法主要分为两类【39】:一类是基于边缘图像的角点提取,即通过提取边缘线上具有最大转角的点。这类方法的主要缺点是角点对边缘线依赖较大,如果边缘线由于某种原因发生中断(在实际中经常会出现这种情况),则会对角点的提取结果造成较大的影响。第二类是直接基于灰度图像的的角点检测,直接对原始灰度图像数据进行处理,它们主要是通过计算曲率及梯度来达到检测角点的目的,这样检测成功与否并不依赖边缘提取算法。a.SUSAN算子原理[40]SUSAN(SmallUnivalueSegmentAssimilatingNucleus)算子是由英国牛津大学学者Smith和Brady提出的,是一种基于灰度的特征点获取方法,适用于图像中边缘和角点的检测,可以去除图像中的噪声。SUSAN算子的模板与常规卷积算法的正方形模板不同,它使用了一种近似圆形的模板,用圆形模板在图像上移动,模板内部每个图像像素点的灰度值都与模板中心像素的灰度值做了比较,若模板内某个像素的灰度与模板中心像素(核)灰度的差值小于一定的阈值,则认为该点与核具有相同(或相近)的灰度,由满足这种条件的像素组成的区域称为核值相似区。b.Harris角点提取原理[40]Harris算法以Moravec算法为基础。Moravec算法的基本原理是:取以目标像素点为中心的一个小窗口,并将窗口沿上下左右4个方向移动,计算4个方向上窗口内的灰度变化,并以4个值中的最小值为该目标像素点的角点响应函数值,若该值大于阀值,则为角点。Harris算法则计算窗口沿任何方向移动后的灰度变化,并用解析形式表达。Harris算法存在一个最大的不足就是对尺度变化较为敏感,在大的尺度下检测为角点的那些像素点在小尺度下就可能成为边缘上的点或其他类型特征点。3.4.2边缘轮廓的提取以上各方法采用的是基于灰度值的角点检测方法。本文采用的是基于数学形态学的边缘特殊点提取,即基于边缘图像的检测方法。数学形态学的数学基础和所用语言是集合论,因此它具有完备的数学基础,这为形态学用于图像分析和处理、形态滤波器的特性分析和系统设计奠定了坚实的基础。数学形态学的应用可以简化图像数据,保持它们基本的形状特性,并除去不相干的结构。数学形态学的算法具有天然的并行实现的结构,实现了形态学分析和处理算法的并行,大大提高了图像分析和处理的速度。数学形态学是由一组形态学的代数运算子组成的,它的基本运算有4个:膨胀(或扩张)、腐蚀(或侵蚀)、开启和闭合,它们在二值图像和灰度图像中各有特点。基于这些基本运算还可推导和组合成各种数学形态学实用算法,用它们可以进行图像形状和结构的分析及处理,包括图像分割、特征抽取、边界检测、图像滤波、图像增强和恢复等。将从摄像机采集的图像进行中值滤波、膨胀、腐蚀等预处理后对工件图像提取灰度直方图,然后采用自动阈值分割将图像二值化,由基于图像的紧密性工件识别方法提取出图像区域,同时获取图像边缘坐标值和图像的中心坐标值。使用get_region_contour函数对得到的图像区域提取轮廓。轮廓的提取是从图像区域的行最小值和列最大值开始,按照顺时针的方向沿轮廓逐一提取,最后回到第一个像素值处,完成对整个图像的轮廓提取。提取效果如图3-9所示。图3-9边缘轮廓提取Fig.3-9Edgecontourextraction3.4.3边缘特殊点的提取a.特殊点提取的原理本文采用基于数学形态学的特征点提取方法。具体的原理如下:利用获取到的图像的边缘坐标值和中心坐标值,计算边缘上各个点坐标与中心坐标之间的欧氏距离,在一系列距离值中,曾出现最大值或者是最小值的地方便是图像边缘的拐角点或者是中点。欧氏距离(Euclideandistance)是一个通常采用的距离定义,它是在m维空间中两个点之间的真实距离。在二维和三维空间中的欧式距离的就是两点之间的距离。二维空间中的公式是:三维空间中的公式是:推广到n维空间,欧式距离的公式是:其中i=1,2…nXi1表示第一个点的第i维坐标,Xi2表示第二个点的第i维坐标。n维欧氏空间是一个点集,它的每个点可以表示为(x(1),x(2)...x(n)),其中x(i)(i=1,2...n)是实数,称为x的第i个坐标,两个点x和y=(y(1),y(2)...y(n))之间的距离d(x,y)定义为上面的公式。以下分两种情况说明:任意多边形和存在圆弧的曲线。(1)当边缘轮廓为任意多边形时。首先提取出图形的边缘轮廓,以图形3-10为例。原图提取边缘轮廓图3-10边缘轮廓为多边形Fig.3-10Edgesforthepolygon将边缘轮廓各点距离中心的欧氏距离值如图3-11所示。并通过程序找出曲线中的极值点,将寻找出的极值点作为图形边缘上的特殊点。图3-11边缘轮廓各点距中心的欧式距离图Fig.3-11Euclideandistanceofbetweenedgecontourpointsandcenterpoint上述基于图像形态学的特征点提取方法,计算时与选择相邻点的点数也很有关系。以图3-12为例:图3-12模板大小与提取结果对比Fig.3-12Differentresultsbetweendifferentmodels由此可见,与要计算的点前后相邻的点选取的越多,计算出来的结果越接近于实际,同时运算时间也会相应的加长。(2)当边缘轮廓存在圆弧时,还进行了曲线拟合计算,以分离出边缘轮廓为圆的部分。先拟合出轮廓为圆或者是近似圆的部分,在该部分上均匀取点。第一步:获取轮廓全局属性的XLD:get_contour_global_attrib_xld(ObjectSelected,'cont_approx',Attrib)clip_region_rel(RegionBorder,RegionClipped,5,5,5,5)dilation_circle(RegionClipped,RegionDilation,2.5)以参数Attrib来判断圆弧部分是否存在。如果Attrib>0,就说明在轮廓中有近圆部分。经计算,此图中Attrib值为1,所以有圆弧存在。提取出圆弧部分如图3-14所示。图3-13存在圆弧的图形图3-14提取圆弧部分Fig.3-13ImageincludingarcFig.3-14Arcpartsextracted第二步:对近圆部分进行圆拟合。使用gen_ellipse_contour_xld函数,找出圆弧部分所对应圆的圆心,并在近圆部分的边缘上进行等间距均匀取点,拟合出的圆如图3-15所示,在圆弧上等间距取点如图图3-16所示。图3-15曲线部分圆拟合图3-16曲线上取点Fig.3-15IimitatecircleincurvepartsFig.3-16Pickuppointsoncurve第三步:对边缘其他部分进行边缘特殊点检测。将圆弧部分的边缘点从提取到的整个轮廓中的边缘点出去,然后按照基于数学形态学的特征点提取方法,将剩余的点提取出来,

温馨提示

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

评论

0/150

提交评论