著录项信息
专利名称 | 图像压缩中RGB与YCbCr转换计算的方法 |
申请号 | CN200710015944.6 | 申请日期 | 2007-06-18 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2007-11-21 | 公开/公告号 | CN101076125 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04N7/50 | IPC分类号 | H;0;4;N;7;/;5;0;;;H;0;4;N;7;/;2;6;;;H;0;4;N;9;/;6;4查看分类表>
|
申请人 | 山东经济学院 | 申请人地址 | 山东省济南市历下区二环东路7366号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 山东经济学院 | 当前权利人 | 山东经济学院 |
发明人 | 纪秀花;张彩明;张雪芬 |
代理机构 | 暂无 | 代理人 | 暂无 |
摘要
本发明提出一种快速实现RGB与YCbCr彩色空间转换的优化算法,该算法适用于图像压缩领域中。它是将彩色空间转换、量化和离散余弦变换(DCT)三个环节结合考虑来减少运算量。在降低了彩色转换运算量的同时,除了量化步长的值有所调整,DCT和量化处理两个环节的结构及运算量不受影响。在图像子采样为4∶4∶4情况下,新算法在压缩过程中实现RGB向YCbCr转换时,乘法和加法运算量分别减少40%和42%;在解压缩过程中实现YCbCr到RGB转换的乘法和加法运算量分别减少了60%和42%;在其它图像子采样情况下也有类似结果。本发明可以有效地嵌入到包含变换编码处理子结构的图像压缩/解压缩的实现过程中,高效实现图像压缩/解压缩过程。
1.一种用于图像压缩/解压缩过程中RGB与YCbCr之间彩色转换计算的方法,图像压缩过程中通过公式将RGB格式的图像转换为YCbCr格式,图像解压缩过程中通过公式将YCbCr格式的图像恢复为RGB格式;该方法是将图像压缩/解压缩过程中的彩色转换、量化过程与离散余弦变换(DCT)三个环节结合起来计算,以减少RGB与YCbCr之间彩色转换运算量,其特征在于:
在压缩过程中,将RGB格式的图像转换为YCbCr格式的步骤包括:
(1)引入一组中间变量将RGB到YCbCr的彩色转换改为RGB→Y1Cb1Cr1的转换,得到Y1、Cb1、Cr1彩色空间图像;
(2)对步骤(1)中得到的彩色空间图像进行DCT变换,得到关于Y1Cb1Cr1的一系列8×8DCT系数矩阵;
(3)将步骤(2)中得到的关于Y1、Cb1、Cr1的每个8×8DCT系数矩阵的(0,0)位置的Y1、Cb1、Cr1值分别加上常量8×k、8×(m/d-k)、8×(n/e-k),得到Y、Cb/d和Cr/e的DCT系数矩阵;
(4)对亮度及两色度信号进行量化处理,得到Y、Cb、Cr信号的DCT量化系数;在解压缩过程中,将YCbCr格式的图像恢复为RGB格式的步骤包括:
(a)分别对亮度及两色度信号进行逆量化处理,得到一系列8×8DCT系数矩阵;
(b)将步骤(a)中得到的每个DCT系数矩阵的(0,0)位置的系数值分别减去8×k×f、8×m×j、8×n×g;
(c)对步骤(b)中的系数矩阵进行逆DCT转换,得到结果记为Y2、Cb2和Cr2的图像;
(d)将步骤(c)中得到的Y2、Cb2和Cr2图像恢复为RGB格式;
其中a、b、c、d、e、f、g、h、i、j、k、m和n皆为常量。
2.根据权利要求1所述的用于图像压缩/解压缩过程中RGB与YCbCr之间彩色转换计算的方法,其特征在于:将RGB格式的图像转换为YCbCr格式的步骤(4)中,使用Q(u,v)、Qd(u,v)和Qe(u,v)为量化步长,分别对亮度及两色度信号进行量化处理,其中,
Qd(u,v)=q(u,v)/d
Qe(u,v)=q(u,v)/e
Q(u,v)和q(u,v)分别为常规算法中采用的亮度及色度信号的量化步长。
3.根据权利要求1所述的用于图像压缩/解压缩过程中RGB与YCbCr之间彩色转换计算的方法,其特征在于:将YCbCr格式的图像恢复为RGB格式的步骤(a)中,使用Qf(u,v)、Qj(u,v)、Qg(u,v)值为量化步长,其中:
Qf(u,v)=Q(u,v)*f
Qj(u,v)=q(u,v)*j
Qg(u,v)=q(u,v)*g
Q(u,v)和q(u,v)分别为常规算法中采用的亮度及色度信号的量化步长。
4.根据权利要求1所述的用于图像压缩/解压缩过程中RGB与YCbCr之间彩色转换计算的方法,其特征在于:将YCbCr格式的图像恢复为RGB格式的步骤(d)中,采用如下公式实现系数为Y2Cb2Cr2的YCbCr格式到RGB格式的彩色转换处理:
其中h′=h/g,i′=i/j。
(一)技术领域\n本发明涉及图像视频压缩技术,属于图像视频压缩技术领域。\n(二)背景技术\n图像压缩在多媒体计算、信息高速公路和可视电话等技术的发展过程中起着重要的作用。为了获得良好的实时效果,需要实现高压缩比、低耗时的图像压缩方法。常用的压缩编码方法有预测编码、变换编码、结构编码和分形编码等,这些方法都各有优缺点和适用范围。其中变换编码已被广泛地应用于JPEG、MPEG、H.26X等国际图像编码标准压缩算法的实现中。在这些国际图像压缩标准的实现中一般都包含彩色空间转换、离散余弦变换(DCT)、量化计算、熵编码等环节。之所以进行彩色空间转换,原因之一是为了利用人的视觉特性以降低数据量。通常把RGB空间表示的彩色图像变换到其他彩色空间,例如:YIQ,YUV和YCrCb,这些彩色空间都产生一个亮度分量信号Y和两个色度分量信号。无论是用YIQ、YUV还是YCrCb来表示彩色图像,由于现在所有的显示器都采用RGB值来驱动,这就要求在显示每个像素之前,须要再转换成RGB值。要提高图像压缩实现的运算速度,就要针对上述这些环节进行优化。缺乏有效的彩色空间转换的优化算法使得彩色空间转换需要花费大量的计算时间,因此,在许多视频压缩的情形中,提高彩色空间转换环节速度是非常重要的。在此主要针对RGB与YCrCb之间的转换计算进行讨论。\n在使用JPEG、MPEG、H.26X等国际编码标准进行图像压缩的系统中,编码器常包含以下三个环节:\n(1)RGB到YCbCr的彩色转换:彩色转换函数如公式(1)所示。\n\n其中Y为YCbCr彩色空间的亮度值,Cb和Cr为YCbCr彩色空间的色度值。\n(2)DCT处理环节:DCT是一种线性正交变换。在进行DCT运算之前常将源图像数据分为一系列8×8子块,然后针对这些子块做DCT计算。二维8×8DCT正变换定义如下:\n\n其中:m,n,u,v=0、1、......7;\nf(m,n)为源图像一8×8子块中第(m,n)像素值,F(u,v)为相应DCT系数;\n。\n(3)量化环节:量化过程是将DCT系数矩阵的各个系数F(u,v)除以相应的量化步长q(u,v)。经过量化后,三个输出结果依次为:和的四舍五入整数值,其中Fy(u,v)(FCb(u,v)或FCr(u,v))是Y(Cb或Cr)图像中某一子块的(u,v)处的DCT系数,Q(u,v)和q(u,v)分别为亮度Y和色度信号(Cb或Cr)的量化步长。由于解压缩过程与压缩过程正好相反,所以解码器中包含上述编码器中三个环节的逆处理过程。通过对编码器的输出结果进行逆量化和逆DCT变换后,得到恢复的YCbCr系数。YCbCr到RGB空间的转换函数如下:\n\n实际使用时,在考虑人的视觉系统和CRT的非线性特性后,根据CCIR 601 Standard,式(1)和(2)中的各系数会有所调整,彩色转换函数变为:\n\n\n式(3)和(4)中R′、G′、B′为考虑伽玛校正后的R、G、B三值。为下面讨论方便,可将彩色转换函数写成如下的一般形式:\n\n\n其中a、b、c、d、e、f、g、h、i、j,k,m,n皆为常量。\n利用式(5)进行RGB到YCbCr空间的转换,计算一个像素的Y、Cb、Cr三值时需5次乘法,7次加法;利用式(6)进行YCbCr到RGB空间的转换,计算一像素的R、G、B三值时需5次乘法,7次加法。\n(三)发明内容\n本发明针对现有技术运算量大的问题,讨论怎样快速实现式(5)和式(6)的计算。其基本思想是将彩色转换、量化过程与DCT过程结合起来计算,以减少彩色转换运算量。\n本发明提出的编码器优化算法包括以下步骤:\n第一步:彩色变换。引入一组中间变量(Y1,Cb1,Cr1),将RGB到YCbCr的彩色转换改为RGB到Y1Cb1Cr1的转换。\n中间变量(Y1,Cb1,Cr1)定义如下:\n\n从而得到Y1 Cb1 Cr1彩色空间图像。\n第二步:DCT环节。将第一步计算的结果Y1、Cb1和Cr1三图像信号直接送入DCT处理环节,得到Y1、Cb1和Cr1的DCT系数。\n第三步:加常量处理环节。将Y1、Cb1或Cr1的一系列8×8DCT系数矩阵的(0,0)位置的系数值分别加上常量8×k、8×(m/d-k)或8×(n/e-K)。\n第四步:量化环节。两色度信号的量化步长分别改为Qd(u,v)和Qe(u,v),使量化处理后,得到的信号是Y、Cb和Cr信号的DCT量化系数,其中Qd(u,v)=q(u,v)/d,Qe(u,v)=q(u,v)/e。\n下面将说明上述编码器优化算法所依据的科学原理:\n对比式(5)和式(7),得到Y1、Cb1和Cr1与Y、Cb和Cr的关系式为:\n\n记DCT(......)为8×8子块DCT算子。由于DCT是线性的,根据(8)式,则有:\n\n其中:By(BCb/d或BCr/e)为Y(Cb/d或Cr/e)图像中一8×8子块,By1(BCb1或BCr1)为Y1(Cb1或Cr1)图像中对应By(BCb/d或BCr/e)的8×8子块,Dk(Dm/d-k或Dn/e-k)是一8×8常量矩阵,其所有元素都为k((m/d-k)或(n/e-k))。\n根据DCT定义式可得DCT(Dk)的结果为:仅(0,0)位置处的DCT系数为非零值(8×k),其它元素都为零值。DCT(Dm/d-k)和DCT(Dn/e-k)有类似结果。所以式(9)的每个8×8矩阵求和运算只需要一次加法。也就是说,第三步完成的是(9)式的计算。\n由于DCT是线性的,为了使Cb/d和Cr/e的DCT系数量化后的结果为Cb和Cr信号的DCT量化系数,则需要改变量化步长,即:对Cb/d和Cr/e信号的DCT系数分别除以Qd(u,v)和Qe(u,v)两值,这样,量化环节输出结果见式(10)。\n\n其中Fx(u,v)为x图像一8×8子块中(u,v)位置的DCT系数。因此,第四步的输出结果为Y、Cb和Cr信号的DCT量化系数,与常规算法的输出结果是一样的。\n在实际应用中,对不同图像子采样的压缩过程中,采用此算法的运算效率不同:\n1)对4:4:4图像子采样情形,对于每个像素,按(5)式来实现RGB到YCbCr彩色空间的转换,需要5次乘法,7次加法;按(7)式来实现R、G、B到Y1 Cb1 Cr1的彩色变换,再加上加常量处理环节,对于每个像素,只需要3次乘法,(4+3/64)=4.05次加法。所以根据本文算法,实现RGB到YCbCr的彩色空间转换的乘法计算量减少了40%,加法计算量减少了约42%。\n2)对4:2:2图像子采样情形,由于Cb、Cr像素数目是Y的一半,则新算法的彩色空间转换环节乘法运算量减少了(2+2)/(4×3+2+2)=25%,加法运算减少了约(4+2+2)/(4×3+2×2+2×2)=40%;\n3)对4:1:1图像子采样情形,Cb、Cr的像素点数目降低到Y的1/4,则新算法的彩色空间转换环节乘法运算量减少了(1+1)/(4×3+1+1)=14%,加法运算量减少了(4+1+1)/(4×3+2+2)=38%。\n本发明提出的解码器优化算法包括以下步骤:\n第一步:逆量化环节。接收端对量化后的Y Cb Cr DCT系数分别以Qf(u,v)、Qj(u,v)、Qg(u,v)值为量化步长进行逆量化。\n其中:Qf(u,v)=Q(u,v)*f\nQj(u,v)=q(u,v)*j\nQg(u,v)=q(u,v)*g\n经此处理过程后得到的三路信号分别为:f×Y、j×Cb、g×Cr的DCT系数。\n第二步:减常量处理环节。此过程是将得到的f×Y、j×Cb或g×Cr的8×8DCT系数矩阵的(0,0)位置的系数分别减去8×k×f、8×m×j或8×n×g值。\n称经此步处理后得到的三路信号分别为:Y2、Cb2或Cr2的DCT系数。很容易推出:\nY2=f×(Y-k)\nCb2=j×(Cb-m) (11)\nCr2=g×(Cr-n)\n第三步:逆DCT环节。此步处理后得到Y2、Cb2和Cr2图像信号。\n第四步:Y2Cb2Cr2到RGB的彩色转换处理。此转换是利用下式来实现:\n\n其中h′=h/g,i′=i/j。此步处理后得到RGB图像。\n上述解码器优化算法所依据的科学原理与编码器的类似。\n对不同图像子采样的解压缩过程中,采用此算法的运算效率也不同:\n1)对4:4:4图像子采样情形,利用(6)式进行YCbCr到RGB空间的转换计算,计算一像素的R、G、B三值时需5次乘法,7次加法。而按(12)式来实现Y2 Cb2 Cr2到R、G、B的彩色变换,再加上减常量处理环节,对于每个像素,只需要2次乘法,(4+3/64)=4.05次加法。所以实现RGB到YCbCr的彩色空间转换的乘法计算量减少了60%,加法计算量减少了约42%。\n2)对4:2:2图像子采样情形,由于Cb、Cr像素点数目是Y的一半,则新算法的彩色空间转换环节乘法运算量减少了(4×1+2×2)/(4×1+2×2+2×2)=67%,加法运算减少了约(4×1+2×2)/(4×5+2×2)=33%;\n3)对4:1:1图像子采样情形,Cb、Cr的像素点数目降低到Y的1/4,则新算法的彩色空间转换环节乘法运算量减少了(4×1+1×2)/(4×1+1×2+1×2)=75%,加法运算量减少了约(4×1+1×2)/(4×4+1×3)=32%。\n本发明的有益效果是,通过将彩色转换、DCT和量化处理三个环节的实现结合考虑,提出图像压缩中RGB与YCbCr转换计算的优化算法,大大降低了彩色空间转换的运算量。使用此算法后,除了量化步长的值有所调整,DCT和量化处理两个环节的结构及运算量不受影响。另外,在采用了本算法后,仍然可以有效地采用其他已有的优化实现技术。本发明可以有效地嵌入到包含变换编码处理子结构的图像压缩/解压缩的实现过程中,高效实现图像压缩/解压缩过程。\n(四)附图说明\n图1编码器中的子结构框图。\n图2解码器中的子结构框图。\n图1中:1.RGB→Y1Cb1Cr1彩色转换模块;2.DCT处理模块;3.加常量模块;4.量化模块。\n图2中:5.逆量化模块;6.减常量模块;7.逆DCT处理模块;8.Y2Cb2Cr2→RGB彩色转换模块。\n(五)具体实施方式\n实施例:\n图1、图2分别给出了按本发明实现的图像压缩中RGB与YCbCr转换计算的优化算法中压缩/解压缩的子结构框图。\n各模块作用如下:\n模块1:RGB→Y1Cb1Cr1的转换模块,将原技术中RGB到YCbCr的彩色转换改为R、G、B到Y1 Cb1 Cr1的转换。\n模块2:DCT处理模块,将模块1的输出结果Y1、Cb1和Cr1三图像信号处理为Y1、Cb1和Cr1的DCT系数。\n模块3:加常量模块,得到Y、Cb/d和Cr/e的DCT系数。\n模块4:量化模块。其中量化步长分别使用Q(u,v)、Qd(u,v)和Qe(u,v)值,量化后得到Y、Cb、Cr信号的DCT量化系数。\n模块5:逆量化模块。其中量化步长分别使用Qf(u,v)、Qj(u,v)、Qg(u,v)值,逆量化后得到f×Y、j×Cb、g×Cr信号的DCT系数。\n模块6:减常量模块。将得到的f×Y、j×Cb、g×Cr信号的8×8DCT系数矩阵的(0,0)位置的系数分别减去8×k×f、8×m×j或8×n×g值,从而得Y2、Cb2和Cr2的DCT系数。\n模块7:逆DCT处理模块。得到Y2、Cb2和Cr2图像信号。\n模块8:Y2Cb2Cr2到RGB的彩色转换模块。此步处理后得到恢复的RGB图像。\n整个图像压缩/解压缩中RGB与YCbCr转换计算的优化算法包括RGB→Y1Cb1Cr1转换模块、DCT处理模块、加常量模块、量化模块、逆量化模块、减常量模块、逆DCT处理模块、彩色变换模块八部分组成。其中,模块1至模块4是优化后的图像压缩子结构流程图,模块5到模块8是优化后的图像解压缩子结构流程图,以上过程均为数字处理过程,其物理实现可通过通用数字信号处理芯片或软件编程实现。该实施例仿真参数:\n仿真环境:Visual Basic;\n图像子采样参数:4:4:4,4:2:2,4:1:1等。\n本发明的突出优点为:将彩色转换、DCT和量化处理三个环节的实现结合考虑,提出图像压缩中RGB与YCbCr转换计算的优化算法,大大降低了彩色转换的运算量;本发明可以有效地嵌入到包含变换编码处理子结构的图像压缩/解压缩的实现过程中,高效实现图像压缩/解压缩过程。
法律信息
- 2015-08-12
未缴年费专利权终止
IPC(主分类): H04N 7/50
专利号: ZL 200710015944.6
申请日: 2007.06.18
授权公告日: 2010.07.28
- 2010-07-28
- 2008-01-16
- 2007-11-21
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |