一种用于对图像信号进行去抖动处理的方法与装置的制作方法

文档序号:7954262阅读:210来源:国知局
专利名称:一种用于对图像信号进行去抖动处理的方法与装置的制作方法
技术领域
本发明涉及一种图像信号去抖动处理方法与装置,特别涉及一种用于对格式转换后的图像信号进行误差扩散的去抖动处理方法与装置。
背景技术
由于液晶显示屏(LCD)的像素位深度一般小于24位,所以将24位的图像显示到液晶显示屏上时需要截掉低位的像素信息。以RGB565液晶显示屏为例,565表示红色(R)、绿色(G)和蓝色(B)通道的位数分别为5、6、5位,RGB三个色彩通道的位数相加等于16,即表示该信号具有16位(bit)。若将24位的RGB888信号显示到16位的RGB565液晶显示屏上,由于8位的R通道信号只能显示5位,故需要截掉低3位的信号,同样的,G通道要截掉低2位,B通道要截掉低3位。如果仅采用简单的截位方法,会使图像产生固定的误差色块,因此,现有技术中通常采用去抖动的误差扩散方法,使截位量化误差分布到整个图像,从而避免误差色块的出现。
如图1(a)所示,去抖动图像处理的基本原理是将图像中每一个像素的截位量化误差分别向右侧及右下、正下、左下方(统称为下方)扩散,产生的扩散误差由该像素的值和各方向上的抖动系数a、b、c、d确定。该截位量化误差的一般计算公式为ERROR_C(i,j)=C_IN(i,j)-(((C_IN(i,j)>>n)+2n)<<n)(1)其中,C_IN(i,j)表示坐标为(i,j)的像素的某一色彩分量的输入值,C可以用R、G、B来代替;n表示该色彩分量需要截位的位数;>>n表示右移n位,<<n表示左移n位。
以RGB888信号转换为RGB565信号为例,则图像信号中坐标为(i,j)的像素的各个色彩分量所产生的截位量化误差分别为R分量ERROR_R(i,j)=R_IN(i,j)-(((R_IN(i,j)>>3)+8)<<3);
G分量ERROR_G(i,j)=G_IN(i,j)-(((G_IN(i,j)>>2)+4)<<2);B分量ERROR_B(i,j)=B_IN(i,j)-(((B_IN(i,j)>>3)+8)<<3)。
下面仅针对R分量的误差扩散作说明,G、B分量依此类推,则坐标为(i,j)的像素发散并叠加到周围相邻像素上的扩散误差为右侧R_DIS(i,j+1)=ERROR_R(i,j)*a右下R_DIS(i+1,j+1)=ERROR_R(i,j)*b正下R_DIS(i+1,j)=ERROR_R(i,j)*c左下R_DIS(i+1,j-1)=ERROR_R(i,j)*d(2)如图1(b)所示,对于图像信号中的任一像素(i,j)而言,位于其左侧、左上、正上和右上方的四个像素(i,j-1)、(i-1,j-1)、(i-1,j)和(i-1,j+1)分别向其进行了误差扩散。这些扩散误差叠加到该原始像素(i,j)上,即得到经去抖动处理后的新的像素值R_NEW(i,j)=R_IN(i,j)+ERROR_R(i,j-1)*a+ERROR_R(i-1,j-1)*b+ERROR_R(i-1,j)*c+ERROR_R(i-1,j+1)*d(3)现有的去抖动图像处理方法即按照上述原理,首先对原始的RGB888信号中的像素(24位)进行一行的缓存,再根据抖动系数a、b、c、d分别计算出各个方向上的扩散误差,最后将这些扩散误差叠加到周围的像素上以生成新的像素值。通常,将抖动系数的值设为7/16、3/16、5/16和1/16,根据公式(1)和(2)计算扩散误差时必须通过移位器和乘法器共同完成,硬件结构较为复杂。此外,由于传统的去抖动图像处理方法必须对原始的24位信号进行缓存,故占用的缓存空间较大,造成资源浪费。

发明内容
本发明的目的在于提供一种用于对图像信号进行去抖动处理的方法与装置,它不但能简化硬件结构,仅采用移位器即可完成扩散误差的计算,而且能大大节约缓存器的存储资源。
本发明的目的是这样实现的一种用于对图像信号进行去抖动处理的方法,其中,图像信号的每一个像素均向右侧、右下、正下和左下方进行误差扩散,产生的扩散误差由该像素的值和各方向上的抖动系数a、b、c、d确定,其实质性特点在于,所述的方法包括下列步骤(1)接收第i-1行图像输入信号,分别计算该行中坐标为(i-1,j-1)、(i-1,j)及(i-1,j+1)的相邻三个像素的扩散误差,其中,i、j均为非负整数;(2)将步骤(1)中相邻三个像素的扩散误差的和作为一个误差信号ERRO存储于缓存器中;(3)接收第i行图像输入信号,计算坐标为(i,j-1)的像素的扩散误差,并结合误差信号ERRO以及坐标为(i,j)的像素的值,计算出像素(i,j)经去抖动处理后的新的值;以及(4)对i、j取不同的值,重复上述步骤(1)至(3),直到该图像中的每一个像素都经过去抖动处理为止。
在上述的用于对图像信号进行去抖动处理的方法中,所述的各方向上的抖动系数a、b、c、d分别取值为1/2、1/8、1/4和1/8。
本发明的另一解决方案是提供一种用于对图像信号进行去抖动处理的装置,它包括一误差计算单元、一缓存器和一图像生成单元,图像信号分别输入至该误差计算单元和该图像生成单元,图像信号中的每一个像素均向右侧、右下、正下和左下方进行误差扩散,产生的扩散误差由该像素的值和各方向上的抖动系数a、b、c、d确定,所述的误差计算单元将同一行的图像信号中相邻的三个像素的扩散误差的和作为一个误差信号ERRO存储于缓存器中,当下一行图像信号输入后,该图像生成单元利用输入信号和误差信号ERRO计算出经去抖动处理后的新的图像信号并输出。
在上述的用于对图像信号进行去抖动处理的装置中,所述的误差计算单元由移位器和加法器构成。
在上述的用于对图像信号进行去抖动处理的装置中,所述的各方向上的抖动系数a、b、c、d分别取值为1/2、1/8、1/4和1/8。
本发明的去抖动处理方法与装置通过采用约减后的抖动系数,使误差扩散过程仅使用移位器即可实现,省去了乘法器,简化了硬件结构。同时,通过将误差信号ERRO而非原始信号存储于缓存器中,可以大大节省缓存器的存储资源,达到降低硬件成本的效果。


本发明的方法流程及装置结构由以下的实施例及附图给出。
图1(a)和图1(b)为去抖动图像处理方法的原理图;图2为本发明的去抖动处理装置的结构图;图3为本发明的去抖动处理方法的工作流程图;图4为本发明一较佳实施例的去抖动处理装置的电路框图。
具体实施例方式
以下将结合附图对本发明的一种用于对图像信号进行去抖动处理的方法与装置作进一步的详细描述。
参见图1(a)和图1(b),本发明的去抖动处理方法与现有的去抖动处理方法具有相同的原理,即图像信号中的每一个像素均向右侧、右下、正下和左下方进行误差扩散,产生的扩散误差由该像素的值和各方向上的抖动系数a、b、c、d确定,以某一像素的R分量为例,该像素经去抖动处理后的新的R分量值也符合前述的计算公式R_NEW(i,j)=R_IN(i,j)+ERROR_R(i,j-1)*a+ERROR_R(i-1,j-1)*b+ERROR_R(i-1,j)*c+ERROR_R(i-1,j+1)*d(3)由于等式(3)的后三项表示同一行相邻三个像素的扩散误差,可将其合并处理,若将后三项的和计为一个误差信号ERRO_R(i,j),则上述等式(3)变为R_NEW(i,j)=R_IN(i,j)+ERROR_R(i,j-1)*a+ERRO_R(i,j)(4)本发明的去抖动处理方法即是基于等式(4),通过将误差信号ERRO_R(i,j)存储于缓存器中,再结合R_IN(i,j)以及ERROR_R(i,j-1)*a的值计算出每一个像素经去抖动处理后的新的值。
参见图2和图3,详细说明本发明的去抖动处理方法和装置的工作流程。为了说明方便,采用像素的坐标值来指示像素的位置,如果出现负坐标,则说明该像素不存在。
以RGB888信号转换到RGB565信号为例,若要计算任一像素(i,j)(i、j均为非负整数)经去抖动处理后的值,则需经过以下各步骤首先,由误差计算单元(1)接收第i-1行图像输入信号(步骤S10),利用公式(1)和(2)计算出像素(i,j)上方相邻的三个像素(i-1,j-1)、(i-1,j)、(i-1,j+1)对其贡献的扩散误差(步骤S20),然后,将三个扩散误差求和,并作为一个误差信号ERRO存储于缓存器(2)中(步骤S30)。于本实施例中,由于R、G、B分量的移位位数分别为3、2、3,故R分量的误差信号ERRO_R(i,j)占用3bit空间,G、B分量的误差信号ERRO_G(i,j)、ERRO_B(i,j)分别占用2bit和3bit,对于一个像素而言,其占用的缓存器空间仅为3+2+3=8bit。
当误差计算单元(1)和图像生成单元(3)接收到第i行图像输入信号后(步骤S40),由误差计算单元(1)计算像素(i,j)左侧相邻的像素(i,j-1)对其贡献的扩散误差。图像生成单元(3)从缓存器(2)中读取之前存储的误差信号ERRO,并结合像素(i,j)的输入值以及像素(i,j-1)的扩散误差,利用等式(4)计算出像素(i,j)经去抖动处理后的新的值(步骤S50)。
由于i、j是任意的非负整数,通过改变i、j的取值可以对图像中每一个像素进行去抖动处理,一般的处理顺序是从图像左上角的(0,0)像素开始向右移动,完成一行的误差信号计算和缓存后再下移一行进行处理,如此向右、向下逐行扩散,直到所有像素都经过去抖动处理为止。
参见图4,其显示本发明一较佳实施例的去抖动处理装置的电路框图。图中,空心圈P5代表任一需要进行去抖动处理的像素;实心圈P1-P4代表与P5相邻并且向P5贡献扩散误差的四个像素,其中,P1、P2、P3为P5上一行的像素,P4为与P5同行的像素。为了简化硬件结构,特将P1、P2、P3、P4对P5进行误差扩散所采用的抖动系数b、c、d、a设置为1/8、1/4、1/8和1/2。
首先,需要利用公式(1)和(2)计算P5上方相邻三个像素对其贡献的扩散误差。将抖动系数b、c、d的值代入公式后,得到P1、P2、P3对P5贡献的扩散误差分别为ERROR(P1)*1/8、ERROR(P2)*1/4以及ERROR(P3)*1/8。
对于一个二进制数而言,乘以1/8可以通过右移3位实现,乘以1/4可以通过右移2位实现。因此,在计算上述三个扩散误差时,只需采用移位器对ERROR(P1)、ERROR(P2)及ERROR(P3)信号分别右移3位、2位和3位,无需使用乘法器即可完成运算,简化了硬件结构。经过移位器输出的三个扩散误差输入至加法器求和,并将求和结果ERRO(8bit)存储于缓存器(Buffer)中,比现有技术的24bit节省16bit。
当下一行图像信号输入后,从Buffer中取出ERRO,并和P5的像素值以及P4对P5贡献的扩散误差一起,经由加法器叠加输出,该输出信号P5’即为P5经去抖动处理后的新的值。其中,由于抖动系数a取值为1/2,故P4对P5贡献的扩散误差只需将ERROR(P4)信号右移1位即可获得。
本发明的一种用于对图像信号进行去抖动处理的方法与装置适用于多种不同格式的截位处理,若将RGB888信号显示到RGB666液晶显示屏上时,则各色彩通道均要截掉低2位,仅需将“n=2”代入前述公式(1)至(4)即可进行去抖动处理,其中,计算每一个像素的新值时,所需占用的缓存空间仅为2+2+2=6bit。同样地,当RGB888信号转换为RGB444信号时,也可按照同样的操作流程进行去抖动处理,其占用的缓存空间为4+4+4=12bit,均比现有技术的24bit节省一半以上的存储空间,大大节省了存储器资源。
权利要求
1.一种用于对图像信号进行去抖动处理的方法,其中,图像信号的每一个像素均向右侧、右下、正下和左下方进行误差扩散,产生的扩散误差由该像素的值和各方向上的抖动系数a、b、c、d确定,其特征在于,所述的方法包括下列步骤(1)接收第i-1行图像输入信号,分别计算该行中坐标为(i-1,j-1)、(i-1,j)及(i-1,j+1)的相邻三个像素的扩散误差,其中,i、j均为非负整数;(2)将步骤(1)中相邻三个像素的扩散误差的和作为一个误差信号ERRO存储于缓存器中;(3)接收第i行图像输入信号,计算坐标为(i,j-1)的像素的扩散误差,并结合误差信号ERRO以及坐标为(i,j)的像素的值,计算出像素(i,j)经去抖动处理后的新的值;以及(4)对i、j取不同的值,重复上述步骤(1)至(3),直到该图像中的每一个像素都经过去抖动处理为止。
2.如权利要求1所述的用于对图像信号进行去抖动处理的方法,其特征在于所述的各方向上的抖动系数a、b、c、d分别取值为1/2、1/8、1/4和1/8。
3.一种用于对图像信号进行去抖动处理的装置,包括一误差计算单元(1)、一缓存器(2)和一图像生成单元(3),图像信号分别输入至该误差计算单元(1)和该图像生成单元(3),图像信号中的每一个像素均向右侧、右下、正下和左下方进行误差扩散,产生的扩散误差由该像素的值和各方向上的抖动系数a、b、c、d确定,其特征在于所述的误差计算单元(1)将同一行的图像信号中相邻的三个像素的扩散误差的和作为一个误差信号ERRO存储于缓存器(2)中,当下一行图像信号输入后,该图像生成单元(3)利用输入信号和误差信号ERRO计算出经去抖动处理后的新的图像信号并输出。
4.如权利要求3所述的用于对图像信号进行去抖动处理的装置,其特征在于所述的误差计算单元(1)由移位器和加法器构成。
5.如权利要求3所述的用于对图像信号进行去抖动处理的装置,其特征在于所述的各方向上的抖动系数a、b、c、d分别取值为1/2、1/8、1/4和1/8。
全文摘要
一种用于对格式转换后的图像信号进行误差扩散的去抖动处理方法与装置。现有的去抖动处理方法存在缓存器资源浪费,硬件结构复杂等问题。本发明的去抖动处理装置包括误差计算单元、缓存器和图像生成单元,图像信号分别输入至误差计算单元和图像生成单元,图像信号中的每一个像素均向右侧和下方进行误差扩散,产生的扩散误差由该像素的值和各方向上的抖动系数确定,误差计算单元将同一行的图像信号中相邻三个像素的扩散误差的和作为一个误差信号ERRO存储于缓存器中,当下一行图像信号输入后,图像生成单元利用输入信号和误差信号ERRO计算出经去抖动处理后的新的图像信号并输出。利用本发明的方法与装置可以减少缓存空间,简化硬件结构。
文档编号H04N5/14GK1905626SQ200610029648
公开日2007年1月31日 申请日期2006年8月2日 优先权日2006年8月2日
发明者罗巍, 杨晓松, 陈煜 申请人:智多微电子(上海)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1