一:概述
在接下来的几篇文章中,我们将讨论一组重要的并行计算模式。这些模式是许多并行算法的基础,这些算法出现在许多并行应用中。我们将从卷积开始,卷积是一种流行的数组操作,广泛应用于信号处理、数字录音、图像处理、视频处理和计算机视觉等领域。在这些应用领域中,卷积通常作为一种滤波器,转化信号和像素为更理想的值。我们的图像模糊核就是这样一种滤波器,它平滑信号值,以便人们能够看到整体趋势。另一个例子是高斯滤波器,这是一种卷积滤波器,可以用来锐化图像中物体的边界和边缘。
卷积通常执行大量的算术运算,以生成每个输出元素。对于大型数据集,例如高分辨率图像和视频,其中有许多输出元素(像素),计算量可能非常庞大。一方面,卷积的每个输出数据元素可以相互独立地计算,这是并行计算所期望的特性。另一方面,在处理不同输出数据元素时,输入数据之间存在大量共享,这带来了相对复杂的边界条件处理。这使得卷积成为复杂的切片方法和输入数据分层方法的重要应用案例,而这些正是本篇文章介绍的重点。
二:卷积介绍
卷积是一种数组操作,其中每个输出数据元素是相应输入元素及其周围一组输入元素的加权和。加权和计算中使用的权重由一个过滤器数组定义,通常称为卷积核,由于CUDA的卷积核函数(convolution kernels)和卷积核(convolution kernels)之间存在不幸的名称冲突(此处是英文名冲突,中文名还好),我们将这些过滤器数组称为卷积过滤器,以避免混淆。
卷积可以在不同维度的输入数据上执行:一维(1Dÿ
标签:滤波器,07,输出,卷积,元素,CUDA,数据,输入 From: https://blog.csdn.net/zg260/article/details/141308085