• Aucun résultat trouvé

Camera Model Identification With The Use of Deep Convolutional Neural Networks

N/A
N/A
Protected

Academic year: 2022

Partager "Camera Model Identification With The Use of Deep Convolutional Neural Networks"

Copied!
20
0
0

Texte intégral

(1)

Camera Model Identification

With The Use of Deep Convolutional Neural Networks

Amel TUAMA

2,3

, Fr´ ed´ eric COMBY

2,3

, and Marc CHAUMONT

1,2,3

(1) University of Nˆımes, France

(2) University Montpellier, France (3) CNRS, Montpellier, France

November 30, 2016

IEEE International Workshop on Information Forensics and Security, NYU, Abu Dhabi, December 4-7, 2016.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 1 / 20

(2)

Camera Model Identification

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 2 / 20

(3)

Brand / Model / Device

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 3 / 20

(4)

Deadlocks; most of them are still not addressed...

Scalability in efficiency when nb of camera %, Treat the ”unknown” class,

Treat the mismatch phenomenon (generalization / overfitting), Take into account the variations in cameras setting,

Identify even after image manipulations,

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 4 / 20

(5)

The different families

Recent works onforgerydetection with CNNs:

B. Bayar and M. C. Stamm, ”A deep learning approach to universal image manipulation detection using a new convolutional layer,” in ACM IH&MMSec’16. Vigo, Galicia, Spain, 2016.

J. Chen, X. Kang, Y. Liu, and Z. Wang, ”Median filtering forensics based on convolutional neural networks,” IEEE Signal Processing Letters, vol. 22, no. 11, pp. 1849-1853, Nov 2015.

Work on camera model identification (...next year!):

L. Bondi, L. Baroffio, P. Bestagini, E. Delp, and S. Tubaro, ”A preliminary study on convolutional neural networks for camera model identification”, in IS&T Electronic Imaging, Media Watermarking, Security, and Forensics, Jan2017.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 5 / 20

(6)

Outline

1

Introduction

2

Our work

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 6 / 20

(7)

An experimental paper

What do we have look at in this paper?

2 classical CNNs + a designed CNNs,

Efficiency in function of the number of models (scalability), Learning time (complexity),

Potential of CNNs (possible improvement and comparison with another approach),

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 7 / 20

(8)

SmallNet

A SmallNet, a small Net designed, 3 convolutional layers.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 8 / 20

(9)

AlexNet

Winner of ImageNet competition in 2012, 5 convolutions.

Alex Krizhevsky, Ilya Sutskever, and Georey E. Hinton. ”Imagenet classication with deep convolutional neural networks,” in Advances in Neural Information Processing Systems 25, pages 1097-1105. Curran Associates Inc., 2012.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 9 / 20

(10)

GoogleNet

Winner of ImageNet competition in 2015, 22 convolutions.

Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott E.Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, and Andrew Rabinovich. ”Going deeper with convolutions,” in IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Boston, USA, June 7-12, 2015.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 10 / 20

(11)

Preliminaries observations:

Two classical CNNs + a small one, Requires GPU(s):

I

In our case a Nvidia GeForce GTX Titan X (≈ 1000-1500 dollars).

Lots of libraries for CNNs on GPU ;

I

In our case DIGITS.

Learning ≈ optimization of a function of million of parameters ;

I

In our case less than 2 days.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 11 / 20

(12)

Basic question:

Is it working?

Complexity (time)?

Efficiency compared to other approaches?

and then...

Is it scalable?

Can we do better?

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 12 / 20

(13)

Recalls on the main bricks: preliminary filter

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature maps 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature maps

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature maps 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature maps 13 x 13

Layer 5 16 kernels 5x5

pooling

Gaussian Gaussian Gaussian Gaussian

16 feature maps 4 x 4

F

(0)

= 1 12

−1 2 −2 2 −1

2 −6 8 −6 2

−2 8 −12 8 −2

2 −6 8 −6 2

−1 2 −2 2 −1

Gives an orientation for the CNNs convergence, and suppress the interference caused by image content.

We also tested a noise removing filter (used in the papers related to PRNU) but results were lower.

Yinlong Qian, Jing Dong, Wei Wang, and Tieniu Tan, ”Deep Learning for Steganalysis via Convolutional Neural Networks,” in Proceedings of SPIE Media Watermarking, Security, and Forensics 2015.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 13 / 20

(14)

Recalls on the main bricks: the layers in a Convolution Neural Network

image 256

256 F(0)

Kerrnel Filtered image 252

252

Layer 1 16 kernels

5x5 Label=0/1

16 feature maps 124 x 124 pooling

Gaussian

pooling

Layer 2 16 kernels

3x3 16 feature maps

61 x 61 Fully connected

layers

ReLU ReLU

Softmax

Convolutional layers Classification

128 neurons

128 neurons

Layer 3 16 kernels 3x3

16 feature maps 29 x 29

pooling pooling

Layer 4 16 kernels 3x3

16 feature maps 13 x 13

Layer 5 16 kernels

5x5 pooling

Gaussian Gaussian Gaussian Gaussian

16 feature maps 4 x 4

Inside one layer; successive steps:

a convolution step,

the application of an activation function, a pooling step,

a normalization step.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 14 / 20

(15)

Experimental protocol

Database

33 camera models:

I

27 from Dresden database,

I

6 from personal cameras, 1 model = only 1 device,

Images are cropped to 256×256 based on a regular paving, 80% of images for the training ; 20% of images for the test, From 9 000 to 64 000 images (256×256) per model,

→ Results are averaged, after running the procedure 5 times, with 5 different split of the database.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 15 / 20

(16)

Results of the 3 CNNs

12 models 14 models 33 models AlexNet (5 convolutions layers) 94.5 % 90.5% 83.5%

SmallNet (3 convolutions layers) 98.0 % 97.1% 91.9%

GoogleNet (27 convolutions layers) 99.0 % 98.0 % 94.5%

Table: Networks identification accuracy

Best results for GoogleNet; SmallNet is not so bad,

GoogleNet’s results are not so far from the state-of-the-art;

I

Note: All the Networks only use a portion of the image (256×256) for the identification...

GoogleNet scales well with the increase of cameras number,

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 16 / 20

(17)

Additional conclusions

Bigger networks or networks better tuned → better results, Scalability is not so bad,

Filter pre-processing allows better results (see paper) and probably a [easier/faster/better] convergence,

GoogleNet is 3 times longer ’to learn / to test’ compared to SmallNet, but it takes only 16 hours for 12 cameras (≈ 420 000 images),

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 17 / 20

(18)

What about other approaches?

As an example, for the 14 first camera models:

PRNU accuracy = 97.5% (images at full resolution),

GoogleNet accuracy = 98% (less than 1% of the full resolution:

I

Portion of 256×256 from images ∈ {3000 × 2000, ..., 4000 × 3000})

’Features + SVM [Amel et al. 2016]’ accuracy = 98.75% (images at full resolution),

So, why using CNNs?

A. Tuama , F. Comby, M. Chaumont, ”Camera Model Identification Based Machine Learning Approach With High Order Statistics Features”, in EUSIPCO’2016, 24th European Signal Processing Conference 2016, Budapest, Hungary, August 29 - September 2, 2016, pp 1183-1187.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 18 / 20

(19)

Easy way to improve the efficiency

Transfer learning (= pre-learning),

Batch Normalization and better activation function, Virtual database augmentation,

Use of an ”unknown” class,

Pool a set of vote (1 vote per portion of the image), Use a bigger Net (ResNet; 152 layers).

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 19 / 20

(20)

Conclusion

Even a small Net (as SmallNet) can give good results, GoogleNet can give results close to the State-of-the-Art,

CNNs is probably the best way to do camera model identification; just use a big Net and the new tricks.

Future: Continue exploring CNNs but look at deadlocks...:

Scalability in efficiency when nb of cameras %, Treat the ”unknown” class,

Treat the mismatch phenomenon (generalization / overfitting), Take into account the variations in cameras setting,

Identify even after image manipulations.

Marc CHAUMONT Camera Model Identification with CNN November 30, 2016 20 / 20

Références

Documents relatifs

– Convolution layers & Pooling layers + global architecture – Training algorithm + Dropout Regularization.. • Useful

The target output in visual recognition ranges from image-level labels (object/image classification) [23], lo- cation and extent of objects in the form of bounding boxes

Moreover, PRNU can be also used for camera model identification as proposed in [9] based on the assumption that the fingerprint obtained from images in the TIFF or JPEG format

“Echo State Queueing Networks: a combination of Reservoir Computing and Random Neural Networks”, S. Rubino, in Probability in the Engineering and Informational

In this paper, we evaluate the efficiency of using CNNs for source camera model identification based on deep learning and convolutional neural networks.. The contribution repre- sents

[4] introduced a camera model identification method using 28 features related to statistical moments and correlations of the linear pattern.. Gloe

Goljan, “Digital Camera Identification from Sensor Pattern Noise”, IEEE Transactions on Information Forensics and Security,

Camera model identification approach based on machine learning is used to classify the camera based on discriminant features extracted from images3. In our approach we extract