探计算统一设备架构纹理算法

探计算统一设备架构纹理算法

ID:38283471

大小:190.94 KB

页数:3页

时间:2019-06-01

探计算统一设备架构纹理算法_第1页
探计算统一设备架构纹理算法_第2页
探计算统一设备架构纹理算法_第3页
资源描述:

《探计算统一设备架构纹理算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、探计算统一设备架构的纹理算法1引言*纹理合成是当前计算机的研究热点之一。该技术在图像编辑、计算机动画、数据高倍压缩、网络数据的快速传输、大规模场景的生成以及真实感和非真实感绘制等方面具有广泛的应用前景。纹理合成方法可分为基于过程的纹理合成和基于样图的纹理合成两类。基于过程的纹理合成需要反复调整过程纹理的相关参数,十分繁琐。而基于样图的纹理合成技术不仅可以克服传统纹理映射存在走样的缺点,而且避免了纹理合成过程中调整参数的繁琐,因而受到越来越多研究人员的关注。中国。Wei和Levoy提出的纹理合成算法(下文简称WL算法)是典型的基于样图的纹理合成算法之一。与其它

2、基于样图的纹理合成算法相比,该算法实现简单,能够处理的纹理类型较多,合成质量较高。但是由于需要搜索输入样图每个像素,导致其合成速度较慢。目前对WL纹理合成采用的加速算法,如TSVQ(树形矢量量化法),SPSO(标准粒子群算法)等,虽然在速度上有所提高,但是其实现方法过于复杂,且在合成速度和合成质量上难以达到较好的平衡。计算统一设备架构(简称CUDA)是NVIDIA公司于2007年推出的一种基于GPU的并行计算平台。利用GPU强大的计算能力,可以开发出高效的并行算法,特别适合应用于图形图像处理。本文提出了一种基于CUDA计算平台,在GPU里完成主要计算的点匹配

3、纹理合成并行算法。实验证明,并行后的算法可以明显提高合成的速度。中国提供大量经济学硕士论文。在本文的第二部分,介绍了基于点的纹理合成算法,第三部分阐述了计算统一设备架构(CUDA)。第四部分给出了基于CUDA纹理合成算法的实现方法。第五部分给出了实验结果。第六部分进行了总结与展望。2基于点的纹理合成算法介绍WL纹理合成算法是基于点纹理合成算法的代表,是一种确定性搜索的纹理合成算法。该算法使用像素L邻域相似度作为合成依据,L邻域只取像素邻域的上半部分,因其形状像字母L,故称为L邻域。在输入纹理中按照扫描线顺序搜索与当前合成像素的L邻域具有最大相似度的像素点来合

4、成纹理。WL算法的具体步骤如下:(1)用随机噪声初始化输出图像。(2)对于输出图像的每个像素p,按照扫描线顺序计算:a.构造输出图像当前像素p的L邻域,b.在输入纹理中同样按照扫描线顺序搜索与像素p的L邻域具有最大相似度L邻域的像素q;c.将像素q拷贝到像素p。(3)重复步骤,直到图像合成完毕。3计算统一设备架构介绍2006年NVIDIA推出的G80系列显卡引入了CUDA架构,使得GPU可以解决商业、工业以及科学方面的复杂计算问题。下面对CUDA进行简要介绍:3.1CPU与GPU结构的区别传统的CPU由于摩尔定律失效,其计算速度目前已经基本达到顶峰,而GPU

5、则是专为计算密集型、高度并行化的计算而设计的。可以看出,GPU的设计增强了数据处理能力,而数据缓存和流控制方面则不及CPU。这使得GPU适用于解决不需要过多精密流控制的大规模并行计算问题。另外GPU具有极高的存储器带宽,也为其处理大规模的数据带来了方便。3.2CUDA的线程层次模型和存储器分配CUDA采用线程->线程块->线程块网格的线程层次模型。一个线程块网格可以划分为多个线程块,每个线程块包含了一定数量的线程。CUDA通过如图3所示的这种结构来管理线程的执行以及存储器的分配。每个线程有一个私有的本地存储器。每个线程块有一个共享存储器,该存储器对于块内的所

6、有线程都是可见的,并且与块具有相同的生命周期。最后,所有线程都可访问全局存储器。3.3CUDA运行模式CUDA定了一种称为内核(kernel)的C语言函数,并且扩展了C语言。在调用此类函数时,它将由N个不同的CUDA线程并行执行N次,这与普通的C语言函数只执行一次的方式不同。另外CUDA把CPU称作主机,GPU称作设备,在运行CUDA程序时,串行代码在主机上执行,并行代码即”kernel”在设备上执行。另外,可以通过主机和设备同步函数,使CPU和GPU同时计算,提高程序效率。4.基于CUDA的纹理合成在纹理合成过程中要求在输入样本中寻找与目标图像中的已有像素

7、p具有最大相似度的像素来合成纹理。如前所述,算法运行时间相当耗时。本文使用CUDA在GPU中并行计算领域相似度和搜索过程,明显提高了算法效率。本部分介绍在CUDA平台上用GPU来计算像素L邻域相似度并寻找最大相似度像素的算法。4.1GPU存储器的分配把数据传入GPU,需要合理分配存储器。输入与输出图像存入对于所有线程都是可读写的GlobalMemory。在计算L邻域相似度时为各线程分配高速的LocalMemory;而在规约计算查找具有最大L邻域相似度的像素时,则使用对线程块可见的sharedmemory。4.2并行计算输入纹理L邻域的相似度值在输入纹理中寻找

8、L邻域最大相似度像素时,对输入纹理的所有像素应用公式

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。