本科数据压缩课程
记录数据压缩课程中的作业与学习内容
AaronXueNF
这个作者很懒,什么都没留下…
展开
-
数据压缩学习笔记(一)RGB文件读取及RGB分量的概率分布统计
实验目的使用C++读取未压缩的,分辨率为256*256的RGB文件,并分别输出该文件R、G、B三个分量的概率分布示意图和熵。信息熵在这里表示R,G,B三个通道每像素分别平均携带的信息量。实验过程示例图片如下:对于上述示例图片的RGB文件,其每个像素的三种颜色为8bit,以BGR的顺序逐像素一行一行地储存在文件中。(这个RGB文件基本可视作去掉头部的24bit bmp文件)。使用C++...原创 2020-03-12 23:17:35 · 622 阅读 · 0 评论 -
数据压缩预备知识(二)主成分分析法及其python实现
一、概述主成分分析法(PCA)主要应用于数据降维。其思想是使用较少的变量来取代原先较多的变量,以实现节省数据量的效果。需要指出,若原始变量之间互相正交,即线性无关,则主成分分析法没有效果。二、原理假定有n个样本,每个样本有p个变量描述,则所有数据构成了一个n*p阶的矩阵XX = [[dat1], [dat2], ..... [datn]]但我们希望通过q个变量来描述这些数据...原创 2020-02-19 17:47:46 · 617 阅读 · 0 评论 -
数据压缩学习实验(三)PNG文件读取及转换至YUV色彩空间的C++实现
实验目的学习PNG文件格式,为随后学习图像的压缩做准备。编程读取PNG文件中的外围解析,使用lodepng库解码被压缩的图像内容。将文件内容转换至YUV色彩空间。实验原理PNG文件格式初步了解:数据压缩学习笔记(二)以PNG为例探讨设计思想和理解YUV色彩空间的转换:数据压缩学习实验(一)RGB与YUV色彩空间转换的C++实现及误差分析使用lodepng库对压缩图像进行解码:L...原创 2020-04-10 23:06:29 · 681 阅读 · 0 评论 -
数据据压缩实验(七)MPEG音频编码器分析及调试
实验目的理解感知音频编码的基本思想理解心理声学模型的实现过程理解MPEG layer2音频编码器的整体框架理解码率分配的实现思路调试编码器,编码不同音频文件,选择一个音频帧并输出如下关键信息:该帧分配的比特数该帧的比例因子该帧的比特分配结果实验原理子带编码三个重要组成部分:分析—综合滤波器组比特分配机制编码机制不同子带运载不同数量的感知信息,不太重要的子带可以用较低码率下采样,且可以采用较粗糙的量化粗量化,运载最重要信息的子带用高质量编码。MPEG layer2音频原创 2020-06-05 11:25:17 · 526 阅读 · 0 评论 -
数据压缩学习笔记(四)语音参数编码与随机信号的AR模型参数建模
语音信号的特征浊音(Voiced sounds):声带振动,引起声门的打开和关闭,从而发送压力变化的脉冲到声道,在声道形成声波。清音(Unvoiced sounds):清音是声门保持打开并将气体压进一个收缩声道的结果。清音样本表现出很少的相关性,是随机的或接近随机的。爆破音(Plosive sounds):声道关闭之后产生的压缩空气然后突然打开声道所发出的音。因此语音信号的生成可以被归为两大类:在话音生成模型中,声道被等效成一个随时间变化的滤波器,它由白噪声—清音话音段激励,或者由脉冲串——浊音原创 2020-06-19 22:07:58 · 919 阅读 · 1 评论 -
数据压缩预备知识(一)数据类型及常见表示方法
数据类型基础一、二进制及其运算在计算机中,数据以二进制的形式表示。〖(XXX)〗_b ,如〖(1011.11)〗_b。 其权值为2^i,基数为2,系数为0与1。二进制按权展开相加得十进制数值,十进制整数部分除2取余,小数部分乘2取整得二进制数值。如:二进制数分为有符号数和无符号数。其中,有符号数的最左位表示符号,0+,1-。有符号数表示方法分为原码,反码和补码。正数三码相同,负...原创 2020-02-16 23:27:48 · 342 阅读 · 0 评论 -
数据压缩学习实验(二)BMP文件读取及转换至YUV色彩空间的C++实现
实验目的熟悉BMP文件结构,进一步学习多媒体文件结构设计的思想。编程读取BMP文件,要求程序可以处理1、2、4、8、24、32bit色深。实践RGB与YUV色彩空间的转换,将BMP文件转换至YUV色彩空间。实验原理RGB与YUV空间的相互转换:由电视原理可知,亮度和色差信号的构成如下:Y=0.2990R+0.5870G+0.1140BR-Y=0.7010R-0.5870G-0....原创 2020-04-05 22:05:49 · 957 阅读 · 3 评论 -
数据压缩学习笔记(二)以PNG为例探讨设计思想和理解
一、PNG文件的组成Png文件构成方式如下:其中:PNG文件署名固定8字节为89 50 4E 47 0D 0A 1A 0A每个数据块由四部分构成:名称字节数说明Length(长度)4Bytes指定数据块中数据长度,不超过(231-1)字节Chunk Type Code(类型码)4Bytes由ASCII字母(A-Z和a-z)构成Chunk Dat...原创 2020-03-28 22:37:31 · 273 阅读 · 1 评论 -
数据压缩学习实验(六)JPEG原理分析及JPEG解码器的调试
实验目的掌握JPEG编解码系统的基本原理。初步掌握复杂的数据压缩算法实现,并能根据理论分析需要实现所对应数据的输出。实验原理JPEG编码原理色彩空间:JPEG标准本身并没有规定具体的颜色空间,只是对各分量分别进行编码。实现中通常将高度相关RGB颜色空间转换到相关性较小的YUV颜色空间,并根据人眼对色度不敏感的视觉特性进行色度下采样,如4:2:2、4:2:0等。零偏置:对于灰度级是2n的像素,通过减去2n-1,将无符号的整数值变成有符号数,从而使像素的绝对值出现3位10进制的概原创 2020-05-26 01:09:01 · 570 阅读 · 0 评论 -
数据压缩学习实验(八)H264编码器调试
实验内容调试JM18.6 H264编解码器,将输入的Annex B格式码流解码至YUV文件调整编码器参数,将解码后的YUV文件编码至不同格式的H.264文件用码流分析软件检查所生成的码流中各种编码模式和运动矢量等信息用播放器观看所生成码流的质量生成率失真曲线实验过程及结果解码.264文件(Annex B码流)至YUV 420文件在H.264中,编码后的比特流将被NAL( Network Abstraction Layer)打包形成NAL Unity:NAL Unity由一个字节的头原创 2020-07-07 16:53:46 · 679 阅读 · 0 评论 -
数据压缩学习笔记(三)最小二乘法、梯度下降法、牛顿法、高斯牛顿法原理
最小二乘法最小二乘法的目标是解决函数拟合的问题,对于给定的多组(x,y):(x1,y1),(x2,y2),(x3,y3)……,(xk,yk)求得最佳拟合函数的关系。一般地,这个函数的非线性表示形式为:其线性方程组表示为Y=XA,记作矩阵:在算法中,优化的目标是让残差平方和最小,即:此时的残差平方和又可称为损失函数。最小二乘法求解最优化A矩阵的思想就是对每一个系数的导数求导并使其置零。其求解结果为:对于线性关系,方程为:求解结果不变仍为最小二乘法在DPCM预测器设计中确定预测系原创 2020-05-14 22:02:40 · 831 阅读 · 0 评论 -
数据压缩学习实验(五)均匀量化器设计即DPCM编码的C++实现
实验目的掌握DPCM编解码系统的基本原理。设计均匀量化器对误差图像进行量化,观察分析量化及预测结果;使用Huffman编码程序对原始图像和预测误差图像进行编码,统计符号概率并分析其压缩效率。实验内容DPCM编解码原理在预测编码DPCM中,先根据前几个抽样值计算出一个预测值,再取当前抽样值和预测值之差。将此差值编码并传输。此差值称为预测误差。由于抽样值及其预测值之间有较强的相关性,即抽...原创 2020-05-01 22:16:18 · 1471 阅读 · 1 评论 -
数据压缩学习实验(一)RGB与YUV色彩空间转换的C++实现及误差分析
实验目的编写程序将RGB图片文件转换为YUV色彩空间。其中,RGB文件各像素以BGR顺序按行依次排列存储,YUV文件按全部Y数据、全部U数据、全部V数据存储,均为8bit量化。编写程序将图片从YUV色彩空间转换回RGB色彩空间,并于原RGB文件进行比较,分析误差。实验原理RGB与YUV空间的相互转换:由电视原理可知,亮度和色差信号的构成如下:Y=0.2990R+0.5870G+0...原创 2020-03-19 23:49:16 · 1250 阅读 · 0 评论 -
数据压缩学习实验(四)LZW压缩算法的C++实现及其效率分析
实验目的:掌握词典编码的基本原理,阅读C语言实现的LZW算法并用C++按自己理解实现LZW解码器并分析编解码算法,以及LZW算法对不同文件的压缩效果。LZW算法原理:关于更具体的图解LZW编解码可以参考:超级简单的数据压缩算法—LZW算法编码部分:简单地讲,LZW的编码就是不断将目前字符‘c’与上一个字符串P串成一个新串,并与词典中已有串进行不断比对,若新串P+‘c’在词典中,则将P+...原创 2020-04-23 15:53:36 · 1994 阅读 · 1 评论 -
数据压缩预备知识(三)完全重建滤波器实验和频域、时域分辨率
完全重建滤波器完全重建滤波器QMFB将输入信号经由不同通带的滤波器组滤波之后输出,在接收侧通过综合滤波器将各子带综合为恢复信号。完全重建滤波器可以根据每个子带的不同特征分别进行处理,而插值和合成可以一定程度上消除信号失真以及降低样值数目从而数据码率。两通道正交镜像滤波器图中,希望满足的条件为:此时,输出信号仅在幅度、时延与原始信号不同。其频域表达式:两通道正交镜像滤波器组所需满足的条件是:其幅频特性为:一般而言H0为低通滤波器,H1为高通滤波器。从时域上进行最简单的推导:设低通原创 2020-05-26 05:50:36 · 874 阅读 · 0 评论