一种码流接收设备的码流编码的方法及装置与流程

文档序号:12890336阅读:254来源:国知局
一种码流接收设备的码流编码的方法及装置与流程

本发明涉及视频编码领域,尤其涉及一种码流接收设备的码流编码的方法及装置。



背景技术:

目前,主流安防监控设备的编码码流格式均采用如图1.a所示的idrpp...ppidrpp...pp的编码码流格式。但由于安防场景基本为静态,而在静态场景下,为保持相同的图像编码效果,即时解码刷新(instantaneousdecodingrefresh,idr)帧的码流大小往往为p帧码流大小的几倍甚至几十倍。因此在动态比特率(variablebitrate,vbr)编码条件下,采用如图1.b所示的单idr全p帧编码码流格式,能有效的降低码流大小,节省存储设备空间。

上述单idr全p格式虽能有效节省码流,但存在如下两个缺陷:1)随着p帧的延续,由于物体运动或者噪声的引入,图像画质会逐渐变差;2)中间的某一p帧码流数据出现错误,将导致此p帧后面所有p帧解码失败。

为避免上述问题出现,如图1.c所示的长期参考编码方式是较为理想的实现模型:将idr帧作为长期参考背景帧,一定间隔的p帧(上图中的p_l1)以idr帧为参考,其余的p帧(上图中的p_l0)则以相邻的前一p帧为参考。由于p_l1以背景帧为参考,因此在p_l1时能对图像质量进行刷新,保证后续p帧的画质不会变差;同时,由于p_l1以背景帧为参考,如果中间某一p帧码流数据出错,也只会导致两个p_l1之间的p帧码流数据解码不成功,而不会影响其他p帧的解码。

由此可见,上述长期参考编码方式的优势比较明显,符合用户的需求,现有技术下,为了应用上述长期参考编码方式,主要采用了以下方法:需要修改编码器本身来支持长期参考帧的选取和使用。

这是因为,目前,主流安防码流生成设备(如网络摄像机(ipcamera,ipc)、硬盘录像机(digitalvideorecorder,dvr)等)均不支持长期参考功能,编码方案一般采用图1.a所示的idrpp...ppidrpp...pp编码方式,而没有采用上述图1.c所示的idrpp...ppppp...pp长期参考编码方式。

但是,由于码流生成设备中的编码器已硬核化,用户通过修改编码器本身来支持长期参考功能比较困难。而且,长期参考方式需要两帧参考,对芯片复杂度、成本也是一个挑战。

,

技术实现要素:

本发明实施例提供一种码流接收设备的码流编码的方法及装置,以解决现有技术中不能有效地使用长期参考编码方式的问题。

本发明实施例提供的具体技术方案如下:

一种码流接收设备的码流编码方法,包括:

在接收到外部输入的原始码流后,从上述原始码流中依次提取出每一个即时解码刷新idr帧的码流数据,并获得每一个idr帧的码流数据解码后的yuv数据;

选取一个idr帧作为当前长期参考帧,依次针对除当前长期参考帧之外的其他每一个idr帧,计算上述idr帧的码流数据解码后的yuv数据与当前长期参考帧的码流数据解码后的yuv数据之间的第一峰值信噪比psnr,当确定上述第一psnr大于预设的第一门限值时,将上述idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧编码,并获得p帧码流数据和相应的重建yuv数据;

将上述p帧码流数据替换对应的idr帧的码流数据。

本发明实施例中,在接收到外部输入的原始码流后,从上述原始码流中依次提取出每一个即时解码刷新idr帧的码流数据,并获得每一个idr帧的码流数据解码后的yuv数据;选取一个idr帧作为当前长期参考帧,依次针对除当前长期参考帧之外的其他每一个idr帧,计算上述idr帧的码流数据解 码后的yuv数据与当前长期参考帧的码流数据解码后的yuv数据之间的第一峰值信噪比psnr,当确定上述第一psnr大于预设的第一门限值时,将上述idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧编码,并获得p帧码流数据和相应的重建yuv数据;将上述p帧码流数据替换对应的idr帧的码流数据,这样,可以将现有idrpp...ppidrpp...pp单参考编码方式转换成idrpp...ppppp...pp长期参考编码方式,过程简单、高效,不用占用过多的系统资源,在保证图像质量的同时能有效降低编码码率,而且该方法不需要对目前的码流接收设备做任何硬件改动,能无缝应用于当前主流的安防码流接收设备中,同时也不需要修改编解码协议,能应用到目前主流的编解码标准中。

较佳的,获得p帧码流数据和相应的重建yuv数据之后,将上述p帧码流数据替换对应的idr帧的码流数据之前,进一步包括:

计算上述重建yuv数据与对应的idr帧的码流数据解码后的yuv数据之间的第二psnr,并确定上述第二psnr大于预设的第二门限值。

较佳的,进一步包括:

当确定上述第一psnr不大于预设的第一门限值时,上述第一psnr对应的idr帧不进行p帧码流数据的替换;或,

在确定上述第二psnr不大于预设的第二门限值时,上述第二psnr对应的idr帧不进行p帧码流数据的替换。

较佳的,选取一个idr帧作为当前长期参考帧,具体包括:

将第一个提取出的idr帧作为当前长期参考帧;或,

当确定上述第一psnr不大于预设的第一门限值时,将上述第一psnr对应的idr帧作为当前长期参考帧;或,

在确定上述第二psnr不大于预设的第二门限值时,将上述第二psnr对应的idr帧作为当前长期参考帧。

较佳的,若上述解码为硬解码,则获得每一个idr帧的码流数据解码后的 yuv数据时,具体包括:

分别对提取出的每一个idr帧码流数据进行硬解码,获得每一个idr帧的码流数据解码后的yuv数据;

获得p帧码流数据和相应的重建yuv数据时,具体包括:

将上述第一psnr对应的idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧硬编码,获得p帧码流数据和相应的重建yuv数据。

较佳的,基于当前长期参考帧进行p帧硬编码之后,获得p帧码流数据和相应的重建yuv数据之前,进一步包括:

将硬编码后p帧码流数据的语法元素替换为长期参考方式。

较佳的,若上述解码为软解码,则获得每一个idr帧的码流数据解码后的yuv数据时,具体包括:

分别对提取出的每一个idr帧码流数据进行软解码,获得每一个idr帧的码流数据解码后的yuv数据;

获得p帧码流数据和相应的重建yuv数据时,具体包括:

将上述第一psnr对应的idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧软编码,获得p帧码流数据和相应的重建yuv数据。

一种码流接收设备的码流编码装置,包括:

解码单元,用于在接收到外部输入的原始码流后,从上述原始码流中依次提取出每一个即时解码刷新idr帧的码流数据,并获得每一个idr帧的码流数据解码后的yuv数据;

第一计算单元,用于选取一个idr帧作为当前长期参考帧,依次针对除当前长期参考帧之外的其他每一个idr帧,计算上述idr帧的码流数据解码后的yuv数据与当前长期参考帧的码流数据解码后的yuv数据之间的第一峰值信噪比psnr;

编码单元,用于当确定上述第一psnr大于预设的第一门限值时,将上述idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧编码, 并获得p帧码流数据和相应的重建yuv数据;

处理单元,用于将上述p帧码流数据替换对应的idr帧的码流数据。

本发明实施例中,在接收到外部输入的原始码流后,从上述原始码流中依次提取出每一个即时解码刷新idr帧的码流数据,并获得每一个idr帧的码流数据解码后的yuv数据;选取一个idr帧作为当前长期参考帧,依次针对除当前长期参考帧之外的其他每一个idr帧,计算上述idr帧的码流数据解码后的yuv数据与当前长期参考帧的码流数据解码后的yuv数据之间的第一峰值信噪比psnr,当确定上述第一psnr大于预设的第一门限值时,将上述idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧编码,并获得p帧码流数据和相应的重建yuv数据;将上述p帧码流数据替换对应的idr帧的码流数据,这样,可以将现有idrpp...ppidrpp...pp单参考编码方式转换成idrpp...ppppp...pp长期参考编码方式,过程简单、高效,不用占用过多的系统资源,在保证图像质量的同时能有效降低编码码率,而且该方法不需要对目前的码流接收设备做任何硬件改动,能无缝应用于当前主流的安防码流接收设备中,同时也不需要修改编解码协议,能应用到目前主流的编解码标准中。

较佳的,获得p帧码流数据和相应的重建yuv数据之后,将上述p帧码流数据替换对应的idr帧的码流数据之前,进一步包括:

第二计算单元,用于计算上述重建yuv数据与对应的idr帧的码流数据解码后的yuv数据之间的第二psnr,并确定上述第二psnr大于预设的第二门限值。

较佳的,处理单元进一步用于:

当确定上述第一psnr不大于预设的第一门限值时,上述第一psnr对应的idr帧不进行p帧码流数据的替换;或,

在确定上述第二psnr不大于预设的第二门限值时,上述第二psnr对应的idr帧不进行p帧码流数据的替换。

较佳的,选取一个idr帧作为当前长期参考帧时,第一计算单元具体用于:

将第一个提取出的idr帧作为当前长期参考帧;或,

当确定上述第一psnr不大于预设的第一门限值时,将上述第一psnr对应的idr帧作为当前长期参考帧;或,

在确定上述第二psnr不大于预设的第二门限值时,将上述第二psnr对应的idr帧作为当前长期参考帧。

较佳的,若上述解码为硬解码,则获得每一个idr帧的码流数据解码后的yuv数据时,解码单元具体用于:

分别对提取出的每一个idr帧码流数据进行硬解码,获得每一个idr帧的码流数据解码后的yuv数据;

获得p帧码流数据和相应的重建yuv数据时,编码单元具体用于:

将上述第一psnr对应的idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧硬编码,获得p帧码流数据和相应的重建yuv数据。

较佳的,基于当前长期参考帧进行p帧硬编码之后,获得p帧码流数据和相应的重建yuv数据之前,编码单元进一步用于:

将硬编码后p帧码流数据的语法元素替换为长期参考方式。

较佳的,若上述解码为软解码,则获得每一个idr帧的码流数据解码后的yuv数据时,解码单元具体用于:

分别对提取出的每一个idr帧码流数据进行软解码,获得每一个idr帧的码流数据解码后的yuv数据;

获得p帧码流数据和相应的重建yuv数据时,编码单元具体用于:

将上述第一psnr对应的idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧软编码,获得p帧码流数据和相应的重建yuv数据。

附图说明

图1.a为现有技术中,idrpp...ppidrpp...pp的编码码流格式示意图;

图1.b为现有技术中,单idr全p帧编码码流格式示意图;

图1.c为现有技术中,长期参考编码码流格式示意图;

图2为本发明实施例中,nvr设备的数据流结构示意图;

图3为本发明实施例中,码流接收设备的码流编码的方法概述流程图;

图4为本发明实施例中,码流接收设备的码流编码的方法详细流程图;

图5为本发明实施例中,码流接收设备的码流编码效果示意图;

图6为本发明实施例中,码流接收设备的码流编码的装置结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了解决在码流接收设备中不能有效地使用长期参考编码方式的问题,本发明实施例中,接收到外部输入的原始码流后,仅将原始码流中的每一个idr帧的码流数据进行解码,选取一个idr帧作为当前长期参考帧,通过计算idr帧解码后的yuv数据与当前长期参考帧解码后的yuv数据之间的第一psnr,当大于预设第一门限值时,将idr帧解码后的yuv数据以当前长期参考帧为参考进行p帧编码,并比较p帧编码前后的yuv数据之间的第二psnr,当大于预设门限值时,将p帧码流数据替换对应的idr帧的码流数据,否则,不进行码流替换。

下面通过具体实施例对本发明方案进行详细描述,当然,本发明并不限于以下实施例。

实际中,码流接收设备(例如网络硬盘录像机(networkvideorecorder,nvr)设备、云存储),会接收码流生成设备(例如ipc、dvr)发送的已编码码流,由于目前码流生成设备均不支持长期参考编码方式,因此,码流接收设备接收到的一般为idrpp…ppidrpp…pp编码格式的编码码流,以nvr设备为例,参见图2所示,为nvr设备的数据流结构示意图,码流接收模块会 接收idrpp…ppidrpp…pp编码格式的原始的已编码码流,然后将接收到的编码码流先缓存到双倍速率同步动态随机存储器(doubledatarate,ddr)中,最后再存储到本地存储设备中。为支持本地显示和网络预览等应用功能,nvr设备一般提供硬核的解码和编码功能。本发明实施例中,为了在码流接收设备中应用长期参考编码方式,将接收到的单参考编码格式的码流转换为长期参考编码格式的码流。

参阅图3所示,本发明实施例中,码流接收设备的码流编码方法的具体流程如下:

步骤100:在接收到外部输入的原始码流后,从上述原始码流中依次提取出每一个idr帧的码流数据,并获得每一个idr帧的码流数据解码后的yuv数据。

值得说明的是,执行步骤100时,接收到的外部输入的原始码流一般为idrpp…ppidrpp…pp码流,即单参考编码格式的码流,如果码流接收设备接收到的原始码流本身就是采用长期参考编码方式的码流,则就不用再进行转换了。

其中,对idr帧的码流数据进行解码,可以为硬解码或软解码方式,具体根据码流接收设备本身的功能而定,例如,nvr设备为硬解码方式,云存储为软解码方式。硬解码一般指由集成解码功能的专用芯片来完成的相应解码,没有操作系统和软件的参与的解码方案,软解码通常由中央处理器(centralprocessingunit,cpu)完成,是需要操作系统的支持且有软件的参与的解码方案。硬解码和软解码的具体实现过程可以采用现有技术中的码流接收设备的实现方法,具体就不再进行详述了。

由于idr帧的码流数据解码是无需参考帧的自解码方式,而且,目前的主流安防设备应用,几秒钟才出现一个idr帧,因此对解码器复杂度(只需idr解码功能即可)、解码速度方面要求很低,即使没有硬解码功能的码流接收设备也能非常容易采用软解码方式满足上述应用。

步骤110:选取一个idr帧作为当前长期参考帧,依次计算除当前长期参考帧之外的其他每一个idr帧的码流数据解码后的yuv数据,与当前长期参考帧的码流数据解码后的yuv数据之间的第一psnr。

执行步骤110时,具体包括:

首先,选取一个idr帧作为当前长期参考帧。

在最开始时,将第一个提取出的idr帧作为当前长期参考帧,在进行后续的操作时,根据判断条件,选取当前长期参考帧。

然后,依次计算除当前长期参考帧之外的其他每一个idr帧的码流数据解码后的yuv数据,与当前长期参考帧的码流数据解码后的yuv数据之间的第一峰值信噪比(peaksignaltonoiseratio,psnr)。

其中,计算第一psnr的方法,可以采用现有技术中的计算方法,本发明实施例中并不进行限制,例如,psnr=10*log10((2^n-1)^2/mse),mse是当前长期参考帧与除当前长期参考帧之外的任意一个idr帧之间均方误差,n是每个采样值的比特数。

本发明实施例中,计算psnr,目的是为了度量yuv数据对应的图像之间差异的大小,但也可以采用其他的方法来达到此目的,例如,计算结构相似性(structuralsimilarity,ssim)方法,因此采用任何达到此目的的方法,也都属于本发明实施例的保护范围内。

步骤120:当确定上述第一psnr大于预设的第一门限值时,将上述idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧编码,并获得p帧码流数据和相应的重建yuv数据。

执行步骤120时,当第一psnr大于预设的第一门限值时,说明画面一致性较好,才基于当前长期参考帧进行p帧编码,获取编码后的p帧码流数据,且在进行p帧编码的过程中可以获取到p帧码流数据对应的解码后的重建yuv数据。

其中,和上述解码有硬解码和软解码相同,进行p帧编码方式可以为硬编 码或软编码方式,具体根据码流接收设备本身的功能而定。硬编码和软编码的区别是,软编码可以在运行时确定、修改,而硬编码是不能够改变的,在时频编码领域中,硬编码指所有的编码工作由专用集成电路(applicationspecificintegratedcircuit,asic)芯片完成,没有操作系统和软件的参与的编码方案,软编码指编码器需要操作系统的支持且有软件的参与的编码方案。硬编码和软编码的具体实现过程可以采用现有技术中的码流接收设备的实现方法,具体就不再进行详述了。

(1)具备硬核编码功能的设备

由于目前主流接收设备的硬核编码器只能编码idrpp…ppidrpp…pp码流格式,不支持长期参考编码,生成的p帧码流数据仍是按idrp短参考方式的,因此需要将此码流数据按长期参考编码方式进行转码。

由于此转码过程只涉及将idrp短期参考(即单帧参考)的语法元素替换成长期参考编码方式,以h.264编码标准为例,长期参考编码的相关语法元素只涉及到片头(slice_header)这一层,而没有涉及到宏块层的相关语法元素,而不需要像通常的转码方式一样进行先解码后编码,因此对设备的性能要求不高,普通的码流接收设备能非常容易满足上述应用。

(2)不具备硬核编码功能的设备

此时需采用软编码方案,则将软编码器做成支持长期参考编码方式的编码器,直接进行长期参考编码,不需要再进行语法元素头替换。由于只是单帧参考编码,而且几秒钟才编码一帧,因此对设备的性能要求不高,普通的码流接收设备能非常容易满足上述应用。

进一步地,当确定任意一个第一psnr不大于预设的第一门限值时,将上述第一psnr对应的idr帧作为当前长期参考帧,并且不进行码流数据的替换,这是因为,虽然安防监控场景从长期来看是静止不动的,但很有可能在某一时间段由于外部物体的引入、或者监控视角发现变化而导致画面出现突变,因此突变前的idr帧已不再适用于做长期参考帧,此时再用变化前的idr帧做长 期参考帧将导致编码码流变大,甚至于达不到节省码流的效果。

步骤130:将上述p帧码流数据替换对应的idr帧的码流数据。

进一步地,在执行步骤130之前,包括:

首先,计算上述重建yuv数据与对应的idr帧的码流数据解码后的yuv数据之间的第二psnr,即计算进行p帧编码前后的yuv数据的第二psnr,

然后,确定所述第二psnr大于预设的第二门限值。

也就是,判断第二psnr是否大于预设的第二门限值,当确定大于时,才会将将上述p帧码流数据替换对应的idr帧的码流数据。

这是为了,进一步保证解码码流的图像效果,p帧码流数据所对应的解码后的重建yuv数据与idr帧码流数据所对应的解码后的yuv数据误差应尽可能小,不会影响图像画质。

进一步地,当确定第二psnr不大于预设的第二门限值,说明生成的p帧码流数据与原始idr码流数据差异较大,有可能会影响图像画质,则不允许进行替换,而且需要将上述第二psnr对应的idr帧作为当前长期参考帧。

下面采用一个具体的应用场景对上述实施例作出进一步详细说明。具体参阅图4所示,本发明实施例中,码流接收设备的码流编码方法的执行过程具体如下:

步骤200:接收外部输入的idrpp…ppidrpp...pp码流(原始码流)。

步骤201:提取原始码流中的idr帧码流数据。

步骤202:对idr帧码流数据进行解码,获取解码后的yuv数据,其中:对当前长期参考的idr帧解码的yuv数据标记为idr_l_yuv,非当前长期参考的idr帧解码的yuv数据标记为idr_yuv。

步骤203:计算idr_l_yuv与idr_yuv的第一psnr值(例如,将第一psnr记为psnr_idr)。

步骤204:判断第一psnr是否大于预设的第一门限值(例如为psnr_th0),即判断psnr_idr>psnr_th0,若是,则执行步骤205,否则, 执行步骤209。

步骤205:以idr_l_yuv为长期参考,进行idr_yuv的p帧编码,并获取p帧码流数据和重建p帧编码的重建yuv数据(记为p_yuv)。

步骤206:计算idr_yuv与p_yuv的第二psnr值(例如,将第二psnr记为psnr_p)。

步骤207:判断第二psnr是否大于预设的第二门限值(例如为psnr_th1),即判断psnr_p>psnr_th1,若是,则执行步骤208,否则,执行步骤209。

步骤208:用新生成的p帧码流数据替换对应的idr帧码流数据,形成最终需要的长期参考编码码流。

步骤209:将当前位置的idr帧作为长期参考帧,不进行码流替换。其中,当前位置的idr帧即为,psnr_idr<=psnr_th0时对应的idr帧,或psnr_p<=psnr_th1时对应的idr帧。

参阅图5所示,以当前长期参考帧一直为第一个(最左边)idr帧为例,码流接收设备的码流编码效果示意图。

码流接收设备接收到外部输入的原始码流,原始码流为idrpp…ppidrpp…pp编码格式的编码码流。

首先,将第一个idr帧作为当前长期参考帧,计算第二个idr帧解码后的yuv数据与当前长期参考帧解码后的yuv数据的第一psnr_21,判断得到第一psnr_21大于第一门限值。

然后,将第二个idr帧解码后的yuv数据以当前长期参考帧为参考进行p帧编码,得到p帧码流数据p0,计算p0解码后的yuv数据与第二个idr帧解码后的yuv数据之间的第二psnr_22。

最后,判断得到第二psnr_22大于第二门限值,则将p帧码流数据p0替换第二idr帧码流数据。

相同地,依次进行idr帧码流数据的替换,即第三个idr帧解码后的yuv 数据以第一个idr帧为参考进行p帧编码,得到p帧码流数据p1,将p帧码流数据p1替换第三个idr帧码流数据;第四个idr帧解码后的yuv数据以第一个idr帧为参考进行p帧编码,得到p帧码流数据p2,将p帧码流数据p1替换第四个idr帧码流数据,具体过程就不再一一进行赘述了,直至最后一个idr帧,最终得到长期参考编码格式的码流。

值得说明的是,图5给出的为判断得到当前长期参考帧一直为第一个idr帧的示意图,如果计算的第一psnr_21小于第一门限值,则第二个idr帧不进行p帧码流替换,并且将第二个idr帧作为当前长期参考帧,这样,在进行第三个idr帧的替换时,计算的是第三个idr帧解码后的yuv数据与第二个idr帧解码后的yuv数据的第一psnr_32。

基于上述实施例,参阅图6所示,本发明实施例中,码流接收设备的码流编码的装置,具体包括:

解码单元30,用于在接收到外部输入的原始码流后,从上述原始码流中依次提取出每一个即时解码刷新idr帧的码流数据,并获得每一个idr帧的码流数据解码后的yuv数据;

第一计算单元31,用于选取一个idr帧作为当前长期参考帧,依次针对除当前长期参考帧之外的其他每一个idr帧,计算上述idr帧的码流数据解码后的yuv数据与当前长期参考帧的码流数据解码后的yuv数据之间的第一峰值信噪比psnr;

编码单元32,用于当确定上述第一psnr大于预设的第一门限值时,将上述idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧编码,并获得p帧码流数据和相应的重建yuv数据;

处理单元33,用于将上述p帧码流数据替换对应的idr帧的码流数据。

较佳的,获得p帧码流数据和相应的重建yuv数据之后,将上述p帧码流数据替换对应的idr帧的码流数据之前,进一步包括:

第二计算单元34,用于计算上述重建yuv数据与对应的idr帧的码流数 据解码后的yuv数据之间的第二psnr,并确定上述第二psnr大于预设的第二门限值。

较佳的,处理单元33进一步用于:

当确定上述第一psnr不大于预设的第一门限值时,上述第一psnr对应的idr帧不进行p帧码流数据的替换;或,

在确定上述第二psnr不大于预设的第二门限值时,上述第二psnr对应的idr帧不进行p帧码流数据的替换。

较佳的,选取一个idr帧作为当前长期参考帧时,第一计算单元31具体用于:

将第一个提取出的idr帧作为当前长期参考帧;或,

当确定上述第一psnr不大于预设的第一门限值时,将上述第一psnr对应的idr帧作为当前长期参考帧;或,

在确定上述第二psnr不大于预设的第二门限值时,将上述第二psnr对应的idr帧作为当前长期参考帧。

较佳的,若上述解码为硬解码,则获得每一个idr帧的码流数据解码后的yuv数据时,解码单元30具体用于:

分别对提取出的每一个idr帧码流数据进行硬解码,获得每一个idr帧的码流数据解码后的yuv数据;

获得p帧码流数据和相应的重建yuv数据时,编码单元32具体用于:

将上述第一psnr对应的idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧硬编码,获得p帧码流数据和相应的重建yuv数据。

较佳的,基于当前长期参考帧进行p帧硬编码之后,获得p帧码流数据和相应的重建yuv数据之前,编码单元32进一步用于:

将硬编码后p帧码流数据的语法元素替换为长期参考方式。

较佳的,若上述解码为软解码,则获得每一个idr帧的码流数据解码后的yuv数据时,解码单元30具体用于:

分别对提取出的每一个idr帧码流数据进行软解码,获得每一个idr帧的码流数据解码后的yuv数据;

获得p帧码流数据和相应的重建yuv数据时,编码单元32具体用于:

将上述第一psnr对应的idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧软编码,获得p帧码流数据和相应的重建yuv数据。

综上所述,本发明实施例中,在接收到外部输入的原始码流后,从上述原始码流中依次提取出每一个即时解码刷新idr帧的码流数据,并获得每一个idr帧的码流数据解码后的yuv数据;选取一个idr帧作为当前长期参考帧,依次针对除当前长期参考帧之外的其他每一个idr帧,计算上述idr帧的码流数据解码后的yuv数据与当前长期参考帧的码流数据解码后的yuv数据之间的第一峰值信噪比psnr,当确定上述第一psnr大于预设的第一门限值时,将上述idr帧的码流数据解码后的yuv数据,基于当前长期参考帧进行p帧编码,并获得p帧码流数据和相应的重建yuv数据;将上述p帧码流数据替换对应的idr帧的码流数据,这样,可以将现有idrpp...ppidrpp...pp单参考编码方式转换成idrpp...ppppp...pp长期参考编码方式,过程简单、高效,不用占用过多的系统资源,在保证图像质量的同时能有效降低编码码率,而且该方法不需要对目前的码流接收设备做任何硬件改动,能无缝应用于当前主流的安防码流接收设备中,同时也不需要修改编解码协议,能应用到目前主流的编解码标准中。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1