[发明专利]一种用GPU通过分块实现快速小波变换的方法有效
申请号: | 201310055242.6 | 申请日: | 2013-01-31 |
公开(公告)号: | CN103198451A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 李云松;宋长贺;雷杰;刘凯;郭杰;王柯俨;张静;吴宪云 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06T1/20 | 分类号: | G06T1/20 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 田文英;王品华 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种用GPU通过分块实现快速小波变换的方法,主要解决了现有技术小波变换速度慢的问题。本发明针对图形处理单元GPU的并行计算架构的特点,设计了一种将数据分块并行处理的方法,包括拷贝原始图像、数据分块、数据扩展、拷贝数据到共享内存、行变换、列变换、取消数据扩展、拷贝变换后数据到主机内存的步骤。本发明通过将分块数据扩展来保证小波变换结果的准确性;通过在共享内存中进行变换提高数据的访问速度,避免了数据与全局内存的交互;通过图像块与图像块的并行、图像块分部各像素点之间的并行提高了整幅图像的处理速度。 | ||
搜索关键词: | 一种 gpu 通过 分块 实现 快速 变换 方法 | ||
【主权项】:
一种用GPU通过分块实现快速小波变换的方法,包括如下步骤:(1)拷贝原始图像:在图形处理单元GPU中分配两块全局内存A和B,将原始图像拷贝到全局内存A中;(2)数据分块:将原始图像按照二维网格的方式分成宽24像素、高24像素的图像块;(3)数据扩展:将每个图像块向其四周方向各延伸四个像素,处于边缘不能延伸的,则进行对称扩展,得到扩展图像块;(4)拷贝数据到共享内存:4a)在图形处理单元GPU中分配与扩展图像块个数相同的block,每个block对应一个扩展图像块;4b)为每个block分配大小为33乘32的共享内存以及32乘32个线程;4c)将每个扩展图像块拷贝到与其对应的block的共享内存中,每个线程完成一个像素点的拷贝,并将共享内存中每一行的最后一个存储空间保留不用;(5)行变换:对于每个block,使用其中的32个线程对共享内存中的数据进行行变换,每个线程完成扩展像素块的一行数据的变换;(6)列变换:对于每个block,使用其中的32个线程对共享内存中的数据进行列变换,每个线程完成扩展像素块的一列数据的变换;(7)取消数据扩展:对于每个block,将变换后的扩展图像块上下各四行、左右各四列的数据排除,得到一个24乘24的数据块;(8)拷贝数据块:8a)将每个block的数据块拷贝到全局内存B中,拷贝的过程中进行尺度变换;8b)待所有的block拷贝完成后,将全局内存B中的数据拷贝至主机内存中, 释放图形处理单元GPU中的两块全局内存A和B。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310055242.6/,转载请声明来源钻瓜专利网。