WO2021125395A1 - Method for determining specific area for optical navigation on basis of artificial neural network, on-board map generation device, and method for determining direction of lander - Google Patents

Method for determining specific area for optical navigation on basis of artificial neural network, on-board map generation device, and method for determining direction of lander Download PDF

Info

Publication number
WO2021125395A1
WO2021125395A1 PCT/KR2019/018118 KR2019018118W WO2021125395A1 WO 2021125395 A1 WO2021125395 A1 WO 2021125395A1 KR 2019018118 W KR2019018118 W KR 2019018118W WO 2021125395 A1 WO2021125395 A1 WO 2021125395A1
Authority
WO
WIPO (PCT)
Prior art keywords
candidate
images
observation area
regions
determining
Prior art date
Application number
PCT/KR2019/018118
Other languages
French (fr)
Korean (ko)
Inventor
이훈희
정다운
최한림
류동영
주광혁
Original Assignee
한국항공우주연구원
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국항공우주연구원, 한국과학기술원 filed Critical 한국항공우주연구원
Publication of WO2021125395A1 publication Critical patent/WO2021125395A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64GCOSMONAUTICS; VEHICLES OR EQUIPMENT THEREFOR
    • B64G1/00Cosmonautic vehicles
    • B64G1/22Parts of, or equipment specially adapted for fitting in or to, cosmonautic vehicles
    • B64G1/24Guiding or controlling apparatus, e.g. for attitude control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/02Automatic approach or landing aids, i.e. systems in which flight data of incoming planes are processed to provide landing data

Definitions

  • the present invention relates to a method for determining a specific area for optical navigation based on an artificial neural network, an onboard map generation device, and a method for determining the direction of a lander, and more specifically, to a satellite navigation system such as the moon, Mars, and Jupiter.
  • a method and computer program for determining a robust singularity region based on deep learning to use optical navigation on a non-existent planet, an apparatus for generating an onboard map including the determined singularity region, and the onboard map thus generated It relates to a method to determine the direction of a lander using
  • an aircraft In order to move or land to a desired position on a planet, an aircraft such as a spaceship or a lander must know its own position.
  • An optical navigation method for estimating the current position by storing a picture of the planet's surface in the form of a map, and comparing a picture of the planet's surface at the current location with the stored map may be used.
  • the craters formed on the surface of the planet are used in optical navigation as special areas such as landmarks, but when the sun is low as in the poles of the planet, the shadows of the mountainous terrain are long.
  • the crater may not be identified. Also, craters may not exist in some areas.
  • Another technical object of the present invention is to provide an apparatus for generating an onboard map mounted in a memory to perform optical navigation in an aircraft flying around a planet or a lander intended to land on a landing point of a planet.
  • Another technical object of the present invention is to provide a method for determining the direction of a lander by using an onboard map and a camera image in order for the lander to land at a preset landing point of a planet.
  • the method for determining a singular region is performed by a computing device, and includes the steps of determining an observation area and a plurality of candidate areas within the observation area, the observation area labeling each of a plurality of images in which at least a portion of the image is displayed, and convolution based on the plurality of images labeled with the position information to search each of the plurality of candidate regions in each of the plurality of images Training an artificial neural network based on a neural network, evaluating the searched performance of each of the plurality of candidate areas based on the trained artificial neural network, and based on the searched performance of each of the plurality of candidate areas and determining at least some of the plurality of candidate regions as singular regions.
  • the plurality of candidate areas may be distributed so as not to overlap each other in the observation area.
  • the plurality of candidate areas may have a preset shape and may be arranged adjacent to each other in the observation area.
  • the plurality of candidate regions may be circular having a first diameter, and may be arranged adjacent to each other in the observation region.
  • the plurality of images of the observation area may include satellite images photographed by at least one artificial satellite flying along an orbit having a period on the observation area.
  • the plurality of images of the observation area may include images photographed by an aircraft flying over the observation area.
  • the plurality of images of the observation area may include images of the observation area from the earth.
  • the plurality of images of the observation area are synthesized images generated based on a modeled topography of the observation area, a position of the sun with respect to the observation area, and a pose of a camera photographing the observation area may include
  • the method for determining the singular area may further include determining a landing point at which the lander will land and a landing trajectory for landing at the landing point.
  • the observation area may be determined according to the landing trajectory.
  • the method for determining the singular region may further include enlarging or reducing the plurality of images based on an altitude of the landing trajectory on the observation area and a spatial resolution of a camera mounted on the lander. .
  • the location information may include location coordinates of a photographing area displayed in each of the plurality of images.
  • Image coordinates of each of the plurality of candidate regions in each image may be extracted based on the coordinates of the location of the capturing region labeled in the respective images.
  • the location information may include image coordinates of the plurality of candidate regions in each image.
  • the labeling includes: additionally labeling the position of the sun with respect to the observation area at a viewpoint corresponding to each of the plurality of images and a pose of the camera with respect to the observation area on each of the plurality of images may include.
  • the training of the artificial neural network may include inputting a first image from among the images labeled with the location information to the artificial neural network, as an output of the artificial neural network, in the first image. receiving estimated image coordinates of the plurality of candidate regions, and image coordinates of the plurality of candidate regions labeled in the first image and estimated image coordinates of the plurality of candidate regions in the first image It may include training the artificial neural network so that the difference between the two is minimized.
  • the training of the artificial neural network may include receiving, as an output of the artificial neural network, estimated sizes of the plurality of candidate regions in the first image, and sizes of the plurality of candidate regions.
  • the method may further include training the artificial neural network to minimize a difference between the values and the estimated sizes of the plurality of candidate regions in the first image.
  • evaluating the searched performance of each of the plurality of candidate areas may include evaluating the searched performance of a first candidate area among the plurality of candidate areas.
  • Evaluating the search performance of the first candidate region may include inputting each of a plurality of test images in which at least a part of the observation region appears to the trained artificial neural network, as an output of the trained artificial neural network, the receiving estimated image coordinates of the plurality of candidate regions in each of a plurality of test images, and calculating an F 1 score based on an output of the trained artificial neural network, and calculating the F 1 score based on the calculated F 1 score
  • the method may include determining classification performance of the first candidate region.
  • the evaluating the search performance of the first candidate region may include image coordinates of the first candidate region labeled in each test image and estimation of the first candidate region in each test image. and determining the accuracy performance of the first candidate region based on the position difference between the image coordinates.
  • the evaluating the search performance of the first candidate region may include: based on the position of the sun with respect to the observation region labeled in each of the plurality of test images, according to the azimuth and elevation of the sun.
  • the method may further include displaying the classification performance and the accuracy performance of the first candidate region as a classification performance graph and an accuracy performance graph, respectively.
  • the determining of at least some of the plurality of candidate regions as singular regions may include determining the singular regions based on a classification performance graph and an accuracy performance graph for each of the plurality of candidate regions. may include.
  • the method for determining the singular area may further include determining a landing point at which the lander will land and a landing trajectory for landing at the landing point.
  • the determining of at least some of the plurality of candidate regions as singular regions may include: based on a classification performance graph and an accuracy performance graph for each of the plurality of candidate regions, and a first landing date and time of the lander determining at least some of the candidate regions as first singular regions; generating a first onboard map including the first singular regions within the observation region; and a classification performance graph for each of the plurality of candidate regions.
  • determining at least some of the plurality of candidate regions as second singular regions based on an accuracy performance graph, and a second landing date and time of the lander, and a first comprising the second singular regions within the observation region 2 generating an onboard map.
  • the computer program according to an aspect of the present invention is stored in a medium to execute the above-described specific region determination methods using a computing device.
  • an onboard map generating apparatus includes a memory for storing a plurality of images showing at least a part of an observation area, and an artificial neural network based on a convolutional neural network, and at least It contains one processor.
  • the at least one processor determines the observation area and a plurality of candidate areas within the observation area, labels location information on each of the plurality of images, and selects each of the plurality of candidate areas from each of the plurality of images.
  • the artificial neural network is trained based on the plurality of images labeled with the location information, and searched performance of each of the plurality of candidate regions is evaluated based on the trained artificial neural network, and the plurality of candidates and determine at least some of the plurality of candidate regions as singular regions based on the searched performance of each of the regions, and generate the onboard map including the singular regions within the observation region.
  • the method for determining the direction of the lander according to an aspect of the present invention is performed by a processor of the lander, and while flying according to the landing trajectory, a preset observation area at a preset altitude generating an observation region image by photographing; searching for singular regions within the observation region of an onboard map stored in a memory in the observation region image; and determining a direction of the probe based on a difference in arrangement directions of the singular regions.
  • the onboard map may include: determining an observation area and a plurality of candidate areas within the observation area; labeling location information on each of a plurality of images in which at least a part of the observation area appears; training a convolutional neural network-based artificial neural network based on the plurality of images labeled with the location information to search for each of the candidate regions of evaluating search performance; determining at least some of the plurality of candidate areas as the singular regions based on the searched performance of each of the plurality of candidate regions; and identifying the singular regions within the observation region. It is generated by a computing device that performs the step of generating the onboard map including.
  • An onboard map that is loaded into memory can be created to perform optical navigation on a vehicle flying around a planet or a lander attempting to land on a planet's landing site. Since the moon has no atmosphere, there is little change in terrain, and the onboard map can be used semi-permanently.
  • the onboard map and camera image can be used to accurately determine the lander's direction.
  • FIG. 1 exemplarily shows an orbiter revolving around the moon and a lander landing at a landing point on the moon in accordance with the present invention.
  • Figure 2 exemplarily shows a lander landing on the lunar landing site in accordance with the present invention.
  • FIG. 3 schematically shows the internal configuration of a lander according to the present invention.
  • FIG. 5 schematically shows a computing device for determining singular regions based on images of an observation region of the moon and generating an on-board map including the singular regions according to the present invention.
  • 6A to 6C exemplarily show configurations of candidate areas in an observation area according to various embodiments of the present disclosure.
  • FIG. 7 schematically shows an internal configuration of a computing device according to the present invention.
  • FIG. 8 is an exemplary block diagram of a control unit according to embodiments of the present invention.
  • FIG. 9 is a block diagram of a data learning unit according to an embodiment of the present invention.
  • FIG. 10 is a block diagram of a data recognition unit according to an embodiment of the present invention.
  • Some embodiments may be described in terms of functional block configurations and various processing steps. Some or all of these functional blocks may be implemented in various numbers of hardware and/or software configurations that perform specific functions.
  • the functional blocks of the present disclosure may be implemented by one or more microprocessors, or by circuit configurations for a given function.
  • the functional blocks of the present disclosure may be implemented in various programming or scripting languages.
  • the functional blocks of the present disclosure may be implemented as an algorithm running on one or more processors.
  • a function performed by a functional block of the present disclosure may be performed by a plurality of functional blocks, or functions performed by a plurality of functional blocks in the present disclosure may be performed by one functional block.
  • the present disclosure may employ prior art for electronic configuration, signal processing, and/or data processing, and the like.
  • An aircraft flying using optical terrain-referenced absolute navigation needs proper landmark information along the flight path.
  • the vehicle flies close to a planet such as the moon
  • the crater can be selected as an intuitive landmark for optical navigation.
  • it is difficult to reliably detect the craters due to the large shaded area, and the craters may not function as landmarks for optical navigation.
  • the present invention proposes a method for determining singular areas that can be used as landmarks of optical navigation even in rough terrain.
  • the present invention proposes a method for determining a flight plan using singular regions determined as landmarks of optical navigation.
  • the present invention creates an onboard map including specific regions and proposes a method of flying around the moon or landing on the moon using this.
  • a convolutional neural network (CNN)-based object detector In order to determine a good landmark, a convolutional neural network (CNN)-based object detector is trained to distinguish similar landmark candidates from each other even under various lighting environments.
  • a convolutional neural network is used to predict the detectability of landmarks along flight paths on any day within a year. A date with a high probability of detection may be determined, and a mission plan may be determined with reference to this date.
  • the present invention determines singular regions that can function as landmarks for optical navigation on the surface of planets such as the moon, Mars, and Jupiter, where navigation satellites do not exist, and an onboard map mounted on an airship or lander based on the determined singular regions is to create
  • extraterrestrial planets such as the moon, Mars, and Jupiter are collectively referred to as a 'moon' for easy understanding of the present invention.
  • the present invention is not used only for exploration around the moon or landing on the moon, and may be applied to other planets such as Mars or Jupiter within the equivalent scope of the present invention.
  • a pose is a concept including a position and a direction.
  • the pose of the lander includes the position of the lander and the orientation of the lander.
  • FIG. 1 exemplarily shows an orbiter revolving around the moon and a lander landing at a landing point on the moon in accordance with the present invention.
  • the orbiter SC flies along the orbit OR around the moon M.
  • the orbiter SC may load the on-board map generated according to the present invention in a memory, and the processor of the orbiter SC performs the flight direction and/or attitude ( attitude) can be determined. If the determined flight direction and/or attitude differs from the planned flight direction and/or attitude, it may self-correct.
  • the lander LL may land at a landing point LS of the moon M along a predetermined landing trajectory LT.
  • the lander LL may photograph predetermined observation areas OA1 , OA2 , and OA3 while descending to the landing point LS.
  • the lander LL may load the on-board map generated according to the present invention in a memory, and the processor of the lander LL may store surface images of the observation areas OA1, OA2, OA3 and the observation areas OA1, OA2, The flight direction and/or attitude may be determined based on the onboard map of OA3).
  • the lander LL can self-correct its landing direction or attitude so that it can land at the landing point LS.
  • the onboard map stores information about specific objects (or regions) that can serve as landmarks used for optical topographic reference navigation. Singular objects (or regions) are determined for each of the observation regions OA1 , OA2 , OA3 .
  • the specific objects (or areas) may vary depending on the date of landing.
  • first and second onboard maps each including first and second unique objects (or regions) different from each other according to the expected landing date are generated, respectively, and the lander ( LL) can be stored in the memory.
  • the first onboard map may be circumferentially prepared, and the second onboard map may be preliminary.
  • the singular object refers to an object (or region) that can be distinguished from other objects (or regions) even in variously changing environments in images captured by the observation regions OA1, OA2, and OA3.
  • a singular object actually corresponds to a specific area with a known location within the observation area (OA1, OA2, OA3), and can be understood as a set of specific pixels corresponding to this specific area in the image taken of the observation area (OA1, OA2, OA3).
  • a singular object is referred to as a singular region within the observation areas OA1, OA2, and OA3.
  • a singular area can be distinguished from other areas by the topography of that area.
  • a singular object is another object under various lighting conditions determined by the position (altitude and azimuth) of the sun in the corresponding observation area (OA1, OA2, OA3) of the moon. can be distinguished from
  • the processor mounted on the lander (LL) searches for singular objects within the observation areas (OA1, OA2, OA3) recorded on the onboard map through correlation analysis or RANSAC algorithm in images captured in the observation areas (OA1, OA2, OA3). By doing so, the attitude of the lander LL can be estimated.
  • observation areas OA1 , OA2 , and OA3 are illustrated as being three, but this is only exemplary, and may be four or more, and may be two or less.
  • observation area OA any one of the observation areas OA1, OA2, and OA3, it is denoted as the observation area OA.
  • Figure 2 exemplarily shows a lander landing on the lunar landing site in accordance with the present invention.
  • the lander LL may descend to the landing point LS at an altitude of, for example, 15.24 km along the landing trajectory LT.
  • the landing point LS may be adjacent to the south pole. For example, it may be 89.98 degrees south latitude and 0.02 degrees east longitude. To this end, the landing could begin at 74.958 degrees south latitude and 0.02 degrees east longitude.
  • the lander LL can reach the landing point LS while flying in the exact south direction.
  • Pre-set observation areas OA1 and OA3 that can be photographed according to the landing trajectory LT may be photographed.
  • the first observation area OA1 is an area that passes when flying at an altitude of about 10 km according to the landing trajectory LT
  • the third observation area OA3 is an area that passes when flying at an altitude of about 3 km according to the landing trajectory LT. It could be a passing area.
  • the observation areas OA1 and OA3 may be located between 74.958 degrees south latitude and 89.98 degrees south latitude, and may be located at 0.02 degrees east longitude.
  • the first observation area OA1 may be located at, for example, 85.39 degrees south latitude.
  • the polar region of the moon (M) has a high possibility of water presence because the altitude of the sun (S) is low, and the pole region of the moon (M) has mountain peaks that can always communicate with the earth, so it is worth exploring compared to other regions is known to be high.
  • the altitude ⁇ of the sun S may be 2 degrees or less, for example, between 0.330 degrees and 1.898 degrees.
  • the azimuth ⁇ of the sun S may be between 0 degrees and 360 degrees.
  • FIG. 3 schematically shows the internal configuration of a lander according to the present invention.
  • the lander 10 includes a processor 11 , a memory 12 , a camera 13 , a sensor 14 , and a thruster 15 .
  • Lander 10 may further include components such as star trackers, devices according to a planned mission, and the like.
  • the lander 10 may include only some of the above-described components depending on the design.
  • the lander 10 may be, for example, a lunar lander LL shown in FIG. 2 , and may fly along a landing trajectory LT to land at a landing point LS of the moon M.
  • the processor 11 is responsible for overall control of the lander 10 , and may control the lander 10 so that the lander 10 can fly along the landing trajectory LT and land at the landing point LS.
  • the memory 12 stores instructions for operating the processor 11 .
  • information about the landing trajectory LT is stored in the memory 12 .
  • the memory 12 includes singular areas within the observation areas OA to determine whether the lander 10 is flying in the planned direction to land at the landing point LS or is maintaining the planned attitude at the landing trajectory LT.
  • An onboard map containing may be stored.
  • the lander 10 may start to land in order to land at the landing point LS while orbiting around the moon M.
  • the landing plan determines the set landing date
  • other landing dates may be prepared in advance in case of failure to land on that landing date.
  • the landing date on which the preferential landing attempt is made is referred to as the first landing date
  • the preliminary landing date prepared in advance in case of failure to land on the first landing date is referred to as the second landing date.
  • third and fourth landing dates may be predetermined.
  • the landing date does not mean only the corresponding date, but includes the landing date and time including the landing time of the corresponding date.
  • the memory 12 stores a first onboard map of observation areas OA including first singular areas selected according to the solar altitude of the first landing date, and a first onboard map selected according to the solar altitude of the second landing date.
  • a first onboard map of the observation regions O including the two singular regions may be stored.
  • the processor 11 may use the first onboard map on the first landing date and use the second onboard map on the second landing date.
  • the observation area OA of the first onboard map and the observation area OA of the second onboard map may not be identical to each other.
  • the first singular regions of the first onboard map and the second singular regions of the second onboard map may be the same, some may be the same, or all may be different.
  • the camera 13 may be mounted on the lander 10 to photograph the surface of the moon M.
  • the camera 13 is mounted at a preset position on the lander 10 and may be oriented in a preset direction.
  • the camera 13 may be set to point in the direction of the center of the moon M, or may point in a fixed direction with respect to the lander 10 .
  • the camera 13 may be a two-dimensional camera and may generate a black-and-white image. According to another example, the camera 13 may be a one-dimensional line camera. The camera 13 may be a color camera that generates a color image. The angle of view of the camera 13 may be, for example, 80 degrees, and the aspect ratio of the image generated by the camera 13 may be, for example, 1. The resolution of the camera 13 may be, for example, 416 x 416.
  • the camera 13 may photograph the earth's surface of the moon M under the control of the processor 11 , and may provide an image of the earth's surface to the processor 11 .
  • the sensor 14 may detect the state of the lander 10 .
  • the sensor 14 may include at least one of an inertial sensor, an acceleration sensor, a gravity sensor, an altitude sensor, and a temperature sensor.
  • the sensor 14 may detect the altitude of the lander 10 .
  • the sensor 14 may provide the sensed value to the processor 11 .
  • the thruster 15 may provide a force for changing the attitude or flight direction of the lander 10 under the control of the processor 11 .
  • the processor 11 operates the camera 13 when it is determined that the lander 10 is located on the observation area OA according to the landing procedure instructions stored in the memory 12 . It is possible to obtain an image 13p of the surface of the moon M by doing this.
  • the processor 11 may determine that the lander 10 is located on the observation area OA by sensing the altitude of the lander 10 through the sensor 14 .
  • the processor 11 loads the onboard map 12m of the corresponding observation area OA stored in the memory 12, the onboard map 12m of the observation area OA and the ground surface image 13p of the observation area OA) can be compared.
  • the processor 11 may search for singular areas SRO in the observation area OA recorded on the onboard map 12m from the surface image 13p of the observation area OA through correlation analysis or RANSAC algorithm. .
  • the processor 11 determines the current flight direction or attitude of the lander 10 . can be decided
  • the processor 11 may include a pre-trained convolutional neural network-based object detection model, and by inputting a ground image 13p and an onboard map 12m to the object detection model, the lander 10 may determine the current flight direction or attitude of
  • the processor 11 compares the sensed current flight direction or attitude with a direction or attitude according to a preset landing plan, and if they are different, using the thruster 15 to correct the attitude or flight direction of the lander 10 can Accordingly, the lander 10 can land accurately at the predetermined landing point LS according to the predetermined landing plan.
  • FIG. 5 schematically shows a computing device for determining singular regions based on images of an observation region of the moon and generating an onboard map including the singular regions according to the present invention.
  • a plurality of images 200 are input to the computing device 100 , and the computing device 100 generates an onboard map 300 based on the plurality of images 200 .
  • the images 200 are images of the observation area OA of the moon M. Some of the images 200 may include the entire observation area OA. According to another example, some of the images 200 may include only a portion of the observation area OA. That is, only a part of the observation area OA may appear in the image 200 . All of the magnifications of the images 200 may be constant or different from each other.
  • the images 200 may include training images for training an object detection model based on a convolutional neural network in the computing device 100 , and test images for determining specific regions by testing the object detection model.
  • the images 200 may further include verification images for verifying the validity of the object detection model.
  • an object detection model based on a convolutional neural network may be referred to as an artificial neural network or a lunanet.
  • the observation area OA is determined based on a predetermined landing point LS and a landing trajectory LT for landing at the landing point LS. Landing dates for landing at the landing point LS may also be predetermined. The exact position of the observation area OA is known in advance.
  • the observation area OA may be temporarily determined. When a preset number of singular areas SRO does not exist in the observation area OA, the observation area OA may be changed. According to another example, when a preset number of singular areas SRO does not exist in the observation area OA, the configuration of the candidate areas (CRO of FIG. 6 ) may be changed.
  • the images 200 may include satellite images captured by at least one artificial satellite flying along an orbit having a period on the observation area OA.
  • the images 200 may include images captured by an aircraft flying over the observation area OA.
  • the images 200 may include images obtained by photographing the observation area OA on the Earth.
  • the images 200 are generated based on the modeled topography of the observation area OA, the position of the sun with respect to the observation area OA, and a pose of a camera photographing the observation area OA.
  • Composite images may be included.
  • the number of synthesized images generated for the observation area OA may be, for example, hundreds to tens of thousands.
  • the modeled topography of the observation area OA is captured by satellite images taken by at least one artificial satellite flying along an orbit having a period on the observation area OA, and by a vehicle flying over the observation area OA.
  • the image may be generated based on at least one of captured images and images of the observation area OA on the Earth.
  • the position of the sun with respect to the observation area OA may be set within a preset range based on the position of the observation area OA.
  • the composite images may be generated while changing the position of the sun with respect to the observation area OA within a preset range.
  • the pose of the camera capturing the observation area OA may be set within a preset range based on the landing trajectory LT. Synthetic images may be generated while changing a pose of a camera that captures the observation area OA within a preset range. For example, while changing the position of the camera with respect to the observation area OA, the synthesized images may be generated while also changing the direction of the camera facing the observation area OA.
  • Synthetic images may be generated based on a 3D topography in which the observation area OA is measured. Synthetic images may be generated based on the surface reflectivity and material of the modeled terrain. Synthetic images may be generated based on a modeled atmospheric model. The composite images may be generated based on at least one of a resolution of a camera, a field of view, and a lens.
  • the synthesized images include the actual three-dimensional topography or modeled topography of the observation area (OA), the modeled surface reflectance and material, the modeled atmospheric model, the position of the sun with respect to the observation area (OA), and the observation area ( OA) may be generated based on at least a part of a pose position and orientation direction, resolution, field of view range, and lens of a camera photographing the OA).
  • the computing device 100 may determine the observation area OA and a plurality of candidate areas (CRO of FIG. 6 ) within the observation area OA.
  • the computing device 100 generates an object detection model based on the images 200 , and uses the object detection model to create a singular area with particularly high search performance compared to other candidate areas CRO within the observation area OA. (SRO of FIG. 4 ) may be determined.
  • the computing device 100 may generate the onboard map 300 including the singular areas SRO determined as above in the observation area OA.
  • the onboard map 300 is stored in the memory 12 of the lander 10 of FIG. 3, for example, as described above, and can be used to accurately land the lander 10 at the landing point LS of the moon M. .
  • 6A to 6C exemplarily show configurations of candidate areas in an observation area OA according to various embodiments of the present disclosure.
  • candidate areas CRO1 , CRO2 , ..., CROi in the observation area OA are illustrated.
  • the candidate regions CRO1 , CRO2 , ..., CROi may be referred to as candidate regions CRO.
  • the candidate areas CRO may be selected by a user within the observation area OA.
  • the candidate areas CRO may be distributed so as not to overlap each other within the observation area OA.
  • the candidate regions CRO are illustrated as rectangles in FIG. 6A , these are exemplary and may be circular, triangular, hexagonal, or irregular polygons. At least some of the candidate regions CRO may be inclined.
  • the candidate regions CRO may have different shapes.
  • the user Since the user knows the exact location of the observation area OA, the user also knows the exact location of the candidate areas CRO.
  • the candidate areas CRO are rectangular, at least one of a center position, a horizontal length, a vertical length, and a slope may be determined to specify the candidate area CRO.
  • the number of candidate areas CRO may be 4 or less or 6 or more.
  • the number of candidate regions CRO may be greater than or equal to a preset number.
  • the preset number may be three or more so that the attitude of the lander can be determined based on the arrangement of the specific regions searched for in the image of the ground surface captured by the lander. As the preset number is set to be larger, the accuracy of the attitude of the lander increases, but all of them may not be detected in the image of the earth's surface.
  • candidate areas CRO1 , CRO2 , ..., CROi in the observation area OA are illustrated.
  • the candidate regions CRO1 , CRO2 , ..., CROi may be referred to as candidate regions CRO.
  • the candidate areas CRO may all have a preset shape and may be arranged adjacent to each other in the observation area OA.
  • the candidate regions CRO are illustrated as having a regular hexagon, but this is exemplary and may have other shapes such as a square, a triangle, a rhombus, and the like.
  • the candidate areas CRO may be arranged so that their boundaries contact each other within the observation area OA. However, an empty space may exist between the candidate regions CRO. An area other than the candidate areas CRO among the observation area OA may be referred to as a background area. When the candidate regions CRO are rectangular, the background region may not exist.
  • Candidate areas CRO may not be set in the edge area of the observation area OA and may be left as a background area. Even if the lander attempts to capture the observation area OA, only a part of the observation area OA may be photographed depending on the attitude of the lander. That is, a part of the edge area of the observation area OA may not be photographed. In consideration of this point, it may be advantageous that the singular areas SRO are not located in the edge area of the observation area OA. To this end, candidate areas CRO may not be set in the edge area of the observation area OA.
  • the candidate regions CRO may all have the same size and the same shape.
  • the candidate regions CRO may be specified only by the central position and one length.
  • One length may be set as one of a distance between a center point and a vertex, a length of one side, or a distance between opposing vertices.
  • the number of candidate regions CRO may be less or more.
  • a preset number of singular regions SRO is not found, and at least one of the position, number, shape, and arrangement of the candidate regions CRO is changed. Thereafter, the computing device 100 may again find a preset number of specific regions SRO from among the changed candidate regions CRO.
  • candidate areas CRO1 , CRO2 , ..., CROi in the observation area OA are illustrated.
  • the candidate regions CRO1 , CRO2 , ..., CROi may be referred to as candidate regions CRO.
  • the candidate areas CRO are all circular having a preset radius, and may be arranged adjacent to each other in the observation area OA.
  • the candidate areas CRO may be arranged so that their boundaries contact each other within the observation area OA.
  • the candidate regions CRO may be arranged to be spaced apart from each other.
  • Candidate areas CRO may not be set in the edge area of the observation area OA.
  • the candidate regions CRO may all have the same radius. In this case, the candidate regions CRO may be specified only by the central position and the radial length.
  • the number of candidate regions CRO may be less or more.
  • a preset number of singular regions SRO is not found, and at least one of the position, number, shape, and arrangement of the candidate regions CRO is changed. Thereafter, the computing device 100 may again find a preset number of specific regions SRO from among the changed candidate regions CRO.
  • the positions of the candidate regions CRO may be horizontally moved by the radial length of the candidate regions CRO.
  • the number of candidate regions CRO may be changed by increasing or decreasing the radial length of the candidate regions CRO.
  • the shape of the candidate regions CRO may be changed to a hexagon, a rectangle, a triangle, etc. as shown in FIG. 6B .
  • a separation distance between the candidate regions CRO may be adjusted.
  • the candidate areas CRO are set by the user in the observation area OA. Since the user knows the exact location of the observation area OA, the user also knows the exact location of the candidate areas CRO.
  • FIG. 7 schematically shows an internal configuration of a computing device according to the present invention.
  • the computing device 100 includes a control unit 110 , a memory 120 , and a database (DB, 130 ).
  • the controller 110 , the memory 120 , and the DB 130 may exchange data with each other through a bus.
  • the computing device 100 may further include additional components such as, for example, a communication module, an input/output device, and a storage device, in addition to the components illustrated in FIG. 7 .
  • additional components such as, for example, a communication module, an input/output device, and a storage device, in addition to the components illustrated in FIG. 7 .
  • the controller 110 typically controls the overall operation of the computing device 100 .
  • the controller 110 may perform basic arithmetic, logic, and input/output operations, and execute, for example, program code stored in the memory 120 , for example, an object detection model based on a convolutional neural network.
  • the controller 110 may be at least one processor.
  • computing device 100 is shown as one device, computing device 100 may be more than one computing device.
  • the controller 110 may be two or more processors.
  • the memory 120 is a recording medium readable by the processor 110 and may include a non-volatile mass storage device such as a RAM, a ROM, and a disk drive.
  • the memory 120 may store an operating system and at least one program or application code.
  • data for implementing an object detection model based on a convolutional neural network for searching each of the candidate regions CRO in each of the images 100 , a program code for training the object detection model, and an object trained in this way A program code for evaluating the searched performance of each of the candidate regions using the detection model, a program code for determining the singular regions based on the searched performance of each of the candidate regions, and an onboard map including the determined singular regions are generated
  • a program code, etc. for performing the operation may be stored.
  • the DB 130 is a recording medium readable by the processor 110 , and may include a non-volatile large-capacity recording device such as a disk drive.
  • the DB 130 may store training images used for training the object detection model and test images input to the object detection model to evaluate the search performance of candidate regions. Both the training images and the test images may be included in the images 200 of FIG. 5 .
  • the images 200 may be stored in the DB 130 as they are without processing, or may be stored in a processed form suitable for training and testing an object detection model. For example, only a partial area having a preset resolution including the observation area OA among the images 200 may be stored in the DB 130 .
  • accurate location information and shooting date information of a region appearing in each of the images 200 may be connected to each of the images 200 and stored.
  • the location information may be location coordinates of four corners of a region appearing in each of the images 200 .
  • the location information may include coordinates and directions of a central location of a region appearing in each of the images 200 , and a horizontal length and a vertical length of the corresponding region.
  • the position of the sun and pose information of the camera at the corresponding shooting date and time may be stored in the DB 130 instead of the shooting date and time of each of the images 200 .
  • the controller 110 may determine the observation area OA and a plurality of candidate areas (CRO of FIG. 6 ) within the observation area OA.
  • the controller 110 may label location information on each of the plurality of images 200 in which at least a part of the observation area OA is displayed.
  • the controller 110 trains an artificial neural network based on a convolutional neural network based on a plurality of images 200 labeled with location information to search each of a plurality of candidate regions CRO in each of the plurality of images 200 . can do.
  • the controller 110 may evaluate the searched performance of each of the plurality of candidate regions CRO based on the trained artificial neural network.
  • the controller 110 may determine at least some of the plurality of candidate areas CRO as the singular areas SRO based on the search target performance of each of the plurality of candidate areas CRO.
  • the controller 110 may generate an onboard map 300 of FIG. 5 including the singular areas SRO in the observation area OA.
  • the controller 110 may determine a landing point LS at which the lander 10 will land and a landing trajectory LT for landing at the landing point LS.
  • the observation area OA may be determined according to the landing trajectory LT.
  • the landing trajectory LT or the landing date may be determined based on the singular areas SRO in the observation area OA.
  • the control unit 110 will be described in more detail with reference to FIG. 8 .
  • FIG. 8 is an exemplary block diagram of a control unit according to embodiments of the present invention.
  • the controller 110 may include a data learner 111 , a data recognizer 112 , a performance map generator 113 , and an onboard map generator 114 .
  • the memory 120 may store an object detection model 121 based on a convolutional neural network.
  • the data learner 111 may learn a criterion for searching each of the candidate regions in each of the training images.
  • the data learning unit 111 may learn a criterion regarding which data to use in order to search for each of the candidate regions in each of the training images.
  • the data learner 111 may train the object detection model 121 using training images labeled with location information.
  • the data learning unit 111 performs machine learning on the object detection model 121 using training images labeled with location information to search for each candidate region in each of the training images input to the object detection model 121 . standards can be learned.
  • the data learning unit 111 may select training images from images stored in the DB 130 .
  • the images stored in the DB 130 may be images obtained by at least partially capturing the observation area OA.
  • the images may include at least some of satellite images, surface-captured images, and synthetic images.
  • the data recognizer 112 may search for each of the candidate regions in each of the test images.
  • the data recognizer 112 may search for each of the candidate regions in each of the test images by using the pre-trained object detection model 121 .
  • the data recognizer 112 may output estimated image coordinates of each of the candidate regions in each of the test images. In each of the test images, the actual position of each of the candidate regions and the estimated image coordinates may be compared.
  • the data recognizer 112 may search for candidate regions in each of the test images by inputting test images to the object detection model 121 trained by the data learner 111 .
  • the data recognition unit 112 may post-process the output of the object detection model 121 to more intuitively understand the searched performance of each of the candidate regions.
  • a result value output by the object detection model 121 after receiving the test images may be used to update the object detection model 121 .
  • At least one of the data learning unit 111 and the data recognition unit 112 may be manufactured in the form of at least one hardware chip and mounted on a device.
  • at least one of the data learning unit 111 and the data recognition unit 112 may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or an existing general-purpose processor (eg, CPU).
  • AI artificial intelligence
  • CPU general-purpose processor
  • it may be manufactured as a part of an application processor) or a graphics-only processor (eg, GPU) and mounted on the various devices described above.
  • the data learning unit 111 and the data recognition unit 112 may be mounted on one device or may be mounted on separate devices, respectively.
  • one of the data learning unit 111 and the data recognition unit 112 may be included in the computing device 100 , and the other may be included in another computing device connected to the computing device 100 through a network.
  • the data learning unit 111 and the data recognition unit 112 may provide the learning model information built by the data learning unit 111 to the data recognition unit 112 through a wired or wireless connection, and the data recognition unit 112 ) may be provided to the data learning unit 111 as additional learning data.
  • At least one of the data learning unit 111 and the data recognition unit 112 may be implemented as a software module.
  • the software module is a computer-readable, non-transitory, non-transitory It may be stored in a readable recording medium (non-transitory computer readable media).
  • at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. A part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.
  • the performance map generator 113 may evaluate the searched performance of each of the candidate regions using the object detection model 121 .
  • the performance map generator 113 may generate a classification performance map and an accuracy performance map of each of the candidate areas in order to indicate the searched performance of each of the candidate areas.
  • the onboard map generator 114 may determine specific regions having high search performance based on the search target performance of each of the candidate regions.
  • the onboard map generator 114 may generate an onboard map including specific regions.
  • FIG. 9 is a block diagram of the data learning unit 111 according to an embodiment of the present invention.
  • the data learning unit 111 includes a data acquiring unit 111-1, a preprocessing unit 111-2, a training data selection unit 111-3, a model learning unit 111-4, and a model.
  • the evaluation unit 111 - 5 may be included.
  • the data acquisition unit 111-1 may acquire data necessary to search for each of the candidate regions in each of the images.
  • the data acquisition unit 111-1 may acquire training images from images showing a part of the observation area stored in the DB 130 .
  • the data acquisition unit 111-1 may acquire location information stored in relation to each of the training images.
  • the data acquisition unit 111-1 may acquire position information of the sun and/or pose information of the camera stored in relation to each of the training images.
  • the preprocessor 111 - 2 may preprocess the acquired data so that data necessary for searching each candidate region in each of the images may be used.
  • the preprocessing unit 111-2 may process the obtained data into a preset format so that the model learning unit 111-4 trains the object detection model 121 for searching each candidate region in each of the images. have.
  • the preprocessor 111 - 2 may enlarge or reduce the training images.
  • the preprocessor 111 - 2 may reduce or enlarge the magnifications of the training images to the same preset magnification.
  • the landing site at which the lander will land and the landing trajectory for landing at the landing site may be determined. As the lander flies along the landing orbit, a camera for photographing the observation area and a location for photographing the observation area may also be determined.
  • the magnification of the surface image generated by photographing the observation area from the lander is predetermined.
  • the preprocessor 112 - 2 may reduce or enlarge the training image so that the magnification of the training image is the same as the magnification of the ground image.
  • the magnification of the image refers to the size (eg, the length or area of a square) of the observation area indicated by one pixel of the image.
  • the accuracy of the object detection model 121 may be guaranteed even in the lander.
  • the preprocessor 111 - 2 may label each of the training images with location information.
  • the location information may include location coordinates of a photographing area displayed in each of the training images.
  • the preprocessor 111 - 2 may extract image coordinates of each of the candidate regions from each of the training images based on the coordinates of the location of the shooting region displayed in each of the training images.
  • the preprocessor 111 - 2 may label each training image with image coordinates of each of the candidate regions extracted from each training image.
  • image coordinates of candidate regions in each of the training images may be stored in the DB 130 in association with each of the training images, and the preprocessor 111-2 may be used. may label the image coordinates of each of the candidate regions for each training image.
  • the preprocessor 111 - 2 may label the position of the sun with respect to the observation area corresponding to each of the training images and the pose of the camera for the observation area on each of the training images.
  • the training image is a satellite image of the observation area
  • the position of the sun with respect to the observation area at the time of photographing the observation area, and the pose of the camera photographing the observation area are labeled in each of the training images.
  • the training image is a synthetic image generated by rendering
  • the position of the sun with respect to the observation region and the pose of the camera with respect to the observation region input to the rendering model may be labeled in each of the training images.
  • an identification number and image coordinates of each of the candidate regions in the first training image may be labeled in the first training image.
  • the position of the sun with respect to the observation area and the pose of the camera with respect to the observation area corresponding to the first training image may be labeled in the first training image.
  • parameters for specifying each of the candidate regions may be labeled in each of the training images together with an identification number of the candidate regions.
  • FIGS. 6B and 6C when the candidate regions all have the same shape and the same size, the size and shape of each of the training images may not be labeled.
  • the labeling function of the preprocessor 111 - 2 may be automatically performed by the control unit 110 .
  • the labeling function of the preprocessor 111-2 may be performed by the controller 110 through a user's manual operation.
  • the learning data selection unit 111-3 may select data necessary for learning from among the pre-processed data.
  • the selected data may be provided to the model learning unit 111-4.
  • the learning data selector 111-3 may select data required for learning from among the preprocessed data according to a preset criterion for searching each of the candidate regions in each of the training images.
  • the preset reference may be prepared by learning by the model learning unit 111-4, which will be described later.
  • the model learning unit 111-4 may learn a criterion for searching each of the candidate regions in each of the training images.
  • the model learning unit 111-4 may learn a criterion for which training data should be used in order to search for each of the candidate regions in each of the training images.
  • the object detection model 121 may be pre-built based on an artificial neural network.
  • the object detection model 121 may be pre-built by receiving basic learning data (eg, sample data, etc.).
  • the object detection model 121 may be constructed in consideration of the field of application of the recognition model, the purpose of learning, or the computer performance of the device.
  • the object detection model 121 is, for example, a learning model based on a neural network, for example, a Deep Neural Network (DNN), a Convolution Neural Network (CNN), a Recurrent Neural Network (RNN), or a Bidirectional Recurrent (BRDNN).
  • DNN Deep Neural Network
  • CNN Convolution Neural Network
  • RNN Recurrent Neural Network
  • BBDNN Bidirectional Recurrent
  • a model such as a Deep Neural Network may be used, but is not limited thereto.
  • the model learning unit 111-4 may train the object detection model 121 using, for example, a learning algorithm including error back-propagation or gradient descent.
  • the model learning unit 111-4 may train the object detection model 121 through supervised learning using, for example, learning data as an input value.
  • the model learning unit 111-4 may train the object detection model 121 through, for example, reinforcement learning using feedback on whether a result of searching each candidate region in each of the training images according to learning is correct.
  • the model learning unit 111-4 may define a loss function based on the result of the object detection model 121 receiving the training image and location information labeled on the training image.
  • candidate regions may be searched for in the first training image.
  • the result of the object detection model 121 may include an estimated identification number, an estimated image coordinate, and an estimated size of each of the candidate regions searched for in the first training image.
  • the result of the object detection model 121 may include estimation accuracy of each of the candidate regions searched for in the first training image.
  • the model learning unit 111-4 may output an estimation result having an estimation accuracy higher than a preset estimation accuracy.
  • the model learning unit 111-4 may output a preset number of estimation results based on estimation accuracy.
  • the loss function may be defined based on a difference between the position information labeled on the training image and the estimation result.
  • a loss function may be defined based on a position error and a size error of each of the candidate regions.
  • the position error may be a difference between the actual image coordinates labeled in each of the candidate regions and the image coordinates estimated for each of the candidate regions.
  • the size error may be a difference between an actual size determined for each of the candidate regions and a size estimated for each of the candidate regions.
  • the size error may be a difference between an actual radius of the candidate regions and a radius estimated for each of the candidate regions.
  • the estimation result of the object detection model 121 may include estimated image coordinates of candidate regions in the first training image.
  • the model learning unit 111-4 trains the object detection model 121 such that a difference between the image coordinates of the candidate regions labeled in the first training image and the estimated image coordinates of the candidate regions in the first training image is minimized. can do.
  • the estimation result of the object detection model 121 may include estimated sizes of candidate regions in the first training image.
  • the model learner 111-4 may train the object detection model 121 to minimize a difference between the sizes of the candidate regions and the estimated sizes of the candidate regions in the first training image.
  • the model learning unit 111-4 may repeat the learning of the object detection model 121 using the training images so that the loss function value is smaller than a preset reference value.
  • the model learning unit 111-4 may store the learned object detection model 121 .
  • the model learning unit 111-4 may store the object detection model 121 in the memory 120 of the computing device 100 .
  • the memory 120 storing the object detection model 121 may also store, for example, commands or data related to at least one other component of the device.
  • the memory 120 may store software and/or programs.
  • a program may include, for example, a kernel, middleware, an application programming interface (API) and/or an application program (or "application”), and the like.
  • the model evaluation unit 111-5 inputs verification data to the object detection model 121, and when the recognition result output from the verification data does not satisfy a predetermined criterion, causes the model learning unit 111-4 to learn again.
  • the verification data may be preset data for evaluating the learning model.
  • the verification data may be verification images selected from images stored in the DB 130 and labeled with location information.
  • the model evaluator 111 - 5 may calculate a loss function value based on an estimation result of the learned object detection model 121 with respect to the verification data.
  • the model evaluator 111 - 5 may evaluate the learned object detection model 121 as unsuitable when the loss function value exceeds a preset threshold.
  • At least one of -5) may be manufactured in the form of at least one hardware chip and mounted on a device.
  • at least one of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 One may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or it may be manufactured as part of an existing general-purpose processor (eg, CPU or application processor) or graphics-only processor (eg, GPU) as described above. It may be mounted on various devices.
  • AI artificial intelligence
  • the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 are one device. It may be mounted on the , or may be respectively mounted on separate devices. For example, some of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 may be included in the device, and the rest may be included in the server.
  • At least one of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 is It can be implemented as a software module.
  • At least one of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 is a software module
  • the software module When implemented as (or, a program module including instructions), the software module may be stored in a computer-readable non-transitory computer readable medium.
  • at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. A part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.
  • OS operating system
  • OS operating system
  • FIG. 10 is a block diagram of the data recognition unit 112 according to an embodiment of the present invention.
  • the data recognition unit 112 includes a data acquisition unit 112-1, a preprocessor 112-2, a recognition data selection unit 112-3, and a recognition result providing unit ( 112-4) and a model updater 112-5.
  • the data acquisition unit 112-1 may acquire data necessary to search for each of the candidate regions in each of the images.
  • the data acquisition unit 112-1 may acquire test images from images showing a part of the observation area stored in the DB 130 .
  • the data acquisition unit 112-1 may acquire location information stored in relation to each of the test images.
  • the data acquisition unit 112-1 may acquire position information of the sun and/or pose information of the camera stored in relation to each of the test images.
  • the preprocessor 112 - 2 may preprocess the obtained data so that data necessary for searching each candidate region in each of the test images may be used.
  • the preprocessing unit 112-2 may process the acquired data into a preset format so that the recognition result providing unit 112-4 may search for each candidate region in each of the images using the acquired data.
  • the preprocessor 112 - 2 may enlarge or reduce the test images.
  • the preprocessor 112 - 2 may reduce or enlarge the magnifications of the test images to the same preset magnification.
  • the preprocessor 112 - 2 may reduce or enlarge the test image so that the magnification of the test image is the same as the magnification of the ground image.
  • the preprocessor 112 - 2 may label location information on each of the test images.
  • the location information may include location coordinates of a photographing area displayed in each of the test images.
  • the preprocessor 112 - 2 may extract image coordinates of each of the candidate regions from each of the test images based on the coordinates of the location of the photographing area displayed in each of the test images.
  • the preprocessor 112 - 2 may label each test image with image coordinates of each of the candidate regions extracted from each test image.
  • image coordinates of the candidate regions in each of the test images may be stored in the DB 130 in association with each of the test images, and the preprocessor 112 - 2 ) may label the image coordinates of each of the candidate regions for each test image.
  • the preprocessor 112 - 2 may label the position of the sun with respect to the observation area corresponding to each of the test images and the pose of the camera with respect to the observation area on each of the test images.
  • an identification number and image coordinates of each of the candidate regions in the first test image may be labeled on the first test image.
  • the position of the sun with respect to the observation area and the pose of the camera with respect to the observation area corresponding to the first test image may be labeled on the first test image.
  • the labeling function of the preprocessor 112 - 2 may be automatically performed by the control unit 110 .
  • the labeling function of the preprocessor 112-2 may be performed by the controller 110 through a user's manual operation.
  • the recognition data selection unit 112 - 3 may select data required to search for each of the candidate regions in each of the test images from among the pre-processed data.
  • the recognition data selector 112 - 3 may select some or all of the preprocessed data according to a preset criterion for searching each candidate region in each of the test images.
  • the recognition data selection unit 112-3 may select data according to a criterion set by the model learning unit 111-4 learning.
  • the recognition result providing unit 112 - 4 may search for each of the candidate regions in each of the test images by applying the selected data to the object detection model 121 .
  • the recognition result providing unit 112 - 4 may provide a recognition result according to the purpose of data recognition.
  • the recognition result providing unit 112 - 4 may apply the selected data to the object detection model 121 by using the data selected by the recognition data selecting unit 112 - 3 as an input value.
  • the recognition result may be determined by the object detection model 121 .
  • the identification number and location of each of the candidate regions searched in each of the test images may be estimated, and the estimation result may be a text, an image, or a command (eg, an application execution command, a module function execution command, etc.) ) may be provided.
  • the estimation result of the object detection model 121 is a candidate region in the first test image.
  • the estimation result of the object detection model 121 may include estimated sizes of candidate regions in the first training image.
  • the first candidate region may be searched for in the first test image, and in this case, the estimation result of the object detection model 121 may include estimated image coordinates of the first candidate region in the first test image.
  • the first candidate area found in the first test image may or may not be the first candidate area of the actual observation area. That is, the estimated image coordinates of the first candidate area may or may not correspond to the first candidate area in the actual first observation area.
  • the estimated image coordinates of the first candidate area may correspond to other candidate areas within the observation area or may correspond to a background area within the first observation area.
  • the estimation result of the object detection model 121 corresponds to an erroneous estimation.
  • the second candidate region may not be searched for in the first test image, and in this case, information on the second candidate region may not be included in the estimation result of the object detection model 121 .
  • the third candidate image may be searched for in two positions in the first test image.
  • the estimation result of the object detection model 121 is the first estimated image coordinates and the second estimated image coordinates of the third candidate region in the first test image. It may include estimated image coordinates.
  • At least one of two estimation results for the third candidate region of the object detection model 121 corresponds to an erroneous estimation.
  • the model updater 112 - 5 may update the object detection model 121 based on the evaluation of the recognition result provided by the recognition result provider 112 - 4 .
  • the model updating unit 112-5 provides the recognition result provided by the recognition result providing unit 112-4 to the model learning unit 111-4, so that the model learning unit 111-4 is
  • the object detection model 121 may be updated.
  • the data recognition unit 112 the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4 and the model update unit ( At least one of 112-5) may be manufactured in the form of at least one hardware chip and mounted in a device.
  • the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 At least one may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be manufactured as part of an existing general-purpose processor (eg, CPU or application processor) or graphics-only processor (eg, GPU). It may be mounted on one various device.
  • AI artificial intelligence
  • the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 are one It may be mounted on an electronic device, or may be respectively mounted on separate electronic devices.
  • the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 Some may be included in the computing device 100 , and some may be included in the server.
  • At least one of the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 may be implemented as a software module.
  • At least one of the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 is software.
  • the software module When implemented as a module (or a program module including instructions), the software module may be stored in a computer-readable non-transitory computer readable medium.
  • at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. A part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.
  • OS operating system
  • OS operating system
  • the performance map generator 113 may evaluate the searched performance of each of the candidate regions by using the estimation result of the object detection model 121 .
  • the searched performance is evaluated for each of the candidate regions.
  • the searched performance of the first candidate region may be evaluated based on the classification performance and accuracy performance of the first candidate region.
  • the classification performance of the first candidate region is calculated using an estimation result obtained when test images are input to the object detection model 121 .
  • the estimation result includes estimated image coordinates of candidate regions in each of the test images.
  • the classification performance of the first candidate regions may be calculated based on an F 1 score calculated based on estimated image coordinates of the first candidate regions. The higher the F 1 score, the better the classification performance.
  • the F 1 score is calculated based on the Precision and Recall values.
  • the F 1 score may be calculated as a harmonic average of the reciprocal of a precision value and a recall value.
  • the precision value can be calculated as the value (TP/ (TP + FP)) obtained by dividing the true positive (TP) by the sum (TP + FP) of the true positive (TP) and false positive (FP).
  • the recall value can be calculated as a value (TP/ (TP + FN)) obtained by dividing True Positive (TP) by the sum (TP + FN) of True Positive (TP) and False Negative (FN). .
  • true positivity means that the estimated position of the candidate area estimated by the object detection model 121 is included in the corresponding candidate area of the actual observation area. For example, when the first candidate area is found in the test image, the estimated position of the first candidate area is located in the first candidate area of the actual observation area.
  • False positive means that the estimated position of the candidate area estimated by the object detection model 121 is included in another candidate area of the actual observation area. For example, when the first candidate area is found in the test image, the estimated position of the first candidate area is located in a candidate area other than the first candidate area of the actual observation area (eg, the second candidate area).
  • the false negative means that the estimated position of the candidate region estimated by the object detection model 121 is included in the background region of the actual observation region. For example, when the first candidate area is found in the test image, the estimated position of the first candidate area is located in the background area of the actual observation area.
  • the classification performance of the first candidate region is the number of true positives (TP) of the test images in which the estimated image coordinates of the first candidate region in each of the test images are included in the actual first candidate region in the observation region;
  • the image coordinates may be determined based on the number of false voices (FN) of the non-existent test image.
  • the classification performance of the first candidate region may be calculated by 2 TP / ( 2 TP + FN + FP).
  • the accuracy performance of the first candidate regions may be calculated based on estimated image coordinates of the first candidate regions.
  • the accuracy performance of the first candidate region may be calculated based on the difference in position between the image coordinates of the first candidate region labeled in each test image and the estimated image coordinates of the first candidate region in each test image.
  • the accuracy performance of the first candidate region may be calculated as a root mean square error of position differences calculated for each of the test images. The lower the accuracy performance value, the better the accuracy performance.
  • the accuracy performance of the first candidate region is determined by determining that the estimated position of the first candidate region is the actual position of the first candidate region when the estimated image coordinates of the first candidate region are included in the actual first candidate region of the observation region. It can indicate how far apart the location is. If the estimated image coordinates of the first candidate region are not included in the actual first candidate region of the observation region, the position difference between the estimated position of the first candidate region and the actual position of the first candidate region is the accuracy performance of the first candidate region. may not affect
  • the performance map generator 113 may generate a classification performance map and an accuracy performance map of each of the candidate areas in order to indicate the searched performance of each of the candidate areas.
  • the classification performance map and the accuracy performance map may be referred to as a classification performance graph and an accuracy performance graph, respectively.
  • a classification performance map and an accuracy performance graph are generated for each of the candidate regions.
  • the classification performance map and the accuracy performance map of each of the candidate regions show that the classification performance and accuracy performance of each of the candidate regions according to the change in the azimuth and elevation of the sun relative to the observation region labeled in each of the test images. shows how it changes.
  • Each of the test images may be labeled with the position (azimuth and altitude) of the sun with respect to the observation area.
  • the classification performance map of the first candidate region calculates the classification performance value of the first candidate region in each of the test images, and the x-coordinate and y-coordinate determined by the azimuth and elevation of the sun labeled in each of the test images. It may be a graph in which the classification performance value of the first candidate region is displayed at the position of . In this graph, the x-axis corresponds to the azimuth of the sun and the y-axis corresponds to the elevation of the sun. An area in which a classification performance value is not displayed in the classification performance map may be displayed through interpolation using surrounding values.
  • the accuracy performance map of the first candidate region calculates the accuracy performance value of the first candidate region in each of the test images, and the x-coordinate and y-coordinate positions determined by the azimuth and elevation of the sun labeled in each of the test images It may be a graph in which the accuracy performance value of the first candidate region is displayed. In this graph, the x-axis corresponds to the azimuth of the sun and the y-axis corresponds to the elevation of the sun. An area in which the accuracy performance value is not displayed in the accuracy performance map may be displayed through interpolation using surrounding values.
  • the onboard map generator 114 may determine specific regions having high search performance based on the search target performance of each of the candidate regions.
  • the onboard map generator 114 may generate an onboard map including specific regions.
  • the onboard map generator 114 selects candidate regions having high search performance based on the classification performance map and the accuracy performance map of each of the candidate regions, and when the number of candidate regions is equal to or greater than a preset reference number, selects the selected candidate regions. It can be determined by specific regions.
  • an area in which a corresponding candidate area can be searched well with respect to the position of the sun may be determined.
  • An area in which classification performance and accuracy performance are equal to or greater than the reference value may be an area in which the corresponding candidate area is searched well.
  • Candidate regions in which this region is wide may be determined as singular regions.
  • the generated onboard map may be used semi-permanently.
  • the position of the sun with respect to the observation area is determined by the ephemeris.
  • the position (azimuth and elevation) of the sun determined by the ephemeris may be further displayed in the classification performance map and the accuracy performance map.
  • candidate regions having high classification performance and high accuracy performance on the corresponding date may be determined.
  • the classification performance value is higher than the preset classification reference value, it may be understood that the classification performance is high.
  • the accuracy performance value is lower than the preset accuracy reference value, it may be understood that the accuracy performance is high.
  • candidate regions having a classification performance value greater than a preset classification reference value and an accuracy performance value lower than a preset accuracy reference value may be selected.
  • the number of selected candidate regions may be compared with a preset reference number, and when the number of selected candidate regions is equal to or greater than the preset reference number, the selected candidate regions may be determined as singular regions.
  • the onboard map generator 114 may generate an onboard map including the determined specific regions.
  • the number of the selected candidate areas is smaller than the preset reference number, it is determined that no singular areas are detected according to the previously determined configuration of the candidate areas of the observation area, and the observation area is changed or the configuration of the candidate areas is changed.
  • a preliminary landing date may be determined.
  • Candidate regions having high classification performance and accuracy performance of the corresponding preliminary landing date may be selected.
  • the selected candidate regions may be determined as preliminary singular regions.
  • the onboard map generator 114 may generate a preliminary onboard map including the determined preliminary specific regions.
  • the onboard map including the singular regions generated by the onboard map generator 114 may be loaded in the memory of the lander of FIGS. 1 to 4 and used for optical navigation for accurately flying to the landing site.
  • the various embodiments described above may be implemented in the form of a computer program that can be executed through various components on a computer, and such a computer program may be recorded in a computer-readable medium.
  • the medium may be to continuously store the program executable by the computer, or to temporarily store the program for execution or download.
  • the medium may be various recording means or storage means in the form of a single or several hardware combined, it is not limited to a medium directly connected to any computer system, and may exist distributed on a network.
  • examples of the medium include a hard disk, a magnetic medium such as a floppy disk and a magnetic tape, an optical recording medium such as CD-ROM and DVD, a magneto-optical medium such as a floppy disk, and those configured to store program instructions, including ROM, RAM, flash memory, and the like.
  • examples of other media may include recording media or storage media managed by an app store that distributes applications, sites that supply or distribute various other software, and servers.
  • unit may be a hardware component such as a processor or circuit, and/or a software component executed by a hardware component such as a processor.
  • a hardware component such as a processor or circuit
  • a software component executed by a hardware component such as a processor.
  • part refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, It may be implemented by procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays and variables.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Chemical & Material Sciences (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

Various embodiments provide a method for determining a specific area, a method for generating an on-board map, and a method for determining a direction of a lander. The method for determining a specific area is performed by a computing device, and comprises the steps of: determining an observation region and a plurality of candidate areas within the observation region; labeling location information on each of a plurality of images in which at least a part of the observation region is shown; training an artificial neural network based on a convolutional neural network on the basis of the plurality of images labeled with the location information, so that each of the plurality of candidate areas can be searched for in each of the plurality of images; evaluating searchability of each of the plurality of candidate areas on the basis of the trained artificial neural network; and determining at least a part of the plurality of candidate areas as specific areas on the basis of the searchability of each of the plurality of candidate areas.

Description

인공 신경망 기반으로 광학적 항법을 위하여 특이 영역을 결정하는 방법, 온보드 맵 생성 장치, 및 착륙선의 방향을 결정하는 방법A method for determining a singular region for optical navigation based on an artificial neural network, an on-board map generator, and a method for determining the direction of a lander
본 발명은 인공 신경망 기반으로 광학적 항법을 위한 특이 영역을 결정하는 방법, 온보드 맵 생성 장치, 및 착륙선의 방향을 결정하는 방법에 관한 것으로서, 더욱 구체적으로는 달, 화성, 목성 등과 같이 위성항법시스템이 존재하지 않는 행성에서 광학적 항법을 이용하기 위해 딥 러닝 기반으로 강건한(robust) 특이 영역을 결정하는 방법 및 컴퓨터 프로그램, 이와 같이 결정된 특이 영역을 포함하는 온보드 맵을 생성하는 장치, 이와 같이 생성된 온보드 맵을 이용하여 착륙선의 방향을 결정하는 방법에 관한 것이다.The present invention relates to a method for determining a specific area for optical navigation based on an artificial neural network, an onboard map generation device, and a method for determining the direction of a lander, and more specifically, to a satellite navigation system such as the moon, Mars, and Jupiter. A method and computer program for determining a robust singularity region based on deep learning to use optical navigation on a non-existent planet, an apparatus for generating an onboard map including the determined singularity region, and the onboard map thus generated It relates to a method to determine the direction of a lander using
우주시대가 다가오면서, 달, 화성, 목성 등과 같은 지구 외의 행성(이하, '행성'이라 지칭함)을 더욱 정밀하게 탐사하고려는 시도가 이루어지고 있다. 지구에서는 위성항법시스템을 이용하여 비교적 정확하게 자신의 위치를 알 수 있지만, 행성에서는 자신의 위치를 알 수 있는 방법이 제한적이다.As the space age approaches, attempts are being made to more precisely probe extraterrestrial planets (hereinafter referred to as 'planets') such as the moon, Mars, and Jupiter. On Earth, it is possible to know its position relatively accurately using a satellite navigation system, but on a planet, there are limited ways to know its position.
행성에서도 원하는 위치로 이동 또는 착륙하기 위해서는 우주선 또는 착륙선과 같은 비행체는 스스로의 위치를 알 수 있어야 한다. 행성의 지표면 사진을 지도 형태로 저장하고, 현재 위치에서 행성의 지표면을 촬영한 사진을 저장된 지도와 비교함으로써 현재 위치를 추정하는 광학적 항법 방식이 이용될 수 있다.In order to move or land to a desired position on a planet, an aircraft such as a spaceship or a lander must know its own position. An optical navigation method for estimating the current position by storing a picture of the planet's surface in the form of a map, and comparing a picture of the planet's surface at the current location with the stored map may be used.
행성에는 지구와 달리 대기가 없기 때문에 지표면의 형태가 거의 변하지 않기 때문에, 지표면 사진을 기초로 자신의 위치를 추정하는 것이 가능하다. 그러나, 행성에는 지구와 달리 인공 랜드마크가 존재하지 않고 지형만 존재한다.Because planets do not have an atmosphere, unlike Earth, the shape of the surface of the Earth hardly changes, so it is possible to estimate their position based on pictures of the surface of the earth. However, unlike Earth, there are no artificial landmarks on the planet, only the terrain.
행성의 지표면에 형성된 크래이터(crater)들을 랜드마크와 같은 특이 영역으로 광학적 항법에서 이용하고 있지만, 행성의 극 지방에서와 같이 태양의 고도가 낮을 경우 산악 지형의 그림자가 길게 생기기 때문에 사진을 통해서는 크래이터가 식별되지 못할 수도 있다. 또한, 일부 지역들에서는 크래이터가 존재하지 않을 수도 있다. 또한, 비행체가 접근하는 방향에 따라서 사진의 방향은 달라지게 되므로, 이를 저장된 지도와 비교하는데 어려움이 발생한다.The craters formed on the surface of the planet are used in optical navigation as special areas such as landmarks, but when the sun is low as in the poles of the planet, the shadows of the mountainous terrain are long. The crater may not be identified. Also, craters may not exist in some areas. In addition, since the direction of the photo changes depending on the direction the vehicle approaches, it is difficult to compare it with the stored map.
태양의 위치나 비행체의 위치의 변화에도 다른 영역과 강건하게 구별될 수 있는 특이 영역을 결정할 수 있다면, 행성에서도 광학적 항법을 이용하여 자신의 위치를 정확하게 추정할 수 있다.If it is possible to determine a singular region that can be strongly distinguished from other regions even when the position of the sun or the position of a vehicle changes, it is possible to accurately estimate its position on a planet using optical navigation.
본 발명의 기술적 과제는 태양의 위치 및 비행체의 위치 등의 변화에도 불구하고 광학적 항법을 위한 랜드마크로서 기능할 수 있는 행성의 지표면 상의 특이 영역들 또는 지형들을 결정하는 방법을 제공하는 것이다.It is an object of the present invention to provide a method for determining specific areas or topography on the surface of a planet that can function as a landmark for optical navigation despite changes in the position of the sun and the position of a vehicle.
본 발명의 다른 기술적 과제는 행성 주변을 비행하는 비행체나 행성의 착륙 지점에 착륙하고자 하는 착륙선에서 광학적 항법을 수행할 수 있도록 메모리에 탑재되는 온보드 맵을 생성하는 장치를 제공하는 것이다.Another technical object of the present invention is to provide an apparatus for generating an onboard map mounted in a memory to perform optical navigation in an aircraft flying around a planet or a lander intended to land on a landing point of a planet.
본 발명의 또 다른 기술적 과제는 행성의 미리 설정된 착륙 지점에 착륙선이 착륙하기 위하여 온보드 맵과 카메라 영상을 이용하여 착륙선의 방향을 결정하는 방법을 제공하는 것이다.Another technical object of the present invention is to provide a method for determining the direction of a lander by using an onboard map and a camera image in order for the lander to land at a preset landing point of a planet.
상술한 기술적 과제들을 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 특이 영역 결정 방법은 컴퓨팅 장치에 의해 수행되며, 관측 지역과 상기 관측 지역 내의 복수의 후보 영역들을 결정하는 단계, 상기 관측 지역의 적어도 일부가 나타난 복수의 영상들 각각에 위치 정보를 라벨링하는 단계, 상기 복수의 영상들 각각에서 상기 복수의 후보 영역들 각각을 탐색하도록, 상기 위치 정보가 라벨링된 상기 복수의 영상들을 기초로 컨벌루션 신경망 기반의 인공 신경망을 트레이닝하는 단계, 상기 트레이닝된 인공 신경망에 기초하여 상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하는 단계, 및 상기 복수의 후보 영역들 각각의 상기 피탐색 성능을 기초로 상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하는 단계를 포함한다.As a technical means for achieving the above-described technical problems, the method for determining a singular region according to an aspect of the present invention is performed by a computing device, and includes the steps of determining an observation area and a plurality of candidate areas within the observation area, the observation area labeling each of a plurality of images in which at least a portion of the image is displayed, and convolution based on the plurality of images labeled with the position information to search each of the plurality of candidate regions in each of the plurality of images Training an artificial neural network based on a neural network, evaluating the searched performance of each of the plurality of candidate areas based on the trained artificial neural network, and based on the searched performance of each of the plurality of candidate areas and determining at least some of the plurality of candidate regions as singular regions.
일 예에 따르면, 상기 복수의 후보 영역들은 상기 관측 지역 내에 서로 중첩하지 않도록 분포될 수 있다.According to an example, the plurality of candidate areas may be distributed so as not to overlap each other in the observation area.
다른 예에 따르면, 상기 복수의 후보 영역들은 미리 설정된 형상을 갖고, 상기 관측 지역 내에 서로 인접하게 배열될 수 있다.According to another example, the plurality of candidate areas may have a preset shape and may be arranged adjacent to each other in the observation area.
또 다른 예에 따르면, 상기 복수의 후보 영역들은 제1 직경을 갖는 원형이고, 상기 관측 지역 내에 서로 인접하게 배열될 수 있다.According to another example, the plurality of candidate regions may be circular having a first diameter, and may be arranged adjacent to each other in the observation region.
또 다른 예에 따르면, 상기 관측 지역을 촬영한 복수의 영상들은 상기 관측 지역 상에 주기를 갖는 궤도를 따라 비행하는 적어도 하나의 인공 위성에 의해 촬영된 위성 영상들을 포함할 수 있다.According to another example, the plurality of images of the observation area may include satellite images photographed by at least one artificial satellite flying along an orbit having a period on the observation area.
또 다른 예에 따르면, 상기 관측 지역을 촬영한 복수의 영상들은 상기 관측 지역의 상공을 비행하는 비행체에 의해 촬영된 영상들을 포함할 수 있다.According to another example, the plurality of images of the observation area may include images photographed by an aircraft flying over the observation area.
또 다른 예에 따르면, 상기 관측 지역을 촬영한 복수의 영상들은 지구에서 상기 관측 지역을 촬영한 영상들을 포함할 수 있다.According to another example, the plurality of images of the observation area may include images of the observation area from the earth.
또 다른 예에 따르면, 상기 관측 지역을 촬영한 복수의 영상들은 상기 관측 지역의 모델링된 지형, 상기 관측 지역에 대한 태양의 위치, 및 상기 관측 지역을 촬영하는 카메라의 포즈에 기초하여 생성된 합성 영상들을 포함할 수 있다.According to another example, the plurality of images of the observation area are synthesized images generated based on a modeled topography of the observation area, a position of the sun with respect to the observation area, and a pose of a camera photographing the observation area may include
또 다른 예에 따르면, 상기 특이 영역 결정 방법은 착륙선이 착륙할 착륙 지점 및 상기 착륙 지점에 착륙하기 위한 착륙 궤도를 결정하는 단계를 더 포함할 수 있다. 상기 관측 지역은 상기 착륙 궤도에 따라 결정될 수 있다.According to another example, the method for determining the singular area may further include determining a landing point at which the lander will land and a landing trajectory for landing at the landing point. The observation area may be determined according to the landing trajectory.
또 다른 예에 따르면, 상기 특이 영역 결정 방법은 상기 관측 지역 상의 상기 착륙 궤도의 고도와 상기 착륙선에 탑재되는 카메라의 공간 해상도에 기초하여 상기 복수의 영상들을 확대 또는 축소하는 단계를 더 포함할 수 있다.According to another example, the method for determining the singular region may further include enlarging or reducing the plurality of images based on an altitude of the landing trajectory on the observation area and a spatial resolution of a camera mounted on the lander. .
또 다른 예에 따르면, 상기 위치 정보는 상기 복수의 영상들 각각에 나타난 촬영 지역의 위치 좌표를 포함할 수 있다. 상기 각 영상에 라벨링되는 상기 촬영 지역의 위치 좌표에 기초하여 상기 각 영상에서의 상기 복수의 후보 영역들 각각의 영상 좌표가 추출될 수 있다.According to another example, the location information may include location coordinates of a photographing area displayed in each of the plurality of images. Image coordinates of each of the plurality of candidate regions in each image may be extracted based on the coordinates of the location of the capturing region labeled in the respective images.
또 다른 예에 따르면, 상기 위치 정보는 상기 각 영상에서의 상기 복수의 후보 영역들의 영상 좌표들을 포함할 수 있다.According to another example, the location information may include image coordinates of the plurality of candidate regions in each image.
또 다른 예에 따르면, 상기 라벨링하는 단계는 상기 복수의 영상들 각각에 상기 각 영상에 대응하는 시점에서의 상기 관측 지역에 대한 태양의 위치 및 상기 관측 지역에 대한 카메라의 포즈를 추가로 라벨링하는 단계를 포함할 수 있다.According to another example, the labeling includes: additionally labeling the position of the sun with respect to the observation area at a viewpoint corresponding to each of the plurality of images and a pose of the camera with respect to the observation area on each of the plurality of images may include.
또 다른 예에 따르면, 상기 인공 신경망을 트레이닝하는 단계는, 상기 위치 정보가 라벨링된 상기 영상들 중에서 제1 영상을 상기 인공 신경망에 입력하는 단계, 상기 인공 신경망의 출력으로서, 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 영상 좌표들을 수신하는 단계, 및 상기 제1 영상에 라벨링된 상기 복수의 후보 영역들의 영상 좌표들과 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 영상 좌표들 간의 차이가 최소화되도록 상기 인공 신경망을 트레이닝하는 단계를 포함할 수 있다.According to another example, the training of the artificial neural network may include inputting a first image from among the images labeled with the location information to the artificial neural network, as an output of the artificial neural network, in the first image. receiving estimated image coordinates of the plurality of candidate regions, and image coordinates of the plurality of candidate regions labeled in the first image and estimated image coordinates of the plurality of candidate regions in the first image It may include training the artificial neural network so that the difference between the two is minimized.
또 다른 예에 따르면, 상기 인공 신경망을 트레이닝하는 단계는, 상기 인공 신경망의 출력으로서, 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 크기들을 수신하는 단계, 및 상기 복수의 후보 영역들의 크기들과 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 크기들 간의 차이가 최소화되도록 상기 인공 신경망을 트레이닝하는 단계를 더 포함할 수 있다.According to another example, the training of the artificial neural network may include receiving, as an output of the artificial neural network, estimated sizes of the plurality of candidate regions in the first image, and sizes of the plurality of candidate regions. The method may further include training the artificial neural network to minimize a difference between the values and the estimated sizes of the plurality of candidate regions in the first image.
또 다른 예에 따르면, 상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하는 단계는 상기 복수의 후보 영역들 중 제1 후보 영역의 피탐색 성능을 평가하는 단계를 포함할 수 있다. 상기 제1 후보 영역의 피탐색 성능을 평가하는 단계는, 상기 관측 지역 중 적어도 일부가 나타난 복수의 테스트 영상들 각각을 상기 트레이닝된 인공 신경망에 입력하는 단계, 상기 트레이닝된 인공 신경망의 출력으로서, 상기 복수의 테스트 영상들 각각에서 상기 복수의 후보 영역들의 추정된 영상 좌표들을 수신하는 단계, 및 상기 트레이닝된 인공 신경망의 출력에 기초하여 F1 스코어를 산출하고, 상기 산출된 F1 스코어에 기초하여 상기 제1 후보 영역의 분류 성능을 결정하는 단계를 포함할 수 있다.According to another example, evaluating the searched performance of each of the plurality of candidate areas may include evaluating the searched performance of a first candidate area among the plurality of candidate areas. Evaluating the search performance of the first candidate region may include inputting each of a plurality of test images in which at least a part of the observation region appears to the trained artificial neural network, as an output of the trained artificial neural network, the receiving estimated image coordinates of the plurality of candidate regions in each of a plurality of test images, and calculating an F 1 score based on an output of the trained artificial neural network, and calculating the F 1 score based on the calculated F 1 score The method may include determining classification performance of the first candidate region.
또 다른 예에 따르면, 상기 제1 후보 영역의 피탐색 성능을 평가하는 단계는, 상기 각 테스트 영상에 라벨링된 상기 제1 후보 영역의 영상 좌표와 상기 각 테스트 영상에서의 상기 제1 후보 영역의 추정된 영상 좌표 간의 위치 차이를 기초로, 상기 제1 후보 영역의 정확도 성능을 결정하는 단계를 포함할 수 있다.According to another example, the evaluating the search performance of the first candidate region may include image coordinates of the first candidate region labeled in each test image and estimation of the first candidate region in each test image. and determining the accuracy performance of the first candidate region based on the position difference between the image coordinates.
또 다른 예에 따르면, 상기 제1 후보 영역의 피탐색 성능을 평가하는 단계는, 상기 복수의 테스트 영상들 각각에 라벨링된 상기 관측 지역에 대한 태양의 위치에 기초하여, 태양의 방위각과 고도에 따른 상기 제1 후보 영역의 분류 성능 및 정확도 성능을 각각 분류 성능 그래프 및 정확도 성능 그래프로 표시하는 단계를 더 포함할 수 있다.According to another example, the evaluating the search performance of the first candidate region may include: based on the position of the sun with respect to the observation region labeled in each of the plurality of test images, according to the azimuth and elevation of the sun. The method may further include displaying the classification performance and the accuracy performance of the first candidate region as a classification performance graph and an accuracy performance graph, respectively.
또 다른 예에 따르면, 상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하는 단계는 상기 복수의 후보 영역들 각각에 대한 분류 성능 그래프 및 정확도 성능 그래프에 기초하여 상기 특이 영역들을 결정하는 단계를 포함할 수 있다.According to another example, the determining of at least some of the plurality of candidate regions as singular regions may include determining the singular regions based on a classification performance graph and an accuracy performance graph for each of the plurality of candidate regions. may include.
또 다른 예에 따르면, 상기 특이 영역 결정 방법은 착륙선이 착륙할 착륙 지점 및 상기 착륙 지점에 착륙하기 위한 착륙 궤도를 결정하는 단계를 더 포함할 수 있다. 상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하는 단계는, 상기 복수의 후보 영역들 각각에 대한 분류 성능 그래프와 정확도 성능 그래프, 및 상기 착륙선의 1차 착륙 일시에 기초하여 상기 복수의 후보 영역들 중 적어도 일부를 제1 특이 영역들로 결정하는 단계, 상기 관측 지역 내에 상기 제1 특이 영역들을 포함하는 제1 온보드 맵을 생성하는 단계, 상기 복수의 후보 영역들 각각에 대한 분류 성능 그래프와 정확도 성능 그래프, 및 상기 착륙선의 2차 착륙 일시에 기초하여 상기 복수의 후보 영역들 중 적어도 일부를 제2 특이 영역들로 결정하는 단계, 및 상기 관측 지역 내에 상기 제2 특이 영역들을 포함하는 제2 온보드 맵을 생성하는 단계를 포함할 수 있다.According to another example, the method for determining the singular area may further include determining a landing point at which the lander will land and a landing trajectory for landing at the landing point. The determining of at least some of the plurality of candidate regions as singular regions may include: based on a classification performance graph and an accuracy performance graph for each of the plurality of candidate regions, and a first landing date and time of the lander determining at least some of the candidate regions as first singular regions; generating a first onboard map including the first singular regions within the observation region; and a classification performance graph for each of the plurality of candidate regions. determining at least some of the plurality of candidate regions as second singular regions based on an accuracy performance graph, and a second landing date and time of the lander, and a first comprising the second singular regions within the observation region 2 generating an onboard map.
상술한 기술적 과제들을 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 컴퓨터 프로그램은 컴퓨팅 장치를 이용하여 전술한 특이 영역 결정 방법들을 실행시키기 위하여 매체에 저장된다.As a technical means for achieving the above-described technical problems, the computer program according to an aspect of the present invention is stored in a medium to execute the above-described specific region determination methods using a computing device.
상술한 기술적 과제들을 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 온보드 맵 생성 장치는 관측 지역의 적어도 일부가 나타난 복수의 영상들, 및 컨벌루션 신경망 기반의 인공 신경망을 저장하는 메모리, 및 적어도 하나의 프로세서를 포함한다. 상기 적어도 하나의 프로세서는 상기 관측 지역과 상기 관측 지역 내의 복수의 후보 영역들을 결정하고, 상기 복수의 영상들 각각에 위치 정보를 라벨링하고, 상기 복수의 영상들 각각에서 상기 복수의 후보 영역들 각각을 탐색하도록, 상기 위치 정보가 라벨링된 상기 복수의 영상들을 기초로 상기 인공 신경망을 트레이닝하고, 상기 트레이닝된 인공 신경망에 기초하여 상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하고, 상기 복수의 후보 영역들 각각의 상기 피탐색 성능을 기초로 상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하고, 상기 관측 지역 내에 상기 특이 영역들을 포함하는 상기 온보드 맵을 생성하도록 구성된다.As a technical means for achieving the above technical problems, an onboard map generating apparatus according to an aspect of the present invention includes a memory for storing a plurality of images showing at least a part of an observation area, and an artificial neural network based on a convolutional neural network, and at least It contains one processor. The at least one processor determines the observation area and a plurality of candidate areas within the observation area, labels location information on each of the plurality of images, and selects each of the plurality of candidate areas from each of the plurality of images. In order to search, the artificial neural network is trained based on the plurality of images labeled with the location information, and searched performance of each of the plurality of candidate regions is evaluated based on the trained artificial neural network, and the plurality of candidates and determine at least some of the plurality of candidate regions as singular regions based on the searched performance of each of the regions, and generate the onboard map including the singular regions within the observation region.
상술한 기술적 과제들을 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 착륙선의 방향을 결정하는 방법은 착륙선의 프로세서에 의해 수행되며, 착륙 궤적에 따라 비행하면서 미리 설정된 고도에서 미리 설정된 관측 지역을 촬영하여 관측 지역 영상을 생성하는 단계, 메모리에 저장된 온보드 맵의 상기 관측 지역 내의 특이 영역들을 상기 관측 지역 영상에서 탐색하는 단계, 및 상기 관측 지역 영상에서 탐색된 특이 영역들의 배치 방향과 상기 온보드 맵의 상기 특이 영역들의 배치 방향의 차이를 기초로 상기 탐사선의 방향을 결정하는 단계를 포함한다. 상기 온보드 맵은 관측 지역과 상기 관측 지역 내의 복수의 후보 영역들을 결정하는 단계, 상기 관측 지역의 적어도 일부가 나타난 복수의 영상들 각각에 위치 정보를 라벨링하는 단계, 상기 복수의 영상들 각각에서 상기 복수의 후보 영역들 각각을 탐색하도록, 상기 위치 정보가 라벨링된 상기 복수의 영상들을 기초로 컨벌루션 신경망 기반의 인공 신경망을 트레이닝하는 단계, 상기 트레이닝된 인공 신경망에 기초하여 상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하는 단계, 상기 복수의 후보 영역들 각각의 상기 피탐색 성능을 기초로 상기 복수의 후보 영역들 중 적어도 일부를 상기 특이 영역들로 결정하는 단계, 및 상기 관측 지역 내에 상기 특이 영역들을 포함하는 상기 온보드 맵을 생성하는 단계를 수행하는 컴퓨팅 장치에 의하여 생성된다.As a technical means for achieving the above-described technical problems, the method for determining the direction of the lander according to an aspect of the present invention is performed by a processor of the lander, and while flying according to the landing trajectory, a preset observation area at a preset altitude generating an observation region image by photographing; searching for singular regions within the observation region of an onboard map stored in a memory in the observation region image; and determining a direction of the probe based on a difference in arrangement directions of the singular regions. The onboard map may include: determining an observation area and a plurality of candidate areas within the observation area; labeling location information on each of a plurality of images in which at least a part of the observation area appears; training a convolutional neural network-based artificial neural network based on the plurality of images labeled with the location information to search for each of the candidate regions of evaluating search performance; determining at least some of the plurality of candidate areas as the singular regions based on the searched performance of each of the plurality of candidate regions; and identifying the singular regions within the observation region. It is generated by a computing device that performs the step of generating the onboard map including.
본 발명에 따르면, 태양의 위치 및 비행체의 위치 등의 변화에도 불구하고 광학적 항법을 위한 랜드마크로서 기능할 수 있는 행성의 지표면 상의 특이 영역들 또는 지형들이 결정될 수 있다. 따라서, 달의 극지방과 같이 음영이 많은 지역에서도 다른 영역들 또는 지형들과 구별될 수 있는 특이 영역들 또는 지형들을 랜드마크로 이용할 수 있다.According to the present invention, in spite of changes such as the position of the sun and the position of the vehicle, specific areas or topography on the surface of the planet that can function as a landmark for optical navigation can be determined. Accordingly, even in a region with a lot of shade, such as the poles of the moon, specific regions or topography that can be distinguished from other regions or topography can be used as landmarks.
행성 주변을 비행하는 비행체나 행성의 착륙 지점에 착륙하고자 하는 착륙선에서 광학적 항법을 수행할 수 있도록 메모리에 탑재되는 온보드 맵을 생성할 수 있다. 달에는 대기가 없기 때문에, 지형 변화가 거의 없으며, 온보드 맵은 반영구적으로 사용될 수 있다.An onboard map that is loaded into memory can be created to perform optical navigation on a vehicle flying around a planet or a lander attempting to land on a planet's landing site. Since the moon has no atmosphere, there is little change in terrain, and the onboard map can be used semi-permanently.
행성의 미리 설정된 착륙 지점에 착륙선이 착륙하기 위하여 온보드 맵과 카메라 영상을 이용하여 착륙선의 방향을 정확하게 결정할 수 있다.In order for the lander to land at a preset landing point on the planet, the onboard map and camera image can be used to accurately determine the lander's direction.
도 1은 본 발명에 따라서 달 주변을 공전하는 궤도선 및 달의 착륙 지점에 착륙하는 착륙선을 예시적으로 도시한다.1 exemplarily shows an orbiter revolving around the moon and a lander landing at a landing point on the moon in accordance with the present invention.
도 2는 본 발명에 따라서 달의 착륙 지점에 착륙하는 착륙선을 예시적으로 도시한다.Figure 2 exemplarily shows a lander landing on the lunar landing site in accordance with the present invention.
도 3은 본 발명에 따른 착륙선의 내부 구성을 개략적으로 도시한다.3 schematically shows the internal configuration of a lander according to the present invention.
도 4는 본 발명에 따른 착륙선의 프로세서의 동작을 개략적으로 도시한다.4 schematically shows the operation of the processor of the lander according to the invention;
도 5는 본 발명에 따라서 달의 관측 지역의 영상들을 기초로 특이 영역들을 결정하고, 특이 영역들을 포함하는 온보드 맵을 생성하는 컴퓨팅 장치를 개략적으로 도시한다.5 schematically shows a computing device for determining singular regions based on images of an observation region of the moon and generating an on-board map including the singular regions according to the present invention.
도 6a 내지 도 6c는 본 발명의 다양한 실시예들에 따른 관측 지역 내의 후보 영역들의 구성을 예시적으로 도시한다.6A to 6C exemplarily show configurations of candidate areas in an observation area according to various embodiments of the present disclosure.
도 7은 본 발명에 따른 컴퓨팅 장치의 내부 구성을 개략적으로 도시한다.7 schematically shows an internal configuration of a computing device according to the present invention.
도 8은 본 발명의 실시예들에 따른 제어부의 예시적인 블록도이다.8 is an exemplary block diagram of a control unit according to embodiments of the present invention.
도 9은 본 발명의 일 실시예에 따른 데이터 학습부의 블록도이다.9 is a block diagram of a data learning unit according to an embodiment of the present invention.
도 10은 본 발명의 일 실시예에 따른 데이터 인식부의 블록도이다.10 is a block diagram of a data recognition unit according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 다양한 실시예들을 상세히 설명한다. 그러나 본 개시의 기술적 사상은 다양한 형태로 변형되어 구현될 수 있으므로 본 명세서에서 설명하는 실시예들로 제한되지 않는다. 본 명세서에 개시된 실시예들을 설명함에 있어서 관련된 공지 기술을 구체적으로 설명하는 것이 본 개시의 기술적 사상의 요지를 흐릴 수 있다고 판단되는 경우 그 공지 기술에 대한 구체적인 설명을 생략한다. 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, various embodiments will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art to which the present disclosure pertains can easily implement it. However, the technical spirit of the present disclosure may be modified and implemented in various forms, and thus is not limited to the embodiments described herein. In the description of the embodiments disclosed in the present specification, when it is determined that a detailed description of a related known technology may obscure the gist of the present disclosure, a detailed description of the known technology will be omitted. The same or similar components are given the same reference numerals, and overlapping descriptions thereof will be omitted.
본 명세서에서 어떤 요소가 다른 요소와 "연결"되어 있다고 기술될 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라 그 중간에 다른 요소를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 어떤 요소가 다른 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 요소 외에 또 다른 요소를 배제하는 것이 아니라 또 다른 요소를 더 포함할 수 있는 것을 의미한다.In this specification, when an element is described as being "connected" with another element, it includes not only the case of being "directly connected" but also the case of being "indirectly connected" with another element interposed therebetween. When an element "includes" another element, it means that another element may be further included without excluding another element in addition to other elements unless otherwise stated.
일부 실시예들은 기능적인 블록 구성들 및 다양한 처리 단계들로 설명될 수 있다. 이러한 기능 블록들의 일부 또는 전부는 특정 기능을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 본 개시의 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 본 개시의 기능 블록이 수행하는 기능은 복수의 기능 블록에 의해 수행되거나, 본 개시에서 복수의 기능 블록이 수행하는 기능들은 하나의 기능 블록에 의해 수행될 수도 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.Some embodiments may be described in terms of functional block configurations and various processing steps. Some or all of these functional blocks may be implemented in various numbers of hardware and/or software configurations that perform specific functions. For example, the functional blocks of the present disclosure may be implemented by one or more microprocessors, or by circuit configurations for a given function. The functional blocks of the present disclosure may be implemented in various programming or scripting languages. The functional blocks of the present disclosure may be implemented as an algorithm running on one or more processors. A function performed by a functional block of the present disclosure may be performed by a plurality of functional blocks, or functions performed by a plurality of functional blocks in the present disclosure may be performed by one functional block. Also, the present disclosure may employ prior art for electronic configuration, signal processing, and/or data processing, and the like.
광학적 지형 참조 항법(optical Terrain-Referenced Absolute Navigation)을 이용하여 비행하는 비행체는 비행 경로를 따라 적절한 랜드마크 정보가 필요하다. 비행체가 달과 같은 행성에 근접하여 비행하는 경우, 광학적 항법의 직관적인 랜드마크로서 크래이터가 선택될 수 있다. 그러나, 달의 하이랜드(highland) 지역의 경우, 넓은 음영 지역으로 인하여 크래이터를 신뢰성 있게 검출하기 어려우며, 크래이터들을 광학적 항법의 랜드마크로 기능하지 못할 수 있다.An aircraft flying using optical terrain-referenced absolute navigation needs proper landmark information along the flight path. When the vehicle flies close to a planet such as the moon, the crater can be selected as an intuitive landmark for optical navigation. However, in the case of the highland region of the moon, it is difficult to reliably detect the craters due to the large shaded area, and the craters may not function as landmarks for optical navigation.
본 발명은 거친 지형에서조차도 광학적 항법의 랜드마크들로 사용될 수 있는 특이 영역들 결정하는 방법을 제안한다. 본 발명은 광학적 항법의 랜드마크로서 결정된 특이 영역들을 이용하여 비행 계획을 결정하는 방법을 제안한다. 본 발명은 특이 영역들을 포함하는 온보드 맵을 생성하고 이를 이용하여 달 주변을 비행 또는 달에 착륙하는 방법을 제안한다.The present invention proposes a method for determining singular areas that can be used as landmarks of optical navigation even in rough terrain. The present invention proposes a method for determining a flight plan using singular regions determined as landmarks of optical navigation. The present invention creates an onboard map including specific regions and proposes a method of flying around the moon or landing on the moon using this.
좋은 랜드마크를 결정하기 위하여, 다양한 조명 환경 하에서도 비슷한 랜드마크 후보자들을 서로 구별할 수 있도록 컨벌루션 신경망(CNN) 기반의 객체 검출기가 트레이닝된다. 컨벌루션 신경망은 일년 내의 모든 날짜에 비행 경로들을 따라 랜드마크 검출 가능성을 예측하는데 사용된다. 검출 가능성이 높은 날짜가 결정될 수 있으며, 이를 참조로 미션 계획이 결정될 수 있다.In order to determine a good landmark, a convolutional neural network (CNN)-based object detector is trained to distinguish similar landmark candidates from each other even under various lighting environments. A convolutional neural network is used to predict the detectability of landmarks along flight paths on any day within a year. A date with a high probability of detection may be determined, and a mission plan may be determined with reference to this date.
본 발명은 항법 위성이 존재하지 않는 달, 화성, 목성 등과 같은 행성의 지표면에서 광학적 항법을 위한 랜드마크로 기능할 수 있는 특이 영역들을 결정하고, 결정된 특이 영역들을 기초로 비행선 또는 착륙선에 탑재되는 온보드 맵을 생성하기 위한 것이다.The present invention determines singular regions that can function as landmarks for optical navigation on the surface of planets such as the moon, Mars, and Jupiter, where navigation satellites do not exist, and an onboard map mounted on an airship or lander based on the determined singular regions is to create
본 명세서의 상세한 설명에서는 본 발명의 용이한 이해를 위하여 달, 화성, 목성 등과 같은 지구 외 행성을 '달'로 통칭한다. 그러나, 본 발명은 달 주위를 탐사하거나 달에 착륙하기 위해서만 사용되는 것이 아니며, 화성이나 목성 등과 같은 다른 행성에 대하여도 본 발명의 균등 범위 내에서 적용될 수 있다.In the detailed description of the present specification, extraterrestrial planets such as the moon, Mars, and Jupiter are collectively referred to as a 'moon' for easy understanding of the present invention. However, the present invention is not used only for exploration around the moon or landing on the moon, and may be applied to other planets such as Mars or Jupiter within the equivalent scope of the present invention.
또한, 본 명세서의 상세한 설명에서는 예시적으로 달에 착륙하기 위한 탐사선을 중심으로 설명하지만, 본 발명은 달 궤도를 비행하는 궤도선 또는 비행선에도 동일하게 적용될 수 있다.In addition, although the detailed description of the present specification is illustratively focused on a probe for landing on the moon, the present invention is equally applicable to an orbiter or airship flying in lunar orbit.
본 명세서에서 컨벌루션 신경망(CNN) 기반의 인공 신경망을 트레이닝 한다는 것은 트레이닝 데이터를 이용하여 인공 신경망을 학습시킨다는 것과 실질적으로 동일한 의미이다. 또한, 본 명세서에서 포즈(pose)는 위치와 방향을 포함하는 개념이다. 예컨대, 착륙선의 포즈는 착륙선의 위치와 착륙선의 방향을 포함한다.In the present specification, training an artificial neural network based on a convolutional neural network (CNN) has substantially the same meaning as learning an artificial neural network using training data. Also, in the present specification, a pose is a concept including a position and a direction. For example, the pose of the lander includes the position of the lander and the orientation of the lander.
도 1은 본 발명에 따라서 달 주변을 공전하는 궤도선 및 달의 착륙 지점에 착륙하는 착륙선을 예시적으로 도시한다.1 exemplarily shows an orbiter revolving around the moon and a lander landing at a landing point on the moon in accordance with the present invention.
도 1을 참조하면, 궤도선(SC)은 달(M) 주변의 궤도(OR)를 따라 비행한다. 궤도선(SC)은 본 발명에 따라 생성된 온보드 맵을 메모리에 탑재할 수 있으며, 궤도선(SC)의 프로세서는 카메라를 통해 촬영한 지표면 영상과 온보드 맵에 기초하여 비행 방향 및/또는 자세(attitude)를 결정할 수 있다. 결정된 비행 방향 및/또는 자세가 계획한 비행 방향 및/또는 자세와 상이할 경우 스스로 수정할 수 있다.Referring to FIG. 1 , the orbiter SC flies along the orbit OR around the moon M. The orbiter SC may load the on-board map generated according to the present invention in a memory, and the processor of the orbiter SC performs the flight direction and/or attitude ( attitude) can be determined. If the determined flight direction and/or attitude differs from the planned flight direction and/or attitude, it may self-correct.
착륙선(LL)은 미리 결정된 착륙 궤적(LT)을 따라 달(M)의 착륙 지점(LS)에 착륙할 수 있다. 착륙선(LL)은 착륙 지점(LS)까지 하강하면서 미리 정해진 관측 지역들(OA1, OA2, OA3)을 촬영할 수 있다. 착륙선(LL)은 본 발명에 따라 생성된 온보드 맵을 메모리에 탑재할 수 있으며, 착륙선(LL)의 프로세서는 관측 지역들(OA1, OA2, OA3)의 지표면 영상과 관측 지역들(OA1, OA2, OA3)의 온보드 맵에 기초하여 비행 방향 및/또는 자세(attitude)를 결정할 수 있다.The lander LL may land at a landing point LS of the moon M along a predetermined landing trajectory LT. The lander LL may photograph predetermined observation areas OA1 , OA2 , and OA3 while descending to the landing point LS. The lander LL may load the on-board map generated according to the present invention in a memory, and the processor of the lander LL may store surface images of the observation areas OA1, OA2, OA3 and the observation areas OA1, OA2, The flight direction and/or attitude may be determined based on the onboard map of OA3).
착륙선(LL)이 착륙 궤적(LT)을 따라 착륙하고 있지 않다면, 착륙 지점(LS)에 착륙할 수 있도록 착륙선(LL)은 착륙 방향 또는 자세를 스스로 수정할 수 있다.If the lander LL is not landing along the landing trajectory LT, the lander LL can self-correct its landing direction or attitude so that it can land at the landing point LS.
온보드 맵에는 광학적 지형 참조 항법에 사용되는 랜드마크들로 기능할 수 있는 특이 객체들(또는 영역들)에 관한 정보가 저장된다. 특이 객체들(또는 영역들)은 관측 지역들(OA1, OA2, OA3) 각각에 대해 결정된다. 특이 객체들(또는 영역들)은 착륙 날짜에 따라 달라질 수 있다. 다른 예에 따르면, 착륙 예상 날짜에 따라 서로 다른 제1 특이 객체들(또는 영역들)과 제2 특이 객체들(또는 영역들)을 각각 포함하는 제1 및 제2 온보드 맵이 각각 생성되고 착륙선(LL)의 메모리에 저장될 수 있다. 제1 온보드 맵은 주위적으로 준비되고, 제2 온보드 맵은 예비적으로 준비된 것일 수 있다.The onboard map stores information about specific objects (or regions) that can serve as landmarks used for optical topographic reference navigation. Singular objects (or regions) are determined for each of the observation regions OA1 , OA2 , OA3 . The specific objects (or areas) may vary depending on the date of landing. According to another example, first and second onboard maps each including first and second unique objects (or regions) different from each other according to the expected landing date are generated, respectively, and the lander ( LL) can be stored in the memory. The first onboard map may be circumferentially prepared, and the second onboard map may be preliminary.
본 명세서에서 특이 객체(또는 영역)는 관측 지역(OA1, OA2, OA3)을 촬영한 영상에서 다양하게 변하는 환경에서도 다른 객체(또는 영역)과 구별될 수 있는 객체(또는 영역)을 의미한다. 특이 객체는 실제로 관측 지역(OA1, OA2, OA3) 내의 위치가 알려진 특정 영역에 대응하며, 관측 지역(OA1, OA2, OA3)을 촬영한 영상에서 이러한 특정 영역에 대응하는 특정 픽셀들의 집합으로 이해될 수 있다. 본 명세서에서 특이 객체는 관측 지역(OA1, OA2, OA3) 내의 특이 영역으로 지칭한다. 특이 영역은 해당 영역의 지형으로 인해 다른 영역들로부터 구별될 수 있다.In the present specification, the singular object (or region) refers to an object (or region) that can be distinguished from other objects (or regions) even in variously changing environments in images captured by the observation regions OA1, OA2, and OA3. A singular object actually corresponds to a specific area with a known location within the observation area (OA1, OA2, OA3), and can be understood as a set of specific pixels corresponding to this specific area in the image taken of the observation area (OA1, OA2, OA3). can In this specification, a singular object is referred to as a singular region within the observation areas OA1, OA2, and OA3. A singular area can be distinguished from other areas by the topography of that area.
관측 지역(OA1, OA2, OA3)을 촬영한 영상에서 특이 객체는 달의 해당 관측 지역(OA1, OA2, OA3)에서의 태양의 위치(고도와 방위각)에 따라 결정되는 다양한 조명 조건 하에서도 다른 객체들과 구별될 수 있다.In the image taken from the observation area (OA1, OA2, OA3), a singular object is another object under various lighting conditions determined by the position (altitude and azimuth) of the sun in the corresponding observation area (OA1, OA2, OA3) of the moon. can be distinguished from
착륙선(LL)에 탑재된 프로세서는 온보드 맵에 기록된 관측 지역(OA1, OA2, OA3) 내의 특이 객체들을 관측 지역(OA1, OA2, OA3)을 촬영한 영상에서 상관 관계 분석 또는 RANSAC 알고리즘을 통해 탐색함으로써 착륙선(LL)의 자세를 추정할 수 있다.The processor mounted on the lander (LL) searches for singular objects within the observation areas (OA1, OA2, OA3) recorded on the onboard map through correlation analysis or RANSAC algorithm in images captured in the observation areas (OA1, OA2, OA3). By doing so, the attitude of the lander LL can be estimated.
본 예에서, 관측 지역(OA1, OA2, OA3)이 3개인 것으로 예시되어 있지만, 이는 오로지 예시적이며, 4개 이상일 수 있으며, 2개 이하일 수도 있다. 관측 지역들(OA1, OA2, OA3) 중 어떤 하나의 관측 지역을 지칭할 때에는 관측 지역(OA)으로 표시한다.In this example, the observation areas OA1 , OA2 , and OA3 are illustrated as being three, but this is only exemplary, and may be four or more, and may be two or less. When referring to any one of the observation areas OA1, OA2, and OA3, it is denoted as the observation area OA.
도 2는 본 발명에 따라서 달의 착륙 지점에 착륙하는 착륙선을 예시적으로 도시한다.Figure 2 exemplarily shows a lander landing on the lunar landing site in accordance with the present invention.
도 2를 참조하면, 착륙선(LL)은 착륙 궤적(LT)을 따라 예컨대 15.24km의 고도에서 착륙 지점(LS)으로 하강할 수 있다. 착륙 지점(LS)은 남극(south pole)에 인접한 곳일 수 있다. 예컨대, 남위 89.98도 동경 0.02도일 수 있다. 이를 위하여, 착륙은 남위 74.958도 동경 0.02도에서 시작할 수 있다. 착륙선(LL)은 정확히 남쪽 방향으로 비행하면서 착륙 지점(LS)에 도달할 수 있다.Referring to FIG. 2 , the lander LL may descend to the landing point LS at an altitude of, for example, 15.24 km along the landing trajectory LT. The landing point LS may be adjacent to the south pole. For example, it may be 89.98 degrees south latitude and 0.02 degrees east longitude. To this end, the landing could begin at 74.958 degrees south latitude and 0.02 degrees east longitude. The lander LL can reach the landing point LS while flying in the exact south direction.
착륙 궤적(LT)에 따라 촬영할 수 있는 미리 설정된 관측 지역(OA1, OA3)을 촬영할 수 있다. 예컨대, 제1 관측 지역(OA1)은 착륙 궤적(LT)에 따라 10km 정도의 고도로 비행할 때 지나가는 지역이며, 제3 관측 지역(OA3)은 착륙 궤적(LT)에 따라 3km 정도의 고도로 비행할 때 지나가는 지역일 수 있다.Pre-set observation areas OA1 and OA3 that can be photographed according to the landing trajectory LT may be photographed. For example, the first observation area OA1 is an area that passes when flying at an altitude of about 10 km according to the landing trajectory LT, and the third observation area OA3 is an area that passes when flying at an altitude of about 3 km according to the landing trajectory LT. It could be a passing area.
위의 예에서, 관측 지역들(OA1, OA3)은 남위 74.958도 내지 남위 89.98도 사이에 위치하고, 동경 0.02도에 위치할 수 있다. 예컨대, 제1 관측 지역(OA1)은 예컨대 남위 85.39도에 위치할 수 있다.In the above example, the observation areas OA1 and OA3 may be located between 74.958 degrees south latitude and 89.98 degrees south latitude, and may be located at 0.02 degrees east longitude. For example, the first observation area OA1 may be located at, for example, 85.39 degrees south latitude.
달(M)의 극지방은 태양(S)의 고도가 낮기 때문에 물이 존재할 가능성이 높고, 달(M)의 극지방에는 지구와 항상 통신이 가능한 산 봉우리 지형이 위치하기 때문에, 다른 지역에 비해 탐사 가치가 높다고 알려져 있다. The polar region of the moon (M) has a high possibility of water presence because the altitude of the sun (S) is low, and the pole region of the moon (M) has mountain peaks that can always communicate with the earth, so it is worth exploring compared to other regions is known to be high.
관측 지역들(OA1, OA3)의 위도가 높기 때문에, 태양(S)의 고도(θ)는 2도 이하, 예컨대, 0.330도 내지 1.898도 사이일 수 있다. 태양(S)의 방위각(φ)은 0도 내지 360도 사이일 수 있다. Because the latitudes of the observation areas OA1 and OA3 are high, the altitude θ of the sun S may be 2 degrees or less, for example, between 0.330 degrees and 1.898 degrees. The azimuth φ of the sun S may be between 0 degrees and 360 degrees.
도 3은 본 발명에 따른 착륙선의 내부 구성을 개략적으로 도시한다.3 schematically shows the internal configuration of a lander according to the present invention.
도 3을 참조하면, 착륙선(10)은 프로세서(11), 메모리(12), 카메라(13), 센서(14) 및 추력기(15)를 포함한다. 착륙선(10)은 별 추적기, 계획된 임무에 따른 장치 등과 같은 구성요소들을 더 포함할 수 있다. 착륙선(10)은 설계에 따라서 전술한 구성 요소 중 일부만을 포함할 수도 있다.Referring to FIG. 3 , the lander 10 includes a processor 11 , a memory 12 , a camera 13 , a sensor 14 , and a thruster 15 . Lander 10 may further include components such as star trackers, devices according to a planned mission, and the like. The lander 10 may include only some of the above-described components depending on the design.
착륙선(10)은 예컨대 도 2에 도시된 달 착륙선(LL)일 수 있으며, 달(M)의 착륙 지점(LS)에 착륙하기 위해 착륙 궤적(LT)을 따라 비행할 수 있다.The lander 10 may be, for example, a lunar lander LL shown in FIG. 2 , and may fly along a landing trajectory LT to land at a landing point LS of the moon M.
프로세서(11)는 착륙선(10)의 전반적인 제어를 담당하며, 착륙선(10)이 착륙 궤적(LT)따라 비행하고 착륙 지점(LS)에 착륙할 수 있도록 착륙선(10)을 제어할 수 있다.The processor 11 is responsible for overall control of the lander 10 , and may control the lander 10 so that the lander 10 can fly along the landing trajectory LT and land at the landing point LS.
메모리(12)에는 프로세서(11)가 동작하기 위한 명령어들이 저장된다. 그 외에도 메모리(12)에는 착륙 궤적(LT)에 관한 정보가 저장된다. 메모리(12)에는 착륙선(10)이 착륙 지점(LS)에 착륙하기 위해 계획된 방향으로 비행하는지 착륙 궤적(LT)에서 계획된 자세를 유지하고 있는지를 결정하기 위해 관측 지역들(OA) 내의 특이 영역들을 포함하는 온보드 맵이 저장될 수 있다.The memory 12 stores instructions for operating the processor 11 . In addition, information about the landing trajectory LT is stored in the memory 12 . The memory 12 includes singular areas within the observation areas OA to determine whether the lander 10 is flying in the planned direction to land at the landing point LS or is maintaining the planned attitude at the landing trajectory LT. An onboard map containing may be stored.
착륙선(10)은 달(M) 주변을 공전하다가 착륙 지점(LS)에 착륙하기 위해 착륙을 시작할 수 있다. 착륙 계획에 따라 설정된 착륙 일자가 결정되지만, 해당 착륙 일자에 착륙을 하지 못할 것을 대비하여 예비적으로 다른 착륙 일자들이 준비될 수 있다. 우선적으로 착륙을 시도할 착륙 일자는 제1 착륙 일자라고 지칭하고, 제1 착륙 일자에 착륙을 시도하지 못했을 경우 예비적으로 준비된 예비 착륙 일자는 제2 착륙 일자라고 지칭한다. 제2 착륙 일자 외에도 제3, 제4 착륙 일자들이 미리 결정되어 있을 수도 있다. 본 명세서에서, 착륙 일자는 단지 해당 날짜만을 의미하는 것이 아니라, 해당 일자의 착륙 시간을 포함하는 착륙 일시를 포함한다.The lander 10 may start to land in order to land at the landing point LS while orbiting around the moon M. Although the landing plan determines the set landing date, other landing dates may be prepared in advance in case of failure to land on that landing date. The landing date on which the preferential landing attempt is made is referred to as the first landing date, and the preliminary landing date prepared in advance in case of failure to land on the first landing date is referred to as the second landing date. In addition to the second landing date, third and fourth landing dates may be predetermined. In this specification, the landing date does not mean only the corresponding date, but includes the landing date and time including the landing time of the corresponding date.
메모리(12)에는 제1 착륙 일자의 태양 고도에 따라 선택되는 제1 특이 영역들을 포함하는 관측 지역들(OA)의 제1 온보드 맵이 저장되고, 제2 착륙 일자의 태양 고도에 따라 선택되는 제2 특이 영역들을 포함하는 관측 지역들(O)의 제1 온보드 맵이 저장될 수 있다. 프로세서(11)는 제1 착륙 일자에는 제1 온보드 맵을 이용하고, 제2 착륙 일자에는 제2 온보드 맵을 이용할 수 있다. 제1 온보드 맵의 관측 지역(OA)과 제2 온보드 맵의 관측 지역(OA)은 서로 동일하지 않을 수도 있다. 또한, 제1 온보드 맵의 제1 특이 영역들과 제2 온보드 맵의 제2 특이 영역들은 동일할 수도, 일부만 동일할 수도, 모두 상이할 수도 있다.The memory 12 stores a first onboard map of observation areas OA including first singular areas selected according to the solar altitude of the first landing date, and a first onboard map selected according to the solar altitude of the second landing date. A first onboard map of the observation regions O including the two singular regions may be stored. The processor 11 may use the first onboard map on the first landing date and use the second onboard map on the second landing date. The observation area OA of the first onboard map and the observation area OA of the second onboard map may not be identical to each other. In addition, the first singular regions of the first onboard map and the second singular regions of the second onboard map may be the same, some may be the same, or all may be different.
카메라(13)는 착륙선(10)에 탑재되어, 달(M)의 지표면을 촬영할 수 있다. 카메라(13)는 착륙선(10)에 미리 설정된 위치에 장착되고, 미리 설정된 방향을 지향할 수 있다. 예컨대, 카메라(13)는 달(M)의 중심 방향을 지향하도록 설정될 수도 있고, 착륙선(10)에 대해 고정된 방향을 지향할 수도 있다.The camera 13 may be mounted on the lander 10 to photograph the surface of the moon M. The camera 13 is mounted at a preset position on the lander 10 and may be oriented in a preset direction. For example, the camera 13 may be set to point in the direction of the center of the moon M, or may point in a fixed direction with respect to the lander 10 .
카메라(13)는 2차원 카메라일 수 있으며, 흑백 영상을 생성할 수 있다. 다른 예에 따르면, 카메라(13)는 1차원 라인 카메라일 수도 있다. 카메라(13)는 컬러 영상을 생성하는 컬러 카메라일 수도 있다. 카메라(13)의 화각은 예컨대 80도일 수 있으며, 카메라(13)가 생성한 영상의 종횡비(aspect ratio)는 예컨대 1일 수 있다. 카메라(13)의 해상도는 예컨대 416 x 416일 수 있다.The camera 13 may be a two-dimensional camera and may generate a black-and-white image. According to another example, the camera 13 may be a one-dimensional line camera. The camera 13 may be a color camera that generates a color image. The angle of view of the camera 13 may be, for example, 80 degrees, and the aspect ratio of the image generated by the camera 13 may be, for example, 1. The resolution of the camera 13 may be, for example, 416 x 416.
카메라(13)는 프로세서(11)의 제어에 따라 달(M)의 지표면을 촬영하고 지표면 영상을 프로세서(11)에 제공할 수 있다.The camera 13 may photograph the earth's surface of the moon M under the control of the processor 11 , and may provide an image of the earth's surface to the processor 11 .
센서(14)는 착륙선(10)의 상태를 감지할 수 있다. 예컨대, 센서(14)는 관성 센서, 가속도 센서, 중력 센서, 고도 센서, 온도 센서 중 적어도 하나를 포함할 수 있다. 센서(14)는 착륙선(10)의 고도를 감지할 수 있다. 센서(14)는 센싱된 값을 프로세서(11)로 제공할 수 있다.The sensor 14 may detect the state of the lander 10 . For example, the sensor 14 may include at least one of an inertial sensor, an acceleration sensor, a gravity sensor, an altitude sensor, and a temperature sensor. The sensor 14 may detect the altitude of the lander 10 . The sensor 14 may provide the sensed value to the processor 11 .
추력기(15)는 프로세서(11)의 제어에 따라 착륙선(10)의 자세 또는 비행 방향을 변경하기 위한 힘을 제공할 수 있다.The thruster 15 may provide a force for changing the attitude or flight direction of the lander 10 under the control of the processor 11 .
도 4는 본 발명에 따른 착륙선의 프로세서의 동작을 개략적으로 도시한다.4 schematically shows the operation of the processor of the lander according to the invention;
도 3과 함께 도 4를 참조하면, 프로세서(11)는 메모리(12)에 저장된 착륙 절차 명령어들에 따라서 착륙선(10)이 관측 지역(OA) 상에 위치하는 것으로 판단되면 카메라(13)를 동작시켜서 달(M)의 지표면 영상(13p)을 획득할 수 있다. 프로세서(11)는 센서(14)를 통해 착륙선(10)의 고도를 감지함으로써 착륙선(10)이 관측 지역(OA) 상에 위치하는 것으로 판단할 수 있다.Referring to FIG. 4 together with FIG. 3 , the processor 11 operates the camera 13 when it is determined that the lander 10 is located on the observation area OA according to the landing procedure instructions stored in the memory 12 . It is possible to obtain an image 13p of the surface of the moon M by doing this. The processor 11 may determine that the lander 10 is located on the observation area OA by sensing the altitude of the lander 10 through the sensor 14 .
프로세서(11)는 메모리(12)에 저장된 해당 관측 지역(OA)의 온보드 맵(12m)을 로딩하고, 관측 지역(OA)의 온보드 맵(12m)과 관측 지역(OA)의 지표면 영상(13p)을 비교할 수 있다. 프로세서(11)는 온보드 맵(12m)에 기록된 관측 지역(OA) 내의 특이 영역들(SRO)을 관측 지역(OA)의 지표면 영상(13p)에서 상관 관계 분석 또는 RANSAC 알고리즘을 통해 탐색할 수 있다. 지표면 영상(13p)에서 탐색된 특이 영역들(SRO)의 배치와 온보드 맵(12m) 상의 특이 영역들(SRO)의 배치를 비교함으로써, 프로세서(11)는 착륙선(10)의 현재 비행 방향 또는 자세를 결정할 수 있다.The processor 11 loads the onboard map 12m of the corresponding observation area OA stored in the memory 12, the onboard map 12m of the observation area OA and the ground surface image 13p of the observation area OA) can be compared. The processor 11 may search for singular areas SRO in the observation area OA recorded on the onboard map 12m from the surface image 13p of the observation area OA through correlation analysis or RANSAC algorithm. . By comparing the arrangement of the singular regions SRO found in the ground surface image 13p with the arrangement of the singular regions SRO on the onboard map 12m, the processor 11 determines the current flight direction or attitude of the lander 10 . can be decided
다른 예에 따르면, 프로세서(11)는 사전에 트레이닝된 컨벌루션 신경망 기반의 객체 검출 모델을 포함할 수 있으며, 객체 검출 모델에 지표면 영상(13p)와 온보드 맵(12m)을 입력함으로써, 착륙선(10)의 현재 비행 방향 또는 자세를 결정할 수도 있다.According to another example, the processor 11 may include a pre-trained convolutional neural network-based object detection model, and by inputting a ground image 13p and an onboard map 12m to the object detection model, the lander 10 may determine the current flight direction or attitude of
프로세서(11)는 감지된 현재 비행 방향 또는 자세를 미리 설정된 착륙 계획에 따른 방향 또는 자세와 비교하고, 만약 이들이 상이할 경우, 추력기(15)를 이용하여 착륙선(10)의 자세 또는 비행 방향을 수정할 수 있다. 따라서, 착륙선(10)은 미리 결정된 착륙 계획에 따라 미리 결정한 착륙 지점(LS)에 정확하게 착륙할 수 있다.The processor 11 compares the sensed current flight direction or attitude with a direction or attitude according to a preset landing plan, and if they are different, using the thruster 15 to correct the attitude or flight direction of the lander 10 can Accordingly, the lander 10 can land accurately at the predetermined landing point LS according to the predetermined landing plan.
아래에서는 본 발명에 따라서 특이 영역들을 결정하는 방법 및 장치, 특이 영역들을 포함하는 온보드 맵을 생성하는 방법 및 장치에 대하여 설명한다.Hereinafter, a method and apparatus for determining singular regions and a method and apparatus for generating an onboard map including singular regions according to the present invention will be described.
도 5는 본 발명에 따라서 달의 관측 지역의 영상들을 기초로 특이 영역들을 결정하고, 특이 영역들을 포함하는 온보드 맵을 생성하는 컴퓨팅 장치를 개략적으로 도시한다.5 schematically shows a computing device for determining singular regions based on images of an observation region of the moon and generating an onboard map including the singular regions according to the present invention.
도 5를 참조하면, 컴퓨팅 장치(100)에는 복수의 영상들(200)이 입력되고, 컴퓨팅 장치(100)는 복수의 영상들(200)에 기초하여 온보드 맵(300)을 생성한다.Referring to FIG. 5 , a plurality of images 200 are input to the computing device 100 , and the computing device 100 generates an onboard map 300 based on the plurality of images 200 .
영상들(200)은 달(M)의 관측 지역(OA)을 촬영한 영상들이다. 영상들(200) 중 일부는 관측 지역(OA) 전체를 포함할 수 있다. 다른 예에 따르면, 영상들(200) 중 일부는 관측 지역(OA) 중 일부만을 포함할 수도 있다. 즉, 관측 지역(OA) 중 일부만이 영상(200)에 나타날 수도 있다. 영상들(200)의 배율은 모두 일정할 수도 있고, 서로 상이할 수도 있다.The images 200 are images of the observation area OA of the moon M. Some of the images 200 may include the entire observation area OA. According to another example, some of the images 200 may include only a portion of the observation area OA. That is, only a part of the observation area OA may appear in the image 200 . All of the magnifications of the images 200 may be constant or different from each other.
영상들(200)은 컴퓨팅 장치(100) 내의 컨벌루션 신경망 기반의 객체 검출 모델을 트레이닝하기 위한 트레이닝 영상들, 및 객체 검출 모델을 시험하여 특이 영역들을 결정하기 위한 테스트 영상들을 포함할 수 있다. 영상들(200)은 객체 검출 모델의 유효성을 검증하기 위한 검증 영상들을 더 포함할 수 있다. 본 명세서에서 컨벌루션 신경망 기반의 객체 검출 모델은 인공 신경망 또는 루나넷으로 지칭될 수 있다.The images 200 may include training images for training an object detection model based on a convolutional neural network in the computing device 100 , and test images for determining specific regions by testing the object detection model. The images 200 may further include verification images for verifying the validity of the object detection model. In the present specification, an object detection model based on a convolutional neural network may be referred to as an artificial neural network or a lunanet.
전술한 바와 같이 관측 지역(OA)은 미리 결정된 착륙 지점(LS) 및 착륙 지점(LS)에 착륙하기 위한 착륙 궤적(LT)을 기초로 결정된다. 착륙 지점(LS)에 착륙하기 위한 착륙 일자들도 미리 결정될 수 있다. 관측 지역(OA)은 미리 정확한 위치가 알려져 있다.As described above, the observation area OA is determined based on a predetermined landing point LS and a landing trajectory LT for landing at the landing point LS. Landing dates for landing at the landing point LS may also be predetermined. The exact position of the observation area OA is known in advance.
관측 지역(OA)은 임시로 결정될 수 있다. 관측 지역(OA) 내에 미리 설정한 개수의 특이 영역들(SRO)이 존재하지 않을 경우, 관측 지역(OA)은 변경될 수 있다. 다른 예에 따르면, 관측 지역(OA) 내에 미리 설정한 개수의 특이 영역들(SRO)이 존재하지 않을 경우, 후보 영역들(도 6의 CRO)의 구성이 변경될 수도 있다.The observation area OA may be temporarily determined. When a preset number of singular areas SRO does not exist in the observation area OA, the observation area OA may be changed. According to another example, when a preset number of singular areas SRO does not exist in the observation area OA, the configuration of the candidate areas (CRO of FIG. 6 ) may be changed.
일 실시예에 따르면, 영상들(200)은 관측 지역(OA) 상에 주기를 갖는 궤도를 따라 비행하는 적어도 하나의 인공 위성에 의해 촬영된 위성 영상들을 포함할 수 있다. 영상들(200)은 관측 지역(OA)의 상공을 비행하는 비행체에 의해 촬영된 영상들을 포함할 수 있다. 영상들(200)은 지구에서 관측 지역(OA)을 촬영한 영상들을 포함할 수 있다.According to an embodiment, the images 200 may include satellite images captured by at least one artificial satellite flying along an orbit having a period on the observation area OA. The images 200 may include images captured by an aircraft flying over the observation area OA. The images 200 may include images obtained by photographing the observation area OA on the Earth.
다른 실시예에 따르면, 영상들(200)은 관측 지역(OA)의 모델링된 지형, 관측 지역(OA)에 대한 태양의 위치, 및 관측 지역(OA)을 촬영하는 카메라의 포즈에 기초하여 생성된 합성 영상들을 포함할 수 있다. 일 예에 따르면, 관측 지역(OA)에 대해 생성된 합성 영상들은 예컨대 수백 내지 수만 개일 수 있다.According to another embodiment, the images 200 are generated based on the modeled topography of the observation area OA, the position of the sun with respect to the observation area OA, and a pose of a camera photographing the observation area OA. Composite images may be included. According to an example, the number of synthesized images generated for the observation area OA may be, for example, hundreds to tens of thousands.
관측 지역(OA)의 모델링된 지형은 관측 지역(OA) 상에 주기를 갖는 궤도를 따라 비행하는 적어도 하나의 인공 위성에 의해 촬영된 위성 영상들, 관측 지역(OA)의 상공을 비행하는 비행체에 의해 촬영된 영상들, 및 지구에서 관측 지역(OA)을 촬영한 영상들 중 적어도 하나를 기초로 생성될 수 있다.The modeled topography of the observation area OA is captured by satellite images taken by at least one artificial satellite flying along an orbit having a period on the observation area OA, and by a vehicle flying over the observation area OA. The image may be generated based on at least one of captured images and images of the observation area OA on the Earth.
관측 지역(OA)에 대한 태양의 위치는 관측 지역(OA)의 위치에 기초하여 미리 설정된 범위 내에서 설정될 수 있다. 합성 영상들은 관측 지역(OA)에 대한 태양의 위치를 미리 설정된 범위 내에서 변경하면서 생성될 수 있다.The position of the sun with respect to the observation area OA may be set within a preset range based on the position of the observation area OA. The composite images may be generated while changing the position of the sun with respect to the observation area OA within a preset range.
관측 지역(OA)을 촬영하는 카메라의 포즈는 착륙 궤적(LT)에 기초하여 미리 설정된 범위 내에서 설정될 수 있다. 합성 영상들은 관측 지역(OA)을 촬영하는 카메라의 포즈를 미리 설정된 범위 내에서 변경하면서 생성될 수 있다. 예를 들면, 관측 지역(OA)에 대한 카메라의 위치를 변경하면서, 관측 지역(OA)을 바라보는 카메라의 방향도 함께 변경하면서 합성 영상들이 생성될 수 있다.The pose of the camera capturing the observation area OA may be set within a preset range based on the landing trajectory LT. Synthetic images may be generated while changing a pose of a camera that captures the observation area OA within a preset range. For example, while changing the position of the camera with respect to the observation area OA, the synthesized images may be generated while also changing the direction of the camera facing the observation area OA.
합성 영상들은 관측 지역(OA)을 실측한 3차원 지형에 기초하여 생성될 수 있다. 합성 영상들은 모델링된 지형의 표면 반사도 및 재질에 기초하여 생성될 수 있다. 합성 영상들은 모델링된 대기 모델에 기초하여 생성될 수 있다. 합성 영상들은 카메라의 해상도, 시야 범위, 및 렌즈 중 적어도 하나에 기초하여 생성될 수 있다.Synthetic images may be generated based on a 3D topography in which the observation area OA is measured. Synthetic images may be generated based on the surface reflectivity and material of the modeled terrain. Synthetic images may be generated based on a modeled atmospheric model. The composite images may be generated based on at least one of a resolution of a camera, a field of view, and a lens.
예를 들면, 합성 영상들은 관측 지역(OA)의 실측 3차원 지형 또는 모델링된 지형, 모델링된 표면 반사도 및 재질, 모델링된 대기 모델, 관측 지역(OA)에 대한 태양의 위치포즈, 및 관측 지역(OA)을 촬영하는 카메라의 포즈위치와 지향 방향, 해상도, 시야 범위, 및 렌즈 중 적어도 일부에 기초하여 생성될 수 있다.For example, the synthesized images include the actual three-dimensional topography or modeled topography of the observation area (OA), the modeled surface reflectance and material, the modeled atmospheric model, the position of the sun with respect to the observation area (OA), and the observation area ( OA) may be generated based on at least a part of a pose position and orientation direction, resolution, field of view range, and lens of a camera photographing the OA).
컴퓨팅 장치(100)는 관측 지역(OA)과 관측 지역(OA) 내의 복수의 후보 영역들(도 6의 CRO)을 결정할 수 있다. 컴퓨팅 장치(100)는 영상들(200)에 기초하여 객체 검출 모델을 생성하고, 객체 검출 모델을 이용하여 관측 지역(OA) 내의 다른 후보 영역들(CRO)에 비해 특히 피탐색 성능이 높은 특이 영역들(도 4의 SRO)을 결정할 수 있다. 컴퓨팅 장치(100)는 관측 지역(OA) 내에 위와 같이 결정된 특이 영역들(SRO)을 포함하는 온보드 맵(300)을 생성할 수 있다. 온보드 맵(300)은 전술한 바와 같이 예컨대 도 3의 착륙선(10)의 메모리(12)에 저장되어, 착륙선(10)이 달(M)의 착륙 지점(LS)에 정확하게 착륙하는데 이용될 수 있다.The computing device 100 may determine the observation area OA and a plurality of candidate areas (CRO of FIG. 6 ) within the observation area OA. The computing device 100 generates an object detection model based on the images 200 , and uses the object detection model to create a singular area with particularly high search performance compared to other candidate areas CRO within the observation area OA. (SRO of FIG. 4 ) may be determined. The computing device 100 may generate the onboard map 300 including the singular areas SRO determined as above in the observation area OA. The onboard map 300 is stored in the memory 12 of the lander 10 of FIG. 3, for example, as described above, and can be used to accurately land the lander 10 at the landing point LS of the moon M. .
아래에서 컴퓨팅 장치(100)의 내부 구성 및 동작에 대하여 더욱 자세히 설명한다. 컴퓨팅 장치(100)를 자세히 설명하기에 앞서, 관측 지역(OA)의 후보 영역들에 대하여 먼저 설명한다.Below, the internal configuration and operation of the computing device 100 will be described in more detail. Before describing the computing device 100 in detail, candidate areas of the observation area OA will be described first.
도 6a 내지 도 6c는 본 발명의 다양한 실시예들에 따른 관측 지역(OA) 내의 후보 영역들의 구성을 예시적으로 도시한다.6A to 6C exemplarily show configurations of candidate areas in an observation area OA according to various embodiments of the present disclosure.
도 6a를 참조하면, 일 실시예에 따른 관측 지역(OA) 내의 후보 영역들(CRO1, CRO2, ..., CROi)가 예시적으로 도시된다. 후보 영역들(CRO1, CRO2, ..., CROi)은 후보 영역들(CRO)로 지칭될 수 있다.Referring to FIG. 6A , candidate areas CRO1 , CRO2 , ..., CROi in the observation area OA according to an exemplary embodiment are illustrated. The candidate regions CRO1 , CRO2 , ..., CROi may be referred to as candidate regions CRO.
후보 영역들(CRO)은 관측 지역(OA) 내에 사용자에 의해 선택될 수 있다. 후보 영역들(CRO)은 관측 지역(OA) 내에 서로 중첩하지 않도록 분포될 수 있다. 도 6a에는 후보 영역들(CRO)이 직사각형으로 예시되어 있지만, 이는 예시적이며 원형, 삼각형, 육각형, 비정형 다각형일 수도 있다. 후보 영역들(CRO) 중 적어도 일부는 기울어질 수도 있다. 후보 영역들(CRO)은 서로 다른 형상을 가질 수 있다.The candidate areas CRO may be selected by a user within the observation area OA. The candidate areas CRO may be distributed so as not to overlap each other within the observation area OA. Although the candidate regions CRO are illustrated as rectangles in FIG. 6A , these are exemplary and may be circular, triangular, hexagonal, or irregular polygons. At least some of the candidate regions CRO may be inclined. The candidate regions CRO may have different shapes.
사용자는 관측 지역(OA)의 정확한 위치를 알고 있으므로, 후보 영역들(CRO)의 정확한 위치도 알고 있다. 후보 영역들(CRO)이 직사각형인 경우, 후보 영역(CRO)을 특정하기 위하여, 중심 위치, 가로 길이, 세로 길이, 기울기 중 적어도 하나가 결정될 수 있다.Since the user knows the exact location of the observation area OA, the user also knows the exact location of the candidate areas CRO. When the candidate areas CRO are rectangular, at least one of a center position, a horizontal length, a vertical length, and a slope may be determined to specify the candidate area CRO.
도 6a에는 5개의 후보 영역들(CRO)이 예시적으로 도시되지만, 후보 영역들(CRO)의 개수는 4개 이하이거나 6개 이상일 수도 있다. 하지만, 후보 영역들(CRO)의 개수는 미리 설정된 개수 이상일 수 있다. 여기서 미리 설정된 개수는 착륙선이 촬영한 지표면 영상에서 탐색된 특이 영역들의 배치를 기초로 착륙선의 자세를 결정할 수 있도록 3개 이상일 수 있다. 미리 설정된 개수가 크게 설정될수록 착륙선의 자세 정확도는 높아지지만, 지표면 영상에서 모두 검출되지 않을 수도 있으므로, 10개 이상으로 너무 크게 설정되지 않을 수 있다.Although five candidate areas CRO are illustrated in FIG. 6A , the number of candidate areas CRO may be 4 or less or 6 or more. However, the number of candidate regions CRO may be greater than or equal to a preset number. Here, the preset number may be three or more so that the attitude of the lander can be determined based on the arrangement of the specific regions searched for in the image of the ground surface captured by the lander. As the preset number is set to be larger, the accuracy of the attitude of the lander increases, but all of them may not be detected in the image of the earth's surface.
도 6b를 참조하면, 다른 실시예에 따른 관측 지역(OA) 내의 후보 영역들(CRO1, CRO2, ..., CROi)가 예시적으로 도시된다. 후보 영역들(CRO1, CRO2, ..., CROi)은 후보 영역들(CRO)로 지칭될 수 있다.Referring to FIG. 6B , candidate areas CRO1 , CRO2 , ..., CROi in the observation area OA according to another exemplary embodiment are illustrated. The candidate regions CRO1 , CRO2 , ..., CROi may be referred to as candidate regions CRO.
후보 영역들(CRO)은 모두 미리 설정된 형상을 갖고, 관측 지역(OA) 내에 서로 인접하게 배열될 수 있다. 도 6b의 예에서 후보 영역들(CRO)은 정육각형인 것으로 도시되어 있지만, 이는 예시적이며, 예컨대, 사각형, 삼각형, 마름모 등의 다른 형상을 가질 수 있다.The candidate areas CRO may all have a preset shape and may be arranged adjacent to each other in the observation area OA. In the example of FIG. 6B , the candidate regions CRO are illustrated as having a regular hexagon, but this is exemplary and may have other shapes such as a square, a triangle, a rhombus, and the like.
후보 영역들(CRO)은 관측 지역(OA) 내에서 서로 경계가 맞닿도록 배열될 수 있다. 그러나, 후보 영역들(CRO) 사이에 빈 공간이 존재할 수도 있다. 관측 지역(OA) 중에서 후보 영역들(CRO)이 아닌 영역은 배경 영역으로 지칭될 수 있다. 후보 영역들(CRO)이 직사각형인 경우, 배경 영역은 존재하지 않을 수도 있다.The candidate areas CRO may be arranged so that their boundaries contact each other within the observation area OA. However, an empty space may exist between the candidate regions CRO. An area other than the candidate areas CRO among the observation area OA may be referred to as a background area. When the candidate regions CRO are rectangular, the background region may not exist.
관측 지역(OA) 중 테두리 영역에는 후보 영역들(CRO)이 설정되지 않고, 배경 영역으로 남겨둘 수 있다. 착륙선이 관측 지역(OA)을 촬영하려고 하더라도, 착륙선의 자세에 따라 관측 지역(OA) 중 일부만이 촬영될 수 있다. 즉, 관측 지역(OA) 중 테두리 영역의 일부가 촬영되지 않을 수 있다. 이러한 점을 고려할 때, 특이 영역들(SRO)은 관측 지역(OA)의 테두리 영역에 위치하지 않는 것이 유리할 수 있다. 이를 위하여, 관측 지역(OA) 중 테두리 영역에는 후보 영역들(CRO)이 설정되지 않을 수 있다.Candidate areas CRO may not be set in the edge area of the observation area OA and may be left as a background area. Even if the lander attempts to capture the observation area OA, only a part of the observation area OA may be photographed depending on the attitude of the lander. That is, a part of the edge area of the observation area OA may not be photographed. In consideration of this point, it may be advantageous that the singular areas SRO are not located in the edge area of the observation area OA. To this end, candidate areas CRO may not be set in the edge area of the observation area OA.
후보 영역들(CRO)은 모두 동일한 크기와 동일한 형상을 가질 수 있다. 이 경우, 중심 위치와 하나의 길이만으로 후보 영역들(CRO)이 특정될 수 있다. 하나의 길이는 중심점과 꼭지점 간의 거리, 한 변의 길이, 또는 서로 마주보는 꼭지점 간의 거리 중 하나로 설정될 수 있다.The candidate regions CRO may all have the same size and the same shape. In this case, the candidate regions CRO may be specified only by the central position and one length. One length may be set as one of a distance between a center point and a vertex, a length of one side, or a distance between opposing vertices.
도 6b에는 39개의 후보 영역들(CRO)이 예시적으로 도시되지만, 후보 영역들(CRO)의 개수는 이보다 적거나 많을 수 있다. 도 6b와 같이 후보 영역들(CRO)을 설정한 경우에 미리 설정된 개수의 특이 영역들(SRO)이 발견되지 않으며, 후보 영역들(CRO)의 위치, 개수, 형상, 배치 중 적어도 하나를 변경한 후, 컴퓨팅 장치(100)는 변경된 후보 영역들(CRO) 중에서 미리 설정된 개수의 특이 영역들(SRO)을 다시 찾을 수 있다.Although 39 candidate regions CRO are exemplarily illustrated in FIG. 6B , the number of candidate regions CRO may be less or more. When the candidate regions CRO are set as shown in FIG. 6B , a preset number of singular regions SRO is not found, and at least one of the position, number, shape, and arrangement of the candidate regions CRO is changed. Thereafter, the computing device 100 may again find a preset number of specific regions SRO from among the changed candidate regions CRO.
도 6c를 참조하면, 또 다른 실시예에 따른 관측 지역(OA) 내의 후보 영역들(CRO1, CRO2, ..., CROi)가 예시적으로 도시된다. 후보 영역들(CRO1, CRO2, ..., CROi)은 후보 영역들(CRO)로 지칭될 수 있다.Referring to FIG. 6C , candidate areas CRO1 , CRO2 , ..., CROi in the observation area OA according to another exemplary embodiment are illustrated. The candidate regions CRO1 , CRO2 , ..., CROi may be referred to as candidate regions CRO.
후보 영역들(CRO)은 모두 미리 설정된 반지름을 갖는 원형이고, 관측 지역(OA) 내에 서로 인접하게 배열될 수 있다. 후보 영역들(CRO)은 관측 지역(OA) 내에서 서로 경계가 맞닿도록 배열될 수 있다. 그러나, 후보 영역들(CRO)은 서로 이격하여 배열될 수도 있다. 관측 지역(OA) 중 테두리 영역에는 후보 영역들(CRO)이 설정되지 않을 수 있다.The candidate areas CRO are all circular having a preset radius, and may be arranged adjacent to each other in the observation area OA. The candidate areas CRO may be arranged so that their boundaries contact each other within the observation area OA. However, the candidate regions CRO may be arranged to be spaced apart from each other. Candidate areas CRO may not be set in the edge area of the observation area OA.
후보 영역들(CRO)은 모두 동일한 반지름을 가질 수 있다. 이 경우, 중심 위치와 반지름 길이만으로 후보 영역들(CRO)이 특정될 수 있다.The candidate regions CRO may all have the same radius. In this case, the candidate regions CRO may be specified only by the central position and the radial length.
도 6c에는 69개의 후보 영역들(CRO)이 예시적으로 도시되지만, 후보 영역들(CRO)의 개수는 이보다 적거나 많을 수 있다. 도 6c와 같이 후보 영역들(CRO)을 설정한 경우에 미리 설정된 개수의 특이 영역들(SRO)이 발견되지 않으며, 후보 영역들(CRO)의 위치, 개수, 형상, 배치 중 적어도 하나를 변경한 후, 컴퓨팅 장치(100)는 변경된 후보 영역들(CRO) 중에서 미리 설정된 개수의 특이 영역들(SRO)을 다시 찾을 수 있다.Although 69 candidate regions CRO are illustrated in FIG. 6C by way of example, the number of candidate regions CRO may be less or more. When the candidate regions CRO are set as shown in FIG. 6C , a preset number of singular regions SRO is not found, and at least one of the position, number, shape, and arrangement of the candidate regions CRO is changed. Thereafter, the computing device 100 may again find a preset number of specific regions SRO from among the changed candidate regions CRO.
예를 들면, 후보 영역들(CRO)의 위치가 후보 영역들(CRO)의 반지름 길이만큼 수평으로 이동될 수 있다. 후보 영역들(CRO)의 반지름 길이를 증가시키거나 감소시켜서 후보 영역들(CRO)의 개수가 변경될 수 있다. 후보 영역들(CRO)의 형상이 도 6b와 같은 육각형, 사각형, 삼각형 등으로 변경될 수 있다. 후보 영역들(CRO) 간에 이격 거리가 조절될 수도 있다.For example, the positions of the candidate regions CRO may be horizontally moved by the radial length of the candidate regions CRO. The number of candidate regions CRO may be changed by increasing or decreasing the radial length of the candidate regions CRO. The shape of the candidate regions CRO may be changed to a hexagon, a rectangle, a triangle, etc. as shown in FIG. 6B . A separation distance between the candidate regions CRO may be adjusted.
후보 영역들(CRO)은 관측 지역(OA) 내에 사용자에 의해 설정된다. 사용자는 관측 지역(OA)의 정확한 위치를 알고 있으므로, 후보 영역들(CRO)의 정확한 위치 역시 알고 있다.The candidate areas CRO are set by the user in the observation area OA. Since the user knows the exact location of the observation area OA, the user also knows the exact location of the candidate areas CRO.
도 7은 본 발명에 따른 컴퓨팅 장치의 내부 구성을 개략적으로 도시한다.7 schematically shows an internal configuration of a computing device according to the present invention.
도 7을 참조하면, 컴퓨팅 장치(100)는 제어부(110), 메모리(120), 및 데이터베이스(DB, 130)를 포함한다. 제어부(110), 메모리(120), 및 DB(130)는 버스를 통해 서로 데이터를 교환할 수 있다.Referring to FIG. 7 , the computing device 100 includes a control unit 110 , a memory 120 , and a database (DB, 130 ). The controller 110 , the memory 120 , and the DB 130 may exchange data with each other through a bus.
컴퓨팅 장치(100)는 도 7에 도시된 구성요소들 외에도 예컨대 통신 모듈, 입출력 장치, 저장 장치 등과 같은 추가적인 구성요소를 더 포함할 수 있다.The computing device 100 may further include additional components such as, for example, a communication module, an input/output device, and a storage device, in addition to the components illustrated in FIG. 7 .
제어부(110)는 통상적으로 컴퓨팅 장치(100)의 전반적인 동작을 제어한다. 제어부(110)는 기본적인 산술, 로직 및 입출력 연산을 수행하고, 예컨대 메모리(120)에 저장된 프로그램 코드, 예컨대, 컨벌루션 신경망 기반의 객체 검출 모델을 실행할 수 있다. 제어부(110)는 적어도 하나의 프로세서일 수 있다.The controller 110 typically controls the overall operation of the computing device 100 . The controller 110 may perform basic arithmetic, logic, and input/output operations, and execute, for example, program code stored in the memory 120 , for example, an object detection model based on a convolutional neural network. The controller 110 may be at least one processor.
컴퓨팅 장치(100)는 하나의 장치인 것으로 도시되어 있지만, 컴퓨팅 장치(100)는 둘 이상의 컴퓨팅 장치일 수 있다. 제어부(110)는 둘 이상의 프로세서들일 수 있다.Although computing device 100 is shown as one device, computing device 100 may be more than one computing device. The controller 110 may be two or more processors.
메모리(120)는 프로세서(110)가 판독할 수 있는 기록 매체로서, RAM, ROM 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 메모리(120)에는 운영체제와 적어도 하나의 프로그램 또는 어플리케이션 코드가 저장될 수 있다. 메모리(120)에는 영상들(100) 각각에서 후보 영역들(CRO) 각각을 탐색하기 위한 컨벌루션 신경망 기반의 객체 검출 모델을 구현하는 데이터, 객체 검출 모델을 트레이닝하기 위한 프로그램 코드, 이와 같이 트레이닝된 객체 검출 모델을 이용하여 후보 영역들 각각의 피탐색 성능을 평가하기 위한 프로그램 코드, 후보 영역들 각각의 피탐색 성능에 기초하여 특이 영역들을 결정하기 위한 프로그램 코드, 결정된 특이 영역들을 포함하는 온보드 맵을 생성하기 위한 프로그램 코드 등이 저장될 수 있다.The memory 120 is a recording medium readable by the processor 110 and may include a non-volatile mass storage device such as a RAM, a ROM, and a disk drive. The memory 120 may store an operating system and at least one program or application code. In the memory 120 , data for implementing an object detection model based on a convolutional neural network for searching each of the candidate regions CRO in each of the images 100 , a program code for training the object detection model, and an object trained in this way A program code for evaluating the searched performance of each of the candidate regions using the detection model, a program code for determining the singular regions based on the searched performance of each of the candidate regions, and an onboard map including the determined singular regions are generated A program code, etc. for performing the operation may be stored.
DB(130)는 프로세서(110)가 판독할 수 있는 기록 매체로서, 디스크 드라이브와 같은 비소멸성 대용량 기록장치를 포함할 수 있다. DB(130)는 객체 검출 모델의 트레이닝에 사용되는 트레이닝 영상들, 및 후보 영역들의 피탐색 성능을 평가하기 위해 객체 검출 모델에 입력되는 테스트 영상들이 저장할 수 있다. 트레이닝 영상들 및 테스트 영상들은 모두 도 5의 영상들(200)에 포함될 수 있다.The DB 130 is a recording medium readable by the processor 110 , and may include a non-volatile large-capacity recording device such as a disk drive. The DB 130 may store training images used for training the object detection model and test images input to the object detection model to evaluate the search performance of candidate regions. Both the training images and the test images may be included in the images 200 of FIG. 5 .
DB(130)에는 영상들(200)이 가공 없이 그대로 저장될 수 있고, 객체 검출 모델을 트레이닝 및 테스트하기에 적합한 형태로 가공된 형태로 저장될 수도 있다. 예를 들면, DB(130)에는 영상들(200) 중에서 관측 영역(OA)을 포함하는 미리 설정된 해상도를 갖는 일부 영역만이 저장될 수 있다.The images 200 may be stored in the DB 130 as they are without processing, or may be stored in a processed form suitable for training and testing an object detection model. For example, only a partial area having a preset resolution including the observation area OA among the images 200 may be stored in the DB 130 .
DB(130)에는 영상들(200)의 메타 데이터로서, 영상들(200) 각각에 나타나는 지역의 정확한 위치 정보 및 촬영 일시 정보가 영상들(200) 각각에 연결되어 저장될 수 있다. 위치 정보는 영상들(200) 각각에 나타나는 지역의 네 모서리의 위치 좌표들일 수 있다. 다른 예에 따르면, 위치 정보는 영상들(200) 각각에 나타나는 지역의 중앙 위치 좌표, 방향, 및 해당 지역의 수평 방향 길이와 수직 방향 길이를 포함할 수 있다.In the DB 130 , as metadata of the images 200 , accurate location information and shooting date information of a region appearing in each of the images 200 may be connected to each of the images 200 and stored. The location information may be location coordinates of four corners of a region appearing in each of the images 200 . According to another example, the location information may include coordinates and directions of a central location of a region appearing in each of the images 200 , and a horizontal length and a vertical length of the corresponding region.
다른 예에 따르면, DB(130)에는 영상들(200) 각각의 촬영 일시 대신에, 해당 촬영 일시에서의 태양의 위치 및 카메라의 포즈 정보가 저장될 수도 있다.According to another example, the position of the sun and pose information of the camera at the corresponding shooting date and time may be stored in the DB 130 instead of the shooting date and time of each of the images 200 .
제어부(110)는 관측 지역(OA)과 관측 지역(OA) 내의 복수의 후보 영역들(도 6의 CRO)을 결정할 수 있다. 제어부(110)는 관측 지역(OA)의 적어도 일부가 나타난 복수의 영상들(200) 각각에 위치 정보를 라벨링할 수 있다. 제어부(110)는 복수의 영상들(200) 각각에서 복수의 후보 영역들(CRO) 각각을 탐색하도록, 위치 정보가 라벨링된 복수의 영상들(200)을 기초로 컨벌루션 신경망 기반의 인공 신경망을 트레이닝할 수 있다. 제어부(110)는 트레이닝된 인공 신경망에 기초하여 복수의 후보 영역들(CRO) 각각의 피탐색 성능을 평가할 수 있다. 제어부(110)는 복수의 후보 영역들(CRO) 각각의 피탐색 성능을 기초로 복수의 후보 영역들(CRO) 중 적어도 일부를 특이 영역들(SRO)로 결정할 수 있다.The controller 110 may determine the observation area OA and a plurality of candidate areas (CRO of FIG. 6 ) within the observation area OA. The controller 110 may label location information on each of the plurality of images 200 in which at least a part of the observation area OA is displayed. The controller 110 trains an artificial neural network based on a convolutional neural network based on a plurality of images 200 labeled with location information to search each of a plurality of candidate regions CRO in each of the plurality of images 200 . can do. The controller 110 may evaluate the searched performance of each of the plurality of candidate regions CRO based on the trained artificial neural network. The controller 110 may determine at least some of the plurality of candidate areas CRO as the singular areas SRO based on the search target performance of each of the plurality of candidate areas CRO.
다른 실시예에 따르면, 제어부(110)는 관측 지역(OA) 내에 특이 영역들(SRO)을 포함하는 온보드 맵(도 5의 300)을 생성할 수 있다.According to another exemplary embodiment, the controller 110 may generate an onboard map 300 of FIG. 5 including the singular areas SRO in the observation area OA.
또 다른 실시예에 따르면, 제어부(110)는 착륙선(10)이 착륙할 착륙 지점(LS) 및 착륙 지점(LS)에 착륙하기 위한 착륙 궤도(LT)를 결정할 수 있다. 일 예에 따르면, 관측 지역(OA)은 착륙 궤도(LT)에 따라 결정될 수 있다. 다른 예에 따르면, 관측 지역(OA) 내에 특이 영역들(SRO)에 기초하여 착륙 궤도(LT) 또는 착륙 일자가 결정될 수도 있다.According to another embodiment, the controller 110 may determine a landing point LS at which the lander 10 will land and a landing trajectory LT for landing at the landing point LS. According to an example, the observation area OA may be determined according to the landing trajectory LT. According to another example, the landing trajectory LT or the landing date may be determined based on the singular areas SRO in the observation area OA.
제어부(110)에 대하여 도 8를 참조로 더욱 자세히 설명한다.The control unit 110 will be described in more detail with reference to FIG. 8 .
도 8은 본 발명의 실시예들에 따른 제어부의 예시적인 블록도이다.8 is an exemplary block diagram of a control unit according to embodiments of the present invention.
도 8을 참조하면, 제어부(110)는 데이터 학습부(111), 데이터 인식부(112), 성능 맵 생성부(113), 및 온보드 맵 생성부(114)를 포함할 수 있다. 메모리(120)에는 컨벌루션 신경망 기반의 객체 검출 모델(121)이 저장될 수 있다.Referring to FIG. 8 , the controller 110 may include a data learner 111 , a data recognizer 112 , a performance map generator 113 , and an onboard map generator 114 . The memory 120 may store an object detection model 121 based on a convolutional neural network.
데이터 학습부(111)는 트레이닝 영상들 각각에서 후보 영역들 각각을 탐색하기 위한 기준을 학습할 수 있다. 데이터 학습부(111)는 트레이닝 영상들 각각에서 후보 영역들 각각을 탐색하기 위하여 어떤 데이터를 이용할 지에 관한 기준을 학습할 수 있다.The data learner 111 may learn a criterion for searching each of the candidate regions in each of the training images. The data learning unit 111 may learn a criterion regarding which data to use in order to search for each of the candidate regions in each of the training images.
데이터 학습부(111)는 위치 정보가 라벨링된 트레이닝 영상들을 이용하여 객체 검출 모델(121)을 트레이닝 시킬 수 있다. 데이터 학습부(111)는 위치 정보가 라벨링된 트레이닝 영상들을 이용하여 객체 검출 모델(121)을 기계 학습시킴으로써, 객체 검출 모델(121)에 입력되는 트레이닝 영상들 각각에서 후보 영역들 각각을 탐색하기 위한 기준을 학습할 수 있다.The data learner 111 may train the object detection model 121 using training images labeled with location information. The data learning unit 111 performs machine learning on the object detection model 121 using training images labeled with location information to search for each candidate region in each of the training images input to the object detection model 121 . standards can be learned.
일 실시예에 따르면, 데이터 학습부(111)는 DB(130)에 저장된 영상들로부터 트레이닝 영상들을 선택할 수 있다. DB(130)에 저장된 영상들은 관측 영역(OA)을 적어도 부분적으로 촬영한 영상들일 수 있다. 영상들은 위성 영상들, 지표면 촬영 영상들, 합성 영상들 중 적어도 일부를 포함할 수 있다.According to an embodiment, the data learning unit 111 may select training images from images stored in the DB 130 . The images stored in the DB 130 may be images obtained by at least partially capturing the observation area OA. The images may include at least some of satellite images, surface-captured images, and synthetic images.
데이터 인식부(112)는 테스트 영상들 각각에서 후보 영역들 각각을 탐색할 수 있다. 데이터 인식부(112)는 사전에 트레이닝된 객체 검출 모델(121)을 이용하여, 테스트 영상들 각각에서 후보 영역들 각각을 탐색할 수 있다.The data recognizer 112 may search for each of the candidate regions in each of the test images. The data recognizer 112 may search for each of the candidate regions in each of the test images by using the pre-trained object detection model 121 .
데이터 인식부(112)는 테스트 영상들 각각에서 후보 영역들 각각의 추정된 영상 좌표를 출력할 수 있다. 테스트 영상들 각각에서 후보 영역들 각각의 실제 위치와 추정된 영상 좌표가 비교될 수 있다.The data recognizer 112 may output estimated image coordinates of each of the candidate regions in each of the test images. In each of the test images, the actual position of each of the candidate regions and the estimated image coordinates may be compared.
데이터 인식부(112)는 데이터 학습부(111)에 의해 트레이닝된 객체 검출 모델(121)에 테스트 영상들을 입력함으로써, 테스트 영상들 각각에서 후보 영역들 각각을 탐색할 수 있다.The data recognizer 112 may search for candidate regions in each of the test images by inputting test images to the object detection model 121 trained by the data learner 111 .
데이터 인식부(112)는 후보 영역들 각각의 피탐색 성능을 더욱 직관적으로 파악할 수 있도록 객체 검출 모델(121)의 출력을 후처리할 수도 있다.The data recognition unit 112 may post-process the output of the object detection model 121 to more intuitively understand the searched performance of each of the candidate regions.
테스트 영상들을 입력 받아 객체 검출 모델(121)에 의해 출력된 결과 값은 객체 검출 모델(121)을 갱신하는데 이용될 수 있다.A result value output by the object detection model 121 after receiving the test images may be used to update the object detection model 121 .
데이터 학습부(111) 및 데이터 인식부(112) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 디바이스에 탑재될 수 있다. 예를 들어, 데이터 학습부(111) 및 데이터 인식부(112) 중 적어도 하나는 인공지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 디바이스에 탑재될 수도 있다.At least one of the data learning unit 111 and the data recognition unit 112 may be manufactured in the form of at least one hardware chip and mounted on a device. For example, at least one of the data learning unit 111 and the data recognition unit 112 may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or an existing general-purpose processor (eg, CPU). Alternatively, it may be manufactured as a part of an application processor) or a graphics-only processor (eg, GPU) and mounted on the various devices described above.
이 경우, 데이터 학습부(111) 및 데이터 인식부(112)는 하나의 디바이스에 탑재될 수도 있으며, 또는 별개의 디바이스들에 각각 탑재될 수도 있다. 예를 들어, 데이터 학습부(111) 및 데이터 인식부(112) 중 하나는 컴퓨팅 장치(100)에 포함되고, 나머지 하나는 컴퓨팅 장치(100)와 네트워크로 연결되는 다른 컴퓨팅 장치에 포함될 수 있다. 데이터 학습부(111) 및 데이터 인식부(112)는 유선 또는 무선으로 통하여, 데이터 학습부(111)가 구축한 학습 모델 정보를 데이터 인식부(112)로 제공할 수도 있고, 데이터 인식부(112)에 입력된 데이터가 추가 학습 데이터로서 데이터 학습부(111)로 제공될 수도 있다.In this case, the data learning unit 111 and the data recognition unit 112 may be mounted on one device or may be mounted on separate devices, respectively. For example, one of the data learning unit 111 and the data recognition unit 112 may be included in the computing device 100 , and the other may be included in another computing device connected to the computing device 100 through a network. The data learning unit 111 and the data recognition unit 112 may provide the learning model information built by the data learning unit 111 to the data recognition unit 112 through a wired or wireless connection, and the data recognition unit 112 ) may be provided to the data learning unit 111 as additional learning data.
한편, 데이터 학습부(111) 및 데이터 인식부(112) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 학습부(111) 및 데이터 인식부(112) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수도 있다.Meanwhile, at least one of the data learning unit 111 and the data recognition unit 112 may be implemented as a software module. When at least one of the data learning unit 111 and the data recognition unit 112 is implemented as a software module (or a program module including instructions), the software module is a computer-readable, non-transitory, non-transitory It may be stored in a readable recording medium (non-transitory computer readable media). Also, in this case, at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. A part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.
성능 맵 생성부(113)는 객체 검출 모델(121)을 이용하여 후보 영역들 각각의 피탐색 성능을 평가할 수 있다. 성능 맵 생성부(113)는 후보 영역들 각각의 피탐색 성능을 나타내기 위하여 후보 영역들 각각의 분류 성능 맵과 정확도 성능 맵을 생성할 수 있다.The performance map generator 113 may evaluate the searched performance of each of the candidate regions using the object detection model 121 . The performance map generator 113 may generate a classification performance map and an accuracy performance map of each of the candidate areas in order to indicate the searched performance of each of the candidate areas.
온보드 맵 생성부(114)는 후보 영역들 각각의 피탐색 성능에 기초하여 피탐색 성능이 높은 특이 영역들을 결정할 수 있다. 온보드 맵 생성부(114)는 특이 영역들을 포함하는 온보드 맵을 생성할 수 있다.The onboard map generator 114 may determine specific regions having high search performance based on the search target performance of each of the candidate regions. The onboard map generator 114 may generate an onboard map including specific regions.
성능 맵 생성부(113)와 온보드 맵 생성부(114)에 대하여 자세히 설명하기 앞서, 도 9와 도 10을 참조로 데이터 학습부(111)와 데이터 인식부(112)에 대하여 더욱 자세히 설명한다.Before describing the performance map generating unit 113 and the onboard map generating unit 114 in detail, the data learning unit 111 and the data recognition unit 112 will be described in more detail with reference to FIGS. 9 and 10 .
도 9은 본 발명의 일 실시예에 따른 데이터 학습부(111)의 블록도이다.9 is a block diagram of the data learning unit 111 according to an embodiment of the present invention.
도 9를 참조하면, 데이터 학습부(111)는 데이터 획득부(111-1), 전처리부(111-2), 학습 데이터 선택부(111-3), 모델 학습부(111-4) 및 모델 평가부(111-5)를 포함할 수 있다.Referring to FIG. 9 , the data learning unit 111 includes a data acquiring unit 111-1, a preprocessing unit 111-2, a training data selection unit 111-3, a model learning unit 111-4, and a model. The evaluation unit 111 - 5 may be included.
데이터 획득부(111-1)는 영상들 각각에서 후보 영역들 각각을 탐색하는데 필요한 데이터를 획득할 수 있다. 데이터 획득부(111-1)는 DB(130)에서 저장된 관측 지역의 일부가 나타난 영상들로부터 트레이닝 영상들을 획득할 수 있다. 데이터 획득부(111-1)는 트레이닝 영상들 각각과 관련하여 저장된 위치 정보를 획득할 수 있다. 데이터 획득부(111-1)는 트레이닝 영상들 각각과 관련하여 저장된 태양의 위치 정보 및/또는 카메라의 포즈 정보를 획득할 수 있다.The data acquisition unit 111-1 may acquire data necessary to search for each of the candidate regions in each of the images. The data acquisition unit 111-1 may acquire training images from images showing a part of the observation area stored in the DB 130 . The data acquisition unit 111-1 may acquire location information stored in relation to each of the training images. The data acquisition unit 111-1 may acquire position information of the sun and/or pose information of the camera stored in relation to each of the training images.
전처리부(111-2)는 영상들 각각에서 후보 영역들 각각을 탐색하는데 필요한 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(111-2)는 모델 학습부(111-4)가 영상들 각각에서 후보 영역들 각각을 탐색하기 위한 객체 검출 모델(121)을 트레이닝하기 위하여 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다.The preprocessor 111 - 2 may preprocess the acquired data so that data necessary for searching each candidate region in each of the images may be used. The preprocessing unit 111-2 may process the obtained data into a preset format so that the model learning unit 111-4 trains the object detection model 121 for searching each candidate region in each of the images. have.
일 실시예에 따르면, 전처리부(111-2)는 트레이닝 영상들을 확대 또는 축소할 수 있다. 전처리부(111-2)는 트레이닝 영상들의 배율을 미리 설정된 배율로 동일하게 맞추기 위해 축소 또는 확대할 수 있다. 착륙선이 착륙할 착륙 지점과 착륙 지점에 착륙하기 위한 착륙 궤도는 결정될 수 있다. 착륙선이 착륙 괘도를 따라 비행하면서 관측 지역을 촬영할 카메라와 관측 지역을 촬영할 위치 역시 결정될 수 있다.According to an embodiment, the preprocessor 111 - 2 may enlarge or reduce the training images. The preprocessor 111 - 2 may reduce or enlarge the magnifications of the training images to the same preset magnification. The landing site at which the lander will land and the landing trajectory for landing at the landing site may be determined. As the lander flies along the landing orbit, a camera for photographing the observation area and a location for photographing the observation area may also be determined.
카메라는 촬영 가능한 최대 공간 해상도를 가지며, 관측 지역을 촬영할 위치에서 관측 지역까지의 거리가 정해므로, 착륙선에서 관측 지역을 촬영하여 생성되는 지표면 영상의 배율은 미리 결정된다. 전처리부(112-2)는 트레이닝 영상의 배율을 지표면 영상의 배율과 동일하도록 트레이닝 영상을 축소 또는 확대할 수 있다. 영상의 배율은 영상의 한 픽셀이 나타내는 관측 지역의 크기(예컨대, 정사각형의 길이 또는 면적)를 의미한다.Since the camera has the maximum spatial resolution that can be photographed and the distance from the position where the observation area is to be photographed to the observation area is determined, the magnification of the surface image generated by photographing the observation area from the lander is predetermined. The preprocessor 112 - 2 may reduce or enlarge the training image so that the magnification of the training image is the same as the magnification of the ground image. The magnification of the image refers to the size (eg, the length or area of a square) of the observation area indicated by one pixel of the image.
트레이닝 영상들의 배율을 지표면 영상의 배율과 일치시킴으로써, 착륙선에서도 객체 검출 모델(121)의 정확도가 보장될 수 있다.By matching the magnification of the training images with the magnification of the ground image, the accuracy of the object detection model 121 may be guaranteed even in the lander.
일 실시예에 따르면, 전처리부(111-2)는 트레이닝 영상들 각각에 위치 정보를 라벨링할 수 있다. 위치 정보는 트레이닝 영상들 각각에 나타난 촬영 지역의 위치 좌표를 포함할 수 있다. 전처리부(111-2)는 트레이닝 영상들 각각에 나타난 촬영 지역의 위치 좌표에 기초하여 트레이닝 영상들 각각에서 후보 영역들 각각의 영상 좌표를 추출할 수 있다. 전처리부(111-2)는 각 트레이닝 영상에서 추출된 후보 영역들 각각의 영상 좌표를 각 트레이닝 영상에 라벨링할 수 있다.According to an embodiment, the preprocessor 111 - 2 may label each of the training images with location information. The location information may include location coordinates of a photographing area displayed in each of the training images. The preprocessor 111 - 2 may extract image coordinates of each of the candidate regions from each of the training images based on the coordinates of the location of the shooting region displayed in each of the training images. The preprocessor 111 - 2 may label each training image with image coordinates of each of the candidate regions extracted from each training image.
일 실시예에 따르면, 관측 지역 내의 후보 영역들을 결정할 때, 트레이닝 영상들 각각에서의 후보 영역들의 영상 좌표들을 트레이닝 영상들 각각과 연관지어 DB(130)에 저장할 수 있으며, 전처리부(111-2)는 각 트레이닝 영상에 대하여 후보 영역들 각각의 영상 좌표를 라벨링할 수 있다.According to an embodiment, when determining candidate regions in the observation region, image coordinates of candidate regions in each of the training images may be stored in the DB 130 in association with each of the training images, and the preprocessor 111-2 may be used. may label the image coordinates of each of the candidate regions for each training image.
일 실시예에 따르면, 전처리부(111-2)는 트레이닝 영상들 각각에 대응하는 관측 지역에 대한 태양의 위치 및 관측 지역에 대한 카메라의 포즈를 트레이닝 영상들 각각에 라벨링할 수 있다. 일 예에 따르면, 트레이닝 영상이 관측 지역을 촬영한 위성 영상인 경우, 관측 지역을 촬영한 시점의 관측 지역에 대한 태양의 위치, 및 관측 지역을 촬영한 카메라의 포즈가 트레이닝 영상들 각각에 라벨링될 수 있다. 다른 예에 따르면, 트레이닝 영상이 랜더링에 의해 생성된 합성 영상인 경우, 랜더링 모델에 입력한 관측 지역에 대한 태양의 위치 및 관측 지역에 대한 카메라의 포즈가 트레이닝 영상들 각각에 라벨링될 수 있다.According to an embodiment, the preprocessor 111 - 2 may label the position of the sun with respect to the observation area corresponding to each of the training images and the pose of the camera for the observation area on each of the training images. According to an example, when the training image is a satellite image of the observation area, the position of the sun with respect to the observation area at the time of photographing the observation area, and the pose of the camera photographing the observation area are labeled in each of the training images. can According to another example, when the training image is a synthetic image generated by rendering, the position of the sun with respect to the observation region and the pose of the camera with respect to the observation region input to the rendering model may be labeled in each of the training images.
일 예에 따르면, 트레이닝 영상들 중 제1 트레이닝 영상의 경우, 제1 트레이닝 영상 내의 후보 영역들 각각의 식별 번호와 영상 좌표가 제1 트레이닝 영상에 라벨링될 수 있다. 또한, 제1 트레이닝 영상에 대응하여 관측 지역에 대한 태양의 위치 및 관측 지역에 대한 카메라의 포즈가 제1 트레이닝 영상에 라벨링될 수 있다.According to an example, in the case of a first training image among training images, an identification number and image coordinates of each of the candidate regions in the first training image may be labeled in the first training image. In addition, the position of the sun with respect to the observation area and the pose of the camera with respect to the observation area corresponding to the first training image may be labeled in the first training image.
후보 영역들이 도 6a에 도시된 바와 같이 각각 다른 크기와 다른 형상을 갖는 경우, 후보 영역들 각각을 특정하기 위한 파라미터들이 후보 영역들의 식별 번호와 함께 트레이닝 영상들 각각에 라벨링될 될 수 있다. 도 6b 및 도 6c에 도시된 바와 같이 후보 영역들이 모두 동일한 크기를 갖는 동일한 형상인 경우에는 트레이닝 영상들 각각에 크기와 형상이 라벨링되지 않을 수 있다.When the candidate regions have different sizes and different shapes as shown in FIG. 6A , parameters for specifying each of the candidate regions may be labeled in each of the training images together with an identification number of the candidate regions. As shown in FIGS. 6B and 6C , when the candidate regions all have the same shape and the same size, the size and shape of each of the training images may not be labeled.
전처리부(111-2)의 라벨링 기능은 제어부(110)에 의해 자동으로 수행될 수 있다. 전처리부(111-2)의 라벨링 기능은 사용자의 수동 작업을 통해 제어부(110)에 의해 수행될 수도 있다.The labeling function of the preprocessor 111 - 2 may be automatically performed by the control unit 110 . The labeling function of the preprocessor 111-2 may be performed by the controller 110 through a user's manual operation.
학습 데이터 선택부(111-3)는 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 선택된 데이터는 모델 학습부(111-4)에 제공될 수 있다. 학습 데이터 선택부(111-3)는 트레이닝 영상들 각각에서 후보 영역들 각각을 탐색하기 위한 기 설정된 기준에 따라, 전처리된 데이터 중에서 학습에 필요한 데이터를 선택할 수 있다. 기 설정된 기준은 후술할 모델 학습부(111-4)에 의한 학습에 의해 마련될 수 있다.The learning data selection unit 111-3 may select data necessary for learning from among the pre-processed data. The selected data may be provided to the model learning unit 111-4. The learning data selector 111-3 may select data required for learning from among the preprocessed data according to a preset criterion for searching each of the candidate regions in each of the training images. The preset reference may be prepared by learning by the model learning unit 111-4, which will be described later.
모델 학습부(111-4)는 트레이닝 영상들 각각에서 후보 영역들 각각을 탐색하기 위한 기준을 학습할 수 있다. 모델 학습부(111-4)는 트레이닝 영상들 각각에서 후보 영역들 각각을 탐색하기 위하여 어떤 학습 데이터를 이용해야 하는 지에 대한 기준을 학습할 수 있다.The model learning unit 111-4 may learn a criterion for searching each of the candidate regions in each of the training images. The model learning unit 111-4 may learn a criterion for which training data should be used in order to search for each of the candidate regions in each of the training images.
객체 검출 모델(121)은 인공 신경망을 기반으로 미리 구축된 것일 수 있다. 예를 들어, 객체 검출 모델(121)은 기본 학습 데이터(예를 들어, 샘플 데이터 등)을 입력 받아 미리 구축된 것일 수 있다.The object detection model 121 may be pre-built based on an artificial neural network. For example, the object detection model 121 may be pre-built by receiving basic learning data (eg, sample data, etc.).
객체 검출 모델(121)은 인식 모델의 적용 분야, 학습의 목적 또는 장치의 컴퓨터 성능 등을 고려하여 구축될 수 있다. 객체 검출 모델(121)은 예를 들어 신경망(Neural Network)을 기반으로 하는 학습 모델로서, 예컨대, DNN(Deep Neural Network), CNN(Convolution Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 이용될 수 있으나, 이에 한정되지 않는다.The object detection model 121 may be constructed in consideration of the field of application of the recognition model, the purpose of learning, or the computer performance of the device. The object detection model 121 is, for example, a learning model based on a neural network, for example, a Deep Neural Network (DNN), a Convolution Neural Network (CNN), a Recurrent Neural Network (RNN), or a Bidirectional Recurrent (BRDNN). A model such as a Deep Neural Network) may be used, but is not limited thereto.
객체 검출 모델(121)은 예를 들어 YOLO9000, Faster R-CNN 및 SSD와 같은 알고리즘이 이용될 수 있으나, 이에 한정되지 않는다.For the object detection model 121, algorithms such as YOLO9000, Faster R-CNN, and SSD may be used, but is not limited thereto.
모델 학습부(111-4)는 예컨대 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 객체 검출 모델(121)을 학습시킬 수 있다. 모델 학습부(111-4)는 예컨대 학습 데이터를 입력 값으로 하는 지도 학습(supervised learning)을 통하여, 객체 검출 모델(121)을 학습시킬 수 있다. 모델 학습부(111-4)는 예컨대 학습에 따라서 트레이닝 영상들 각각에서 후보 영역들 각각을 탐색한 결과가 올바른 지에 대한 피드백을 이용하는 강화 학습(reinforcement learning)을 통하여 객체 검출 모델(121)을 학습시킬 수 있다.The model learning unit 111-4 may train the object detection model 121 using, for example, a learning algorithm including error back-propagation or gradient descent. The model learning unit 111-4 may train the object detection model 121 through supervised learning using, for example, learning data as an input value. The model learning unit 111-4 may train the object detection model 121 through, for example, reinforcement learning using feedback on whether a result of searching each candidate region in each of the training images according to learning is correct. can
모델 학습부(111-4)는 트레이닝 영상을 입력 받은 객체 검출 모델(121)의 결과와 트레이닝 영상에 라벨링된 위치 정보에 기초하여 손실 함수를 정의할 수 있다. 모델 학습부(111-4)가 제1 트레이닝 영상을 객체 검출 모델(121)에 입력하면, 제1 트레이닝 영상에서 후보 영역들이 탐색될 수 있다.The model learning unit 111-4 may define a loss function based on the result of the object detection model 121 receiving the training image and location information labeled on the training image. When the model learning unit 111-4 inputs the first training image to the object detection model 121, candidate regions may be searched for in the first training image.
객체 검출 모델(121)의 결과는 제1 트레이닝 영상에서 탐색된 후보 영역들 각각의 추정 식별 번호와 추정 영상 좌표, 및 추정 크기를 포함할 수 있다. 객체 검출 모델(121)의 결과는 제1 트레이닝 영상에서 탐색된 후보 영역들 각각의 추정 정확도를 포함할 수 있다. 모델 학습부(111-4)는 미리 설정된 추정 정확도보다 높은 추정 정확도를 갖는 추정 결과를 출력할 수 있다. 모델 학습부(111-4)는 추정 정확도를 기초로 미리 설정된 개수의 추정 결과를 출력할 수 있다.The result of the object detection model 121 may include an estimated identification number, an estimated image coordinate, and an estimated size of each of the candidate regions searched for in the first training image. The result of the object detection model 121 may include estimation accuracy of each of the candidate regions searched for in the first training image. The model learning unit 111-4 may output an estimation result having an estimation accuracy higher than a preset estimation accuracy. The model learning unit 111-4 may output a preset number of estimation results based on estimation accuracy.
손실 함수는 트레이닝 영상에 라벨링된 위치 정보와 추정 결과의 차이에 기초하여 정의될 수 있다. 예컨대, 후보 영역들 각각의 위치 오차 및 크기 오차를 기초로 손실 함수가 정의될 수 있다. 위치 오차는 후보 영역들 각각에 라벨링된 실제 영상 좌표와 후보 영역들 각각에 대하여 추정된 영상 좌표 간의 차이일 수 있다. 크기 오차는 후보 영역들 각각에 대해 결정된 실제 크기와 후보 영역들 각각에 대하여 추정된 크기 간의 차이일 수 있다. 도 6c의 후보 영역들이 사용되는 경우, 크기 오차는 후보 영역들의 실제 반지름과 후보 영역들 각각에 대하여 추정된 반지름 간의 차이일 수 있다.The loss function may be defined based on a difference between the position information labeled on the training image and the estimation result. For example, a loss function may be defined based on a position error and a size error of each of the candidate regions. The position error may be a difference between the actual image coordinates labeled in each of the candidate regions and the image coordinates estimated for each of the candidate regions. The size error may be a difference between an actual size determined for each of the candidate regions and a size estimated for each of the candidate regions. When the candidate regions of FIG. 6C are used, the size error may be a difference between an actual radius of the candidate regions and a radius estimated for each of the candidate regions.
일 실시예에 따르면, 제1 트레이닝 영상을 객체 검출 모델(121)에 입력할 경우, 객체 검출 모델(121)의 추정 결과는 제1 트레이닝 영상에서의 후보 영역들의 추정된 영상 좌표들을 포함할 수 있다. 모델 학습부(111-4)는 제1 트레이닝 영상에 라벨링된 후보 영역들의 영상 좌표들과 제1 트레이닝 영상에서의 후보 영역들의 추정된 영상 좌표들 간의 차이가 최소화되도록 객체 검출 모델(121)을 트레이닝할 수 있다.According to an embodiment, when the first training image is input to the object detection model 121 , the estimation result of the object detection model 121 may include estimated image coordinates of candidate regions in the first training image. . The model learning unit 111-4 trains the object detection model 121 such that a difference between the image coordinates of the candidate regions labeled in the first training image and the estimated image coordinates of the candidate regions in the first training image is minimized. can do.
또한, 객체 검출 모델(121)의 추정 결과는 제1 트레이닝 영상에서의 후보 영역들의 추정된 크기들을 포함할 수 있다. 모델 학습부(111-4)는 후보 영역들의 크기들과 제1 트레이닝 영상에서의 후보 영역들의 추정된 크기들 간의 차이가 최소화되도록 객체 검출 모델(121)을 트레이닝할 수 있다.Also, the estimation result of the object detection model 121 may include estimated sizes of candidate regions in the first training image. The model learner 111-4 may train the object detection model 121 to minimize a difference between the sizes of the candidate regions and the estimated sizes of the candidate regions in the first training image.
모델 학습부(111-4)는 손실 함수 값이 미리 설정된 기준치보다 작아지도록 트레이닝 영상들을 이용한 객체 검출 모델(121)의 학습을 반복할 수 있다.The model learning unit 111-4 may repeat the learning of the object detection model 121 using the training images so that the loss function value is smaller than a preset reference value.
객체 검출 모델(121)이 학습되면, 모델 학습부(111-4)는 학습된 객체 검출 모델(121)을 저장할 수 있다. 이 경우, 모델 학습부(111-4)는 객체 검출 모델(121)을 컴퓨팅 장치(100)의 메모리(120)에 저장할 수 있다.When the object detection model 121 is learned, the model learning unit 111-4 may store the learned object detection model 121 . In this case, the model learning unit 111-4 may store the object detection model 121 in the memory 120 of the computing device 100 .
객체 검출 모델(121)을 저장하는 메모리(120)는 예컨대 디바이스의 적어도 하나의 다른 구성요소에 관계된 명령 또는 데이터를 함께 저장할 수도 있다. 또한, 메모리(120)는 소프트웨어 및/또는 프로그램을 저장할 수도 있다. 프로그램은, 예를 들면, 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API) 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다.The memory 120 storing the object detection model 121 may also store, for example, commands or data related to at least one other component of the device. In addition, the memory 120 may store software and/or programs. A program may include, for example, a kernel, middleware, an application programming interface (API) and/or an application program (or "application"), and the like.
모델 평가부(111-5)는 객체 검출 모델(121)에 검증 데이터를 입력하고, 검증 데이터로부터 출력되는 인식 결과가 소정 기준을 만족하지 못하는 경우, 모델 학습부(111-4)로 하여금 다시 학습하도록 할 수 있다. 이 경우, 검증 데이터는 학습 모델을 평가하기 위한 기 설정된 데이터일 수 있다. 검증 데이터는 DB(130)에 저장된 영상들로부터 선택되고 위치 정보가 라벨링된 검증 영상들일 수 있다.The model evaluation unit 111-5 inputs verification data to the object detection model 121, and when the recognition result output from the verification data does not satisfy a predetermined criterion, causes the model learning unit 111-4 to learn again. can make it In this case, the verification data may be preset data for evaluating the learning model. The verification data may be verification images selected from images stored in the DB 130 and labeled with location information.
예를 들어, 모델 평가부(111-5)는 검증 데이터에 대한 학습된 객체 검출 모델(121)의 추정 결과를 기초로 손실 함수 값을 산출할 수 있다. 모델 평가부(111-5)는 손실 함수 값이 미리 설정된 임계치를 초과하는 경우 학습된 객체 검출 모델(121)이 적합하지 않은 것으로 평가할 수 있다.For example, the model evaluator 111 - 5 may calculate a loss function value based on an estimation result of the learned object detection model 121 with respect to the verification data. The model evaluator 111 - 5 may evaluate the learned object detection model 121 as unsuitable when the loss function value exceeds a preset threshold.
한편, 데이터 학습부(111) 내의 데이터 획득부(111-1), 전처리부(111-2), 학습 데이터 선택부(111-3), 모델 학습부(111-4) 및 모델 평가부(111-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 디바이스에 탑재될 수 있다. 예를 들어, 데이터 획득부(111-1), 전처리부(111-2), 학습 데이터 선택부(111-3), 모델 학습부(111-4) 및 모델 평가부(111-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 디바이스에 탑재될 수도 있다.On the other hand, the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111 in the data learning unit 111. At least one of -5) may be manufactured in the form of at least one hardware chip and mounted on a device. For example, at least one of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 One may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or it may be manufactured as part of an existing general-purpose processor (eg, CPU or application processor) or graphics-only processor (eg, GPU) as described above. It may be mounted on various devices.
또한, 데이터 획득부(111-1), 전처리부(111-2), 학습 데이터 선택부(111-3), 모델 학습부(111-4) 및 모델 평가부(111-5)는 하나의 디바이스에 탑재될 수도 있으며, 또는 별개의 디바이스들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(111-1), 전처리부(111-2), 학습 데이터 선택부(111-3), 모델 학습부(111-4) 및 모델 평가부(111-5) 중 일부는 디바이스에 포함되고, 나머지 일부는 서버에 포함될 수 있다.In addition, the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 are one device. It may be mounted on the , or may be respectively mounted on separate devices. For example, some of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 may be included in the device, and the rest may be included in the server.
또한, 데이터 획득부(111-1), 전처리부(111-2), 학습 데이터 선택부(111-3), 모델 학습부(111-4) 및 모델 평가부(111-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(111-1), 전처리부(111-2), 학습 데이터 선택부(111-3), 모델 학습부(111-4) 및 모델 평가부(111-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.In addition, at least one of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 is It can be implemented as a software module. At least one of the data acquisition unit 111-1, the preprocessor 111-2, the training data selection unit 111-3, the model learning unit 111-4, and the model evaluation unit 111-5 is a software module When implemented as (or, a program module including instructions), the software module may be stored in a computer-readable non-transitory computer readable medium. Also, in this case, at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. A part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.
도 10은 본 발명의 일 실시예에 따른 데이터 인식부(112)의 블록도이다.10 is a block diagram of the data recognition unit 112 according to an embodiment of the present invention.
도 10을 참조하면, 일부 실시예에 따른 데이터 인식부(112)는 데이터 획득부(112-1), 전처리부(112-2), 인식 데이터 선택부(112-3), 인식 결과 제공부(112-4) 및 모델 갱신부(112-5)를 포함할 수 있다.Referring to FIG. 10 , the data recognition unit 112 according to some embodiments includes a data acquisition unit 112-1, a preprocessor 112-2, a recognition data selection unit 112-3, and a recognition result providing unit ( 112-4) and a model updater 112-5.
데이터 획득부(112-1)는 영상들 각각에서 후보 영역들 각각을 탐색하는데 필요한 데이터를 획득할 수 있다. 데이터 획득부(112-1)는 DB(130)에서 저장된 관측 지역의 일부가 나타난 영상들로부터 테스트 영상들을 획득할 수 있다. 데이터 획득부(112-1)는 테스트 영상들 각각과 관련하여 저장된 위치 정보를 획득할 수 있다. 데이터 획득부(112-1)는 테스트 영상들 각각과 관련하여 저장된 태양의 위치 정보 및/또는 카메라의 포즈 정보를 획득할 수 있다.The data acquisition unit 112-1 may acquire data necessary to search for each of the candidate regions in each of the images. The data acquisition unit 112-1 may acquire test images from images showing a part of the observation area stored in the DB 130 . The data acquisition unit 112-1 may acquire location information stored in relation to each of the test images. The data acquisition unit 112-1 may acquire position information of the sun and/or pose information of the camera stored in relation to each of the test images.
전처리부(112-2)는 테스트 영상들 각각에서 후보 영역들 각각을 탐색하는데 필요한 데이터가 이용될 수 있도록, 획득된 데이터를 전처리할 수 있다. 전처리부(112-2)는 인식 결과 제공부(112-4)가 획득된 데이터를 이용하여 영상들 각각에서 후보 영역들 각각을 탐색할 수 있도록 획득된 데이터를 기 설정된 포맷으로 가공할 수 있다.The preprocessor 112 - 2 may preprocess the obtained data so that data necessary for searching each candidate region in each of the test images may be used. The preprocessing unit 112-2 may process the acquired data into a preset format so that the recognition result providing unit 112-4 may search for each candidate region in each of the images using the acquired data.
일 실시예에 따르면, 전처리부(112-2)는 테스트 영상들을 확대 또는 축소할 수 있다. 전처리부(112-2)는 테스트 영상들의 배율을 미리 설정된 배율로 동일하게 맞추기 위해 축소 또는 확대할 수 있다. 전처리부(112-2)는 테스트 영상의 배율을 지표면 영상의 배율과 동일하도록 테스트 영상을 축소 또는 확대할 수 있다.According to an embodiment, the preprocessor 112 - 2 may enlarge or reduce the test images. The preprocessor 112 - 2 may reduce or enlarge the magnifications of the test images to the same preset magnification. The preprocessor 112 - 2 may reduce or enlarge the test image so that the magnification of the test image is the same as the magnification of the ground image.
일 실시예에 따르면, 전처리부(112-2)는 테스트 영상들 각각에 위치 정보를 라벨링할 수 있다. 위치 정보는 테스트 영상들 각각에 나타난 촬영 지역의 위치 좌표를 포함할 수 있다. 전처리부(112-2)는 테스트 영상들 각각에 나타난 촬영 지역의 위치 좌표에 기초하여 테스트 영상들 각각에서 후보 영역들 각각의 영상 좌표를 추출할 수 있다. 전처리부(112-2)는 각 테스트 영상에서 추출된 후보 영역들 각각의 영상 좌표를 각 테스트 영상에 라벨링할 수 있다.According to an embodiment, the preprocessor 112 - 2 may label location information on each of the test images. The location information may include location coordinates of a photographing area displayed in each of the test images. The preprocessor 112 - 2 may extract image coordinates of each of the candidate regions from each of the test images based on the coordinates of the location of the photographing area displayed in each of the test images. The preprocessor 112 - 2 may label each test image with image coordinates of each of the candidate regions extracted from each test image.
일 실시예에 따르면, 관측 지역 내의 후보 영역들을 결정할 때, 테스트 영상들 각각에서의 후보 영역들의 영상 좌표들을 테스트 영상들 각각과 연관지어 DB(130)에 저장할 수 있으며, 전처리부(112-2)는 각 테스트 영상에 대하여 후보 영역들 각각의 영상 좌표를 라벨링할 수 있다.According to an embodiment, when determining candidate regions within the observation region, image coordinates of the candidate regions in each of the test images may be stored in the DB 130 in association with each of the test images, and the preprocessor 112 - 2 ) may label the image coordinates of each of the candidate regions for each test image.
일 실시예에 따르면, 전처리부(112-2)는 테스트 영상들 각각에 대응하는 관측 지역에 대한 태양의 위치 및 관측 지역에 대한 카메라의 포즈를 테스트 영상들 각각에 라벨링할 수 있다.According to an embodiment, the preprocessor 112 - 2 may label the position of the sun with respect to the observation area corresponding to each of the test images and the pose of the camera with respect to the observation area on each of the test images.
일 예에 따르면, 테스트 영상들 중 제1 테스트 영상의 경우, 제1 테스트 영상 내의 후보 영역들 각각의 식별 번호와 영상 좌표가 제1 테스트 영상에 라벨링될 수 있다. 또한, 제1 테스트 영상에 대응하여 관측 지역에 대한 태양의 위치 및 관측 지역에 대한 카메라의 포즈가 제1 테스트 영상에 라벨링될 수 있다.According to an example, in the case of a first test image among the test images, an identification number and image coordinates of each of the candidate regions in the first test image may be labeled on the first test image. In addition, the position of the sun with respect to the observation area and the pose of the camera with respect to the observation area corresponding to the first test image may be labeled on the first test image.
전처리부(112-2)의 라벨링 기능은 제어부(110)에 의해 자동으로 수행될 수 있다. 전처리부(112-2)의 라벨링 기능은 사용자의 수동 작업을 통해 제어부(110)에 의해 수행될 수도 있다.The labeling function of the preprocessor 112 - 2 may be automatically performed by the control unit 110 . The labeling function of the preprocessor 112-2 may be performed by the controller 110 through a user's manual operation.
인식 데이터 선택부(112-3)는 전처리된 데이터 중에서 테스트 영상들 각각에서 후보 영역들 각각을 탐색하는데 필요한 데이터를 선택할 수 있다. 인식 데이터 선택부(112-3)는 테스트 영상들 각각에서 후보 영역들 각각을 탐색하기 위한 기 설정된 기준에 따라, 전처리된 데이터 중에서 일부 또는 전부를 선택할 수 있다. 또한, 인식 데이터 선택부(112-3)는 모델 학습부(111-4)의 학습에 의해 기 설정된 기준에 따라 데이터를 선택할 수도 있다.The recognition data selection unit 112 - 3 may select data required to search for each of the candidate regions in each of the test images from among the pre-processed data. The recognition data selector 112 - 3 may select some or all of the preprocessed data according to a preset criterion for searching each candidate region in each of the test images. In addition, the recognition data selection unit 112-3 may select data according to a criterion set by the model learning unit 111-4 learning.
인식 결과 제공부(112-4)는 선택된 데이터를 객체 검출 모델(121)에 적용하여 테스트 영상들 각각에서 후보 영역들 각각을 탐색할 수 있다. 인식 결과 제공부(112-4)는 데이터의 인식 목적에 따른 인식 결과를 제공할 수 있다. 인식 결과 제공부(112-4)는 인식 데이터 선택부(112-3)에 의해 선택된 데이터를 입력 값으로 이용함으로써, 선택된 데이터를 객체 검출 모델(121)에 적용할 수 있다. 또한, 인식 결과는 객체 검출 모델(121)에 의해 결정될 수 있다. 예를 들면, 테스트 영상들 각각에서 탐색된 후보 영역들 각각의 식별 번호 및 위치가 추정될 수 있으며, 이와 같은 추정 결과는 텍스트, 이미지 또는 명령 (예를 들면, 어플리케이션 실행 명령어, 모듈 기능 실행 명령어 등)등으로 제공될 수 있다.The recognition result providing unit 112 - 4 may search for each of the candidate regions in each of the test images by applying the selected data to the object detection model 121 . The recognition result providing unit 112 - 4 may provide a recognition result according to the purpose of data recognition. The recognition result providing unit 112 - 4 may apply the selected data to the object detection model 121 by using the data selected by the recognition data selecting unit 112 - 3 as an input value. Also, the recognition result may be determined by the object detection model 121 . For example, the identification number and location of each of the candidate regions searched in each of the test images may be estimated, and the estimation result may be a text, an image, or a command (eg, an application execution command, a module function execution command, etc.) ) may be provided.
일 실시예에 따르면, 인식 결과 제공부(112-4)가 제1 테스트 영상을 객체 검출 모델(121)에 입력할 경우, 객체 검출 모델(121)의 추정 결과는 제1 테스트 영상에서의 후보 영역들의 추정된 영상 좌표들을 포함할 수 있다. 후보 영역의 추정된 영상 좌표는 후보 영역의 중심 영상 좌표를 의미할 수 있다. 또한, 객체 검출 모델(121)의 추정 결과는 제1 트레이닝 영상에서의 후보 영역들의 추정된 크기들을 포함할 수 있다.According to an embodiment, when the recognition result providing unit 112 - 4 inputs the first test image to the object detection model 121 , the estimation result of the object detection model 121 is a candidate region in the first test image. may include the estimated image coordinates of The estimated image coordinates of the candidate region may mean the center image coordinates of the candidate region. Also, the estimation result of the object detection model 121 may include estimated sizes of candidate regions in the first training image.
예를 들면, 제1 테스트 영상에서 제1 후보 영역이 탐색될 수 있으며, 이 경우 객체 검출 모델(121)의 추정 결과는 제1 테스트 영상 내의 제1 후보 영역의 추정 영상 좌표를 포함할 수 있다. 제1 테스트 영상에서 탐색된 제1 후보 영역은 실제 관측 지역의 제1 후보 영역일 수도 있고, 그렇지 않을 수도 있다. 즉, 제1 후보 영역의 추정 영상 좌표가 실제 제1 관측 지역 내 제1 후보 영역에 해당할 수도 있고, 그렇지 않을 수도 있다.For example, the first candidate region may be searched for in the first test image, and in this case, the estimation result of the object detection model 121 may include estimated image coordinates of the first candidate region in the first test image. The first candidate area found in the first test image may or may not be the first candidate area of the actual observation area. That is, the estimated image coordinates of the first candidate area may or may not correspond to the first candidate area in the actual first observation area.
그렇지 않은 경우는 제1 후보 영역의 추정 영상 좌표가 관측 지역 내 다른 후보 영역들에 해당할 수도 있고, 제1 관측 지역 내 배경 영역에 해당할 수도 있다. 이 경우, 객체 검출 모델(121)의 추정 결과는 잘못된 추정에 해당한다.Otherwise, the estimated image coordinates of the first candidate area may correspond to other candidate areas within the observation area or may correspond to a background area within the first observation area. In this case, the estimation result of the object detection model 121 corresponds to an erroneous estimation.
제1 테스트 영상에서 제2 후보 영역이 탐색되지 않을 수 있으며, 이 경우 제2 후보 영역에 관한 정보는 객체 검출 모델(121)의 추정 결과에 포함되지 않을 수 있다. 제1 테스트 영상에서 제3 후보 영상이 두 개의 위치에서 탐색될 수도 있으며, 이 경우, 객체 검출 모델(121)의 추정 결과는 제1 테스트 영상 내의 제3 후보 영역의 제1 추정 영상 좌표 및 제2 추정 영상 좌표를 포함할 수 있다.The second candidate region may not be searched for in the first test image, and in this case, information on the second candidate region may not be included in the estimation result of the object detection model 121 . The third candidate image may be searched for in two positions in the first test image. In this case, the estimation result of the object detection model 121 is the first estimated image coordinates and the second estimated image coordinates of the third candidate region in the first test image. It may include estimated image coordinates.
관측 지역 내에 제3 후보 영역은 실제로 하나만 존재하므로, 객체 검출 모델(121)의 제3 후보 영역에 대한 2개의 추정 결과 중 적어도 하나는 잘못된 추정에 해당한다.Since only one third candidate region actually exists in the observation region, at least one of two estimation results for the third candidate region of the object detection model 121 corresponds to an erroneous estimation.
모델 갱신부(112-5)는 인식 결과 제공부(112-4)에 의해 제공되는 인식 결과에 대한 평가에 기초하여, 객체 검출 모델(121)이 갱신되도록 할 수 있다. 예를 들어, 모델 갱신부(112-5)는 인식 결과 제공부(112-4)에 의해 제공되는 인식 결과를 모델 학습부(111-4)에게 제공함으로써, 모델 학습부(111-4)가 객체 검출 모델(121)을 갱신하도록 할 수 있다.The model updater 112 - 5 may update the object detection model 121 based on the evaluation of the recognition result provided by the recognition result provider 112 - 4 . For example, the model updating unit 112-5 provides the recognition result provided by the recognition result providing unit 112-4 to the model learning unit 111-4, so that the model learning unit 111-4 is The object detection model 121 may be updated.
한편, 데이터 인식부(112) 내의 데이터 획득부(112-1), 전처리부(112-2), 인식 데이터 선택부(112-3), 인식 결과 제공부(112-4) 및 모델 갱신부(112-5) 중 적어도 하나는, 적어도 하나의 하드웨어 칩 형태로 제작되어 디바이스에 탑재될 수 있다. 예를 들어, 데이터 획득부(112-1), 전처리부(112-2), 인식 데이터 선택부(112-3), 인식 결과 제공부(112-4) 및 모델 갱신부(112-5) 중 적어도 하나는 인공 지능(AI; artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 디바이스에 탑재될 수도 있다.On the other hand, in the data recognition unit 112, the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4 and the model update unit ( At least one of 112-5) may be manufactured in the form of at least one hardware chip and mounted in a device. For example, among the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 At least one may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be manufactured as part of an existing general-purpose processor (eg, CPU or application processor) or graphics-only processor (eg, GPU). It may be mounted on one various device.
또한, 데이터 획득부(112-1), 전처리부(112-2), 인식 데이터 선택부(112-3), 인식 결과 제공부(112-4) 및 모델 갱신부(112-5)는 하나의 전자 장치에 탑재될 수도 있으며, 또는 별개의 전자 장치들에 각각 탑재될 수도 있다. 예를 들어, 데이터 획득부(112-1), 전처리부(112-2), 인식 데이터 선택부(112-3), 인식 결과 제공부(112-4) 및 모델 갱신부(112-5) 중 일부는 컴퓨팅 장치(100)에 포함되고, 나머지 일부는 서버에 포함될 수 있다.In addition, the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 are one It may be mounted on an electronic device, or may be respectively mounted on separate electronic devices. For example, among the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 Some may be included in the computing device 100 , and some may be included in the server.
또한, 데이터 획득부(112-1), 전처리부(112-2), 인식 데이터 선택부(112-3), 인식 결과 제공부(112-4) 및 모델 갱신부(112-5) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 데이터 획득부(112-1), 전처리부(112-2), 인식 데이터 선택부(112-3), 인식 결과 제공부(112-4) 및 모델 갱신부(112-5) 중 적어도 하나가 소프트웨어 모듈(또는, 인스트럭션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.In addition, at least one of the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 may be implemented as a software module. At least one of the data acquisition unit 112-1, the preprocessor 112-2, the recognition data selection unit 112-3, the recognition result providing unit 112-4, and the model update unit 112-5 is software. When implemented as a module (or a program module including instructions), the software module may be stored in a computer-readable non-transitory computer readable medium. Also, in this case, at least one software module may be provided by an operating system (OS) or may be provided by a predetermined application. A part of the at least one software module may be provided by an operating system (OS), and the other part may be provided by a predetermined application.
아래에서는 인식 결과 제공부(112-4)에 의해 제공되는 객체 검출 모델(121)의 테스트 영상들 각각에 대한 추정 결과를 이용하여 성능 맵 및 온보드 맵을 생성하는 구성에 대하여 설명한다.Hereinafter, a configuration for generating a performance map and an onboard map by using the estimation results for each of the test images of the object detection model 121 provided by the recognition result providing unit 112 - 4 will be described.
다시 도 8을 참조하면, 성능 맵 생성부(113)는 객체 검출 모델(121)의 추정 결과를 이용하여 후보 영역들 각각의 피탐색 성능을 평가할 수 있다. 피탐색 성능은 후보 영역들 각각에 대하여 평가된다.Referring back to FIG. 8 , the performance map generator 113 may evaluate the searched performance of each of the candidate regions by using the estimation result of the object detection model 121 . The searched performance is evaluated for each of the candidate regions.
예를 들면, 제1 후보 영역의 피탐색 성능은 제1 후보 영역의 분류 성능과 정확도 성능에 기초하여 평가될 수 있다. 제1 후보 영역의 분류 성능은 테스트 영상들을 객체 검출 모델(121)에 입력했을 때의 추정 결과를 이용하여 산출된다. 추정 결과는 테스트 영상들 각각에서 후보 영역들의 추정된 영상 좌표들을 포함한다.For example, the searched performance of the first candidate region may be evaluated based on the classification performance and accuracy performance of the first candidate region. The classification performance of the first candidate region is calculated using an estimation result obtained when test images are input to the object detection model 121 . The estimation result includes estimated image coordinates of candidate regions in each of the test images.
제1 후보 영역의 분류 성능은 제1 후보 영역들의 추정된 영상 좌표들에 기초하여 산출되는 F1 스코어에 기초하여 산출될 수 있다. F1 스코어가 높을수록 분류 성능이 우수한 것이다.The classification performance of the first candidate regions may be calculated based on an F 1 score calculated based on estimated image coordinates of the first candidate regions. The higher the F 1 score, the better the classification performance.
F1 스코어는 정밀도(Precision) 값과 재현율(Recall) 값에 기초하여 산출된다. 예컨대, F1 스코어는 정밀도(Precision) 값의 역수와 재현율(Recall) 값의 조화 평균(harmonic average)으로 산출될 수 있다.The F 1 score is calculated based on the Precision and Recall values. For example, the F 1 score may be calculated as a harmonic average of the reciprocal of a precision value and a recall value.
정밀도 값은 참 양성(True Positive, TP)를 참 양성(TP)과 거짓 양성(False Positive, FP)의 합(TP + FP)으로 나눈 값(TP/ (TP + FP))으로 산출될 수 있다. 재현율 값은 참 양성(True Positive, TP)를 참 양성(TP)과 거짓 음성(False Negative, FN)의 합(TP + FN)으로 나눈 값(TP/ (TP + FN))으로 산출될 수 있다.The precision value can be calculated as the value (TP/ (TP + FP)) obtained by dividing the true positive (TP) by the sum (TP + FP) of the true positive (TP) and false positive (FP). . The recall value can be calculated as a value (TP/ (TP + FN)) obtained by dividing True Positive (TP) by the sum (TP + FN) of True Positive (TP) and False Negative (FN). .
일 실시예에 따르면, 참 양성은 객체 검출 모델(121)에 의해 추정된 후보 영역의 추정 위치가 실제 관측 지역의 해당 후보 영역에 포함되는 경우를 의미한다. 예컨대, 테스트 영상에서 제1 후보 영역이 탐색되었는데, 제1 후보 영역의 추정 위치가 실제 관측 지역의 제1 후보 영역에 위치하는 경우이다.According to an embodiment, true positivity means that the estimated position of the candidate area estimated by the object detection model 121 is included in the corresponding candidate area of the actual observation area. For example, when the first candidate area is found in the test image, the estimated position of the first candidate area is located in the first candidate area of the actual observation area.
거짓 양성은 객체 검출 모델(121)에 의해 추정된 후보 영역의 추정 위치가 실제 관측 지역의 다른 후보 영역에 포함되는 경우를 의미한다. 예컨대, 테스트 영상에서 제1 후보 영역이 탐색되었는데, 제1 후보 영역의 추정 위치가 실제 관측 지역의 제1 후보 영역이 아닌 다른 후보 영역(예컨대, 제2 후보 영역)에 위치하는 경우이다.False positive means that the estimated position of the candidate area estimated by the object detection model 121 is included in another candidate area of the actual observation area. For example, when the first candidate area is found in the test image, the estimated position of the first candidate area is located in a candidate area other than the first candidate area of the actual observation area (eg, the second candidate area).
거짓 음성은 객체 검출 모델(121)에 의해 추정된 후보 영역의 추정 위치가 실제 관측 지역의 배경 영역에 포함되는 경우를 의미한다. 예컨대, 테스트 영상에서 제1 후보 영역이 탐색되었는데, 제1 후보 영역의 추정 위치가 실제 관측 지역의 배경 영역에 위치하는 경우이다.The false negative means that the estimated position of the candidate region estimated by the object detection model 121 is included in the background region of the actual observation region. For example, when the first candidate area is found in the test image, the estimated position of the first candidate area is located in the background area of the actual observation area.
다른 실시예에 따르면, 제1 후보 영역의 분류 성능은 테스트 영상들 각각에서 제1 후보 영역의 추정된 영상 좌표가 관측 지역 내의 실제 제1 후보 영역에 포함되는 테스트 영상의 참 양성 개수(TP), 테스트 영상들 각각에서 제1 후보 영역의 추정된 영상 좌표가 관측 지역 내의 실제 제1 후보 영역에 포함되지 않는 테스트 영상의 거짓 양성 개수(FP), 및 테스트 영상들 각각에서 상기 제1 후보 영역의 추정된 영상 좌표가 존재하지 않는 테스트 영상의 거짓 음성 개수(FN) 에 기초하여 결정될 수 있다. 예를 들면, 제1 후보 영역의 분류 성능은 2 TP / ( 2 TP + FN + FP)에 의해 산출될 수 있다.According to another embodiment, the classification performance of the first candidate region is the number of true positives (TP) of the test images in which the estimated image coordinates of the first candidate region in each of the test images are included in the actual first candidate region in the observation region; The number of false positives (FP) of the test images in which the estimated image coordinates of the first candidate region in each of the test images are not included in the actual first candidate region in the observation region, and the estimation of the first candidate region in each of the test images The image coordinates may be determined based on the number of false voices (FN) of the non-existent test image. For example, the classification performance of the first candidate region may be calculated by 2 TP / ( 2 TP + FN + FP).
제1 후보 영역의 정확도 성능은 제1 후보 영역들의 추정된 영상 좌표들에 기초하여 산출될 수 있다. 일 실시예에 따르면, 제1 후보 영역의 정확도 성능은 각 테스트 영상에 라벨링된 제1 후보 영역의 영상 좌표와 각 테스트 영상에서의 제1 후보 영역의 추정된 영상 좌표 간의 위치 차이를 기초로 산출될 수 있다. 제1 후보 영역의 정확도 성능은 테스트 영상들 각각에 대해 산출된 위치 차이들의 평균 제곱근 오차로 산출될 수 있다. 정확도 성능 값은 낮을수록 정확도 성능이 우수한 것이다.The accuracy performance of the first candidate regions may be calculated based on estimated image coordinates of the first candidate regions. According to an embodiment, the accuracy performance of the first candidate region may be calculated based on the difference in position between the image coordinates of the first candidate region labeled in each test image and the estimated image coordinates of the first candidate region in each test image. can The accuracy performance of the first candidate region may be calculated as a root mean square error of position differences calculated for each of the test images. The lower the accuracy performance value, the better the accuracy performance.
다른 실시예에 따르면, 제1 후보 영역의 정확도 성능은 제1 후보 영역의 추정 영상 좌표가 관측 지역의 실제 제1 후보 영역에 포함되는 경우, 제1 후보 영역의 추정 위치가 제1 후보 영역의 실제 위치와 얼마나 차이가 있는지를 나타낼 수 있다. 만약 제1 후보 영역의 추정 영상 좌표가 관측 지역의 실제 제1 후보 영역에 포함되지 않는 경우에는 제1 후보 영역의 추정 위치와 제1 후보 영역의 실제 위치 간의 위치 차이는 제1 후보 영역의 정확도 성능에 영향을 주지 않을 수 있다.According to another exemplary embodiment, the accuracy performance of the first candidate region is determined by determining that the estimated position of the first candidate region is the actual position of the first candidate region when the estimated image coordinates of the first candidate region are included in the actual first candidate region of the observation region. It can indicate how far apart the location is. If the estimated image coordinates of the first candidate region are not included in the actual first candidate region of the observation region, the position difference between the estimated position of the first candidate region and the actual position of the first candidate region is the accuracy performance of the first candidate region. may not affect
성능 맵 생성부(113)는 후보 영역들 각각의 피탐색 성능을 나타내기 위하여 후보 영역들 각각의 분류 성능 맵과 정확도 성능 맵을 생성할 수 있다. 분류 성능 맵과 정확도 성능 맵은 각각 분류 성능 그래프 및 정확도 성능 그래프로 지칭될 수 있다.The performance map generator 113 may generate a classification performance map and an accuracy performance map of each of the candidate areas in order to indicate the searched performance of each of the candidate areas. The classification performance map and the accuracy performance map may be referred to as a classification performance graph and an accuracy performance graph, respectively.
분류 성능 맵과 정확도 성능 그래프는 후보 영역들 각각에 대해 생성된다. 후보 영역들 각각의 분류 성능 맵과 정확도 성능 맵은 테스트 영상들 각각에 라벨링된 관측 지역에 대한 태양의 위치, 즉, 태양의 방위각과 고도의 변화에 따라 후보 영역들 각각의 분류 성능과 정확도 성능이 어떻게 변하는지를 나타낸다.A classification performance map and an accuracy performance graph are generated for each of the candidate regions. The classification performance map and the accuracy performance map of each of the candidate regions show that the classification performance and accuracy performance of each of the candidate regions according to the change in the azimuth and elevation of the sun relative to the observation region labeled in each of the test images. shows how it changes.
테스트 영상들 각각에는 관측 지역에 대한 태양의 위치(방위각과 고도)가 라벨링될 수 있다. 예컨대, 제1 후보 영역의 분류 성능 맵은 테스트 영상들 각각에서의 제1 후보 영역의 분류 성능 값을 산출하고, 테스트 영상들 각각에 라벨링된 태양의 방위각과 고도에 의해 결정되는 x좌표와 y좌표의 위치에 제1 후보 영역의 분류 성능 값을 표시한 그래프일 수 있다. 이 그래프에서 x축은 태양의 방위각이고 y축은 태양의 고도에 해당한다. 분류 성능 맵 내에 분류 성능 값이 표시되지 않는 영역은 주변 값들을 이용한 내삽(interpolation)을 통해 표시할 수 있다.Each of the test images may be labeled with the position (azimuth and altitude) of the sun with respect to the observation area. For example, the classification performance map of the first candidate region calculates the classification performance value of the first candidate region in each of the test images, and the x-coordinate and y-coordinate determined by the azimuth and elevation of the sun labeled in each of the test images. It may be a graph in which the classification performance value of the first candidate region is displayed at the position of . In this graph, the x-axis corresponds to the azimuth of the sun and the y-axis corresponds to the elevation of the sun. An area in which a classification performance value is not displayed in the classification performance map may be displayed through interpolation using surrounding values.
제1 후보 영역의 정확도 성능 맵은 테스트 영상들 각각에서의 제1 후보 영역의 정확도 성능 값을 산출하고, 테스트 영상들 각각에 라벨링된 태양의 방위각과 고도에 의해 결정되는 x좌표와 y좌표의 위치에 제1 후보 영역의 정확도 성능 값을 표시한 그래프일 수 있다. 이 그래프에서 x축은 태양의 방위각이고 y축은 태양의 고도에 해당한다. 정확도 성능 맵 내에 정확도 성능 값이 표시되지 않는 영역은 주변 값들을 이용한 내삽을 통해 표시할 수 있다.The accuracy performance map of the first candidate region calculates the accuracy performance value of the first candidate region in each of the test images, and the x-coordinate and y-coordinate positions determined by the azimuth and elevation of the sun labeled in each of the test images It may be a graph in which the accuracy performance value of the first candidate region is displayed. In this graph, the x-axis corresponds to the azimuth of the sun and the y-axis corresponds to the elevation of the sun. An area in which the accuracy performance value is not displayed in the accuracy performance map may be displayed through interpolation using surrounding values.
온보드 맵 생성부(114)는 후보 영역들 각각의 피탐색 성능에 기초하여 피탐색 성능이 높은 특이 영역들을 결정할 수 있다. 온보드 맵 생성부(114)는 특이 영역들을 포함하는 온보드 맵을 생성할 수 있다.The onboard map generator 114 may determine specific regions having high search performance based on the search target performance of each of the candidate regions. The onboard map generator 114 may generate an onboard map including specific regions.
온보드 맵 생성부(114)는 후보 영역들 각각의 분류 성능 맵과 정확도 성능 맵에 기초하여 피탐색 성능이 높은 후보 영역들을 선택하고, 후보 영역들의 개수가 미리 설정된 기준 개수 이상인 경우, 선택된 후보 영역들을 특이 영역들로 결정할 수 있다.The onboard map generator 114 selects candidate regions having high search performance based on the classification performance map and the accuracy performance map of each of the candidate regions, and when the number of candidate regions is equal to or greater than a preset reference number, selects the selected candidate regions. It can be determined by specific regions.
분류 성능 맵과 정확도 성능 맵을 통해 태양의 위치에 대하여 해당 후보 영역의 탐색이 잘 되는 영역이 결정될 수 있다. 분류 성능과 정확도 성능이 기준치 이상인 영역이 해당 후보 영역의 탐색이 잘 되는 영역일 수 있다. 이 영역이 넓은 후보 영역들이 특이 영역들로 결정될 수 있다.Through the classification performance map and the accuracy performance map, an area in which a corresponding candidate area can be searched well with respect to the position of the sun may be determined. An area in which classification performance and accuracy performance are equal to or greater than the reference value may be an area in which the corresponding candidate area is searched well. Candidate regions in which this region is wide may be determined as singular regions.
달에는 대기가 없기 때문에, 지형의 변화가 거의 없다. 이렇게 결정된 특이 영역들을 포함하는 온보드 맵이 생성되면, 이렇게 생성된 온보드 맵은 반영구적으로 사용될 수 있다.Because the moon has no atmosphere, there is little change in its topography. When an onboard map including the determined specific regions is generated, the generated onboard map may be used semi-permanently.
관측 지역에 대한 태양의 위치는 천문력에 의해 결정된다. 분류 성능 맵과 정확도 성능 맵에 천문력에 의해 결정되는 태양의 위치(방위각과 고도)가 추가로 표시될 수 있다. 착륙 일자가 결정되면, 해당 일자의 분류 성능과 정확도 성능이 높은 후보 영역들이 결정될 수 있다.The position of the sun with respect to the observation area is determined by the ephemeris. The position (azimuth and elevation) of the sun determined by the ephemeris may be further displayed in the classification performance map and the accuracy performance map. When the landing date is determined, candidate regions having high classification performance and high accuracy performance on the corresponding date may be determined.
분류 성능 값이 미리 설정된 분류 기준 값보다 높은 경우에 분류 성능이 높다고 이해될 수 있다. 정확도 성능 값이 미리 설정된 정확도 기준 값보다 낮은 경우에, 정확도 성능이 높다고 이해될 수 있다.When the classification performance value is higher than the preset classification reference value, it may be understood that the classification performance is high. When the accuracy performance value is lower than the preset accuracy reference value, it may be understood that the accuracy performance is high.
후보 영역들 중에서, 분류 성능 값이 미리 설정된 분류 기준 값보다 높고 정확도 성능 값이 미리 설정된 정확도 기준 값보다 낮은 후보 영역들이 선택될 수 있다. 선택된 후보 영역들의 개수를 미리 설정한 기준 개수와 비교할 수 있으며, 선택된 후보 영역들의 개수가 미리 설정한 기준 개수 이상인 경우, 선택된 후보 영역들은 특이 영역들로 결정될 수 있다. 온보드 맵 생성부(114)는 결정된 특이 영역들을 포함하는 온보드 맵을 생성할 수 있다.Among the candidate regions, candidate regions having a classification performance value greater than a preset classification reference value and an accuracy performance value lower than a preset accuracy reference value may be selected. The number of selected candidate regions may be compared with a preset reference number, and when the number of selected candidate regions is equal to or greater than the preset reference number, the selected candidate regions may be determined as singular regions. The onboard map generator 114 may generate an onboard map including the determined specific regions.
만약 선택된 후보 영역들의 개수가 미리 설정한 기준 개수보다 작은 경우, 관측 지역의 앞에서 결정된 후보 영역들의 구성에 따르면 특이 영역들이 검출되지 않는 것으로 결정하고, 관측 지역이 변경되거나, 후보 영역들의 구성이 변경될 수 있다.If the number of the selected candidate areas is smaller than the preset reference number, it is determined that no singular areas are detected according to the previously determined configuration of the candidate areas of the observation area, and the observation area is changed or the configuration of the candidate areas is changed. can
예비 착륙 일자가 결정될 수 있다. 해당 예비 착륙 일자의 분류 성능과 정확도 성능이 높은 후보 영역들이 선택될 수 있다. 선택된 후보 영역들의 개수가 미리 설정한 기준 개수 이상인 경우, 선택된 후보 영역들은 예비 특이 영역들로 결정될 수 있다. 온보드 맵 생성부(114)는 결정된 예비 특이 영역들을 포함하는 예비 온보드 맵을 생성할 수 있다.A preliminary landing date may be determined. Candidate regions having high classification performance and accuracy performance of the corresponding preliminary landing date may be selected. When the number of selected candidate regions is equal to or greater than a preset reference number, the selected candidate regions may be determined as preliminary singular regions. The onboard map generator 114 may generate a preliminary onboard map including the determined preliminary specific regions.
온보드 맵 생성부(114)에 의해 생성된, 특이 영역들을 포함하는 온보드 맵은 도 1 내지 도 4의 착륙선의 메모리에 탑재되어 착륙 지점으로 정확하게 비행하기 위한 위한 광학적 항법에 사용될 수 있다.The onboard map including the singular regions generated by the onboard map generator 114 may be loaded in the memory of the lander of FIGS. 1 to 4 and used for optical navigation for accurately flying to the landing site.
이상 설명된 다양한 실시예들은 예시적이며, 서로 구별되어 독립적으로 실시되어야 하는 것은 아니다. 본 명세서에서 설명된 실시예들은 서로 조합된 형태로 실시될 수 있다.The various embodiments described above are exemplary, and do not need to be performed independently of each other. Embodiments described in this specification may be implemented in a form in combination with each other.
이상 설명된 다양한 실시예들은 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.The various embodiments described above may be implemented in the form of a computer program that can be executed through various components on a computer, and such a computer program may be recorded in a computer-readable medium. In this case, the medium may be to continuously store the program executable by the computer, or to temporarily store the program for execution or download. In addition, the medium may be various recording means or storage means in the form of a single or several hardware combined, it is not limited to a medium directly connected to any computer system, and may exist distributed on a network. Examples of the medium include a hard disk, a magnetic medium such as a floppy disk and a magnetic tape, an optical recording medium such as CD-ROM and DVD, a magneto-optical medium such as a floppy disk, and those configured to store program instructions, including ROM, RAM, flash memory, and the like. In addition, examples of other media may include recording media or storage media managed by an app store that distributes applications, sites that supply or distribute various other software, and servers.
본 명세서에서, "부", "모듈" 등은 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다. 예를 들면, "부", "모듈" 등은 소프트웨어 구성 요소들, 객체 지향 소프트웨어 구성 요소들, 클래스 구성 요소들 및 태스크 구성 요소들과 같은 구성 요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들에 의해 구현될 수 있다.In this specification, "unit", "module", etc. may be a hardware component such as a processor or circuit, and/or a software component executed by a hardware component such as a processor. For example, “part”, “module” and the like refer to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, It may be implemented by procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays and variables.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

Claims (23)

  1. 컴퓨팅 장치에 의해 수행되는 방법에 있어서,A method performed by a computing device, comprising:
    관측 지역과 상기 관측 지역 내의 복수의 후보 영역들을 결정하는 단계;determining an observation area and a plurality of candidate areas within the observation area;
    상기 관측 지역의 적어도 일부가 나타난 복수의 영상들 각각에 위치 정보를 라벨링하는 단계;labeling location information on each of a plurality of images in which at least a part of the observation area appears;
    상기 복수의 영상들 각각에서 상기 복수의 후보 영역들 각각을 탐색하도록, 상기 위치 정보가 라벨링된 상기 복수의 영상들을 기초로 컨벌루션 신경망 기반의 인공 신경망을 트레이닝하는 단계;training a convolutional neural network-based artificial neural network based on the plurality of images labeled with the location information to search each of the plurality of candidate regions in each of the plurality of images;
    상기 트레이닝된 인공 신경망에 기초하여 상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하는 단계; 및evaluating the searched performance of each of the plurality of candidate regions based on the trained artificial neural network; and
    상기 복수의 후보 영역들 각각의 상기 피탐색 성능을 기초로 상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하는 단계를 포함하는 특이 영역 결정 방법.and determining at least some of the plurality of candidate regions as singular regions based on the searched performance of each of the plurality of candidate regions.
  2. 제1 항에 있어서,According to claim 1,
    상기 복수의 후보 영역들은 상기 관측 지역 내에 서로 중첩하지 않도록 분포되는 것을 특징으로 하는 특이 영역 결정 방법.The method for determining a singular region, characterized in that the plurality of candidate regions are distributed so as not to overlap each other within the observation region.
  3. 제1 항에 있어서,According to claim 1,
    상기 복수의 후보 영역들은 미리 설정된 형상을 갖고, 상기 관측 지역 내에 서로 인접하게 배열되는 것을 특징으로 하는 특이 영역 결정 방법.The plurality of candidate regions have a preset shape and are arranged adjacent to each other in the observation region.
  4. 제1 항에 있어서,According to claim 1,
    상기 복수의 후보 영역들은 제1 직경을 갖는 원형이고, 상기 관측 지역 내에 서로 인접하게 배열되는 것을 특징으로 하는 특이 영역 결정 방법.The plurality of candidate regions are circular having a first diameter and are arranged adjacent to each other within the observation region.
  5. 제1 항에 있어서,According to claim 1,
    상기 관측 지역을 촬영한 복수의 영상들은 상기 관측 지역 상에 주기를 갖는 궤도를 따라 비행하는 적어도 하나의 인공 위성에 의해 촬영된 위성 영상들을 포함하는 것을 특징으로 하는 특이 영역 결정 방법.The plurality of images of the observation area includes satellite images photographed by at least one artificial satellite flying along an orbit having a period on the observation area.
  6. 제1 항에 있어서,According to claim 1,
    상기 관측 지역을 촬영한 복수의 영상들은 상기 관측 지역의 상공을 비행하는 비행체에 의해 촬영된 영상들을 포함하는 것을 특징으로 하는 특이 영역 결정 방법.A plurality of images of the observation area is a singular area determination method, characterized in that it includes images captured by a flying vehicle flying over the observation area.
  7. 제1 항에 있어서,According to claim 1,
    상기 관측 지역을 촬영한 복수의 영상들은 지구에서 상기 관측 지역을 촬영한 영상들을 포함하는 것을 특징으로 하는 특이 영역 결정 방법.The plurality of images obtained by photographing the observation area includes images obtained by photographing the observation area on Earth.
  8. 제1 항에 있어서,According to claim 1,
    상기 관측 지역을 촬영한 복수의 영상들은 상기 관측 지역의 모델링된 지형, 상기 관측 지역에 대한 태양의 위치, 및 상기 관측 지역을 촬영하는 카메라의 포즈에 기초하여 생성된 합성 영상들을 포함하는 것을 특징으로 하는 특이 영역 결정 방법.The plurality of images of the observation area may include synthesized images generated based on the modeled topography of the observation area, the position of the sun with respect to the observation area, and a pose of a camera photographing the observation area. A method for determining a specific region.
  9. 제1 항에 있어서,According to claim 1,
    착륙선이 착륙할 착륙 지점 및 상기 착륙 지점에 착륙하기 위한 착륙 궤도를 결정하는 단계를 더 포함하고,determining a landing point on which the lander will land and a landing trajectory for landing at the landing site;
    상기 관측 지역은 상기 착륙 궤도에 따라 결정되는 것을 특징으로 하는 특이 영역 결정 방법.The method for determining a singular area, characterized in that the observation area is determined according to the landing trajectory.
  10. 제9 항에 있어서,10. The method of claim 9,
    상기 관측 지역 상의 상기 착륙 궤도의 고도와 상기 착륙선에 탑재되는 카메라의 공간 해상도에 기초하여 상기 복수의 영상들을 확대 또는 축소하는 단계를 더 포함하는 것을 특징으로 The method further comprising enlarging or reducing the plurality of images based on the altitude of the landing trajectory on the observation area and the spatial resolution of a camera mounted on the lander.
  11. 제1 항에 있어서,According to claim 1,
    상기 위치 정보는 상기 복수의 영상들 각각에 나타난 촬영 지역의 위치 좌표를 포함하고,The location information includes location coordinates of the shooting area shown in each of the plurality of images,
    상기 각 영상에 라벨링되는 상기 촬영 지역의 위치 좌표에 기초하여 상기 각 영상에서의 상기 복수의 후보 영역들 각각의 영상 좌표가 추출되는 것을 특징으로 하는 특이 영역 결정 방법.The method of claim 1, wherein the image coordinates of each of the plurality of candidate regions in the respective images are extracted based on the coordinates of the location of the photographing region labeled in the respective images.
  12. 제1 항에 있어서,According to claim 1,
    상기 위치 정보는 상기 각 영상에서의 상기 복수의 후보 영역들의 영상 좌표들을 포함하는 것을 특징으로 하는 특이 영역 결정 방법.The location information comprises image coordinates of the plurality of candidate regions in each image.
  13. 제1 항에 있어서,According to claim 1,
    상기 라벨링하는 단계는 상기 복수의 영상들 각각에 상기 각 영상에 대응하는 시점에서의 상기 관측 지역에 대한 태양의 위치 및 상기 관측 지역에 대한 카메라의 포즈를 추가로 라벨링하는 단계를 포함하는 것을 특징으로 하는 특이 영역 결정 방법.The labeling includes additionally labeling each of the plurality of images with a position of the sun with respect to the observation area at a viewpoint corresponding to each image and a pose of a camera with respect to the observation area. A method for determining a specific region.
  14. 제1 항에 있어서,According to claim 1,
    상기 인공 신경망을 트레이닝하는 단계는,Training the artificial neural network comprises:
    상기 위치 정보가 라벨링된 상기 영상들 중에서 제1 영상을 상기 인공 신경망에 입력하는 단계;inputting a first image from among the images labeled with the location information to the artificial neural network;
    상기 인공 신경망의 출력으로서, 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 영상 좌표들을 수신하는 단계; 및receiving, as an output of the artificial neural network, estimated image coordinates of the plurality of candidate regions in the first image; and
    상기 제1 영상에 라벨링된 상기 복수의 후보 영역들의 영상 좌표들과 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 영상 좌표들 간의 차이가 최소화되도록 상기 인공 신경망을 트레이닝하는 단계를 포함하는 것을 특징으로 하는 특이 영역 결정 방법.training the artificial neural network to minimize a difference between the image coordinates of the plurality of candidate regions labeled in the first image and the estimated image coordinates of the plurality of candidate regions in the first image A method for determining a specific region characterized.
  15. 제14 항에 있어서,15. The method of claim 14,
    상기 인공 신경망을 트레이닝하는 단계는,Training the artificial neural network comprises:
    상기 인공 신경망의 출력으로서, 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 크기들을 수신하는 단계; 및receiving, as an output of the artificial neural network, estimated sizes of the plurality of candidate regions in the first image; and
    상기 복수의 후보 영역들의 크기들과 상기 제1 영상에서의 상기 복수의 후보 영역들의 추정된 크기들 간의 차이가 최소화되도록 상기 인공 신경망을 트레이닝하는 단계를 더 포함하는 것을 특징으로 하는 특이 영역 결정 방법.and training the artificial neural network to minimize a difference between the sizes of the plurality of candidate regions and the estimated sizes of the plurality of candidate regions in the first image.
  16. 제1 항에 있어서,According to claim 1,
    상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하는 단계는 상기 복수의 후보 영역들 중 제1 후보 영역의 피탐색 성능을 평가하는 단계를 포함하고,Evaluating the searched performance of each of the plurality of candidate areas includes evaluating the searched performance of a first candidate area among the plurality of candidate areas,
    상기 제1 후보 영역의 피탐색 성능을 평가하는 단계는,Evaluating the search target performance of the first candidate area includes:
    상기 관측 지역 중 적어도 일부가 나타난 복수의 테스트 영상들 각각을 상기 트레이닝된 인공 신경망에 입력하는 단계;inputting each of a plurality of test images in which at least a part of the observation area appears to the trained artificial neural network;
    상기 트레이닝된 인공 신경망의 출력으로서, 상기 복수의 테스트 영상들 각각에서 상기 복수의 후보 영역들의 추정된 영상 좌표들을 수신하는 단계; 및receiving, as an output of the trained artificial neural network, estimated image coordinates of the plurality of candidate regions in each of the plurality of test images; and
    상기 트레이닝된 인공 신경망의 출력에 기초하여 F1 스코어를 산출하고, 상기 산출된 F1 스코어에 기초하여 상기 제1 후보 영역의 분류 성능을 결정하는 단계를 포함하는 것을 특징으로 하는 특이 영역 결정 방법. calculating an F 1 score based on an output of the trained artificial neural network, and determining classification performance of the first candidate region based on the calculated F 1 score.
  17. 제16 항에 있어서,17. The method of claim 16,
    상기 제1 후보 영역의 피탐색 성능을 평가하는 단계는,Evaluating the search target performance of the first candidate area includes:
    상기 각 테스트 영상에 라벨링된 상기 제1 후보 영역의 영상 좌표와 상기 각 테스트 영상에서의 상기 제1 후보 영역의 추정된 영상 좌표 간의 위치 차이를 기초로, 상기 제1 후보 영역의 정확도 성능을 결정하는 단계를 포함하는 것을 특징으로 하는 특이 영역 결정 방법.Determining accuracy performance of the first candidate region based on a position difference between the image coordinates of the first candidate region labeled in each test image and the estimated image coordinates of the first candidate region in each test image A method for determining a specific region, comprising the steps of.
  18. 제17 항에 있어서,18. The method of claim 17,
    상기 제1 후보 영역의 피탐색 성능을 평가하는 단계는,Evaluating the search target performance of the first candidate area includes:
    상기 복수의 테스트 영상들 각각에 라벨링된 상기 관측 지역에 대한 태양의 위치에 기초하여, 태양의 방위각과 고도에 따른 상기 제1 후보 영역의 분류 성능 및 정확도 성능을 각각 분류 성능 그래프 및 정확도 성능 그래프로 표시하는 단계를 더 포함하는 것을 특징으로 하는 특이 영역 결정 방법.Based on the position of the sun with respect to the observation area labeled in each of the plurality of test images, the classification performance and accuracy performance of the first candidate area according to the azimuth and altitude of the sun are respectively classified into a classification performance graph and an accuracy performance graph. A method for determining a specific region further comprising the step of displaying.
  19. 제18 항에 있어서,19. The method of claim 18,
    상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하는 단계는 상기 복수의 후보 영역들 각각에 대한 분류 성능 그래프 및 정확도 성능 그래프에 기초하여 상기 특이 영역들을 결정하는 단계를 포함하는 것을 특징으로 하는 특이 영역 결정 방법.The determining of at least some of the plurality of candidate regions as singular regions includes determining the singular regions based on a classification performance graph and an accuracy performance graph for each of the plurality of candidate regions. A method for determining a specific region.
  20. 제18 항에 있어서,19. The method of claim 18,
    착륙선이 착륙할 착륙 지점 및 상기 착륙 지점에 착륙하기 위한 착륙 궤도를 결정하는 단계를 더 포함하고,determining a landing point on which the lander will land and a landing trajectory for landing at the landing site;
    상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하는 단계는,Determining at least some of the plurality of candidate regions as singular regions includes:
    상기 복수의 후보 영역들 각각에 대한 분류 성능 그래프와 정확도 성능 그래프, 및 상기 착륙선의 1차 착륙 일시에 기초하여 상기 복수의 후보 영역들 중 적어도 일부를 제1 특이 영역들로 결정하는 단계; determining at least some of the plurality of candidate areas as first singular areas based on a classification performance graph and an accuracy performance graph for each of the plurality of candidate areas, and a first landing date and time of the lander;
    상기 관측 지역 내에 상기 제1 특이 영역들을 포함하는 제1 온보드 맵을 생성하는 단계; generating a first onboard map including the first singular regions within the viewing area;
    상기 복수의 후보 영역들 각각에 대한 분류 성능 그래프와 정확도 성능 그래프, 및 상기 착륙선의 2차 착륙 일시에 기초하여 상기 복수의 후보 영역들 중 적어도 일부를 제2 특이 영역들로 결정하는 단계; 및determining at least some of the plurality of candidate areas as second singular areas based on a classification performance graph and an accuracy performance graph for each of the plurality of candidate areas, and a second landing date and time of the lander; and
    상기 관측 지역 내에 상기 제2 특이 영역들을 포함하는 제2 온보드 맵을 생성하는 단계를 포함하는 것을 특징으로 하는 특이 영역 결정 방법.and generating a second onboard map comprising the second singular regions within the observation region.
  21. 컴퓨팅 장치를 이용하여 제1 항 내지 제20항 중 어느 한 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.A computer program stored on a medium for executing the method of any one of claims 1 to 20 using a computing device.
  22. 관측 지역의 적어도 일부가 나타난 복수의 영상들, 및 컨벌루션 신경망 기반의 인공 신경망을 저장하는 메모리; 및a memory for storing a plurality of images in which at least a part of an observation area is displayed, and an artificial neural network based on a convolutional neural network; and
    상기 관측 지역과 상기 관측 지역 내의 복수의 후보 영역들을 결정하고,determining the observation area and a plurality of candidate areas within the observation area;
    상기 복수의 영상들 각각에 위치 정보를 라벨링하고,Labeling location information on each of the plurality of images,
    상기 복수의 영상들 각각에서 상기 복수의 후보 영역들 각각을 탐색하도록, 상기 위치 정보가 라벨링된 상기 복수의 영상들을 기초로 상기 인공 신경망을 트레이닝하고,training the artificial neural network based on the plurality of images labeled with the location information to search each of the plurality of candidate regions in each of the plurality of images,
    상기 트레이닝된 인공 신경망에 기초하여 상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하고,Evaluating the searched performance of each of the plurality of candidate regions based on the trained artificial neural network,
    상기 복수의 후보 영역들 각각의 상기 피탐색 성능을 기초로 상기 복수의 후보 영역들 중 적어도 일부를 특이 영역들로 결정하고,determining at least some of the plurality of candidate regions as singular regions based on the searched performance of each of the plurality of candidate regions;
    상기 관측 지역 내에 상기 특이 영역들을 포함하는 상기 온보드 맵을 생성하도록 구성되는 적어도 하나의 프로세서를 포함하는 온보드 맵 생성 장치.at least one processor configured to generate the onboard map including the singular regions within the viewing area.
  23. 착륙선의 프로세서에 의해 상기 착륙선의 방향을 결정하는 방법에 있어서A method for determining the orientation of a lander by a processor of the lander, the method comprising:
    착륙 궤적에 따라 비행하면서 미리 설정된 고도에서 미리 설정된 관측 지역을 촬영하여 관측 지역 영상을 생성하는 단계;generating an observation area image by photographing a preset observation area at a preset altitude while flying according to a landing trajectory;
    메모리에 저장된 온보드 맵의 상기 관측 지역 내의 특이 영역들을 상기 관측 지역 영상에서 탐색하는 단계; 및searching the observation area image for singular areas within the observation area of an onboard map stored in a memory; and
    상기 관측 지역 영상에서 탐색된 특이 영역들의 배치 방향과 상기 온보드 맵의 상기 특이 영역들의 배치 방향의 차이를 기초로 상기 탐사선의 방향을 결정하는 단계를 포함하고,determining the direction of the probe based on a difference between the arrangement directions of the singular regions discovered in the observation area image and the arrangement directions of the singular regions of the onboard map;
    상기 온보드 맵은,The onboard map is
    관측 지역과 상기 관측 지역 내의 복수의 후보 영역들을 결정하는 단계;determining an observation area and a plurality of candidate areas within the observation area;
    상기 관측 지역의 적어도 일부가 나타난 복수의 영상들 각각에 위치 정보를 라벨링하는 단계;labeling location information on each of a plurality of images in which at least a part of the observation area appears;
    상기 복수의 영상들 각각에서 상기 복수의 후보 영역들 각각을 탐색하도록, 상기 위치 정보가 라벨링된 상기 복수의 영상들을 기초로 컨벌루션 신경망 기반의 인공 신경망을 트레이닝하는 단계;training a convolutional neural network-based artificial neural network based on the plurality of images labeled with the location information to search each of the plurality of candidate regions in each of the plurality of images;
    상기 트레이닝된 인공 신경망에 기초하여 상기 복수의 후보 영역들 각각의 피탐색 성능을 평가하는 단계;evaluating the searched performance of each of the plurality of candidate regions based on the trained artificial neural network;
    상기 복수의 후보 영역들 각각의 상기 피탐색 성능을 기초로 상기 복수의 후보 영역들 중 적어도 일부를 상기 특이 영역들로 결정하는 단계; 및determining at least some of the plurality of candidate areas as the singular areas based on the searched performance of each of the plurality of candidate areas; and
    상기 관측 지역 내에 상기 특이 영역들을 포함하는 상기 온보드 맵을 생성하는 단계를 수행하는 컴퓨팅 장치에 의하여 생성되는 것을 특징으로 하는 착륙선의 방향 결정 방법.and generating by a computing device performing the step of generating the onboard map including the singular areas within the observation area.
PCT/KR2019/018118 2019-12-18 2019-12-19 Method for determining specific area for optical navigation on basis of artificial neural network, on-board map generation device, and method for determining direction of lander WO2021125395A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190170209A KR102314038B1 (en) 2019-12-18 2019-12-18 Method for determining unusual area for optical navigation based on artificial neural network, apparatus for producing onboard map, and method for determining direction of lander
KR10-2019-0170209 2019-12-18

Publications (1)

Publication Number Publication Date
WO2021125395A1 true WO2021125395A1 (en) 2021-06-24

Family

ID=76477467

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/018118 WO2021125395A1 (en) 2019-12-18 2019-12-19 Method for determining specific area for optical navigation on basis of artificial neural network, on-board map generation device, and method for determining direction of lander

Country Status (2)

Country Link
KR (1) KR102314038B1 (en)
WO (1) WO2021125395A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113821057A (en) * 2021-10-14 2021-12-21 哈尔滨工业大学 Planetary soft landing control method and system based on reinforcement learning and storage medium
CN115272769A (en) * 2022-08-10 2022-11-01 中国科学院地理科学与资源研究所 Automatic moon impact pit extraction method and device based on machine learning

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102441675B1 (en) * 2022-02-23 2022-09-08 (주)나라스페이스테크놀로지 Method and system for synthesising satellite images
KR102600979B1 (en) * 2022-04-29 2023-11-10 한국과학기술원 Apparatus of conjugate-gradient acceleration using band matrix encoding in depth fusion application
KR102563758B1 (en) 2022-12-30 2023-08-09 고려대학교 산학협력단 Device for generating semantic segmentation learning data using 3d model

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150136225A (en) * 2014-05-26 2015-12-07 에스케이텔레콤 주식회사 Method and Apparatus for Learning Region of Interest for Detecting Object of Interest
KR20170088202A (en) * 2016-01-22 2017-08-01 서울시립대학교 산학협력단 Method for evaluation of fusion feasibility on multi-sensor satellite images and Apparatus Thereof
US20170248969A1 (en) * 2016-02-29 2017-08-31 Thinkware Corporation Method and system for providing route of unmanned air vehicle
KR20190087266A (en) * 2018-01-15 2019-07-24 에스케이텔레콤 주식회사 Apparatus and method for updating high definition map for autonomous driving
KR20190100708A (en) * 2018-02-21 2019-08-29 부산대학교 산학협력단 Unmanned aircraft for structural crack detection using machine learning

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10546195B2 (en) 2016-12-02 2020-01-28 Geostat Aerospace & Technology Inc. Methods and systems for automatic object detection from aerial imagery
JP6661522B2 (en) 2016-12-12 2020-03-11 株式会社日立製作所 Satellite image processing system and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150136225A (en) * 2014-05-26 2015-12-07 에스케이텔레콤 주식회사 Method and Apparatus for Learning Region of Interest for Detecting Object of Interest
KR20170088202A (en) * 2016-01-22 2017-08-01 서울시립대학교 산학협력단 Method for evaluation of fusion feasibility on multi-sensor satellite images and Apparatus Thereof
US20170248969A1 (en) * 2016-02-29 2017-08-31 Thinkware Corporation Method and system for providing route of unmanned air vehicle
KR20190087266A (en) * 2018-01-15 2019-07-24 에스케이텔레콤 주식회사 Apparatus and method for updating high definition map for autonomous driving
KR20190100708A (en) * 2018-02-21 2019-08-29 부산대학교 산학협력단 Unmanned aircraft for structural crack detection using machine learning

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113821057A (en) * 2021-10-14 2021-12-21 哈尔滨工业大学 Planetary soft landing control method and system based on reinforcement learning and storage medium
CN115272769A (en) * 2022-08-10 2022-11-01 中国科学院地理科学与资源研究所 Automatic moon impact pit extraction method and device based on machine learning

Also Published As

Publication number Publication date
KR102314038B1 (en) 2021-10-19
KR20210078326A (en) 2021-06-28

Similar Documents

Publication Publication Date Title
WO2021125395A1 (en) Method for determining specific area for optical navigation on basis of artificial neural network, on-board map generation device, and method for determining direction of lander
WO2018124662A1 (en) Method and electronic device for controlling unmanned aerial vehicle
WO2019132518A1 (en) Image acquisition device and method of controlling the same
WO2019017592A1 (en) Electronic device moved based on distance from external object and control method thereof
WO2019151735A1 (en) Vision inspection management method and vision inspection system
WO2017007166A1 (en) Projected image generation method and device, and method for mapping image pixels and depth values
WO2022025441A1 (en) Omnidirectional image-capturing assembly and method executed by same
WO2016126083A1 (en) Method, electronic device, and recording medium for notifying of surrounding situation information
WO2020046038A1 (en) Robot and control method therefor
WO2020171561A1 (en) Electronic apparatus and controlling method thereof
WO2020189909A2 (en) System and method for implementing 3d-vr multi-sensor system-based road facility management solution
WO2023008791A1 (en) Method for acquiring distance to at least one object located in any direction of moving object by performing proximity sensing, and image processing device using same
WO2016206107A1 (en) System and method for selecting an operation mode of a mobile platform
WO2018131737A1 (en) Defective panel inspection device
WO2018124500A1 (en) Method and electronic device for providing object recognition result
WO2019009624A1 (en) Method and apparatus for providing digital moving map service for safe navigation of unmanned aerial vehicle
WO2023055033A1 (en) Method and apparatus for enhancing texture details of images
WO2022092451A1 (en) Indoor location positioning method using deep learning
Kikuya et al. Development of Low-cost and High Peformance Attitude Sensor applying Newral-network Image Recogniting Technology
WO2020251151A1 (en) Method and apparatus for estimating user's pose by using three-dimensional virtual space model
EP4320472A1 (en) Device and method for predicted autofocus on an object
WO2011055906A2 (en) Star pattern recognition method, and star sensor apparatus for determining spacecraft attitude
WO2021221333A1 (en) Method for predicting position of robot in real time through map information and image matching, and robot
WO2024117345A1 (en) Method, device, and computer program for positioning autonomous vehicle through fusion of multiple positioning technologies
WO2024096691A1 (en) Method and device for estimating gps coordinates of multiple target objects and tracking target objects on basis of camera image information about unmanned aerial vehicle

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19956745

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19956745

Country of ref document: EP

Kind code of ref document: A1