CN108898634A - 基于双目相机视差对绣花机目标针眼进行精确定位的方法 - Google Patents

基于双目相机视差对绣花机目标针眼进行精确定位的方法 Download PDF

Info

Publication number
CN108898634A
CN108898634A CN201810739003.5A CN201810739003A CN108898634A CN 108898634 A CN108898634 A CN 108898634A CN 201810739003 A CN201810739003 A CN 201810739003A CN 108898634 A CN108898634 A CN 108898634A
Authority
CN
China
Prior art keywords
camera
pinprick
image
coordinate
mechanical arm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810739003.5A
Other languages
English (en)
Other versions
CN108898634B (zh
Inventor
张显磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201810739003.5A priority Critical patent/CN108898634B/zh
Publication of CN108898634A publication Critical patent/CN108898634A/zh
Application granted granted Critical
Publication of CN108898634B publication Critical patent/CN108898634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration

Abstract

本发明公开了基于双目相机视差对绣花机目标针眼进行精确定位的方法,属于绣花机自动化设计技术领域。利用双目相机的视差,构建高精度的算法,识别穿线器和目标针眼的精确位置;主要的技术难题在于利用机器视觉以及深度学习算法来检测定位针眼,并通过反馈调节机械臂将线穿过针眼。采用双目相机先进行标定,求出双目相机的相对位置,再对机械臂和相机进行标定,通过标定好的相机同时拍摄目标图像来求解目标在空间中的具体位置。采用基于深度学习的针眼定位方案作为上述机器视觉方法的冗余补充和识别率、准确率以及精确度的增强。本发明通过解决自动穿线问题,极大的提高了电脑绣花设备的自动化程度,节约人力,降低生产成本。

Description

基于双目相机视差对绣花机目标针眼进行精确定位的方法
技术领域
本发明涉及一种基于双目相机视差对绣花机目标针眼进行精确定位的方法,尤其涉及一种利用双目相机的视差构建高精度并识别穿线器和目标针眼精确位置的方法,属于绣花机自动化设计技术领域。
背景技术
绣花机断线重接的基本工作过程如下:
S1绣花机发出某一针杆面线断线告警,告警信号同时输入主控电路。
S2主控电路接收到面线断线告警后,启动导轨电机,将机械臂移动至发出报警的针杆附近(由于绣花机上正在运作的针杆相对位置固定,此步骤移动机械臂后的精度会在针杆的1cm以内)。
S3机械臂的“手”部,预置了两个摄像头,通过两个摄像头捕捉到的针眼位置以及穿线器的相对位置,计算机械臂的移动坐标。
S4通过判断针眼是否穿过,进行反馈调节直至穿过针眼。
S5通过安装在绣花机机头的一个机械装置把断线架到已经穿过针眼的穿线器上。
S6机械臂夹着穿线器从针眼后返回,由于穿线器上架着线,此时线就穿过了针眼。
S7机械臂返回待命位置,向绣花机主控发出启动指令,绣花机继续工作。
各步骤的详细说明如下。
上述S1中,绣花机如何判断面线断线并发出告警信号不在本发明范围内,故简述如下。如图1所示,绣花机的各个机头上均装有一个转轮和一个勾线小铁丝,如图1中的绣花机的工作区域1及绣花机的机头2所示,正常工作时(未断线时)线在针杆的上下刺绣动作中带动转轮以一定的速度旋转,如图1中绣花机的工作区域1所示,并且带动勾线小铁丝以一定的频率触碰一个固定的金属片,如图1中绣花机的机头2所示,转轮的背部带有能阻断光信号的遮断片,与一个检测其转动的光耦共同组成一个检测单元。小铁丝和金属片构成一个通断的开关信号,此为另一个冗余检测单元。正常工作时,光耦和固定的金属片都检测到一个时断时续的脉冲信号,当面线发生断线,线上失去张力,无法带动转轮旋转,也无法拉动勾线小铁丝离开金属片,如图1中执行断线重穿的机械臂3所示,那么此时,光耦会检测到一个稳定的信号(‘通’或者‘断’),金属片也检测到一个稳定的信号(‘通’),两者为′与′逻辑,与门输出′1′时,绣花机据此发出断线告警。断线告警经绣花机主控电路引出,作为启动信号,并引入主控电路。
上述S2中,当本装置的主控电路接收到启动信号后,主控电路给出指令给驱动电路,驱动电路驱动电机来到对应针杆附近。每个机头的工作位置都是在对应机头底板的针孔上方,是可以预先定义的,图2展示了绣花机机头处于工作状态的针杆(图2中绣花机的工作区域1)的工作位置,由固定在底板上的工作孔位置(图2中绣花机的机头2)来确定。在图3中展示了机械臂在导轨上移动的示意。图3中也展示了整个系统的总体情况:
上述S3中(详见图4),双目摄像头(图4中的绣花机的工作区域1)预置在机械臂的“手”部,即执行机构(图4中的绣花机的机头2)的上端。
发明内容
本发明的目的在于利用双目相机的视差,构建高精度的算法,识别穿线器和目标针眼的精确位置;主要的技术难题在于利用机器视觉以及深度学习算法来检测定位针眼,并通过反馈调节机械臂将线穿过针眼。
为实现上述目的,本发明采用的技术方案为基于双目相机视差对绣花机目标针眼进行精确定位的方法,该方法的实现过程如下:
S1相机标定;
首先定义两个坐标系分别为uO0v和xO1y,uO0v中,(u,v)是以像素为单位的图像坐标系下的横纵坐标,坐标原点O0为像素点(0,0)所在的图像位置;xO1y中,(x,y)是以物理长度单位表示的图像坐标系的坐标,原点O1为相机的光轴与图像平面的交点。
令每个像素在x,y轴上的实际物理尺寸为dx,dy,则有:
(u0,v0)是坐标系原点O1在坐标系uO0v中的坐标。
将u、v表示为齐次坐标与矩阵(Homogeneous Matrix)的形式,如下:
解得上述齐次坐标与矩阵的逆关系为:
引入相机针孔模型,在相机针孔的光心处建立相机坐标系(xc,yc,zc),其xc,yc轴与x,y轴平行。f为相机焦距,世界坐标系(xw,yw,zw)用于定义P点的位置。
世界坐标系与相机坐标系的坐标变换关系如下:
其中,M2表示世界坐标系转换到相机坐标系的变换矩阵,R是M2中表示坐标系旋转的部分,t是M2中表示坐标系平移的部分。
空间中的P点(Xw,Yw,Zw)在图像上成像为P′点(x,y),由射影定理可知:
表示为齐次坐标与矩阵(Homogeneous Matrix)形式,如下:
同时将式(1)和式(2)代入,得:
式(3)中第一行前两个矩阵相乘的结果矩阵中,令其第1行第1列的元素为ax、令其第2行第2列的元素为ay
所以,要通过现实坐标系中点的位置求其成像在图片上的位置,只需要知道矩阵M1,M2的值即可,由于M1只与相机的内部参数(如焦距,感光元件尺寸,成像分辨率等)有关,故称M1为相机的内参矩阵,M2只与相机摆放的位姿有关(相机相对于世界坐标系),故称M2为相机的外参矩阵。相机标定即是求得相机的矩阵M1和M2。
求机的矩阵M1,M2时候需要知道某些空间中的特征点序列P1,P2,......,Pn与其对应的在图像上的点P1′,P2′,......,Pn′的坐标,空间中的点用标定板定义。标定板中每个黑点的直径以及相邻黑点的距离都是精确已知的,其中五个特定形状的图案即由若干空心黑点组成用来判别标定板的方向。
现将式(3)写为:
其中,(Xwi,Ywi,Zwi,1)为空间第i个点的坐标;(ui,vi,1)为第i点的图像上的坐标,其中i=1,2,3,j=1,2,3,4;mij为投影矩阵M中第i行,第j列的元素;将式(4)展开,得:
Zciui=m11Xwi+m12Ywi+m13Zwi+m14
Zcivi=m21Xwi+m22Ywi+m23Zwi+m24
Zci=m31Xwi+m32Ywi+m33Zwi+m34
(5)
再将式(5)进行数学变换,得:
m11Xwi+m12Ywi+m13Zwi+m14-uim31Xwi-uim32Xwi-uim33Xwi=uim34
m21Xwi+m22Ywi+m23Zwi+m24-vim31Xwi-vim32Xwi-vim33Xwi=vim34
(6)
对于有n个已知点的标定板列出2n个方程,用矩阵形式表示如下:
简写为:
Km=U
K即是式(7)中等号左侧的第一个矩阵,m即是式(7)中等号左侧的第二个矩阵,U即是式(7)中等号右侧的结果矩阵。
当2n>11时,由最小二乘法求出上述齐次线性方程组的解为:
m=(KTK)-1KTU
理论上,只要空间6个以上的已知点与他们的图像点坐标即求得矩阵M。
实际操作时,需要远远大于6个点的已知点来减小误差,同时引入修正镜头畸变模型,如下:
u,v分别是指原图像坐标系uO0v,是引入镜头畸变模型后的图像坐标系的横轴、纵轴坐标;k为镜头的畸变常数。
至此,完成了单个相机的标定。
采用双目相机进行标定,即用两个相机同时拍摄标定板的图像,再进行每个相机的单独标定,最后,在每个相机单独标定完成后,求双目相机的相对位置。作法如下:
令两个相机的外参为R1,t1和R2,t2,则对空间中任一点P,若其分别在世界坐标系、相机C1坐标系和相机C2坐标系下的坐标为Xw,Xc1,Xc2,有:
Xc1=R1Xw+t1
Xc2=R2Xw+t2
上式消去Xw,得:
因此,两个相机C1,C2之间的位姿关系表示为:
S2三维空间点的重建;
通过双目相机C1、C2观察空间点P(X,Y,Z),令其在C1所摄图片中的位置为p1(u1,v1),在C2所摄图片中的位置为p2(u2,v2),并且相机C1,C2已标定。由式(4)知:
再由式(5)和式(6),消去式(8)和式(9)中的Zc1和Zc2,得到关于X,Y,Z的四个线性方程:
由于空间点P,是空间直线O1P1,O2P2的交点,故上述四个方程的解(X,Y,Z)即为空间点P的坐标。如此,只要通过两个标定好的相机同时观察空间中的绣花机目标针眼位置,通过绣花机目标针眼位置分别在左右相机中计算器成像坐标,即可求解出在空间中的真实坐标位置。
S3根据图像特征建立穿线器模型和针眼模型;
首先,引入边缘检测用的Sobel算子,它是以离散型的差分算子,来运算图像亮度函数梯度的近似值。Sobel算子是典型的基于一阶导数的边缘检测算子,由于该算子中引入了类似局部平均的运算,因此对噪声具有平滑作用,能很好的消除噪声的影响。同时,Sobel算子对于象素的位置的影响做了加权,与Prewitt算子、Roberts算子相比效果更好。
具体来说,Sobel算子包含两组3x3的矩阵,分别为横向模板及纵向模板,将两组3x3的矩阵与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。实际中,用如下两个模板来检测图像边缘。
其中Gx用于检测水平方向,Gy用于检测纵向。
经过Sobel算子处理的图像再结合以下公式,计算图像的梯度:
其中G表示梯度的大小,θ表示梯度的方向。
在得到图像的梯度之后,下一步进行非最大值抑制。
非最大值抑制算法在边缘检测的基础上,跟踪边缘两侧的像素的亮度值,若其小于左右两侧的像素的亮度值,则抑制当前像素;进行非最大值抑制之后,使边缘变细。
之后,再对结果图像用滞后双阙值进行限定,即使用一个最小阙值和最大阙值除去结果中的不必要部分,最终得到一个合适的模板。
S4基于形状的模板匹配;
在S3中得到合适的模板之后,接下来就要对相机拍摄的目标图像根据模板进行匹配和识别。作法如下:
模板是由一系列的点组成的点集,令其为Pi T=(Xi T,Yi T)。
每个点对应的梯度为Gi T=(Gxi T,Gyi T),i=1...n表征模板中的点的序号。对于目标图像在S3中进行处理,得到目标图像的梯度信息,令其为Gu,v s=(Gxu,v s,Gyu,v s),其中,u=1...n表征目标图像的行,v=1...n表征目标图像的列。n表示图像的第n行/列。
用相似性度量的算法检测目标图像和模板的相似度,相似度计算采用的是归一化后的模板梯度向量和目标梯度向量的点积之和。Su,v公式如下:
该相似度函数Su,v的返回值在[0,1]之间,如果目标图像和模板完美匹配,则函数的返回值为1。
S5基于深度学习的针眼位置精确检测;
采用基于深度学习的针眼定位方案作为上述机器视觉方法的冗余补充和识别率、准确率以及精确度的增强。具体实现如下:
考虑针眼识别的特定场景约束:1)针眼的形状大致为固定长宽比的小矩形;2)针眼区域内部和外部的颜色、纹理有较大差别。在这两个约束下,采用逐步合并的方法划分候选区域:
(1)、将图像整齐地划分成若干个固定长宽比的小矩形;
(2)、计算每个小矩形区域的颜色、纹理的数值特征;
(3)、遍历计算相邻两个小矩形的特征空间欧氏距离;
(4)、如果欧氏距离小于某预定的阈值,将这两个小矩形合并。通过这种启发式的方法,在产生候选区域阶段比起暴力穷举法节省了98%的时间。
产生候选区域后,通过空间缩放,将每个区域变换成64*64*3(RGB三色信道)的标准大小图片,将图片输入CNN进行图像分类。采用简化的AlexNet网络结构,图像接入2个卷积层,每层置32个3*3卷积核,进行2*2的最大池化,再接入2个卷积层,每层置64个3*3卷积核,再进行2*2最大池化,最后通过两个全连接层进行图像的二分类;划分好候选区域。
训练过程中,使用了大约1000张手工标注的针眼图像作为正样本,10万张imagenet上下载的其他图像作为噪声负样本,对正样本进行1∶100的过采样。使用CUDA在GPU上训练了约8小时后,模型对针眼图像分类的准确率达到了99.97%。
在划分好候选区域并训练好CNN图像分类器后,已经能获得每个区域的图像是针眼的概率;为了进一步精密修正针眼的位置,继续训练了一个边界框坐标的线性回归模型。训练样本为(P,G),其中P=(Px,Py,Pw,Ph),Px、Py、Pw、Ph分别为预测边界框的x轴坐标、y轴坐标、宽度、高度,四个值确定唯一区域;而G=(Gx,Gy,Gw,Gh),Gx、Gy、Gw、Gh分别为真实边界框的x轴坐标、y轴坐标、宽度、高度。仍采用人工标注的方法画出约1000张针眼图像的针眼所在区域真实值,用最小化均方误差作为目标函数进行训练。训练完成后,根据公式反求出预测框的修正位置:
由此实现了对图像中针眼所在位置的精确检测定位。
S6机械臂手眼标定;
对图像中针眼所在位置的精确检测定位后,机械臂手眼标定是为了确定机械臂坐标系与相机坐标系的相对关系,以便将相机拍摄的图像信息转换成机械臂的执行指令。进行标定时,用机械臂的手抓着标定板在相机视野内移动、旋转,具体作法如下:
首先建立四个坐标系,分别是相机坐标系(cam),机械臂底座坐标系(base),机械臂末端执行器的坐标系(tool)以及标定板坐标系(calibration-plate简写为cal)。依次获得四个齐次坐标下的刚体变换矩阵:
camHbase是指:机械臂底座到相机的变换,设为X;
camHcal是指:标定板到相机的变换,设为B;
toolHcal是指:标定板到机械臂末端的变换,设为Y;
baseHtool是指:机械臂末端到底座的变换,设为A;
四个变换形成一个变换链,故:
camHcalcamHbase·baseHtool·toolHcal
即:
B=X·A·Y
对于已经设定好的机械臂和相机而言,X是不变的,对于进行手眼标定时,已经固定在机械手上的标定板而言其相对于机械臂末端的位置也是固定的,即Y也是不变的。则通过多次试验,解出矩阵X,Y。
第i次试验时,有
Bi=X·Ai·Y
第j次试验时,有
Bj=X·Aj·Y
两式消去Y,可得:
Bi -1·X·Ai=Bj -1·X·Aj
其中Bi,Bj由S1中的相机标定方法得出。Ai,Aj由机械臂控制器上读出。
通过多次试验,解出矩阵X,同理消去矩阵X可解出矩阵Y。
解出的矩阵X(camHbase)是机械臂底座坐标系到相机坐标系的变换矩阵,即是机械臂手眼标定的结果。
若通过双目相机计算得的空间点P相对于相机坐标系的坐标为Pcam(X1,Y1,Z1),则其相对于机械臂底座的坐标Pbase(X2,Y2,Z2)即为:
PbasecamHbase -1·Pcam
将坐标Pbase输入至机械臂控制器,机械臂控制器控制机械臂就会移动到相机识别出来的目标位置,进行穿线。
S7反馈调节过程判断依据是针眼中是否有穿线器;
根据穿线器成功穿过针眼时所训练的模型进行检测,当试穿未穿过时,算法进入调节过程,即以一个合适的固定步长通过图像算法判断的相对位置,指导机械臂趋近针眼位置,在目前设置的固定步长0.2mm的情况下,以及用目前的原型试验机试验的情况下,一次穿线成功率为68.4%,二次穿线成功率为90%,三次穿线成功率可达95.8%。
绣花机正常运行时,面线进行刺绣;当绣花机检测到面线断线,绣花机的机头上下各有一个固线夹,固线夹动作使得面线固定在上下固线夹之间。当穿线器穿过针眼后,固线夹沿一个固定方向移动将所夹持的线架到穿线器上,完成机械臂归位,归位过程中穿线器勾着面线退出针眼,同时就使得面线穿过了针眼,穿线流程结束。
双目相机安置在机械臂上,机械臂能够接受坐标位姿移动指令,并在三维空间中的移动。导轨电机安装在导轨一侧,并驱动导轨上的机械臂完成水平方向长距离位移。
驱动电路是为机械臂及导轨电机提供驱动和发出控制指令的电路。
主控电路是接收绣花机信号,处理双目相机拍摄的图像信息的控制电路。
绣花机主控电路是控制绣花机各个模块的控制器,提供一个断线告警信号作为启动信号。驱动电路为机械臂控制器的控制电路,机械臂和控制电路均与驱动电路连接,驱动电路与主控电路连接,主控电路与绣花机主控电路连接。
在绣花机发明之初,绣花行业完成了从纯手工加工到大规模机械化生产的转变,但是在人力成本日益高企的今天,机械化生产还未能达到高度自动化,仍需要工人在设备运作过程中长期值守。本发明通过解决自动穿线问题,极大的提高了电脑绣花设备的自动化程度,节约人力,降低生产成本。另外,如何进行高精确度的针眼识别和定位是本发明的核心,本发明实现了亚毫米级(0.1mm)的算法及执行精度。
附图说明
图1为绣花机机头上的面线断线检测机构。
图2为机头工作位置及底板针孔位置。
图3为机械臂、导轨、绣花机总览。
图4为安装好的双目相机示意图。
图5为坐标系uO0v和xO1y示意图。
图6为相机坐标系和世界坐标系示意图。
图7为标定板示意图。
图8为双目相机的定位示意图。
图9为图像金字塔示意图。
图10为AlexNet的结构示意图。
图11为相机手眼标定的各个坐标系变换。
图12为模块结构示意图。
图13为本方法的整体实施流程图。
具体实施方式
以下结合附图和具体实施方式对本发明进行进一步详细说明。
如图5-8和图11-12所示,双目相机安置在机械臂上,机械臂能够接受坐标位姿移动指令,并在三维空间中的移动;导轨电机安装在导轨一侧,并驱动导轨上的机械臂完成水平方向长距离位移。
驱动电路是为机械臂及导轨电机提供驱动和发出控制指令的电路;主控电路是接收绣花机信号,处理双目相机拍摄的图像信息的控制电路;绣花机主控电路是控制绣花机各个模块的控制器,提供一个断线告警信号作为启动信号;驱动电路为机械臂控制器的控制电路,机械臂和控制电路均与驱动电路连接,驱动电路与主控电路连接,主控电路与绣花机主控电路连接。
图13为本方法的整体实施流程图,基于双目相机视差对绣花机目标针眼进行精确定位的方法,该方法的实现过程如下,
S1相机标定;首先定义以像素为单位的图像坐标系和以物理长度单位表示的图像坐标系;引入相机针孔模型,完成单个相机的标定;采用双目相机进行标定,即用两个相机同时拍摄标定板的图像,再进行每个相机的单独标定,最后,在每个相机单独标定完成后,求双目相机的相对位置;
S2三维空间点的重建;通过两个标定好的相机同时观察空间中的绣花机目标针眼位置,通过绣花机目标针眼位置分别在左右相机中计算器成像坐标,即可求解出在空间中的真实坐标位置;
S3根据图像特征建立穿线器模型和针眼模型;引入边缘检测用的Sobel算子,在得到图像的梯度之后,下一步进行非最大值抑制算法;非最大值抑制算法在边缘检测的基础上,跟踪边缘两侧的像素的亮度值;进行非最大值抑制之后,使边缘变细;再对结果图像用滞后双阙值进行限定,即使用一个最小阙值和最大阙值除去结果中的不必要部分,最终得到一个合适的模板;
S4基于形状的模板匹配;在S3中得到合适的模板之后,接下来就要对相机拍摄的目标图像根据模板进行匹配和识别;
S5基于深度学习的针眼位置精确检测;考虑针眼识别的特定场景约束并采用逐步合并的方法划分候选区域,实现对图像中针眼所在位置的精确检测定位;
S6机械臂手眼标定;
对图像中针眼所在位置的精确检测定位后,机械臂控制器控制机械臂就会移动到相机识别出来的目标位置,进行穿线;
S7反馈调节过程判断依据是针眼中是否有穿线器;根据穿线器成功穿过针眼时所训练的模型进行检测,当穿线器穿过针眼后,固线夹沿一个固定方向移动将所夹持的线架到穿线器上,完成机械臂归位,归位过程中穿线器勾着面线退出针眼,同时就使得面线穿过针眼,穿线流程结束。
上述各个步骤具体的实现参见如下描述:
S1相机标定;实现过程如下,
首先定义两个坐标系分别为uO0v和xO1y,uO0v中,(u,v)是以像素为单位的图像坐标系下的横纵坐标,坐标原点O0为像素点(0,0)所在的图像位置;xO1y中,(x,y)是以物理长度单位表示的图像坐标系的坐标,原点O1为相机的光轴与图像平面的交点;
令每个像素在x,y轴上的实际物理尺寸为dx,dy,则有:
(u0,v0)是坐标系原点O1在坐标系uO0v中的坐标;
将u、v表示为齐次坐标与矩阵的形式,如下:
解得上述齐次坐标与矩阵的逆关系为:
引入相机针孔模型,在相机针孔的光心处建立相机坐标系(xc,yc,zc),其xc,yc轴与x,y轴平行;f为相机焦距,世界坐标系(xw,yw,zw)用于定义P点的位置;
世界坐标系与相机坐标系的坐标变换关系如下:
其中,M2表示世界坐标系转换到相机坐标系的变换矩阵,R是M2中表示坐标系旋转的部分,t是M2中表示坐标系平移的部分;
空间中的P点(Xw,Yw,Zw)在图像上成像为P′点(x,y),由射影定理可知:
表示为齐次坐标与矩阵形式,如下:
对上述两式进行变换,得:
该式中第一行前两个矩阵相乘的结果矩阵中,令其第1行第1列的元素为ax、令其第2行第2列的元素为ay
所以,要通过现实坐标系中点的位置求其成像在图片上的位置,只需要知道矩阵M1,M2的值即可,由于M1只与相机的内部参数有关,故称M1为相机的内参矩阵,M2只与相机摆放的位姿有关,故称M2为相机的外参矩阵;相机标定即是求得相机的矩阵M1和M2;
求机的矩阵M1,M2时候需要知道某些空间中的特征点序列P1,P2,......,Pn与其对应的在图像上的点P1′,P2′,......,Pn′的坐标,空间中的点用标定板定义;标定板中每个黑点的直径以及相邻黑点的距离都是精确已知的,其中五个特定形状的图案即由若干空心黑点组成用来判别标定板的方向;
现上式进行将写为:
其中,(Xwi,Ywi,Zwi,1)为空间第i个点的坐标;(ui,vi,1)为第i点的图像上的坐标,其中i=1,2,3,j=1,2,3,4;mij为投影矩阵M中第i行,第j列的元素;将式上式进行展开,得:
Zciui=m11Xwi+m12Ywi+m13Zwi+m14
Zcivi=m21Xwi+m22Ywi+m23Zwi+m24
Zci=m31Xwi+m32Ywi+m33Zwi+m34
再将上式进行数学变换,得:
m11Xwi+m12Ywi+m13Zwi+m14-uim31Xwi-uim32Xwi-uim33Xwi=uim34
m21Xwi+m22Ywi+m23Zwi+m24-vim31Xwi-vim32Xwi-vim33Xwi=vim34
对于有n个已知点的标定板列出2n个方程,用矩阵形式表示如下:
简写如下:
Km=U
K即是式中等号左侧的第一个矩阵,m即是式中等号左侧的第二个矩阵,U即是式中等号右侧的结果矩阵;
当2n>11时,由最小二乘法求出上述齐次线性方程组的解为:
m=(KTK)-1KTU
理论上,只要空间6个以上的已知点与他们的图像点坐标即求得矩阵M;
实际操作时,需要远远大于6个点的已知点来减小误差,同时引入修正镜头畸变模型,如下:
u,v分别是指原图像坐标系uO0v,是引入镜头畸变模型后的图像坐标系的横轴、纵轴坐标;k为镜头的畸变常数;
至此,完成了单个相机的标定;
采用双目相机进行标定,即用两个相机同时拍摄标定板的图像,再进行每个相机的单独标定,最后,在每个相机单独标定完成后,求双目相机的相对位置;作法如下:
令两个相机的外参为R1,t1和R2,t2,则对空间中任一点P,若其分别在世界坐标系、相机C1坐标系和相机C2坐标系下的坐标为Xw,Xc1,Xc2,有:
Xc1=R1Xw+t1
Xc2=R2Xw+t2
上式消去Xw,得:
因此,两个相机C1,C2之间的位姿关系表示为:
S2三维空间点的重建;实现过程如下,
通过双目相机C1、C2观察空间点P(X,Y,Z),令其在C1所摄图片中的位置为p1(u1,v1),在C2所摄图片中的位置为p2(u2,v2),并且相机C1,C2已标定;由上式可知:
再由数学变换可以得到关于X,Y,Z的四个线性方程:
由于空间点P,是空间直线O1P1,O2P2的交点,故上述四个方程的解(X,Y,Z)即为空间点P的坐标;如此,只要通过两个标定好的相机同时观察空间中的绣花机目标针眼位置,通过绣花机目标针眼位置分别在左右相机中计算器成像坐标,即可求解出在空间中的真实坐标位置;
S3根据图像特征建立穿线器模型和针眼模型,实现过程如下,
首先,引入边缘检测用的Sobel算子,Sobel算子包含两组3x3的矩阵,分别为横向模板及纵向模板,将两组3x3的矩阵与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值;用如下两个模板来检测图像边缘;
其中Gx用于检测水平方向,Gy用于检测纵向;
经过Sobel算子处理的图像再结合以下公式,计算图像的梯度:
其中G表示梯度的大小,θ表示梯度的方向;
在得到图像的梯度之后,下一步进行非最大值抑制算法;
非最大值抑制算法在边缘检测的基础上,跟踪边缘两侧的像素的亮度值,若其小于左右两侧的像素的亮度值,则抑制当前像素;进行非最大值抑制之后,使边缘变细;
之后,再对结果图像用滞后双阙值进行限定,即使用一个最小阙值和最大阙值除去结果中的不必要部分,最终得到一个合适的模板;
S4基于形状的模板匹配;实现过程如下,
在S3中得到合适的模板之后,接下来就要对相机拍摄的目标图像根据模板进行匹配和识别;作法如下:
模板是由一系列的点组成的点集,令其为Pi T=(Xi T,Yi T);
每个点对应的梯度为Gi T=(Gxi T,Gyi T),i=1...n表征模板中的点的序号;对于目标图像在S3中进行处理,得到目标图像的梯度信息,令其为Gu,v S=(Gxu,v s,Gyu,v S),其中,u=1...n表征目标图像的行,v=1...n表征目标图像的列;n表示图像的第n行/列;
用相似性度量的算法检测目标图像和模板的相似度,相似度计算采用的是归一化后的模板梯度向量和目标梯度向量的点积之和;Su,v公式如下:
该相似度函数Su,v的返回值在[0,1]之间,如果目标图像和模板完美匹配,则函数的返回值为1;
S5基于深度学习的针眼位置精确检测;实现过程如下,
第一阶段的筛选候选区域有许多方法,其中最简单的就是暴力穷举法,尽可能多地采用不同尺度,在每个尺度上用不同长宽比的矩形去遍历图像的每一个位置,但是这样做无疑会使得计算量大增。为减少计算量,本发明考虑针眼识别的特定场景约束:1)针眼的形状大致为固定长宽比的小矩形;2)针眼区域内部和外部的颜色、纹理有较大差别;在这两个约束下,采用逐步合并的方法划分候选区域:
(1)、将图像整齐地划分成若干个固定长宽比的小矩形;
(2)、计算每个小矩形区域的颜色、纹理的数值特征;
(3)、遍历计算相邻两个小矩形的特征空间欧氏距离;
(4)、如果欧氏距离小于某预定的阈值,将这两个小矩形合并;
产生候选区域后,通过空间缩放,将每个区域变换成64*64*3的标准大小图片,将图片输入CNN进行图像分类;采用简化的AlexNet网络结构,图像接入2个卷积层,每层置32个3*3卷积核,进行2*2的最大池化,再接入2个卷积层,每层置64个3*3卷积核,再进行2*2最大池化,最后通过两个全连接层进行图像的二分类;划分好候选区域;
图10为AlexNet的结构示意图。
在划分好候选区域并训练好CNN图像分类器后,已经能获得每个区域的图像是针眼的概率;为了进一步精密修正针眼的位置,继续训练了一个边界框坐标的线性回归模型;训练样本为(P,G),其中P=(Px,Py,Pw,Ph),Px、Py、Pw、Ph分别为预测边界框的x轴坐标、y轴坐标、宽度、高度,四个值确定唯一区域;而G=(Gx,Gy,Gw,Gh),Gx、Gy、Gw、Gh分别为真实边界框的x轴坐标、y轴坐标、宽度、高度;采用人工标注的方法画出约1000张针眼图像的针眼所在区域真实值,用最小化均方误差作为目标函数进行训练;训练完成后,反求出预测框的修正位置:
由此实现对图像中针眼所在位置的精确检测定位;
S6机械臂手眼标定;实现过程如下,
对图像中针眼所在位置的精确检测定位后,机械臂手眼标定是为了确定机械臂坐标系与相机坐标系的相对关系,以便将相机拍摄的图像信息转换成机械臂的执行指令;进行标定时,用机械臂的手抓着标定板在相机视野内移动、旋转,具体作法如下:
首先建立四个坐标系,分别是相机坐标系,机械臂底座坐标系,机械臂末端执行器的坐标系以及标定板坐标系;依次获得四个齐次坐标下的刚体变换矩阵:
camHbase是指:机械臂底座到相机的变换,设为X;
camHcal是指:标定板到相机的变换,设为B;
toolHcal是指:标定板到机械臂末端的变换,设为Y;
baseHtool是指:机械臂末端到底座的变换,设为A;
四个变换形成一个变换链,故:
camHcalcamHbase·baseHtool·toolHcal
即:
B=X·A·Y
对于已经设定好的机械臂和相机而言,X是不变的,对于进行手眼标定时,已经固定在机械手上的标定板而言其相对于机械臂末端的位置也是固定的,即Y也是不变的;则通过多次试验,解出矩阵X,Y;
第i次试验时,有
Bi=X·Ai·Y
第j次试验时,有
Bj=X·Aj·Y
两式消去Y,可得:
Bi -1·X·Ai=Bj -1·X·Aj
其中Bi,Bj由S1中的相机标定方法得出;Ai,Aj由机械臂控制器上读出;
通过多次试验,解出矩阵X,同理消去矩阵X可解出矩阵Y;
解出的矩阵X是机械臂底座坐标系到相机坐标系的变换矩阵,即是机械臂手眼标定的结果;
若通过双目相机计算得的空间点P相对于相机坐标系的坐标为Pcam(X1,Y1,Z1),则其相对于机械臂底座的坐标Pbase(X2,Y2,Z2)即为:
PbasecamHbase -1·Pcam
将坐标Pbase输入至机械臂控制器,机械臂控制器控制机械臂就会移动到相机识别出来的目标位置,进行穿线;
反馈调节过程判断依据是针眼中是否有穿线器;实现过程如下,
根据穿线器成功穿过针眼时所训练的模型进行检测,当试穿未穿过时,算法进入调节过程,即以一个合适的固定步长通过图像算法判断的相对位置,指导机械臂趋近针眼位置;
绣花机正常运行时,面线进行刺绣;当绣花机检测到面线断线,绣花机的机头上下各有一个固线夹,固线夹动作使得面线固定在上下固线夹之间;当穿线器穿过针眼后,固线夹沿一个固定方向移动将所夹持的线架到穿线器上,完成机械臂归位,归位过程中穿线器勾着面线退出针眼,同时就使得面线穿过针眼,穿线流程结束。
匹配度量方法是当今世界上的图像处理中最先进的算法之一,相比于其他诸多匹配策略有着不可比拟的优势。简述如下:
(1)对于比较基础的直接基于图像灰度的策略,尽管其使用了归一化的相关性度量,可以在一定程度上抵抗线性的亮度变化,但是其对于模糊杂点和遮挡的处理无能为力。
(2)对于和本发明类似的基于形状边缘检测的策略,有一种相似度度量采用的是计算模板和目标图像的边缘距离的平均值。这种方式直观,但是其缺点在于对目标图像中有遮挡的情况发生时,由于最近的距离会急剧增加所以不具备很好的鲁棒性。
(3)对于使用豪斯多夫距离(Hausdorff Distance)的相似性度量策略,理论上鲁棒性可以处理在100k/n%内的遮挡和100l/m%内的杂乱,但是,需要估计一个m值用于确定l,这在实际应用中很难达到。
(4)上述策略基本都没有考虑到边缘的方向性,所以会导致诸多问题。后来提出的一种改进型的豪斯多夫策略,加入了角度差值的计算,但是由于其需要多次计算距离变换,导致该算法的计算量过大,难以在工业实时环境下使用。
(5)基于广义霍夫变换的方法对于不论遮挡还是杂乱模糊都有比较好的效果,但是其需要十分精确的边缘检测和方向测算,这就使得该方法尤其是对于复杂模型而言非常不现实。
本发明中使用的策略在实际应用中,还能够采用如下优化方案:
(a)通过设定一个最小相似度的值Smin,使得函数不需要完全计算完就可以提前结束计算。
(b)通过应用图像金字塔进行加速。可将图像缩放至1/2,1/4,1/8等层级,在其上先进行匹配,如果匹配不到在进入下一层,这样也可大大加快搜索的速度。图像金字塔示意图如图9所示。
(c)忽略图像对比度变化的方向。对于目标图像和模板的对比度相反的情况,可以将相似度度量函数改为:
极端一些的如果需要忽略本地的对比度变化,可将相似度度量函数改为:
在基于深度学习的目标检测算法中,R-CNN算法是出现比较早、应用最为成熟的算法之一。它是一个两阶段算法:第一阶段在图像中产生大约2000个候选区域,对每一个候选区域进行缩放、裁剪成固定的大小,并输入CNN神经网络进行图像分类;第二阶段根据每个区域图像分类的结果,再训练一个边界框回归模型,调整感兴趣的目标所在边界框的位置。从原理来说,R-CNN是把目标检测任务拆分成了图像分类+回归两个子任务,思路直观,效果很好,在2012 PASCAL VOC数据集的mAP(平均准确率)为62.4%(比第二名高出了22个百分点),在2013 ImageNet上的mAP为31.4%(比第二名高出7.1个百分点)。

Claims (10)

1.基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:该方法的实现过程如下,
S1相机标定;首先定义以像素为单位的图像坐标系和以物理长度单位表示的图像坐标系;引入相机针孔模型,完成单个相机的标定;采用双目相机进行标定,即用两个相机同时拍摄标定板的图像,再进行每个相机的单独标定,最后,在每个相机单独标定完成后,求双目相机的相对位置;
S2三维空间点的重建;通过两个标定好的相机同时观察空间中的绣花机目标针眼位置,通过绣花机目标针眼位置分别在左右相机中计算器成像坐标,即可求解出在空间中的真实坐标位置;
S3根据图像特征建立穿线器模型和针眼模型;引入边缘检测用的Sobel算子,在得到图像的梯度之后,下一步进行非最大值抑制算法;非最大值抑制算法在边缘检测的基础上,跟踪边缘两侧的像素的亮度值;进行非最大值抑制之后,使边缘变细;再对结果图像用滞后双阙值进行限定,即使用一个最小阙值和最大阙值除去结果中的不必要部分,最终得到一个合适的模板;
S4基于形状的模板匹配;在S3中得到合适的模板之后,接下来就要对相机拍摄的目标图像根据模板进行匹配和识别;
S5基于深度学习的针眼位置精确检测;考虑针眼识别的特定场景约束并采用逐步合并的方法划分候选区域,实现对图像中针眼所在位置的精确检测定位;
S6机械臂手眼标定;
对图像中针眼所在位置的精确检测定位后,机械臂控制器控制机械臂就会移动到相机识别出来的目标位置,进行穿线;
S7反馈调节过程判断依据是针眼中是否有穿线器;根据穿线器成功穿过针眼时所训练的模型进行检测,当穿线器穿过针眼后,固线夹沿一个固定方向移动将所夹持的线架到穿线器上,完成机械臂归位,归位过程中穿线器勾着面线退出针眼,同时就使得面线穿过针眼,穿线流程结束。
2.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:
S1相机标定;实现过程如下,
首先定义两个坐标系分别为uO0v和xO1y,uO0v中,(u,v)是以像素为单位的图像坐标系下的横纵坐标,坐标原点O0为像素点(0,0)所在的图像位置;xO1y中,(x,y)是以物理长度单位表示的图像坐标系的坐标,原点O1为相机的光轴与图像平面的交点;
令每个像素在x,y轴上的实际物理尺寸为dx,dy,则有:
(u0,v0)是坐标系原点O1在坐标系uO0v中的坐标;
将u、v表示为齐次坐标与矩阵的形式,如下:
解得上述齐次坐标与矩阵的逆关系为:
引入相机针孔模型,在相机针孔的光心处建立相机坐标系(xc,yc,zc),其xc,yc轴与x,y轴平行;f为相机焦距,世界坐标系(xw,yw,zw)用于定义P点的位置;
世界坐标系与相机坐标系的坐标变换关系如下:
其中,M2表示世界坐标系转换到相机坐标系的变换矩阵,R是M2中表示坐标系旋转的部分,t是M2中表示坐标系平移的部分;
空间中的P点(Xw,Yw,Zw)在图像上成像为P'点(x,y),由射影定理可知:
表示为齐次坐标与矩阵形式,如下:
同时将式(1)和式(2)代入,得:
式(3)中第一行前两个矩阵相乘的结果矩阵中,令其第1行第1列的元素为ax、令其第2行第2列的元素为ay
所以,要通过现实坐标系中点的位置求其成像在图片上的位置,只需要知道矩阵M1,M2的值即可,由于M1只与相机的内部参数有关,故称M1为相机的内参矩阵,M2只与相机摆放的位姿有关,故称M2为相机的外参矩阵;相机标定即是求得相机的矩阵M1和M2;
求机的矩阵M1,M2时候需要知道某些空间中的特征点序列P1,P2,......,Pn与其对应的在图像上的点P1',P2',......,Pn'的坐标,空间中的点用标定板定义;标定板中每个黑点的直径以及相邻黑点的距离都是精确已知的,其中五个特定形状的图案即由若干空心黑点组成用来判别标定板的方向;
现将式(3)写为:
其中,(Xwi,Ywi,Zwi,1)为空间第i个点的坐标;(ui,vi,1)为第i点的图像上的坐标,其中i=1,2,3,j=1,2,3,4;mij为投影矩阵M中第i行,第j列的元素;将式(4)展开,得:
Zciui=m11Xwi+m12Ywi+m13Zwi+m14
Zcivi=m21Xwi+m22Ywi+m23Zwi+m24
Zci=m31Xwi+m32Ywi+m33Zwi+m34 (5)
再将式(5)进行数学变换,得:
m11Xwi+m12Ywi+m13Zwi+m14-uim31Xwi-uim32Xwi-uim33Xwi=uim34
m21Xwi+m22Ywi+m23Zwi+m24-vim31Xwi-vim32Xwi-vim33Xwi=vim34 (6)
对于有n个已知点的标定板列出2n个方程,用矩阵形式表示如下:
简写为:
Km=U
K即是式(7)中等号左侧的第一个矩阵,m即是式(7)中等号左侧的第二个矩阵,U即是式(7)中等号右侧的结果矩阵;
当2n>11时,由最小二乘法求出上述齐次线性方程组的解为:
m=(KTK)-1KTU
理论上,只要空间6个以上的已知点与他们的图像点坐标即求得矩阵M;
实际操作时,需要远远大于6个点的已知点来减小误差,同时引入修正镜头畸变模型,如下:
u,v分别是指原图像坐标系是引入镜头畸变模型后的图像坐标系的横轴、纵轴坐标;k为镜头的畸变常数;
至此,完成了单个相机的标定;
采用双目相机进行标定,即用两个相机同时拍摄标定板的图像,再进行每个相机的单独标定,最后,在每个相机单独标定完成后,求双目相机的相对位置;做法如下:
令两个相机的外参为R1,t1和R2,t2,则对空间中任一点P,若其分别在世界坐标系、相机C1坐标系和相机C2坐标系下的坐标为Xw,Xc1,Xc2,有:
Xc1=R1Xw+t1
Xc2=R2Xw+t2
上式消去Xw,得:
因此,两个相机C1,C2之间的位姿关系表示为:
3.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:
S2三维空间点的重建;实现过程如下,
通过双目相机C1、C2观察空间点P(X,Y,Z),令其在Cl所摄图片中的位置为p1(u1,v1),在C2所摄图片中的位置为p2(u2,v2),并且相机C1,C2已标定;由式(4)知:
再由式(5)和式(6),消去式(8)和式(9)中的Zc1和Zc2,得到关于X,Y,Z的四个线性方程:
由于空间点P,是空间直线O1P1,O2P2的交点,故上述四个方程的解(X,Y,Z)即为空间点P的坐标;如此,只要通过两个标定好的相机同时观察空间中的绣花机目标针眼位置,通过绣花机目标针眼位置分别在左右相机中计算器成像坐标,即可求解出在空间中的真实坐标位置;
4.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:S3根据图像特征建立穿线器模型和针眼模型,实现过程如下,
首先,引入边缘检测用的Sobel算子,Sobel算子包含两组3x3的矩阵,分别为横向模板及纵向模板,将两组3x3的矩阵与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值;用如下两个模板来检测图像边缘;
其中Gx用于检测水平方向,Gy用于检测纵向;
经过Sobel算子处理的图像再结合以下公式,计算图像的梯度:
其中G表示梯度的大小,θ表示梯度的方向;
在得到图像的梯度之后,下一步进行非最大值抑制算法;
非最大值抑制算法在边缘检测的基础上,跟踪边缘两侧的像素的亮度值,若其小于左右两侧的像素的亮度值,则抑制当前像素;进行非最大值抑制之后,使边缘变细;
之后,再对结果图像用滞后双阙值进行限定,即使用一个最小阙值和最大阙值除去结果中的不必要部分,最终得到一个合适的模板;
5.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:S4基于形状的模板匹配;实现过程如下,
在S3中得到合适的模板之后,接下来就要对相机拍摄的目标图像根据模板进行匹配和识别;做法如下:
模板是由一系列的点组成的点集,令其为Pi T=(Xi T,Yi T);
每个点对应的梯度为Gi T=(Gxi T,Gyi T),i=1...n表征模板中的点的序号;对于目标图像在S3中进行处理,得到目标图像的梯度信息,令其为Gu,v S=(Gxu,v S,Gyu,v S),其中,u=1...n表征目标图像的行,v=1...n表征目标图像的列;n表示图像的第n行/列;
用相似性度量的算法检测目标图像和模板的相似度,相似度计算采用的是归一化后的模板梯度向量和目标梯度向量的点积之和;Su,v公式如下:
该相似度函数Su,v的返回值在[0,1]之间,如果目标图像和模板完美匹配,则函数的返回值为1;
6.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:S5基于深度学习的针眼位置精确检测;实现过程如下,
考虑针眼识别的特定场景约束:1)针眼的形状大致为固定长宽比的小矩形;2)针眼区域内部和外部的颜色、纹理有较大差别;在这两个约束下,采用逐步合并的方法划分候选区域:
(1)、将图像整齐地划分成若干个固定长宽比的小矩形;
(2)、计算每个小矩形区域的颜色、纹理的数值特征;
(3)、遍历计算相邻两个小矩形的特征空间欧氏距离;
(4)、如果欧氏距离小于某预定的阈值,将这两个小矩形合并;
产生候选区域后,通过空间缩放,将每个区域变换成64*64*3的标准大小图片,将图片输入CNN进行图像分类;采用简化的AlexNet网络结构,图像接入2个卷积层,每层置32个3*3卷积核,进行2*2的最大池化,再接入2个卷积层,每层置64个3*3卷积核,再进行2*2最大池化,最后通过两个全连接层进行图像的二分类;划分好候选区域;
在划分好候选区域并训练好CNN图像分类器后,已经能获得每个区域的图像是针眼的概率;为了进一步精密修正针眼的位置,继续训练了一个边界框坐标的线性回归模型;训练样本为(P,G),其中P=(Px,Py,Pw,Ph),Px、Py、Pw、Ph分别为预测边界框的x轴坐标、y轴坐标、宽度、高度,四个值确定唯一区域;而G=(Gx,Gy,Gw,Gh),Gx、Gy、Gw、Gh分别为真实边界框的x轴坐标、y轴坐标、宽度、高度;采用人工标注的方法画出约1000张针眼图像的针眼所在区域真实值,用最小化均方误差作为目标函数进行训练;训练完成后,反求出预测框的修正位置:
由此实现对图像中针眼所在位置的精确检测定位;
7.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:S6机械臂手眼标定;实现过程如下,
对图像中针眼所在位置的精确检测定位后,机械臂手眼标定是为了确定机械臂坐标系与相机坐标系的相对关系,以便将相机拍摄的图像信息转换成机械臂的执行指令;进行标定时,用机械臂的手抓着标定板在相机视野内移动、旋转,具体做法如下:
首先建立四个坐标系,分别是相机坐标系,机械臂底座坐标系,机械臂末端执行器的坐标系以及标定板坐标系;依次获得四个齐次坐标下的刚体变换矩阵:
camHbase是指:机械臂底座到相机的变换,设为X;
camHcal是指:标定板到相机的变换,设为B;
toolHcal是指:标定板到机械臂末端的变换,设为Y;
baseHtool是指:机械臂末端到底座的变换,设为A;
四个变换形成一个变换链,故:
camHcalcamHbase·baseHtool·toolHcal
即:
B=X·A·Y
对于已经设定好的机械臂和相机而言,X是不变的,对于进行手眼标定时,已经固定在机械手上的标定板而言其相对于机械臂末端的位置也是固定的,即Y也是不变的;则通过多次试验,解出矩阵X,Y;
第i次试验时,有
Bi=X·Ai·Y
第j次试验时,有
Bj=X·Aj·Y
两式消去Y,可得:
Bi -1·X·Ai=Bj -1·X·Aj
其中Bi,Bj由S1中的相机标定方法得出;Ai,Aj由机械臂控制器上读出;
通过多次试验,解出矩阵X,同理消去矩阵X可解出矩阵Y;
解出的矩阵X是机械臂底座坐标系到相机坐标系的变换矩阵,即是机械臂手眼标定的结果;
若通过双目相机计算得的空间点P相对于相机坐标系的坐标为Pcam(X1,Y1,Z1),则其相对于机械臂底座的坐标Pbase(X2,Y2,Z2)即为:
PbasecamHbase -1·Pcam
将坐标Pbase输入至机械臂控制器,机械臂控制器控制机械臂就会移动到相机识别出来的目标位置,进行穿线;
8.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:S7反馈调节过程判断依据是针眼中是否有穿线器;实现过程如下,
根据穿线器成功穿过针眼时所训练的模型进行检测,当试穿未穿过时,算法进入调节过程,即以一个合适的固定步长通过图像算法判断的相对位置,指导机械臂趋近针眼位置;
绣花机正常运行时,面线进行刺绣;当绣花机检测到面线断线,绣花机的机头上下各有一个固线夹,固线夹动作使得面线固定在上下固线夹之间;当穿线器穿过针眼后,固线夹沿一个固定方向移动将所夹持的线架到穿线器上,完成机械臂归位,归位过程中穿线器勾着面线退出针眼,同时就使得面线穿过针眼,穿线流程结束。
9.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:双目相机安置在机械臂上,机械臂能够接受坐标位姿移动指令,并在三维空间中的移动;导轨电机安装在导轨一侧,并驱动导轨上的机械臂完成水平方向长距离位移。
10.根据权利要求1所述的基于双目相机视差对绣花机目标针眼进行精确定位的方法,其特征在于:驱动电路是为机械臂及导轨电机提供驱动和发出控制指令的电路;
主控电路是接收绣花机信号,处理双目相机拍摄的图像信息的控制电路;
绣花机主控电路是控制绣花机各个模块的控制器,提供一个断线告警信号作为启动信号;驱动电路为机械臂控制器的控制电路,机械臂和控制电路均与驱动电路连接,驱动电路与主控电路连接,主控电路与绣花机主控电路连接。
CN201810739003.5A 2018-07-06 2018-07-06 基于双目相机视差对绣花机目标针眼进行精确定位的方法 Active CN108898634B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810739003.5A CN108898634B (zh) 2018-07-06 2018-07-06 基于双目相机视差对绣花机目标针眼进行精确定位的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810739003.5A CN108898634B (zh) 2018-07-06 2018-07-06 基于双目相机视差对绣花机目标针眼进行精确定位的方法

Publications (2)

Publication Number Publication Date
CN108898634A true CN108898634A (zh) 2018-11-27
CN108898634B CN108898634B (zh) 2021-09-24

Family

ID=64348653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810739003.5A Active CN108898634B (zh) 2018-07-06 2018-07-06 基于双目相机视差对绣花机目标针眼进行精确定位的方法

Country Status (1)

Country Link
CN (1) CN108898634B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109712200A (zh) * 2019-01-10 2019-05-03 深圳大学 一种基于最小二乘原理及边长推算的双目定位方法及系统
CN112045676A (zh) * 2020-07-31 2020-12-08 广州中国科学院先进技术研究所 一种基于深度学习的机器人抓取透明物体的方法
CN112529113A (zh) * 2020-12-30 2021-03-19 江苏惟妙纺织科技有限公司 一种绣花生产控制方法及系统
CN113373612A (zh) * 2021-06-30 2021-09-10 安徽工程大学 一种刺绣用可调式精确定位进针装置
CN113436265A (zh) * 2020-03-08 2021-09-24 天津理工大学 红外热像仪与可见光相机的双目标定装置及其使用方法
CN113652812A (zh) * 2021-09-23 2021-11-16 汝州玛雅机电科技有限公司 一种绣花机控制系统
CN114494403A (zh) * 2022-01-27 2022-05-13 烟台大学 一种基于深度学习的贝类目标尺寸快速测量方法
CN114998453A (zh) * 2022-08-08 2022-09-02 国网浙江省电力有限公司宁波供电公司 一种基于高尺度单元的立体匹配模型及其应用方法
CN116379953A (zh) * 2023-05-30 2023-07-04 武汉中岩科技股份有限公司 一种远距离双目三维变形测量系统的拍摄控制方法
CN117036489A (zh) * 2023-10-10 2023-11-10 泉州装备制造研究所 基于人工标识和四目全景相机的机器人定位方法及设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1292767A1 (ru) * 1984-10-02 1987-02-28 Семипалатинский Государственный Медицинский Институт Способ определени бинокул рной локализации направлени
CN100573586C (zh) * 2008-02-21 2009-12-23 南京航空航天大学 一种双目立体测量系统的标定方法
US20110235897A1 (en) * 2010-03-24 2011-09-29 Nat'l Institute Of Advanced Industrial Science And Technology Device and process for three-dimensional localization and pose estimation using stereo image, and computer-readable storage medium storing the program thereof
CN103529855A (zh) * 2013-10-11 2014-01-22 华南农业大学 一种旋转可调式双目视觉的目标识别定位装置及其在农业果实采摘机械的应用

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1292767A1 (ru) * 1984-10-02 1987-02-28 Семипалатинский Государственный Медицинский Институт Способ определени бинокул рной локализации направлени
CN100573586C (zh) * 2008-02-21 2009-12-23 南京航空航天大学 一种双目立体测量系统的标定方法
US20110235897A1 (en) * 2010-03-24 2011-09-29 Nat'l Institute Of Advanced Industrial Science And Technology Device and process for three-dimensional localization and pose estimation using stereo image, and computer-readable storage medium storing the program thereof
CN103529855A (zh) * 2013-10-11 2014-01-22 华南农业大学 一种旋转可调式双目视觉的目标识别定位装置及其在农业果实采摘机械的应用

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LI JIAN ETAL.: "Research on Localization of Apples Based on Binocular Stereo VisionMarked by Cancroids Matching", 《2012 THIRD INTERNATIONAL CONFERENCE ON DIGITAL MANUFACTURING & AUTOMATION》 *
申川: "基于双目立体视觉系统的实施农业作物位置信息获取", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109712200A (zh) * 2019-01-10 2019-05-03 深圳大学 一种基于最小二乘原理及边长推算的双目定位方法及系统
CN113436265A (zh) * 2020-03-08 2021-09-24 天津理工大学 红外热像仪与可见光相机的双目标定装置及其使用方法
CN112045676A (zh) * 2020-07-31 2020-12-08 广州中国科学院先进技术研究所 一种基于深度学习的机器人抓取透明物体的方法
CN112529113A (zh) * 2020-12-30 2021-03-19 江苏惟妙纺织科技有限公司 一种绣花生产控制方法及系统
CN113373612A (zh) * 2021-06-30 2021-09-10 安徽工程大学 一种刺绣用可调式精确定位进针装置
CN113652812A (zh) * 2021-09-23 2021-11-16 汝州玛雅机电科技有限公司 一种绣花机控制系统
CN114494403A (zh) * 2022-01-27 2022-05-13 烟台大学 一种基于深度学习的贝类目标尺寸快速测量方法
CN114998453A (zh) * 2022-08-08 2022-09-02 国网浙江省电力有限公司宁波供电公司 一种基于高尺度单元的立体匹配模型及其应用方法
CN116379953A (zh) * 2023-05-30 2023-07-04 武汉中岩科技股份有限公司 一种远距离双目三维变形测量系统的拍摄控制方法
CN116379953B (zh) * 2023-05-30 2023-09-05 武汉中岩科技股份有限公司 一种远距离双目三维变形测量系统的拍摄控制方法
CN117036489A (zh) * 2023-10-10 2023-11-10 泉州装备制造研究所 基于人工标识和四目全景相机的机器人定位方法及设备
CN117036489B (zh) * 2023-10-10 2024-02-09 泉州装备制造研究所 基于人工标识和四目全景相机的机器人定位方法及设备

Also Published As

Publication number Publication date
CN108898634B (zh) 2021-09-24

Similar Documents

Publication Publication Date Title
CN108898634A (zh) 基于双目相机视差对绣花机目标针眼进行精确定位的方法
CN109308693B (zh) 由一台ptz相机构建的目标检测和位姿测量单双目视觉系统
CN110580723B (zh) 一种利用深度学习和计算机视觉进行精准定位的方法
CN108109174A (zh) 一种用于散乱零件随机分拣的机器人单目引导方法和系统
CN108717531B (zh) 基于Faster R-CNN的人体姿态估计方法
CN106408609B (zh) 一种基于双目视觉的并联机构末端运动位姿检测方法
CN105069743B (zh) 探测器拼接实时图像配准的方法
CN109102547A (zh) 基于物体识别深度学习模型的机器人抓取位姿估计方法
CN110142785A (zh) 一种基于目标检测的巡检机器人视觉伺服方法
CN106127145B (zh) 瞳孔定位及跟踪方法
CN108257185A (zh) 多棋盘格角点检测方法及摄像机标定方法
CN109559275A (zh) 一种尿液分析仪显微镜图像拼接方法
WO2007058900A2 (en) Calibrating an imaging device for generating three dimensional suface models of moving objects
CN103902953B (zh) 一种屏幕检测系统及方法
CN109145803A (zh) 手势识别方法及装置、电子设备、计算机可读存储介质
CN112949478A (zh) 基于云台相机的目标检测方法
CN106846352A (zh) 一种用于镜头解析力测试的刀口图片获取方法和装置
CN108470356A (zh) 一种基于双目视觉的目标对象快速测距方法
CN109085113A (zh) 一种用于宫颈脱落细胞检测装置的自动对焦方法和装置
CN112348890B (zh) 一种空间定位方法、装置及计算机可读存储介质
CN111915485B (zh) 一种特征点稀疏工件图像的快速拼接方法及系统
CN110458128A (zh) 一种姿态特征获取方法、装置、设备及存储介质
CN115816471A (zh) 多视角3d视觉引导机器人的无序抓取方法、设备及介质
CN107067423A (zh) 一种适用于开放赋存环境的文物本体微变监测的方法
CN106773158A (zh) 一种移动式自寻位液晶屏像素质量分析装置和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant