用流水线方式单步实现图形图像缩放、旋转的5阶滤波器的设计方法技术

技术编号:8106161 阅读:341 留言:0更新日期:2012-12-21 05:19
本发明专利技术涉及一种用流水线方式单步实现图形图像缩放、旋转的5阶滤波器的设计方法,该方法可以一步完成图像二维缩放,90度、或270度、或180度旋转,水平/垂直镜像和图像混合,在提高滤波器性能的同时节约SOC系统的带宽。其实现方法是根据二维图像缩放倍数,旋转角度来调节微控制单元内部宏块运行顺序以及宏块的大小,保证中间运算数据重用的最大化,从而提高滤波器的性能。利用流水线的实现方式将二维缩放,旋转,镜像和图像混合一步完成,不需要将中间结果写入内存,从而节省了系统带宽,使用高速缓冲存储器存储源图像数据,降低了硬件资源的消耗。

【技术实现步骤摘要】

本专利技术涉及一种实现图形图像缩放、旋转的图像处理IC设计领域,更具体地说涉及一种。
技术介绍
在现有技术中,二维图像缩放滤波器可以在水平和垂直两个方向对原始图像进行缩放。传统上有以下几种实现方式 第一种方法是两步实现二维缩放,第一步做第一维缩放处理,第二步做第二维缩放处理。具体地说是先从源内存中读取原始图像的像素信息,对原始图像的像素信息进行第一维滤波处理,将处理结果写入片外内存空间,Resultl =Pl*coefl+P2*coef2+P3*corf3……,然后从片外内存空间读取第一维处理结果,重复前述步骤,进行第二维处理。这种方法实现比较简单,但是它需要进行两次数据的读操作和两次的数据写操作。如果同时需要进行图像混合,就需要三次数据读操作和三次数据写操作。由于这些读写是对片外内存进行操作的,例如DDR SDRAM,因此多次的读写操作会消耗更多的系统带宽,同时也会消耗更多的功耗,降低系统和滤波器图像处理的性能。第二种方法是一步实现二维滤波操作,这种方法需要很多的行缓冲器来存储滤波器所需要的原始图像像素信息,以图像分辨率为1920*1080,以5*5阶滤波器为例,就需要37500字节片上内存。而且随着垂直滤波器阶数的增加,行缓冲器也要增加,例如9*9阶滤波器就需要67500字节片上内存。如此多的片上内存是任何设计者都不能接受的。行缓冲器的另外一个缺点是行缓冲器的大小是固定的,会限制缩放图像的分辨率。行缓冲器的控制方法也不能实现90度和270度图像旋转。另一种双线性插值滤波器可以实现旋转,但是双线性插值在图像质量方面的损失很大,因为它的滤波器阶数为二阶,无法很好地保留源图像信息,输出图像失真严重。目前图形图像处理对滤波器的应用不仅仅局限于缩放,还包括图像的旋转,镜像以及图像混合。如何利用更少的资源一次完成这些操作,成为了图形图像IC设计领域的一个难点和重要课题。因此专利技术一种可以实现高性能,高图像质量,低带宽,二维缩放和旋转单步完成的多阶图形图像滤波器,成为图形图像处理IC设计领域发展的重点。
技术实现思路
本专利技术的目的是针对现有技术不足之处而提供一种。该方法可以一步完成图像二维缩放,90度/270度/180度旋转,水平/垂直镜像和图像混合,在提高滤波器性能的同时节约SOC系统的带宽。本专利技术的目的是通过以下措施来实现一种,其特征在于,步骤如下步骤一、微控制器通过源图像转为目的图像的缩放倍数、图像像素格式、旋转角度决定宏块的大小以及光栅化操作的运行方向,进行光栅化操作,输出坐标信息给下一级流水线旋转模块; 步骤二、旋转模块按旋转角度对光栅化结果坐标进行旋转操作,设置旋转坐标,实现90度旋转、或180度旋转、或270度旋转,将旋转结果传送给下一级流水线镜像模块; 步骤三、镜像模块对旋转结果坐标进行镜像操作,设置水平镜像和垂直镜像坐标,将镜像结果传送给下一级滤波模块; 步骤四、第一维缩放模块根据坐标操作运算结果从高速缓冲存储器中读取原始图像的像素信息进行滤波操作,实现第一维图像缩放,并输出缩放结果给第二维缩放模块; 步骤五、第二维缩放模块根据第一维缩放结果以及坐标信息进行第二次滤波操作,实现第二维图像缩放。并输出缩放结果给图像混合模块; 步骤六、图像混合模块从高速缓冲存储器中读取目的图像的像素信息,将其与第二维滤波操作的结果进行图像混合运算,并将混合结果写回高速缓冲存储器; 步骤七、当高速缓冲存储器中的一缓冲行写满以后,高速缓冲存储器自动将其写入内存,并将该缓冲行重新分配,直到所有的目的像素都通过流水线处理结束为止。所述步骤一中的旋转角度为O度、180度时,在宏块内部光栅化操作的运行方向是先从上到下,然后从左到右,在宏块间光栅化操作的方向是先左到右,然后从上到下;宏块的宽度根据一个缓冲行可以存储的像素大小或图像像素格式来决定;宏块高度根据如下公式计算 垂直纖倍数宏块高度i+2x垂IW ο所述上步骤中的旋转角度为90度、270度时,在宏块内部光栅化操作的方向是先从左到右,然后从上到下;在宏块间光栅化操作的方向是先从上到下,然后从左到右;宏块的宽度根据一个缓冲行可以存储的像素大小或图像像素格式来决定;宏块高度根据如下公式计算機放倍宏块高度O所述步骤二中按旋转角度设置旋转坐标 90度旋转 新X坐标=目的图像宽度-光栅化后y坐标-1 新4标=光棚化后X坐标; 180度旋转 新X坐标=目的图像宽度-光極化后X坐标-I 新y坐标=目的图像高度-光棚化后#标-I ; 270度旋转 新X坐标=光極化后y坐标 新r坐标=目的图像高度-光循化后X坐标-I。所述步骤三设置水平镜像和垂直镜像坐标,分别为 水平镜像 新X坐标=目的图像右边缘坐标-旋转后X坐标+目的图像左边緣坐标 新A标=旋转后标; 垂直镜像本文档来自技高网
...

【技术保护点】
一种用流水线方式单步实现图形图像缩放、旋转的5阶滤波器的设计方法,其特征在于,步骤如下:步骤一、微控制器通过源图像转为目的图像的缩放倍数、图像像素格式、旋转角度决定宏块的大小以及光栅化操作的运行方向,进行光栅化操作,输出坐标信息给下一级流水线旋转模块;步骤二、旋转模块按旋转角度对光栅化结果坐标进行旋转操作,设置旋转坐标,实现90度旋转、或180度旋转、或270度旋转,将旋转结果传送给下一级流水线镜像模块;步骤三、镜像模块对旋转结果坐标进行镜像操作,设置水平镜像和垂直镜像坐标,将镜像结果传送给下一级滤波模块;步骤四、第一维缩放模块根据坐标操作运算结果从高速缓冲存储器中读取原始图像的像素信息进行滤波操作,实现第一维图像缩放,并输出缩放结果给第二维缩放模块;步骤五、第二维缩放模块根据第一维缩放结果以及坐标信息进行第二次滤波操作,实现第二维图像缩放。

【技术特征摘要】
1.一种用流水线方式单步实现图形图像缩放、旋转的5阶滤波器的设计方法,其特征在于,步骤如下 步骤一、微控制器通过源图像转为目的图像的缩放倍数、图像像素格式、旋转角度决定宏块的大小以及光栅化操作的运行方向,进行光栅化操作,输出坐标信息给下一级流水线旋转模块; 步骤二、旋转模块按旋转角度对光栅化结果坐标进行旋转操作,设置旋转坐标,实现90度旋转、或180度旋转、或270度旋转,将旋转结果传送给下一级流水线镜像模块; 步骤三、镜像模块对旋转结果坐标进行镜像操作,设置水平镜像和垂直镜像坐标,将镜像结果传送给下一级滤波模块; 步骤四、第一维缩放模块根据坐标操作运算结果从高速缓冲存储器中读取原始图像的像素信息进行滤波操作,实现第一维图像缩放,并输出缩放结果给第二维缩放模块; 步骤五、第二维缩放模块根据第一维缩放结果以及坐标信息进行第二次滤波操作,实现第二维图像缩放。2.并输出缩放结果给图像混合模块; 步骤六、图像混合模块从高速缓冲存储器中读取目的图像的像素信息,将其与第二维滤波操作的结果进行图像混合运算,并将混合结果写回高速缓冲存储器; 步骤七、当高速缓冲存储器中的一缓冲行写满以后,高速缓冲存储器自动将其写入内存,并将该缓冲行重新分配,直到所有的目的像素都通过流水线处理结束为止。3.根据权利要求I所述的用流水线方式单步实现图形图像缩放、旋转的5阶滤波器的设计方法,其特征在于,所述步骤一中的旋转角度为0度、180度时,在宏块内部光栅化操作的运行方向是先从上到下,然后从左到右,在宏块间光栅化操作的方向是先左到右,然后从上到下;宏块的宽度根据一个缓冲行可以存储的像素大小或图像像素格式来决定;宏块高度根据如下公式计算4.根据权利要求I所述的用流水线方式单步实现图形图像缩放、旋转的5阶滤波器的设计方法,其特征在于,所述上步骤中的旋转角度为90度、270度时,在宏块内部光栅化操作的方向是先从左到右,然后从上到下;在宏块间光栅化操作的方向是先从上到下,然后从左到右;宏块的宽度根据一个缓冲行可以存储的像素大小或图像像素格式来决定;宏块高度根据如下公式计算5.根据权利要求I所述的用流水线方式单步实现图形图像缩放、旋转的5阶滤波器的设计方法,其特征在于,所述步骤二中按旋转角度设置旋转坐标 90度旋转 180度旋转 270度旋转根据权利要求I所述的用流水线方式单步实现...

【专利技术属性】
技术研发人员:张慧明迈克蔡
申请(专利权)人:图芯芯片技术上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1