相机溯源之传统方法(PRNU提取)

照相模型

噪声可以分为固定的噪声(Fixed Pattern Noise, FPN)和图像非均匀响应噪声(Photo-Response Nonuniformity Noise, PRNU)。我们提取PRNU,并取其高频部分。
相机溯源之传统方法(PRNU提取)
对于传感器处理过程,建立模型如下:
yij=fij(xij+ηij)+cij+ϵij y_{ij}=f_{ij}(x_{ij}+η_{ij})+c_{ij}+\epsilon_{ij} 其中,xijx_{ij}为原始光照图像,ηijη_{ij}为散粒噪声,cijc_{ij}为暗电流,ϵij\epsilon_{ij}为随机噪声,yijy_{ij}为传感器输出。

由于在传感器之后还存在许多线性和非线性的图像处理过程,因此最终得到的图像模型为:
pij=P(yij,N(yij),i,j) p_{ij} =P(y_{ij}, N(y_{ij}),i,j) 其中,N(yij)N(y_{ij})表示非线性处理过程。

PNU提取算法

由于无法获得直接传感器处理后的原始数据,因此提取的噪声模板为近似的PNU。提取近似PUN采用将获得的图片减去滤波后的图片。即:
n(k)=p(k)F(p(k)) \bm{n}^{(k)}=\bm{p}^{(k)}-F(\bm{p}^{(k)}) 在进行图像残差与噪声模板配对时,计算两者的相关系数,若相关系数大于阈值tt,则认为两者是出自同一相机,否则认为不是。相关系数计算公式为:
ρc(p)=corr(n,Pc)=(nn)(PcPc)nn PcPc \rho_c(p)=corr(\bm n, \bm{P}_c)=\frac{(\bm n-\bm{\overline{n}})\cdot(\bm{P}_c-\bm{\overline P}_c)}{||\bm n-\bm{\overline{n}}||\ ||\bm{P}_c-\bm{\overline P}_c||} 其中,n\bm n为单幅测试图像的残差,Pc\bm P_c为多幅图像综合获得的噪声模板。

算法采用的滤波方法为:
(1)进行四级小波变换
采用的小波为the 8-tap Daubechies QMF。获得的结果以h(i,j)h(i,j)代表水平分量,v(i,j)v(i,j)代表垂直分量,d(i,j)d(i,j)代表对角线分量。

(2)估计局部方差
取大小为W×WW\times W的方块,记为NN。共进行四次操作,且W{3,5,7,9}W\in \{3,5,7,9\}。每一次,对不同的WW计算获得的局部方差为:
σ^W2(i,j)=max(0,1W2(i,j)Nh2(i,j)σ02), (i,j)J \hat{\sigma}_W^2(i,j)=max(0, \frac{1}{W^2}\sum_{(i,j)\in N}h^2(i,j)-\sigma_0^2), \ (i,j)\in J 最后获得的方差为:
σ^2(i,j)=min(σ^32(i,j),σ^52(i,j),σ^72(i,j),σ^92(i,j),), (i,j)J \hat{\sigma}^2(i,j)= min( \hat{\sigma}_3^2(i,j),\hat{\sigma}_5^2(i,j),\hat{\sigma}_7^2(i,j),\hat{\sigma}_9^2(i,j),), \ (i,j)\in J
(3)进行维纳滤波
维纳滤波公式为:
hden(i,j)=h(i,j)σ^2(i,j)σ^2(i,j)+σ02h_{den}(i,j)=h(i,j)\frac{ \hat{\sigma}^2(i,j)}{ \hat{\sigma}^2(i,j)+\sigma_0^2}
(4)对每一维度的小波系数和每个颜色通道重复过程(1)-(3)。

σ0\sigma_0为5。

阈值评估方法

ρcc(i),i=1,...,N\rho_c^{c'}(i),i=1,...,NNN=300组图片的相关系数序列。其中,测试图像来自相机cc,噪声模板图像来自相机cc'。使用广义高斯模型来对其分布进行估计。模型公式为:
f(x;α,β,μ)=12αΓ(1/β)e(xμα)βf(x;\alpha ,\beta,\mu)=\frac{1}{2\alpha \Gamma (1/\beta)}e^{-(\frac{|x-\mu|}{\alpha})^\beta}其中:
μ^=1Ni=1Nρ(i)\hat{\mu}=\frac{1}{N}\sum_{i=1}^N\rho(i) β^=G1(m^12/m^22)\hat{\beta}=G^{-1}(\hat m_1^2/\hat m_2^2) α^=m^1Γ(1/β^)Γ(2/β^)\hat \alpha=\hat m_1 \frac{\Gamma(1/\hat{\beta})}{\Gamma(2/\hat{\beta})}且:
m^1=1Ni=1Nρ(i)μ^\hat m_1=\frac{1}{N}\sum_{i=1}^N|\rho(i)-\hat{\mu}| m^2=1Ni=1Nρ(i)μ^2\hat m_2=\frac{1}{N}\sum_{i=1}^N|\rho(i)-\hat{\mu}|^2 G(x)=[Γ(2/x)]2Γ(1/x)Γ(3/x)G(x)=\frac{[\Gamma(2/x)]^2}{\Gamma(1/x)\Gamma(3/x)}其中,Γ(x)\Gamma(x)表示Gamma方程。
评判算法时有两个错误率:
· FRR False Rejection Rate
代表错误拒绝概率,即照片由该相机拍摄,但认定为非该相机拍摄。
· FAR False Acception Rate
代表错误接受概率,即照片不由该相机拍摄,但认定为该相机拍摄。

FRR的值为由c0c_0相机拍摄测试图像和c0c_0噪声模板的估计概率的累积密度函数。即:
FRR=Fc0c0(t)FRR=F_{c_0}^{c_0}(t)FAR的计算公式为:
FAR=1c=1,cc09Fc0c(t)FAR=1-\prod_{c=1, c\neq c_0}^9 F_{c_0}^{c}(t)由于认为FAR为更加重要的值,对FAR设置阈值,并通过该阈值反推获得阈值tt。即有:
1c=1,cc09Fc0c(t)αFAR1-\prod_{c=1, c\neq c_0}^9 F_{c_0}^{c}(t) \leq \alpha _{FAR}

其它知识点

  1. 平场矫正(Flat Fielding)
    矫正由噪声引起的图像不均匀性。矫正方法为先获得一系列噪声图像,再进行平均。对拍摄后图像减去这个平均噪声。公式为:
    x^ij=(yijcij)/f^ij\hat{x}_{ij}=(y_{ij}-c_{ij})/\hat{f}_{ij}其中:
    f^ij=kfij(k)1m×ni,j,kfij(k)\hat{f}_{ij}=\frac{\sum_kf_{ij}^{(k)}}{\frac{1}{m\times n}\sum_{i,j,k}f_{ij}^{(k)}}

参考文献

[1] J.Lukáˇs,J.Fridrich,andM.Goljan,“Digitalcameraidentificationfrom sensor pattern noise,” IEEE Trans. Inf. Forensics Security, vol. 1, no. 2, pp. 205–214, Jun. 2006.