<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>CEUR Workshop Proceedings</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.18287/1613-0073-2016-1638-304-312</article-id>
      <title-group>
        <article-title>COPY-MOVE DETECTION ALGORITHM BASED ON LOCAL DERIVATIVE PATTERNS</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>N.I. Evdokimova</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>A.V. Kuznetsov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Image Processing Systems Institute - Branch of the Federal Scientific Research Centre “Crystallography and Photonics” of Russian Academy of Sciences</institution>
          ,
          <addr-line>Samara</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Samara National Research University</institution>
          ,
          <addr-line>Samara</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2016</year>
      </pub-date>
      <volume>1638</volume>
      <fpage>304</fpage>
      <lpage>312</lpage>
      <abstract>
        <p>Copy-move forgery is one of most frequently used types of image forgery. During copy-move process a fragment of the image is copied and pasted to another location of the same image to hide some important area of the image. The purpose of copy-move forgery detection algorithm is to identify duplicated areas in the image. This method is based on the calculating features in a sliding or an overlapping window. In this paper, the copy-move detection algorithm using local derivative pattern is proposed. Experimental results show high detection accuracy when the proposed solution is used. Distinctive characteristics of the local derivative pattern based features are robustness to distortions of the duplicated area and low computational complexity.</p>
      </abstract>
      <kwd-group>
        <kwd>copy-move</kwd>
        <kwd>forgery</kwd>
        <kwd>local derivative pattern</kwd>
        <kwd>local binary pattern</kwd>
        <kwd>hash value</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        At present, digital images and videos are the most common instruments of
information transfer. For example, they are used to confirm an event in mass media. Wide
software availability has led to the fact that the process of changing images becomes
very simple. In the last 10-15 years, scientists developed algorithms of artificial
forgery detection in digital images to provide data security [
        <xref ref-type="bibr" rid="ref1 ref2 ref3">1-3</xref>
        ]. These algorithms make
possible to find image area modifications and define forgery characteristics made by
criminals.
      </p>
      <p>Embedding copy-move fragments is one of most frequently used methods of image
forgery because its easy use. The process of embedding consists of three consecutive
stages: copying of an image fragment, distortion of this fragment and pasting it in
another area of the same image that has to be hidden. Despite the large number of
existing solutions, many of them are not computationally efficient. That is the task of
development of copy-move detection algorithms with high accuracy and low
computational complexity is challenging.</p>
      <p>This paper is organized as follows. The first section provides basic information about
local binary pattern and local derivative pattern. The second section is dedicated to
the copy-move forgery detection algorithm description. The third section contains the
experimental results carried out using the set of images with copy-move forgery.
2
2.1</p>
    </sec>
    <sec id="sec-2">
      <title>Local Patterns</title>
      <sec id="sec-2-1">
        <title>Local Binary Pattern</title>
        <p>
          The idea of local binary pattern (LBP) belongs to Wang [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ]. In the original LBP
variant, a 3  3 window is used. Eight neighborhood point values around a pixel are
compared with central point value. Depending on the comparison result, the central pixel
is labeled as 8-bit number. The process of LBP code calculation is presented in Fig. 1.
(1)
(2)
The image can be formally represented as an intensity function of the pixel f (x, y) .
LBP-code is computed for every pixel using pixel values from circular neighborhood
fi  f (xi , yi ), i  1, P , where P is a number of equidistant neighbors of the central
pixel located on a circle of radius R (Fig. 2) as follows:
        </p>
        <p>N 1
LBP(N, R)   I1( fi  f0 )  2i ,</p>
        <p>i0
where I1 is a predicate defined as follows:</p>
        <p>
          0, m  0
I1(m)  
1, m  0
.
Also it should be noted that the LBP method is very effective because of its low
computational complexity. The main disadvantage of this type of pattern is its sensitivity
to noise distortions [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ].
2.2
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Local Derivative Pattern</title>
        <p>
          In fact, LBP code is a result of applying the first-order derivative of the neighborhood
of the center pixel as shown in (1). For a more informative description of the image
the operator LDP was proposed in [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. This operator allows encoding the information
obtained as a result of high-order derivatives calculation. n-order derivative along
various directions that are used in this method are calculated using binary encoding
function.
        </p>
        <p>The first-order derivatives along 0,45,90 and 135 directions are denoted as
f  (x0 , y0 ) , where   0,45,90,135 . The first-order derivatives at ( x0 , y0 )
position can be written as follows:
f0 (x0 , y0 )  f0  f 4 ,
f90 (x0 , y0 )  f0  f 2 ,
f 45 (x0 , y0 )  f0  f3 ,
f135 (x0 , y0 )  f0  f1.</p>
        <p>The second-order directional LDP along the  direction at ( x0 , y0 ) is defined as
follows:
LDP2 (x0 , y0 )  I 2 f  (x0 , y0 ), f  (x1, y1),</p>
        <p>I 2 f  (x0 , y0 ), f  (x2 , y2 ),
...</p>
        <p>I 2 f  (x0 , y0 ), f  (x8 , y8 ),
where I 2 is a predicate defined as follows:</p>
        <p>0, m  n  0
I 2 (m, n)  
1, m  n  0</p>
        <p>Finally, the second-order LDP is defined as the concatenation of the four 8-bit
directional LDPs:
LDP 2 (x, y)  {LDP2 (x, y) |   0,45,90,135}.</p>
        <p>
          As it can be seen from the equations above, LDP operator assigns a code to each pixel
of the image by comparing two derivatives along the same direction for two adjacent
pixels. Then obtained codes are concatenated into a single sequence of 32 bits.
Equations derivatives along  direction are performed using 16 primitive patterns [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] (see
Fig. 3). These patterns characterize distinctive spatial relationships in the local area.
(3)
(4)
(5)
(6)
Unlike LBP, the second-order LDP allows to encode the change of derivative value
along a fixed direction. This change represents a characteristic of a local image area.
a-1)
b-1)
c-1)
d-1)
a-2)
b-2)
c-2)
d-2)
a-3)
b-3)
c-3)
d-3)
a-4)
b-4)
c-4)
d-4)
When applying the pattern a-1 (Fig. 3a.) by superposition of  to f 0 , both directional
derivatives increase monotonically as shown in Fig. 4(d-1). Thus, the primitive
pattern corresponds to the value of ‘0’. Similarly, applying the patterns a-2, a-3 and a-4
(Fig. 3a.) by superposition of  to f 0 corresponds to the cases shown in Fig. 4(b-1),
Fig. 4(d-1) and Fig. 4(a-2), correspondingly. As a result, the following three bits of
directional LDP are calculated as ‘101’. We then repeat the above procedure with the
same four patterns but now using superposition of  to f 0 . According to this we get
a bit sequence ‘0100’ for the last four bits. As a result, the code ‘01010100’ is formed
for directional LDP along   0 . In the same way, the codes of the primitive
patterns shown in Fig. 3b-3d are formed along   45,90,135 directions,
correspondingly. Finally, we get the following 32-bit code:
ILmDagPe2P(rfo0c)essin0g1,0G10e1o0in0f0o0rm1a0ti1c1s1a1n1d1I0n1fo0rm00a0ti1o1n0S0e0c1ur1it0y, Evdokimova NI. et al…
that is generated by concatenation of the four 8-bit LDP along   0,45,90,135
directions in accordance with (6).
        </p>
        <p>a-1) a-2)
b-1) b-2)
c-1) c-2)
d-1) d-2)</p>
        <p>Fig. 4. Types of local transitions used for encoding primitive patterns of LDP
Calculation of the n-order derivatives along directions   0,45,90,135 at the f 0
position provides n-order directional LDP that are defined as follows:
LDPn x0 , y0   I 2  fn1 x0 , y0 , fn1 x1, y1 ,</p>
        <p>I 2  fn1 x0 , y0 , fn1 x2 , y2 ,
...</p>
        <p>I 2  fn1 x0 , y0 , fn1 x8 , y8 ,
where fn1(x0 , y0 ) is the (n-1)-order derivative along the  direction at x0 , y0  . It
represents the change of (n-1)-order gradient and provides additional information
about the local neighborhood. Finally, the n-order LDP is determined by the
following expression:
LDP n (x, y)  {LDPn (x, y) |  0,45,90,135}.</p>
        <p>
          Thus, n-order LDP is also based on derivatives along the four directions. High-order
local derivative patterns allow to describe local neighborhood in a more detailed way
than first-order local derivative pattern that is used in LBP. However, they become
more sensitive to noise with derivative order increase. In the paper [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], the authors
proposed that the LDP sensitivity to noise increases when the order n  4 . Given this
constraint, we will use only second- and third-order LDP.
        </p>
        <p>The advantages of LDP to LBP can be summarized as follows:
─ LBP is not able to provide a detailed description of the image features. n-order
LDP allows forming a more detailed description of the image local area using
(n1)-order directional derivatives.
─ LBP describes the relationship between the central pixel and its neighbors. LDP
allows encoding various spatial relationships in the local area of the image and
therefore represents more information about spatial features.
(7)
(8)</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Copy-move Detection Algorithm</title>
      <p>
        Most of existing solutions [
        <xref ref-type="bibr" rid="ref1 ref7">1,7</xref>
        ] use features extraction in overlapping blocks of an
image and then nearest features search is applied. This approach definitely leads to
missing duplicates increase due to overlapping blocks analysis.
      </p>
      <p>
        In this paper we use the algorithm proposed in the papers of Kuznetsov AV,
Myasnikov VV and Glumov NI [
        <xref ref-type="bibr" rid="ref10 ref8 ref9">8-10</xref>
        ]. The algorithm consists of the following main steps:
1. Calculation of the values of local pattern codes (LBP or LDP) using the sliding the
sliding window of the size 5  5 . The values are put in the code matrix.
2. Hash values calculation [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] based on the code matrix data using the sliding
window.
3. Putting hash values into the hash value matrix.
4. Construction hash values histogram.
5. Analysis of the hash value histogram. Hash values frequency exceeding ‘1’ are
searched in the histogram.
6. Output binary image generation which shows the places of potential duplicates.
The hash function of an image fragment is defined as a transform that puts each value
of the code matrix in correspondence with a non-negative integer value (hash value)
[
        <xref ref-type="bibr" rid="ref10 ref8 ref9">8-10</xref>
        ]. The histogram of hash values stores hash values frequency appearance in the
image. The frequency value characterizes potential copy-move forgery regions.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Experiments</title>
      <p>The experiments were carried out on a desktop PC with Intel Core i5-3470 processor
and 8 GB RAM using MATLAB R2014a software.</p>
      <p>Ten gray-scale digital images with dimensions 512  512 were chosen as the objects
of experiments. The authors developed a copy-move generation procedure which
enables to add distortions and control their parameters (linear contrast enhancement
and Gaussian noise).</p>
      <p>We used F1_Score value as a quality measure. It combines detection accuracy value
and false positive and false negative errors to estimate the quality of the proposed
solution. F1_Score is defined as follows:
F1 </p>
      <p>2  tp
2  tp  fp  fn
.
(9)
The results of experiments that were carried out on the set of generated images are
showed in Table 1 and Table 2.</p>
      <sec id="sec-4-1">
        <title>Linear Contrast</title>
      </sec>
      <sec id="sec-4-2">
        <title>Gaussian Noise</title>
      </sec>
      <sec id="sec-4-3">
        <title>Linear Contrast</title>
      </sec>
      <sec id="sec-4-4">
        <title>Gaussian Noise</title>
        <p>5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>During the described research the algorithm that based on LDP was developed. It
allows to detect distorted copy-move forgeries in digital images. Due to the specifics
of local patterns, the algorithm has low computational complexity so it can be used to
analyze large images (e.g. remote sensing data). Research of copy-move forgery
detection with geometric distortions and compression is not presented in this study and
will be done further. We also plan to compare the quality of the proposed copy-move
forgery detection algorithm with existing solutions based on the features calculation
in future works.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgements</title>
      <p>This work was supported by Samara National Research University State contract
№2014/198 (project code 2298) and the Russian Foundation for Basic Research
(RFBR) grant № 16-37-00056 мол_а.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Christlein</surname>
            <given-names>V</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riess</surname>
            <given-names>C</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jordan</surname>
            <given-names>J</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Angelopoulou</surname>
            <given-names>E.</given-names>
          </string-name>
          <article-title>An evaluation of popular copy-move forgery detection approaches</article-title>
          .
          <source>IEEE Trans. Inf. Forensic Secur</source>
          ,
          <year>2012</year>
          ;
          <volume>7</volume>
          (
          <issue>6</issue>
          ):
          <fpage>1841</fpage>
          -
          <lpage>1854</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Popescu</surname>
            <given-names>A</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Farid</surname>
            <given-names>H</given-names>
          </string-name>
          .
          <article-title>Exposing digital forgeries by detecting duplicated image regions</article-title>
          . URL: http://www.ists.dartmouth.edu/library/102.pdf
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Fridrich</surname>
            <given-names>J</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Soukal</surname>
            <given-names>D</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lukas</surname>
            <given-names>J</given-names>
          </string-name>
          .
          <article-title>Detection of copy-move forgery in digital images</article-title>
          . URL: http://www.ws.binghamton.edu/fridrich/Research/copymove.pdf
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Wang</surname>
            <given-names>L</given-names>
          </string-name>
          ,
          <string-name>
            <surname>He D-C.</surname>
          </string-name>
          <article-title>Texture classification using texture spectrum</article-title>
          .
          <source>Pattern Recognition</source>
          ,
          <year>1990</year>
          ;
          <volume>23</volume>
          (
          <issue>8</issue>
          ):
          <fpage>905</fpage>
          -
          <lpage>910</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Ren</surname>
            <given-names>J</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jiang</surname>
            <given-names>X</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yuan</surname>
            <given-names>J</given-names>
          </string-name>
          .
          <article-title>Noise-Resistant Local Binary Pattern With an Embedded ErrorCorrection Mechanism</article-title>
          .
          <source>IEEE Trans. Im. Proc.</source>
          ,
          <year>2013</year>
          ;
          <volume>22</volume>
          (
          <issue>10</issue>
          ):
          <fpage>4049</fpage>
          -
          <lpage>4060</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Zhang</surname>
            <given-names>B</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gao</surname>
            <given-names>Y</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhao</surname>
            <given-names>S</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Liu</surname>
            <given-names>J</given-names>
          </string-name>
          .
          <article-title>Local derivative pattern versus local binary pattern: face recognition with high-order local pattern descriptor</article-title>
          .
          <source>IEEE Trans. Im. Proc.</source>
          ,
          <year>2010</year>
          ;
          <volume>19</volume>
          (
          <issue>2</issue>
          ):
          <fpage>533</fpage>
          -
          <lpage>544</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Kuznetsov</surname>
            <given-names>AV</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Myasnikov</surname>
            <given-names>VV</given-names>
          </string-name>
          .
          <article-title>A copy-move detection algorithm based on binary gradient contours</article-title>
          .
          <source>Computer Optics</source>
          ,
          <year>2016</year>
          ;
          <volume>40</volume>
          (
          <issue>2</issue>
          ):
          <fpage>284</fpage>
          -
          <lpage>293</lpage>
          . DOI:
          <volume>10</volume>
          .18287/
          <fpage>2412</fpage>
          -6179-2016-40- 2-
          <fpage>284</fpage>
          -293.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Glumov</surname>
            <given-names>N</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kuznetsov</surname>
            <given-names>A</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Myasnikov</surname>
            <given-names>V.</given-names>
          </string-name>
          <article-title>The algorithm for copy-move detection on digital images</article-title>
          .
          <source>Computer Optics</source>
          ,
          <year>2013</year>
          ;
          <volume>37</volume>
          (
          <issue>3</issue>
          ):
          <fpage>360</fpage>
          -
          <lpage>367</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Kuznetsov</surname>
            <given-names>A</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Myasnikov</surname>
            <given-names>V.</given-names>
          </string-name>
          <article-title>A fast plain copy-move detection algorithm based on structural pattern and 2D Rabin-Karp rolling hash</article-title>
          . In:
          <string-name>
            <surname>Campilho</surname>
            <given-names>A</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kamel</surname>
            <given-names>M</given-names>
          </string-name>
          . (eds.)
          <source>ICIAR</source>
          <year>2014</year>
          , Springer, Heidelberg.
          <string-name>
            <surname>Part I. LNCS</surname>
          </string-name>
          ,
          <volume>8814</volume>
          :
          <fpage>461</fpage>
          -
          <lpage>468</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Kuznetsov</surname>
            <given-names>AV</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Myasnikov</surname>
            <given-names>VV</given-names>
          </string-name>
          .
          <article-title>Efficient linear local features based copy-move detection algorithm</article-title>
          .
          <source>Computer Optics</source>
          ,
          <year>2013</year>
          ;
          <volume>37</volume>
          (
          <issue>4</issue>
          ):
          <fpage>489</fpage>
          -
          <lpage>495</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>