基于GPU的图像特征提取加速算法
发布时间:2019-03-20 21:16
【摘要】:目前,相对于传统的文本数据来说,图像和视频已经逐渐成为因特网上传输和处理的主要数据类型。然而许多针对图像和视频的应用(如搜索引擎和网络信息过滤系统)由于图像检索算法的限制而无法满足因特网发展的需求。目前的图像检索算法主要基于全局特征和局部特征两种。基于全局特征的检索算法利用颜色、纹理、形状或空间关系等特征来描述图像或视频中的一帧,但这些算法只用一个特征向量进行描述,所以速度快但精度不高,无法很好地满足图像和视频检索的需求。基于局部特征的检索算法用数百甚至上千个特征来描述一幅图像或视频的一帧,因此具有很高的精度。但由于基于局部特征的图像特征提取算法计算比较复杂,运行速度较慢,限制了它的应用。因此,加速基于局部特征的图像特征提取算法是关注的重点。 最近几年,随着半导体技术的发展和多核技术的普及,各种并行硬件逐渐成为应用处理的主流。随着图像处理单元GPU通用性和可编程性的增强,它也成为了其中不可或缺的一个组成部分。现代GPU不仅仅是一个单纯的图像处理引擎,更是一个高度并行的可编程处理器。相比于CPU来说,它有着更为强大的算术处理能力和更高的存储器带宽,这使得它在实时处理领域和高性能计算领域得到了广泛的应用。 本文在GPU上设计和实现了SIFT和SURF的并行加速算法,在我们的实现中充分利用了GPU的特性来加速我们的实现,包括使用共享内存和纹理存储的使用,尽量减少显存的分配和释放次数等等。GPU通常与CPU协同工作,传统的优化策略主要关注GPU上实现的效率,而忽略了CPU对系统性能的影响。本文在设计时考虑合理分配和利用CPU的资源,进一步提高了系统整体性能。本文使用640*480像素大小的图片测试结果表明,相对于CPU上的串行版本而言,SIFT的实现达到了143.7倍的加速,吞吐量达到93.39帧/秒,而SURF的实现达到了253.2倍的加速,吞吐量达到346.82帧/秒,很好地满足了图像特征提取的实时处理的需求。考虑到SIFT与SURF处理速度的差距,我们建议在图像匹配的实时处理系统中使用SURF算法来进行图像特征的提取。
[Abstract]:At present, compared with the traditional text data, image and video have gradually become the main data types transmitted and processed on the Internet. However, many applications for image and video, such as search engine and network information filtering system, are unable to meet the needs of the development of Internet due to the limitation of image retrieval algorithms. Current image retrieval algorithms are mainly based on global features and local features. Global feature-based retrieval algorithms use features such as color, texture, shape or spatial relationship to describe a frame in an image or video, but these algorithms are described by only one feature vector, so the speed is fast but the precision is not high. It can not meet the needs of image and video retrieval. The local feature-based retrieval algorithm uses hundreds or even thousands of features to describe a frame of an image or video, so it has high accuracy. However, the computation of image feature extraction algorithm based on local feature is complicated and the running speed is slow, which limits its application. Therefore, accelerating the image feature extraction algorithm based on local features is the focus of attention. In recent years, with the development of semiconductor technology and the popularization of multi-core technology, various parallel hardware has gradually become the mainstream of application processing. With the enhancement of generality and programmability of image processing unit (GPU), it has become an indispensable part of it. Modern GPU is not only a simple image processing engine, but also a highly parallel programmable processor. Compared with CPU, it has more powerful arithmetic processing ability and higher memory bandwidth, which makes it widely used in real-time processing and high-performance computing. In this paper, we design and implement a parallel acceleration algorithm for SIFT and SURF on GPU. In our implementation, we make full use of the features of GPU to accelerate our implementation, including the use of shared memory and texture storage. GPUs usually work with CPU. Traditional optimization strategies focus on the efficiency of implementation on GPU and ignore the impact of CPU on system performance. In this paper, the rational allocation and utilization of CPU resources are considered to further improve the overall performance of the system. In this paper, the result of image test with the size of 640 pixels shows that compared with the serial version on CPU, the implementation of SIFT is 143.7 times faster, the throughput is 93.39 frames / second, and the implementation of SURF is 253.2 times faster. The throughput is up to 346.82 frames / sec, which satisfies the real-time processing requirements of image feature extraction. Considering the difference of processing speed between SIFT and SURF, we propose to use SURF algorithm to extract image features in real-time image matching processing system.
【学位授予单位】:复旦大学
【学位级别】:硕士
【学位授予年份】:2013
【分类号】:TP391.41
[Abstract]:At present, compared with the traditional text data, image and video have gradually become the main data types transmitted and processed on the Internet. However, many applications for image and video, such as search engine and network information filtering system, are unable to meet the needs of the development of Internet due to the limitation of image retrieval algorithms. Current image retrieval algorithms are mainly based on global features and local features. Global feature-based retrieval algorithms use features such as color, texture, shape or spatial relationship to describe a frame in an image or video, but these algorithms are described by only one feature vector, so the speed is fast but the precision is not high. It can not meet the needs of image and video retrieval. The local feature-based retrieval algorithm uses hundreds or even thousands of features to describe a frame of an image or video, so it has high accuracy. However, the computation of image feature extraction algorithm based on local feature is complicated and the running speed is slow, which limits its application. Therefore, accelerating the image feature extraction algorithm based on local features is the focus of attention. In recent years, with the development of semiconductor technology and the popularization of multi-core technology, various parallel hardware has gradually become the mainstream of application processing. With the enhancement of generality and programmability of image processing unit (GPU), it has become an indispensable part of it. Modern GPU is not only a simple image processing engine, but also a highly parallel programmable processor. Compared with CPU, it has more powerful arithmetic processing ability and higher memory bandwidth, which makes it widely used in real-time processing and high-performance computing. In this paper, we design and implement a parallel acceleration algorithm for SIFT and SURF on GPU. In our implementation, we make full use of the features of GPU to accelerate our implementation, including the use of shared memory and texture storage. GPUs usually work with CPU. Traditional optimization strategies focus on the efficiency of implementation on GPU and ignore the impact of CPU on system performance. In this paper, the rational allocation and utilization of CPU resources are considered to further improve the overall performance of the system. In this paper, the result of image test with the size of 640 pixels shows that compared with the serial version on CPU, the implementation of SIFT is 143.7 times faster, the throughput is 93.39 frames / second, and the implementation of SURF is 253.2 times faster. The throughput is up to 346.82 frames / sec, which satisfies the real-time processing requirements of image feature extraction. Considering the difference of processing speed between SIFT and SURF, we propose to use SURF algorithm to extract image features in real-time image matching processing system.
【学位授予单位】:复旦大学
【学位级别】:硕士
【学位授予年份】:2013
【分类号】:TP391.41
【相似文献】
相关期刊论文 前10条
1 范羚,吴小培,龙飞,张道信,郭晓静;基于独立分量分析的图像特征提取及去噪[J];计算机工程与应用;2003年09期
2 林明星,王晓华,管志光,丁凤华,赵永瑞;基于差分码的图像特征提取方法研究[J];仪器仪表学报;2004年S2期
3 许世军;杨晓东;任小玲;;光学图像特征提取与识别的智能算子发展研究[J];信息系统工程;2010年10期
4 杜海顺;李玉玲;侯彦东;金勇;;一种人脸图像特征提取的局部和整体间距嵌入方法[J];计算机科学;2012年09期
5 孔锐;施泽生;郭立;张国宣;;独立分量分析在图像特征提取中的应用[J];模式识别与人工智能;2004年01期
6 周开军;阳春华;牟学民;桂卫华;;一种基于图像特征提取的浮选回收率预测算法[J];高技术通讯;2009年09期
7 赵英亮;王黎明;韩焱;;基于形态学与聚类相结合的图像特征提取方法研究[J];弹箭与制导学报;2010年02期
8 周春光;孙明芳;王u&菁;陈前;刘小华;刘昱昊;;基于稀疏张量的人脸图像特征提取[J];吉林大学学报(工学版);2012年06期
9 韩吉衢;孟俊敏;赵俊生;;海洋溢油合成孔径雷达图像特征提取及其关键度分析[J];海洋学报(中文版);2013年01期
10 韦v,
本文编号:2444638
本文链接:https://www.wllwen.com/kejilunwen/sousuoyinqinglunwen/2444638.html