问题定义
如图,背景暂时不介绍了,其中 β 定义为在坐标轴 x−y 上的旋转方向,而 α 定义为在坐标轴 x−z 上的旋转角度。
激光源的定义
这样光源点可以表征为:
P0=(0,0,h)
其中 h 为云台高度,为内参。
而激光发射的方向向量可以通过两个旋转角度进行表示:
v=(cosβ,sinβ,sinα)
于是便可以通过点向式对射线进行表达:
cosβx=sinβy=sinαz−h
显然需要约束,即 x>0
屏幕的定义
显然,在上述坐标系中,屏幕可以被描述为:
Ω=(1,y,z),y∈(−0.25,0.25),z∈(h−0.25,h+0.25)
该方程是有假设的,即在光源对准屏幕的中心点时是无仰角,无旋转的,如果不明白,可以看下图:
理想情况下逆运动反求
已知对于激光射在屏幕上某一点 (1,y,z),则可以反推回光源点处的参数状态:
利用上式射线方程,可得方程组
cosβ1=sinβy=sinαz−h
求得参数为:
⎩⎨⎧α=−arcsin(1+y2h−1+y2z),β1=arctan(1+y21),β2=arctan(1+y2y),
我 们不妨带入一些特殊值,用以验证准确性,对于屏幕中心点有坐标 (1,0,h)
代入上式,得:
⎩⎨⎧α=−arcsin(0)=0,β1=arctan(1)=45°,β2=arctan(0)=0.
所以其解 β1 为错误解,略去,下面取 α,β2 作为标准解。
如果我们已知屏幕点 p 的运动方程,我们可以通过上面的标准解得到参数控制方程。
正方形的隐函数方程为
∣x∣+∣y∣=1可是该正方形不是正的,而是 " 歪的 ",如下图
其参数方程为
(cos(t)⋅∣cos(t)∣,sin(t)⋅∣sin(t)∣)为了 " 掰正 ",我们使用旋转矩阵
x′y′1=cos(θ)sin(