主权项 |
一种基于编码图案投影的三维照相方法,其特征在于,包括标定设置阶段和实时拍照阶段;所述标定设置阶段包括如下步骤:(1‑1)标定照相装置内参数,照相装置内参数包括照相装置宽度方向上的焦距f<sub>u</sub>、高度方向上的焦距f<sub>v</sub>、照相装置主点坐标(u<sub>0</sub>,v<sub>0</sub>),将照相装置的有效摄像范围设定为测量空间;(1‑2)进行编码图案投影,在测量空间投影获得具有编码图案的空间调制场;(1‑3)设定标定距离d,对测量空间进行编码标定,即在测量空间内,从近致远,每间隔标定距离d依次采集一张编码图案,并将在各个位置采集到的编码图案按顺序从1到N标号保存为标定图像;(1‑4)在步骤(1‑3)的最后操作位置,通过位姿测量确定出标定世界坐标系与照相装置坐标系之间的旋转矩阵R和平移矢量T,其中,R为3×3的正交矩阵,其元素为(r<sub>1</sub>,…,r<sub>9</sub>),平移矢量T的分量分别为(T<sub>x</sub>,T<sub>y</sub>,T<sub>z</sub>);所述实时拍照阶段包括如下步骤:(2‑1)进行编码图案投影,由照相装置拍摄编码图案投影下的被测物体图像;(2‑2)以j*j的像素块为基本单位,计算所拍摄被测物体图像各个像素块的空间深度值Z,j为3以上的奇数;其过程为,计算被测物体图像与各个标定图像的各像素块相关度值C(u,v;t),计算公式如下:<maths num="0001"><math><![CDATA[<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><mi>C</mi><mrow><mo>(</mo><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><msup><mrow><mo>(</mo><mo>(</mo><mrow><mi>S</mi><mrow><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>t</mi></mrow><mo>)</mo></mrow><mo>-</mo><mover><mrow><mi>S</mi><mrow><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>t</mi></mrow><mo>)</mo></mrow></mrow><mo>‾</mo></mover></mrow><mo>)</mo><mo>·</mo><mo>(</mo><mrow><mi>O</mi><mrow><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>h</mi></mrow><mo>)</mo></mrow><mo>-</mo><mover><mrow><mi>O</mi><mrow><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>h</mi></mrow><mo>)</mo></mrow></mrow><mo>‾</mo></mover></mrow><mo>)</mo><mo>)</mo></mrow><mn>2</mn></msup><mrow><msup><mrow><mo>(</mo><mi>S</mi><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>t</mi></mrow><mo>)</mo><mo>-</mo><mover><mrow><mi>S</mi><mrow><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>t</mi></mrow><mo>)</mo></mrow></mrow><mo>‾</mo></mover><mo>)</mo></mrow><mn>2</mn></msup><mo>·</mo><msup><mrow><mo>(</mo><mi>O</mi><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>h</mi></mrow><mo>)</mo><mo>-</mo><mover><mrow><mi>O</mi><mrow><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi><mo>;</mo><mi>h</mi></mrow><mo>)</mo></mrow></mrow><mo>‾</mo></mover><mo>)</mo></mrow><mn>2</mn></msup></mrow></mfrac></mrow></mtd><mtd><mrow><mi>t</mi><mo>=</mo><mn>1</mn><mo>...</mo><mi>N</mi></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0001153161070000011.GIF" wi="1461" he="159" /></maths>其中,(u,v)是当前像素块中中心像素点坐标,t是标定图像序列号,其值从1到N,N为大于1的自然数,S(u,v;t)为该像素块相应参考标定图像,O(u,v;h)为当前拍摄的被测物体图像在该像素块的值;<img file="FDA0001153161070000012.GIF" wi="158" he="62" />和<img file="FDA0001153161070000013.GIF" wi="179" he="63" />分别为待测像素块中S(u,v;t)和O(u,v;h)的平均值;根据所拍摄被测物体与参考标定图像的相关度值C(u,v;t)得出的相关度值曲线图进行曲线拟合,求解出其最大相关值所对应的标定图像标号m,根据标定时拍摄图像间隔距离d直接获得计算点的空间深度值Z=d×m;(2‑3)根据旋转矩阵R、平移矢量T以及计算出的被测物体图像各个像素点的空间深度值Z,求解该像素点所对应的宽度方向上的坐标X和高度方向上的坐标Y,从而获得被测物体图像像素点所对应被测物体表面的三维坐标,其计算公式为:<maths num="0002"><math><![CDATA[<mrow><mfenced open = "" close = "}"><mtable><mtr><mtd><mrow><mi>u</mi><mo>=</mo><msub><mi>f</mi><mi>u</mi></msub><mfrac><mrow><msub><mi>r</mi><mn>1</mn></msub><mi>X</mi><mo>+</mo><msub><mi>r</mi><mn>2</mn></msub><mi>Y</mi><mo>+</mo><msub><mi>r</mi><mn>3</mn></msub><mi>Z</mi><mo>+</mo><msub><mi>T</mi><mi>x</mi></msub></mrow><mrow><msub><mi>r</mi><mn>7</mn></msub><mi>X</mi><mo>+</mo><msub><mi>r</mi><mn>8</mn></msub><mi>Y</mi><mo>+</mo><msub><mi>r</mi><mn>9</mn></msub><mi>Z</mi><mo>+</mo><msub><mi>T</mi><mi>z</mi></msub></mrow></mfrac><mo>+</mo><msub><mi>u</mi><mn>0</mn></msub></mrow></mtd></mtr><mtr><mtd><mrow><mi>v</mi><mo>=</mo><msub><mi>f</mi><mi>v</mi></msub><mfrac><mrow><msub><mi>r</mi><mn>4</mn></msub><mi>X</mi><mo>+</mo><msub><mi>r</mi><mn>5</mn></msub><mi>Y</mi><mo>+</mo><msub><mi>r</mi><mn>6</mn></msub><mi>Z</mi><mo>+</mo><msub><mi>T</mi><mi>y</mi></msub></mrow><mrow><msub><mi>r</mi><mn>7</mn></msub><mi>X</mi><mo>+</mo><msub><mi>r</mi><mn>8</mn></msub><mi>Y</mi><mo>+</mo><msub><mi>r</mi><mn>9</mn></msub><mi>Z</mi><mo>+</mo><msub><mi>T</mi><mi>z</mi></msub></mrow></mfrac><mo>+</mo><msub><mi>v</mi><mn>0</mn></msub></mrow></mtd></mtr></mtable></mfenced><mo>.</mo></mrow>]]></math><img file="FDA0001153161070000021.GIF" wi="686" he="277" /></maths> |