灰度级变长编码

「灰度级变长编码」是一种使用变长编码来减少编码冗余图像压缩手段。在编码时,为了最小化平均码长,可以用短码表示出现多的码,长码表示出现少的码,从而减少编码冗余。

若二进制编码长为 ,可以表示 个灰度级,根据下式,

是变化的,称为「变长编码」。

如表所示一幅 8 灰度级图像的灰度分布,不 同灰度级的概率不同,比较两种不同的编码方法

编码1 编码 2
0.19 000 3 11 2
0.25 001 3 01 2
0.21 010 3 10 2
0.16 011 3 001 3
0.08 100 3 0001 4
0.06 101 3 00001 5
0.03 110 3 000001 6
0.02 111 3 0000001 6

第一种编码需要 3 比特,而第二种编码的每像素平均比特数为

因此得到压缩率

数据冗余率。通过变长编码,概率高的灰度级用短码、概率小的灰度级用长码

实现

常用的灰度级变长编码有