【注意】:用的google翻译,很多地方语句不是很通,有误请谅解,要修正的pdf版本,请联系微信:neonwater

通过查看未知方向的平面进行灵活的相机校准

摘要

我们提出来一个灵活的新技术,可以轻松校准相机。它仅需要观察在几个(至少两个)不同的的方向上显示的平面图案。可以自由移动相机或平面图案。动向没有必要被知道。对径向透镜畸变进行建模。参考的流程包含一个封闭的解决方案,遵循最大似然准则的非线性改进。计算机模拟和实际数据都已用于测试所提出的技术,并且获得非常好的结果。与使用诸多两个或者三个正交平面的昂贵设备设备的传统技术相比,所提出的的技术易于使用且灵活。它将3D计算机视觉从实验室环境一步就推进到现实世界。相应的软件可以从作者的网页获得。

关键词:摄像机校准、内部参数、镜头失真(Camera Calibration,Intrinsic Parameters,Lens Distortion),灵活的基于平面的校准,运动分析,模型采样(Flexible Plane-Based Calibration,Motion Analysis,Model Acquisition)。

1.动机

相机标定是3D计算机视觉中的必要步骤,以便从2D图像中提取度量信息。从摄影测量界开始做了很多工作(参见【2,4】引用),最近还有计算机视觉引用一些。我们把这些计算机技术分为两类:

相机测量校准。通过观察校准对象来执行校准,该校准对象在3-D空间中的几何形状已知且具有非常好的精度。校准可以被非常有效地完成【5】。该正交对象通常由彼此正交的两个或者三个平面组成。有的时候,一个平面需要经过精确的翻译才能处理。这些方法需要昂贵的校准设备和精心设置。

自校准。此类别中的技术不需要使用任何校验对象。仅仅通过在静态场景中移动相机,通过仅使用图像信息,场景的刚性通常对来自一个相机位移的相机的内部参数提供两个约束【15】。因此,如果图像是由具有固定内部参数的相同摄像机拍摄的,则三幅图像之间的对应关系足以恢复内部和外部参数,这使得我们能够重建三维结构直至相似【14,12】。虽然这种方法非常灵活,但尚未成熟【1】。由于要估算的参数很多,我们无法始终获得可靠的结果。

其他技术 存在:正交方向的消失点【3,13】,以及纯旋转校准【10,18】。

我们目前的研究主要集中在桌面视觉系统(DVS Desktop Vision system),因为使用DVS的潜力很大。相机变得便宜无处不在。DVS针对的不是普通大众,他们不是计算机视觉方面的专家。典型的计算机用户将不时地进行视觉任务,因此不愿意为昂贵的设备付出资金。因此,灵活性、稳健性、和低成本是重要的。本文中描述的相机校准技术是在考虑这些因素的基础上开发的。

所提出的技术需要相机观察几个(至少两个)不同方向示出的平面图案。图案可以印刷在激光打印机上并附着在“合理的”平面(例如硬书封面)上。可以用手移动相机或者平面图案。不必知道动作。所提出的方案介于摄影测量校准和自校准之间,因为我们使用2D度量而不是3D或纯粹的隐式信息。计算机模拟和实际数据都已经用于测试所提出的技术,并且已经获得了非常好的成果。与传统技术相比,所提出的技术更加灵活。与自校准相比,它具有相当程度的稳健性。我们相信这项新技术将3D计算机视觉从实验室走向现实世界买进了一步。

请注意,Bill Triggs【19】最近从平面场景的至少5个视图开发了自校准技术。他的技术比我们的技术更加灵活,但是很难初始化。Liebowitz和Zisserman【13】描述了一种使用度量信息(例如已知角度,两个相等单未知角度)和已知长度比率的平面透视图像的度量重新计算技术。他们还提到,虽然没有显示任何算法或实验结果,但是可以提供内部摄像机参数的校准,只要提供这种计量整形平面即可。本文的结构如下。第2节描述了观察单个平面的基本约束。第3章描述提供校准程序。我们从闭合解决方案开始,然后进行非线性优化。还模拟了径向透镜畸变。第4节研究了所提出的校准技术失败的配置。在实践中很容易避免这种情况。第5节提供了实验结果。计算机模拟和实际数据都用于验证所提出的技术。在附录中,我们提供了许多细节,包括计算模型平面与其图像之间的单应性的技术。

2.基本方程

我们通过观察单个平面来检查摄像机内部参数的约束。我们从本文中使用的符号开始。

2.1 符号

2D点由
m=[u,v]T\mathbf{m}=[u, v]^{T} m=[u,v]T
表示。

3D点由
M=[X,Y,Z]T\mathrm{M}=[X, Y, Z]^{T} M=[X,Y,Z]T
表示。

我们使用
X‾\overline{X} X
来表示增强向量,方法是添加1作为后面一个元素:
m‾=[u,v,1]T\mathrm{\overline{m}}=[u,v,1]^{T} m=[u,v,1]T

M‾=[X,Y,Z,1]T\mathrm{\overline{M}}=[X, Y, Z,1]^{T} M=[X,Y,Z,1]T
照相机由通常的针孔建模:3D点M和其图像投影m之间的关系由下式给出:
sm~=A[Rt]M~with A=[αcu00βv0001]s \tilde{\mathbf{m}}=\mathbf{A}[\mathbf{R} \quad \mathbf{t}] \widetilde{\mathbb{M}} \quad \text { with } \mathbf{A}=\left[ \begin{array}{ccc}{\alpha} & {c} & {u_{0}} \\ {0} & {\beta} & {v_{0}} \\ {0} & {0} & {1}\end{array}\right] sm~=A[Rt]M with A=⎣⎡​α00​cβ0​u0​v0​1​⎦⎤​
其中 s 是任意的比例因子。
(R,t)(\mathbf{R}, \mathbf{t}) (R,t)
称为外部参数,是将世界坐标系与摄像机坐标系相关联的旋转和平移。
A\mathbf{A} A
叫做相机内在矩阵,
(u0,v0)\left(u_{0}, v_{0}\right) (u0​,v0​)
是主要点的坐标,α和β是图像u和v轴中的比例因子,c是描述两个图像轴的偏斜度的参数。

我们使用缩写
A−T\mathbf{A}^{-T} A−T
表示
(A−1)T\left(\mathbf{A}^{-1}\right)^{T} (A−1)T

(AT)−1\left(\mathbf{A}^{T}\right)^{-1} (AT)−1

2.2 在模板平面和图像之间的单应性矩阵

在不失一般性的情况下,我们假设模板在世界坐标系中
Z=0Z=0 Z=0
。我表示第
ithi^{\mathrm{th}} ith
列的旋转矩阵
R\mathbb{R} R
乘以
ri\mathbf{r}_{i} ri​
。从From(1),我们有
s[uv1]=A[r1r2r3t][XY01]=A[r1r2t][XY1]s \left[ \begin{array}{l}{u} \\ {v} \\ {1}\end{array}\right]=\mathbf{A} \left[ \begin{array}{llll}{\mathbf{r}_{1}} & {\mathbf{r}_{2}} & {\mathbf{r}_{3}} & {\mathbf{t}}\end{array}\right] \left[ \begin{array}{l}{X} \\ {Y} \\ {0} \\ {1}\end{array}\right]=\mathbf{A} \left[ \begin{array}{lll}{\mathbf{r}_{1}} & {\mathbf{r}_{2}} & {\mathbf{t}}\end{array}\right] \left[ \begin{array}{l}{X} \\ {Y} \\ {1}\end{array}\right] s⎣⎡​uv1​⎦⎤​=A[r1​​r2​​r3​​t​]⎣⎢⎢⎡​XY01​⎦⎥⎥⎤​=A[r1​​r2​​t​]⎣⎡​XY1​⎦⎤​
通过滥用符号,我们仍然使用
MM M
表示一个点在模板的平面,但是
M=[X,Y]T\mathrm{M}=[X, Y]^{T} M=[X,Y]T
由于
ZZ Z
一直等于0。

反过来,
M~=[X,Y,1]T\widetilde{\mathrm{M}}=[X, Y, 1]^{T} M=[X,Y,1]T
。因此,模板上的点 M 与其图像上的点m 通过单应性矩阵H:
sm~=HM~with H=A[r1r2t]s \widetilde{\mathbf{m}}=\mathbf{H} \tilde{\mathrm{M}} \quad \text { with } \quad \mathbf{H}=\mathbf{A}\left[\mathbf{r}_{1} \quad \mathbf{r}_{2} \quad \mathbf{t}\right] sm=HM~ with H=A[r1​r2​t]
很明显,3x3 矩阵定义为比例因子。

2.3 对内在参数的约束

给定模型平面的图像,可以估计单应性(参见附录A)。我们用它来表示。我们用
H=[h1h2h3]\mathbf{H}=\left[ \begin{array}{lll}{\mathbf{h}_{1}} & {\mathbf{h}_{2}} & {\mathbf{\mathbf{h}_{3}}}\end{array}\right] H=[h1​​h2​​h3​​]
表示。从(2),我们有:
[h1h2h3]=λA[r1r2t]\left[ \begin{array}{lll}{\mathbf{h}_{1}} & {\mathbf{h}_{2}} & {\mathbf{h}_{3}}\end{array}\right]=\lambda \mathbf{A} \left[ \begin{array}{lll}{\mathbf{r}_{1}} & {\mathbf{r}_{2}} & {\mathbf{t}}\end{array}\right] [h1​​h2​​h3​​]=λA[r1​​r2​​t​]
其中λ 是任意标量。使用
r1\mathbf{r}_{1} r1​

r2\mathbf{r}_{2} r2​
正交的知识。我们有:
h1TA−TA−1h2=0\mathbf{h}_{1}^{T} \mathbf{A}^{-T} \mathbf{A}^{-1} \mathbf{h}_{2}=0 h1T​A−TA−1h2​=0

h1TA−TA−1h1=h2TA−TA−1h2\mathbf{h}_{1}^{T} \mathbf{A}^{-T} \mathbf{A}^{-1} \mathbf{h}_{1}=\mathbf{h}_{2}^{T} \mathbf{A}^{-T} \mathbf{A}^{-1} \mathbf{h}_{2} h1T​A−TA−1h1​=h2T​A−TA−1h2​

给定一个单应矩阵,这些是内在参数的两个基本约束。由于单应性具有8个自由度,并且6个外在参数(3个用于旋转,3个用于平移),我们只能获得两个内在参数约束。

3.解决相机校准问题

本节提供了如何有效解决相机校准问题的详细信息。我们从分析解决方案开始,然后基于最大似然准则的非线性优化技术。最后,我们考虑到镜头失真,提供分析和非线性解决方案。

3.1 封闭式解决方案

B=A−TA−1≡[B11B12B13B12B22B23B13B23B33]\mathbf{B}=\mathbf{A}^{-T} \mathbf{A}^{-1} \equiv \left[ \begin{array}{lll}{B_{11}} & {B_{12}} & {B_{13}} \\ {B_{12}} & {B_{22}} & {B_{23}} \\ {B_{13}} & {B_{23}} & {B_{33}}\end{array}\right] B=A−TA−1≡⎣⎡​B11​B12​B13​​B12​B22​B23​​B13​B23​B33​​⎦⎤​

=[1α2−cα2βcv0−u0βα2β−cα2βc2α2β2+1β2−c(cv0−u0β)α2β−v0β2cv0−u0βα2β−c(cv0−u0β)α2β2−v0β2(cv0−u0β)2α2β2+v02β2+1]=\left[ \begin{array}{ccc}{\frac{1}{\alpha^{2}}} & {-\frac{c}{\alpha^{2} \beta}} & {\frac{c v_{0}-u_{0} \beta}{\alpha^{2} \beta}} \\ {-\frac{c}{\alpha^{2} \beta}} & {\frac{c^{2}}{\alpha^{2} \beta^{2}}+\frac{1}{\beta^{2}}} & {-\frac{c\left(c v_{0}-u_{0} \beta\right)}{\alpha^{2} \beta}-\frac{v_{0}}{\beta^{2}}} \\ {\frac{c v_{0}-u_{0} \beta}{\alpha^{2} \beta}} & {-\frac{c\left(c v_{0}-u_{0} \beta\right)}{\alpha^{2} \beta^{2}}-\frac{v_{0}}{\beta^{2}}} & {\frac{\left(c v_{0}-u_{0} \beta\right)^{2}}{\alpha^{2} \beta^{2}}+\frac{v_{0}^{2}}{\beta^{2}}+1}\end{array}\right] =⎣⎢⎡​α21​−α2βc​α2βcv0​−u0​β​​−α2βc​α2β2c2​+β21​−α2β2c(cv0​−u0​β)​−β2v0​​​α2βcv0​−u0​β​−α2βc(cv0​−u0​β)​−β2v0​​α2β2(cv0​−u0​β)2​+β2v02​​+1​⎦⎥⎤​

注意,B是对称的,由6D向量定义
b=[B11,B12,B22,B13,B23,B33]T\mathbf{b}=\left[B_{11}, B_{12}, B_{22}, B_{13}, B_{23}, B_{33}\right]^{T} b=[B11​,B12​,B22​,B13​,B23​,B33​]T
(它实际上描述了绝对圆锥曲线的图像。)让 H 的第
ithi^{\mathrm{th}} ith
列向量为:
hi=[hi1,hi2,hi3]T\mathbf{h}_{i}=\left[h_{i 1}, h_{i 2}, h_{i 3}\right]^{T} hi​=[hi1​,hi2​,hi3​]T
。然后,我们有
hiTBhj=vijTb\mathbf{h}_{i}^{T} \mathbf{B h}_{j}=\mathbf{v}_{i j}^{T} \mathbf{b} hiT​Bhj​=vijT​b
其中,
vij=[hi1hj1,hi1hj2+hi2hj1,hi2hj2hi3hj1+hi1hj3,hi3hj2+hi2hj3,hi3hj3]T\begin{array}{c}{\mathbf{v}_{i j}=\left[h_{i 1} h_{j 1}, h_{i 1} h_{j 2}+h_{i 2} h_{j 1}, h_{i 2} h_{j 2}\right.} \\ {h_{i 3} h_{j 1}+h_{i 1} h_{j 3}, h_{i 3} h_{j 2}+h_{i 2} h_{j 3}, h_{i 3} h_{j 3} ]^{T}}\end{array} vij​=[hi1​hj1​,hi1​hj2​+hi2​hj1​,hi2​hj2​hi3​hj1​+hi1​hj3​,hi3​hj2​+hi2​hj3​,hi3​hj3​]T​
因此,来自给定单应性的两个基本约束(3)和(4)可以被重写为b中2个齐次方程:
[v12T(v11−v22)T]b=0\left[ \begin{array}{c}{\mathbf{v}_{12}^{T}} \\ {\left(\mathbf{v}_{11}-\mathbf{v}_{22}\right)^{T}}\end{array}\right] \mathbf{b}=\mathbf{0} [v12T​(v11​−v22​)T​]b=0
如果观察到模型平面的n个图像,则通过堆叠n个这样的等式(8)我们得到,
Vb=0\mathbf{V b}=\mathbf{0} Vb=0
V
2n×62 n \times 6 2n×6
矩阵。如果n>3,我们通常会有一个独特的解决方案,最多可以达到比例因子。如果n=2,我可以施加无偏约束
c=0c=0 c=0
,即,
[0,1,0,0,0,0]b=0[0,1,0,0,0,0] \mathbf{b}=0 [0,1,0,0,0,0]b=0
,它作为附加等式添加到(9)。(9)的解是众所周知的与最小特征值相关的
VTV\mathbf{V}^{T} \mathbf{V} VTV
的特征向量(等效地,与最小奇异值相关的值V的右奇异向量)。

一旦b 被估计以后,我们可以计算相机内在矩阵A。有关详细信息,请参阅附录B

一旦知道A,就可以很容易地计算每个图像的外部参数。从(2)开始,我们有
r1=λA−1h1,r2=λA−1h2,r3=r1×r2,t=λA−1h3\mathbf{r}_{1}=\lambda \mathbf{A}^{-1} \mathbf{h}_{1}, \mathbf{r}_{2}=\lambda \mathbf{A}^{-1} \mathbf{h}_{2}, \mathbf{r}_{3}=\mathbf{r}_{1} \times \mathbf{r}_{2}, \mathbf{t}=\lambda \mathbf{A}^{-1} \mathbf{h}_{3} r1​=λA−1h1​,r2​=λA−1h2​,r3​=r1​×r2​,t=λA−1h3​
其中,
λ=1/∥A−1h1∥=1/∥A−1h2∥\lambda=1 /\left\|\mathbf{A}^{-1} \mathbf{h}_{1}\right\|=1 /\left\|\mathbf{A}^{-1} \mathbf{h}_{2}\right\| λ=1/∥∥​A−1h1​∥∥​=1/∥∥​A−1h2​∥∥​
。当然,由于数据中的噪声,如此计算的矩阵
R=[r1,r2,r3]\mathbf{R}=\left[\mathbf{r}_{1}, \mathbf{r}_{2}, \mathbf{r}_{3}\right] R=[r1​,r2​,r3​]
通过不满足旋转矩阵的属性。附录C 描述了一个从3x3矩阵估计最佳旋转矩阵的方法。

3.2 最大似然估计

通过最小化在物理上没有意义的代数距离来获得上述解决方案。我们可以通过最大似然推断来重新定义它。

我们给出n个模型平面图像,模型平面上有m个点。假设图像点被独立且相同分布的噪声破坏。通过最小化以下函数可以获得最大似然估计:
∑i=1n∑j=1m∥mij−m^(A,Ri,ti,Mj)∥2\sum_{i=1}^{n} \sum_{j=1}^{m}\left\|\mathbf{m}_{i j}-\hat{\mathbf{m}}\left(\mathbf{A}, \mathbf{R}_{i}, \mathbf{t}_{i}, \mathrm{M}_{j}\right)\right\|^{2} i=1∑n​j=1∑m​∥mij​−m^(A,Ri​,ti​,Mj​)∥2
其中,
m^(A,Ri,ti,Mj)\hat{\mathbf{m}}\left(\mathbf{A}, \mathbf{R}_{i}, \mathbf{t}_{i}, \mathrm{M}_{j}\right) m^(A,Ri​,ti​,Mj​)
是图像i中点
Mj\mathrm{M}_{j} Mj​
的投影,根据等式(2)。旋转矩阵
R\mathbf{R} R
有3个参数的矢量参数化,由r表示,其平行于旋转轴并且其幅度等于旋转角度。
R\mathbf{R} R

r\mathbf{r} r
与Rodriguez公式有关【5】。最小化(10)是一个非线性最小化问题,它是用Minpack【16】中实现的Levenberg-Marquardt算法求解的。它需要初始猜测A
{Ri,ti∣i=1..n}\left\{\mathbf{R}_{i}, \mathbf{t}_{i} | i=1 . . n\right\} {Ri​,ti​∣i=1..n}
,这可以使用前一小节中描述的技术获得。

3.3 处理径向扭曲

到目前为止,我们还没有考虑相机的镜头失真。然而,台式相机通常表现出明显的镜头失真,尤其是径向失真。在本节中,我们仅考虑径向畸变的钱两个术语。有关详细的模型,读者可以参考【17,2,4,23】。根据文献【2,20,22】中的报告,失真函数很可能完全由径向分量支配,尤其由第一项主导。还发现,任何更精细的建模不仅没有帮助(与传感器量化相比可忽略不计),而且还会导致数值不稳定【20,22】。

让(u,v)成为理想的(不可观察的失真)像素图像坐标,以及
(u˘,v˘)(\breve{u}, \breve{v}) (u˘,v˘)
对应的实际观察图像坐标。同样,
(x,y)(x, y) (x,y)

(x˘,y˘)(\breve{x}, \breve{y}) (x˘,y˘​)
是理想(无失真)和实际(失真)标准化图像坐标。我们有【2,22】
x˘=x+x[k1(x2+y2)+k2(x2+y2)2]\breve{x}=x+x\left[k_{1}\left(x^{2}+y^{2}\right)+k_{2}\left(x^{2}+y^{2}\right)^{2}\right] x˘=x+x[k1​(x2+y2)+k2​(x2+y2)2]

y˘=y+y[k1(x2+y2)+k2(x2+y2)2]\breve{y}=y+y\left[k_{1}\left(x^{2}+y^{2}\right)+k_{2}\left(x^{2}+y^{2}\right)^{2}\right] y˘​=y+y[k1​(x2+y2)+k2​(x2+y2)2]

其中
k1k_{1} k1​

k2k_{2} k2​
是径向失真的系数。径向畸变的中心与主点相同。从
u˘=u0+αx˘+cy˘\breve{u}=u_{0}+\alpha \breve{x}+c \breve{y} u˘=u0​+αx˘+cy˘​

v˘=v0+βy˘\breve{v}=v_{0}+\beta \breve{y} v˘=v0​+βy˘​
,我们有
u˘=u+(u−u0)[k1(x2+y2)+k2(x2+y2)2]\breve{u}=u+\left(u-u_{0}\right)\left[k_{1}\left(x^{2}+y^{2}\right)+k_{2}\left(x^{2}+y^{2}\right)^{2}\right] u˘=u+(u−u0​)[k1​(x2+y2)+k2​(x2+y2)2]

v˘=v+(v−v0)[k1(x2+y2)+k2(x2+y2)2]\breve{v}=v+\left(v-v_{0}\right)\left[k_{1}\left(x^{2}+y^{2}\right)+k_{2}\left(x^{2}+y^{2}\right)^{2}\right] v˘=v+(v−v0​)[k1​(x2+y2)+k2​(x2+y2)2]

通过交替估计径向畸变。 由于径向失真预计很小,人们可以期望使用 Sect.3.2中描述的技术估计其他五个内在参数,通过简单地忽略失真来合理完成。然后一种策略是在估计其他参数之后估计
k1k_{1} k1​

k2k_{2} k2​
。然后从(11)和(12),我们为每个图像中每个点由两个方程:
[(u−u0)(x2+y2)(u−u0)(x2+y2)2(v−v0)(x2+y2)(v−v0)(x2+y2)2][k1k2]=[u˘−uv˘−v]\left[ \begin{array}{c}{\left(u-u_{0}\right)\left(x^{2}+y^{2}\right)} & {\left(u-u_{0}\right)\left(x^{2}+y^{2}\right)^{2}} \\ {\left(v-v_{0}\right)\left(x^{2}+y^{2}\right)} & {\left(v-v_{0}\right)\left(x^{2}+y^{2}\right)^{2}}\end{array}\right] \left[ \begin{array}{l}{k_{1}} \\ {k_{2}}\end{array}\right]=\left[ \begin{array}{c}{\breve{u}-u} \\ {\breve{v}-v}\end{array}\right] [(u−u0​)(x2+y2)(v−v0​)(x2+y2)​(u−u0​)(x2+y2)2(v−v0​)(x2+y2)2​][k1​k2​​]=[u˘−uv˘−v​]
给定n个图像中m个点,我们可以将所有方程组合在一起以获得总2mn方程,或者以矩阵形式获得
Dk=d\mathbf{D} \mathbf{k}=\mathbf{d} Dk=d
,其中
k=[k1,k2]T\mathbf{k}=\left[k_{1}, k_{2}\right]^{T} k=[k1​,k2​]T
。线性最小二乘解由下式给出
k=(DTD)−1DTd\mathbf{k}=\left(\mathbf{D}^{T} \mathbf{D}\right)^{-1} \mathbf{D}^{T} \mathbf{d} k=(DTD)−1DTd
一旦估算出
k1k_{1} k1​

k2k_{2} k2​
,就可以通过用(11)和(12)代替
m^(A,Ri,ti,Mj)\hat{\mathbf{m}}\left(\mathbf{A}, \mathbf{R}_{i}, \mathbf{t}_{i}, \mathbf{M}_{j}\right) m^(A,Ri​,ti​,Mj​)
求解(10)来重新确定其他参数的估计值。我们可以将这两个程序交替使用直到收敛。

完全极大似然估计 实验上,我们发现上述交替技术的收敛速度很慢。然后,(10)的自然扩展是通过最小化一下函数来估计完整的参数集:
∑i=1n∑j=1m∥mij−m˘(A,k1,k2,Ri,ti,Mj)∥2\sum_{i=1}^{n} \sum_{j=1}^{m}\left\|\mathbf{m}_{i j}-\breve{\mathbf{m}}\left(\mathbf{A}, k_{1}, k_{2}, \mathbf{R}_{i}, \mathbf{t}_{i}, \mathbf{M}_{j}\right)\right\|^{2} i=1∑n​j=1∑m​∥mij​−m˘(A,k1​,k2​,Ri​,ti​,Mj​)∥2
其中,
m˘(A,k1,k2,Ri,ti,Mj)\breve{\mathbf{m}}\left(\mathbf{A}, k 1, k 2, \mathbf{R}_{i}, \mathbf{t}_{i}, \mathrm{M}_{j}\right) m˘(A,k1,k2,Ri​,ti​,Mj​)
是根据等式(2)在图像i中的
Mj\mathrm{M}_{j} Mj​
的投影,随后是根据(11)和(12)的失真。这是一个非线性最小化问题,它是用Minpack【16】中实现的Levenberg-Marquardt算法求解的。旋转再次由3向量r参数化,如Sec.3.2 所示。可以使用Sect中描述的技术获得
AA A

{Ri,ti∣i=1…n}\left\{\mathbf{R}_{i}, \mathbf{t}_{i} | i=1 \dots n\right\} {Ri​,ti​∣i=1…n}
的初始化猜测。在Sect.3.1 和 Sect.3.2中。可以使用上一段中描述的技术获得
k1k_{1} k1​

k2k_{2} k2​
的初始猜想,后者只需将他们设置为0即可。

3.4 摘要

推荐的校准程序如下:

  1. 打印图案并将其粘贴到平面上
  2. 通过移动平面或相机拍摄不同方向的模型平面的一些图像;
  3. 检测图像中的特征点;
  4. 使用如Sect.3.1 中所描述封闭形式解决估计五个内在参数和所有外部参数。
  5. 通过求解线性最小二乘法估计径向畸变的系数(13);
  6. 通过最小化(14)重新确定所有参数。

4.退出配置

我们在本节中研究了附加图片不会对相机内部参数提供更多约束的配置。因为(3)和(4)是从旋转矩阵的属性导出的,如果
R2\mathbf{R}_{2} R2​
不独立于
R1\mathbf{R}_{1} R1​
,则图像2不提供额外的约束。热别是,如果平面经过单纯的平移,那么
R2=R1\mathbf{R}_{2}=\mathbf{R}_{1} R2​=R1​
和图像2对于相机校准没有帮助。在下文中,我们会考虑更复杂的配置。

命题1. 如果第二个位置的模型平面和其第一个位置平行,那么第二单应性矩阵不提供额外的约束。

图1:误差与图像点的噪声水平

由于空间限制,证据被省略,从我们的技术报告[24]获得。在实践中,很容易避免退化配置:我们只需要将模型平面的方向从一个快照更改为另一个快照。

5. 实验结果

所提出的算法已经在计算机模拟数据和实际数据进行测试。封闭形式的解决方案涉及发现一个小的
2n×62 n \times 6 2n×6
矩阵的奇异值分解,其中n是图像的数量。Levenberg-Marquardt算法中的非线性修正需要3到5次迭代才能收敛。

5.1 计算机模拟

模拟摄像机具有以下属性:
α=1250\alpha=1250 α=1250

β=900\beta=900 β=900

c=1.09083c=1.09083 c=1.09083

相当于89.95°,
u0=255u_{0}= 255 u0​=255

v0=255v_{0}=255 v0​=255

。图像分辨率为
512×512512 \times 512 512×512
。模型平面包含了
10×14=14010 \times 14=140 10×14=140
角点的检查器模式(因此我们通常v方向的数据多余u方向的数据。图案尺寸为
18cm×25cm18 \mathrm{cm} \times 25 \mathrm{cm} 18cm×25cm
。平面方向由3D 矢量
r\mathbf{r} r
表示,其平行于旋转轴并且其大小等于旋转角度。其位置由3D 矢量t(以厘米为单位)表示。

表现w.r.t噪声水平。 在本实验中,我们使用了
r1=[20∘,0,0]T\mathbf{r}_{1}=\left[20^{\circ}, 0,0\right]^{T} r1​=[20∘,0,0]T

t1=[−9,−12.5,500]T\mathbf{t}_{1}=[-9,-12.5,500]^{T} t1​=[−9,−12.5,500]T

r2=[0,20∘,0]T\mathbf{r}_{2}=\left[0,20^{\circ}, 0\right]^{T} r2​=[0,20∘,0]T

t2=⌈−9.−12.5.510]T\mathbf{t}_{2}=\lceil- 9 .-12.5 .510]^{T} t2​=⌈−9.−12.5.510]T

r3=15[−30∘,−30∘,−15∘]T\mathbf{r}_{3}=\frac{1}{\sqrt{5}}\left[-30^{\circ},-30^{\circ},-15^{\circ}\right]^{T} r3​=5​1​[−30∘,−30∘,−15∘]T

t3=⌈−10.5.−12.5.525]T\mathbf{t}_{3}=\lceil- 10.5 .-12.5 .525]^{T} t3​=⌈−10.5.−12.5.525]T

三个平面。将具有0均值和
σ\sigma σ
标准差的高斯噪声添加到投影图像点。然后将估计的相机参数和基础事实作比较。我们测量
α\alpha α

β\beta β
的相对误差,以及
u0u_{0} u0​

v0v_{0} v0​
的绝对误差。我们将噪声级别从0.1像素改为1.5像素。对于每个噪声级别,我们执行100次独立实验,显示的结果是平均值。从图1中可以看出,误差随着噪声水平线性增加。(c的错误未显示,但是具有相同的属性。)对于
σ=0.5\sigma=0.5 σ=0.5
(大于实际校准的噪声水平),
α\alpha α

β\beta β
的误差小于0.3%,
u0u_{0} u0​

v0v_{0} v0​
中的误差约为1像素。
u0u_{0} u0​
中的错误大于
v0v_{0} v0​
中的错误。主要原因是
uu u
方向上的数据少于
vv v
方向的数据,正如我们之前说的那样。

w.r.t平面数量的表现。 该实验研究了关于平面数量的性能(更确切地说,模型平面的图像数量)。前三个图像的模型平面的方向和位置与最后一个部分相同。从第四张图像开始,我们首先在一个均匀的球体中随机选择一个旋转轴,然后应用于30°的旋转角度。我们将图像的数量从2到16改变。对于每一个数字,进行100次独立平面取向的实验(除了前三次)和具有平均值0和标注差0.5像素的独立噪声。平均结果如图2所示。使用更多图像误差减少。从2到3,误差显著减少。

w.r.t平面方向的表现。 该实验检查模型平面相对于图像平面的方向的影响。使用三个图像。平面的方向选择如下:平面最初平行于图像平面:从均匀球体中随机选择旋转轴;然后,该平面围绕该旋转轴角度
θ\theta θ
。将平均值为0且标准差为0.5像素的高斯噪声添加到投影图像点。我们重复此过程100次并计算平均误差。角度
θ\theta θ
从5°到75°不等,结果如图3所示。当
θ=5°\theta = 5° θ=5°
时,40%的试验失败,因为所有的平面几乎彼此平面(退出配置),并且显示的结果排除了那些试验。在45°左右的角度似乎可以获得最佳性能。请注意,在实践中,当角度增加时,缩短使得角点检测不太精确,单本试验中不考虑这一点。

5.2 真实数据

现在,我们的视觉组和图形中经常使用所提出的技术。在这里,我们通过一个例子总结结果。

【图5】矫正径向畸变后的第一和第二张图像

要校准的相机是现成的PULNiX CCD相机,配有6 mm镜头。图像分辨率为
640×480640 \times 480 640×480
.模型平面包括 8 x 8 正方形的图案,因此有256个角。图案的尺寸为
17cm×17cm17 \mathrm{cm} \times 17 \mathrm{cm} 17cm×17cm
。拍摄了不同方向下的平面的五个图像,如图4所示。我们可以在图像中观察到显著的镜头失真。角被检测为连接到每个方格的直线的交点。

我们将校准算法应用于第一个2,3,4和所有5个图像。结果如表1所示。对于每种配置,给出三列。第一列(初始)是封闭式解的估计。第二列(最终)是最大似然估计(MLE),第三列(
σ\sigma σ
)是估计的标准偏差,表示最终结果的不确定性。很明显,封闭形式的解决方案是合理的,无论我们使用2,3,4或者5个图像,最终的估计都是非常一致的。我们还注意到,最终估计的不确定性随着图像的数量而减少。由RMS指示的表1的最后一行显示检测到的图像点和投影图像点之间的均方距离的根(以像素为单位)。MLE大大改善了这一措施。

细心的读者可能会注意到封闭形式解决方案与MLE之间的
k1k_{1} k1​

k2k_{2} k2​
的不一致性。原因在于,对于封闭形式的解决方案,假设没有失真来估计相机固有参数,并且预测的外部点比检测到的外部点更靠近图像中心。随后的失真估计尝试扩展外部点并增加比例以减少距离,尽管失真形状(具有正
k1k_{1} k1​
,称为枕形失真)与实际失真不对应(具有负
k1k_{1} k1​
,称之为桶形失真)。非线性校正(MLE)最终恢复正确的失真形状。估计的失真参数允许我们校正原始图像中的失真。图5显示了前两个这样的失真校正图像,这样图像应与图4中所示的前两个图像进行比较。我们清楚地看到原始图像中的曲线图案是直的。

校准结果的变化。 在表1中,我们已经显示了2到5个图像的校准结果,并且我们发现结果彼此非常一致。为了进一步研究所提出的算法的稳定性,我们将其应用于来自可用的5个图像的4个图像的所有组合。结果显示在表2中,其中第三列(1235)例如显示具有第一,第二,第三和第五图像的四倍的结果。最后两列显示五组结果的平均值和样本偏差。所有参数的样本偏差都非常小,这意味着所提出的算法非常稳定。偏差参数c的值从0开始并不重要,因为变异系数
0.086/0.1401=0.60.086 / 0.1401=0.6 0.086/0.1401=0.6
很大。实际上,对于两个图像轴之间的角度,
c=0.1401c=0.1401 c=0.1401

α=832.85\alpha=832.85 α=832.85
对应的是89.99度,非常接近90度。我们还计算了每个四倍的宽搞比
α/β\alpha / \beta α/β
。纵横比的平均值等于0.99995,样本偏差为0.00012。因此它非常接近1,即像素是方形的。

应用基于图像的建模。 通过与上面用于校准的相同的相机拍摄茶叶的两个图像(参见图6)。主要是两面可见。我们在每一侧手动挑选8个匹配点,我们之前开发的结构运动软件在这16个点匹配上运行,以构建茶叶罐的部分模型。重建的模型是VRML,三个渲染的视图如图7所示。每侧的重建点确实是共面的,我们计算了两个重建平面之间的角度,即94.7°。虽然我们没有基本的道理,但茶叶的两面确实几乎是相互正交的。

所有真实的数据和结果以及软件都可以从以下网站获得:

http://research.microsoft.com/˜zhang/Calib/

6.结论

在本文中,我们开发了了一种新的灵活技术,可以轻松的标定相机。该技术仅需要从几个(至少两个)不同的方向观察图案平面图案。我们可以移动相机或平面图案。动议不需要知道。对径向透镜畸变进行建模。建议的程序包括一个封闭形式的解决方案,然后是基于最大似然准则的非线性改造。计算机模拟和实际数据都已经用于测试所提出的技术,并且已经获得了非常好的结果。与使用诸如两个或者三个正交平面的昂贵设备的传统技术相比,所提出的技术获得了相当大的灵活性。

确认。 感谢Brian Guenter在软件方面关于角点的提取,以及Bill Triggs的深刻见解。感谢Andrew Zisserman从他的CVPR98工作[13]引起我的注意,它使用相同的约束,但是形式不同。感谢Bill Triggs和Gideon Stein简易模型不精确的实验,可以在技术报告中找到【24】。Anana和Charles Loop检查了早期的英文版本。

A.模型平面与其图像之间的同位素估计

有许多方法可以估计模型平面与其图像之间的单应性。在这里,我们提出了一种基于最大似然准则的技术。让
Mi\mathrm{M}_{i} Mi​

mi\mathbf{m}_{i} mi​
分别成为模型和图像点。理想情况下,他们应该满足(2)。在实践中,它们不会因为提取的图像点中的噪声。假设被高斯噪声破坏,均值为0,协方差矩阵为
Λmi\Lambda_{\mathrm{m}_{i}} Λmi​​
。然后,通过最小化以下函数来获得H的最大似然估计。
∑i(mi−m^i)TΛmi−1(mi−m^i)\sum_{i}\left(\mathbf{m}_{i}-\hat{\mathbf{m}}_{i}\right)^{T} \Lambda_{\mathbf{m}_{i}}^{-1}\left(\mathbf{m}_{i}-\hat{\mathbf{m}}_{i}\right) i∑​(mi​−m^i​)TΛmi​−1​(mi​−m^i​)

m^i=1h‾3TMi[h1TMih‾2TMi]with h‾i,the ith row of H\hat{\mathbf{m}}_{i}=\frac{1}{\overline{\mathbf{h}}_{3}^{T} \mathbf{M}_{i}} \left[ \begin{array}{c}{\mathbf{h}_{1}^{T} \mathbf{M}_{i}} \\ {\overline{\mathbf{h}}_{2}^{T} \mathbf{M}_{i}}\end{array}\right] \quad \text { with } \overline{\mathbf{h}}_{i}, \text { the } i^{\text { th }} \text { row of } \mathbf{H} m^i​=h3T​Mi​1​[h1T​Mi​h2T​Mi​​] with hi​, the i th  row of H

在实践中,我们简单地假设
Λmi=σ2I\Lambda_{\mathrm{m}_{i}}=\sigma^{2} \mathrm{I} Λmi​​=σ2I
适用于所有的的i。如果使用相同的程序独立提取点,这是合理的。在这种情况下,上述问题是非线性最小二乘法,即
min⁡H∑i∥mi−m^i∥2\min _{\mathbf{H}} \sum_{i}\left\|\mathbf{m}_{i}-\hat{\mathbf{m}}_{i}\right\|^{2} Hmin​i∑​∥mi​−m^i​∥2
。使用levenberg-marquardt算法进行非线性最小化,如Minpack【16】中所实现的。这需要初始猜想,可以如下获得。


x=[h‾1T,h‾2T,h‾3T]T\mathbf{x}=\left[\overline{\mathbf{h}}_{1}^{T}, \overline{\mathbf{h}}_{2}^{T}, \overline{\mathbf{h}}_{3}^{T}\right]^{T} x=[h1T​,h2T​,h3T​]T
然后可以将等式(2)重写为
[M~T0T−uM~T0TM~T−M~T]x=0\left[ \begin{array}{ccc}{\widetilde{\mathrm{M}}^{T}} & {\mathbf{0}^{T}} & {-u \tilde{\mathrm{M}}^{T}} \\ {\mathbf{0}^{T}} & {\widetilde{\mathrm{M}}^{T}} & {-\widetilde{\mathrm{M}}^{T}}\end{array}\right] \mathbf{x}=\mathbf{0} [MT0T​0TMT​−uM~T−MT​]x=0
当我们给出n个点时,我们由上面的n个方程,它们可以用矩阵方程写成
Lx=0\mathbf{L x}=\mathbf{0} Lx=0
,其中
L\mathbf{L} L
是一个
2n×92 n \times 9 2n×9
矩阵。由于
X\mathbf{X} X
被定义为比例因子,众所周知,该解是与最小奇异值相关联的L的右奇异向量(或者等效地,与最小特征值相关联的
LTL\mathbf{L}^{T} \mathbf{L} LTL
的特征向量)。


L\mathbf{L} L
中,有一些元素是常数1,一些是像素,一些事世界坐标,有些是两者的乘法。这使得数字上的L 条件很差。在运行上述过程之前,通过执行简单的数据归一化,例如【11】中提出的数据归一化,可以获得更好的结果。

B.从矩阵B中提取内在参数

矩阵B,所Sect.3.1中所述,直到比例因子,即
B=λA−TA\mathbf{B}=\lambda \mathbf{A}^{-T} \mathbf{A} B=λA−TA
,其中
λ\lambda λ
为任意比例。没有从矩阵B 中唯一地提取内在参数。
v0=(B12B13−B11B23)/(B11B22−B122)λ=B33−[B132+v0(B12B13−B11B23)]/B11α=λ/B11β=λB11/(B11B22−B122)c=−B12α2β/λu0=cv0/α−B13α2/λ\begin{aligned} v_{0} &=\left(B_{12} B_{13}-B_{11} B_{23}\right) /\left(B_{11} B_{22}-B_{12}^{2}\right) \\ \lambda &=B_{33}-\left[B_{13}^{2}+v_{0}\left(B_{12} B_{13}-B_{11} B_{23}\right)\right] / B_{11} \\ \alpha &=\sqrt{\lambda / B_{11}} \\ \beta &=\sqrt{\lambda B_{11} /\left(B_{11} B_{22}-B_{12}^{2}\right)} \\ c &=-B_{12} \alpha^{2} \beta / \lambda \\ u_{0} &=c v_{0} / \alpha-B_{13} \alpha^{2} / \lambda \end{aligned} v0​λαβcu0​​=(B12​B13​−B11​B23​)/(B11​B22​−B122​)=B33​−[B132​+v0​(B12​B13​−B11​B23​)]/B11​=λ/B11​​=λB11​/(B11​B22​−B122​)​=−B12​α2β/λ=cv0​/α−B13​α2/λ​

C.通过旋转矩阵逼近3x3矩阵

本节考虑的问题是求解最佳旋转矩阵
R\mathbf{R} R
以逼近给定的3X3矩阵
Q\mathbf{Q} Q
在这里,“最佳”是
R−Q\mathbf{R}-\mathbf{Q} R−Q
中最小的Frobenius规范。解决方案可以在我们的技术报告[24]中找到。

参考

【1】S. Bougnoux. From projective to euclidean space under any practical situation, a criticism of self-calibration. In Proc. 6th International Conference on Computer Vision, pages 790–796, Jan. 1998.【翻译】S. Bougnoux。 从任何实际情况下的投射空间到欧几里德空间,批评自我校准。 在Proc。 第六届计算机视觉国际会议,第790-796页,1998年1月。

【2】D. C. Brown. Close-range camera calibration. Photogrammetric Engineering, 37(8):855–866, 1971. 【翻译】近距离相机校准。 摄影测量工程,37(8):855-866,1971。

【3】B. Caprile and V. Torre. Using Vanishing Points for Camera Calibration. The International Journal of Computer Vision, 4(2):127–140, Mar. 1990.【翻译】B. Caprile和V. Torre。使用消失点进行相机校准。国际计算机视觉杂志,4(2):127 - 140,1990年3月。

【4】W. Faig. Calibration of close-range photogrammetry systems: Mathematical formulation. Photogrammetric Engineering and Remote Sensing, 41(12):1479–1486, 1975. 【翻译】近景摄影测量系统的校准:数学公式。 摄影测量工程和遥感。

【5】O. Faugeras. Three-Dimensional Computer Vision: a Geometric Viewpoint. MIT Press, 1993. 【翻译】O. Faugeras。 三维计算机视觉:几何观点。 MIT出版社,1993年。

【6】O. Faugeras, T. Luong, and S. Maybank. Camera selfcalibration: theory and experiments. In Proc. 2nd ECCV, pages 321–334, May 1992.【翻译】O. Faugeras,T。Luong和S. Maybank。 相机自校准:理论和实验。 在Proc。 第二届ECCV,第321-334页,1992年5月。

【7】O. Faugeras and G. Toscani. The calibration problem for stereo. In Proc. IEEE Conference on Computer Vision and Pattern Recognition, pages 15–20, Miami Beach, FL, June 1986.【翻译】关于双目校验的问题。在Proc。 IEEE计算机视觉和模式识别会议,第15-20页,佛罗里达州迈阿密海滩,1986年6月。

【8】S. Ganapathy. Decomposition of transformation matrices for robot vision. Pattern Recognition Letters, 2:401–412, Dec. 1984. 【翻译】S. Ganapathy。 机器人视觉变换矩阵的分解。 模式识别快报,2:401 - 412,1984年12月。

【9】D. Gennery. Stereo-camera calibration. In Proc. 10th Image Understanding Workshop, pages 101–108,1979.【翻译】D. Gennery。 立体相机校准。 在Proc。 第10届图像理解研讨会,第101-108,1979页。

【10】 R. Hartley. Self-calibration from multiple views with a rotating camera. In Proc. 3rd European Conference on Computer Vision, pages 471–478, Stockholm, Sweden, May 1994.【翻译】[R.哈特利。使用旋转摄像头从多个视图进行自我校准。在Proc。第三届欧洲计算机视觉会议,第471-478页,瑞典斯德哥尔摩,1994年5月。

【11】 R. Hartley. In defence of the 8-point algorithm. In Proc. 5th International Conference on Computer Vision, pages 1064–1070, Boston, MA, June 1995.【翻译】。R.哈特利。在防御8点算法。在Proc。第五届计算机视觉国际会议,第1064-1070页,马萨诸塞州波士顿,1995年6月

【12】R. I. Hartley. An algorithm for self calibration from several views. In Proc. IEEE Conference on Computer Vision and Pattern Recognition, pages 908–912, Seattle, WA, June 1994.【翻译】R. I. Hartley。 一种从多个视图进行自校准的算法。 在Proc。 IEEE计算机视觉和模式识别会议,第908-912页,西雅图,华盛顿州,1994年6月。

【13】D. Liebowitz and A. Zisserman. Metric rectification for perspective images of planes. In Proc. IEEE Conference on Computer Vision and Pattern Recognition, pages 482–488, Santa Barbara, California, June 1998.【翻译】D. Liebowitz和A. Zisserman。平面透视图像的度量整理。在Proc。 IEEE计算机视觉和模式识别会议,第482-488页,加利福尼亚州圣巴巴拉,1998年6月。

【14】 Q.-T. Luong and O. Faugeras. Self-calibration of a moving camera from point correspondences and fundamental matrices. The International Journal of Computer Vision, 22(3):261–289, 1997.【翻译】Q.-T. Luong和O. Faugeras。 从点对应和基本矩阵自动校准移动摄像机。 国际计算机视觉杂志,22(3):261-289,1997。

【15】S. J. Maybank and O. D. Faugeras. A theory of selfcalibration of a moving camera. The International Journal of Computer Vision, 8(2):123–152, Aug. 1992。【翻译】S. J. Maybank和O. D. Faugeras。 移动摄像机的自校准理论。 国际计算机视觉杂志,8(2):123 - 152,1992年8月

【16】 J. More. The levenberg-marquardt algorithm, implementation and theory. In G. A. Watson, editor, Numerical Analysis, Lecture Notes in Mathematics 630. Springer-Verlag, 1977.【翻译】J. More. The levenberg-marquardt algorithm, implementation and theory. In G. A. Watson, editor, Numerical Analysis, Lecture Notes in Mathematics 630. Springer-Verlag, 1977.

【17】 C. C. Slama, editor. Manual of Photogrammetry. American Society of Photogrammetry, 4th ed., 1980.【翻译】 C. C. Slama, editor. Manual of Photogrammetry. American Society of Photogrammetry, 4th ed., 1980.

【18】 G. Stein. Accurate internal camera calibration using rotation, with analysis of sources of error. In Proc. 5th International Conference on Computer Vision, pages 230–236, Cambridge, Massachusetts, June 1995.【翻译】G.斯坦因。使用旋转进行精确的内部摄像机校准,并分析误差源。在Proc。第五届计算机视觉国际会议,第230-236页,马萨诸塞州剑桥市,1995年6月。

【19】B. Triggs. Autocalibration from planar scenes. In Proc. 5th European Conference on Computer Vision, pages 89–105, Freiburg, Germany, June 1998.【翻译】B.触发器。 平面场景自动校准。 在Proc。 第五届欧洲计算机视觉会议,第89-105页,德国弗赖堡,1998年6月。

【20】R. Y. Tsai. A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf tv cameras and lenses. IEEE Journal of Robotics and Automation, 3(4):323–344, Aug. 1987.【翻译】R. Y. Tsai。 多功能摄像机校准技术,使用现成的电视摄像机和镜头进行高精度3D机器视觉测量。 IEEE Journal of Robotics and Automation,3(4):323-344,1987年8月。

【21】G. Wei and S. Ma. A complete two-plane camera calibration method and experimental comparisons. In Proc. Fourth International Conference on Computer Vision, pages 439–446, Berlin, May 1993.【21】G. Wei和S. Ma。 完整的双平面相机校准方法和实验比较。 在Proc。 第四届计算机视觉国际会议,第439-446页,柏林,1993年5月。

【22】[22] G. Wei and S. Ma. Implicit and explicit camera calibration: Theory and experiments. IEEE Transactions on Pattern Analysis and Machine Intelligence, 16(5):469– 480, 1994.【翻译】[22] G. Wei and S. Ma. Implicit and explicit camera calibration: Theory and experiments. IEEE Transactions on Pattern Analysis and Machine Intelligence, 16(5):469– 480, 1994.

【23】J. Weng, P. Cohen, and M. Herniou. Camera calibration with distortion models and accuracy evaluation. IEEE Transactions on Pattern Analysis and Machine Intelligence, 14(10):965–980, Oct. 1992.【翻译】J. Weng,P。Cohen和M. Herniou。具有失真模型和精度评估的摄像机校准。IEEE Transactions on Pattern Analysis and Machine Intelligence,14(10):965-980,1992年10月。

【24】 Z. Zhang. A Flexible New Technique for Camera Calibration. Technical Report MSRTR-98-71, Microsoft Research, December。【翻译】 Z. Zhang. A Flexible New Technique for Camera Calibration. Technical Report MSRTR-98-71, Microsoft Research, December

【Camera】通过查看位置方向的平面进行灵活的相机校准相关推荐

  1. Android开发实践:掌握Camera的预览方向和拍照方向

    Android的Camera相关应用开发中,有一个必须搞清楚的知识点,就是Camera的预览方向和拍照方向,本文就重点讨论一下这个问题. 图像的Sensor方向:手机Camera的图像数据都是来自于摄 ...

  2. uniapp打开地图选择位置(查看位置)详解

    开发小程序的时候,有时候要做打开地图选择位置和打开地图查看当前位置.我前段时间刚做的时候也是一脸懵逼(新手上路). 我是用的uniapp做的,配置方法和原生小程序的配置方法不太一样.下面就是我写的配置 ...

  3. 微信小程序----wx.openLocation(OBJECT) 使用微信内置地图查看位置

    WXRUI体验二维码 如果文章对你有帮助的话,请打开微信扫一下二维码,点击一下广告,支持一下作者!谢谢! 开发场景 已知地点的经纬度,期望在打开的地图进行标注位置和进行开车.徒步.公交.骑行等的路线规 ...

  4. 微信小程序----使用微信内置地图查看位置wx.openLocation(Object object)

    本博客为博主原创,若需转载请联系博主征得同意.有不当之处,敬请指出,共同进步,谢谢! 使用微信内置地图查看位置wx.openLocation(Object object) 1.官方文档 wx.open ...

  5. 获取seekbar thumbar位置_运汽车-牡丹江到昆明汽车托运公司-查看位置

    标题鸿运广通物流是经市交通运输管理局审批的特许经营公路的公司物流公司,私家车托运运输.单台托运,多台配载,商品车交店:鸿运广通汽车运输无疑是较好的选择,在节省成本的同时.保证车辆准时安全到达..长途搬 ...

  6. RSD 教程 —— §3.7 查看位置信息

    §3.7 查看位置信息 3.7.1 观察状态条的位置信息 主窗口下方的状态条上动态显示光标在主窗口中的位置信息.包括光标位置的窗口坐标.框架坐标.经纬度位置和投影后的平面坐标位置. 3.7.2 输出窗 ...

  7. 微信JS-SDK 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置

    微信JS-SDK 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置 一.JS部分 wx.ready(function () {// 1 判 ...

  8. maya中查看法线方向并更改

     如何在maya中查看法线方向并更改 在maya中查看法线是否正确,可以依次打开display---polygons---face normals就可以显示物体的法线方向了.如果顺着z轴正反向就是 ...

  9. 微信JS接口 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置

    微信JS接口 微信JS接口 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置 来源:http://www.cnblogs.com/txw1 ...

  10. 如何将一个向量投影到一个平面上_自动驾驶视觉融合相机校准与激光点云投影...

    点云PCL免费知识星球,点云论文速读. 标题:自动驾驶视觉融合-相机校准与激光点云投影 作者:williamhyin 来源:https://zhuanlan.zhihu.com/p/136263753 ...

最新文章

  1. MyBatis的使用
  2. 不扶好眼镜,请别打开这本挑战JS语言特性的书
  3. 天天说架构师,到底什么样的程序员能称为架构师?
  4. GopherChina 2018 区块链+容器+Go底层实现
  5. the application has stopped unexpected。please try again
  6. 重启iis提示不支持此接口的解决方案
  7. python 内置函数 sum()函数 求和函数
  8. hive简介以及安装配置
  9. 电商系统的积分(即金币)的设计方案
  10. 树形结构递归初始化(父节点,统计字段等)
  11. linux —— ubuntu 初次安装问题
  12. 微软笔试题《Arithmetic Puzzles》- 题解
  13. php微信获取openid_PHP微信网页授权获取OPENID
  14. HDU2881 Jack's struggle (LIS)
  15. 魔兽世界怀旧服显示没有可用服务器,魔兽世界怀旧服选哪个服务器
  16. springboot-mybatis集成 使用逆向工程
  17. MySQL 主从同步延迟的原因及解决办法
  18. Tableau-旭日图(详细操作步骤)
  19. 64位win7下安装keras的过程
  20. php 表格制作教程下载,word表格如何制作教程?

热门文章

  1. python炒股代码_python简单代码_趣炒股网页版
  2. python半圆_复合半圆环图只要四句代码搞定
  3. 完美解决VS2003.Net fatal error LNK1201: 写入程序数据库“.pdb”时出错
  4. Markdown语法图文详解
  5. IIC总线设计③——光敏传感器(BH1750)
  6. Java的23种设计模式---(21)观察者模式
  7. RecycleView的 Scrapped or attached views may not be recycled错误原因研究
  8. 安装SQL server2017提示无法打开注册表项:“Software\Microsoft\MicrosoftsQL Server\140\Bootstrap“,注册表可能已损环。
  9. 第二篇:STM32F7 + RT-Thread + ESP8266
  10. android 陀螺仪加速度传感器,如何在Android智能手机中使用加速度传感器...