论文部分内容阅读
随着无人机遥感技术的不断进步,尤其是无人机航程、载荷的增加和各种数码相机传感器的性能不断提高,使得单架次飞行不仅能够获取的遥感影像越来越多,而且单像片的像幅越来越大,获取地球地表信息的数据含量也越来越大。面对如此复杂庞大的影像数据,不仅许多传统的算法无法快速有效的对原始数据进行处理和深加工,而且一些改进和创新的算法由于逻辑性更强、计算量更大,所以更加难以快速生成无人机影像产品。这种现状极大约束了无人机影像后处理产品的生产效率,难以满足海量影像数据快速处理的需求。近年来,大规模集成电路技术不断发展,各种处理器的性能越来越高。但是,通用CPU(Central Processing Unit)平台单靠提高CPU主频和晶体管数量来加速高性能计算的方法已经逼近制造技术的极限,许多常规算法在CPU处理平台下无法满足高速计算的要求。而由NVIDIA公司主导的图形处理器(GraphicProcess Unit,GPU)在图像处理、三维场景虚拟、仿真计算等领域取得了辉煌的加速效果,因此GPU的通用计算研究已经成为高性能计算领域的热点课题。同样,GPU处理平台的可编程性和高性能计算能力高速发展,也为无人机遥感影像处理算法中可并行化计算的部分提供了很大的加速空间。本文主要是将无人机遥感影像常规算法和NIVDIA GPU的CUDA(ComputeUnified Device Architecture)计算设备架构体系有机结合,对影像处理若干比较密集算法的CUDA并行编程进行了详细的分析设计,提出了相应的解决方案,通过实验得到了10倍以上不等的加速效果,最后总结了CUDA并行算法模型的步骤和要求,并在整个无人机影像数据处理流程中宏观地分析了CUDA并行模型的应用。具体工作概述如下:(1)概述GPU并行计算的发展历程,深入分析了GPU硬件架构和CUDA多线程编程模型的软件体系,详细描述了CUDA程序任务的划分和硬件执行的关系及优化策略等问题,并详细分析总结了CUDA编程模型的算法要求,概括了GPU相对于其他处理平台在高性能通用计算领域的优势。(2)提出了无人机遥感影像处理的畸变差纠正,正射纠正和SIFT匹配三种算法的CUDA并行算法。文章不仅详细分析了这三种算法的原理,而且详细介绍了每种算法的CPU和GPU异构方式的数据调度,数据分解,线程任务分配及映射,存储器和线程优化等的方法。针对三种不同的算法,依据CUDA分别进行了详细的并行分析和策略设计,并且编程实现了这三种并行算法。通过对比单纯CPU平台和GPU异构平台的实际运行情况,验证了两种平台的数据精度和时间差异,并分析了不同算法的实验精度或效果。结果证明这三种算法使用本文提出的并行设计加速方法可以得到10倍以上不等的加速效率。(3)根据GPU硬件架构和CUDA编程模型的特点,结合文章介绍的三种算法的不同加速效果的分析,总结了CUDA并行算法模型的步骤和要求,结合无人机影像处理流程,宏观地介绍在无人机遥感影像处理全流程中如何适当的引入GPU进行并行计算,阐述了如何把遥感处理和并行计算相结合,大幅提高遥感影像的生产效率。