Spliced image classification and tampered region localization using local directional pattern
Автор: Surbhi Sharma, Umesh Ghanekar
Журнал: International Journal of Image, Graphics and Signal Processing @ijigsp
Статья в выпуске: 3 vol.11, 2019 года.
Бесплатный доступ
In this paper the authors have proposed a spliced image detection algorithm based on Local Directional Pattern (LDP). The output of many splicing detection techniques is either to classify spliced image from authentic images or to localize the spliced region. But the proposed algorithm has ability to classify and to localize the spliced region. First, the original image (RGB color space) is converted to Ycbcr color space. The histogram of LDP of chrominance component of suspect image is used in classification. Whereas for localization of spliced region, the chrominance component of input image is divide into overlapping blocks; then, the LDP of each block is calculated. The standard deviation of each block is used as clue to visualize the spliced region. The experimental results are calculated in terms of accuracy, specificity (true negative tare), sensitivity (true positive rate) and error rate and proves effectiveness of the proposed algorithm. The accuracy of the proposed algorithm is 98.55 %. The algorithm is also robust against post splicing image processing operation such as gaussian blur, additive white gaussian noise, JPEG compression and scaling however, previous techniques have not considered these experimental environment.
Passive image tampering detection, Splicing detection, Local Directional Pattern, SVM
Короткий адрес: https://sciup.org/15016040
IDR: 15016040 | DOI: 10.5815/ijigsp.2019.03.05
Текст научной статьи Spliced image classification and tampered region localization using local directional pattern
Published Online March 2019 in MECS
The application areas of digital images have been increasing rapidly because of availability of low cost capturing devices, user friendly image editing soft-ware and internet facilities. But due to these, images can be changed when transferred electronically. This makes the digital forensics as necessity when images has been used as evidence in court rooms, research, surveillance etc. The authentication detection algorithms for images can be divided into two types 1: active detection algorithms 2) passive detection algorithms. In active detection algorithms, a digital code is inserted into image and the verification is done by comparing retrieved code and true code of the image. Example of such techniques are watermarking and steganography. In today's world, commercial cameras are not have such procedure that can insert code in the images during acquition process. Such facilility is available in a very few specialized cameras. So, such a problem is encountered by passive image detection algorithms. image formation. This problem can be resolved by passive image tampering detection techniques. Passive image tampering techniques have been used in digital image forensics because they inspects these images in the absence of embedded code. When an image is captured it has uniform standard patterns or statistics in term of motion blur, CFA interpolation, reflections, JPEG fingerprints and lightening intensity which become inconsistent when image undergo any type of tampering. In today’s world different types of image tampering techniques have been used like splicing, copy move, resampling and retouching.
This paper is focused on classifying spliced images (SIs) from authentic images (AIs) and localization of the spliced region. Splicing is a forgery in which one part of image is pasted to another image to hide an object or to make an unrealistic image. The authors have developed the approach using local direction patterns (LDP). Figure 1 has shown the some authentic and spliced images from dataset [25].
Contribution:
The output of splicing detection techniques are of two types: either to classify spliced image from authentic images or to localize the spliced region. Most of the spliced detection techniques are focussed on the classification of spliced images from original images. But the proposed algorithm has ability to classify as well as can also localize the spliced region.
-
(1) The proposed approach can classify spliced images from authentic images. The approach is stable against gaussian blur, scaling and JPEG compression.
-
(2) The approach can also localized the spliced region.
-
(3) Many splicing detection techniques only considered
the splicing detection of human faces. They work only on images which have human faces. The proposed algorithm also resolve this issue.
-
(4) There are many algorithms that are designed for a specific image format. But the proposed algorithm can be applicable to any image format.
The rest of the proposed article is organized as follows. In section П, a brief explanation of the previous approaches have been discussed. The proposed algorithm is explained in Section Ш. After that, results of the proposed algorithm are discussed in section W, and the authors have drawn conclusion in the Section V




(a)






Fig.1. Example of authentic images are shown in (a) and example of spliced images are shown in (b).
(b)
-
II. Background
Splicing is a forgery in which copied and pasted regions are from the two different images. This is a basic manipulation step used in digital photomontage. These image have used in photography, research papers, news reports, scientific contest, and many more. The various techniques used in the splicing detection are discussed below and we classify them in four categories based on their proposed algorithms.
We may divide the splicing detection algorithms into following categories as shown in Figure 2.
-
(1) Estimation of illumination color: - It is very challenging or difficult to adjust illumination consistency in the spliced image. Because two different images captured at different places, times and cameras have different illuminations. So checking the authenticity of a digital image by using illumination inconsistencies is very effective.
The authors in [3] proposed an illuminant color model based on physics concepts for detecting the illumination difference in the different regions of image. The authors have generate illumination map by using distance measure and require user intervention to estimate the results. In [4], the researchers have explored the local illumination estimation to estimate illuminant color of object region to detect the region splicing. They have combined five statistics based algorithms to estimate color. In another work, [5] proposed a new technique to detect splicing by concentrating on people faces. They have explored statistical gray edge method and inverse intensity-chromaticity color space based method to estimate illumination.
-
(2) Inconsistency in noise level: During image acquition process some noise are added into each image due to photons strikes the sensors. This concept is used by many researchers to detect splicing.
In [6] a splicing detection method is proposed using local noise inconsistencies to detect small spliced areas. The approach has used the high pass wavelet coefficients and used simple region merging algorithm to segment the image into several homogenous sub-regions on homogeneity condition. In [7], an effective approach is proposed by dividing the image into non-overlapping blocks and clustering the similar blocks. To improve the accuracy, the authors have estimate local noise variances of segmented regions the image and k-means clustering algorithm. In another work [8], an automated technique is proposed based on relative consistency of noise parameters. They have used quad-tree decomposition to detect sliced images. An approach is proposed in [9] have used projection kurtosis concentration phenomenon to detect region splicing. All the above mentioned techniques based on noise discrepancies at single scale while in [10], the authors have considered the benefits of multi scales for the detection of spliced image forgery. The approach has segmented the image into super-pixels at multiple scales and applied noise level function on every scale. In next step, Optimal Parameter Combination Searching algorithm is used to highlight the spliced region.
-
(3) Statistical properties based techniques: Under this category the inconsistency in natural physics-based parameters among different subparts of an image like natural scene property and imaging device properties are used to detect spliced regions of an image.
In [11], camera characteristics are used to identify the consistency in an image. The image is segmented and camera response function (CRF) is calculated using geometric invariants for each area. In next step, features are computed using CRF cross fitting scores and area intensity and used as input to SVM-based classifier. An approach based on machine learning algorithm and human visual system (HVS) model is discussed in [12]. There is high correlation between spliced edges and the edge sharpness is used as visual cues of splicing. But in presence of blur, edge sharpness cues used in the method failed. In another approach [13], explored an approach using camera’s intrinsic lens radial distortion. The approach has used line-based calibration to measures distortions in lens radial of the image. In [14], the authors have used inconsistency in motion blur to detect splicing. The disadvantage of the method is that method cannot differentiate out-of-focus blur and motion.
-
(4) Other techniques: In [15], chromatic channel has used to extract features. In next step, the image is divided into overlapping windows and LBP calculated for each window. After that 2 dimensional DCT applied to each LBP window and standard deviation is calculated corresponding to each window to make feature vector. In [16] researchers have applied multi-scale entropy filter on chrominance components (Cb and Cr) and Local Phase Quantization (LPQ) to the suspect images. The histogram of LPQ of the image is the required feature vector. In another work in [17] multi-block discrete cosine transform (MBDCT) and multiresolution LBP operator is used. The method also have used Kernel Principal Component Analysis (Kernal PCA) to reduce the dimensionality of the feature vector. The authors have used Markov features [18] extracted from both DCT and DWT domains to extract feature vector.
Many classifiers like SVM [15-18], KNN [19], Naïve Bayes [20], ANN [21] also has used to classify the given image as either authentic or spliced.

Fig.2. shows the categorization of image splicing detection algorithm
-
III. Proposed Algorithm
Many splicing detection algorithm has following four steps:
-
(1) Pre-processing: To enhance or highlight the changes arises due to splicing.
-
(2) Feature Extraction: To extract relevant feature that are best suitable to describe an spliced or authentic image
-
(3) Dimension reduction technique: Feature extracted from above step may have large data, so some dimension reduction technique is used to reduce the amount of data.
-
(4) Classifier: Many classifiers like SVM, ANN, Naive bayes and KNN have been used in classification purposes.
The proposed algorithm has two subparts. The goal of first part is to classify SIs from AIs and its block diagram is shown in Figure 3. If the output result of classifier is ‘spliced image’, then next step is to localize the spliced region. The procedure to localize the spliced region is explained in second part of this section and its block diagram is shown in Figure 5.
-
A. Distinguishing SIs from AIs.
-
(1) Conversion of RGB to YCbCr colour space model. According to literature studied, human visual system is sensitive to luminance component but not sensitive to chrominance component. So, it is very difficult to identified the spliced region in RGB colour space model, but some traces of spliced region can be visualize in chrominance component of YCbCr colour space model. Therefore, the input image is converted to YCbCr colour space according to the following equations:
Y = 0.299R + 0.578G + 0.114В (1)
Cb = 0.564(В - Y) (2)
Cr = 0.713(R - Y) (3)
Stage One
f

Fig.3. Block diagram of proposed algorithm (stage one)
■ -3 -35
-3 05
. -3 -35.
East (M0)
-3 55
-3 05
-3 -3-3
North East (M 1 )
-3 0 -3
-3 -3 -3
North (M 2 )
5 5
50-3
-3 -3-3
North West (M3)
■5 -3-S'
5 0-3
5 -3-3
West (M4)
-3 -3-3
50-3
5 5-3
South West (M5)
[
-3
-3
-3
-3
-3
11 -
-3
-3
]
South (M6) South East (M7)
(a)
200 |
150 |
100 |
50 |
12 |
5 |
40 |
38 |
40 |
1331 |
1731 |
171 |
451 |
X |
-709 |
-845 |
-925 |
-1205 |

LDP decimal value=56
Fig.4. Shows the procedure of LDP calculation (a) kirsch masks (b) an example for LDP calculation
The authors have extracted Cb channel for further procedures.
-
(2) Feature extraction using Local Directional Pattern (LDP): LDP [22] descriptor encodes the image texture into decimal code using the edge response of neighbouring pixels. It divides the image into small patches of size 3*3 and with the help of eight kirsch mask, calculate response of eight directional edges corresponds to central pixel. The mask has been shown in Figure 4. After applying these masks, eight response values are derived, each response value represents the edge significance for that particular direction. In the algorithm, the k most influenced directions have used to calculate LDP. Theses k values are assign value 1 and other bits are assign value equal to 0. After assigning bits, this 8 bit binary code is converted to decimal value which is the required LDP code.
LDPk = S7=o bfm - mk). 2; ,(4)
1,a > 0
b-(a) = {0,a < 0
H = EU Ec=i f(LDPk (r, c), i), f(a, i) = f1 a = 1(5)
{0 a ^ i
-
(3) SVM classifier , In this paper, we consider spliced image detection classification as a binary classification problem and used Support vector machines (SVM) [23-24]. SVM is a supervised learning algorithm that analyze data and used them in classification and regression analysis. A set of training examples, each belonging to one or the other of two class is used to build a model that assigns new examples to one category or the other. In the proposed algorithm the authors, have used the histogram of LDP map of each suspect image as input to the SVM classifier to determine either the “image is spliced” or “authentic”.
(a) (b)
Fig.5. Shows the detection results on authentic images. First column (a) is the set of authentic images. Second column (b) is showing the detection result of propose approach.
-
B. Localization of Spliced Region
The steps involved in the localization of spliced region are explained below and the respective block diagram is showing in Figure 5.
-
(1) RGB to YCbCr colour model transformation using equations (1)-(3), and extract chrominance component (Cb) for further processing.
-
(2) Divide the Cb component of image into non overlapping blocks of size w×w.
-
(3) Calculate LDP map for each block using eq (4) and replace theses LDP map values by their standard deviation.
-
(4) The spliced and authentic regions have different standard deviations and can be easily visualized.
-
IV. Experiment Simulation and Result Analysis
This section has discussed the setup used in the simulation and different parameters, matrices used during the experiment.
-
A. Experimental Setup
The authors have used Dell Inspiron 15, 5000 series having i5 core. The MATLAB 2014a is used in experiment. The framework used in the experiment to calculate the efficiency of the proposed technique is explained below:
-
(1) Distinguishing SIs from AIs: a) in presence of simple splicing b) in presence of Gaussian Blurring c) in presence of Scaling d) in presence of JPEG compression
-
(2) Localization of Spliced region: a) in presence of simple splicing b) in presence of Gaussian Blurring c) in presence of Scaling d) in presence of JPEG compression.
The value of different parameters used in the simulation are given as: b=48. The experiment is performed on datasets [24-25].

(a) (b)
Fig.6. Shows the detection results on authentic images. First column (a) is the set of spliced images. Second column (b) is showing the detection result of propose approach.
-
B. Results
The performance of the proposed algorithm using the SVM classifier is expressed by accuracy, specificity (true negative tare), sensitivity (true positive rate) and error rate. The expression for these matrices are mentioned below:
TP+TN
Accuracy =
J TP+TN+FP+FN
TP
Sensitivity =-----
TP+FN
TN
Specificity =-----
TN+FP
TP = number of correctly identified authentic images.
TN =number of correctly identified spliced images.
FP = number of incorrectly identified authentic images.
FN =number of incorrectly identified spliced images.
Figure 6 have shown the identified spliced region. Figure 6(a) is the authentic image, figure 6(b) is the respective detection output. The image in figure 6(b) has uniform pattern as it is not spliced. Figure 6(c) is a spliced image and figure 6(d) shows the respective detection output, it has two regions with different uniformity corresponding to spliced and authentic regions.
As we already mention that chrominance components of an image are more beneficial in splicing detection, to prove this we have conducted the proposed approach on different color components like R, G, B, Y, cb, cr and gray. Figure 7 is showing the effect of using different color space components in proposed approach on accuracy, specificity, selectivity and error rate. The experiment has proved the previous statements that with the use chrominance components, the same approach can get maximum accuracy.
The authors have used 5 fold experiment to detect the accuracy. Their respective accuracies are shown in Table 1. We have considered the
Table 2. Comparison of proposed algorithm with other techniques
Method |
Accuracy |
Localization/ Classification |
Ref. [18] |
94.19 |
No/Yes |
Ref.[19] |
97.26% |
Yes/Yes |
Ref.[20] |
97.15% |
No/Yes |
Ref.[21] |
91.28% |
No/Yes |
Proposed Method |
98.55 |
Yes/Yes |
Error Rate = 100 — Accuracy

Fig.7. Shows the effect of using different color space components in proposed approach
The authors have also compared the proposed algorithm with other known methods. Table 2 has shown the comparison of the proposed method in terms of accuracy, classification / localization capability of approach. From the Table 2 we can conclude that it has the highest accuracy among other mentioned techniques and also able to classify as well as localize the spliced region whereas other methods cannot do the both.
Most of the existing techniques have not considered the post splicing operations such as gaussian blur, awgn, JPEG compression and scaling. But it should be considered because these are global operations and after that spliced images looks more realistic. Additionally, due to these global operations the statistical properties looks more uniform in the spliced images.
The proposed approach is able to classify and localized the spliced region even in the presence of above mentioned images. The accuracy of the approach in
Table 1. shows the accuracy of 5 fold experimental results and the average accuracy
Table 3. Shows effect of gaussian blur on detection results
Method |
w=3, σ=0.5 |
w=3, σ=1 |
w=5, σ=0.5 |
w=5, σ=1 |
Accuracy |
94.20 |
93 |
99.52 |
98.28 |
Specificity |
86.74 |
83.97 |
98.89 |
96 |
Error Rate |
5.79 |
7 |
0.4 |
1.71 |
Table 4. Shows effect of awgn on detection results
Method |
SNR=30 dB |
SNR=25dB |
SNR=20 dB |
Accuracy |
98.96 |
98.42 |
98.20 |
Specificity |
95.47 |
95.21 |
94.58 |
Error Rate |
1.04 |
1.58 |
1.8 |
Table 5. Shows effect of JPEG Compression on detection results
JPEG Q=70 |
JPEG Q=80 |
JPEG Q=90 |
|
Accuracy |
97.89 |
98.20 |
98.07 |
Sensitivity |
94.26 |
97.16 |
96.88 |
error rate |
2.11 |
1.8 |
1.93 |
Table 6. Shows effect of scaling on detection results
[1.2, 1.2] |
[1.1, 1.1] |
[0.9, 0.9] |
[0.8, 0.8] |
|
Accuracy |
97.43 |
99.51 |
96.29 |
95.43 |
Specificity |
94.85 |
98.85 |
92.57 |
90.85 |
Error Rate |
2.5 |
0.49 |
3.71 |
4.5 |
-
V. Conclusion
The work represents a computationally efficient algorithm designed for image splicing detection even in presence of different complexities. The algorithm can classify spliced images from authentic images. The algorithm also localized the spliced region. The approach is has two subparts: in first subpart, SVM classifier is used to classify spliced images from authentic images using histogram of LDP of input image as features. If the output of first subpart is ‘spliced images’, then next step is to localize the forged region. The chrominance component of input image is divide into overlapping blocks and LDP is calculate for each block. The standard deviation image blocks are used as clue to visualize the forged region.
The experiment results proved that it has higher accuracy. The algorithm is also able to classify and localized in presence of gaussian blur, additive white gaussian noise, JPEG compression and scaling. The disadvantage of the algorithm is that it is not automatic. Human supervision is required during spliced area localization. The authors will try to overcome this disadvantage in next work.
Список литературы Spliced image classification and tampered region localization using local directional pattern
- G K Birajdar, V H Mankar, “Digital Image Forgery Detection Using Passive Techniques: A Survey”, Digital Investigation, vol.10, issue 3, pp 226-245, 2013
- M. Kumar, S. Srivastva, “Image forgery detection based on physics and pixels: a study”, Australian Journal of Forensic Sciences. DOI: 10.1080/00450618.2017.1356868(2018)
- C. Riess, E. Angelopoulou, “Scene Illumination as an Indicator of Image Manipulation”, Inf. Hiding, vol. 6387, pp. 66–80, 2010.
- Y. Fan, P. Carre, C. F. Maloigne, “Image Splicing Detection With Local Illumination Estimation”, ICIP 2015
- C. Riess , E. Angelopoulou, “Exposing Digital Image Forgeries By Illumination Color Classification”, IEEE Transactions On Information Forensics And Security, vol. 8, no. 7, pp. 1182 – 1194, July 2013
- X. Pan, X. Zhang, S. Lyu, “Exposing Image Forgery With Blind Noise Estimation”, Thirteenth ACM Multimedia Workshop On Multimedia And Security, pp. 15-20, 2012, DOI: 10.1145/2037252.2037256
- Xunyu Pan, Xing Zhang, SiweiLyu, “Exposing Image Forgery With Blind Noise Estimation”, IEEE International Conference on Computational Photography (ICCP), 2012.
- T, Julliand, V, Nozick, Hugues Talbot, “Automated Image Splicing Detection From Noise Estimation In Raw Images”, 6th International Conference On Imaging For Crime Prevention And Detection (ICDP-15), DOI: 10.1049/ic.2015.0111
- S.Lyu ,Xunyu Pan And Xing Zhang, “Exposing Region Splicing Forgeries With Blind Local Noise Estimation”, Springer, Int Jpournal of Computer Vision, vol. 110, issue 2, pp 202-221, 2014
- C.M. Pun, B. Liu, X. C. Yuan, “Multi-scale noise estimation for image splicing forgery detection”, Journal of Visual Communication Image Representation, Elsevier, vol. 38, pp. 195-206, July 2016.
- Y.F. Hs , S.F. Chang, “Image Splicing Detection Using Camera Response Function Consistency and Automatic Segmentation”, 2007 IEEE International Conference On Multimedia and Expo, China, DOI: 10.1109/ICME.2007.4284578
- Z.Qu, G. Qiu, J. Huang, “Detect Digital Image Splicing With Visual Cues”, LNCS, Springer, 2009.
- H. R. Chennamma, L. Rangarajan, “Image Splicing Detection Using Inherent Lens Radial Distortion”, International Journal Of Computer Science, 2010
- P. Kakar, N. Sudha, W. Ser, “Exposing Digital Image Forgeries By Detecting Discrepancies In Motion Blur,” IEEE Trans. Multimedia, vol. 13, no. 3, pp. 443–452, Jun. 2011.
- A.A Alahmadi, M. Hussain, A. Hatim , M. Ghulam M, B. George, “Splicing Image Forgery Detection Based On DCT And Local Binary Pattern”, 2013 IEEE Global Conference on Signal and Information Processing (Globalsip), DOI: 10.1109/GlobalSIP.2013.6736863
- S. Agarwal, S. Chand, “Image Forgery Detection Using Multi-Scale Entropy Filter And Local Phase Quantization”, International Journal of Image, Graphics and Signal Processing, 2015.
- Y Zhang, C. Zhao, Y. Pi, S. Li, Shilin W”, Image-Splicing Forgery Detection Based On Local Binary Patterns Of DCT Coefficients”, Security and Communication Networks, Published Online in Wiley Online Library, 2013.
- C. Li1, Q. Ma1, L. Xiao, M. Li, A. Zhang, “Image Splicing Detection Based On Markov Features In QDCT Domain”, LNCS, Springer, 2015.
- M. Hariri, F. Hakimi, “Image-Splicing Forgery Detection Based On Improved LBP and K-Nearest Neighbors Algorithm”, International Journal of Electronics Information & Planning, 2015.
- O. Muratov, D. T. Dang-Nguyen, G. Boato. F. G. B. D. Natale, “Saliency Detection As A Support For Image Forensics”, 5th International Symposium On Communications Control And Signal Processing(ISCCP), 2012
- Z. Zhang, G. Wang, Y. Bian, Z. Yu, “A Novel Model For Splicing Detection”, In IEEE 5th International Conference On Bio-Inspired Computing: Theories And Applications (Bic-Ta), 2010
- T. Jabid, M. H. Kabir and O. S. Chae, “Local Directional Pattern (LDP) for Face Recognition”, Proceeding in IEEE International Conference of Consumer Electronics. 2010.
- C. Cortes, V. Vapnik, “Support-vector networks”. Machine Learning. vol. 20 no.3, pp. 273–297, 1997.
- T. Gloe., R. Bohme, “The Dresden Image Database for Benchmarking Digital Image Forensics’, Proceedings in 25th Symposium On Applied Computing (ACM SAC).2:1585- 1591 (2010).
- Y. F. Hsu, S. F. Chang, “Detecting Image Splicing Using Geometry Invariants and Camera Characteristics Consistency”, International Conference on Multimedia and Expo (ICME), Toronto, Canada. (2006).