Image Splicing Detection With Constrained Convolutional Neural Network - Lee, Yang Yang (2019)
An improved approach of image forgery detection, specifically image splicing detection with Constrained Convolutional Neural Network (CNN) is proposed in this research. Image splicing is a common method in image forgery and is often being misused for bad motives such as false idea propaganda. Nowadays there are many related efforts in detecting spliced images, but most of them are either feature-specific or complicated algorithms. Constrained CNN is basically a Deep Learning CNN model with its first layer weights being constrained so that it only extracts splicing manipulation features instead of object features. The constrained layer enables the CNN model to learn the required features directly from ubiquitous image input and then performs classification. In this research, the open source datasets, i.e. CASIA, CASIA 2, CUISDE, NIST, and Carvalho image splicing datasets were used for training and benchmarking the proposed CNN model. With the datasets prepared and assembled, the proposed CNN model will have a series of experiments to test for the various parameters as well as to investigate other non-parametric factors such as the data variation itself. Then its hyperparameters will be tuned for optimization. With the trained and tuned CNN model, a cross-database classification evaluation is carried out. The result shows that the CNN can classify image batch with 96.31% in accuracy and 96.3% in F1-Score, but the scores only apply to CASIA 2 dataset. An optimized CNN is shown to be biased to its own train dataset. Hence it is purposely retrained with a merged balanced dataset. With slight adjustment on the proposed CNN, it is found to be able to generalize the overall performance with the highest accuracy of 94.3% in Carvalho dataset and minimum 75.56% in CASIA dataset. Then the proposed CNN is recasted for block-wise splicing localization operation. It performed well in splicing localization at high accuracy in Carvalho dataset with MCC mark of 0.3582. It is able to discriminate the authentic and splicing border in a wide range of images in the cross-database test. It is shown that CNN with constrained convolution algorithm can be used as a general image splicing detection task.