APPLICATION OF KOHONEN NEURAL NETWORKS TO SEARCH FOR REGIONS OF INTEREST IN THE DETECTION AND RECOGNITION OF OBJECTS

One of the most effective ways to improve accuracy and speed of recognition algorithms is to preliminary distinguish the regions of interest in the analyzed images. We studied a possibility of application of self-organizing maps and a Kohonen neural network for detection of regions of interest at a radar or satellite image of underlying surface. There is a high probability of finding an object of interest for further analysis in the found regions of interest. The definition of region of interest is necessary most of all to automate and speed up the process of search and recognition of objects of interest. The relevance is due to the increasing number of satellites. The study presents the process of modeling, analysis and comparison of the results of application of these methods for determination of regions of interest in recognition of images of aircraft against the background of underlying surface. It also describes the process of preliminary processing of input data. The study presents a general approach to construction and training of the Kohonen self-organizing map and neural network. Application of Kohonen maps and neural network makes it possible to decrease an amount of data analyzed by 15–100 times. It speeds up the process of detection and recognition of an object of interest. Application of the above algorithm reduces significantly the required number of training images for a convolutional network, which performs the final recognition. The reduction of a training sample occurs because the size of parts of an input image supplied to the convolutional network is bounded with the scale of an image and it is equal to the size of the largest detected object. Kohonen neural network showed itself more efficient in relation to this task, since it places cluster centers on the underlying surface rarely due to independence of weight of neurons on neighboring centers. These technical solutions could be used in the analysis of visual data from satellites, aircraft, and unmanned cars, in medicine, robotics, etc.


Introduction
At present, the low speed of image recognition is one of the main problems hampering the development of modern visual data processing systems.Increasing the speed of image recognition will lead to an increase in the performance of satellite and radar image analysis systems, medical images, data from robotic systems and unmanned vehicles, etc., having both technological and economic effects.
One of the ways to improve accuracy and speed of recognition algorithms is application of neural networks (NN).The most modern type of NN used in image recognition is the convolutional neural network (CNN), which got its name because of the presence of a convolution operation [1].The size of an object being recognized should be comparable to the size of objects in the training set for high-quality operation of a network of this type.Obviously, creation of a training set in which, in addition to the various search object types, there is also a variation in the scale of the object in the image, is extremely difficult.Training of such a network will take considerable time and computational resources.A number of errors in recognition will increase, and speed of an algorithm will be low.The algorithm presented in this paper allows us to reduce the number of data analyzed by convolutional NN when detecting objects in an image by 15-20 times and, accordingly, reduce the search time for necessary objects, increasing recognition accuracy and saving computational resources.This is achieved by using the network and or Kohonen map to determine regions of interest (ROIs) on the radar or satellite image of the underlying surface on the input image, in which the probability of detection of the desired object is high.This paper discusses the application of the developed algorithm for detecting and recognizing the type of aircraft (LA) on satellite images.

Literature review and problem statement
Today, there are a number of works [2][3][4][5], which investigated application of NN, a network (Kohonen neural network) and Kohonen self-organizing map (SOM) for image recognition.Some authors consider Kohonen networks and maps for preparation of input data with subsequent analysis by other NN, and others -for direct image recognition.Paper [2] presents the results of NТ simulation for image recognition.Image segmentation by Kohonen maps occurs first, and then analysis in a hybrid NN takes place.Kohonen maps served to reduce a training set for a hybrid NN and to speed up the analysis.Work [3] presents Kohonen network for recognition of color images.A significant disadvantage [2,3] is that an image for recognition is the entire image for classification and, the recognition will not occur if the scale of the required fragment will change in the input image.Paper [4] gives an algorithm to search a fragment in a series of color images using the Kohonen network.There are image fragments obtained by the «window», which passes through the analyzed image pixel by pixel, sequentially fed into the network for analysis.The size of the «window» corresponds to the size of the sought for fragment.Search for a fragment the size of 211×169 pixels in the image the size of 621×497 pixels lasted 122 seconds.There were 135219 histograms analyzed during this time.The time spent for analysis of one image does make it possible to apply the proposed algorithm for recognition of large amounts of data.In addition, the analysis of one image requires serious computational resources, because the algorithm divides an image into 135,219 fragments for analysis.Work [5] assesses effectiveness of application for classification of images of a hybrid network.Firstly, there goes the analysis by a Kohonen network, and then the data goes to a perceptron network.The work shows that the application of network configuration of such configuration give possibility to reduce computational complexity of algorithms used.We can reduce complexity, because the application of network configuration of such configuration reduces the required number of neurons by more than 2 times, which also makes it possible to reduce the classification error by 4-5 times.
Application of Kohonen network and Kohonen maps to highlight various characteristics of objects in images is of particular interest.Authors of work [6] used Kohonen maps to solve complex clustering problems with a large number of objects and to select objects with unusual characteristics among them.Authors of paper [7] used a Kohonen network to search for cluster centers by finding of the minimum Euclidean distance between points, which belong to a cluster.
The most modern type of NN used in image recognition is convolutional NN, which got its name because of the presence of a convolution operation.The essence of the convolution operation is that each image fragment is multiplied by a core of convolution by each element, and the result is summed up and written to the similar position of an output image.Then, the result goes to a subsampling layer and a fully connected neural network in the simplest case.A paper [8] presents a structure of a convolutional NN and its application for image recognition, and a paper [9] -for analysis of a video sequence.
Papers [10][11][12][13][14] describe development of the R-CNN (Region-based Convolutional Network) algorithm for detection of objects in images.Papers [10,11] describe the initial version of the R-CNN algorithm.The algorithm highlights about 2,000 regions in an input image.It scales each of regions using an affine transformation.Then, it goes to the input of a convolutional network, which extracts a vector (map) of features.Article [11] describes a training of a linear regression to clarify coordinates of an object window additionally.Such a refinement of the object localization gives possibility to increase quality by 3-4 %.R-CNN has several drawbacks, mainly due to high time spent on network training, as well as on direct image processing by the algorithm.It is necessary to train a convolutional neural network in two stages and to train linear regressors for each class.Processing of one image takes about 47 seconds.Fast R-CNN article [12] is continuation of papers [10,11].The authors propose to supply a full image to the input of NN.There is a feature map generated for each selected image region in R-CNN.There is a feature map generated for the entire image, and then there are maps for each region determined in Fast R-CNN.This can significantly reduce detection time.The following Faster R-CNN article [13] proposes to replace the procedure for generation of ROIs with a separate convolutional NN, which extracts features from an image and determines the expected boundaries of ROIs.A sliding window bypasses the feature map of an input image, and there is a feature vector of small dimension extracted for each position of the window.The resulting vectors go to the input of two layers of NN.One of these layers serves to clarify boundaries of a region, and the other one serves to classify an object located within this region.There are several options of boundaries of regions, which have a different size or different side ratio, considered simultaneously for each position of a sliding window.Mask R-CNN [14] develops the Faster R-CNN architecture by addition of ability to predict a position of a mask, which covers a found object.
Article [15] describes the YOLO (You Only Look Once) algorithm.It gives a possibility to detect and recognize objects in images in 103 times faster than R-CNN and by 102 times faster than Fast R-CNN, but with lower accuracy.This algorithm imposes a grid on an input image and divides it into cells.The algorithm determines bounding frames of a zone of possible location of objects with an estimate of detection accuracy and probability of belonging to classes around each cell.Then the accuracy estimate for each zone is multiplied by the class probability and we get the final value of detection probability.The algorithm analyzes from several thousand to several tens of thousands parts of an image with restrictive frames of different sizes.
Work [16] presents SSD algorithm: Single Shot MultiBox Detector, which is comparable to YOLO in accuracy and speed.The algorithm overlaps the entire area of an input image with bounding frames.The size of frames varies within the established boundaries.It gives a possibility to detect and recognize objects of various sizes.There goes estimation of the probability of belonging to classes and correction of frame sizes for each part of an image highlighted by a frame.The algorithm performs analysis from several thousand to several tens of thousand parts of an image.
It is necessary to apply algorithms, which divide an input image into a set of images that are suitable in size for analysis in a convolutional NN for detection and recognition of objects on a radar or satellite image.The algorithm used should reduce an amount of data required for further analysis to save time and resources.It is possible to implement such an algorithm in the following ways: 1) sequential division of an input image into frames of the size required for a convolutional NN with a frame shift by a certain number of pixels relative to the previous one; 2) application of R-CNN, Fast and Faster R-CNN, Mask R-CNN, YOLO, and SSD algorithms.
Both presented methods require a serious investment of time and computational resources.In one case, each input image divides into several thousand frames which are submitted for analysis into the subsequent convolutional NN [4,10,11].In the other case, the algorithm analyses an image entirely with enumeration of possible boundaries of ROIs, without first sifting out areas, which are not of interest [12][13][14][15][16].
Thus, there is a need for algorithms, which can reduce an amount of data analyzed, and thereby increase speed of recognition systems based on application of convolutional networks.

The aim and objectives of the study
The objective of the study is to create an algorithm for detection of ROIs in recognition of a type of aircraft using a convolutional neural network on radar and satellite images of the underlying surface.
We set the following tasks to achieve the objective: -detection of boundaries of objects present in an image; -search for centers of objects; -verification of the selected algorithms on real input data, determination of ROIs on images with application of the algorithms and comparison of the results using a Kohonen self-organizing map and a neural network in search for object centers.

The algorithm for detection of boundaries of objects located on the underlying surface
It is necessary to perform preliminary processing before supplying input data into a convolutional NN for analysis.
There is always a boundary between the body of an aircraft and the underlying surface.It forms due to differences in brightness or illumination levels, since the reflectivity of an aircraft is usually higher than the reflectivity of the under lying surface.In addition, in most cases, the body of an aircraft casts a shadow on the underlying surface, which also forms a boundary.If we mark these boundaries around AC with dots in an input image, then the center of this cluster will actually coincide with the center of an aircraft.
The algorithm for detection of boundaries of objects located at the underlying surface is as follows: 1) conversion of an input color image into shades of gray; 2) application of the Sobel operator -a differential operator, which calculates an approximate value of the image brightness gradient; 3) conversion into a binary image using scissoring by the brightness threshold.The obtained brightness boundaries take values 1, all others -0; 4) removal of objects of small size.Table 1 presents a comparison of performance of the algorithm for detection of boundaries of objects depending on the resolution of an input image and a number of possible objects of the minimum size.We performed calculations in a proprietary program without using GPU (graphics processor), acceleration and optimization algorithms on a personal computer with the following parameters: Intel Core i7 processor -6,700 K, 4 GHz, 32 GB RAM.As we can see from Table 1, the presented algorithm has a sufficiently high speed.It detects boundaries of objects of an input image in 0.002-0.02seconds.

The methodology for finding the centers of possible ROIs at images
To reduce the time required for an analysis and necessary computational resources in detection of objects of interest at an input image, we propose to select zones of their possible location with further sequential analysis of found zones in the convolutional NN.Thus, we will save time and resources by reducing of a number of frames analyzed and, consequently, increase speed of the system as a whole.
We suggest using the self-organizing maps or a Kohonen neural network to search for centers of possible ROIs after the initial processing of the input image.
Kohonen neural networks are a class of self-organizing NNs based on a Kohonen layer, which consists of a number of parallel adaptive linear elements.After passing linear elements, the processing of signals occurs according to the «Winner Gets Everything» principle.The largest signal gets a single value, and the rest are reset.
NN training learning without a trainer is necessary (no training sample) to solve the problem of allocation of centers of ROIs in an input image, since processing of each input image should occur independently of the previous ones.The main types of Kohonen networks, which use unsupervised training, are [17,18]: -Kohonen network for vector quantization of signals; -Kohonen self-organizing maps.

1. Kohonen network for vector quantization of signals
The Kohonen layer consists of a number of n parallel linear elements, which have the same number of inputs and receive the same vector of input signals x = [x 1 , x 2 ,…, x i ] at their inputs.We get the signal at the output of j-th linear element: where w ji is the synaptic weight coefficient of i-th input of j-th neuron, i is the number of an input, j is the number of a neuron, ω j0 is the threshold coefficient.
After passing through the layer of linear elements, there goes processing of signals according to the «Winner Gets Everything» rule.The search for the maximum y j proceeds among output signals: its number is i max = argmax(y j ).The signal with i max number is equal to one at the output, the rest are equal to zero.If the maximum is reached simultaneously at outputs of several adders, then a single value is assigned to one of them according to the established rule, for example, the first one.Training of Kohonen network is a process of selection of weight values which minimize errors due to replacing of input vectors with a weight vector, which is close in the sense of the used metric.We call such an approach the vector quantization [19].We can apply it, for example, in problems of compression of audio and video signals.The very idea of vector quantization consists in a compact representation of multidimensional input vectors using a limited set of support vectors of a lower dimension, which form a code table.Input vectors are encoded with numbers of winning neurons (cluster numbers) in a Kohonen network.Thus, all vectors from a certain area of an input space are replaced with one support vector, which is their nearest neighbor.The measure of closeness between objects is called distance.Kohonen networks usually use Euclidean distance: The Euclidean distance between x and y vectors is the Euclidean norm of a difference of vectors, or a length of the segment, which connects x and y points.We apply competition mechanisms for training of Kohonen network «without a trainer».A neuron with the weight vector, which is less different from the input vector, wins when applied to the input of x vector.It is necessary to perform initialization of a network before the training process.It is the initial task of weights vectors.In the base case, we set random weight values.The training process of a Kohonen network consists of a cyclic repetition of the following steps: 1. Supplying of source data to network inputs.2. Finding the output values for each neuron.
3. Definition of a winning neuron with weights, which are less different from corresponding components of the input vector.
4. Correction of weights of a winning neuron according to Kohonen rule: where x is the input vector, k is the number of a training cycle, η j k is the coefficient of training rate for jth neuron in k-th training cycle.
5. Going back to step 1 if training is not completed.
Consequently, the neuron with weights vector, which is closer to the input vector, is updated to become even closer.As a result, this neuron is likely to win the competition when applying a close vector to the input and loses when it is significantly different.After multiple supplies of training vectors to the network input, there will be a neuron that produces 1 when the vector belongs to the cluster, and 0 when the vector does not belong to it.Thus, the Kohonen network trains to classify input vectors.

2. Kohonen self-organizing maps
The main purpose of self-organization maps is to transform vectors, which come to the input, with arbitrary dimensions into a one-or two-dimensional discrete map with a topologically ordered form [18].The basis of maps, like the Kohonen network, is competitive training.Neurons of the output layer compete for the right to activate, and only one output neuron, the winning neuron, is active.One of the ways to organize this type of competition between neurons is to use negative feedbacks between them.In general, neurons are located at nodes of a two-dimensional grid with rectangular or hexagonal cells (Fig. 1) and interact with each other in SOM.r n distance between neurons on a map determines a magnitude of this interaction.The distance between individual neurons coincides more with the Euclidean distance for a hexagonal grid, than for a quadrilateral one.The number of neurons in the grid determine a degree of details in the result of network operation and accuracy of the generalizing ability of a map depends on it.

а b
Fig. 1.The initial location of neurons in nodes of a two-dimensional grid with cells: a -quadrangular; b -hexagonal Positions of neurons determined during the competitive process (that is, winning neurons) are ordered relatively to each other in such a way that a significant coordinate system appears on a grid.Thus, SOMs form topographic maps of input images, where spatial location (coordinates) of neurons of a grid is an indicator of statistical features contained in images.The spatial position of output neurons in a topographic map corresponds to a specific region of characteristics of data extracted out of the input space.Hence the very name -«self-organizing maps».
The attribute map has the following properties: 1. Approximation of the input space.The features map represented by a set of vectors of synaptic weights w j performs approximation of the input space in the output space.The main objective of the SOM algorithm is to describe a large volume of input space vectors by definition of a small set of prototypes in the output space, which is an adequate approximation of the original input space.
2. Topological order.The feature map obtained after application of the SOM algorithm is topologically ordered, since the spatial position of neurons in a grid corresponds to a specific region or feature of an input image.
3. Compliance of density.A feature map reflects changes in statistics of distribution of the input signal.Areas of an input image, from which vectors are taken with a higher probability, are mapped to much larger areas of the output space and with a higher resolution than areas, from which vectors are taken with a lower probability.
4. Selection of features.SOM is able to extract a set of best features for approximation of distribution being studied for data from the input space with a non-linear distribution.
Each of input images usually consists of a localized area of activity located in a relatively quiet area.Location and nature of such an area varies depending on a type of input example.Operation of the SOM algorithm usually begins with the initialization of synaptic weights of a network.There are three basic processes launched to form a map after correct initialization of a network.These processes are: competition, cooperation, and synaptic adaptation.
1. Competition.Neurons of a network calculate relative values of the discriminant function, which is the basis for the process of competition among neurons, for each input image.
It is necessary to compare w j T x scalar products for each neuron and choose the largest value in order to find the best w j vector, which corresponds to х input vector.In addition, each neuron has a certain saturation value equal to the threshold taken with the opposite sign.A choice of a neuron with the largest scalar product determines coordinates of a center of a topological area of an excited neuron.
The best matching criterion, based on maximization of w j T x scalar product, is mathematically equivalent to minimization of the Euclidean distance between х and w j vectors.If to use p(х) index to identify a neuron, which corresponds to x input signal mostly, then we can determine this value using the following relationship: where || || is the Euclidean norm.A specific neuron, which satisfies this condition, is called the winner for х input vector.
2. Cooperation.The winning neuron determines location of a topological area of neurons of a network, which ensures cooperation between these neurons.The winning neuron is located in the center of a topological area of cooperating neurons.This condition leads to determination of the topological area of i winning neuron.It decreases gradually with an increase in a distance.Let us denote the topological area with a center in the winning neuron as h ji .It consists of a set of excited (cooperating) neurons.An example of h ji , which satisfies the mentioned conditions, is the Gauss function: where d r r ji j i || is the distance between j-th neuron and the current winning neuron on a plane, s is the effective width: a numerical parameter, which sets a size of the area around the winning neuron where correction of weights occurs.The smaller is s, the fewer are neurons from the winning's neighborhood influenced by x input vector.
Another feature of the SOM algorithm is that a size of the topological area decreases with time.This requirement is satisfied due to gradual decrease in s effective width of the function of h ji topological area.A popular variant of the dependence of s on discrete values of n time is the exponential decrease described by the following formula: where s 0 is the initial s value in the SOM algorithm, τ 1 is the parameter responsible for the rate of decrease in s(n) function.
3. Synaptic adaptation.This mechanism makes it possible for excited neurons to increase their own values of discriminant functions with respect to the input vectors by adjusting of the synaptic weights.Corresponding adjustments are made to make the response of the winning neuron to the subsequent arrival of similar examples to strengthen.For discrete time of w j (n) vector of synaptic weights at n time, w j , we can define (n+1) updated vector at time n+1 as follows: where η(n) is the training rate parameter; h ji(x) (n) is the function of the neighborhood with a center in i(х) winning neuron.Both of these parameters change dynamically during training in order to obtain the best result.This expression applies to all neurons of a network that lie in the topological neighborhood of the winning neuron.Expression (7) has the effect of shifting the vector of synaptic weights of the winning neuron towards the input vector.Consequently, vectors of synaptic weights will tend to follow distribution of the input vectors, due to adjusting in the neighborhood of the winning neuron.Based on 5. 1 and 5. 2, we can conclude that it is possible to use the Kohonen neural network and SOM in search for centers of areas of ROIs, as they are able to determine centers of clusters of input data.When comparing results of the search for cluster centers by the described method with the algorithms of fuzzy centers and subtractive clustering, neural networks turn out to be significantly faster.

Description of the algorithm that searches for ROIs
There is a color image supplied to the input of the algorithm for analysis.Next, there goes its preliminary processing carried out in several stages: 1. Detection of boundaries of objects presented in the image.We applied the algorithm based on the use of the Sobel operator described in § 4 for this purpose.
2. Search for centers of objects.We can use a neural network or Kohonen self-organizing map for this.
3. Definition of ROIs.An expanded ROI forms around the found centers of objects.There goes selection of parts of the original image by a certain «window» in the expanded zone.The selected parts of the input image must contain the center point of the cluster and overlap the neighborhood of ROIs.Dimensions of the «window» correspond to the given dimensions of the largest detected object.They change when the image is zoomed.
4. Analysis in the convolution network.The parts of the input image obtained from ROIs go to the convolutional network for analysis.There goes determination of the presence of an object and its type.
Fig. 2 shows the operation scheme of searching for ROIs.
This algorithm can be used to search and recognize in the input image not only different types of AC, but also other objects of interest, such as robotics, for example, when analyzing the visual data of unmanned vehicles or when testing robotic complexes procedure.To do this, we need to set the maximum and minimum possible sizes of objects for operation of the algorithm for the search of ROIs, to make a training sample of these objects and to train a convolutional NN.

Demonstration of operation of the algorithm on actual input data and comparison of the results of application of the self-organizing map and the Kohonen neural network for the search for centers of objects
It is necessary to take into account the real scale of an image and the relative dimensions of the smallest AC to detect several AC in the input image.
In order not to miss AC, it is necessary that the determined number of cluster centers in the image coincide with the number of the smallest ACs that can fit on the input image with a known scale.Fig. 3 shows an example of operation of the algorithm for determination of ROIs in a real satellite image 7 the size of 767×778 pixels, where several types of AC, various underlying surfaces and structures are present.After preliminary processing, the input image went to the single-layer network and Kohonen self-organizing map with the initial arrangement of neurons at nodes of a two-dimensional grid with hexagonal cells for analysis for comparison.150 epochs of training are needed for SOM, and 1 is enough for Kohonen network.Based on the input image scale, the number of smallest aircraft that can fit on the image is 8x8, therefore, 64 cluster centers should be identified at the output of the neural network.If centers of the clusters are located relatively close to each other, then it is possible to combine them into one, located in the center between them.The same applies to the «windows» around the neighboring cluster centers, if they overlap in more than 90 % of the area.We can also exclude centers located in the immediate vicinity of the edge of an image from the analysis, since they cannot be the center of an aircraft that the convolutional network could recognize in further processing.
As we can see in Fig. 3, Kohonen network and maps determined centers of clusters in such a way that all aircrafts will be highlighted by a «window» and will be used for further analysis in a convolutional network.The obvious disadvantage of a map is the dependence of the position of centers of clusters on neighboring centers, which leads to the presence of centers in areas with no brightness differences.The Kohonen network has no such disadvantage.It locates centers within clusters of points with a difference in brightness almost always.This feature excludes empty areas from further analysis and provides a gain in analysis time and cost of computational resources.In this case, after selection of ROIs around cluster centers by the «window», the Kohonen network sends about 80 cut frames of a size of the maximum AC for further analysis, Kohonen self-organizing map -sends about 120.This is 1,000 times less than when using a sequential division of an input image into frames or 15-100 times less than when using algorithms similar to RCNN, YOLO and SSD.In addition, application of this algorithm reduces the required number of training images of AC for a convolutional network significantly, since a size of the «window» is tied to the image scale and is equal to a size of the largest detected aircraft.This means that there is no need for variations in the size of an aircraft in the training images.This solution gives Table 2 presents a comparison of performance of Kohonen network and map depending on the resolution of an input image and a number of possible objects of minimal size.We performed calculations in a proprietary program without use of GPU (graphics processor), acceleration and optimization algorithms on a personal computer with the parameters specified in Section 4. As we can see from Table 2, the rate of image processing by Kohonen network and Kohonen map has a different dependence on the image size and the number of sought for objects.The self-organizing map shows 3-6 times higher processing rate than the Kohonen network for small and medium-sized images and the number of sought for objects of the order of 1-30 pcs.With further increase in the size of an image and the number of sought for objects, the Kohonen map lags behind the network in processing rate gradually.

Discussion of results of the created algorithm for the search for ROIs at the underlying surface
Existing algorithms for detection and recognition of objects allocate several thousand or even hundreds of thousands of parts in an input image and submit them to a convolutional network for analysis, which significantly increases the analysis time.The algorithm proposed in this study makes it possible to reduce a number of analyzed parts of an input image and reduce the size of a training sample for a convolutional network, which can significantly reduce time for search and recognition of necessary objects.We achieve this due to a preliminary search for ROIs in an image with further analysis of the areas found only.Determination of a size of the «window» scanning certain ROIs, based on the scale of an image and the specified dimensions of the largest detected object, eliminates the need for variations in the size of an aircraft in training images.Detection of boundaries of objects and application of Kohonen network and self-organizing map make it possible to determine centers of clusters in an image and create ROIs around them.These solutions give possibility to eliminate variations in scale and center the sought for object, so a training sample size decreases in several times, network training rate and recognition accuracy increase.
The disadvantage of the created algorithm is the fact that a significant increase in recognition rate manifests itself only when analyzing images, where boundaries of objects do not occupy most of space.For example, in satellite and radar images, when the sought for objects are located on a homogeneous underlying surface of great length.The algorithm will determine an entire image as a ROI in the analysis of image occupied by small objects.It will still reduce a number of analyzed parts of an input image.There will be 300-500 times less analyzed parts than when using sequential division or 3-10 times less than when using algorithms similar to RCNN, YOLO and SSD.In the future, we plan to identify unique features of shapes of boundaries of sought for objects, which will help to distinguish these objects against the background of boundaries of the underlying surface and boundaries of objects of no interest.
The preliminary processing algorithm showed a high rate of selection of boundaries of objects in an input image.The search for cluster centers using Kohonen self-organizing map and network makes it possible to process images up to 500×500 pixels in size and a number of search objects is not more than 40 pcs at high rate.In the future, we plan to use algorithms for acceleration and optimization of Kohonen networks, as well as to consider other options for finding of cluster centers for carrying out GPU calculations.
It is possible to apply the presented methodology not only for recognition of a type of aircraft, but also for other objects, which are distinguishable against the background of the underlying surface and are of interest.In the further work, we plan improvement of the presented algorithm due to a better selection of boundaries of objects and search for their centers.
We also plan to create and optimize a convolutional neural network for recognition of objects of interest, which will create a complete system for search and recognition of objects on a radar or satellite image of the underlying surface.

Conclusions
1. We applied the algorithm based on the use of the Sobel operator was used to define boundaries of objects, which are present in an image.The algorithm has high rate, it highlights boundaries of objects in 0.002-0.02sec in an input image.
2. We used Kohonen neural network and self-organizing map to search for object centers, since they are one of the fastest algorithms for determination of centers of clusters of input data.
3. We tested the developed algorithm for determination of ROIs and their centers on real satellite images of the underlying surface.The use of the algorithm makes it possible to reduce a number of parts of an input image analyzed by a convolutional network by 15-100 times, which consequently reduces time required for search and recognition of sought for objects.In addition, application of this algorithm reduces the required number of training images for a convolutional network, since the size of the «window» is tied to the scale of an image and is equal to the size of the largest detected object.This fact, as well as the centering of an object on training images, make it possible to accelerate network training in more than 5 times and to increase recognition accuracy by at least 10 %.
The Kohonen network showed itself more efficient than the self-organizing map in relation to this task, since it places cluster centers 3 times less frequently on the underlying surface.However, the Kohonen map gives a gain in analysis rate for an image of up to 500×500 pixels and a number of sought for objects not more than 40 pcs.As the above parameters increase, SOM begins to yield the processing rate of the Kohonen network.We can apply the given technical solutions to control test operations procedure of robotic complexes and military technology.

Fig. 2 .Fig. 3 .
Fig. 2. Operation scheme of the algorithm for searching the ROIs and determination of a type of AC

Table 1
Comparison of operation time of the algorithm for detection of object boundaries

Table 2
Comparison of performance of Kohonen networkand map