WO2020050500A1 - 이동체의 이동 속성 획득 방법 및 이를 수행하는 장치 - Google Patents

이동체의 이동 속성 획득 방법 및 이를 수행하는 장치 Download PDF

Info

Publication number
WO2020050500A1
WO2020050500A1 PCT/KR2019/009244 KR2019009244W WO2020050500A1 WO 2020050500 A1 WO2020050500 A1 WO 2020050500A1 KR 2019009244 W KR2019009244 W KR 2019009244W WO 2020050500 A1 WO2020050500 A1 WO 2020050500A1
Authority
WO
WIPO (PCT)
Prior art keywords
moving
image
information
object information
obtaining
Prior art date
Application number
PCT/KR2019/009244
Other languages
English (en)
French (fr)
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
Priority claimed from KR1020180165861A external-priority patent/KR102144623B1/ko
Application filed by 씨드로닉스㈜ filed Critical 씨드로닉스㈜
Publication of WO2020050500A1 publication Critical patent/WO2020050500A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B63SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
    • B63BSHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING 
    • B63B49/00Arrangements of nautical instruments or navigational aids
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0011Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
    • G05D1/0044Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement by providing the operator with a computer generated representation of the environment of the vehicle, e.g. virtual reality, maps
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B63SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
    • B63BSHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING 
    • B63B1/00Hydrodynamic or hydrostatic features of hulls or of hydrofoils
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B63SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
    • B63BSHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING 
    • B63B43/00Improving safety of vessels, e.g. damage control, not otherwise provided for
    • B63B43/18Improving safety of vessels, e.g. damage control, not otherwise provided for preventing collision or grounding; reducing collision damage
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B63SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
    • B63BSHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING 
    • B63B43/00Improving safety of vessels, e.g. damage control, not otherwise provided for
    • B63B43/18Improving safety of vessels, e.g. damage control, not otherwise provided for preventing collision or grounding; reducing collision damage
    • B63B43/20Feelers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/203Specially adapted for sailing ships
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • G06T5/70
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/30Noise filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/36Applying a local operator, i.e. means to operate on image points situated in the vicinity of a given point; Non-linear local filtering operations, e.g. median filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/809Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of classification results, e.g. where the classifiers operate on the same input data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G3/00Traffic control systems for marine craft
    • G08G3/02Anti-collision systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Definitions

  • the present invention relates to a method for obtaining a moving property of a moving object. More specifically, the present invention relates to a method of obtaining a moving property of a moving object included in an image captured using a learned artificial neural network.
  • AI artificial intelligence
  • the technical task according to an embodiment is to obtain object information of a surrounding environment using an artificial neural network that performs image segmentation.
  • the technical task according to another embodiment is to obtain a moving property of a moving object using object information output from an artificial neural network.
  • the technical problem according to another embodiment is to generate a steering signal of a ship and a vehicle using a moving property of a moving object.
  • a method of obtaining a moving property of a moving object using an image taken by a camera installed on a ship and an artificial neural network, the first image captured by the sea and the second image that is a subsequent frame of the first image Obtaining a plurality of images comprising; To output object information included in the image from the image, a first classification value reflecting the type information of the object, wherein the first classification value corresponds to the sea-and distance information and type information of the object The reflected second classification value-at this time, the second classification value corresponds to an obstacle-is removed from the first image using the artificial neural network learned based on the output data and labeling data corresponding to the output data.
  • a method for obtaining a moving property of a moving object may be provided.
  • a method of calculating a moving direction of a moving object using an artificial neural network obtaining a plurality of captured images including a first captured image and a second captured image that is a subsequent frame of the first captured image step; A first classification value, in which the type information of the object is reflected, so that the object information included in the captured image is output from the captured image, wherein the first classification value corresponds to the sea, and distance information and type of the object A second classification value reflecting information, wherein the second classification value corresponds to an obstacle, and the first imaging using an artificial neural network learned based on output data including labeling data corresponding to the output data Obtaining first object information from the image and obtaining second object information from the second captured image; And calculating a moving direction of at least a part of the moving objects included in the plurality of captured images by comparing the first object information and the second object information.
  • the camera is installed on the ship to image the sea; And a plurality of images including a first image captured by the camera and a second image that is a subsequent frame of the first image, and outputting object information included in the image from the image.
  • the first classification value corresponds to the sea-and the second classification value reflecting the distance information and type information of the object-at this time
  • the second classification value corresponds to an obstacle -
  • a control unit for comparing the first object information and the second object information to calculate a moving direction of the moving object included in the captured image.
  • a device for obtaining the attribute may be provided.
  • object information of a surrounding environment may be obtained using an artificial neural network that performs image segmentation.
  • a moving property of a moving object may be obtained using object information output from an artificial neural network.
  • FIG. 1 is a block diagram illustrating an artificial neural network learning method according to an embodiment.
  • FIG. 2 is a block diagram of an inference step of an artificial neural network according to an embodiment.
  • FIG. 3 is a diagram illustrating an object information acquisition method using an artificial neural network according to an embodiment.
  • FIG. 4 is a diagram of a system for performing an operation related to surrounding environment sensing, autonomous navigation, and the like according to an embodiment.
  • FIG. 5 is a view for explaining an image segmentation operation of an artificial neural network according to an embodiment.
  • 6 is a table showing classification values according to an embodiment.
  • FIG. 7 is a diagram for explaining data expansion according to an embodiment.
  • FIG. 8 is a view for explaining a method of obtaining a moving attribute of a moving object according to an embodiment.
  • FIG. 9 is a flowchart illustrating a method for obtaining a moving attribute of a moving object according to another embodiment.
  • FIG. 10 is a view for explaining a method of obtaining a moving attribute of a moving object according to another embodiment.
  • 11 is a table of classification values and movement attributes of an object according to an embodiment.
  • FIG. 12 is a view for explaining a method of obtaining a moving attribute of a moving object according to another embodiment.
  • FIG. 13 is a view for explaining a method of obtaining a moving attribute of a moving object according to another embodiment.
  • FIG. 14 is a view for explaining a method of obtaining a moving attribute of a moving object according to another embodiment.
  • a method of obtaining a moving property of a moving object using an image taken by a camera installed on a ship and an artificial neural network, the first image captured by the sea and the second image that is a subsequent frame of the first image Obtaining a plurality of images comprising; To output object information included in the image from the image, a first classification value reflecting the type information of the object, wherein the first classification value corresponds to the sea-and distance information and type information of the object The reflected second classification value-at this time, the second classification value corresponds to an obstacle-is removed from the first image using the artificial neural network learned based on the output data and labeling data corresponding to the output data.
  • a method for obtaining a moving property of a moving object may be provided.
  • the first object information and the second object information may be a segmentation image obtained through an image segmentation operation.
  • the first object information is an image in which an object included in the first image has a color value corresponding to a classification value in which object information regarding at least one of distance information and type information is reflected
  • the The second object information may be an image in which an object included in the second image has a color value corresponding to a classification value in which object information regarding at least one of distance information and type information is reflected.
  • the first object information and the second object information may be N ⁇ M matrices.
  • the first object information includes only classification values for moving objects included in the first image
  • the second object information includes only classification values for moving objects included in the second image. You can.
  • the first object information and the second object information may not include the first classification value.
  • the calculating step includes a first moving object classification value corresponding to a first moving object spaced by a first distance from the camera, wherein the first moving object classification value is the distance information of the first moving object And type information-a first movement direction calculating step of calculating a movement direction of the first moving object by comparing the plurality of first moving object information including bays at a first time interval, and the first distance from the camera.
  • the second moving direction calculation step may include calculating the moving direction of the second moving object by comparing the moving object information at a second time interval greater than the first time interval.
  • the first movable object information and the second movable object information may be a two-dimensional matrix.
  • the step of acquiring the object information may include matching the first image and the second image in consideration of attitude information of the ship before acquiring the second object information.
  • the step of acquiring the object information may include the first object information and the first object information using classification values corresponding to the moving object included in the first object information and the second object information and attitude information of the ship. 2 may include matching object information.
  • the calculating step may include comparing the first position based on the first object information and the second position based on the second object information when the moving object moves along the horizontal axis direction. And calculating a moving direction.
  • the number of components corresponding to the moving object included in the first object information and the moving object included in the second object information Comparing the number of components corresponding to the may include the step of calculating the moving direction of the mobile body.
  • the first object information and the second object information are each a segmentation image, and the number of components may be the number of pixels of the segmentation image.
  • an increase in the number of components may indicate a decrease in distance from the ship to the mobile body, and a decrease in the number of components may indicate an increase in distance from the vessel to the mobile body.
  • the calculating step may calculate a horizontal component in the movement direction by comparing a first position according to the first object information and a second position according to the second object information, and calculate the horizontal component in the moving direction
  • the method may include calculating a vertical component of the moving direction by comparing the number of pixels corresponding to the moving object included in the information and the number of pixels corresponding to the moving object included in the second object information.
  • the calculating step includes obtaining an absolute speed of the moving object based on a time interval between the first image and the second image, speed information of the ship, and attitude information of the ship. can do.
  • the method for obtaining a movement attribute of the moving object may further include generating a steering signal of the ship based on the calculated moving direction of the moving object.
  • a plurality of captured images including a first captured image and a second captured image that is a subsequent frame of the first captured image are acquired.
  • a first classification value reflecting the type information of the object so as to output object information included in the captured image from the captured image, wherein the first classification value corresponds to a travelable area and distance information of the object
  • a second classification value reflecting type information wherein the second classification value corresponds to an obstacle
  • the artificial intelligence network using the learned artificial neural network based on output data including labeling data corresponding to the output data.
  • the movable area may correspond to a water surface when the artificial neural network is used for a ship, or a road when the artificial neural network is used for a vehicle.
  • the camera is installed on the ship to image the sea; And a plurality of images including a first image captured by the camera and a second image that is a subsequent frame of the first image, and outputting object information included in the image from the image.
  • the first classification value corresponds to the sea-and the second classification value reflecting the distance information and type information of the object-at this time
  • the second classification value corresponds to an obstacle -
  • a control unit for comparing the first object information and the second object information to calculate a moving direction of the moving object included in the captured image.
  • a device for obtaining the attribute may be provided.
  • a recording medium in which a program for performing any one of the above-described methods for obtaining a moving attribute of a moving object is recorded may be provided.
  • An artificial neural network is a kind of algorithm that mathematically models the learning method of the human brain.
  • the artificial neural network may include a plurality of nodes, which are artificial neurons, and synapses connecting the plurality of nodes.
  • the artificial neural network may include a layer including at least one node.
  • the artificial neural network may include an input layer, a hidden layer, and an output layer.
  • the input layer may receive input data from outside the artificial neural network and transmit the input data into the artificial neural network.
  • the hidden layer may transmit input data transmitted from the input layer and data calculated based on the combined strength of synapses to the output layer.
  • the output layer may calculate output data based on the combined strength of data and synapses transmitted from the hidden layer.
  • Artificial neural networks may include various neural networks.
  • the artificial neural network may include a convolution neural network (CNN) that extracts features using a filter.
  • the artificial neural network may include a recurrent neural network (RNN) having a structure in which the output of the node is fed back to the input.
  • RBM Restricted Boltzmann Machine
  • DNN Deep Belief Network
  • GAN Generative Adversarial Network
  • RN Relational Networks It may include a neural network.
  • the artificial neural network can be learned in various ways.
  • the artificial neural network may include supervised learning, unsupervised learning, reinforcement learning, and imitation learning.
  • the artificial neural network can be learned through various types of learning methods.
  • FIG. 1 is a block diagram illustrating an artificial neural network learning method according to an embodiment. Specifically, FIG. 1 may represent supervised learning according to an embodiment.
  • the artificial neural network may receive training data and output output data.
  • the artificial neural network may be trained through a back propagation of an error calculated based on a comparison of output data and labeling data.
  • the labeling data may be related to the learning data.
  • the labeling data may include data calculated based on the learning data.
  • the labeling data may include ground truth.
  • the labeling data may be data generated through a user or a program.
  • the learned artificial neural network may receive input data and output output data.
  • the input data may include various types of data.
  • the input data may include image data, audio data, and text data.
  • the output data may include various types of data.
  • the output data may include image data, audio data, and text data.
  • the accuracy of the output data may vary according to the learning degree of the learned artificial neural network. Specifically, as the learning degree is higher, the accuracy of the output data may increase.
  • FIG. 3 is a diagram illustrating an object information acquisition method using an artificial neural network according to an embodiment.
  • the artificial neural network may receive input data and output output data.
  • the artificial neural network may receive the first image data 1000 and output the second image data 2000.
  • the first image data 1000 may be an image captured from a camera.
  • the second image data 2000 may be data generated based on the first image data 1000.
  • the second image data 2000 may include object information including at least one of obstacle type information and distance information included in the first image data 1000.
  • the artificial neural network may receive the first image data 1000 and perform an image segmentation operation.
  • the image segmentation operation is an image segmentation operation, and may mean an operation of dividing an image region by attribute.
  • the image segmentation operation may include assigning a predetermined attribute value for each pixel of the image.
  • the attribute may mean the type of object included in the image. That is, the image segmentation operation may include a process of dividing an object included in an image for each pixel. Alternatively, the image segmentation operation may indicate that a specific pixel corresponds to an object.
  • the attribute value can be expressed in various ways.
  • the attribute value may be expressed in color.
  • the image segmentation operation may be performed by a plurality of artificial neural networks.
  • each of the plurality of artificial neural networks may acquire object information by performing the image segmentation operation and combining the results.
  • the artificial neural network may have various structures.
  • the artificial neural network may have an ENet structure.
  • the first image data 1000 may be provided in various forms.
  • the first image data 1000 may be provided as an image.
  • the first image data 1000 may be provided as pixel data.
  • FIG. 4 is a diagram of a system 10000 for performing calculations related to surrounding environment sensing, autonomous navigation, and the like according to an embodiment.
  • the system 10000 may perform learning and / or reasoning of an artificial neural network.
  • the system 10000 may include a control module 11000, an input module 13000 and an output module 15000.
  • the control module 11000 may perform artificial neural network learning, inference, image segmentation and surrounding environment detection, path planning such as obstacle map update and route generation, control signal generation for route tracking, autonomous navigation, and the like.
  • path planning such as obstacle map update and route generation
  • control signal generation for route tracking, autonomous navigation, and the like.
  • various operations or steps disclosed in the embodiments of the present specification may be interpreted as being performed by the control module 11000 or controlled by the control module 11000 unless otherwise specified.
  • the input module 13000 may receive information from outside the system 10000.
  • the input module 13000 may be, for example, a ship sensor system described later, but is not limited thereto.
  • the output module 15000 may output a result of an operation performed by the control module 11000 and the like.
  • the output module 15000 may output an image such as a maritime image, an image segmentation result, and a control signal.
  • the output module 15000 may be, for example, a display, a signal output circuit, etc., but is not limited thereto.
  • the input module 13000 and the output module 15000 may be separate modules, but may be implemented as a single module.
  • the input module 13000 and the output module 15000 are implemented as one integrated module, and the integrated module can receive information from the outside and output a result of an operation performed by the control module 11000 and the like. have.
  • the control module 11000, the input module 13000 and the output module 15000 may include a control unit.
  • the control unit may perform processing and calculation of various information and control other components constituting the modules.
  • the controller may be physically provided in the form of an electronic circuit that processes electrical signals.
  • the modules may include only a single physical control unit, but may alternatively include a plurality of control units.
  • the controller may be one or a plurality of processors mounted on one computing means.
  • the control unit may be provided with processors that are mounted on physically separated servers and terminals and cooperate through communication.
  • the control module 11000, the input module 13000 and the output module 15000 may include a communication unit.
  • the modules can transmit and receive information through a communication unit.
  • the input module 13000 may transmit information acquired from the outside through the communication unit, and the control module 11000 may receive information transmitted by the input module 13000 through the communication unit.
  • the control module 11000 may transmit an operation result through the communication unit, and the output module 15000 may receive information transmitted by the control module 11000 through the communication unit.
  • the communication unit may perform wired or wireless communication.
  • the communication unit may perform bi-directional or unidirectional communication.
  • the control module 11000, the input module 13000 and the output module 15000 may include memory.
  • the memory may store various processing programs, parameters for performing processing of the programs, or data of these processing results.
  • the memory may store data necessary for learning and / or reasoning, or an artificial neural network in which learning is in progress or learned.
  • the memory is a non-volatile semiconductor memory, hard disk, flash memory, random access memory (RAM), read only memory (ROM), electrically erasable programmable read-only memory (EEPROM), or other tangible non-volatile recording media And the like.
  • the system 10000 illustrated in FIG. 4 is only an example, and the configuration of the system 10000 is not limited thereto.
  • FIG. 5 is a view for explaining the image segmentation operation of the artificial neural network according to an embodiment.
  • the artificial neural network may receive the first image 1100 and output the first output data 2100.
  • the first output data 2100 may be an N ⁇ M matrix.
  • the N and the M may be the same.
  • the number of elements in the matrix may be the same as the number of pixels in the first image 1100. That is, the first image 1100 may include N ⁇ M pixels.
  • Each pixel of the first image 1100 may correspond to each element of the matrix.
  • each pixel of the first image 1100 may correspond one to one with each element of the matrix.
  • a set of a plurality of pixels of the first image 1100 may correspond to each element of the matrix.
  • the first output data 2100 may include various information.
  • the first output data 2100 may include distance information of an object included in the first image 1100.
  • the first output data 2100 may include type information of the object.
  • each element of the matrix may have a predetermined classification value.
  • the classification value may be a value in which object information included in each pixel of the first image 1100 is reflected.
  • each element of the matrix may include object information corresponding to each pixel of the first image 1100.
  • the classification value may be determined by various object information.
  • the classification value may be determined by object distance information and type information.
  • 6 is a table showing classification values according to an embodiment.
  • the classification value may include object information.
  • the classification value may include object distance information and type information.
  • the distance information may have a specific distance value in meters.
  • the distance information may have a distance value such as 10m.
  • the distance information may be classified into categories having a predetermined range.
  • the category may include short distance, medium distance, and long distance depending on the distance of the object. Specifically, 0 to 10m may be classified into a short distance, 10 to 20m to a medium distance, and 20 to 30m to a long distance.
  • the type information may include data regarding the type of object.
  • the object may be classified into terrain, fixed obstacle, dynamic obstacle, and others according to its type.
  • the terrain may include mountains.
  • the fixed obstacle may include an island, a reef, and the like.
  • the dynamic obstacle may include a ship.
  • the classification value may be determined based on the distance information and the type information.
  • the first classification value may indicate a case in which the object is located at a short distance.
  • the classification values may not include distance information.
  • the first classification value corresponding to the sea may not include distance information.
  • the classification values are not necessarily determined based on both distance information and type information.
  • the classification value may be determined based only on type information.
  • the classification value may be determined based on the distance information and the type information, as well as additional information.
  • the additional information may include object direction information, speed information, route markings, and the like.
  • output data output from the artificial neural network may be image data.
  • the image data may include RGB data corresponding to the classification value.
  • the artificial neural network may receive the first image data 1000 and output the second image data 2000.
  • Each pixel of the second image data 2000 may include object information included in the first image data 1000.
  • Each pixel of the second image data 2000 may include RGB data corresponding to a classification value reflecting the object information.
  • the first object 100 is a dynamic obstacle located at a short distance and may correspond to the classification value 7 of FIG. 6.
  • the second object 200 is a remotely located terrain, and may correspond to the classification value 3 of FIG. 6.
  • the classification value 7 may correspond to the seventh color.
  • the classification value 3 may correspond to a third color.
  • the first object 100 may be represented by the seventh color.
  • the second object 200 may be represented by the third color.
  • the artificial neural network may perform a pre-processing operation before performing the image segmentation operation.
  • the artificial neural network may perform an operation of receiving a plurality of images and selecting a part of the plurality of images.
  • the artificial neural network may generate a third image by combining a first image having the highest illuminance and a second image having the lowest illuminance among the plurality of images.
  • the artificial neural network may obtain output data by performing the image segmentation operation based on the third image.
  • the accuracy of output data obtained from the artificial neural network may be improved.
  • the artificial neural network may sample one image among a plurality of images.
  • the artificial neural network may sample an image in which a focus value (or a focus measure) among the plurality of images is largest and the illuminance value is closest to a predetermined value.
  • the artificial neural network may perform the image segmentation operation based on the sampled image. Accordingly, accuracy of output data calculated through the image segmentation operation may be improved.
  • the artificial neural network may perform an RGB normalization operation.
  • the artificial neural network may be learned in various ways.
  • the artificial neural network may receive learning data and output output data.
  • the artificial neural network may be learned as an error calculated based on a difference between the output data and the labeling data related to the learning data is propagated back to the artificial neural network.
  • the learning data may be image data.
  • the image data may include a maritime image obtained by imaging an ocean.
  • the learning data may include a plurality of image data obtained through data augmentation from an arbitrary image.
  • a plurality of generated images may be generated from the original image 1300.
  • a plurality of generated images may be generated from the original image 1300 by reflecting various weather conditions or environmental noise.
  • the first generated image 1310 may be an image in which fog is added to the original image 1300.
  • the degree of fog of the first generated image 1310 may be greater than the degree of fog of the original image 1300.
  • the second generated image 1320 may be an image in which rain is added to the original image 1300.
  • the first generated image 1310 may be an image in which fog and rain are added to the original image 1300.
  • the artificial neural network may be learned based on the first generated image 1310, the second generated image 1320, and the third generated image 1330. Accordingly, the learning efficiency of the artificial neural network can be improved.
  • the artificial neural network can be learned based on various labeling data. For example, when the artificial neural network outputs a classification value corresponding to an object included in an input image, the artificial neural network may be learned based on labeling data including classification values related to the object.
  • the artificial neural network when the artificial neural network outputs RGB data corresponding to a classification value corresponding to an object included in an input image, the artificial neural network may be learned based on RGB data corresponding to the classification value for the object. have.
  • the pre-processing operation may be performed in the learning stage of the artificial neural network. Accordingly, learning efficiency of the artificial neural network may be improved.
  • FIG. 8 is a diagram illustrating a method of obtaining a moving property of a moving object according to an embodiment.
  • movement attribute data 1320 may be obtained based on a comparison of an image 1300 of a first frame and an image 1310 of a second frame that is a subsequent frame of the image 1300 of the first frame. You can.
  • control unit 1 may obtain a moving direction of the moving object 10 by comparing the pixel value of the image 1300 of the first frame and the pixel value of the image 1310 of the second frame. 8, it can be seen that the moving body 10 is moving from left to right.
  • control unit 1 may obtain the moving direction of the moving object 10 by performing an inter-frame subtraction operation.
  • control unit 1 may obtain a moving speed of the moving object 10 based on the pixel value and the frame interval.
  • the control unit 1 may acquire the movement attribute data 1320.
  • the movement attribute data 1320 may include a movement direction and a movement speed of the movable body 10.
  • the movement attribute data 1320 may be image data as illustrated in FIG. 8, but is not limited thereto, and may be various types of data.
  • control unit 1 acquires the movement attribute of the moving object
  • a movement attribute acquisition operation of the control unit 1 a series of operations in which the control unit 1 acquires the movement attribute of the moving object
  • FIG. 9 is a flowchart illustrating a method of obtaining a moving property of a moving object according to another embodiment.
  • a method for obtaining a moving property of a moving object includes obtaining a first image and a second image capturing an image (S1000), and using the artificial neural network, the first image and the second Obtaining first object information and second object information from the 2 images, respectively (S2000) and comparing the first object information and the second object information to obtain a moving property of a moving object included in the captured sea image It may include (S3000).
  • control unit 1 may acquire a plurality of images including a first image and a second image captured by the sea (S1000).
  • the first image and the second image may be images of different frames.
  • the second image may be an image of a subsequent frame of the first image.
  • Each of the first image and the second image may include a plurality of objects.
  • the plurality of objects may include various objects such as sea, ship, and buoy.
  • the controller 1 may obtain first object information and second object information from the first image and the second image, respectively, using an artificial neural network (S2000).
  • S2000 artificial neural network
  • the artificial neural network may refer to the artificial neural network described in FIGS. 1 to 7.
  • the artificial neural network may receive an arbitrary input image and output object information included in the input image.
  • the artificial neural network may output distance information and type information of an obstacle included in the input image by performing the image segmentation operation.
  • the artificial neural network may perform the pre-processing operation.
  • the first object information and the second object information may refer to object information obtained through the image segmentation operation described above.
  • the first object information and the second object information may mean distance information and type information about an object included in the first image and the second image, respectively.
  • the first object information and the second object information may be provided in an N ⁇ M matrix.
  • the elements of the matrix may correspond to pixels of the first image and the second image.
  • the controller 1 may compare the first object information and the second object information to obtain a moving property of a moving object included in the captured image (S3000).
  • control unit 1 may obtain the moving direction of the moving object by comparing the first object information and the second object information.
  • the controller 1 may obtain a moving direction of the moving object by comparing an element included in the first object information and an element included in the second object information.
  • the element may include a classification value reflecting distance information and type information about an object included in the first image and the second image.
  • the movement direction may mean a relative movement direction based on an installation position of a camera that captures the plurality of images.
  • the controller 1 may calculate the moving direction of the object in consideration of the type information of the objects included in the first image and the second image. For example, the control unit 1 may calculate the moving direction of the object only when the object is a dynamic obstacle. That is, when the object corresponds to a terrain or a fixed obstacle, the controller 1 may not calculate a moving direction of the object.
  • the period of the movement direction calculation operation of the control unit 1 may vary according to the type of the object. For example, when the object is a dynamic obstacle, a period of the movement direction calculation operation may be smaller than when the object is a fixed obstacle.
  • the controller 1 may calculate a moving direction of the object in consideration of distance information of the objects included in the first image and the second image. For example, when the object is located at a short distance, a period of the movement direction calculation operation of the controller 1 may be smaller than when the object is located at a long distance.
  • the controller 1 may obtain the moving speed of the moving object by comparing the first object information and the second object information. For example, the controller 1 may obtain a moving speed of the moving object using the frame intervals of the first image and the second image, and the first object information and the second object information.
  • the controller 1 may obtain the movement speed in consideration of distance information of an object included in the first object information and distance information of an object included in the second object information.
  • the movement speed may be obtained based on changes in element values of the distance information, the first object information, and the second object information.
  • the movement speed may refer to a relative movement speed based on an installation position of a camera that captures the plurality of images.
  • the controller 1 may calculate the absolute speed of the moving object based on the moving speed. For example, the controller 1 may calculate the absolute speed in consideration of GPS information of the ship on which the camera is installed.
  • the controller 1 may perform the movement attribute acquisition operation in consideration of posture information of the ship on which the camera is installed.
  • the control unit 1 may perform the movement attribute acquisition operation in consideration of the attitude information of the ship obtained from the IMU mounted on the ship.
  • the posture information may include a heading or yaw of the ship, a pitch, a roll, and the like.
  • the controller 1 may match the first image and the second image in consideration of the posture information. For example, the positions of the first image and the second image may be matched in consideration of the pitch of the ship. At this time, the controller 1 may match the first image and the second image based on a predetermined reference position.
  • the steps S2000 and S3000 may include the image matching step.
  • FIG. 10 is a diagram illustrating a method of obtaining a moving property of a moving object according to an embodiment.
  • control unit 1 is based on a comparison of first object information 1400 obtained from a first image and second object information 1410 obtained from a second image that is a subsequent frame of the first image.
  • first movement attribute data 1420 may be obtained.
  • the first object information 1400 and the second object information 1410 may include distance information and type information about the moving object 10.
  • the control unit 1 may acquire the moving property of the moving object 10 by comparing the first object information 1400 and the second object information 1410.
  • control unit 1 compares the position of the moving object 10 according to the first object information 1400 and the position of the moving object 10 according to the second object information 1410 to move the moving object 10 Can be obtained. Specifically, the control unit 1 may obtain a moving direction of the moving object 10 based on a position change in the matrix to which the classification value corresponding to the moving object 10 belongs.
  • the control unit 1 may obtain a moving speed of the moving object 10 by using the frame intervals of the first image and the second image and distance information of the moving object 10.
  • the first object information 1400 and the second object information 1410 may be provided as various types of data.
  • the first object information 1400 and the second object information 1410 may be provided in the form of an image.
  • the first object information 1400 and the second object information 1410 may be provided in a two-dimensional matrix.
  • the moving properties of the moving object 10 may be classified.
  • 11 is a table showing classification values related to movement attributes according to an embodiment.
  • classification values may be allocated according to respective movement attributes.
  • Movement attributes may include a movement direction and a movement speed.
  • the moving direction may be classified as NOT MOVING, FORWARD, BACKWARD, LEFT, RIGHT, and the like.
  • the present invention is not limited thereto, and the moving direction may be classified in various ways.
  • the direction of movement may be classified into eight directions such as east, west, south, north, northeast, southeast, southwest, and northwest.
  • the moving direction may indicate a direction based on a position where the diffuser camera is installed. For example, when a plurality of cameras are installed on a ship, the direction indicated by each moving direction may be different depending on the installation position of the camera.
  • the moving direction may indicate a direction based on a moving direction of the ship on which the camera is installed.
  • the front may indicate the same direction as the moving direction of the ship.
  • the rear may indicate the direction opposite to the direction of movement of the ship.
  • the moving speed can be classified into three types: low speed (SLOW), medium speed (NORMAL), and high speed (FAST) based on a predetermined range.
  • SLOW low speed
  • NVMAL medium speed
  • FAST high speed
  • the present invention is not limited thereto, and the moving speed may be classified into various numbers according to the speed.
  • FIG. 12 is a diagram illustrating a method of obtaining a moving property of a moving object according to another embodiment.
  • control unit 1 may acquire the second movement attribute data 1520 based on the third object information 1500 and the fourth object information 1510.
  • the third object information 1500 may be output from the first image through the artificial neural network.
  • the fourth object information 1510 may be output from the second image through the artificial neural network.
  • the controller 1 may perform a movement attribute acquisition operation of the moving object 10 in the same manner as the movement attribute acquisition operation described with reference to FIGS. 8 to 10.
  • the control unit 1 may obtain a moving direction and a moving speed of the moving object 10 by comparing the third object information 1500 and the fourth object information 1510. Therefore, a detailed description thereof will be omitted, and a description will be given focusing on a difference from the above-described movement attribute acquisition operation.
  • the control unit 1 may perform a movement attribute acquisition operation only on an object having a predetermined classification value. For example, the control unit 1 may acquire the movement property of the dynamic obstacle only when the classification value corresponding to the dynamic obstacle is included in the third object information 1500 and the fourth object information 1510.
  • the controller 1 may perform an operation of selecting an object having a predetermined classification value.
  • the control unit 1 may perform an operation of sorting dynamic obstacles.
  • the controller 1 may perform an operation of discarding the remaining information other than the selected object from the third object information 1500 and the fourth object information 1510. For example, the controller 1 may adjust the values of the remaining elements other than the element corresponding to the selected object in the third object information 1500 to 0. The controller 1 may adjust the values of the remaining elements other than the elements corresponding to the selected object in the fourth object information 1510 to 0.
  • control unit 1 may generate third object information 1500 from which information other than the object information on the moving object 10 is removed from the first object information 1400 from the first object information 1400. You can. That is, the third object information 1500 may include only object information on the moving object 10 of the first object information 1400.
  • control unit 1 may generate the fourth object information 1510 from which the rest of the information except the object information on the moving object 10 is removed from the second object information 1410 from the second object information 1410. . That is, the fourth object information 1510 may include only object information on the moving object 10 of the second object information 1410.
  • the control unit 1 may obtain movement attributes of the moving object 10 by comparing the third object information 1500 and the fourth object information 1510. For example, the control unit 1 may obtain a moving direction and a moving speed of the moving object 10 based on a change in a position in the matrix of classification values corresponding to the moving object 10.
  • the total computation amount of the control unit 1 that acquires the moving property of the moving object can be reduced. That is, the control unit 1 may obtain a movement attribute based on the selected object information including only information about a predetermined object, thereby reducing the amount of data calculation of the control unit 1.
  • the execution period of the movement attribute acquisition operation performed by the control unit 1 may vary according to the distance information of the moving object. For example, when a short-range dynamic obstacle is included in the first image, the controller 1 may acquire a movement attribute of the dynamic obstacle at a first time interval. On the other hand, when a long distance dynamic obstacle is included in the first image, the controller 1 may acquire the movement property of the dynamic obstacle at a second time interval greater than the first time interval.
  • FIG. 13 is a view for explaining a method of obtaining a moving attribute of a moving object according to an embodiment.
  • the artificial neural network may output a plurality of object information corresponding to the plurality of images from a plurality of images captured by the sea.
  • the control unit 1 may perform the movement attribute acquisition operation for each N frame.
  • the control unit 1 may perform the movement attribute acquisition operation for every M frame larger than N.
  • the second moving body 12 may be located farther from the camera that imaged the sea than the first moving body 11. That is, the closer the distance from the moving object to the camera is, the more frequently the operation of acquiring the movement attribute of the controller 1 can be performed.
  • the method for obtaining the moving attribute of the control unit 1 may vary.
  • the control unit 1 may acquire the moving property of the moving object based on the change in the position of the classification value corresponding to the moving object as described above.
  • the control unit 1 may acquire the moving property of the moving object based on the change in the number of pixels corresponding to the moving object.
  • FIG. 14 is a view for explaining a method for obtaining a moving attribute of a moving object according to an embodiment.
  • the controller 1 may acquire the third movement attribute data 1620 based on the fifth object information 1600 and the sixth object information 1610.
  • the fifth object information 1600 may be output from the first image through the artificial neural network.
  • the sixth object information 1610 may be output from the second image through the artificial neural network. Accordingly, the sixth object information 1610 may be information regarding an image of a subsequent frame of the fifth object information 1600.
  • the movable body 10 can move along a vertical direction.
  • the vertical direction may mean a vertical axis direction of the camera.
  • the vertical direction may mean a direction away from or closer to the camera.
  • the vertical direction may mean the FORWARD or BACKWARD direction of FIG. 10.
  • control unit 1 moves the moving object 10 based on a change in the number of pixels corresponding to the moving object 10 included in the first first image and the second image. You can acquire the movement attribute of.
  • control unit 1 may acquire a moving property of the moving object 10 based on a change in the number of classification values corresponding to the moving object 10 included in the fifth object information 1600 and the sixth object information 1610. You can.
  • the number of classification values may mean the number of elements having the classification value included in the fifth object information 1600 and the sixth object information 1610.
  • the number of classification values corresponding to the moving object 10 included in the sixth object information 1610 is greater than the number of classification values corresponding to the moving object 10 included in the fifth object information 1600 That is, when the number of classification values increases with time, it may mean that the moving object 10 is close to the camera. Alternatively, it may mean that the moving body 10 is close to the vessel.
  • the number of classification values corresponding to the moving object 10 included in the sixth object information 1610 is smaller than the number of classification values corresponding to the moving object 10 included in the fifth object information 1600, that is, .
  • the number of the classification values decreases with time, it may mean that the moving object 10 moves away from the camera. Alternatively, it may mean that the moving body 10 is far from the vessel.
  • control unit 1 may perform the movement attribute acquisition operation of the moving object 10 in the same manner as the movement attribute acquisition operation described with reference to FIGS. 8 to 12.
  • control unit 1 may acquire a moving direction and a moving speed of the moving object 10 based on a change in the position of the moving object 10 included in the fifth object information 1600 and the sixth object information 1610. You can.
  • control unit 1 may acquire the movement attribute of the moving object 10 in consideration of the attitude information of the ship on which the camera is installed.
  • the movement property may be obtained in consideration of the heading or yaw of the ship, pitch, roll, and the like.
  • the movement attribute of the moving object 10 obtained based on the change in the number of classification values may be more accurate than the movement attribute of the moving object 10 obtained based on the position change.
  • the number of the classification values may be less affected by the attitude change of the ship than the position.
  • the position may change as the attitude of the ship changes, while the number of classification values may be maintained even when the attitude of the ship changes.
  • the position may change relatively largely as the attitude of the ship changes, while the number of classification values may change relatively little even if the attitude of the ship changes.
  • the control unit 1 may generate a steering signal of the ship based on the moving properties of the moving object 10. For example, when the moving object 10 approaches the ship, the control unit 1 may generate a steering signal that avoids the moving object 10. Alternatively, the control unit 1 may generate a steering signal so that the ship avoids the moving body 10 when the moving body 10 enters a predetermined dangerous area based on the ship.
  • the controller 1 has been described as obtaining the moving property of the moving object included in the marine image from the marine image captured by the camera installed on the ship, but the controlling unit 1 obtains the moving property of the moving object from various images. can do.
  • the control unit 1 may acquire a movement property of the moving object included in the captured image from the captured image captured by the camera installed in the vehicle.
  • the control unit 1 may acquire a movement attribute of the moving object included in the image from an image captured from a camera installed in the drone.
  • the control unit 1 may generate a steering signal for controlling a vehicle or a drone based on the movement attribute.
  • the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, or the like alone or in combination.
  • the program instructions recorded on the medium may be specially designed and configured for the embodiments or may be known and usable by those skilled in computer software.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs, DVDs, and magnetic media such as floptical disks.
  • -Hardware devices specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like.
  • program instructions include high-level language code that can be executed by a computer using an interpreter, etc., as well as machine language codes produced by a compiler.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

Abstract

본 발명은 인공신경망을 이용하여 이동체의 이동 속성을 획득하는 방법으로, 복수의 이미지를 획득하는 단계; 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 객체 정보를 획득하는 단계; 및 이동체의 이동 방향을 산출하는 단계;를 포함한다.

Description

이동체의 이동 속성 획득 방법 및 이를 수행하는 장치
본 발명은 이동체의 이동 속성을 획득하는 방법에 관한 것이다. 보다 상세하게, 본 발명은 학습된 인공신경망을 이용하여 촬상된 이미지에 포함된 이동체의 이동 속성을 획득하는 방법에 관한 것이다.
바야흐로 인공지능(AI: Artificial Intelligence)의 시대이다. 알파고(AlphaGo)가 화제가 된 이후로 인공지능을 다양한 산업 분야에 적용하려는 시도가 활발히 진행되고 있다.
근래에, 인공지능은 주로 이미지 인식, 분석, 생성, 합성 등 이미지 처리 기술에 활발히 사용되어 오다가 최근에는 자동차, 선박, 드론 등에 탑재되어 주변 장애물 인식, 경로계획 등에 사용되고있다.
한편, 인공지능이 선박 또는 자동차에 사용되어 주변 장애물에 대한 정보를 획득하는 경우, 움직이는 장애물에 대한 이동 속성을 획득하는 것이 중요하다.
일 실시예에 따른 기술적 과제는 이미지 세그멘테이션(segmentation)을 수행하는 인공신경망을 이용하여 주변 환경의 객체 정보를 획득하는 것이다.
다른 일 실시예에 따른 기술적 과제는 인공신경망으로부터 출력되는 객체 정보를 이용하여 이동체의 이동 속성을 획득하는 것이다.
또 다른 일 실시예에 따른 기술적 과제는 이동체의 이동 속성을 이용하여 선박 및 자동차의 조종신호를 생성하는 것이다.
본 발명의 기술적 과제는 상술한 과제들로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
일 실시예에 따르면, 선박에 설치된 카메라가 촬상한 이미지 및 인공신경망을 이용하여 이동체의 이동 속성을 획득하는 방법으로, 해상을 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하는 단계; 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.
다른 일 실시예에 따르면, 인공신경망을 이용하여 이동체의 이동 방향을 산출하는 방법으로, 제1 촬상 이미지 및 상기 제1 촬상 이미지의 후속 프레임인 제2 촬상 이미지를 포함하는 복수의 촬상 이미지를 획득하는 단계; 상기 촬상 이미지로부터 상기 촬상 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 촬상 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 촬상 이미지로부터 제2 객체 정보를 획득하는 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 복수의 촬상 이미지에 포함된 이동체 중 적어도 일부의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.
또 다른 일 실시예에 따르면, 선박에 설치되어 해상을 촬상하는 카메라; 및 상기 카메라가 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하고, 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 제어부;를 포함하는 이동체의 이동 속성 획득 장치가 제공될 수 있다.
본 발명의 기술적 해결 방법이 상술한 해결 방법들로 제한되는 것은 아니며, 언급되지 아니한 해결 방법들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
일 실시예에 따르면, 이미지 세그멘테이션(segmentation)을 수행하는 인공신경망을 이용하여 주변 환경의 객체 정보를 획득할 수 있다.
다른 일 실시예에 따르면, 인공신경망으로부터 출력되는 객체 정보를 이용하여 이동체의 이동 속성을 획득할 수 있다.
또 다른 일 실시예에 따르면, 이동체의 이동 속성을 이용하여 선박 및 자동차의 조종신호를 생성할 수 있다.
본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 일 실시예에 따른 인공신경망의 학습 방법이 도시된 블록도이다.
도 2는 일 실시예에 따른 인공신경망의 추론 단계에 관한 블록도이다.
도 3은 일 실시예에 따른 인공신경망을 이용한 객체 정보 획득 방법이 도시된 도면이다.
도 4는 일 실시예에 따른 주변 환경 감지, 자율 운항 등과 관련된 연산을 수행하는 시스템에 관한 도면이다.
도 5는 일 실시예에 따른 인공신경망의 영상 분할 동작을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 분류값이 도시된 표이다.
도 7은 일 실시예에 따른 데이터 확장을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 9는 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법이 도시된 순서도이다.
도 10은 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 객체의 분류값 및 이동 속성에 관한 표이다.
도 12는 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 13은 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 14는 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다.
도면들에 있어서, 층 및 영역들의 두께는 명확성을 기하기 위하여 과장된 것이며, 또한, 구성요소(element) 또는 층이 다른 구성요소 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 구성요소 또는 층의 바로 위뿐만 아니라 중간에 다른 층 또는 다른 구성요소를 개재한 경우를 모두 포함한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다.
본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
일 실시예에 따르면, 선박에 설치된 카메라가 촬상한 이미지 및 인공신경망을 이용하여 이동체의 이동 속성을 획득하는 방법으로, 해상을 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하는 단계; 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.
다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 영상 분할 동작을 통해 획득되는 세그멘테이션 이미지(segmentation image)일 수 있다.
또 다른 일 실시예에서, 상기 제1 객체 정보는 상기 제1 이미지에 포함된 객체가 그 거리 정보 및 종류 정보 중 적어도 하나에 관한 객체 정보가 반영된 분류값에 대응되는 색상값을 갖는 이미지이고, 상기 제2 객체 정보는 상기 제2 이미지에 포함된 객체가 그 거리 정보 및 종류 정보 중 적어도 하나에 관한 객체 정보가 반영된 분류값에 대응되는 색상값을 갖는 이미지일 수 있다.
또 다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 N×M 행렬일 수 있다.
또 다른 일 실시예에서, 상기 제1 객체 정보는 상기 제1 이미지에 포함된 이동체에 관한 분류값만을 포함하고, 상기 제2 객체 정보는 상기 제2 이미지에 포함된 이동체에 관한 분류값만을 포함할 수 있다.
또 다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 상기 제1 분류값을 포함하지 않을 수 있다.
또 다른 일 실시예에서, 상기 산출하는 단계는 상기 카메라로부터 제1 거리만큼 이격된 제1 이동체에 대응되는 제1 이동체 분류값 - 이 때, 상기 제1 이동체 분류값은 상기 제1 이동체의 거리 정보 및 종류 정보를 포함함 - 만을 포함하는 복수의 제1 이동체 객체 정보를 제1 시간 간격으로 비교하여 상기 제1 이동체의 이동 방향을 산출하는 제1 이동 방향 산출 단계, 및 상기 카메라로부터 상기 제1 거리보다 큰 제2 거리만큼 이격된 제2 이동체에 대응되는 제2 이동체 분류값 - 이 때, 상기 제2 이동체 분류값은 상기 제2 이동체의 거리 정보 및 종류 정보를 포함함 - 만을 포함하는 복수의 제2 이동체 객체 정보를 상기 제1 시간 간격보다 큰 제2 시간 간격으로 비교하여 상기 제2 이동체의 이동 방향을 산출하는 제2 이동 방향 산출 단계를 포함할 수 있다.
또 다른 일 실시예에서, 상기 제1 이동체 객체 정보 및 상기 제2 이동체 객체 정보는 2차원 행렬일 수 있다.
또 다른 일 실시예에서, 상기 객체 정보 획득 단계는 상기 제2 객체 정보를 획득하기 전 상기 선박의 자세 정보를 고려하여 상기 제1 이미지 및 상기 제2 이미지를 정합하는 단계를 포함할 수 있다.
또 다른 일 실시예에서, 상기 객체 정보 획득 단계는 상기 제1 객체 정보 및 상기 제2 객체 정보에 포함된 이동체에 대응되는 분류값 및 상기 선박의 자세 정보를 이용하여 상기 제1 객체 정보 및 상기 제2 객체 정보를 정합하는 단계를 포함할 수 있다.
또 다른 일 실시예에서, 상기 산출하는 단계는 상기 이동체가 수평축 방향을 따라 이동하는 경우, 상기 제1 객체 정보에 따른 제1 위치 및 상기 제2 객체 정보에 따른 제2 위치를 비교하여 상기 이동체의 이동 방향을 산출하는 단계를 포함할 수 있다.
또 다른 일 실시예에서, 상기 산출하는 단계는 상기 이동체가 수직축 방향을 따라 이동하는 경우, 상기 제1 객체 정보에 포함된 상기 이동체에 대응되는 성분의 개수 및 상기 제2 객체 정보에 포함된 상기 이동체에 대응되는 성분의 개수를 비교하여 상기 이동체의 이동 방향을 산출하는 단계를 포함할 수 있다.
또 다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 각각 세그멘테이션 이미지(segmentation image)이고, 상기 성분의 개수는 상기 세그멘테이션 이미지의 픽셀의 개수일 수 있다.
또 다른 일 실시예에서, 상기 성분의 개수의 증가는 상기 선박으로부터 상기 이동체까지의 거리의 감소를 지시하고, 상기 성분의 개수의 감소는 상기 선박으로부터 상기 이동체까지의 거리의 증가를 지시할 수 있다.
또 다른 일 실시예에서, 상기 산출하는 단계는 상기 제1 객체 정보에 따른 제1 위치 및 상기 제2 객체 정보에 따른 제2 위치를 비교하여 상기 이동 방향의 수평 성분을 산출하고, 상기 제1 객체 정보에 포함된 상기 이동체에 대응되는 픽셀의 개수 및 상기 제2 객체 정보에 포함된 상기 이동체에 대응되는 픽셀의 개수를 비교하여 상기 이동 방향의 수직 성분을 산출하는 단계를 포함할 수 있다.
또 다른 일 실시예에서, 상기 산출하는 단계는 상기 제1 이미지와 상기 제2 이미지 간의 시간 간격, 상기 선박의 속도 정보 및 상기 선박의 자세 정보에 기초하여 상기 이동체의 절대 속도를 획득하는 단계를 포함할 수 있다.
또 다른 일 실시예에 따르면, 상기 이동체의 이동 속성 획득 방법은 상기 산출되는 이동체의 이동 방향에 기초하여 상기 선박의 조종신호를 생성하는 단계;를 더 포함할 수 있다.
또 다른 일 실시예에 따르면, 인공신경망을 이용하여 이동체의 이동 방향을 산출하는 방법으로, 제1 촬상 이미지 및 상기 제1 촬상 이미지의 후속 프레임인 제2 촬상 이미지를 포함하는 복수의 촬상 이미지를 획득하는 단계; 상기 촬상 이미지로부터 상기 촬상 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 운행 가능 영역에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 촬상 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 촬상 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 복수의 촬상 이미지에 포함된 이동체 중 적어도 일부의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.
또 다른 일 실시예에서, 상기 운행 가능 영역은, 상기 인공신경망이 선박에 이용되는 경우 수상에 해당하고, 상기 인공신경망이 차량에 이용되는 경우 도로에 해당할 수 있다.
또 다른 일 실시예에 따르면, 선박에 설치되어 해상을 촬상하는 카메라; 및 상기 카메라가 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하고, 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 제어부;를 포함하는 이동체의 이동 속성 획득 장치가 제공될 수 있다.
또 다른 일 실시예에 따르면, 상술한 이동체의 이동 속성 획득 방법 중 어느 하나의 방법을 수행하기 위한 프로그램이 기록된 기록매체가 제공될 수 있다.
인공신경망(ANN: Artificial Neural Network)이란 인간의 뇌의 학습방법을 수학적으로 모델링한 알고리즘의 일종이다.
인공신경망은 인공 뉴런(neuron)인 복수의 노드(node) 및 상기 복수의 노드를 연결하는 시냅스(synapse)를 포함할 수 있다. 인공신경망은 적어도 하나 이상의 노드(node)를 포함하는 층(layer)을 포함할 수 있다. 예를 들어, 인공신경망은 입력층(input layer), 은닉층(hidden layer) 및 출력층(output layer)을 포함할 수 있다.
입력층은 인공신경망 외부로부터 입력 데이터를 입력 받아 인공신경망 내부로 상기 입력 데이터를 전송할 수 있다. 은닉층은 상기 입력층으로부터 전송되는 입력 데이터 및 시냅스의 결합세기에 기초하여 산출되는 데이터를 출력 층으로 전송할 수 있다. 출력층은 상기 은닉층으로부터 전송되는 데이터 및 시냅스의 결합세기에 기초하여 출력 데이터를 산출할 수 있다.
인공신경망은 다양한 신경망을 포함할 수 있다. 예컨대, 인공신경망은 필터를 이용해 특징을 추출하는 합성곱신경망(CNN: Convolution Neural Network)을 포함할 수 있다. 또는, 인공신경망은 노드의 출력이 다시 입력으로 피드백되는 구조를 갖는 순환인공신경망(RNN: Recurrent Neural Network)을 포함할 수 있다. 그 외에도, 인공신경망은 제한된 볼츠만 머신(RBM: Restricted Boltzmann Machine), 심층신뢰신경망(DBN: Deep Belief Network), 생성대립신경망(GAN: Generative Adversarial Network), 관계형 네트워크(RN: Relation Networks) 등 다양한 종류의 신경망을 포함할 수 있다.
한편, 인공신경망은 다양한 방법으로 학습(learning)될 수 있다. 예를 들어, 인공신경망은 지도 학습(supervised learning), 비지도 학습(unsupervised learning), 강화 학습(reinforcement learning), 모방 학습(imitation learning)을 포함할 수 있다. 그 외에도, 인공신경망은 다양한 종류의 학습 방법을 통해 학습될 수 있다.
도 1은 일 실시예에 따른 인공신경망의 학습 방법이 도시된 블록도이다. 구체적으로, 도 1은 일 실시예에 따른 지도 학습을 나타낼 수 있다.
도 1을 참조하면, 인공신경망은 학습 데이터(training data)를 입력 받아 출력 데이터를 출력할 수 있다. 인공신경망은 출력 데이터와 라벨링 데이터(labeling data)의 비교에 기초하여 산출되는 오차의 역전파를 통해 학습될 수 있다.
상기 라벨링 데이터는 상기 학습 데이터와 관련될 수 있다. 예를 들어, 상기 라벨링 데이터는 상기 학습 데이터를 기초로 산출된 데이터를 포함할 수 있다.
상기 라벨링 데이터는 실측 자료(ground truth)를 포함할 수 있다. 또는, 상기 라벨링 데이터는 사용자 또는 프로그램을 통하여 생성된 자료일 수 있다.
도 2는 일 실시예에 따른 인공신경망의 추론 단계에 관한 블록도이다. 도 2를 참조하면, 학습된 인공신경망은 입력 데이터를 입력 받아 출력 데이터를 출력할 수 있다.
상기 입력 데이터는 다양한 형태의 데이터를 포함할 수 있다. 예를 들어, 상기 입력 데이터는 이미지 데이터, 오디오 데이터 및 텍스트 데이터를 포함할 수 있다.
상기 출력 데이터는 다양한 형태의 데이터를 포함할 수 있다. 예를 들어, 상기 출력 데이터는 이미지 데이터, 오디오 데이터 및 텍스트 데이터를 포함할 수 있다.
상기 학습된 인공신경망의 학습 정도에 따라 출력 데이터의 정확성이 달라질 수 있다. 구체적으로, 상기 학습 정도가 높을수록 상기 출력 데이터의 정확성이 증가할 수 있다.
이하에서는 인공신경망을 이용하여 주변 장애물에 관한 정보를 획득하는 방법에 대해 설명한다.
도 3은 일 실시예에 따른 인공신경망을 이용한 객체 정보 획득 방법이 도시된 도면이다.
도 3을 참조하면, 인공신경망은 입력 데이터를 입력 받아 출력 데이터를 출력할 수 있다. 예를 들어, 상기 인공신경망은 제1 이미지 데이터(1000)를 입력 받아 제2 이미지 데이터(2000)를 출력할 수 있다.
상기 제1 이미지 데이터(1000)는 카메라로부터 촬상된 이미지일 수 있다.
상기 제2 이미지 데이터(2000)는 상기 제1 이미지 데이터(1000)를 기초로 생성된 데이터일 수 있다. 예를 들어, 상기 제2 이미지 데이터(2000)는 상기 제1 이미지 데이터(1000)에 포함되는 장애물의 종류 정보 및 거리 정보 중 적어도 하나를 포함하는 객체 정보를 포함할 수 있다.
상기 인공신경망은 제1 이미지 데이터(1000)를 입력 받아 이미지 세그멘테이션 동작을 수행할 수 있다.
상기 이미지 세그멘테이션(image segmentation) 동작이란 영상 분할 동작으로, 속성별로 이미지의 영역을 분할하는 동작을 의미할 수 있다. 상기 이미지 세그멘테이션 동작은 이미지의 각 픽셀별로 소정의 속성값을 할당하는 과정을 포함할 수 있다. 예컨대, 상기 속성은 상기 이미지에 포함되는 객체의 종류를 의미할 수 있다. 즉, 상기 이미지 세그멘테이션 동작은 이미지에 포함되는 객체를 픽셀별로 분할하는 과정을 포함할 수 있다. 또는, 상기 이미지 세그멘테이션 동작은 특정 픽셀이 어떤 객체에 대응되는 픽셀인지 나타내는 것을 의미할 수 있다.
상기 속성값은 다양한 방식으로 표현될 수 있다. 예를 들어, 상기 속성값은 색상으로 표현될 수 있다.
상기 이미지 세그멘테이션 동작은 복수의 인공신경망에 의해 수행될 수 있다. 예를 들어, 상기 복수의 인공신경망은 각각 상기 이미지 세그멘테이션 동작을 수행하고, 그 수행 결과를 조합함으로써 객체 정보를 획득할 수 있다.
한편, 상기 인공신경망은 다양한 구조를 가질 수 있다. 예컨대, 상기 인공신경망은 ENet 구조를 가질 수 있다.
한편, 상기 제1 이미지 데이터(1000)는 다양한 형태로 제공될 수 있다. 예를 들어, 도 3에 도시된 바와 같이 제1 이미지 데이터(1000)는 이미지로 제공될 수 있다. 또는, 상기 제1 이미지 데이터(1000)는 픽셀 데이터로 제공될 수 있다.
도 4는 일 실시예에 따른 주변 환경 감지, 자율 운항 등과 관련된 연산을 수행하는 시스템(10000)에 관한 도면이다. 상기 시스템(10000)은 인공신경망의 학습 및/또는 추론을 수행할 수 있다.
도 4를 참고하면, 시스템(10000)은 제어 모듈(11000), 입력 모듈(13000) 및 출력 모듈(15000)을 포함할 수 있다.
제어 모듈(11000)은 인공신경망의 학습, 추론, 이미지 세그멘테이션 및 이를 통한 주변 환경 감지, 장애물 지도 업데이트 및 경로 생성과 같은 경로 계획, 경로 추종을 위한 제어 신호 생성, 자율 운항 등을 수행할 수 있다. 또한, 입력 모듈(13000)을 통해 각종 입력을 수신하는 동작, 출력 모듈(15000)을 통해 각종 출력을 출력하는 동작, 메모리에 각종 데이터를 저장하거나 메모리로부터 각종 데이터를 획득하는 동작 등이 제어 모듈(11000)의 제어에 의해 수행될 수 있다. 이하에서는 본 명세서의 실시예로 개시되는 각종 동작이나 단계들은 별도의 언급이 없는 이상 제어 모듈(11000)에 의해 수행되거나 제어 모듈(11000)의 제어에 의해 수행되는 것으로 해석될 수 있다.
입력 모듈(13000)은 시스템(10000)의 외부로부터 정보를 받아들일 수 있다. 입력 모듈(13000)은 예시적으로 후술할 선박 센서 시스템일 수 있으나 이에 한정되는 것은 아니다.
출력 모듈(15000)은 제어 모듈(11000)에 의해 수행된 연산의 결과 등을 출력할 수 있다. 예를 들어, 출력 모듈(15000)은 해상 이미지 등과 같은 이미지, 이미지 세그멘테이션 결과, 제어 신호 등을 출력할 수 있다. 출력 모듈(15000)은 예시적으로 디스플레이, 신호 출력 회로 등일 수 있으나 이에 한정되는 것은 아니다.
입력 모듈(13000)과 출력 모듈(15000)은 별개의 모듈일 수도 있지만 하나의 모듈로 구현될 수도 있다. 예를 들어, 입력 모듈(13000)과 출력 모듈(15000)은 하나의 통합된 모듈로 구현되고 상기 통합 모듈은 외부로부터 정보를 받아들이고 제어 모듈(11000)에 의해 수행된 연산의 결과 등을 출력할 수 있다.
제어 모듈(11000), 입력 모듈(13000) 및 출력 모듈(15000)은 제어부를 포함할 수 있다. 제어부는 각종 정보의 처리와 연산을 수행하고, 상기 모듈들을 구성하는 다른 구성 요소를 제어할 수 있다. 제어부는 물리적으로는 전기 신호를 처리하는 전자 회로 형태로 제공될 수 있다. 상기 모듈들은 물리적으로 단일한 제어부만을 포함할 수도 있으나, 이와 달리 복수의 제어부를 포함할 수도 있다. 일 예로, 제어부는 하나의 컴퓨팅 수단에 탑재되는 하나 또는 복수의 프로세서(processor)일 수 있다. 다른 예로, 제어부는 물리적으로 이격된 서버(server)와 터미널(terminal)에 탑재되어 통신을 통해 협업하는 프로세서들로 제공될 수도 있다.
제어 모듈(11000), 입력 모듈(13000) 및 출력 모듈(15000)은 통신부를 포함할 수 있다. 상기 모듈들은 통신부를 통해 정보를 송수신할 수 있다. 예를 들어, 입력 모듈(13000)은 외부로부터 획득한 정보를 그 통신부를 통해 송신하고, 제어 모듈(11000)은 그 통신부를 통해 입력 모듈(13000)이 송신한 정보를 수신할 수 있다. 다른 예로, 제어 모듈(11000)은 연산 결과를 그 통신부를 통해 송신하고, 출력 모듈(15000)은 그 통신부를 통해 제어 모듈(11000)이 송신한 정보를 수신할 수 있다. 통신부는 유선 또는 무선 통신을 수행할 수 있다. 통신부는 양방향(bi-directional) 또는 단방향 통신을 수행할 수 있다.
제어 모듈(11000), 입력 모듈(13000) 및 출력 모듈(15000)은 메모리를 포함할 수 있다. 메모리는 각종 프로세싱 프로그램, 프로그램의 프로세싱을 수행하기 위한 파라미터 또는 이러한 프로세싱 결과 데이터 등을 저장할 수 있다. 예를 들어, 메모리는 학습 및/또는 추론에 필요한 데이터, 학습이 진행중이거나 학습된 인공신경망 등을 저장할 수 있다. 메모리는 비휘발성 반도체 메모리, 하드 디스크, 플래시 메모리, RAM(Random Access Memory), ROM(Read Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory) 또는 그 외에 유형의(tangible) 비휘발성의 기록 매체 등으로 구현될 수 있다.
도 4에서 도시하는 시스템(10000)은 예시에 불과하며 시스템(10000)의 구성이 이에 한정되지는 않는다.
도 5는 일 실시예에 따른 인공신경망의 이미지 세그멘테이션 동작을 설명하기 위한 도면이다.
도 5를 참조하면, 인공신경망은 제1 이미지(1100)를 입력 받아 제1 출력 데이터(2100)를 출력할 수 있다. 상기 제1 출력 데이터(2100)는 N×M 행렬일 수 있다. 이 때, 상기 N과 상기 M은 같을 수 있다. 상기 행렬의 원소의 개수는 상기 제1 이미지(1100)의 픽셀의 개수와 동일할 수 있다. 즉, 제1 이미지(1100)는 N×M 픽셀을 포함할 수 있다.
제1 이미지(1100)의 각 픽셀은 상기 행렬의 각 원소에 대응될 수 있다. 예를 들어, 제1 이미지(1100)의 각 픽셀은 상기 행렬의 각 원소와 일대일 대응될 수 있다. 또는, 제1 이미지(1100)의 복수의 픽셀의 집합은 상기 행렬의 각 원소와 대응될 수 있다.
상기 제1 출력 데이터(2100)는 다양한 정보를 포함할 수 있다. 예를 들어, 상기 제1 출력 데이터(2100)는 상기 제1 이미지(1100)에 포함되는 객체의 거리 정보를 포함할 수 있다. 또는, 상기 제1 출력 데이터(2100)는 상기 객체의 종류 정보를 포함할 수 있다.
한편, 상기 행렬의 각 원소는 소정의 분류값을 가질 수 있다. 여기서, 상기 분류값이란 제1 이미지(1100)의 각 픽셀에 포함되는 객체 정보가 반영된 값일 수 있다. 따라서, 상기 행렬의 각 원소는 제1 이미지(1100)의 각 픽셀에 대응되는 객체 정보를 포함할 수 있다.
상기 분류값은 다양한 객체 정보에 의해 정해질 수 있다. 예를 들어, 상기 분류값은 객체의 거리 정보 및 종류 정보에 의해 정해질 수 있다.
도 6은 일 실시예에 따른 분류값이 도시된 표이다.
도 6을 참조하면, 분류값은 객체 정보를 포함할 수 있다. 예를 들어, 상기 분류값은 객체의 거리 정보 및 종류 정보를 포함할 수 있다.
한편, 상기 거리 정보는 미터 단위의 특정 거리 값을 가질 수 있다. 예를 들어, 상기 거리 정보는 10m와 같은 거리 값을 가질 수 있다.
또는, 상기 거리 정보는 소정의 범위를 갖는 카테고리로 분류될 수 있다. 예를 들어, 상기 카테고리는 객체의 거리에 따라 근거리, 중거리 및 원거리를 포함할 수 있다. 구체적으로, 0~10m는 근거리, 10~20m는 중거리, 20~30m는 원거리로 분류될 수 있다.
상기 종류 정보는 객체의 종류에 관한 데이터를 포함할 수 있다.
예를 들어, 상기 객체는 그 종류에 따라 지형, 고정 장애물, 동적 장애물 및 기타로 분류될 수 있다. 상기 지형은 산을 포함할 수 있다. 상기 고정 장애물은 섬, 암초 등을 포함할 수 있다. 상기 동적 장애물은 선박을 포함할 수 있다.
한편, 상기 분류값은 상기 거리 정보 및 상기 종류 정보에 기초하여 정해질 수 있다. 예를 들어, 제1 분류값은 객체가 근거리에 위치한 지형인 경우를 지시할 수 있다.
한편, 상기 분류값 중 적어도 일부는 거리 정보를 포함하지 않을 수 있다. 예를 들어, 바다에 대응되는 제1 분류값은 거리 정보를 포함하지 않을 수 있다.
즉, 분류값이 반드시 거리 정보 및 종류 정보 모두에 기초하여 정해져야 하는 것은 아니다. 예컨대, 상기 분류값은 종류 정보에만 기초하여 정해질 수도 있다.
또한, 상기 분류값은 상기 거리 정보 및 상기 종류 정보뿐만 아니라 추가 정보에 기초하여 정해질 수 있다. 예를 들어, 상기 추가 정보는 객체의 방향 정보, 속도 정보, 항로 표지 등을 포함할 수 있다.
한편, 상기 인공신경망으로부터 출력되는 출력 데이터는 이미지 데이터가 될 수 있다. 예를 들어, 상기 이미지 데이터는 상기 분류값에 대응되는 RGB 데이터를 포함할 수 있다.
다시 도 3을 참조하면, 상기 인공신경망은 제1 이미지 데이터(1000)를 입력받아 제2 이미지 데이터(2000)를 출력할 수 있다. 상기 제2 이미지 데이터(2000)의 각 픽셀은 상기 제1 이미지 데이터(1000)에 포함되는 객체 정보를 포함할 수 있다.
상기 제2 이미지 데이터(2000)의 각 픽셀은 상기 객체 정보가 반영된 분류값에 대응되는 RGB 데이터를 포함할 수 있다.
예를 들어, 제1 객체(100)는 근거리에 위치한 동적 장애물로, 도 6의 분류값 7에 대응될 수 있다. 또한, 제2 객체(200)는 원거리에 위치한 지형으로, 도 6의 분류값 3에 대응될 수 있다.
상기 분류값 7은 제7 색상에 대응될 수 있다. 상기 분류값 3은 제3 색상에 대응될 수 있다.
따라서, 제1 객체(100)는 상기 제7 색상으로 표현될 수 있다. 제2 객체(200)는 상기 제3 색상으로 표현될 수 있다.
한편, 상기 인공신경망은 상기 이미지 세그멘테이션 동작을 수행하기 전에 전처리 동작을 수행할 수 있다.
예를 들어, 상기 인공신경망은 복수의 이미지를 입력받아 상기 복수의 이미지 중 일부를 선별하는 동작을 수행할 수 있다.
구체적으로, 상기 인공신경망은 복수의 이미지 중 조도가 가장 높은 제1 이미지 및 조도가 가장 낮은 제2 이미지를 합성함으로써 제3 이미지를 생성할 수 있다. 상기 인공신경망은 상기 제3 이미지를 기초로 상기 이미지 세그멘테이션 동작을 수행함으로써 출력 데이터를 획득할 수 있다.
상기 선별 동작을 통해 상기 인공신경망으로부터 획득되는 출력 데이터의 정확도가 향상될 수 있다.
또한, 상기 인공신경망은 복수의 이미지 중 하나의 이미지를 샘플링할 수 있다. 예를 들어, 상기 인공신경망은 상기 복수의 이미지 중 초점 값(또는 초점 척도, focus measure)이 가장 크고 조도값이 미리 정해진 값에 가장 근사한 이미지를 샘플링할 수 있다. 상기 인공신경망은 상기 샘플링 된 이미지에 기초하여 상기 이미지 세그멘테이션 동작을 수행할 수 있다. 이에 따라, 상기 이미지 세그멘테이션 동작을 통해 산출되는 출력 데이터의 정확도는 향상될 수 있다.
상기 전처리 동작의 다른 예로, 상기 인공신경망은 RGB 정규화 동작을 수행할 수 있다.
한편, 상기 인공신경망은 다양한 방법으로 학습될 수 있다.
예를 들어, 인공신경망은 학습 데이터를 입력받아 출력 데이터를 출력할 수 있다. 상기 출력 데이터 및 상기 학습 데이터와 관련된 라벨링 데이터의 차이에 기초하여 산출되는 오차가 상기 인공신경망으로 역전파됨에 따라 상기 인공신경망은 학습될 수 있다.
상기 학습 데이터는 이미지 데이터가 될 수 있다. 상기 이미지 데이터는 해상을 촬상하여 획득되는 해상 이미지를 포함할 수 있다.
상기 학습 데이터는 임의의 이미지로부터 데이터 확장(data augmentation)을 통해 획득되는 복수의 이미지 데이터를 포함할 수 있다.
도 7은 일 실시예에 따른 데이터 확장을 설명하기 위한 도면이다. 도 7을 참조하면, 원본 이미지(1300)로부터 복수의 생성 이미지가 생성될 수 있다. 다양한 기상 조건 또는 환경 노이즈가 반영되어 원본 이미지(1300)로부터 복수의 생성 이미지가 생성될 수 있다.
예를 들어, 제1 생성 이미지(1310)는 원본 이미지(1300)에 안개가 추가된 이미지일 수 있다. 또는, 제1 생성 이미지(1310)의 안개 정도는 원본 이미지(1300)의 안개 정도보다 클 수 있다. 제2 생성 이미지(1320)는 원본 이미지(1300)에 비가 추가된 이미지일 수 있다. 제1 생성 이미지(1310)는 원본 이미지(1300)에 안개 및 비가 추가된 이미지일 수 있다.
상기 인공신경망은 제1 생성 이미지(1310), 제2 생성 이미지(1320) 및 제3 생성 이미지(1330)를 기초로 학습될 수 있다. 이에 따라, 상기 인공신경망의 학습 효율은 향상될 수 있다.
한편, 인공신경망은 다양한 라벨링 데이터를 기초로 학습될 수 있다. 일 예로, 상기 인공신경망이 입력 이미지에 포함되는 객체에 대응되는 분류값을 출력하는 경우, 상기 인공신경망은 상기 객체에 관한 분류값을 포함하는 라벨링 데이터를 기초로 학습될 수 있다.
다른 일 예로, 상기 인공신경망이 입력 이미지에 포함되는 객체에 대응되는 분류값에 대응되는 RGB 데이터를 출력하는 경우, 상기 인공신경망은 상기 객체에 관한 분류값에 대응되는 RGB 데이터를 기초로 학습될 수 있다.
상기 인공신경망의 학습 단계에서 상기 전처리 동작이 수행될 수 있다. 이에 따라, 상기 인공신경망의 학습 효율이 향상될 수 있다.
이상에서는, 이미지 세그멘테이션을 수행하는 인공신경망을 통해 장애물의 객체 정보를 획득하는 방법에 대하여 설명하였다.
이하에서는 장애물의 이동 속성을 획득하는 방법에 대하여 설명한다.
도 8은 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법을 나타내는 도면이다.
도 8을 참조하면, 제1 프레임의 이미지(1300) 및 상기 제1 프레임의 이미지(1300)의 후속 프레임인 제2 프레임의 이미지(1310)의 비교에 기초하여 이동 속성 데이터(1320)가 획득될 수 있다.
예를 들어, 제어부(1)는 제1 프레임의 이미지(1300)의 픽셀값 및 제2 프레임의 이미지(1310)의 픽셀값을 비교함으로써 이동체(10)의 이동 방향을 획득할 수 있다. 도 8에서, 이동체(10)는 좌측으로부터 우측으로 이동하고있음을 알 수 있다.
이 때, 제어부(1)는 Inter-frame subtraction 동작을 수행함으로써 이동체(10)의 이동 방향을 획득할 수 있다.
또한, 제어부(1)는 상기 픽셀값 및 프레임 간격에 기초하여 이동체(10)의 이동 속도를 획득할 수 있다.
제어부(1)는 이동 속성 데이터(1320)를 획득할 수 있다. 이동 속성 데이터(1320)는 상기 이동체(10)의 이동 방향 및 이동 속도를 포함할 수 있다. 이동 속성 데이터(1320)는 도 8과 같은 이미지 데이터일 수 있으나, 이에 한정되는 것은 아니며, 다양한 형태의 데이터일 수 있다.
한편, 본 명세서 상에서, 제어부(1)가 이동체의 이동 속성을 획득하는 일련의 동작들은 제어부(1)의 이동 속성 획득 동작으로 지칭될 수 있다.
도 9는 다른 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법이 도시된 순서도이다.
도 9를 참조하면, 일 실시예에 따른 이동체의 이동 속성 획득 방법은, 해상을 촬상한 제1 이미지 및 제2 이미지를 획득하는 단계(S1000), 인공신경망을 이용하여 상기 제1 이미지 및 상기 제2 이미지로부터 각각 제1 객체 정보 및 제2 객체 정보를 획득하는 단계(S2000) 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 속성을 획득하는 단계(S3000)를 포함할 수 있다.
이하에서는 각 단계에 대하여 상세히 설명한다.
먼저, 제어부(1)는 해상을 촬상한 제1 이미지 및 제2 이미지를 포함하는 복수의 이미지를 획득할 수 있다(S1000). 상기 제1 이미지 및 상기 제2 이미지는 서로 다른 프레임의 이미지일 수 있다. 예를 들어, 상기 제2 이미지는 상기 제1 이미지의 후속 프레임의 이미지일 수 있다.
상기 제1 이미지 및 상기 제2 이미지는 각각 복수의 객체를 포함할 수 있다. 예를 들어, 상기 복수의 객체는 바다, 선박, 부표 등 다양한 객체를 포함할 수 있다.
제어부(1)는 인공신경망을 이용하여 상기 제1 이미지 및 상기 제2 이미지로부터 각각 제1 객체 정보 및 제2 객체 정보를 획득할 수 있다(S2000).
상기 인공신경망은 도 1 내지 도 7에서 설명한 인공신경망을 의미할 수 있다. 예를 들어, 상기 인공신경망은 임의의 입력 이미지를 입력 받아, 상기 입력 이미지에 포함된 객체 정보를 출력할 수 있다. 구체적으로, 상기 인공신경망은 상기 영상 분할 동작을 수행함으로써 상기 입력 이미지에 포함된 장애물의 거리 정보 및 종류 정보를 출력할 수 있다.
또한, 상기 인공신경망은 상기 전처리 동작을 수행할 수 있다.
상기 제1 객체 정보 및 상기 제2 객체 정보는 상술한 상기 영상 분할 동작을 통해 획득되는 객체 정보를 의미할 수 있다. 예를 들어, 상기 제1 객체 정보 및 상기 제2 객체 정보는 각각 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체에 관한 거리 정보 및 종류 정보를 의미할 수 있다.
상기 제1 객체 정보 및 상기 제2 객체 정보는 N×M 행렬로 제공될 수 있다. 상기 행렬의 원소는 상기 제1 이미지 및 상기 제2 이미지의 픽셀에 대응될 수 있다.
제어부(1)는 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 속성을 획득할 수 있다(S3000).
예를 들어, 제어부(1)는 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 이동체의 이동 방향을 획득할 수 있다.
제어부(1)는 상기 제1 객체 정보에 포함된 원소 및 상기 제2 객체 정보에 포함된 원소를 비교하여 상기 이동체의 이동 방향을 획득할 수 있다. 상기 원소는 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체에 관한 거리 정보 및 종류 정보가 반영된 분류값을 포함할 수 있다.
한편, 상기 이동 방향은 상기 복수의 이미지를 촬상한 카메라의 설치 위치를 기준으로한 상대 이동 방향을 의미할 수 있다.
제어부(1)는 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체의 종류 정보를 고려하여 상기 객체의 이동 방향을 산출할 수 있다. 예를 들어, 제어부(1)는 상기 객체가 동적 장애물인 경우에만, 상기 객체의 이동 방향을 산출할 수 있다. 즉, 제어부(1)는 상기 객체가 지형 또는 고정 장애물에 해당하는 경우, 상기 객체에 대한 이동 방향은 산출하지 않을 수 있다.
또는, 상기 객체의 종류에 따라 제어부(1)의 이동 방향 산출 동작의 주기가 달라질 수 있다. 예를 들어, 상기 객체가 동적 장애물인 경우 상기 객체가 고정 장애물인 경우보다 상기 이동 방향 산출 동작의 주기가 작을 수 있다.
제어부(1)는 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체의 거리 정보를 고려하여 상기 객체의 이동 방향을 산출할 수 있다. 예를 들어, 상기 객체가 근거리에 위치한 경우 상기 객체가 원거리에 위치한 경우보다 제어부(1)의 상기 이동 방향 산출 동작의 주기가 작을 수 있다.
제어부(1)는 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 이동체의 이동 속도를 획득할 수 있다. 예를 들어, 제어부(1)는 상기 제1 이미지 및 상기 제2 이미지의 프레임 간격, 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 이용하여 상기 이동체의 이동 속도를 획득할 수 있다.
이 때, 제어부(1)는 상기 제1 객체 정보에 포함된 객체의 거리 정보 및 상기 제2 객체 정보에 포함된 객체의 거리 정보를 고려하여 상기 이동 속도를 획득할 수 있다. 예를 들어, 상기 거리 정보 및 상기 제1 객체 정보 및 상기 제2 객체 정보의 원소값의 변화에 기초하여 상기 이동 속도를 획득할 수 있다.
한편, 상기 이동 속도는 상기 복수의 이미지를 촬상한 카메라의 설치 위치를 기준으로한 상대 이동 속도를 의미할 수 있다.
제어부(1)는 상기 이동 속도에 기초하여 상기 이동체의 절대 속도를 산출할 수 있다. 예를 들어, 제어부(1)는 상기 카메라가 설치된 선박의 GPS 정보를 고려하여 상기 절대 속도를 산출할 수 있다.
한편, 제어부(1)는 상기 카메라가 설치된 선박의 자세 정보를 고려하여 상기 이동 속성 획득 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 상기 선박에 탑재된 IMU로부터 획득된 상기 선박의 자세 정보를 고려하여 상기 이동 속성 획득 동작을 수행할 수 있다. 상기 자세 정보는 상기 선박의 선수방향(heading 또는 yaw), 피치(pitch), 롤(roll) 등을 포함할 수 있다.
구체적으로, 제어부(1)는 상기 자세 정보를 고려하여 상기 제1 이미지 및 상기 제2 이미지를 정합할 수 있다. 예를 들어, 상기 선박의 피치를 고려하여 상기 제1 이미지 및 상기 제2 이미지의 위치를 정합할 수 있다. 이 때, 제어부(1)는 미리 정해진 기준 위치를 기초로 상기 제1 이미지 및 상기 제2 이미지를 정합할 수 있다.
예를 들어, 상기 단계 S2000 및 상기 단계 S3000는 상기 이미지 정합 단계를 포함할 수 있다.
도 10은 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법이 도시된 도면이다.
도 10을 참조하면, 제어부(1)는 제1 이미지로부터 획득된 제1 객체 정보(1400) 및 상기 제1 이미지의 후속 프레임인 제2 이미지로부터 획득된 제2 객체 정보(1410)의 비교에 기초하여, 제1 이동 속성 데이터(1420)를 획득할 수 있다.
제1 객체 정보(1400) 및 제2 객체 정보(1410)는 이동체(10)에 관한 거리 정보 및 종류 정보를 포함할 수 있다.
제어부(1)는 제1 객체 정보(1400) 및 제2 객체 정보(1410)를 비교함으로써 이동체(10)의 이동 속성을 획득할 수 있다.
예를 들어, 제어부(1)는 제1 객체 정보(1400)에 따른 이동체(10)의 위치 및 제2 객체 정보(1410)에 따른 이동체(10)의 위치를 비교함으로써 이동체(10)의 이동 방향을 획득할 수 있다. 구체적으로, 제어부(1)는 이동체(10)에 대응되는 분류값이 속한 행렬내의 위치 변화를 기초로 이동체(10)의 이동 방향을 획득할 수 있다.
제어부(1)는 상기 제1 이미지 및 상기 제2 이미지의 프레임 간격 및 이동체(10)의 거리 정보를 이용하여 이동체(10)의 이동 속도를 획득할 수 있다.
제1 객체 정보(1400) 및 제2 객체 정보(1410)는 다양한 형태의 데이터로 제공될 수 있다. 예를 들어, 제1 객체 정보(1400) 및 제2 객체 정보(1410)는 이미지 형태로 제공될 수 있다. 또는 제1 객체 정보(1400) 및 제2 객체 정보(1410)는 2차원 행렬로 제공될 수 있다.
한편, 이동체(10)의 이동 속성은 분류화될 수 있다.
도 11은 일 실시예에 따른 이동 속성에 관한 분류값이 도시된 표이다.
도 11을 참조하면, 각각의 이동 속성에 따라 분류값이 할당될 수 있다. 이동 속성은 이동 방향 및 이동 속도를 포함할 수 있다.
예를 들어, 이동 방향은 정지(NOT MOVING), 전방(FORWARD), 후방(BACKWARD), 좌측(LEFT), 우측(RIGHT) 등으로 분류될 수 있다. 다만, 이에 한정되는 것은 아니며 이동 방향은 다양한 방법으로 분류될 수 있다. 예를 들어, 이동 방향은 동, 서, 남, 북, 북동, 남동, 남서, 북서와 같이 8방위로 분류될 수도 있다.
한편, 상기 이동 방향은 산기 카메라가 설치된 위치를 기준으로 한 방향을 지시할 수 있다. 예를 들어, 복수의 카메라가 선박에 설치되는 경우, 카메라의 설치 위치에 따라 각각의 이동 방향이 지시하는 방향이 상이할 수 있다.
또는, 상기 이동 방향은 상기 카메라가 설치된 선박의 진행 방향을 기준으로 한 방향을 지시할 수 있다. 예를 들어, 상기 전방(FORWARD)은 상기 선박의 이동 방향과 같은 방향을 지시할 수 있다. 또한, 상기 후방(BACKWARD)은 상기 선박의 이동 방향의 반대 방향을 지시할 수 있다.
이동 속도는 소정의 범위를 기준으로 저속(SLOW), 중속(NORMAL), 고속(FAST)의 3 종류로 분류될 수 있다. 다만, 이에 한정되는 것은 아니며, 이동 속도는 이동 속도는 속도에 따라 다양한 개수로 분류될 수 있다.
도 12는 또 다른 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법이 도시된 도면이다.
도 12를 참조하면, 제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)에 기초하여 제2 이동 속성 데이터(1520)를 획득할 수 있다. 제3 객체 정보(1500)는 상기 제1 이미지로부터 상기 인공신경망을 통해 출력될 수 있다. 제4 객체 정보(1510)는 상기 제2 이미지로부터 상기 인공신경망을 통해 출력될 수 있다.
한편, 제어부(1)는 도 8 내지 도 10에서 설명한 이동 속성 획득 동작과 동일하게 이동체(10)의 이동 속성 획득 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)를 비교함으로써 이동체(10)의 이동 방향 및 이동 속도를 획득할 수 있다. 따라서, 이에 대한 상세한 설명은 생략하고, 전술한 이동 속성 획득 동작과의 차별점을 중심으로 설명한다.
제어부(1)는 미리 정해진 분류값을 갖는 객체에 대하여만 이동 속성 획득 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)에 동적 장애물에 대응되는 분류값이 포함된 경우에만 상기 동적 장애물의 이동 속성을 획득할 수 있다.
제어부(1)는 미리 정해진 분류값을 갖는 객체를 선별하는 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 동적 장애물을 선별하는 동작을 수행할 수 있다.
제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)에서 상기 선별된 객체를 제외한 나머지 정보를 폐기하는 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 제3 객체 정보(1500)에서 상기 선별된 객체에 대응되는 원소를 제외한 나머지 원소들의 값을 0으로 조절할 수 있다. 제어부(1)는 제4 객체 정보(1510)에서 상기 선별된 객체에 대응되는 원소를 제외한 나머지 원소들의 값을 0으로 조절할 수 있다.
예를 들어, 제어부(1)는 제1 객체 정보(1400)로부터 제1 객체 정보(1400)에서 이동체(10)에 관한 객체 정보를 제외한 나머지 정보가 제거된 제3 객체 정보(1500)를 생성할 수 있다. 즉, 제3 객체 정보(1500)는 제1 객체 정보(1400)의 이동체(10)에 관한 객체 정보만을 포함할 수 있다.
마찬가지로, 제어부(1)는 제2 객체 정보(1410)로부터 제2 객체 정보(1410)에서 이동체(10)에 관한 객체 정보를 제외한 나머지 정보가 제거된 제4 객체 정보(1510)를 생성할 수 있다. 즉, 제4 객체 정보(1510)는 제2 객체 정보(1410)의 이동체(10)에 관한 객체 정보만을 포함할 수 있다.
제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)를 비교함으로써 이동체(10)에 관한 이동 속성을 획득할 수 있다. 예를 들어, 제어부(1)는 이동체(10)에 대응되는 분류값의 행렬 내의 위치의 변화를 기초로 이동체(10)의 이동 방향 및 이동 속도를 획득할 수 있다.
이에 따라, 이동체의 이동 속성을 획득하는 제어부(1)의 전체 연산량이 감소할 수 있다. 즉, 제어부(1)가 미리 정해진 객체에 관한 정보만을 포함하는 선별된 객체 정보를 기초로 이동 속성을 획득함으로써, 제어부(1)의 데이터 연산량이 감소할 수 있다.
한편, 이동체의 거리 정보에 따라 제어부(1)가 수행하는 이동 속성 획득 동작의 수행 주기가 달라질 수 있다. 예를 들어, 상기 제1 이미지에 근거리의 동적 장애물이 포함된 경우, 제어부(1)는 제1 시간 간격으로 상기 동적 장애물의 이동 속성을 획득할 수 있다. 반면에, 상기 제1 이미지에 원거리의 동적 장애물이 포함된 경우, 제어부(1)는 제1 시간 간격보다 큰 제2 시간 간격으로 상기 동적 장애물의 이동 속성을 획득할 수 있다.
도 13은 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 13을 참조하면, 해상을 촬상한 복수의 이미지로부터 상기 인공신경망은 상기 복수의 이미지에 대응되는 복수의 객체 정보를 출력할 수 있다.
예를 들어, 상기 촬상된 해상에 제1 이동체(11)가 포함된 경우, 제어부(1)는 N frame 마다 상기 이동 속성 획득 동작을 수행할 수 있다. 반면에, 상기 촬상된 해상에 제2 이동체(12)가 포함된 경우, 제어부(1)는 상기 N보다 큰 M frame 마다 상기 이동 속성 획득 동작을 수행할 수 있다. 상기 제2 이동체(12)는 상기 제1 이동체(11)보다 상기 해상을 촬상한 카메라로부터 멀리 위치할 수 있다. 즉, 이동체로부터 상기 카메라까지의 거리가 가까울수록 제어부(1)의 상기 이동 속성 획득 동작은 자주 수행될 수 있다.
이는, 카메라로부터 가까운 이동체일수록, 이미지 내의 위치가 빠르게 변동될 수 있기 때문이다. 또는, 카메라로부터 가까운 이동체일수록, 객체 정보 내 원소값의 변화가 빠르게 변동될 수 있기 때문이다.
한편, 이동체의 이동 방향에 따라, 제어부(1)의 이동 속성 획득 방법이 달라질 수 있다. 예컨대, 이동체가 수평 방향을 따라 이동하는 경우, 제어부(1)는 상술한 바와 같이 상기 이동체에 대응되는 분류값의 위치의 변화를 기초로 상기 이동체의 이동 속성을 획득할 수 있다. 반면에, 이동체가 수직 방향을 따라 이동하는 경우, 제어부(1)는 상기 이동체에 대응되는 픽셀 개수의 변화를 기초로 상기 이동체의 이동 속성을 획득할 수 있다.
도 14는 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 14를 참조하면, 제어부(1)는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 기초하여 제3 이동 속성 데이터(1620)를 획득할 수 있다. 제5 객체 정보(1600)는 상기 제1 이미지로부터 상기 인공신경망을 통해 출력될 수 있다. 제6 객체 정보(1610)는 상기 제2 이미지로부터 상기 인공신경망을 통해 출력될 수 있다. 따라서, 제6 객체 정보(1610)는 제5 객체 정보(1600)의 후속 프레임의 이미지에 관한 정보일 수 있다.
이동체(10)는 수직 방향을 따라 이동할 수 있다. 여기서, 상기 수직 방향이란 상기 카메라의 수직축 방향을 의미할 수 있다. 구체적으로, 상기 수직 방향은 상기 카메라로부터 멀어지거나 가까워지는 방향을 의미할 수 있다. 또는, 상기 수직 방향은 도 10의 FORWARD 또는 BACKWARD 방향을 의미할 수 있다.
이동체(10)가 수직 방향을 따라 이동하는 경우, 제어부(1)는 상기 제1 제1 이미지 및 상기 제2 이미지에 포함된 이동체(10)에 대응되는 픽셀 개수의 변화를 기초로 이동체(10)의 이동 속성을 획득할 수 있다.
또는, 제어부(1)는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 포함된 이동체(10)에 대응되는 분류값의 개수 변화를 기초로 이동체(10)의 이동 속성을 획득할 수 있다. 상기 분류값의 개수는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 포함된 상기 분류값을 갖는 원소의 개수를 의미할 수 있다.
예를 들어, 제6 객체 정보(1610)에 포함된 이동체(10)에 대응되는 분류값의 개수가 제5 객체 정보(1600)에 포함된 이동체(10)에 대응되는 분류값의 개수보다 큰 경우, 즉, 시간에 따라 상기 분류값의 개수가 증가하는 경우, 이동체(10)가 상기 카메라와 가까워짐을 의미할 수 있다. 또는, 이동체(10)가 상기 선박과 가까워짐을 의미할 수 있다.
반대로, 제6 객체 정보(1610)에 포함된 이동체(10)에 대응되는 분류값의 개수가 제5 객체 정보(1600)에 포함된 이동체(10)에 대응되는 분류값의 개수보다 작은 경우, 즉, 시간에 따라 상기 분류값의 개수가 감소하는 경우, 이동체(10)가 상기 카메라와 멀어짐을 의미할 수 있다. 또는, 이동체(10)가 상기 선박과 멀어짐을 의미할 수 있다.
한편, 제어부(1)는 도 8 내지 도 12에서 설명한 이동 속성 획득 동작과 동일하게 이동체(10)의 이동 속성 획득 동작을 수행할 수 있음은 물론이다. 예를 들어, 제어부(1)는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 포함된 이동체(10)의 위치 변화를 기초로 이동체(10)의 이동 방향 및 이동 속도를 획득할 수 있다.
이 때, 제어부(1)는 상기 카메라가 설치된 선박의 자세 정보를 고려하여 이동체(10)의 이동 속성을 획득할 수 있다. 예를 들어, 상기 선박의 선수방향(heading 또는 yaw), 피치(pitch), 롤(roll) 등을 고려하여 상기 이동 속성을 획득할 수 있다.
한편, 상기 분류값의 개수 변화를 기초로 획득된 이동체(10)의 이동 속성은, 상기 위치 변화를 기초로 획득된 이동체(10)의 이동 속성보다 정확할 수 있다. 예를 들어, 상기 분류값의 개수는 상기 위치보다 상기 선박의 자세 변화에 영향을 적게 받을 수 있다. 구체적으로, 상기 위치는 상기 선박의 자세가 변함에 따라 변할 수 있는 반면, 상기 분류값의 개수는 상기 선박의 자세가 변하더라도 그대로 유지될 수 있다. 또는, 상기 위치는 상기 선박의 자세가 변함에 따라 상대적으로 크게 변할 수 있는 반면, 상기 분류값의 개수는 상기 선박의 자세가 변하더라도 상대적으로 적게 변할 수 있다.
제어부(1)는 이동체(10)의 이동 속성에 기초하여 상기 선박의 조종신호를 생성할 수 있다. 예를 들어, 제어부(1)는 이동체(10)가 상기 선박으로 접근하는 경우, 이동체(10)를 회피하는 조종신호를 생성할 수 있다. 또는, 제어부(1)는 이동체(10)가 상기 선박을 기초로 미리 설정된 위험 영역으로 진입하는 경우, 상기 선박이 이동체(10)를 회피하도록 조종신호를 생성할 수 있다.
한편, 이상에서는 제어부(1)가 선박에 설치된 카메라가 촬상한 해상 이미지로부터 상기 해상 이미지에 포함된 이동체의 이동 속성을 획득하는 것으로 설명하였으나, 제어부(1)는 다양한 이미지로부터 이동체의 이동 속성을 획득할 수 있다. 예컨대, 제어부(1)는 자동차에 설치된 카메라가 촬상한 촬상 이미지로부터 상기 촬상 이미지에 포함된 이동체의 이동 속성을 획득할 수 있다. 또는, 제어부(1)는 드론에 설치된 카메라로부터 촬상되는 이미지로부터 상기 이미지에 포함된 이동체의 이동 속성을 획득할 수 있다. 또한, 제어부(1)는 상기 이동 속성에 기초하여 자동차 또는 드론을 제어하는 조종신호를 생성할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
전술한 바와 같이, 상기 발명의 실시를 위한 최선의 형태에서, 관련된 사항을 기술하였다.

Claims (21)

  1. 선박에 설치된 카메라가 촬상한 이미지 및 인공신경망을 이용하여 이동체의 이동 속성을 획득하는 방법으로,
    해상을 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하는 단계;
    상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및
    상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 단계;를 포함하는
    이동체의 이동 속성 획득 방법.
  2. 제1 항에 있어서,
    상기 제1 객체 정보 및 상기 제2 객체 정보는 영상 분할 동작을 통해 획득되는 세그멘테이션 이미지(segmentation image)인 것을 특징으로 하는
    이동체의 이동 속성 획득 방법.
  3. 제1 항에 있어서,
    상기 제1 객체 정보는 상기 제1 이미지에 포함된 객체가 그 거리 정보 및 종류 정보 중 적어도 하나에 관한 객체 정보가 반영된 분류값에 대응되는 색상값을 갖는 이미지이고,
    상기 제2 객체 정보는 상기 제2 이미지에 포함된 객체가 그 거리 정보 및 종류 정보 중 적어도 하나에 관한 객체 정보가 반영된 분류값에 대응되는 색상값을 갖는 이미지인 것을 특징으로 하는
    이동체의 이동 속성 획득 방법.
  4. 제1 항에 있어서,
    상기 제1 객체 정보 및 상기 제2 객체 정보는 N×M 행렬인
    이동체의 이동 속성 획득 방법.
  5. 제1 항에 있어서,
    상기 제1 객체 정보는 상기 제1 이미지에 포함된 이동체에 관한 분류값만을 포함하고,
    상기 제2 객체 정보는 상기 제2 이미지에 포함된 이동체에 관한 분류값만을 포함하는 것을 특징으로 하는
    이동체의 이동 속성 획득 방법.
  6. 제1 항에 있어서,
    상기 제1 객체 정보 및 상기 제2 객체 정보는 상기 제1 분류값을 포함하지 않는 것을 특징으로 하는
    이동체의 이동 속성 획득 방법.
  7. 제1 항에 있어서,
    상기 산출하는 단계는 상기 카메라로부터 제1 거리만큼 이격된 제1 이동체에 대응되는 제1 이동체 분류값 - 이 때, 상기 제1 이동체 분류값은 상기 제1 이동체의 거리 정보 및 종류 정보를 포함함 - 만을 포함하는 복수의 제1 이동체 객체 정보를 제1 시간 간격으로 비교하여 상기 제1 이동체의 이동 방향을 산출하는 제1 이동 방향 산출 단계, 및
    상기 카메라로부터 상기 제1 거리보다 큰 제2 거리만큼 이격된 제2 이동체에 대응되는 제2 이동체 분류값 - 이 때, 상기 제2 이동체 분류값은 상기 제2 이동체의 거리 정보 및 종류 정보를 포함함 - 만을 포함하는 복수의 제2 이동체 객체 정보를 상기 제1 시간 간격보다 큰 제2 시간 간격으로 비교하여 상기 제2 이동체의 이동 방향을 산출하는 제2 이동 방향 산출 단계를 포함하는
    이동체의 이동 속성 획득 방법.
  8. 제7 항에 있어서,
    상기 제1 이동체 객체 정보 및 상기 제2 이동체 객체 정보는 2차원 행렬인
    이동체의 이동 속성 획득 방법.
  9. 제1 항에 있어서,
    상기 객체 정보 획득 단계는 상기 제2 객체 정보를 획득하기 전 상기 선박의 자세 정보를 고려하여 상기 제1 이미지 및 상기 제2 이미지를 정합하는 단계를 포함하는
    이동체의 이동 속성 획득 방법.
  10. 제1 항에 있어서,
    상기 객체 정보 획득 단계는 상기 제1 객체 정보 및 상기 제2 객체 정보에 포함된 이동체에 대응되는 분류값 및 상기 선박의 자세 정보를 이용하여 상기 제1 객체 정보 및 상기 제2 객체 정보를 정합하는 단계를 포함하는
    이동체의 이동 속성 획득 방법.
  11. 제1 항에 있어서,
    상기 산출하는 단계는 상기 이동체가 수평축 방향을 따라 이동하는 경우, 상기 제1 객체 정보에 따른 제1 위치 및 상기 제2 객체 정보에 따른 제2 위치를 비교하여 상기 이동체의 이동 방향을 산출하는 단계를 포함하는
    이동체의 이동 속성 획득 방법.
  12. 제1 항에 있어서,
    상기 산출하는 단계는 상기 이동체가 수직축 방향을 따라 이동하는 경우, 상기 제1 객체 정보에 포함된 상기 이동체에 대응되는 성분의 개수 및 상기 제2 객체 정보에 포함된 상기 이동체에 대응되는 성분의 개수를 비교하여 상기 이동체의 이동 방향을 산출하는 단계를 포함하는
    이동체의 이동 속성 획득 방법.
  13. 제12 항에 있어서,
    상기 제1 객체 정보 및 상기 제2 객체 정보는 각각 세그멘테이션 이미지(segmentation image)이고,
    상기 성분의 개수는 상기 세그멘테이션 이미지의 픽셀의 개수인
    이동체의 이동 속성 획득 방법.
  14. 제12 항에 있어서,
    상기 성분의 개수의 증가는 상기 선박으로부터 상기 이동체까지의 거리의 감소를 지시하고,
    상기 성분의 개수의 감소는 상기 선박으로부터 상기 이동체까지의 거리의 증가를 지시하는
    이동체의 이동 속성 획득 방법.
  15. 제1 항에 있어서,
    상기 산출하는 단계는
    상기 제1 객체 정보에 따른 제1 위치 및 상기 제2 객체 정보에 따른 제2 위치를 비교하여 상기 이동 방향의 수평 성분을 산출하고,
    상기 제1 객체 정보에 포함된 상기 이동체에 대응되는 픽셀의 개수 및 상기 제2 객체 정보에 포함된 상기 이동체에 대응되는 픽셀의 개수를 비교하여 상기 이동 방향의 수직 성분을 산출하는 단계를 포함하는
    이동체의 이동 속성 획득 방법.
  16. 제1 항에 있어서,
    상기 산출하는 단계는 상기 제1 이미지와 상기 제2 이미지 간의 시간 간격, 상기 선박의 속도 정보 및 상기 선박의 자세 정보에 기초하여 상기 이동체의 절대 속도를 획득하는 단계를 포함하는
    이동체의 이동 속성 획득 방법.
  17. 제1 항에 있어서,
    상기 산출되는 이동체의 이동 방향에 기초하여 상기 선박의 조종신호를 생성하는 단계;를 더 포함하는
    이동체의 이동 속성 획득 방법.
  18. 인공신경망을 이용하여 이동체의 이동 방향을 산출하는 방법으로,
    제1 촬상 이미지 및 상기 제1 촬상 이미지의 후속 프레임인 제2 촬상 이미지를 포함하는 복수의 촬상 이미지를 획득하는 단계;
    상기 촬상 이미지로부터 상기 촬상 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 운행 가능 영역에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 촬상 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 촬상 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및
    상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 복수의 촬상 이미지에 포함된 이동체 중 적어도 일부의 이동 방향을 산출하는 단계;를 포함하는
    이동체의 이동 속성 획득 방법.
  19. 제18 항에 있어서,
    상기 운행 가능 영역은, 상기 인공신경망이 선박에 이용되는 경우 수상에 해당하고, 상기 인공신경망이 차량에 이용되는 경우 도로에 해당하는
    이동체의 이동 속성 획득 방법.
  20. 선박에 설치되어 해상을 촬상하는 카메라; 및
    상기 카메라가 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하고, 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 제어부;를 포함하는
    이동체의 이동 속성 획득 장치.
  21. 제1 항 내지 제19 항 중 어느 하나의 항에 따른 방법을 수행하기 위한 프로그램이 기록된 기록매체.
PCT/KR2019/009244 2018-09-04 2019-07-25 이동체의 이동 속성 획득 방법 및 이를 수행하는 장치 WO2020050500A1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201862726913P 2018-09-04 2018-09-04
US62/726,913 2018-09-04
US201862741394P 2018-10-04 2018-10-04
US62/741,394 2018-10-04
KR1020180165861A KR102144623B1 (ko) 2018-09-04 2018-12-20 이동체의 이동 속성 획득 방법 및 이를 수행하는 장치
KR10-2018-0165861 2018-12-20

Publications (1)

Publication Number Publication Date
WO2020050500A1 true WO2020050500A1 (ko) 2020-03-12

Family

ID=69722624

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/009244 WO2020050500A1 (ko) 2018-09-04 2019-07-25 이동체의 이동 속성 획득 방법 및 이를 수행하는 장치

Country Status (2)

Country Link
KR (1) KR102454878B1 (ko)
WO (1) WO2020050500A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140096595A (ko) * 2013-01-28 2014-08-06 경북대학교 산학협력단 이미지 분류 방법
KR20150125863A (ko) * 2014-04-30 2015-11-10 인하대학교 산학협력단 연안에서의 객체 인식 장치 및 그 방법
KR20160129212A (ko) * 2015-04-29 2016-11-09 현대중공업 주식회사 선박의 충돌 회피 방법 및 장치
JP2017215947A (ja) * 2016-05-05 2017-12-07 ブランスウィック コーポレイションBrunswick Corporation 海洋環境での人検出
KR20180010633A (ko) * 2016-07-22 2018-01-31 목포해양대학교 산학협력단 선박 항해 감시장치 및 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101661931B1 (ko) * 2010-02-12 2016-10-10 삼성전자주식회사 3차원 그래픽스 랜더링 장치 및 그 방법
KR101795798B1 (ko) * 2016-06-14 2017-11-08 제일정보통신(주) 지능형 영상감시 시스템
KR101805564B1 (ko) * 2017-06-12 2018-01-18 (주)지인테크 선박 충돌 방지용 경보 시스템 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140096595A (ko) * 2013-01-28 2014-08-06 경북대학교 산학협력단 이미지 분류 방법
KR20150125863A (ko) * 2014-04-30 2015-11-10 인하대학교 산학협력단 연안에서의 객체 인식 장치 및 그 방법
KR20160129212A (ko) * 2015-04-29 2016-11-09 현대중공업 주식회사 선박의 충돌 회피 방법 및 장치
JP2017215947A (ja) * 2016-05-05 2017-12-07 ブランスウィック コーポレイションBrunswick Corporation 海洋環境での人検出
KR20180010633A (ko) * 2016-07-22 2018-01-31 목포해양대학교 산학협력단 선박 항해 감시장치 및 방법

Also Published As

Publication number Publication date
KR20200099117A (ko) 2020-08-21
KR102454878B1 (ko) 2022-10-17

Similar Documents

Publication Publication Date Title
WO2020050498A1 (ko) 이미지 세그멘테이션을 이용한 주변 환경 감지 방법 및 장치
WO2018212538A1 (en) Electronic device and method of detecting driving event of vehicle
WO2020071839A1 (ko) 선박 및 항만 모니터링 장치 및 방법
WO2019151735A1 (en) Vision inspection management method and vision inspection system
WO2020231153A1 (en) Electronic device and method for assisting with driving of vehicle
EP3602497A1 (en) Electronic device and method of detecting driving event of vehicle
WO2019132518A1 (en) Image acquisition device and method of controlling the same
WO2019027141A1 (en) ELECTRONIC DEVICE AND METHOD FOR CONTROLLING THE OPERATION OF A VEHICLE
WO2020085694A1 (ko) 이미지 획득 장치 및 그의 제어 방법
WO2019216578A1 (en) Method and apparatus for executing cleaning operation
WO2020138908A1 (ko) 전자 장치 및 그 제어 방법
WO2018117662A1 (en) Apparatus and method for processing image
WO2019059505A1 (ko) 객체를 인식하는 방법 및 장치
WO2018117538A1 (ko) 차선 정보를 추정하는 방법 및 전자 장치
WO2019172645A1 (ko) 차량의 주행을 보조하는 전자 장치 및 방법
WO2020241930A1 (ko) 멀티 센서를 이용하여 위치를 추정하는 방법 및 이를 구현하는 로봇
WO2020130747A1 (ko) 스타일 변환을 위한 영상 처리 장치 및 방법
EP3773111A1 (en) Method and apparatus for executing cleaning operation
WO2019031825A1 (ko) 전자 장치 및 그 동작 방법
WO2020171561A1 (en) Electronic apparatus and controlling method thereof
WO2020138745A1 (en) Image processing method, apparatus, electronic device and computer readable storage medium
WO2020241934A1 (ko) 멀티 센서를 동기화시켜 위치를 추정하는 방법 및 이를 구현하는 로봇
WO2021206221A1 (en) Artificial intelligence apparatus using a plurality of output layers and method for same
WO2023120831A1 (ko) 비식별 처리 방법 및 이를 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램
WO2020251074A1 (ko) 음성 인식 기능을 제공하는 인공 지능 로봇 및 그의 동작 방법

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: 19856566

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 08.07.2021)

122 Ep: pct application non-entry in european phase

Ref document number: 19856566

Country of ref document: EP

Kind code of ref document: A1