デジタル画像改ざん検出に関する研究の現状
デジタル・フォレンジック研究会 副会長
立命館大学 情報理工学部
上原 哲太郎立命館大学大学院 情報理工学研究科
Songpon Teerakanok
デジタル・フォレンジック・コミュニティ2019 in 関西（2019/02/19）

画像の改ざんが極めて容易に• Photoshopの「コンテンツに応じた塗り」「パッチツール」「スポット修正」など• https://helpx.adobe.com/jp/photoshop/usi
ng/content-aware-patch-move.html• https://helpx.adobe.com/jp/photoshop/usi
ng/content-aware-fill.html2次のような改ざんが問題に消去

複製
置換

Gajanan K.Birajdar Vijay H.Mankar Digital image forgery detection using passive techniques: A survey3残念ながら学術界でも学術論文ではねつ造・剽窃は許されないが単なる「加工」は許容される場合もあるので判定はより難しい毎日新聞2018年1月22日
4我々の問題意識• このような写真が刑事事件捜査や裁判の場に出てきても、気づくことは困難• 自動的に改ざんの可能性を検出する技術やツールの開発が今後重要ではないか？
• 一般にBlind Image Forgery Detection
Passive Image Forgery Detectionと呼ばれる技術について調査
5

先行したサーベイ研究• Hany Farid:
Image Forgery Detection – A survey.

IEEE Signal Processing Magazine, 26(2):16-25, 2009.

• Gajanan K.Birajdara, Vijay H.Mankarb:
Digital image forgery detection using
passive techniques: A survey.

Digital Investigation, Vol.10, Issue 3, pp. 226-245, 2013.

• この2本のサーベイ論文を起点に技術を比較• 本講演は一部は既発表だが未発表内容を含む• S.Teerakanok, T.Uehara: Digital Media
Tampering Detection Techniques: An Overview,IEEE COMPSAC2017など
6画像改ざんの大まかな分類• Active Image Forgery Detection• あらかじめ電子透かしや署名を埋める（今回は扱わない）• Blind Image Forgery Detection• 改ざんされた画像のみから改ざん検出• 複数画像合成 or 単一画像内での改ざん• 複数画像合成の方がより容易• 元画像データ or 印刷物など再加工のみ• 後者は一般にはかなり困難

7

どうやって改ざんを発見するか？
• Photoshopの「コンテンツに応じた塗り」
1.修正で特徴量が変化する
2.複製がある8

改ざん検出の基本戦略• 改ざんの結果「他とは違う」ことを検出• 修正部分は他の画像からの合成？
• 特徴量がいろいろと違うはず• 修正部分は面的にJPEG再圧縮される？
• 改ざん部分を面的に検出しやすい• 修正部分と周囲の間に補完処理が入る？
• 改ざん部分が面的に検出しやすい• 改ざんの際に「コピペ」することを検出• 同一画像が複数画面内に現れることを検索

9

JPEGにおける離散コサイン変換• カラーの時はRGB→YCBCR変換• 画像を8x8のマクロブロックに分割• 各ブロックを離散コサイン変換• 縦横とも画像を波の重ね合わせで表現• 量子化処理した後、高周波成分を切り捨て
低周波成分

高周波成分

10

Media Qualityパラメータ≒
圧縮率が違うことを検出• 例えばH.Faridの”JPEG Ghost”
圧縮率が違う部分が画像処理で浮かび上がる

H. Farid, ”Exposing digital forgeries from JPEG ghosts,” IEEE Trans.
Inf. Forensics Secur., vol. 4, no. 1, 2009, pp. 154-160.

11圧縮率の違いから何が分かるか？

人が見れば分かるが…
12

Error Level Analysis（From Wikipedia)• 画像をある圧縮率で再圧縮して引き算
13ELAは量子化ノイズを浮かび上がらせる

圧縮率が高いとノイズは消えやすい
高画質のところはノイズが残る
14

カメラのカラーフィルタ• 撮像素子は1つの点は1つの色しか認識していない（カラーフィルタに依存）• フィルタはColor Filter Array(CFA)と呼ばれ機種によって異なることがある• CFAを推定する研究

A. Swaminathan, M. Wu, and K. J. R. Liu, Nonintrusive component forensics of visual sensors using output images,
IEEE Trans. Inf. Forensics and Secur., vol. 2, no. 1, 200715

補完処理がパターンを生む
CFAの差やマクロブロックのアラインのずれ、JPEG処理プログラムの細かなアルゴリズム差…
Original Tampered Image

Detection Result

Source: CASIA TIDE V2.0

Different patterns

16我々はこれらを組み合わせる研究
SuspectedImage
Perform detection usingJPEG’s Quantization Noise,
Re-Interpolation••

Creating of a Principal Vector (P) :

DDDI

QDI

Q

Var (DI)

Var (DQ)

Create Principal Vector

2D-Cross ProductDetection Map(output/ result)

P=(())

17うまくいく例

A Comparison between enhanced detection result（right）and non-enhanced results（left）

18これもうまくいった

Source：CASIA TIDE V2.0

Note.
I = Interpolation based detection technique
Q = JPEG’s Quantization & Compression noise based techniques
N = Image Noise Estimation technique19失敗例もある

Source：CASIA TIDE V2.0

Note.
I = Interpolation based detection technique
Q = JPEG’s Quantization & Compression noise based techniques
N = Image Noise Estimation technique

FAILED
20

「コピペ」の検出の課題• Copy&Move Forgery (CMF)• 単なるデータ一致では済まない• 切り取り・拡大縮小・回転・変形等が組み合わされるため単純比較できない• 計算量がどうしても多い• 誤検出がそれなりに発生する• 同一パターンの繰り返し画像は大変• 例：レンガのカベ

21

我々が行ったサーベイ• モデル化TRANSFORMATIONADJUSTMENTS

copy

paste
underlying tampering processes

Original ImageCMF Tampered Image22

処理を分類• 前処理• 特徴点検出• 特徴量測定• 一致判定• 誤検出除去• 可視化• 結果の強調Input(Digital Image)
Preprocessing

Keypoint detection(optional)

Feature Extraction
Matching
False matches Removal
Localization(Visualization)
Results Quality Enhancement/
Optimization (optional)

Output(Detection results)

23特徴量算出だけでも大量の研究
Feature Extraction(methods classification)

Transformation-based
Techniques

Local Binary
Pattern (LBP)-based
Techniques

Hashinge.g.,Frequency

WaveletPolare.g.,

e.g.,

e.g.,

- FT/FFT
- FMT
- DCT

- DWT
- SWT

- Polar Cosine
Transform (PCT)- Polar Coordinate
Transform- Polar Complex
Exponential
Transform(PCET)

e.g.,
- LBP

- Coherency
Sensitive
Hashing(CSH)- LocalitySensitive
Hashing(LSH)

Color/Intensity-based
Techniques- CenterSymmetric
LBP(CSLBP)- SVD
coefficientof LBP

ETC.

e.g.,e.g.,- Color Feature- Auto Color Correlogram- Color moment- Local contrast- Weber Local Descriptor(WLD)- Multi-Level Dense Descriptor(MLDD)- Gray level cooccurrence
matrix (GLCM)- Halftoning-based Block
Truncation
Coding (HBTC)- Locality Preserving Projection(LPP)- HGP-2 descriptor

Keypoint-based
Techniques

SIFTbased

ETC.

e.g.,

e.g.,
- SIFT
OpponentSI
FT- MirrorSIFT- Binarized
SIFT- ASIFT- SURF- KAZE- MiniEigen

Histogram-based
Techniques

e.g.,- Histogram ofOriented
Gradient (HOG)- Histogram ofOriented
Gabor Magnitude(HOGM)

Statistical moments& Moment
Invariantse.g.,- Zernike moments- PCET moments- Hu’s moment
invariants- Exponent moments

24特徴点検出と特徴量算出(Keypoint detection and Feature extraction)• コーナー検出：角となる点を探す• Harrisのコーナー検出法• Laplacian of Gaussian (LoG)
Difference of Gaussian (DoG)• 不要な特徴点を削除• 特徴点を基準に特徴量を算出• 特徴量の対応を探すことによりCMFの痕跡を探す
25

SURFの例

26

27

特徴量の算出法
Feature Extraction• 変形（移動・回転・拡大縮小）の検出• 極コサイン変換（Polar Cosine Transform）• Fourier-Mellin変換• 高速Fourier変換（FFT）• 定常ウェーブレット変換（SWT）• 離散コサイン変換（DCT）• ハッシュ値の算出• 「似たような画像は似た値になる」
ハッシュ関数を用いて特徴量を算出
N.Krawetz: Perceptual Hash (Ave. Hashなど）
X.Bi: Coherency Sensitive Hashなど
28Perceptual Hash
• Average Hash

• 画像を8bitのグレイスケール化• 8x8画像に圧縮し、明るさの平均値を得る• 8x8領域が平均より明るいか暗いかの64bit値• Perceptive Hash

• 8x8グレー画像をDCTにかけたもの

00001101…
29

特徴量の算出法（続）• Local Binary Pattern (LBP)• He, Wangらによる画像の繰り返しパターンを検出するためのアルゴリズム• 各点の8近傍点との類似度を8つの0,1で表してパターン化し特徴量とする• 単独では用いられないが他との組み合わせで特徴点マッチングに使われることがある

30

SIFT

（Scale-Invariant Feature Transform）• British Columbia U. David Loweが2004年に論文化• 2段階の処理• 特徴点（≒コーナー点）検出• スケール処理、特徴量算出•特徴点を探すため、Difference of Gaussian （DoG）を利用• 特徴点を絞り込み処理• 特徴量記述• 特徴点の周りの点の特徴から向きを算出• 特徴点の周りの点やブロックの勾配から128個の値からなる特徴量を算出

31

Difference of Gaussian（DoG）• 特徴点検出にはLoGが有効であることは知られていた（Linderburg, 94）が計算コストが高い• それをDoGに置き換えることで高速化

32

SURF

（Speeded-Up Robust Features）• SIFTの遅さを補う提案
Bay, H., Tuytelaars, T. and Van
Gool, Lらによる（2006)• DoGの代わりにBox Filterで近似• 精度が落ちる

33

我々の手法• MohanaiahらによるGLCMを活用
Gray-Level Co-Occurrence Matrix

34

GLCMをさらに活用して…
• GLCMを特徴点の周り4点について積算• この値にさらに2つの特徴量を得る• Shijinらによるコントラストに基づく特徴量• 特徴量の周囲の点と特徴点との明るさの差を64個のビンに分けた場合のヒストグラム• これらから特徴量を得て比較する

35

36

37

現状の結果• SURFとSIFTの中間程度の精度をSURFの3倍、SIFTの2.5分の1の時間で38

ほかの特徴量• ヒストグラムに基づく特徴量• SIFTにおける特徴点の「方向」決定など• Leeらによる
histogram of oriented gradient (HOG),
hist. of oriented Gabor magnitude（HOGM）.

• 色や輝度に基づく特徴量• 統計的な積率（モーメント）に基づくもの• そのほか39残念ながら決定打はまだない• SIFT, SURFという2つの特徴点検出
アルゴリズムが比較的性能が良いがFalse positiveが避けられない• 我々はSURFより少し遅いがSIFT程度の精度が出る手法を提案中• CMFの候補が出ても現状ではまだ人の判定が必要で自動化は遠いのでまだまだ研究が必要
40