多媒体信息处理学习笔记-2. Multimedia Data and Coding

简介: 多媒体信息处理学习笔记-2. Multimedia Data and Coding

Chap 2. Multimedia Data and Coding


Lossless compression


Run length

Shannon Fano

Huffman

Dictionary coding

Arithmetic coding


Image compression

图像压缩是一种有损压缩,它利用了图像中的冗余度和人类视觉系统(HVS


JPEG


JPEG是图像压缩领域的第一个国际标准

实现10:1的压缩,而在图像质量方面几乎没有可察觉的损失

基于离散余弦变换(DCT)的有损压缩

基于预测的无损压缩

优点。

– 高度控制的压缩程度。用户可独立选择比率质量/文件大小。

– 格式是兼容的,它可以在任何浏览器、所有电脑和移动设备上正确显示。

– 适用于具有大量色彩和对比度转换的全彩写实图像。

– 画面质量高,压缩程度小。


缺点

– 当你挤压它时,图像可能会 "散开 "成单独的方块–8×8像素的块状物

– JPEG不太适合于处理文本或界限清晰的单色图形


JPEG 2000是由联合摄影专家组委员会在2000年创建的。

用一种新设计的、基于小波的方法取代原来基于DCT的JPEG标准

比JPEG的改进

1.卓越的压缩比

2.人工痕迹不那么明显,几乎没有块

3.渐进式传输

在收到整个文件的较小部分后,观看者可以看到最终图片的较低质量版本。然后通过从源头下载更多的数据位,质量逐步提高。

4.ROI编码

更多的比特被分配到ROI(感兴趣区域)区域,以达到更好的质量。


BMP

 储存二维数字图像,包括单铬和彩色,有各种颜色深度。

GIF

 使用LZW无损数据压缩技术

PNG

 设计为GIF的替代品以避免专利费用

 无法支持动画


音频压缩

 数字化

 抽样调查

 频率 fs

 量化

 量化是一个多对少的映射,它是一个固有的非线性和不可逆的过程

 量化精度


 采样频率fs是根据奈奎斯特理论确定的,音频信号的最大频率fh

 fs >= fh*2

 电话音频的fh约为3.4kHz,所以fs为8kHz。


视频

 视频数据可以表示为一系列的静止图像

 自然视频场景由具有不同形状、纹理和亮度的物体组成。

 自然的视频场景可以从两个方面来表征。

 外观、形状和颜色

 运动、亮度变化、摄像机移动和视角变化


 视频帧在空间和时间领域是连续的

 空间采样

 图像平面上的一个矩形网格

 时间性取样

 在时间轴上有固定间隔的框架

 空间时间域中的每个样本(像素)都用一组数字表示,代表亮度和色度


 视频编码器通常包含三个模块

 时间模型

 空间模型

 熵编码器



 时间模型的目标是通过获得预测帧并减去当前帧中的预测帧来减少帧间冗余。

 预测越准确,输出的残余帧能量就越小。

 预测精度可以通过当前编码帧和参考帧之间的运动补偿来提高。


 时域中最简单的预测是使用当前帧的前一帧作为预测。

 由于帧间运动,残余帧中的能量仍然非常大。


光流

 光流方法试图计算两个图像帧之间的运动,这两个图像帧是在时间t和t+Δt的每个体素位置上拍摄的。

 大量的计算


 相关帧框架可以是前帧,也可以是后帧,或者是时域中相关帧的组合。

 编码器需要在帧间编码和帧内编码之间切换。

 物体运动很少有16x16的整齐边界,可变块大小的运动补偿会更有效。

 由于物体的运动通常不是整数像素的距离,所以用子像素运动补偿来插补参考帧是更有效的。

 较小的块大小可以带来更好的运动补偿效果。

 但较小的区块大小也带来了更大的计算复杂性。

 需要更多的搜索过程

 需要传输的运动矢量的数量会增加

 优化方案是根据图像特征自适应地调整块的大小。

 使用较大的块状尺寸对平坦和一致的区域

 对具有丰富细节的区域使用较小的块状尺寸

目录
相关文章
|
Linux 网络安全 Docker
windows ssh连接docker 容器
windows ssh连接docker 容器
444 0
|
4月前
|
Python
Django+DRF 实战:自定义异常处理流程
本文详解DRF异常处理流程,包括默认处理机制与自定义异常处理器的实现方法。通过源码分析和实战示例,讲解如何全局捕获并统一返回错误信息,并结合日志记录与友好提示提升项目健壮性。适用于Django进阶开发。
175 4
|
监控 Cloud Native Java
传统应用的“云”端新生——Quarkus迁移全攻略
随着云计算的发展,传统单体应用逐渐显现出扩展性和维护成本等问题,而云原生应用因轻量、高效成为新宠。Quarkus作为一款高性能的云原生Java框架,正吸引越来越多开发者。本文详细介绍将传统应用迁移至Quarkus的步骤,包括全面评估、环境搭建、代码重构、数据库迁移、安全性与监控设置,以及测试和部署。通过这些步骤,您可以顺利实现应用的云原生化,享受其带来的诸多优势。
285 3
|
资源调度 JavaScript PHP
Vue3+ element plus 前后分离admin项目安装教程
Vue3+ element plus 前后分离admin项目安装教程
346 0
|
SQL JSON 测试技术
Python中的f-string
Python中的f-string
527 2
|
弹性计算 关系型数据库 MySQL
连接rds确认环境准备
连接阿里云RDS数据库需准备和检查:1) 创建并配置RDS实例,设置安全组规则;2) 确保ECS与RDS在同一VPC或可通信,添加ECS IP到白名单;3) 在ECS上安装数据库客户端;4) 配置连接参数;5) 若启用SSL,配置客户端证书;6) 测试连接;7) 更新应用配置。参照阿里云官方文档进行操作。
254 9
|
计算机视觉 异构计算 Python
YOLOv8改进 | 进阶实战篇 | 利用YOLOv8进行视频划定区域目标统计计数
YOLOv8改进 | 进阶实战篇 | 利用YOLOv8进行视频划定区域目标统计计数
666 0
|
关系型数据库 MySQL Linux
小白带你学习linux的mariadb高可用MAH
小白带你学习linux的mariadb高可用MAH
305 0
|
存储 缓存 负载均衡
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
之前给大家写了ChatGPT对接企业微信的教程,文章结尾说了教程只能适用于小规模使用,现在来写大规模使用的教程
438 1
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
|
JavaScript 安全 索引
《现代Typescript高级教程》泛型和类型体操
泛型和类型体操 泛型和类型体操(Type Gymnastics)是 TypeScript 中高级类型系统的重要组成部分。它们提供了强大的工具和技巧,用于处理复杂的类型操作和转换。
572 1