detecting digital forgeries using blind noise estimation

37
Detecting Digital Forgeries using Blind Noise Estimation September 29, ACM MM&Sec 2011 Buffalo, New York Xunyu Pan, Xing Zhang and Siwei Lyu Computer Science Department University at Albany, SUNY

Upload: shelley

Post on 23-Mar-2016

92 views

Category:

Documents


0 download

DESCRIPTION

Detecting Digital Forgeries using Blind Noise Estimation. Xunyu Pan, Xing Zhang and Siwei Lyu Computer Science Department University at Albany, SUNY. September 29, ACM MM&Sec 2011 Buffalo, New York. Outline. Motivation Related Works Detection Method Experimental Results - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Detecting Digital Forgeries using Blind Noise Estimation

Detecting Digital Forgeries using Blind Noise Estimation

September 29, ACM MM&Sec 2011Buffalo, New York

Xunyu Pan, Xing Zhang and Siwei LyuComputer Science Department

University at Albany, SUNY

Page 2: Detecting Digital Forgeries using Blind Noise Estimation

Outline

– Motivation

– Related Works

– Detection Method

– Experimental Results

– Discussion and Future Work

Page 3: Detecting Digital Forgeries using Blind Noise Estimation

Image Splicing

Credit: Liu Weiqiang PhotoPhotoshop

Page 4: Detecting Digital Forgeries using Blind Noise Estimation

Creation of Visual Effects

Page 5: Detecting Digital Forgeries using Blind Noise Estimation

Motivation• Image splicing and creation of visual effects are two

common manipulations used in image tampering, where noise is introduced to either conceal tampering traces or changing image contents

• The variance of noise in a authentic images is generally uniform distributed

• We propose a new method to effectively expose image forgery by detecting the noise variance differences between original and tampered parts of an image

Page 6: Detecting Digital Forgeries using Blind Noise Estimation

An Example of Image Splicing Forgery

Original images

Tampered image

Page 7: Detecting Digital Forgeries using Blind Noise Estimation

Outline

– Motivation

– Related Works

– Detection Method

– Experimental Result

– Discussion and future work

Page 8: Detecting Digital Forgeries using Blind Noise Estimation

Previous Works• Determine the existence of forgery by extracting camera

sensor fingerprint (e.g. PRNU) from training images and further detecting image forgery by supervised learning (SVM)– Knowledge of specific camera models [Lukas, 06], [Sutcu, 07] and

[Filler, 08]– No extent and location of the forgery [Gou, 07]

• Locate image forgery using noise level difference – Knowledge of the kurtosis of the adding noise and the original

image [Popescu, 04]– Inefficient blocks merging algorithm[Mahdian, 09]

Page 9: Detecting Digital Forgeries using Blind Noise Estimation

Outline

– Motivation

– Related Works

– Detection Method

– Experimental Results

– Discussion and Future Work

Page 10: Detecting Digital Forgeries using Blind Noise Estimation

Pipeline of the Proposed Method

Page 11: Detecting Digital Forgeries using Blind Noise Estimation

Image Block Segmentation

• Image segmentation for local noise estimation– Larger block are more stable and accurate– Smaller block represents local noise more

precisely

• We segment image into 64 × 64 pixel non-overlapping blocks in the first round detection

Page 12: Detecting Digital Forgeries using Blind Noise Estimation

Image Block Segmentation

Means and standard deviations of estimated noise on 100 image blocks of various sizes by adding noise Std 25

16×16

32×32

64×64

128×128

256×256

Page 13: Detecting Digital Forgeries using Blind Noise Estimation

Pipeline of the Proposed Method

Page 14: Detecting Digital Forgeries using Blind Noise Estimation

Image Kurtosis

• Image kurtosis is the measure of the "peakedness" of the probability distribution of pixels:

• Suppose a white Gaussian noise of zero mean and unknown variance is added to the image to obtain an image , denote as:

• The kurtosis of can be computed as:y

2n

yx

xy

3)1(

32

22

2

ny

n

xy

44

Page 15: Detecting Digital Forgeries using Blind Noise Estimation

Pipeline of Noise Estimation

Page 16: Detecting Digital Forgeries using Blind Noise Estimation

The Objective Function

• Assuming the kurtosis is scale invariant, we can estimate the kurtosis of and the variance of noise by minimizing the objective function:

2

2 2

2

2

22

2,

2 3

1

3argminˆ,ˆN

iy

ny

n

xnx i

i

nx

x

Page 17: Detecting Digital Forgeries using Blind Noise Estimation

Major Steps for the Noise Estimation

• STEP 1: Conversion from image domain to DCT domain

• STEP 2: Compute the variance and kurtosis for each response image

• STEP 3: Noise estimation by the optimization of the objective function (MATLAB fminsearch function)

Page 18: Detecting Digital Forgeries using Blind Noise Estimation

Pipeline of the Proposed Method

Page 19: Detecting Digital Forgeries using Blind Noise Estimation

K-means Clustering

• Classify all non-overlapping image blocks into k (k=2) clusters based on their noise level– (1) Starting with randomly selected k means– (2) Assign each block to the cluster with the

closest mean– (3) Compute a new mean for each cluster– (4) Repeat (2) and (3) until the stopping criteria is

satisfied

Page 20: Detecting Digital Forgeries using Blind Noise Estimation

Initial Detection

• Image blocks are classified using K-means clustering algorithm– Assume the tampered region is smaller than

authentic region. The cluster with fewer blocks is treated as forgery

– False positives - complex textures: tree, grass, … Need a second round refined detection

Page 21: Detecting Digital Forgeries using Blind Noise Estimation

Refined Detection

• Segment the detected suspicious region into 32 × 32 non-overlapping image blocks

• Estimate noise level for each 32 × 32 blocks

• keep all two clusters if their means are close enough

264

232

2 8.02.0

Page 22: Detecting Digital Forgeries using Blind Noise Estimation

Outline

– Motivation

– Related Works

– Detection Method

– Experimental Results

– Discussion and future Work

Page 23: Detecting Digital Forgeries using Blind Noise Estimation

Quantitative Testing Results

• We define two quantitative measure of performance based on the detection accuracy and false positives

– Block detection accuracy (BDA)

– Block false positive (BFP)

Page 24: Detecting Digital Forgeries using Blind Noise Estimation

BDA and BFP

~

|||~|

BDA

|~||~|BFP

Page 25: Detecting Digital Forgeries using Blind Noise Estimation

Quantitative Experiments

• One uncompressed color image from Kodak dataset

• A randomly located 192 × 192 image block is tampered with Gaussian noise of various noise levels

• Generate 100 images for each noise level in the range of [1, 10] (total 1000 forged images)

Page 26: Detecting Digital Forgeries using Blind Noise Estimation

Quantitative Experiments

Averages of BDA/BFP for 100 tampered image at each noise level σ = [1, 10 ]

Page 27: Detecting Digital Forgeries using Blind Noise Estimation

Qualitative Experiments

Detection resultImage tampered with noise σ=5

Page 28: Detecting Digital Forgeries using Blind Noise Estimation

Qualitative Experiments

Detection resultImage tampered with noise σ=10

Page 29: Detecting Digital Forgeries using Blind Noise Estimation

Qualitative Experiments

Detection resultImage tampered with noise σ=15

Page 30: Detecting Digital Forgeries using Blind Noise Estimation

Qualitative Experiments (cont.)

Detection result of our method on image splicing forgery

Page 31: Detecting Digital Forgeries using Blind Noise Estimation

Qualitative Experiments (cont.)

Detection result of our method on rain/snow appearance created using image noise

Page 32: Detecting Digital Forgeries using Blind Noise Estimation

Qualitative Testing Results (cont.)

Detection result of our method on ground glass appearance created using image noise

Page 33: Detecting Digital Forgeries using Blind Noise Estimation

Outline

– Motivation

– Related Works

– Detection Method

– Experimental Results

– Discussion and Future work

Page 34: Detecting Digital Forgeries using Blind Noise Estimation

Summary

• In this work, we propose a novel method for image forgery detection based on the clustering of image blocks with different noise variances

• Experimental results with credible forgeries show the efficacy of our method

Page 35: Detecting Digital Forgeries using Blind Noise Estimation

Discussion• Advantages

– Reliably expose image splicing or forgeries created for special visual effects

– No prior knowledge of the imaging device or of kurtosis of the original image

• Limitations– Non-overlapping can not locate the extent of tampered region

precisely– Failure estimation in one block leads to missing tampered region

Page 36: Detecting Digital Forgeries using Blind Noise Estimation

Future Work

• Detect noise inconsistency due to different JPEG compression qualities

• Improve the detection accuracy and efficacy by noise estimation on local overlapping image blocks using fast estimation method

Page 37: Detecting Digital Forgeries using Blind Noise Estimation

Thank You!