图像异常边缘篡改检测及可信度评价算法
2022-07-07朱婷鸽李文瑄
朱婷鸽,李文瑄,来 毅,2,刘 颖,2
(1.西安邮电大学 通信与信息工程学院,陕西 西安 710121;2.西安邮电大学 电子信息现场勘验应用技术公安部重点实验室,陕西 西安 710121)
图像编辑技术一方面给人们带来便利,另一方面给图像安全带来隐患,即图像在存储、传输过程中容易受到恶意篡改。经过加密[1]、水印[2]等技术进行安全预处理的图像,可防止被恶意篡改,但事实上,大多数图像并没有经过安全预处理。图像被篡改后,图像本身固有的特征发生了变化,且篡改手段不同,图像固有特征变化不同。因此,异常痕迹被用于鉴定图像的真伪[3-5]。对于图像异常边缘的检测,大多数算法是通过检测人工模糊[6]、拼接点不一致的光照特征和噪声特征[7]鉴定图像真伪。Hsu等[8]通过检测图像的几何不变性和相机固有的特征之间是否一致定位拼接区域,但是该算法仅对拼接篡改检测有效。Li等[9]通过检测光照方向是否一致鉴定图像真伪,但是仅对无线光源检测较好。图像拼接后,因为篡改区域与原始图像的噪声来自不同图像,其噪声分布不一致,所以也可利用图像噪声分布的差异鉴定图像是否被篡改[10-11],但是这类算法正常有效的前提是拼接区域与原始图像的噪声有差异,当噪声的差异不显著,检测结果失效。
无论哪种篡改手段,篡改后为了保证篡改区域与原始图像兼容,一般篡改区域边缘都需进行模糊、羽化等平滑处理,以达到视觉不可见效果。因此,局部模糊类型的不一致性被用于确定篡改区域[12-13]。Lu等[14]对待检图像进行二次高斯模糊,通过对比原始图像与二次模糊图像的边缘差,鉴定图像是否篡改。篡改区域边缘被羽化后,图像边缘像素与羽化半径之间满足一定的关系,利用这种关系可检测篡改区域[15]。但是,这些边缘平滑检测算法仅对模糊或者羽化等其中一类篡改后处理检测有效。
近年来,深度学习被广泛用于图像篡改检测领域[16]。Saloum等[17]利用学习表面标记和拼接区域边界的两个分支的全卷积神经网络(Convolutional Neural Networks,CNN)检测拼接和定位篡改区域。Zhou等[18]提出了双流CNN 进行篡改检测,比单流网络检测效果较好。Yang等[19]基于Lab空间的a通道和b通道构造特征矩阵,拟合高斯混合模型分布,通过对比分析两种分布之间差异,检测篡改区域。Wu等[20]提出一种可以处理多种篡改类型、任意尺寸图像的全卷积网络,通过寻找局部异常点定位篡改区域。基于深度学习的篡改检测算法的训练数据来源于不同的数据库,虽然对多个数据库的检测有效,但其检测精度却比一般的篡改检测算法低。
针对现有图像篡改检测算法只能检测模糊或者羽化等其中一类篡改后处理,以及非真即伪的检测结果,拟提出一种图像异常边缘篡改检测及可信度评价算法。通过对图像进行预测编码和边缘增强,弱化伪造区域边缘,增强真实区域的边缘。对比处理前后的边缘,寻找异常边缘点,同时根据边缘异常概率计算图像可信度,即给出图像真实的概率,以期更为合理地评价图像真伪。
1 边缘篡改检测及可信度评价算法
一般地,图像被篡改后在篡改区域边缘会进行平滑处理,从而达到篡改区域与原图兼容的目的。篡改图像示例如图1所示。图1(b)是由图1(a)羽化处理而来,虽然视觉上无法看出,但事实上篡改区域平滑处理导致篡改区域边缘特征发生异常。基于此,所提图像异常边缘篡改检测及可信度评价算法,先采用非线性双边滤波器对图像进行去噪处理,然后利用非线性预测编码弱化篡改区域边缘,同时利用边缘增强算法补偿前面损失的真实边缘信息,达到增强真实边缘的目的。最后,通过提取待检图像处理前后的边缘,寻找异常边缘点,并依据边缘点异常概率计算图像可信度。算法检测过程如图2所示。
图1 篡改图像示例
图2 算法检测过程
1.1 去噪
图像在传输、保存过程中会受到噪声的干扰,而噪声对图像特征的提取有着一定的影响,因此在处理图像边缘前,先对其进行去噪。非线性双边滤波器既能满足去噪的需求,同时又能更好地保存图像的边缘信息。
1.2 弱化伪造区域边缘
为了弱化篡改区域边缘特点,突出真实边缘的特点,对待检图像进行预测编码,去掉像素之间的相关性,更加显现出相邻像素之间的差异,以达到弱化篡改区域边缘的目的。若待测图像I在(x,y)点的灰度值为I(x,y),则(x,y)点的8邻域像素值分别为I(x-1,y-1)、I(x-1,y)、I(x-1,y+1)、I(x,y-1)、I(x,y+1)、I(x+1,y-1)、I(x+1,y)和I(x+1,y+1)。
设Imax(x,y)和Imin(x,y)分别表示(x,y)点的8邻域的最大值和最小值。定义c1和c2分别为邻域中最大值、最小值与I(x,y)之间的差异,即
c1=|Imax(x,y)-I(x,y)|
(1)
c2=|I(x,y)-Imin(x,y)|
(2)
则预测值可表示为
(3)
预测误差为
(4)
e(x,y)为原始灰度值与预估值的差,相比原图的灰度值范围,e(x,y)的取值范围越低,像素灰度值之间的差异越小,从而达到弱化边缘的效果。
1.3 增强图像真实边缘
利用预测编码弱化伪造区域边缘,真实边缘也有一定的弱化。为了补偿这部分损失,同时更加凸显真实边缘与处理后边缘之间的差异,增强真实图像的边缘,进一步弱化伪造区域边缘。因此,对误差图像进一步处理,增强图像真实边缘。误差图像在(x,y)点的8邻域误差值分别为e(x-1,y-1)、e(x-1,y)、e(x-1,y+1)、e(x,y-1)、e(x,y+1)、e(x+1,y-1)、e(x+1,y)和e(x+1,y+1)。
设d(x,y)为(x,y)点误差灰度值与其8邻域均值的差异,定义为
(5)
(6)
式中:λ表示边缘增强的强度,取值范围为λ∈[0,1];S(x,y)表示该像素点8邻域灰度值求和;8e(x,y)表示将中心像素灰度值扩大8倍;T为阈值。
d(x,y)和T的大小对比反映了图像在(x,y)点的纹理复杂度。若d(x,y) 各向同性Sobel检测算子[21]在水平和垂直两个方向上检测边缘时,具有一致的梯度幅度,位置加权系数准确。Kirsch边缘检测算子[22]能较好地保持边缘细节。结合这两个边缘提取算法的优势,提取图像的融合边缘特征。 设任意一个边缘像素点为(xi,yi),i∈[1,N],N为边缘像素点总数。以此像素为中心,将其邻域划分为Sik和Sik′里外各4个区域,k=1,2,3,4,相对应区域包含的边缘点数目分别为Nik和Nik′。边缘点的邻域划分如图3所示,图中黑点表示该像素点。 图3 边缘点的邻域划分 与待检图像划分类似,以该边缘像素点(xi,yi)为中心的4个里外区域也划分为Aik和Aik′,用nik和nik′分别表示相对应区域包含的边缘点数目。 设以(xi,yi)为中心的里外任一区域含像素数目分别为m和t,Sik和Sik′区域内待检图像边缘像素点的变化概率表示为 (7) 若里外两个区域的阈值分别为D和D′,存在任意两个k∈[1,4],满足条件 (8) 则认为该像素点为异常像素点。 目前已有的图像篡改检测算法均为非真即伪的二值化篡改检测结果,准确度较低。利用异常边缘概率计算图像可信度,即给出图像真实的概率,由此评价图像真伪更为合理。图像真实边缘经过处理后,其边缘多数情况下会变宽,此时可能存在pik<0,因概率取值在0和1之间,可将其修正为pik=0。检测到的异常边缘点也可能存在误检或者漏检现象,故对所有像素点进行综合评价,以此评判图像的可信度。 定义每个边缘像素点的可信度为 pi=1-[αmax(pik)+βmax(pik′)] (9) 式中,α+β=1。 设异常边缘点和非异常边缘点的集合分别为Ωa和Ωb,则异常边缘点和非异常边缘点的可信度分别为 (10) (11) 式中,|Ωa|和|Ωb|分别表示集合Ωa和集合Ωb的数目。由此可定义图像的可信度为 (12) 实验环境为Matlab 2016a,计算机配置为Intel 2.10 GHz处理器,64 GB RAM。选取CASIA2.0标准库中[23]涉及jpg、png和tif等类型的图像数据,对目标伪造篡改区域的边缘进行模糊、羽化处理,通过寻找图像中存在的异常边缘痕迹,检测图像是否经过篡改。参数T设置为像素点邻域的局部方差的2倍,λ取0.5。任意一个边缘点是否异常由该位置的变化概率与D和D′同时决定,通过分析真实图像与伪造图像边缘特点,确定D和D′取值分别为0.35和0.55。每个边缘点的可信度由里外区域变化概率共同决定,即α+β=1,因此通过两个区域像素数占的比重确定α和β。 在CASIA2.0标准库中选取目标伪造图像进行异常边缘检测,3个实验结果示例如图4所示。图4(a)为待检图像,其中第一幅花朵图像的边缘经过了羽化处理,第二幅鸟图像和第三幅月饼图像为真实图像。图4(b)和图4(c)分别为待检图像处理前和处理后提取的边缘。 图4 异常边缘检测结果 由图4(c)可以看出,经过羽化处理后的花朵图像边缘绝大部分消失,而真实图像鸟的边缘和月饼的边缘大部分存在,且变宽。这说明伪造图像平滑后绝大部分边缘消失,而真实图像的大多数边缘存在,且边缘变宽。 为了验证所提算法的异常边缘检测效果,分别对比所提算法与文献[15]算法和文献[20]算法的检测结果。伪造图像及其来源示例如图5所示,其中前两列为真实图像,第三列为经过模糊处理后的伪造图像,云朵图像为JPEG压缩图像。选取图4(a)的花朵图像以及图5中第三列伪造图像作为待检图像,3种算法的检测结果对比如图6所示。 图5 伪造图像及其来源示例 图6 3种算法检测结果对比 由图6(b)的检测结果可知,文献[15]算法分析了羽化半径与边缘像素点之间的关系,通过寻找满足这种关系的边缘像素点从而找到羽化痕迹。虽然对图6(a)中花朵图像检测有效,但是对于云朵图像和人像图像检测失效。 由图6(c)的检测结果可知,文献[20]算法对图像的多个异常特征进行分析时,对压缩后的图片检测能力差。虽然对图6(a)中人像图像检测效果优于所提算法,但是花朵图像存在漏检、误检现象,云朵图像检测错误。 由图6(d)检测结果可以看出,所提算法均能检测出图像异常边缘。对图6(a)中花朵图像检测效果最好,云朵图像和人像图像虽然能检测出部分异常边缘,但仍然丢失了部分异常边缘,如云朵左边的小部分边缘和人的身子边缘。这是因为对于目标与背景纹理差异较小时,待检图像的边缘特征就不显著。但是相比较前面两种算法,所提算法可以同时检测模糊、羽化处理,同时JPEG压缩也可以检测。 选取CASIA2.0标准库中200幅图像作为测试数据,真实图像和篡改图像各100幅。图像的可信度分布如图7所示。 图7 图像可信度分布 图7中,图像可信度越接近1,该图像的可信度越高,被篡改的可能性越小;越接近0,该图像的可信度越低,被篡改的可能性越大。图像目标与背景之间的纹理差异不同,因而篡改边缘的提取以及可信度的评价也不同。对这200幅图像做统计发现,绝大多数篡改图像可信度在0.2以下,多数真实图像可信度较高在0.7以上。 为了使篡改区域与原图兼容,图像异常边缘篡改检测及可信度评价算法先在伪造区域与原图衔接处进行平滑处理,改变了图像固有的边缘特性。然后通过弱化篡改区域边缘,增强真实区域边缘,分析对比处理前后的图像边缘,定位图像异常边缘。最后计算每个边缘点的可信度确定图像的可信度。实验结果表明,当篡改图像边缘经过羽化、模糊等平滑处理后,所提算法能较好地检测出异常边缘,并给出待检图像的可信度评价。1.4 寻找异常边缘痕迹
1.5 图像可信度评价
2 实验结果和分析
2.1 图像异常边缘分析
2.2 不同算法的检测效果对比
2.3 图像可信度评价
3 结语