KR20200099117A - Method for acquiring movement attributes of moving object and apparatus for performing the same - Google Patents

Method for acquiring movement attributes of moving object and apparatus for performing the same Download PDF

Info

Publication number
KR20200099117A
KR20200099117A KR1020200099266A KR20200099266A KR20200099117A KR 20200099117 A KR20200099117 A KR 20200099117A KR 1020200099266 A KR1020200099266 A KR 1020200099266A KR 20200099266 A KR20200099266 A KR 20200099266A KR 20200099117 A KR20200099117 A KR 20200099117A
Authority
KR
South Korea
Prior art keywords
image
information
moving
object information
neural network
Prior art date
Application number
KR1020200099266A
Other languages
Korean (ko)
Other versions
KR102454878B1 (en
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 US201862726913P external-priority
Priority claimed from KR1020180165861A external-priority patent/KR102144623B1/en
Application filed by 씨드로닉스(주) filed Critical 씨드로닉스(주)
Publication of KR20200099117A publication Critical patent/KR20200099117A/en
Priority to KR1020220129572A priority Critical patent/KR20220143617A/en
Application granted granted Critical
Publication of KR102454878B1 publication Critical patent/KR102454878B1/en

Links

Images

Classifications

    • 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
    • G06F18/2413
    • 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
    • G06N3/045
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Computing arrangements based on biological models using neural network models
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Computing arrangements based on biological models using neural network models
    • G06N3/08Learning methods
    • G06N3/084Back-propagation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/001Image restoration
    • G06T5/002Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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; 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; 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; 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; 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; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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; 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
    • G06N3/044
    • G06N3/047
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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; 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]

Abstract

The present invention relates to a method for obtaining movement attributes of a moving object using an image photographed by a camera installed in a ship and an artificial neural network. The method of the present invention comprises: a step of obtaining a plurality of images including a first image photographing the sea and a second image which is a subsequent frame of the first image; an object information obtaining step of obtaining first object information from the first image and obtaining second object information from the second image, using an artificial neural network learned based on output data including a first classification value reflected with object type information, wherein the first classification value corresponds to the sea and a second classification value reflected with object distance and type information, wherein the second classification value corresponds to an obstacle, and labeling data corresponding to the output data; and a step of calculating a moving direction of a moving object included in the photographed sea by comparing the first object information and the second object information.

Description

이동체의 이동 속성 획득 방법 및 이를 수행하는 장치{METHOD FOR ACQUIRING MOVEMENT ATTRIBUTES OF MOVING OBJECT AND APPARATUS FOR PERFORMING THE SAME}A method of acquiring movement properties of a moving object, and an apparatus that performs the same.

본 발명은 이동체의 이동 속성을 획득하는 방법에 관한 것이다. 보다 상세하게, 본 발명은 학습된 인공신경망을 이용하여 촬상된 이미지에 포함된 이동체의 이동 속성을 획득하는 방법에 관한 것이다. The present invention relates to a method of obtaining a moving property of a moving object. More specifically, the present invention relates to a method of acquiring a moving property of a moving object included in an image captured using a learned artificial neural network.

바야흐로 인공지능(AI: Artificial Intelligence)의 시대이다. 알파고(AlphaGo)가 화제가 된 이후로 인공지능을 다양한 산업 분야에 적용하려는 시도가 활발히 진행되고 있다.It is the era of artificial intelligence (AI). Since AlphaGo became a hot topic, attempts to apply artificial intelligence to various industrial fields have been actively conducted.

근래에, 인공지능은 주로 이미지 인식, 분석, 생성, 합성 등 이미지 처리 기술에 활발히 사용되어 오다가 최근에는 자동차, 선박, 드론 등에 탑재되어 주변 장애물 인식, 경로계획 등에 사용되고있다.In recent years, artificial intelligence has been actively used in image processing technologies such as image recognition, analysis, generation, and synthesis, but recently, it is mounted on automobiles, ships, drones, etc., and is used for peripheral obstacle recognition and route planning.

한편, 인공지능이 선박 또는 자동차에 사용되어 주변 장애물에 대한 정보를 획득하는 경우, 움직이는 장애물에 대한 이동 속성을 획득하는 것이 중요하다.On the other hand, when artificial intelligence is used in a ship or automobile to obtain information on surrounding obstacles, it is important to acquire movement properties for moving obstacles.

일 실시예에 따른 해결하고자 하는 과제는 이미지 세그멘테이션(segmentation)을 수행하는 인공신경망을 이용하여 주변 환경의 객체 정보를 획득하는 것이다.The problem to be solved according to an embodiment is to acquire object information of a surrounding environment using an artificial neural network that performs image segmentation.

다른 일 실시예에 따른 해결하고자 하는 과제는 인공신경망으로부터 출력되는 객체 정보를 이용하여 이동체의 이동 속성을 획득하는 것이다.A problem to be solved according to another exemplary embodiment is to obtain a moving property of a moving object using object information output from an artificial neural network.

또 다른 일 실시예에 따른 해결하고자 하는 과제는 이동체의 이동 속성을 이용하여 선박 및 자동차의 조종신호를 생성하는 것이다.Another problem to be solved according to an embodiment is to generate control signals for ships and vehicles by using the movement properties of a moving object.

본 발명의 해결하고자 하는 과제는 상술한 과제들로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problem to be solved of the present invention is not limited to the above-described problems, and the problems that are not mentioned can be clearly understood by those of ordinary skill in the art from the present specification and the accompanying drawings. will be.

일 실시예에 따르면, 선박에 설치된 카메라가 촬상한 이미지 및 인공신경망을 이용하여 이동체의 이동 속성을 획득하는 방법으로, 해상을 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하는 단계; 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.According to an embodiment, a method of acquiring movement properties of a moving object using an image captured by a camera installed on a ship and an artificial neural network, wherein a first image captured at sea and a second image that is a subsequent frame of the first image are Obtaining a plurality of images including; In order to output object information included in the image from the image, a first classification value reflecting the type information of the object-In this case, the first classification value corresponds to the sea-and distance information and type information of the object The reflected second classification value-In this case, the second classification value corresponds to an obstacle-is determined from the first image by using an artificial neural network learned based on the output data and labeling data corresponding to the output data. 1 object information obtaining step of obtaining object information and obtaining second object information from the second image; And calculating a moving direction of the moving object included in the imaged sea by comparing the first object information and the second object information.

다른 일 실시예에 따르면, 인공신경망을 이용하여 이동체의 이동 방향을 산출하는 방법으로, 제1 촬상 이미지 및 상기 제1 촬상 이미지의 후속 프레임인 제2 촬상 이미지를 포함하는 복수의 촬상 이미지를 획득하는 단계; 상기 촬상 이미지로부터 상기 촬상 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 촬상 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 촬상 이미지로부터 제2 객체 정보를 획득하는 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 복수의 촬상 이미지에 포함된 이동체 중 적어도 일부의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.According to another embodiment, a method of calculating a moving direction of a moving object using an artificial neural network, wherein 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 obtained. step; A first classification value reflecting the type information of the object to output object information included in the captured image from the captured image-In this case, the first classification value corresponds to the sea-and distance information and type of the object The first image is captured using an artificial neural network learned based on output data including a second classification value reflecting information-In this case, the second classification value corresponds to an obstacle-and labeling data corresponding to the output data. Obtaining first object information from an image, and obtaining second object information from the second captured image; And calculating a moving direction of at least some of the moving objects included in the plurality of captured images by comparing the first object information and the second object information.

또 다른 일 실시예에 따르면, 선박에 설치되어 해상을 촬상하는 카메라; 및 상기 카메라가 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하고, 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 제어부;를 포함하는 이동체의 이동 속성 획득 장치가 제공될 수 있다.According to another embodiment, the camera is installed on the ship to capture the sea; And the object type information to obtain 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 to output object information included in the image from the image. -In this case, the first classification value corresponds to the sea-and a second classification value reflecting distance information and type information of the object-In this case, the second classification value corresponds to an obstacle -Obtaining first object information from the first image using an artificial neural network learned based on output data including and labeling data corresponding to the output data, obtaining second object information from the second image, and And a control unit that compares the first object information and the second object information to calculate a moving direction of the moving object included in the captured sea.

본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The solution means of the subject of the present invention is not limited to the above-described solution means, and solutions not mentioned will be clearly understood by those of ordinary skill in the art from the present specification and the accompanying drawings. I will be able to.

일 실시예에 따르면, 이미지 세그멘테이션(segmentation)을 수행하는 인공신경망을 이용하여 주변 환경의 객체 정보를 획득할 수 있다.According to an embodiment, object information of a surrounding environment may be obtained using an artificial neural network that performs image segmentation.

다른 일 실시예에 따르면, 인공신경망으로부터 출력되는 객체 정보를 이용하여 이동체의 이동 속성을 획득할 수 있다.According to another embodiment, a moving property of a moving object may be obtained using object information output from an artificial neural network.

또 다른 일 실시예에 따르면, 이동체의 이동 속성을 이용하여 선박 및 자동차의 조종신호를 생성할 수 있다.According to another embodiment, a control signal for a ship and a vehicle may be generated by using the movement property of the moving object.

본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.The effects of the present invention are not limited to the above-described effects, and effects that are not mentioned will be clearly understood by those of ordinary skill in the art from the present specification and the accompanying drawings.

도 1은 일 실시예에 따른 인공신경망의 학습 방법이 도시된 블록도이다.
도 2는 일 실시예에 따른 인공신경망의 추론 단계에 관한 블록도이다.
도 3은 일 실시예에 따른 인공신경망을 이용한 객체 정보 획득 방법이 도시된 도면이다.
도 4는 일 실시예에 따른 인공신경망의 영상 분할 동작을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 분류값이 도시된 표이다.
도 6은 일 실시예에 따른 데이터 확장을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 8은 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법이 도시된 순서도이다.
도 9는 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 객체의 분류값 및 이동 속성에 관한 표이다.
도 11은 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 12는 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
도 13은 또 다른 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.
1 is a block diagram illustrating a method of learning an artificial neural network according to an embodiment.
2 is a block diagram of an inference step of an artificial neural network according to an embodiment.
3 is a diagram illustrating a method of obtaining object information using an artificial neural network according to an embodiment.
4 is a diagram illustrating an image segmentation operation of an artificial neural network according to an exemplary embodiment.
5 is a table showing classification values according to an embodiment.
6 is a diagram for describing data expansion according to an exemplary embodiment.
7 is a diagram for describing a method of obtaining a movement attribute of a moving object according to an exemplary embodiment.
8 is a flowchart illustrating a method of obtaining movement properties of a moving object according to another exemplary embodiment.
9 is a diagram for describing a method of obtaining a movement attribute of a moving object according to another embodiment.
10 is a table showing classification values and movement properties of an object according to an exemplary embodiment.
11 is a diagram for describing a method of obtaining a movement attribute of a moving object according to another exemplary embodiment.
12 is a diagram for describing a method of obtaining movement properties of a moving object according to another exemplary embodiment.
13 is a diagram for describing a method of obtaining movement properties of a moving object according to another exemplary embodiment.

본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다. The above objects, features and advantages of the present invention will become more apparent through the following detailed description in conjunction with the accompanying drawings. However, in the present invention, various changes may be made and various embodiments may be provided. Hereinafter, specific embodiments will be illustrated in the drawings and described in detail.

도면들에 있어서, 층 및 영역들의 두께는 명확성을 기하기 위하여 과장된 것이며, 또한, 구성요소(element) 또는 층이 다른 구성요소 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 구성요소 또는 층의 바로 위뿐만 아니라 중간에 다른 층 또는 다른 구성요소를 개재한 경우를 모두 포함한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 원칙적으로 동일한 구성요소들을 나타낸다. 또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다.In the drawings, the thicknesses of layers and regions are exaggerated for clarity, and elements or layers are referred to as "on" or "on" of other elements or layers. This includes not only directly above other components or layers, but also when other layers or other components are interposed in the middle. Throughout the specification, the same reference numerals represent the same elements in principle. In addition, components having the same function within the scope of the same idea shown in the drawings of each embodiment will be described using the same reference numerals.

본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.If it is determined that a detailed description of known functions or configurations related to the present invention may unnecessarily obscure the subject matter of the present invention, a detailed description thereof will be omitted. In addition, numbers (eg, first, second, etc.) used in the description of the present specification are merely identification symbols for distinguishing one component from another component.

또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. In addition, the suffixes "module" and "unit" for constituent elements used in the following description are given or used interchangeably in consideration of only the ease of preparation of the specification, and do not themselves have distinct meanings or roles.

일 실시예에 따르면, 선박에 설치된 카메라가 촬상한 이미지 및 인공신경망을 이용하여 이동체의 이동 속성을 획득하는 방법으로, 해상을 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하는 단계; 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.According to an embodiment, a method of acquiring movement properties of a moving object using an image captured by a camera installed on a ship and an artificial neural network, wherein a first image captured at sea and a second image that is a subsequent frame of the first image are Obtaining a plurality of images including; In order to output object information included in the image from the image, a first classification value reflecting the type information of the object-In this case, the first classification value corresponds to the sea-and distance information and type information of the object The reflected second classification value-In this case, the second classification value corresponds to an obstacle-is determined from the first image by using an artificial neural network learned based on the output data and labeling data corresponding to the output data. 1 object information obtaining step of obtaining object information and obtaining second object information from the second image; And calculating a moving direction of the moving object included in the imaged sea by comparing the first object information and the second object information.

다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 영상 분할 동작을 통해 획득되는 세그멘테이션 이미지(segmentation image)일 수 있다.In another embodiment, the first object information and the second object information may be a segmentation image obtained through an image segmentation operation.

또 다른 일 실시예에서, 상기 제1 객체 정보는 상기 제1 이미지에 포함된 객체가 그 거리 정보 및 종류 정보 중 적어도 하나에 관한 객체 정보가 반영된 분류값에 대응되는 색상값을 갖는 이미지이고, 상기 제2 객체 정보는 상기 제2 이미지에 포함된 객체가 그 거리 정보 및 종류 정보 중 적어도 하나에 관한 객체 정보가 반영된 분류값에 대응되는 색상값을 갖는 이미지일 수 있다.In another embodiment, 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 the distance information and type information is reflected, and 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 about at least one of the distance information and type information is reflected.

또 다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 N×M 행렬일 수 있다.In another embodiment, the first object information and the second object information may be an N×M matrix.

또 다른 일 실시예에서, 상기 제1 객체 정보는 상기 제1 이미지에 포함된 이동체에 관한 분류값만을 포함하고, 상기 제2 객체 정보는 상기 제2 이미지에 포함된 이동체에 관한 분류값만을 포함할 수 있다.In another embodiment, the first object information includes only a classification value for a moving object included in the first image, and the second object information includes only a classification value for a moving object included in the second image. I can.

또 다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 상기 제1 분류값을 포함하지 않을 수 있다.In another embodiment, the first object information and the second object information may not include the first classification value.

또 다른 일 실시예에서, 상기 산출하는 단계는 상기 카메라로부터 제1 거리만큼 이격된 제1 이동체에 대응되는 제1 이동체 분류값 - 이 때, 상기 제1 이동체 분류값은 상기 제1 이동체의 거리 정보 및 종류 정보를 포함함 - 만을 포함하는 복수의 제1 이동체 객체 정보를 제1 시간 간격으로 비교하여 상기 제1 이동체의 이동 방향을 산출하는 제1 이동 방향 산출 단계, 및 상기 카메라로부터 상기 제1 거리보다 큰 제2 거리만큼 이격된 제2 이동체에 대응되는 제2 이동체 분류값 - 이 때, 상기 제2 이동체 분류값은 상기 제2 이동체의 거리 정보 및 종류 정보를 포함함 - 만을 포함하는 복수의 제2 이동체 객체 정보를 상기 제1 시간 간격보다 큰 제2 시간 간격으로 비교하여 상기 제2 이동체의 이동 방향을 산출하는 제2 이동 방향 산출 단계를 포함할 수 있다.In another embodiment, the calculating comprises a first moving object classification value corresponding to a first moving object spaced apart from the camera by a first distance-In this case, the first moving object classification value is distance information of the first moving object And type information-a first moving direction calculating step of calculating a moving direction of the first moving object by comparing a plurality of first moving object object information including only at a first time interval, and the first distance from the camera A second moving object classification value corresponding to the second moving object spaced apart by a larger second distance-In this case, the second moving object classification value includes distance information and type information of the second moving object. 2 Comparing the moving object object information at a second time interval greater than the first time interval, and calculating a moving direction of the second moving object.

또 다른 일 실시예에서, 상기 제1 이동체 객체 정보 및 상기 제2 이동체 객체 정보는 2차원 행렬일 수 있다.In another embodiment, the first moving object object information and the second moving object object information may be a two-dimensional matrix.

또 다른 일 실시예에서, 상기 객체 정보 획득 단계는 상기 제2 객체 정보를 획득하기 전 상기 선박의 자세 정보를 고려하여 상기 제1 이미지 및 상기 제2 이미지를 정합하는 단계를 포함할 수 있다.In another embodiment, the obtaining of the object information may include matching the first image and the second image in consideration of the attitude information of the ship before obtaining the second object information.

또 다른 일 실시예에서, 상기 객체 정보 획득 단계는 상기 제1 객체 정보 및 상기 제2 객체 정보에 포함된 이동체에 대응되는 분류값 및 상기 선박의 자세 정보를 이용하여 상기 제1 객체 정보 및 상기 제2 객체 정보를 정합하는 단계를 포함할 수 있다.In another embodiment, the obtaining of the object information includes the first object information and the first object information using a classification value corresponding to a moving object included in the first object information and the second object information, and the attitude information of the ship. 2 It may include the step of matching object information.

또 다른 일 실시예에서, 상기 산출하는 단계는 상기 이동체가 수평축 방향을 따라 이동하는 경우, 상기 제1 객체 정보에 따른 제1 위치 및 상기 제2 객체 정보에 따른 제2 위치를 비교하여 상기 이동체의 이동 방향을 산출하는 단계를 포함할 수 있다.In another embodiment, the calculating comprises comparing a first position according to the first object information and a second position according to the second object information, when the moving object moves along a horizontal axis direction, It may include calculating a moving direction.

또 다른 일 실시예에서, 상기 산출하는 단계는 상기 이동체가 수직축 방향을 따라 이동하는 경우, 상기 제1 객체 정보에 포함된 상기 이동체에 대응되는 성분의 개수 및 상기 제2 객체 정보에 포함된 상기 이동체에 대응되는 성분의 개수를 비교하여 상기 이동체의 이동 방향을 산출하는 단계를 포함할 수 있다.In another embodiment, the calculating includes 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 when the moving object moves in a vertical axis direction. It may include the step of comparing the number of components corresponding to the calculating the moving direction of the moving object.

또 다른 일 실시예에서, 상기 제1 객체 정보 및 상기 제2 객체 정보는 각각 세그멘테이션 이미지(segmentation image)이고, 상기 성분의 개수는 상기 세그멘테이션 이미지의 픽셀의 개수일 수 있다.In another embodiment, 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.

또 다른 일 실시예에서, 상기 성분의 개수의 증가는 상기 선박으로부터 상기 이동체까지의 거리의 감소를 지시하고, 상기 성분의 개수의 감소는 상기 선박으로부터 상기 이동체까지의 거리의 증가를 지시할 수 있다.In another embodiment, an increase in the number of components may indicate a decrease in the distance from the ship to the moving body, and a decrease in the number of components may indicate an increase in the distance from the ship to the moving body. .

또 다른 일 실시예에서, 상기 산출하는 단계는 상기 제1 객체 정보에 따른 제1 위치 및 상기 제2 객체 정보에 따른 제2 위치를 비교하여 상기 이동 방향의 수평 성분을 산출하고, 상기 제1 객체 정보에 포함된 상기 이동체에 대응되는 픽셀의 개수 및 상기 제2 객체 정보에 포함된 상기 이동체에 대응되는 픽셀의 개수를 비교하여 상기 이동 방향의 수직 성분을 산출하는 단계를 포함할 수 있다.In another embodiment, in the calculating, the horizontal component of the moving direction is calculated by comparing a first position according to the first object information and a second position according to the second object information, and the first object And calculating a vertical component of the moving direction by comparing the number of pixels corresponding to the moving object included in information and the number of pixels corresponding to the moving object included in the second object information.

또 다른 일 실시예에서, 상기 산출하는 단계는 상기 제1 이미지와 상기 제2 이미지 간의 시간 간격, 상기 선박의 속도 정보 및 상기 선박의 자세 정보에 기초하여 상기 이동체의 절대 속도를 획득하는 단계를 포함할 수 있다.In another embodiment, the calculating includes the step of obtaining the absolute speed of the moving object based on the time interval between the first image and the second image, the speed information of the ship, and the attitude information of the ship. can do.

또 다른 일 실시예에 따르면, 상기 이동체의 이동 속성 획득 방법은 상기 산출되는 이동체의 이동 방향에 기초하여 상기 선박의 조종신호를 생성하는 단계;를 더 포함할 수 있다.According to another embodiment, the method of obtaining the moving property of the moving object may further include generating a control signal of the ship based on the calculated moving direction of the moving object.

또 다른 일 실시예에 따르면, 인공신경망을 이용하여 이동체의 이동 방향을 산출하는 방법으로, 제1 촬상 이미지 및 상기 제1 촬상 이미지의 후속 프레임인 제2 촬상 이미지를 포함하는 복수의 촬상 이미지를 획득하는 단계; 상기 촬상 이미지로부터 상기 촬상 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 운행 가능 영역에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 촬상 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 촬상 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 복수의 촬상 이미지에 포함된 이동체 중 적어도 일부의 이동 방향을 산출하는 단계;를 포함하는 이동체의 이동 속성 획득 방법이 제공될 수 있다.According to another embodiment, in a method of calculating a moving direction of a moving object using an artificial neural network, 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. Step to do; A first classification value in which the type information of the object is reflected so as to output object information included in the captured image from the captured image-In this case, the first classification value corresponds to a drivable area-and distance information of the object And a second classification value reflecting the type information-In this case, the second classification value corresponds to an obstacle-using the artificial neural network learned based on the output data and labeling data corresponding to the output data. An object information acquisition step of obtaining first object information from a first captured image and second object information from the second captured image; And calculating a moving direction of at least some of the moving objects included in the plurality of captured images by comparing the first object information and the second object information.

또 다른 일 실시예에서, 상기 운행 가능 영역은, 상기 인공신경망이 선박에 이용되는 경우 수상에 해당하고, 상기 인공신경망이 차량에 이용되는 경우 도로에 해당할 수 있다.In yet another embodiment, the drivable area may correspond to a water surface when the artificial neural network is used for a ship, and may correspond to a road when the artificial neural network is used for a vehicle.

또 다른 일 실시예에 따르면, 선박에 설치되어 해상을 촬상하는 카메라; 및 상기 카메라가 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하고, 상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하고, 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 제어부;를 포함하는 이동체의 이동 속성 획득 장치가 제공될 수 있다.According to another embodiment, the camera is installed on the ship to capture the sea; And the object type information to obtain 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 to output object information included in the image from the image. -In this case, the first classification value corresponds to the sea-and a second classification value reflecting distance information and type information of the object-In this case, the second classification value corresponds to an obstacle -Obtaining first object information from the first image using an artificial neural network learned based on output data including and labeling data corresponding to the output data, obtaining second object information from the second image, and And a control unit that compares the first object information and the second object information to calculate a moving direction of the moving object included in the captured sea.

또 다른 일 실시예에 따르면, 상술한 이동체의 이동 속성 획득 방법 중 어느 하나의 방법을 수행하기 위한 프로그램이 기록된 기록매체가 제공될 수 있다.According to another embodiment, a recording medium in which a program for performing any one of the above-described methods of obtaining movement properties of a moving object is recorded may be provided.

인공신경망(ANN: Artificial Neural Network)이란 인간의 뇌의 학습방법을 수학적으로 모델링한 알고리즘의 일종이다. An artificial neural network (ANN) is a type of algorithm that mathematically models the learning method of the human brain.

인공신경망은 인공 뉴런(neuron)인 복수의 노드(node) 및 상기 복수의 노드를 연결하는 시냅스(synapse)를 포함할 수 있다. 인공신경망은 적어도 하나 이상의 노드(node)를 포함하는 층(layer)을 포함할 수 있다. 예를 들어, 인공신경망은 입력층(input layer), 은닉층(hidden layer) 및 출력층(output layer)을 포함할 수 있다.The artificial neural network may include a plurality of nodes, which are artificial neurons, and a synapse connecting the plurality of nodes. The artificial neural network may include a layer including at least one or more nodes. For example, 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 a coupling strength of synapses to the output layer. The output layer may calculate output data based on the coupling strength of synapses and data transmitted from the hidden layer.

인공신경망은 다양한 신경망을 포함할 수 있다. 예컨대, 인공신경망은 필터를 이용해 특징을 추출하는 합성곱신경망(CNN: Convolution Neural Network)을 포함할 수 있다. 또는, 인공신경망은 노드의 출력이 다시 입력으로 피드백되는 구조를 갖는 순환인공신경망(RNN: Recurrent Neural Network)을 포함할 수 있다. 그 외에도, 인공신경망은 제한된 볼츠만 머신(RBM: Restricted Boltzmann Machine), 심층신뢰신경망(DBN: Deep Belief Network), 생성대립신경망(GAN: Generative Adversarial Network), 관계형 네트워크(RN: Relation Networks) 등 다양한 종류의 신경망을 포함할 수 있다.The artificial neural network may include various neural networks. For example, the artificial neural network may include a convolution neural network (CNN) that extracts features using a filter. Alternatively, the artificial neural network may include a recurrent neural network (RNN) having a structure in which an output of a node is fed back as an input. In addition, artificial neural networks are of various types such as Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), Generative Adversarial Network (GAN), and Relation Networks (RN). May contain neural networks of

한편, 인공신경망은 다양한 방법으로 학습(learning)될 수 있다. 예를 들어, 인공신경망은 지도 학습(supervised learning), 비지도 학습(unsupervised learning), 강화 학습(reinforcement learning), 모방 학습(imitation learning)을 포함할 수 있다. 그 외에도, 인공신경망은 다양한 종류의 학습 방법을 통해 학습될 수 있다.On the other hand, artificial neural networks can be learned in various ways. For example, the artificial neural network may include supervised learning, unsupervised learning, reinforcement learning, and imitation learning. In addition, artificial neural networks can be learned through various types of learning methods.

도 1은 일 실시예에 따른 인공신경망의 학습 방법이 도시된 블록도이다. 구체적으로, 도 1은 일 실시예에 따른 지도 학습을 나타낼 수 있다.1 is a block diagram illustrating a method of learning an artificial neural network according to an embodiment. Specifically, FIG. 1 may represent supervised learning according to an embodiment.

도 1을 참조하면, 인공신경망은 학습 데이터(training data)를 입력 받아 출력 데이터를 출력할 수 있다. 인공신경망은 출력 데이터와 라벨링 데이터(labeling data)의 비교에 기초하여 산출되는 오차의 역전파를 통해 학습될 수 있다. Referring to FIG. 1, the artificial neural network may receive training data and output output data. The artificial neural network may be learned through backpropagation of an error calculated based on comparison between output data and labeling data.

상기 라벨링 데이터는 상기 학습 데이터와 관련될 수 있다. 예를 들어, 상기 라벨링 데이터는 상기 학습 데이터를 기초로 산출된 데이터를 포함할 수 있다.The labeling data may be related to the learning data. For example, the labeling data may include data calculated based on the learning data.

상기 라벨링 데이터는 실측 자료(ground truth)를 포함할 수 있다. 또는, 상기 라벨링 데이터는 사용자 또는 프로그램을 통하여 생성된 자료일 수 있다.The labeling data may include ground truth. Alternatively, the labeling data may be data generated through a user or a program.

도 2는 일 실시예에 따른 인공신경망의 추론 단계에 관한 블록도이다. 도 2를 참조하면, 학습된 인공신경망은 입력 데이터를 입력 받아 출력 데이터를 출력할 수 있다. 2 is a block diagram of an inference step of an artificial neural network according to an embodiment. Referring to FIG. 2, the learned artificial neural network may receive input data and output output data.

상기 입력 데이터는 다양한 형태의 데이터를 포함할 수 있다. 예를 들어, 상기 입력 데이터는 이미지 데이터, 오디오 데이터 및 텍스트 데이터를 포함할 수 있다.The input data may include various types of data. For example, the input data may include image data, audio data, and text data.

상기 출력 데이터는 다양한 형태의 데이터를 포함할 수 있다. 예를 들어, 상기 출력 데이터는 이미지 데이터, 오디오 데이터 및 텍스트 데이터를 포함할 수 있다.The output data may include various types of data. For example, 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 increases, the accuracy of the output data may increase.

이하에서는 인공신경망을 이용하여 주변 장애물에 관한 정보를 획득하는 방법에 대해 설명한다.Hereinafter, a method of acquiring information on surrounding obstacles using an artificial neural network will be described.

도 3은 일 실시예에 따른 인공신경망을 이용한 객체 정보 획득 방법이 도시된 도면이다.3 is a diagram illustrating a method of obtaining object information using an artificial neural network according to an embodiment.

도 3을 참조하면, 인공신경망은 입력 데이터를 입력 받아 출력 데이터를 출력할 수 있다. 예를 들어, 상기 인공신경망은 제1 이미지 데이터(1000)를 입력 받아 제2 이미지 데이터(2000)를 출력할 수 있다.Referring to FIG. 3, the artificial neural network may receive input data and output output data. For example, the artificial neural network may receive the first image data 1000 and output the second image data 2000.

상기 제1 이미지 데이터(1000)는 카메라로부터 촬상된 이미지일 수 있다.The first image data 1000 may be an image captured by a camera.

상기 제2 이미지 데이터(2000)는 상기 제1 이미지 데이터(1000)를 기초로 생성된 데이터일 수 있다. 예를 들어, 상기 제2 이미지 데이터(2000)는 상기 제1 이미지 데이터(1000)에 포함되는 장애물의 종류 정보 및 거리 정보 중 적어도 하나를 포함하는 객체 정보를 포함할 수 있다.The second image data 2000 may be data generated based on the first image data 1000. For example, the second image data 2000 may include object information including at least one of type information and distance information of an obstacle included in the first image data 1000.

상기 인공신경망은 제1 이미지 데이터(1000)를 입력 받아 이미지 세그멘테이션 동작을 수행할 수 있다.The artificial neural network may receive the first image data 1000 and perform an image segmentation operation.

상기 이미지 세그멘테이션(image segmentation) 동작이란 영상 분할 동작으로, 속성별로 이미지의 영역을 분할하는 동작을 의미할 수 있다. 상기 이미지 세그멘테이션 동작은 이미지의 각 픽셀별로 소정의 속성값을 할당하는 과정을 포함할 수 있다. 예컨대, 상기 속성은 상기 이미지에 포함되는 객체의 종류를 의미할 수 있다. 즉, 상기 이미지 세그멘테이션 동작은 이미지에 포함되는 객체를 픽셀별로 분할하는 과정을 포함할 수 있다. 또는, 상기 이미지 세그멘테이션 동작은 특정 픽셀이 어떤 객체에 대응되는 픽셀인지 나타내는 것을 의미할 수 있다.The image segmentation operation is an image segmentation operation, and may mean an operation of dividing an image area according to attributes. The image segmentation operation may include a process of allocating a predetermined attribute value for each pixel of the image. For example, the property 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 mean indicating which object a specific pixel corresponds to.

상기 속성값은 다양한 방식으로 표현될 수 있다. 예를 들어, 상기 속성값은 색상으로 표현될 수 있다.The attribute value can be expressed in various ways. For example, the attribute value may be expressed in color.

상기 이미지 세그멘테이션 동작은 복수의 인공신경망에 의해 수행될 수 있다. 예를 들어, 상기 복수의 인공신경망은 각각 상기 이미지 세그멘테이션 동작을 수행하고, 그 수행 결과를 조합함으로써 객체 정보를 획득할 수 있다.The image segmentation operation may be performed by a plurality of artificial neural networks. For example, the plurality of artificial neural networks may each perform the image segmentation operation and obtain object information by combining the results of the image segmentation.

한편, 상기 인공신경망은 다양한 구조를 가질 수 있다. 예컨대, 상기 인공신경망은 ENet 구조를 가질 수 있다.Meanwhile, the artificial neural network may have various structures. For example, the artificial neural network may have an ENet structure.

한편, 상기 제1 이미지 데이터(1000)는 다양한 형태로 제공될 수 있다. 예를 들어, 도 3에 도시된 바와 같이 제1 이미지 데이터(1000)는 이미지로 제공될 수 있다. 또는, 상기 제1 이미지 데이터(1000)는 픽셀 데이터로 제공될 수 있다.Meanwhile, the first image data 1000 may be provided in various forms. For example, as illustrated in FIG. 3, the first image data 1000 may be provided as an image. Alternatively, the first image data 1000 may be provided as pixel data.

도 4는 일 실시예에 따른 인공신경망의 이미지 세그멘테이션 동작을 설명하기 위한 도면이다. 4 is a diagram for explaining an image segmentation operation of an artificial neural network according to an embodiment.

도 4를 참조하면, 인공신경망은 제1 이미지(1100)를 입력 받아 제1 출력 데이터(2100)를 출력할 수 있다. 상기 제1 출력 데이터(2100)는 N×M 행렬일 수 있다. 이 때, 상기 N과 상기 M은 같을 수 있다. 상기 행렬의 원소의 개수는 상기 제1 이미지(1100)의 픽셀의 개수와 동일할 수 있다. 즉, 제1 이미지(1100)는 N×M 픽셀을 포함할 수 있다.Referring to FIG. 4, the artificial neural network may receive a first image 1100 and output first output data 2100. The first output data 2100 may be an N×M matrix. In this case, N and M may be the same. The number of elements of the matrix may be the same as the number of pixels of the first image 1100. That is, the first image 1100 may include N×M pixels.

제1 이미지(1100)의 각 픽셀은 상기 행렬의 각 원소에 대응될 수 있다. 예를 들어, 제1 이미지(1100)의 각 픽셀은 상기 행렬의 각 원소와 일대일 대응될 수 있다. 또는, 제1 이미지(1100)의 복수의 픽셀의 집합은 상기 행렬의 각 원소와 대응될 수 있다.Each pixel of the first image 1100 may correspond to each element of the matrix. For example, each pixel of the first image 1100 may correspond to each element of the matrix one-to-one. Alternatively, a set of a plurality of pixels of the first image 1100 may correspond to each element of the matrix.

상기 제1 출력 데이터(2100)는 다양한 정보를 포함할 수 있다. 예를 들어, 상기 제1 출력 데이터(2100)는 상기 제1 이미지(1100)에 포함되는 객체의 거리 정보를 포함할 수 있다. 또는, 상기 제1 출력 데이터(2100)는 상기 객체의 종류 정보를 포함할 수 있다.The first output data 2100 may include various types of information. For example, the first output data 2100 may include distance information of an object included in the first image 1100. Alternatively, the first output data 2100 may include information on the type of the object.

한편, 상기 행렬의 각 원소는 소정의 분류값을 가질 수 있다. 여기서, 상기 분류값이란 제1 이미지(1100)의 각 픽셀에 포함되는 객체 정보가 반영된 값일 수 있다. 따라서, 상기 행렬의 각 원소는 제1 이미지(1100)의 각 픽셀에 대응되는 객체 정보를 포함할 수 있다.Meanwhile, each element of the matrix may have a predetermined classification value. Here, the classification value may be a value in which object information included in each pixel of the first image 1100 is reflected. Accordingly, 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. For example, the classification value may be determined based on distance information and type information of an object.

도 5는 일 실시예에 따른 분류값이 도시된 표이다.5 is a table showing classification values according to an embodiment.

도 5를 참조하면, 분류값은 객체 정보를 포함할 수 있다. 예를 들어, 상기 분류값은 객체의 거리 정보 및 종류 정보를 포함할 수 있다. Referring to FIG. 5, the classification value may include object information. For example, the classification value may include distance information and type information of an object.

한편, 상기 거리 정보는 미터 단위의 특정 거리 값을 가질 수 있다. 예를 들어, 상기 거리 정보는 10m와 같은 거리 값을 가질 수 있다.Meanwhile, the distance information may have a specific distance value in meters. For example, the distance information may have a distance value such as 10m.

또는, 상기 거리 정보는 소정의 범위를 갖는 카테고리로 분류될 수 있다. 예를 들어, 상기 카테고리는 객체의 거리에 따라 근거리, 중거리 및 원거리를 포함할 수 있다. 구체적으로, 0~10m는 근거리, 10~20m는 중거리, 20~30m는 원거리로 분류될 수 있다. Alternatively, the distance information may be classified into a category having a predetermined range. For example, the category may include a short distance, a medium distance, and a far distance according to the distance of the object. Specifically, 0-10m may be classified into a short distance, 10-20m a medium distance, and 20-30m a long distance.

상기 종류 정보는 객체의 종류에 관한 데이터를 포함할 수 있다. The type information may include data on the type of object.

예를 들어, 상기 객체는 그 종류에 따라 지형, 고정 장애물, 동적 장애물 및 기타로 분류될 수 있다. 상기 지형은 산을 포함할 수 있다. 상기 고정 장애물은 섬, 암초 등을 포함할 수 있다. 상기 동적 장애물은 선박을 포함할 수 있다.For example, the objects may be classified into topography, fixed obstacles, dynamic obstacles, and others according to their 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.

한편, 상기 분류값은 상기 거리 정보 및 상기 종류 정보에 기초하여 정해질 수 있다. 예를 들어, 제1 분류값은 객체가 근거리에 위치한 지형인 경우를 지시할 수 있다.Meanwhile, the classification value may be determined based on the distance information and the type information. For example, the first classification value may indicate a case where the object is a terrain located in a short distance.

한편, 상기 분류값 중 적어도 일부는 거리 정보를 포함하지 않을 수 있다. 예를 들어, 바다에 대응되는 제1 분류값은 거리 정보를 포함하지 않을 수 있다.Meanwhile, at least some of the classification values may not include distance information. For example, the first classification value corresponding to the sea may not include distance information.

즉, 분류값이 반드시 거리 정보 및 종류 정보 모두에 기초하여 정해져야 하는 것은 아니다. 예컨대, 상기 분류값은 종류 정보에만 기초하여 정해질 수도 있다.That is, the classification value is not necessarily determined based on both distance information and type information. For example, the classification value may be determined based only on type information.

또한, 상기 분류값은 상기 거리 정보 및 상기 종류 정보뿐만 아니라 추가 정보에 기초하여 정해질 수 있다. 예를 들어, 상기 추가 정보는 객체의 방향 정보, 속도 정보, 항로 표지 등을 포함할 수 있다.In addition, the classification value may be determined based on the distance information and the type information as well as additional information. For example, the additional information may include direction information of an object, speed information, route markers, and the like.

한편, 상기 인공신경망으로부터 출력되는 출력 데이터는 이미지 데이터가 될 수 있다. 예를 들어, 상기 이미지 데이터는 상기 분류값에 대응되는 RGB 데이터를 포함할 수 있다.Meanwhile, the output data output from the artificial neural network may be image data. For example, the image data may include RGB data corresponding to the classification value.

다시 도 3을 참조하면, 상기 인공신경망은 제1 이미지 데이터(1000)를 입력받아 제2 이미지 데이터(2000)를 출력할 수 있다. 상기 제2 이미지 데이터(2000)의 각 픽셀은 상기 제1 이미지 데이터(1000)에 포함되는 객체 정보를 포함할 수 있다. Referring back to FIG. 3, the artificial neural network may receive first image data 1000 and output second image data 2000. Each pixel of the second image data 2000 may include object information included in the first image data 1000.

상기 제2 이미지 데이터(2000)의 각 픽셀은 상기 객체 정보가 반영된 분류값에 대응되는 RGB 데이터를 포함할 수 있다. Each pixel of the second image data 2000 may include RGB data corresponding to a classification value in which the object information is reflected.

예를 들어, 제1 객체(100)는 근거리에 위치한 동적 장애물로, 도 5의 분류값 7에 대응될 수 있다. 또한, 제2 객체(200)는 원거리에 위치한 지형으로, 도 5의 분류값 3에 대응될 수 있다. For example, the first object 100 is a dynamic obstacle located in a short distance and may correspond to the classification value 7 of FIG. 5. Also, the second object 200 is a terrain located at a distance and may correspond to the classification value 3 of FIG. 5.

상기 분류값 7은 제7 색상에 대응될 수 있다. 상기 분류값 3은 제3 색상에 대응될 수 있다.The classification value 7 may correspond to the seventh color. The classification value 3 may correspond to a third color.

따라서, 제1 객체(100)는 상기 제7 색상으로 표현될 수 있다. 제2 객체(200)는 상기 제3 색상으로 표현될 수 있다.Accordingly, the first object 100 may be expressed in the seventh color. The second object 200 may be expressed in the third color.

한편, 상기 인공신경망은 상기 이미지 세그멘테이션 동작을 수행하기 전에 전처리 동작을 수행할 수 있다. Meanwhile, the artificial neural network may perform a pre-processing operation before performing the image segmentation operation.

예를 들어, 상기 인공신경망은 복수의 이미지를 입력받아 상기 복수의 이미지 중 일부를 선별하는 동작을 수행할 수 있다. For example, the artificial neural network may perform an operation of receiving a plurality of images and selecting some of the plurality of images.

구체적으로, 상기 인공신경망은 복수의 이미지 중 조도가 가장 높은 제1 이미지 및 조도가 가장 낮은 제2 이미지를 합성함으로써 제3 이미지를 생성할 수 있다. 상기 인공신경망은 상기 제3 이미지를 기초로 상기 이미지 세그멘테이션 동작을 수행함으로써 출력 데이터를 획득할 수 있다.Specifically, the artificial neural network may generate a third image by synthesizing the first image with the highest illuminance and the second image with 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.

상기 선별 동작을 통해 상기 인공신경망으로부터 획득되는 출력 데이터의 정확도가 향상될 수 있다.Accuracy of output data obtained from the artificial neural network may be improved through the selection operation.

또한, 상기 인공신경망은 복수의 이미지 중 하나의 이미지를 샘플링할 수 있다. 예를 들어, 상기 인공신경망은 상기 복수의 이미지 중 초점 값(또는 초점 척도, focus measure)이 가장 크고 조도값이 미리 정해진 값에 가장 근사한 이미지를 샘플링할 수 있다. 상기 인공신경망은 상기 샘플링 된 이미지에 기초하여 상기 이미지 세그멘테이션 동작을 수행할 수 있다. 이에 따라, 상기 이미지 세그멘테이션 동작을 통해 산출되는 출력 데이터의 정확도는 향상될 수 있다.In addition, the artificial neural network may sample one image from among a plurality of images. For example, the artificial neural network may sample an image having the largest focus value (or focus measure) among the plurality of images and the closest illuminance value 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.

상기 전처리 동작의 다른 예로, 상기 인공신경망은 RGB 정규화 동작을 수행할 수 있다.As another example of the preprocessing operation, the artificial neural network may perform an RGB normalization operation.

한편, 상기 인공신경망은 다양한 방법으로 학습될 수 있다.Meanwhile, the artificial neural network can be learned in various ways.

예를 들어, 인공신경망은 학습 데이터를 입력받아 출력 데이터를 출력할 수 있다. 상기 출력 데이터 및 상기 학습 데이터와 관련된 라벨링 데이터의 차이에 기초하여 산출되는 오차가 상기 인공신경망으로 역전파됨에 따라 상기 인공신경망은 학습될 수 있다.For example, the artificial neural network may receive training data and output output data. As an error calculated based on a difference between the output data and labeling data related to the training data is back-propagated to the artificial neural network, the artificial neural network may be trained.

상기 학습 데이터는 이미지 데이터가 될 수 있다. 상기 이미지 데이터는 해상을 촬상하여 획득되는 해상 이미지를 포함할 수 있다.The learning data may be image data. The image data may include a sea image obtained by capturing a sea image.

상기 학습 데이터는 임의의 이미지로부터 데이터 확장(data augmentation)을 통해 획득되는 복수의 이미지 데이터를 포함할 수 있다. The training data may include a plurality of image data obtained through data augmentation from an arbitrary image.

도 6은 일 실시예에 따른 데이터 확장을 설명하기 위한 도면이다. 도 6을 참조하면, 원본 이미지(1300)로부터 복수의 생성 이미지가 생성될 수 있다. 다양한 기상 조건 또는 환경 노이즈가 반영되어 원본 이미지(1300)로부터 복수의 생성 이미지가 생성될 수 있다.6 is a diagram for describing data expansion according to an exemplary embodiment. Referring to FIG. 6, a plurality of generated images may be generated from an original image 1300. A plurality of generated images may be generated from the original image 1300 by reflecting various weather conditions or environmental noise.

예를 들어, 제1 생성 이미지(1310)는 원본 이미지(1300)에 안개가 추가된 이미지일 수 있다. 또는, 제1 생성 이미지(1310)의 안개 정도는 원본 이미지(1300)의 안개 정도보다 클 수 있다. 제2 생성 이미지(1320)는 원본 이미지(1300)에 비가 추가된 이미지일 수 있다. 제1 생성 이미지(1310)는 원본 이미지(1300)에 안개 및 비가 추가된 이미지일 수 있다.For example, the first generated image 1310 may be an image in which fog is added to the original image 1300. Alternatively, 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 a ratio 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.

상기 인공신경망은 제1 생성 이미지(1310), 제2 생성 이미지(1320) 및 제3 생성 이미지(1330)를 기초로 학습될 수 있다. 이에 따라, 상기 인공신경망의 학습 효율은 향상될 수 있다.The artificial neural network may be learned based on a first generated image 1310, a second generated image 1320, and a third generated image 1330. Accordingly, the learning efficiency of the artificial neural network can be improved.

한편, 인공신경망은 다양한 라벨링 데이터를 기초로 학습될 수 있다. 일 예로, 상기 인공신경망이 입력 이미지에 포함되는 객체에 대응되는 분류값을 출력하는 경우, 상기 인공신경망은 상기 객체에 관한 분류값을 포함하는 라벨링 데이터를 기초로 학습될 수 있다.Meanwhile, the artificial neural network may 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 a classification value of the object.

다른 일 예로, 상기 인공신경망이 입력 이미지에 포함되는 객체에 대응되는 분류값에 대응되는 RGB 데이터를 출력하는 경우, 상기 인공신경망은 상기 객체에 관한 분류값에 대응되는 RGB 데이터를 기초로 학습될 수 있다.As another example, 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 related to the object. have.

상기 인공신경망의 학습 단계에서 상기 전처리 동작이 수행될 수 있다. 이에 따라, 상기 인공신경망의 학습 효율이 향상될 수 있다.The pre-processing operation may be performed in the learning step of the artificial neural network. Accordingly, the learning efficiency of the artificial neural network may be improved.

이상에서는, 이미지 세그멘테이션을 수행하는 인공신경망을 통해 장애물의 객체 정보를 획득하는 방법에 대하여 설명하였다.In the above, a method of obtaining object information of an obstacle through an artificial neural network that performs image segmentation has been described.

이하에서는 장애물의 이동 속성을 획득하는 방법에 대하여 설명한다.Hereinafter, a method of obtaining the moving property of an obstacle will be described.

도 7은 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법을 나타내는 도면이다.7 is a diagram illustrating a method of obtaining movement properties of a moving object according to an exemplary embodiment.

도 7을 참조하면, 제1 프레임의 이미지(1300) 및 상기 제1 프레임의 이미지(1300)의 후속 프레임인 제2 프레임의 이미지(1310)의 비교에 기초하여 이동 속성 데이터(1320)가 획득될 수 있다.Referring to FIG. 7, movement attribute data 1320 may be obtained based on a comparison between 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. I can.

예를 들어, 제어부(1)는 제1 프레임의 이미지(1300)의 픽셀값 및 제2 프레임의 이미지(1310)의 픽셀값을 비교함으로써 이동체(10)의 이동 방향을 획득할 수 있다. 도 7에서, 이동체(10)는 좌측으로부터 우측으로 이동하고있음을 알 수 있다.For example, the controller 1 may obtain the 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. In Fig. 7, it can be seen that the moving body 10 is moving from left to right.

이 때, 제어부(1)는 Inter-frame subtraction 동작을 수행함으로써 이동체(10)의 이동 방향을 획득할 수 있다.In this case, the control unit 1 may obtain the moving direction of the moving object 10 by performing an inter-frame subtraction operation.

또한, 제어부(1)는 상기 픽셀값 및 프레임 간격에 기초하여 이동체(10)의 이동 속도를 획득할 수 있다. In addition, the controller 1 may obtain the moving speed of the moving object 10 based on the pixel value and the frame interval.

제어부(1)는 이동 속성 데이터(1320)를 획득할 수 있다. 이동 속성 데이터(1320)는 상기 이동체(10)의 이동 방향 및 이동 속도를 포함할 수 있다. 이동 속성 데이터(1320)는 도 7과 같은 이미지 데이터일 수 있으나, 이에 한정되는 것은 아니며, 다양한 형태의 데이터일 수 있다. The controller 1 may obtain movement attribute data 1320. The movement attribute data 1320 may include a movement direction and a movement speed of the moving object 10. The movement attribute data 1320 may be image data as shown in FIG. 7, but is not limited thereto, and may be data in various forms.

한편, 본 명세서 상에서, 제어부(1)가 이동체의 이동 속성을 획득하는 일련의 동작들은 제어부(1)의 이동 속성 획득 동작으로 지칭될 수 있다.Meanwhile, in the present specification, a series of operations in which the control unit 1 acquires the movement property of the moving object may be referred to as an operation of the control unit 1 obtains the movement property.

도 8은 다른 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법이 도시된 순서도이다.8 is a flowchart illustrating a method of obtaining a moving property of a moving object according to another exemplary embodiment.

도 8을 참조하면, 일 실시예에 따른 이동체의 이동 속성 획득 방법은, 해상을 촬상한 제1 이미지 및 제2 이미지를 획득하는 단계(S1000), 인공신경망을 이용하여 상기 제1 이미지 및 상기 제2 이미지로부터 각각 제1 객체 정보 및 제2 객체 정보를 획득하는 단계(S2000) 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 속성을 획득하는 단계(S3000)를 포함할 수 있다.Referring to FIG. 8, in the method of obtaining a moving property of a moving object according to an embodiment, the step of acquiring a first image and a second image captured of a sea (S1000), the first image and the first image using an artificial neural network. 2 Acquiring first object information and second object information from an image (S2000), and comparing the first object information and the second object information to obtain movement properties of the moving object included in the captured sea (S3000) may be included.

이하에서는 각 단계에 대하여 상세히 설명한다.Hereinafter, each step will be described in detail.

먼저, 제어부(1)는 해상을 촬상한 제1 이미지 및 제2 이미지를 포함하는 복수의 이미지를 획득할 수 있다(S1000). 상기 제1 이미지 및 상기 제2 이미지는 서로 다른 프레임의 이미지일 수 있다. 예를 들어, 상기 제2 이미지는 상기 제1 이미지의 후속 프레임의 이미지일 수 있다.First, the controller 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. For example, the second image may be an image of a frame subsequent to the first image.

상기 제1 이미지 및 상기 제2 이미지는 각각 복수의 객체를 포함할 수 있다. 예를 들어, 상기 복수의 객체는 바다, 선박, 부표 등 다양한 객체를 포함할 수 있다.Each of the first image and the second image may include a plurality of objects. For example, the plurality of objects may include various objects such as sea, ship, and buoy.

제어부(1)는 인공신경망을 이용하여 상기 제1 이미지 및 상기 제2 이미지로부터 각각 제1 객체 정보 및 제2 객체 정보를 획득할 수 있다(S2000). The controller 1 may obtain first object information and second object information, respectively, from the first image and the second image using an artificial neural network (S2000).

상기 인공신경망은 도 1 내지 도 6에서 설명한 인공신경망을 의미할 수 있다. 예를 들어, 상기 인공신경망은 임의의 입력 이미지를 입력 받아, 상기 입력 이미지에 포함된 객체 정보를 출력할 수 있다. 구체적으로, 상기 인공신경망은 상기 영상 분할 동작을 수행함으로써 상기 입력 이미지에 포함된 장애물의 거리 정보 및 종류 정보를 출력할 수 있다.The artificial neural network may mean the artificial neural network described in FIGS. 1 to 6. For example, the artificial neural network may receive an input image and output object information included in the input image. Specifically, 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.

또한, 상기 인공신경망은 상기 전처리 동작을 수행할 수 있다. In addition, the artificial neural network may perform the pre-processing operation.

상기 제1 객체 정보 및 상기 제2 객체 정보는 상술한 상기 영상 분할 동작을 통해 획득되는 객체 정보를 의미할 수 있다. 예를 들어, 상기 제1 객체 정보 및 상기 제2 객체 정보는 각각 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체에 관한 거리 정보 및 종류 정보를 의미할 수 있다.The first object information and the second object information may refer to object information obtained through the above-described image segmentation operation. For example, 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.

상기 제1 객체 정보 및 상기 제2 객체 정보는 N×M 행렬로 제공될 수 있다. 상기 행렬의 원소는 상기 제1 이미지 및 상기 제2 이미지의 픽셀에 대응될 수 있다.The first object information and the second object information may be provided in an N×M matrix. Elements of the matrix may correspond to pixels of the first image and the second image.

제어부(1)는 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 속성을 획득할 수 있다(S3000).The controller 1 may compare the first object information and the second object information to obtain a movement property of the moving object included in the captured sea (S3000).

예를 들어, 제어부(1)는 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 이동체의 이동 방향을 획득할 수 있다. For example, the controller 1 may obtain a moving direction of the moving object by comparing the first object information and the second object information.

제어부(1)는 상기 제1 객체 정보에 포함된 원소 및 상기 제2 객체 정보에 포함된 원소를 비교하여 상기 이동체의 이동 방향을 획득할 수 있다. 상기 원소는 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체에 관한 거리 정보 및 종류 정보가 반영된 분류값을 포함할 수 있다.The controller 1 may compare an element included in the first object information and an element included in the second object information to obtain a moving direction of the moving object. 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.

한편, 상기 이동 방향은 상기 복수의 이미지를 촬상한 카메라의 설치 위치를 기준으로한 상대 이동 방향을 의미할 수 있다.Meanwhile, the movement direction may mean a relative movement direction based on an installation position of a camera that has captured the plurality of images.

제어부(1)는 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체의 종류 정보를 고려하여 상기 객체의 이동 방향을 산출할 수 있다. 예를 들어, 제어부(1)는 상기 객체가 동적 장애물인 경우에만, 상기 객체의 이동 방향을 산출할 수 있다. 즉, 제어부(1)는 상기 객체가 지형 또는 고정 장애물에 해당하는 경우, 상기 객체에 대한 이동 방향은 산출하지 않을 수 있다. The controller 1 may calculate the moving direction of the object in consideration of type information of the object included in the first image and the second image. For example, the controller 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 movement direction for the object.

또는, 상기 객체의 종류에 따라 제어부(1)의 이동 방향 산출 동작의 주기가 달라질 수 있다. 예를 들어, 상기 객체가 동적 장애물인 경우 상기 객체가 고정 장애물인 경우보다 상기 이동 방향 산출 동작의 주기가 작을 수 있다.Alternatively, the period of the operation of calculating the moving direction of the controller 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.

제어부(1)는 상기 제1 이미지 및 상기 제2 이미지에 포함된 객체의 거리 정보를 고려하여 상기 객체의 이동 방향을 산출할 수 있다. 예를 들어, 상기 객체가 근거리에 위치한 경우 상기 객체가 원거리에 위치한 경우보다 제어부(1)의 상기 이동 방향 산출 동작의 주기가 작을 수 있다.The controller 1 may calculate the moving direction of the object in consideration of distance information of the object included in the first image and the second image. For example, when the object is located in a short distance, a period of the operation of calculating the movement direction of the controller 1 may be smaller than when the object is located in a far distance.

제어부(1)는 상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 이동체의 이동 속도를 획득할 수 있다. 예를 들어, 제어부(1)는 상기 제1 이미지 및 상기 제2 이미지의 프레임 간격, 및 상기 제1 객체 정보 및 상기 제2 객체 정보를 이용하여 상기 이동체의 이동 속도를 획득할 수 있다. The controller 1 may obtain a moving speed of the moving object by comparing the first object information and the second object information. For example, the control unit 1 may obtain the moving speed of the moving object using the frame interval of the first image and the second image, and the first object information and the second object information.

이 때, 제어부(1)는 상기 제1 객체 정보에 포함된 객체의 거리 정보 및 상기 제2 객체 정보에 포함된 객체의 거리 정보를 고려하여 상기 이동 속도를 획득할 수 있다. 예를 들어, 상기 거리 정보 및 상기 제1 객체 정보 및 상기 제2 객체 정보의 원소값의 변화에 기초하여 상기 이동 속도를 획득할 수 있다.In this case, the controller 1 may obtain the moving speed by considering distance information of an object included in the first object information and distance information of an object included in the second object information. For example, the movement speed may be obtained based on the distance information and the change in element values of the first object information and the second object information.

한편, 상기 이동 속도는 상기 복수의 이미지를 촬상한 카메라의 설치 위치를 기준으로한 상대 이동 속도를 의미할 수 있다.Meanwhile, the moving speed may mean a relative moving speed based on an installation position of a camera that has captured the plurality of images.

제어부(1)는 상기 이동 속도에 기초하여 상기 이동체의 절대 속도를 산출할 수 있다. 예를 들어, 제어부(1)는 상기 카메라가 설치된 선박의 GPS 정보를 고려하여 상기 절대 속도를 산출할 수 있다.The controller 1 may calculate the absolute speed of the moving object based on the moving speed. For example, the control unit 1 may calculate the absolute speed in consideration of GPS information of a ship on which the camera is installed.

한편, 제어부(1)는 상기 카메라가 설치된 선박의 자세 정보를 고려하여 상기 이동 속성 획득 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 상기 선박에 탑재된 IMU로부터 획득된 상기 선박의 자세 정보를 고려하여 상기 이동 속성 획득 동작을 수행할 수 있다. 상기 자세 정보는 상기 선박의 선수방향(heading 또는 yaw), 피치(pitch), 롤(roll) 등을 포함할 수 있다.Meanwhile, the controller 1 may perform the movement attribute acquisition operation in consideration of the attitude information of the ship on which the camera is installed. For example, the control unit 1 may perform the movement attribute acquisition operation in consideration of the attitude information of the ship acquired from the IMU mounted on the ship. The attitude information may include a heading or yaw of the ship, a pitch, a roll, and the like.

구체적으로, 제어부(1)는 상기 자세 정보를 고려하여 상기 제1 이미지 및 상기 제2 이미지를 정합할 수 있다. 예를 들어, 상기 선박의 피치를 고려하여 상기 제1 이미지 및 상기 제2 이미지의 위치를 정합할 수 있다. 이 때, 제어부(1)는 미리 정해진 기준 위치를 기초로 상기 제1 이미지 및 상기 제2 이미지를 정합할 수 있다.Specifically, 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. In this case, the controller 1 may match the first image and the second image based on a predetermined reference position.

예를 들어, 상기 단계 S2000 및 상기 단계 S3000는 상기 이미지 정합 단계를 포함할 수 있다.For example, the step S2000 and the step S3000 may include the image matching step.

도 9는 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법이 도시된 도면이다.9 is a diagram illustrating a method of obtaining a moving property of a moving object according to an exemplary embodiment.

도 9를 참조하면, 제어부(1)는 제1 이미지로부터 획득된 제1 객체 정보(1400) 및 상기 제1 이미지의 후속 프레임인 제2 이미지로부터 획득된 제2 객체 정보(1410)의 비교에 기초하여, 제1 이동 속성 데이터(1420)를 획득할 수 있다.Referring to FIG. 9, the controller 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. Thus, the first movement attribute data 1420 may be obtained.

제1 객체 정보(1400) 및 제2 객체 정보(1410)는 이동체(10)에 관한 거리 정보 및 종류 정보를 포함할 수 있다.The first object information 1400 and the second object information 1410 may include distance information and type information about the moving object 10.

제어부(1)는 제1 객체 정보(1400) 및 제2 객체 정보(1410)를 비교함으로써 이동체(10)의 이동 속성을 획득할 수 있다. The controller 1 may obtain the moving property of the moving object 10 by comparing the first object information 1400 and the second object information 1410.

예를 들어, 제어부(1)는 제1 객체 정보(1400)에 따른 이동체(10)의 위치 및 제2 객체 정보(1410)에 따른 이동체(10)의 위치를 비교함으로써 이동체(10)의 이동 방향을 획득할 수 있다. 구체적으로, 제어부(1)는 이동체(10)에 대응되는 분류값이 속한 행렬내의 위치 변화를 기초로 이동체(10)의 이동 방향을 획득할 수 있다.For example, the controller 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 determine the moving direction of the moving object 10 Can be obtained. Specifically, the controller 1 may obtain the moving direction of the moving object 10 based on a change in a position in a matrix to which a classification value corresponding to the moving object 10 belongs.

제어부(1)는 상기 제1 이미지 및 상기 제2 이미지의 프레임 간격 및 이동체(10)의 거리 정보를 이용하여 이동체(10)의 이동 속도를 획득할 수 있다.The controller 1 may obtain the moving speed of the moving object 10 by using the frame interval of the first image and the second image and distance information of the moving object 10.

제1 객체 정보(1400) 및 제2 객체 정보(1410)는 다양한 형태의 데이터로 제공될 수 있다. 예를 들어, 제1 객체 정보(1400) 및 제2 객체 정보(1410)는 이미지 형태로 제공될 수 있다. 또는 제1 객체 정보(1400) 및 제2 객체 정보(1410)는 2차원 행렬로 제공될 수 있다.The first object information 1400 and the second object information 1410 may be provided as various types of data. For example, the first object information 1400 and the second object information 1410 may be provided in the form of an image. Alternatively, the first object information 1400 and the second object information 1410 may be provided in a 2D matrix.

한편, 이동체(10)의 이동 속성은 분류화될 수 있다. Meanwhile, the moving properties of the moving object 10 may be classified.

도 10은 일 실시예에 따른 이동 속성에 관한 분류값이 도시된 표이다.10 is a table showing classification values for movement attributes according to an exemplary embodiment.

도 10을 참조하면, 각각의 이동 속성에 따라 분류값이 할당될 수 있다. 이동 속성은 이동 방향 및 이동 속도를 포함할 수 있다.Referring to FIG. 10, a classification value may be allocated according to each movement attribute. The movement attribute may include a movement direction and a movement speed.

예를 들어, 이동 방향은 정지(NOT MOVING), 전방(FORWARD), 후방(BACKWARD), 좌측(LEFT), 우측(RIGHT) 등으로 분류될 수 있다. 다만, 이에 한정되는 것은 아니며 이동 방향은 다양한 방법으로 분류될 수 있다. 예를 들어, 이동 방향은 동, 서, 남, 북, 북동, 남동, 남서, 북서와 같이 8방위로 분류될 수도 있다.For example, the moving direction may be classified into NOT MOVING, FORWARD, BACKWARD, LEFT, RIGHT, and the like. However, the present invention is not limited thereto, and the direction of movement may be classified in various ways. For example, the direction of movement may be classified into eight orientations such as east, west, south, north, northeast, southeast, southwest, and northwest.

한편, 상기 이동 방향은 산기 카메라가 설치된 위치를 기준으로 한 방향을 지시할 수 있다. 예를 들어, 복수의 카메라가 선박에 설치되는 경우, 카메라의 설치 위치에 따라 각각의 이동 방향이 지시하는 방향이 상이할 수 있다.On the other hand, the moving direction may indicate a direction based on a position in which the diffuser camera is installed. For example, when a plurality of cameras are installed on a ship, a direction indicated by each movement direction may be different depending on the installation position of the camera.

또는, 상기 이동 방향은 상기 카메라가 설치된 선박의 진행 방향을 기준으로 한 방향을 지시할 수 있다. 예를 들어, 상기 전방(FORWARD)은 상기 선박의 이동 방향과 같은 방향을 지시할 수 있다. 또한, 상기 후방(BACKWARD)은 상기 선박의 이동 방향의 반대 방향을 지시할 수 있다.Alternatively, the moving direction may indicate a direction based on the moving direction of the ship on which the camera is installed. For example, the FORWARD may indicate the same direction as the moving direction of the ship. In addition, the backward may indicate a direction opposite to the moving direction of the ship.

이동 속도는 소정의 범위를 기준으로 저속(SLOW), 중속(NORMAL), 고속(FAST)의 3 종류로 분류될 수 있다. 다만, 이에 한정되는 것은 아니며, 이동 속도는 이동 속도는 속도에 따라 다양한 개수로 분류될 수 있다.The moving speed can be classified into three types of low speed (SLOW), medium speed (NORMAL), and high speed (FAST) based on a predetermined range. However, the present invention is not limited thereto, and the moving speed may be classified into various numbers according to the speed.

도 11은 또 다른 일 실시예에 따른 이동체의 이동 속성을 획득하는 방법이 도시된 도면이다.11 is a diagram illustrating a method of obtaining a moving property of a moving object according to another exemplary embodiment.

도 11을 참조하면, 제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)에 기초하여 제2 이동 속성 데이터(1520)를 획득할 수 있다. 제3 객체 정보(1500)는 상기 제1 이미지로부터 상기 인공신경망을 통해 출력될 수 있다. 제4 객체 정보(1510)는 상기 제2 이미지로부터 상기 인공신경망을 통해 출력될 수 있다.Referring to FIG. 11, the controller 1 may obtain 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.

한편, 제어부(1)는 도 7 내지 도 9에서 설명한 이동 속성 획득 동작과 동일하게 이동체(10)의 이동 속성 획득 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)를 비교함으로써 이동체(10)의 이동 방향 및 이동 속도를 획득할 수 있다. 따라서, 이에 대한 상세한 설명은 생략하고, 전술한 이동 속성 획득 동작과의 차별점을 중심으로 설명한다.Meanwhile, the controller 1 may perform the operation of obtaining the moving property of the moving object 10 in the same manner as the operation of obtaining the moving property described in FIGS. 7 to 9. For example, the controller 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. Accordingly, a detailed description thereof will be omitted, and a description will be made focusing on the difference from the above-described movement attribute acquisition operation.

제어부(1)는 미리 정해진 분류값을 갖는 객체에 대하여만 이동 속성 획득 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)에 동적 장애물에 대응되는 분류값이 포함된 경우에만 상기 동적 장애물의 이동 속성을 획득할 수 있다.The control unit 1 may perform an operation of obtaining movement attributes only on objects having a predetermined classification value. For example, the controller 1 may obtain the moving property of the dynamic obstacle only when the third object information 1500 and the fourth object information 1510 include a classification value corresponding to the dynamic obstacle.

제어부(1)는 미리 정해진 분류값을 갖는 객체를 선별하는 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 동적 장애물을 선별하는 동작을 수행할 수 있다. The controller 1 may perform an operation of selecting an object having a predetermined classification value. For example, the controller 1 may perform an operation of selecting a dynamic obstacle.

제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)에서 상기 선별된 객체를 제외한 나머지 정보를 폐기하는 동작을 수행할 수 있다. 예를 들어, 제어부(1)는 제3 객체 정보(1500)에서 상기 선별된 객체에 대응되는 원소를 제외한 나머지 원소들의 값을 0으로 조절할 수 있다. 제어부(1)는 제4 객체 정보(1510)에서 상기 선별된 객체에 대응되는 원소를 제외한 나머지 원소들의 값을 0으로 조절할 수 있다.The controller 1 may perform an operation of discarding information other than the selected object from the third object information 1500 and the fourth object information 1510. For example, in the third object information 1500, the controller 1 may adjust values of the remaining elements to 0 except for an element corresponding to the selected object. In the fourth object information 1510, the controller 1 may adjust values of the remaining elements to 0 except for an element corresponding to the selected object.

예를 들어, 제어부(1)는 제1 객체 정보(1400)로부터 제1 객체 정보(1400)에서 이동체(10)에 관한 객체 정보를 제외한 나머지 정보가 제거된 제3 객체 정보(1500)를 생성할 수 있다. 즉, 제3 객체 정보(1500)는 제1 객체 정보(1400)의 이동체(10)에 관한 객체 정보만을 포함할 수 있다.For example, the control unit 1 may generate the third object information 1500 from the first object information 1400 from the first object information 1400 from which information other than the object information about the moving object 10 has been removed. I can. That is, the third object information 1500 may include only object information regarding the moving object 10 of the first object information 1400.

마찬가지로, 제어부(1)는 제2 객체 정보(1410)로부터 제2 객체 정보(1410)에서 이동체(10)에 관한 객체 정보를 제외한 나머지 정보가 제거된 제4 객체 정보(1510)를 생성할 수 있다. 즉, 제4 객체 정보(1510)는 제2 객체 정보(1410)의 이동체(10)에 관한 객체 정보만을 포함할 수 있다.Likewise, the controller 1 may generate the fourth object information 1510 from the second object information 1410 from the second object information 1410 to which information other than the object information about the moving object 10 has been removed. . That is, the fourth object information 1510 may include only object information regarding the moving object 10 of the second object information 1410.

제어부(1)는 제3 객체 정보(1500) 및 제4 객체 정보(1510)를 비교함으로써 이동체(10)에 관한 이동 속성을 획득할 수 있다. 예를 들어, 제어부(1)는 이동체(10)에 대응되는 분류값의 행렬 내의 위치의 변화를 기초로 이동체(10)의 이동 방향 및 이동 속도를 획득할 수 있다.The controller 1 may obtain a movement property of the moving object 10 by comparing the third object information 1500 and the fourth object information 1510. For example, the controller 1 may obtain a moving direction and a moving speed of the moving object 10 based on a change in a position in a matrix of classification values corresponding to the moving object 10.

이에 따라, 이동체의 이동 속성을 획득하는 제어부(1)의 전체 연산량이 감소할 수 있다. 즉, 제어부(1)가 미리 정해진 객체에 관한 정보만을 포함하는 선별된 객체 정보를 기초로 이동 속성을 획득함으로써, 제어부(1)의 데이터 연산량이 감소할 수 있다.Accordingly, the total amount of calculation of the controller 1 for obtaining the moving property of the moving object may be reduced. That is, when the controller 1 acquires the movement attribute based on selected object information including only information on a predetermined object, the amount of data calculation of the controller 1 can be reduced.

한편, 이동체의 거리 정보에 따라 제어부(1)가 수행하는 이동 속성 획득 동작의 수행 주기가 달라질 수 있다. 예를 들어, 상기 제1 이미지에 근거리의 동적 장애물이 포함된 경우, 제어부(1)는 제1 시간 간격으로 상기 동적 장애물의 이동 속성을 획득할 수 있다. 반면에, 상기 제1 이미지에 원거리의 동적 장애물이 포함된 경우, 제어부(1)는 제1 시간 간격보다 큰 제2 시간 간격으로 상기 동적 장애물의 이동 속성을 획득할 수 있다.Meanwhile, the execution cycle 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 near-distance dynamic obstacle is included in the first image, the controller 1 may obtain the moving property of the dynamic obstacle at a first time interval. On the other hand, when a distant dynamic obstacle is included in the first image, the controller 1 may acquire the moving property of the dynamic obstacle at a second time interval greater than the first time interval.

도 12는 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.12 is a diagram for describing a method of obtaining movement properties of a moving object according to an exemplary embodiment.

도 12를 참조하면, 해상을 촬상한 복수의 이미지로부터 상기 인공신경망은 상기 복수의 이미지에 대응되는 복수의 객체 정보를 출력할 수 있다.Referring to FIG. 12, the artificial neural network may output information on a plurality of objects corresponding to the plurality of images from a plurality of images captured at sea.

예를 들어, 상기 촬상된 해상에 제1 이동체(11)가 포함된 경우, 제어부(1)는 N frame 마다 상기 이동 속성 획득 동작을 수행할 수 있다. 반면에, 상기 촬상된 해상에 제2 이동체(12)가 포함된 경우, 제어부(1)는 상기 N보다 큰 M frame 마다 상기 이동 속성 획득 동작을 수행할 수 있다. 상기 제2 이동체(12)는 상기 제1 이동체(11)보다 상기 해상을 촬상한 카메라로부터 멀리 위치할 수 있다. 즉, 이동체로부터 상기 카메라까지의 거리가 가까울수록 제어부(1)의 상기 이동 속성 획득 동작은 자주 수행될 수 있다.For example, when the first moving object 11 is included in the captured sea, the control unit 1 may perform the operation of obtaining the moving attribute every N frames. On the other hand, when the second moving object 12 is included in the captured sea, the control unit 1 may perform the operation of obtaining the moving attribute for every M frame larger than N. The second moving body 12 may be located farther from the camera that has captured 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 obtaining the movement attribute of the controller 1 may be performed.

이는, 카메라로부터 가까운 이동체일수록, 이미지 내의 위치가 빠르게 변동될 수 있기 때문이다. 또는, 카메라로부터 가까운 이동체일수록, 객체 정보 내 원소값의 변화가 빠르게 변동될 수 있기 때문이다.This is because the closer the moving object from the camera, the faster the position in the image may change. Alternatively, as the moving object closer to the camera is, the change in the element value in the object information may fluctuate rapidly.

한편, 이동체의 이동 방향에 따라, 제어부(1)의 이동 속성 획득 방법이 달라질 수 있다. 예컨대, 이동체가 수평 방향을 따라 이동하는 경우, 제어부(1)는 상술한 바와 같이 상기 이동체에 대응되는 분류값의 위치의 변화를 기초로 상기 이동체의 이동 속성을 획득할 수 있다. 반면에, 이동체가 수직 방향을 따라 이동하는 경우, 제어부(1)는 상기 이동체에 대응되는 픽셀 개수의 변화를 기초로 상기 이동체의 이동 속성을 획득할 수 있다.On the other hand, depending on the moving direction of the moving object, the method of obtaining the moving attribute of the control unit 1 may vary. For example, when the moving object moves in the horizontal direction, the controller 1 may obtain the moving property of the moving object based on a change in the position of the classification value corresponding to the moving object as described above. On the other hand, when the moving object moves in the vertical direction, the controller 1 may obtain the moving property of the moving object based on a change in the number of pixels corresponding to the moving object.

도 13은 일 실시예에 따른 이동체의 이동 속성 획득 방법을 설명하기 위한 도면이다.13 is a diagram for describing a method of obtaining movement properties of a moving object according to an exemplary embodiment.

도 13을 참조하면, 제어부(1)는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 기초하여 제3 이동 속성 데이터(1620)를 획득할 수 있다. 제5 객체 정보(1600)는 상기 제1 이미지로부터 상기 인공신경망을 통해 출력될 수 있다. 제6 객체 정보(1610)는 상기 제2 이미지로부터 상기 인공신경망을 통해 출력될 수 있다. 따라서, 제6 객체 정보(1610)는 제5 객체 정보(1600)의 후속 프레임의 이미지에 관한 정보일 수 있다.Referring to FIG. 13, the controller 1 may acquire 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 about an image of a frame following the fifth object information 1600.

이동체(10)는 수직 방향을 따라 이동할 수 있다. 여기서, 상기 수직 방향이란 상기 카메라의 수직축 방향을 의미할 수 있다. 구체적으로, 상기 수직 방향은 상기 카메라로부터 멀어지거나 가까워지는 방향을 의미할 수 있다. 또는, 상기 수직 방향은 도 10의 FORWARD 또는 BACKWARD 방향을 의미할 수 있다.The moving body 10 can move along a vertical direction. Here, the vertical direction may mean a vertical axis direction of the camera. Specifically, the vertical direction may mean a direction moving away from or close to the camera. Alternatively, the vertical direction may mean the FORWARD or BACKWARD direction of FIG. 10.

이동체(10)가 수직 방향을 따라 이동하는 경우, 제어부(1)는 상기 제1 제1 이미지 및 상기 제2 이미지에 포함된 이동체(10)에 대응되는 픽셀 개수의 변화를 기초로 이동체(10)의 이동 속성을 획득할 수 있다.When the moving object 10 moves in the vertical direction, the controller 1 may determine the moving object 10 based on a change in the number of pixels corresponding to the moving object 10 included in the first and second images. You can acquire the movement property of.

또는, 제어부(1)는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 포함된 이동체(10)에 대응되는 분류값의 개수 변화를 기초로 이동체(10)의 이동 속성을 획득할 수 있다. 상기 분류값의 개수는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 포함된 상기 분류값을 갖는 원소의 개수를 의미할 수 있다.Alternatively, the control unit 1 may obtain the 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. I can. The number of classification values may mean the number of elements having the classification values included in the fifth object information 1600 and the sixth object information 1610.

예를 들어, 제6 객체 정보(1610)에 포함된 이동체(10)에 대응되는 분류값의 개수가 제5 객체 정보(1600)에 포함된 이동체(10)에 대응되는 분류값의 개수보다 큰 경우, 즉, 시간에 따라 상기 분류값의 개수가 증가하는 경우, 이동체(10)가 상기 카메라와 가까워짐을 의미할 수 있다. 또는, 이동체(10)가 상기 선박과 가까워짐을 의미할 수 있다.For example, when 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 over time, it may mean that the moving object 10 is closer to the camera. Alternatively, it may mean that the moving body 10 is closer to the vessel.

반대로, 제6 객체 정보(1610)에 포함된 이동체(10)에 대응되는 분류값의 개수가 제5 객체 정보(1600)에 포함된 이동체(10)에 대응되는 분류값의 개수보다 작은 경우, 즉, 시간에 따라 상기 분류값의 개수가 감소하는 경우, 이동체(10)가 상기 카메라와 멀어짐을 의미할 수 있다. 또는, 이동체(10)가 상기 선박과 멀어짐을 의미할 수 있다.Conversely, when 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, , If the number of classification values decreases with time, it may mean that the moving object 10 is distant from the camera. Alternatively, it may mean that the moving body 10 is away from the ship.

한편, 제어부(1)는 도 7 내지 도 11에서 설명한 이동 속성 획득 동작과 동일하게 이동체(10)의 이동 속성 획득 동작을 수행할 수 있음은 물론이다. 예를 들어, 제어부(1)는 제5 객체 정보(1600) 및 제6 객체 정보(1610)에 포함된 이동체(10)의 위치 변화를 기초로 이동체(10)의 이동 방향 및 이동 속도를 획득할 수 있다. On the other hand, it goes without saying that the control unit 1 can perform the movement attribute acquisition operation of the moving object 10 in the same manner as the movement attribute acquisition operation described in FIGS. 7 to 11. For example, the controller 1 may obtain the moving direction and the moving speed of the moving object 10 based on the change in the position of the moving object 10 included in the fifth object information 1600 and the sixth object information 1610. I can.

이 때, 제어부(1)는 상기 카메라가 설치된 선박의 자세 정보를 고려하여 이동체(10)의 이동 속성을 획득할 수 있다. 예를 들어, 상기 선박의 선수방향(heading 또는 yaw), 피치(pitch), 롤(roll) 등을 고려하여 상기 이동 속성을 획득할 수 있다.In this case, the control unit 1 may acquire the movement property of the moving object 10 in consideration of the attitude information of the ship on which the camera is installed. For example, the movement attribute may be obtained by considering the heading or yaw, pitch, and roll of the ship.

한편, 상기 분류값의 개수 변화를 기초로 획득된 이동체(10)의 이동 속성은, 상기 위치 변화를 기초로 획득된 이동체(10)의 이동 속성보다 정확할 수 있다. 예를 들어, 상기 분류값의 개수는 상기 위치보다 상기 선박의 자세 변화에 영향을 적게 받을 수 있다. 구체적으로, 상기 위치는 상기 선박의 자세가 변함에 따라 변할 수 있는 반면, 상기 분류값의 개수는 상기 선박의 자세가 변하더라도 그대로 유지될 수 있다. 또는, 상기 위치는 상기 선박의 자세가 변함에 따라 상대적으로 크게 변할 수 있는 반면, 상기 분류값의 개수는 상기 선박의 자세가 변하더라도 상대적으로 적게 변할 수 있다.Meanwhile, 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. For example, the number of classification values may be less affected by a change in attitude of the ship than the position. Specifically, the position may change as the attitude of the ship changes, while the number of classification values may be maintained even if the attitude of the ship changes. Alternatively, 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.

제어부(1)는 이동체(10)의 이동 속성에 기초하여 상기 선박의 조종신호를 생성할 수 있다. 예를 들어, 제어부(1)는 이동체(10)가 상기 선박으로 접근하는 경우, 이동체(10)를 회피하는 조종신호를 생성할 수 있다. 또는, 제어부(1)는 이동체(10)가 상기 선박을 기초로 미리 설정된 위험 영역으로 진입하는 경우, 상기 선박이 이동체(10)를 회피하도록 조종신호를 생성할 수 있다.The control unit 1 may generate a control signal of the vessel based on the moving property of the moving body 10. For example, when the moving object 10 approaches the ship, the control unit 1 may generate a control signal that avoids the moving object 10. Alternatively, the control unit 1 may generate a control signal so that the ship avoids the moving body 10 when the moving body 10 enters a preset danger area based on the ship.

한편, 이상에서는 제어부(1)가 선박에 설치된 카메라가 촬상한 해상 이미지로부터 상기 해상 이미지에 포함된 이동체의 이동 속성을 획득하는 것으로 설명하였으나, 제어부(1)는 다양한 이미지로부터 이동체의 이동 속성을 획득할 수 있다. 예컨대, 제어부(1)는 자동차에 설치된 카메라가 촬상한 촬상 이미지로부터 상기 촬상 이미지에 포함된 이동체의 이동 속성을 획득할 수 있다. 또는, 제어부(1)는 드론에 설치된 카메라로부터 촬상되는 이미지로부터 상기 이미지에 포함된 이동체의 이동 속성을 획득할 수 있다. 또한, 제어부(1)는 상기 이동 속성에 기초하여 자동차 또는 드론을 제어하는 조종신호를 생성할 수 있다.Meanwhile, in the above, it has been described that the control unit 1 acquires the movement property of the moving object included in the marine image from the sea image captured by the camera installed on the ship, but the control unit 1 obtains the movement property of the moving object from various images. can do. For example, the controller 1 may obtain the moving property of the moving object included in the captured image from a captured image captured by a camera installed in the vehicle. Alternatively, the controller 1 may obtain the moving property of the moving object included in the image from an image captured from a camera installed in the drone. Also, the controller 1 may generate a control signal for controlling a vehicle or a drone based on the movement property.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.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 in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to 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 and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of the program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited embodiments and drawings, various modifications and variations are possible from the above description by those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as a system, structure, device, circuit, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and claims and equivalents fall within the scope of the claims to be described later.

Claims (1)

카메라가 촬상한 이미지 및 인공신경망을 이용하여 이동체의 이동 속성을 획득하는 방법으로,
해상을 촬상한 제1 이미지 및 상기 제1 이미지의 후속 프레임인 제2 이미지를 포함하는 복수의 이미지를 획득하는 단계;
상기 이미지로부터 상기 이미지에 포함된 객체 정보를 출력하도록, 상기 객체의 종류 정보가 반영된 제1 분류값 - 이 때, 상기 제1 분류값은 바다에 대응됨 - 및 상기 객체의 거리 정보 및 종류 정보가 반영된 제2 분류값 - 이 때, 상기 제2 분류값은 장애물에 대응됨 - 을 포함하는 출력 데이터 및 상기 출력 데이터에 대응되는 라벨링 데이터에 기초하여 학습된 인공신경망을 이용하여 상기 제1 이미지로부터 제1 객체 정보를 획득하고, 상기 제2 이미지로부터 제2 객체 정보를 획득하는 객체 정보 획득 단계; 및
상기 제1 객체 정보 및 상기 제2 객체 정보를 비교하여 상기 촬상된 해상에 포함된 이동체의 이동 방향을 산출하는 단계;를 포함하는
이동체의 이동 속성 획득 방법.
A method of acquiring the moving property of a moving object using an image captured by a camera and an artificial neural network,
Acquiring a plurality of images including a first image captured at sea and a second image that is a subsequent frame of the first image;
In order to output object information included in the image from the image, a first classification value reflecting the type information of the object-In this case, the first classification value corresponds to the sea-and distance information and type information of the object The reflected second classification value-In this case, the second classification value corresponds to an obstacle-is determined from the first image by using an artificial neural network learned based on the output data and labeling data corresponding to the output data. 1 object information obtaining step of obtaining object information and obtaining second object information from the second image; And
Comprising: comparing the first object information and the second object information to calculate a moving direction of the moving object included in the captured sea.
How to obtain moving properties of moving objects.
KR1020200099266A 2018-09-04 2020-08-07 Method for acquiring movement attributes of moving object and apparatus for performing the same KR102454878B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220129572A KR20220143617A (en) 2018-09-04 2022-10-11 Method for acquiring movement attributes of moving object and apparatus for performing the same

Applications Claiming Priority (5)

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 (en) 2018-09-04 2018-12-20 Method for acquiring movement attributes of moving object and apparatus for performing the same

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180165861A Division KR102144623B1 (en) 2018-09-04 2018-12-20 Method for acquiring movement attributes of moving object and apparatus for performing the same

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220129572A Division KR20220143617A (en) 2018-09-04 2022-10-11 Method for acquiring movement attributes of moving object and apparatus for performing the same

Publications (2)

Publication Number Publication Date
KR20200099117A true KR20200099117A (en) 2020-08-21
KR102454878B1 KR102454878B1 (en) 2022-10-17

Family

ID=69722624

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200099266A KR102454878B1 (en) 2018-09-04 2020-08-07 Method for acquiring movement attributes of moving object and apparatus for performing the same

Country Status (2)

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

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101661931B1 (en) * 2010-02-12 2016-10-10 삼성전자주식회사 Method and Apparatus For Rendering 3D Graphics
KR101795798B1 (en) * 2016-06-14 2017-11-08 제일정보통신(주) Intelligent surveillance camera system
KR101805564B1 (en) * 2017-06-12 2018-01-18 (주)지인테크 Alarm system for prevent ship collision and method thereby

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140096595A (en) * 2013-01-28 2014-08-06 경북대학교 산학협력단 Method for image classification
KR101589814B1 (en) * 2014-04-30 2016-01-29 인하대학교 산학협력단 Apparatus for recognizing of object in coast and method thereof
KR101693981B1 (en) * 2015-04-29 2017-01-10 현대중공업 주식회사 Apparatus and method for vessel collision avoidance
US10372976B2 (en) * 2016-05-05 2019-08-06 Brunswick Corporation Person detection in a marine environment
KR101900851B1 (en) * 2016-07-22 2018-11-08 목포해양대학교 산학협력단 Method And Apparatus for Monitoring Marine Traffic

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101661931B1 (en) * 2010-02-12 2016-10-10 삼성전자주식회사 Method and Apparatus For Rendering 3D Graphics
KR101795798B1 (en) * 2016-06-14 2017-11-08 제일정보통신(주) Intelligent surveillance camera system
KR101805564B1 (en) * 2017-06-12 2018-01-18 (주)지인테크 Alarm system for prevent ship collision and method thereby

Also Published As

Publication number Publication date
KR102454878B1 (en) 2022-10-17
WO2020050500A1 (en) 2020-03-12

Similar Documents

Publication Publication Date Title
KR102144623B1 (en) Method for acquiring movement attributes of moving object and apparatus for performing the same
CN110163187B (en) F-RCNN-based remote traffic sign detection and identification method
WO2018162933A1 (en) Improved object recognition system
US11195038B2 (en) Device and a method for extracting dynamic information on a scene using a convolutional neural network
KR20180051335A (en) A method for input processing based on neural network learning algorithm and a device thereof
Truong et al. Deep learning-based super-resolution reconstruction and marker detection for drone landing
KR102372703B1 (en) Learning method and learning device for integrating object detection information acquired through v2v communication from other autonomous vehicle with object detection information generated by present autonomous vehicle, and testing method and testing device using the same
Kim et al. Vision-based real-time obstacle segmentation algorithm for autonomous surface vehicle
CN113614730A (en) CNN classification of multi-frame semantic signals
US10964033B2 (en) Decoupled motion models for object tracking
KR102454878B1 (en) Method for acquiring movement attributes of moving object and apparatus for performing the same
Sebastian et al. RangeWeatherNet for LiDAR-only weather and road condition classification
KR102372687B1 (en) Learning method and learning device for heterogeneous sensor fusion by using merging network which learns non-maximum suppression
CN114830185A (en) Position determination by means of a neural network
Simon et al. Extracting sensor models from a scene based simulation
KR102466804B1 (en) Autonomous navigation method using image segmentation
Seiya et al. Point grid map-based mid-to-mid driving without object detection
Aycard et al. Grid based fusion & tracking
Friedel Event-Based Visual Inertial Odometry Using Smart Features
Shrivastava et al. CubifAE-3D: Monocular camera space cubification for auto-encoder based 3D object detection
EP4050510A1 (en) Object information calculation method and system
KR20220045762A (en) System for automatic recognition and monitoring of vessel using artificial intelligence image processing and method for providing the same
Li Place Recognition and Localization for Multi-Modal Underwater Navigation with Vision and Acoustic Sensors
Zacchini et al. Autonomous Underwater Environment Perceiving and Modeling: An Experimental Campaign With FeelHippo AUV for Forward Looking Sonar-Based Automatic Target Recognition and Data Association
Svecovs et al. Real time object localization based on computer vision: Cone detection for perception module of a racing car for Formula student driverless

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant