数据压缩实验[3]:量化器调试

均匀标量量化

示例程序调试与运行

均匀标量量化编码器uqimg_enc

以量化索引比特数确定量化等级数,输入值范围[0,255],此时运行参数为:

-i [输入img图像文件路径] -o [输出量化索引文件路径] -b [量化比特数]

例如:

-i ../images/sena.img -o ../images/quantized_img/sena_6bit.quan -b 6

其余情况见程序中usage()函数。

均匀标量量化解码器uqimg_dec

运行参数为:

-i [输入量化索引文件路径] -o [输出img图像文件路径]

例如:

-i ../images/quantized_img/sena_4bit.quan -o ../images/reconstructed_img/sena_4bit_re.img

运行结果

以sena图像为例,不同量化等级下输出结果为:
请添加图片描述

不同量化等级量化比特数与PSNR性能结果如下:

BitsOriginal sizeQuantized sizeCompress RatioPSNR
164kB8.00kB12.5%18.62
264kB16.0kB25.0%21.51
464kB32.0kB50.0%35.00
664kB48.0kB75.0%46.46

矢量量化

示例程序调试与运行

LBG算法程序trvqsp_img

运行参数为:

[输入img图像文件路径] [输出码书文件路径] -b [码书中码矢数量] -w [合并为矢量的block宽度] -t [合并为矢量的block高度]

例如,对于sena图像,将2x2像素块合并为矢量,采用LBG算法将其构成的4维空间划分为64个区域(对应64个码矢)

../images/sena.img ../images/codebooks/sena22_64.cb -b 64 -w 2 -t 2

其余参数见程序Usage()函数。

编码器vqimg_enc

使用得到的码书进行编码,参数为:

-i [输入img图像文件路径] -o [输出量化索引文件路径] -c [码书文件路径]

例如:

-i ../images/sena.img -o ../images/quantized_img/sena22_16.vquan -c ../images/codebooks/sena22_16.cb

解码器vqimg_dec

参数为:

-i [输入量化索引文件路径] -o [输出重建图像文件路径]

例如:

-i ../images/quantized_img/sena22_16.vquan -o ../images/reconstructed_img/sena22_16_re.img

运行结果

以sena图像为例,2x2分块下不同码矢划分级数输出结果为:
请添加图片描述
请添加图片描述

不同量化等级量化比特数与PSNR性能结果如下:

levelsOriginal sizeQuantized sizeCompress RatioPSNR
1664kB8.00kB + 76B12.6%32.48
3264kB10.0kB + 140B15.8%34.83
6464kB12.0kB + 268B19.1%36.48
12864kB14.0kB + 524B22.7%38.18
25664kB16.0kB + 1036B26.6%39.84

可见对于图像文件,矢量量化可在一定程度上利用像素间的相关性,性能大幅领先于均匀标量量化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值