<!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 />
    <article-meta>
      <title-group>
        <article-title>The Method of Extracting the Contours of Objects from Satellite Images</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Avramenko Yuriy</string-name>
          <email>avramenko@icc.ru</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fedorov Roman</string-name>
          <email>fedorov@icc.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Irkutsk scientific center of Siberian Branch of Russian Academy of Sciences</institution>
          ,
          <addr-line>Irkutsk 664033</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Matrosov Institute for System Dynamics and Control Theory of Siberian Branch of Russian Academy of Sciences</institution>
          ,
          <addr-line>Irkutsk 664033</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Earth remote sensing data is used to solve many practical problems, for example, for digitizing satellite images. This problem can be divided into three stages, in this case let it be the classification of objects, the extraction of contours and creation of a vector layer. Neural networks, the support vector method, the K-means method and others can be used to classify objects. Good results on the extraction of edges are given by the Canny edge detector, Harris operator, Hough transform, and other methods. Creation of a vector layer is not trivial problem. In this article, we propose a method for extracting the contours of objects from satellite images. The idea of the proposed method is to combine a neural network and an interpreter of the SOQL language. The neural network allows finding quickly possible positions of the object on textural and spectral features and the SOQL interpreter extract contours of the object by structural description and create vector layer.</p>
      </abstract>
      <kwd-group>
        <kwd>WPS</kwd>
        <kwd>Pattern Recognition</kwd>
        <kwd>Convolution Neural Networks</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>One of actual problems is the digitization of satellite images. It helps to solve the
tasks of territorial management, such as resource monitoring, mapping, development
planning and others. The problem digitization of satellite images can be divided into
three stages: the classification of objects, the extraction of contours and creation of a
vector layer. The first two of them are solved using well-known approaches. Neural
networks, the support vector method, the K-means method and others can be used to
classify objects. Good results on the extraction of edges are given by the Canny edge
detector, Harris operator, Hough transform, and other methods. In this article we will
consider the third stage of creating a vector layer, in particular the search for the
locations of the buildings. It can be described as a problem of search of the closed
contours on a set of the extracted edges. There are two sub problems at this stage,
processing gaps between edges, determining the shape of the contour. The quality of the
___________________________________
Copyright © 2019 for this paper by its authors. Use permitted under Creative
Commons License Attribution 4.0 International (CC BY 4.0).
result depends on many factors, such as noise, distortion, brightness swings,
overlapping objects, sensor position, etc.</p>
      <p>
        In this paper, we propose combining two approaches to solve the problem of
creating a vector layer. The first approach is a neural network; the second is an interpreter
of the SOQL language [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Further consider the description of the SOQL interpreter.
The SOQL interpreter searches for objects in accordance with a user's query which
defines structural features. User's query is written in a language which has Prolog-like
syntax. A query consists of descriptions of the straight line segments (boundaries),
their geometric properties such as length and orientation. Each straight line segment is
estimated by a membership function [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Object position is estimated by the energy
function [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Object search is performed as logical inference.
2
      </p>
      <p>
        Proposed method
The sequence of steps for creating a vector layer by the proposed method is as
follows:
1) preparing a training set which includes examples of object to search with any
shape;
2) training of a neural network;
3) segmentation based on textural and spectral features (use of a neural network);
4) searching for exact positions of objects (using the SOQL interpreter).
Let's consider each step in more detail. The first step is preparing training set for CNN
in any GIS based on existing vector layer, which stored in SHAPE file. [
        <xref ref-type="bibr" rid="ref4 ref5">4, 5</xref>
        ]. For
example SHAPE file can obtain from OSM service. While applying existing vector
layers it is necessary to combine a vector file with corresponding image. The main
difficulty in solving this task is the displacement of the vector layer relative to the
image. This is due to different shooting angles or changes in objects over time. Figure
1 shows examples of errors. There are several ways to solve this problem. In this
work, manual marking was used.
      </p>
      <p>The next step is training the neural network. We used a pre-trained neural network
of known architecture U-net for image segmentation. Pre-trained models require less
training time, since the weighting coefficients are already defined. In the learning
process, they are adjusted for user data, which is useful when there is little training
set. The training set has been made from 720 – images, the size
128 x 128 pixels, that show in figure 2. In figure 3 and 4 shows the original image and
the result of segmentation (step 3).</p>
      <p>Figure 4 shows that the boundaries of objects are distorted. To fix this, consider
step 4 – definition of positions of objects. In the step 4 the SOQL interpreter is used to
refine the position. The SOQL interpreter searches for objects in accordance with a
user's query which looks like: rectangle(A,B,C,D) :- line(A,B), line(B,C), line(C,D),
line(D,A), dist (A,B)&gt;25, dist(A,B)&lt;40, dist(A,B)=dist(C,D), angle(A,B,C)=90,
parallel(A,B,C,D). It is suitable for finding a rectangle. Which have length 40 and weight
25. The SOQL interpreter is based on logical inference. The logical inference
machine carries out search of objects positions that satisfying the user's query, starting
from key points. The user's query may be generated automatically based on vector
layers. The key points are the corners of buildings; in order to find them Harris corner
detector is used. The result is shown in Figure 5.</p>
      <p>
        The method was tested on images of the Irkutsk city. The use of the interpreter in
combination with the neural network allows create vector layer. Figure 6 shows the
result of finding objects by the proposed method.
The proposed method is effective with a small set of training data, allows you to
process blurred images such as noise, distortion, brightness swings, overlapping objects,
sensor position, etc. It can also extract the contours of objects of a given shape.
Unlike other methods [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], the shape of objects is set using the description in the SOQL
language, this gives the advantage of fine-tuning the method.
      </p>
      <p>This work was supported in part by the Russian Federal Property Fund (grant
18-0700758-a, 17-57-44006-mong-a, 17-47-380007-r), the Integration program of SB RAS
No.37, the integration program of the Irkutsk Scientific Center of the SB RAS and
Shared Equipment Centers of ISDCT SB RAS.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Bychkov</surname>
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rugnikov</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fedorov</surname>
            <given-names>R.</given-names>
          </string-name>
          , AvramenkoYu.:
          <article-title>Object Identification on Raster Images by User Query</article-title>
          .
          <source>3rd Russian-Pacific Conference on Computer Technology and Applications</source>
          (RPC)
          <year>2018</year>
          . IEEE.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Zadeh</surname>
            <given-names>L. Fuzzy</given-names>
          </string-name>
          <string-name>
            <surname>Sets</surname>
          </string-name>
          .
          <source>Information and Control</source>
          , Vol.
          <volume>8</volume>
          , pp.
          <fpage>338</fpage>
          -
          <lpage>353</lpage>
          ,
          <year>1965</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Kass</surname>
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Snakes</surname>
            : Active contour models / M. Kass,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Witkin</surname>
          </string-name>
          , D. Terzopoulos //
          <source>International Journal of Computer Vision</source>
          , Vol.
          <volume>1</volume>
          (
          <issue>4</issue>
          ), pp.
          <fpage>321</fpage>
          -
          <lpage>331</lpage>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>4. ARCMAP Homepage http://desktop.arcgis.com/en/arcmap/ last accessed 2016/11/21.</mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>5. QGIS Homepage https://qgis.org/en/site/ last accessed 2016/11/21.</mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Douglas</surname>
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Peucker</surname>
            <given-names>T</given-names>
          </string-name>
          .
          <article-title>Algorithms for the reduction of the number of points required to represent a digitized line or its caricature</article-title>
          .
          <source>Cartographica: The International Journal for Geographic Information and Geovisualization</source>
          .
          <volume>10</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>112</fpage>
          -
          <lpage>122</lpage>
          ,
          <year>1973</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>