CN112312133B - 一种视频编码方法、装置、电子设备及可读存储介质 - Google Patents
一种视频编码方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN112312133B CN112312133B CN202011194331.5A CN202011194331A CN112312133B CN 112312133 B CN112312133 B CN 112312133B CN 202011194331 A CN202011194331 A CN 202011194331A CN 112312133 B CN112312133 B CN 112312133B
- Authority
- CN
- China
- Prior art keywords
- coding unit
- information
- coding
- encoder
- depth
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/567—Motion estimation based on rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明实施例提供了一种视频编码方法、装置、电子设备及可读存储介质,属于视频编码技术领域。该视频编码方法包括获取第一编码器对目标视频进行编码的第一编码信息,第一编码信息包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种;确定第二编码器对目标视频进行编码的第二编码信息;其中,第二编码信息是基于第一编码信息确定的;基于第二编码信息,对目标视频进行编码。这样,可以利用第一编码信息的计算过程减少第二编码信息中与第一编码信息相似的编码信息的计算过程,从而减少了第二编码器的计算时间,因此,本申请实施例减少了编码过程中的计算量,提高了视频编码效率。
Description
技术领域
本发明涉及视频编码技术领域,特别是涉及一种视频编码方法、装置、电子设备及可读存储介质。
背景技术
目前,在对视频进行编码时,为适应不同的网络带宽,通常将同一视频内容编码为不同的码率挡位,以得到不同分辨率的视频,从而保证所有用户都能体验到流畅的视频。在采用这种“一进多出”的方式进行视频编码时,输入同一个视频内容,采用多路编码器分别对该同一个视频内容进行编码,以输出多路编码视频,其中,任意两路编码视频的编码质量不同。在该一进多出编码场景中,每一路编码器的编码过程独立。
随着视频编码的复杂度逐渐增高,一进多出场景中的每一路编码器都独立编码,在编码过程中的编码信息的计算量逐渐增大,视频编码的效率逐渐降低。
发明内容
本发明实施例的目的在于提供一种视频编码方法、装置、电子设备及可读存储介质,以在一定程度上解决现有的视频编码复杂度高,编码过程中的计算量大,导致视频编码的效率低的问题。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种视频编码方法,应用于包括第一编码器与第二编码器的系统,所述第一编码器与所述第二编码器用于对相同的目标视频分别进行编码;所述方法执行于所述第二编码器,所述方法包括:
获取所述第一编码器对所述目标视频进行编码的第一编码信息,所述第一编码信息包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种;
确定所述第二编码器对所述目标视频进行编码的第二编码信息;其中,所述第二编码信息是基于所述第一编码信息确定的;
基于所述第二编码信息,对所述目标视频进行编码。
在本发明实施的第二方面,还提供了一种视频编码装置,所述装置为第二编码器或所述装置设置于所述第二编码器中,所述第二编码器所在的系统中还包括第一编码器,所述第一编码器与所述第二编码器用于对相同的目标视频分别进行编码,所述装置包括:
获取模块,用于获取所述第一编码器对所述目标视频进行编码的第一编码信息,所述第一编码信息包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种;
确定模块,用于确定所述第二编码器对所述目标视频进行编码的第二编码信息;其中,所述第二编码信息是基于所述第一编码信息确定的;
编码模块,用于基于所述第二编码信息,对所述目标视频进行编码。
在本发明实施的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。
在本发明实施的第四方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的方法。
本发明实施例提供的一种视频编码方法、装置、电子设备及可读存储介质,获取了第一编码器对目标视频进行编码的第一编码信息,并基于第一编码信息确定了第二编码器对目标视频进行编码的第二编码信息,这样,可以以第一编码信息为参考,确定第二编码信息。在采用多路编码器将相同的目标视频编码为不同分辨率、不同质量的编码的时候,各路编码器在编码过程中存在相似的计算过程,由此,以第一编码信息为参考,确定第二编码信息,可以利用第一编码信息的计算过程,减少第二编码信息中与第一编码信息相似的编码信息的计算过程,可以省略第二编码信息的计算步骤,从而减少第二编码器的计算时间,那么,在一进多出场景中,一个或多个第二编码器都可以据此简化编码过程,这使得本申请实施例能够在一定程度上减少编码过程中的计算量,有利于提高第二编码器的视频编码效率,也有利于提高整个一进多出场景的视频编码效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为现有的一种一进多出的编码方式的编码系统示意图;
图2为本发明实施例提供的一种视频编码方法流程示意图;
图3为本发明实施例提供的一种一进多出的编码方式的编码系统示意图;
图4为本发明实施例提供的一种视频编码装置的模块结构示意图;
图5为本发明实施例提供的一种电子设备的模块结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
值得说明的是,一进多出的编码方式是指输入同一个视频内容,采用多路编码器对该同一个视频内容进行编码,以输出多路编码视频。其中,现有的编码方式的编码系统示意图如图1所示,包括五路编码器,分别为编码器1、编码器2、编码器3、编码器4、编码器5,图1中,每一路编码器的编码过程互相独立,分别针对于输入的视频内容进行单独编码,然后输出五路编码视频。这样,随着视频编码的复杂度逐渐增高,导致多路编码器在编码过程中的编码信息的计算量逐渐增大,视频编码的效率逐渐降低。
针对于此,在采用“一进多出”方式进行编码时,也即在采用多路编码器将相同的目标视频编码为不同分辨率、不同质量的编码的时候,本申请利用各路编码器在编码过程中存在相似的计算过程,以其中一个编码器(作为第一编码器)的第一编码信息为参考,确定其他编码器(作为第二编码器)的第二编码信息,从而,可以利用第一编码信息的计算过程,减少第二编码信息中与第一编码信息相似的编码信息的计算过程,以提高第二编码器的视频编码效率,进而也提高整个一进多出场景的视频编码效率。该视频编码方法是通过如下方式实现的:
请参见图2,本申请实施例提供了一种视频编码方法。该视频编码方法应用于包括第一编码器与第二编码器的系统,第一编码器与第二编码器用于对相同的目标视频分别进行编码;本申请实施例以一个第二编码器的编码过程为例,对本方案进行介绍。可以理解,实际场景中的第二编码器的数目可以为一个或多个,任一路第二编码器都可以采用本申请实施方式所述的方法进行视频编码。
本申请实施例提供的视频编码方法执行于第二编码器,该视频编码方法包括:
步骤101、获取第一编码器对目标视频进行编码的第一编码信息,第一编码信息包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种。
其中,在进行多路编码器的编码时,选取其中一路编码器作为第一编码器,其余的编码器作为第二编码器。
示例性的,可以在多路编码器中选择中间一路编码器作为第一编码器,其余编码器作为第二编码器。例如,采用如图3所示的编码系统进行编码时,编码系统包括五路编码器,选取该五路编码器中位于中间位置的编码器作为第一编码器,将除第一编码器以外的其余路编码器作为第二编码器。
需要说明的是,在采用多路编码器进行编码时,编码器的类型或型号越接近,编码器的编码方式越接近,编码器的编码方式越接近,各路编码器之间的编码信息参考价值越高,越有利于基于本方案得到更为准确的编码结果。作为一个优选的实施方式,本申请中选取类型或型号相同的编码器作为第一编码器和第二编码器。
可变换地,作为可变换的实施方式,在其他可行的实施例中,多路编码器的排列方式还可以是其他的结构,当在多路编码器的位于中间位置的编码器的数量为两个的情况下,选取该两个编码器中的任一个作为第一编码器。这样,选取多路编码器的中间位置的编码器作为第一编码器,使得每一个第二编码器尽可能离第一编码器的距离更近。需要说明的是,不论多路编码器的排列方式作何变换,都可以选取多路编码器中位于中间位置的编码器作为第一编码器,从而保证第二编码器尽可能离第一编码器的距离更近,这样,可以减少编码过程中增加的码率,降低视频编码对网络带宽的要求,进一步降低编码成本,且可以便于更快速的基于第一编码器的第一编码信息确定第二编码器的第二编码信息。当然,除此之外,也可以在多路编码器中选择非中间位置的编码器作为第一编码器,本申请实施例对此无特别限制。
在该实施方式中,在第一编码器对目标视频进行编码后,保存第一编码器在对目标视频进行编码的编码过程中的编码信息作为第一编码信息,并将该第一编码信息发送至第二编码器,以使得第二编码器可以获取到第一编码器对目标视频进行编码的第一编码信息。可变换地,在其他可行的实施例中,还可以通过第二编码器向第一编码器发送编码信息获取请求,并接收来自于第一编码器反馈的第一编码信息。此处仅作示例,不做限定。需要说明的是,该实施方式中的第一编码信息主要包括但不限于划分深度信息、预测模式信息或运动矢量信息中的一种或多种。
具体而言,编码器在对目标视频进行编码时,需要基于编码帧中各编码单元的划分深度信息实现编码步骤,在该实施方式中,划分深度信息包括划分深度和与划分深度对应的划分尺寸,其中,划分深度用于表征进行划分的次数,划分尺寸用于表征划分后得到的子编码块的尺寸。例如,在视频编码过程中,经过一次编码处理的编码单元的划分深度为0,该划分深度对应的划分尺寸为64x64。
此外,本实施例中的预测模式信息可以是帧间预测模式或者帧内预测模式。需要说明的是,一个编码单元可以包含一个或者多个预测单元,预测单元是编码过程中进行预测运算的基本单元,其采用的预测方式包括但不限于:帧内预测模式或帧间预测模式。
本实施例中的运动矢量信息可以是,图像中的某一个对象在连续的图片帧中的位移量与位移方向。其中,对象可以为图像中的任意一个对象,或者,也可以为图像被编码时的对象。例如,该对象可以是某一特定的编码(或称为:编码单元);又例如,对象也可以是图像中的一个实体对象,例如图中的车辆、行人等。本发明实施例对于图像中对象的类型无特别限制。
需要说明的是,目标视频包括多张图片帧,在连续的图片帧中,若某一个对象的对象形态没有发生变化,仅仅是该对象的位置发生了变化,则该对象的变化量与变化方向为运动矢量。例如,目标视频包括图片帧A和图片帧B,对象C在图片A中的位置为D,对象C在图片B中的位置为E,对于对象C由位置D变为位置E的位置变化量和变化的方向即为运动矢量。
步骤102、确定第二编码器对目标视频进行编码的第二编码信息;其中,第二编码信息是基于第一编码信息确定的。
如前文所述,第一编码信息可以包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种,因此,可以基于第一编码器对编码块编码的第一编码信息,确定同一类型的第二编码器对同一个编码块编码的第二编码信息。
其中,可以基于第一编码信息中的第一划分深度信息确定第二编码信息中的第二划分深度信息。
作为可变换的实施方式,在其他可行的实施例中,还可以基于第一编码信息中的预测模式信息确定第二编码信息中的预测模式信息。
在又一个可行的实施例中,还可以基于第一编码信息中的运动矢量信息确定第二编码信息中的运动矢量信息。
除单独实施之外,当第一编码信息包括前述至少两种信息时,则可以分别基于各第一编码信息,确定相应的第二编码信息,如此,可以得到至少两种第二编码信息。
在又一个可行的实施例中,还可以分别基于第一编码信息的第一划分深度信息、预测模式信息或运动矢量信息,确定第二编码信息中的划分深度信息、预测模式信息或运动矢量信息。
后续具体说明确定第二编码信息的方式,此处不作赘述。
步骤103、基于第二编码信息,对目标视频进行编码。
本发明实施例提供的一种视频编码方法,获取了第一编码器对目标视频进行编码的第一编码信息,并基于第一编码信息确定了第二编码器对目标视频进行编码的第二编码信息,这样,可以以第一编码信息为参考,确定第二编码信息。在采用多路编码器将相同的目标视频编码为不同分辨率、不同质量的编码的时候,各路编码器在编码过程中存在相似的计算过程,由此,以第一编码信息为参考,确定第二编码信息,可以利用第一编码信息的计算过程,减少第二编码信息中与第一编码信息相似的编码信息的计算过程,可以省略第二编码信息的计算步骤,从而减少第二编码器的计算时间,因此,本申请实施例能够减少编码过程中的计算量,提高了视频编码效率。
可选地,在划分深度信息包括第一编码单元的第一划分深度的情况下,第二编码信息为第二编码单元的划分深度方式;
划分深度方式包括第一划分深度方式或第二划分深度方式;第一划分深度方式用于指示不计算第二编码单元在当前块的率失真代价,直接计算第二编码单元的划分子块的率失真代价,第二划分深度方式用于指示只计算第二编码单元在当前块的率失真代价,不再往下迭代划分。
其中,第一编码单元为第一编码器采用的用于对目标视频进行编码的编码单元,第二编码单元为第二编码器采用的用于对目标视频进行编码的编码单元,第一编码单元与第二编码单元的编码位置相对应。
具体地,本申请实施例中的第一划分深度方式用于指示不计算第二编码单元在当前块的率失真代价,直接计算第二编码单元的划分子块的率失真代价。例如,第二编码单元在当前的划分深度为2,在第一划分深度方式下,第二编码单元无需计算划分深度方式为2时的率失真代价,直接计算划分深度为3时的率失真代价(也就是继续对第二编码单元进行迭代划分后,计算下一层划分得到的子块的率失真代价),并将划分深度为2时的率失真代价设为默认的最大值,这样,省去了计算化分深度为2时的率失真代价的计算过程,使计算过程更为简单。
本申请中的第二划分深度方式用于指示只计算第二编码单元在当前块的率失真代价,不再往下迭代划分。例如,第二编码单元在当前的划分深度为2,在第二划分方式下,只计算划分深度方式为2时的率失真代价,不再计算后续的划分深度为3或者划分深度为4时的率失真代价,这样,可以省略划分深度为3或者划分深度为4时的率失真代价的计算过程,使计算过程更为简单。
值得强调的是,在本申请实施方式中,第一编码单元不是表示编码单元的数量为一个,而是表示第一编码器对视频帧进行编码的编码单元的统称。同样,第二编码单元不是表示编码单元的数量为二个,而是表示第二编码器对视频帧进行编码的编码单元的统称。
在一个可行的实施方式中,根据第一编码单元的第一划分深度确定第二编码单元的划分深度方式,以下详细介绍。
在该实施方式中,划分深度信息包括划分深度和与划分深度对应的划分尺寸,可理解地,以一个编码单元的划分深度总共为4为例进行说明,则,在对该编码单元对应的编码块进行划分时,若划分深度为0时,可以得到对应的划分尺寸为64x64的子编码块,划分深度为1时,可以得到对应的划分尺寸为32x32的子编码块,划分深度为2时,可以得到对应的划分尺寸为16x16的子编码块,划分深度为3时,可以得到对应的划分尺寸为8x8的子编码块。
值得强调的是,确定一个编码单元的划分深度之后,基于该划分深度,将该编码单元对应的编码块划分为若干个面积相等的子编码块,划分深度越大,划分深度对应的划分尺寸越小,得到的子编码块的面积越大。例如,划分深度为1时,可以得到对应的划分尺寸为64x64的子编码块,划分深度为2时,可以得到对应的划分尺寸为32x32的子编码块,划分深度为2时得到的子编码块的面积大于划分深度为1时得到的子编码块的面积。
若在第二编码器没有参考第一编码信息的情况下,第二编码器会依据传统的编码方式执行编码。例如,在确定第二编码单元的划分深度方式时,需要计算编码单元在每一个划分深度下的率失真代价,具体地,计算划分深度为1时的率失真代价为L1,计算划分深度为2时的率失真代价为L2,划分深度为3时的率失真代价为L3,划分深度为4时的率失真代价为L4,然后,选取该4个划分深度下率失真代价最小的划分深度作为第二编码单元最终确定的划分深度方式。这样,计算过程繁琐。
可选地,确定第二编码器对目标视频进行编码的第二编码信息,包括:
基于第一编码单元的第一划分深度与第二编码单元的第二划分深度,确定第一编码单元中的参考编码单元,参考编码单元的第一划分深度小于相对应的第二编码单元的第二划分深度;
基于参考编码单元的面积与第二编码单元的面积,确定第二编码单元的划分指标,划分指标用于指示第二编码单元不进一步划分的倾向程度;
基于划分指标,确定第二编码单元的划分深度方式。
在该实施方式中,在基于第一划分深度确定第二编码信息时,首先确定第一编码单元中与第二编码单元位置对应的参考编码单元。本实施方式中的位置对应是指,第二编码单元对图像中的区域A进行编码,参考编码单元也是对该图像中的区域A进行编码。进一步地,基于参考编码单元的面积与第二编码单元的面积,确定第二编码单元的划分指标,在该实施方式中,划分指标用于指示第二编码单元不进一步划分的倾向程度,然后基于划分指标,确定第二编码单元的划分深度方式为上述的第一划分深度方式或者第二划分深度方式。
值得指出的是,第二编码器在参考第一编码器的计算过程中,也需要执行相应的计算。例如,在某一次参考过程中,第二编码器也需要计算划分深度为1,或者继续往下的划分深度为2时的对应的率失真代价等。采用本申请的方法,基于参考的第一编码器的信息,可以确定是否要省略计算划分深度为1,或者继续往下的划分深度为2时的对应的率失真代价。也即,在无需参考第一编码信息的情况下,第二编码器需要计算所有情况下的划分深度对应的率失真代价,采用了本申请的方法,第二编码器只需要计算部分的划分深度对应的率失真代价,这样,可以省略第二编码器与第一编码器的相似的率失真代价的计算步骤,有利于提高第二编码器的视频编码效率。可选地,划分指标为:参考编码单元的面积与第一编码单元的面积之间的面积比值,或复杂度参数中的至少一项;其中,复杂度参数基于面积比值和第二编码单元的像素值确定。
可选地,在划分指标包括面积比值的情况下,基于划分指标,确定第二编码单元的划分深度方式,包括:
基于第二编码单元的像素值确定第一阈值和第二阈值;其中,第一阈值大于第二阈值;此时存在如下两种情况:
第一种,在面积比值大于或等于第一阈值的情况下,确定第二编码单元的划分深度方式为第一划分深度方式。这种情况下,面积比值大于或等于第一阈值,说明参考编码单元在对区域A(也即编码块)进行编码时,将其划分为面积更大的子编码块,即,划分深度更深,因此,第二编码单元可以考虑继续往更深的划分深度进行迭代划分。
第二种,在面积比值小于或等于第二阈值的情况下,确定第二编码单元的划分深度方式为第二划分深度方式。这种情况下,面积比值小于或等于第二阈值,说明第一编码单元更倾向于参考编码单元的划分深度,此时,第二编码单元可以参考第一编码器的倾向,无需再往更深的划分深度进行迭代划分。
在该实施方式中,通过第一阈值和第二阈值确定第二编码单元的划分深度方式,可以省略第二编码单元重复计算与第一编码单元一致的编码模式,节省了计算资源。
其中,若面积比值大于第二阈值但小于第一阈值,此时,第一编码单元的倾向性不明显,此时,第二编码单元无需参考第一编码单元的编码模式,按照第二编码单元的正常计算方式计算即可。其中,第二编码单元的正常计算方式可以但不限于是如下方式:计算第二编码单元在每一个划分深度下的率失真代价,然后将所有划分深度下的率失真代价进行比较,选择率失真代价最小的划分方式作为第二编码单元的划分方式。
可选地,在该实施方式中,基于第二编码单元的像素值确定第一阈值和第二阈值,包括:
通过预先训练好的支持向量机SVM(support vector machines,SVM)模型训练得到两组权重,分别为第一权重组和第二权重组;
基于第一权重组,计算第二编码单元的像素平均值、像素值方差、像素梯度值的加权和,得到第一阈值;
基于第二权重组,计算第二编码单元的像素平均值、像素值方差、像素梯度值的加权和,得到第二阈值。
在该实施方式中,通过SVM训练器确定第一阈值和第二阈值,可以使得到的第一阈值和第二阈值更加精确。
其中,SVM是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane)。本申请中,采用SVM训练得到两组权重,可以快速高效地得到第一权重组和第二权重组。此处仅作示例,不做限定,可变换地,在其他可行的实施例中,还可以采用其他的方式得到第一权重组和第二权重组,例如,可以依据相关工作人员的经验设定或者其他类型的算法计算得到。
可理解地,在该实施方式中,首先通过SVM训练器随机训练得到两组权重,分别为第一权重组weights1和第二组权重组weights2。
其中,第一阈值Y1满足如下计算公式:
Y1=|(0-weights1[0]*平均值-weights1[1]*方差-weights1[2]*梯度-weights1[4])|/weights1[3]。
式中,weights1[0]表示第一权重组weights1的第一个权重值,weights1[1]表示第一权重组weights1的第二个权重值,weights1[2]表示第一权重组weights1的第三个权重值,weights1[3]表示第一权重组weights1的第四个权重值,weights1[4]表示第一权重组weights1的第五个权重值。“*”表示乘法。
需要说明的是,本申请实施方式中,平均值可以是第二编码单元对应的编码块的原始像素的平均值,方差可以是第二编码单元对应的编码块的原始像素的方差,梯度可以是第二编码单元对应的编码块的原始像素的方差。
第二阈值Y2满足如下计算公式:
Y2=|(0-weights2[0]*平均值–weights2[1]*方差–weights2[2]*梯度-weights2[4])|/weights2[3]。
式中,weights2[0]表示第二权重组weights2的第一个权重值,weights2[1]表示第二权重组weights2的第二个权重值,weights2[2]表示第二权重组weights2的第三个权重值,weights2[3]表示第二权重组weights2的第四个权重值,weights2[4]表示第二权重组weights2的第五个权重值。
在该实施方式中,分别基于第一权重组、第二权重组以及第二编码单元对应的编码块的原始像素的平均值、方差、和梯度确定第一阈值和第二阈值,充分考虑了第二编码单元的原始像素的影响,可以是计算得到的第一阈值和第二阈值更为准确。
然后,将参考编码单元的面积与第一编码单元的面积之间的面积比值,与上述的第一阈值Y1进行比较。其中,将面积比值记为p0,那么,当p0≥Y1时,确定第二编码单元的划分深度方式为第一划分深度方式。反之,则p0<Y1,此时,将前述面积比值p0和第二阈值Y2进行比较。此时,当p0≤Y2时,确定第二编码单元的划分深度方式为第二划分深度方式。其中,Y2<Y1。若Y2<p0<Y1,则对第二编码单元进行计算,以确定第二编码单元的划分方式。
可以理解,“等于”对应的执行策略可以根据实际场景自由选择。示例性的,在前述实施例中,也可以按照如下方式实现:当面积比值大于第一阈值(p0>Y1)时,确定第二编码单元的划分深度方式为第一划分深度方式;当面积比值小于第二阈值(p0<Y2)时,第二编码单元的划分深度方式为第二划分深度方式;当面积比值小于或等于第一阈值,且面积比值大于或等于第二阈值时,也即Y2≤p0≤Y1,则对第二编码单元进行计算,以确定第二编码单元的划分方式。
可变换地,在划分指标包括复杂度参数的情况下,复杂度参数为面积比值与像素加权和之和;像素加权和为第二编码单元的像素平均值、像素值方差、像素梯度值的加权和;
基于划分指标,确定第二编码单元的划分深度方式,包括:
在第一复杂度参数大于或等于第五阈值的情况下,确定第二编码单元的划分深度方式为第一划分方式;第一复杂度参数由第一权重组确定;
在第二复杂度参数小于或等于第五阈值的情况下,确定目标编码单元的划分深度方式为第二划分方式;第二复杂度参数由第二权重组确定,第一权重组与第二权重组不完全相同。
此外,若不满足前述任意一种条件,即可能存在第一复杂度参数小于第五阈值,第二复杂度参数大于第五阈值的情况,则第二编码单元进行计算,以确定第二编码单元的划分方式。
需要说明的是,平均值、方差和梯度值用于体现视频内容的复杂性,可以作为判断当前编码单元对应的编码块是否需要进行划分的依据。其中,编码块之间的相似性越高,则编码块之间的平均值越接近于0,方差值和梯度值越小,表明,该编码块越有可能是相同或相似的内容。本申请中,基于平均值、方差和梯度值确认划分模式,可以充分考虑视频内容的复杂性,这样可以更准确地确定编码单元的划分深度方式。
在该实施方式中,复杂度参数包括第一复杂度参数F1和第二复杂度参数F2,其中,第一复杂度参数的计算公式可以是:
F1=weights1[0]*平均值+weights1[1]*方差+weights1[2]*梯度+weights1[3]*p0+weights1[4];
第二复杂度参数的计算公式可以是:
F2=weights2[0]*平均值+weights2[1]*方差+weights2[2]*梯度+weights2[3]*p0+weights2[4]。
该实施方式中,若设置第五阈值为0,即,当F1≥0时,确定第二编码单元的划分深度方式为第一划分方式,当F2≤0时,确定第二编码单元的划分深度方式为第二划分方式。
与前文类似,“等于”的情况可以基于实际需求设置,不再重复说明。
在该实施方式中,基于第一编码器的第一划分深度,确定第二编码单元的划分深度方式,减少了第二编码器在确定划分深度方式时与第一编码器的相似的计算过程,例如,省略了与第一编码器相似的划分深度对应的率失真代价的计算步骤,减少了第二编码器在编码过程中的计算量,进一步提高了视频编码效率。
在另一个可行的实施例中,根据第一编码单元的预测模式信息确定第二编码单元的预测模式信息,以下具体介绍。
可选地,在第一编码信息包括预测模式信息的情况下,第二编码信息为第二编码单元的预测模式信息;
确定第二编码器对目标视频进行编码的第二编码信息包括:
计算第一模式在第一编码单元的编码模式中所占的比例;
当所述比例大于或等于第三阈值时,确定所述第一模式为所述第二编码器的预测模式;
当所述比例小于或等于第四阈值时,确定第二模式为所述第二编码器的预测模式;所述第三阈值大于所述第四阈值;
其中,当所述第一模式为帧间预测模式时,所述第二模式为帧内预测模式;当所述第一模式为帧内预测模式时,所述第二模式为帧间预测模式。
其中,第二编码单元为第二编码器采用的用于对目标视频进行编码的编码单元,第一编码单元为第一编码器采用的用于对目标视频进行编码的编码单元,第一编码单元与第二编码单元的编码位置对应。
需要说明的是,预测单元是编码过程中进行预测运算的基本单元,其采用的预测方式包括帧内预测模式和帧间预测模式。其中,帧内预测模式是基于同一帧进行预测,帧间预测模式是基于相邻帧进行预测。一个编码单元可以包含一个或者多个预测单元。在该实施方式中,可以根据第一编码单元的帧内预测模式的数目或者帧间预测模式的数目确定第二编码单元的预测模式。可变换地,在另一个可行的实施例中,还可以根据第一编码单元在编码过程中的帧内预测模式与帧间预测模式的比值,确定第二编码单元的预测模式。在该实施方式中,可以将第一编码单元的帧内预测模式占比,作为上述的帧内预测模式与帧间预测模式的比值,并记为p1,则,第一编码单元的帧间预测模式占比为1-p1。
具体地,本实施方式中,第三阈值为0.8,第四阈值为0.2,也即,当p1≥0.8时,目标编码单元不计算帧间预测模式,将帧内预测模式作为目标单元的预测模式。当p1≤0.2时,目标编码单元不计算帧内预测模式,将帧间预测模式作为目标单元的预测模式。这样,可以快速地确定目标编码单元最优的预测模式,降低计算工作量。此处仅做示例不做限定,可变换地,在其他可行的实施例中,还可以在一定范围内调整第三阈值和第四阈值的具体取值。
也即,在确定第一模式为帧间预测模式,将帧间预测模式作为第二编码器的预测模式时,跳过第二编码单元的帧内预测模式的计算,在确定第一模式为帧内预测模式,将帧内预测模式作为第二编码器的预测模式时,跳过第二编码单元的帧间预测模式的计算。这样,只需计算第二编码单元的帧内预测模式或者第二编码单元的帧间预测模式,无需同时计算第二编码单元的帧内预测模式的帧间预测模式下的率失真代价,节约了计算步骤。
需要说明的是,若上述的比例大于第四阈值但是小于第三阈值时,第二编码单元无需参考第一编码单元采用的预测模式,不跳过预测模式的计算,也即,第二编码单元需正常计算第二编码单元的帧内预测模式的帧间预测模式下的率失真代价,并基于计算结果确定第二编码器的预测模式。
可以理解,前述实施例是以帧内预测模式为第一模式的情况为例进行说明的,实际场景中,也可以将帧间预测模式为第一模式,来确定第二编码器的预测模式。
此外,与前文类似,“等于”的情况可以基于实际需求设置,不再重复说明。
在该实施方式中,基于第一编码单元的预测模式信息确定第二编码单元的预测模式信息,可以快速确定第二编码单元选择采用帧内预测模式或者采用帧间预测模式,避免第二编码器需要单独重新计算每一个第二编码单元在采用帧内预测模式或者采用帧间预测模式时的率失真代价,然后基于计算结果确定各第二编码单元的预测模式,这样,可以省略第二编码器在编码过程中确定预测模式时的率失真代价的计算步骤,能够提升编码效率。
在另一个可行的实施例中,根据第一编码单元的运动矢量信息确定第二编码单元的运动矢量式信息,具体实施方式如下。
可选地,在第一编码信息包括运动矢量信息的情况下,第二编码信息为第二编码单元的运动矢量信息;
确定第二编码器对目标视频进行编码的第二编码信息包括:
获取第一编码单元的第一运动矢量;
基于第二编码单元与第一编码单元的分辨率比值,确定第二编码单元与第一编码单元的运动矢量的比值;
基于运动矢量的比值和第一运动矢量确定第二编码单元对应的第二运动矢量信息;第二运动矢量信息为所述第二编码器的其中一个起始搜索点。
其中,第二编码单元为第二编码器采用的用于对目标视频进行编码的编码单元,第一编码单元为第一编码器采用的用于对目标视频进行编码的编码单元,第一编码单元与第二编码单元的编码位置对应。
可理解地,分辨率可以体现第一编码单元和第二编码单元对应的编码块的缩放比例关系,因此,本申请实施例中可以基于第二编码单元与第一编码单元的分辨率比值,快速确定第二编码单元与第一编码单元的运动矢量的比值。
本申请实施方式中,第二运动矢量信息包括第二运动矢量和第二运动矢量对应的坐标点。第二运动矢量用于表征某一个对象在连续的图片帧中的位置和方向的变化。例如,目标视频包括多张图片帧,在连续的图片帧中,若某一个对象的对象形态没有发生变化,仅仅是该对象的位置发生了变化,则该对象的变化量与变化方向为运动矢量。示例性的,本申请实施例中的对象可以是某一特定的编码(或称为:编码单元);又例如,对象也可以是图像中的一个实体对象,例如图中的车辆、行人等。本发明实施例对于图像中对象的类型无特别限制。
示例性地,目标视频包括图片帧A和图片帧B,对象C在图片A中的位置为D,对象C在图片B中的位置为E,第一编码器在对目标视频进行编码时,对于对象C由位置D变为位置E的位置变化量和变化的方向为第一运动矢量。其中,对于图片帧中的任意一个对象都可按照这种方式确定其运动矢量。在该实施方式中,由于目标编码单元与第一编码单元的分辨率比值已知,则可以基于该分辨率比值确定目标编码单元与第一编码单元的运动矢量比值,进一步得到目标编码单元对应的第二运动矢量,例如,目标编码单元与第一编码单元的运动矢量比值为2:1,则第二运动矢量是第一运动矢量的2倍,其变化方向一致。
具体而言,确定第二运动矢量信息,然后将第二运动矢量信息对应的坐标点作为一个搜索点,与第二编码器的初始搜索点结合,其中,第二编码器的初始搜索点的数量为3个,第二编码器的初始搜索点采用现有方式确定,此处,不做赘述。计算该4个搜索点对应的率失真代价,选择率失真代价最小的搜索点作为最优搜索点,基于该最优搜索点对图像进行搜索,如果在该次搜索中搜索到了第二运动矢量信息对应的坐标点,则将第二编码单元的搜索范围由默认的64*64调整为4*4,并不再继续后续的搜索工作,这样,可以在一定程度上缩小运动搜索的范围,加速搜索过程并快速确定第二编码器与第一编码器的位置对应情况。
在该实施方式中,基于分辨率比值确定目标编码单元与第一编码单元的运动矢量比值,基于该运动矢量比值和第一运动矢量,可以快速确定第二编码器的第二运动矢量信息,并进一步基于第二运动矢量信息,可以快速确定第二编码器与第一编码器的位置对应情况。
综上,采用本发明实施例所提供的视频编码方法与现有未经改进的视频编码方法进行实验对比。通过使用本申请上述提供的视频编码方法,可以减少第二编码器在确定划分深度方式时与第一编码器的相似的计算过程,还可以快速确定第二编码器的第二编码单元选择采用帧内预测模式或者采用帧间预测模式,省略了第二编码单元选择采用帧内预测模式或者采用帧间预测模式时,率失真代价计算步骤,还可以快速确定第二编码器与第一编码器的位置对应情况。可以发现,相比于现有技术,本申请方法的第二编码器的编码速度提升了1.7倍,即,在对相同的目标视频进行转码时,所花费的时间缩短为现有花费时间的3/5倍左右。
请参见图4,图4为本申请实施例提供的一种视频编码装置,所述装置为第二编码器或所述装置设置于所述第二编码器中,所述第二编码器所在的系统中还包括第一编码器,所述第一编码器与所述第二编码器用于对相同的目标视频分别进行编码。如图4所示,该视频编码装置400包括:
获取模块401,用于获取所述第一编码器对所述目标视频进行编码的第一编码信息,所述第一编码信息包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种;
确定模块402,用于确定所述第二编码器对所述目标视频进行编码的第二编码信息;其中,所述第二编码信息是基于所述第一编码信息确定的;
编码模块403,用于基于所述第二编码信息,对所述目标视频进行编码。
可选地,在所述划分深度信息包括第一编码单元的第一划分深度的情况下,所述第二编码信息为第二编码单元的划分深度方式;
所述划分深度方式包括第一划分深度方式或第二划分深度方式;所述第一划分深度方式用于指示不计算所述第一编码单元在当前块的率失真代价,直接计算所述第一编码单元的划分子块的率失真代价,所述第二划分深度方式用于指示只计算所述第一编码单元在当前块的率失真代价,不再往下迭代划分;
其中,所述第一编码单元为所述第一编码器采用的用于对所述目标视频进行编码的编码单元,所述第二编码单元为所述第二编码器采用的用于对所述目标视频进行编码的编码单元,所述第一编码单元与所述第二编码单元的编码位置相对应。
可选地,所述确定模块402具体用于:
基于所述第一编码单元的所述第一划分深度与所述第二编码单元的第二划分深度,确定所述第一编码单元中的参考编码单元,所述参考编码单元的第一划分深度小于相对应的第二编码单元的第二划分深度;
基于所述参考编码单元的面积与所述第二编码单元的面积,确定所述第二编码单元的划分指标,所述划分指标用于指示所述第二编码单元不进一步划分的倾向程度;
基于所述划分指标,确定所述第二编码单元的所述划分深度方式。
可选地,所述划分指标为:所述参考编码单元的面积与所述第一编码单元的面积之间的面积比值,或复杂度参数中的至少一项;
其中,所述复杂度参数基于所述面积比值和所述第二编码单元的像素值确定。
可选地,所述确定模块402还用于:
基于所述第二编码单元的所述像素值确定第一阈值和第二阈值;其中,所述第一阈值大于所述第二阈值;
在所述面积比值大于或等于第一阈值的情况下,确定所述第二编码单元的所述划分深度方式为所述第一划分深度方式;
在所述面积比值小于或等于第二阈值的情况下,确定所述第二编码单元的所述划分深度方式为所述第二划分深度方式。
可选地,所述确定模块402还用于:
通过预先训练好的支持向量机SVM模型训练得到两组权重,分别为第一权重组和第二权重组;
基于所述第一权重组,计算所述第二编码单元的像素平均值、像素值方差、像素梯度值的加权和,得到所述第一阈值;
基于所述第二权重组,计算所述第二编码单元的像素平均值、像素值方差、像素梯度值的加权和,得到所述第二阈值。
可选地,在所述划分指标包括所述复杂度参数的情况下,所述复杂度参数为所述面积比值与像素加权和之和;所述像素加权和为所述第二编码单元的像素平均值、像素值方差、像素梯度值的加权和;
所述基于所述划分指标,确定所述第二编码单元的所述划分深度方式,包括:
在第一复杂度参数大于或等于第五阈值的情况下,确定所述第二编码单元的所述划分深度方式为所述第一划分方式;所述第一复杂度参数由第一权重组确定;
在第二复杂度参数小于或等于第五阈值的情况下,确定所述目标编码单元的划分深度方式为所述第二划分方式;所述第二复杂度参数由第二权重组确定,所述第一权重组与所述第二权重组不完全相同。
可选地,在所述第一编码信息包括所述预测模式信息的情况下,所述第二编码信息为第二编码单元的预测模式信息;
所述确定模块402还用于:
计算第一模式在第一编码单元的编码模式中所占的比例;
当所述比例大于或等于第三阈值时,确定所述第一模式为所述第二编码器的预测模式;
当所述比例小于或等于第四阈值时,确定第二模式为所述第二编码器的预测模式;所述第三阈值大于所述第四阈值;
其中,当所述第一模式为帧间预测模式时,所述第二模式为帧内预测模式;当所述第一模式为帧内预测模式时,所述第二模式为帧间预测模式。
可选地,在所述第一编码信息包括所述运动矢量信息的情况下,所述第二编码信息为第二编码单元的运动矢量信息;
所述确定模块402还用于:
获取第一编码单元的第一运动矢量;
基于第二编码单元与所述第一编码单元的分辨率比值,确定第二编码单元与所述第一编码单元的运动矢量的比值;
基于所述运动矢量的比值和所述第一运动矢量确定第二编码单元对应的第二运动矢量信息;所述第二运动矢量信息为所述第二编码器的其中一个起始搜索点。
本申请实施例提供的视频编码装置400能够实现上述的视频编码方法实施例中的各个过程,为避免重复,此处,不再一一赘述。
本发明实施例还提供了一种电子设备500,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信。
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现如图2-图3中所述方法的步骤。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的视频编码方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的视频编码方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (11)
1.一种视频编码方法,其特征在于,应用于包括第一编码器与第二编码器的系统,所述第一编码器与所述第二编码器用于对相同的目标视频分别进行编码;所述方法执行于所述第二编码器,所述方法包括:
获取所述第一编码器对所述目标视频进行编码的第一编码信息,所述第一编码信息包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种;
确定所述第二编码器对所述目标视频进行编码的第二编码信息;其中,所述第二编码信息是基于所述第一编码信息确定的;在所述划分深度信息包括第一编码单元的第一划分深度的情况下,所述第二编码信息为第二编码单元的划分深度方式;所述划分深度方式包括第一划分深度方式或第二划分深度方式;所述第一划分深度方式用于指示不计算所述第二编码单元在当前块的率失真代价,直接计算所述第二编码单元的划分子块的率失真代价,所述第二划分深度方式用于指示只计算所述第二编码单元在当前块的率失真代价,不再往下迭代划分;其中,所述第一编码单元为所述第一编码器采用的用于对所述目标视频进行编码的编码单元,所述第二编码单元为所述第二编码器采用的用于对所述目标视频进行编码的编码单元,所述第一编码单元与所述第二编码单元的编码位置相对应;
基于所述第二编码信息,对所述目标视频进行编码。
2.根据权利要求1所述的方法,其特征在于,所述确定所述第二编码器对所述目标视频进行编码的第二编码信息,包括:
基于所述第一编码单元的所述第一划分深度与所述第二编码单元的第二划分深度,确定所述第一编码单元中的参考编码单元,所述参考编码单元的第一划分深度小于相对应的第二编码单元的第二划分深度;
基于所述参考编码单元的面积与所述第二编码单元的面积,确定所述第二编码单元的划分指标,所述划分指标用于指示所述第二编码单元不进一步划分的倾向程度;
基于所述划分指标,确定所述第二编码单元的所述划分深度方式。
3.根据权利要求2所述的方法,其特征在于,所述划分指标为:所述参考编码单元的面积与所述第一编码单元的面积之间的面积比值,或复杂度参数中的至少一项;
其中,所述复杂度参数基于所述面积比值和所述第二编码单元的像素值确定。
4.根据权利要求3所述的方法,其特征在于,在所述划分指标包括所述面积比值的情况下,所述基于所述划分指标,确定所述第二编码单元的所述划分深度方式,包括:
基于所述第二编码单元的所述像素值确定第一阈值和第二阈值;其中,所述第一阈值大于所述第二阈值;
在所述面积比值大于或等于所述第一阈值的情况下,确定所述第二编码单元的所述划分深度方式为所述第一划分深度方式;
在所述面积比值小于或等于所述第二阈值的情况下,确定所述第二编码单元的所述划分深度方式为所述第二划分深度方式。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第二编码单元的所述像素值确定第一阈值和第二阈值,包括:
通过预先训练好的支持向量机SVM模型训练得到两组权重,分别为第一权重组和第二权重组;
基于所述第一权重组,计算所述第二编码单元的像素平均值、像素值方差、像素梯度值的加权和,得到所述第一阈值;
基于所述第二权重组,计算所述第二编码单元的像素平均值、像素值方差、像素梯度值的加权和,得到所述第二阈值。
6.根据权利要求3所述的方法,其特征在于,在所述划分指标包括所述复杂度参数的情况下,所述复杂度参数为所述面积比值与像素加权和之和;所述像素加权和为所述第二编码单元的像素平均值、像素值方差、像素梯度值的加权和;
所述基于所述划分指标,确定所述第二编码单元的所述划分深度方式,包括:
在第一复杂度参数大于或等于第五阈值的情况下,确定所述第二编码单元的所述划分深度方式为所述第一划分深度;所述第一复杂度参数由第一权重组确定;
在第二复杂度参数小于或等于第五阈值的情况下,确定目标编码单元的划分深度方式为所述第二划分深度;所述第二复杂度参数由第二权重组确定,所述第一权重组与所述第二权重组不完全相同。
7.根据权利要求1-6任一项所述的方法,其特征在于,在所述第一编码信息包括所述预测模式信息的情况下,所述第二编码信息为第二编码单元的预测模式信息;
所述确定所述第二编码器对所述目标视频进行编码的第二编码信息包括:
计算第一模式在第一编码单元的编码模式中所占的比例;
当所述比例大于或等于第三阈值时,确定所述第一模式为所述第二编码器的预测模式;
当所述比例小于或等于第四阈值时,确定第二模式为所述第二编码器的预测模式;所述第三阈值大于所述第四阈值;
其中,当所述第一模式为帧间预测模式时,所述第二模式为帧内预测模式;当所述第一模式为帧内预测模式时,所述第二模式为帧间预测模式。
8.根据权利要求1-6任一项所述的方法,其特征在于,在所述第一编码信息包括所述运动矢量信息的情况下,所述第二编码信息为第二编码单元的运动矢量信息;
所述确定所述第二编码器对所述目标视频进行编码的第二编码信息包括:
获取第一编码单元的第一运动矢量;
基于第二编码单元与所述第一编码单元的分辨率比值,确定第二编码单元与所述第一编码单元的运动矢量的比值;
基于所述运动矢量的比值和所述第一运动矢量,确定第二编码单元对应的第二运动矢量信息;所述第二运动矢量信息为所述第二编码器的其中一个起始搜索点。
9.一种视频编码装置,其特征在于,所述装置为第二编码器或所述装置设置于所述第二编码器中,所述第二编码器所在的系统中还包括第一编码器,所述第一编码器与所述第二编码器用于对相同的目标视频分别进行编码,所述装置包括:
获取模块,用于获取所述第一编码器对所述目标视频进行编码的第一编码信息,所述第一编码信息包括划分深度信息、预测模式信息或运动矢量信息中的一种或多种;
确定模块,用于确定所述第二编码器对所述目标视频进行编码的第二编码信息;其中,所述第二编码信息是基于所述第一编码信息确定的;在所述划分深度信息包括第一编码单元的第一划分深度的情况下,所述第二编码信息为第二编码单元的划分深度方式;所述划分深度方式包括第一划分深度方式或第二划分深度方式;所述第一划分深度方式用于指示不计算所述第二编码单元在当前块的率失真代价,直接计算所述第二编码单元的划分子块的率失真代价,所述第二划分深度方式用于指示只计算所述第二编码单元在当前块的率失真代价,不再往下迭代划分;其中,所述第一编码单元为所述第一编码器采用的用于对所述目标视频进行编码的编码单元,所述第二编码单元为所述第二编码器采用的用于对所述目标视频进行编码的编码单元,所述第一编码单元与所述第二编码单元的编码位置相对应;
编码模块,用于基于所述第二编码信息,对所述目标视频进行编码。
10.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-8任一所述的方法步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011194331.5A CN112312133B (zh) | 2020-10-30 | 2020-10-30 | 一种视频编码方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011194331.5A CN112312133B (zh) | 2020-10-30 | 2020-10-30 | 一种视频编码方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112312133A CN112312133A (zh) | 2021-02-02 |
CN112312133B true CN112312133B (zh) | 2022-10-04 |
Family
ID=74334115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011194331.5A Active CN112312133B (zh) | 2020-10-30 | 2020-10-30 | 一种视频编码方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112312133B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113038130B (zh) * | 2021-03-17 | 2024-06-04 | 百果园技术(新加坡)有限公司 | 一种视频编码方法、装置、电子设备及可读存储介质 |
CN112866693B (zh) * | 2021-03-25 | 2023-03-24 | 北京百度网讯科技有限公司 | 编码单元cu的划分方法、装置、电子设备和存储介质 |
CN115914648A (zh) * | 2021-09-30 | 2023-04-04 | 华为技术有限公司 | 视频图像的处理方法及装置 |
CN116781900A (zh) * | 2022-03-11 | 2023-09-19 | 华为技术有限公司 | 编解码方法及电子设备 |
CN116389763B (zh) * | 2023-06-05 | 2023-08-11 | 瀚博半导体(上海)有限公司 | 基于多种编码器的视频编码方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363450A (zh) * | 2014-11-27 | 2015-02-18 | 北京奇艺世纪科技有限公司 | 一种帧内编码模式决策方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10063866B2 (en) * | 2015-01-07 | 2018-08-28 | Texas Instruments Incorporated | Multi-pass video encoding |
CN109618160A (zh) * | 2018-11-12 | 2019-04-12 | 建湖云飞数据科技有限公司 | 一种基于运动信息与残差信息计算的视频编码方法 |
CN110636302B (zh) * | 2019-09-27 | 2023-10-24 | 腾讯科技(深圳)有限公司 | 视频解码、编码方法和装置、存储介质及解码器、编码器 |
CN111669593B (zh) * | 2020-07-27 | 2022-01-28 | 北京奇艺世纪科技有限公司 | 视频编码方法、装置、电子设备和存储介质 |
CN111741298B (zh) * | 2020-08-26 | 2020-12-01 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、电子设备及可读存储介质 |
-
2020
- 2020-10-30 CN CN202011194331.5A patent/CN112312133B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363450A (zh) * | 2014-11-27 | 2015-02-18 | 北京奇艺世纪科技有限公司 | 一种帧内编码模式决策方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112312133A (zh) | 2021-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112312133B (zh) | 一种视频编码方法、装置、电子设备及可读存储介质 | |
JP6843239B2 (ja) | 符号化ユニットの深さ特定方法及び装置 | |
WO2015188754A1 (en) | Video coding device, method, and apparatus and inter-frame mode selection method and apparatus therefor | |
WO2014190468A1 (en) | Video encoder for images | |
WO2020207162A1 (zh) | 帧内预测编码方法、装置、电子设备及计算机存储介质 | |
SE1651203A2 (en) | Method for inducing a merge candidate block and device usingsame | |
CN110839155A (zh) | 运动估计的方法、装置、电子设备及计算机可读存储介质 | |
CN109688407B (zh) | 编码单元的参考块选择方法、装置、电子设备及存储介质 | |
CN110248189B (zh) | 一种视频质量预测方法、装置、介质和电子设备 | |
CN111492655A (zh) | 用于视频压缩的基于纹理的分区决定 | |
JP6953067B2 (ja) | 符号化単位分割決定方法及び装置、コンピューティングデバイス及び読み取り可能な記憶媒体 | |
US20190222838A1 (en) | Video coding processing method and apparatus, and storage medium | |
CN111742553A (zh) | 用于视频压缩的基于深度学习的图像分区 | |
CN117280691A (zh) | 增强的运动向量预测 | |
CN112104867A (zh) | 一种视频处理方法、视频处理装置、智能设备及存储介质 | |
Bakkouri et al. | An adaptive CU size decision algorithm based on gradient boosting machines for 3D-HEVC inter-coding | |
CN117768647A (zh) | 图像处理方法、装置、设备及可读存储介质 | |
CN110139098B (zh) | 基于决策树的高效率视频编码器帧内快速算法选择方法 | |
CN114143536B (zh) | 一种shvc空间可伸缩帧的视频编码方法 | |
CN109660806B (zh) | 一种编码方法、装置和电子设备 | |
KR20130095322A (ko) | 양자화 제어 장치 및 방법, 및 양자화 제어 프로그램 | |
CN105828084B (zh) | Hevc帧间编码处理方法和装置 | |
CN115442617A (zh) | 一种基于视频编码的视频处理方法和装置 | |
Zhao et al. | Efficient screen content coding based on convolutional neural network guided by a large-scale database | |
CN110062237B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |