图像直方图的统计方法及其系统的制作方法_2

文档序号:8488411阅读:来源:国知局
分离的前一编码码值的数据值部分和长度值部分进行图像直方图的统计。
[0043]当然,可以理解,在本发明的其他实施方式中,也可以在对经编码的图像像素数据中的所有编码码值进行解码(例如采用串行的方式)后,再对分离的数据值部分和长度值部分进行直方图统计。
[0044]在本发明的一个优选例中,上述图像直方图的统计方法主要包括以下阶段:
[0045]1.图像编码和存储:在本阶段中,MXN大小图像的像素序列依次从外部读入,并使用行程编码对数据进行编码,将编码后的图像存储在图像缓存中。经过编码之后,原图中的MXN个像素数据变为L个数据。
[0046]同时,为了对图像直方图中小区间的数目进行调节,对传统的行程编码进行了改进。其中,单个行程编码内数据值部分和长度值部分空间的分配是可以变动的。具体地,像素的行程编码码值中数据值部分存储了像素的灰度值(可以理解,在本发明的其他实施例中,数据值部分也可以存储颜色值等其他特征值);长度值部分存储了数据值部分连续出现的次数。对于n-bit灰度级的图像,如果使用r-bit的空间对其进行行程编码,数据值部分为s-bit,长度值部分为t-bit,则r、s和t三者的关系是r = s+t。
[0047]当图像直方图小区间的灰度间隔为m-bit,即直方图中小区间数目为2n_m+1时,行程编码中数据值部分和长度值部分的空间大小分别为
[0048]s = n-m+1
[0049]t = r- (n-m+1)
[0050]通常在编码时,行程编码中数据值部分的s-bit是由原像素数值的高s-bit组成。为了对图像直方图中的小区间数目可调,m的值是可变的,其范围是Iη。在实际应用中对直方图小区间数目有不同的需求时,只需改变m的值即可。由于随着m的增大,原像素数值中的低(m-l)-bit的差异会被忽略,这会导致像素序列中相同的连续像素数目的增多。本编码中随着m的值增加1,原像素数值部分的空间会减少Ι-bit,编码内长度值部分的空间会增加Ι-bit,所能表示的相同连续像素数目的范围也增加了一倍。
[0051]例如,对于灰度级n-bit为8-bit、分辨率为320 X 240的原图像,采用16_bit的行程编码对图像进行编码。不同的直方图小区间数目对应的编码空间分配情况如图2所示。当直方图小区间数目为256 (m= I)时,编码中的8-bit空间用于存储原像素数据,8-bit的空间用于存储长度值,即像素序列中相同像素值连续出现的次数。当直方图小区间数目为128 (m = 2)时,编码中的7-bit空间用于存储原像素数据,9_bit的空间用于存储长度值,即像素序列中相同像素值连续出现的次数。之后的编码空间分配方法以此类推。
[0052]可以理解,在本发明的其他实施例中,数据值部分和长度值部分空间的分配也可以是固定的。此外,可以理解,在本发明的各个实施例中,对于单个行程编码码值所分配的空间r-bit可以是固定的,也可以是变动的。
[0053]2.图像解码:在本阶段中,从图像缓存中读出行程编码后像素的值,对其解码。即根据系统对图像直方图小区间数目的要求,从编码码值中分离出原像素数据值和长度值。
[0054]3.直方图统计:利用图像解码后分离出像素数据值部分和长度值部分,统计图像的直方图。即以图像编码阶段得到的原像素数据值对图像直方图进行寻址,将编码中的长度值部分累加到读出的图像直方图值上。
[0055]由于对原图像进行了行程编码,图像中数值相同的连续像素可以在一次操作中完成对它们直方图的统计工作,从而在直方图的统计阶段节省了时间。随着小区间数目的减少,这种加速效果越明显,因为由于行程编码对图像的压缩效果随着小区间数目的减少而变好。与此同时,在行程编码之后,图像中连续像素被压缩,从而减少了对图像缓存进行读写的次数。由于对图像缓存的读写操作是系统功耗的重要来源,对其读写操作的减少降低可系统功耗。
[0056]而实现上述方法的一种图像直方图统计系统主要如图3所示,该系统包括:
[0057]图像RLE(行程)编码器:该单元负责将图像原像素值进行行程编码。根据系统对图像直方图小区间数目的要求,改变行程编码码值中数据值部分和长度值部分的空间分配;
[0058]图像缓存器:该单元将图像编码器编码后的像素进行保存;
[0059]图像RLE解码器:该单元从图像缓存器中读出像素数据,将其中的数据值部分和长度值部分进行分离;
[0060]直方图统计单元:该单元使用图像解码器给出的数据值部分对图像直方图进行寻址,并将长度值部分累加到寻址到的图像直方图中。
[0061]为了加快图像解码和直方图统计部分的处理速度,这两个部分间采用流水线结构。其时序关系如图4所示。如果不采用流水线的方法,图像的解码和直方图的统计需要使用两个时间间隔,使用了流水线方法后,在进行第2个码值(即后一个编码码值)的解码时,可以对第I个码值(即前一个编码码值)的解码结果进行直方图的统计。以此类推其它码值的解码和直方图统计顺序。可以理解,在本发明的其他实施例中,也可以对所有编码码值解码后,再进行直方图的统计。
[0062]可以理解,以上仅为本发明的优选实施例,可以根据实际需要添加或删除其中的步骤或器件,并相应地修改其中的细节。
[0063]本发明的各方法实施方式均可以以软件、硬件、固件等方式实现。不管本发明是以软件、硬件、还是固件方式实现,指令代码都可以存储在任何类型的计算机可访问的存储器中(例如永久的或者可修改的,易失性的或者非易失性的,固态的或者非固态的,固定的或者可更换的介质等等)。同样,存储器可以例如是可编程阵列逻辑(Programmable ArrayLogic,简称“PAL”)、随机存取存储器(Random Access Memory,简称“RAM”)、可编程只读存储器(Programmable Read Only Memory,简称 “PROM”)、只读存储器(Read-Only Memory,简称“ROM”)、电可擦除可编程只读存储器(Electrically Erasable Programmable ROM,简称“EEPROM”)、磁盘、光盘、数字通用光盘(Digital Versatile Disc,简称“DVD”)等等。
[0064]本发明第三实施方式涉及一种图像直方图的统计系统。图5是该图像直方图的统计系统的结构示意图。如图5所示,该图像直方图的统计系统包括:
[0065]获取单元,用于获取图像像素数据,该图像像素数据被预先进行了行程编码,编码码值包含数据值部分和长度值部分;
[0066]解码单元,用于对获取的图像像素数据进行解码,以将编码码值中的数据值部分与长度值部分分尚;以及
[0067]统计单元,用于根据分离的数据值部分和长度值部分进行图像直方图的统计。可以理解,上述数据值部分可以存储像素的灰度值、颜色值,或任何其他特征值。
[0068]此外,可以理解,在进行直方图统计时使用经编码的图像像素数据,而在进行如白平衡等其他图像处理操作时使用未经编码的原始图像像素数据。
[0069]在本实施方式的系统中,利用原始图像像素数据中存在相同连续像素的特征,预先使用行程编码对这些相同连续像素进行压缩,则统计单元可以在一个操作中完成对这些相同连续像素的直方图统计,减少了直方图统计的读写操作步骤,从而大大减少了直方图统计的时间和功耗。
[0070]优选地,编码单元在采集原始图像像素数据的同时进行行程编码,可以充分利用系统的空闲资源。具体地说:
[0071]上述系统还包括编码单元,用于在采集原始图像像素数据的同时,实时地对原始图像像素数据进行行程编码,以得到图像像素数据。
[0072]可以理解,原始图像像
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1