CN116170582A - 一种视频数据处理方法、装置、计算机设备以及存储介质 - Google Patents

一种视频数据处理方法、装置、计算机设备以及存储介质 Download PDF

Info

Publication number
CN116170582A
CN116170582A CN202310159839.9A CN202310159839A CN116170582A CN 116170582 A CN116170582 A CN 116170582A CN 202310159839 A CN202310159839 A CN 202310159839A CN 116170582 A CN116170582 A CN 116170582A
Authority
CN
China
Prior art keywords
unit
coding
sub
target
reference frame
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
CN202310159839.9A
Other languages
English (en)
Inventor
张佳
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310159839.9A priority Critical patent/CN116170582A/zh
Publication of CN116170582A publication Critical patent/CN116170582A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/103Selection of coding mode or of prediction mode
    • 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/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/187Methods 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 a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请实施例提供了一种视频数据处理方法、装置、计算机设备以及存储介质,应用于云技术、车载场景、音视频编解码等场景,方法包括:对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式;从S个层级划分方式中获取待编码单元的最佳编码方式,获取最佳编码方式中的层级子编码单元;若层级子编码单元的编码结果满足运动相似条件,则根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合;候选参考帧集合用于为待编码单元遍历目标参考帧;目标参考帧用于对待编码单元进行编码处理。采用本申请,可以同时兼顾目标视频帧的编码效果和编码效率。

Description

一种视频数据处理方法、装置、计算机设备以及存储介质
技术领域
本申请涉及互联网技术领域,尤其涉及一种视频数据处理方法、装置、计算机设备以及存储介质。
背景技术
数据传输场景(例如,直播场景)需要对待传输的视频数据进行编码处理,得到视频数据对应的视频码流,以提高传输效率。可以理解的是,在对视频数据进行编码处理的过程中,需要从视频数据中获取待进行编码处理的目标视频帧的待编码单元,进而对待编码单元进行帧间预测或帧内预测,其中,在帧间预测过程中,帧间预测模式需要使用参考帧选择算法在视频数据中确定用于对待编码单元进行编码处理的参考帧。
目前的参考帧选择算法可以获取编码顺序在目标视频帧之前的视频帧。一种参考帧选择算法可以确定这些视频帧与目标视频帧之间的距离、以及这些视频帧自身的编码质量,进而对距离和编码质量进行叠加,将叠加所得到的结果按照从大到小排序,并将从排序后的结果中选取的最大的值对应的视频帧,作为目标视频帧中的待编码单元对应的目标参考帧。然而,该参考帧选择算法仅仅考虑了目标参考帧与目标视频帧之间的距离、以及目标参考帧的编码质量,并没有考虑目标参考帧与目标视频帧之间的内容相似度,在目标参考帧到目标视频帧的图像内容变化剧烈时,目标参考帧中的内容和目标视频帧中的内容差异较大,基于内容差异较大的目标参考帧对目标视频帧进行编码处理,会明显降低目标视频帧的编码效果。另一种参考帧选择算法可以对这些视频帧进行遍历,从而实现将每种可能的参考帧组合都进行一遍编码,以找到最佳的参考帧。然而,若编码顺序在目标视频帧之前的视频帧的数量比较多,则该参考帧选择算法在对这些视频帧进行遍历的过程中,需要消耗大量的时间,从而降低目标视频帧的编码效率。因此,目前的参考帧选择算法无法对编码效果和编码效率进行兼顾。
发明内容
本申请实施例提供一种视频数据处理方法、装置、计算机设备以及存储介质,可以同时兼顾目标视频帧的编码效果和编码效率。
本申请实施例一方面提供了一种视频数据处理方法,包括:
对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式;S为正整数;目标视频帧为视频数据中的视频帧;
从S个层级划分方式中获取待编码单元的最佳编码方式,获取最佳编码方式中的层级子编码单元;
若层级子编码单元的编码结果满足运动相似条件,则根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合;候选参考帧集合用于为待编码单元遍历目标参考帧;目标参考帧用于对待编码单元进行编码处理。
本申请实施例一方面提供了一种视频数据处理装置,包括:
划分模块,用于对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式;S为正整数;目标视频帧为视频数据中的视频帧;
获取模块,用于从S个层级划分方式中获取待编码单元的最佳编码方式,获取最佳编码方式中的层级子编码单元;
裁剪模块,用于若层级子编码单元的编码结果满足运动相似条件,则根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合;候选参考帧集合用于为待编码单元遍历目标参考帧;目标参考帧用于对待编码单元进行编码处理。
其中,划分模块包括:
划分单元,用于对目标视频帧中的待编码单元进行单元划分,得到待编码单元的S个单元划分方式;S个单元划分方式包括目标单元划分方式;目标单元划分方式包括待编码单元的N个划分子编码单元;N为大于1的整数;N个划分子编码单元包括目标划分子编码单元;
方式获取单元,用于获取目标划分子编码单元对应的子单元最终编码方式;
方式确定单元,用于将N个划分子编码单元分别对应的子单元最终编码方式,确定为待编码单元在目标单元划分方式下对应的层级划分方式。
其中,方式获取单元,具体用于若目标划分子编码单元满足单元划分条件,则对目标划分子编码单元进行递归层级划分,得到目标划分子编码单元的S个子单元层级划分方式;
方式获取单元,具体用于从S个子单元层级划分方式中获取目标划分子编码单元的子单元最佳编码方式,获取子单元最佳编码方式中的子单元层级子编码单元;
方式获取单元,具体用于若子单元层级子编码单元的子单元编码结果满足运动相似条件,则根据子单元层级子编码单元对针对目标划分子编码单元构建的子单元全量参考帧集合进行裁剪,生成目标划分子编码单元在不划分方式下对应的子单元候选参考帧集合;子单元候选参考帧集合用于为目标划分子编码单元遍历子单元目标参考帧;子单元目标参考帧用于对目标划分子编码单元进行编码处理;
方式获取单元,具体用于从子单元最佳编码方式和不划分方式中获取目标划分子编码单元对应的子单元最终编码方式。
其中,方式获取单元,具体用于获取目标划分子编码单元的子单元尺寸;
方式获取单元,具体用于若子单元尺寸大于或等于尺寸阈值,则确定目标划分子编码单元满足单元划分条件;
方式获取单元,具体用于若子单元尺寸小于尺寸阈值,则确定目标划分子编码单元不满足单元划分条件。
其中,方式获取单元,具体用于若目标划分子编码单元不满足单元划分条件,则将不划分方式确定为目标划分子编码单元对应的子单元最终编码方式。
其中,最佳编码方式包括待编码单元的M个划分子编码单元;M为大于1的整数;M个划分子编码单元包括辅助划分子编码单元;
获取模块包括:
第一确定单元,用于若辅助划分子编码单元不具有子编码单元,则将辅助划分子编码单元确定为最佳编码方式中的层级子编码单元;
第二确定单元,用于若辅助划分子编码单元具有子编码单元,则从辅助划分子编码单元中获取最佳编码方式中的层级子编码单元。
其中,候选参考帧集合包括前向候选参考帧集合和后向候选参考帧集合;全量参考帧集合包括前向全量参考帧集合和后向全量参考帧集合;
裁剪模块包括:
集合获取单元,用于从视频数据中获取针对待编码单元构建的前向全量参考帧集合和后向全量参考帧集合;
第一筛选单元,用于在前向全量参考帧集合中筛选层级子编码单元所使用的参考帧,若前向全量参考帧集合中存在层级子编码单元所使用的参考帧,则将在前向全量参考帧集合中筛选出的参考帧,确定为待编码单元在不划分方式下对应的前向候选参考帧集合;
第二筛选单元,用于在后向全量参考帧集合中筛选层级子编码单元所使用的参考帧,若后向全量参考帧集合中存在层级子编码单元所使用的参考帧,则将在后向全量参考帧集合中筛选出的参考帧,确定为待编码单元在不划分方式下对应的后向候选参考帧集合。
其中,集合获取单元,具体用于从视频数据中获取编码顺序早于目标视频帧的已编码视频帧;
集合获取单元,具体用于若已编码视频帧的播放顺序早于目标视频帧,则将播放顺序早于目标视频帧的已编码视频帧添加至针对待编码单元构建的前向全量参考帧集合;
集合获取单元,具体用于若已编码视频帧的播放顺序晚于目标视频帧,则将播放顺序晚于目标视频帧的已编码视频帧添加至针对待编码单元构建的后向全量参考帧集合。
其中,层级子编码单元的数量为P个;P为大于1的整数;P个层级子编码单元包括目标层级子编码单元;
装置还包括:
条件判断模块,用于获取目标层级子编码单元对应的帧间预测模式和帧间预测方向;
条件判断模块,用于若P个层级子编码单元分别对应的帧间预测模式均为平移帧间预测、且P个层级子编码单元分别对应的帧间预测方向均相同,则确定P个层级子编码单元的编码结果满足运动相似条件;
条件判断模块,用于若P个层级子编码单元中存在帧间预测模式不为平移帧间预测的层级子编码单元、或P个层级子编码单元分别对应的帧间预测方向不同,则确定P个层级子编码单元的编码结果不满足运动相似条件。
其中,条件判断模块,具体用于获取目标层级子编码单元对应的帧间预测方向;目标层级子编码单元对应的帧间预测方向包括前向预测、后向预测和双向预测;
条件判断模块,具体用于获取目标层级子编码单元中的每个像素分别对应的运动矢量;
条件判断模块,具体用于若目标层级子编码单元中的每个像素分别对应的运动矢量均相同,则将平移帧间预测确定为目标层级子编码单元对应的帧间预测模式;
条件判断模块,具体用于若目标层级子编码单元中存在运动矢量不同的像素,则将非平移帧间预测确定为目标层级子编码单元对应的帧间预测模式。
其中,装置还包括:
确定模块,用于若层级子编码单元的编码结果不满足运动相似条件,则获取针对待编码单元构建的全量参考帧集合,将全量参考帧集合确定为待编码单元在不划分方式下对应的候选参考帧集合。
其中,装置还包括:
参数比较模块,用于获取最佳编码方式的第一率失真参数和不划分方式的第二率失真参数;
参数比较模块,用于若第一率失真参数大于或等于第二率失真参数,则将不划分方式确定为待编码单元对应的最终编码方式;
参数比较模块,用于若第一率失真参数小于第二率失真参数,则将最佳编码方式确定为待编码单元对应的最终编码方式。
本申请实施例一方面提供了一种计算机设备,包括:处理器和存储器;
处理器与存储器相连,其中,存储器用于存储计算机程序,计算机程序被处理器执行时,使得该计算机设备执行本申请实施例提供的方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有该处理器的计算机设备执行本申请实施例提供的方法。
本申请实施例一方面提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行本申请实施例提供的方法。
由此可见,本申请实施例提出了一种快速参考帧选择算法,该快速参考帧选择算法可以充分考虑图像块(即待编码单元)的参考帧与子块(即层级子编码单元)的参考帧具有极高的相似性。同一个图像块进行不同划分会进行多次参考帧选择过程,若图像块中不同子块(即层级子编码单元)具有一致的运动轨迹(即层级子编码单元的编码结果满足运动相似条件),则图像块所覆盖的图像内容大概率是作为一个整体进行平移运动,因此,图像块的参考帧与子块(即层级子编码单元)的参考帧大概率相同,此时,根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,可以生成待编码单元在不划分方式下对应的候选参考帧集合(即使用待编码单元划分产生的层级子编码单元的参考帧选择结果对待编码单元的参考帧进行快速选择)。可以理解的是,通过本申请实施例所提供的快速参考帧选择算法,可以在所有视频帧中选择出融合有层级子编码单元所使用的参考帧的候选参考帧集合,因为候选参考帧集合中的参考帧是由层级子编码单元所确定的,所以候选参考帧集合中的参考帧与目标视频帧具有较高的内容相似度。这样,本申请实施例可以无需对已编码的视频帧(即全量参考帧集合中的视频帧)都进行遍历,而是对帧数更少的候选参考帧集合中的视频帧进行遍历,不仅减少了遍历耗时,而且在对内容相似度较高的参考帧所属的候选参考帧集合进行遍历时,可以在遍历结果中获取具有最佳编码效果的目标参考帧,从而可以同时兼顾目标视频帧的编码效果和编码效率(即在保证目标视频帧的编码效率的同时,提高目标视频帧的编码效果;在保证目标视频帧的编码效果的同时,提高目标视频帧的编码效率)。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构的结构示意图;
图2是本申请实施例提供的一种进行数据交互的场景示意图;
图3是本申请实施例提供的一种视频数据处理方法的流程示意图;
图4是本申请实施例提供的一种划分待编码单元的场景示意图;
图5是本申请实施例提供的一种获取参考帧的场景示意图;
图6是本申请实施例提供的一种不划分编码的流程示意图;
图7是本申请实施例提供的一种视频数据处理方法的流程示意图;
图8是本申请实施例提供的一种划分方式的场景示意图;
图9是本申请实施例提供的一种视频数据处理方法的流程示意图;
图10是本申请实施例提供的一种编码待编码单元的流程示意图;
图11是本申请实施例提供的一种视频数据处理装置的结构示意图;
图12是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
具体的,请参见图1,图1是本申请实施例提供的一种网络架构的结构示意图。如图1所示,该网络架构可以包括服务器2000和终端设备集群。其中,终端设备集群具体可以包括一个或者多个终端设备,这里将不对终端设备集群中的终端设备的数量进行限定。如图1所示,多个终端设备具体可以包括终端设备3000a、终端设备3000b、终端设备3000c、…、终端设备3000n;终端设备3000a、终端设备3000b、终端设备3000c、…、终端设备3000n可以分别与服务器2000通过有线或无线通信方式进行直接或间接地网络连接,以便于每个终端设备可以通过该网络连接与服务器2000之间进行数据交互。
其中,终端设备集群中的每个终端设备均可以包括:智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、智能家电(例如,智能电视)、可穿戴设备、车载终端、飞行器等具有数据处理功能的智能终端。应当理解,如图1所示的终端设备集群中的每个终端设备均可以安装有应用客户端,当该应用客户端运行于各终端设备中时,可以分别与上述服务器2000之间进行数据交互。其中,该应用客户端可以包括社交客户端、多媒体客户端(例如,视频客户端)、娱乐客户端(例如,游戏客户端)、教育客户端、直播客户端等具有视频编码功能的应用客户端。其中,该应用客户端可以为独立的客户端,也可以为集成在某客户端中的嵌入式子客户端,在此不做限定。
其中,服务器2000可以为应用客户端对应的服务器,服务器2000可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
为便于理解,本申请实施例可以在图1所示的多个终端设备中选择一个终端设备作为目标终端设备。例如,本申请实施例可以将图1所示的终端设备3000c作为目标终端设备,目标终端设备中可以集成有具备视频编码功能的应用客户端。此时,目标终端设备可以通过应用客户端与服务器2000之间实现数据交互。
应当理解,本申请实施例所提供的视频数据处理方法可以由具有视频编码功能的计算机设备执行,该计算机设备可以通过云技术,实现对多媒体数据(例如,视频数据)的数据编码以及数据传输。其中,本申请实施例所提供的视频数据处理方法可以由服务器2000执行(即上述计算机设备可以为服务器2000),也可以由目标终端设备执行(即上述计算机设备可以为目标终端设备),还可以由服务器2000和目标终端设备共同执行。换言之,服务器2000可以通过本申请实施例所提供的视频数据处理方法,对视频数据进行编码处理,进而将编码处理所得到的视频码流发送至目标终端设备,目标终端设备可以对视频码流进行解码和播放。或者,目标终端设备也可以通过本申请实施例所提供的视频数据处理方法,对视频数据进行编码处理,进而将编码处理所得到的视频码流发送至服务器2000。可选的,目标终端设备还可以将编码处理所得到的视频码流发送至终端设备集群中的其他终端设备(例如,终端设备3000a)。
其中,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术(Cloudtechnology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,以能通过云计算来实现。
可以理解的是,上述网络框架可以适用于视频通话场景、视频传输场景、云会议场景、直播场景、云游戏场景等,这里将不对具体的业务场景进行一一列举。其中,云游戏(Cloud gaming)又可称为游戏点播(gaming on demand),是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备(thin client)能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。
其中,云会议是基于云计算技术的一种高效、便捷、低成本的会议形式。使用者只需要通过互联网界面,进行简单易用的操作,便可快速高效地与全球各地团队及客户同步分享语音、数据文件及视频,而会议中数据的传输、处理等复杂技术由云会议服务商帮助使用者进行操作。目前国内云会议主要集中在以SaaS(Software as a Service,软件即服务)模式为主体的服务内容,包括电话、网络、视频等服务形式,基于云计算的视频会议就叫云会议。在云会议时代,数据的传输、处理、存储全部由视频会议厂家的计算机资源处理,用户完全无需再购置昂贵的硬件和安装繁琐的软件,只需打开浏览器,登录相应界面,就能进行高效的远程会议。云会议系统支持多服务器动态集群部署,并提供多台高性能服务器,大大提升了会议稳定性、安全性、可用性。近年来,视频会议因能大幅提高沟通效率,持续降低沟通成本,带来内部管理水平升级,而获得众多用户欢迎,已广泛应用在交通、运输、金融、运营商、教育、企业、车联网等各个领域。毫无疑问,视频会议运用云计算以后,在方便性、快捷性、易用性上具有更强的吸引力,必将激发视频会议应用新高潮的到来。
应当理解,具有视频编码功能的计算机设备(例如,目标终端设备)可以通过视频编码器对视频数据进行编码处理,以得到该视频数据对应的视频码流,进而可以提升视频数据的传输效率。例如,视频编码器可以为HEVC(High Efficiency Video Coding,高效率视频编码)视频编码器,VVC(Versatile Video Coding,通用视频编码标准)视频编码器等。其中,VCC视频编码器也称为H.266视频编码器,通用视频编码标准规定了H.266视频编码器解码的解码流程和语法、以及编码的编码流程和语法;HEVC视频编码器也称为H.265视频编码器。
其中,H.266视频编码器作为一种编码标准,在相同的主观质量下其码率大概是上一代标准HEVC的50%,这对目前的海量视频业务数据有极大的帮助,因为相同质量的视频流需要更少的存储空间和更少的带宽。但是,H.266视频编码器的编码复杂度相应地也提高了数倍,这是因为新标准引入了更复杂的编码工具来获取更高的视频压缩比。编码复杂度高意味编码需要更多的计算资源和更长的时间,对于直播一类的低延时业务高编码复杂度会直接降低用户的业务体验。因此,如何尽可能地保留视频编码器的率失真性能、又尽可能降低其编码复杂度十分有意义。
为便于理解,本申请实施例可以将视频数据中待进行编码处理的视频帧称之为目标视频帧,将目标视频帧中待进行编码处理的基本编码单元称之为待编码单元。其中,待编码单元可以为待进行编码处理的编码单元(Coding Unit,CU),编码单元CU可以为H.266视频编码器/H.265视频编码器中的基本编码单元。
可以理解的是,目标视频帧可以具有不同的视频帧类型(即帧类型),目标视频帧的帧类型不同,在对该目标视频帧中的待编码单元进行编码处理时所选择的参考帧也就不同。这里的目标视频帧的帧类型可以包括第一类型,第二类型以及第三类型。其中,本申请实施例可以将帧内编码帧(intra picture,I帧)这种帧类型称之为第一类型,将双向预测编码帧(bi-directional interpolated prediction frame,B帧)这种帧类型称之为第二类型,将前向预测编码帧(predictive-frame,P帧)这种帧类型称之为第三类型。
可以理解的是,本申请实施例中的视频数据可以为业务场景下的任意一个需要进行编码处理的视频数据。例如,视频数据可以是由终端设备中的图像采集器(例如,摄像头)所直接采集到的,视频数据也可以是由终端设备中的图像采集器在直播/视频通话过程中所实时录制的,视频数据还可以是由终端设备在网络上所下载的,视频数据还可以是由终端设备在游戏/会议过程中从服务器上所获取的。
为便于理解,进一步地,请参见图2,图2是本申请实施例提供的一种进行数据交互的场景示意图。如图2所示的服务器20a可以为上述图1所对应实施例中的服务器2000,如图2所示的终端设备20b可以为上述图1所对应实施例中的目标终端设备。为便于理解,本申请实施例以终端设备20b为用于发送视频数据的视频码流的发送端、服务器20a为用于接收视频数据的视频码流的接收端为例进行说明。
应当理解,终端设备20b可以获取视频数据(例如,视频数据21a)。其中,视频数据21a中可以包括一个或多个视频帧,本申请实施例不对视频数据21a中的视频帧的数量进行限定。进一步地,终端设备20b需要通过视频编码器(例如,H.266视频编码器)对视频数据21a进行编码处理,生成与视频数据21a相关联的视频码流。
如图2所示,终端设备20b在对视频数据21a进行编码处理时,可以从视频数据21a中获取需要进行编码处理的目标视频帧(例如,视频帧21b)(即视频帧21b为视频数据21a中的视频帧),进而从视频帧21b中获取待编码单元(例如,待编码单元21c)。进一步地,终端设备20b可以基于视频编码器的编码策略,对待编码单元21c进行编码处理,得到待编码单元21c对应的压缩码流。应当理解,在终端设备20b完成对目标视频帧中的每个待编码单元的编码处理时,可以分别得到每个待编码单元分别对应的压缩码流,进而在完成对视频数据21a中的每个视频帧的编码处理时,可以将每个待编码单元分别对应的压缩码流封装成与视频数据21a相关联的视频码流,从而完成对视频数据21a的编码处理。
其中,视频编码器的编码策略可以包括帧内预测模式(即帧内预测编码)和帧间预测模式(即帧间预测编码),帧内预测模式和帧间预测模式可以统称为编码预测技术,帧内预测(即帧内编码)表示当前帧的编码不参考其他帧的信息,帧间预测(即帧间编码)表示使用相邻帧的信息对当前帧进行预测,帧内预测和帧间预测均为一类编码预测技术。其中,在对目标视频帧中的待编码单元进行帧间预测时,视频编码器可能在前向参考帧列表或后向参考帧列表中选择一帧作为参考帧(即单向预测),也可能分别在两个参考帧列表中选择一帧一共两帧作为参考帧(即双向预测),其中,在前向参考帧列表中选择一帧作为参考帧还可以称之为前向预测,在后向参考帧列表中选择一帧作为参考帧还可以称之为后向预测。其中,第二类型的视频帧(即B帧)可以使用单向预测或双向预测进行帧间预测,第三类型的视频帧(即P帧)可以使用单向预测进行帧间预测。
应当理解,本申请实施例可以应用于帧间预测模式的参考帧选择,如图2所示,终端设备20b可以对待编码单元21c进行递归层级划分,得到待编码单元21c的S个层级划分方式,其中,这里的S可以为正整数,S的取值是由视频编码器的编码策略所确定的,例如,H.266视频编码器中的S可以等于5。其中,S个层级划分方式具体可以包括层级划分方式22a、…、层级划分方式22b。
进一步地,如图2所示,终端设备20b可以从层级划分方式22a、…、层级划分方式22b中获取待编码单元的最佳编码方式,例如,层级划分方式22a、…、层级划分方式22b中的最佳编码方式可以为层级划分方式22a(即最佳编码方式22a),最佳编码方式22a可以为层级划分方式22a、…、层级划分方式22b中具有最小率失真性能的层级划分方式。
进一步地,如图2所示,终端设备20b可以获取最佳编码方式22a中的层级子编码单元,其中,层级子编码单元的数量可以为至少两个,本申请实施例可以将最佳编码方式22a中的至少两个层级子编码单元统称为层级子编码单元21d。
可以理解的是,终端设备20b可以从视频数据21a中获取编码顺序在视频帧21b之前的视频帧,将获取到的视频帧确定为针对待编码单元21c构建的全量参考帧集合。如图2所示,若层级子编码单元21d的编码结果满足运动相似条件,则终端设备20b可以根据层级子编码单元21d对针对待编码单元21c构建的全量参考帧集合进行裁剪,生成待编码单元21c在不划分方式下对应的候选参考帧集合。可选的,若层级子编码单元21d的编码结果不满足运动相似条件,则终端设备20b可以将针对待编码单元21c构建的全量参考帧集合,确定为待编码单元21c在不划分方式下对应的候选参考帧集合。
进一步地,如图2所示,终端设备20b在确定候选参考帧集合之后,可以在候选参考帧集合中遍历得到目标参考帧,基于目标参考帧对待编码单元21c进行编码处理,得到待编码单元21c在不划分方式下的压缩码流,进而基于待编码单元21c在不划分方式下的压缩码流或待编码单元21c在最佳编码方式22a下的压缩码流,生成与视频数据21a相关联的视频码流。此时,终端设备20b可以将与视频数据21a相关联的视频码流发送至服务器20a,这样,服务器20a可以在接收到视频码流时,通过视频解码器对该视频码流进行解码处理,得到视频数据21a。
其中,可以理解的是,待编码单元(例如,待编码单元21c)对应的压缩码流可以包括但不限于运动矢量、参考帧索引、参考帧列表等,服务器20a可以利用压缩码流中的信息生成帧间预测像素值,即对待编码单元进行还原。其中,参考帧索引可以表示在参考帧列表中定位具体参考帧的索引,通过参考帧索引可以在参考帧列表中定位对待编码单元进行编码处理时所使用的具体参考帧。
由此可见,本申请实施例可以在需要对目标视频帧中的待编码单元进行编码处理时,获取待编码单元在划分方式(即S个层级划分方式)下所对应的最佳编码方式,进而从目标视频帧中获取最佳编码方式中的层级编码子单元,根据层级编码子单元所使用的参考帧,确定待编码单元在不划分方式下对应的候选参考帧集合。可以理解的是,候选参考帧集合中的参考帧为与层级编码子单元相关联的参考帧,考虑到待编码单元与层级编码子单元中视频内容的相关性(即内容相关性),可知候选参考帧集合中的参考帧与待编码单元所属的目标视频帧具有较高的内容相似度,这样,在基于候选参考帧集合对目标视频帧中的待编码单元进行编码处理时,可以对候选参考帧集合进行遍历,而无需对全部已编码完成的视频帧都进行遍历,这样不仅可以保证目标视频帧的编码效果,而且可以简化参考帧的选择,有效降低参考帧决策(即参考帧选择)在整个编码过程复杂度中的占比,从而降低视频编码器的帧间编码过程的计算复杂度,进而减少编码时间(即提高编码效率)、计算资源和带宽资源的开销。
其中,具有视频编码功能的计算机设备在视频数据中确定候选参考帧集合的具体实现方式,可以参见下述图3-图10所对应的实施例。
进一步地,请参见图3,图3是本申请实施例提供的一种视频数据处理方法的流程示意图。该方法可以由服务器执行,也可以由终端设备执行,还可以由服务器和终端设备共同执行,该服务器可以为上述图2所对应实施例中的服务器20a,该终端设备可以为上述图2所对应实施例的终端设备20b。为便于理解,本申请实施例以该方法由终端设备执行为例进行说明。其中,该视频数据处理方法可以包括以下步骤S101-步骤S103:
步骤S101,对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式;
其中,这里的S可以为正整数,目标视频帧为视频数据中的视频帧。换言之,终端设备可以从视频数据中获取待进行编码处理的视频帧,将获取到的视频帧确定为目标视频帧。进一步地,终端设备可以通过视频编码器对目标视频帧进行图像块划分处理(即块划分),得到目标视频帧的一个或者多个图像块(即编码块),进而从一个或者多个图像块中获取待编码单元。其中,图像块划分处理的目的是为了更精确的处理预测,在微小移动的部分使用较小的图像块,而在静态背景上使用较大的图像块,本申请实施例可以将编码单元CU称之为图像块,块划分的过程中会伴随着预测和参考帧选择。
其中,对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式的具体过程,可以参见下述图7所对应实施例中对步骤S1011-步骤S1013的描述。
步骤S102,从S个层级划分方式中获取待编码单元的最佳编码方式,获取最佳编码方式中的层级子编码单元;
具体的,终端设备可以从S个层级划分方式中获取待编码单元的最佳编码方式。其中,终端设备可以获取S个层级划分方式分别对应的率失真性能,将S个率失真性能中的最小率失真性能所对应的层级划分方式,确定为待编码单元的最佳编码方式。其中,最佳编码方式包括待编码单元的M个划分子编码单元,这里的M可以为大于1的整数,M个划分子编码单元包括辅助划分子编码单元。进一步地,若辅助划分子编码单元不具有子编码单元,则终端设备可以将辅助划分子编码单元确定为最佳编码方式中的层级子编码单元。可选的,若辅助划分子编码单元具有子编码单元,则终端设备可以从辅助划分子编码单元中获取最佳编码方式中的层级子编码单元。
其中,从辅助划分子编码单元中获取最佳编码方式中的层级子编码单元的具体过程,可以参见上述从待编码单元中获取最佳编码方式中的层级子编码单元的描述,这里将不再进行赘述。
为便于理解,请参见图4,图4是本申请实施例提供的一种划分待编码单元的场景示意图。如图4所示的图像块划分示意图40a可以为从视频数据中获取的待进行编码处理的待编码单元的图像块划分示意图,图像块划分示意图40a可以为通过H.266视频编码器进行图像块划分处理所得到的一种示意图,本申请实施例不对图像块划分处理所得到的示意图进行限定,这里以图像块划分处理所得到的示意图为图像块划分示意图40a为例进行说明,视频编码器所得到的其他图像块划分示意图可以参见图像块划分示意图40a的描述。
如图4所示,图像块划分示意图40a显示待编码单元可以划分为(图像块41a,图像块41b,图像块41c,图像块41d,图像块41e)、(图像块42a)、(图像块43a,图像块43b,图像块43c)、(图像块44a,图像块44b,图像块44c)。
其中,(图像块41a,图像块41b,图像块41c,图像块41d,图像块41e)可以划分为(图像块41a)、(图像块41b,图像块41c)、(图像块41d)、(图像块41e),(图像块41b,图像块41c)可以划分为(图像块41b)、(图像块41c)。可选的,(图像块41a,图像块41b,图像块41c,图像块41d,图像块41e)可以划分为(图像块41a,图像块41b,图像块41c)、(图像块41d,图像块41e),(图像块41a,图像块41b,图像块41c)可以划分为(图像块41a)、(图像块41b,图像块41c),(图像块41d,图像块41e)可以划分为(图像块41d)、(图像块41e),(图像块41b,图像块41c)可以划分为(图像块41b)、(图像块41c)。可选的,(图像块41a,图像块41b,图像块41c,图像块41d,图像块41e)可以划分为(图像块41a,图像块41d)、(图像块41b,图像块41c,图像块41e),(图像块41a,图像块41d)可以划分为(图像块41a)、(图像块41d),(图像块41b,图像块41c,图像块41e)可以划分为(图像块41b,图像块41c)、(图像块41e),(图像块41b,图像块41c)可以划分为(图像块41b)、(图像块41c)。同理,终端设备可以对(图像块43a,图像块43b,图像块43c)和(图像块44a,图像块44b,图像块44c)进行划分,这里将不再进行赘述。
其中,图像块划分示意图40a中的所有图像块可以组织成一棵搜索树(不同的图像块划分示意图可以对应于不同的搜索树),视频编码器可以采取自上而下的递归过程遍历这颗块划分树(即搜索树)来决定当前图像块最终的划分形式,在搜索树中,父节点可以为父编码单元(即父CU),子节点可以为子编码单元(即子CU)。其中,父编码单元和子编码单元是相对而言的。
可选的,图像块划分示意图40a显示待编码单元可以划分为(图像块41a,图像块41b,图像块41c,图像块41d,图像块41e,图像块42a)、(图像块43a,图像块43b,图像块43c,图像块44a,图像块44b,图像块44c)。可选的,图像块划分示意图40a显示目标视频帧可以划分为(图像块41a,图像块41b,图像块41c,图像块41d,图像块41e,图像块43a,图像块43b,图像块43c)、(图像块42a,图像块44a,图像块44b,图像块44c)。
为便于理解,图像块划分示意图40a可以为最佳编码方式所对应的图像块划分示意图,此时,最佳编码方式中的层级子编码单元可以包括图像块41a、图像块41b、图像块41c、图像块41d、图像块41e、图像块42a、图像块43a、图像块43b、图像块43c、图像块44a、图像块44b、图像块44c;待编码单元的M个划分子编码单元可以包括(图像块41a,图像块41b,图像块41c,图像块41d,图像块41e)、(图像块42a)、(图像块43a,图像块43b,图像块43c)、(图像块44a,图像块44b,图像块44c),即M等于4。
其中,H.266视频编码器/H.265视频编码器以块划分的方式进行编码,进行编码时一个图像块会被划分成若干个CU,CU可以嵌套划分,一个CU可以作为新的图像块继续被划分成若干个CU,直至达到最小的CU尺寸限制,因此,CU是进行编码预测的基本单元。
步骤S103,若层级子编码单元的编码结果满足运动相似条件,则根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合。
具体的,若层级子编码单元的编码结果满足运动相似条件,则终端设备可以从视频数据中获取针对待编码单元构建的全量参考帧集合,其中,全量参考帧集合包括前向全量参考帧集合和后向全量参考帧集合,即前向全量参考帧集合和后向全量参考帧集合可以统称为全量参考帧集合。换言之,终端设备可以从视频数据中获取针对待编码单元构建的前向全量参考帧集合和后向全量参考帧集合。进一步地,在前向全量参考帧集合中筛选层级子编码单元所使用的参考帧,若前向全量参考帧集合中存在层级子编码单元所使用的参考帧,则终端设备可以将在前向全量参考帧集合中筛选出的参考帧,确定为待编码单元在不划分方式下对应的前向候选参考帧集合;在后向全量参考帧集合中筛选层级子编码单元所使用的参考帧,若后向全量参考帧集合中存在层级子编码单元所使用的参考帧,则终端设备可以将在后向全量参考帧集合中筛选出的参考帧,确定为待编码单元在不划分方式下对应的后向候选参考帧集合。其中,候选参考帧集合包括前向候选参考帧集合和后向候选参考帧集合,即前向候选参考帧集合和后向候选参考帧集合可以统称为候选参考帧集合。其中,候选参考帧集合用于为待编码单元遍历目标参考帧;目标参考帧用于对待编码单元进行编码处理。
换言之,终端设备可以将层级子编码单元所使用的参考帧和全量参考帧集合进行匹配。进一步地,若层级子编码单元所使用的参考帧和全量参考帧集合中的参考帧之间存在交集,则终端设备可以将层级子编码单元所使用的参考帧和全量参考帧集合中的参考帧之间的交集,确定为待编码单元在不划分方式下对应的候选参考帧集合。可选的,若层级子编码单元所使用的参考帧和全量参考帧集合中的参考帧之间不存在交集,则终端设备可以将全量参考帧集合确定为待编码单元在不划分方式下对应的候选参考帧集合。
应当理解,若编码标准中同一帧中各个编码单元生成的默认参考帧列表(即全量参考帧集合)是相同的,则裁剪后的参考帧列表(即候选参考帧集合)一定是默认参考帧列表的子集,裁剪表示待编码单元可以使用层级子编码单元所使用过的参考帧。此时,若层级子编码单元的编码结果满足运动相似条件,则终端设备可以将层级子编码单元所使用的参考帧,确定为待编码单元在不划分方式下对应的候选参考帧集合,即将层级子编码单元所使用的参考帧中播放顺序在目标视频帧之前的视频帧添加至前向候选参考帧集合,将层级子编码单元所使用的参考帧中播放顺序在目标视频帧之后的视频帧添加至后向候选参考帧集合。
应当理解,终端设备从视频数据中获取针对待编码单元构建的前向全量参考帧集合和后向全量参考帧集合的具体过程可以描述为:终端设备可以从视频数据中获取编码顺序早于目标视频帧的已编码视频帧。进一步地,若已编码视频帧的播放顺序早于目标视频帧,则终端设备可以将播放顺序早于目标视频帧的已编码视频帧添加至针对待编码单元构建的前向全量参考帧集合;若已编码视频帧的播放顺序晚于目标视频帧,则终端设备可以将播放顺序晚于目标视频帧的已编码视频帧添加至针对待编码单元构建的后向全量参考帧集合。换言之,终端设备可以将播放顺序早于目标视频帧的已编码视频帧添加至前向全量参考帧集合,将播放顺序晚于目标视频帧的已编码视频帧添加至前向全量参考帧集合。
其中,可以理解的是,在进行帧间预测时,视频编码器可以为目标视频帧构建参考帧列表,参考帧列表包含两部分,一部分是前向参考帧列表(即前向全量参考帧集合),另一部分是后向参考帧列表(即后向全量参考帧集合)。前向参考帧列表包含编码顺序和播放顺序均在当前帧(即目标视频帧)之前的视频帧,后向参考帧列表包含编码顺序在当前帧(即目标视频帧)之前、播放顺序在当前帧(即目标视频帧)之后的视频帧。其中,本申请实施例不对参考帧列表中的视频帧的数量进行限定。
其中,层级子编码单元的数量为P个,这里的P可以为大于1的整数。可以理解的是,终端设备可以将P个层级子编码单元所使用的参考帧的并集确定为关联参考帧集合。其中,终端设备可以将关联参考帧集合中播放顺序早于目标视频帧的参考帧确定为前向关联参考帧集合,将关联参考帧集合中播放顺序晚于目标视频帧的参考帧确定为后向关联参考帧集合,前向关联参考帧集合和后向关联参考帧集合可以统称为关联参考帧集合。换言之,终端设备可以将P个层级子编码单元所使用的参考帧中的播放顺序早于目标视频帧的参考帧添加至前向关联参考帧集合,将P个层级子编码单元所使用的参考帧中的播放顺序晚于目标视频帧的参考帧添加至后向关联参考帧集合。因此,终端设备可以将前向关联参考帧集合和前向全量参考帧集合的交集,确定为待编码单元在不划分方式下对应的前向候选参考帧集合;将后向关联参考帧集合和后向全量参考帧集合的交集,确定为待编码单元在不划分方式下对应的后向候选参考帧集合。
为便于理解,本申请实施例以前向关联参考帧集合中包括播放顺序早于目标视频帧的参考帧、以后向关联参考帧集合中包括播放顺序晚于目标视频帧的参考帧为例进行说明。其中,可选的,若前向关联参考帧集合中不包括参考帧(即关联参考帧集合中不包括播放顺序早于目标视频帧的参考帧),则终端设备可以确定待编码单元在不划分方式下对应的前向候选参考帧集合为空集,或者,将前向全量参考帧集合确定为待编码单元在不划分方式下对应的前向候选参考帧集合;若后向关联参考帧集合中不包括参考帧(即关联参考帧集合中不包括播放顺序晚于目标视频帧的参考帧),则终端设备可以确定待编码单元在不划分方式下对应的后向候选参考帧集合为空集,或者,将后向全量参考帧集合确定为待编码单元在不划分方式下对应的后向候选参考帧集合。
为便于理解,本申请实施例以前向全量参考帧集合中包括播放顺序早于目标视频帧的已编码视频帧、以后向全量参考帧集合中包括播放顺序晚于目标视频帧的已编码视频帧为例进行说明。
比如,这里以P等于3为例进行说明,P个层级子编码单元可以包括层级子编码单元P1、层级子编码单元P2和层级子编码单元P3,层级子编码单元P1、层级子编码单元P2和层级子编码单元P3均采用双向预测,层级子编码单元P1、层级子编码单元P2和层级子编码单元P3使用的前向参考帧和后向参考帧分别是(x0,y0)、(x0,y1)和(x1,y2),则待编码单元进行不划分编码时的前向参考帧列表(即前向候选参考帧集合)裁剪为{x0,x1},后向参考帧列表(即后向候选参考帧集合)裁剪为{y0,y1,y2}。
可选的,本申请实施例可以为待编码单元的尺寸添加限制(即添加尺寸限制),比如,在待编码单元的像素个数超过像素阈值(例如,512个)时,执行本申请实施例所提供的快速策略,快速策略即为本申请实施例中的步骤S101-步骤S103。
为便于理解,请参见图5,图5是本申请实施例提供的一种获取参考帧的场景示意图。如图5所示为待编码单元的双向预测示意图,视频帧53c可以为目标视频帧,视频帧集合53a可以为目标视频帧53c对应的前向候选参考帧集合(即前向候选参考帧集合53a),视频帧集合53b可以为目标视频帧53c对应的后向候选参考帧集合(即后向候选参考帧集合53b)。
其中,前向候选参考帧集合53a中可以包括多个视频帧,后向候选参考帧集合53a中可以包括多个视频帧,本申请实施例不对前向候选参考帧集合53a中的视频帧的数量进行限定,本申请实施例不对后向候选参考帧集合53b中的视频帧的数量进行限定,为便于理解,本申请实施例以前向候选参考帧集合53a和后向候选参考帧集合53b中均包括3个视频帧为例进行说明,前向候选参考帧集合53a中可以包括视频帧50a、视频帧50b和视频帧50c,后向候选参考帧集合53b中可以包括视频帧51a、视频帧51b和视频帧51c。
如图5所示,目标视频帧53c中可以包括待编码单元52a,视频帧50c中可以包括编码单元52b,视频帧51b中可以包括编码单元52c,在将视频帧50c和视频帧51b确定为目标视频帧所使用的参考帧时,视频编码器可以基于编码单元52b和编码单元52c对待编码单元52a进行编码处理,此时,待编码单元52a在前向候选参考帧集合53a和后向候选参考帧集合53b中分别选择了一帧作为参考帧(例如,视频帧50c和视频帧51b)并进行运动搜索,编码单元52b和编码单元52c可以称之为参考块。
为便于理解,请参见图6,图6是本申请实施例提供的一种不划分编码的流程示意图。如图6所示,终端设备可以执行步骤S11,通过步骤S11从目标视频帧中获取待编码单元,进一步地,终端设备可以执行步骤S12,通过步骤S12使用默认方式构建待编码单元的参考帧列表(即全量参考帧集合),即终端设备可以从视频数据中获取针对待编码单元构建的全量参考帧集合。
进一步地,如图6所示,终端设备可以执行步骤S13,通过步骤S13确定待编码单元是否符合参考帧列表裁剪的要求,即终端设备可以确定层级子编码单元的编码结果是否满足运动相似条件。可以理解的是,若层级子编码单元的编码结果满足运动相似条件,则待编码单元符合参考帧列表裁剪的要求;可选的,若层级子编码单元的编码结果不满足运动相似条件,则待编码单元不符合参考帧列表裁剪的要求。
如图6所示,若待编码单元符合参考帧列表裁剪的要求,则终端设备可以执行步骤S14,通过步骤S14对待编码单元的参考帧列表进行裁剪,即终端设备可以根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪;可选的,若待编码单元不符合参考帧列表裁剪的要求,则终端设备可以跳过执行步骤S14。
进一步地,如图6所示,终端设备可以执行步骤S15,通过步骤S15对待编码单元进行帧间预测,即生成待编码单元在不划分方式下对应的候选参考帧集合之后,在候选参考帧集合中遍历目标参考帧,基于目标参考帧对待编码单元进行编码处理。进一步地,终端设备可以执行步骤S16,步骤S16指示对待编码单元的不划分方式编码结束。
应当理解,终端设备可以获取视频编码器(例如,H.266视频编码器)的编码策略,基于视频编码器的编码策略,对待编码单元进行编码处理。其中,与编码策略相关联的编码模式中可以包括帧间预测模式和帧内预测模式,这样,终端设备在对待编码单元进行帧间预测处理时,可以基于目标视频帧的帧类型,确定与待编码单元相关联的参考视频帧。其中,不同的视频压缩标准可以对应不同的参考视频帧。其中,若目标视频帧的帧类型为B帧(即第二类型)或P帧(即第三类型),则终端设备可以执行步骤S101-步骤S103;可选的,若目标视频帧的帧类型为I帧(即第一类型),则终端设备无需执行步骤S101-步骤S103。
由此可见,本申请实施例提出了一种快速参考帧选择算法,该快速参考帧选择算法可以充分考虑图像块(即待编码单元)的参考帧与子块(即层级子编码单元)的参考帧具有极高的相似性。同一个图像块进行不同划分会进行多次参考帧选择过程,若图像块中不同子块(即层级子编码单元)具有一致的运动轨迹(即层级子编码单元的编码结果满足运动相似条件),则图像块所覆盖的图像内容大概率是作为一个整体进行平移运动,因此,图像块的参考帧与子块(即层级子编码单元)的参考帧大概率相同,此时,根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,可以生成待编码单元在不划分方式下对应的候选参考帧集合(即使用待编码单元划分产生的层级子编码单元的参考帧选择结果对待编码单元的参考帧进行快速选择)。可以理解的是,通过本申请实施例所提供的快速参考帧选择算法,可以在所有视频帧中选择出融合有层级子编码单元所使用的参考帧的候选参考帧集合,因为候选参考帧集合中的参考帧是由层级子编码单元所确定的,所以候选参考帧集合中的参考帧与目标视频帧具有较高的内容相似度。这样,本申请实施例可以无需对已编码的视频帧(即全量参考帧集合中的视频帧)都进行遍历,而是对帧数更少的候选参考帧集合中的视频帧进行遍历,不仅减少了遍历耗时,而且在对内容相似度较高的参考帧所属的候选参考帧集合进行遍历时,可以在遍历结果中获取具有最佳编码效果的目标参考帧,从而可以同时兼顾目标视频帧的编码效果和编码效率(即在保证目标视频帧的编码效率的同时,提高目标视频帧的编码效果;在保证目标视频帧的编码效果的同时,提高目标视频帧的编码效率)。
进一步地,请参见图7,图7是本申请实施例提供的一种视频数据处理方法的流程示意图。该视频数据处理方法可以包括以下步骤S1011-步骤S1013,且步骤S1011-步骤S1013为图3所对应实施例中步骤S101的一个具体实施例。
步骤S1011,对目标视频帧中的待编码单元进行单元划分,得到待编码单元的S个单元划分方式;
其中,S个单元划分方式包括目标单元划分方式,目标单元划分方式包括待编码单元的N个划分子编码单元。其中,这里的N可以为大于1的整数,N个划分子编码单元包括目标划分子编码单元,目标划分子编码单元可以用于作为新的待编码单元。
为便于理解,请参见图8,图8是本申请实施例提供的一种划分方式的场景示意图。如图8所示为待编码单元在S个单元划分方式和不划分方式下的示意图,例如,如图8所示的示意图可以为H.266视频编码器所规定的六种划分方式,示意图80a可以表示不划分示意图,示意图81a可以表示水平二划分示意图,示意图82a可以表示垂直二划分示意图,示意图83a可以表示四划分示意图,示意图84a可以表示水平三划分示意图,示意图85a可以表示垂直三划分示意图。
如图8所示,示意图80a可以将待编码单元划分为1为图像块,示意图81a和示意图82a可以将待编码单元划分为2为图像块,示意图84a和示意图85a可以将待编码单元划分为3为图像块,示意图83a可以将待编码单元划分为4为图像块。
其中,示意图80a可以划分为图像块80b;示意图81a可以划分为图像块81b和图像块81c;示意图82a可以划分为图像块82b和图像块82c;示意图84a可以划分为图像块84b、图像块84c和图像块84d;示意图85a可以划分为图像块85b、图像块85c和图像块85d;示意图83a可以划分为图像块83b、图像块83c、图像块83d和图像块83e。
换言之,若目标单元划分方式为示意图81a,则目标单元划分方式的N个划分子编码单元具体可以包括图像块81b和图像块81c,即N等于2;若目标单元划分方式为示意图82a,则目标单元划分方式的N个划分子编码单元具体可以包括图像块82b和图像块82c,即N等于2;若目标单元划分方式为示意图84a,则目标单元划分方式的N个划分子编码单元具体可以包括图像块84b、图像块84c和图像块84d,即N等于3;若目标单元划分方式为示意图85a,则目标单元划分方式的N个划分子编码单元具体可以包括图像块85b、图像块85c和图像块85d,即N等于3;若目标单元划分方式为示意图83a,则目标单元划分方式的N个划分子编码单元具体可以包括图像块83b、图像块83c、图像块83d和图像块83e,即N等于4。
应当理解,除了示意图80a所示的不划分方式外,其他划分得到的子块(子块也可以称之为图像块)还可以继续按照这六种方式划分,直到块大小达到划分限制。比如,图像块81b可以按照示意图82a继续进行划分;又比如,图像块81b可以按照示意图80a继续进行划分(即图像块81b为不划分方式)。
步骤S1012,获取目标划分子编码单元对应的子单元最终编码方式;
具体的,若目标划分子编码单元满足单元划分条件,则终端设备可以对目标划分子编码单元进行递归层级划分,得到目标划分子编码单元的S个子单元层级划分方式。进一步地,终端设备可以从S个子单元层级划分方式中获取目标划分子编码单元的子单元最佳编码方式,获取子单元最佳编码方式中的子单元层级子编码单元。进一步地,若子单元层级子编码单元的子单元编码结果满足运动相似条件,则终端设备可以根据子单元层级子编码单元对针对目标划分子编码单元构建的子单元全量参考帧集合进行裁剪,生成目标划分子编码单元在不划分方式下对应的子单元候选参考帧集合。其中,子单元候选参考帧集合用于为目标划分子编码单元遍历子单元目标参考帧;子单元目标参考帧用于对目标划分子编码单元进行编码处理。进一步地,终端设备可以从子单元最佳编码方式和不划分方式中获取目标划分子编码单元对应的子单元最终编码方式。
其中,终端设备对目标划分子编码单元进行递归层级划分,得到目标划分子编码单元的S个子单元层级划分方式的具体过程,可以参见上述对待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式的描述,这里将不再进行赘述。
其中,终端设备从S个子单元层级划分方式中获取目标划分子编码单元的子单元最佳编码方式的具体过程,可以参见上述从S个层级划分方式中获取待编码单元的最佳编码方式的描述,这里将不再进行赘述。其中,终端设备获取子单元最佳编码方式中的子单元层级子编码单元的具体过程,可以参见上述获取最佳编码方式中的层级子编码单元的描述,这里将不再进行赘述。
其中,根据子单元层级子编码单元对子单元全量参考帧集合进行裁剪,生成子单元候选参考帧集合的具体过程,可以参见上述根据层级子编码单元对全量参考帧集合进行裁剪,生成候选参考帧集合的描述,这里将不再进行赘述。
其中,从子单元最佳编码方式和不划分方式中获取目标划分子编码单元对应的子单元最终编码方式的具体过程,可以参见下述图9所对应实施例中从最佳编码方式和不划分方式中获取待编码单元对应的最终编码方式的描述。
应当理解,终端设备可以获取目标划分子编码单元的子单元尺寸。进一步地,若子单元尺寸大于或等于尺寸阈值,则终端设备可以确定目标划分子编码单元满足单元划分条件;可选的,若子单元尺寸小于尺寸阈值,则终端设备可以确定目标划分子编码单元不满足单元划分条件。因此,单元划分条件是指获取到的目标划分子编码单元的子单元尺寸大于或等于尺寸阈值的条件,本申请实施例不对尺寸阈值的具体取值进行限定。
可选的,若目标划分子编码单元不满足单元划分条件,则终端设备可以将不划分方式确定为目标划分子编码单元对应的子单元最终编码方式。
步骤S1013,将N个划分子编码单元分别对应的子单元最终编码方式,确定为待编码单元在目标单元划分方式下对应的层级划分方式。
应当理解,S个单元划分方式可以递归生成S个层级划分方式,一个单元划分方式可以递归生成一个层级划分方式。终端设备确定待编码单元在S个单元划分方式中除目标单元划分方式之外的其他单元划分方式下对应的层级划分方式的具体过程,可以参见确定为待编码单元在目标单元划分方式下对应的层级划分方式的描述,这里将不再进行赘述。
应当理解,待编码单元在目标单元划分方式下对应的层级划分方式可以为上述图3所对应实施例中的最佳编码方式,待编码单元在目标单元划分方式下对应的层级划分方式也可以不为上述图3所对应实施例中的最佳编码方式。为便于理解,请再参见图4,若图像块划分示意图40a为最佳编码方式所对应的图像块划分示意图、且待编码单元在目标单元划分方式下对应的层级划分方式为上述图3所对应实施例中的最佳编码方式,则图像块划分示意图40a为待编码单元在目标单元划分方式下对应的层级划分方式的图像块划分示意图。
由此可见,本申请实施例可以对目标视频帧中的待编码单元进行单元划分,得到待编码单元的S个单元划分方式,进而通过递归的方式确定待编码单元在S个单元划分方式下分别对应的层级划分方式,S个层级划分方式表示待编码单元在S个单元划分方式下的最佳编码结果,最佳编码方式表示待编码单元在S个层级划分方式下的最佳编码结果,这样,在基于最佳编码方式确定待编码单元在不划分方式下的候选参考帧集合时,可以提高获取到的候选参考帧集合的准确度。
进一步地,请参见图9,图9是本申请实施例提供的一种视频数据处理方法的流程示意图。该方法可以由服务器执行,也可以由终端设备执行,还可以由服务器和终端设备共同执行,该服务器可以为上述图2所对应实施例中的服务器20a,该终端设备可以为上述图2所对应实施例的终端设备20b。为便于理解,本申请实施例以该方法由终端设备执行为例进行说明。其中,该视频数据处理方法可以包括以下步骤S201-步骤S208:
步骤S201,对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式;
其中,这里的S可以为正整数;目标视频帧为视频数据中的视频帧。其中,终端设备对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式的具体过程,可以参见上述图7所对应实施例中对步骤S1011-步骤S1013的描述,这里将不再进行赘述。
步骤S202,从S个层级划分方式中获取待编码单元的最佳编码方式,获取最佳编码方式中的层级子编码单元;
其中,层级子编码单元的数量为P个,这里的P可以为大于1的整数;P个层级子编码单元包括目标层级子编码单元。其中,从S个层级划分方式中获取待编码单元的最佳编码方式以及获取最佳编码方式中的层级子编码单元的具体过程,可以参见上述图3所对应实施例中对步骤S102的描述,这里将不再进行赘述。
步骤S203,获取目标层级子编码单元对应的帧间预测模式和帧间预测方向;
具体的,终端设备可以获取目标层级子编码单元对应的帧间预测方向。其中,目标层级子编码单元对应的帧间预测方向包括前向预测、后向预测和双向预测。进一步地,终端设备可以获取目标层级子编码单元中的每个像素分别对应的运动矢量。其中,运动矢量还可以称之为运动向量,运动矢量可以描述在视频帧中的位置相对于在参考帧中的偏移向量,即在进行帧间预测时标记当前块和参考块位置关系的一个向量。进一步地,若目标层级子编码单元中的每个像素分别对应的运动矢量均相同,则终端设备可以将平移帧间预测确定为目标层级子编码单元对应的帧间预测模式;可选的,若目标层级子编码单元中存在运动矢量不同的像素,则终端设备可以将非平移帧间预测确定为目标层级子编码单元对应的帧间预测模式。
应当理解,若目标层级子编码单元对应的帧间预测方向为前向预测,则目标层级子编码单元中的每个像素均可以包括在前向上的运动矢量,即每个像素可以包括一个运动矢量;可选的,若目标层级子编码单元对应的帧间预测方向为后向预测,则目标层级子编码单元中的每个像素均可以包括在后向上的运动矢量,即每个像素可以包括一个运动矢量;可选的,若目标层级子编码单元对应的帧间预测方向为双向预测,则目标层级子编码单元中的每个像素均可以包括在前向上的运动矢量和在后向上的运动矢量,即每个像素可以包括两个运动矢量。
因此,可以理解的是,若目标层级子编码单元对应的帧间预测方向为前向预测,则目标层级子编码单元中的每个像素在前向上的运动矢量相同,可以表示目标层级子编码单元中的每个像素分别对应的运动矢量均相同;可选的,若目标层级子编码单元对应的帧间预测方向为后向预测,则目标层级子编码单元中的每个像素在后向上的运动矢量相同,可以表示目标层级子编码单元中的每个像素分别对应的运动矢量均相同;可选的,若目标层级子编码单元对应的帧间预测方向为双向预测,则目标层级子编码单元中的每个像素在后向上的运动矢量相同、且目标层级子编码单元中的每个像素在前向上的运动矢量相同,即目标层级子编码单元中的每个像素在两个方向上的运动矢量相同,可以表示目标层级子编码单元中的每个像素分别对应的运动矢量均相同。
可以理解的是,终端设备可以根据P个层级子编码单元分别对应的帧间预测模式和P个层级子编码单元分别对应的帧间预测方向,确定P个层级子编码单元的编码结果是否满足运动相似条件。其中,P个层级子编码单元的编码结果满足运动相似条件的过程可以参见下述步骤S204-步骤S205;可选的,P个层级子编码单元的编码结果不满足运动相似条件的过程可以参见下述步骤S206-步骤S207。
步骤S204,若P个层级子编码单元分别对应的帧间预测模式均为平移帧间预测、且P个层级子编码单元分别对应的帧间预测方向均相同,则确定P个层级子编码单元的编码结果满足运动相似条件;
比如,若P个层级子编码单元分别对应的帧间预测模式均为平移帧间预测、且P个层级子编码单元分别对应的帧间预测方向均为前向预测,则终端设备可以确定P个层级子编码单元的编码结果满足运动相似条件。
因此,运动相似条件是指获取到的P个层级子编码单元分别对应的帧间预测模式均为平移帧间预测、且P个层级子编码单元分别对应的帧间预测方向均相同的条件。
可选的,若P个层级子编码单元分别对应的帧间预测模式均为平移帧间预测,则终端设备可以确定P个层级子编码单元的编码结果满足运动相似条件;可选的,若P个层级子编码单元分别对应的帧间预测方向均相同,则终端设备可以确定P个层级子编码单元的编码结果满足运动相似条件。
步骤S205,根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合;
其中,终端设备根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合的具体过程,可以参见上述图3所对应实施例中对步骤S103的描述,这里将不再进行赘述。
换言之,若层级子编码单元的编码结果满足运动相似条件,则终端设备可以根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合。
步骤S206,若P个层级子编码单元中存在帧间预测模式不为平移帧间预测的层级子编码单元、或P个层级子编码单元分别对应的帧间预测方向不同,则确定P个层级子编码单元的编码结果不满足运动相似条件;
可选的,若P个层级子编码单元中存在帧间预测模式不为平移帧间预测的层级子编码单元,则终端设备可以确定P个层级子编码单元的编码结果不满足运动相似条件;可选的,若P个层级子编码单元分别对应的帧间预测方向不同,则终端设备可以确定P个层级子编码单元的编码结果不满足运动相似条件。
步骤S207,获取针对待编码单元构建的全量参考帧集合,将全量参考帧集合确定为待编码单元在不划分方式下对应的候选参考帧集合;
其中,终端设备获取针对待编码单元构建的全量参考帧集合的具体过程,可以参见上述图3所对应实施例中对步骤S103的描述,这里将不再进行赘述。
换言之,若层级子编码单元的编码结果不满足运动相似条件,则终端设备可以获取针对待编码单元构建的全量参考帧集合,将全量参考帧集合确定为待编码单元在不划分方式下对应的候选参考帧集合。
可以理解的是,步骤S205和步骤S207所生成的候选参考帧集合可以用于为待编码单元遍历目标参考帧;目标参考帧可以用于对待编码单元进行编码处理,生成待编码单元对应的压缩码流。
其中,候选参考帧集合包括前向候选参考帧集合和后向候选参考帧集合。应当理解,终端设备在候选参考帧集合中遍历目标参考帧的具体过程可以描述为:终端设备可以确定目标视频帧的视频帧类型。其中,目标视频帧的视频帧类型可以用于指导视频编码器在候选参考帧集合选择用于对目标视频帧进行编码处理的参考帧,本申请实施例可以将在候选参考帧集合中遍历得到的参考帧称之为目标参考帧。进一步地,若视频帧类型为单向预测类型(即第三类型),则终端设备可以在前向候选参考帧集合或后向候选参考帧集合中,遍历用于对待编码单元进行编码处理的目标参考帧。可选的,若视频帧类型为双向预测类型(即第二类型),则终端设备可以在前向候选参考帧集合、后向候选参考帧集合或双向参考帧集合中,遍历用于对待编码单元进行编码处理的目标参考帧。其中,双向参考帧集合包括前向候选参考帧集合和后向候选参考帧集合。换言之,若视频帧类型为双向预测类型,则终端设备可以在前向候选参考帧集合或后向候选参考帧集合中,遍历用于对待编码单元进行编码处理的目标参考帧;或者,终端设备可以在前向候选参考帧集合和后向候选参考帧集合中,遍历用于对待编码单元进行编码处理的目标参考帧。
应当理解,当编码单元CU(例如,待编码单元)尝试不划分时,视频编码器需要为待编码单元选择合适的预测模式,预测模式可以包含帧间预测和帧内预测两大类,帧间预测根据运动形式的不同,又可以分为平移帧间预测和仿射帧间预测。平移帧间预测时待编码单元中每个像素的运动矢量是相同的;仿射帧间预测时待编码单元中每个像素的运动矢量可能不同,仿射帧间预测适合伸缩和旋转运动,非平移帧间预测可以包括仿射帧间预测。
步骤S208,从最佳编码方式和不划分方式中获取待编码单元对应的最终编码方式。
具体的,终端设备可以获取最佳编码方式的第一率失真参数和不划分方式的第二率失真参数。进一步地,若第一率失真参数大于或等于第二率失真参数,则终端设备可以将不划分方式确定为待编码单元对应的最终编码方式;可选的,若第一率失真参数小于第二率失真参数,则终端设备可以将最佳编码方式确定为待编码单元对应的最终编码方式。
换言之,终端设备可以获取最佳编码方式的第一率失真参数和不划分方式的第二率失真参数。进一步地,若第一率失真参数大于第二率失真参数,则终端设备可以将不划分方式确定为待编码单元对应的最终编码方式;可选的,若第一率失真参数小于第二率失真参数,则终端设备可以将最佳编码方式确定为待编码单元对应的最终编码方式;可选的,若第一率失真参数等于第二率失真参数,则终端设备可以将最佳编码方式或不划分方式确定为待编码单元对应的最终编码方式。
应当理解,终端设备可以将候选参考帧集合中的视频帧确定为与待编码单元相关联的参考视频帧,视频编码器并未确定如何具体选择进行编码处理的参考视频帧,不同的选择会有不同的编码效果,为了获取最佳的编码效果,视频编码器可以将每种可能的参考帧组合都进行一遍编码,这其中包括极高复杂度的运动搜索和运动补偿,从而获取具有最佳编码效果的参考帧组合。其中,本申请实施例中的编码效果可以理解为失真,编码效果可以使用率失真代价来进行衡量,率失真代价下的编码效果还可以称之为率失真性能,率失真性能可以使用率失真参数(例如,第一率失真参数、第二率失真参数)来衡量。
应当理解,帧间预测的基本思想是利用视频数据的时域相关性,在之前已编码的一帧或两帧中选择一个像素分布最相似的区域对当前CU(即待编码单元)进行预测,然后仅需要编码这个相似区域的位置信息(即相似区域在视频帧中的横纵坐标)以及待编码CU与相似区域的像素差即可。一般地,像素差越小,需要传输的字节数越少,编码效率越高。编码器如果最终选择的不是最合理的区域进行预测,也能生成符合标准的码流,只是编码效果会受到损伤。寻找这个最合理区域是一个计算复杂度非常高的过程,编码器往往是通过逐像素比较实现的,这个过程也叫运动搜索。
因此,本申请实施例可以使用递归实现自下而上的编码架构,该编码架构可以先编码小块,再编码大块,这里的关键是不划分方式要在继续划分方式的后面编码,这样整个块划分过程会递归到最小子CU并逐层往上编码不划分方式。此时,当一个CU(即待编码单元)准备尝试不划分编码时,如果其可以继续划分,则其各种划分方式的编码已经完成,视频编码器已有在继续划分的情况下当前CU的最佳编码结果。本申请实施例会依次查询当前最佳编码划分形式中各个子CU的编码结果,若当前最佳编码结果符合要求,则当前CU在进行不划分编码时所使用的的参考帧列表将会被裁剪。
为便于理解,请参见图10,图10是本申请实施例提供的一种编码待编码单元的流程示意图。如图10所示,终端设备可以执行步骤S21,通过步骤S21从目标视频帧中获取待编码单元,进一步地,终端设备可以执行步骤S22,通过步骤S22使用划分的方式进行编码,依次编码各个子编码单元(即划分子编码单元),即对待编码单元进行单元划分,得到待编码单元的S个单元划分方式,进而依次编码S个单元划分方式下的各个划分子编码单元,生成待编码单元在S个单元划分方式下分别对应的层级划分方式。例如,S个单元划分方式可以包括目标单元划分方式,终端设备可以依次编码目标单元划分方式下的N个划分子编码单元,生成待编码单元在目标单元划分方式下对应的层级划分方式。
进一步地,如图10所示,终端设备可以执行步骤S23,通过步骤S23使用不划分的方式进行编码,即终端设备可以基于S个层级划分方式生成待编码单元在不划分方式下对应的候选参考帧集合,进而基于候选参考帧集合对待编码单元进行编码处理,得到待编码单元在不划分方式下的编码结果。
进一步地,如图10所示,终端设备可以执行步骤S24,通过步骤S24比较各种划分方式的率失真性能,选择最佳划分方式(即最终编码方式),即比较最佳编码方式的率失真性能和不划分方式的率失真性能,从最佳编码方式和不划分方式中获取待编码单元对应的最终编码方式。进一步地,终端设备可以执行步骤S25,步骤S25指示待编码单元编码结束。
由此可见,本申请实施例可以对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式,进而获取S个层级划分方式的最佳编码方式中的层级子编码单元,基于层级子编码单元对应的帧间预测模式和层级子编码单元对应的帧间预测方向,确定待编码单元在不划分方式下对应的候选参考帧集合,进而基于候选参考帧集合对待编码单元进行编码处理,从而可以从最佳编码方式和不划分方式中获取待编码单元对应的最终编码方式,从而在基于最终编码方式对目标视频帧进行编码处理时,可以同时兼顾目标视频帧的编码效果和编码效率。
进一步地,请参见图11,图11是本申请实施例提供的一种视频数据处理装置的结构示意图,该视频数据处理装置1可以包括:划分模块11,获取模块12,裁剪模块13;进一步地,该视频数据处理装置1还可以包括:条件判断模块14,确定模块15,参数比较模块16;
划分模块11,用于对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式;S为正整数;目标视频帧为视频数据中的视频帧;
其中,划分模块11包括:划分单元111,方式获取单元112,方式确定单元113;
划分单元111,用于对目标视频帧中的待编码单元进行单元划分,得到待编码单元的S个单元划分方式;S个单元划分方式包括目标单元划分方式;目标单元划分方式包括待编码单元的N个划分子编码单元;N为大于1的整数;N个划分子编码单元包括目标划分子编码单元;
方式获取单元112,用于获取目标划分子编码单元对应的子单元最终编码方式;
其中,方式获取单元112,具体用于若目标划分子编码单元满足单元划分条件,则对目标划分子编码单元进行递归层级划分,得到目标划分子编码单元的S个子单元层级划分方式;
方式获取单元112,具体用于从S个子单元层级划分方式中获取目标划分子编码单元的子单元最佳编码方式,获取子单元最佳编码方式中的子单元层级子编码单元;
方式获取单元112,具体用于若子单元层级子编码单元的子单元编码结果满足运动相似条件,则根据子单元层级子编码单元对针对目标划分子编码单元构建的子单元全量参考帧集合进行裁剪,生成目标划分子编码单元在不划分方式下对应的子单元候选参考帧集合;子单元候选参考帧集合用于为目标划分子编码单元遍历子单元目标参考帧;子单元目标参考帧用于对目标划分子编码单元进行编码处理;
方式获取单元112,具体用于从子单元最佳编码方式和不划分方式中获取目标划分子编码单元对应的子单元最终编码方式。
其中,方式获取单元112,具体用于获取目标划分子编码单元的子单元尺寸;
方式获取单元112,具体用于若子单元尺寸大于或等于尺寸阈值,则确定目标划分子编码单元满足单元划分条件;
方式获取单元112,具体用于若子单元尺寸小于尺寸阈值,则确定目标划分子编码单元不满足单元划分条件。
其中,方式获取单元112,具体用于若目标划分子编码单元不满足单元划分条件,则将不划分方式确定为目标划分子编码单元对应的子单元最终编码方式。
方式确定单元113,用于将N个划分子编码单元分别对应的子单元最终编码方式,确定为待编码单元在目标单元划分方式下对应的层级划分方式。
其中,划分单元111,方式获取单元112和方式确定单元113的具体实现方式,可以参见上述图7所对应实施例中对步骤S1011-步骤S1013、以及图3所对应实施例中对步骤S101的描述,这里将不再进行赘述。
获取模块12,用于从S个层级划分方式中获取待编码单元的最佳编码方式,获取最佳编码方式中的层级子编码单元;
其中,最佳编码方式包括待编码单元的M个划分子编码单元;M为大于1的整数;M个划分子编码单元包括辅助划分子编码单元;
获取模块12包括:第一确定单元121,第二确定单元122;
第一确定单元121,用于若辅助划分子编码单元不具有子编码单元,则将辅助划分子编码单元确定为最佳编码方式中的层级子编码单元;
第二确定单元122,用于若辅助划分子编码单元具有子编码单元,则从辅助划分子编码单元中获取最佳编码方式中的层级子编码单元。
其中,第一确定单元121和第二确定单元122的具体实现方式,可以参见上述图3所对应实施例中对步骤S102的描述,这里将不再进行赘述。
裁剪模块13,用于若层级子编码单元的编码结果满足运动相似条件,则根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合;候选参考帧集合用于为待编码单元遍历目标参考帧;目标参考帧用于对待编码单元进行编码处理。
其中,候选参考帧集合包括前向候选参考帧集合和后向候选参考帧集合;全量参考帧集合包括前向全量参考帧集合和后向全量参考帧集合;
裁剪模块13包括:集合获取单元131,第一筛选单元132,第二筛选单元133;
集合获取单元131,用于从视频数据中获取针对待编码单元构建的前向全量参考帧集合和后向全量参考帧集合;
其中,集合获取单元131,具体用于从视频数据中获取编码顺序早于目标视频帧的已编码视频帧;
集合获取单元131,具体用于若已编码视频帧的播放顺序早于目标视频帧,则将播放顺序早于目标视频帧的已编码视频帧添加至针对待编码单元构建的前向全量参考帧集合;
集合获取单元131,具体用于若已编码视频帧的播放顺序晚于目标视频帧,则将播放顺序晚于目标视频帧的已编码视频帧添加至针对待编码单元构建的后向全量参考帧集合。
第一筛选单元132,用于在前向全量参考帧集合中筛选层级子编码单元所使用的参考帧,若前向全量参考帧集合中存在层级子编码单元所使用的参考帧,则将在前向全量参考帧集合中筛选出的参考帧,确定为待编码单元在不划分方式下对应的前向候选参考帧集合;
第二筛选单元133,用于在后向全量参考帧集合中筛选层级子编码单元所使用的参考帧,若后向全量参考帧集合中存在层级子编码单元所使用的参考帧,则将在后向全量参考帧集合中筛选出的参考帧,确定为待编码单元在不划分方式下对应的后向候选参考帧集合。
其中,集合获取单元131,第一筛选单元132和第二筛选单元133的具体实现方式,可以参见上述图3所对应实施例中对步骤S103的描述,这里将不再进行赘述。
可选的,层级子编码单元的数量为P个;P为大于1的整数;P个层级子编码单元包括目标层级子编码单元;
条件判断模块14,用于获取目标层级子编码单元对应的帧间预测模式和帧间预测方向;
条件判断模块14,用于若P个层级子编码单元分别对应的帧间预测模式均为平移帧间预测、且P个层级子编码单元分别对应的帧间预测方向均相同,则确定P个层级子编码单元的编码结果满足运动相似条件;
条件判断模块14,用于若P个层级子编码单元中存在帧间预测模式不为平移帧间预测的层级子编码单元、或P个层级子编码单元分别对应的帧间预测方向不同,则确定P个层级子编码单元的编码结果不满足运动相似条件。
其中,条件判断模块14,具体用于获取目标层级子编码单元对应的帧间预测方向;目标层级子编码单元对应的帧间预测方向包括前向预测、后向预测和双向预测;
条件判断模块14,具体用于获取目标层级子编码单元中的每个像素分别对应的运动矢量;
条件判断模块14,具体用于若目标层级子编码单元中的每个像素分别对应的运动矢量均相同,则将平移帧间预测确定为目标层级子编码单元对应的帧间预测模式;
条件判断模块14,具体用于若目标层级子编码单元中存在运动矢量不同的像素,则将非平移帧间预测确定为目标层级子编码单元对应的帧间预测模式。
可选的,确定模块15,用于若层级子编码单元的编码结果不满足运动相似条件,则获取针对待编码单元构建的全量参考帧集合,将全量参考帧集合确定为待编码单元在不划分方式下对应的候选参考帧集合。
可选的,参数比较模块16,用于获取最佳编码方式的第一率失真参数和不划分方式的第二率失真参数;
参数比较模块16,用于若第一率失真参数大于或等于第二率失真参数,则将不划分方式确定为待编码单元对应的最终编码方式;
参数比较模块16,用于若第一率失真参数小于第二率失真参数,则将最佳编码方式确定为待编码单元对应的最终编码方式。
其中,划分模块11,获取模块12和裁剪模块13的具体实现方式,可以参见上述图3所对应实施例中对步骤S101-步骤S103、以及图7所对应实施例中对步骤S1011-步骤S1013的描述,这里将不再进行赘述。其中,条件判断模块14,确定模块15和参数比较模块16的具体实现方式,可以参见上述图9所对应实施例中对步骤S201-步骤S208的描述,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
进一步地,请参见图12,图12是本申请实施例提供的一种计算机设备的结构示意图,该计算机设备可以是终端设备或服务器。如图12所示,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,在一些实施例中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。可选的,网络接口1004可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器1005还可以是至少一个位于远离前述处理器1001的存储装置。如图12所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图8所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
对目标视频帧中的待编码单元进行递归层级划分,得到待编码单元的S个层级划分方式;S为正整数;目标视频帧为视频数据中的视频帧;
从S个层级划分方式中获取待编码单元的最佳编码方式,获取最佳编码方式中的层级子编码单元;
若层级子编码单元的编码结果满足运动相似条件,则根据层级子编码单元对针对待编码单元构建的全量参考帧集合进行裁剪,生成待编码单元在不划分方式下对应的候选参考帧集合;候选参考帧集合用于为待编码单元遍历目标参考帧;目标参考帧用于对待编码单元进行编码处理。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3、图7或图9所对应实施例中对视频数据处理方法的描述,也可执行前文图11所对应实施例中对视频数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且计算机可读存储介质中存储有前文提及的视频数据处理装置1所执行的计算机程序,当处理器执行计算机程序时,能够执行前文图3、图7或图9所对应实施例中对视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
此外,需要说明的是:本申请实施例还提供了一种计算机程序产品,该计算机程序产品可以包括计算机程序,该计算机程序可以存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器可以执行该计算机程序,使得该计算机设备执行前文图3、图7或图9所对应实施例中对视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (16)

1.一种视频数据处理方法,其特征在于,包括:
对目标视频帧中的待编码单元进行递归层级划分,得到所述待编码单元的S个层级划分方式;所述S为正整数;所述目标视频帧为视频数据中的视频帧;
从S个所述层级划分方式中获取所述待编码单元的最佳编码方式,获取所述最佳编码方式中的层级子编码单元;
若所述层级子编码单元的编码结果满足运动相似条件,则根据所述层级子编码单元对针对所述待编码单元构建的全量参考帧集合进行裁剪,生成所述待编码单元在不划分方式下对应的候选参考帧集合;所述候选参考帧集合用于为所述待编码单元遍历目标参考帧;所述目标参考帧用于对所述待编码单元进行编码处理。
2.根据权利要求1所述的方法,其特征在于,所述对目标视频帧中的待编码单元进行递归层级划分,得到所述待编码单元的S个层级划分方式,包括:
对目标视频帧中的待编码单元进行单元划分,得到所述待编码单元的S个单元划分方式;S个所述单元划分方式包括目标单元划分方式;所述目标单元划分方式包括所述待编码单元的N个划分子编码单元;所述N为大于1的整数;N个所述划分子编码单元包括目标划分子编码单元;
获取所述目标划分子编码单元对应的子单元最终编码方式;
将N个所述划分子编码单元分别对应的子单元最终编码方式,确定为所述待编码单元在所述目标单元划分方式下对应的层级划分方式。
3.根据权利要求2所述的方法,其特征在于,所述获取所述目标划分子编码单元对应的子单元最终编码方式,包括:
若所述目标划分子编码单元满足单元划分条件,则对所述目标划分子编码单元进行递归层级划分,得到所述目标划分子编码单元的S个子单元层级划分方式;
从S个所述子单元层级划分方式中获取所述目标划分子编码单元的子单元最佳编码方式,获取所述子单元最佳编码方式中的子单元层级子编码单元;
若所述子单元层级子编码单元的子单元编码结果满足所述运动相似条件,则根据所述子单元层级子编码单元对针对所述目标划分子编码单元构建的子单元全量参考帧集合进行裁剪,生成所述目标划分子编码单元在所述不划分方式下对应的子单元候选参考帧集合;所述子单元候选参考帧集合用于为所述目标划分子编码单元遍历子单元目标参考帧;所述子单元目标参考帧用于对所述目标划分子编码单元进行编码处理;
从所述子单元最佳编码方式和所述不划分方式中获取所述目标划分子编码单元对应的子单元最终编码方式。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取所述目标划分子编码单元的子单元尺寸;
若所述子单元尺寸大于或等于尺寸阈值,则确定所述目标划分子编码单元满足所述单元划分条件;
若所述子单元尺寸小于所述尺寸阈值,则确定所述目标划分子编码单元不满足所述单元划分条件。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述目标划分子编码单元不满足所述单元划分条件,则将所述不划分方式确定为所述目标划分子编码单元对应的子单元最终编码方式。
6.根据权利要求1所述的方法,其特征在于,所述最佳编码方式包括所述待编码单元的M个划分子编码单元;所述M为大于1的整数;M个所述划分子编码单元包括辅助划分子编码单元;
所述获取所述最佳编码方式中的层级子编码单元,包括:
若所述辅助划分子编码单元不具有子编码单元,则将所述辅助划分子编码单元确定为所述最佳编码方式中的层级子编码单元;
若所述辅助划分子编码单元具有子编码单元,则从所述辅助划分子编码单元中获取所述最佳编码方式中的层级子编码单元。
7.根据权利要求1所述的方法,其特征在于,所述候选参考帧集合包括前向候选参考帧集合和后向候选参考帧集合;所述全量参考帧集合包括前向全量参考帧集合和后向全量参考帧集合;
所述根据所述层级子编码单元对针对所述待编码单元构建的全量参考帧集合进行裁剪,生成所述待编码单元在不划分方式下对应的候选参考帧集合,包括:
从所述视频数据中获取针对所述待编码单元构建的所述前向全量参考帧集合和所述后向全量参考帧集合;
在所述前向全量参考帧集合中筛选所述层级子编码单元所使用的参考帧,若所述前向全量参考帧集合中存在所述层级子编码单元所使用的参考帧,则将在所述前向全量参考帧集合中筛选出的参考帧,确定为所述待编码单元在不划分方式下对应的所述前向候选参考帧集合;
在所述后向全量参考帧集合中筛选所述层级子编码单元所使用的参考帧,若所述后向全量参考帧集合中存在所述层级子编码单元所使用的参考帧,则将在所述后向全量参考帧集合中筛选出的参考帧,确定为所述待编码单元在所述不划分方式下对应的所述后向候选参考帧集合。
8.根据权利要求7所述的方法,其特征在于,所述从所述视频数据中获取针对所述待编码单元构建的所述前向全量参考帧集合和所述后向全量参考帧集合,包括:
从所述视频数据中获取编码顺序早于所述目标视频帧的已编码视频帧;
若所述已编码视频帧的播放顺序早于所述目标视频帧,则将播放顺序早于所述目标视频帧的已编码视频帧添加至针对所述待编码单元构建的所述前向全量参考帧集合;
若所述已编码视频帧的播放顺序晚于所述目标视频帧,则将播放顺序晚于所述目标视频帧的已编码视频帧添加至针对所述待编码单元构建的所述后向全量参考帧集合。
9.根据权利要求1所述的方法,其特征在于,所述层级子编码单元的数量为P个;所述P为大于1的整数;P个所述层级子编码单元包括目标层级子编码单元;
所述方法还包括:
获取所述目标层级子编码单元对应的帧间预测模式和帧间预测方向;
若P个所述层级子编码单元分别对应的帧间预测模式均为平移帧间预测、且P个所述层级子编码单元分别对应的帧间预测方向均相同,则确定P个所述层级子编码单元的编码结果满足所述运动相似条件;
若P个所述层级子编码单元中存在帧间预测模式不为所述平移帧间预测的层级子编码单元、或P个所述层级子编码单元分别对应的帧间预测方向不同,则确定P个所述层级子编码单元的编码结果不满足所述运动相似条件。
10.根据权利要求9所述的方法,其特征在于,所述获取所述目标层级子编码单元对应的帧间预测模式和帧间预测方向,包括:
获取所述目标层级子编码单元对应的帧间预测方向;所述目标层级子编码单元对应的帧间预测方向包括前向预测、后向预测和双向预测;
获取所述目标层级子编码单元中的每个像素分别对应的运动矢量;
若所述目标层级子编码单元中的每个像素分别对应的运动矢量均相同,则将平移帧间预测确定为所述目标层级子编码单元对应的帧间预测模式;
若所述目标层级子编码单元中存在运动矢量不同的像素,则将非平移帧间预测确定为所述目标层级子编码单元对应的帧间预测模式。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述方法还包括:
若所述层级子编码单元的编码结果不满足所述运动相似条件,则获取针对所述待编码单元构建的全量参考帧集合,将所述全量参考帧集合确定为所述待编码单元在所述不划分方式下对应的候选参考帧集合。
12.根据权利要求1-10任一项所述的方法,其特征在于,所述方法还包括:
获取所述最佳编码方式的第一率失真参数和所述不划分方式的第二率失真参数;
若所述第一率失真参数大于或等于所述第二率失真参数,则将所述不划分方式确定为所述待编码单元对应的最终编码方式;
若所述第一率失真参数小于所述第二率失真参数,则将所述最佳编码方式确定为所述待编码单元对应的最终编码方式。
13.一种视频数据处理装置,其特征在于,包括:
划分模块,用于对目标视频帧中的待编码单元进行递归层级划分,得到所述待编码单元的S个层级划分方式;所述S为正整数;所述目标视频帧为视频数据中的视频帧;
获取模块,用于从S个所述层级划分方式中获取所述待编码单元的最佳编码方式,获取所述最佳编码方式中的层级子编码单元;
裁剪模块,用于若所述层级子编码单元的编码结果满足运动相似条件,则根据所述层级子编码单元对针对所述待编码单元构建的全量参考帧集合进行裁剪,生成所述待编码单元在不划分方式下对应的候选参考帧集合;所述候选参考帧集合用于为所述待编码单元遍历目标参考帧;所述目标参考帧用于对所述待编码单元进行编码处理。
14.一种计算机设备,其特征在于,包括:处理器和存储器;
所述处理器与所述存储器相连,其中,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-12任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-12任一项所述的方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,且适于由处理器读取并执行,以使得具有所述处理器的计算机设备执行权利要求1-12任一项所述的方法。
CN202310159839.9A 2023-02-17 2023-02-17 一种视频数据处理方法、装置、计算机设备以及存储介质 Pending CN116170582A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310159839.9A CN116170582A (zh) 2023-02-17 2023-02-17 一种视频数据处理方法、装置、计算机设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310159839.9A CN116170582A (zh) 2023-02-17 2023-02-17 一种视频数据处理方法、装置、计算机设备以及存储介质

Publications (1)

Publication Number Publication Date
CN116170582A true CN116170582A (zh) 2023-05-26

Family

ID=86416128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310159839.9A Pending CN116170582A (zh) 2023-02-17 2023-02-17 一种视频数据处理方法、装置、计算机设备以及存储介质

Country Status (1)

Country Link
CN (1) CN116170582A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117440167A (zh) * 2023-09-28 2024-01-23 书行科技(北京)有限公司 一种视频解码方法、装置、计算机设备、介质及产品

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117440167A (zh) * 2023-09-28 2024-01-23 书行科技(北京)有限公司 一种视频解码方法、装置、计算机设备、介质及产品
CN117440167B (zh) * 2023-09-28 2024-05-28 书行科技(北京)有限公司 一种视频解码方法、装置、计算机设备、介质及产品

Similar Documents

Publication Publication Date Title
US20210243466A1 (en) Video encoding device and video decoding device using high-precision skip encoding and method thereof
JP6473125B2 (ja) ビデオ復号化方法、ビデオ復号化装置、ビデオ符号化方法、ビデオ符号化装置
TWI601411B (zh) 視訊解碼裝置
CN108307196B (zh) 视频编码方法和视频编码设备
US10728565B2 (en) Video encoding method and apparatus thereof and a video decoding method and apparatus thereof
US20160050433A1 (en) Method and apparatus for determining reference images for inter-prediction
CN111277826B (zh) 一种视频数据处理方法、装置及存储介质
US20150163510A1 (en) Method and apparatus for encoding video and method and apparatus for decoding video determining inter-prediction reference picture list depending on block size
TW201412127A (zh) 畫面間預測的運動向量預測方法與裝置
US20150071351A1 (en) Inter prediction method in which reference picture lists can be changed and apparatus for the same
US20160173904A1 (en) Method for determining motion vector and apparatus therefor
US20150117526A1 (en) Method for encoding multiview video using reference list for multiview video prediction and device therefor, and method for decoding multiview video using reference list for multiview video prediction and device therefor
US20160073129A1 (en) Depth map encoding method and apparatus thereof, and depth map decoding method and apparatus thereof
US20170078697A1 (en) Depth image prediction mode transmission method and apparatus for encoding and decoding inter-layer video
US20150023430A1 (en) Method and apparatus for multiview video encoding based on prediction structures for viewpoint switching, and method and apparatus for multiview video decoding based on prediction structures for viewpoint switching
CN107079159B (zh) 基于多核系统的并行视频解码的方法和设备
CN116170582A (zh) 一种视频数据处理方法、装置、计算机设备以及存储介质
CN116567228A (zh) 编码方法、实时通信方法、装置、设备及存储介质
CN112235582B (zh) 一种视频数据处理方法、装置、计算机设备及存储介质
US20150010074A1 (en) Method and apparatus for encoding multi-view video prediction capable of view switching, and method and apparatus for decoding multi-view video prediction capable of view switching
CN116489385A (zh) 视频编码方法、解码方法、装置、电子设备及存储介质
CN112055970B (zh) 候选运动信息列表的构建方法、帧间预测方法及装置
CN115733988A (zh) 一种视频数据处理方法、装置、计算机设备以及存储介质
CN116760986B (zh) 候选运动矢量生成方法、装置、计算机设备和存储介质
CN114449283B (zh) 一种数据处理方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40086157

Country of ref document: HK