文件名称:图像高速旋转
文件大小:4KB
文件格式:C
更新时间:2011-03-28 04:55:24
图像处理 图像旋转
为了在嵌入式底下实现图像的快速旋转,必需尽量使数据装载的一级缓存里,以下是我花了很长时间才想到的方法,可以比普通的旋转方式处理时间上成倍的提高,现在公布出来,希望对大家有帮助。
/*----------Morton ordering---------------------------------
*Transposition
*aim:
* 矩阵向左旋转90度.
*function:
* Block_Roate32: 小块矩阵旋转
* trc: 划分函数
*
*parameter:
* WIDTH: 图像宽度
* HEIGHT:图像高度
* BLOCK_W:块的宽度
* BLOCK_H:块的高度
* BLOCK_NUM:块的划分,分四块时 BLOCK_NUM = 4,
* 分16块时 BLOCK_NUM = 8,分32块时 BLOCK_NUM = 8,
*
*arithmetic advantage:
* 能过充利用cache的临近访问优势,提高cache的命中率
*
*note:
* 1:图像宽度和高度必须为4的倍数
* 2:函数只处理16色的图像,垂直分辨71*71
* 3:源图像内存和目标内存不应当是同一个内存块]
* 4:划分的块的大小也必须是4的倍数
*
*time: 2005-12-23 整理
*author: fred-liu@qq.com
*-------------------------------------------------------*/