CN102184397A - 遥感影像的快速正射纠正方法 - Google Patents
遥感影像的快速正射纠正方法 Download PDFInfo
- Publication number
- CN102184397A CN102184397A CN2011101026842A CN201110102684A CN102184397A CN 102184397 A CN102184397 A CN 102184397A CN 2011101026842 A CN2011101026842 A CN 2011101026842A CN 201110102684 A CN201110102684 A CN 201110102684A CN 102184397 A CN102184397 A CN 102184397A
- Authority
- CN
- China
- Prior art keywords
- orthography
- gpu
- remote sensing
- virtual
- sensing image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
本申请涉及一种遥感影像的快速正射纠正方法,利用多核CPU进行数据调度,通过特定的处理方法将传统正射纠正过程中影像投影变换以及影像采样这类的任务映射到GPU支持的图形绘制流水线上,利用GPU强大的并行处理能力和高带宽的数据传输能力实现航空航天遥感影像的快速正射纠正。
Description
技术领域
本发明涉及一种遥感影像的正射纠正方法,更具体而言涉及一种利用多核CPU进行数据调度,同时通过特定的处理方法利用图形处理器GPU(Graphic Processing Unit,即计算机上的显卡)实现并行化的影像重采样,从而实现航空航天遥感影像的快速正射纠正方法。
背景技术
随着遥感技术的发展,通过遥感技术所获得的遥感影像或数据的用途越来越广,例如应用于测绘,农业,林业,地质,水文,环境等各个社会信息服务领域。
传统的遥感影像正射纠正一般包括两个步骤:第一,通过外业测量或已有的地形图资料采集数据信息;第二,将获得的数据信息导入专业的遥感或数字摄影测量系统完成影像的正射纠正。
目前航空航天影像的正射纠正过程都是利用CPU以串行方式对影像进行投影变换和重采样(如线性内插)。近年来传感器技术的进步带来的是海量数据的处理需求,传统的基于CPU串式影像正射纠正不能够满足目前对快速正射影像的生产的要求。目前解决快速正射影像纠正多采用分布式集群的方式利用多机器CPU进行处理,这样虽然可以提高系统处理正射影像的速度,但由于受多机IO的限制,分布式正射影像生产能够提高的速度有限,同时也提高了单位正射影像生产成本。
高度并行化的GPU是当前主流计算系统的一个组成部分,由于GPU具有并行的处理架构,因此在处理数字图形图像的速度上比CPU 更具得天独厚的优势。采用GPU进行正射纠正,既可以充分利用个人电脑或图形工作站现有的GPU硬件计算功能,同时又使得正射纠正处理速度和数据吞吐量方面要远超出基于CPU的纠正方法。因此本发明提出了一种基于GPU的快速正射纠正方法,可以为遥感软件系统提供高性能的准实时正射影像纠正能力,以满足社会各相关领域对正射影像快速生产的要求。
发明内容
本发明则是通过一定的处理方法,将传统正射纠正过程中影像投影变换以及影像采样这类的任务映射到GPU支持的图形绘制流水线上,充分利用GPU强大的并行处理能力和高带宽的数据传输能力实现航空航天遥感影像的快速正射纠正。
利用本方法,可以使得正射纠正速度比在传统CPU上进行处理要快10倍以上,从而可以实现航空航天遥感影像的准实时正射纠正。
附图说明
下面结合附图对本发明进一步说明
图1是本发明利用图形处理单元进行正射纠正处理时,使用迭代单片量测计算的示意图;
图2是本发明利用图形处理单元进行正射纠正处理时,使用原始影像四个角点计算正射影像地理范围的示意图;
图3是本发明中将虚拟正射影像进行分解的示意图;
图4是本发明中矢量平面顶点和顶点连接的拓扑关系示意图;
图5是本发明中将正射纠正过程映射成OpenGL 3D绘制操作的框图;
图6是本发明中多核CPU与GPU相结合的正射纠正处理方法的逻辑框图。
具体实施方式
下面说明本发明中利用图形处理单元对遥感影像进行快速正射纠正处理的基本过程。
第一步,首先利用传感器几何模型、原始影像四个角点坐标、数字高程模型以及正射影像地面分解率(GSD),通过自动单片迭代量测技术快速计算出四个角点 的地理坐标 ,然后分别计算X和Y方向最大值和最小值,则利用下列公式形成一个宽为VOW,高为VOH的虚拟正射影像;
第二步:考虑到图形处理器处理的数据量有限,而遥感影像的数据量和尺寸都非常大,因此需要进行分块处理。首先通过OpenGL函数获取当前系统中图形处理器支持纹理和视口的尺寸信息,然后自动选择一个合理长(GW)宽(GH)将虚拟正射影像分解成NX×NY块小虚拟正射影像,参见图2所示,其中:NX = ceil(VOW/GW) NY = ceil(VOH/GH)(ceil为向上取整函数,由于VOW/GW和VOH/GH不是整数,所以取距离计算后浮点数最近的一个较大的整数)。
第三步:将第二步分解得到的每一个虚拟小块正射影像,按照图3所示的三角网方式构成一个矢量平面。图3中的黑色实心圆代表虚拟小块正射影的每一个像素,利用这些像素的地理坐标以及连接索引关系,通过OpenGL的矢量Buffer对象方式加载到图形处理单元。
第四步:按照每一个虚拟小正射影像地理范围,从数字高程模型中提取覆盖此小正射影像范围的数字高程模型数据,通过OpenGL的浮点纹理Buffer对象方式加载到图形处理单元中,同时还在原始影像上提取在此小正射影像范围内的原始影像,以图像纹理方式加载到图形处理单元中。
第五步:利用GPU执行并行正射纠正任务。参见图5,此时要做的主要工作是把待求解的任务映射到GPU支持的图形绘制流水线上。本方法是将正射纠正任务的输入数据利用第三步和第四步得到的顶点位置、拓扑关系信息、浮点高程纹理和影像纹理等图形绘制要素来表达,而相应的处理算法则被分解为一系列的执行步骤,并改写为GPU的顶点处理程序和片段处理程序,然后,调用OpenGL 3D API(如glTexImage2D等函数)执行图形绘制操作,图形绘制流水线调用相应的片段程序进行处理;最后,保存在后台帧缓存中的绘制结果就是本算法的正射纠正输出数据。将正射纠正任务映射到GPU图形绘制流水线的具体方法描述如下:
(1) 将DEM数据、虚拟正射影像物方坐标和拓扑连接关系以及原始影像数据通过glTexImage2D和glVertexPointer等3D API载入GPU中,并在GPU中分配相应的存储空间;
(2) 将共线方程或有理多项式模型计算物方到像方坐标的整个过程,利用GLSL语言编写,然后利用glShaderSource装载进OpenGL流水线中,并调用glCompilerShader编译,生成GPU中的顶点处理程序,实现从浮点纹理上内插高程值,并通过共线方程或有理多项式模型计算每个顶点所对应的影像纹理坐标,同时还将输入的正射影像物方坐标转成像点坐标,从而将GPU中缺省的顶点程序改写成专为正射影像处理定制的顶点处理程序;
(3) 将背景色和正射影像无效区处理算法利用GLSL语言编写,然后利用glShaderSource装载进OpenGL流水线中,并调用glCompilerShader编译,生成GPU中的片段处理程序,从而改写GPU中缺省的片段处理程序,实现正射影像纠正中背景色和无效区填色等处理工作;
(4) 利用glBindFramebuffer函数在GPU中构建一个后台帧缓冲对象,并利用glFramebufferRenderbuffer函数将一个GPU绘制对象与帧缓冲对象进行管理,从而将OpenGL的图形绘制流水线输出改为后台处理;
(5) 调用glDrawElements函数将正射纠正的任务添加到GPU的3D流水线中;
(6) 调用glBindBuffer在GPU中开辟一块接收GPU处理后的正射影像缓冲对象,然后调用glReadPixels函数从该GPU缓冲对象中获取正射影像块。
第六步:重复3到5步的处理,完成余下所有小虚拟正射影像的纠正,然后根据地理坐标进行简单拼接,写入最终的正射影像文件,完成整个影像正射纠正处理任务。
上述方法是利用GPU正射纠正的核心,但每次只能对一块小虚拟正射影像进行准实时纠正,为了充分利用现在的多核CPU的数据调度能力,本发明还采用了多核CPU与GPU相结合的正射纠正处理方法,可以同时对多块虚拟小正射影像块进行GPU纠正。本方法的难点在于多线程间数据同步以及多线程间竞争性地使用有限的GPU性能,为此本方法设计了一种并行队列,通过线程间的信号同步、事件通知等机制,可以有效地处理这些问题,其处理逻辑图如图6。
第一步:根据当前CPU的核数,在系统中启动若干调度执行单元,也是通常说的数据调度线程。同时还在系统中启动若干GPU纠正执行单元,也就是通常所说的数据处理线程。
第二步:将方法(一)中的第二步分解到的NX×NY块小虚拟正射影像的坐标数据、拓扑关系数据、高程模型以及原始影像数据,添加到系统的并行共享待纠正队列中。并行共享待纠正队列需要处理多核并行调度和多核并行GPU纠正这两功能模块的数据同步问题,这类似实现多对多的“生产-消费”这一并行计算模式。
第三步:在多核并行GPU纠正中,每个GPU纠正执行单元利用方法(一)实现GPU的准实时正射纠正,然后将纠正结果添加到并行共享待写入队列中。
第四步:在并行共享待写入队列的另一头,则由一个正射影像拼接写入线程,将这些已经纠正好的数据进行简单拼接,最后写入正射影像文件,完成最终的正射影像处理。
本发明开发了一种专有算法,使得支持OpenGL 2.0标准的显卡可以利用数字高程模型(DEM)对具有有理多项式模型或共线方程参数的遥感影像进行实时正射纠正。由于本发明充分应用了GPU硬件加速技术,并且GPU纠正是并行的,而且因此可以实现基于GPU遥感影像的准实时正射纠正。
Claims (7)
1.一种遥感影像的快速正射纠正方法,该方法包括以下步骤:
第一步,利用传感器几何模型、原始影像四个角点坐标、数字高程模型以及正射影像地面分解率(GSD),快速估计出正射影像的宽(VOW)和高(VOH),形成一个VOW*VOH的虚拟正射影像;
第二步,进行分块处理,将虚拟正射影像分解成NX×NY块小虚拟正射影像,其中NX = ceil(VOW/GW) NY = ceil(VOH/GH) (ceil为向上取整函数,由于VOW/GW和VOH/GH不是整数,所以取距离计算后浮点数最近的一个较大的整数);
第三步:将第二步分解得到的每一个虚拟小块正射影像,利用每个像素所对应的平面地理坐标构成一个矢量平面,将这些像素所对应的地理坐标以及连接索引关系以矢量对象方式加载到图形处理单元;
第四步:按照每一个虚拟的小正射影像地理范围,提取覆盖此小正射影像范围的数字高程模型数据,并以浮点纹理方式加载到图形处理单元中,同时在原始影像上提取在此小正射影像范围内的原始影像,以图像纹理方式加载到图形处理单元中;
第五步:利用GPU执行并行正射纠正任务,把待求解的任务映射到GPU支持的图形绘制流水线上,利用第三步和第四步得到的顶点位置、拓扑关系信息、浮点高程纹理和影像纹理等图形绘制要素,执行图形绘制操作,图形绘制流水线调用相应的片段程序进行处理;最后保存在后台帧缓存中的绘制结果就是本算法的正射纠正输出数据;
第六步:重复3到5步的处理,完成余下所有小虚拟正射影像的纠正,然后根据地理坐标进行简单拼接,生成最终的正射影像文件。
2.如权利要求1所述的遥感影像正射纠正方法,其中第一步的快速估计正射纠正影响是通过自动单片迭代量测技术实现的。
3.如权利要求1所述的遥感影像正射纠正方法,其中第二步的分块处理是通过OpenGL函数获取当前系统中图形处理器支持纹理和视口的尺寸信息,然后自动选择一个合理长(GW)宽(GH)将虚拟正射影像分解成NX×NY块小虚拟正射影像。
4.如权利要求1所述的遥感影像正射纠正方法,其中第三步的加载是通过OpenGL的矢量Buffer对象方式加载到图形处理单元的。
5.如权利要求1所述的遥感影像正射纠正方法,其中第四步对数字高程模型数据是通过OpenGL的浮点纹理Buffer对象方式加载到图形处理单元中的。
6.如权利要求1所述的遥感影像正射纠正方法,其中执行图形绘制操作的处理算法被分解为一系列的执行步骤,并改写为GPU的顶点处理程序和片段处理程序。
7.如权利要求1所述的遥感影像正射纠正方法,还采用了多核CPU与GPU相结合的正射纠正处理方法,该方法包括:
第一步:根据当前CPU的核数,在系统中启动若干调度执行单元;
第二步:权利要求1中分解到的NX×NY块小虚拟正射影像的坐标数据、拓扑关系数据、高程模型以及原始影像数据,添加到系统的并行共享待纠正队列中;
第三步:在多核并行GPU纠正中,每个GPU纠正执行单元实现GPU的准实时正射纠正,然后将纠正结果添加到并行共享待写入队列中;
第四步:在并行共享待写入队列的另一头,由一个正射影像拼接写入线程,将这些已经纠正好的数据进行简单拼接,最后写入正射影像文件,完成最终的正射影像处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101026842A CN102184397A (zh) | 2011-04-25 | 2011-04-25 | 遥感影像的快速正射纠正方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101026842A CN102184397A (zh) | 2011-04-25 | 2011-04-25 | 遥感影像的快速正射纠正方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102184397A true CN102184397A (zh) | 2011-09-14 |
Family
ID=44570571
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101026842A Pending CN102184397A (zh) | 2011-04-25 | 2011-04-25 | 遥感影像的快速正射纠正方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102184397A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020620A (zh) * | 2012-12-14 | 2013-04-03 | 武汉大学 | 基于cpu和gpu协同处理的遥感影像正射校正方法 |
CN103049421A (zh) * | 2012-12-11 | 2013-04-17 | 百度在线网络技术(北京)有限公司 | 一种cpu与协处理器间的数据传输方法和装置 |
CN103218174A (zh) * | 2013-03-29 | 2013-07-24 | 航天恒星科技有限公司 | 一种用于遥感图像的io双缓存交互多核处理方法 |
CN103400354A (zh) * | 2013-08-14 | 2013-11-20 | 山东大学 | 基于OpenMP的遥感影像几何校正并行处理方法 |
CN108269228A (zh) * | 2018-02-08 | 2018-07-10 | 重庆市地理信息中心 | 基于gpu并行计算的无人机影像拉花区域自动探测方法 |
CN109063711A (zh) * | 2018-07-06 | 2018-12-21 | 航天星图科技(北京)有限公司 | 一种基于llts框架的卫星影像正射纠正算法 |
CN111275608A (zh) * | 2020-01-20 | 2020-06-12 | 桂林电子科技大学 | 一种基于fpga的遥感影像正射纠正并行系统 |
CN112255869A (zh) * | 2020-11-03 | 2021-01-22 | 成都景中教育软件有限公司 | 一种基于参数的三维图形动态投影实现方法 |
CN115423696A (zh) * | 2022-07-29 | 2022-12-02 | 上海海洋大学 | 一种自适应线程参数的遥感正射影像并行生成方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100544345B1 (ko) * | 2005-11-30 | 2006-01-23 | 주식회사 한국지오매틱스 | 항공사진의 정사영상 제작방법 |
CN101034475A (zh) * | 2007-03-29 | 2007-09-12 | 上海大学 | 无阴影卫星遥感正射数字图像的计算机生成方法 |
JP2007248216A (ja) * | 2006-03-15 | 2007-09-27 | Mitsubishi Electric Corp | 合成開口レーダ画像のオルソ補正装置及びオルソ補正方法 |
US20080247669A1 (en) * | 2007-04-04 | 2008-10-09 | National Central University | Method of Ortho-Rectification for high-resolution remote sensing image |
CN101750606A (zh) * | 2009-11-24 | 2010-06-23 | 中国科学院对地观测与数字地球科学中心 | 自动和稳健的卫星遥感影像正射校正方法 |
-
2011
- 2011-04-25 CN CN2011101026842A patent/CN102184397A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100544345B1 (ko) * | 2005-11-30 | 2006-01-23 | 주식회사 한국지오매틱스 | 항공사진의 정사영상 제작방법 |
JP2007248216A (ja) * | 2006-03-15 | 2007-09-27 | Mitsubishi Electric Corp | 合成開口レーダ画像のオルソ補正装置及びオルソ補正方法 |
CN101034475A (zh) * | 2007-03-29 | 2007-09-12 | 上海大学 | 无阴影卫星遥感正射数字图像的计算机生成方法 |
US20080247669A1 (en) * | 2007-04-04 | 2008-10-09 | National Central University | Method of Ortho-Rectification for high-resolution remote sensing image |
CN101750606A (zh) * | 2009-11-24 | 2010-06-23 | 中国科学院对地观测与数字地球科学中心 | 自动和稳健的卫星遥感影像正射校正方法 |
Non-Patent Citations (6)
Title |
---|
《测绘工程》 20080630 杨靖宇等 基于可编程图形硬件的遥感影像并行处理研究 21-23,27 1-7 第17卷, 第3期 * |
《现代测绘》 20090531 候毅等 基于GPU的数字影像的正射纠正技术的研究 10-11 1-7 第32卷, 第3期 * |
侯毅等: "基于GPU的数字影像的正射纠正技术的研究 ", 《现代测绘》 * |
侯毅等: "基于GPU的数字影像的正射纠正技术的研究", 《现代测绘》, no. 03, 15 May 2009 (2009-05-15) * |
杨靖宇等: "基于可编程图形硬件的遥感影像并行处理研究 ", 《测绘工程》 * |
杨靖宇等: "基于可编程图形硬件的遥感影像并行处理研究", 《测绘工程》, no. 03, 25 June 2008 (2008-06-25) * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103049421B (zh) * | 2012-12-11 | 2019-08-27 | 百度在线网络技术(北京)有限公司 | 一种cpu与协处理器间的数据传输方法和装置 |
CN103049421A (zh) * | 2012-12-11 | 2013-04-17 | 百度在线网络技术(北京)有限公司 | 一种cpu与协处理器间的数据传输方法和装置 |
CN103020620B (zh) * | 2012-12-14 | 2016-01-20 | 武汉大学 | 基于cpu和gpu协同处理的遥感影像正射校正方法 |
CN103020620A (zh) * | 2012-12-14 | 2013-04-03 | 武汉大学 | 基于cpu和gpu协同处理的遥感影像正射校正方法 |
CN103218174A (zh) * | 2013-03-29 | 2013-07-24 | 航天恒星科技有限公司 | 一种用于遥感图像的io双缓存交互多核处理方法 |
CN103218174B (zh) * | 2013-03-29 | 2015-11-25 | 航天恒星科技有限公司 | 一种用于遥感图像的io双缓存交互多核处理方法 |
CN103400354A (zh) * | 2013-08-14 | 2013-11-20 | 山东大学 | 基于OpenMP的遥感影像几何校正并行处理方法 |
CN103400354B (zh) * | 2013-08-14 | 2015-11-18 | 山东大学 | 基于OpenMP的遥感影像几何校正并行处理方法 |
CN108269228A (zh) * | 2018-02-08 | 2018-07-10 | 重庆市地理信息中心 | 基于gpu并行计算的无人机影像拉花区域自动探测方法 |
CN109063711A (zh) * | 2018-07-06 | 2018-12-21 | 航天星图科技(北京)有限公司 | 一种基于llts框架的卫星影像正射纠正算法 |
CN109063711B (zh) * | 2018-07-06 | 2021-10-29 | 中科星图股份有限公司 | 一种基于llts框架的卫星影像正射纠正算法 |
CN111275608A (zh) * | 2020-01-20 | 2020-06-12 | 桂林电子科技大学 | 一种基于fpga的遥感影像正射纠正并行系统 |
CN111275608B (zh) * | 2020-01-20 | 2023-03-14 | 桂林电子科技大学 | 一种基于fpga的遥感影像正射纠正并行系统 |
CN112255869A (zh) * | 2020-11-03 | 2021-01-22 | 成都景中教育软件有限公司 | 一种基于参数的三维图形动态投影实现方法 |
CN112255869B (zh) * | 2020-11-03 | 2021-09-14 | 成都景中教育软件有限公司 | 一种基于参数的三维图形动态投影实现方法 |
CN115423696A (zh) * | 2022-07-29 | 2022-12-02 | 上海海洋大学 | 一种自适应线程参数的遥感正射影像并行生成方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102184397A (zh) | 遥感影像的快速正射纠正方法 | |
KR102592633B1 (ko) | 이미지 렌더링 방법 및 관련 기기 | |
CN110751696B (zh) | 将BIM模型数据转化为glTF数据的方法、装置、设备及介质 | |
US8505001B2 (en) | Method and system for utilizing data flow graphs to compile shaders | |
CN111402374B (zh) | 多路视频与三维模型融合方法及其装置、设备和存储介质 | |
KR20140053370A (ko) | 그래픽 프로세싱을 위한 메모리 복사 엔진 | |
CN110032614A (zh) | 基于wasm的地图矢量渲染方法和装置 | |
Livny et al. | A GPU persistent grid mapping for terrain rendering | |
WO2023231537A1 (zh) | 地形图像渲染方法、装置、设备及计算机可读存储介质及计算机程序产品 | |
CN110728622B (zh) | 鱼眼图像处理方法、装置、电子设备及计算机可读介质 | |
CN115371699B (zh) | 视觉惯性里程计方法、装置及电子设备 | |
CN103700060B (zh) | 一种海量任意形状多边形的快速可视化方法 | |
CN103096129B (zh) | 多卫星遥感数据远程实时播报系统及方法 | |
JP5893445B2 (ja) | 画像処理装置、および画像処理装置の動作方法 | |
US8379037B1 (en) | Multi-resolution texture aggregation | |
CN103902343A (zh) | 一种基于Delaunay三角网精度控制的瓦片地图下载与拼接方法 | |
CN105894551A (zh) | 图像绘制方法及装置 | |
CN110517209A (zh) | 数据处理方法、装置、系统以及计算机可读存储介质 | |
US20220357159A1 (en) | Navigation Method, Navigation Apparatus, Electronic Device, and Storage Medium | |
CN114926916A (zh) | 一种5g无人机动态ai巡检系统 | |
US10255728B1 (en) | Planet-scale positioning of augmented reality content | |
CN114511659A (zh) | 数字地球地形约束下的体绘制渲染优化方法 | |
US9092907B2 (en) | Image shader using two-tiered lookup table for implementing style attribute references | |
US20230169736A1 (en) | Planet-scale positioning of augmented reality content | |
CN109087381B (zh) | 一种基于双发射vliw的统一架构渲染着色器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110914 |
|
WD01 | Invention patent application deemed withdrawn after publication |