没有合适的资源?快使用搜索试试~ 我知道了~
首页Image_convolution_with_CUDA.pdf
Image_convolution_with_CUDA.pdf
![](https://csdnimg.cn/release/wenkucmsfe/public/img/star.98a08eaa.png)
Convolution filtering is a technique that can be used for a wide array of image processing tasks, some of which may include smoothing and edge detection. In this document we show how a separable convolution filter can be implemented in NVIDIA CUDA and provide some guidelines for performance optimizations.
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/3951213/bg1.jpg)
June 2007
Image Convolution
with CUDA
Victor Podlozhnyuk
sdkfeedback@nvidia.com
![](https://csdnimg.cn/release/download_crawler_static/3951213/bg2.jpg)
June 2007 Page ii of 21
Document Change History
Version Date Responsible Reason for Change
0.1 10/25/2006 Lee Howes Initial version
0.2 2/09/2007 Mark Harris Revised Lee’s original document
0.3 2/26/2007 Eric Young Revised document to match new SDK document
format
0.8 3/21/2007 Mark Harris First release version.
1.0 06/1/2007 Victor Podlozhnyuk Adapted the whitepaper to new
convolutionSeparable project.
![](https://csdnimg.cn/release/download_crawler_static/3951213/bg3.jpg)
June 2007 Page iii of 21
Table of Contents
Table of Contents ...........................................................................................................................................iii
Abstract.............................................................................................................. 1
Motivation.........................................................................................................................................................2
How Does It Work?........................................................................................................................................3
A Naïve Implementation ................................................................................................................................5
Shared Memory and the Apron .....................................................................................................................6
Avoiding idle threads.......................................................................................................................................7
Separable Filters Can Increase Efficiency....................................................................................................9
Optimizing for memory coalescence..........................................................................................................10
Unrolling Loops.............................................................................................................................................11
Implementations Details...............................................................................................................................11
The Row Filter ...............................................................................................................................................11
The Column Filter .........................................................................................................................................13
Running the Sample ......................................................................................................................................14
Conclusion ......................................................................................................................................................16
Bibliography....................................................................................................................................................17
![](https://csdnimg.cn/release/download_crawler_static/3951213/bg4.jpg)
June 2007 Page 1 of 211
Abstract
Convolution filtering is a technique that can be used for a wide array of image processing
tasks, some of which may include smoothing and edge detection. In this document we show
how a separable convolution filter can be implemented in NVIDIA CUDA and provide
some guidelines for performance optimizations.
![](https://csdnimg.cn/release/download_crawler_static/3951213/bg5.jpg)
Image Convolution with CUDA
June 2007 Page 2 of 21
Motivation
Convolutions are used by many applications for engineering and mathematics. Many types
of blur filters or edge detection use convolutions. This example illustrates how using CUDA
can be used for an efficient and high performance implementation of a separable
convolution filter. Figure 1(b) shows the effect of a convolution filter.
Figure 1(a) Original Image
Figure 1(b) Blur convolution filter applied to the source image from Figure 1(a)
These two images show a comparison of an image convolution applied to an original source
image.
剩余20页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)