基于gpu的二维地表粗糙度参数计算方法
【专利摘要】本发明公开一种基于GPU的二维地表粗糙度参数计算方法,与常规方法的不同之处在于:结合CPU处理数据的读取,逻辑处理和输出工作,使用图形处理器(Graphic?Processor?Unit,GPU)处理地表三维数据,并计算二维的地表粗糙度参数。在此计算过程中,数据量非常大,但是数据相关性低,具有相同的执行程序。由于上述特点,基于GPU,让更多的计算单元同时并行的执行计算,大大地缩短了计算时间。本方法计算速度快、精度高、易操作,更适合野外的实时测量,可以及时、方便的看到计算结果,节省了大量的等待时间。
【专利说明】基于GPU的二维地表粗糙度参数计算方法
【技术领域】
[0001]本发明涉及数据处理方法,尤其涉及一种基于GPU的二维地表粗糙度参数计算方法。
【背景技术】
[0002]地表粗糙度是用来描述地表的微形貌及其不规则性,表面高度标准离差和相关长度是描述随机表面高度的两个统计变量,它是相对于一种基准表面而言的。地表粗糙度的测量是土壤侵蚀研究的关键问题之一,是表征土壤水文特征和影响土壤性质的一个重要参数。在利用微波辐射计进行对地观测的过程中,地表粗糙度是土壤微波辐射的重要影响因素。
[0003]在通过地面实测数据对卫星数据进行真实性检验的过程中,由于微波辐射计、雷达等探测器探测的是一个面积散射量的积分值,因此,在实际测量中,获得三维的地表数据,从而计算二维的地表粗糙度参数更逼近真实情况。
[0004]目前,常用的地表粗糙度测量方法包括链条法、粗糙度板法等,这些方法属于接触式测量方法,且只能得到一维的地表粗糙度参数,图像法可以得到二维的粗糙度参数,但是精度较低,且后续 的处理需要的时间相对较长。
[0005]地表粗糙度测试仪(Li,Zhao and Zheng,2012),无需人工参与、测试速度快、精度高,可以获得三维的地表形状,单次扫描得到的点数大约为40,000-100,000个点。对于这些数据点,计算相关长度和表面高度离差工作量较大、耗时较多,尤其是当数据点超过65,535时,因为这已经超过了 Matlab的计算极限,因此需要高性能的计算来解决。
[0006]图形处理器(GPU,Graphic Processing Unit)是显卡的核心,如同CPU在电脑中的作用,它具有数百个核,可以并行执行成百上千个线程,拥有巨大的计算能力。GPU已经吸引越来越多的科学家和工程师们应用它建立高性能的计算平台,应用领域涉及科学、电子自动化设计、计算机视觉、医疗成像、工程等。
【发明内容】
[0007]为了解决现有技术对大数据量的数据点计算二维粗糙度参数所带来的耗时很长的问题,本发明提供了一种基于GPU的二维地表粗糙度计算方法,该方法能够得到二维的地表粗糙度参数,更接近实际情况。同时,计算速度快、精度高、易操作,更适合野外的实时测量,可以及时、方便的看到计算结果,节省了大量的等待时间。
[0008]本发明解决技术问题所采取的技术方案如下:
[0009]一种基于GPU的二维地表粗糙度参数计算方法,包括以下步骤:
[0010]步骤O、设r' =(j_l) Δy,这样每取一个Ar,给定一个j,就可以计算出r’的值。在这里我们取Ar=IJlJr' =(J-1)0
[0011]步骤1、给定一个值j( j为≥O的整数),找出在水平面内距离满足(j-0.5,j+0.5)的所有点对(Xpm,ypm,Zpm)> (xqm, yqm, Zqm), m为满足条件的点数。[0012]具体做法:根据公式
【权利要求】
1.一种基于GPU的二维地表粗糙度参数计算方法,其特征在于,包括以下步骤: 步骤O、设r' =(j_l) Δy,这样每取一个Ar,给定一个j,就可以计算出r’的值;取Δy=1,则 r' =(j-l); 步骤1、给定一个值j,j为≥I的整数,找出在水平面内距离满足(j-0.5,j+0.5)的所有点对(xpm,ypm,zpm)> (xqm, yqm, zqm), m为满足条件的点数: 根据公式
2.根据权利要求1所述的二维地表粗糙度参数计算方法,其特征在于, 对于不同j的取值,P (j)在不同的块中进行计算。
3.根据权利要求1-2中的任意一项所述的二维地表粗糙度参数计算方法,其特征在于, 计算过程中,根据需要计算的距离j的个数来设置块的数量。
4.根据权利要求1-2中的任意一项所述的二维地表粗糙度参数计算方法,其特征在于, 对于一个块内的线程的数量,即块的大小是需要通过试验结果择优的。
5.根据权利要求1-4中的任意一项所述的二维地表粗糙度参数计算方法,其特征在于, 计算过程中,考虑到数据的存储层次,将数组按列优先的顺序依次存储在内存中,首先存储所有点的X值,其次是所有点的I值,最后是所有点的Z值。
6.根据权利要求1-4中的任意一项所述的二维地表粗糙度参数计算方法,其特征在于, 计算过程中,为了实现合并内存访问,将数据点的个数作为warp的大小。
【文档编号】G01B21/30GK103954258SQ201410146672
【公开日】2014年7月30日 申请日期:2014年4月11日 优先权日:2014年4月11日
【发明者】李晓洁, 赵凯 申请人:中国科学院东北地理与农业生态研究所