一种图像编码方法、装置、设备及存储介质与流程

    专利2024-12-17  11


    本发明涉及编码领域,尤其涉及一种图像编码方法、装置、设备及存储介质。


    背景技术:

    1、在视频编码技术中,由于时空的连续性,每一帧都可以参考其前后若干帧来编码。参考的帧越多,就需要遍历这些帧的所有可能去选择出最适配当前帧的一种,这样增加了编码复杂度。

    2、同时,在许多需要将视频内容实时编码成码流并即时传输的场景中,对于减少延时都需要较高需求,而在目前的视频编码流程中,在正式编码前会缓存一定数量的帧进行预处理操作,这个过程导致了编码延时,并且增大了编码的计算复杂度,因此如何简化编码前的预处理过程,降低编码延时是一个亟需解决的问题。


    技术实现思路

    1、本发明实施例所要解决的技术问题在于,提供一种图像编码方法、装置、设备及存储介质,实现了简化编码前的预处理过程,降低编码延时。

    2、第一方面,本发明实施例提供了一种图像编码方法,包括:

    3、基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组;其中,k为大于等于零的整数,所述第k帧与所述目标帧之间的帧的帧类型为p帧;

    4、根据所述目标帧在所述目标帧所属的画面组中的位置,确定所述目标帧的帧类型;其中,所述目标帧所属的画面组中的第一帧的帧类型为i帧,所述画面组中的第n帧的帧类型为p帧,n为大于1的正整数;

    5、基于所述目标帧的帧类型,对所述目标帧进行编码。

    6、可见,本技术实施例中,基于目标帧之前的第k帧的帧类型,确定该目标帧所属的画面组,其中,k为大于等于零的整数,该第k帧与该目标帧之间的帧的帧类型为p帧,然后可以根据该目标帧在该目标帧所属的画面组中的位置,确定该目标帧的帧类型。其中,该目标帧所属的画面组中的第一帧的帧类型为i帧,该画面组中的第n帧的帧类型为p帧,n为大于1的正整数,由于画面组中只有i帧和p帧两种帧类型,取消了复杂度较高的b帧的帧类型,然后直接基于目标帧的帧类型,对该目标帧进行编码,因此实现了对编码前的预处理过程的简化,大大降低编码延时。

    7、在一种可选的实施方式中,基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组,包括:

    8、若所述第k帧的帧类型被设置为i帧,则获取所述第k帧所属的画面组,所述第k帧所属的画面组中的第一帧为所述第k帧;

    9、若所述目标帧位于所述第k帧所属的画面组中,则将所述第k帧所属的画面组确定为所述目标帧所属的画面组。

    10、在一种可选的实施方式中,若所述第k帧的帧类型被设置为i帧,则获取所述第k帧所属的画面组,包括:

    11、若所述第k帧的帧类型被设置为i帧,则获取预先设定的画面组长度;

    12、确定所述第k帧所属的画面组,所述第k帧所属的画面组中的最后一帧为所述目标帧之前的第k+l-1帧;l为所述预先设定的画面组长度。

    13、在一种可选的实施方式中,该方法还包括:

    14、若所述目标帧为所述第k帧,或者所述目标帧为所述第k+l-1帧,或者所述目标帧位于所述第k帧之后且所述第k+l-1帧之前,则将所述第k帧所属的画面组确定为所述目标帧所属的画面组。

    15、在一种可选的实施方式中,该方法还包括:

    16、若所述目标帧为第k+l帧,则确定所述目标帧所属的画面组,其中,所述目标帧所属的画面组中的第一帧为所述目标帧。

    17、在一种可选的实施方式中,基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组,包括:

    18、若所述第k帧的帧类型被设置为p帧,则获取所述第k帧所属的画面组,所述第k帧所属的画面组中的第一帧是第h帧,h<k;

    19、若所述目标帧位于所述第k帧所属的画面组中,则将所述第k帧所属的画面组确定为所述目标帧所属的画面组。

    20、在一种可选的实施方式中,该方法还包括:

    21、若所述目标帧为所述第k帧,或者所述目标帧为第h+l-1帧,或者所述目标帧位于所述第k帧之后且所述第h+l-1帧之前,则将所述第k帧所属的画面组确定为所述目标帧所属的画面组。

    22、在一种可选的实施方式中,该方法还包括:

    23、若所述目标帧为第h+l帧,则确定所述目标帧所属的画面组,其中,所述目标帧所属的画面组中的第一帧为所述目标帧。

    24、在一种可选的实施方式中,该方法还包括:

    25、获取第k-1帧和第k帧的画面信息之间的差异;

    26、若所述第k-1帧和第k帧的画面信息之间的差异大于预设差异阈值,则将所述第k帧的帧类型设置为i帧。

    27、在一种可选的实施方式中,该方法还包括:

    28、在对所述第k帧进行编码的过程中,若检测到网络质量小于预设质量阈值,则将所述第k帧的帧类型设置为i帧。

    29、在一种可选的实施方式中,该方法还包括:

    30、若所述第k帧之前的至少一帧传输失败,则确定网络质量小于预设质量阈值。

    31、在一种可选的实施方式中,该方法还包括:

    32、获取所述第k帧之前的至少一帧发送至目标客户端的发送时间,以及所述目标客户端接收所述至少一帧的接收时间;

    33、若所述接收时间与所述发送时间之间的差值大于预设时间间隔,则确定网络质量小于预设质量阈值。

    34、在一种可选的实施方式中,该方法还包括:

    35、在对所述第k帧进行编码的过程中,若接收到来自客户端的帧类型设置请求,则将所述第k帧的帧类型设置为i帧。

    36、在一种可选的实施方式中,若接收到来自客户端的帧类型设置请求,则将所述第k帧的帧类型设置为i帧,包括:

    37、若接收到来自客户端的帧类型设置请求,且所述客户端所处的地理区域为预设区域,则将所述第k帧的帧类型设置为i帧。

    38、在一种可选的实施方式中,若接收到来自客户端的帧类型设置请求,则将所述第k帧的帧类型设置为i帧,包括:

    39、若接收到来自客户端的帧类型设置请求,则获取所述第k帧之前的至少一帧发送至所述客户端的发送时间,以及所述客户端接收所述至少一帧的接收时间;

    40、若所述接收时间与所述发送时间之间的差值大于预设时间间隔,则将所述第k帧的帧类型设置为i帧。

    41、在一种可选的实施方式中,该方法还包括:

    42、每接收到来自客户端的帧类型设置请求,则将所述帧类型设置请求存储至缓存队列中;

    43、在对所述第k帧进行编码的过程中,若所述缓存队列所包含的帧类型设置请求的数量达到预设数量阈值,则将所述第k帧的帧类型设置为i帧。

    44、在一种可选的实施方式中,该方法还包括:

    45、响应于即时通讯事件,获取所述目标即时通讯事件的通讯码流中的目标帧,触发执行所述基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组的步骤。

    46、在一种可选的实施方式中,响应于即时通讯事件,获取所述目标即时通讯事件的通讯码流中的目标帧,触发执行所述基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组的步骤,包括:

    47、响应于所述目标即时通讯事件,获取所述目标即时通讯事件的通讯码流中的目标帧;

    48、调用对所述目标帧进行编码的编码策略,所述编码策略由第一编码策略切换为第二编码策略;

    49、调用所述第二编码策略,触发执行所述基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组的步骤。

    50、第二方面,本发明实施例提供了一种图像编码方法,包括:

    51、获取目标帧之前的至少一帧;

    52、从所述至少一帧中确定所述目标帧的参考帧;所述目标帧的参考帧的数量为一;

    53、基于所述参考帧,对所述目标帧进行编码。

    54、可见,本技术实施例中,获取目标帧之前的至少一帧,从该至少一帧中确定该目标帧的参考帧,该目标帧的参考帧的数量为一,基于该参考帧,对该目标帧进行编码,实现了确定参考帧的数量为一,以使编码器速度提升。

    55、第三方面,本发明实施例提供了一种图像编码装置,包括:

    56、确定单元,用于基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组;其中,k为大于等于零的整数,所述第k帧与所述目标帧之间的帧类型为p帧;

    57、所述确定单元,还用于根据所述目标帧在所述目标帧所属的画面组中的位置,确定所述目标帧的帧类型;其中,所述目标帧所属的画面组中的第一帧的帧类型为i帧,所述画面组中的第n帧的帧类型为p帧,n为大于1的正整数;

    58、编码单元,用于基于所述目标帧的帧类型,对所述目标帧进行编码。

    59、第四方面,本发明实施例提供了一种图像编码装置,包括:

    60、获取单元,用于获取目标帧之前的至少一帧;

    61、确定单元,用于从所述至少一帧中确定所述目标帧的参考帧;所述目标帧的参考帧的数量为一;

    62、编码单元,用于基于所述参考帧,对所述目标帧进行编码。

    63、第五方面,本发明实施例提供了一种服务器,该服务器包括存储器、通信接口以及处理器,其中,存储器、通信接口和处理器相互连接;存储器存储有计算机程序,处理器调用所述存储器中存储的计算机程序,用于实现上述第一方面所述的方法。

    64、第六方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现第一方面所述的方法。

    65、第七方面,本发明实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行上述第一方面所述的方法。

    66、第八方面,本发明实施例提供了一种计算机程序,该计算机程序包括计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行上述第一方面所述的方法。

    67、第九方面,本发明实施例提供了一种服务器,该服务器包括存储器、通信接口以及处理器,其中,存储器、通信接口和处理器相互连接;存储器存储有计算机程序,处理器调用所述存储器中存储的计算机程序,用于实现上述第二方面所述的方法。

    68、第十方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现第二方面所述的方法。

    69、第十一方面,本发明实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行上述第二方面所述的方法。

    70、第十二方面,本发明实施例提供了一种计算机程序,该计算机程序包括计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行上述第二方面所述的方法。


    技术特征:

    1.一种图像编码方法,其特征在于,包括:

    2.如权利要求1所述的方法,其特征在于,所述基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组,包括:

    3.如权利要求2所述的方法,其特征在于,所述若所述第k帧的帧类型被设置为i帧,则获取所述第k帧所属的画面组,包括:

    4.如权利要求3所述的方法,其特征在于,所述方法还包括:

    5.如权利要求3所述的方法,其特征在于,所述方法还包括:

    6.如权利要求1所述的方法,其特征在于,所述基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组,包括:

    7.如权利要求6所述的方法,其特征在于,所述方法还包括:

    8.如权利要求6所述的方法,其特征在于,所述方法还包括:

    9.如权利要求2所述的方法,其特征在于,所述方法还包括:

    10.如权利要求2所述的方法,其特征在于,所述方法还包括:

    11.如权利要求10所述的方法,其特征在于,所述方法还包括:

    12.如权利要求10所述的方法,其特征在于,所述方法还包括:

    13.如权利要求2所述的方法,其特征在于,所述方法还包括:

    14.如权利要求13所述的方法,其特征在于,所述若接收到来自客户端的帧类型设置请求,则将所述第k帧的帧类型设置为i帧,包括:

    15.如权利要求13所述的方法,其特征在于,所述若接收到来自客户端的帧类型设置请求,则将所述第k帧的帧类型设置为i帧,包括:

    16.如权利要求2-15任一项所述的方法,其特征在于,所述方法还包括:

    17.如权利要求1所述的方法,其特征在于,所述方法还包括:

    18.如权利要求17所述的方法,其特征在于,所述响应于即时通讯事件,获取所述目标即时通讯事件的通讯码流中的目标帧,触发执行所述基于目标帧之前的第k帧的帧类型,确定所述目标帧所属的画面组的步骤,包括:

    19.一种图像编码方法,其特征在于,包括:

    20.一种图像编码装置,其特征在于,所述装置包括:

    21.一种图像编码装置,其特征在于,所述装置包括:

    22.一种服务器,其特征在于,所述服务器包括存储器、通信接口以及处理器,其中,所述存储器、所述通信接口和所述处理器相互连接;所述存储器存储有计算机程序,所述处理器调用所述存储器中存储的计算机程序,用于实现权利要求1至18任一项所述的方法。

    23.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至18任一项所述的方法。

    24.一种服务器,其特征在于,所述服务器包括存储器、通信接口以及处理器,其中,所述存储器、所述通信接口和所述处理器相互连接;所述存储器存储有计算机程序,所述处理器调用所述存储器中存储的计算机程序,用于实现权利要求19所述的方法。

    25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求19所述的方法。


    技术总结
    本申请实施例公开了一种图像编码方法、装置、设备及存储介质,该图像编码方法包括:基于目标帧之前的第K帧的帧类型,确定该目标帧所属的画面组,K为大于等于零的整数,该第K帧与该目标帧之间的帧的帧类型为P帧,根据该目标帧在该目标帧所属的画面组中的位置,确定该目标帧的帧类型,其中,目标帧所属的画面组中的第一帧的帧类型为I帧,该画面组中的第N帧的帧类型为P帧,N为大于1的正整数,基于该目标帧的帧类型,对该目标帧进行编码。本申请实施例,实现了简化编码前的预处理过程,降低编码延时。

    技术研发人员:段晨辉,陈靖
    受保护的技术使用者:书行科技(北京)有限公司
    技术研发日:
    技术公布日:2024/4/29
    转载请注明原文地址:https://wp.8miu.com/read-80579.html

    最新回复(0)