摄像机模型

  • 基本针孔模型

    (X,Y,Z)T(fX/Z,fY/Z) ( X , Y , Z ) T ↦ ( f X / Z , f Y / Z )

  • 齐次坐标表示(两个坐标系的单位长度相同)

XYZ1fXfYZ=ff1000XYZ1 [ X Y Z 1 ] ↦ [ f X f Y Z ] = [ f 0 f 0 1 0 ] [ X Y Z 1 ]

x=PX,     P=diag(f,f,1)[I|0] x = P X ,           P = d i a g ( f , f , 1 ) [ I | 0 ]

  • p=px,py p = ( p x , p y ) 点不是图像坐标原点,但坐标方向不变

(X,Y,Z)T(fX/Z+px,fY/Z+py) ( X , Y , Z ) T ↦ ( f X / Z + p x , f Y / Z + p y )

XYZ1fX+ZpxfY+ZpyZ=ffpxpy1000XYZ1 [ X Y Z 1 ] ↦ [ f X + Z p x f Y + Z p y Z ] = [ f p x 0 f p y 0 1 0 ] [ X Y Z 1 ]

x=K[ I | 0 ]xcam x = K [   I   |   0   ] x c a m

  • 世界坐标点 XXcam X ≠ X c a m ,且输入是点世界坐标(同为右手坐标系,单位距离相同)

Xcam=[R0TRC~1]XYZ1 X c a m = [ R − R C ~ 0 T 1 ] [ X Y Z 1 ]

x=KR[ I | C~ ]X=K[ R | t ]X x = K R [   I   |   − C ~   ] X = K [   R   |   t   ] X

其中, C~ C ~ 是摄像机中心的非齐次世界坐标。R是旋转矩阵, ex=R11excam+R21eycam+R31ezcam e x = R 11 e x c a m + R 21 e y c a m + R 31 e z c a m
共9个自由度:K,3个;R,3个;C,3个

到目前,3个坐标系同为右手,且单位距离相同

  • 图像坐标系是以像素为单位的表示,x和y方向上单位距离的像素数分别是 mx,my m x , m y
    K=ax=fmxay=fmyx0=mxpxy0=mypy1 K = [ a x = f m x x 0 = m x p x a y = f m y y 0 = m y p y 1 ]

    现在K有4个自由度,总共有10个自由度。

考虑一般性,

K=ax=fmxsay=fmyx0=mxpxy0=mypy1 K = [ a x = f m x s x 0 = m x p x a y = f m y y 0 = m y p y 1 ]

s s 是扭曲参数,在某些特殊情况下可能取非零值。
摄像机矩阵
P=M[ I | M1p4 ]=KR[ I | C~ ]

齐次坐标的自由度是1,则表示一个点: k(6,6,6) k ( 6 , 6 , 6 ) 表示 (1,1) ( 1 , 1 )
齐次坐标的自由度是2,则表示一条线:考虑y=x+1,上面有点 (1,2,1),(2,3,1) ( 1 , 2 , 1 ) , ( 2 , 3 , 1 ) ,那么, k(1,2,1)+g(2,3,1)=(f+2g,2k+3g,k+g) k ( 1 , 2 , 1 ) + g ( 2 , 3 , 1 ) = ( f + 2 g , 2 k + 3 g , k + g ) 是线上点的齐次坐标
齐次坐标的自由度是3,则表示一个面
一般的摄像机矩阵的秩是3。这样映射之后才能是一个平面

摄像机矩阵行列的意义

P=[ M | p4 ] P = [   M   |   p 4   ]

  • 摄像机中心:P C=0

    x=PX(λ)=λPA+(1λ)PC=λPA x = P X ( λ ) = λ P A + ( 1 − λ ) P C = λ P A

    所以,直线 λA+(1λ)C λ A + ( 1 − λ ) C 的映射在同一点。所以 X(λ) X ( λ ) 是过摄像机中心的一条射线。
    当M非奇异, C=(M1p4,1)T C = ( − M − 1 p 4 , 1 ) T 。为有限摄像机。
    当M奇异, C=(d,0)T C = ( d , 0 ) T 。d是M的零矢量。为无穷远摄像机

    • 列矢量:X,Y,Z轴的消影点映射到图像上是 p1,p2,p3 p 1 , p 2 , p 3
    • 行矢量 PiT P i T
  • 主平面: P3 P 3 。主平面上的点是 PX=(x,y,0)T P X = ( x , y , 0 ) T ,因此 P3TX=0 P 3 T X = 0
  • 轴平面:平面 P1 P 1 上的点满足 P1TX=0 P 1 T X = 0 ,因此被映射到图像 PX=(0,y,w)T P X = ( 0 , y , w ) T 。又 PC=0 P C = 0 ,所以 P1TC=0 P 1 T C = 0 。所以,平面 P1 P 1 过C和图像的x轴。

    • 主点:主平面是 P3 P 3 ,法线方向的无穷远点是 (p31,p32,p33,0)T ( p 31 , p 32 , p 33 , 0 ) T 。该点被映射到图像上,为主点。记 P=[M|p4] P = [ M | p 4 ] ,则主点 x0=Mm3 x 0 = M m 3 。其中, m3T m 3 T 是M的第3行。
    • 主轴矢量:正方向表示为 v=det(M)m3 v = d e t ( M ) m 3

kao

  • 图像x的对应空间点齐次坐标
    射线上的点有摄像机中心C P+x P + x ,那么射线表示为

    X(λ)=P+x+λC X ( λ ) = P + x + λ C

    对于有限摄像机x反向投影的射线交无穷远平面于点 D=((M1x)T,0) D = ( ( M − 1 x ) T , 0 ) ,摄像机中心是 C~=M1p4 C ~ = − M − 1 p 4 。射线上的点可表示为
    X(μ)=μ[M1x0]+[M1p41]=[M1(μxp4)1] X ( μ ) = μ [ M − 1 x 0 ] + [ − M − 1 p 4 1 ] = [ M − 1 ( μ x − p 4 ) 1 ]

  • 点的深度
    令点 X=(X,Y,Z,T)T X = ( X , Y , Z , T ) T 是一个3D点而 P=[M|p4] P = [ M | p 4 ] 是一个有限摄像机的矩阵,假定 P(X,Y,Z,T)T=w(x,y,1)T P ( X , Y , Z , T ) T = w ( x , y , 1 ) T ,那么

    depth(X;P)=sign(detM)wT||m3|| d e p t h ( X ; P ) = s i g n ( d e t M ) w T | | m 3 | |
    是在摄像机主平面前方的点X的深度

无穷远摄像机

摄像机中心在无穷远的平面上。

  • 仿射摄像机的矩阵P的最后一行形如(0,0,0,1)。它把无穷远点映射为无穷远点
    摄像机矩阵
    P0=KR[ I | C~ ]=Kr1Tr2Tr3Tr1TC~r2TC~r3TC~ P 0 = K R [   I   |   − C ~   ] = K [ r 1 T − r 1 T C ~ r 2 T − r 2 T C ~ r 3 T − r 3 T C ~ ]

    摄像机主射线与矢量 r3 r 3 同方向, Xz X z 是主轴的世界坐标系方向:
    XC=RXezc=[0,0,1]T=RXzRT[0,0,1]T=Xz[0,0,1]R=XTzr3T=XTzr3=Xz X C = R X → e z c = [ 0 , 0 , 1 ] T = R X z → R T [ 0 , 0 , 1 ] T = X z → [ 0 , 0 , 1 ] R = X z T → r 3 T = X z T → r 3 = X z

r3TC~ − r 3 T C ~ 是世界原点到摄像机中心在主射线方向上的距离。注意,这两个坐标系的单位距离相同,原点不同,有旋转

摄像机以单位速度沿主射线向后移动,并使摄像机中心移动到 C~tr3 C ~ − t r 3 ,得

Pt=Kr1Tr2Tr3Tr1T(C~tr3)r2T(C~tr3)r3T(C~tr3)=Kr1Tr2Tr3Tr1TC~r2TC~dt=r3T(C~tr3) P t = K [ r 1 T − r 1 T ( C ~ − t r 3 ) r 2 T − r 2 T ( C ~ − t r 3 ) r 3 T − r 3 T ( C ~ − t r 3 ) ] = K [ r 1 T − r 1 T C ~ r 2 T − r 2 T C ~ r 3 T d t = − r 3 T ( C ~ − t r 3 ) ]

改变焦距,增加因子为 k k ,效果等于在标定矩阵K右乘 diag(k,k,1) d i a g ( k , k , 1 )
Pt=Kdt/d0dt/d01r1Tr2Tr3Tr1TC~r2TC~dt=dtd0Kr1Tr2Tr3Td0/dtr1TC~r2TC~d0 P t = K [ d t / d 0 d t / d 0 1 ] [ r 1 T − r 1 T C ~ r 2 T − r 2 T C ~ r 3 T d t ] = d t d 0 K [ r 1 T − r 1 T C ~ r 2 T − r 2 T C ~ r 3 T d 0 / d t d 0 ]

dt d t 无穷大时,
P=limtPt=Kr1Tr2T0Tr1TC~r2TC~d0 P ∞ = lim t → ∞ P t = K [ r 1 T − r 1 T C ~ r 2 T − r 2 T C ~ 0 T d 0 ]

这个过程是后退,并增大焦距使得感兴趣的物体始终保持同样大小

  • 过世界原点并垂直于主轴方向 r3 r 3 的平面上的任何点的图像在上面的变焦和运动复合下保持图像上的映射点不变
    X=[αr1+βr21] X = [ α r 1 + β r 2 1 ]

    对于普通点:
    X=[αr1+βr2+r31] X = [ α r 1 + β r 2 + △ r 3 1 ]

    x~affinex~0=d0+d0(x~projx~0) x ~ a f f i n e − x ~ 0 = d 0 + △ d 0 ( x ~ p r o j − x ~ 0 )
  • P P ∞ 仿射近似真实摄像机矩阵 P0 P 0 的效应是把点X的图像径向地靠近或离开点 x~0 x ~ 0

  • 仿射射影条件

    x~affinex~proj=d0(x~projx~0) x ~ a f f i n e − x ~ p r o j = △ d 0 ( x ~ p r o j − x ~ 0 )

    表明真实透视图像的位置与用仿射摄像机 P P ∞ 逼近的位置之间距离相差不大的条件如下:(1)深度起伏( )相对平均深度(\d_0)较小;(2)点离主轴的距离较小

P P ∞ 的分解

P=limtPt=Kr1Tr2T0Tr1TC~r2TC~d0=[K22(0,0)Tx~01][R^(0,0,0)Tt^d0]=[d10K22(0,0)Tx~01][R^(0,0,0)Tt^1] P ∞ = lim t → ∞ P t = K [ r 1 T − r 1 T C ~ r 2 T − r 2 T C ~ 0 T d 0 ] = [ K 2 ∗ 2 x ~ 0 ( 0 , 0 ) T 1 ] [ R ^ t ^ ( 0 , 0 , 0 ) T d 0 ] = [ d 0 − 1 K 2 ∗ 2 x ~ 0 ( 0 , 0 ) T 1 ] [ R ^ t ^ ( 0 , 0 , 0 ) T 1 ]

K22=d10K22 K 2 ∗ 2 = d 0 − 1 K 2 ∗ 2
P=[K22(0,0)TK22t^+x~01][R^(0,0,0)T0^1] P ∞ = [ K 2 ∗ 2 K 2 ∗ 2 t ^ + x ~ 0 ( 0 , 0 ) T 1 ] [ R ^ 0 ^ ( 0 , 0 , 0 ) T 1 ]

x~0=0 x ~ 0 = 0 ,意味着图像坐标原点选择在图像中心
P=[K220^T0^1][R^0Tt^1] P ∞ = [ K 2 ∗ 2 0 ^ 0 ^ T 1 ] [ R ^ t ^ 0 T 1 ]

  • 与有限摄像机的区别
    x=K[ I | 0 ]xcamx=[K220^T0^1]100010000001xcam x = K [   I   |   0   ] x c a m → x = [ K 2 ∗ 2 0 ^ 0 ^ T 1 ] [ 1 0 0 0 0 1 0 0 0 0 0 1 ] x c a m

仿射摄像机的层次


  • 正投影
    P=100010000001 P = [ 1 0 0 0 0 1 0 0 0 0 0 1 ]

(X,Y,Z,1)t(X,Y,1)T ( X , Y , Z , 1 ) t ↦ ( X , Y , 1 ) T

P=100010000001[R0Tt1]=r1Tr2T0Tt1t21 P = [ 1 0 0 0 0 1 0 0 0 0 0 1 ] [ R t 0 T 1 ] = [ r 1 T t 1 r 2 T t 2 0 T 1 ]

世界坐标系旋转+平移到摄像机坐标系:有5个自由度

  • 缩放正投影

    P=kk1r1Tr2T0Tt1t21=r1Tr2T0Tt1t21/k P = [ k k 1 ] [ r 1 T t 1 r 2 T t 2 0 T 1 ] = [ r 1 T t 1 r 2 T t 2 0 T 1 / k ]

    6个自由度

  • 弱透视投影

    P=αxαy1r1Tr2T0Tt1t21 P = [ α x α y 1 ] [ r 1 T t 1 r 2 T t 2 0 T 1 ]

  • 仿射摄像机 PA P A

    PA=αxsαy1r1Tr2T0Tt1t21 P A = [ α x s α y 1 ] [ r 1 T t 1 r 2 T t 2 0 T 1 ]

    最一般的形式是
    PA=m11m210m12m220m13m230t1t21 P A = [ m 11 m 12 m 13 t 1 m 21 m 22 m 23 t 2 0 0 0 1 ]

    要求左上角的 M23 M 2 ∗ 3 的秩是2

  • 仿射摄像机的其他性质
    (1)主平面是无穷远平面的任何射影摄像机矩阵都是仿射摄像机矩阵
    (2)平行的世界直线被投影为平行的图像直线
    (3)满足 M23d=0 M 2 ∗ 3 d = 0 的矢量 d d <script type="math/tex" id="MathJax-Element-1133">d</script>是平行投影的方向

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值