多媒体数据压缩
2016-02-19 10:56
176 查看
图形与图像:
对计算机而言,图形与图像是两个不同的概念。图形一般是指通过绘图软件绘制的由直线、圆、圆弧、任意曲线等组成的画面,即图形是由计算机产生的,且以矢量形式存储;而图像是由扫描仪、数字照相机、摄影机等输入的画面,即图像是由真是的场景或现实存在的图片输入计算机产生的,图像以位图形式存储。区别类似于汉字字形码中的矢量方式和点阵方式表示。
动画和视频:
图形和图像的动态形式。动态的图像是由一系列的静态画面按一定的顺序排列组成,并配以同步声音。每一副称为“帧”,当每秒以25帧的速度播放时,由于视觉的暂留现象产生动态效果。动态的图像有动画和视频两种方式。动画是用人工合成的方法对真实世界的一种模拟,而视频影像则是对真实世界的记录。
图像可认为是由若干行和若干列的像素(pixel)点组成的阵列。像素:用若干个二进制位进行编码,表示颜色。重要属性:分辨率 + 颜色深度。
例如:
单色图像的颜色深度为1,用一个二进制位表示纯白、纯黑。通过调整黑白两色的程度(颜色灰度)来有效地显示单色图像。一般灰度级别为256级(0~255),每个颜色深度为8,占一个字节。彩色图像显示时,有红、绿、蓝三色通过不同的强度混合而成,当强度分为256级(值为0~255),占24位,就构成了2^24=2^(3*8)=16777216中颜色的“真彩色”图像。
当要表示一个分辨率为640*480的“真彩色”图像,需要640*480*3=900KB容量而要在计算机上连续显示分辨率为1280*1024“真彩色”高质量电视图像,按每秒30帧,显示一分钟计算:1280(列)*1024(行)*3(字节)*30(帧)*60(秒)约为6.6GB。
数据压缩:
信息进行二进制编码后,即数字化后,便可进行存储和处理,但有个问题,对于多媒体信息(如声音、动画、视频等)数据量很大,给存储和处理带来不便。因此,能否在保留原数据表达的信息不变或者在稍有变动但不至于影响使用的同时尽量减少信息的数据量,这样不仅节省存储空间,也会提高传输效率。
有损压缩 + 无损压缩
有损:忽略小细节不影响使用。有意丢弃一些对使用不太重要的细节数据来压缩,进行数据重构,与原始数据有所不同,不影响人对原始数据表达信息的理解。
无损:用另外更高效的方式表达同样的信息。
对计算机而言,图形与图像是两个不同的概念。图形一般是指通过绘图软件绘制的由直线、圆、圆弧、任意曲线等组成的画面,即图形是由计算机产生的,且以矢量形式存储;而图像是由扫描仪、数字照相机、摄影机等输入的画面,即图像是由真是的场景或现实存在的图片输入计算机产生的,图像以位图形式存储。区别类似于汉字字形码中的矢量方式和点阵方式表示。
动画和视频:
图形和图像的动态形式。动态的图像是由一系列的静态画面按一定的顺序排列组成,并配以同步声音。每一副称为“帧”,当每秒以25帧的速度播放时,由于视觉的暂留现象产生动态效果。动态的图像有动画和视频两种方式。动画是用人工合成的方法对真实世界的一种模拟,而视频影像则是对真实世界的记录。
图像可认为是由若干行和若干列的像素(pixel)点组成的阵列。像素:用若干个二进制位进行编码,表示颜色。重要属性:分辨率 + 颜色深度。
例如:
单色图像的颜色深度为1,用一个二进制位表示纯白、纯黑。通过调整黑白两色的程度(颜色灰度)来有效地显示单色图像。一般灰度级别为256级(0~255),每个颜色深度为8,占一个字节。彩色图像显示时,有红、绿、蓝三色通过不同的强度混合而成,当强度分为256级(值为0~255),占24位,就构成了2^24=2^(3*8)=16777216中颜色的“真彩色”图像。
当要表示一个分辨率为640*480的“真彩色”图像,需要640*480*3=900KB容量而要在计算机上连续显示分辨率为1280*1024“真彩色”高质量电视图像,按每秒30帧,显示一分钟计算:1280(列)*1024(行)*3(字节)*30(帧)*60(秒)约为6.6GB。
数据压缩:
信息进行二进制编码后,即数字化后,便可进行存储和处理,但有个问题,对于多媒体信息(如声音、动画、视频等)数据量很大,给存储和处理带来不便。因此,能否在保留原数据表达的信息不变或者在稍有变动但不至于影响使用的同时尽量减少信息的数据量,这样不仅节省存储空间,也会提高传输效率。
有损压缩 + 无损压缩
有损:忽略小细节不影响使用。有意丢弃一些对使用不太重要的细节数据来压缩,进行数据重构,与原始数据有所不同,不影响人对原始数据表达信息的理解。
无损:用另外更高效的方式表达同样的信息。
相关文章推荐
- 《Node.js入门》CentOS 6.5下Node.js Web开发环境搭建笔记
- paper 22:kl-divergence(KL散度)实现代码
- android客户端与javaweb服务端通信——登录小demo的启示
- ScrollView 默认没有滑动到最顶部
- 第三届蓝桥杯初赛四之奇怪的比赛法四
- 整理HTML5中表单的常用属性及新属性
- 标准模板库 STL—— set 列传
- android studio安装及使用
- webview的一些设置
- centos常用网络管理命令
- ionic中导航栏讲解
- Linux服务器创建及维护记录
- sqlserver 区分大小写
- 归并算法
- 什么是ORACLE ASM
- JMeter 聚合报告之 90% Line 参数说明
- 设置容器session有效期及优先级的方法
- ORACLE函数大全(转载)
- OOM内存溢出(转)
- Linux链接脚本学习--lds