微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 嵌入式设备静止图像编码

嵌入式设备静止图像编码

时间:09-05 来源:互联网 点击:
嵌入式多媒体设备的静止图像编码有着广泛的应用,如照片的拍摄与传输。设备处理的图像越来越大,存储容量和传能力都相当有?因而静止图像编解码要求具有较低的运算复杂性、较少的存储器需求和极好的压缩性能。目前已经制定的静止图像压缩标准主要有JPEG和JPEG2000。JPEG标准在中高速率上压缩效果较好, 对于细节分量多的灰度图像, 当编码压缩率低于每像素0.25比特时,视觉失真大,重构图像存在严重的方块效应,不能很好地适应网络传输图像的需要。JPEG2000为了降低运算中的存储器需求,使用分块技术,对每个小块进行处理,但采用较小的块在低码率时存在与JPEG一样的方块效应。因而JPEG2000 在低比特率应用时, 建议不分块或者分成较大的块,以保证良好的率失真性能, 但运算复杂性和存储器需求都极高。

视频编码新标准H.264代表着继MPEG1/2和MPEG4后的第三代视频编码标准。H.264比以前的标准提供了更高的编码增益。H.264的INTRA帧 编码算法充分利用图像中的空间相关和变换域的相关性,提供了极高的编码增益,可以用来对静止图像进行编码。在文献中H.264采用JM73代码,JPEG2000 采用Jasper 1.700.5,对标准静止测试图像和视频序列进行测试。测试结果表明:与JPEG2000相比,H.264 INTRA帧具有更高的客观质量和主观质量,但译码器的运算复杂性却比JPEG2000低50%左右。在嵌入式设备上,多媒体应用的实时性不仅取决于算法的运算次数,还取决于可得到的存储器带宽。CPU的工作频率越来越高,存储器的频率却增加缓慢,很多算法的瓶颈在于数据输入输出。有效减小算法的存储器需求,减少中间结果的存储需求,可缩减片外存储器访问次数,提高应用的实时性能。下面主要讨论降低H.264 INTRA帧编码的运算复杂性和存储器需求的方法。

                                                     


                                                                图1 H.264编码器的结构流程图


                                                      

    

                                                    图2

1 减少运算复杂性

H.264 INTRA帧具有比JPEG2000更高的客观质量,这主要是由于INTRA帧采用的多种帧内预测模式较好地去掉了空间冗余。对于平滑的背景区域采用16×16大小的粗糙预测,共有4种可能的预测方向。对于快速变化的图像区域,采用4×4的块,共有9种预测模式。在预测后,对残差信号进行整型变换消除频谱相关性。高效的去方块效应滤波器改善了图像的信噪比和主观质量。图1是H.264编码器的结构流程图。从图1可以看出,在整帧图像的熵编码后,对逆整型变换后的重建数据进行去方块效应,去方块效应后的重建图像数据用作下一帧预测图像的编码,或者用于编码同时显示重建图像。编码器的作用主要是压缩原始数据产生输出码流,若不需要在本地编码器中显示重建图像(例如卫星照片的拍摄),则编码器中的整帧图像的去方块效应可以省去,节省大约30%的运算。宏块的帧内预测包含9种4×4模式和4种16×16模式如图2。INTRA 16×16 预测仅仅采用左边16个像素和上边16个像素作参考;INTRA 4×4 预测仅仅采用左边4个像素和上边9个像素作参考,因而在逆整型变换和重建(逆变换结果与预测值相加)时,仅仅需要计算16×16宏块的第16行与第16列像素、4×4块的第4行与第4列像素,没有必要计算所有的像素。对于16×16的块,减少224个重建像素的计算。对于4×4的块,减少8个重建像素的计算。整型变换、量化、逆量化、扫描以及逆变换消耗比较多的编码时间,可利用在模式选择时计算的绝对差值和(SAD),提前判断整型变换后量化系数全0块,从而省去全0块的整型变换、量化、逆量化、扫描以及逆变换这一系列操作。若SAD小于某个门限T,各个变换系数绝对值小于量化步长(Qstep),该块为0块。实验中取T等于3Qstep,获得了较高的检测率和较低的检测差错率。H.264 采用整型变换,为简化门限的推导,其中的整型变换与4×4的离散余弦变换(DCT)相差较小,DCT变换为:

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top