zoukankan      html  css  js  c++  java
  • 数字图像数据压缩

    一、图像压缩的基本原理

        虽然表示图像需要大量的数据,但.图像数据是高度相关的,或者说存在冗余(Redundancy)信息,去掉这些冗余信息后可以有效压缩图像,同时又不会损害图像的有效信息。

        数字图像的冗余卡要表现为以下几种形式:空间冗余、时间冗余、视觉冗余、信息熵冗余、结构冗余和知识冗余。

        (1)空间冗余:图像内部相邻像素之间存在较强的相关性所造成的冗余。

        (2)时间冗余:视频图像序列中的不同帧之间的相关性所造成的冗余。

        (3)视觉冗余:是指人眼不能感知或不敏感的那部分图像信息。

        (4)信息熵冗余:也称编码冗余,如果图像中平均每个像素使用的比特数大于该图像的信息熵,则图像中存在冗余,这种冗余称为信息熵冗余。

    (5)结构冗余:是指图像中存在很强的纹理结构或自相似性。

    (6)知识冗余:是指在有些图像LlJ还包含与某些先验知识有关的信息。

        图像数据的这些冗余信息为图像压缩编码提供了依据。例如,利用人眼对蓝光不敏感的视觉特性,在对彩色图像编码时,就可以用较低的精度对蓝色分量进行编码。图像编码的目的就是充分利用图像中存在的各种冗余信息,特别是空间冗余、时间冗余以及视觉冗余,以尽量少的比特数来表示图像。利用各种冗余信息,压缩编码技术能够很好地解决在将模拟信号转换为数字信号后所产生的带宽需求增加的问题,  它是使数字信号走上实用化的关键技术之一,表中列出了几种常见应用的码率。

    图像数据压缩和图像重构

    三、基本概念

    【1、数字图像的熵

        设一幅灰度级为N的图像,图像中第k级灰度出现的概率为Pk,  则    设一幅灰度级为N的图像,图像中第k级灰度出现的概率为Pk,  则按信息论中信息熵的定义,数字图像的熵H可按其公式来求出:

    【2)平均码字长瘦

        对于一种图像编码方法,设第k级灰度的码字长度为Bk,则该图像的平均码字长度R可以按其公式来求出。

    编码效率n为:n=H/R×1 OO%

    【4)若图像的大小为NX\Ny.每个像素丽d比特表示.每两帧图像间隔为△t.每秒钟所需的传输比特数bps可按其公式来求出。

    【5)压缩比r为:r=d/R

    5.2无损压缩

    一、图像压缩方法可以分为2大类

        1、无损压缩:能够保证进行无误差的图像数据重构;

        2、有损压缩:不能完整地保持信息,图像数据重构时有信息丢失,但不应造成图像的明显改变

    二、哈夫曼编码算法

      哈夫曼编码是一种无损压缩方法,其一般算法如下: 

    A、首先统计信源中各符号出现的概率,按符号出现的概率从大到小排序;

      B、把最小的两个概率相加合并成新的概率,与剩余的概率组成新的概率集合;

      C、对新的概率集合重新排序,再次把其中最小的两个概率相加,组成新的概率集合。如此重复进行,直到最后两个概率的和为l;

        D、分配码字:码字分配从最后一步开始反向进行,对于每次相加的两个概率,给大的赋¨O",小的赋¨1¨(也可以全部相反,如果两个概率相等,  则从中任选一个赋¨O¨,  另一个赋"l¨即可),读出时由该符号开始一直走到最后的概率和¨1¨,将路线上所遇到的¨O¨和¨l¨按最低位到最高位的顺序排好,就是该符号的哈大曼编码。

        例:设一幅灰度级为6(分别用a 1、a2、a3、a4、a5、a6表示)的图像中,各灰度所对应的概率分别为O.40、O.30、O.1 O、O.1 O、O.06、O.O4。现对其进行哈大曼编码,具体步骤如下:

    (1)、首 先对信源概率从大到小排序,选出最小的两个概率(O.06和O.04),相加得O.1,与其他概率组成新的概率集合(O.4,O.3,O.1,O.1,O.1);

             (2)对新的概率集合重新排序,选出最小的两个概率(O.1和O.1),相加得O.2,组成新的概率集合(O.4,O.3,O.1,O.2);

             (3)对新的概率集合重新排序(O.4,O.3,O.2,O.1),选出最小的两个概率(O.2和O.1),相加得O.3,组成新的概率集合(O.4,O.3,O.3);

             (4)对新的概率集合重新排序,选出最小的两个概率(O.3和O.3),相加得O.6,直到最后两个概率(O.60和O.40)相加和为1;

            (5)分配码字。从最后一步反向进行,首先给最后相加的两个概率(O.60和O.40)分配码字,由于O.60大于O.40,于是给O.60赋¨O¨,给O.40赋¨1¨。

            (6)最后写出每个符号的哈夫曼编码。以符号a4(对应的概率为O.1)为例,在从O.1到1.O的路径上,它所遇到的赋值(¨O¨或¨1¨)依次为O、O、1、O,将其反向排列成¨O l OO",于是就形成了符号a4的哈大曼码字¨OlOO¨。

            这个编码的平均长度:R=O.24(1+O.3(2+O.1(3+O.1(4+O.06(5+O.O4(5=2.2比特/符号;其信源的熵H=2.1 4比特/符号;

        上述哈夫曼编码方法形成的码字是可识别的,即能够保证一个符号的码字不会与另一个符号的码字的前几位相同。

        在编码都建立了之后,编码和解码都可以查表的方式完成。任何哈夫曼编码的符号串,可以通过从左到右的方式对串中每个符号进行分析来解码。例如:对于编码串OlO1OO1111OO从左到右的扫描显示,第一个有效码字为OlOlO,这个编码的符号是a3,下一个有效的编码是O11,它所对应的符号是al,照此方式持续下去得到的完整解码信息结果为a3 a1 a2 a2 a6。

    三、无损压缩的其它方法

        1、香农一范诺(Shannon—Fannon)编码;

        2、行程编码一-比较适合于二值图像的编码;

        3、LZW(Lempel一Ziv&Welch)编码,义称字串表编码,  属于一种无损编码;

    4、算术编码,它有两种模式:一种是基于信源概率统计特性的固定编码模式,另一种是针对未知信源概率模型的自适应模式;

    5、位平面编码;

    6、无损预测编码;等等。

    5.3有损压缩

    有损压缩的常见方法:

      1、有损预测编码;

      2、变换编码;

      3、小波编码,等等。

    5.4图像压缩标准

    l、制定图像标准的国际组织

      A、I SO(国际标准化组织)

      B、CCITT(国际电报电话咨询委员会)

      C、ITU(国际电信联盟)

    2、标准的类型(三类)

      A、二值图像压缩标准:面向传真

      B、连续色调静止图像压缩标准:面向静止的单幅图像,例如:jPEG 2000

    C、视频压缩标准:面向连续帧黑自、彩色压缩:例如:电视会议标准(H.26 1,H.262,H.263,H.320),多媒体视频压缩标准MPEG—l,MPEG-2,M PEG-4,等等。

  • 相关阅读:
    复权、前复权和后复权
    Android Fragment完全解析,关于碎片你所需知道的一切
    Android Volley完全解析(四),带你从源码的角度理解Volley
    Android Volley完全解析(三),定制自己的Request
    Android Volley完全解析(二),使用Volley加载网络图片
    Android Volley完全解析(一),初识Volley的基本用法
    利用HTML5开发Android笔记(下篇)
    利用HTML5开发Android笔记(中篇)
    利用HTML5开发Android笔记(上篇)
    Android经常使用开源组件汇总
  • 原文地址:https://www.cnblogs.com/sccdlyc/p/2511388.html
Copyright © 2011-2022 走看看