发明内容
有鉴于此,本申请针对传统方法易受识别和跟踪错误的影响、算法复杂度高的问题,提供了一种动态生成视频摘要的方法及装置,避免了传统方法容易受识别和跟踪错误的影响,并且算法复杂度低、实时性好,方便用户交互。
为了解决上述技术问题,本申请公开了一种动态生成视频摘要的方法,包括以下步骤:
步骤1,提取原始视频中每一帧及其前后各n帧中的对应像素点共同构成一向量,取所述向量中元素的中位值,构成背景图像;其中n为大于或等于1的整数;
步骤2,比较原始视频中每一帧与所述背景图像中对应位置像素点的值,生成活动图及活动等级列表;
步骤3,比较所述活动等级列表中像素点的活动等级与设定的活动等级阈值,生成二值活动掩码函数,根据所述二值活动掩码函数进一步生成累计活动函数;
步骤4,根据所述累计活动函数生成背景像素点和重映射的前景像素点,所述背景像素点和所述重映射的前景像素点共同组成视频摘要的视频帧。
进一步地,所述比较原始视频中每一帧与所述背景图像中对应位置像素点的值具体为:将原始视频中每一帧的像素点与背景图像中对应位置像素点的值相减,取二者差值的绝对值,若为0,则代表该像素点是静态背景像素;若为1-255,则该值代表像素点的活动等级,如此生成活动图。
进一步地,所述活动等级列表的生成方法为:将所述活动图中的非零值保存,生成非零列表,对所述非零列表按照活动等级升序排列;所述非零值包括像素点的位置和活动等级。
进一步地,所述二值活动掩码函数的生成方法为:若活动等级列表中像素点的活动等级大于或等于设定的活动等级阈值,则二值活动掩码函数值计为1;若活动等级列表中像素点的活动等级小于设定的活动等级阈值,则二值活动掩码函数值计为0。
进一步地,所述累计活动函数采用如下算法计算:
其中,C(x,y,t)表示累计活动函数;N0表示原始视频的长度,即视频帧的数量;N1表示生成的视频摘要长度;t表示视频摘要中的帧序号,1≤t≤N1;M(x,y,kN1+t)为二值活动掩码函数。
进一步地,所述根据所述累计活动函数生成背景像素点和重映射的前景像素点具体为:判断所述累计活动函数的值,若累计活动函数的值为0,则生成背景像素点;若累计活动函数的值不为0,则生成重映射的前景像素点。
进一步地,所述重映射的前景像素点采用如下算法计算:
其中,F(x,y,t)表示重映射的前景像素点;N0表示原始视频的长度,即视频帧的数量;N1表示生成的视频摘要长度;t表示视频摘要中的帧序号,1≤t≤N1;C(x,y,t)表示累计活动函数;O(x,y,kN1+t)表示原始视频中的每一帧;M(x,y,kN1+t)为二值活动掩码函数。
进一步地,还包括:接收原始视频和显示视频摘要。
进一步地,还包括:设定和调整时间压缩倍数来决定生成的视频摘要的长度;还包括:调整活动等级阈值。
本申请还公开了一种动态生成视频摘要的装置,包括:
背景图像生成模块,用于提取原始视频中每一帧及其前后各n帧中的对应像素点共同构成一向量,取所述向量中元素的中位值,构成背景图像,其中n为大于等于1的整数;
像素活动等级计算模块,用于比较原始视频中每一帧与所述背景图像中对应位置像素点的值,生成活动图及活动等级列表;
二值活动掩码函数生成模块,用于比较所述活动等级列表中像素点的活动等级与设定的活动等级阈值,生成二值活动掩码函数,并根据所述二值活动掩码函数进一步生成累计活动函数;
视频摘要生成模块,用于根据所述累计活动函数生成背景像素点和重映射的前景像素点,所述背景像素点和所述重映射的前景像素点共同组成视频摘要的视频帧。
与现有技术相比,本申请可以获得包括以下技术效果:
本申请动态生成视频摘要的方法通过提取原始视频中每一帧及其前后各n帧中的对应像素点共同构成一向量,取所述向量中元素的中位值,构成背景图像;然后比较原始视频中每一帧与所述背景图像中对应位置像素点的值,生成活动图及活动等级列表;再比较所述活动等级列表中像素点的活动等级与设定的活动等级阈值,生成二值活动掩码函数及累计活动函数;最后根据所述累计活动函数生成视频摘要,由此可以看出本申请方法是基于像素点的,并非基于目标识别和跟踪,避免了传统的基于目标识别和跟踪的方法容易受识别和跟踪错误的影响,并且算法复杂度低、实时性好,方便用户交互。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有技术效果。
具体实施方式
以下将配合实施例来详细说明本申请的实施方式,藉此对本申请如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
本发明一种动态生成视频摘要的方法,参见图1和图2,包括以下步骤:
步骤1,生成自适应背景图像
提取原始视频中每一帧(Frame)O(x,y,t)及其前后各n帧,取O(x,y,t)中的每一像素点,连同其前后各n帧中对应位置上的像素点共同构成一向量V,取所述向量V中元素的中位值,构成背景图像B(x,y,t);其中n为大于或等于1的整数;
步骤2,计算像素活动等级
比较原始视频中每一帧的像素点与所述背景图像中对应位置像素点的值,生成活动图及活动等级列表;
进一步地,所述比较原始视频中每一帧的像素点与所述背景图像中对应位置像素点的值具体为:将原始视频中每一帧O(x,y,t)的像素点与背景图像B(x,y,t)中对应位置像素点的值相减,取二者差值的绝对值,若为0,则代表该像素点是静态背景像素;若为1-255,则该值代表像素点的活动等级,如此生成活动图,记为A(x,y,t)。
进一步地,所述活动等级列表的生成方法为:将所述活动图中的非零值保存,生成非零列表,对所述非零列表按照活动等级升序排列;所述非零值包括像素点的位置和活动等级。
本申请实施例中,在很多视频监控的场景中,A(x,y,t)会是一个稀疏矩阵(大部分元素为0),因为原始视频帧中的大部分像素点是背景像素点。因此我们只需要保存A(x,y,t)中的非零值,包括像素点的位置(x,y)和活动等级,生成一张非零A(x,y,t)的列表,对此列表按照活动等级升序排列。这样,当用户改变活动等级阈值时,可以快速的找到大于该阈值的那些活动像素点(只需要找到第一个大于该阈值的活动像素点)。
步骤3,生成二值活动掩码函数
比较所述活动等级列表中像素点的活动等级与设定的活动等级阈值,生成二值活动掩码函数,根据所述二值活动掩码函数进一步生成累计活动函数;
进一步地,所述二值活动掩码函数的生成方法为:若活动等级列表中像素点的活动等级大于或等于设定的活动等级阈值,则二值活动掩码函数值计为1;若活动等级列表中像素点的活动等级小于设定的活动等级阈值,则二值活动掩码函数值计为0。
本申请实施例中,二值活动掩码函数采用如下算法计算:
其中,θ表示设定的活动等级阈值;A(x,y,t)表示活动等级列表中像素点的活动等级。
进一步地,所述累计活动函数采用如下算法计算:
其中,C(x,y,t)表示累计活动函数;N0表示原始视频的长度,即视频帧的数量;N1表示生成的视频摘要长度;t表示视频摘要中的帧序号(第几帧);M(x,y,kN1+t)为二值活动掩码函数。
步骤4,重映射活动像素,生成视频摘要
根据所述累计活动函数生成背景像素点和重映射的前景像素点,所述背景像素点和所述重映射的前景像素点共同组成视频摘要的视频帧。
进一步地,所述根据所述累计活动函数生成背景像素点和重映射的前景像素点具体为:判断所述累计活动函数的值,若累计活动函数的值为0,则生成背景像素点;若累计活动函数的值不为0,则生成重映射的前景像素点(活动像素点)。
本申请实施例中视频摘要采用如下算法获取:
其中,S(x,y,t)表示视频摘要的视频帧;B(x,y,t)表示背景图像;C(x,y,t)表示累计活动函数;F(x,y,t)表示重映射的前景像素点。
进一步地,所述重映射的前景像素点采用如下算法计算:
其中,F(x,y,t)表示重映射的前景像素点;N0表示原始视频的长度,即视频帧的数量;N1表示生成的视频摘要长度;t表示视频摘要中的帧序号(第几帧);C(x,y,t)表示累计活动函数;O(x,y,kN1+t)表示原始视频中的每一帧;M(x,y,kN1+t)为二值活动掩码函数。
进一步地,所述步骤1之前还包括:接收原始视频。
进一步地,所述步骤3之后还包括:设定和调整时间压缩倍数来决定生成的视频摘要的长度。
具体地,时间压缩倍数是用户设定的一个量,用来决定生成的视频摘要的长度,其满足:
其中,r表示时间压缩倍数;N0表示原始视频的长度;N1表示生成的视频摘要长度。
进一步地,还包括:调整活动等级阈值。具体的,若调整设定的活动等级阈值,则返回步骤3,否则显示视频摘要。
进一步地,所述步骤4之后还包括:显示视频摘要。
图3是对上述过程的一个描述,由上述方法可以看出,采用本发明方法生成的视频摘要就是将所有M(x,y,t)为1的像素点映射到最终生成的视频摘要中,可以看出本发明的原理是基于像素点的,而不是基于目标识别及跟踪的。
本发明一种动态生成视频摘要的装置,参见图4,包括:
背景图像生成模块,用于提取原始视频中每一帧及其前后各n帧中的对应像素点共同构成一向量,取所述向量中元素的中位值,构成背景图像,其中n为大于等于1的整数;
像素活动等级计算模块,用于比较原始视频中每一帧与所述背景图像中对应位置像素点的值,生成活动图及活动等级列表;
二值活动掩码函数生成模块,用于比较所述活动等级列表中像素点的活动等级与设定的活动等级阈值,生成二值活动掩码函数,并根据所述二值活动掩码函数进一步生成累计活动函数;
视频摘要生成模块,用于根据所述累计活动函数生成背景像素点和重映射的前景像素点,所述背景像素点和所述重映射的前景像素点共同组成视频摘要的视频帧。
进一步地,所述比较原始视频中每一帧与所述背景图像中对应位置像素点的值具体为:将原始视频中每一帧的像素点与背景图像中对应位置像素点的值相减,取二者差值的绝对值,若为0,则代表该像素点是静态背景像素;若为1-255,则该值代表像素点的活动等级,如此生成活动图。
进一步地,所述活动等级列表的生成方法为:将所述活动图中的非零值保存,生成非零列表,对所述非零列表按照活动等级升序排列;所述非零值包括像素点的位置和活动等级。
进一步地,所述二值活动掩码函数的生成方法为:若活动等级列表中像素点的活动等级大于或等于设定的活动等级阈值,则二值活动掩码函数值计为1;若活动等级列表中像素点的活动等级小于设定的活动等级阈值,则二值活动掩码函数值计为0。
进一步地,所述累计活动函数采用如下算法计算:
其中,C(x,y,t)表示累计活动函数;N0表示原始视频的长度,即视频帧的数量;N1表示生成的视频摘要长度;t表示视频摘要中的帧序号(第几帧),1≤t≤N1;M(x,y,kN1+t)为二值活动掩码函数。
进一步地,所述根据所述累计活动函数生成背景像素点和重映射的前景像素点具体为:判断所述累计活动函数的值,若累计活动函数的值为0,则生成背景像素点;若累计活动函数的值不为0,则生成重映射的前景像素点。
进一步地,所述重映射的前景像素点采用如下算法计算:
其中,F(x,y,t)表示重映射的前景像素点;N0表示原始视频的长度,即视频帧的数量;N1表示生成的视频摘要长度;t表示视频摘要中的帧序号,1≤t≤N1;C(x,y,t)表示累计活动函数;O(x,y,kN1+t)表示原始视频中的每一帧;M(x,y,kN1+t)为二值活动掩码函数。
进一步地,还包括:接收模块,用于接收原始视频;
进一步地,还包括:时间压缩倍数设定模块,用于设定和调整时间压缩倍数来决定生成的视频摘要的长度。
进一步地,还包括:显示模块,用于显示视频摘要。
进一步地,还包括:活动等级阈值调整模块,用于调整设定的活动等级阈值。
本发明提出的基于像素点的动态生成视频摘要的方法,避免了传统的基于目标识别和跟踪的方法容易受识别和跟踪错误的影响,并且算法复杂度低、实时性好,方便用户交互。
如在说明书及权利要求当中使用了某些词汇来指称特定成分或方法。本领域技术人员应可理解,不同地区可能会用不同名词来称呼同一个成分。本说明书及权利要求并不以名称的差异来作为区分成分的方式。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。说明书后续描述为实施本申请的较佳实施方式,然所述描述乃以说明本申请的一般原则为目的,并非用以限定本申请的范围。本申请的保护范围当视所附权利要求所界定者为准。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者***中还存在另外的相同要素。
上述说明示出并描述了发明的若干优选实施例,但如前所述,应当理解发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离发明的精神和范围,则都应在发明所附权利要求的保护范围内。