静态工厂
public static Boolean valueOf (boolean b){
return b?Boolean.True:Boolean.False;
}
静态工厂以其名字显见,以[类名.方法名]的方式调用,其静态函数主要返回其类的对象,一般是引用值。返回什么东西,由参数决定,这个工厂给你产出来。其在API开发中使用广泛。
public static Boolean valueOf (boolean b){
return b?Boolean.True:Boolean.False;
}
静态工厂以其名字显见,以[类名.方法名]的方式调用,其静态函数主要返回其类的对象,一般是引用值。返回什么东西,由参数决定,这个工厂给你产出来。其在API开发中使用广泛。
感谢这个教程
还有这个
解决了好多bugs的这个
优化cdn图床缓冲的这个
这个让我找到了便宜的狗爹优惠码
从一开始的阵地wp搬到这里来了。后会有期了dooby.me 再见了WordPress
默默的是有些不舍。虽然push很慢虽然被墙了大半
4年光阴不复返啊。从一个逗比成长为大逗比了。
明明在hadoop配置静态IP的时候被坑过一次,却完全想不起来怎么解决的。尤其是在ssh登录的时候需要记下host和ip的对应,才能直接输出主机名来访问局域网内的其他主机。
现在记下来。
http://ju.outofmemory.cn/entry/106397 【坑妹填完】
最近各种乱整。。文章妹时间管光顾着折腾手头派下来的事情了。再加上每天固定的复习提高一下。小论文完全没有头绪。
最近get到的实用方法还是很多阿。
openCV中有两个函数,findhomography和findfundamentalmat,长的很像。。一开始严重的弄混,以为都是求对应点投影矩阵的公式,万万没想到其实是两个完全不同的内涵。😒
手机和网络重度使用患者也该是总结自己的时候了。庆幸的是各大app都热推了自己的2015数据流。把去年的数据库做个直白的excel统计。好吧。。我除了听歌看电影买买买也没别的(性)生活了。
本文只讨论安卓手机软节电,不负责推荐底包、rom、调频调压方案,刷机root后果自负。
本小节只讨论干货。在root及xposed框架下。同时兼顾不能肉身翻墙又想用google服务的小狗们。本人的使用情况是正常功能照开,google需要gmail和google photo及部分gcm,黑屏开启手势和解锁,正常收微信、闹钟、短信电话外熄屏一切不开,后台常开应用有snap锁屏、grenntify绿色守护、调音的audio mix、天气插件、BBS、输入法、Nova Launcher。测试的环境为Android L 5.1.1**本文只讨论安卓手机软节电,不负责推荐底包、rom、调频调压方案,刷机root后果自负。**
纯硬货,只想节电看后文。——航摄大致思路?完成这一工作,最主要的工作是法一:利用地面其他物体的三维坐标(灰机、相机的某一时刻姿态也可以)点确定相邻两幅图像的地理位置(三维的,依赖地理空间的)——>解算相对位置;法二,利用同名点(两幅图像都拍到的点,二维的,不依赖地理空间的),找到某个投影变换(即一个投影矩阵),直接解求两幅相邻图像的相对位置。
航摄中常用的三种用于加密控制点的方法有航带法、独立模型法、光束法。其中航带法精度较低,不能用于高精度的测量。独立模型法较前者精度略高,光束法则是精度最高同时计算量最大的模型,适用于高精度航摄。 ——用来做啥?不同时刻的航摄图片,对绝对位置或相对坐标进行确认,为拼接准备。 自检较光束则是最广泛应用的做法,尽管粗差(奇葩的大误差)对于精度的影响极大。其基本思想是选用一个由若干个参数组成的系统误差模型,将这些附加参数作为未知数与区域网的其他参数一起解求,从而达到在平差过程中自动消除系统误差的目的。其缺点是①附加参数人为选择,选择不当会导致迭代结果不收敛恶化计算结果。②附加参数与区域网参数一起解求,会使计算量明显上升。
后方交会得到的结果,除了使用平差误差表达式来计算之外,还可以通过以下方式进行检验和矫正。
①利用旋转矩阵,使用物放三维数据,反算二维坐标点,比较二者之差。
②利用多片空间前方交会,通过未参与空间后方交会计算的控制点像点坐标反算理论空间坐标,得出空间坐标的误差。
使用条件:至少2张相片的内方位元素、外方位元素、畸变因子。把待定点的像点坐标作为观测值,逐点求解待定点物方空间坐标的过程。
其步骤与多片空间前方交会也类似,给定初值后,进行逐次迭代运算。误差方程为
装了cm还有其他一些国产ui直接滤掉了google的一系列被墙的服务。
但明明又不可或缺。尤其是最近无可救药的爱上了google相册,那无限制的容量让人流口水。
试了一下各种论坛apk专栏的gms(google mobile service 涉及Android版本 cpu类型 屏幕尺寸,以及各种旧版本都试过了都不行。。我就郁闷了。。
各版本gms-酷安网 各种旧版本google 各种能找到的google相关旧版本 少数派的小姿势
因此试了一下传说中的,Open GApps和TK GApps,非常顺滑。一刷就行,不用双清,放在sd里和刷机一样。
提供了详细列表的tk gapps-5.1.X列表
同样提供了详细列表的PA Gapps-5.1.X列表
GAPPS FOR ANY ANDROID ROM(提供所有安卓版本的GAPPS安装,我成功的刷入了一台老机子nexus 7 在CM12下。震精的是,居然也提供了6.0和我家一加二的安装-。-,MIUI6也适时的出现了
stock :最为贴近 Nexus 机型体验的 GApps 版本,包含了 Nexus 机型所预装的所有 Google 服务和 Google 应用。需要注意的是,这个版本会用 Chrome 、 Google Now Launcher 、 Google Keybord 等 Google 应用替换掉 CM 系 ROM 中那些基于 AOSP 代码的相关应用。
full :与 stock 版所包含的内容相同,但不会替换 AOSP 应用。
mini :包含了完整的 Google 服务框架和主流 Google 应用,去掉了 Google Docs 等文档处理应用
micro :包含了完整的 Google 服务框架和少数 Google 应用,如 Gmail 、 Google Calender 、 Google Now Launcher 。
nano :包含完整的 Google 服务框架但不包含多余的 Google 应用。
pico:包含了最基础的 Google 服务框架,体积最小,一些依赖完整 Google 框架的应用(如 Google Camera )将无法运行。
无人机在近地拍摄全色或者多光谱数据,进行近景摄影测量,成图为后期的制图反演批处理提供数据来源。一般对像片各项操作,都需要知道像片的空中姿态及其位置。然而,无人机自身系统受外界干扰较大,飞行姿态难以准确控制,同时缺乏监测飞机姿态的设备,处理无人机数据不能完全采用传统航摄流程进行作业。
关于摄影平台——无人机或带着单数码相机或组合相机,或带着遥感平台。常用的大面阵数码航摄相机,有DMC和UC(UCD UCX UCXp UCE)。DMC由4个全色4个多光谱镜头组成,4个中心投影拼接合成一副具有虚拟投影中心固定虚拟焦距的投影合成影像。UC4个全色波段对应3*3矩阵排列的9个CCD面阵,分别为4221(分别对应二行左二(东南东北西南西北),二行左一(正南正北),二行左三(正东正西),二行左四(中心)).如下图所示,UC革新的将四个角的镜头设为主镜头(master cone)其他三个为从属镜头(slave cone)为的是控制相机区域,尽量覆盖完整视场角,其他3个镜头的影响依据它进行精确配准保证输出的影响具有强健刚性的严格中心投影。
几个全色影像CCD之间存在重叠(航向258旁向262),通过重叠部分影像精确配准,消除曝光时间带来的误差影响,生成一个完整的中心投影影像。图为四个镜头在不同时刻曝光,最后生成虚拟影像。值得一提的是,UC系统四个镜头虽然在不同时刻曝光拍摄,但是选取了合适了速度并沿着第二行相机方向飞行时,每个曝光的相机都几乎在同一时空位置,因此得到的是一个完整的中心投影大幅面全色影像。
关于数码航摄仪——若采用多相机进行拍摄,扩大VOF(view of field),或采取张大仰角或采取移轴摄影,都需要对多相机进行合成,组成一张虚拟影像,来达到对后面平差拼接做前期准备,因此精度相当重要。
关于图像拼接——无人机搭载的数码相机虽然提高了影像的分辨率,但焦距有限视野较小,获得整个飞行区域的完整影像设计像片的拼接问题。影像拼接涉及匀光匀色等色彩处理、对误差较大的图像进行粗提取、采用某些算计对影像提取特征点或者利用空间位置进行拼接等步骤。
这里可以参考的文献有,
基于光束法自由网平差的无人机影像严格拼接 主要总结了航摄基本方法(空三方式利用野外控制点加密测出大量控制点、通过灭点建立影像直线段与方位元素的关系、自检校光束区域平差利用定向参数解求外方位元素、量测直线段长度确定外方位元素、区域平差及SIFT+一定数量控制点针对不同尺度三维影像进行拼接、光束法区域平差+秩亏可以解决缺少控制信息的像片)
除了后方交会之外,常用的进行内外参数检校的方法还有DLT和角锥体法。
写在前面:DLT可在未提供初值的情况下推导内外方位元素,同时不需要迭代,但精度相比后方交会较低;DLT与后方交会等价。
内容提要
非正交与比例尺不一致因素 DLT的真正一般形式 包含2项因素的Li表达内外参数
基本原理:将物方点坐标(X,Y,Z)和(x,y)看做是空间中的某种线性变换,可以互为函数。一般地,将x,y用X,Y,Z表示。
基本公式:
$$\left\{\begin{matrix}x+\frac{L_{1}X+L_{2}Y+L_{3}Z+L_{4}}{L_{9}X+L_{10}Y+L_{11}Z+1}=0\\y+\frac{L_{5}X+L_{6}Y+L_{7}Z+L_{8}}{L_{9}X+L_{10}Y+L_{11}Z+1}=0\end{matrix}\right.$$
DLT误差方程:
$$\begin{pmatrix}v_{x}\\v_{y}\end{pmatrix}=\begin{pmatrix}X&Y&Z&1&0&0&0&0&xX&xY&xZ\\0&0&0&0&X&Y&Z&1&yX&yY&yZ\end{pmatrix}\begin{pmatrix}L_{1}\\L_{2}\\L_{3}\\L_{4}\\L_{5}\\L_{6}\\L_{7}\\L_{8}\\L_{9}\\L_{10}\\L_{11}\end{pmatrix}+\begin{pmatrix}l_{x}\\l_{y}\end{pmatrix}$$与后方交会一样,若有n个控制点,则A矩阵有2n行。还是利用求改正数的公式求取。
DLT推导过程如下:
根据共线方程的后方交会形式:
$$x-x_{0}+f_{x}\frac{a_{1}(X-X_{s})+b_{1}(Y-Y_{s})+c_{1}(Z-Z_{s})}{a_{3}(X-X_{s})+b_{3}(Y-Y_{s})+c_{3}(Z-Z_{s})}=0$$
$$y-y_{0}+f_{y}\frac{a_{2}(X-X_{s})+b_{2}(Y-Y_{s})+c_{2}(Z-Z_{s})}{a_{3}(X-X_{s})+b_{3}(Y-Y_{s})+c_{3}(Z-Z_{s})}=0$$
这里,f分为fx和fy,即主距在像空系中这两个分量的投影。因为有的单个ccd xy方向上的大小不一致,即不是正方形。
将X,Y,Z和Xs,Ys,Zs分离,将之看作是摄影中心的变换坐标。
$$\left\{\begin{matrix}r_{1}=-(a_{1}X_{s}+b_{1}Y_{s}+c_{1}Z_{s})\\r_{2}=-(a_{2}X_{s}+b_{2}Y_{s}+c_{2}Z_{s})\\r_{3}=-(a_{3}X_{s}+b_{3}Y_{s}+c_{3}Z_{s})\end{matrix}\right.$$化简可得
$$x-x_{0}+f_{x}\frac{a_{1}X+b_{1}Y+c_{1}Z+r_{1}}{a_{3}X+b_{3}Y+c_{3}Z+r_{3}}=0$$
$$y-y_{0}+f_{y}\frac{a_{2}X+b_{2}Y+c_{2}Z+r_{1}}{a_{3}X+b_{3}Y+c_{3}Z+r_{3}}=0$$
将x0,y0通分。
$$x+\frac{(a_{1}f_{x}-a_{3}x_{0})X+(b_{1}f_{x}-b_{3}x_{0})Y+(c_{1}f_{x}-c_{3}x_{0})Z+(r_{1}f_{x}-r_{3}x_{0})}{a_{3}X+b_{3}Y+c_{3}Z+r_{3}}=0$$
$$y+\frac{(a_{2}f_{y}-a_{3}y_{0})X+(b_{2}f_{y}-b_{3}y_{0})Y+(c_{2}f_{y}-c_{3}y_{0})Z+(r_{2}f_{y}-r_{3}y_{0})}{a_{3}X+b_{3}Y+c_{3}Z+r_{3}}=0$$
将X、Y、Z的系数简化为L,即
$$x+\frac{L_{1}X+L_{2}Y+L_{3}Z+L_{4}}{L_{9}X+L_{10}Y+L_{11}Z+1}=0$$
$$y+\frac{L_{5}X+L_{6}Y+L_{7}Z+L_{8}}{L_{9}X+L_{10}Y+L_{11}Z+1}=0$$
$$L=\begin{bmatrix}L_{1}&L_{2}&L_{3}&L_{4}\\L_{5}&L_{6}&L_{7}&L_{8}\\L_{9}&L_{10}&L_{11}&L_{12}\end{bmatrix}$$该公式表示像点测量坐标与物方点坐标直接的变化,无需内方位元素。从另一个角度看,L矩阵其实是二维坐标通过三次矩阵变换得到的三维坐标,即:
$$L=\frac{1}{r_{3}}\begin{bmatrix}f_{x}&0&-x_{0}\\0&f_{y}&-y_{0}\\0&0&1\end{bmatrix}\begin{bmatrix}a_{1}&b_{1}&c_{1}\\a_{2}&b_{2}&c_{2}\\a_{3}&b_{3}&c_{3}\end{bmatrix}\begin{bmatrix}1&0&0&X_{s}\\0&1&0&Y_{s}\\0&0&1&Z_{s}\end{bmatrix}=\frac{1}{r_{3}}\begin{bmatrix}f_{x}&0&-x_{0}\\0&f_{y}&-y_{0}\\0&0&1\end{bmatrix}\begin{bmatrix}R&t\\0^{T}&1\end{bmatrix}$$
第一个矩阵由内方位元素组成,是辅助坐标和像平面坐标的平移和比例关系;第二个矩阵是外方位元素的角元素,表达物方系和地辅系的坐标旋转关系;第三个矩阵是外方位线元素,表达物方坐标和地辅系坐标的原点平移关系。
由于计算机视觉中使用齐次坐标,即如下形式
$$\begin{pmatrix}x\\y\\1\end{pmatrix}=L\begin{pmatrix}X\\Y\\Z\\1\end{pmatrix}=\begin{bmatrix}L_{1}&L_{2}&L_{3}&L_{4}\\L_{5}&L_{6}&L_{7}&L_{8}\\L_{9}&L_{10}&L_{11}&L_{12}\end{bmatrix}\begin{pmatrix}X\\Y\\Z\\1\end{pmatrix}$$因此形成了上红色式子。
重要参数的求解:
$$r_{3}=\frac{1}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}$$
(1)内方位元素
$$x_{0}=-(L_{1}L_{9}+L_{2}L_{10}+L_{3}L_{11})/(L_{9}^{2}+_{10}^{2}+L_{11}^{2})$$
$$y_{0}=-(L_{5}L_{9}+L_{6}L_{10}+L_{7}L_{11})/(L_{9}^{2}+_{10}^{2}+L_{11}^{2})$$
$$f_{x}^{2}=-x_{0}^{2}+(L_{1}^{2}+L_{2}^{2}+L_{3}^{2})/(L_{9}^{2}+_{10}^{2}+L_{11}^{2})$$
$$f_{y}^{2}=-y_{0}^{2}+(L_{4}^{2}+L_{5}^{2}+L_{6}^{2})/(L_{9}^{2}+_{10}^{2}+L_{11}^{2})$$
$$f=\frac{1}{2}(f_{x}+f_{y})$$
(2)外方位角元素
$$\begin{bmatrix}a_{1}&b_{1}&c_{1}\end{bmatrix}=\frac{1}{f_{x}}\begin{bmatrix}\frac{L_{1}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+a_{3}x_{0}\frac{L_{2}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+b_{3}x_{0}\frac{L_{3}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+c_{3}x_{0}\end{bmatrix}$$
$$\begin{bmatrix}a_{2}&b_{2}&c_{2}\end{bmatrix}=\frac{1}{f_{y}}\begin{bmatrix}\frac{L_{5}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+a_{3}y_{0}\frac{L_{6}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+b_{3}y_{0}\frac{L_{7}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+c_{3}y_{0}\end{bmatrix}$$
$$\begin{bmatrix}a_{3}&b_{3}&c_{3}\end{bmatrix}=\frac{1}{(L_{9}^{2}+L_{10^{2}}+L_{11}^{2})^{1/2}}\begin{bmatrix}L_{9}&L_{10}&L_{11}\end{bmatrix}$$
可以注意到的是,DLT解求内外方位元素是有次序的,因为外方位元素解求的公式中包含有所有的内方位元素。
$$ \left\{\begin{matrix}\varphi =arctan(\frac{a_{3}}{c_{3}})=arctan(\frac{l_{9}}{l_{11}})\\\omega =arcsin(-b_{3})=arcsin(-\frac{l_{10}}{l_{9}^2+l_{10}^{2}+l_{11}^{2}})\\\kappa =arctan(\frac{b_{1}}{b_{2}})=arctan(\frac{f_{y}[x_{0}\frac{L_{2}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+b_{3}]}{f_{x}[y_{0}\frac{L_{6}}{(L_{9}^{2}+L_{10}^{2}+L_{11}^{2})^{1/2}}+b_{3}]})\end{matrix}\right.$$
(3)外方位线元素
则需要根据如下方程解出
$$a_{3}X_{s}+b_{3}Y_{s}+c_{3}Z_{s}+r_{3}$$
$$\frac{a_{1}f_{x}-a_{3}x_{0}}{r_{3}}X_{s}+\frac{b_{1}f_{x}-b_{3}x_{0}}{r_{3}}Y_{s}+\frac{c_{1}f_{x}-c_{3}x_{0}}{r_{3}}+L_{4}=0$$
$$\frac{a_{2}f_{y}-a_{3}y_{0}}{r_{3}}X_{s}+\frac{b_{2}f_{y}-b_{3}y_{0}}{r_{3}}Y_{s}+\frac{c_{2}f_{y}-c_{3}y_{0}}{r_{3}}+L_{8}=0$$
DLT实质上与共线方程等价,Li之间的相关性,因为2个条件=11个参数-必要观测个数
以上是只解求内外方位元素的时候,Li与各参数的关系,如果加上光学畸变、非正交比例、比例尺不一致等误差,光学畸变在前文中提到。
x轴方向上比例系数为1,y轴方向比例系数为(1+ds).则
x轴方向上的主距为fx,y轴方向上的主距为fy=fx/(1+ds).
对数字相机,比例尺不一致可认为是襄垣x、y方向长度不等引起的;而不正交性误差可认为是像元x、y方向排列不垂直引起的。
以下表述中,小括号代表坐标系,中括号代表坐标值。
$$(\overline{x},\overline{y})[on_{2},on_{1}]$$——以像主点为原点(像平面坐标系的原点),不包含线性误差的某像点p的坐标
$$(x,y)[om_{2},0m_{1}]$$——以像主点为原点,不包含正交性dβ误差的像点p坐标。
$$(x,y)[om_{2},om_{1}^{‘}]$$——以像主点为原点,不包括正交性dβ误差及比例尺不一致误差ds的像点坐标p
则从图中可知,$$!\delta x=on_{2}-om_{2}=m_{2}p\cdot sin d\beta=om_{1}\cdot sin d\beta=(1+ds)(y-y_{0})sind\beta\approx (y-y_{0})sind\beta$$
$$\delta y=on_{1}-om_{1}^{‘}=om_{1}\cdot cosd\beta -om_{1}^{‘}=(1+ds)(y-y_{0})\cdot cosd\beta-(y-y_{0})=(1+ds)\cdot cosd\beta -1\approx (y-y_{0})\cdot ds$$
将上式2值带入线性方程有线性误差的形式:式中有11个独立参数,3个内方位x0,yo,fx6个外方位Xs,Ys,Zs,φ,ω,k,比例尺不一致系数ds,xy轴不正交系数dβ。
$$\left\{\begin{matrix}x-x_{0}+(1+ds)(y-y_{0})\cdot sind\beta +f_{x}\frac{a_{1}(X-X_{s}+b_{1}(Y-Y_{s})+c_{1}(Z-Z_{s})}{a_{3}(X-X_{s})+b_{3}(Y-Y_{s})+c_{3}(Z-Z_{s})}=0\\y-y_{0}+[(1+ds)\cdot cosd\beta-1] (y-y_{0})+f_{x}\frac{a_{1}(X-X_{s}+b_{1}(Y-Y_{s})+c_{1}(Z-Z_{s})}{a_{3}(X-X_{s})+b_{3}(Y-Y_{s})+c_{3}(Z-Z_{s})}=0\end{matrix}\right.$$
通过一系列的化简,如前面介绍不带线性误差一样,提取出r1,r2,r3,得到:
$$x+\frac{\frac{1}{r_{3}}(a_{1}f_{x}-a_{2}f_{x}tand\beta -a_{3}x_{0})}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}\cdot X+\frac{\frac{1}{r_{3}}(b_{1}f_{x}-b_{2}f_{x}tand\beta -b_{3}x_{0})}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}\cdot Y+\frac{\frac{1}{r_{3}}(c_{1}f_{x}-c_{2}f_{x}tand\beta -c_{3}x_{0})}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}\cdot Z+\frac{\frac{1}{r_{3}}(r_{1}f_{x}-r_{2}f_{x}tand\beta -r_{3}x_{0})}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}=0$$
$$y+\frac{\frac{1}{r_{3}}[\frac{a_{2}f_{x}}{(1+ds)cosd\beta }-a_{3}\cdot y_{0}]}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}\cdot X+\frac{\frac{1}{r_{3}}[\frac{b_{2}f_{x}}{(1+ds)cosd\beta }-b_{3}\cdot y_{0}]}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}\cdot Y+\frac{\frac{1}{r_{3}}[\frac{c_{2}f}{(1+ds)cosd\beta }-c_{3}\cdot y_{0}]}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}\cdot Z+\frac{\frac{1}{r_{3}}[\frac{r_{2}f_{x}}{(1+ds)cosd\beta }-r_{3}\cdot y_{0}]}{\frac{a_{3}}{r_{3}}X+\frac{b_{3}}{r_{3}}Y+\frac{c_{3}}{r_{3}}Z+1}=0$$
则上式即可化为基本式:
$$x+\frac{l_{1}X+l_{2}Y+l_{3}Z+l_{4}}{l_{9}X+l_{10}Y+l_{11}Z+1}=0$$
$$y+\frac{l_{5}X+l_{6}Y+l_{7}Z+l_{8}}{l_{9}X+l_{10}Y+l_{11}Z+1}=0$$
其中,l4、l8可化简:
$$l_{8}=\frac{1}{r_{3}}[\frac{r_{2}f_{x}}{(1+ds)\cdot d\beta}-r_{3}\cdot y_{0}]=\frac{1}{r_{3}}[\frac{-(a_{2}Xs+b_{2}Y_{s}+c_{2}Z_{s})f_{x}}{(1+ds)\cdot cosd\beta }+(a_{3}X_{s}+b_{3}Y_{s}+c_{3}Z_{s})\cdot y_{0}]=-\frac{1}{r_{3}}[(\frac{a_{2}f_{x}}{(1+ds)\cdot cosd\beta }-a_{3}y_{0})X_{s}+(\frac{b_{2}f_{x}}{(1+ds)\cdot cosd\beta }-b_{3}y_{0})Y_{s}+(\frac{c_{2}f_{x}}{(1+ds)\cdot cosd\beta }-c_{3}y_{0})Z_{s}]=-(l_{5}X_{s}+l_{6}Y_{s}+l_{7}Z_{s})$$
$$l_{4}=\frac{1}{r_{3}}(r_{1}f_{x}-r_{2}f_{x}tand\beta -r_{3}x_{0})=-(l_{1}X_{s}+l_{2}Y_{s}+l_{3}Z_{s})$$
由于未知数是11个,因此最少需要布置6个控制点。
值得一提的是,像主点的求解公式与没有畸变参与相同,
$$x_{0}=-(L_{1}L_{9}+L_{2}L_{10}+L_{3}L_{11})/(L_{9}^{2}+_{10}^{2}+L_{11}^{2})$$
$$y_{0}=-(L_{5}L_{9}+L_{6}L_{10}+L_{7}L_{11})/(L_{9}^{2}+_{10}^{2}+L_{11}^{2})$$
最重要的ds和dβ,设:
$$\overline{A}=r_{3}^{2}(l_{1}^{2}+l_{2}^{2}+l_{3}^{2})-x_{0}^{2}=\frac{f_{x}^{2}}{cos^{2}d\beta }$$
$$B=r_{3}^{2}(l_{5}^{2}+l_{6}^{2}+l_{7}^{2})-y_{0}^{2}=\frac{f_{x}^{2}}{(1+ds)^{2}cos^{2}d\beta }$$
$$C=r_{3}^{2}(l_{1}l_{5}+l_{2}l_{6}+l_{3}l_{7})-x_{0}y_{0}=\frac{-f_{x}^{2}sind\beta }{(1+ds)cos^{2}d\beta }$$
$$ds=\sqrt{\frac{\overline{A}}{B}-1}$$
$$sind\beta =\pm \sqrt{\frac{C^{2}}{\overline{A}B}}$$
而主距的公式变为:
$$f_{x}=\sqrt{\overline{A}}cosd\beta $$
$$f_{y}=\frac{f_{x}}{1+ds}$$
外方位角元素:
$$tan\varphi =\frac{a_{3}}{c_{3}}$$
$$sin\omega =-b_{3}$$
$$tan\kappa =\frac{b_{1}}{b_{2}}$$
其中,$$a_{3}=r_{3}l_{9},b_{3}=r_{3}l_{10},c_{3}=r_{3}l_{11}$$
而外方位线元素由以下三个式子构成:
$$l_{1}X_{s}+l_{2}Y_{s}+l_{3}Z_{s}=-l_{4}$$
$$l_{5}X_{s}+l_{6}Y_{s}+l_{7}Z_{s}=-l_{8}$$
$$l_{9}X_{s}+l_{10}Y_{s}+l_{11}Z_{s}=\frac{a_{3}}{r_{3}}X_{s}+\frac{b_{3}}{r_{3}}Y_{s}+\frac{c_{3}}{r_{3}}Z_{s}=-\frac{a_{3}Xs+b_{3}Y_{s}+c_{3}Z_{s}}{a_{3}Xs+b_{3}Y_{s}+c_{3}Z_{s}}=-1$$
到这里,能解求出包含非正交比例和xy不一致比例,但缺乏了对镜头畸变的改正。若将镜头畸变写入DLT方程式,则变为:
$$x+v_{x}+\Delta x+\frac{l_{1}X+l_{2}Y+l_{3}Z+l_{4}}{l_{9}X+l_{10}Y+l_{11}Z+1}=0$$
$$y+v_{y}+\Delta y+\frac{l_{5}X+l_{6}Y+l_{7}Z+l_{8}}{l_{9}X+l_{10}Y+l_{11}Z+1}=0$$
其中,vx vy是残差,△x △y是畸变的改正数,若忽略切向畸变且只去一项径向畸变的参数作为例子,
$$\left\{\begin{matrix}\Delta x=(x-x_{0})r^{2}k_{1}\\\Delta y=(y-y_{0})r^{2}k_{1}\end{matrix}\right.$$
再令$$A=l_{9}X+l_{10}Y+l_{11}Z+1$$
以li为未知数,列误差方程,则DLT公式可化简为:
$$v_{x}=-\frac{1}{A}[Xl_{1}+Yl_{2}+Zl_{3}+l_{4}+xXl_{9}+xYl_{10}+xZl_{11}+A(x-x_{0}^{2})r^{2}k_{1}+x]$$
$$v_{y}=-\frac{1}{A}[Xl_{5}+Yl_{6}+Zl_{7}+l_{8}+yXl_{9}+yYl_{10}+yZl_{11}+A(y-y_{0}^{2})r^{2}k_{1}+x]$$
矩阵的形式则可写为(以物方坐标表示像点坐标):
$$\begin{bmatrix}v_{x}\\v_{y}\end{bmatrix}=\begin{bmatrix}\frac{X}{A}&\frac{Y}{A}&\frac{Z}{A}&\frac{1}{A}&0&0&0&0&\frac{xX}{A}&\frac{xY}{A}&\frac{xZ}{A}&(x-x_{0})r^{2}\\0&0&0&0&\frac{X}{A}&\frac{Y}{A}&\frac{Z}{A}&\frac{1}{A}&\frac{yX}{A}&\frac{yY}{A}&\frac{yZ}{A}&(y-y_{0})r^{2}\end{bmatrix}\begin{bmatrix}l_{1}\\l_{2}\\l_{3}\\l_{4}\\l_{5}\\l_{6}\\l_{7}\\l_{8}\\l_{9}\\l_{10}\\l_{11}\\k_{1}\end{bmatrix}-\begin{bmatrix}\frac{x}{A}\\\frac{y}{A}\end{bmatrix}$$可简写为:
$$V=AL+BX-W$$
其中L是11个(二维DLT是可能是8个)li参数,X是单独提出来计算的畸变系数,在后交时通常加载改正数值里,当学要加入更多畸变参数时,需要确定更多的B矩阵中的形式。W一般是x/A,y/A.
A和B的求取也是迭代计算,每次迭代A的值计算是通过控制点求得的。对不同控制点像点坐标列误差方程,A的值也不同。
简单提一下以像方坐标表示物放坐标的DLT公式:
$$(l_{1}+\overline{x}l_{9})X+(l_{2}+\overline{x}l_{10})Y+(l_{3}+\overline{x}l_{11})Z+(l_{4}+\overline{x})=0$$
$$(l_{5}+\overline{y}l_{9})X+(l_{6}+\overline{y}l_{10})Y+(l_{7}+\overline{y}l_{11})Z+(l_{8}+\overline{y})=0$$
直接线性变换的精度:可提供1/5000摄影距离精度的测量成果。影响DLT解法精度的是:控制点分布数量质量、像点坐标的测量精度、两张相片主光轴的交会角、像片张数、非线性畸变误差的改正数。