CN107564067A - 一种适用于Kinect的标定方法 - Google Patents

一种适用于Kinect的标定方法 Download PDF

Info

Publication number
CN107564067A
CN107564067A CN201710705039.7A CN201710705039A CN107564067A CN 107564067 A CN107564067 A CN 107564067A CN 201710705039 A CN201710705039 A CN 201710705039A CN 107564067 A CN107564067 A CN 107564067A
Authority
CN
China
Prior art keywords
mtd
mtr
msub
mrow
mtable
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.)
Pending
Application number
CN201710705039.7A
Other languages
English (en)
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.)
University of Shanghai for Science and Technology
Original Assignee
University of Shanghai for Science and Technology
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 University of Shanghai for Science and Technology filed Critical University of Shanghai for Science and Technology
Priority to CN201710705039.7A priority Critical patent/CN107564067A/zh
Publication of CN107564067A publication Critical patent/CN107564067A/zh
Pending legal-status Critical Current

Links

Abstract

本发明涉及一种适用于Kinect的标定方法,包括以下步骤:(1)从彩色图像中提取棋盘角点,标定相机的内参;(2)获取3D对应点集;(3)基于3D对应点集进行姿态估计;(4)3D转换。该方法适用于RGB和深度相机,硬件成本低,操作部署简单,且所需要准备的图像帧数少,标定精度高,标定速度快,操作简单。

Description

一种适用于Kinect的标定方法
技术领域
本发明涉及图像处理领域,具体涉及一种适用于Kinect的标定方法。
背景技术
三维重建时计算机视觉重点研究方法之一,三维重建技术在机器人视觉、工业制造、工程建筑、动漫、文物保护、服装展示等领域得到广泛应用。一个完整的三维重建过程可分为图像获取、相机标定、特征提取、图像对应点匹配、三维重建和后处理等六个部分。相机标定不仅估算出相机本身固有的几何结构参数,还对图像间相对坐标的变换参数进行估算,相机标定的精度对三维坐标点的精度和空间物体三维重构后的相似度有直接的影响。目前,相机的标定方法可以归为传统标定、自标定和基于主动视觉的标定。传统的相机标定方法精度高,速度慢,自标定方法适用在要求较高的标定速度或需要实时标定的场合。
目前文献中主要提到的方法有:直接线性变换方法(DLT变换),径向一致约束法(RAC),棋盘标定法,基于遗传算法的标定方法。其中使用最多的是张正友的棋盘标定,要求准确的提取棋盘的角度,通常适用于传统的RGB相机。还有一定的局限性,由于2D棋盘只提供2D信息,为了进行3D姿态估计,通常需要非线性最优化。与此同时,为了标定相机,通常需要准备几十帧的数据。
发明内容
本发明针对现有技术的不足,提出一种适用于Kinect的标定方法。该方法硬件成本低,操作部署简单,所需帧数少,标定精度高。
为达到上述目的,本发明采用如下技术方案:
一种适用于Kinect的标定方法,包括以下步骤:
步骤一,从彩色图像中提取棋盘角点,标定相机的内参;
步骤二,获取3D对应点集;
步骤三,基于3D对应点集进行姿态估计;
步骤四,3D转换。
所述步骤一中,提取棋盘角点,标定相机的内参的具体步骤是:
1)获取十几张不同角度标定棋盘的图片,检测棋盘的角点,得到每个角点的坐标;
2)分别定义图片中,世界坐标系下的角点坐标,一般x、y为等间距,z为0;
3)开始标定,得到相机的内参。
所述步骤3)的具体步骤为:相机的成像模型表示为:
sm=A[R t]M
其中m的其次坐标表示图像平面的像素坐标(u,v,1),M的齐次坐标表示世界坐标系的坐标点(X,Y,Z,1),R表示旋转矩阵、t表示平移矩阵、s表示尺度因子,A表示摄像机的内参数,具体表达式如下:
其中α=f/dx,β=f/dy,dx和dy分别为每个像素在图像平面x轴和y轴方向上的物理尺寸大小,γ代表像素点在x,y方向上的偏差,μ0,v0表示在像素坐标系下图像坐标系原点的坐标;
由于标定物是平面,把世界坐标系构造在的Z=0平面上,所以对公式进行变换:
其中r1,r2,r3是三个旋转向量,H=A[r1 r2 t],把矩阵写成三个列向量的形式:
H=[h1 h2 h3]
其中H是一个三3*3的矩阵,将公式变换得到:
[h1 h2 h3]=λA[r1 r2 t]
其中λ是尺寸因子,由于r1,r2是旋转向量,r1,r2正交,r1r2=0,|r1|=|r2|=1,得到下面两个公式:
h1 TA-TA-1h2=0
h1 TA-TA-1h1=h2 TA-TA-1h2
根据步骤2)得到的角点信息,解出h1,h2,然后根据上述两个公式,就解出内参α,β,μ0,v0,γ。
所述步骤二中,获取3D对应点集的具体步骤是:
1)获取深度图像的中心点,中心点的公式为:
Cx=w/2
Cy=h/2
上述式子中Cx,Cy表示深度图像的下x,y轴坐标,w,h表示深度图像的宽度和高度;
2)彩色图像网格化;
3)对每一个深度像素点,找到深度像素点对应的彩色像素点,并确定相对坐标;
4)将RGB图像中提取的角点数据对应到3D坐标。
所述步骤三中,根据步骤二中得到的3D对应点集,对相机A和相机B的姿态进行估计,将相机A的坐标转换到相机B的坐标,公式如下:
上述式子中分别代表相机A和相机B中的3D对应点集对,表示点到的旋转矩阵,RAB,tAB为从KinectA坐标转换到KinectB坐标的旋转矩阵和平移向量。
所述步骤四中获取标定板的角点的真实世界坐标以后,使用标定好的旋转矩阵和平移向量将坐标系的点转换到另一个坐标系;假设是Kinect A中的一个点,将之转换到Kinect B所需要的公式如下:
合并旋转矩阵和平移向量:
将每一个点放入一个4×nA的矩阵:
则转换点表示为:PA′=TABPA,将转换后的点去掉最后一行表示为
与现有技术相比,本发明的有益效果为:
本方法适用于RGB和深度相机,硬件成本低,操作部署简单,且所需要准备的图像帧数少,标定精度高,标定速度快,操作简单。
附图说明
图1为本发明方法的流程图。
图2为系统硬件示意图。
具体实施方式
下面结合附图,对本发明的具体实施例做进一步的说明。
如图1和图2所示,一种适用于Kinect的标定方法,包括以下步骤:
步骤一,从彩色图像中提取棋盘角点,标定相机的内参;
步骤二,获取3D对应点集;
步骤三,基于3D对应点集进行姿态估计;
步骤四,3D转换。
所述步骤一中,提取棋盘角点,标定相机的内参的具体步骤是:
1)获取十几张不同角度标定棋盘的图片,检测棋盘的角点,得到每个角点的坐标;
2)分别定义图片中,世界坐标系下的角点坐标,一般x、y为等间距,z为0;
3)开始标定,得到相机的内参。
所述步骤3)的具体步骤为:相机的成像模型表示为:
sm=A[R t]M
其中m的其次坐标表示图像平面的像素坐标(u,v,1),M的齐次坐标表示世界坐标系的坐标点(X,Y,Z,1),R表示旋转矩阵、t表示平移矩阵、s表示尺度因子,A表示摄像机的内参数,具体表达式如下:
其中α=f/dx,β=f/dy,dx和dy分别为每个像素在图像平面x轴和y轴方向上的物理尺寸大小,γ代表像素点在x,y方向上的偏差,μ0,v0表示在像素坐标系下图像坐标系原点的坐标;
由于标定物是平面,把世界坐标系构造在的Z=0平面上,所以对公式进行变换:
其中r1,r2,r3是三个旋转向量,H=A[r1 r2 t],把矩阵写成三个列向量的形式:
H=[h1 h2 h3]
其中H是一个三3*3的矩阵,将公式变换得到:
[h1 h2 h3]=λA[r1 r2 t]
其中λ是尺寸因子,由于r1,r2是旋转向量,r1,r2正交,r1r2=0,|r1|=|r2|=1,得到下面两个公式:
h1 TA-TA-1h2=0
h1 TA-TA-1h1=h2 TA-TA-1h2
根据步骤2)得到的角点信息,解出h1,h2,然后根据上述两个公式,就解出内参α,β,μ0,u0,γ。
所述步骤二中,获取3D对应点集的具体步骤是:
1)获取深度图像的中心点,中心点的公式为:
Cx=w/2
Cy=h/2
上述式子中Cx,Cy表示深度图像的下x,y轴坐标,w,h表示深度图像的宽度和高度;
2)彩色图像网格化;
3)对每一个深度像素点,找到深度像素点对应的彩色像素点,并确定相对坐标;
4)将RGB图像中提取的角点数据对应到3D坐标。
所述步骤三中,根据步骤二中得到的3D对应点集,对相机A和相机B的姿态进行估计,将相机A的坐标转换到相机B的坐标,公式如下:
上述式子中分别代表相机A和相机B中的3D对应点集对,表示点到的旋转矩阵,RAB,tAB为从KinectA坐标转换到KinectB坐标的旋转矩阵和平移向量。
所述步骤四中获取标定板的角点的真实世界坐标以后,使用标定好的旋转矩阵和平移向量将坐标系的点转换到另一个坐标系;假设是Kinect A中的一个点,将之转换到Kinect B所需要的公式如下:
合并旋转矩阵和平移向量:
将每一个点放入一个4×nA的矩阵:
则转换点表示为:PA′=TABPA,将转换后的点去掉最后一行表示为
实施例:
下面以实例来说明本发明公开的一种适用于Kinect的标定方法。通过选定一个Kinect作为参考设备,相机按照图2位置安装,将左面的Kinect作为参考。然后将所有的点云转换到同一个坐标系。最终的点云可以被标定为:
Pback′=TBLPbackPright′=TRLPright表示将点集转换到左面Kinect坐标系,为左面Kinect的点,为转换后的右面和背面Kinect的点去掉最后一行,Pback′,Pright′为背面和右边Kinect的转换点,TBL,Pback,TRL,Pright分别为各自的合并后的旋转平移矩阵和点的矩阵。

Claims (6)

1.一种适用于Kinect的标定方法,其特征在于,包括以下步骤:
步骤一,从彩色图像中提取棋盘角点,标定相机的内参;
步骤二,获取3D对应点集;
步骤三,基于3D对应点集进行姿态估计;
步骤四,3D转换。
2.根据权利要求1所述的一种适用于Kinect的标定方法,其特征在于,所述步骤一中,提取棋盘角点,标定相机的内参的具体步骤是:
1)获取十几张不同角度标定棋盘的图片,检测棋盘的角点,得到每个角点的坐标;
2)分别定义图片中,世界坐标系下的角点坐标,一般x、y为等间距,z为0;
3)开始标定,得到相机的内参。
3.根据权利要求2所述的一种适用于Kinect的标定方法,其特征在于,所述步骤3)的具体步骤为:相机的成像模型表示为:
sm=A[R t]M
其中m的其次坐标表示图像平面的像素坐标(u,v,1),M的齐次坐标表示世界坐标系的坐标点(X,Y,Z,1),R表示旋转矩阵、t表示平移矩阵、s表示尺度因子,A表示摄像机的内参数,具体表达式如下:
<mrow> <mi>A</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mi>&amp;alpha;</mi> </mtd> <mtd> <mi>&amp;gamma;</mi> </mtd> <mtd> <msub> <mi>&amp;mu;</mi> <mn>0</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mi>&amp;beta;</mi> </mtd> <mtd> <msub> <mi>v</mi> <mn>0</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow>
其中α=f/dx,β=f/dy,dx和dy分别为每个像素在图像平面x轴和y轴方向上的物理尺寸大小,γ代表像素点在x,y方向上的偏差,μ0,v0表示在像素坐标系下图像坐标系原点的坐标;
由于标定物是平面,把世界坐标系构造在的Z=0平面上,所以对公式进行变换:
<mrow> <mi>s</mi> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mi>u</mi> </mtd> </mtr> <mtr> <mtd> <mi>v</mi> </mtd> </mtr> <mtr> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mi>A</mi> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>r</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>r</mi> <mn>2</mn> </msub> </mtd> <mtd> <msub> <mi>r</mi> <mn>3</mn> </msub> </mtd> <mtd> <mi>t</mi> </mtd> </mtr> </mtable> </mfenced> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mi>X</mi> </mtd> </mtr> <mtr> <mtd> <mi>Y</mi> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mi>A</mi> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>r</mi> <mn>1</mn> </msub> </mtd> <mtd> <msub> <mi>r</mi> <mn>2</mn> </msub> </mtd> <mtd> <mi>t</mi> </mtd> </mtr> </mtable> </mfenced> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mi>X</mi> </mtd> </mtr> <mtr> <mtd> <mi>Y</mi> </mtd> </mtr> <mtr> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow>
<mrow> <mi>s</mi> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mi>u</mi> </mtd> </mtr> <mtr> <mtd> <mi>v</mi> </mtd> </mtr> <mtr> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <mi>H</mi> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <mi>X</mi> </mtd> </mtr> <mtr> <mtd> <mi>Y</mi> </mtd> </mtr> <mtr> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow>
其中r1,r2,r3是三个旋转向量,H=A[r1 r2 t],把矩阵写成三个列向量的形式:
H=[h1 h2 h3]
其中H是一个三3*3的矩阵,将公式变换得到:
[h1 h2 h3]=λA[r1 r2 t]
其中λ是尺寸因子,由于r1,r2是旋转向量,r1,r2正交,r1r2=0,|r1|=|r2|=1,得到下面两个公式:
h1 TA-TA-1h2=0
h1 TA-TA-1h1=h2 TA-TA-1h2
根据步骤2)得到的角点信息,解出h1,h2,然后根据上述两个公式,就解出内参α,β,μ0,v0,γ。
4.根据权利要求1所述的一种适用于Kinect的标定方法,其特征在于,所述步骤二中,获取3D对应点集的具体步骤是:
1)获取深度图像的中心点,中心点的公式为:
Cx=w/2
Cy=h/2
上述式子中Cx,Cy表示深度图像的下x,y轴坐标,w,h表示深度图像的宽度和高度;
2)彩色图像网格化;
3)对每一个深度像素点,找到深度像素点对应的彩色像素点,并确定相对坐标;
4)将RGB图像中提取的角点数据对应到3D坐标。
5.根据权利要求1所述的一种适用于Kinect的标定方法,其特征在于,所述步骤三中,根据步骤二中得到的3D对应点集,对相机A和相机B的姿态进行估计,将相机A的坐标转换到相机B的坐标,公式如下:
<mrow> <mo>(</mo> <msub> <mi>R</mi> <mrow> <mi>A</mi> <mi>B</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>t</mi> <mrow> <mi>A</mi> <mi>B</mi> </mrow> </msub> <mo>)</mo> <mo>=</mo> <mi>argmin</mi> <munderover> <mo>&amp;Sigma;</mo> <mi>i</mi> <mi>n</mi> </munderover> <mo>|</mo> <mo>|</mo> <msub> <mi>R</mi> <mrow> <msubsup> <mi>ABP</mi> <mi>A</mi> <mi>i</mi> </msubsup> </mrow> </msub> <mo>+</mo> <msub> <mi>t</mi> <mrow> <mi>A</mi> <mi>B</mi> </mrow> </msub> <mo>-</mo> <msubsup> <mi>P</mi> <mi>B</mi> <mi>i</mi> </msubsup> <mo>|</mo> <msup> <mo>|</mo> <mn>2</mn> </msup> </mrow>
上述式子中 分别代表相机A和相机B中的3D对应点集对,表示点到的旋转矩阵,RAB,tAB为从KinectA坐标转换到KinectB坐标的旋转矩阵和平移向量。
6.根据权利要求1所述的一种适用于Kinect的标定方法,其特征在于,所述步骤四中获取标定板的角点的真实世界坐标以后,使用标定好的旋转矩阵和平移向量将坐标系的点转换到另一个坐标系;假设是Kinect A中的一个点,将之转换到Kinect B所需要的公式如下:
<mrow> <msubsup> <mi>P</mi> <msup> <mi>A</mi> <mo>&amp;prime;</mo> </msup> <mi>i</mi> </msubsup> <mo>=</mo> <msub> <mi>R</mi> <mrow> <msubsup> <mi>ABP</mi> <mi>A</mi> <mi>i</mi> </msubsup> </mrow> </msub> <mo>+</mo> <msub> <mi>t</mi> <mrow> <mi>A</mi> <mi>B</mi> </mrow> </msub> </mrow>
合并旋转矩阵和平移向量:
<mrow> <msub> <mi>T</mi> <mrow> <mi>A</mi> <mi>B</mi> </mrow> </msub> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>R</mi> <mrow> <mi>A</mi> <mi>B</mi> </mrow> </msub> </mtd> <mtd> <msub> <mi>t</mi> <mrow> <mi>A</mi> <mi>B</mi> </mrow> </msub> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow>
将每一个点放入一个4×nA的矩阵:
<mrow> <msub> <mi>P</mi> <mi>A</mi> </msub> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msubsup> <mi>P</mi> <mi>A</mi> <mn>0</mn> </msubsup> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <msubsup> <mi>P</mi> <mi>A</mi> <mi>i</mi> </msubsup> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <msubsup> <mi>P</mi> <mi>A</mi> <msub> <mi>n</mi> <mi>A</mi> </msub> </msubsup> </mtd> </mtr> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>1</mn> </mtd> <mtd> <mn>...</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> </mrow>
则转换点表示为:PA′=TABPA,将转换后的点去掉最后一行表示为
CN201710705039.7A 2017-08-17 2017-08-17 一种适用于Kinect的标定方法 Pending CN107564067A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710705039.7A CN107564067A (zh) 2017-08-17 2017-08-17 一种适用于Kinect的标定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710705039.7A CN107564067A (zh) 2017-08-17 2017-08-17 一种适用于Kinect的标定方法

Publications (1)

Publication Number Publication Date
CN107564067A true CN107564067A (zh) 2018-01-09

Family

ID=60975626

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710705039.7A Pending CN107564067A (zh) 2017-08-17 2017-08-17 一种适用于Kinect的标定方法

Country Status (1)

Country Link
CN (1) CN107564067A (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103607584A (zh) * 2013-11-27 2014-02-26 浙江大学 一种kinect拍摄的深度图与彩色摄像机拍摄视频的实时配准方法
US20160300383A1 (en) * 2014-09-10 2016-10-13 Shenzhen University Human body three-dimensional imaging method and system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103607584A (zh) * 2013-11-27 2014-02-26 浙江大学 一种kinect拍摄的深度图与彩色摄像机拍摄视频的实时配准方法
US20160300383A1 (en) * 2014-09-10 2016-10-13 Shenzhen University Human body three-dimensional imaging method and system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZKL99999网友: "张正友平面标定方法", 《CSDN博客》 *
曾继平: "基于双Kinect的人体运动重建", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Similar Documents

Publication Publication Date Title
CN105716542B (zh) 一种基于柔性特征点的三维数据拼接方法
CN103473771B (zh) 一种摄相机标定方法
CN106091983B (zh) 包含扫描方向信息的线结构光视觉测量系统完整标定方法
CN109842756A (zh) 一种镜头畸变矫正和特征提取的方法及系统
CN107680159B (zh) 一种基于投影矩阵的空间非合作目标三维重建方法
CN110969663B (zh) 一种相机外部参数的静态标定方法
CN107358633A (zh) 一种基于三点标定物的多相机内外参标定方法
CN104835144A (zh) 利用一个球的球心的像及正交性求解摄像机内参数
CN103489214A (zh) 增强现实系统中基于虚拟模型预处理的虚实遮挡处理方法
CN106504321A (zh) 使用照片或视频重建三维牙模的方法及使用rgbd图像重建三维牙模的方法
CN103854291A (zh) 四自由度双目视觉系统中的摄像机标定方法
CN112819903A (zh) 基于l型标定板的相机和激光雷达联合标定的方法
CN103278138A (zh) 一种复杂结构薄部件三维位置及姿态的测量方法
Kim et al. Extrinsic calibration of a camera-LIDAR multi sensor system using a planar chessboard
CN104268876A (zh) 基于分块的摄像机标定方法
CN104165750A (zh) 立体视觉结合陀螺仪风洞模型位姿测量方法
CN104463791A (zh) 一种基于球面模型的鱼眼图像校正法
CN109345471A (zh) 基于高精轨迹数据测量绘制高精地图数据方法
CN102222348A (zh) 一种三维目标运动矢量计算方法
CN105374067A (zh) 一种基于pal相机的三维重建方法及其重建系统
CN113450416B (zh) 一种应用于三目相机立体标定的tcsc方法
CN103900504A (zh) 纳米尺度下的实时三维视觉信息反馈方法
CN111105467B (zh) 一种图像标定方法、装置及电子设备
CN102930551A (zh) 利用圆心的投影坐标和极线求解摄像机内参数
Lin et al. PVO: Panoramic visual odometry

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180109

RJ01 Rejection of invention patent application after publication