CN111968185B - 标定板、基于编码定义的九点标定物体抓取方法及*** - Google Patents
标定板、基于编码定义的九点标定物体抓取方法及*** Download PDFInfo
- Publication number
- CN111968185B CN111968185B CN202010903314.8A CN202010903314A CN111968185B CN 111968185 B CN111968185 B CN 111968185B CN 202010903314 A CN202010903314 A CN 202010903314A CN 111968185 B CN111968185 B CN 111968185B
- Authority
- CN
- China
- Prior art keywords
- calibration
- image
- point
- coordinates
- manipulator
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 239000011159 matrix material Substances 0.000 claims abstract description 42
- 238000006073 displacement reaction Methods 0.000 claims abstract description 17
- 238000012216 screening Methods 0.000 claims description 15
- 238000009499 grossing Methods 0.000 claims description 10
- 239000013598 vector Substances 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000008929 regeneration Effects 0.000 claims description 4
- 238000011069 regeneration method Methods 0.000 claims description 4
- 238000009795 derivation Methods 0.000 claims description 2
- 238000012937 correction Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- DMSMPAJRVJJAGA-UHFFFAOYSA-N benzo[d]isothiazol-3-one Chemical compound C1=CC=C2C(=O)NSC2=C1 DMSMPAJRVJJAGA-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Image Analysis (AREA)
Abstract
本发明提供基于编码定义的九点标定物体抓取方法包括获取相机拍摄标定板得到的标定图像;对标定图像进行标定,得到基于相机坐标系的像素坐标;将机械手末端分别移动到标定板中9个标识区域中的目标点,以获得9个目标点对应的机械手坐标;根据像素坐标和机械手坐标求解旋转矩阵和位移矩阵;获取相机拍摄待抓取物体的相机图像,获取相机图像中基于相机坐标系的像素坐标;根据旋转矩阵和位移矩阵将像素坐标转换为机械手坐标,控制机械手抓取待抓取物体。该方法利用定义的编码在相机坐标系中确定九点的坐标位置,可以实现对图像中相机坐标系中9个目标点坐标精准有序的输出,同时可得出图像DPI,使得机械手对目标的抓取和识别更为精准有序。
Description
技术领域
本发明属于相机标定技术领域,具体涉及标定板、基于编码定义的九点标定物体抓取方法及***。
背景技术
在机器视觉的应用中,为确定空间物体表面某点的三维几何位置与其在图像中对应点之间的关系,必须建立相机成像的几何模型,这些几何模型参数就是相机参数。目前常见的标定分为相机参数的标定与相机和机械手之间的标定,而九点标定就是直接建立相机和机械手之间的坐标变化关系,让机械手末端去走这九个点在机器人坐标系中的坐标,因此需要用相机识别九个点得到像素坐标,由于工业上对这九个点的输出存在无序,导致机械手识别与抓取时出现乱序。
发明内容
针对现有技术中的缺陷,本发明提供标定板、基于编码定义的九点标定物体抓取方法及***,根据编码有序输出九点坐标,使得机械手对目标的抓取和识别更为精准有序。
第一方面,一种标定板,
所述标定板被若干条平行的垂直线和若干条平行的水平线分割成多个方格,方格颜色为黑色或白色;所述标定板上设有9个标识区域,其中每个标识区域由若干个黑色方格和若干个白色方格构成不同的图案,每个识别区域设有多个标识不同方向的编码;
标定板中除标识区域以外的方格中,相邻的方格颜色不同。
第二方面,一种基于编码定义的九点标定物体抓取方法,包括以下步骤:
获取相机拍摄第一方面所述标定板得到的标定图像;
对所述标定图像进行标定,得到基于相机坐标系的像素坐标;
将机械手末端分别移动到标定板中9个标识区域中的目标点,以获得与9个标识区域中目标点对应的基于机械手坐标系的机械手坐标;
根据所述像素坐标和机械手坐标求解旋转矩阵和位移矩阵;
获取相机拍摄待抓取物体的相机图像,获取相机图像中基于相机坐标系的像素坐标;
根据得到的旋转矩阵和位移矩阵将相机图像中像素坐标转换为机械手坐标;
根据所述机械手坐标控制机械手抓取待抓取物体。
优选地,所述对所述标定图像进行标定具体包括:
识别出标定图像中的垂直线和水平线;
根据识别区域的编码识别出标定图像上标识区域中目标点;
根据得到的目标点进行标定。
优选地,所述识别出标定图像中的垂直线和水平线具体包括:
根据标定图像生成X方向梯度图像、Y方向梯度图像和旋转角度;
根据所述旋转角度求出对应的旋转向量;利用旋转向量,将所述X方向梯度图像上的点投影到Y方向上,将所述Y方向梯度图像上的点投影到X方向上,分别获得X方向投影点坐标值和Y方向投影点坐标值,从所述X方向投影点坐标值和Y方向投影点坐标值筛选出第一目标投影点,进行第一次拟合;
从经过第一次拟合得到的第一直线中筛选出第二目标投影点,进行二次拟合,识别出标定图像中的所述垂直线和水平线。
优选地,所述旋转角度包括X方向旋转角度和Y方向旋转角度;
所述根据标定图像生成X方向梯度图像、Y方向梯度图像和旋转角度具体包括:
获取所述标定图像对应的二维函数,对所述二维函数分别进行X方向和Y方向上的求导,获得所述X方向梯度图像和Y方向梯度图像;
执行旋转角度步骤,生成X方向旋转角度和Y方向旋转角度,当X方向旋转角度和Y方向旋转角度相差没有落入预设的重新生成阈值范围内时,删除得到的X方向旋转角度和/或Y方向旋转角度,重新执行旋转角度步骤,生成X方向旋转角度和/或Y方向旋转角度,直至生成差值落入重新生成阈值范围内的X方向旋转角度和Y方向旋转角度;
所述旋转角度步骤包括:获取所述X方向梯度图像中像素值位于预设梯度范围内像素点的角度值,统计每个像素点对应的角度值的累计数量,定义累计数量最高的像素点对应的角度值为X方向旋转角度;获取所述Y方向梯度图像中像素值位于所述梯度范围内像素点的角度值,统计每个像素点对应的角度值的累计数量,定义累计数量最高的像素点对应的角度值为Y方向旋转角度。
优选地,所述从所述X方向投影点坐标值和Y方向投影点坐标值筛选出第一目标投影点具体包括:
对所述X方向投影点坐标值和Y方向投影点坐标值进行统计,以获得X方向直方图和Y方向直方图;
分别运用预设的平滑矩阵对所述X方向直方图和Y方向直方图进行平滑处理,根据平滑处理结果分别提取出X方向和Y方向上每个周期下的极大值,对得到的所述极大值进行筛选后,定义筛选后得到的极大值对应的投影点为所述第一目标投影点;
对筛选出来的极大值进行分析,统计相邻两个极大值之间的像素长度,提取出现次数最多的像素长度,定义为标准间距值。
优选地,所述进行第一次拟合具体包括:
分别获取X方向上和Y方向上第一目标投影点对应的原始坐标点;
分别根据所述原始坐标点拟合得到所述X方向上的第一直线和Y方向上的第一直线。
优选地,所述从经过第一次拟合得到的第一直线中筛选出第二目标投影点,进行二次拟合,识别出标定图像中的所述垂直线和水平线具体包括:
对所述第一直线进行修正,计算第一目标投影点对应的原始坐标值与修正后的第一直线的距离,根据得到的距离从第一目标投影点中筛选出X方向上和Y方向上第二目标投影点;
分别获取X方向上和Y方向上第二目标投影点对应的原始坐标值;
分别根据所述原始坐标值拟合得到所述垂直线和水平线。
优选地,所述根据识别区域的编码识别出标定图像上标识区域中目标点具体包括:
根据预设的直线交点计算公式计算标定图像的交点坐标;
根据相邻交点之间的坐标差定义每个方格;
设定一个与标识区域大小相同的滑动窗口,利用所述滑动窗口在所述标定图像中滑动,根据连续颜色相同的方格个数识别出标识区域对应的编码,依次输出标识区域的目标点。
第三方面,一种基于编码定义的九点标定物体抓取***,包括:
相机:用于进行拍摄,并拍摄后得到的图像传输给标定设备;
标定设备:用于获取相机拍摄所述标定板得到的标定图像;对所述标定图像进行标定,得到基于相机坐标系的像素坐标;根据九个目标点的像素坐标和与九个目标点对应的机械手坐标求解旋转矩阵和位移矩阵;标定设备还用于获取相机拍摄待抓取物体的相机图像,获取相机图像中基于相机坐标系的像素坐标;根据得到的旋转矩阵和位移矩阵将相机图像中像素坐标转换为机械手坐标,将该机械手坐标传输给机械手;
机械手:其末端当移动到标定板中9个标识区域中的目标点时,获得与9个标识区域中目标点对应的基于机械手坐标系的机械手坐标,并将该机械手坐标传输给标定设备;机械手还用于根据标定设备下发的所述机械手坐标抓取待抓取物体。
由上述技术方案可知,本发明提供的标定板,标定板上标识区域内包含了由一定数量的黑色方格和白色方格组成的不同形状,对标识区域进行编码时,可以根据方向进行编码。
方法及***基于不同形状编码提取目标点,利用定义的编码,在相机坐标系中确定九点的坐标位置,可以实现对图像中九个目标点精准有序的输出,同时计算得到图像DPI,使得机械手对目标的抓取和识别更为精准有序。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1为本发明实施例二提供的物体抓取方法的流程图。
图2为本发明实施例三提供的标定方法的流程图。
图3中(a)、(b)、(c)和(d)为本发明实施例三提供的标定板在4个方向上的标定图像。
图4中(a)、(b)、(c)和(d)为本发明实施例三提供的标定图像在4个方向上经过第一拟合后得到的水平方向的直线,(e)、(f)、(g)和(h)为本发明实施例三提供的标定图像在4个方向上经过第一拟合后得到的直线。
图5中(a)、(b)、(c)和(d)为本发明实施例三提供的标定图像在4个方向上经过第二拟合后得到的水平方向的直线,(e)、(f)、(g)和(h)为本发明实施例三提供的标定图像在4个方向上经过第二拟合后得到的直线。
图6中(a)、(b)、(c)和(d)为本发明实施例三提供的标定图像在4个方向上经过目标点坐标提取及编码后得到的示意图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
应当理解,当在本说明书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
如在本说明书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
实施例一:
一种标定板,所述标定板被若干条平行的垂直线和若干条平行的水平线分割成多个方格,方格颜色为黑色或白色;所述标定板上设有9个标识区域,其中每个标识区域由若干个黑色方格和若干个白色方格构成不同的图案,每个识别区域设有多个标识不同方向的编码;
标定板中除标识区域以外的方格中,相邻的方格颜色不同。
具体地,标定板可以是方格数为30*42、且间隔交错设置有黑色方格和白色方格,标识区域可以是方格数为6*6的区域,标识区域内包含了由一定数量的白色方格组成的不同形状,对标识区域进行编码时,可以根据方向进行编码,例如每个标识区域针对4个方向设有4个编码。
实施例二:
一种基于编码定义的九点标定物体抓取方法,参见图1,包括以下步骤:
S1:获取相机拍摄上述标定板得到的标定图像;
S2:对所述标定图像进行标定,得到基于相机坐标系的像素坐标;
S3:将机械手末端分别移动到标定板中9个标识区域中的目标点,以获得与9个标识区域中目标点对应的基于机械手坐标系的机械手坐标;
S4:根据所述像素坐标和机械手坐标求解旋转矩阵和位移矩阵;相机标定过程主要是为了求解相机内外参,外参即旋转矩阵和位移矩阵构成的参数矩阵。
S5:获取相机拍摄待抓取物体的相机图像,获取相机图像中基于相机坐标系的像素坐标;
S6:根据得到的旋转矩阵和位移矩阵将相机图像中像素坐标转换为机械手坐标;
S7:根据所述机械手坐标控制机械手抓取待抓取物体。
具体地,该方法根据标定板中标识区域的编码得到其对应的目标点,并使其具有顺序地输出,同时计算DPI(每英寸的像素数)。转换为表达式如下:
其中Di为编码,当编码匹配时输出目标点。
将相机坐标系的像素坐标转换为对应的机械手坐标,实现相机坐标系向机械手坐标系的转换。变换矩阵如下:
[xi′ yi′]T=R*[xi yi]T+t
其中xi′,yi′分别表示机械手坐标,xi,yi分别表示像素坐标,R表示旋转矩阵,t表示位移矩阵。
该方法基于不同形状编码提取目标点,利用定义的编码,在相机坐标系中确定九点的坐标位置,可以实现对图像中9个目标点精准有序的输出,同时得出机械手坐标和图像DPI,使得机械手对目标的抓取和识别更为精准有序。
本发明实施例所提供的方法,为简要描述,实施例部分未提及之处,可参考前述产品实施例中相应内容。
实施例三:
实施例三在实施例二的基础上,还增加了以下内容:
参见图2,该方法步骤具体为:
S11:生成梯度图像及旋转角度。
参见图3,假设标定图像的二维函数为f(x,y),则对应像素点(i,j)的像素值可以表示为Pf(i,j),对应X方向梯度图像可以表示为Gx,Y方向梯度图像可以表示为Gy,最终梯度图像为。设置幅角为Tθ,则对应梯度方向上的幅角为Tθ=arctan(Gx/Gy),其中Tθ∈[0,180]。设置当前算子核大小为3*3,遍历标定图像得到X方向梯度图像和Y方向梯度图像,并根据统计学原理对梯度图的像素值进行统计,具体步骤如下:
定义算子核分别如下:
二维函数的偏微分方程计算公式如下:
由于f(x,y)是根据像素点来离散表示的二维函数,因此结合算子核可以得到Gx和Gy分别为:
根据幅角Tθ的范围,采用直方图统计像素点(i,j)对应的像素值Qij,设置梯度范围Qij∈[100,255]对应的角度值Tij的累计数量为Nθ,则:
Nθ={Tij=θ,Qij∈[100,255]}+Nθ;
其中,θ∈[0,180],i∈[0,W],j∈[0,H],W为图像的宽度,H为图像的高度。
根据直方图搜索最大的Nθ对应的θ值,将其作为X方向旋转角度将区间范围的θ值全部设置为0,即将某个方向上的旋转角度及前后5个值全部设置为0,继续第二次搜索,得到Y方向旋转角度/>。
其中若得到的X方向旋转角度和Y方向旋转角度相差落入重新生成角度范围(80度-100度)时,则求解正确。即对X方向旋转角度和Y方向旋转角度的结果进行判断,若,则/>,否则/>。
S12:生成第一目标投影点。
生成第一目标投影点主要是为了将X方向旋转角度上每条直线投影到Y方向旋转角度的方向向量上,以此得到X方向旋转角度上每条直线对应的投影坐标点Ptx;同理,将Y方向旋转角度上每条直线投影到X方向旋转角度的方向向量上,以此得到Y方向旋转角度上每条直线对应的投影坐标点Pty。
根据理想情况下的投影结果,可以知道第一目标投影点之间的距离Du应该具有一定周期性,但是实际情况存在噪声和设备等外界因素的影响,因此需要对第一目标投影点形成的直方图进行高斯平滑处理,使得一个大概的周期内一定会出现一个极大值,此时的极大值就是第一目标投影点Pt,具体步骤为:
根据角度Ax和Ay,求出对应的旋转向量V分别如下:
设筛选第一目标投影点的像素值区间Qij∈[150,255],角度区间为θ∈[A-90-4,A-90+4]。
根据投影坐标点Ptx和Pty,结合旋转向量,得出投影点坐标转换公式如下:
其中,x、y为原始坐标值,px、py分别为投影后的坐标值。
对投影坐标点Pt(pxi,pyj)的坐标值pxn采用直方图统计,然后运用高斯平滑对直方图进行平滑处理,公式如下:
pxn=pxn+i-3F[i]=pxn-3*F[0]+pxn-2*F[1]+pxn-1*F[2]+pxn*F[3]+pxn+1*F[4]+pxn+2*F[5]+pxn+3*F[6];
其中,F[i]={0.0536,0.1232,0.2032,0.2400,0.2032,0.1232,0.0536},n∈[0,W*H],W为图像的宽度,H为图像的高度。
根据直方图平滑处理结果,判断pxn的值是否满足条件pxn>pxn-1、pxn>pxn+1、pxn>pxn-2和pxn>pxn+2,若满足条件,则输出pxn的值作为极大值。
判断理想情况下的极大值结果可知,筛选出来的极大值个数应该与标定图像中直线个数相同,因此需要对极大值结果进行删除操作,具体步骤如下:
当水平放置图像时,对图像每一方格的像素长度测量得到Lm≈16,但是当图像存在一定倾斜角度时,直线段会发生一定程度的形变,因此定义图像每一方格最小像素长度为Lmin=11,最大像素长度Lmax=20。判断与/>的大小,若/>,则删除值/>,得到输出结果/>,判断/>的个数,若满足j∈(33,43]或者j∈(45,55]时,进行二次删除,判断/>与/>的大小,若/>,则删除值/>,得到输出结果/>,对/>的间距进行统计,得到出现次数最多的像素长度为标准间距值Lg。
S13:第一次拟合。
参见图4,标定图像f(x,y)是根据像素点来离散表示的二维函数,且直线段过长时存在形变,因此对筛选出来的第一目标投影点进行第一次拟合,得到部分拟合较好的直线段,为后续第二次拟合打下基础。
跟据极大值筛选结果,分别对两方向上第一目标投影点Ptx处于/>某个范围内的投影点进行筛选,并求出第一目标投影点对应的原始坐标值,然后原始坐标值采用最小二乘法拟合投影点,最小二乘法拟合得到的输出为R0、R1、R2和R3,其中(R0,R1)表示方向向量,(R2,R3)表示直线上的一个点,既直线斜率/>具体步骤如下:
遍历X方向上的第一目标投影点的坐标值px,选择坐标区间为的投影点,并得到第一目标投影点的坐标值px对应的原始坐标值x,同时得出最终的目标点Pzx。同理对Y方向上的第一目标投影点的值px采用上述操作,得到最终的目标点Pzy。
对Pzx中的数据进行随机选取,将其分为10组随机数据,进行一次拟合,生成10条拟合的直线,计算Pzx中数据到10条直线的距离Ds,选择Ds∈[0,1]的投影点,并统计每条直线中Ds数据最多时对应的直线Ldx。同理得到直线Ldy。
其中距离公式为:。
对目标点Pzx再次计算投影点到直线Ldx的距离Ds,选择Ds∈[0,4]的投影点进行拟合,并迭代拟合5次生成输出直线。同理得到输出直线。
S14:二次拟合。
参见图5,设第一次拟合所得直线为Lzx:a1x+b1y+c1=0,Lzy:a2x+b2y+c2=0。如果在理想情况下同一方向的直线应该平行,既存在关系与/>,且每条直线对应的Cxi之间具有等距的关系,同理Cyi之间也具有等距的关系。因此根据理想条件根据得到的标准间距值对直线的Cxi与Cyi进行有效修正,根据多次实验求解的实际间距值分析,将修正直线分为前半部分直线修正和后半部分直线修正,其中i∈[1,n-1],具体步骤如下:
定义前半部分的区间为,如果满足以下关系|(Ci+1-Ci)|<Lmin|||(Ci+1-Ci)|>Lmax,则有若C[0]>0,C[i+1]=C[i]+Lg,若C[0]<0,C[i+1]=C[i]-Lg,其中Lmin=Lg-4,Lmax=Lg+4。
定义后半部分的区间为,同样如果满足以下关系abs(Ci+1-Ci)<Lmin||abs(Ci+1-Ci)>Lmax,则有若C[0]>0,C[i+1]=C[i]+Lg,若C[0]<0,C[i+1]=C[i]-Lg其中Lmin=Lg-4,Lmax=Lg+4。
再次重新筛选目标投影点,根据投影坐标点值px,选择区间为更新每条直线对应的C值,根据距离公式计算Dnew,Dnew为再次筛选出的目标投影点到修正后的直线的距离,此时Dnew<8为最终所需要的目标投影点,记为Pz,即当再次筛选出的目标投影点到修正后的直线的距离小于预设的值时,该目标投影点为第二目标投影点。
根据最小二乘法对目标投影点Pz再次拟合,得到最终直线Lz。
对X方向和Y方向分别采用上述操作完成修正拟合,定义最终所得直线个数分别为Nx和Ny。
S15:目标点坐标提取及编码。
参见图6,设修正拟合所得直线为Lzx:a1x+b1y+c1=0,Lzy:a2x+b2y+c2=0,根据最小二乘法拟合得到的输出可以得到a1=a2=-R1、b1=b2=R0、c1=-(R2*a1+R3*b1)和c2=-(R2*a2+R3*b2)。根据标定板对原始图像中黑白方格的设定,使得图像中具有九块大小相同的标识区域,标识区域中所属白色方格形状不一,如果进行编码定义,则可以得到九种不同的3*3编码,根据编码就可以得到所需目标点Dn。由于标定板放置具有四种方向,且每一种放置方向具有九种不同的3*3编码,因此为避免坐标点提取重叠,定义起始点坐标编码如下:
具体步骤如下:
定义两方向直线的交点坐标为Pij(u,v),交点坐标计算公式如下:
其中i∈[1,Nx-1]、j∈[1,Ny-1]。
对图像进行二值化处理,得到像素值只有0和255的图像,根据计算公式求出两方向直线的交点坐标Pij(u,v),称其为交点坐标。
从第一个交点开始遍历图像,计算每一块小方格的像素值,统计方格中连续像素值为255的方格个数Np,若Np<(Lg-4)2,则定义此方格编码为0,否则为1,同时方格编码也对应此时的交点坐标Pij(u,v),需要注意由于直线存在形变,导致每块区间大小不一样,因此需要通过交点坐标来定义每块区域,既u∈[uij,ui(j+1)],v∈[vij,v(i+1)j]。该方法采用标识区域中黑色方格连续的个数以及黑色白色方格连续的个数为特征,便于寻找标识区域。
再次从第一个交点进行搜索,定义方格数为6*6大小的滑动窗口Wuv进行搜索,具体步骤如下:
定义黑色目标区域的判断条件如下:
W0v=W1v={[0,0,0,0,0],v<6}||W4v=W5v={[0,0,0,0,0],v<6};
W0v=W1v={[1,1,0,0,0],v<6}||W4v=W5v={[1,1,0,0,0],v<6};
当窗口滑到黑色目标区域时进行编码判断,编码与标识区域一一对应,当为所需编码时进行坐标提取,输出目标点坐标为P(u+3,v+3),由于起始点编码始终定义为D0,因此根据编码按照一定顺序输出目标点坐标P(u+3,v+3)。
根据图3中的(a)定义编码如下:
跟据图3中的(b)定义编码如下:
跟据图3中的(c)定义编码如下:
跟据图3中的(d)定义编码如下:
S16:坐标系转换。
生成目标点P(u+3,v+3)对应的是相机坐标系下的像素坐标值,而九点手眼标定需要得到是机械手坐标系中机械手的坐标值,因此需要进行坐标系转换。在实际操作中,相机识别到目标在图像中的像素坐标,通过标定好的坐标转换矩阵将像素坐标变换到机械手的空间坐标系,从而控制机械手到达指定位置。具体包括:
坐标点变换矩阵如下:
[xi′yi′]T=R*[xi yi]T+t;
转换为公式表示如下:
xi′=a1xi+b1yi+c1;
yi′=a2xi+b2yi+c2;
其中xi′,yi′分别表示机械手坐标,R表示旋转矩阵,t表示位移矩阵
根据3个标定点求解标定矩阵,示例如下:
转换为矩阵表达如下:
本发明实施例所提供的方法,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。
实施例四:
一种基于编码定义的九点标定物体抓取***,包括:
相机:用于进行拍摄,并拍摄后得到的图像传输给标定设备;
标定设备:用于获取相机拍摄所述标定板得到的标定图像;对所述标定图像进行标定,得到基于相机坐标系的像素坐标;根据九个目标点的像素坐标和与九个目标点对应的机械手坐标求解旋转矩阵和位移矩阵;标定设备还用于获取相机拍摄待抓取物体的相机图像,获取相机图像中基于相机坐标系的像素坐标;根据得到的旋转矩阵和位移矩阵将相机图像中像素坐标转换为机械手坐标,将该机械手坐标传输给机械手;
机械手:其末端当移动到标定板中9个标识区域中的目标点时,获得与9个标识区域中目标点对应的基于机械手坐标系的机械手坐标,并将该机械手坐标传输给标定设备;机械手还用于根据标定设备下发的所述机械手坐标抓取待抓取物体。
***基于不同形状编码提取目标点,利用定义的编码,在相机坐标系中确定九点的坐标位置,可以实现对图像中9个目标点精准有序的输出,同时计算得到图像DPI,使得机械手对目标的抓取和识别更为精准有序。
本发明实施例所提供的***,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的说明书的范围当中。
Claims (10)
1.一种标定板,其特征在于,
所述标定板被若干条平行的垂直线和若干条平行的水平线分割成多个方格,方格颜色为黑色或白色;所述标定板上设有9个标识区域,其中每个标识区域由若干个黑色方格和若干个白色方格构成不同的图案,每个识别区域设有多个标识不同方向的编码;
标定板中除标识区域以外的方格中,相邻的方格颜色不同;
标定板的方格数为30*42,标识区域的方格数为6*6,每个标识区域针对4个方向设有4个编码。
2.一种基于编码定义的九点标定物体抓取方法,其特征在于,包括以下步骤:
获取相机拍摄权利要求1所述标定板得到的标定图像;
对所述标定图像进行标定,得到基于相机坐标系的像素坐标;
将机械手末端分别移动到标定板中9个标识区域中的目标点,以获得与9个标识区域中目标点对应的基于机械手坐标系的机械手坐标;
根据所述像素坐标和机械手坐标求解旋转矩阵和位移矩阵;
获取相机拍摄待抓取物体的相机图像,获取相机图像中基于相机坐标系的像素坐标;
根据得到的旋转矩阵和位移矩阵将相机图像中像素坐标转换为机械手坐标;
根据所述机械手坐标控制机械手抓取待抓取物体。
3.根据权利要求2所述基于编码定义的九点标定物体抓取方法,其特征在于,所述对所述标定图像进行标定具体包括:
识别出标定图像中的垂直线和水平线;
根据识别区域的编码识别出标定图像上标识区域中目标点;
根据得到的目标点进行标定。
4.根据权利要求3所述基于编码定义的九点标定物体抓取方法,其特征在于,所述识别出标定图像中的垂直线和水平线具体包括:
根据标定图像生成X方向梯度图像、Y方向梯度图像和旋转角度;
根据所述旋转角度求出对应的旋转向量;利用旋转向量,将所述X方向梯度图像上的点投影到Y方向上,将所述Y方向梯度图像上的点投影到X方向上,分别获得X方向投影点坐标值和Y方向投影点坐标值,从所述X方向投影点坐标值和Y方向投影点坐标值筛选出第一目标投影点,进行第一次拟合;
从经过第一次拟合得到的第一直线中筛选出第二目标投影点,进行二次拟合,识别出标定图像中的所述垂直线和水平线。
5.根据权利要求4所述基于编码定义的九点标定物体抓取方法,其特征在于,
所述旋转角度包括X方向旋转角度和Y方向旋转角度;
所述根据标定图像生成X方向梯度图像、Y方向梯度图像和旋转角度具体包括:
获取所述标定图像对应的二维函数,对所述二维函数分别进行X方向和Y方向上的求导,获得所述X方向梯度图像和Y方向梯度图像;
执行旋转角度步骤,生成X方向旋转角度和Y方向旋转角度,当X方向旋转角度和Y方向旋转角度相差没有落入预设的重新生成阈值范围内时,删除得到的X方向旋转角度和/或Y方向旋转角度,重新执行旋转角度步骤,生成X方向旋转角度和/或Y方向旋转角度,直至生成差值落入重新生成阈值范围内的X方向旋转角度和Y方向旋转角度;
所述旋转角度步骤包括:获取所述X方向梯度图像中像素值位于预设梯度范围内像素点的角度值,统计每个像素点对应的角度值的累计数量,定义累计数量最高的像素点对应的角度值为X方向旋转角度;获取所述Y方向梯度图像中像素值位于所述梯度范围内像素点的角度值,统计每个像素点对应的角度值的累计数量,定义累计数量最高的像素点对应的角度值为Y方向旋转角度。
6.根据权利要求5所述基于编码定义的九点标定物体抓取方法,其特征在于,所述从所述X方向投影点坐标值和Y方向投影点坐标值筛选出第一目标投影点具体包括:
对所述X方向投影点坐标值和Y方向投影点坐标进行统计,以获得X方向直方图和Y方向直方图;
分别运用预设的平滑矩阵对所述X方向直方图和Y方向直方图进行平滑处理,根据平滑处理结果分别提取出X方向和Y方向上每个周期下的极大值,对得到的所述极大值进行筛选后,定义筛选后得到的极大值对应的投影点为所述第一目标投影点;
对筛选出来的极大值进行分析,统计相邻两个极大值之间的像素长度,提取出现次数最多的像素长度,定义为标准间距值。
7.根据权利要求6所述基于编码定义的九点标定物体抓取方法,其特征在于,所述进行第一次拟合具体包括:
分别获取X方向上和Y方向上第一目标投影点对应的原始坐标值;
分别根据所述原始坐标值拟合得到所述X方向上的第一直线和Y方向上的第一直线。
8.根据权利要求7所述基于编码定义的九点标定物体抓取方法,其特征在于,所述从经过第一次拟合得到的第一直线中筛选出第二目标投影点,进行二次拟合,识别出标定图像中的所述垂直线和水平线具体包括:
对所述第一直线进行修正,计算第一目标投影点对应的原始坐标值与修正后的第一直线的距离,根据得到的距离从第一目标投影点中筛选出X方向上和Y方向上第二目标投影点;
分别获取X方向上和Y方向上第二目标投影点对应的原始坐标值;
分别根据所述原始坐标值拟合得到所述垂直线和水平线。
9.根据权利要求4所述基于编码定义的九点标定物体抓取方法,其特征在于,所述根据识别区域的编码识别出标定图像上标识区域中目标点具体包括:
根据预设的直线交点计算公式计算标定图像的交点坐标;
根据相邻交点之间的坐标差定义每个方格;
设定一个与标识区域大小相同的滑动窗口,利用所述滑动窗口在所述标定图像中滑动,根据连续颜色相同的方格个数识别出标识区域对应的编码,依次输出标识区域的目标点。
10.一种基于编码定义的九点标定物体抓取***,其特征在于,包括:
相机:用于进行拍摄,并拍摄后得到的图像传输给标定设备;
标定设备:用于获取相机拍摄权利要求1所述标定板得到的标定图像;对所述标定图像进行标定,得到基于相机坐标系的像素坐标;根据九个目标点的像素坐标和与九个目标点对应的机械手坐标求解旋转矩阵和位移矩阵;标定设备还用于获取相机拍摄待抓取物体的相机图像,获取相机图像中基于相机坐标系的像素坐标;根据得到的旋转矩阵和位移矩阵将相机图像中像素坐标转换为机械手坐标,将该机械手坐标传输给机械手;
机械手:其末端当移动到标定板中9个标识区域中的目标点时,获得与9个标识区域中目标点对应的基于机械手坐标系的机械手坐标,并将该机械手坐标传输给标定设备;机械手还用于根据标定设备下发的所述机械手坐标抓取待抓取物体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010903314.8A CN111968185B (zh) | 2020-09-01 | 2020-09-01 | 标定板、基于编码定义的九点标定物体抓取方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010903314.8A CN111968185B (zh) | 2020-09-01 | 2020-09-01 | 标定板、基于编码定义的九点标定物体抓取方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111968185A CN111968185A (zh) | 2020-11-20 |
CN111968185B true CN111968185B (zh) | 2024-02-02 |
Family
ID=73401045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010903314.8A Active CN111968185B (zh) | 2020-09-01 | 2020-09-01 | 标定板、基于编码定义的九点标定物体抓取方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111968185B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112692840A (zh) * | 2020-12-10 | 2021-04-23 | 安徽巨一科技股份有限公司 | 一种基于机器视觉配合机械手定位引导和标定方法 |
CN113112550B (zh) * | 2020-12-23 | 2022-08-02 | 合肥工业大学 | 一种用于摄像机内外参数标定的编码平面靶标及其编码方法 |
CN115582829A (zh) * | 2021-07-05 | 2023-01-10 | 腾讯科技(深圳)有限公司 | 机械臂的位置确定方法、装置、电子设备及存储介质 |
CN117140558B (zh) * | 2023-10-25 | 2024-01-16 | 菲特(天津)检测技术有限公司 | 坐标转换方法、***及电子设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104616348A (zh) * | 2015-01-15 | 2015-05-13 | 东华大学 | 基于多目立体视觉的织物外观重建方法 |
CN105654484A (zh) * | 2015-12-30 | 2016-06-08 | 西北工业大学 | 光场相机外参数标定装置及方法 |
CN109015630A (zh) * | 2018-06-21 | 2018-12-18 | 深圳辰视智能科技有限公司 | 基于标定点提取的手眼标定方法、***及计算机存储介质 |
CN110047109A (zh) * | 2019-03-11 | 2019-07-23 | 南京航空航天大学 | 一种基于自识别标记的相机标定板及其识别检测方法 |
CN209168191U (zh) * | 2018-12-31 | 2019-07-26 | 深圳积木易搭科技技术有限公司 | 一种标定装置 |
DE102018008539A1 (de) * | 2018-11-01 | 2019-12-05 | Baumer Optronic Gmbh | Kalibriervorrichtung und Verfahren zur Kamerakalibrierung für die Photogrammetrie |
CN110827361A (zh) * | 2019-11-01 | 2020-02-21 | 清华大学 | 基于全局标定架的相机组标定方法及装置 |
CN110827357A (zh) * | 2019-09-30 | 2020-02-21 | 深圳市安思疆科技有限公司 | 一种组合图案标定板以及结构光相机参数标定方法 |
CN110954067A (zh) * | 2019-12-28 | 2020-04-03 | 长安大学 | 一种基于靶标的单目视觉挖掘机位姿测量***及测量方法 |
CN111179360A (zh) * | 2020-04-13 | 2020-05-19 | 杭州利珀科技有限公司 | 一种高精度自动化标定板和标定方法 |
CN111210478A (zh) * | 2019-12-31 | 2020-05-29 | 重庆邮电大学 | 一种无共同视野多相机***外参标定方法、介质及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109754426B (zh) * | 2017-11-01 | 2021-04-23 | 虹软科技股份有限公司 | 一种用于摄像标定参数验证的方法、***和装置 |
-
2020
- 2020-09-01 CN CN202010903314.8A patent/CN111968185B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104616348A (zh) * | 2015-01-15 | 2015-05-13 | 东华大学 | 基于多目立体视觉的织物外观重建方法 |
CN105654484A (zh) * | 2015-12-30 | 2016-06-08 | 西北工业大学 | 光场相机外参数标定装置及方法 |
CN109015630A (zh) * | 2018-06-21 | 2018-12-18 | 深圳辰视智能科技有限公司 | 基于标定点提取的手眼标定方法、***及计算机存储介质 |
DE102018008539A1 (de) * | 2018-11-01 | 2019-12-05 | Baumer Optronic Gmbh | Kalibriervorrichtung und Verfahren zur Kamerakalibrierung für die Photogrammetrie |
CN209168191U (zh) * | 2018-12-31 | 2019-07-26 | 深圳积木易搭科技技术有限公司 | 一种标定装置 |
CN110047109A (zh) * | 2019-03-11 | 2019-07-23 | 南京航空航天大学 | 一种基于自识别标记的相机标定板及其识别检测方法 |
CN110827357A (zh) * | 2019-09-30 | 2020-02-21 | 深圳市安思疆科技有限公司 | 一种组合图案标定板以及结构光相机参数标定方法 |
CN110827361A (zh) * | 2019-11-01 | 2020-02-21 | 清华大学 | 基于全局标定架的相机组标定方法及装置 |
CN110954067A (zh) * | 2019-12-28 | 2020-04-03 | 长安大学 | 一种基于靶标的单目视觉挖掘机位姿测量***及测量方法 |
CN111210478A (zh) * | 2019-12-31 | 2020-05-29 | 重庆邮电大学 | 一种无共同视野多相机***外参标定方法、介质及*** |
CN111179360A (zh) * | 2020-04-13 | 2020-05-19 | 杭州利珀科技有限公司 | 一种高精度自动化标定板和标定方法 |
Non-Patent Citations (1)
Title |
---|
"基于面结构光的机械工件三维扫描***研究与设计";林嘉鑫;《中国优秀硕士学位论文全文数据库信息科技辑》;第I138-4085页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111968185A (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111968185B (zh) | 标定板、基于编码定义的九点标定物体抓取方法及*** | |
CN109409366B (zh) | 基于角点检测的畸变图像校正方法及装置 | |
CN108985137B (zh) | 一种车牌识别方法、装置及*** | |
JP6573354B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
CN108108746B (zh) | 基于Caffe深度学习框架的车牌字符识别方法 | |
CN109615653B (zh) | 基于深度学习与视场投影模型的渗漏水面积检测与识别方法 | |
US10311322B2 (en) | Character information recognition method based on image processing | |
CN108564025A (zh) | 一种基于可变形卷积神经网络的红外图像物体识别方法 | |
US20140212048A1 (en) | System and Method for Identifying Scale Invariant Features of Object Outlines on Images | |
CN106067031B (zh) | 基于人工纠错机制与深度学习网络协作机器视觉识别*** | |
CN110705530B (zh) | 双目活体识别同一人脸框的方法、装置、设备及存储介质 | |
CN112132907A (zh) | 一种相机标定方法、装置、电子设备及存储介质 | |
CN112364881B (zh) | 一种进阶采样一致性图像匹配方法 | |
CN110365404B (zh) | 无波前传感自适应***及利用该***提高收敛速度的方法 | |
CN109190452A (zh) | 作物行识别方法及装置 | |
CN113095445B (zh) | 一种目标识别方法及装置 | |
CN113313725B (zh) | 含能材料药桶的桶口识别方法及*** | |
CN117314901B (zh) | 一种尺度自适应的芯片检测神经网络*** | |
CN112338898B (zh) | 物体分选***的图像处理方法、装置及物体分选*** | |
CN104322057B (zh) | 图案处理装置、图案处理方法和图案处理程序 | |
CN110634146B (zh) | 一种圆心亚像素精度定位方法 | |
CN112084804A (zh) | 针对信息缺失条形码智能获取补足像素的工作方法 | |
CN115049860A (zh) | 一种基于特征点识别的***及抓取方法 | |
CN114638805A (zh) | 一种轨道板裂缝检测方法、***及存储介质 | |
CN111428534A (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 |