CN117857789A - 更新视频数据的神经网络环路后滤波器信息的方法和设备 - Google Patents

更新视频数据的神经网络环路后滤波器信息的方法和设备 Download PDF

Info

Publication number
CN117857789A
CN117857789A CN202310093949.XA CN202310093949A CN117857789A CN 117857789 A CN117857789 A CN 117857789A CN 202310093949 A CN202310093949 A CN 202310093949A CN 117857789 A CN117857789 A CN 117857789A
Authority
CN
China
Prior art keywords
neural network
post
nnpfc
filter
syntax element
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310093949.XA
Other languages
English (en)
Inventor
萨钦·G·德施潘德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Publication of CN117857789A publication Critical patent/CN117857789A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)

Abstract

本发明公开了一种设备,该设备能够被配置为确定神经网络后置滤波器特性消息提供了神经网络更新。在一个示例中,神经网络后置滤波器特性消息包括具有指定与该消息相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值的语法元素。该神经网络后置滤波器特性消息还包括具有指定特定语法元素不存在于该神经网络后置滤波器特性消息中的值的语法元素。基于这些语法元素的这些值,能够确定该神经网络后置滤波器特性消息提供了神经网络更新。

Description

更新视频数据的神经网络环路后滤波器信息的方法和设备
技术领域
本公开涉及视频编码,并且更具体地涉及用于发送信号通知编码视频的神经网络后置滤波器参数信息的系统和方法。
背景技术
数字视频功能可以结合到各种设备中,包括数字电视、笔记本计算机或台式计算机、平板计算机、数字录音设备、数字媒体播放器、视频游戏设备、蜂窝电话(包括所谓的智能电话)、医学成像设备等。可以根据视频编码标准对数字视频进行编码。视频编码标准定义了封装编码视频数据的兼容比特流的格式。兼容比特流是可以由视频解码设备接收和解码以生成重构视频数据的数据结构。视频编码标准可以结合视频压缩技术。视频编码标准的示例包括ISO/IEC MPEG-4Visual和ITU-T H.264(也被称为ISO/IEC MPEG-4AVC)和高效视频编码(HEVC)。HEVC在2016年12月的ITU-T H.265建议书的高效视频编码(HEVC)中有所描述,该文献以引用方式并入本文,并且在本文中被称为ITU-T H.265。正在考虑对ITU-TH.265进行扩展和改进以开发下一代视频编码标准。例如,ITU-T视频编码专家组(VCEG)和ISO/IEC活动图像专家组(MPEG)(被统称为联合视频研究组(JVET))具有标准化压缩能力显著超过当前HEVC标准的视频编码技术。以引用方式并入本文的联合探索模型7(JEM 7)、联合探索测试模型7(JEM 7)的算法描述、ISO/IEC JTC1/SC29/WG11文档:JVET-G1001(2017年7月,意大利,都灵)描述了由JVET在联合测试模型研究下的编码特征,该技术是超越ITU-TH.265功能的潜在增强视频编码技术。应当指出的是,JEM 7的编码特征在JEM参考软件中实现。如本文所用,术语JEM可以集体指包括在JEM 7中的算法以及JEM参考软件的具体实施。此外,响应于由VCEG和MPEG联合发布的“Joint Call for Proposals on VideoCompression with Capabilities beyond HEVC”,在2018年4月16日至20日于加利福尼亚州圣地亚哥(San Diego,CA)举行的ISO/IEC JTC1/SC29/WG11第10次会议上,各个小组提出了对视频编码工具的多种描述。根据对视频编码工具的多种描述,视频编码规范的最终初始草案文本在2018年4月16日至20日于加利福尼亚州圣地亚哥举行的ISO/IEC JTC1/SC29/WG11第10次会议中的“Versatile Video Coding(Draft1)”即文档JVET-J1001-v2中有所描述,该文档以引用方式并入本文并且被称为JVET-J1001。VCEG和MPEG的视频编码标准的开发被称为通用视频编码(VVC)项目。2020年10月7日至16日举行的ISO/IEC JTC1/SC29/WG11第20次会议中的“Versatile Video Coding(Draft 10)”(电话会议,文档JVET-T2001-v2,其以引用方式并入本文,并且称为JVET-T2001)表示对应于VVC项目的视频编码规范的草稿文本的当前迭代。
视频压缩技术能够减少存储和传输视频数据的数据需求。视频压缩技术可以通过利用视频序列中固有的冗余来减少数据需求。视频压缩技术可将视频序列再分成连续较小的部分(即,视频序列内的一组图片、一组图片内的图片、图片内的区域、区域内的子区域等)。可以使用帧内预测编码技术(例如,图片内的空间预测技术)和帧间预测技术(即图片间的技术(时间))来生成待编码的单位视频数据与视频数据的参考单元之间的差值。该差值可以被称为残差数据。残差数据可以被编码为量化变换系数。语法元素可以涉及残差数据和参考编码单元(例如,帧内预测模式索引和运动信息)。可以对残差数据和语法元素进行熵编码。熵编码的残差数据和语法元素可以包括在形成兼容比特流的数据结构中。
发明内容
一般来讲,本公开描述了用于对视频数据进行编码的各种技术。具体地,本公开描述了用于发送信号通知编码视频数据的神经网络后置滤波器参数信息的技术。应当指出的是,尽管本公开的技术是相对于ITU-TH.264、ITU-T H.265、JEM和JVET-T2001描述的,但本公开的技术可普遍应用于视频编码。例如,除了包括在ITU-T H.265、JEM和JVET-T2001中的那些技术,本文所述的编码技术可并入视频编码系统(包括基于未来视频编码标准的视频编码系统),包括视频块结构、帧内预测技术、帧间预测技术、变换技术、滤波技术和/或其他熵编码技术。因此,对ITU-TH.264、ITU-T H.265、JEM和/或JVET-T2001的参考是出于描述性目的,并且不应被解释为限制本文所述技术的范围。此外,应当指出的是,将文献以引用方式并入本文是出于描述性目的,并且不应被解释为限制或产生关于本文所用术语的歧义。例如,在某个并入的参考文献中提供的对某个术语的定义不同于另一个并入的参考文献和/或如本文所用的该术语的情况下,则该术语应以广泛地包括每个相应定义的方式和/或以包括替代方案中每个特定定义的方式来解释。
在一个示例中,一种对视频数据进行编码的方法,该方法包括:发送信号通知神经网络后置滤波器特性消息;在神经网络后置滤波器特性消息中发送信号通知第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;在神经网络后置滤波器特性消息中发送信号通知第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;以及在神经网络后置滤波器特性消息中发送信号通知第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值,其中该第二语法元素的值和该第三语法元素的值指示该神经网络后置滤波器特性消息提供了神经网络更新。
在一个示例中,一种设备包括一个或多个处理器,该一个或多个处理器被配置为:发送信号通知神经网络后置滤波器特性消息;在神经网络后置滤波器特性消息中发送信号通知第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;在神经网络后置滤波器特性消息中发送信号通知第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;以及在神经网络后置滤波器特性消息中发送信号通知第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值,其中该第二语法元素的值和该第三语法元素的值指示该神经网络后置滤波器特性消息提供了神经网络更新。
在一个示例中,一种非暂态计算机可读存储介质包括存储于其上的指令,这些指令在被执行时使得设备的一个或多个处理器:发送信号通知神经网络后置滤波器特性消息;在神经网络后置滤波器特性消息中发送信号通知第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;在神经网络后置滤波器特性消息中发送信号通知第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;以及在神经网络后置滤波器特性消息中发送信号通知第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值,其中该第二语法元素的值和该第三语法元素的值指示该神经网络后置滤波器特性消息提供了神经网络更新。
在一个示例中,一种设备包括:用于发送信号通知神经网络后置滤波器特性消息的装置;用于在神经网络后置滤波器特性消息中发送信号通知第一语法元素的装置,该第一语法元素具有用于标识后处理滤波器的标识号;用于在神经网络后置滤波器特性消息中发送信号通知第二语法元素的装置,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;以及用于在神经网络后置滤波器特性消息中发送信号通知第三语法元素的装置,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值,其中该第二语法元素的值和该第三语法元素的值指示该神经网络后置滤波器特性消息提供了神经网络更新。
在一个示例中,一种对视频数据进行解码的方法,该方法包括:接收神经网络后置滤波器特性消息;解析来自神经网络后置滤波器特性消息的第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;解析来自神经网络后置滤波器特性消息的第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;解析来自神经网络后置滤波器特性消息的第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值;以及基于该第二语法元素的值和该第三语法元素的值确定该神经网络后置滤波器特性消息提供了神经网络更新。
在一个示例中,一种设备包括一个或多个处理器,该一个或多个处理器被配置为:接收神经网络后置滤波器特性消息;解析来自神经网络后置滤波器特性消息的第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;解析来自神经网络后置滤波器特性消息的第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;解析来自神经网络后置滤波器特性消息的第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值;以及基于该第二语法元素的值和该第三语法元素的值确定该神经网络后置滤波器特性消息提供了神经网络更新。
在一个示例中,一种非暂态计算机可读存储介质包括存储于其上的指令,这些指令在被执行时使得设备的一个或多个处理器:接收神经网络后置滤波器特性消息;解析来自神经网络后置滤波器特性消息的第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;解析来自神经网络后置滤波器特性消息的第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;解析来自神经网络后置滤波器特性消息的第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值;以及基于该第二语法元素的值和该第三语法元素的值确定该神经网络后置滤波器特性消息提供了神经网络更新。
在一个示例中,一种设备包括:用于接收神经网络后置滤波器特性消息的装置;用于解析来自神经网络后置滤器特性消息的第一语法元素的装置,该第一语法元素具有用于标识后处理滤波器的标识号;用于解析来自神经网络后置滤波器特性消息的第二语法元素的装置,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;用于解析来自神经网络后置滤波器特性消息的第三语法元素的装置,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值;以及用于基于该第二语法元素的值和该第三语法元素的值确定该神经网络后置滤波器特性消息提供了神经网络更新的装置。
在以下附图和描述中阐述了一个或多个示例的细节。根据描述和附图以及权利要求书,其他特征、对象和优点将显而易见。
附图说明
图1是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码和解码的系统的示例的框图。
图2是示出根据本公开的一种或多种技术的编码视频数据和对应数据结构的概念图。
图3是示出根据本公开的一种或多种技术封装编码视频数据和对应元数据的数据结构的概念图。
图4是示出根据本公开的一种或多种技术的可被包括在可被配置为对视频数据进行编码和解码的系统的具体实施中的部件的示例的概念图。
图5是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码的视频编码器的示例的框图。
图6是示出根据本公开的一种或多种技术的可被配置为对视频数据进行解码的视频解码器的示例的框图。
图7是示出根据本公开的一种或多种技术的亮度分量的打包数据通道的示例的概念图。
具体实施方式
视频内容包括由一系列帧(或图片)组成的视频序列。一系列帧也可以被称为一组图片(GOP)。每个视频帧或图片可被分成一个或多个区域。可根据基本单元(例如,视频块)和限定区域的一组规则来限定区域。例如,限定区域的规则可以是区域必须是布置成矩形的整数个视频块。此外,区域中的视频块可以根据扫描模式(例如,光栅扫描)来排序。如本文所用,术语“视频块”通常可以指图片的区域,或者可以更具体地指可以被预测性地编码的样本值的最大阵列、其子分区和/或对应结构。此外,术语“当前视频块”可以指图片的正被编码或解码的区域。视频块可被定义为样本值的阵列。应当指出的是,在一些情况下,像素值可被描述为包括视频数据的相应分量的样本值,其也可被称为颜色分量(例如,亮度(Y)和色度(Cb和Cr)分量或红色、绿色和蓝色分量)。应当指出的是,在一些情况下,术语“像素值”和“样本值”可互换使用。此外,在一些情况下,像素或样本可被称为pel。视频采样格式(也可以被称为色度格式)可以相对于视频块中包括的亮度样本的数量来定义视频块中包括的色度样本的数量。例如,对于4:2:0采样格式,亮度分量的采样率是水平和垂直两个方向的色度分量的采样率的两倍。
视频编码器可对视频块和其子分区执行预测编码。视频块和其子分区可以被称为节点。ITU-T H.264指定包括16×16亮度样本的宏块。也就是说,在ITU-T H.264中,图片被分段成宏块。ITU-T H.265指定了类似的编码树单元(CTU)结构(其可被称为最大编码单元(LCU))。在ITU-TH.265中,图片被分段成CTU。在ITU-T H.265中,对于图片,CTU大小可被设置为包括16×16、32×32或64×64亮度样本。在ITU-T H.265中,CTU由视频数据的每个分量(例如,亮度(Y)和色度(Cb和Cr))的相应编码树块(CTB)组成。应当指出的是,具有一个亮度分量和两个对应色度分量的视频可被描述为具有两个通道,即,亮度通道和色度通道。此外,在ITU-T H.265中,可根据四叉树(QT)划分结构来划分CTU,这使得CTU的CTB被划分为编码块(CB)。也就是说,在ITU-T H.265中,CTU可被划分为四叉树叶节点。根据ITU-T H.265,一个亮度CB连同两个对应的色度CB和相关联语法元素被称为编码单元(CU)。在ITU-TH.265中,可以发送信号通知CB的最小允许大小。在ITU-T H.265中,亮度CB的最小允许最小大小是8×8亮度样本。在ITU-T H.265中,使用帧内预测或帧间预测对图片区域进行编码的决定在CU位阶处进行。
在ITU-T H.265中,CU与在CU处具有其根的预测单元结构相关联。在ITU-T H.265中,预测单元结构允许分割亮度CB和色度CB以生成对应的参考样本。即,在ITU-T H.265中,可将亮度CB和色度CB分割成相应的亮度预测块和色度预测块(PB),其中PB包括对其应用相同预测的样本值的块。在ITU-T H.265中,可将CB划分为1个、2个或4个PB。ITU-T H.265支持从64×64样本向下至4×4样本的PB大小。在ITU-TH.265中,正方形PB被支持用于帧内预测,其中CB可以形成PB或者CB可以被分割成四个正方形PB。在ITU-T H.265中,除了正方形PB之外,还支持矩形PB来进行帧间预测,其中CB可竖直地或水平地减半以形成PB。此外,应当指出的是,在ITU-T H.265中,对于帧间预测,支持四个非对称PB划分,其中CB在CB的高度(顶部或底部)或宽度(左侧或右侧)的四分之一处被划分为两个PB。对应于PB的帧内预测数据(例如,帧内预测模式语法元素)或帧间预测数据(例如,运动数据语法元素)用于生成PB的参考和/或预测样本值。
JEM指定具有最大大小的256×256亮度样本的CTU。JEM指定四叉树加二叉树(QTBT)块结构。在JEM中,QTBT结构允许由二叉树(BT)结构进一步划分四叉树叶节点。也就是说,在JEM中,二叉树结构允许将四叉树叶节点垂直或水平递归划分。在JVET-T2001中,根据四叉树加多类型树(QTMT或QT+MTT)结构来划分CTU。JVET-T2001中的QTMT类似于JEM中的QTBT。然而,在JVET-T2001中,除了指示二进制分割之外,多类型树还可以指示所谓的三元(或三叉树(TT))分割。三元分割将一个块垂直地或水平地分成三个块。在垂直TT分割的情况下,块从左边缘起在其宽度的四分之一处以及从右边缘起在其宽度的四分之一处分割,并且在水平TT分割的情况下,块从顶部边缘起在其高度的四分之一处以及从底部边缘起在其高度的四分之一处分割。
如上所述,每个视频帧或图片可被分成一个或多个区域。例如,根据ITU-T H.265,每个视频帧或图片可被划分为包括一个或多个切片,并且进一步被划分为包括一个或多个图块,其中每个切片包括CTU序列(例如,以光栅扫描顺序排列),并且其中图块是对应于图片的矩形区域的CTU序列。应当指出的是,在ITU-T H.265中,切片是从独立切片片段开始并且包含在下一个独立切片片段(如果有的话)之前的所有后续从属切片片段(如果有的话)的一个或多个切片片段的序列。切片片段(如切片)是CTU序列。因此,在一些情况下,术语“切片”和“切片片段”可互换使用以指示以光栅扫描顺序排列布置的CTU序列。此外,应当指出的是,在ITU-T H.265中,图块可由包含在多于一个切片中的CTU组成,并且切片可由包含在多于一个图块中的CTU组成。然而,ITU-T H.265规定了应满足以下一个或两个条件:(1)切片中的所有CTU属于同一个图块;以及(2)图块中的所有CTU属于同一个切片。
关于JVET-T2001,切片需要由整数个完整图块或图块内的整数个连续完整CTU行组成,而不是仅需要由整数个CTU组成。应当指出的是,在JVET-T2001中,切片设计不包括切片区段(即,没有独立的/从属的切片片段)。因此,在JVET-T2001中,图片可以包括单个图块,其中该单个图块被包含在单个切片内,或者图片可以包括多个图块,其中该多个图块(或其CTU行)可以被包含在一个或多个切片内。在JVET-T2001中,通过指定图块行的相应高度和图块列的相应宽度来指定图片将图片划分为图块。因此,在JVET-T2001中,图块是特定图块行和特定图块列位置内的矩形CTU区域。此外,应当指出的是,JVET-T2001规定图片可以被划分为子图片,其中子图片是图片内的矩形CTU区域。子图片的左上CTU可位于图片内的任何CTU位置,其中子图片被约束为包括一个或多个切片。因此,不同于图块,子图片不必被限制到特定行和列位置。应当指出的是,子图片可用于封装图片内感兴趣区域,并且子比特流提取过程可用于仅对特定感兴趣区域进行解码和显示。也就是说,如下文进一步详细描述的,编码视频数据的比特流包括网络抽象层(NAL)单元序列,其中NAL单元包封编码视频数据(即,对应于图片切片的视频数据),或者NAL单元包封用于对视频数据进行解码的元数据(例如,参数集),并且子比特流提取过程通过从比特流中移除一个或多个NAL单元来形成新比特流。
图2是示出根据图块、切片和子图片划分的图片组内的图片的示例的概念图。应当指出的是,本文所述技术可以适用于图块、切片、子图片、其子分区和/或其等效结构。也就是说,无论图片怎样被划分为区域,本文所述技术可普遍适用。例如,在一些情况下,本文所述技术可以适用于图块可以被划分为所谓的砖块的情况,其中砖块是特定图块内的矩形CTU行区域。此外,例如,在一些情况下,本文所述技术可以适用于一个或多个图块可被包括在所谓的图块组中的情况下,其中图块组包括整数个相邻图块。在图2所示的示例中,Pic3被示出为包括16个图块(即,图块0至图块15)和三个切片(即,切片0至切片2)。在图2所示的示例中,切片0包括四个图块(即,图块0至图块3),切片1包括八个图块(即,图块4至图块11),并且切片2包括四个图块(即,图块12至图块15)。此外,如图2的示例所示,Pic3被示出包括两个子图片(即,子图片0和子图片1),其中子图片0包括切片0和切片1并且其中子图片1包括切片2。如上所述,子图片可用于封装图片内的感兴趣区域,并且可以使用子比特流提取过程以便选择性地对感兴趣区域进行解码(和显示)。例如,参考图2,子图片0可以对应于体育赛事呈现的动作部分(例如,字段的视图),并且子图片1可以对应于在体育赛事呈现期间显示的滚动横幅。通过以这种方式将图片组织成子图片,观看者可能能够禁用滚动横幅的显示。也就是说,通过子比特流提取过程,切片2NAL单元可以从比特流中移除(并且因此未被解码和/或显示),并且切片0NAL单元和切片1NAL单元可以被解码和显示。下面进一步详细描述如何将图片的切片封装成相应NAL单元数据结构和子比特流提取。
对于帧内预测编码,帧内预测模式可指定图片内的参考样本的位置。在ITU-TH.265中,已定义的可能的帧内预测模式包括平面(即,表面拟合)预测模式、DC(即平坦的整体平均)预测模式,以及33个角度预测模式(predMode:2-34)。在JEM中,已定义的可能的帧内预测模式包括平面预测模式、DC预测模式,以及65个角度预测模式。应当指出的是,平面预测模式和DC预测模式可以被称为无方向预测模式,并且角度预测模式可以被称为方向预测模式。应当指出的是,无论已定义的可能预测模式的数量如何,本文描述的技术可以是普遍适用的。
对于帧间预测编码,确定参考图片,并且运动矢量(MV)识别该参考图片中用于生成对当前视频块的预测的样本。例如,可使用位于一个或多个先前编码的图片中的参考样本值来预测当前视频块,并且运动矢量用于指示参考块相对于当前视频块的位置。运动矢量可描述例如运动矢量的水平位移分量(即MVx)、运动矢量的竖直位移分量(即MVy)和运动矢量的分辨率(例如,四分之一像素精度、二分之一像素精度、一像素精度、二像素精度、四像素精度)。先前解码的图片(其可包括在当前图片之前或之后输出的图片)可被组织成一个或多个参考图片列表,并且使用参考图片索引值来标识。此外,在帧间预测编码中,单预测是指使用来自单个参考图片的样本值生成预测,双预测是指使用来自两个参考图片的相应样本值生成预测。也就是说,在单预测中,单个参考图片和对应的运动矢量用于生成对当前视频块的预测,而在双预测中,第一参考图片和对应的第一运动矢量以及第二参考图片和对应的第二运动矢量用于生成对当前视频块的预测。在双预测中,将相应的样本值组合(例如,相加、舍入和裁剪,或根据权重进行平均)以生成预测。图片及其区域可基于哪些类型的预测模式可用于对其视频块进行编码而被分类。也就是说,对于具有B类型的区域(例如,B切片),可利用双预测、单预测和帧内预测模式,对于具有P类型的区域(例如,P切片),可利用单预测和帧内预测模式,对于具有I类型的区域(例如,I切片),只能利用帧内预测模式。如上所述,通过参考索引来识别参考图片。例如,对于P切片,可以存在单个参考图片列表RefPicList0,并且对于B切片,除了RefPicList0之外,可以存在第二独立参考图片列表RefPicList1。应当指出的是,对于B切片中的单预测,可使用RefPicList0或RefPicList1中的一者来生成预测。此外,应当指出的是,在解码过程期间,在开始对图片进行解码时,从存储在解码图片缓冲器(DPB)中的先前解码的图片生成参考图片列表。
此外,编码标准可支持各种运动矢量预测模式。运动矢量预测使能够基于另一运动矢量来导出用于当前视频块的运动矢量的值。例如,可以从当前视频块的空间相邻块和时间相邻块导出具有相关联的运动信息的一组候选块。此外,所生成的(或默认的)运动信息可用于运动矢量预测。运动矢量预测的示例包括高级运动矢量预测(AMVP)、时间运动矢量预测(TMVP)、所谓的“合并”模式,以及“跳过”和“直接”运动推理。此外,运动矢量预测的其他示例包括高级时间运动矢量预测(ATMVP)和空间-时间运动矢量预测(STMVP)。对于运动矢量预测,视频编码器和视频解码器两者执行相同的过程以导出一组候选。因此,对于当前视频块,在编码和解码期间生成相同的一组候选。
如上所述,对于帧间预测编码,先前编码的图片中的参考样本用于对当前图片中的视频块进行编码。在对当前图片进行编码时可用作参考的先前编码的图片被称为参考图片。应当指出的是,解码顺序不一定对应于图片输出顺序,即视频序列中图片的时间顺序。在ITU-T H.265中,当图片被解码时,其被存储到解码图片缓冲器(DPB)(其可被称为帧缓冲器、参考缓冲器、参考图片缓冲器等)。在ITU-T H.265中,存储到DPB的图片在被输出时从DPB中移除,并且不再需要用于编码后续图片。在ITU-TH.265中,在对切片标头进行解码之后,即,在对图片进行解码开始时,每个图片调用一次是否应从DPB中移除图片的确定。例如,参考图2,Pic2被示出为参考Pic1。类似地,Pic3被示出为参考Pic0。关于图2,假设图片数量对应于解码顺序,DPB将填充如下:在解码Pic0之后,DPB将包括{Pic0};在解码Pic1开始时,DPB将包括{Pic0};在解码Pic1之后,DPB将包括{Pic0,Pic1};在解码Pic2开始时,DPB将包括{Pic0,Pic1}。然后,将参考Pic1解码Pic2,并且在解码Pic2之后,DPB将包括{Pic0,Pic1,Pic2}。在解码Pic3开始时,图片Pic0和Pic1将被标记以从DPB中移除,因为它们不是解码Pic3(或任何后续图片,未示出)所需的,并且假设Pic1和Pic2已被输出,则DPB将被更新以包括{Pic0}。然后将参考Pic0对Pic3进行解码。标记图片以将其从DPB中移除的过程可以称为参考图片集(RPS)管理。
如上所述,帧内预测数据或帧间预测数据用于产生样本值的块的参考样本值。包括在当前PB或另一类型的图片区域结构和相关联的参考样本(例如,使用预测生成的那些)中的样本值之间的差值可以被称为残差数据。残差数据可以包括对应于视频数据的每个分量的相应差值阵列。残差数据可能在像素域中。可对差值阵列应用变换诸如离散余弦变换(DCT)、离散正弦变换(DST)、整数变换、小波变换或概念上类似的变换,以生成变换系数。应当指出的是,在ITU-T H.265和JVET-T2001中,CU与在CU位阶处具有其根的变换树结构相关联。变换树被划分为一个或多个变换单元(TU)。即,为了生成变换系数,可以对差值的阵列进行划分(例如,可以将四个8×8变换应用于16×16残差值阵列)。对于视频数据的每个分量,差值的此类再分可被称为变换块(TB)。应当指出的是,在一些情况下,可以(在视频编码器中)应用核心变换和后续二次变换来生成变换系数。对于视频解码器,变换的顺序是相反的。
可以直接对变换系数或残差样本值执行量化过程(例如,就调色板编码量化而言)。量化通过限制为一组指定值的振幅来近似变换系数。量化实质上对变换系数进行缩放以便改变表示一组变换系数所需的数据量。量化可以包括将变换系数(或将偏移值添加到变换系数得到的值)除以量化缩放因子和任何相关联的取整函数(例如,取整为最接近的整数)。量化的变换系数可以被称为系数位阶值。逆量化(或“去量化”)可以包括将系数位阶值与量化缩放因子相乘,以及任何倒数取整或偏移加法运算。应当指出的是,如本文所用,术语量化过程在一些情况下可指除以缩放因子以生成位阶值,并且在一些情况下可指乘以缩放因子以恢复变换系数。也就是说,量化过程在一些情况下可以指量化,而在一些情况下可以指逆量化。此外,应当指出的是,虽然在下面的示例中的一些示例中关于与十进制记数法相关的算术运算描述了量化过程,但是这样的描述是为了说明的目的,并且不应该被解释为进行限制。例如,本文描述的技术可以在使用二进制运算等的设备中实现。例如,本文描述的乘法和除法运算可以使用移位运算等来实现。
可根据熵编码技术对量化的变换系数和语法元素(例如,指示视频块的编码结构的语法元素)进行熵编码。熵编码过程包括使用无损数据压缩算法对语法元素值进行编码。熵编码技术的示例包括内容自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)、概率区间划分熵编码(PIPE)等。熵编码的量化变换系数和对应的熵编码的语法元素可形成可用于在视频解码器处再现视频数据的兼容比特流。熵编码过程,例如CABAC,可以包括对语法元素进行二值化。二值化是指将语法元素的值转换为一个或多个位的序列的过程。这些位可以被称为“bin”。二值化可以包括以下编码技术中的一种或组合:固定长度编码、一元编码、截断一元编码、截断Rice编码、Golomb编码、k阶指数Golomb编码和Golomb-Rice编码。例如,二值化可以包括使用8位固定长度二值化技术将语法元素的整数值5表示为00000101,或者使用一元编码二值化技术将整数值5表示为11110。如本文所用,术语固定长度编码、一元编码、截断一元编码、截断Rice编码、Golomb编码、k阶指数Golomb编码和Golomb-Rice编码中的每一者可以指这些技术的一般实现和/或这些编码技术的更具体实现。例如,可以根据视频编码标准具体地定义Golomb-Rice编码实现。在CABAC的示例中,对于特定bin,上下文提供bin的最大概率状态(MPS)值(即,bin的MPS为0或1中的一者),以及bin是MPS或最小概率状态(LPS)的概率值。例如,上下文可以指示bin的MPS为0,并且bin为1的概率为0.3。应当指出的是,可以基于包括当前语法元素和先前编码的语法元素中的bin的先前编码的bin的值来确定上下文。例如,与相邻视频块相关联的语法元素的值可以用于确定当前bin的上下文。
如上所述,重构块的样本值可不同于被编码的当前视频块的样本值。另外,应当指出的是,在一些情况下,逐块地对视频数据进行编码可能导致伪像(例如,所谓的块伪像、带伪像等)。例如,块伪像可能导致重建的视频数据的编码块边界可被用户在视觉上感知到。这样,可修改重构的样本值,以使所编码的当前视频块和重构块的样本值之间的差异最小化和/或尽量减少由视频编码过程引入的伪像。此类修改一般可称为滤波。应当指出的是,滤波可作为环路内滤波过程或环路后(或后滤波)滤波过程的一部分发生。对于环路内滤波过程,滤波过程的所得样本值可用于预测视频块(例如,存储到参考帧缓冲器以用于在视频编码器处的后续编码以及在视频解码器处的后续解码)。对于环路后滤波过程,滤波过程的所得样本值仅作为解码过程的一部分输出(例如,不用于后续编码)。例如,就视频解码器而言,对于环路内滤波过程,滤波重构块所产生的样本值将用于后续解码(例如,存储到参考缓冲器)并且将被输出(例如,输出到显示器)。对于环路后滤波过程,重构块将用于后续解码,并且滤波重构块所产生的样本值将被输出并且将被用于后续解码。
解块(或去块)、解块滤波或应用解块滤波器是指平滑化相邻重构视频块的边界(即,使得观察者不易察觉到边界)的过程。平滑化相邻重构视频块的边界可以包括修改被包括在邻近边界的行或列中的样本值。JVET-T2001提供了作为环路内滤波过程的一部分将解块滤波器应用于重构样本值的场景。除了作为循环中滤波过程的一部分应用解块滤波器之外,JVET-T2001还提供了可在循环中滤波过程中应用样本自适应偏移(SAO)滤波的场景。一般来讲,SAO是通过有条件地添加偏移值来修改区域中的解块样本值的过程。另一种类型的滤波过程包括所谓的自适应环路滤波器(ALF)。在JEM中指定了使用基于块的适应的ALF。在JEM中,在SAO滤波器之后应用ALF。应当指出的是,可以独立于其他滤波技术将ALF应用于重构的样本。在视频编码器处应用在JEM中指定的ALF的过程可总结如下:(1)用于重构图像的亮度分量的每个2×2块根据分类索引进行分类;(2)导出每个分类索引的滤波器系数组;(3)针对亮度分量确定滤波决策;(4)针对色度分量确定滤波决策;以及(5)发送信号通知滤波器参数(例如系数和决策)。JVET-T2001指定了解块滤波器、SAO滤波器和ALF滤波器,这些滤波器可被描述为通常基于ITU-T H.265和JEM中提供的解块滤波器、SAO滤波器和ALF滤波器。
应当指出的是,JVET-T2001被称为ITU-T H.266的预发布版本,因此,它是由VVC项目产生的视频编码标准的几乎最终确定的草案,因此,可以被称为VVC标准的第一版本(或VVC或VVC版本1或ITU-H.266)。应当指出的是,在VVC项目期间,研究了基于卷积神经网络(CNN)的技术,其显示了去除伪像和提高客观质量的潜力,但是决定在VVC标准中不包括这样的技术。然而,基于CNN的技术当前正被考虑用于VVC的扩展和/或改进。一些基于CNN的技术涉及后滤波。例如,2022年4月20日至29日举行的ISO/IEC JTC1/SC29/WG11第26次会议中的“AHG11:Content-adaptive neural network post-filter”(电话会议,文档JVET-Z0082-v2,在本文中称为JVET-Z0082)描述了基于内容自适应神经网络的后置滤波器。应当指出的是,在JVET-Z0082中,通过对测试视频过拟合NN后置滤波器来实现内容自适应。此外,应当指出的是,JVET-Z0082中的过拟合过程的结果是权重更新。JVET-Z0082描述了利用ISO/IEC FDIS 15938-17对权重更新进行编码的位置。信息技术-多媒体内容描述接口-第17部分:用于多媒体内容描述和分析的神经网络压缩和用于多媒体内容描述和分析的神经网络增量压缩测试模型(INCTM),N0179,2022年2月,其可统称为MPEG NNR(神经网络表示)或神经网络编码(NNC)标准。JVET-Z0082还描述了编码权重更新在视频比特流内作为NNR后置滤波器SEI消息被发送信号通知的位置。2022年4月20日至29日举行的ISO/IEC JTC1/SC29/WG11第26次会议“AHG9:NNR post-filter SEI message”(电话会议,文档JVET-Z0052-v1,在本文中称为JVET-Z0052)描述了由JVET-Z0082利用的NNR后置滤波器SEI消息。在JVET-Z0082中描述的NN后置滤波器的元素和在JVET-Z0052中描述的NNR后置滤波器SEI消息在2022年7月13日至22日举行的ISO/IEC JTC1/SC29/WG11第27次会议的“AdditionalSEI messages for VSEI(Draft 2)”(电话会议,文档JVET-AA2006-v2,在本文中称为JVET-AA2006)中采用。JVET-AA2006为编码视频比特流(VSEI)提供了通用的补充增强信息消息。JVET-AA2006指定了用于神经网络后置滤波器特性SEI消息和用于神经网络后置滤波器激活SEI消息的语法和语义。神经网络后置滤波器特性SEI消息指定了可用作后处理滤波器的神经网络。特定图片的指定后处理滤波器的使用由神经网络后置滤波器激活SEI消息来指示。下文更详细地描述了JVET-AA2006。本文中所描述的技术提供了用于发送信号通知神经网络后置滤波器消息的技术。
关于本文所用的公式,可以使用以下算术运算符:
+加法
-减法
*乘法,包括矩阵乘法
xy求幂。将x指定为y的幂。在其他上下文中,此类符号用于上标而非旨在用于解释为求幂。
/将结果向着零截断的整数除法。例如,将7/4和-7/-4截断为1,将-7/4和7/-4截断为-1。
÷在不旨在进行截断或舍入情况下用于表示数学公式中的除法。
在不旨在进行截断或舍入情况下用于表示数学公式中的除法。/>
此外,可使用以下数学函数:
Log2(x)x的以2为底的对数;
Ceil(x)大于或等于x的最小整数。
关于本文使用的示例性语法,可以应用以下逻辑运算符的定义:
x&&y x和y的布尔逻辑“和”
x||y x和y的布尔逻辑“或”
!布尔逻辑“否”
x?y:z如果x为TRUE或不等于0,则求值为y;否则,求值为z。
此外,可应用以下关系运算符:
>大于
>=大于或等于
<小于
<=小于或等于
==等于
!=不等于
此外,应当指出的是,在本文所用的语法描述符中,可以应用以下描述符:
-b(8):具有任何位串模式的字节(8位)。该描述符的解析过程由函数read_bit(8)的返回值指定。
-f(n):从最左位起使用n位(从左到右)写入的固定模式位串。该描述符的解析过程由函数read_bit(n)的返回值指定。
-se(v):有符号整数0阶Exp-Golomb编码的语法元素,从最左位起。
-tb(v):使用至多maxVal位的截断二元码,其中maxVal在语法元素的语义中定义。
-tu(v):使用至多maxVal位的截断一元码,其中maxVal在语法元素的语义中定义。
-u(n):使用n位的无符号整数。当语法表中n是“v”时,位数以取决于其他语法元素的值的方式变化。该描述符的解析过程由函数read_bits(n)的返回值指定,该返回值被解释为首先写入最高有效位的无符号整数的二进制表示。
-ue(v):无符号整数0阶Exp-Golomb编码的语法元素,从最左位起。
如上所述,视频内容包括由一系列图片组成的视频序列,并且每个图片可被分成一个或多个区域。在JVET-T2001中,图片的编码表示包括AU内的特定层的VCL NAL单元并且包含图片的所有CTU。例如,再次参考图2,Pic3的编码表示被封装在三个编码切片NAL单元(即,切片0NAL单元、切片1 NAL单元和切片2 NAL单元)中。应当指出的是,术语视频编码层(VCL)NAL单元用作编码切片NAL单元的总称,即,VCLNAL是包括所有类型的切片NAL单元的总称。如上所述,并且在下文进一步详细描述,NAL单元可以封装用于对视频数据进行解码的元数据。封装用于对视频序列进行解码的元数据的NAL单元通常被称为非VCL NAL单元。因此,在JVET-T2001中,NAL单元可以是VCL NAL单元或非VCL NAL单元。应当指出的是,VCLNAL单元包括切片标头数据,其提供用于对特定切片进行解码的信息。因此,在JVET-T2001中,用于对视频数据进行解码的信息(在一些情况下可以被称为元数据)不限于被包括在非VCL NAL单元中。JVET-T2001规定图片单元(PU)是根据指定的分类规则彼此相关联、在解码顺序中连续并且包含正好一个编码图片的一组NAL单元,并且访问单元(AU)是属于不同层并且包含与从DPB输出的同一时间相关联的编码图片的一组PU。JVET-T2001进一步规定层是全部具有层标识符的特定值的一组VCL NAL单元及其相关联非VCL NAL单元。此外,在JVET-T2001中,PU由零个或一个PH NAL单元、一个编码图片(其由一个或多个VCL NAL单元构成)以及零个或更多个其他非VCL NAL单元组成。此外,在JVET-T2001中,编码视频序列(CVS)是AU序列,其由按解码顺序排列的CVSS AU和随后的零个或更多个非CVSS AU的AU(包括到下一个(不含)是CVSS AU的任何后续AU之前的所有后续AU)组成,其中编码视频序列开始(CVSS)AU是其中CVS中的每个层存在PU的AU,并且每个存在的图片单元中的编码图片是编码层视频序列开始(CLVSS)图片。在JVET-T2001中,编码层视频序列(CLVS)是同一层内的PU序列,其由按解码顺序排列的CLVSS PU和随后的非CLVSS PU的零个或更多个PU(包括到下一个(不含)是CLVSS PU的任何后续PU之前的所有后续PU)组成。这就是说,在JVET-T2001中,比特流可被描述为包括形成一个或多个CVS的AU序列。
多层视频编码使得视频呈现能够被解码/显示为对应于视频数据基础层的呈现,并且被解码/显示为对应于视频数据的增强层的一个或多个附加呈现。例如,基底层可以使得能够呈现具有基本质量水平(例如,高清晰度呈现和/或30Hz帧率)的视频呈现,并且增强层可以使得能够呈现具有增强的质量水平(例如,超高清渲染和/或60Hz帧率)的视频呈现。可以通过参考基底层来对增强层进行编码。也就是说,例如可以通过参考基底层中的一个或多个图片(包括其缩放版本)来对增强层中的图片进行编码(例如,使用层间预测技术)。应当指出的是,层也可彼此独立地被编码。在这种情况下,两层之间可能不存在层间预测。每个NAL单元可以包括指示NAL单元与之相关联的视频数据层的标识符。如上所述,子比特流提取过程可以用于仅对图片的特定感兴趣区域进行解码和显示。此外,子比特流提取过程可以用于仅对特定视频层进行解码和显示。子比特流提取可以指接收兼容或符合性比特流的设备通过丢弃和/或修改接收到的比特流中的数据来形成新的兼容或符合性比特流的过程。例如,子比特流提取可以用于形成对应于特定视频表示(例如,高质量表示)的新的兼容或符合性比特流。
在JVET-T2001中,视频序列、GOP、图片、切片和CTU中的每一者可以与描述视频编码属性的元数据相关联,并且一些类型的元数据被封装在非VCL NAL单元中。JVET-T2001定义了可用于描述视频数据和/或视频编码属性的参数集。具体地,JVET-T2001包括以下四种参数集:视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)和自适应参数集(APS),其中SPS应用于零个或更多整数个CVS,PPS适用于零个或更多整数个编码图片,APS适用于零个或更多个切片,并且VPS可以任选地由SPS引用。PPS应用于引用它的单个编码图片。在JVET-T2001中,参数集可以被封装为非VCL NAL单元,并且/或者可以作为消息发送信号通知。JVET-T2001还包括图片标头(PH),其被封装为非VCL NAL单元。在JVET-T2001中,图片标头应用于编码图片的所有切片。JVET-T2001进一步使得能够发送信号通知解码能力信息(DCI)和补充增强信息(SEI)消息。在JVET-T2001中,DCI和SEI消息协助与解码、显示或其他目的有关的过程,然而,可能不需要DCI和SEI消息来根据解码过程构建亮度或色度样本。在JVET-T2001中,可以使用非VCL NAL单元在比特流中发送信号通知DCI和SEI消息。此外,DCI和SEI消息可以通过某种机制传送,而不是通过存在于比特流中(即,在带外发送信号通知)。
图3示出了包括多个CVS的比特流的示例,其中CVS包括AU,并且AU包括图片单元。图3中所示的示例对应于在比特流中封装图2的示例中所示的切片NAL单元的示例。在图3所示的示例中,Pic3的对应图片单元包括三个VCL NAL编码切片NAL单元,即切片0NAL单元、切片1NAL单元和切片2NAL单元,以及两个非VCL NAL单元,即PPS NAL单元和PH NAL单元。应当指出的是,在图3中,标头是NAL单元标头(即,不与切片标头混淆)。此外,应当指出的是,在图3中,未示出的其他非VCL NAL单元可被包括在CVS中,例如SPS NAL单元、VPS NAL单元、SEI消息NAL单元等。此外,应当指出的是,在其他示例中,用于解码Pic3的PPS NAL单元可被包括在比特流中的其他地方,例如,在对应于Pic0的图片单元中,或可以由外部机构提供。如下文进一步详细描述的,在JVET-T2001中,PH语法结构可以存在于VCL NAL单元的切片标头中或存在于当前PU的PH NAL单元中。
JVET-T2001定义了NAL单元标头语义,其指定了包括在NAL单元中的原始字节序列有效载荷(RBSP)数据结构的类型。表1示出了JVET-T2001中提供的NAL单元标头的语法。
表1
JVET-T2001针对表1中所示的相应语法元素提供了以下定义。
forbidden_zero_bit应等于0。
nuh_reserved_zero_bit应等于0。未来可由ITU-T|ISO/IEC指定nuh_reserved_zero_bit的值1。尽管在本说明书的此版本中,nuh_reserved_zero_bit的值要求等于0,但符合本说明书的此版本的解码器应允许nuh_reserved_zero_bit的值等于1出现在语法中,并应忽略(即,从比特流中删除并丢弃)nuh_reserved_zero_bit等于1的NAL单元。
nuh_layer_id指定VCL NAL单元所属的层的标识符或者非VCL NAL单元适用的层的标识符。nuh_layer_id的值应在0至55的范围内(包括端值)。保留nuh_layer_id的其他值以供ITU-T|ISO/IEC将来使用。尽管在本说明书的此版本中,nuh_layer_id的值要求在0至55的范围内(包括端值),但符合本说明书的此版本的解码器应允许nuh_layer_id的值大于55出现在语法中,并应忽略(即,从比特流中删除并丢弃)nuh_layer_id大于55的NAL单元。
编码图片的所有VCL NAL单元的nuh_layer_id的值应相同。编码图片或PU的nuh_layer_id的值是编码图片或PU的VCL NAL单元的nuh_layer_id的值。
当nal_unit_type等于PH_NUT或FD_NUT时,nuh_layer_id应等于相关联VCL NAL单元的nuh_layer_id。
当nal_unit_type等于EOS_NUT时,nuh_layer_id应等于CVS中存在的层的nuh_layer_id值中的一者。
注意—DCI、OPI、VPS、AUD和EOB NAL单元的nuh_layer_id的值不受约束。
nuh_temporal_id_plus1减去1指定NAL单元的时间标识符。
nuh_temporal_id_plus1的值应不等于0。
变量TemporalId如下导出:
TemporalId=nuh_temporal_id_plus1-1
当nal_unit_type处于IDR_W_RADL至RSV_IRAP_11的范围内(包括端值)时,TemporalId应等于0。当nal_unit_type等于STSA_NUT并且vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]等于1时,TemporalId应大于0。
对于AU的所有VCL NAL单元,TemporalId的值应相同。编码图片、PU或AU的TemporalId的值是编码图片、PU或AU的VCL NAL单元的TemporalId的值。子层表示的TemporalId的值是子层表示中的所有VCL NAL单元的TemporalId的最大值。
非VCL NAL单元的TemporalId的值被如下进行约束:
-如果nal_unit_type等于DCI_NUT、OPI_NUT、VPS_NUT或SPS_NUT,则TemporalId应等于0,并且包含NAL单元的AU的TemporalId应等于0。
-否则,如果nal_unit_type等于PH_NUT,则TemporalId应等于包含NAL单元的PU的TemporalId。
-否则,如果nal_unit_type等于EOS_NUT或EOB_NUT,则TemporalId应等于0。
-否则,如果nal_unit_type等于AUD_NUT、FD_NUT、PREFIX_SEI_NUT或SUFFIX_SEI_NUT,则TemporalId应等于包含NAL单元的AU的TemporalId。
-否则,当nal_unit_type等于PPS_NUT、PREFIX_APS_NUT或SUFFIX_APS_NUT时,TemporalId应大于或等于包含NAL单元的PU的TemporalId。
注意—当NAL单元是非VCL NAL单元时,TemporalId的值等于非VCL NAL单元所应用的所有AU的TemporalId值的最小值。当nal_unit_type等于PPS_NUT、PREFIX_APS_NUT或SUFFIX_APS_NUT时,TemporalId可以大于或等于包含AU的TemporalId,因为所有PPS和APS可被包括在比特流的开始中(例如,当它们被输送到带外,并且接收器将它们放置在比特流的开始处时),其中第一编码图片具有等于0的TemporalId。
nal_unit_type指定NAL单元类型,即,如表2中指定的NAL单元中包含的RBSP数据结构的类型。
具有在UNSPEC28..UNSPEC31的范围内(包括端值)的nal_unit_type的NAL单元(其语义未指定)应不影响本说明书中指定的解码过程。
注意—在UNSPEC_28..UNSPEC_31的范围内的NAL单元类型可如由应用程序所确定的那样使用。在本说明书中未指定针对nal_unit_type的这些值的解码过程。由于不同的应用程序可能出于不同的目的使用这些NAL单元类型,因此期望在设计生成具有这些nal_unit_type值的NAL单元的编码器时以及在设计解释具有这些nal_unit_type值的NAL单元的内容的解码器时特别注意。本说明书未定义对这些值的任何管理。这些nal_unit_type值可能仅适用于使用“冲突”(即,同一nal_unit_type值的NAL单元内容的含义具有不同定义)不重要、或不可能或被管理的上下文中,例如,在控制应用程序或运输规范中定义或管理,或者通过控制分发比特流的环境来管理。
出于确定比特流的DU中的数据量之外的目的,解码器应忽略(从比特流中移除并丢弃)使用nal_unit_type的保留值的所有NAL单元的内容。注意—该要求允许未来定义本说明书的兼容扩展。
/>
表2
注意—干净随机存取(CRA)图片可具有存在于比特流中的相关联RASL或RADL图片。
注意—具有等于IDR_N_LP的nal_unit_type的瞬时解码刷新(IDR)图片不具有存在于比特流中的相关联前导图片。具有等于IDR_W_RADL的nal_unit_type的IDR图片不具有存在于比特流中的相关联RASL图片,但可具有在比特流中的相关联RADL图片。
对于子图片的所有VCL NAL单元,nal_unit_type的值应相同。子图片被称为具有与子图片的VCL NAL单元相同的NAL单元类型。
对于任何特定图片的VCL NAL单元,以下适用:
-如果pps_mixed_nalu_types_in_pic_flag等于0,则对于图片的所有VCL NAL单元,nal_unit_type的值应相同,并且图片或PU被称为具有与图片或PU的编码切片NAL单元相同的NAL单元类型。
-否则(pps_mixed_nalu_types_in_pic_flag等于1),以下所有约束均适用:
-图片应具有至少两个子图片。
-图片的VCL NAL单元应具有两个或更多个不同的nal_unit_type值。
-将不存在nal_unit_type等于GDR_NUT的图片的VCL NAL单元。
-当图片的VCL NAL单元的nal_unit_type等于值为IDR_W_RADL、IDR_N_LP或CRA_NUT的nalUnitTypeA时,该图片的其他VCL NAL单元的nal_unit_type均应等于nalUnitTypeA或TRAIL_NUT。
对于IRAP或GDR AU的所有图片,nal_unit_type的值应相同。
当sps_video_parameter_set_id大于0,vps_max_tid_il_ref_pics_plus1[i][j]等于0(对于j等于GeneralLayerIdx[nuh_layer_id]以及j+1到vps_max_layers_minus1的范围内(包含端值)的i的任何值)并且pps_mixed_nalu_types_in_pic_flag等于1时,nal_unit_type的值将不等于IDR_W_RADL、IDR_N_LP或CRA_NUT。
比特流符合性要求以下约束适用:
-当图片是IRAP图片的前导图片时,该图片应为RADL或RASL图片。
-当子图片是IRAP子图片的前导子图片时,该子图片应为RADL或RASL子图片。
-当图片不是IRAP图片的前导图片时,该图片不应为RADL或RASL图片。
-当子图片不是IRAP子图片的前导子图片时,该子图片不应为RADL或RASL子图片。
-RASL图片不应存在于比特流中,这些RASL图片与IDR图片相关联。
-RASL子图片不应存在于比特流中,这些RASL子图片与IDR子图片相关联。
-RADL图片不应存在于比特流中,这些RADL图片与nal_unit_type等于IDR_N_LP的IDR图片相关联。
注意—可以通过丢弃在IRAP AU之前的所有PU(并按照解码顺序正确解码IRAP AU和所有后续AU中的非RASL图片)来执行IRAP PU的位置处的随机访问,前提条件是每个参数集(在比特流中或通过本说明书中未指定的外部方式)当被引用时是可用的。
-RADL子图片不应存在于比特流中,这些RADL子图片与nal_unit_type等于IDR_N_LP的IDR子图片相关联。
-nuh_layer_id等于特定值layerId的在解码顺序中位于nuh_llayer_id等于layerId的IRAP图片之前的任何图片,在输出顺序中均应位于IRAP图片之前,并且在输出顺序中应位于与IRAP图片相关联的任何RADL图片之前。
-nuh_layer_id等于特定值layerId并且子图片索引等于特定值subpicIdx的在解码顺序中位于nuh_layer_id等于layerId并且子图片索引等于subpicIdx的IRAP子图片之前的任何子图片,在输出顺序中应位于IRAP子图片及其所有相关联RADL子图片之前。
-nuh_layer_id等于特定值layerId的在解码顺序中位于nuh_layer_id等于layerId的恢复点图片之前的任何图片,在输出顺序中应位于该恢复点图片之前。
-nuh_layer_id等于特定值layerId并且子图片索引等于特定值subpicIdx的在解码顺序中位于恢复点图片中nuh_layer_id等于layerId并且子图片索引等于subpicIdx的子图片之前的任何子图片,均应在输出顺序中位于恢复点图像中的该子图片之前。
-与CRA图片相关联的任何RASL图片应在输出顺序中在与CRA图片相关联的任何RADL图片之前。
-与CRA子图片相关联的任何RASL子图片均应在输出顺序中位于与CRA子图片相关联的任何RADL子图片之前。
-nuh_layer_id等于特定值layerId的与CRA图片相关联的任何RASL图片在输出顺序中均应位于nuh_layer_id等于layerId的在解码顺序中位于CRA图片之前的任何IRAP或GDR图片之后。
-nuh_layer_id等于特定值layerId并且子图片索引等于特定值subpicIdx的与CRA子图片相关联的任何RASL子图,在输出顺序中均应位于nuh_layer_id等于layerId并且子图片索引等于subpicIdx的在解码顺序中位于CRA子图片之前的任何IRAP或GDR子图片之后。
-如果sps_field_seq_flag等于0,则以下适用:当nuh_layer_id等于特定值layerId的当前图片是与IRAP图片相关联的前导图片时,则该当前图片应在解码顺序中位于与相同IRAP图片相关联的所有非前导图片之前。否则(sps_field_seq_flag等于1),让picA和picB在解码顺序中分别是与IRAP图片相关联的第一个前导图片和最后一个前导图片,在解码顺序中picA之前应存在nuh_layer_id等于layerId的最多一个非前导图片,并且在解码顺序中picA和picB之间不应存在nuh_layer_id等于layerId的非前导图片。
-如果sps_field_seq_flag等于0,则以下适用:当nuh_layer_id等于特定值layerId并且子图片索引等于特定值subpicIdx的当前子图片是与IRAP子图片相关联的前导子图片时,则该当前子图片应在解码顺序中位于与相同IRAP子图片相关联的所有非前导子图片之前。否则(sps_field_seq_flag等于1),让subpicA和subpicB在解码顺序中分别是与IRAP子图片相关联的第一个前导子图片和最后一个前导子图片,在解码顺序中subpicA之前应存在nuh_layer_id等于layerId并且子图片索引等于subpicIdx的最多一个非前导子图片,并且在解码顺序中picA和picB之间不应存在nuh_layer_id等于layerId并且子图片索引等于subpicIdx的非前导图片。
如表2中所提供的,NAL单元可以包括补充增强信息(SEI)语法结构。表3和表4示出了JVET-T2001中提供的补充增强信息(SEI)语法结构。
表3
表4
对于表3和表4,JVET-T2001提供了以下语义:
每个SEI消息由指定SEI消息有效载荷的类型payloadType和大小payloadSize的变量组成。指定了SEI消息有效载荷。所导出的SEI消息有效载荷大小payloadSize以字节为单位指定,并且应等于SEI消息有效载荷中RBSP字节的数量。
注意—包含SEI消息的NAL单元字节序列可能包括一个或多个仿效防止字节(由emulation_prevention_three_byte语法元素表示)。由于在RBSP字节中指定了SEI消息的有效载荷大小,所以在SEI有效载荷的大小payloadSize中不包括仿效防止字节的数量。
payload_type_byte是SEI消息的有效载荷类型的字节。
payload_size_byte是SEI消息的有效载荷大小的字节。
应当指出的是,JVET-T2001定义了有效载荷类型,并且2022年1月12日至21日举行的ISO/IEC JTC1/SC29/WG11的第25次会议的“Additional SEI messages for VSEI(Draft6)”(电话会议,文档JVET-Y2006-v1,其以引用方式并入本文并被称为JVET-Y2006)定义了附加有效载荷类型。表5大体上示出了sei_payload()语法结构。即,表5示出了sei_payload()语法结构,但为了简洁起见,表5中未包括所有可能类型的有效载荷。
表5
对于表5,JVET-T2001提供了以下语义。
sei_reserved_payload_extension_data不应存在于符合本说明书的此版本的比特流中。然而,符合本说明书的此版本的解码器应忽略sei_reserved_payload_extension_data的存在和值。当存在时,sei_reserved_payload_extension_data的以位为单位的长度等于8*payloadSize-nEarlierBits-nPayloadZeroBits-1,其中nEarlierBits是位于sei_reserved_payload_extension_data语法元素之前的sei_payload()语法结构中位的数量,并且nPayloadZeroBits是在sei_payload()语法结构的末尾处的sei_payload_bit_equal_to_zero语法元素的数量。
如果在解析SEI消息语法结构(例如,buffering_period()语法结构)之后more_data_in_payload()为TRUE并且nPayloadZeroBits不等于7,则PayloadBits被设置为等于8*payloadSize-nPayloadZeroBits-1;否则,PayloadBits被设置为等于8*payloadSize。
payload_bit_equal_to_one应等于1。
payload_bit_equal_to_zero应等于0。
注意—具有相同payloadType值的SEI消息在概念上是相同的SEI消息,而不管它们被包含在前缀还是后缀SEI NAL单元中。
注意—对于在本说明书和VSEI规范(ITU-T H.274|ISO/IEC23002-7)中指定的SEI消息,payloadType值与在AVC(Rec.ITU-T H.264|ISO/IEC 14496-10)和HEVC(Rec.ITU-TH.265|ISO/IEC 23008-2)中指定的类似SEI消息对齐。
每个SEI消息的语义和持久性范围在每个特定SEI消息的语义规范中指定。
注意—SEI消息的持久性信息汇总在表142中。
JVET-T2001还提供了以下内容:
具有[表5]中标识的语法结构的SEI消息(在Rec.ITU-T H.274|ISO/IEC 23002-7中指定)可与本说明书指定的比特流一起使用。
当任何特定的Rec.ITU-T H.274|ISO/IEC 23002-7SEI消息包括在本说明书指定的比特流中时,SEI有效载荷语法应包括在[表5]指定的sei_payload()语法结构中,应使用[表5]中规定的payloadType值,此外,本附件中针对特定SEI消息指定的任何SEI消息特定约束应适用。
如上所述,PayloadBits的值被传递给Rec.ITU-T H.274|ISO/IEC23002-7中指定的SEI消息语法结构的解析器。
应当指出的是,2020年4月15日至24日举行的ISO/IEC JTC1/SC29/WG11第18次会议中的“Versatile supplemental enhancement information(Draft 5)”(电话会议,文档JVET-S2007-v7,其以引用方式并入本文,并且称为JVET-S2007)指定了与编码视频比特流一起使用的视频可用性信息(VUI)参数和补充增强信息(SEI)消息的语法和语义。具体地,JVET-S2007描述了含注册用户数据的SEI消息和含未注册用户数据的SEI消息。表6示出了JVET-S2007中提供的含注册用户数据的SEI消息的语法。
表6
关于表6,JVET-S2007提供了以下语义:
该SEI消息包含按建议书ITU-T T.35中指定的那样注册的用户数据,其内容未在本说明书中指定。
itu_t_t35_country_code应为具有由建议书ITU-T T.35:2000附录A指定为国家代码的值的字节。
itu_t_t35_country_code_extension_byte应为具有由建议书ITU-TT.35:2000附录B指定为国家代码的值的字节。
itu_t_t35_payload_byte应为包含按建议书ITU-T T.35中指定的那样注册的数据的字节。
ITU-T T.35终端提供商代码和面向终端提供商代码应包含在itu_t_t35_payload_byte的前一个或多个字节中,其格式由发布终端提供商代码的主管部门指定。任何剩余的itu_t_t35_payload_byte数据都应为具有如由ITU-T T.35国家代码和终端提供商代码标识的实体指定的语法和语义的数据。
表7示出了JVET-S2007中提供的含未注册用户数据的SEI消息的语法。
表7
关于表7,JVET-S2007提供了以下语义:
该SEI消息包含由通用唯一标识符(UUID)标识的未注册的用户数据,其内容在本说明书中未指定。
uuid_iso_iec_11578应具有根据ISO/IEC 11578:1996,附件A的过程指定为UUID的值。
user_data_payload_byte应为包含具有由UUID生成器指定的语法和语义的数据的字节。
如上所述,JVET-AA2006提供了NN后置滤波器补充增强信息消息。具体地,JVET-AA2006提供了神经网络后置滤波器特性SEI消息(payloadType==210)和神经网络后置滤波器激活SEI消息(payloadType==211)。表8和表9示出了JVET-AA2006中提供的神经网络后置滤波器特性SEI消息的语法。应当指出的是,神经网络后置滤波器特性SEI消息可被称为NNPFC SEI。
/>
表8
表9
对于表8和表9,JVET-AA2006提供了以下语义。
此SEI消息指定了可用作后处理滤波器的神经网络。特定图片的指定后处理滤波器的使用由神经网络后置滤波器激活SEI消息来指示。
此SEI消息的使用需要定义以下变量:
-以亮度样本为单位的经裁剪解码输出图片宽度和高度,在本文中分别用CroppedWidth和CroppedHeight来表示。
-针对垂直坐标y和水平坐标x的经裁剪解码输出图片的亮度样本阵列CroppedYPic和色度样本阵列CroppedCbPic和CroppedCrPic(当存在时),其中样本阵列的左上角具有等于0的坐标y和等于0的坐标x。
-经裁剪解码输出图片的亮度样本阵列的位深度BitDepthY。
-经裁剪解码输出图片的色度样本阵列(如果有的话)的位深度BitDepthC。
-色度格式指示符,在本文中用ChromaFormatIdc表示。
-当nnpfc_auxiliary_inp_idc等于1时,量化强度值StrengthControlVal。
当此SEI消息指定了可用作后处理滤波器的神经网络时,语义指定了亮度样本阵列FilteredYPic[x][y]、色度样本阵列FilteredCbPic[x][y]和FilteredCrPic[x][y]的导出,如由nnpfc_out_order_idc的值所指示,其包含后处理滤波器的输出。
变量SubWidthC和SubHeightC根据表10指定的ChromaFormatIdc导出。
sps_chroma_format_idc 色度格式 SubWidthC SubHeightC
0 单色 1 1
1 4:2:0 2 2
2 4:2:2 2 1
3 4:4:4 1 1
表10
nnpfc_id包含可用于标识后处理滤波器的标识号。nnpfc_id的值应在0至232-2的范围内(包括端值)。
保留从256至511(包括端值)以及从231至232-2(包括端值)的nnpfc_id值以供ITU-T|ISO/IEC将来使用。遇到nnpfc_id值在256至511(包括端值)或231至232-2(包括端值)范围内的解码器将忽略它。
nnpfc_mode_idc等于0指定了与nnpfc_id值相关联的后处理滤波器由本说明书中未指定的外部方式确定。
nnpfc_mode_idc等于1指定了与nnpfc_id值相关联的后处理滤波器是由包含在此SEI消息中的ISO/IEC 15938-17比特流表示的神经网络。
nnpfc_mode_idc等于2指定了与nnpfc_id值相关联的后处理滤波器是由指定标签统一资源定位符(URI)(nnpfc_uri_tag[i])和神经网络信息URI(nnpfc_uri[i])标识的神经网络。
nnpfc_mode_idc的值应在0至255的范围内(包括端值)。nnpfc_mode_idc的大于2的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_mode_idc的保留值的SEI消息。
nnpfc_purpose_and_formatting_flag等于0指定了不存在与滤波器目的、输入格式、输出格式和复杂性相关的语法元素。nnpfc_purpose_and_formatting_flag等于1指定了存在与滤波器目的、输入格式、输出格式和复杂性相关的语法元素。
当nnpfc_mode_idc等于1并且当前CLVS按解码顺序不包含nnpfc_id值等于此SEI消息中nnpfc_id值的先前神经网络后置滤波器特性SEI消息时,nnpfc_purpose_and_formatting_flag应等于1。
当当前CLVS按解码顺序包含nnpfc_id值等于此SEI消息中nnpfc_id的相同值的先前神经网络后置滤波器特性SEI消息时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于1,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
当此SEI消息是按解码顺序在当前CLVS内具有特定nnpfc_id值的第一个神经网络后置滤波器特性SEI消息时,其指定了基本后处理滤波器,该基本后处理滤波器与当前层的当前解码图片和所有后续解码图片按输出顺序有关,直到当前CLVS结束。当此SEI消息不是按解码顺序在当前CLVS内具有特定nnpfc_id值的第一个神经网络后置滤波器特性SEI消息时,此SEI消息与当前层的当前解码图片和所有后续解码图片按输出顺序相关,直到当前CLVS或在当前CLVS内按输出顺序具有特定nnpfc_id值的下一个神经网络后置滤波器特征SEI消息结束。
nnpfc_purpose指示如表11中所指定的后处理滤波器的目的。nnpfc_purpose的值应在0至232-2的范围内(包括端值)。未出现在表11中的nnpfc_purpose值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_purpose的保留值的SEI消息。
解释
0 未知或未指定
1 视觉质量改善
2 从4:2:0色度格式到4:2:2或4:4:4色度格式,或从4:2:2色度格式到4:4:4色度格式的色度上采样
3 在不改变色度格式的情况下增加经裁剪解码输出图片的宽度或高度
4 增加经裁剪解码输出图片的宽度或高度并且上采样色度格式
表11
注意—当ITU-T|ISO/IEC在将来使用nnpfc_purpose的保留值时,此SEI消息的语法可用语法元素来扩展,这些语法元素的存在以nnpfc_purpose等于该值为条件。
当SubWidthC等于1并且SubHeightC等于1时,nnpfc_purpose应不等于2或4。
nnpfc_out_sub_c_flag等于1指定了outSubWidthC等于1并且outSubHeightC等于1。nnpfc_out_sub_c_flag等于0指定了outSubWidthC等于2并且outSubHeightC等于1。当nnpfc_out_sub_c_flag不存在时,推断outSubWidthC等于SubWidthC并且推断outSubHeightC等于SubHeightC。如果SubWidthC等于2并且SubHeightC等于1,则nnpfc_out_sub_c_flag应不等于0。
nnpfc_pic_width_in_luma_samples和nnpfc_pic_height_in_luma_samples分别指定了通过将由nnpfc_id标识的后处理滤波器应用于经裁剪解码输出图片而产生的图片的亮度样本阵列的宽度及高度。当nnpfc_pic_width_in_luma_samples和nnpfc_pic_height_in_luma_samples不存在时,推断它们分别等于CroppedWidth和CroppedHeight。
nnpfc_component_last_flag等于0指定了将输入张量inputTensor中的第二维度输入到后处理滤波器,并且从后处理滤波器产生的输出张量outputTensor被用于该通道。nnpfc_component_last_flag等于1指定了将输入张量inputTensor中的最后一个维度输入到后处理滤波器,并且从后处理滤波器产生的输出张量outputTensor被用于该通道。
注意—输入张量和输出张量中的第一维度用于批量索引,这在一些神经网络框架中是一种实践。虽然该SEI消息的语义使用等于1的批量大小,但是由后处理具体实施来确定用作神经网络推断的输入的批量大小。
注意—颜色分量是通道的示例。
nnpfc_inp_format_flag指示将经裁剪解码输出图片的样本值转换为输入到后处理滤波器的输入值的方法。当nnpfc_inp_format_flag等于0时,输入到后处理滤波器的输入值是实数,并且函数InpY()和InpC()如下指定:
InpY(x)=x-((1<<BitDepthY)-1)
InpC(x)=x-((1<<BitDepthC)-1)
当nnpfc_inp_format_flag等于1时,输入到后处理滤波器的输入值是无符号整数,并且函数InpY()和InpC()如下指定:
变量inpTensorBitDepth根据语法元素nnpfc_inp_tensor_bitdepth_minus8导出,如下文所指定。
nnpfc_inp_tensor_bitdepth_minus8 plus8指定了输入整数张量中的亮度样本值的位深度。inpTensorBitDepth的值如下导出:
inpTensorBitDepth=nnpfc_inp_tensor_bitdepth_minus8+8
比特流符合性要求nnpfc_inp_tensor_bitdepth_minus8的值应在0至24的范围内(包括端值)。
nnpfc_auxiliary_inp_idc不等于0指定辅助输入数据存在于神经网络后置滤波器的输入张量中。nnpfc_auxiliary_inp_idc等于0指示辅助输入数据不存在于输入张量中。nnpfc_auxiliary_inp_idc等于1指定如表14中所指定来导出辅助输入数据。nnpfc_auxiliary_inp_idc的值应在0至255的范围内(包括端值)。nnpfc_auxiliary_inp_idc的大于1的值被保留以供ITU-T|ISO/IEC的将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_auxiliary_inp_idc的保留值的SEI消息。
nnpfc_separate_colour_description_present_flag等于1指示在SEI消息语法结构中指定了由后处理滤波器产生的图片的色彩原色、传输特性和矩阵系数的不同组合。nnfpc_separate_colour_description_present_flag等于0指示由后处理滤波器产生的图片的色彩原色、传输特性和矩阵系数的组合与CLVS的VUI参数中所指示的相同。
nnpfc_colour_primaries具有与针对vui_colour_primaries语法元素所指定的相同的语义,如下:vui_colour_primaries指示源色彩原色的色度坐标。其语义如针对Rec.ITU-T H.273|ISO/IEC 23091-2中的ColourPrimaries参数所指定的。当vui_colour_primaries语法元素不存在时,vui_colour_primaries的值被推断为等于2(色度是未知或未指定的或由本说明书中未指定的其他方式确定)。vui_colour_primaries的值被标识为保留以供Rec.ITU-T H.273|ISO/IEC 23091-2将来使用,并且不应存在于符合本说明书的此版本的比特流中。解码器应将vui_color_primaries的保留值解释为等于值2。
以下情况除外:
-nnpfc_colour_primaries指定了通过应用在SEI消息中指定的神经网络后置滤波器而产生的图片的色彩原色,而不是用于CLVS的色彩原色。
-当nnpfc_colour_primaries不存在于神经网络后置滤波器特性SEI消息中时,推断nnpfc_colour_primaries的值等于vui_colour_primaries。
nnpfc_transfer_characteristics具有与针对vui_transfer_characteristics语法元素所指定的相同的语义,如下:vui_transfer_characteristics指示颜色表示的传输特性函数。其语义如针对Rec.ITU-T H.273|ISO/IEC 23091-2中的TransferCharacteristics参数所指定的。当vui_transfer_characteristics语法元素不存在时,vui_transfer_characteristics的值被推断为等于2(传输特性是未知或未指定的或由本说明书中未指定的其他方式确定)。vui_transfer_characteristics的值被标识为保留以供Rec.ITU-T H.273|ISO/IEC 23091-2将来使用,并且不应存在于符合本说明书的此版本的比特流中。解码器应将vui_transfer_characteristics的保留值解释为等于值2。
以下情况除外:
-nnpfc_transfer_characteristics指定了通过应用在SEI消息中指定的神经网络后置滤波器而产生的图片的传输特性,而不是用于CLVS的传输特性。
-当nnpfc_transfer_characteristics不存在于神经网络后置滤波器特性SEI消息中时,推断nnpfc_transfer_characteristics的值等于vui_transfer_characteristics。
nnpfc_matrix_coeffs具有与针对vui_matrix_coeffs语法元素所指定的相同的语义,如下:vui_matrix_coeffs描述了用于从绿色、蓝色和红色或Y、Z和X原色中导出亮度和色度信号的等式。其语义如针对Rec.ITU-TH.273|ISO/IEC 23091-2中的MatrixCoefficients参数所指定的。
vui_matrix_coeffs应不等于0,除非以下两个条件都为真:
-BitDepthC等于BitDepthY。
-ChromaFormatIdc等于3(4:4:4色度格式)。
保留了在所有其他条件下使用等于0的vui_matrix_coeffs的规范以供ITU-T|ISO/IEC将来使用。
vui_matrix_coeffs应不等于8,除非以下条件中的一个条件为真:
-BitDepthC等于BitDepthY,
-BitDepthC等于BitDepthY+1,并且ChromaFormatldc等于3(4:4:4色度格式)。
保留了在所有其他条件下使用等于8的vui_matrix_coeffs的规范以供ITU-T|ISO/IEC将来使用。
当vui_matrix_coeffs语法元素不存在时,vui_matrix_coeffs的值被推断为等于2(未知或未指定的或由本说明书中未指定的其他方式确定)。
以下情况除外:
-nnpfc_matrix_coeffs指定了通过应用在SEI消息中指定的神经网络后置滤波器而产生的图片的矩阵系数,而不是用于CLVS的矩阵系数。
-当nnpfc_matrix_coeffs不存在于神经网络后置滤波器特性SEI消息中时,推断nnpfc_matrix_coeffs的值等于vui_matrix_coeffs。
-nnpfc_matrix_coeffs允许的值不受解码视频图片的色度格式的约束,该格式由用于VUI参数语义的ChromaFormatIdc值来指示。
-当nnpfc_matrix_coeffs等于0时,nnpfc_out_order_idc应不等于1或3。
nnpfc_inp_order_idc指示对作为后处理滤波器的输入的经裁剪解码输出图片的样本阵列进行排序的方法。表12包含nnpfc_inp_order_idc值的信息性描述。在表14中指定了在0至3的范围内(包括端值)的nnpfc_inp_order_idc的语义,其指定了用于针对nnpfc_inp_order_idc的不同值导出输入张量inputTensor的过程,以及指定输入张量中所包括的样本块的左上样本位置的给定垂直样本坐标cTop和水平样本坐标cLeft。当经裁剪解码输出图片的色度格式不是4:2:0时,nnpfc_inp_order_idc应不等于3。nnpfc_inp_order_idc的值应在0至255的范围内(包括端值)。nnpfc_inp_order_idc的大于3的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_inp_order_idc的保留值的SEI消息。
表12
块是来自图片的分量(例如,亮度或色度分量)的样本的矩形阵列。
nnpfc_constant_patch_size_flag等于0指定了后处理滤波器接受由nnpfc_patch_width_minus1和nnpfc_patch_height_minus1指示的块大小的正整数倍的任何块大小作为输入。当nnpfc_constant_patch_size_flag等于0时,块大小宽度应小于或等于CroppedWidth。当nnpfc_constant_patch_size_flag等于0时,块大小高度应小于或等于CroppedHeight。nnpfc_constant_patch_size_flag等于1指定了后处理滤波器完全接受由nnpfc_patch_width_minus1和nnpfc_patch_height_minus1指示的块大小作为输入。
nnpfc_patch_width_minus1+1,当nnpfc_constant_patch_size_flag等于1时,指定了输入到后处理滤波器所需的块大小的水平样本计数。当nnpfc_constant_patch_size_flag等于0时,(nnpfc_patch_width_minus1+1)的任何正整数倍数均可用作用于到后处理滤波器的输入的块大小的水平样本计数。nnpfc_patch_width_minus1的值应在0至Min(32766,CroppedWidth-1)的范围内(包括端值)。
nnpfc_patch_height_minus1+1,当nnpfc_constant_patch_size_flag等于1时,指定了输入到后处理滤波器所需的块大小的垂直样本计数。当nnpfc_constant_patch_size_flag等于0时,(nnpfc_patch_height_minus1+1)的任何正整数倍数均可用作用于到后处理滤波器的输入的块大小的垂直样本计数。nnpfc_patch_height_minus1的值应在0至Min(32766,CroppedHeight-1)的范围内(包括端值)。
nnpfc_overlap指定了后处理滤波器的相邻输入张量的重叠水平和垂直样本计数。nnpfc_overlap的值应在0至16383的范围内(包括端值)。
变量inpPatchWidth、inpPatchHeight、outPatchWidth、outPatchHeight、horCScaling、verCScaling、outPatchCWidth、outPatchCHeight和overlapSize如下导出:
inpPatchWidth=nnpfc_patch_width_minus1+1
inpPatchHeight=nnpfc_patch_height_minus1+1
outPatchWidth=(nnpfc_pic_width_in_luma_samples*inpPatchWidth)/CroppedWidth
outPatchHeight=(nnpfc_pic_height_in_luma_samples*inpPatchHeight)/CroppedHeight
horCScaling=SubWidthC/outSubWidthC
verCScaling=SubHeightC/outSubHeightC
outPatchCWidth=outPatchWidth*horCScaling
outPatchCHeight=outPatchHeight*verCScaling
overlapSize=nnpfc_overlap
比特流符合性要求outPatchWidth*CroppedWidth应等于nnpfc_pic_width_in_luma_samples*inpPatchWidth,并且outPatchHeight*CroppedHeight应等于nnpfc_pic_height_in_luma_samples*inpPatchHeight。
nnpfc_padding_type指定了当参考如表13中所述的经裁剪解码输出图片的边界外部的样本位置时的填充过程。nnpfc_padding_type的值应在0至15的范围内(包括端值)。
nnpfc_padding_type 描述
0 零填充
1 复制填充
2 反射填充
3 环绕填充
4 固定填充
5..15 保留
表13
nnpfc_luma_padding_val指定了当nnpfc_padding_type等于4时用于填充的亮度值。
nnpfc_cb_padding_val指定了当nnpfc_padding_type等于4时用于填充的Cb值。
nnpfc_cr_padding_val指定了当nnpfc_padding_type等于4时用于填充的Cr值。
输入为垂直样本位置y、水平样本位置x、图片高度picHeight、图片宽度picWidth和样本阵列croppedPic的函数InpSampleVal(y,x,picHeight,picWidth,croppedPic)返回如下导出的sampleVal的值:
/>
/>
表14
nnpfc_complexity_idc大于0指定可能存在指示与nnpfc_id相关联的后处理滤波器的复杂性的一个或多个语法元素。nnpfc_complexity_idc等于0指定不存在指示与nnpfc_id相关联的后处理滤波器的复杂性的语法元素。该值nnpfc_complexity_idc应在0至255的范围内(包括端值)。nnpfc_complexity_idc的大于1的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_complexity_idc的保留值的SEI消息。
nnpfc_out_format_flag等于0指示由后处理滤波器输出的样本值为实数,并且用于分别将由后处理输出的亮度样本值和色度样本值转换为位深度BitDepthY和BitDepthC处的整数值的函数OutY()和OutC()分别如下指定:
OutY(x)=Clip3(0,(1<<BitDepthY)-1,Round(x*((1<<BitDepthY)-1)))
OutC(x)=Clip3(0,(1<<BitDepthC)-1,Round(x*((1<<BitDepthC)-1)))
nnpfc_out_format_flag等于1指示由后处理滤波器输出的样本值为无符号整数且函数OutY()和OutC()如下指定:
变量outTensorBitDepth根据语法元素nnpfc_out_tensor_bitdepth_minus8导出,如下所述。
nnpfc_out_tensor_bitdepth_minus8 plus8指定了输出整数张量中的样本值的位深度。outTensorBitDepth的值如下导出:
outTensorBitDepth=nnpfc_out_tensor_bitdepth_minus8+8
比特流符合性要求nnpfc_out_tensor_bitdepth_minus8的值应在0至24的范围内(包括端值)。
nnpfc_out_order_idc指示从后处理滤波器产生的样本的输出顺序。表15包含nnpfc_out_order_idc值的信息性描述。在表16中指定了在0至3的范围内(包括端值)的nnpfc_out_order_idc的语义,其指定了用于针对nnpfc_out_order_idc的不同值根据输出张量outputTensor导出经滤波的输出样本阵列FilteredYPic、FilteredCbPic和FilteredCrPic中的样本值的过程,以及指定输入张量中所包括的样本块的左上样本位置的给定垂直样本坐标cTop和水平样本坐标cLeft。当nnpfc_purpose等于2或4时,nnpfc_out_order_idc应不等于3。nnpfc_out_order_idc的值应在0至255的范围内(包括端值)。nnpfc_out_order_idc的大于3的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_out_order_idc的保留值的SEI消息。
表15
/>
表16
用于经裁剪解码输出图片picA的基本后处理滤波器是按解码顺序由具有CLVS内的特定nnpfc_id值的第一个神经网络后置滤波器特性SEI消息标识的滤波器。
如果存在具有相同nnpfc_id值、具有nnpfc_mode_idc等于1、具有与定义基本后处理滤波器的神经网络后置滤波器特性SEI消息不同的内容并且与图片picA有关的另一神经网络后置滤波器特性SEI消息,则通过解码神经网络后置滤波器特性SEI消息中的ISO/IEC15938-17比特流以获得后处理滤波器PostProcessingFilter()来更新基本后处理滤波器。否则,后处理滤波器PostProcessingFilter()被指定为与基本后处理滤波器相同。
以下过程用于利用后处理滤波器PostProcessingFilter()对经裁剪解码输出图片进行滤波以产生经滤波图片,其中分别包含Y、Cb、Cr样本阵列FilteredYPic、FilteredCbPic、FilteredCrPic,如nnpfc_out_order_idc所指示。
nnpfc_reserved_zero_bit应等于0。
nnpfc_uri_tag[i]包含指定标签URI的以NULL结尾的UTF-8字符串。UTF-8字符串应包含具有如IETF RFC 4151中指定的语法和语义的URI,唯一地标识由nnrpf_uri[i]值指定的用作后处理滤波器的神经网络的格式和相关联信息。
注意—nnrpf_uri_tag[i]元素表示“标签”URI,其使得能够唯一地标识由nnrpf_uri[i]值指定的神经网络数据的格式,而不需要中央注册授权。
nnpfc_uri[i]应包含以NULL结尾的UTF-8字符串,如ISO/IEC 10646中所指定的。UTF-8字符串应包含具有如IETF因特网标准66中指定的语法和语义的URI,从而标识用作后处理过滤器的神经网络信息(例如,数据表示)。
nnpfc_payload_byte[i]包含符合ISO/IEC 15938-17的比特流的第i字节。对于i的所有当前值的字节序列nnpfc_payload_byte[i]均应为符合ISO/IEC 15938-17的完整比特流。
nnpfc_parameter_type_idc等于0指示神经网络仅使用整数参数。nnpfc_parameter_type_flag等于1指示神经网络可使用浮点或整数参数。nnpfc_parameter_type_idc等于2指示神经网络仅使用二进制参数。nnpfc_parameter_type_idc等于3被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_parameter_type_idc的保留值的SEI消息。
nnpfc_log2_parameter_bit_length_minus3等于0、1、2和3分别指示神经网络不使用位长度大于8、16、32和64的参数。当nnpfc_parameter_type_idc存在并且nnpfc_log2_parameter_bit_length_minus3不存在时,神经网络不使用位长度大于1的参数。
nnpfc_num_parameters_idc以2048的幂为单位指示用于后处理滤波器的神经网络参数的最大数量。nnpfc_num_parameters_idc等于0指示未指定神经网络参数的最大数量。该值nnpfc_num_parameters_idc应在0至52的范围内(包括端值)。nnpfc_num_parameters_idc的大于52的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_num_parameters_idc的保留值的SEI消息。
如果nnpfc_num_parameters_idc的值大于0,则如下导出变量maxNumParameters:
maxNumParameters=(2048<<nnpfc_num_parameters_idc)-1
比特流符合性要求后处理滤波器的神经网络参数的数量应小于或等于maxNumParameters。
nnpfc_num_kmac_operations_idc大于0指定了后处理滤波器的每样本的乘法-累积运算的最大数量小于或等于nnpfc_num_kmac_operations_idc*1000。nnpfc_num_kmac_operations_idc等于0指定了未指定乘法-累积运算的最大数量。nnpfc_num_kmac_operations_idc的值应在0至232-1的范围内(包括端值)。
表17示出了在JVET-AA2006中提供的神经网络后置滤波器激活SEI消息的语法。
nn_post_filter_activation(payloadSize){ 描述符
nnpfa_id ue(v)
}
表17
对于表17,JVET-AA2006提供了以下语义。
此SEI消息指定了可用于当前图片的后处理滤波器的神经网络后处理滤波器。
该神经网络后处理滤波器激活SEI消息仅对当前图片有效。
注意—例如,当后处理滤波器旨在用于不同的目的或对不同的颜色分量进行滤波时,对于相同图片可能存在若干神经网络后处理滤波器激活SEI消息。
nnpfa_id指定了由与当前图片有关并且具有等于nnfpa_id的nnpfc_id的一个或多个神经网络后处理滤波器特性SEI消息所指定的神经网络后处理滤波器可以用于对当前图片进行后处理滤波。
此外,应当指出的是,在一些情况下,对于NN后置滤波器特性SEI消息的使用:
为了解释神经网络后置滤波器特性SEI消息的目的,指定了以下变量:
-InpPicWidthInLumaSamples被设置为等于pps_pic_width_in_luma_samples-SubWidthC*(pps_conf_win_left_offset+pps_conf_win_right_offset)。
-InpPicHeightInLumaSamples被设置为等于pps_pic_height_in_luma_samples-SubHeightC*(pps_conf_win_top_offset+pps_conf_win_bottom_offset)。
-当存在时,将变量CroppedYPic[y][x]、色度样本阵列CroppedCbPic[y][x]和CroppedCrPic[y][x]分别设置为神经网络后置滤波器特性SEI消息所应用的经裁剪解码输出图片的第0个、第1个和第2个分量的解码样本值的2维阵列。
-BitDepthY和BitDepthC都被设置为等于BitDepth。
-InpSubWidthC被设置为等于SubWidthC。
-InpSubHeightC被设置为等于SubHeightC。
-SliceQPY被设置为等于SliceQpY。
当具有相同nnpfc_id和不同内容的神经网络后置滤波器特性SEI消息存在于相同图片单元中时,两个神经网络后置滤波器特性SEI消息应存在于相同SEI NAL单元中。
JVET-AA2006中提供的神经网络后置滤波器特性SEI消息可能不够理想。具体地,例如,JVET-AA2006中的信令可能不足以更新先前发送信号通知的神经网络后置滤波器参数。根据本文中所述的技术,提供了附加的语法和语义以用于指示神经网络后置滤波器参数,包括例如先前发送信号通知的神经网络后置滤波器参数的更新。
图1是示出根据本公开的一种或多种技术的可以被配置为对视频数据进行编码(例如,编码和/或解码)的系统的示例的框图。系统100表示可以根据本公开的一种或多种技术来封装视频数据系统的示例。如图1所示,系统100包括源设备102、通信介质110和目标设备120。在图1所示的示例中,源设备102可以包括被配置为对视频数据进行编码并将编码的视频数据传输到通信介质110的任何设备。目标设备120可以包括被配置为经由通信介质110接收编码视频数据并且对编码视频数据进行解码的任何设备。源设备102和/或目标设备120可以包括配备用于进行有线和/或无线通信的计算设备,并且可以包括例如机顶盒、数字视频录像机、电视机、台式计算机、膝上型计算机或平板计算机、游戏控制台、医学成像设备和移动设备(包括例如智能电话、蜂窝电话、个人游戏设备)。
通信介质110可以包括无线和有线通信介质和/或存储设备的任意组合。通信介质110可以包括同轴电缆、光纤电缆、双绞线电缆、无线发射器和接收器、路由器、交换机、中继器、基站或可用于促进各种设备和站点之间的通信的任何其他设备。通信介质110可以包括一个或多个网络。例如,通信介质110可以包括被配置为允许访问万维网例如互联网的网络。网络可以根据一个或多个电信协议的组合操作。电信协议可以包括专有方面并且/或者可以包括标准化电信协议。标准化电信协议的示例包括数字视频广播(DVB)标准、高级电视系统委员会(ATSC)标准、综合服务数字广播(ISDB)标准、有线数据业务接口规范(DOCSIS)标准、全球移动通信系统(GSM)标准、码分多址(CDMA)标准、第3代合作伙伴计划(3GPP)标准、欧洲电信标准协会(ETSI)标准、互联网协议(IP)标准、无线应用协议(WAP)标准以及电气与电子工程师协会(IEEE)标准。
存储设备可以包括能够存储数据的任何类型的设备或存储介质。存储介质可以包括有形或非暂态计算机可读介质。计算机可读介质可以包括光盘、闪存存储器、磁存储器或任何其他合适的数字存储介质。在一些示例中,存储器设备或其部分可以被描述为非易失性存储器,并且在其他示例中,存储器设备的部分可以被描述为易失性存储器。易失性存储器的示例可以包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)。非易失性存储器的示例可以包括磁性硬盘、光盘、软盘、闪存或电可编程存储器(EPROM)或电可擦除和可编程(EEPROM)存储器的形式。存储设备可以包括存储卡(例如,安全数字(SD)存储卡)、内部/外部硬盘驱动器和/或内部/外部固态驱动器。数据可以根据定义的文件格式存储在存储设备上。
图4是示出可以被包括在系统100的具体实施中的部件的示例的概念图。在图4所示的示例性具体实施中,系统100包括一个或多个计算设备402A至402N、电视服务网络404、电视服务提供方站点406、广域网408、局域网410以及一个或多个内容提供方站点412A至412N。图4中所示的具体实施表示系统的示例,该系统可被配置为允许数字媒体内容(诸如电影、现场体育赛事等)和与其相关联的数据和应用程序以及媒体呈现被分发到多个计算设备(诸如计算设备402A至402N)并由该多个计算设备访问。在图4所示的示例中,计算设备402A至402N可以包括被配置为从电视服务网络404、广域网408和/或局域网410中的一者或多者接收数据的任何设备。例如,计算设备402A至402N可以配备用于有线和/或无线通信,并且可被配置为通过一个或多个数据信道接收服务,并且可以包括电视,包括所谓的智能电视、机顶盒和数字视频记录器。此外,计算设备402A至402N可以包括台式计算机、膝上型计算机或平板计算机、游戏控制台、移动设备(包括例如“智能”电话、蜂窝电话和个人游戏设备)。
电视服务网络404是被配置为使得能够分发可以包括电视服务的数字媒体内容的网络的示例。例如,电视服务网络404可以包括公共空中电视网络、公共或基于订阅的卫星电视服务提供方网络,以及公共或基于订阅的有线电视提供方网络和/或云上或互联网服务提供方。应当指出的是,尽管在一些示例中,电视服务网络404可以主要用于允许提供电视服务,但是电视服务网络404还可以根据本文所述的电信协议的任何组合允许提供其他类型的数据和服务。此外,应当指出的是,在一些示例中,电视服务网络404可以允许电视服务提供方站点406与计算设备402A至402N中的一个或多个之间的双向通信。电视服务网络404可以包括无线和/或有线通信媒体的任何组合。电视服务网络404可以包括同轴电缆、光纤电缆、双绞线电缆、无线发射器和接收器、路由器、交换机、中继器、基站或可用于促进各种设备和站点之间的通信的任何其他设备。电视服务网络404可以根据一个或多个电信协议的组合来运营。电信协议可以包括专有方面并且/或者可以包括标准化电信协议。标准化电信协议的示例包括DVB标准、ATSC标准、ISDB标准、DTMB标准、DMB标准、有线数据服务接口规范(DOCSIS)标准、HbbTV标准、W3C标准和UPnP标准。
再次参考图4,电视服务提供方站点406可被配置为经由电视服务网络404分发电视服务。例如,电视服务提供方站点406可以包括一个或多个广播站、有线电视提供方或卫星电视提供方或基于互联网的电视提供方。例如,电视服务提供方站点406可被配置为通过卫星上行链路/下行链路接收传输(包括电视节目)。此外,如图4所示,电视服务提供方站点406可以与广域网408通信,并且可被配置为从内容提供方站点412A至412N接收数据。应当指出的是,在一些示例中,电视服务提供方站点406可以包括电视演播室,并且内容可以源自该电视演播室。
广域网408可以包括基于分组的网络,并且根据一个或多个电信协议的组合运营。电信协议可以包括专有方面并且/或者可以包括标准化电信协议。标准化电信协议的示例包括全球系统移动通信(GSM)标准、码分多址(CDMA)标准、第三代合作伙伴计划(3GPP)标准、欧洲电信标准协会(ETSI)标准、欧洲标准(EN)、IP标准、无线应用协议(WAP)标准、以及电气与电子工程师协会(IEEE)标准,诸如,一个或多个IEEE 802标准(例如,Wi-Fi)。广域网408可以包括无线和/或有线通信媒体的任何组合。广域网408可以包括同轴电缆、光纤电缆、双绞线电缆、以太网电缆、无线发射器和接收器、路由器、交换机、中继器、基站、或可用于促进各种设备和站点之间的通信的任何其他设备。在一个示例中,广域网408可以包括互联网。局域网410可以包括基于分组的网络,并且根据一个或多个电信协议的组合运营。可以基于访问级别和/或物理基础设施将局域网410与广域网408区分开。例如,局域网410可以包括安全家庭网络。
再次参考图4,内容提供方站点412A至412N表示可以向电视服务提供方站点406和/或计算设备402A至402N提供多媒体内容的站点的示例。例如,内容提供方站点可以包括具有一个或多个工作室内容服务器的工作室,该工作室内容服务器被配置为向电视服务提供方站点406提供多媒体文件和/或流。在一个示例中,内容提供方站点412A至412N可被配置为使用IP套件提供多媒体内容。例如,内容提供方站点可被配置为根据实时流协议(RTSP)、HTTP等向接收器设备提供多媒体内容。此外,内容提供方站点412A至412N可被配置为通过广域网408向接收器设备402A至402N和/或电视服务提供方站点406中的一个或多个提供包括基于超文本的内容等的数据。内容提供方站点412A至412N可以包括一个或多个web服务器。可以根据数据格式来定义由数据提供方站点412A至412N提供的数据。
再次参考图1,源设备102包括视频源104、视频编码器106、数据封装器107和接口108。视频源104可以包括被配置为捕获和/或存储视频数据的任何设备。例如,视频源104可以包括摄像机和可操作地与其耦接的存储设备。视频编码器106可以包括被配置为接收视频数据并生成表示视频数据的兼容比特流的任何设备。兼容比特流可以指视频解码器可以从其接收和再现视频数据的比特流。兼容比特流的各方面可根据视频编码标准来定义。当生成兼容比特流时,视频编码器106可以压缩视频数据。压缩可能是有损的(观察者可觉察的或不可觉察的)或无损的。图5是示出可实现本文所述的用于对视频数据进行编码的技术的视频编码器500的示例的框图。应当指出的是,尽管示例性视频编码器500被示出为具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频编码器500和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频编码器500的功能。
视频编码器500可执行图片区域的帧内预测编码和帧间预测编码,并且因此可被称为混合视频编码器。在图5所示的示例中,视频编码器500接收源视频块。在一些示例中,源视频块可以包括已经根据编码结构划分的图片区域。例如,源视频数据可以包括宏块、CTU、CB、其子分区和/或另外的等效编码单元。在一些示例中,视频编码器500可被配置为执行源视频块的附加细分。应当指出的是,本文描述的技术通常适用于视频编码,而不管在编码之前和/或期间如何划分源视频数据。在图5所示的示例中,视频编码器500包括加法器502、变换系数生成器504、系数量化单元506、逆量化和变换系数处理单元508、加法器510、帧内预测处理单元512、帧间预测处理单元514、滤波器单元516和熵编码单元518。如图5所示,视频编码器500接收源视频块并输出比特流。
在图5所示的示例中,视频编码器500可以通过从源视频块中减去预测视频块来生成残差数据。下面详细描述了对预测视频块的选择。求和器502表示被配置为执行该减法运算的部件。在一个示例中,视频块的减法发生在像素域中。变换系数生成器504对残差块或其子分区应用变换诸如离散余弦变换(DCT)、离散正弦变换(DST)或概念上类似的变换(例如,可以将四个8×8变换应用于16×16残差值阵列)以产生残差变换系数集合。变换系数生成器504可被配置为执行离散三角变换系列中包括的变换的任何和全部组合,包括其近似。变换系数生成器504可将变换系数输出到系数量化单元506。系数量化单元506可被配置为执行变换系数的量化。量化过程可以减少与一些或所有系数相关联的位深度。量化的程度可以改变编码的视频数据的率失真(即比特率与视频质量的关系)。量化的程度可以通过调整量化参数(QP)来修改。可以基于切片位阶值和/或CU位阶值(例如,CU增量QP值)来确定量化参数。QP数据可以包括用于确定用于量化特定变换系数集合的QP的任何数据。如图5所示,量化的变换系数(可被称为位阶值)被输出到逆量化和变换系数处理单元508。逆量化和变换系数处理单元508可被配置为应用逆量化和逆变换来生成重构残差数据。如图5所示,在求和器510处,重构残差数据可以被添加到预测视频块。这样,可以重构编码的视频块,并且可以使用所得重构视频块来评估给定的预测、变换和/或量化的编码质量。视频编码器500可被配置为执行多个编码回合(例如,在改变预测、变换参数和量化参数中的一者或多者的同时执行编码)。比特流的率失真或其他系统参数可以基于重构视频块的评估来优化。此外,重构视频块可被存储并用作预测后续块的参考。
再次参考图5,帧内预测处理单元512可被配置为针对待编码视频块选择帧内预测模式。帧内预测处理单元512可被配置为评估帧并且确定用以编码当前块的帧内预测模式。如上所述,可能的帧内预测模式可以包括平面预测模式、DC预测模式和角度预测模式。此外,应当指出的是,在一些示例中,可以根据亮度预测模式的预测模式来推断色度分量的预测模式。帧内预测处理单元512可在执行一个或多个编码回合之后选择帧内预测模式。此外,在一个示例中,帧内预测处理单元512可以基于率失真分析来选择预测模式。如图5所示,帧内预测处理单元512将帧内预测数据(例如,语法元素)输出到熵编码单元518和变换系数生成器504。如上所述,对残差数据执行的变换可以是模式相关的(例如,可以基于预测模式确定二次变换矩阵)。
再次参考图5,帧间预测处理单元514可被配置为针对当前视频块执行帧间预测编码。帧间预测处理单元514可被配置为接收源视频块并且计算视频块的PU的运动矢量。运动矢量可以指示当前视频帧内的视频块的预测单元相对于参考帧内的预测块的位移。帧间预测编码可以使用一个或多个参考图片。此外,运动预测可以是单向预测(使用一个运动矢量)或双向预测(使用两个运动矢量)。帧间预测处理单元514可被配置为通过计算由例如绝对差之和(SAD)、平方差之和(SSD)或其他差值度量确定的像素差来选择预测块。如上所述,可以根据运动矢量预测来确定和指定运动矢量。如上所述,帧间预测处理单元514可被配置为执行运动矢量预测。帧间预测处理单元514可被配置为使用运动预测数据生成预测块。例如,帧间预测处理单元514可定位帧缓冲器内的预测视频块(图5中未示出)。应当指出的是,帧间预测处理单元514可以进一步被配置为将一个或多个内插滤波器应用于重构残差块,以计算用于运动估计的子整数像素值。帧间预测处理单元514可将所计算的运动矢量的运动预测数据输出到熵编码单元518。
如图5所示,滤波器单元516接收重构的视频块和编码参数,并且输出已修改的重构视频数据。滤波器单元516可被配置为执行解块和/或样本自适应偏移(SAO)滤波。SAO滤波是一种可用于通过向重构视频数据添加偏移以改善重构的非线性振幅映射。应当指出的是,如图5所示,帧内预测处理单元512和帧间预测处理单元514可以经由滤波器单元216接收经修改的重构视频块。熵编码单元518接收量化的变换系数和预测语法数据(即,帧内预测数据和运动预测数据)。应当指出的是,在一些示例中,系数量化单元506可以在将系数输出到熵编码单元518之前执行对包括量化变换系数的矩阵的扫描。在其他示例中,熵编码单元518可执行扫描。熵编码单元518可以被配置为根据本文所述的技术中的一种或多种技术执行熵编码。这样,视频编码器500表示被配置为根据本公开的一种或多种技术生成编码视频数据的设备的示例。
再次参考图1,数据封装器107可以接收编码视频数据,并根据定义的数据结构生成兼容比特流,例如,NAL单元序列。接收兼容比特流的设备可以从其再现视频数据。此外,如上所述,子比特流提取可以指通过丢弃和/或修改接收的比特流中的数据,接收兼容比特流的设备形成新的兼容比特流的过程。应当指出的是,可以使用术语符合性比特流来代替术语兼容比特流。在一个示例中,数据封装器107可被配置为根据本文所述的一种或多种技术生成语法。应当指出的是,数据封装器107不需要必须位于与视频编码器106相同的物理设备中。例如,被描述为由视频编码器106和数据封装器107执行的功能可以分布在图4所示的设备中。
如上所述,在JVET-AA2006中提供的信令可能是不充分的。具体地,当经由URI发送信号通知神经网络信息时,JVET-AA2006不提供允许更新先前发送信号通知的神经网络后处理滤波器的信令。根据本文的技术,当经由URI发送信号通知神经网络信息时,提供信令以允许更新先前发送信号通知的神经网络后处理滤波器。在一个示例中,根据本文的技术,nnpfc_uri_tag[i]和nnprf_uri[i]语法元素可以在基于nnpfc_purpose_and_formatting_flag语法元素的条件信令之外发送信号通知。因此,在一些示例中,即使当nnpfc_purpose_and_formatting_flag等于0时,也可发送信号通知nnpfc_uri_tag[i]和nnprf_uri[i](以及为字节对齐保留的零位语法元素)。当经由URI发送信号通知神经网络信息时,此信令连同示例性约束允许更新先前发送信号通知的神经网络后处理滤波器。在一个示例中,当nnpfc_mode_idc等于2时(即,经由URI指示神经网络信息信令的模式)可添加约束以允许更新先前发送信号通知的神经网络后处理滤波器。在一个示例中,JVET-AA2006中提供的现有约束可被修改以允许更灵活的更新。根据本文的技术,示例性约束允许先前利用等于1的nnpfc_mode_idc(即,在带内(并且具有相同的nnpfc_id值))发送信号通知的现有神经网络后置滤波器由利用等于2的nnpfc_mode_idc(即,经由URI在带外)发送信号通知的神经网络滤波器更新来更新。
表18A和表18B示出了根据本文的技术的示例性神经网络后置滤波器特性SEI消息的语法。
/>
表18A
/>
表18B
对于表18A和表18B,语义可基于如上提供的语义并且基于语法元素nnpfc_purpose_and_formatting_flag的以下语义:
nnpfc_purpose_and_formatting_flag等于0指定了不存在与滤波器目的、输入格式、输出格式和复杂性相关的语法元素。nnpfc_purpose_and_formatting_flag等于1指定了存在与滤波器目的、输入格式、输出格式和复杂性相关的语法元素。
当nnpfc_mode_idc等于1或2并且当前CLVS按解码顺序不包含nnpfc_id值等于此SEI消息中nnpfc_id值的先前神经网络后置滤波器特性SEI消息时,nnpfc_purpose_and_formatting_flag应等于1。
当当前CLVS按解码顺序包含nnpfc_id值等于此SEI消息中nnpfc_id的相同值的先前神经网络后置滤波器特性SEI消息时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于1,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息的nnpfc_mode_idc值等于2,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
当此SEI消息是按解码顺序在当前CLVS内具有特定nnpfc_id值的第一个神经网络后置滤波器特性SEI消息时,其指定了基本后处理滤波器,该基本后处理滤波器与当前层的当前解码图片和所有后续解码图片按输出顺序有关,直到当前CLVS结束。当此SEI消息不是按解码顺序在当前CLVS内具有特定nnpfc_id值的第一个神经网络后置滤波器特性SEI消息时,此SEI消息与当前层的当前解码图片和所有后续解码图片按输出顺序相关,直到当前CLVS或在当前CLVS内按输出顺序具有特定nnpfc_id值的下一个神经网络后置滤波器特征SEI消息结束。
应当指出的是,表18A与表18B之间的主要区别是“nnpfc_mode_idc是否等于1或2”检查的顺序相反。一般来讲,任何顺序都可用于这种检查。此外,在一个示例中,表18A或表18B中的“else if”条件可以用“if”替换。
根据本文中的技术,在一些示例中,nnpfc_purpose_and_formatting_flag语义中的以下文本:
当nnpfc_mode_idc等于1或2并且当前CLVS按解码顺序不包含nnpfc_id值等于此SEI消息中nnpfc_id值的先前神经网络后置滤波器特性SEI消息时,nnpfc_purpose_and_formatting_flag应等于1。
可替换为以下内容:
当nnpfc_mode_idc等于1或2,并且当前CLVS按解码顺序不包含先前神经网络后置滤波器特性SEI消息时,该消息具有与此SEI消息中nnpfc_id值相等的nnpfc_id值,并且具有与此SEI消息中nnpfc_mode_idc值相等的nnpfc_mode_idc值,nnpfc_purpose_and_formatting_flag应等于1。
或者其可替换为以下内容:
当nnpfc_mode_idc等于0或1或2并且当前CLVS按解码顺序不包含nnpfc_id值等于此SEI消息中nnpfc_id值的先前神经网络后置滤波器特性SEI消息时,nnpfc_purpose_and_formatting_flag应等于1。
应当指出的是,尽管上述示例性描述使用0、1和2的特定值来指示特定模式,但一般来讲,在其他示例中,可使用其他值来指示特定模式。
应当指出的是,在上文提供的nnpfc_purpose_and_formatting_flag的示例性语义中,有以下约束:
当当前CLVS按解码顺序包含nnpfc_id值等于此SEI消息中nnpfc_id的相同值的先前神经网络后置滤波器特性SEI消息时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于2,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
如果nnpfc_mode_idc等于1,则允许利用具有新NN数据的新NNPFC SEI在带内更新来自先前的NNPFC SEI的基本NN(具有任何nnpfc_mode_idc),或如果nnpfc_mode_idc等于2,则经由URI更新。
在一个示例中,根据本文的技术,如果nnpfc_mode_idc等于1,则可在带内向来自nnpfc_mode_idc等于1或2的先前NNPFC SEI的基本NN的更新提供具有新NN的新NNPFC SEI,或如果nnpfc_mode_idc等于2,则可经由URI提供。在一个示例中,可由nnpfc_mode_idc值等于1的另一NNPFC SEI提供nnpfc_mode_idc值等于1的先前NNPFC SEI的更新,并且可由nnpfc_mode_idc值等于2的另一NNPFC SEI提供nnpfc_mode_idc值等于2的先前NNPFC SEI的更新。即,在一个示例中,根据本文的技术,nnpfc_purpose_and_formatting_flag语义中的以下文本:
当当前CLVS按解码顺序包含nnpfc_id值等于此SEI消息中nnpfc_id的相同值的先前神经网络后置滤波器特性SEI消息时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于1,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息的nnpfc_mode_idc值等于2,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
可替换为以下内容:
当当前CLVS按解码顺序包含先前神经网络后置滤波器特性SEI消息时,该消息具有与此SEI消息中nnpfc_id值相等的nnpfc_id的相同值,并且具有与此SEI消息中nnpfc_mode_idc值相等的nnpfc_mode_idc的相同值,并且nnpfc_mode_idc值等于NnPfcModeIdc,其中NnPfcModeIdc等于1或2时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_purpose_and_formatting_flag值等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
或者替换为以下内容:
当当前CLVS按解码顺序包含先前神经网络后置滤波器特性SEI消息时,该消息具有与此SEI消息中nnpfc_id值相等的nnpfc_id的相同值,并且先前的神经网络后置滤波器特性SEI消息的nnpfc_mode_idc值等于NnPfcModeIdc,其中NnPfcModeIdc等于1或2时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于NnPfcModeIdc,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
在一个示例中,根据本文的技术,如果nnpfc_mode_idc等于1,则可在带内向来自nnpfc_mode_idc等于1或2的先前NNPFC SEI的基本NN的更新提供具有新NN的新NNPFC SEI,或如果nnpfc_mode_idc等于2,则经由URI提供。在一个示例中,可由nnpfc_mode_idc等于1或2的另一NNPFC SEI提供具有nnpfc_mode_idc 1的先前NNPFC SEI的更新,并且可由具有nnpfc_mode_idc 2的另一NNPFC SEI提供nnpfc_mode_idc等于1或2的先前NNPFC SEI的更新。即,在一个示例中,根据本文的技术,nnpfc_purpose_and_formatting_flag语义中的以下文本:
当当前CLVS按解码顺序包含nnpfc_id值等于此SEI消息中nnpfc_id的相同值的先前神经网络后置滤波器特性SEI消息时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于1,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息的nnpfc_mode_idc值等于2,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
可替换为以下内容:
当当前CLVS按解码顺序包含先前神经网络后置滤波器特性SEI消息时,该消息具有与此SEI消息中nnpfc_id值相等的nnpfc_id的相同值,并且先前神经网络后置滤波器特性SEI消息的nnpfc_mode_idc值等于1或2时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc等于1或2,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
在另一个示例中,根据本文的技术,nnpfc_purpose_and_formatting_flag语义中的以下文本:
当当前CLVS按解码顺序包含nnpfc_id值等于此SEI消息中nnpfc_id的相同值的先前神经网络后置滤波器特性SEI消息时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于1,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息的nnpfc_mode_idc值等于2,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
可替换为以下内容:
当当前CLVS按解码顺序包含nnpfc_id值等于此SEI消息中nnpfc_id的相同值的先前神经网络后置滤波器特性SEI消息时,以下条件中的至少一者应适用:
-此SEI消息的nnpfc_mode_idc值等于1,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息的nnpfc_mode_idc值等于2,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息的nnpfc_mode_idc值等于0,并且nnpfc_purpose_and_formatting_flag等于0,以便提供神经网络更新。
-此SEI消息具有与先前神经网络后置滤波器特性SEI消息相同的内容。
应当指出的是,尽管上述描述使用0、1和2的特定值来指示这些模式,但一般来讲,可使用一些其他值来指示这些模式。
此外,对于表18A和表18B,语义可基于如上提供的语义并且基于语法元素nnpfc_out_order_idc的以下语义:
nnpfc_out_order_idc指示从后处理滤波器产生的样本的输出顺序。表15包含nnpfc_out_order_idc值的信息性描述。在表16中指定了在0至3的范围内(包括端值)的nnpfc_out_order_idc的语义,其指定了用于针对nnpfc_out_order_idc的不同值根据输出张量outputTensor导出经滤波的输出样本阵列FilteredYPic、FilteredCbPic和FilteredCrPic中的样本值的过程,以及指定输入张量中所包括的样本块的左上样本位置的给定垂直样本坐标cTop和水平样本坐标cLeft。当nnpfc_purpose等于2或4时,nnpfc_out_order_idc应不等于3。nnpfc_out_order_idc的值应在0至255的范围内(包括端值)。nnpfc_out_order_idc的大于3的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_out_order_idc的保留值的SEI消息。
用于经裁剪解码输出图片picA的基本后处理滤波器是按解码顺序由具有CLVS内的特定nnpfc_id值的第一个神经网络后置滤波器特性SEI消息标识的滤波器。
如果存在具有相同nnpfc_id值、nnpfc_mode_idc等于1或2、具有与定义基本后处理滤波器的神经网络后置滤波器特性SEI消息不同的内容并且与图片picA有关的另一神经网络后置滤波器特性SEI消息,则通过解码神经网络后置滤波器特性SEI消息中的ISO/IEC15938-17比特流以获得后处理滤波器PostProcessingFilter()来更新基本后处理滤波器。否则,后处理滤波器PostProcessingFilter()被指定为与基本后处理滤波器相同。
以下过程用于利用后处理滤波器PostProcessingFilter()对经裁剪解码输出图片进行滤波以产生经滤波图片,其中分别包含Y、Cb、Cr样本阵列FilteredYPic、FilteredCbPic、FilteredCrPic,如nnpfc_out_order_idc所指示。
应当指出的是,上文nnpfc_out_order_idc的示例性语义允许利用具有相同nnpfc_id值并且nnpfc_mode_idc等于1或2的新NNPFC SEI更新来自先前NNPFC SEI的基本后置滤波器。
在一个示例中,根据本文的技术,可提供nnpfc_out_order_idc的语义,其允许利用具有相同nnpfc_id值并且nnpfc_mode_idc等于1或2的新NNPFC SEI更新来自先前NNPFCSEI的基本后置滤波器,如果其具有不同内容,则其中仅更新相同类型的nnpfc_mode_idc值。即,在一个示例中,根据本文的技术,nnpfc_out_order_idc语义中的以下文本:
如果存在具有相同nnpfc_id值、nnpfc_mode_idc等于1或2、具有与定义基本后处理滤波器的神经网络后置滤波器特性SEI消息不同的内容并且与图片picA有关的另一神经网络后置滤波器特性SEI消息,则通过解码神经网络后置滤波器特性SEI消息中的ISO/IEC15938-17比特流以获得后处理滤波器PostProcessingFilter()来更新基本后处理滤波器。否则,后处理滤波器PostProcessingFilter()被指定为与基本后处理滤波器相同。
可替换为以下内容:
如果存在另一神经网络后置滤波器特性SEI消息,该消息具有相同nnpfc_id值,具有与此SEI消息中nnpfc_mode_idc值相等的nnpfc_mode_idc值,并且
nnpfc_mode_idc等于1或2、具有与定义基本后处理滤波器的神经网络后置滤波器特性SEI消息不同的内容并且与图片picA有关,则通过解码神经网络后置滤波器特性SEI消息中的ISO/IEC 15938-17比特流以获得后处理滤波器PostProcessingFilter()来更新基本后处理滤波器。否则,后处理滤波器PostProcessingFilter()被指定为与基本后处理滤波器相同。
或者可替换为以下内容:
如果存在具有相同nnpfc_id值、具有nnpfc_mode_idc等于0或1或2、具有与定义基本后处理滤波器的神经网络后置滤波器特性SEI消息不同的内容并且与图片picA有关的另一神经网络后置滤波器特性SEI消息,则通过解码神经网络后置滤波器特性SEI消息中的ISO/IEC 15938-17比特流以获得后处理滤波器PostProcessingFilter()来更新基本后处理滤波器。否则,后处理滤波器PostProcessingFilter()被指定为与基本后处理滤波器相同。
在一个示例中,根据本文的技术,可提供nnpfc_out_order_idc的语义,其允许利用具有相同nnpfc_id值并且nnpfc_mode_idc等于1或2的新NNPFC SEI更新来自先前NNPFCSEI的基本后置滤波器,如果其具有不同内容,则其中仅更新等于1或2的先前相同nnpfc_mode_idc值。即,在一个示例中,根据本文的技术,nnpfc_out_order_idc语义中的以下文本:
如果存在具有相同nnpfc_id值、nnpfc_mode_idc等于1或2、具有与定义基本后处理滤波器的神经网络后置滤波器特性SEI消息不同的内容并且与图片picA有关的另一神经网络后置滤波器特性SEI消息,则通过解码神经网络后置滤波器特性SEI消息中的ISO/IEC15938-17比特流以获得后处理滤波器PostProcessingFilter()来更新基本后处理滤波器。否则,后处理滤波器PostProcessingFilter()被指定为与基本后处理滤波器相同。
可替换为以下内容:
如果存在具有相同nnpfc_id值、nnpfc_mode_idc等于1或2、具有与定义具有nnpfc_mode_idc等于1或2的基本后处理滤波器的神经网络后置滤波器特性SEI消息不同的内容并且与图片picA有关的另一神经网络后置滤波器特性SEI消息,则通过解码神经网络后置滤波器特性SEI消息中的ISO/IEC 15938-17比特流以获得后处理滤波器PostProcessingFilter()来更新基本后处理滤波器。否则,后处理滤波器PostProcessingFilter()被指定为与基本后处理滤波器相同。
此外,根据本文的技术,在一些示例中,nnpfc_purpose_and_formatting_flag和nnpfc_out_order_idc语义中的文本“nnpfc_mode_idc等于1或2”可替换为“nnpfc_mode_idc等于0或1或2”。在这种情况下,基本上,这些模式中的每个模式的含义如下:
nnpfc_mode_idc等于0意味着神经网络信息由外部方式提供的模式,即该数据不在SEI消息的有效载荷中。
nnpfc_mode_idc等于1意味着神经网络被包括在带内(即,在SEI消息的有效载荷中)的模式。
nnpfc_mode_idc等于2意味着经由URI提供神经网络数据的模式,即,该数据不在SEI消息的有效载荷中。
如上所述,JVET-S2007描述了含注册用户数据的SEI消息和含未注册用户数据的SEI消息。在一个示例中,根据本文的技术,可使用嵌入在神经网络后置滤波器特性SEI消息内的含注册用户数据的SEI消息的语法元素来发送信号通知神经网络后置滤波器数据信息。表19示出了根据本文的技术的示例性神经网络后置滤波器特性SEI消息的语法。
/>
表19
对于表19,语义可基于如上提供的语义并且基于语法元素nnpfc_mode_idc和nnpfc_t35_payload_size_minus2的以下语义:
nnpfc_mode_idc等于0指定了与nnpfc_id值相关联的后处理滤波器由本说明书中未指定的外部方式确定。
nnpfc_mode_idc等于1指定了与nnpfc_id值相关联的后处理滤波器是由包含在此SEI消息中的ISO/IEC 15938-17比特流表示的神经网络。
nnpfc_mode_idc等于2指定了与nnpfc_id值相关联的后处理滤波器是由指定标签统一资源定位符(URI)(nnpfc_uri_tag[i])和神经网络信息URI(nnpfc_uri[i])标识的神经网络。
nnpfc_mode_idc等于3指定了与nnpfc_id值相关联的后处理滤波器是具有在此SEI消息中的user_data_registered_itu_t_t35语法结构中指定的信息的神经网络。
nnpfc_mode_idc的值应在0至255的范围内(包括端值)。nnpfc_mode_idc的大于3的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_mode_idc的保留值的SEI消息。
nnpfc_t35_payload_size_minus2加2指定了按紧接其后的建议书ITU-T T.35SEI消息注册的用户数据中数据的有效载荷大小。
应当指出的是,在以上示例中,尽管语法元素nnpfc_t35_payload_size_minus2是用minus2编码进行编码的,但在其他示例中,它可以作为以下中的一者(或用一些其他负编码或正编码)发送信号通知:
nnpfc_t35_payload_size_minus1 plus1指定了按紧接其后的建议书ITU-TT.35SEI消息注册的用户数据中数据的有效载荷大小。
nnpfc_t35_payload_size指定了按紧接其后的建议书ITU-T T.35SEI消息注册的用户数据中数据的有效载荷大小。
在一个示例中,根据本文的技术,可使用嵌入在神经网络后置滤波器特性SEI消息内的含未注册用户数据的SEI消息的语法元素来发送信号通知神经网络后置滤波器数据信息。表20示出了根据本文的技术的示例性神经网络后置滤波器特性SEI消息的语法。
/>
/>
表20
对于表20,语义可基于如上提供的语义并且基于语法元素nnpfc_mode_idc和nnpfc_user_data_unregistered_payload_size_minus16的以下语义:
nnpfc_mode_idc等于0指定了与nnpfc_id值相关联的后处理滤波器由本说明书中未指定的外部方式确定。
nnpfc_mode_idc等于1指定了与nnpfc_id值相关联的后处理滤波器是由包含在此SEI消息中的ISO/IEC 15938-17比特流表示的神经网络。
nnpfc_mode_idc等于2指定了与nnpfc_id值相关联的后处理滤波器是由指定标签统一资源定位符(URI)(nnpfc_uri_tag[i])和神经网络信息URI(nnpfc_uri[i])标识的神经网络。
nnpfc_mode_idc等于3指定了与nnpfc_id值相关联的后处理滤波器是具有在此SEI消息中的user_data_unregistered语法结构中指定的信息的神经网络。
nnpfc_mode_idc的值应在0至255的范围内(包括端值)。nnpfc_mode_idc的大于3的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_mode_idc的保留值的SEI消息。
nnpfc_user_data_unregistered_payload_size_minus16 plus16指定了紧接其后的含未注册用户数据的SEI消息中数据的有效载荷大小。
应当指出的是,尽管在以上示例中,语法元素nnpfc_user_data_unregistered_payload_size_minus16是用minus2编码进行编码的,但在其他示例中,它可以作为以下中的一者(或用一些其他负编码或正编码)发送信号通知:
nnpfc_user_data_unregistered_payload_size指定了紧接其后的含未注册用户数据的SEI消息中数据的有效载荷大小。
nnpfc_user_data_unregistered_payload_size_minus15 plus15指定了紧接其后的含未注册用户数据的SEI消息中数据的有效载荷大小。
nnpfc_user_data_unregistered_payload_size_minus1 plus11指定了紧接其后的含未注册用户数据的SEI消息中数据的有效载荷大小。
在一个示例中,根据本文的技术,当神经网络后置滤波器特性SEI消息发送信号通知等于3的nnpfc_mode_idc时,后续SEI消息(在一个示例中,在相同PU内)可包括含注册用户数据的SEI消息,该消息包括神经网络后置滤波器信息。在这种情况下,在一个示例中,神经网络后置滤波器特性SEI消息的语法可如上文表8或表18A和表18B中所示,语义可基于如上提供的语义并且基于语法元素nnpfc_mode_idc的以下语义:
nnpfc_mode_idc等于0指定了与nnpfc_id值相关联的后处理滤波器由本说明书中未指定的外部方式确定。
nnpfc_mode_idc等于1指定了与nnpfc_id值相关联的后处理滤波器是由包含在此SEI消息中的ISO/IEC 15938-17比特流表示的神经网络。
nnpfc_mode_idc等于2指定了与nnpfc_id值相关联的后处理滤波器是由指定标签统一资源定位符(URI)(nnpfc_uri_tag[i])和神经网络信息URI(nnpfc_uri[i])标识的神经网络。
nnpfc_mode_idc等于3指定了与nnpfc_id值相关联的后处理滤波器是具有按随后的建议书ITU-T T.35SEI消息注册的用户数据中指定的信息的神经网络。nnpfc_mode_idc的值应在0至255的范围内(包括端值)。nnpfc_mode_idc的大于3的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_mode_idc的保留值的SEI消息。
应当指出的是,在这种情况下,在一个示例中,可能需要当nnpfc_mode_idc等于3时,nnpfc_purpose_and_formatting_flag等于1。因此,在这种情况下,神经网络后置滤波器特性SEI消息中的所有语法元素都应存在,这些语法元素提供了关于包含在按建议书ITU-T T.35SEI消息注册的后续用户数据中的神经网络数据的信息。
在一个示例中,根据本文的技术,当神经网络后置滤波器特性SEI消息发送信号通知等于3的nnpfc_mode_idc时,后续SEI消息(在一个示例中,在相同PU内)可包括含未注册用户数据的SEI消息,该消息包括神经网络后置滤波器信息。在这种情况下,在一个示例中,神经网络后置滤波器特性SEI消息的语法可如上文表8或表18A和表18B中所示,语义可基于如上提供的语义并且基于语法元素nnpfc_mode_idc的以下语义:
nnpfc_mode_idc等于0指定了与nnpfc_id值相关联的后处理滤波器由本说明书中未指定的外部方式确定。
nnpfc_mode_idc等于1指定了与nnpfc_id值相关联的后处理滤波器是由包含在此SEI消息中的ISO/IEC 15938-17比特流表示的神经网络。
nnpfc_mode_idc等于2指定了与nnpfc_id值相关联的后处理滤波器是由指定标签统一资源定位符(URI)(nnpfc_uri_tag[i])和神经网络信息URI(nnpfc_uri[i])标识的神经网络。
nnpfc_mode_idc等于3指定了与nnpfc_id值相关联的后处理滤波器是随后的含未注册用户数据的SEI消息中指定的信息的神经网络。
nnpfc_mode_idc的值应在0至255的范围内(包括端值)。nnpfc_mode_idc的大于3的值被保留以供ITU-T|ISO/IEC将来规范使用,并且不应存在于符合本说明书的此版本的比特流中。符合本说明书的此版本的解码器应忽略包含nnpfc_mode_idc的保留值的SEI消息
应当指出的是,在这种情况下,在一个示例中,可能需要当nnpfc_mode_idc等于3时,nnpfc_purpose_and_formatting_flag等于1。因此,在这种情况下,神经网络后置滤波器特性SEI消息中的所有语法元素都应存在,这些语法元素提供了关于包含在后续含未注册用户数据的SEI消息中的神经网络数据的信息。
应当指出的是,在其他示例中,可以为相应含注册用户数据的SEI消息和含未注册用户数据的SEI消息定义两个单独的新nnpfc_mode_idc值。例如,nnpfc_mode_idc等于3可指定具有由按建议书ITU-T T.35注册的用户数据指定的神经网络后置滤波器特性SEI消息,并且nnpfc_mode_idc值等于4可指定具有由未注册的用户数据指定的神经网络后置滤波器特性SEI消息。应当指出的是,虽然上文大体描述了值3及/或4,但某一其他值也可用于nnpfc_mode_idc以描述上文提供的模式。
如上所述,JVET-AA2006中的神经网络后置滤波器激活SEI消息仅包括语法元素nnpfa_id。神经网络后置滤波的空间可由nnpfc_id和nnpfc_mode_idc两者定义和/或标识。因此,根据本文的技术,每个nnpfc_mode_idc都应具有其自身的nnpfc_id空间。这允许定义具有特定nnpfc_id值的神经网络后置滤波器特性消息,其可以由具有相同nnpfc_id值的另一神经网络后置滤波器特性消息仅在它们使用相同nnpfc_mode_idc时来更新。此类更新是有用的,因为在一些系统中,仅基于带内神经网络的神经网络后置滤波器特性消息(即,nnpfc_mode_idc等于1)或仅基于URI的神经网络或者滤波器特性消息(即,nnpfc_mode_idc等于2)可以被支持或为优选的。因此,在神经网络后置滤波器激活消息中发送信号通知新语法元素nnpfa_mode_idc可以允许更好地使用神经网络后置滤波器特性消息。表21示出了根据本文的技术的示例性神经网络后置滤波器激活SEI消息的语法。
表21
对于表21,在一个示例中,语义可以基于以下内容:
此SEI消息指定了可用于当前图片的后处理滤波器的神经网络后处理滤波器。
该神经网络后处理滤波器激活SEI消息仅对当前图片有效。
注意—例如,当后处理滤波器旨在用于不同的目的或对不同的颜色分量进行滤波时,对于相同图片可能存在若干神经网络后处理滤波器激活SEI消息。
nnpfa_id和nnpfa_mode_idc指定了由与当前图片有关并且具有等于nnfpa_id的nnpfc_id和等于nnpfa_mode_idc的nnpfc_mode_idc的一个或多个神经网络后处理滤波器特性SEI消息所指定的神经网络后处理滤波器可以用于对当前图片进行后处理滤波。
以此方式,视频编码器500表示一种设备的示例,该设备被配置为:发送信号通知神经网络后置滤波器特性消息;在神经网络后置滤波器特性消息中发送信号通知第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;在神经网络后置滤波器特性消息中发送信号通知第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;以及在神经网络后置滤波器特性消息中发送信号通知第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值,其中该第二语法元素的值和该第三语法元素的值指示该神经网络后置滤波器特性消息提供了神经网络更新。
再次参考图1,接口108可以包括被配置为接收由数据封装器107生成的数据并且将数据传输和/或存储到通信介质的任何设备。接口108可以包括网络接口卡诸如以太网卡,并且可以包括光收发器、射频收发器或者可以发送和/或接收信息的任何其他类型的设备。此外,接口108可以包括计算机系统接口,该计算机系统接口可以使文件能够存储在存储设备上。例如,接口108可以包括支持外围部件互连(PCI)和高速外围部件互连(PCIe)总线协议、专用总线协议、通用串行总线(USB)协议、I2C的芯片组、或可用于互连对等设备的任何其他逻辑和物理结构。
再次参考图1,目标设备120包括接口122、数据解封装器123、视频解码器124和显示器126。接口122可以包括被配置为从通信介质接收数据的任何设备。接口122可以包括网络接口卡诸如以太网卡,并且可以包括光收发器、射频收发器或者可以接收和/或发送信息的任何其他类型的设备。此外,接口122可以包括允许从存储设备检索兼容视频比特流的计算机系统接口。例如,接口122可以包括支持PCI和PCIe总线协议、专用总线协议、USB协议、I2C的芯片组,或者可用于互连对等设备的任何其他逻辑和物理结构。数据解封装器123可被配置为接收和解析本文所述的任何示例语法结构。
视频解码器124可以包括被配置为接收比特流(例如,子比特流提取)和/或其可接受变体且从其再现视频数据的任何设备。显示器126可以包括被配置为显示视频数据的任何设备。显示器126可以包括各种显示设备诸如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另外的类型的显示器中的一种。显示器126可以包括高清显示器或超高清显示器。应当指出的是,尽管在图1所示的示例中,视频解码器124被描述为将数据输出到显示器126,但视频解码器124可以被配置为将视频数据输出到各种类型的设备和/或其子部件。例如,视频解码器124可被配置为将视频数据输出到任何通信介质,如本文所述。
图6是示出根据本公开的一种或多种技术的可被配置为对视频数据进行解码的视频解码器的示例的框图(例如,用于上述参考图片列表构建的解码过程)。在一个示例中,视频解码器600可被配置为对变换数据进行解码并基于解码的变换数据从变换系数重构残差数据。视频解码器600可被配置为执行帧内预测解码和帧间预测解码,并且因此可被称为混合解码器。视频解码器600可被配置为解析上面在表1至表21中所述的语法元素的任何组合。视频解码器600可以基于或根据上述过程并且还基于表1至表21中的解析值来解码视频。
在图6所示的示例中,视频解码器600包括熵解码单元602、逆量化单元604、逆变换系数处理单元606、帧内预测处理单元608、帧间预测处理单元610、求和器612、后置滤波器单元614和参考缓冲器616。视频解码器600可被配置为以与视频编码系统一致的方式对视频数据进行解码。应当指出的是,尽管示出的示例性视频解码器600具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频解码器600和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频解码器600的功能。
如图6所示,熵解码单元602接收熵编码的比特流。熵解码单元602可被配置为根据与熵编码过程互逆的过程从比特流中解码语法元素和量化系数。熵解码单元602可被配置为根据上文所述的任何熵编码技术来执行熵解码。熵解码单元602可以与视频编码标准一致的方式确定编码的比特流中的语法元素的值。如图6所示,熵解码单元602可以从比特流确定量化参数、量化系数值、变换数据和预测数据。在如图6所示的示例中,逆量化单元604和逆变换系数处理单元606从熵解码单元602接收量化系数值,并输出重构残差数据。
再次参见图6,可以将重构残差数据提供给求和器612。求和器612可以将重构残差数据添加到预测视频块并且生成重构视频数据。可根据预测视频技术(即帧内预测和帧间预测)确定预测视频块。帧内预测处理单元608可被配置为接收帧内预测语法元素并且从参考缓冲器616检索预测视频块。参考缓冲器616可以包括被配置为存储一个或多个视频数据帧的存储器设备。帧内预测语法元素可识别帧内预测模式,诸如上述的帧内预测模式。帧间预测处理单元610可接收帧间预测语法元素并生成运动矢量,以识别存储在参考缓冲器616中的一个或多个参考帧中的预测块。帧间预测处理单元610可以生成运动补偿块,可能基于内插滤波器执行内插。用于具有子像素精度的运动估计的内插滤波器的标识符可以包括在语法元素中。帧间预测处理单元610可以使用内插滤波器来计算参考块的子整数像素的内插值。后置滤波器单元614可被配置为对重构视频数据执行滤波。例如,后置滤波器单元614可被配置为执行解块和/或样本自适应偏移(SAO)滤波,例如基于在比特流中指定的参数。此外,应当指出的是,在一些示例中,后置滤波器单元614可被配置为执行专用的任意滤波(例如,视觉增强,诸如蚊状噪声消除)。如图6所示,视频解码器600可以输出重构的视频块。以此方式,视频解码器600表示一种设备的示例,该设备被配置为:接收神经网络后置滤波器特性消息;解析来自神经网络后置滤波器特性消息的第一语法元素,该第一语法元素具有用于标识后处理滤波器的标识号;解析来自神经网络后置滤波器特性消息的第二语法元素,该第二语法元素具有指定与该标识号相关联的后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;解析来自神经网络后置滤波器特性消息的第三语法元素,该第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于该神经网络后置滤波器特性消息中的值;以及基于该第二语法元素的值和该第三语法元素的值确定该神经网络后置滤波器特性消息提供了神经网络更新。
在一个或多个示例中,所述功能可以通过硬件、软件、固件或它们的任何组合来实现。如果以软件实现,则可将功能作为一个或多个指令或代码存储在计算机可读介质上或经由计算机可读介质上传输,并且由基于硬件的处理单元执行。计算机可读介质可以包括对应于有形介质诸如数据存储介质的计算机可读存储介质,或者包括例如根据通信协议促进计算机程序从一个地方传输到另一个地方的任何介质的传播介质。这样,计算机可读介质通常可对应于:(1)非暂态的有形计算机可读存储介质,或者(2)通信介质诸如信号或载波。数据存储介质可以是可以由一个或多个计算机或一个或多个处理器访问以检索用于实现本公开中所述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可以包括计算机可读介质。
以举例而非限制的方式,此类计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储设备、磁盘存储设备或其他磁存储设备、闪存存储器,或者可用于存储指令或数据结构形式的所需程序代码并且可由计算机访问的任何其他介质。而且,任何连接都被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线路(DSL)或无线技术诸如红外线、无线电和微波从网站、服务器或其他远程源传输指令,则同轴电缆、光纤电缆、双绞线、DSL或无线技术诸如红外线、无线电和微波都包含在介质的定义中。然而,应当理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其他暂态介质,而是针对非暂态有形存储介质。如本文所用,磁盘和光盘包括压缩光盘(CD)、激光盘、光学光盘、数字通用光盘(DVD)、软磁盘及Blu-ray光盘,其中磁盘通常以磁性方式复制数据,而光盘则利用激光以光学方式复制数据。上述的组合也应该包括在计算机可读介质的范围内。
可以由一个或多个处理器诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其他等效集成或离散逻辑电路执行指令。因此,如本文所用的术语“处理器”可以指任何前述结构或适用于实现本文所描述的技术的任何其他结构。此外,在一些方面中,可以在被配置用于编码和解码的专用硬件和/或软件模块内提供本文所述的功能,或者将其结合到组合编解码器中。而且,这些技术可以完全在一个或多个电路或逻辑元件中实现。
本公开的技术可以在各种设备或装置(包括无线手机、集成电路(IC)或一组IC(例如,芯片组))中实现。在本公开中描述了各种部件、模块或单元,以强调被配置为执行所公开的技术的设备的功能方面,但是不一定需要通过不同的硬件单元来实现。相反,如上所述,可以将各种单元组合在编解码器硬件单元中,或者通过互操作硬件单元包括如上所述的一个或多个处理器的集合,结合合适的软件和/或固件来提供各种单元。
此外,每个上述实施方案中所使用的基站设备和终端设备的每个功能块或各种特征可通过电路(通常为一个集成电路或多个集成电路)实现或执行。被设计为执行本说明书中所述的功能的电路可包括通用处理器、数字信号处理器(DSP)、专用或通用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑设备、分立栅极或晶体管逻辑器或分立硬件部件或它们的组合。通用处理器可以是微处理器,或另选地,该处理器可以是常规处理器、控制器、微控制器或状态机。通用处理器或上述每种电路可由数字电路进行配置,或可由模拟电路进行配置。此外,当由于半导体技术的进步而出现制成取代当前集成电路的集成电路的技术时,也能够使用通过该技术生产的集成电路。
已经描述了各种示例。这些示例和其他示例在以下权利要求的范围内。

Claims (9)

1.一种更新视频数据的神经网络环路后滤波器信息的方法,所述方法包括:
接收神经网络后置滤波器特性消息;
解析来自所述神经网络后置滤波器特性消息的第一语法元素,所述第一语法元素具有用于标识后处理滤波器的标识号;
解析来自所述神经网络后置滤波器特性消息的第二语法元素,所述第二语法元素具有指定与所述标识号相关联的所述后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;
解析来自所述神经网络后置滤波器特性消息的第三语法元素,所述第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于所述神经网络后置滤波器特性消息中的值;以及
基于所述第二语法元素的所述值和所述第三语法元素的所述值,确定所述神经网络后置滤波器特性消息提供了神经网络更新。
2.一种包括一个或多个处理器的设备,所述一个或多个处理器被配置为:
接收神经网络后置滤波器特性消息;
解析来自所述神经网络后置滤波器特性消息的第一语法元素,所述第一语法元素具有用于标识后处理滤波器的标识号;
解析来自所述神经网络后置滤波器特性消息的第二语法元素,所述第二语法元素具有指定与所述标识号相关联的所述后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;
解析来自所述神经网络后置滤波器特性消息的第三语法元素,所述第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于所述神经网络后置滤波器特性消息中的值;以及
基于所述第二语法元素的所述值和所述第三语法元素的所述值,确定所述神经网络后置滤波器特性消息提供了神经网络更新。
3.根据权利要求2所述的设备,其中所述第二语法元素能够具有指示第四语法元素的值,所述第四语法元素指定包括在所述神经网络后置滤波器特性消息中的数据的有效载荷大小。
4.根据权利要求3所述的设备,其中所述数据包括含未注册用户数据的补充增强消息。
5.根据权利要求3所述的设备,其中所述数据包括含注册用户数据的补充增强消息。
6.根据权利要求2所述的设备,其中所述一个或多个处理器被进一步配置为:
接收神经网络后置滤波器激活消息;以及
解析来自所述神经网络后置滤波器激活消息的第四语法元素和第五语法元素,所述神经网络后置滤波器激活消息由与当前图片有关的所述神经网络后处理滤波器特性消息指定。
7.根据权利要求2所述的设备,其中所述设备包括视频解码器。
8.一种包括一个或多个处理器的设备,所述一个或多个处理器被配置为:
发送信号通知神经网络后置滤波器特性消息;
在所述神经网络后置滤波器特性消息中发送信号通知第一语法元素,所述第一语法元素具有用于标识后处理滤波器的标识号;
在所述神经网络后置滤波器特性消息中发送信号通知第二语法元素,所述第二语法元素具有指定与所述标识号相关联的所述后处理滤波器是由指定标签统一资源定位符(URI)和神经网络信息URI标识的神经网络的值;以及
在所述神经网络后置滤波器特性消息中发送信号通知第三语法元素,所述第三语法元素具有指定与滤波器目的、输入格式、输出格式和复杂性相关的语法元素不存在于所述神经网络后置滤波器特性消息中的值,
其中所述第二语法元素的所述值和所述第三语法元素的所述值指示所述神经网络后置滤波器特性消息提供了神经网络更新。
9.根据权利要求8所述的设备,其中所述设备包括视频编码器。
CN202310093949.XA 2022-10-06 2023-02-03 更新视频数据的神经网络环路后滤波器信息的方法和设备 Pending CN117857789A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/961,375 US20240121443A1 (en) 2022-10-06 2022-10-06 Systems and methods for signaling neural network post-filter information updates in video coding
US17/961375 2022-10-06

Publications (1)

Publication Number Publication Date
CN117857789A true CN117857789A (zh) 2024-04-09

Family

ID=85172389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310093949.XA Pending CN117857789A (zh) 2022-10-06 2023-02-03 更新视频数据的神经网络环路后滤波器信息的方法和设备

Country Status (6)

Country Link
US (1) US20240121443A1 (zh)
EP (1) EP4351134A1 (zh)
JP (1) JP2024055731A (zh)
KR (1) KR20240048460A (zh)
CN (1) CN117857789A (zh)
AU (1) AU2023200535A1 (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190052893A (ko) * 2017-11-09 2019-05-17 삼성전자주식회사 뉴럴 네트워크 연산을 위한 전처리 장치 및 방법
US10999606B2 (en) * 2019-01-08 2021-05-04 Intel Corporation Method and system of neural network loop filtering for video coding
US11265580B2 (en) * 2019-03-22 2022-03-01 Tencent America LLC Supplemental enhancement information messages for neural network based video post processing
CA3210305A1 (en) * 2021-02-03 2022-08-11 Dexcom, Inc. Systems and methods for risk based insulin delivery conversion
US20220329837A1 (en) * 2021-04-06 2022-10-13 Lemon Inc. Neural Network-Based Post Filter For Video Coding
US11979565B2 (en) * 2021-05-27 2024-05-07 Tencent America LLC Content-adaptive online training method and apparatus for post-filtering
US20230112309A1 (en) * 2021-09-30 2023-04-13 Nokia Technologies Oy High-level syntax for signaling neural networks within a media bitstream

Also Published As

Publication number Publication date
EP4351134A1 (en) 2024-04-10
US20240121443A1 (en) 2024-04-11
AU2023200535A1 (en) 2024-05-02
JP2024055731A (ja) 2024-04-18
KR20240048460A (ko) 2024-04-15

Similar Documents

Publication Publication Date Title
US11611778B2 (en) Systems and methods for signaling general constraint information in video coding
US20220394301A1 (en) Systems and methods for signaling picture information in video coding
US11778236B2 (en) Device, and method of decoding video data
US11695963B2 (en) Systems and methods for signaling scaling window information in video coding
US20220321919A1 (en) Systems and methods for signaling neural network-based in-loop filter parameter information in video coding
US11856236B2 (en) Systems and methods for signaling sequence parameter information in video coding
CN114270864A (zh) 用于在视频编码中发送信号通知图片信息的系统和方法
US20230085937A1 (en) Systems and methods for signaling picture information in a slice header in video coding
US20230007291A1 (en) Systems and methods for signaling temporal sublayer information in video coding
US11889118B2 (en) Systems and methods for signaling types of pictures and associated information in video coding
US20230068404A1 (en) Systems and methods for signaling subpicture information in video coding
CN113632489A (zh) 在视频编码中用于发送信号通知图块组信息的系统和方法
US20230016439A1 (en) Systems and methods for signaling picture timing and decoding unit information in video coding
US20230026475A1 (en) Systems and methods for signaling reference picture lists in video coding
US20230040376A1 (en) Systems and methods for signaling picture output resolution in video coding
US20230048070A1 (en) Systems and methods for signaling output layer set information in video coding
CN114080804A (zh) 用于在视频编码中发送信号通知解码图片缓冲器信息的系统和方法
US20240121443A1 (en) Systems and methods for signaling neural network post-filter information updates in video coding
US20230134652A1 (en) Systems and methods for applying deblocking filters in video coding
US20240089510A1 (en) Systems and methods for signaling neural network post-filter characteristics information in video coding
US20240129535A1 (en) Systems and methods for signaling neural network post-filter frame rate upsampling information in video coding
US11997297B2 (en) Systems and methods for signaling tile group information in video coding
CN117651132A (zh) 发送信号通知神经网络环路后滤波器信息的方法和设备
CN117917892A (zh) 在视频编码中发送信号通知下采样偏移信息的系统和方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication