数据传输方法及装置与流程

文档序号:18471880发布日期:2019-08-20 20:23阅读:166来源:国知局
数据传输方法及装置与流程

本公开涉及通信领域,尤其涉及数据传输方法及装置。



背景技术:

随着视频数据包含的数据信息量越来越大,为了更好的传输视频数据,会通过图像压缩技术处理视频图像数据,以保证在固有带宽的条件下传输更多的数据。现有技术中将视频数据逐帧传输时,先根据高度压缩数字视频编解码器标准h.264/avc(advanced视频coding,高级视频编码)将帧图像数据分类为:i帧图像数据、p帧图像数据、b帧图像数据后进行编解码处理。根据h.264视频压缩标准,在视频传输过程中,由于处理i帧图像数据后的码流数据比处理p帧图像数据码流的数据量要多,因此在传输i帧图像数据过程中对带宽的要求比较高,若在传输过程中当前可用的带宽不能满足当前数据传输方法编码所产生的码流的传输,导致大量的i帧数据不能通过网络传输到目标端,从而导致数据丢失,影响解码端图像的质量。



技术实现要素:

本公开实施例提供一种数据传输方法及装置,能够解决在传输视频数据中i帧图像过程中因为带宽限制造成图像质量下降的问题。所述技术方案如下:

根据本公开实施例的第一方面,提供一种数据传输方法,该方法包括:

获取当前图像帧,该当前图像帧为p帧,

当该当前图像帧对应的i帧传输效果符合预设条件时,且当该当前图像帧对应的目标传输资源符合预设条件时,根据当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块,该目标传输资源是指,传输当前图像帧数据后的闲置资源,该目标宏块,是指当前图像帧中与当前图像帧对应的i帧中相同的宏块;

通过目标传输资源传输至少一个目标宏块。

在一个实施例中,该方法在当前图像帧对应的i帧传输效果符合预设条件时,获取当前图像帧之前,方法还包括:

根据预设编码规则处理当前图像帧对应的i帧后,获取目标码流数据;

根据传输资源处理目标码流数据后,获取目标图像,该传输资源,包括带宽资源;

根据目标图像,确定当前图像帧对应的i帧传输效果。

在一个实施例中,该方法在当所述当前图像帧对应的i帧传输效果符合预设条件时,且当所述当前图像帧对应的目标传输资源符合预设条件时,根据所述当前图像帧对应的i帧,在所述当前图像帧中确定至少一个目标宏块,包括:

根据目标图像,获取目标编码质量参数,目标编码质量参数,用于指示目标图像数据的编码质量,目标编码质量参数包括,峰值信噪比、清晰度和误码率;

确定目标编码质量参数是否符合预设编码质量参数;

当所述当前图像帧对应的i帧传输效果符合预设条件时,且当所述当前图像帧对应的目标传输资源符合预设条件时,根据所述当前图像帧对应的i帧,在所述当前图像帧中确定至少一个目标宏块,包括:

当目标编码质量参数不符合预设编码质量参数时,且当所述当前图像帧对应的目标传输资源符合预设条件时,根据所述当前图像帧对应的i帧,在所述当前图像帧中确定至少一个目标宏块。

在一个实施例中,该方法在确定至少一个目标宏块,包括:

根据当前图像帧对应的i帧和目标编码质量参数,确定目标位置数据,位置数据,用于指示当前图像帧对应的i帧中不在预设范围内的宏块位置数据;

当当前图像帧中目标位置对应的块图像数据与当前图像帧对应的i帧中目标位置对应的宏块一致时,确定当前图像帧中目标位置对应的宏块为目标宏块。

在一个实施例中,该方法在通过目标传输资源传输至少一个目标宏块之前,该还包括,

根据当前图像帧对应的i帧传输效果和目标传输资源,确定目标编码规则;

通过目标编码规则,处理至少一个目标宏块。

本公开实施例提供的数据传输方法,通过获取视频数据中为p帧的当前图像帧;在当前图像帧对应的i帧传输效果符合预设要求时,且当前图像帧目标传输资源符合预设要求时,确定当前图像帧的目标传输资源;并确定当前图像帧数据中的与当前图像帧对应的i帧内容相同的目标宏块;通过目标传输资源传输目标宏块。本公开在当前传输资源无法满足当前图像帧对应的i帧的传输需求时,即当前图像帧对应的i帧传输效果低于编解码质量要求时,获取当前图像p帧的闲置传输资源;当当前图像帧的闲置资源满足预设要求时,通过该闲置资源传输当前图像帧对应的i帧,保证了在较小带宽的传输条件下实现高质量传输i帧图像数据的要求。

根据本公开实施例的第二方面,提供一种数据传输装置,包括:

获取模块、确定模块及传输模块,

获取模块,用于获取当前图像帧,该当前图像帧为p帧;

确定模块,用于在当该当前图像帧对应的i帧传输效果符合预设条件时,且当该当前图像帧对应的目标传输资源符合预设条件时,根据当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块,该目标传输资源是指,传输当前图像帧数据后的闲置资源,该目标宏块,是指当前图像帧中与当前图像帧对应的i帧中相同的宏块;

传输模块,用于通过目标传输资源传输至少一个目标宏块。

在一个实施例中,该装置的确定模块,包括:数据获取单元、图像获取单元和确定单元,

数据获取单元,用于根据预设编码规则处理当前图像帧对应的i帧后,获取目标码流数据;

图像获取单元,用于根据传输资源处理目标码流数据后,获取目标图像,该传输资源,包括带宽资源;

确定单元,用于根据目标图像,确定当前图像帧对应的i帧传输效果。

在一个实施例中,该装置的确定模块,还包括:参数获取单元、第一确定单元和第二确定单元;

参数获取单元,用于根据目标图像数据,获取目标编码质量参数,目标编码质量参数,用于指示目标图像数据的编码质量,编码质量参数包括,峰值信噪比、清晰度和误码率;

第一确定单元,用于确定目标编码质量参数是否符合预设编码质量参数;

第二确定单元,用于在当所述当前图像帧对应的i帧传输效果符合预设条件时,且当所述当前图像帧对应的目标传输资源符合预设条件时,根据所述当前图像帧对应的i帧,在所述当前图像帧中确定至少一个目标宏块,包括:

当目标编码质量参数不符合预设编码质量参数时,且当所述当前图像帧对应的目标传输资源符合预设条件时,根据所述当前图像帧对应的i帧,在所述当前图像帧中确定至少一个目标宏块。

在一个实施例中,该装置的确定模块,包括,第三确定单元和第四确定单元:

第三确定单元,用于根据目标编码质量参数和当前图像帧对应的i帧,确定目标位置数据,位置数据,用于指示目标图像数据中不在预设范围内的块图像位置数据;

第四确定单元,用于当当前图像帧中目标位置对应的宏块与当前图像帧对应的i帧中目标位置对应的宏块一致时,确定当前图像帧中目标位置对应的宏块为目标宏块。

在一个实施例中,该装置的传输模块,包括:确定单元和处理单元;

确定单元,用于根据当前图像帧对应的i帧传输效果和目标传输资源,确定目标编码规则;

处理单元,用于通过目标编码规则,处理目标宏块。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是本公开实施例提供的一种数据传输方法的流程图;

图2是本公开实施例提供的一种数据传输装置的结构图;

图3是本公开实施例提供的一种数据传输装置中确定模块的结构图;

图4是本公开实施例提供的一种数据传输装置中确定模块的结构图1;

图5是本公开实施例提供的一种数据传输装置中确定模块的结构图2;

图6是本公开实施例提供的一种数据传输装置中传输模块的结构图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

本公开实施例提供一种数据传输方法,如图1所示,该数据传输方法包括以下步骤:

101、获取当前图像帧,该当前图像帧为p帧。

当前图像帧可以是视频数据中的至少一帧的帧图像数据。

当前图像帧为p帧;是指根据高度压缩数字视频编解码器标准h.264/avc(advanced视频coding,高级视频编码)将帧图像进行分类,包括:i帧、p帧、b帧;i帧是指完整编码帧图像,即为编码处理的参考帧;p帧是指参考之前的i帧生成的只包含差异部分编码的帧图像;b帧是指参考前后的帧编码的帧图像。

102、当该当前图像帧对应的i帧传输效果符合预设条件时,且当该当前图像帧对应的目标传输资源符合预设条件时,根据当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块。

该当前图像帧对应的i帧,是指当前图像帧p帧编码差异帧图像时参考对应的i帧,当前图像帧对应的i帧可以是当前图像帧的上一图像帧或者上一帧图像为p帧时的上一图像帧i帧。

该目标传输资源是指,传输当前图像帧数据后的闲置资源。

该目标宏块,是指当前图像帧中与当前图像帧对应的i帧中相同的宏块。

在可选实施例中,本公开中在判断当前图像帧对应的i帧传输效果符合预设条件时,包括:

根据预设编码规则处理所述当前图像帧对应的i帧后,获取目标码流数据;

根据传输资源处理所述目标码流数据后,获取所述目标图像,所述传输资源,包括带宽资源;

根据该目标图像,确定所述当前图像帧对应的i帧传输效果。

进一步的,根据预设编码规则处理所述当前图像帧对应的i帧后,获取目标码流数据的步骤中,预设编码规则的设置,包括:

获取当前传输资源及当前图像帧对应的i帧;

根据当前传输资源和当前图像帧对应的i帧,设置预设编码规则,从而保证编码的码流大小和当前传输资源相适应。

在编解码过程根据传输资源确定预设编码规则,从而保证编码处理当前图像帧对应的i帧后的码流大小和当前网络带宽相适应。

在具体实施例中,在对当前图像帧对应的i帧编码时,编码规则参数类型可以根据:视频类型宏块、图片类型宏块、文字类型宏块进行设定。

在当前图像帧对应的i帧时,即为完整的一帧图像数据,因此i帧图像对应的数据量较大;当网络带宽较低时,如果按照图片类型宏块编码传输当前图像帧对应的i帧,则有可能造成图像数据的丢失,因此在设置编码规则的时候,将i帧中的视频类型宏块、图片类型宏块、文字类型宏块均按视频类型宏块进行编码,能够实现在带宽速率较低的情况下可以传输完整的一帧数据。

此时当前图像帧对应的i帧的传输效果,即图像质量不是很高,但可以当前图像帧对应的i帧的完整度较高,因此需要进一步确定目标图像数据是否符合预设要求,即,目标图像数据的显示效果。

在可选实施例中,当该当前图像帧对应的i帧传输效果符合预设条件时,且当该当前图像帧对应的目标传输资源符合预设条件时,根据当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块时,该方法包括:

根据该目标图像数据,获取目标编码质量参数,该目标编码质量参数,用于指示目标图像数据的编码质量,该目标编码质量参数包括,峰值信噪比、清晰度和误码率;

确定目标编码质量参数是否符合预设编码质量参数,例如,目标编码质量参数中的峰值信噪比是否符合预设阈值范围;

该当在当前图像帧对应的i帧传输效果符合预设条件时,且当该当前图像帧对应的目标传输资源符合预设条件时,根据当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块时,包括:

当该目标编码质量参数不符合预设编码质量参数时,且当该当前图像帧对应的目标传输资源符合预设条件时,根据当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块时。

该目标传输资源是指,传输所述当前图像帧数据后的闲置资源;进一步的根据高度压缩数字视频编解码器标准h.264/avc,目标传输资源是指处理当前图像帧与当前图像帧对应的i帧不同部分图像数据后的闲置资源。

在具体实施例中,如何确定目标传输资源,包括:

根据h.264/avc编码规则,本实施例中的当前图像帧数据为p帧图像数据当且前图像帧对应的i帧时,根据h.264/avc编码规则,i帧图像数据为完整的一帧图像数据,因此i帧图像数据对应的数据量较大,所需的带宽资源也较大;p帧图像数据表示的是这一帧跟之前的一个关键帧的差别,传输时仅传输差别部分的数据,因此p帧图像数据对应的数据量较小。当利用传输i帧图像数据的带宽资源在传输p帧图像数据后还有一部分带宽资源未被利用。

在可选实施例中,在当前图像帧对应的目标传输资源符合预设条件时,据所述当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块,包括:

当当前图像帧对应的目标传输资源能够满足,根据预设编码规则处理当前图像帧中一个宏块时需要的带宽传输资源时,据所述当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块。

该目标宏块,是指所述当前图像帧中与所述当前图像帧对应的i帧中相同的宏块。

在可选实施例中,本公开在确定目标宏块时,包括:

根据当前图像帧对应的i帧和目标编码质量参数,确定目标位置数据,该目标位置数据,用于指示目标图像数据中不在预设范围内的块图像位置数据;

根据目标位置数据,当当前图像帧中该目标位置对应的宏块与该当前图像帧对应的i帧中该目标位置对应的宏块一致时,确定该当前图像帧中该目标位置对应的宏块为目标宏块。

此处,以当前图像帧对应的i帧包括a宏块、b宏块、c宏块、d宏块四个宏块;参考当前图像帧对应的i帧,当前图像帧数据对应位置的数据为a宏块、b宏块、e宏块、d宏块四个子宏块为为例,阐述确定目标宏块时,包括:

根据目标图像数据和当前图像帧对应的i帧的逐块对比结果,确定目标图像数据中不符合预设编码质量参数的宏块,在此例中为b宏块、c宏块为不符合预设编码质量参数的宏块:并确定b宏块、c宏块对应的目标位置数据,即,传输后的目标图像数据中具体需要优化的宏块为b宏块、c宏块。

确定目标宏块,即:根据目标位置数据获取当前图像帧对应的i帧对应的宏块和当前图像帧数据对应的宏块,并对应的宏块确定是否一致,若一致则确定该宏块为目标宏块。在此例中,当前图像帧对应的i帧b宏块对应位置的是当前图像帧数据中的b宏块、当前图像帧对应的i帧c宏块对应位置的是当前图像帧数据中e宏块;根据判断标准,当前图像帧数据中的b宏块与当前帧对应位置的子宏块一致,则当前图像帧数据中的b宏块为目标宏块。

本公开在当前图像帧对应的i帧传输效果符合预设条件时,获取当前图像帧对应的i帧的下一帧,即当前图像帧,如果当前图像帧为i帧,则重复上面的过程即继续编解码传输图像,如果当前图像帧数据为p帧,因为p帧格式属性导致图像的编码数据较小,因此在传输完毕p帧图像后,传输资源中还有一部分带宽资源未被利用;确定该资源为目标传输资源。

本实施例通过传输p帧图像后未被利用的传输资源传输i帧图像,从而能够实现在传输带宽无法完全传输i帧图像的情况下,保证i帧图像数据的图像数据质量。

103、通过目标传输资源传输至少一个目标宏块。

在可选实施例中,通过该目标传输资源传输至少一个目标宏块之前,还包括,

根据当前图像帧对应的i帧传输效果和该目标传输资源,确定目标编码规则;

通过该目标编码规则,处理该目标宏块。

例如,根据对比该当前图像帧对应的i帧和当前图像帧对应的i帧传输效果,确定误差数据,通过分析误差数据确定目标图像数据不符合预设规则的原因,根据该不符合预设规则的原因,确定编码规则;如在文字部分显示清晰度不符合预设范围,因此在获取目标图像宏块后,则需要根据文字格式的块图像数对应编码规则处理该目标宏块。

例如,目标传输资源包括带宽传输资源,通过不同编码规则对应不同的带宽大小,因此目标传输资源的多少决定了编码规则的设定,而目标传输资源的多少则根据当前图像帧与当前图像帧对应的i帧不同的宏块决定,若当前图像帧与当前图像帧对应的i帧相比不同的图像数据较多时,则目标传输资源较少。

在可选实施例中,本公开在通过目标传输资源传输目标宏块后,还包括:

获取当前图像帧传输效果;

当当前图像帧传输效果符合预设要求时,获取第三图像帧,该第三图像帧为当前图像帧的下一帧图像。

并进一步判断第三图像帧是否为p帧,若为p帧则按照本公开方法循环处理,即:当当前图像帧传输效果符合预设条件时即传输效果低于编解码质量要求时,则,重复上述数据传输方法,即进一步获取当前图像帧的下一帧:第三图像帧,当第三图像帧为p帧时,则利用剩余带宽来处理该第三图像帧的与当前图像帧对应的i帧内容相同且在目标位置处的宏块,直至传输后的目标图像数据满足预设要求。

本公开不仅仅能够完成传输p帧图像数据的目的,还能够在i帧图像传输效果低于编解码质量要求时,利用p帧图像数据闲置资源传输i帧图像,优化了i帧图像传输后的图像显示效果。

本公开实施例,在获取当前图像帧后,在当前图像帧对应的i帧传输效果低于编解码质量要求,且当前帧图像的目标资源符合预设要求时,通过该目标资源来处理当前图像帧与当前图像帧对应的i帧相同的数据;并在此获取当前图像帧的传输效果,在当前图像帧的传输效果符合要求:即传输效果低于编解码质量要求,获取当前图像帧对应的下一帧:第三图像帧,即将当前图像帧对应的i帧逐步分配当前图像帧及第三帧图像数据对应的下几帧图像数据编码传输过程中,渐进式传输图像数据,直至满足预设编解码要求,从而实现在带宽速率较低的条件下,完整的传输一帧数据量较高图像,避免了在视频数据传输过程中数据信息丢失,而导致编解码质量下降、图像显示效果差的问题。

本公开实施例提供的数据传输方法,通过获取视频数据中为p帧的当前图像帧;在当前图像帧对应的i帧传输效果符合预设要求时,且当前图像帧目标传输资源符合预设要求时,确定当前图像帧的目标传输资源;并确定当前图像帧数据中的与当前图像帧对应的i帧内容相同的目标宏块;通过目标传输资源传输目标宏块。本公开在当前传输资源无法满足当前图像帧对应的i帧的传输需求时,即当前图像帧对应的i帧传输效果低于编解码质量要求时,获取当前图像p帧的闲置传输资源;当当前图像帧的闲置资源满足预设要求时,通过该闲置资源传输当前图像帧对应的i帧,保证了在较小带宽的传输条件下实现高质量传输i帧图像数据的要求。

实施例二

基于上述图1对应的实施例中所描述的数据传输方法,下述为本公开装置实施例,可以用于执行本公开方法实施例。

本公开实施例提供一种数据传输装置,如图2所示,该数据传输装置20包括:获取模块201、确定模块202及传输模块203,

获取模块201,用于获取当前图像帧,该当前图像帧为p帧。

确定模块202,用于当该当前图像帧对应的i帧传输效果符合预设条件时,且当该当前图像帧对应的目标传输资源符合预设条件时,根据当前图像帧对应的i帧,在当前图像帧中确定至少一个目标宏块,该目标传输资源是指,传输当前图像帧数据后的闲置资源,该目标宏块,是指当前图像帧中与当前图像帧对应的i帧中相同的宏块。

在可选实施例中,确定模块202包括:数据获取单元2021、图像获取单元2022和确定单元2023,

数据获取单元2021,用于根据预设编码规则处理当前图像帧对应的i帧后,获取目标码流数据;

图像获取单元2022,用于根据传输资源处理目标码流数据后,获取目标图像,传输资源,包括带宽资源;

确定单元2023,用于根据目标图像,确定当前图像帧对应的i帧传输效果。

在可选实施例中,确定模块202包括:参数获取单元2024、第一确定单元2025和第二确定单元2026;

参数获取单元2024,用于根据目标图像数据,获取目标编码质量参数,目标编码质量参数,用于指示目标图像数据的编码质量,编码质量参数包括,峰值信噪比、清晰度和误码率;

第一确定单元2025,用于确定目标编码质量参数是否符合预设编码质量参数;

第二确定单元2026,用于在当前图像帧对应的i帧传输效果符合预设条件时,获取当前图像帧,包括:

当目标编码质量参数不符合预设编码质量参数时,获取当前图像帧。

在可选实施例中,确定模块202,包括,第三确定单元2027和第四确定单元2028:

第三确定单元2027,用于根据目标编码质量参数和当前图像帧对应的i帧,确定目标位置数据,位置数据,用于指示目标图像数据中不在预设范围内的块图像位置数据;

第四确定单元2028,用于当当前图像帧中目标位置对应的宏块与当前图像帧对应的i帧中目标位置对应的宏块一致时,确定当前图像帧中目标位置对应的宏块为目标宏块。

传输模块203,用于通过目标传输资源传输至少一个目标宏块。

在可选实施例中,传输模块203,包括:确定单元2031和处理单元2032;

确定单元2031,用于根据当前图像帧对应的i帧传输效果和目标传输资源,确定目标编码规则;

处理单元2032,用于通过目标编码规则,处理目标宏块。

本公开实施例提供的数据传输装置,通过获取视频数据中为p帧的当前图像帧;在当前图像帧对应的i帧传输效果符合预设要求时,且当前图像帧目标传输资源符合预设要求时,确定当前图像帧的目标传输资源;并确定当前图像帧数据中的与当前图像帧对应的i帧内容相同的目标宏块;通过目标传输资源传输目标宏块。本公开在当前传输资源无法满足当前图像帧对应的i帧的传输需求,即当前图像帧对应的i帧传输效果低于编解码质量要求时,获取当前图像p帧的闲置传输资源;当当前图像帧的闲置资源满足预设要求时,通过该闲置资源传输当前图像帧对应的i帧,保证了在较小带宽的传输条件下实现高质量传输i帧图像数据的要求。

基于上述图1对应的实施例中所描述的数据传输方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:readonlymemory,rom)、随机存取存储器(英文:randomaccessmemory,ram)、cd-rom、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图1对应的实施例中所描述的数据传输方法,此处不再赘述。

本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

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