[发明专利]面向向量处理器的SAD向量化实现方法有效
申请号: | 201110213343.2 | 申请日: | 2011-07-28 |
公开(公告)号: | CN102231202A | 公开(公告)日: | 2011-11-02 |
发明(设计)人: | 刘仲;陈书明;刘衡竹;陈跃跃;陈海燕;龚国辉;孙永节;万江华;吴家铸;陈胜刚 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06T1/20 | 分类号: | G06T1/20 |
代理公司: | 湖南兆弘专利事务所 43008 | 代理人: | 周长清 |
地址: | 410073 湖南省长沙市开福区砚瓦池正街47号*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 向量 处理器 sad 量化 实现 方法 | ||
技术领域
本发明涉及向量处理器以及图像处理领域,尤其涉及一种SAD向量化的实现方法。
背景技术
图像处理领域中图像匹配处理应用需许多高密度计算应用,如基于模板的图像匹配往往需要计算差的绝对值和(Sum of Absolute Difference,SAD)等,这类高密集运算任务需要将模板图与实时图中的每一个按像素遍历的子图逐个进行匹配计算,计算量非常大,单芯片难以满足应用需求,基于多核处理器尤其是其中的向量处理器能够大幅度提高图像匹配的速度。向量处理器一般由多个处理单元(PE)组成,通常支持基于向量的数据加载和存储。每个PE包含独立的多个功能部件,一般包括移位部件、ALU部件、乘法部件等。向量处理器通常支持SIMD(单指令/多数据)操作,即在同一条向量指令的控制下,所有PE同时对各自的局部寄存器进行相同操作,用以开发应用程序的数据级并行性。
基于模板的图像匹配中需要计算差的绝对值和,一般设实时图A,其大小为MxN,模板图为B,其大小为mxn,(M>m,N>n)。实时图中以(u,v)为左上角点的与模板图同大小的子图为Auv,子图Auv与模板图B的差的绝对值和SAD系数值可用下式表示:
其中(Auv)ij表示子图Auv中坐标(i,j)处的像素值,Bij表示模板图B中坐标(i,j)处的像素值。
上面计算得到的SAD系数值ρ(u,v)用于表示子图Auv与模板图B的相似度。为了计算最佳匹配位置,需要遍历实时图中的所有子图,并逐一计算子图与模板图的SAD系数值,求取SAD系数值的最小值。共需要计算(M m)*(N n)次SAD系数值,并且每次SAD系数值的计算涉及m*n个元素数据的求差、求绝对值以及绝对值累加,计算量非常大,单核处理器难以满足性能需求,通常基于多核处理器或多个单核芯片采用并行的方法来提高处理速度。由于图像数据通常采用8位像素值,遍历实时图需要按像素偏移读取图像数据,而一般的处理器不支持跨字边界读取数据,一般采用打包/解包方法来解决子图的遍历。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,本发明提供一种原理简单、操作方便、能够高效计算、能充分挖掘向量处理器的多级并行性以发挥向量处理器的并行计算性能、缩短运算时间的面向向量处理器的SAD向量化实现方法。
为解决上述技术问题,本发明采用以下技术方案:
一种面向向量处理器的SAD向量化实现方法,包括以下步骤:
(1)设实时图A,其大小为MxN,模板图为B,其大小为mxn,且M>m,N>n;向量处理器包括P个处理单元;
(2)向量处理器遍历实时图A并存取实时图A中的两个头部间隔4个元素且向量长度为4*p的子图Auv和A(u+4)v,通过混洗操作得到4个头部间隔1个元素且长度为4*p的相邻子图A(u+k)v(k=0,1,2,3);
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110213343.2/2.html,转载请声明来源钻瓜专利网。