HEVC中GOP参数说明

2023-10-13 06:40
文章标签 参数 说明 hevc gop

本文主要是介绍HEVC中GOP参数说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

编码结构从编码的分层处理架构和编码后码流的语法架构进行描述,对有若干时间连续的图像构成的视频序列进行压缩时,先将其分割为若干个图像组GOP(Group of Picture,GOP).分为封闭GOP和开放GOP。封闭GOP是,每个GOP都以IDR(Instantaneous Decoding Refresh)开始,各个GOP之间独立编码。开放GOP,是第一个GOP的第一个帧内编码图像为IDR图像,后续GOP中的第一个帧内编码图像为non-IDR,就是后面GOP中的帧间编码图像可以越过non_IDR图像,使用前一个GOP中已编码的图像做参考图像。
封闭式GOP
在这里插入图片描述
开放式GOP
在这里插入图片描述
GOP参数说明,HM的软件手册有如下说明:
在这里插入图片描述
下面用原文的图解释GOP结构的参数:
在这里插入图片描述
参数说明,在下述说明中:frame n 代表解码顺序的第几帧。poc(Display
order of the frame within a GOP, ranging from 1 to GOPSize)。上述GOP结构中的参数配置说明如下:
在这里插入图片描述
介绍表格中参数为何是如下配置:(Framen 中的n代表解码顺序)
Type:表示图像的I,P,B帧,所以Frame1~Frame4的相应的值为P,B,B,B。
POC:表示在一个GOP中图像显示顺序,则Frame1~Frame4的相应的显示顺序为:4、2、1、3。
QPOffset:表示实际编码的帧等于初始QP+QPOffset,此值越大表示图像最终使用QP越大图像质量越不好。
temporal_id:当前帧所在的时域子层序号,只能序号大的参考序号小的图像。
num_ref_pics_active:参考帧图像列表L0和L1的大小;此表格设置中表示前后参考帧都只有1帧,所以值都为1。
num_ref_pics:当前帧所保存的参考帧数目,表示当前帧及未来帧所需要的参考帧;Frame1为P帧,仅参考1帧,则num_ref_pics为1;Frame2为B帧,参考了poc值0和4的2帧,则配置的值为2;Frame3为B帧,参考了poc为0和2的2帧,但Frame3的此处还包含poc为4的图片,需要保留以便将来帧参考,设置为3。(此处,Frame4就要用到poc为4的图片了);Frame4为B帧参考了poc为2和4的图片。此处值设置为2。
reference_pictures :表示当前帧的参考帧列表,参考帧的poc减去前帧的POC,在根据 num_ref_pics的值可以知道,reference_pictures包含几个值了。所以配置是表格所示的(-4),(-2,2),(-1,1,3),(-1,1)。
predict:表示inter_ref_pic_set_prediction_flag的值,是否需要要RPS预测值,0表示不需要,1表示需要,并忽略后面的deltaRIdx-1, deltaRPS等参数;1表示需要RPS预测,使用deltaRIdx-1, deltaRPS, num refidcs和Reference idcs;2表示需要RPS预测,但仅使用deltaRIdx-1;Frame1参考poc为0的I帧,I帧没有参考帧,也没有RPS,则frame1不需要使用技术,设置为0;其余帧都需要,设置为1;
deltaRIdx-1:当前RPS索引同预测RPS索引的差值减去1后的值;如果使用 了帧间预测,此值为0,所以Frame2~Frame4对应的此值为0。
deltaRPS:预测RPS同当前RPS的POC之差;即等于预测器的POC减去当前图像的POC,因此Frame2的预测器为Frame1,deltaRPS为4-2= 2,对于Frame3为2-1 = 1,Frame4为1-3 =-2。
num_ref_idcs:编码当前帧的RPS的ref_idcs的数量。
reference_idcs:指定RPS间预测的ref_idcs。共有num_ref_idcs个。其中最后一个代表该帧的predictor,其余表示predictor的RPS。取0/1分别表示不作为参考帧,1表示作为参考帧。Frame2此处设置为11,Frame2参考poc0和Frame4,Frame1(poc 为4)作为Frame2的predictor,最后一个数字为1,且poc0为的Frame0作为Frame1的参考帧,依旧是Frame2的参考帧,第一个数字为1;Frame3此处设置为111,预测因子为Frame2,作为当前帧的参考帧,所以最后一个数字为1,而Frame2的参考帧的Frame0(poc0)和Frame1(poc4)的帧依旧需要作为参考帧。而Frame4,其 reference_idcs为 0110,第一个零代表frame0(在frame3的参考帧索引(reference_pictures)中是-1)不再是参考帧,后面的两个1代表frame1和frame2(在Frame3的参考列表这两个值的索引为1和3)是它的参考帧,最后一个零代表frame3不在作为当前帧或者后续帧的参考帧。
参考文章:https://blog.csdn.net/VioletHan7/article/details/81286691
参考文章:https://blog.csdn.net/qq_21747841/article/details/74930721

这篇关于HEVC中GOP参数说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/201448

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�

如何在页面调用utility bar并传递参数至lwc组件

1.在app的utility item中添加lwc组件: 2.调用utility bar api的方式有两种: 方法一,通过lwc调用: import {LightningElement,api ,wire } from 'lwc';import { publish, MessageContext } from 'lightning/messageService';import Ca

4B参数秒杀GPT-3.5:MiniCPM 3.0惊艳登场!

​ 面壁智能 在 AI 的世界里,总有那么几个时刻让人惊叹不已。面壁智能推出的 MiniCPM 3.0,这个仅有4B参数的"小钢炮",正在以惊人的实力挑战着 GPT-3.5 这个曾经的AI巨人。 MiniCPM 3.0 MiniCPM 3.0 MiniCPM 3.0 目前的主要功能有: 长上下文功能:原生支持 32k 上下文长度,性能完美。我们引入了

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

log4j2相关配置说明以及${sys:catalina.home}应用

${sys:catalina.home} 等价于 System.getProperty("catalina.home") 就是Tomcat的根目录:  C:\apache-tomcat-7.0.77 <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /> 2017-08-10

如何确定 Go 语言中 HTTP 连接池的最佳参数?

确定 Go 语言中 HTTP 连接池的最佳参数可以通过以下几种方式: 一、分析应用场景和需求 并发请求量: 确定应用程序在特定时间段内可能同时发起的 HTTP 请求数量。如果并发请求量很高,需要设置较大的连接池参数以满足需求。例如,对于一个高并发的 Web 服务,可能同时有数百个请求在处理,此时需要较大的连接池大小。可以通过压力测试工具模拟高并发场景,观察系统在不同并发请求下的性能表现,从而

android应用中res目录说明

Android应用的res目录是一个特殊的项目,该项目里存放了Android应用所用的全部资源,包括图片、字符串、颜色、尺寸、样式等,类似于web开发中的public目录,js、css、image、style。。。。 Android按照约定,将不同的资源放在不同的文件夹中,这样可以方便的让AAPT(即Android Asset Packaging Tool , 在SDK的build-tools目