1.一种视频相似度快速检测方法,其特征在于,包括:
指纹集处理:
处理参考视频B得到对应于参考视频B的指纹集FB={fb1,...,fbj…,fbn};处理检测视频A得到对应于检测视频A的指纹集FA={fa1,...,fai…,fam};
指纹切块分组处理:
对指纹集FB和指纹集FA中的所有指纹做指纹切块分组处理,分别得到大小为n×g的分组指纹集合GB和大小为m×g的分组指纹集合GA;
建立倒排索引处理:
为分组指纹集合GB创建g个表,相同组合方式的元素存储在同一张表内,然后对该表内的每个元素建立倒排索引,指向包含它的完整指纹;
指纹比对处理:
从分组指纹集合GA中取一个元素C,并逐一在分组指纹集合GB的倒排索引中寻找与C值相等元素:若只存在一个相等的元素E,则直接计算对应指纹的汉明距离,若结果小于或等于H,则两指纹为相似指纹;若存在多个元素E,则选取汉明距离最小的作为相似指纹;若不存在,则跳到下一元素,继续比对;重复上述指纹比对处理,直至找到指纹集FA与指纹集FB中所有相似的指纹,定义相似的指纹对应的关键帧为相似关键帧,以此获得相似关键帧的个数;
相似判定处理:
根据相似关键帧个数计算相似度,设定相似度阈值T2,如果检测视频A和参考视频B的相似度SA,B大于等于阈值T2,则认为检测视频A与参考视频B相似;否则,则认为两视频不相似。
2.根据权利要求1所述的一种视频相似度快速检测方法,其特征在于,指纹切块分组处理中,单个指纹做指纹切块分组处理具体为:将指纹集FB中任一指纹fbj平均切分为d(d>H)个等长的块,即fbj1,fbj2,…,fbjd,再随机取出其中(d-H)份构成一个新元素,共有 种可能的组合方式;将指纹集FA中任一指纹faj平均切分为d(d>H)个等长的块,即faj1,faj2,…,fajd,再随机取出其中(d-H)份构成一个新元素,共有种可能的组合方式;其中定义两个汉明距离在设定阈值H内的指纹为相似指纹。
3.根据权利要求1所述的一种视频相似度快速检测方法,其特征在于,相似度按下式计算如下:
式中,snum表示检测视频A和参考视频B中相似关键帧个数,n和m分别表示参考视频B的关键帧的个数和检测视频A的关键帧的个数。
4.根据权利要求1-3中任意一项所述的一种视频相似度快速检测方法,其特征在于,所述指纹集处理的具体过程为:分别对参考视频B、检测视频A进行以下操作得到指纹集FB、指纹集FA,S1、获取关键帧集合:分别获得参考视频B、检测视频A对应的关键帧集合,参考视频B为对应的关键帧集合KB={kb1,kb2,…,kbj,…,kbn},检测视频A为对应的关键帧集合KA={ka1,ka2,…,kaj,…,kan};
S2、预处理:将每个关键帧图像缩小为预设M×M的尺寸,并将其转换为灰度图;
S3、离散余弦变换处理:对灰度图进行离散余弦变换DCT,只保留结果中左上角的N×N子矩阵ZN×N,N=M/4;
S4、二值化处理:计算ZN×N所有元素的算数平均值;然后将大于或等于平均值的元素设为1,小于平均值的元素设为0;
S5、计算指纹处理:将二值化处理后的ZN×N按照先行后列的顺序得到一个二进制序列,作为该关键帧的指纹fbj、指纹faj;
S6、重复S2至S5,分别得到指纹集FB={fb1,...,fbj…,fbn}、指纹集FA={fa1,...,fai…,fam}。
5.根据权利要求4所述的一种视频相似度快速检测方法,其特征在于,所述S1、获取关键帧集合的具体过程为:
步骤S11:将参考视频B、检测视频A进行切帧处理,得到该视频的图像帧集;
步骤S12:遍历图像帧集中的所有图像帧,计算前后两帧差分得到帧间差分强度;
步骤S13:将帧间差分强度为局部最大值的候选关键帧作为关键帧,即得到该视频的关键帧集合为KB={kb1,kb2,…,kbj,…,kbn},KA={ka1,ka2,…,kaj,…,kan}。
6.根据权利要求5所述的一种视频相似度快速检测方法,其特征在于,所述帧间差分强度,如下所示:
对于参考视频B有:Pj=|bj+1-bj|;对于检测视频A有:Pj=|aj+1-aj|;
其中Pj表示该视频的第j帧的帧间差分强度,bj表示参考视频B的图像帧集B={b1,b2,…,bj,…,bn}中的某一帧图像,bj+1表示图像帧集B中bj的后一帧图像,aj表示检测视频A的图像帧集A={a1,a2,…,aj,…,an}中的某一帧图像,aj+1表示图像帧集A中aj的后一帧图像;然后,将帧间差分强度大于阈值T1的帧作为一个候选关键帧。
7.根据权利要求4所述的一种视频相似度快速检测方法,其特征在于,所述离散余弦变换DCT计算如下所示:
式中,(u,v)代表着变换变量,f(w,s)是输入的图像,其中(w,s)代表着输入图像中像素的空间位置,且补偿系数为
8.视频相似度快速检测装置,其特征在于,包括:
指纹集获取单元:用于处理参考视频B得到对应于参考视频B的指纹集FB={fb1,...,fbj…,fbn};处理检测视频A得到对应于检测视频A的指纹集FA={fa1,...,fai…,fam};
指纹切块分组单元:用于对指纹集FB和指纹集FA中的所有指纹做指纹切块分组处理,分别得到大小为n×g的分组指纹集合GB和大小为m×g的分组指纹集合GA;
倒排索引建立单元:用于为分组指纹集合GB创建g个表,相同组合方式的元素存储在同一张表内,然后对该表内的每个元素建立倒排索引,指向包含它的完整指纹;
指纹比对单元:用于从分组指纹集合GA中取一个元素C,并逐一在分组指纹集合GB的倒排索引中寻找与C值相等元素:若只存在一个相等的元素E,则直接计算对应指纹的汉明距离,若结果小于或等于H,则两指纹为相似指纹;若存在多个元素E,则选取汉明距离最小的作为相似指纹;若不存在,则跳到下一元素,继续比对;重复上述指纹比对处理,直至找到指纹集FA与指纹集FB中所有相似的指纹,定义相似的指纹对应的关键帧为相似关键帧,以此获得相似关键帧的个数;
相似判定单元:用于根据相似关键帧个数计算相似度,设定相似度阈值T2,如果检测视频A和参考视频B的相似度SA,B大于等于阈值T2,则认为检测视频A与参考视频B相似;否则,则认为两视频不相似。
9.根据权利要求8所述的视频相似度快速检测装置,其特征在于,所述指纹集获取单元包括:
关键帧集合获取单元:用于分别获得参考视频B、检测视频A对应的关键帧集合,参考视频B为对应的关键帧集合KB={kb1,kb2,…,kbj,…,kbn},检测视频A为对应的关键帧集合KA={ka1,ka2,…,kaj,…,kan};
指纹计算执行单元:用于对关键帧集合KB、关键帧集合KA执行程序X得到关键帧的指纹fbj、指纹faj,程序X为:
将每个关键帧图像缩小为预设M×M的尺寸,并将其转换为灰度图;
对灰度图进行离散余弦变换DCT,只保留结果中左上角的N×N子矩阵ZN×N,N=M/4;
计算ZN×N所有元素的算数平均值;然后将大于或等于平均值的元素设为1,小于平均值的元素设为0;
将二值化处理后的ZN×N按照先行后列的顺序得到一个二进制序列,作为该关键帧的指纹fbj、指纹faj。
10.根据权利要求9所述的视频相似度快速检测装置,其特征在于,关键帧集合获取单元包括:切帧模块:用于将参考视频B、检测视频A进行切帧处理,得到该视频的图像帧集;
帧间差分强度执行模块:遍历图像帧集中的所有图像帧,计算前后两帧差分得到帧间差分强度;
关键帧识别获取模块:用于将帧间差分强度为局部最大值的候选关键帧作为关键帧,即得到该视频的关键帧集合为KB={kb1,kb2,…,kbj,…,kbn},KA={ka1,ka2,…,kaj,…,kan}。