一种视频解码分析方法、装置、设备及介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种视频解码分析方法、装置、设备及介质。
背景技术
目前,随着网络通信技术的进步和宽带网络的提速,网络直播得到了越来越多的发展和应用。为了保证直播的良性发展和获得直播过程的数据信息,往往需要监控直播视频是否存在不符合要求的视频图像,或分析获得直播视频中的关键性数据,以供直播平台采取改进措施。这都需要通过在直播过程中或获得视频后,进行视频分析来开展。
然而,无论是在直播过程中进行同步视频分析还是对已有的视频进行分析,都需要耗费较多的资源来进行解码、转化和分析等计算,计算量大,处理速度也慢。
可见,现有技术中的视频分析,存在计算量大,处理速度慢的技术问题。
发明内容
本发明提供一种视频解码分析方法、装置、设备及介质,用以解决现有技术中的视频分析,存在的计算量大,处理速度慢的技术问题。
第一方面,本发明提供了一种视频解码分析方法,包括:
在下载目标视频的过程中或下载目标视频后,采用第一解码模式对所述目标视频进行解码,其中,所述第一解码模式为:识别所述目标视频的I帧,对所述I帧进行解码,并对解码后的所述I帧进行视频分析,生成分析反馈信息;对所述目标视频中除I帧外的其余帧不进行解码;
根据所述分析反馈信息,监控是否存在识别点遗漏;
如果存在识别点遗漏,则切换所述第一解码模式为第二解码模式,其中,所述第二解码模式为:对当前下载的所述目标视频的每一帧均进行解码,并对解码后的每一帧进行视频分析。
可选的,对切换所述第一解码模式为第二解码模式之前下载的所述目标视频的帧按照所述第一解码模式进行解码和分析;对切换所述第一解码模式为第二解码模式之后下载的所述目标视频的帧按照所述第二解码模式进行解码和分析;或者,对切换所述第一解码模式为第二解码模式之前下载的目标视频的帧按照所述第一解码模式进行解码和分析;在切换所述第一解码模式为第二解码模式之后对所有目标视频的全部帧均按照所述第二解码模式进行解码和分析。
可选的,所述对解码后的所述I帧进行视频分析,生成分析反馈信息,包括:提取解码后的所述I帧中预设的识别点图像信息,并判断所述识别点图像信息是否是连续的;如果是连续的,则生成表征不存在识别点遗漏的分析反馈信息;或者,如果不是连续的,则生成表征存在识别点遗漏的分析反馈信息。
可选的,所述对所述I帧进行解码,并对解码后的所述I帧进行视频分析,包括:对所述I帧进行解码;将解码后的I帧从YUV格式转化为RGB格式;对格式转化后的I帧进行视频分析。
第二方面,提供一种视频解码分析装置,包括:
第一解码模块,用于在下载目标视频的过程中或下载目标视频后,采用第一解码模式对所述目标视频进行解码,其中,所述第一解码模式为:识别所述目标视频的I帧,对所述I帧进行解码,并对解码后的所述I帧进行视频分析,生成分析反馈信息;对所述目标视频中除I帧外的其余帧不进行解码;
监控模块,用于根据所述分析反馈信息,监控是否存在识别点遗漏;
第二解码模块,用于如果存在识别点遗漏,则切换所述第一解码模式为第二解码模式,其中,所述第二解码模式为:对当前下载的所述目标视频的每一帧均进行解码,并对解码后的每一帧进行视频分析。
可选的,第一解码模块,用于对切换所述第一解码模式为第二解码模式之前下载的所述目标视频的帧按照所述第一解码模式进行解码和分析;第二解码模块,用于对切换所述第一解码模式为第二解码模式之后下载的所述目标视频的帧按照所述第二解码模式进行解码和分析;或者,第一解码模块,用于对切换所述第一解码模式为第二解码模式之前下载的目标视频的帧按照所述第一解码模式进行解码和分析;第二解码模块,用于在切换所述第一解码模式为第二解码模式之后对所有目标视频的全部帧均按照所述第二解码模式进行解码和分析。
可选的,所述第一解码模块还用于:提取解码后的所述I帧中预设的识别点图像信息,并判断所述识别点图像信息是否是连续的;如果是连续的,则生成表征不存在识别点遗漏的分析反馈信息;或者,如果不是连续的,则生成表征存在识别点遗漏的分析反馈信息。
可选的,所述第一解码模块还用于:对所述I帧进行解码;将解码后的I帧从YUV格式转化为RGB格式;对格式转化后的I帧进行视频分析。
第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本申请实施例提供的方法、装置、设备及介质,先采用第一解码模式对所述目标视频进行解码,即识别目标视频的I帧,只对I帧进行解码和视频分析,生成分析反馈信息;在分析反馈信息表征存在识别点遗漏后,才切换所述第一解码模式为每帧均解码的第二解码模式,一方面,由于采用只解码和分析I帧的模式较大的减少了视频分析中的计算量和计算时间,有效的提高了视频分析的效率。另一方面,通过分析反馈信息来及时的发现识别点遗漏,并采取补救,能有效的提高视频分析的完整性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中视频解码分析方法的流程图;
图2为本发明实施例中视频解码分析装置的结构示意图;
图3为本发明实施例中设备的结构示意图;
图4为本发明实施例中介质的结构示意图。
具体实施方式
本申请实施例通过提供一种视频解码分析方法、装置、设备及介质,解决了现有技术中的视频分析,存在的计算量大,处理速度慢的技术问题。实现了提高视频分析的效率和速度的技术效果。
本申请实施例中的技术方案,总体思路如下:
先采用第一解码模式对所述目标视频进行解码,即识别目标视频的I帧,只对I帧进行解码和视频分析,生成分析反馈信息;在分析反馈信息表征存在识别点遗漏后,才切换所述第一解码模式为每帧均解码的第二解码模式,一方面,由于采用只解码个分析I帧的模式较大的减少了视频分析中的计算量和计算时间,有效的提高了视频分析的效率。另一方面,通过分析反馈信息来及时的发现识别点遗漏,并采取补救,能有效的提高视频分析的完整性。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供一种视频解码分析方法,如图1所示,包括:
步骤S101,在下载目标视频的过程中或下载目标视频后,采用第一解码模式对所述目标视频进行解码,其中,所述第一解码模式为:识别所述目标视频的I帧,对所述I帧进行解码,并对解码后的所述I帧进行视频分析,生成分析反馈信息;对所述目标视频中除I帧外的其余帧不进行解码;
步骤S102,根据所述分析反馈信息,监控是否存在识别点遗漏;
步骤S103,如果存在识别点遗漏,则切换所述第一解码模式为第二解码模式,其中,所述第二解码模式为:对当前下载的所述目标视频的每一帧均进行解码,并对解码后的每一帧进行视频分析。
需要说明的是,本实施例中提供的方法既可以用于直播视频过程中的实时视频分析,也可以用于历史存储的视频的视频分析,在此不作限制。
所述方法可以应用于单台服务器、服务器组或云服务器,在此不作限制。
下面结合图1,对本申请提供的方法的具体实施步骤进行详细说明:
在执行步骤S101之前,还可以先判断目标视频是否属于显示有关键信息的预设视频类型,如果是才采用本申请实施例提供的视频解码分析方法。
具体来讲,在某些视频类型中,会持续显示有关键信息,对于该类视频,可以通过解码后图像上的关键信息来进行视频分析,然而视频上显示的关键信息往往不会持续变化,故对该类视频采用本实施例的仅进行I帧解码的视频分析方案,不仅能提高视频分析效率还能避免出现分析遗漏。
举例来说,在击杀类游戏中,往往会在游戏的画面上持续显示当前我方的击杀次数和对方的击杀次数,则显示的击杀次数即为所述关键信息,该类击杀游戏即属于所述预设视频类型。
在本申请实施例中,判断目标视频是否属于显示有关键信息的预设视频类型的方法有多种,例如,可以由工作人员在人工确认某视频为预设视频类型后,会修改该视频的属性信息,在其中加入预设的标识,然后在服务器可以根据所述目标视频的属性信息中预设的标识,来判断所述目标视频是否属于显示有关键信息的预设视频类型。
当然,也可以预先对目标视频的部分帧进行解码,通过对解码后的帧结合预设的关键信息的图像特征,进行图像特征匹配来判断目标视频是否属于显示有关键信息的预设视频类型,在此不作限制。
当然,也可以不作类型判断,均采用本实施例提供的视频解码分析方法。
首先,执行步骤S101,在下载目标视频的过程中或下载目标视频后,采用第一解码模式对所述目标视频进行解码,其中,所述第一解码模式为:识别所述目标视频的I帧,对所述I帧进行解码,并对解码后的所述I帧进行视频分析,生成分析反馈信息;对所述目标视频中除I帧外的其余帧不进行解码。
需要说明的是,I帧(I frame)又称为内部画面,I帧通常是每个GOP(I帧与I帧之间叫GOP,一般90~600帧才有一个I帧)的第一个帧,经过适度地压缩,做为随机访问的参考点,可以当成图像。视频编码协议里定义了三种帧,完整编码的帧叫I帧,参考之前的I帧生成的只包含差异部分编码的帧叫P帧,还有一种参考前后的帧编码的帧叫B帧。编码协议采用的核心算法是帧内压缩和帧间压缩,帧内压缩是生成I帧的算法,帧间压缩是生成B帧和P帧的算法。只有I帧可以实现单独的解码,否则必须进行每帧解码。
在具体实施过程中,识别出目标视频的I帧的方法,可以根据视频编码协议规则,来识别出所述目标视频中的I帧。具体来讲,每个I帧上均设置有标识,通过该标识可以识别出I帧,例如,可以通过NALU类型,即参数nal_unit_type来识别I帧,当然,也可以采用现有的其他I帧识别方法,在此不作累述。
在本申请实施例中,根据视频的类别不同,识别I帧的流程也不相同,下面举例进行说明:
第一种,直播视频。
当所述目标视频为直播视频时,在服务器从主播端下载直播视频流的过程中,会边下载视频,边对刚下载的视频进行I帧识别和解码分析,以在直播的过程中高效的解码I帧进行实时视频分析。
第二种,历史存储视频。
当所述目标视频为服务器上已经存储的视频时,可以直接对视频中的每帧进行遍历,识别出所有的I帧来解码进行视频分析。
在本申请实施例中,在识别出I帧后,仅对I帧进行解码,也仅对解码后的I帧进行视频分析,其余的帧均不再作处理,以大大减少计算量,提高视频分析的速度。
在本申请实施例中,在对所述I帧进行解码后,为了便于分析,还会将解码后的所述I帧的格式从YUV格式(YUV是指亮度参量和色度参量分开表示的像素格式)转化为RGB格式(彩色模式),再对格式转化后的I帧进行视频分析,生成分析反馈信息。
该分析反馈信息的生成过程可以是:提取解码后的所述I帧中预设的识别点图像信息,并判断所述识别点图像信息是否是连续的;如果是连续的,则生成表征不存在识别点遗漏的分析反馈信息;如果不是连续的,则生成表征存在识别点遗漏的分析反馈信息。
举例来讲,在击杀类游戏中,往往会在游戏的画面上持续显示当前我方的击杀次数,则显示击杀次数位置的图像即为识别点图像,通过分析该部分图像可以提取出识别点图像信息,即具体的击杀数。如果没有识别点遗漏,则该识别点图像信息(击杀数)应该是按1,2,3,4,5….这样的连续数字排列的,如果分析发现该该识别点图像信息在3之后直接为5,则确认遗漏了击杀次数为4附近的信息,确认存在识别点遗漏,生成表征存在识别点遗漏的分析反馈信息。
当然,在具体实施过程中,上述识别点图像信息连续,不仅可以是指数字上的连续,也可以是字母上的连续,或者按预设的连续信息表来连续,在此不作限制。
然后,执行步骤S102,根据所述分析反馈信息,监控是否存在识别点遗漏。
可以预先设置,在存在识别点遗漏时,设置分析反馈信息为0或N等字符,不存在识别点遗漏时,设置分析反馈信息为1或Y等字符。故可以通过分析反馈信息的具体内容来监控是否存在识别点遗漏。
再下来,执行步骤S103,如果存在识别点遗漏,则切换所述第一解码模式为第二解码模式,其中,所述第二解码模式为:对当前下载的所述目标视频的每一帧均进行解码,并对解码后的每一帧进行视频分析。
即在监控发现存在识别点遗漏后,就切换至每一帧均进行解码和分析的常规视频分析模式。在具体实施过程中,切换的方式可以有多种,下面列举两种为例:
第一种,对切换所述第一解码模式为第二解码模式之前下载的所述目标视频的帧按照所述第一解码模式进行解码和分析;对切换所述第一解码模式为第二解码模式之后下载的所述目标视频的帧按照所述第二解码模式进行解码和分析。
即对于直播视频,只对发现识别点遗漏后下载的那部分直播视频采用第二解码模式。或对已经存储的目标视频,按照视频录制生成的先后顺序,只对发现识别点遗漏的视频帧后的那部分帧采用第二解码模式。
第二种,对切换所述第一解码模式为第二解码模式之前下载的目标视频的帧按照所述第一解码模式进行解码和分析;在切换所述第一解码模式为第二解码模式之后对所有目标视频的全部帧均按照所述第二解码模式进行解码和分析。
即对于直播视频,发现识别点遗漏后对所有的直播视频包括之前下载的直播视频均采用第二解码模式再进行解码和分析。或对已经存储的目标视频,发现识别点遗漏的后的对整个目标视频均再采用第二解码模式进行解码和分析。
为了便于整体理解本实施例提供的方案,下面举一具体实例,服务器先获取所述目标视频的流地址,然后,下载该目标视频。在下载的过程中,对已下载的帧进行I帧判断。如果不是I帧则不作处理继续进行视频流下载,如果是I帧,则对该I帧进行解码,并将解码后的I帧进行格式转化后再进行视频分析,生成分析反馈信息。在根据分析反馈信息判断是否存在识别点遗漏,如果不存在则继续只识别I帧进行解码分析,如果存在识别点遗漏,则转为对下载的所有帧均进行解码分析,最后输出分析结果。
在一种实施方式中,还可以设置在I帧解码后,可以根据公式R=Y,G=Y和B=Y,进行YUV格式转化为RGB格式;其中,R为RGB格式的R通道参数值,G为RGB格式的G通道参数值,B为RGB格式的B通道参数值;Y为YUV格式的Y通道参数值,U为YUV格式的U通道参数值,V为YUV格式的V通道参数值。
进一步,还可以先判断目标视频是否属于色彩单一的场景,如果是才采用公式R=Y,G=Y和B=Y进行视频转化。
具体的判断方法可以有多种,下面列举两种为例:
第一种,预设属性信息。
即由工作人员预先识别目标视频是否是色彩单一的场景,如是则修改目标视频的属性信息的色彩标识,如果服务器根据所述目标视频的属性信息中预设的色彩标识,确定所述目标视频为色彩单一的场景,则根据公式R=Y,G=Y和B=Y,将所述目标视频中的帧的格式由YUV格式转化为RGB格式。
举例来说,工作人员将目标视频属性信息中的色彩标识设置为0则表示为色彩单一的场景视频,将目标视频属性信息中的色彩标识设置为1则表示不为色彩单一的场景视频。服务器可以根据属性信息中色彩标识的值来确定其是否采用本实施例提供的视频转化方法。
通过简化视频格式转化公式,进一步提高视频分析效率。
具体来讲,先采用第一解码模式对所述目标视频进行解码,即识别目标视频的I帧,只对I帧进行解码和视频分析,生成分析反馈信息;在分析反馈信息表征存在识别点遗漏后,才切换所述第一解码模式为每帧均解码的第二解码模式,一方面,由于采用只解码个分析I帧的模式较大的减少了视频分析中的计算量和计算时间,有效的提高了视频分析的效率。另一方面,通过分析反馈信息来及时的发现识别点遗漏,并采取补救,能有效的提高视频分析的完整性。
基于同一发明构思,本申请还提供了与实施例一中视频分析方法对应的装置,详见实施例二。
实施例二
本实施例提供了一种视频解码分析装置,如图2所示,该装置包括:
第一解码模块201,用于在下载目标视频的过程中或下载目标视频后,采用第一解码模式对所述目标视频进行解码,其中,所述第一解码模式为:识别所述目标视频的I帧,对所述I帧进行解码,并对解码后的所述I帧进行视频分析,生成分析反馈信息;对所述目标视频中除I帧外的其余帧不进行解码;
监控模块202,用于根据所述分析反馈信息,监控是否存在识别点遗漏;
第二解码模块203,用于如果存在识别点遗漏,则切换所述第一解码模式为第二解码模式,其中,所述第二解码模式为:对当前下载的所述目标视频的每一帧均进行解码,并对解码后的每一帧进行视频分析。
可选的,第一解码模块201,用于对切换所述第一解码模式为第二解码模式之前下载的所述目标视频的帧按照所述第一解码模式进行解码和分析;第二解码模块203,用于对切换所述第一解码模式为第二解码模式之后下载的所述目标视频的帧按照所述第二解码模式进行解码和分析;或者,第一解码模块201,用于对切换所述第一解码模式为第二解码模式之前下载的目标视频的帧按照所述第一解码模式进行解码和分析;第二解码模块203,用于在切换所述第一解码模式为第二解码模式之后对所有目标视频的全部帧均按照所述第二解码模式进行解码和分析。
可选的,所述第一解码模块201还用于:提取解码后的所述I帧中预设的识别点图像信息,并判断所述识别点图像信息是否是连续的;如果是连续的,则生成表征不存在识别点遗漏的分析反馈信息;或者,如果不是连续的,则生成表征存在识别点遗漏的分析反馈信息。
可选的,所述第一解码模块201还用于:对所述I帧进行解码;将解码后的I帧从YUV格式转化为RGB格式;对格式转化后的I帧进行视频分析。
由于本发明实施例二所介绍的装置,为实施本发明实施例一的方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
基于同一发明构思,本发明实施例还提供了实施例一中方法对应的电子设备实施例,见实施例三。
实施例三
本实施例提供一种电子设备,如图3所示,包括存储器310、处理器320及存储在存储器310上并可在处理器320上运行的计算机程序311,处理器320执行计算机程序311时,可以实现实施例一中任一实施方式。
由于本实施例所介绍的电子设备为实施本申请实施例一中方法所采用的设备,故而基于本申请实施例一所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。
基于同一发明构思,本申请提供了实施例一对应的存储介质,详见实施例四。
实施例四
本实施例提供一种计算机可读存储介质400,如图4所示,其上存储有计算机程序411,该计算机程序411被处理器执行时,可以实现实施例一任一实施方式。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
本申请实施例提供的方法及装置,先采用第一解码模式对所述目标视频进行解码,即识别目标视频的I帧,只对I帧进行解码和视频分析,生成分析反馈信息;在分析反馈信息表征存在识别点遗漏后,才切换所述第一解码模式为每帧均解码的第二解码模式,一方面,由于采用只解码个分析I帧的模式较大的减少了视频分析中的计算量和计算时间,有效的提高了视频分析的效率。另一方面,通过分析反馈信息来及时的发现识别点遗漏,并采取补救,能有效的提高视频分析的完整性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。