2、子孔径自由拼接的算法
子孔径自由拼接中最主要要实现的步骤就是提取出相应的子孔径,并统计出重叠区域的数量,然后依次消倾斜拼接,最后消除残差完成综合优化。利用对子孔径进行重新编写序号,将重新编序后的1号子孔径为标准参考子孔径,就可以直接运用上2.2.1中的方法把其当做全孔径进行拼接。现以五个孔径拼接举例:
第一步,先将其重新标序,如图2.2所示;
第二步,将各子孔径上的每一个像素点的权重计算出来:
为了能保证拼接图像的平滑和质量,本文将采用加权平均拼接算法。利用离孔径中心越近权重越大的原理,确定出各像素点的权重,确定权重公式如下:
公式(2.3)中r为子孔径半径, 和 为子孔径中心点坐标。
第三步对子孔径进行拼接:
设五个矩阵 、 、 、 、 包含了子孔径1到5的倾斜系数和偏移系数等数据,通过两两孔径拼接可以将其全部解出。
首先解除倾斜系数和偏移量:
(2.4)
公式(2.4)中, 表示x轴的倾斜系数, 表示y轴的倾斜系数, 表示光轴方向上的平移量
然后解除出各个孔径的残差:
(2.5)
根据公式(2.5)建立矩阵方程:
= (2.6)
公式(2.6)满足最小二乘法的正规方程 V=L-CX
V= , L= , C= , X=
根据最小二乘法的公式: 就可解出各自孔径的平移残差和倾斜残差,用残差来补偿各子孔径应该消除的倾斜系数,并乘上加权系数,即可将所有的子孔径拼接到序数为1的标准参考子孔径上了。
2.3 本章小结
本章首先讨论了全孔径拼接的原理和算法,并在此基础上提出自由选取所需子孔径进行拼接的原理,并举出一个实例详细阐述了自由拼接的算法过程。为下文进行仿真建立了一个理论基础。
3. matlab实现算法仿真
3.1 matlab仿真思路
在上文中已经提出子孔径自由拼接的原理算法,在下面的反正中只需要将持续按照算法编写出即可。选择matlab进行仿真较C++既有优势又有劣势,matlab可以直接运用函数公式,编写程序的难度较C++低,但其执行速度和效率没有C++高。由于本文只进行实验室仿真,不需要投入实际运用,所以选择matlab.
3.2 子孔径自由拼接的实现
3.2.1 读入实验测得的全孔径
利用干涉仪得到一个500mm口径的圆形干涉波面,将其读入matlab程序中,经过边缘提取之后,放入一个600×600的坐标轴中,读入完成后,如图3.1所示
- 上一篇:基于目标极点特征的波形综合技术研究+Fortran仿真
- 下一篇:基于NS2的Ad Hoc网络路由算法仿真与分析
-
-
-
-
-
-
-
大众媒体对公共政策制定的影响
河岸冲刷和泥沙淤积的监测国内外研究现状
当代大学生慈善意识研究+文献综述
中考体育项目与体育教学合理结合的研究
java+mysql车辆管理系统的设计+源代码
杂拟谷盗体内共生菌沃尔...
十二层带中心支撑钢结构...
酸性水汽提装置总汽提塔设计+CAD图纸
乳业同业并购式全产业链...
电站锅炉暖风器设计任务书