低码率视频优化编码方法和装置、设备及存储介质

文档序号:38490 发布日期:2021-09-24 浏览:15次 >En<

阅读说明:本技术 低码率视频优化编码方法和装置、设备及存储介质 (Low-bit-rate video optimization coding method, device, equipment and storage medium ) 是由 彭海 徐言茂 于 2021-06-18 设计创作,主要内容包括:本申请涉及一种低码率视频优化编码方法和装置、设备及存储介质,其中方法包括:获取视频流数据,对视频流数据中的当前帧数据的状态进行判断;其中,当前帧数据的状态包括运动和静止;根据判断出的当前帧数据的状态,对当前帧数据进行降噪处理;将降噪处理后的当前帧数据输入至编码器进行编码。通过对当前要编码的视频流数据中的每一帧数据进行状态判断,然后根据判断出的状态进行相应的降噪处理,从而使得降噪处理时能够针对不同状态的帧数据进行不同的降噪滤波处理,从而在进行视频编码时引入对视频流数据的降噪处理,并对应不同状态的帧数据进行不同的降噪,这就有效提高了视频的编码效果,使得视频编码能够兼顾画面质量和流畅度。(The application relates to a low-bit-rate video optimization coding method, a device, equipment and a storage medium, wherein the method comprises the following steps: acquiring video stream data, and judging the state of current frame data in the video stream data; wherein, the state of the current frame data comprises motion and still; performing noise reduction processing on the current frame data according to the judged state of the current frame data; and inputting the current frame data subjected to noise reduction processing into an encoder for encoding. The state of each frame data in the current video stream data to be coded is judged, and then corresponding noise reduction processing is carried out according to the judged state, so that different noise reduction filtering processing can be carried out on the frame data in different states during the noise reduction processing, the noise reduction processing on the video stream data is introduced during the video coding, and different noise reduction is carried out on the frame data in different states, so that the coding effect of the video is effectively improved, and the picture quality and the fluency can be considered during the video coding.)

低码率视频优化编码方法和装置、设备及存储介质

技术领域

本申请涉及视频处理

技术领域

,尤其涉及一种低码率视频优化编码方法和装置、设备及存储介质。

背景技术

高清、超高清视频编码日益成为视频编码的主流,随着互联网视频应用的快速增长,低码率高清、超高清视频编码需求也越来越多。低码率高清(窄带高清)、超高清一般是指压缩码率为正常码率的二分之一或者三分之一,甚至更低。

举例来说,1080P25高清H.264正常码率一般为8Mbps,低码率高清要求压缩到4Mbps,甚至极端情况下压缩到2Mbps。在如此低的压缩码率下,通常会选择舍弃部分图像细节,使得在编码阶段比较容易满足低码率要求。但是采用上述方式对于静态画面,很容易导致丢失过多细节,从而使得画面细腻程度有所下降。

发明内容

有鉴于此,本申请提出了一种低码率视频优化编码方法,可以有效提高视频编码质量。

根据本申请的一方面,提供了一种低码率视频优化编码方法,包括:

获取视频流数据,对所述视频流数据中的当前帧数据的状态进行判断;

其中,所述当前帧数据的状态包括运动和静止;

根据判断出的所述当前帧数据的状态,对所述当前帧数据进行降噪处理;

将降噪处理后的当前帧数据输入至编码器进行编码。

在一种可能的实现方式中,对所述视频流数据中的当前帧数据的状态进行判断时,通过对所述当前帧数据进行复杂度评估进行。

在一种可能的实现方式中,通过对所述当前帧数据的复杂度评估进行所述当前帧数据的状态的判断时,包括:

由所述编码器对所述当前帧数据进行复杂度评估,得到复杂度评估结果;

根据所述复杂度评估结果,结合码率控制算法,得到所述当前帧数据的量化步长;

基于所述当前帧数据的量化步长,确定所述当前帧数据的状态。

在一种可能的实现方式中,根据判断出的所述当前帧数据的状态,对所述当前帧数据进行降噪处理,包括:

基于判断出的所述当前帧数据的状态,确定对应的降噪强度;

使用确定的所述降噪强度对所述当前帧数据进行降噪滤波处理。

在一种可能的实现方式中,基于判断出的所述当前帧数据的状态,确定对应的降噪强度时,包括:

在判断出所述当前帧数据的状态为运动状态时,确定所述降噪强度为第一强度;

在判断出所述当前帧数据的状态为静止状态时,确定所述降噪强度为第二强度;

其中,所述第一强度大于所述第二强度。

根据本申请的另一方面,还提供了一种低码率视频优化编码装置,包括状态判断模块、降噪处理模块和编码模块;

所述状态判断模块,被配置为获取视频流数据,对所述视频流数据中的当前帧数据的状态进行判断;

其中,所述当前帧数据的状态包括运动和静止;

所述降噪处理模块,被配置为根据判断出的所述当前帧数据的状态,对所述当前帧数据进行降噪处理;

所述编码模块,被配置为将降噪处理后的当前帧数据输入至编码器进行编码。

在一种可能的实现方式中,所述状态判断模块,被配置为获取视频流数据,对所述视频流数据中的当前帧数据的状态进行判断时,通过对所述当前帧数据进行复杂度评估进行。

在一种可能的实现方式中,所述状态判断模块包括复杂度评估子模块、量化步长计算子模块和状态确定子模块;

所述复杂度评估子模块,被配置为由所述编码器对所述当前帧数据进行复杂度评估,得到复杂度评估结果;

所述量化步长计算子模块,被配置为根据所述复杂度评估结果,结合码率控制算法,得到所述当前帧数据的量化步长;

所述状态确定子模块,被配置为基于所述当前帧数据的量化步长,确定所述当前帧数据的状态。

根据本申请的另一方面,还提供了一种低码率视频优化编码设备,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行所述可执行指令时实现前面任一所述的方法。

根据本申请的另一方面,还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前面任一所述的方法。

通过对当前要编码的视频流数据中的每一帧数据进行状态判断,然后根据判断出的状态进行相应的降噪处理,从而使得降噪处理时能够针对不同状态的帧数据进行不同的降噪滤波处理,从而在进行视频编码时引入对视频流数据的降噪处理,并对应不同状态的帧数据进行不同的降噪,这就有效提高了视频的编码效果,使得视频编码能够兼顾画面质量和流畅度。

根据下面参考附图对示例性实施例的详细说明,本申请的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本申请的示例性实施例、特征和方面,并且用于解释本申请的原理。

图1示出本申请实施例的低码率视频优化编码方法的流程图;

图2示出本申请实施例的低码率视频优化编码方法的另一流程图;

图3示出本申请实施例的低码率视频优化编码装置的结构框图;

图4示出本申请实施例的低码率视频优化编码设备的结构框图。

具体实施方式

以下将参考附图详细说明本申请的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。

图1示出根据本申请一实施例的低码率视频优化编码方法的流程图。如图1所示,该方法包括:步骤S100,获取视频流数据,对视频流数据中的当前帧数据的状态进行判断。此处,需要解释说明的是,视频流数据中的当前帧数据的状态包括运动状态和静止状态。其中,运动状态指的是当前帧数据对应的图像为动画图像,静止状态则指的是当前帧数据的对应的图像为静止图像。

在判断出当前帧数据的状态后,即可执行步骤S200,根据判断出的当前帧数据的状态,对当前帧数据进行降噪处理。进而再通过步骤S300,将降噪处理后的当前帧数据输入至编码器进行编码。

由此,本申请实施例的低码率视频优化编码方法,通过对当前要编码的视频流数据中的每一帧数据进行状态判断,然后根据判断出的状态进行相应的降噪处理,从而使得降噪处理时能够针对不同状态的帧数据进行不同的降噪滤波处理,从而在进行视频编码时引入对视频流数据的降噪处理,并对应不同状态的帧数据进行不同的降噪,这就有效提高了视频的编码效果,使得视频编码能够兼顾画面质量和流畅度。

在一种可能的实现方式中,对视频流数据中的当前帧数据的状态进行判断时,可以通过对当前帧数据的复杂度进行评估来实现。即,通过对当前帧数据进行复杂度评估的方式来实现对视频流数据中的当前帧数据的状态的判断。

其中,需要说明的是,在本申请实施例的低码率视频优化编码方法中,降噪处理指的是去除视频流数据中的高频成分,包括空间高频成分和时间高频成分,保留低频成分。从视觉效果上来说,就是去除图像细节,保留大的轮廓。

同时,还需要指出的是,在本申请实施例的低码率视频优化编码方法中,对视频流数据中的当前帧数据进行降噪处理时,降噪强度是根据当前帧数据的状态进行调整的。在一种可能的实现方式中,在当前帧数据的状态为运动状态时,可以选用较大的降噪强度进行降噪处理。在当前帧数据的状态为静止状态时,则可以选用较小的降噪强度进行降噪处理。

此处,本领域技术人员可以理解的是,降噪强度越大,图像细节去除越多,同样参数下,编码器需要的码率越低。反之,降噪强度越小,图像细节保留越多,同样参数下,编码器需要的码率越高。

其中,还需要说明的是,在本申请实施例的低码率视频优化编码方法中,对当前帧数据进行降噪处理时,所采用的降噪滤波方法可以为高质量3D降噪滤波(high-qualitydenoise 3D)法。

也就是说,在本申请实施例的低码率视频优化编码方法中,在对获取到的视频流数据进行编码时,先实时判断视频流数据中的当前帧数据的状态,从而根据判断结果对视频流数据中静止画面比较多的场景,采用较低的降噪强度进行降噪滤波处理,以保留较多的图像细节;对视频流数据中动态画面比较多的场景,采用较高的降噪强度进行降噪滤波处理,使得编码器不需要采用过高的量化步长,从而可以输出满足要求的低码率,这也就有效避免了马赛克的出现。

进一步的,根据前面所述,对视频流数据中的当前帧数据的状态进行判断时,可以通过对当前帧数据的复杂度评估进行计算来实现。具体的,首先,由编码器对当前帧数据进行复杂度评估,得到复杂度评估结果。然后,再根据复杂度评估结果,结合码率控制算法,得到当前帧数据的量化步长。进而再基于所得到的当前帧数据的量化步长,确定当前帧数据的状态。

也就是说,在本申请实施例的低码率视频优化编码方法中,在对视频流数据中的当前帧数据的状态进行判断,从而以实时判断视频流数据中的当前帧数数据是属于动态画面较多的场景,还是静态画面较多的场景时,直接以当前要对视频流数据进行编码的编码器对当前帧数据进行复杂度评估,从而不需要再单独设计复杂度评估算法,直接调用编码器中的预分析算法进行复杂度评估计算即可,这就有效降低了视频数据处理难度系数。同时,由于在进行当前帧数据的复杂度评估的计算时直接调用的编码器中的预分析算法,使得视频流数据的降噪处理以及编码处理均以同一编码器为准,这也就更加有效提高了视频数据的编码效果,保证了高质量的视频编码。

此处,还需要指出的是,在通过直接使用编码器对当前帧数据的复杂度评估进行分析计算之后,还需要根据分析得到的当前帧数据的复杂度评估结果,结合码率控制算法得到当前帧数据的量化步长。

其中,在本申请实施例的低码率视频优化编码方法中,码率控制算法同样是直接调用的编码器的内部固有算法,这就更进一步地简化了视频流数据处理的难度,降低了数据处理难度系数。并且,对于不同的编码器调用不同的码率控制算法,使得对视频流数据中的当前帧数据的降噪处理与编码器更加匹配。

此外,在上述可实施方式中,在基于当前帧数据的量化步长,确定当前帧数据的状态时,可以通过以下方式来实现。

即,通过所得到的当前帧数据的量化步长与参考量化步长之间的大小关系进行确定。即,通过对当前帧数据的量化步长与参考量化步长进行比较,当前帧数据的量化步长大于参考量化步长时,则可以确定当前帧数据的动态画面较多,视频运动程度越高;当前帧数据的量化步长小于参考量化步长时,则可以确定当前帧数据的静态画面较多,视频静止程度越高。

其中,参考量化步长的取值可以根据实际情况灵活设置。具体的,可以根据目标码率的高低进行设置:目标码率越高,参考量化步长越小;目标码率越低,参考量化步长适当增大。如:在一种可能的实现方式中,参考量化步长的取值可以设置为:[6,8],优选的,参考量化步长的取值可以选取为7。

在根据上述方式确定当前帧数据的状态后,即可基于所确定出的当前帧数据的状态确定对应的降噪强度,然后再使用所确定的降噪强度对当前帧数据进行降噪滤波处理。

其中,基于所确定出的当前帧的状态确定对应的降噪强度时,可以通过以下方式来实现。即,在判断出当前帧数据的状态为运动状态时,确定降噪强度为第一强度;在判断出当前帧数据的状态为静止状态时,确定降噪强度为第二强度。其中,第一强度应当大于第二强度。

此处,需要说明的是,由于在本申请实施例的低码率视频优化编码方法中,可以通过当前帧数据的量化步长来表征当前帧数据的状态。因此,在一种可能的实现方式中,根据所判断出的当前帧数据的状态进行降噪强度的确定时,可以直接根据所得到的当前帧数据的量化步长进行当前帧数据的降噪滤波处理时的降噪强度的确定。

其中,在直接根据所得到的当前帧数据的量化步长进行当前帧数据的降噪滤波处理时的降噪强度的确定时,可以先根据量化步长计算出初始降噪强度,然后再根据计算得到的初始降噪强度确定对当前帧数据进行降噪滤波处理时的实际降噪强度。

更加具体的,根据量化步长计算出初始降噪强度时,可以通过公式:Sdn=(QP-QP_ref)*0.2来实现。在该计算公式中,QP_ref为预先设置的参考量化步长,参考量化步长的取值可以根据目标码率的高低来确定。

在一种可能的实现方式中,根据前面所述,参考量化步长的取值范围可以设置为[6,8],优选的,参考量化步长的取值可以为7。QP为计算得到的当前帧数据的量化步长,Sdn为计算得到的初始降噪强度。

在计算得到初始降噪强度之后,即可根据初始降噪强度确定对当前帧数据进行降噪滤波处理时的实际降噪强度。其中,在一种可能的实现方式中,可以对降噪强度的范围进行限定,即,限定一降噪强度范围,然后根据初始降噪强度与所限定的降噪强度范围的关系确定实际降噪强度。

具体的,判断初始降噪强度是否处于所限定的降噪强度范围内,如果初始降噪强度处于所限定的降噪强度范围内,则可以直接将初始降噪强度作为实际降噪强度对当前帧数据进行降噪滤波处理。如果初始降噪强度大于所限定的降噪强度范围中的上限值(即,最大值),则直接以降噪强度范围内的上限值作为实际降噪强度。如果初始降噪强度小于所限定的降噪强度范围中的下限值(即,最小值),在可以直接以降噪强度范围内的下限值作为实际降噪强度。

更加具体的,在一种可能的实现方式中,降噪强度范围可以根据实际情况灵活设置,如:可以根据目标码率的高低进行设置。优选的,降噪强度范围可以设置为[1,9]。

在确定出对当前帧数据进行降噪滤波处理时的实际降噪强度之后,即可将所确定的实际降噪强度输入至降噪滤波器中,对视频流数据中的当前帧数据进行降噪滤波处理。

最后,再将降噪滤波处理后的视频流数据输入到编码器,由编码器对降噪滤波处理后的视频流数据进行视频编码处理。

为更清楚地说明本申请实施例的低码率视频优化编码方法,以下以一具体实施例对低码率视频优化编码方法进行更加详细地说明。

参阅图2,在使用本申请实施例的低码率视频优化编码方法对获取到的视频流数据进行编码时,首先,通过步骤S110,获取是频率数据,由视频流数据中提取出原始当前帧图像数据。然后,再通过步骤S120,使用编码器中固有的预分析算法对当前帧图像数据进行复杂度评估,得到当前帧图像数据的复杂度评估结果。进而,再通过步骤S130,使用编码器中固有的码率控制算法,基于前一步骤所得到的当前帧图像数据的复杂度评估结果,对当前帧图像数据的量化步长进行计算。接着,再由步骤S140,根据计算得到的当前帧图像数据的量化步长,计算初始降噪强度Sdn。最后,再通过步骤S150,将计算得到的初始降噪强度与预先设置的降噪强度范围进行比较,确定最终对当前帧图像数据进行降噪处理的实际降噪强度。由此,通过上述步骤即可完成对视频流数据中的当前帧数据的状态的判断。此处,本领域技术人员可以理解的是,在该具体实施例中,当前帧数据的状态是直接通过所计算得到的当前帧数据的量化步长来进行表征的。

在确定最终对当前帧数据进行降噪处理的实际降噪强度之后,即可执行步骤S200,使用所确定的实际降噪强度对当前帧数据进行降噪滤波处理,进而再通过步骤S300,将降噪滤波处理后的当前帧图像数据输入至编码器进行编码。

由此,本申请实施例的低码率视频优化编码方法,通过在视频编码之前先对视频流数据中的每一帧数据进行降噪滤波处理,从而对视频流数据中的复杂画面、动态画面等动态程度较高的画面去除高频成分,使得低码率下尽量减少马赛克。同时,在对视频流数据中的每一帧数据进行降噪滤波处理时,通过对每一帧数据进行状态判断,从而针对不同状态的帧数据采用不同的降噪强度进行降噪滤波处理,这就实现了实时动态调整降噪滤波强度的目的,使得视频流数据中的静态画面能够尽量保留更多的画面细节,动态画面减少马赛克的情况,最终有效提升了视频编码质量。

相应的,基于前面任一所述的低码率视频优化编码方法,本申请还提供了一种低码率视频优化编码装置。由于本申请提供的低码率视频优化编码装置的工作原理与本申请的低码率视频优化编码方法的原理相同或相似,因此重复之处不再赘述。

参阅图3,本申请提供的低码率视频优化编码装置100,包括状态判断模块110、降噪处理模块120和编码模块130。其中,状态判断模块110,被配置为获取视频流数据,对视频流数据中的当前帧数据的状态进行判断;其中,当前帧数据的状态包括运动和静止。降噪处理模块120,被配置为根据判断出的当前帧数据的状态,对当前帧数据进行降噪处理。编码模块130,被配置为将降噪处理后的当前帧数据输入至编码器进行编码。

在一种可能的实现方式中,状态判断模块110,被配置为获取视频流数据,对视频流数据中的当前帧数据的状态进行判断时,通过对当前帧数据进行复杂度评估进行。

在一种可能的实现方式中,状态判断模块110包括复杂度评估子模块、量化步长计算子模块和状态确定子模块(图中未示出)。其中,复杂度评估子模块,被配置为由编码器对当前帧数据进行复杂度评估,得到复杂度评估结果。量化步长计算子模块,被配置为根据复杂度评估结果,结合码率控制算法,得到当前帧数据的量化步长。状态确定子模块,被配置为基于当前帧数据的量化步长,确定当前帧数据的状态。

更进一步地,根据本申请的另一方面,还提供了一种低码率视频优化编码设备200。参阅图4,本申请实施例的低码率视频优化编码设备200包括处理器210以及用于存储处理器210可执行指令的存储器220。其中,处理器210被配置为执行可执行指令时实现前面任一所述的低码率视频优化编码方法。

此处,应当指出的是,处理器210的个数可以为一个或多个。同时,在本申请实施例的低码率视频优化编码设备200中,还可以包括输入装置230和输出装置240。其中,处理器210、存储器220、输入装置230和输出装置240之间可以通过总线连接,也可以通过其他方式连接,此处不进行具体限定。

存储器220作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序和各种模块,如:本申请实施例的低码率视频优化编码方法所对应的程序或模块。处理器210通过运行存储在存储器220中的软件程序或模块,从而执行低码率视频优化编码设备200的各种功能应用及数据处理。

输入装置230可用于接收输入的数字或信号。其中,信号可以为产生与设备/终端/服务器的用户设置以及功能控制有关的键信号。输出装置240可以包括显示屏等显示设备。

根据本申请的另一方面,还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,计算机程序指令被处理器210执行时实现前面任一所述的低码率视频优化编码方法。

以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:云端视频的推送方法及推送系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类