视频帧篡改检测方法与流程

文档序号:12279740阅读:1555来源:国知局
视频帧篡改检测方法与流程

本发明总体来说涉及多媒体信息安全领域,更具体地讲,涉及一种视频帧篡改检测方法。



背景技术:

随着数字多媒体技术的迅速发展,视频在社会生活的各个方面特别是监控领域中发挥着越来越重要的作用。由于视频可以对过去发生的事实进行高度一致的复现,其在公共安全领域的作用越来越大。

然而,由于专业的视频编辑软件(例如,Adobe Premiere、Adobe After Effects等)的日益发展使得篡改视频数据变得轻而易举,普通用户也能够篡改视频的内容而不留下视觉痕迹,从而掩盖甚至歪曲事实的真相。这些虚假的视频一旦被用于司法取证将严重妨害社会的正常秩序。

因此,如何准确检测一个视频是否被篡改,已经成为多媒体信息安全领域的一个重要课题。



技术实现要素:

本发明的示例性实施例在于提供一种视频帧篡改检测方法,以解决现有的视频数据易被篡改而难以检测的技术问题。

根据本发明示例性实施例的一方面,提供一种视频帧篡改检测方法,所述方法包括:(A)计算输入的视频数据的视频哈希值;(B)提取输入的视频数据中保存的指示针对该视频数据的预设视频哈希值的附加数据;(C)将计算得到 的视频哈希值与提取的附加数据中的所述预设视频哈希值进行相似度计算;(D)如果计算得到的视频哈希值与提取的所述预设视频哈希值的相似度满足条件,则判定输入的视频数据未被篡改;(E)如果计算得到的视频哈希值与提取的所述预设视频哈希值的相似度不满足条件,则判定输入的视频数据被篡改。

可选地,所述方法在步骤(A)之前可还包括:(F)计算输入的视频数据预设的视频哈希值;(G)将计算得到的所述预设视频哈希值作为所述视频数据的附加数据保存在所述视频数据中。

可选地,步骤(G)可包括:对计算得到的所述预设视频哈希值进行加密,将加密后的所述预设视频哈希值作为附加数据保存在所述视频数据中。

可选地,步骤(A)可包括:基于输入的视频数据中的帧图像的颜色特性来计算所述视频数据的视频哈希值。

可选地,基于输入的视频数据中的帧图像的颜色特性来计算所述视频数据的视频哈希值的步骤可包括:(A1)将输入的视频数据分离为独立的帧图像,并从分离出的帧图像中按预定规则抽取帧图像;(A2)基于抽取的每个帧图像中包括的所有像素的颜色特性来计算所述视频数据的视频哈希值。

可选地,从分离出的帧图像中按预定规则抽取帧图像的步骤可包括:以预设的帧间隔从分离出的帧图像中等间隔地抽取帧图像,或者从分离出的帧图像中随机抽取预定个数的帧图像。

可选地,步骤(A2)可包括:基于抽取的每个帧图像中包括的所有像素的颜色特性来计算每个帧图像的哈希比特,将所有帧图像的哈希比特串联排列以形成所述视频数据的视频哈希值,其中,在步骤(A2)中,计算抽取的帧图像中的任一帧图像的哈希比特的步骤可包括:(A21)对所述一帧图像中包括的所有像素对应的各颜色分量的灰阶值分别进行量化处理,以确定出每个像素对应 的各颜色分量的灰阶量化值;(A22)针对每个颜色分量统计各灰阶量化值分别出现的次数,并形成原始次数序列;(A23)针对每个颜色分量将所述原始次数序列中的所有次数进行顺序排序,并确定排序后的次数序列的中位数;(A24)基于所述一帧图像中各颜色分量的原始次数序列和与各颜色分量对应的排序后的次数序列的中位数,来确定所述一帧图像的哈希比特。

可选地,步骤(A24)可包括:将所述一帧图像中的每个颜色分量的原始次数序列中的次数与该颜色分量对应的排序后的次数序列的中位数进行比较,并基于比较结果确定出所述一帧图像中的每个颜色分量所对应的哈希特比;将所述一帧图像中的所有颜色分量所对应的哈希特比串联排列,形成所述一帧图像的哈希比特。

可选地,在步骤(A24)中,将抽取的所述一帧图像中的任一颜色分量的原始次数序列中的次数与所述任一颜色分量对应的排序后的次数序列的中位数进行比较,并基于比较结果确定出所述一帧图像的所述任一颜色分量所对应的哈希特比的步骤可包括:将所述任一颜色分量的原始次数序列中的任一次数与所述任一颜色分量对应的排序后的次数序列的中位数进行比较;如果所述任一颜色分量的原始次数序列中的任一次数大于所述任一颜色分量对应的排序后的次数序列的中位数,则所述任一次数对应的哈希比特为1;如果所述任一颜色分量的原始次数序列中的任一次数不大于所述任一颜色分量对应的排序后的次数序列的中位数,则所述任一次数对应的哈希比特为0;将所述任一颜色分量的原始次数序列中的所有次数对应的哈希比特串联排列,形成所述任一颜色分量所对应的哈希特比。

可选地,步骤(C)可包括:确定计算得到的视频哈希值与提取的附加数据中的视频哈希值的归一化汉明距,并基于确定的归一化汉明距来对计算得到的 视频哈希值与提取的附加数据中的视频哈希值进行相似度计算,其中,步骤(D)可包括:如果确定的归一化汉明距不大于预设值,则判定输入的视频数据未被篡改,其中,步骤(E)可包括:如果确定的归一化汉明距大于预设值,则判定输入的视频数据被篡改。

采用上述视频帧篡改检测方法,可有效防止视频数据被恶意篡改。

附图说明

图1示出根据本发明示例性实施例的视频帧篡改检测方法的流程图;

图2示出根据本发明示例性实施例的图1中的计算视频数据的视频哈希值的步骤的流程图;

图3示出采用本发明示例性实施例的视频帧篡改检测方法来检测视频数据是否被篡改的示例;

图4示出根据本发明示例性实施例的与图3所示的示例对应归一化汉明距的示意图。

具体实施方式

现将详细描述本发明的示例性实施例,所述实施例的示例在附图中示出,其中,相同的标号始终指的是相同的部件。

图1示出根据本发明示例性实施例的视频帧篡改检测方法的流程图。

参照图1,在步骤S10中,计算输入的视频数据的视频哈希值。

作为示例,可基于输入的视频数据中的帧图像的颜色特性来计算所述视频数据的视频哈希值。这里,可基于输入的视频数据中的所有帧图像的颜色特性或输入的视频数据中的预定帧图像的颜色特性来计算所述视频数据的视频哈希 值。

具体说来,基于输入的视频数据中的帧图像的颜色特性来计算所述视频数据的视频哈希值的步骤可包括:将输入的视频数据分离为独立的帧图像,并从分离出的帧图像中按预定规则抽取帧图像;基于抽取的每个帧图像中包括的所有像素的颜色特性来计算所述视频数据的视频哈希值。这里,一般认为相邻帧图像之间的变化不明显,因此,在本发明中可仅计算抽取的帧图像的哈希比特,从而有效减少计算所述视频数据的视频哈希值的计算量。

可选地,基于抽取的每个帧图像中包括的所有像素的颜色特性来计算所述视频数据的视频哈希值的步骤可包括:基于抽取的每个帧图像中包括的所有像素的颜色特性来计算每个帧图像的哈希比特,将所有帧图像的哈希比特串联排列形成所述视频数据的视频哈希值。

例如,从分离出的帧图像中按预定规则抽取帧图像的步骤可包括:以预设的帧间隔从分离出的帧图像中等间隔地抽取帧图像,或者从分离出的帧图像中随机抽取预定个数的帧图像。

根据本发明示例性实施例的视频帧篡改检测方法在步骤S10之前可还包括:生成含有以附加数据形式存储的指示针对该视频数据的预设视频哈希值的视频数据的步骤。具体说来,生成含有以附加数据形式存储的指示针对该视频数据的预设视频哈希值的视频数据的步骤可包括:计算输入的视频数据的所述预设视频哈希值;将计算得到的所述预设视频哈希值作为所述视频数据的附加数据保存在所述视频数据中。例如,所述视频数据可为MKV格式的视频文件,相应地,可以MKV多媒体封装格式将计算得到的所述预设视频哈希值封装到MKV格式的视频文件中。

应理解,这里需采用与步骤S10中计算输入的视频数据的视频哈希值相同 的方法来计算输入的视频数据的所述预设视频哈希值。作为示例,可采用现有的各种方法来计算视频数据的视频哈希值。

可选地,将计算得到的所述预设视频哈希值作为所述视频数据的附加数据保存在所述视频数据中的步骤可包括:对计算得到的所述预设视频哈希值进行加密,将加密后的所述预设视频哈希值作为附加数据保存在所述视频数据中。作为示例,可采用现有的各种加密算法来对所述预设视频哈希值进行加密。例如,可采用置乱加密方法或分组加密方法来对所述预设视频哈希值进行加密。这里,置乱加密方法或分组加密方法为本领域的公知常识,本发明对此部分的内容不再赘述。

在步骤S20中,提取输入的视频数据中保存的指示针对该视频数据的预设视频哈希值的附加数据。

作为示例,如果在生成视频数据的过程中,对以附加数据形式存储在该视频数据中的所述预设视频哈希值进行了加密,则在步骤S20中可采用与该加密方法相应的解密方法来对提取的附加数据进行解密,以获得所述附加数据中存储的针对该视频数据的所述预设视频哈希值。这里,生成视频数据的设备与检测该视频数据的设备之间需根据预先约定的秘钥对所述预设视频哈希值进行相应的加密、解密。

在步骤S30中,判断计算得到的视频哈希值与提取的附加数据中的所述预设视频哈希值是否相似,即,将计算得到的视频哈希值与提取的附加数据中的所述预设视频哈希值进行相似度计算。

在步骤S30的第一实施例中,可确定计算得到的视频哈希值与提取的附加数据中的所述预设视频哈希值的归一化汉明距,并基于确定的归一化汉明距来对计算得到的视频哈希值与所述预设视频哈希值进行相似度计算。

在步骤S30的第二实施例中,可确定计算得到的视频哈希值与提取的附加数据中的所述预设视频哈希值的欧式距离,并基于确定的欧式距离来对计算得到的视频哈希值与所述预设视频哈希值进行相似度计算。

如果计算得到的视频哈希值与所述预设视频哈希值相似,则执行步骤S40:判定输入的视频数据未被篡改。

在上述步骤S30的基于归一化汉明距来对计算得到的视频哈希值与所述预设视频哈希值进行相似度计算的第一实施例的情况下,如果确定的归一化汉明距不大于预设值(即,计算得到的视频哈希值与所述预设视频哈希值的相似度满足条件),则执行步骤S40。

在上述步骤S30的基于欧式距离来对计算得到的视频哈希值与所述预设视频哈希值进行相似度计算的第二实施例的情况下,如果确定的于欧式距离不大于设定值(即,计算得到的视频哈希值与所述预设视频哈希值的相似度满足条件),则执行步骤S40。

如果计算得到的视频哈希值与所述预设视频哈希值不相似,则执行步骤S50:判定输入的视频数据被篡改。

在上述步骤S30的基于归一化汉明距来对计算得到的视频哈希值与所述预设视频哈希值进行相似度计算的第一实施例的情况下,如果确定的归一化汉明距大于预设值(即,计算得到的视频哈希值与所述预设视频哈希值的相似度不满足条件),则执行步骤S50。

在上述步骤S30的基于欧式距离来对计算得到的视频哈希值与所述预设视频哈希值进行相似度计算的第二实施例的情况下,如果确定的于欧式距离大于设定值(即,计算得到的视频哈希值与所述预设视频哈希值的相似度不满足条件),则执行步骤S50。

下面参照图2来详细描述计算视频数据的视频哈希值的步骤。应理解,可采用图2所示的方法来计算视频数据的视频哈希值和所述预定视频哈希值。

图2示出根据本发明示例性实施例的图1中的计算视频数据的视频哈希值的步骤的流程图。

参照图2,在步骤S101中,将输入的视频数据分离为独立的帧图像。这里,可利用现有的各种方法来将输入的视频数据分离为独立的帧图像。

在步骤S102中,从分离出的帧图像中抽取n个帧图像。

在步骤S103中,读取n个帧图像中的第i个帧图像中包括的所有像素的p个颜色分量的灰阶值。这里,i的初值为1。

作为示例,每个像素可包括三个颜色分量(即,p=3),分别是红色分量、绿色分量和蓝色分量。相应地,在步骤S103中可读取第i个帧图像中包括的所有像素的红色分量的灰阶值、绿色分量的灰阶值和蓝色分量的灰阶值。

在步骤S104中,对第i个帧图像中包括的所有像素的p个颜色分量的灰阶值分别进行量化处理,以确定出所有像素的p个颜色分量的灰阶量化值。例如,可利用预设的量化步长来对第i个帧图像中包括的所有像素对应的p个颜色分量的灰阶值分别进行量化处理,从而确定出所有像素对应的p个颜色分量的灰阶量化值。

作为示例,可对第i个帧图像中包括的所有像素对应的红色分量的灰阶值、绿色分量的灰阶值和蓝色分量的灰阶值分别进行量化处理,从而确定出每个像素对应的红色分量的灰阶量化值、绿色分量的灰阶量化值、蓝色分量的灰阶量化值。

例如,可利用下面的公式对任一像素对应的红色分量的灰阶值、绿色分量的灰阶值和蓝色分量的灰阶值进行量化处理,

公式(1)中,New_R表示任一像素对应的红色分量的灰阶量化值,Gray(R)表示测量得到的所述任一像素对应的红色分量的灰阶值,New_G表示任一像素对应的绿色分量的灰阶量化值,Gray(G)表示测量得到的所述任一像素对应的绿色分量的灰阶值,New_B表示任一像素对应的蓝色分量的灰阶量化值,Gray(B)表示测量得到的所述任一像素对应的蓝色分量的灰阶值,S表示预设的量化步长,floor[]表示向下取整。

在步骤S105中,统计p个颜色分量中的第k个颜色分量对应的各灰阶量化值分别出现的次数,形成第k个颜色分量的原始次数序列。

例如,可分别统计红色分量对应的各灰阶量化值出现的次数并形成红色分量的原始次数序列、统计绿色分量对应的各灰阶量化值出现的次数并形成绿色分量的原始次数序列、统计蓝色分量对应的各灰阶量化值出现的次数并形成蓝色分量的原始次数序列。

在步骤S106中,将第k个颜色分量的原始次数序列中的所有次数进行顺序排序,并确定排序后的次数序列的中位数。这里,可对所有次数按照次数的数值大小进行正序排序或逆序排序。应理解,如果任一颜色分量所对应的次数序列中包含的次数的个数为奇数,则将位于该次数序列中间的次数作为所述任一颜色分量对应的排序后的次数序列的中位数;如果任一颜色分量所对应的次数序列中包含的次数的个数为偶数,则计算位于该次数序列中间的两个次数的平 均值,将计算得到的平均值作为所述任一颜色分量对应的排序后的次数序列的中位数。

优选地,可在步骤S105中绘制第k个颜色分量对应的各灰阶量化值分别出现的次数对应的直方图,然后在步骤S106中对绘制出的直方图进行顺序排序,以确定出第k个颜色分量对应的各灰阶量化值分别出现的次数的中位数。

例如,可将针对红色分量统计出的原始次数序列中的所有次数进行顺序排序,并基于红色分量对应的排序后的次数序列来确定该次数序列的中位数,将针对绿色分量统计出的原始次数序列中的所有次数进行顺序排序,并基于绿色分量对应的排序后的次数序列来确定该次数序列的中位数,将针对蓝色分量统计出的原始次数序列中的所有次数进行顺序排序,并基于蓝色分量对应的排序后的次数序列来确定该次数序列的中位数。

在步骤S107中,判断第k个颜色分量的原始次数序列中的第x个次数的值是否大于确定的第k个颜色分量对应的排序后的次数序列的中位数的值。

如果第x个次数的值大于确定的中位数的值,则执行步骤S108:确定第x个次数所对应的哈希比特为1。

如果第x个次数的值不大于(即,小于等于)确定的中位数的值,则执行步骤S109:确定第x个次数所对应的哈希比特为0。

在步骤S110中,判断x是否等于Q。这里,1≤x≤Q,Q为第k个颜色分量的原始次数序列中包括的次数的值的个数,Q为大于0的自然数。

如果x不等于Q,则执行步骤S111:使得x=x+1,并返回执行步骤S107。

如果x等于Q,则表明已确定出第k个颜色分量所对应的哈希比特的值,并继续执行步骤S112:判断k是否等于p。这里,1≤k≤p,p为一个像素对应的颜色分量的个数,p为大于0的自然数。

例如,假设一个帧图像中红色分量的灰阶量化值为1、2、3、4、5,相应地各灰阶量化值出现的次数分别为9、7、1、2、4。对所有次数进行排序,则排序后的次数序列为1、2、4、7、9。此时,该次数序列的中位数为4,因此,将原始次数序列9、7、1、2、4中的每一项与中位数4进行比较,基于比较结果得到的该帧图像中红色分量所对应的哈希比特为1、1、0、0、0。

如果k不等于p,则执行步骤S113:使得k=k+1,并返回执行步骤S105。

如果k等于p,则执行步骤S114:将所有p个颜色分量所对应的哈希比特串联排列,形成第i个帧图像的哈希比特。

例如,假设一个帧图像中,红色分量的灰阶量化值为1、2、3、4、5,相应地各灰阶量化值出现的次数为9、10、5、8、4;绿色分量的灰阶量化值为1、2、3、4、5,相应地各灰阶量化值出现的次数为2、6、5、8、1;蓝色分量的灰阶量化值为1、2、3、4、5,相应地各灰阶量化值出现的次数为1、3、2、7、4。

根据上述产生一个帧图像的哈希比特的方法,红色分量对应的次数序列的中位数为8,将该次数序列中的各次数与中位数进行比较,得到红色分量对应的哈希比特为1、1、0、0、0。类似地,绿色分量对应的次数序列的中位数为5,将该次数序列中的各次数与中位数进行比较,得到绿色分量对应的哈希比特为0、1、0、1、0。类似地,蓝色分量对应的次数序列的中位数为3,将该次数序列中的各次数与中位数进行比较,得到蓝色分量对应的哈希比特为0、0、0、1、1。将三个颜色分量的哈希比特串联起来,就得到这一帧图像的哈希比特为:110000101000011(此时,前5个数值对应的是红色分量的哈希比特,中间5个数值对应的是绿色分量的哈希比特,最后5个数值对应的是蓝色分量的哈希比特)。

在步骤S115中,判断i是否等于n。这里,1≤i≤n,n为抽取的帧图像的个 数,n为大于0的自然数。

如果i不等于n,则执行步骤S116:使得i=i+1,并返回执行步骤S103。

如果i等于n,则执行步骤S117:将所有帧图像的哈希比特串联排列,以形成所述视频数据的视频哈希值。

除图2所示的计算输入的视频数据的视频哈希值的方法之外,在另一示例中,还可在步骤S106中计算p个颜色分量中的第k个颜色分量对应的确定排序后的次数序列中的各次数的平均值,然后在步骤S107中判断第k个颜色分量对应的原始次数序列中的第x个次数的值是否大于计算的平均值,如果第k个颜色分量对应的原始次数序列中的第x个次数的值大于计算的平均值,则执行步骤S108,如果第k个颜色分量对应的原始次数序列中的第x个次数的值不大于计算平均值,则执行步骤S109。

这里,由于本发明示例性实施例的视频帧篡改检测方法基于各颜色分量的灰阶量化值出现的次数的中位数或平均值来获得一帧图像的哈希比特,保证了获得的所述一帧图像的哈希比特中“0”和“1”的值出现的概率大致相等,使计算得到的哈希比特的随机性更佳,因此,可具有更高的安全性。

图3示出采用本发明示例性实施例的视频帧篡改检测方法来检测视频数据是否被篡改的示例。

图4示出根据本发明示例性实施例的与图3所示的示例对应归一化汉明距的示意图。在图4中,横坐标为该段视频数据的帧图像的数量与预设的帧间隔的比值,纵坐标为归一化汉明距的值。

如图3所示,以一段持续时间为3分28秒的地铁监控视频为例进行检测实验。在本示例中,利用本发明示例性实施例的视频帧篡改检测方法计算出该段视频数据预设视频哈希值为261×48=12528比特,并将该预设视频哈希值以附 加数据的形式保存在该段视频数据中。假设,人为删除该段视频数据中的第25秒至40秒的帧图像,得到篡改后的视频数据。采用相同的计算方法来计算篡改后的视频数据的视频哈希值,此时,计算得到篡改后的视频数据的视频哈希值为11568比特。将计算得到的篡改后的视频数据的视频哈希值与从视频数据的附加数据中提取的预设视频哈希值进行比对,从图4中示出的归一化汉明距的示意图可以看出,发现该段视频数据的25秒之前的两个视频哈希值完全匹配(即,归一化汉明距为0),而25秒以后的两个视频哈希值匹配不佳(即,归一化汉明距为1),在本示例中,针对归一化汉明距的预设值为0.1,因此25秒以后的两个视频哈希值的归一化汉明距远大于预设值,则表明该段视频数据从25秒开始出现异常,从而判断出该段视频数据从25秒开始已被篡改。

此外,从图4中还可看出,在40秒之后的两个视频哈希值的匹配较好(即,归一化汉明距小于预设值0.1),也就是说,该段视频数据40秒之后未被篡改。因此,根据本发明示例性实施例的基于视频数据的颜色特性的视频帧篡改检测方法可准确确定出视频数据被篡改的起始时间点和结束时间点。

应注意,在本示例中,采用帧删除方式对该段视频数据进行篡改,并根据本发明所述的方法检测出该段视频数据被篡改,然而,本发明不限于此,本发明所述的视频帧篡改检测方法还可针对帧插入、帧删除等视频数据篡改方式进行检测,只要对视频数据的篡改涉及到改变了视频数据中的帧图像的颜色特征,本发明所述的视频帧篡改检测方法均适用。

采用本发明示例性实施例的视频帧篡改检测方法,能够有效检测视频数据是否被篡改。

此外,根据本发明示例性实施例的视频帧篡改检测方法,由于将视频数据的预设视频哈希值以附加数据的形式保存到该视频数据中,使得本发明示例性 实施例所述的视频帧篡改检测方法可实现与现有的能够播放该视频数据的各种视频播放器相兼容。

此外,采用本发明示例性实施例的视频帧篡改检测方法,最终计算得到的视频数据的视频哈希值的长度较小,可有效减少视频数据本身的文件大小,有助于节省视频数据的存储空间。

此外,由于在计算视频数据的视频哈希值时,完整地利用了每帧图像中包括的所有像素的颜色特性,因此可提高对视频数据的篡改检测的敏感性,同时由于采用了对各颜色分量灰阶值进行量化的方式来产生哈希值,因此也可保证本发明所述的方法对视频数据的篡改检测具有一定的鲁棒性。

上面已经结合具体示例性实施例描述了本发明,但是本发明的实施不限于此。在本发明的精神和范围内,本领域技术人员可以进行各种修改和变型,这些修改和变型将落入权利要求限定的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1