视频抽帧方法、装置、设备及计算机存储介质与流程

    技术2025-03-19  38


    本申请实施例涉及视频处理领域,尤其涉及一种视频抽帧方法、装置、设备和介质。


    背景技术:

    1、随着人工智能技术的快速发展,其目前已广泛应用于视频领域,国家及各级政府也积极推进基于人工智能的公共安防。行业视频监控在提供实时监看、录制等基础功能外,往往还需要提供人脸识别、车辆识别、人群聚集、打架斗殴识别等智能分析的增值业务。然而视频智能分析对硬件资源占用非常大,不能对视频源中的每帧图片都进行处理,需要按照一定间隔抽帧后再传递给智能分析服务。具体来讲,一种典型抽帧流程可参考如图1所示:首先将视频流或者文件解封装得到编码视频帧,然后依次解码后得到yuv视频帧,再间隔抽选yuv视频帧,最终将抽选的帧编码成jpeg图片,传递给智能分析服务。

    2、发明人在实现本申请方案的过程中发现,解码资源是抽帧服务最大的瓶颈,上述这种典型的抽帧流程需要将视频流中每一个编码视频帧都解码后得到yuv视频帧,但是将视频流中全部压缩数据进行解码会占用大量cpu/gpu资源,而大部分解码后的图像数据是直接丢掉,只是选取很少图像进行压缩为jpeg图片作为抽帧结果,造成了资源浪费。

    3、在一种现有技术中,可以让用户从候选预览图中选择目标预览图,从而确定抽帧图片,然而发明人在实现本申请方案的过程中发现,这种现有方案虽然可以较好的确定抽帧图片,但是却引入人为选择因素,无法自动化的处理,无法广泛使用,不使用于智能分析场景。

    4、在另一种现有技术中,可以根据运动状态信息确定抽帧频率,然后按照该抽帧频率对目标对象的视频流进行抽帧,这样在目标对象运动较为缓慢时便可节省计算资源。然而发明人在实现本申请方案的过程中发现,在这种现有方案中,运动状态的确定需要额外的穿戴设备,系统依赖较多,成本较高,不具有广泛应用的价值。


    技术实现思路

    1、本申请实施例提供一种视频抽帧方法、装置、设备及计算机存储介质,以提供一种不但可以避免过多占用解码资源而且可以广泛适用的视频抽帧解决办法。

    2、第一方面,本申请实施例提供一种视频抽帧方法,该方法包括:

    3、按照预设间隔对输入的视频流进行抽帧,在抽帧过程中,将最新遇到的关键帧记录为当前关键帧,将最新抽到的目标帧记录为当前目标帧;

    4、判断当前目标帧的位置、当前关键帧的位置以及当前平均帧率是否满足指定条件;

    5、如果满足指定条件,则将当前关键帧解码后代替当前目标帧输出;

    6、如果不满足指定条件,则判断在当前目标帧之后指定数量内的视频帧中是否遇到关键帧,如果遇到关键帧,则将所遇到的关键帧代替当前目标帧输出,如果未遇到关键帧,则将当前目标帧以及当前目标帧与当前关键帧之间的视频帧依次解码,并基于解码将当前目标帧输出。

    7、第二方面,本申请实施例提供一种视频抽帧装置,该装置包括:

    8、抽帧模块,用于按照预设间隔对输入的视频流进行抽帧;

    9、记录模块,用于在抽帧模块抽帧过程中,将最新遇到的关键帧记录为当前关键帧,将最新抽到的目标帧记录为当前目标帧;

    10、替换输出模块,用于判断当前目标帧的位置、当前关键帧的位置以及当前平均帧率是否满足指定条件;如果满足指定条件,则将当前关键帧解码后代替当前目标帧输出;如果不满足指定条件,则判断在当前目标帧之后指定数量内的视频帧中是否遇到关键帧,如果遇到关键帧,则将所遇到的关键帧代替当前目标帧输出,如果未遇到关键帧,则将当前目标帧以及当前目标帧与当前关键帧之间的视频帧依次解码,并基于解码将当前目标帧输出。

    11、第三方面,本申请实施例提供了一种计算机存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现如第一方面的视频抽帧方法。

    12、第四方面,本申请实施例还提供了一种计算机程序产品,计算机程序产品中的指令由电子设备的处理器执行时,使得电子设备执行如第一方面的视频抽帧方法。

    13、本申请实施例提供的视频抽帧方法,按照预设间隔对输入的视频流进行抽帧,在抽帧过程中,将最新遇到的关键帧记录为当前关键帧,将最新抽到的目标帧记录为当前目标帧;判断当前目标帧的位置、当前关键帧的位置以及当前平均帧率是否满足指定条件;如果满足指定条件,则将当前关键帧解码后代替当前目标帧输出;如果不满足指定条件,则判断在当前目标帧之后指定数量内的视频帧中是否遇到关键帧,如果遇到关键帧,则将所遇到的关键帧代替当前目标帧输出,如果未遇到关键帧,则将当前目标帧以及当前目标帧与当前关键帧之间的视频帧依次解码,并基于解码将当前目标帧输出。本申请实施例提供的方法是一种不完全解码抽帧的方法,不需要对抽取到的每个目标帧都进行复杂的解码输出,而是在一些情况下使用邻居关键帧直接代替目标帧解码输出,这样在保证抽帧图像近似准确的同时不但大大提高了抽帧解码的效率,而且无需其他硬件辅助,具有广泛的适用性。

    14、此外,当系统中同时存在cpu和gpu资源时,在保障系统稳定运行的同时,为了充分利用cpu/gpu计算资源,本申请实施例提供的方法可基于不完全解码抽帧中解码比例和cpu利用率实现cpu解码抽帧与gpu解码抽帧之间的自动切换,从而达到同时利用cpu和gpu进行高效解码抽帧的效果。



    技术特征:

    1.一种视频抽帧方法,其特征在于,所述方法包括:

    2.根据权利要求1所述的方法,其特征在于:

    3.根据权利要求1所述的方法,其特征在于,所述预设间隔包括:

    4.根据权利要求1所述的方法,其特征在于,所述当前平均帧率包括:

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

    6.根据权利要求5所述的方法,其特征在于,根据dp和uc,在使用cpu解码抽帧和使用gpu解码抽帧之间进行切换,包括:

    7.一种视频抽帧装置,其特征在于,所述装置包括:

    8.根据权利要求7所述的装置,其特征在于:

    9.根据权利要求7所述的装置,其特征在于,所述预设间隔包括:

    10.根据权利要求7所述的装置,其特征在于,所述当前平均帧率包括:

    11.根据权利要求7所述的装置,其特征在于,所述装置还包括:

    12.根据权利要求11所述的装置,其特征在于,所述切换模块在根据dp和uc,在使用cpu解码抽帧和使用gpu解码抽帧之间进行切换时,具体用于:

    13.一种终端设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;

    14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1~6任意一项所述的视频抽帧方法。


    技术总结
    本申请公开了一种视频抽帧方法、装置、设备及计算机存储介质,抽帧时将最新遇到的关键帧记录为当前关键帧,将最新抽到的目标帧记录为当前目标帧;判断当前目标帧的位置、当前关键帧的位置以及当前平均帧率是否满足指定条件;如果满足则将当前关键帧解码后代替当前目标帧输出;如果不满足则判断当前目标帧之后一定范围内是否遇到关键帧,如果遇到则将该关键帧代替当前目标帧输出,如果未遇到则将当前目标帧及相关视频帧依次解码。本申请不需要对抽取到的每个目标帧都进行复杂的解码输出,而是在一些情况下使用邻居关键帧代替目标帧解码输出,在保证抽帧图像近似准确的同时大大提高了抽帧解码的效率,而且无需其他硬件辅助,具有广泛的适用性。

    技术研发人员:童毅,毛芊,樊辉
    受保护的技术使用者:中移物联网有限公司
    技术研发日:
    技术公布日:2024/10/24
    转载请注明原文地址:https://symbian.8miu.com/read-27751.html

    最新回复(0)