图像处理系统的制作方法

文档序号:6365322阅读:137来源:国知局
专利名称:图像处理系统的制作方法
本案是申请号为99107637.0申请日为1 999年4月30日发明名称为“压缩从图像传感器接收的图像数据的装置和方法”的申请的分案申请。
本发明一般涉及图像数据压缩,特别是涉及用于压缩从图像传感器接收的数据的更有效和低成本的方法和装置。
数字图像数据压缩技术已经发展而显著地改进了图像数据存储和处理的效率。利用自然图像中固有的冗余,图像数据编码和压缩允许较快的图像传输,较低的功耗,和更紧凑的图像存储。各种压缩算法由例如已经定义了用于静止图像数据的压缩标准的联合摄影专家组(JPEG)和已经定义了用于视频,音频,和系统位流的压缩算法的移动图像专家组(MPEG)的工业标准组所定义。
该JPEG和MPEG视频压缩算法是基于离散余弦变换(DCT)和帧间运动补偿(见ISO/IEC JTCI/SC29/WG11,信息技术-数字存储介质的运动图像和相关音频的编码)。

图1是描述在常规基于DCT的模式下的数据压缩的方块图。如图1所示,正向DCT(FDCT)块10从图像传感器20接收图像数据和执行DCT操作,以从图像数据中消除冗余数据。量化器12通过根据量化表将来自FDCT10的DCT系数值分成DC分量和AC分量来独立执行量化。商编码器14通过在一行中经由差分DC系数编码和折线扫描整理AC系数来压缩数据。
这种基于DCT的数据压缩算法的实现需要大量乘法器和加法器,并且通常在硬件上会造成较重的负担。类似的较重负担存在于系统的恢复一侧,在该侧数据通过执行实质上与上述相反的过程而被解压缩,其结果是电路大而复杂,制造成本增加。
本发明提供一种图像处理系统包括一图像捕获设备,包括一图像传感器,一用于从图像传感器接收图像数据的数据压缩单元,该数据压缩单元能用选择的因数除该彩色值,一耦合到数据压缩单元的数据存储单元,和一耦合到数据压缩单元和图像传感器的控制器;和一通过串行总线耦合到图像捕获设备的主图像处理设备。
本发明提供的用于压缩图像数据的方法和装置实现了高效和低成本。本发明的数据压缩技术特别适用于使用用于像素阵列的拜耳(Bayer)模式的图像传感器。概括地说,本发明的数据压缩技术首先从被检测的图像数据中提取R/G/B值。然后,用一可编程损耗因数除该被提取的值,并在当前和先前R/G/B值之间获得一差值(例如,执行差分脉冲编码调制-DPCM)。然后将该输出可变长度编码和打包,以作为压缩图像传输。
结果,该技术的压缩比低于基于DCT的压缩技术的压缩比,但是,它大幅降低了硬件的复杂性(即,逻辑门数量)和能够实现更有效的系统(例如,在USB控制器芯片上集成)。从而本发明的图像数据压缩技术对那些不要求最大的压缩比的应用提供了更合意的选择方案。
因此,在一实施例中,本发明提供了一种图像压缩装置,用于压缩从图像传感器接收的图像数据,该系统包括一彩色提取单元,它从图像传感器接收输入的图像数据,该彩色提取单元提取红,绿和蓝彩色值;一压缩单元,它连接到彩色提取单元并利用一选择因数除各彩色值;一可变长度编码器,它连接到该压缩单元,并对压缩单元的输出执行可变长度编码;和一数据打包单元,它耦合到可变长度编码器,对压缩数据打包,以用于传输。
在另一实施例中,本发明提供一种用于压缩从图像传感器接收的图像数据的方法,该方法包括从图像数据提取红、绿,蓝彩色值的步骤;利用一选择的损耗因数除彩色值的步骤;获得当前彩色值和先前彩色值之间的差值的步骤;以及将每个差值编码为与该差值的大小对应的特定彩色值的步骤。
为更好地理解本发明的图像压缩方法和装置的特性和优点,可参照以下结合附图的详细描述。
图1是描述利用常规基于DCT的算法的数据压缩的方块图;图2是描述根据本发明的用于压缩数据的装置的电路图;图3是描述拜耳模式像素阵列的示意图;图4是描述根据本发明的拜耳模式像素阵列的1/4帧R/G/B提取的示意图;图5是描述根据本发明的拜耳模式像素阵列的1/16帧R/G/B提取的示意图;图6是描述根据本发明的除(压缩)和差操作的流程图7是描述根据本发明的一实施例使用的典型可变长度;图8是描述根据本发明的一数据包方面的示意图;图9a至9f是描述根据本发明的数据压缩的典型压缩表;图10示出了使用本发明的图像压缩技术的典型系统。
参考图2,示出了本发明的数据压缩装置200。装置200包括R/G/B彩色提取单元202,它连接到图像传感器并接收在它的输入端输入的图像数据。彩色提取单元202的输出端连接到压缩和差分脉冲编码调制(DPCM)单元204。压缩单元204从外部控制器(未示出)接收指明一选择损耗值的控制信号,并提供其输出到可变长度编码器206。可变长度编码器206的输出端连接到数据打包器208,在那里打包压缩的数据,以用于传输。
下面将描述数据压缩系统200的操作概况。R/G/B彩色提取单元202从图像传感器接收输入的图像数据和为每一个像素提取R(红),G(绿),B(蓝)值。压缩和DPCM单元204从R/G/B单元202接收R/G/B值,并通过用一选定的由一外部控制器提供的损耗值除该值执行第一级压缩。压缩单元204执行的除法利用本发明的“余数传播”(remainder propagation)技术。单元204中的DPCM操作以便获得当前和先前R/G/B压缩值之间的差值。可变长度(VL)编码器206执行该差数据的统计压缩。在本发明的一优选实施例中,1的补码VL编码与前导“0”和“1”检测的新组合,进一步简化了所需硬件。该组合消除了当利用2的补码VL编码时所需的VL编码表。数据打包器208对从VL编码器206输出的数据打包,该包通过串行总线传输。本发明定义的新包包括允许对围绕像素边界数据精确打包的标题。
R/G/B彩色提取单元202提取R/G/B值以传输来自图像传感器的图像数据到一彩色显示器。提取方法的改变取决于图像传感器的像素阵列模式。图3是描述称作拜耳模式的普通像素阵列模式的示意图。根据该拜耳模式,通过重复第一行RGRG滤色器和第二行GBGB滤色器,实现该像素阵列。具有拜耳模式像素阵列的图像传感器读取对应于覆盖该像素的滤色器的特定彩色,而不是获取所有关于每个像素的R/G/B值的信息。因此,通过这些特定的彩色数据,必定获得最终的和完全的彩色值。根据本发明可以利用许多不同的彩色提取方法。取决于应用所需的图像彩色质量,本发明可以使用三种不同的彩色提取方法全帧,1/4帧,1/16帧这三者之一。
在全帧彩色提取方法中,从一特定像素中提取特定彩色值和从其他相邻该特定像素的其他像素中提取该像素的其它彩色值。例如,参考图3,从像素R33提取像素R33处的红色值(R),而像素R33的绿色值(G)从在四个像素G23,G32,G34和G43处的绿色值(G)的平均值中提取。同样,在R33处的蓝色值(B)从在四个像素B22,B24,B42和B44处的蓝色值的平均值中提取。类似地,在像素G34处的绿色值(G)从像素G34中提取,而红色值(R)从在两个像素R33和R35处的红色值(R)的平均值提取。在像素B44处的蓝色值(B)从像素B44中提取,而在像素B44处的红色值(R)从在四个像素R33,R35,R53和R55处的红色值(R)的平均值中提取。在像素B44处的绿色值(G)从在四个像素G34,G43,G45和G54处的绿色值(G)的平均值中提取。
R33=从像素R33提取的红色值G33=(G23+G32+G34+G43)/4B33=(B22+B24+B42+B44)/4G34=从像素G34中提取的绿色值R34=(R33+R35)/2B34=(B24+B44)/2B44=从像素B44中提取的蓝色值R44=(R33+R35+R53+R55)/4G44=(G34+G43+G45+G54)/4第二彩色提取方式是进一步降低数据量的1/4帧提取。为进一步压缩,代替从拜耳模式建立与原始阵列相同尺寸的图像,根据本发明的数据压缩装置建立的压缩图像是原始阵列尺寸的1/4大的压缩图像。参考图4,示出一个1/4帧压缩方式的像素阵列。根据该提取方式,R/G/B彩色值分别从2×2单位像素阵列(即,4像素)获得。那就是,R/G/B值不是在一个一个像素的基础上提取的,而是四个像素作为一个单元提取的,并作为一个从其导出彩色值的像素有效处理。其效果是将整个图像数据压缩成1/4尺寸的数据帧。一个举例能最好地描述该彩色提取方式。参照单位像素阵列40,它包括四个像素R11,G12,G21和B22,单位像素40的红色值(R)从像素R11获得,绿色值(G)从像素G12和G21中的绿色值(G)的平均值中提取,蓝色值(B)从像素B22中提取。由四个像素R31,G32,G41和B42组成的单位像素阵列40’中,蓝色值(B2)是从像素B42中获得,红色值(R2)是从像素R31中获得,和绿色值(G2)是从像素G32和G41处的绿色值(G)的平均值中获得。
对于单位像素阵列40R=R11G=(G12+G21)/2B=B22对于单位像素阵列40’R=R31G=(G32+G41)/2B=B42图5示出的1/16帧彩色提取是提供进一步数据压缩的第三提取方法。根据该彩色提取方式,R/G/B彩色值是分别从具有用于降低帧尺寸1/16的4×4(=16)像素的单位像素阵列中获得。通过平均各种像素彩色执行彩色提取。例如,在单位像素阵列50中,红色值(R)是从像素R11和R33处的红色值的平均值中提取,绿色值(G)是从像素G12,G21,G34和G43处的绿色值的平均值中提取,和蓝色值(B)是从像素B22和B44处的蓝色值的平均值中获得。
对于单位像素阵列50R=(R11+R33)/2G=(G12+G21+G34+G43)/4B=(B22+B44)/2类似地,对于单位像素阵列50’R=(R51+R73)/2G=(G52+G61+G74+G83)/4B=(B62+B84)/2对于1/4帧和1/16帧提取方法而言,它也可以从单个像素而不是平均两个像素提取像素的每个单位阵列的彩色值。这折衷了彩色精度和对比度从而图像质量,但进一步简化了为实现彩色提取功能所需要的必须的硬件。
现在返回到压缩和DPCM单元204,该块执行图像数据的每个彩色值大小的大部分压缩。图6是描述根据本发明的压缩和不同操作的流程图。在该过程(步骤60)中的第一步骤是通过设置它们等于“0”,初始化商数彩色值Rold,Gold和Bold和先前像素的余数彩色值Rpres,Gpres和Bpres。在步骤62,压缩和DPCM单元204然后从R/G/B提取单元202接收当前彩色值Rnow6now,和Bnow。在步骤64,先前余数彩色值Rpres,Gpres和Bpres被分别加到当前彩色值Rnow,Gnow和Bnow,以导出总的彩色值Rn,Gn和Bn。因此步骤64执行由本发明定义的除法所需的余数传播函数。本发明的余数传播提供平滑图像变化的高频振动,从而优于现有技术的一般忽略余数彩色值的做法,改进了图像质量。
接着,在步骤66,新的商数彩色值Rq,Gq和Bq以及新的余数彩色值Rres,Gres和Bres是将总的彩色值Rn,Gn和Bn除以损耗值LossV来获得。当彩色值被恢复和显示时,损耗值LossV是可编程的(例如,由该控制器提供)和设定图像损耗率。在所需的图像质量和帧数(例如,帧数越多损耗LossV越高)的基础上将LossV编程为一值。
在步骤68,差值Rdiff,Gdiff和Bdiff是通过从当前的商数彩色值Rq,Gq和Bq减去先前的商数彩色值Rold,Gold和Bold获得的。接着,在步骤70,将先前的商数彩色值Rold,Gold和Bold和原先的余数彩色值Rpres,Gpres和Bpres分别更新到它们的新值Rq,Gq和Bq和Rres,Gres和Bres。上述62至70的处理步骤被重复,直到完成图像传感器的一行。在完成一行以后随后执行新一行的初始化和为新的一行重复60至70的步骤。由于在一行结束的彩色值和另一行开始的彩色值之间没有关系,所以在每一行的开始的彩色值被初始化。该方法的优点是当传输压缩信息到下一个处理单元而产生误差时,该误差范围被限定到一行的基本单元。
通过少许修改上述压缩过程,可以进一步增加压缩比。根据上述过程,由于被除的第一像素值和零初始值之间的差,第一像素的大值将导致一大的压缩值。例如,当第一像素值是比零初始值大得多的225,和初始值被设置为“0”时,则产生17位代码字“11111111011100001”因此,压缩比是低的。
为增加压缩比,在另一实施例中,本发明设置初始值Rold,Gold和Bold到非零值。非零值将根据第一像素值决定。在如下表1中描述的典型实施例中,第一像素0-255的值的范围被分为8个子范围,给每个子范围赋予一不同的初始值(0至7中的一个)。即,Rold,Gold和Bold的初始值被设置成8个可能值中的一个。通过增加3位(该3位表明使用8个初始值中的哪一个),能获得对第一像素值的较好压缩。
表1
在该实施例中,当第一像素值是225时,初始值被设置成“7”,即“111”来代替“0”,和产生6位代码字“111101”,从而增加了压缩比。
该第一像素值越接近32的倍数,该编码值越小。
然后在步骤68计算的差值Rdiff,Gdiff和Bdiff被送到下一块VL编码器206。VL编码器206执行数据的统计压缩,从而该最小的代码字被赋予最频繁产生的值。随着邻近像素中的彩色值的大量重复,该最频繁产生的差值会是“0”或接近“0”。这样,本发明通过以差值的VL编码代替实际彩色值的编码明显降低了数据总量。图7是一表,给出了根据本发明的一个实施例的典型的对差值的VL编码。
本发明进一步降低硬件需求和简化实现数据压缩的另一方面是在VL编码处理中利用1的补码(代替2的补码)。根据该方法,通过首先将一商数值与另一商数值的1的补码相加获得该差值。然后,如果结果是正值,则所有前导0被删除,以得到差值,而如果结果是负值,则所有前导1被删除,以获得差值。然后,通过将大小值与利用界定位(典型为0)分离的差值相组合执行VL编码。这样,根据本发明,1的补码与前导0和1组合就取消了对VL编码表的需要,该表对于利用2的补码的常规编码方法是需要的。
由于用VL编码器206编码的数据代码长度改变,所以,在通过串行总线传输数据之前执行数据包化,以便接收机能够在被接收的位流中区分编码数据。图8描述了由本发明的数据打包器208执行的优选的数据打包方法。根据本发明的数据包800,被分成标题字段802和压缩图像数据字段804。数据包800可以有典型的512字节大小。标题字段802包含,例如含有代表在512字节数据字段804中压缩的像素数的信息的2字节的第一字段806,和例如含有代表来自压缩图像数据有效位数的信息的2字节的第二字段808。第一标题字段806的最高有效2位指明该包是否处在该帧的开始(“10”),一帧的结尾(“01”),还是在该帧的中间(“00”)。由于本发明在像素的边界定义数据包,图像数据字段804可以不用有效数据完全充满,因此需要指明数据包有效位数的标题字段808。在位流结尾(即,剩下小于512字节)处的数据包的情况也是这样。这样,根据本发明的打包提供一定程度的误差校正,使得甚至当在传输线中产生误差时接收机也能恢复数据。
为更好地理解本发明的数据压缩技术如何操作,在这里提供的图9a至9f描述了用于特定的拜耳模式图像举例的数据压缩。图9a叙述了从具有拜耳模式的图像传感器接收的图像数据的部分(10×4阵列)。利用1/4帧彩色提取方法,彩色提取单元202为每个4×4单元阵列得到R/G/B值。该阵列的第一线和第二线的R/G/B值示出在图9b中,在这里,括弧中的3个值对应着像素阵列的每个4×4单元的3个彩色值R/G/B。这样,对于第一行的第一阵列,R值是32,G值是(24+26)/2=25,和B值50等等,如上所述。在彩色提取之后,执行具有余数传播的除法。在该举例中,假定4的损耗值LossV。参考图9c,这里示出图6流程图中的步骤62至66被重复的余数传播除法的结果。对于LossV=4的第一行的第一R/G/B提取值(32,25,50),该第一R/G/B商数彩色值(Rq,Gq,Bq)等于(8,6,12)。该余数彩色值(Rres=0,Gres=1,Bres=2)被传播并加到第二R/G/B提取的彩色值(35,23,52)以得到第二R/G/B彩色值(Rn=35,Gn=23+1=24,Bn=52+2=54)。随着余数传播导致等于(39,23,55)的第三R/G/B彩色值(Rn,Gn,Bn),对于第二R/G/B商数彩色值(Rq,Gq,Bq)=(8,6,13)该过程被重复。第三R/G/B商数彩色值(Rq,Gq,Bq)成为(9,7,13),导致第四R/G/B彩色值(Rn,Gn,Bn)等于(36,29,62)。该过程继续直到所有彩色值被处理。
图9d示出用于图9a所示的4×10阵列的每个提取的彩色值的商数彩色值(Rq,Gq,Bq)。注意,但是,如图6流程图所示,在该优选实施例中,通过DPCM执行的差分功能与除法功能并行执行。那就是,由于每个单位像素阵列的R/G/B商数彩色值被改进,在执行下一个R/G/B彩色值的除法之前,用原先的彩色值执行DPCM。这样,在任何给定时间图9d所示阵列没有实际得到,在这里提供它更多是用于全面描述除法过程。而,图9e所示阵列代表了实际压缩输出和DPCM单元204。从第一行(8,6,13)取第二R/G/B彩色商数值和从它减去它原先的R/G/B彩色商数值(8,6,12)产生值(0,0,1)。这被输入作为第一行第二像素的彩色值。第三将是(9,7,13)-(8,6,13)=(1,1,0),如此等等。
最后,图9f描述了图9e差分值阵列的VL编码。例如,从第一行8的第一R/G/B差分值中取红彩色值该差值由二进制代码1000进行VL编码,大小是,11110,结果是“111101000”。类似地,“0”是用“0”进行VL编码,“1”用“101”进行VL编码,“2”是用“11010”进行VL编码,和“-1”是用“100”进行VL编码。
对图9f的2行求出总位数(第一行51位和第二行57位),产生108位,以代表图9a所示的图像数据。原始典型的图像尺寸给定为10×4×8位=320位,这样,利用本发明的压缩技术实现1/3压缩。由于每行长度增加,压缩比也增加,以产生更大的压缩比。该压缩比不如通过基于DCT的算法可能实现的那样高,这里的压缩比可能为1/20至1/100。无论如何,本发明的压缩技术明显减少了硬件需要量,不需要任何乘法器就可以实现。例如,采用当前技术,图2所示的本发明的压缩技术的各种功能单元能利用大约5000个门实现,而基于DCT的数据压缩装置典型需要约50000至70000个门。
此外,基于DCT的压缩图像的解压缩需要通常由软件执行的复杂的余弦操作。这同为本发明所需要的更简化的解压缩算法比较,对CPU施加了较重负载。由于降低的CPU解压缩负载,本发明允许CPU在运转其他程序的同时显示运动图像。有许多图像处理应用不需要如此高的数据压缩需求,因此不需要昂贵的基于DCT的压缩。某些类型的图像捕获装置如,PC摄像机,图像静止摄像机,或摄录一体机等是这些应用的例子。
参照图10,图中所示方块图是本发明数据压缩装置的典型系统应用。一图像捕获设备,例如摄像组件100包括透镜和保持器102,通过它图像被提供给图像传感器104,图像传感器104可以是CMOS类型,其与CCD类型相反。根据本发明的数据压缩可以由专用集成电路(ASIC)或从图像传感器104接收检测的图像数据的现场可编程门阵列(FPGA)106实现。一种例如动态随机存取存储器(DRAM)型缓冲器108连接到ASIC 106并供图像数据存储用,以利于数据处理。控制器110,例如USB(通用串行总线)控制器,连接到ASIC 106和图像传感器104,便于同USB 116接口。摄像机组件100还包括由USB控制器控制的电源稳压器112并提供电源到ASIC 106和图像传感器104。该USB可以连接摄像组件100到一主机PC 114,除其它资源外它包括USB设备驱动器,解压缩软件。在一图10所示系统中,明显降低了数据压缩硬件(ASIC106)的尺寸,所以可将该压缩硬件集成在与控制器一样的芯片上。其结果是节约了实际成本。
总之,本发明提供的图像数据压缩装置和方法极大地降低了实施的复杂性和成本,并改进了误差校正。在各实施单元中实现了这些改进,其中包括彩色提取单元,它能通过降低例如1/4或1/16的帧尺寸来执行第一级压缩。接着是通过除以可编程损耗值的压缩,该除法传播余数以改进图像质量。然后在提取的彩色值的基础上执行差分编码调制,以进一步降低图像数据大小。将该结果利用1的补码方法进行可变长度编码,由于取消了VL编码而进一步降低了实施复杂性。最后,VL压缩编码数据被打包,以便通过串行总线传输,该打包改进误差校正。虽然为了描述的目的,已经公开了本发明的最佳实施例,本领域的技术人员可以理解,不脱离由所附权利要求所确定的精神和范围,可以做出各种修改,增加和替换。
权利要求
1.一种图像处理系统包括一图像捕获设备,包括一图像传感器,一用于从图像传感器接收图像数据的数据压缩单元,该数据压缩单元能用选择的因数除该彩色值,一耦合到数据压缩单元的数据存储单元,和一耦合到数据压缩单元和图像传感器的控制器;和一通过串行总线耦合到图像捕获设备的主图像处理设备。
2.根据权利要求1的图像处理系统,其中图像传感器包括CMOS图像传感器。
3.根据权利要求2的图像处理系统,其中数据压缩单元是用一可重编程逻辑装置,例如现场可编程门阵列实现的。
4.根据权利要求2的图像处理系统,其中数据压缩单元是用一应用专门集成电路实现的。
5.根据权利要求1的图像处理系统,其中控制器和数据压缩单元是在同一集成电路芯片上实现的。
6.根据权利要求1的图像处理系统,其中图像捕获设备是一摄像机组件,串行总线是一通用串行总线,而主图像处理设备是一个人计算机。
全文摘要
一种图像数据压缩方法和装置,极大地降低了实施复杂性和成本,并改进了误差校正。以各实施单元实现这些改进,包括一彩色提取单元,它通过减小例如1/4或1/16的图像帧执行第一级压缩。接着通过被可编程损耗值除进行压缩,其中除法传播余数以改进图像质量。然后在提取的彩色值上执行差分编码调制以进一步降低图像数据大小。最好利用1的补码对结果实行可变长度编码。最后,将VL编码压缩数据打包,以通过串行总线传输,此处打包改进了误差较正。
文档编号G06T9/00GK1489390SQ0313784
公开日2004年4月14日 申请日期1999年4月30日 优先权日1998年4月30日
发明者李锡中, 金相渊 申请人:现代电子产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1