本发明属于计算机技术领域,具体地说,涉及一种视频识别方法及装置。
背景技术:
随着vr(虚拟现实,virtualreality)技术的日趋成熟,vr设备已经得到了广泛的运用和普及。vr模式下的资源可以生成一种三维动态视景和实体行为的系统仿真环境,从而使用户可以沉浸到该虚拟环境中。
vr模式下的视频资源可以是图像或者视频,其中视频可以分为多种类型,例如2d视频、360度全景视频等,且不同类型的视频需要通过相应的视频播放工具才能打开。现有技术中,在vr模式下观看360度全景视频时,需要用户手动选择视频播放工具来播放相应360度全景视频。为了实现自动选择视频播放工具,代替用户手动选择,就需要对360度全景视频的类型进行识别。但是,目前没有一种有效、准确地方式可以识别360度全景视频。
技术实现要素:
有鉴于此,本发明提供了一种视频识别方法及装置,用以解决现有技术中无法有效、准确地识别360度全景视频的技术问题。
为了解决上述技术问题,本发明提供了一种视频识别方法,包括:
获取待识别视频中的多帧图像;
计算所述多帧图像中每一帧图像的首列与末列的像素相似度;
基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数;
基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
优选地,所述获取待识别视频中的多帧图像包括:
从所述待识别视频的帧序列中等间隔获取多帧图像。
优选地,所述计算所述多帧图像中每一帧图像的首列与末列的像素相似度包括:
针对所述多帧图像中的每一帧图像,计算首列与末列中位置相对应的两个像素点的像素色差值;
根据所述像素色差值,确定首列与末列中像素点相似的相似个数;
基于所述相似个数与列像素点总个数,计算首列与末列的像素相似度。
优选地,所述基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数包括:
判断所述每一帧图像的像素相似度是否小于第一相似值;
如果是,确定所述每一帧图像的权重系数为0;
如果否,判断所述每一帧图像的像素相似度是否大于第二相似值,如果是,确定所述每一帧图像的权重系数为1;
否则,确定所述每一帧图像的像素相似度作为所述每一帧图像的权重系数。
优选地,所述根据所述平均相似度,识别所述待识别视频是否为360度全景视频包括:
判断所述平均相似度是否大于相似度阈值;
如果是,识别所述待识别视频为360度全景视频;
如果否,识别所述待识别视频为非360度全景视频。
优选地,所述根据所述像素色差值,确定首列与末列中像素点相似的相似个数包括:
如果首列与末列中位置相对应的两个像素点的像素色差值小于色差阈值,确定所述位置相对应的两个像素点相似;
统计获得像素点相似的相似个数。
优选地,所述针对所述多帧图像中的每一帧图像,计算首列与末列中位置相对应的两个像素点的像素色差值包括:
针对所述多帧图像中的每一帧图像,按照色差计算公式计算获得首列与末列中位置相对应的两个像素点的像素色差值;
所述色差计算公式为:
优选地,所述计算所述多帧图像中每一帧图像的首列与末列的像素相似度包括:
将所述多帧图像中的每一帧图像进行缩放处理,以使得所述多帧图像尺寸相同;
计算缩放处理之后的每一帧图像的首列与末列的像素相似度。
本发明提供了一种视频识别装置,包括:
第一获取模块,用于获取待识别视频中的多帧图像;
第一计算模块,用于计算所述多帧图像中每一帧图像的首列与末列的像素相似度;
第一确定模块,用于基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数;
第二计算模块,用于基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
识别模块,用于根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
优选地,所述第一计算模块包括:
像素色差值计算单元,用于针对所述多帧图像中的每一帧图像,计算首列与末列中位置相对应的两个像素点的像素色差值;
相似个数确定单元,用于根据所述像素色差值,确定首列与末列中像素点相似的相似个数;
像素相似度计算单元,用于基于所述相似个数与列像素点总个数,计算首列与末列的像素相似度。
优选地,所述第一确定模块包括:
第一判断单元:用于判断所述每一帧图像的像素相似度是否小于第一相似值;如果是,则触发
第一权重系数确定单元,用于确定所述每一帧图像的权重系数为0;
如果否,则触发,
第二判断单元,用于判断所述每一帧图像的像素相似度是否大于第二相似值;如果是,则触发
第二权重系数确定单元,用于确定所述每一帧图像的权重系数为1;
否则,触发
第三权重系数确定单元,用于确定所述每一帧图像的像素相似度作为所述每一帧图像的权重系数。
与现有技术相比,本发明可以获得包括以下技术效果:
本发明首先通过获得所述待识别视频中的多帧图像,计算每一帧图像的像素相似度,然后根据所述每一帧图像的像素相似度以及权重系数,加权计算得到多帧图像的平均相似度。根据所述平均相似度识别所述待识别视频是否为360度全景视频。本发明通过多重判断方法对所述待识别视频进行识别,从而可以有效、准确地识别360度全景视频。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种视频识别方法的一个实施例的流程图;
图2是本发明实施例的一种视频识别方法的另一个实施例的流程图;
图3是本发明实施例的一种视频识别方法的又一个实施例的流程图;
图4是本发明实施例的一种视频识别装置的一个实施例的结构示意图;
图5是本发明实施例的一种视频识别装置的另一个实施例的结构示意图;
图6是本发明实施例的一种视频识别装置的又一个实施例的结构示意图。
具体实施方式
以下将配合附图及实施例来详细说明本发明的实施方式,藉此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
随着vr(虚拟现实,virtualreality)技术的不断发展,越来越多的用户可以通过智能终端设备中vr模式或者专门的vr设备来观看vr模式下的资源,从而可以沉浸到虚拟环境中来获得更好地观看体验。
vr模式下的资源可以包括不同类型的视频,但不同类型的视频必需要通过调用与视频类型相应的播放器才能打开。现有技术中,智能终端设备中vr模式或者专门的vr设备无法区分请求播放视频的视频类型,需要通过用户手动选择相应的播放器进行视频播放。
为了解决视频类型误判的技术问题,发明人经过一系列研究提出了本发明的技术方案,在本发明中,可以通过对待识别视频中的帧图像进行采样获得多帧图像,并计算每一帧图像的像素相似度及相应的权重系数,然后根据所述每一帧图像的像素相似度以及权重系数,加权计算得到多帧图像的平均相似度,通过得到的多帧图像的平均相似度,判断所述待识别视频是否为360度全景视频,从而可以有效、准确地识别360度全景视频,大大提高了用户体验。
下面将结合附图对本发明技术方案进行详细描述。
图1为本发明实施例的一种视频识别方法的一个实施例的流程图,该方法可以包括以下几个步骤:
101:获取待识别视频中的多帧图像;
102:计算所述多帧图像中每一帧图像的首列与末列的像素相似度。
为了判断所述待识别视频是否为360度全景视频,首先从所述待识别视频中选取多帧图像,并计算所述多帧图像中每一帧图像的首列与末列的像素相似度。
360度全景视频是通过将每一帧图像的左右侧拼合的方式实现,每一帧图像在左右两侧拼合后,其颜色的过渡是平滑的,并不存在明显的拼接痕迹,也即每一帧图像拼接处的像素点的像素值接近或者相同,从而可以在vr模式下由相应的播放器播放实现视频360度环视的效果,给用户带来三维立体的空间体验。
由于360度全景视频是通过将每一帧图像的左右侧拼合的方式实现,据此发明人想到可以通过对每一帧图像的首列与末列进行判断,来确定待识别视频是否为360度全景视频。因此可以首先计算从待识别视频中获取的多帧图像中每一帧图像的首列与末列的像素相似度,判断所多帧图像是否可以实现每一帧图像的左右侧拼合的条件。
其中,所述每一帧图像的首列与末列的像素相似度,可以是指所述每一帧图像的首列的像素点的rgb(red、green、blue,三原色)值与对应末列的像素点rgb值的相似度;还可以是指所述多帧图像中每一帧图像的首列的像素点灰度值与末列的灰度值的像素相似度。
103:基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数;
104:基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
其中,所述每一帧图像的权重系数可以根据每一帧图像的像素相似度在多帧图像中的像素相似度中所具有的重要程度,分别给予不同的比例系数,并将所述比例系数作为权重系数。根据所述权重系数,对所述每一帧图像的像素相似度进行加权计算,获得多帧图像的平均相似度。
105:根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
可选地,所述根据所述平均相似度,识别所述待识别视频是否为360度全景视频可以包括:
判断所述平均相似度是否大于相似度阈值;
如果是,识别所述待识别视频为360度全景视频;
如果否,识别所述待识别视频为非360度全景视频。
需要说明的是,所述相似度阈值可以根据实际情况进行设定,如果所述平均相似度大于所述相似度阈值时,所述待识别视频中的每一帧在左右两侧拼合后,其每一帧图像颜色的过渡是平滑的,且不存在明显的拼接痕迹,满足拼接处的像素点的颜色值接近或者相同的条件。此时,所述平均相似度大于相似度阈值即可确定所述待识别视频为360度全景视频。
在一个实际应用中,平均相似度阈值可以设为0.5,如果所述平均相似度大于0.5,则识别该待识别视频为360度全景视频;如果所述平均相似度小于或等于0.5,则识别该待识别视频为非360度全景视频。
本实施例中,在获得所述待识别视频中的多帧图像,计算每一帧图像的像素相似度,以及每一帧图像的像素相似度对应权重系数,通过加权计算得到多帧图像的平均相似度。仅当所得的平均相似度大于所述相似度阈值时识别所述待识别视频为360度全景视频。本发明通过计算多帧图像的平均相似度对所述待识别视频进行识别,从而可以有效、准确地识别360度全景视频大大提高了用户体验。
图2为本发明实施例的一种视频识别方法的另一个实施例的流程图,该方法可以包括以下几个步骤:
201:获取待识别视频中的多帧图像;
202:针对所述多帧图像中的每一帧图像,计算首列与末列中位置相对应的两个像素点的像素色差值;
可选地,所述每个像素点的像素值可以用rgb值标识,所述多帧图像中的每一帧图像的首列的像素向量可以表示为:
an={{ra0,ga0,ba0},{ra1,ga1,ba1},......,{ran-1,gan-1,ban-1}};
所述多帧图像中的每一帧图像的末列的像素向量可以表示为:
bn={{rb0,gb0,bb0},{rb1,gb1,bb1},......,{rbn-1,gbn-1,bbn-1}};
其中,n为所述每一个帧图像中像素的列像素点的总个数,{ran-1,gan-1,ban-1}表示所述每一帧图像中首列的第n行像素点的像素值,{rbn-1,gbn-1,bbn-1}表示所述每一帧图像中末列的第n行像素点的像素值;
可以按照所述首列的像素向量an和末列的像素向量bn,计算所述采样帧的色差向量c,色差向量c={c0,c1,......,cn-1};其中,cn即为首列与末列中位置相对应的两个像素点的像素色差值。
可选地,所述针对所述多帧图像中的每一帧图像,计算首列与末列中位置相对应的两个像素点的像素色差值可以包括:
针对所述多帧图像中的每一帧图像,按照色差计算公式计算获得首列与末列中位置相对应的两个像素点的像素色差值;
所述色差计算公式为:
203:根据所述像素色差值,确定首列与末列中像素点相似的相似个数;
204:基于所述相似个数与列像素点总个数,计算首列与末列的像素相似度;
可选地,所述根据所述像素色差值,确定首列与末列中像素点相似的相似个数包括:
如果首列与末列中位置相对应的两个像素点的像素色差值小于色差阈值,确定所述位置相对应的两个像素点相似;
统计获得像素点相似的相似个数。
在一个实际应用中,色差阈值可以设为10,判断所述色差向量中第n行的像素色差值cn是否小于色差阈值,如果cn<10,则可以确认该色差向量中首列与末列第n行的像素点的颜色相似。此时,首列与末列中像素点相似的相似个数可以累计加1,并通过依次判断所述色差向量中每一个色差值是否小于色差阈值,来统计获得像素点相似的相似个数。
可选地,所述基于所述相似个数与列像素点总个数,计算首列与末列的像素相似度可以包括;
计算所述相似个数m与列像素点的总个数n的比值,获得所述首列与末列的像素相似度sn;
所述像素相似度计算公式为:sn=m/n。
205:基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数;
206:基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
207:根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
其中,步骤201操作与图1对应的实施例中步骤101的操作相同、步骤205-207的操作与图1对应的实施例的中103-105步骤相同,在此不再赘述。
本实施例中,通过计算所述多帧图像中每一帧图像的色差值,判断每一帧图像中首列与末列像素点相似的个数,根据像素点相似个数所占列像素点总个数的比例,计算得到每一帧图像的像素相似度,从而可以提高每一帧图像像素相似度的准确性,从而可以大大提高了视频识别的准确度。
图3为本发明实施例的一种视频识别方法的又一个实施例的流程图,该方法可以包括以下几个步骤:
301:获取待识别视频中的多帧图像;
302:计算所述多帧图像中每一帧图像的首列与末列的像素相似度;
303:判断所述每一帧图像的像素相似度是否小于第一相似值;如果是,则执行步骤304,如果否,则执行步骤305;
304:确定所述每一帧图像的权重系数为0;
305:判断所述每一帧图像的像素相似度是否大于第二相似值;如果是则执行步骤306,否则执行步骤307;
306:确定所述每一帧图像的权重系数为1;
307:确定所述每一帧图像的像素相似度作为所述每一帧图像的权重系数;
308:基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
其中,所述获取所述每一帧图像的权重系数为kn,所述每一帧图像的像素相似度为sn;可选地,在一个实际应用中,所述第一相似值可以设为0.4,所述第二相似值可以设为0.8,则权重系数
可选地,所述基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度可以包括:
所述多帧图像的平均相似度计算公式为:
其中,p=(k0*s0+k1*s1+.......+kn-1*sn-1)/n。
309:根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
其中,步骤301-302操作与图1对应的实施例中步骤101-102的操作相同、步骤309的操作与图1对应的实施例的中105步骤相同,在此不再赘述。
本实施例中,通过确定所述多帧图像中每一帧图像的首列与末列的像素相似度的权重系数,并通过加权计算多帧图像的平均相似度,可以避免小概率采样误差对计算多帧图像的平均相似度结果造成影响,进一步提高识别360度全景视频类型的准确率。
在某些实施例中,可选地,所述获取待识别视频的多帧图像可以包括:
从所述待识别视频的帧序列中等间隔的获取多帧图像。
从待识别视频中获取多帧图像可以通过对待识别视频中的帧图像采样的方式实现,可以是对所述待识别视频中的帧图像进行随机采样,也可以是按照一定采样规则对所述待识别视频的帧图像进行等间隔采样。为了避免采样误差的出现,可以通过对所述待识别视频的帧序列进行等间隔采样获取待识别视频的多帧图像,从而可以避免由于获取的帧图像全部集中在视频序列的某一部分而出现的采样误差。
可选地,为了进一步避免采样误差,所述从所述待识别视频的帧序列中等间隔获取多帧图像还可以包括:
基于所述待识别视频的帧序列,从预设起始帧位置至预设结束帧位置之间等间隔获取多帧图像。
在从所述待识别视频的帧序列中进行等间隔采样时,由于待识别视频的帧序列中包含的视频的开始部分的帧图像和结束部分的帧图像并非视频的主要内容,且开始部分的帧图像和结束部分的帧图像通常情况下均为纯色背景的帧图像,这就会导致采样误差的出现。因此为了进一步避免采样误差,可以在对待识别视频的帧序列进行采样时,去除视频开始部分的帧图像和视频结束部分的帧图像,即帧序列中视频主要内容的帧图像与视频开始部分的帧图像连接的位置为预设起始帧位置,视频主要内容的帧图像与视频结束部分的帧图像连接的位置为预设结束帧位置。
例如,待识别视频的帧序列中,视频的开始部分和视频的结束部分往往是视频的logo,并非视频的主要内容,所述帧序列中的帧数为n,帧序列中视频开始部分的帧图像为从0~n*0.2帧之间,结束部分的帧图像为n*0.8~n帧之间。因此,所述待识别视频的帧序列中的预设起始帧位置为n*0.2帧,预设结束帧位置为n*0.8帧,视频主要部分的帧图像为n*0.2~n*0.8帧之间,可以从帧序列的第n*0.2帧到第n*0.8帧之间等间隔选取20帧图像作为采样获取的多帧图像。
在某些实施例中,可选地,所述计算所述多帧图像中每一帧图像的首列与末列的像素相似度,可以包括:
将所述多帧图像中的每一帧图像进行缩放处理,以使得所述多帧图像尺寸相同;
计算缩放处理之后的每一帧图像的首列与末列的相似相似度。
由于从所述待识别视频中采样获得的多帧图像的分辨率可能存在大小不相同的问题,为了使所述多帧图像中的每一帧图像具有相同尺寸,可以对所述每一帧图像按预设尺寸进行缩放,例如,将所述每一帧图像缩放到100*100,获得缩放后的每一帧图像。
图4为本发明实施例的一种视频识别装置的一个实施例的结构示意图,该装置可以包括:
第一获取模块401,用于获取待识别视频中的多帧图像;
第一计算模块402,用于计算所述多帧图像中每一帧图像的首列与末列的像素相似度。
为了判断所述待识别视频是否为360度全景视频,首先从所述待识别视频中选取多帧图像,并计算所述多帧图像中每一帧图像的首列与末列的像素相似度。
360度全景视频是通过将每一帧图像的左右侧拼合的方式实现,每一帧图像在左右两侧拼合后,其颜色的过渡是平滑的,并不存在明显的拼接痕迹,也即每一帧图像拼接处的像素点的像素值接近或者相同,从而可以在vr模式下由相应的播放器播放实现视频360度环视的效果,给用户带来三维立体的空间体验。
由于360度全景视频是通过将每一帧图像的左右侧拼合的方式实现,据此发明人想到可以通过对每一帧图像的首列与末列进行判断,来确定待识别视频是否为360度全景视频。因此可以首先计算从待识别视频中获取的多帧图像中每一帧图像的首列与末列的像素相似度,判断所多帧图像是否可以实现每一帧图像的左右侧拼合的条件。
第一确定模块403,用于基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数;
第二计算模块404,用于基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
其中,所述每一帧图像的权重系数可以根据每一帧图像的像素相似度在多帧图像中的像素相似度中所具有的重要程度,分别给予不同的比例系数,并将所述比例系数作为权重系数。根据所述权重系数,对所述每一帧图像的像素相似度进行加权计算,获得多帧图像的平均相似度。
识别模块405,用于根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
可选地,所述识别模块405具体可以用于:
判断所述平均相似度是否大于相似度阈值;
如果是,识别所述待识别视频为360度全景视频;
如果否,识别所述待识别视频为非360度全景视频。
需要说明的是,所述相似度阈值可以根据实际情况进行设定,如果所述平均相似度大于所述相似度阈值时,所述待识别视频中的每一帧在左右两侧拼合后,其每一帧图像颜色的过渡是平滑的,且不存在明显的拼接痕迹,满足拼接处的像素点的颜色值接近或者相同的条件。此时,所述平均相似度大于相似度阈值即可确定所述待识别视频为360度全景视频。
在一个实际应用中,平均相似度阈值可以设为0.5,如果所述平均相似度大于0.5,则识别该待识别视频为360度全景视频;如果所述平均相似度小于或等于0.5,则识别该待识别视频为非360度全景视频。
本实施例中,在获得所述待识别视频中的多帧图像,计算每一帧图像的像素相似度,以及每一帧图像的像素相似度对应权重系数,通过加权计算得到多帧图像的平均相似度。仅当所得的平均相似度大于所述相似度阈值时识别所述待识别视频为360度全景视频。本发明通过计算多帧图像的平均相似度对所述待识别视频进行识别,从而可以有效、准确地识别360度全景视频,大大提高了用户体验。
图5为本发明实施例的一种视频识别装置的另一个实施例的结构示意图,该装置可以包括:
第一获取模块501,用于获取待识别视频中的多帧图像。
第一计算模块502,用于计算所述多帧图像中每一帧图像的首列与末列的像素相似度;
所述第一计算模块502可以包括:
像素色差值计算单元511,用于针对所述多帧图像中的每一帧图像,计算首列与末列中位置相对应的两个像素点的像素色差值;
可选地,所述每个像素点的像素值可以用rgb值标识,所述多帧图像中的每一帧图像的首列的像素向量可以表示为:
an={{ra0,ga0,ba0},{ra1,ga1,ba1},......,{ran-1,gan-1,ban-1}};
所述多帧图像中的每一帧图像的末列的像素向量可以表示为:
bn={{rb0,gb0,bb0},{rb1,gb1,bb1},......,{rbn-1,gbn-1,bbn-1}};
其中,n为所述每一个帧图像中像素的列像素点的总个数,{ran-1,gan-1,ban-1}表示所述每一帧图像中首列的第n行像素点的像素值,{rbn-1,gbn-1,bbn-1}表示所述每一帧图像中末列的第n行像素点的像素值;
可以按照所述首列的像素向量an和末列的像素向量bn,计算所述采样帧的色差向量c,色差向量c={c0,c1,......,cn-1};其中,cn即为首列与末列中位置相对应的两个像素点的像素色差值。
可选地,所述像素色差值计算单元511具体可以用于:
针对所述多帧图像中的每一帧图像,按照色差计算公式计算获得首列与末列中位置相对应的两个像素点的像素色差值;
所述色差计算公式为:
相似个数确定单元512,用于根据所述像素色差值,确定首列与末列中像素点相似的相似个数;
像素相似度计算单元513,用于基于所述相似个数与列像素点总个数,计算首列与末列的像素相似度;
可选地,所述相似个数确定单元512具体可以用于:
如果首列与末列中位置相对应的两个像素点的像素色差值小于色差阈值,确定所述位置相对应的两个像素点相似;
统计获得像素点相似的相似个数。
在一个实际应用中,色差阈值可以设为10,判断所述色差向量中第n行的像素色差值cn是否小于色差阈值,如果cn<10,则可以确认该色差向量中首列与末列第n行的像素点的颜色相似。此时,首列与末列中像素点相似的相似个数可以累计加1,并通过依次判断所述色差向量中每一个色差值是否小于色差阈值,来统计获得像素点相似的相似个数。
可选地,所述像素相似度计算单元513具体可以用于;
计算所述相似个数m与列像素点的总个数n的比值,获得所述首列与末列的像素相似度sn;
所述像素相似度计算公式为:sn=m/n。
第一确定模块503,用于基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数;
第二计算模块504,用于基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
识别模块505,用于根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
其中,第一获取模块操501与图4对应的第一获取模块操401相同、第一确定模块503与图4对应的第一确定模块403相同、第二计算模块504与图4对应的第二计算模块404相同,识别模块505与图4对应的识别模块405相同,在此不再赘述。
本实施例中,通过计算所述多帧图像中每一帧图像的色差值,判断每一帧图像中首列与末列像素点相似的个数,根据像素点相似个数所占列像素点总个数的比例,计算得到每一帧图像的像素相似度,从而可以提高每一帧图像像素相似度的准确性,从而可以大大提高了视频识别的准确度。
图6为本发明实施例的一种视频识别装置的又一个实施例的结构示意图,该装置可以包括:
第一获取模块601,用于获取待识别视频中的多帧图像;
第一计算模块602,计算所述多帧图像中每一帧图像的首列与末列的像素相似度;
第一确定模块603,用于基于所述每一帧图像的像素相似度,确定所述每一帧图像的权重系数;
可选地,所述第一确定模块603可以包括:
第一判断单元611,用于判断所述每一帧图像的像素相似度是否小于第一相似值;如果是,则触发第一权重系数确定单元612,如果否,则触发第二判断单元613;
第一权重系数确定单元612,用于确定所述每一帧图像的权重系数为0;
第二判断单元613,用于判断所述每一帧图像的像素相似度是否大于第二相似值;如果是,则触发第二权重系数确定单元614,否则触发第二权重系数确定单元614;
第二权重系数确定单元614,用于确定所述每一帧图像的权重系数为1;
第二权重系数确定单元614,用于确定所述每一帧图像的像素相似度作为所述每一帧图像的权重系数;
第二计算模块604,用于基于所述每一帧图像的权重系数以及像素相似度,加权计算所述多帧图像的平均相似度;
其中,所述获取所述每一帧图像的权重系数为kn,所述每一帧图像的像素相似度为sn;可选地,在一个实际应用中,所述第一相似值可以设为0.4,所述第二相似值可以设为0.8,则权重系数
可选地,所述第二计算模块604具体可以用于:
所述多帧图像的平均相似度计算公式为:
其中,p=(k0*s0+k1*s1+.......+kn-1*sn-1)/n。
识别模块605,用于根据所述平均相似度,识别所述待识别视频是否为360度全景视频。
其中,第一获取模块操601与图4对应的第一获取模块操401相同、第一计算模块602与图4对应的第一计算模块402相同、第二计算模块604与图4对应的第二计算模块404相同,识别模块605与图4对应的识别模块405相同,在此不再赘述。
本实施例中,通过确定所述多帧图像中每一帧图像的首列与末列的像素相似度的权重系数,并通过加权计算多帧图像的平均相似度,可以避免小概率采样误差对计算多帧图像的平均相似度结果造成影响,进一步提高识别360度全景视频类型的准确率。
在某些实施例中,可选地,所述第一获取模块具体可以用于:
从所述待识别视频的帧序列中等间隔的获取多帧图像。
从待识别视频中获取多帧图像可以通过对待识别视频中的帧图像采样的方式实现,可以是对所述待识别视频中的帧图像进行随机采样,也可以是按照一定采样规则对所述待识别视频的帧图像进行等间隔采样。为了避免采样误差的出现,可以通过对所述待识别视频的帧序列进行等间隔采样获取待识别视频的多帧图像,从而可以避免由于获取的帧图像全部集中在视频序列的某一部分而出现的采样误差。
可选地,为了进一步避免采样误差,所述从所述待识别视频的帧序列中等间隔获取多帧图像具体可以用于:
基于所述待识别视频的帧序列,从预设起始帧位置至预设结束帧位置之间等间隔获取多帧图像。
在从所述待识别视频的帧序列中进行等间隔采样时,由于待识别视频的帧序列中包含的视频的开始部分的帧图像和结束部分的帧图像并非视频的主要内容,且开始部分的帧图像和结束部分的帧图像通常情况下均为纯色背景的帧图像,这就会导致采样误差的出现。因此为了进一步避免采样误差,可以在对待识别视频的帧序列进行采样时,去除视频开始部分的帧图像和视频结束部分的帧图像,即帧序列中视频主要内容的帧图像与视频开始部分的帧图像连接的位置为预设起始帧位置,视频主要内容的帧图像与视频结束部分的帧图像连接的位置为预设结束帧位置。
例如,待识别视频的帧序列中,视频的开始部分和视频的结束部分往往是视频的logo,并非视频的主要内容,所述帧序列中的帧数为n,帧序列中视频开始部分的帧图像为从0~n*0.2帧之间,结束部分的帧图像为n*0.8~n帧之间。因此,所述待识别视频的帧序列中的预设起始帧位置为n*0.2帧,预设结束帧位置为n*0.8帧,视频主要部分的帧图像为n*0.2~n*0.8帧之间,可以从帧序列的第n*0.2帧到第n*0.8帧之间等间隔选取20帧图像作为采样获取的多帧图像。
在某些实施例中,可选地,所述第一计算模块具体可以包括:
将所述多帧图像中的每一帧图像进行缩放处理,以使得所述多帧图像尺寸相同;
计算缩放处理之后的每一帧图像的首列与末列的相似相似度。
由于从所述待识别视频中采样获得的多帧图像的分辨率可能存在大小不相同的问题,为了使所述多帧图像中的每一帧图像具有相同尺寸,可以对所述每一帧图像按预设尺寸进行缩放,例如,将所述每一帧图像缩放到100*100,获得缩放后的每一帧图像。
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。此外,“耦接”一词在此包含任何直接及间接的电性耦接手段。因此,若文中描述一第一装置耦接于一第二装置,则代表所述第一装置可直接电性耦接于所述第二装置,或通过其他装置或耦接手段间接地电性耦接至所述第二装置。说明书后续描述为实施本发明的较佳实施方式,然所述描述乃以说明本发明的一般原则为目的,并非用以限定本发明的范围。本发明的保护范围当视所附权利要求所界定者为准。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素
上述说明示出并描述了本发明的若干优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述申请构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。