预测编码

  • 分帧内编码和帧间编码
  • 对于视频信号,一副图像内邻近的像素点之间有着较强的空间相关性,相邻图像之间有着很强的时间相关性。
  • 针对空间冗余有帧内预测编码,对于时间冗余有基于运动估计(MotionEstimation,ME)和运动补偿(Motion Compensation,MC)技术的帧间预测编码
  • 通过预测,可以得到实际像素值与预测像素值的差值。解码器通过采用与编码器完全相同的预测方法,得到完全相同的预测值,然后用解码出来的预测残差与预测值相加就得到重建图像

帧内压缩(Lossy)

解决的是空域数据冗余问题。

理论:

  1. 相邻像素的差别不是很大,所以可以进行宏块预测,在帧内可以用一个宏块去预测另一个宏块(有9种模式)
  2. 人们对亮度的敏感超过色度
  3. YUV很容易将亮度与色度分开
  4. 对预测模式信息和帧内预测残差值分别进行压缩。其中预测模式信息是选用9种模式预测后的图像,得到的图像与原图像的差值就是残差值
  5. 对I帧/IDR帧进行压缩

帧间压缩(Lossy)

解决的是时域数据冗余的问题.
1.运动估计
通过宏块匹配找到运动矢量,常见的宏块查找算法:
1)三步搜索
2)二维对数搜索
3)四步搜索
4)钻石搜索
2. 运动补偿
找到编码后的图像与ori pic的残差值,解码时进行补偿

无论是帧内压缩还是帧间压缩,它们都是以宏块为单位
基本宏块16x16,还可划分为若干子块(16x8,8x16, 8x8, 8x4,4x8, 4x4 )

DCT(Lossless)

整数离散余弦变换,将空间上的相关性变为频域上无关的数据然后进行量化

CABAC压缩(Lossless)

简单记录H264的一些压缩技术(1)相关推荐

  1. RAISR-master:google图像新压缩技术RAISR的测试代码调试记录(Python实现,没接触过python的小白,内含pip install解决方案)

    RAISR-master:google图像新压缩技术RAISR的测试代码调试记录(Python实现,没接触过python的小白,内含pip install解决方案) 参考文章: (1)RAISR-ma ...

  2. 主流视频编码压缩技术基本概念(二) 算法分析

    主流视频编码压缩技术基本概念(二) 算法分析 一.MPEG-1技术介绍 1. MPEG-1的层次及语法结构 ①.运动补偿序列(Sequence) ②.图片组(GOP) ③. 图片(Picture) ④ ...

  3. 深入浅出雷达脉冲压缩技术

    本文讲脉冲压缩技术.我在学习的时候也查过很多资料,尤其是网上搜到的资料,基本都不太清楚或者不好理解.我想通过自己的努力把脉冲压缩技术的今生前世讲讲清楚. 本文是我的第一篇文章,我是一名技术爱好者,典型 ...

  4. 浅谈存储重删压缩技术(一)

    浅谈存储重删压缩技术(一) 作为一个做企业存储市场的存储人,最近两年我不断被重删压缩撩拨着.对于重删压缩这个技术的好坏,真实需求还是伪需求大家看法不一.今天我就只能谈谈我个人的看法.更多观点请关注&q ...

  5. H.264压缩技术之视频基础(foundation of learning video)——Matlab源码解析

    前言 为了后续能更好的理解,I帧编码与P帧编码,所以笔者先对数字视频中的一些基础概念进行铺垫.后续比较复杂的帧内预测,与帧间预测理解起来就会相对容易些. 关于Matlab中h.264的main函数部分 ...

  6. 【论文阅读】(2023.06.09-2023.06.18)论文阅读简单记录和汇总

    (2023.06.09-2023.06.12)论文阅读简单记录和汇总 2023/06/09:虽然下周是我做汇报,但是到了周末该打游戏还是得打的 2023/06/12:好累好困,现在好容易累. 目录 ( ...

  7. 简单实现h264转ts

    https://www.cnblogs.com/dyan1024/p/10224538.html 简单实现h264转ts 转载注明出处:https://www.cnblogs.com/dyan1024 ...

  8. Java压缩技术(四) GZIP——Java原生实现

    转载自  Java压缩技术(四) GZIP--Java原生实现 GZIP常常用在linxu环境下,是一种非常简单的压缩算法.在Java实现API中,它仅仅包含两个实现类:GZIPInputStream ...

  9. Java压缩技术(五) GZIP相关——浏览器解析

    转载自   Java压缩技术(五) GZIP相关--浏览器解析 GZIP本身就是一种网络流压缩算法,而且应用相当广泛.如果网络访问过程中,其数据流较大,势必降低网络访问效率,此时就需要考虑使用压缩!当 ...

最新文章

  1. 如何管理项目中外包开发人员、测试人员
  2. 360oauth token是什么意思_我在BOSS直聘上都和面试官聊了些什么?
  3. mysql利用外连接删除数据_MySQL-快速入门(6)连接查询、子查询、正则表达式查询、数据的插入删除更新...
  4. squid2.6加速WEB支持虚拟主机配置心得体会 .txt
  5. 2018年5月5日论文阅读
  6. 怎么p出模糊的照片_36. 盲去卷积 - 更加实用的图像去模糊方法
  7. 解决string字符串关于copy函数的C4996错误
  8. SpringBoot2.0.3 + SpringSecurity5.0.6 + vue 前后端分离认证授权
  9. 2020年python工资一般多少-2020届毕业生874万,这个岗位月薪2万竟无人问津...
  10. idea project settings在哪_IntelliJ IDEA如何对project的目录进行筛选显示?
  11. H.264 AVC 编解码标准
  12. MagicDraw-参数图
  13. 高一下册计算机教案,高一信息技术教案
  14. 大学生如何学习c语言!
  15. 计算机视觉——Harris角点检测(课堂实验)
  16. java 微博发布时间_java 对新浪微博微博的发表时间解析
  17. HBuilder使用夜神模拟器
  18. 明源云客微信抢房技巧_抢房明源系统是什么意思_明源云客抢房软件
  19. myeclipse自定义背景颜色
  20. 现在国际上发行的优秀的儿童期刊杂志有哪些

热门文章

  1. unsafe java_java Unsafe详细解析
  2. POI导入导出excel表
  3. Oracle-delete使用
  4. Amazon live亚马逊直播选品建议
  5. 史上最强模型 GPT-4 上线:一张手绘草图能生一个网站、60 秒搞定一个游戏开发!...
  6. 【五分钟会,半小时懂】人声分离Demucs
  7. java comparator用法_Java Comparator thenComparingLong()用法及代码示例
  8. ubuntu linux 自动挂载分区 硬盘 文件 无权限 Permission denied
  9. ESLint Unary operator '++' used
  10. Linux-挂载硬盘