下载中心
优秀审稿专家
优秀论文
相关链接
摘要
随着遥感影像数据量以及复杂程度的日益增加,遥感图像的快速处理成为实际应用过程中亟需解决的问题。为了实现遥感影像的实时变化检测,针对基于变化矢量分析CVA的变化检测算法,设计了一种基于统一计算设备构架CUDA的并行处理模型。首先利用地理空间数据提取库GDAL实现大数据量遥感影像的分块读取、操作和保存;其次将基于变化矢量分析的变化检测过程分为变化强度检测、映射表构建和变化方向检测,并借助CUDA C将变化矢量分析算法的3个步骤嵌入到CPU和GPU组成的异构平台上进行实验;最后利用该模型对不同数据量的遥感影像进行CVA变化检测并作对比分析。实验结果表明:与CPU串行相比,基于GPU/CUDA的遥感影像CVA的变化检测速度提高了10倍左右;在一定程度上,达到了实时变化检测的效果。
With the rapidly developing society, land use or cover change has gained considerable attention. Highly economic, practical, and efficient remote sensing technology has been used in various methods of land dynamic change detection. However, rapid image processing has become a problem with the increase in data volume and complexity in remote sensing. New complex algorithms that increase both computation volume and time have been proposed to achieve a high precision of change detection. Moreover, the Central Processing Unit (CPU) computing cells are limited and cannot meet real-time requirements. To achieve real-time change detection using remote sensing image, this paper designs a parallel processing model based on Compute Unified Device Architecture (CUDA), in reference to the CVA-based change detection algorithm.The model can be divided into the following steps. To make the general PC without the large cache process data, the model first uses Geospatial Data Abstraction Library to determine image block reading, block operation, and block saving. Second, CVA change detection is paralleled through three sub-processes:changing the magnitude detection, designing the index table, and changing the direction of detection. Then, the three sub-processes are embedded in CPU and Graphic Process Unit (GPU) through CUDA C. Finally, different sizes of multi-group images are studied with the same model to execute CVA change detection in consideration of the effect of image data volume and block size on the change detection efficiency. For comparison, the same group image data are also processed using OpenMP on multi-core systems.In consideration of image data volume, the change detection speedup remains unchanged if the data volume is less than the total PC cache. Executing image block is already unnecessary. However, if the data volume is larger than the total PC cache, image block processing is needed to ensure that the cache is not out. Larger image block means more efficient change detection. The efficiency of the parallel computing of CVA-based change detection is increased 10 times in GPU than serial processing in CPU. However, OpenMP is only about three times faster than serial processing in CPU. GPU is more capable in digital image processing than CPU.Change detection processing is serial between the block and image block, and processing is parallel in each image block. With enough cache, larger image block means higher degree of parallelization and change detection efficiency. Parallel operation integrated with CUDA effectively improves change detection based on CVA. To some extent, this operation reaches the effect of the real-time change detection.