首页 > 编程知识 正文

标量量化和矢量量化实验一样吗,矢量量化的优缺点

时间:2023-05-06 20:11:57 阅读:262513 作者:3697

调试标量量化器 1,使用标量量化编码程序uqimg_enc在不同量化比特数下对sena.img图像进行1bit,2bit,4bit,6bit的量化编码。

命令参数(以1bit量化为例):

-i ../images/sena.img -o ../images/quantized_img/sena_1bit.quan -b 1

输入sena.img图像,输出1bit量化后图像sena_1bit.quan,量化比特数设置为1bit。

2,使用标量量化解码程序uqimg_dec对sena_1bit.quan进行解码。

命令参数:

-i ../images/quantized_img/sena_1bit.quan -o ../images/reconstructed_img/sena_1bit_re.img

输入sena_1bit.quan编码文件,输出sena_1bit_re.img解码图像。

3,使用imgshow_n_uni.m程序显示原图像和1bit,2bit,4bit,6bit的量化编码解码后图像文件,并求出PSNR值来评价编码解码后的图像质量。

运行结果:

量化比特数原始文件大小量化后大小压缩率PSNR1bit64.0KB8.02KB7.98:118.61752bit64.0KB16.0KB4.06:121.50634bit64.0KB32.0KB2:135.00116bit64.0KB48.0KB1.33:146.4605

随着量化比特数的增大,压缩率也在逐渐减小,但PSNR逐渐增大,PSNR越大说明图像质量越接近原始图像。

一般来说:

PSNR高于40dB说明图像质量极好(即非常接近原始图像),

在30—40dB通常表示图像质量是好的(即失真可以察觉但可以接受),

在20—30dB说明图像质量差;

最后,PSNR低于20dB图像不可接受。

调试矢量量化器 1,使用LBG算法程序trvqsp_img将sena图像的2x2像素块合并为矢量,采用LBG算法将其构成的4维空间分别划分为16,32,64,128,256个区域(对应16,32,64,128,256个码矢)。

命令参数(16个区域为例):

../images/sena.img ../images/codebooks/sena22_16.cb -b 16 -w 2 -t 2

 输入sena.img文件,输出sena22_16.cb码本,码本大小为16,像素宽度为2,像素高度为2。

2,使用矢量量化编码程序vqimg_enc,并使用上面生成的sena22_16.cb码本对sena.img图像进行编码。

命令参数:

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

 输入sena.img文件,输出sena22_16.vquan编码文件,使用的码本为sena22_16.cb。

 

 3,使用矢量量化解码程序vqimg_dec对sena22_16.vquan编码文件进行解码。

命令参数:

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

 输入sena22_16.vquan编码文件,输出sena22_16_re.img图像文件。

4,使用imgshow_n_vec.m程序显示原图像和16,32,64,128,256个区域的矢量量化编码解码后图像文件,并求出PSNR值来评价编码解码后的图像质量。

量化等级原始文件大小量化后大小压缩率PSNR1664.0KB8.04KB7.96:132.47873264.0KB10.0KB6.4:134.83326464.0KB12.0KB5.33:136.481412864.0KB14.0KB4.57:138.175725664.0KB16.0KB4:139.8419

矢量量化编码随着量化等级的提高,压缩率虽然也在逐渐减小,但减小的幅度远小于标量量化时的情况,并且通过PSNR来看,各个量化等级下编码后的图像质量都很接近原始图像。

矢量量化利用像素间的相关性,性能比标量量化好。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。