主权项 |
1.一种针对双重JPEG压缩图像的篡改检测方法,其特征在于,具体步骤为:步骤1、检测双重JPEG压缩:步骤1.1、估计检测图像的质量因子Q<sub>2</sub>:步骤1.2、计算失真矩阵d<sub>Q</sub>(x,y):首先把检测图像转化为灰度图像,并用质量因子从30到Q<sub>2</sub>-1对灰度检测图像进行第一次重压缩,得到第一次重压缩后的图像,计算检测图像与第一次压缩后的图像之间的失真矩阵:d<sub>Q</sub>(x,y)=f<sup>2</sup>(x,y)-f<sub>Q</sub><sup>2</sup>(x,y),其中,f(x,y)表示被检测图像矩阵,f<sub>Q</sub>(x,y)代表第一次重压缩后的图像矩阵,Q∈[30,(Q<sub>2</sub>-1)],x,y表示像素坐标;步骤1.3、计算失真度S<sub>E</sub>(Q):<maths num="0001"><![CDATA[<math><mrow><msub><mi>S</mi><mi>E</mi></msub><mrow><mo>(</mo><mi>Q</mi><mo>)</mo></mrow><mo>=</mo><munderover><mi>Σ</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>d</mi><mi>Q</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>,</mo></mrow></math>]]></maths>其中,检测图像大小为M×N,d<sub>Q</sub>(i,j)表示矩阵d<sub>Q</sub>(x,y)中的元素;步骤1.4、定义一个半径为r的邻域,在此领域内计算k(Q):<maths num="0002"><![CDATA[<math><mrow><mi>k</mi><mrow><mo>(</mo><mi>Q</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><munderover><mi>Σ</mi><mrow><mi>i</mi><mo>=</mo><mo>-</mo><mi>r</mi></mrow><mi>r</mi></munderover><msub><mi>S</mi><mi>E</mi></msub><mrow><mo>(</mo><mi>Q</mi><mo>+</mo><mi>i</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>S</mi><mi>E</mi></msub><mrow><mo>(</mo><mi>Q</mi><mo>)</mo></mrow></mrow><mrow><mn>2</mn><mo>×</mo><mi>r</mi><mo>×</mo><mrow><mo>(</mo><msub><mi>S</mi><mi>E</mi></msub><mrow><mo>(</mo><mi>Q</mi><mo>)</mo></mrow><mo>+</mo><mi>ϵ</mi><mo>)</mo></mrow></mrow></mfrac><mo>,</mo></mrow></math>]]></maths>其中,ε是一个很小的数,令:k<sub>max</sub>=max(k(Q)),Q′=arg(max(k(Q))),判断是否k<sub>max</sub>>t<sub>1</sub>,t<sub>1</sub>是由实验得到的阈值,若是,则令Q<sub>1</sub>=Q′,转入步骤2;若否,则判定待检图像没有经过JPEG双重压缩,认为检测图像是可信的,检测终止;步骤2、用质量因子Q<sub>1</sub>对检测图像进行第二次重压缩,计算质量因子为Q<sub>1</sub>时的失真矩阵<img file="FDA00002410847000021.GIF" wi="195" he="67" /><maths num="0003"><![CDATA[<math><mrow><msub><mi>d</mi><msub><mi>Q</mi><mn>1</mn></msub></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><mo>[</mo><mi>f</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>f</mi><msub><mi>Q</mi><mn>1</mn></msub></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><msup><mo>]</mo><mn>2</mn></msup><mo>,</mo></mrow></math>]]></maths>其中,<img file="FDA00002410847000023.GIF" wi="167" he="58" />为第二次重压缩后的图像矩阵;步骤3、对<img file="FDA00002410847000024.GIF" wi="169" he="57" />进行滤波器大小为b×b的均值滤波,得到最终的失真矩阵D(x,y):<maths num="0004"><![CDATA[<math><mrow><mi>D</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><munderover><mi>Σ</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>b</mi><mo>-</mo><mn>1</mn></mrow></munderover><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>b</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>d</mi><msub><mi>Q</mi><mn>1</mn></msub></msub><mrow><mo>(</mo><mi>x</mi><mo>+</mo><mi>i</mi><mo>,</mo><mi>y</mi><mo>+</mo><mi>j</mi><mo>)</mo></mrow></mrow></math>]]></maths>其中,<img file="FDA00002410847000026.GIF" wi="298" he="48" />表示矩阵<img file="FDA00002410847000027.GIF" wi="168" he="57" />中的元素;步骤4、用K-means聚类来分析和判断失真矩阵D(x,y)中值的具体情况:[Idx,C]=Kmeans(D,2);其中,Kmeans(D,2)表示把D中的值分为两类,分别用C<sub>1</sub>和C<sub>2</sub>表示,其中,C<sub>1</sub>表示值小的聚类,C<sub>2</sub>表示值大的聚类;步骤5、通过计算度量标准S<sub>D</sub>进行篡改检测:S<sub>D</sub>=C<sub>2</sub><sup>2</sup>×(C<sub>2</sub>-C<sub>1</sub>),t<sub>2</sub>是由实验得到的阈值,若S<sub>D</sub>>t<sub>2</sub>,判定测试图像是篡改得到的JPEG合成图像,否则判定测试图像是可信的;步骤6、图像篡改定位。 |