KR20210087631A - 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램 - Google Patents

제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램 Download PDF

Info

Publication number
KR20210087631A
KR20210087631A KR1020200000595A KR20200000595A KR20210087631A KR 20210087631 A KR20210087631 A KR 20210087631A KR 1020200000595 A KR1020200000595 A KR 1020200000595A KR 20200000595 A KR20200000595 A KR 20200000595A KR 20210087631 A KR20210087631 A KR 20210087631A
Authority
KR
South Korea
Prior art keywords
moving object
control command
artificial intelligence
intelligence model
information
Prior art date
Application number
KR1020200000595A
Other languages
English (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
Application filed by 브이아이씨테크 주식회사 filed Critical 브이아이씨테크 주식회사
Priority to KR1020200000595A priority Critical patent/KR20210087631A/ko
Publication of KR20210087631A publication Critical patent/KR20210087631A/ko

Links

Images

Classifications

    • 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/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • 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/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

컴퓨터에 의하여 수행되는 방법에 있어서, 이동체에 대한 제어 명령을 획득하는 단계, 상기 제어 명령에 따른 상기 이동체의 실제 이동결과에 대한 정보를 획득하는 단계 및 상기 제어 명령 및 상기 이동결과에 대한 정보에 기초하여, 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 인공지능 모델을 학습시키는 단계를 포함하는, 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법이 개시된다.

Description

제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램 {METHOD, APPARATUS AND PROGRAM FOR LEARNING ARTIFICIAL INTELLIGENCE MODEL FOR ESTIMATING MOVING OBJECT'S MOVEMENT ACCORDING TO CONTROL INSTRUCTION}
본 발명은 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법에 관한 것이다.
인공지능 기술은 머신러닝(Machine Learning, 기계학습) 기술을 포함하며, 머신러닝 기술 중에서도 특히 영상을 분석하는 데 널리 이용되는 딥러닝(Deep Learning) 기술을 포함한다.
딥 러닝은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 기계학습(machine learning) 알고리즘의 집합으로 정의된다. 딥 러닝은 큰 틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야로 볼 수 있다.
최근에는 이러한 딥 러닝 기술에 기반하여 이동체를 제어하기 위한 연구가 다양하게 진행되고 있다. 단, 실제 환경에서는 시뮬레이션 환경과 달리 다양한 현실적 조건으로 인해 이론과는 달리 오차가 발생하므로, 학습을 위해 이동체를 실제로 제어하면서 데이터를 수집하거나, 시뮬레이션의 정확도를 높이기 위해 실제 환경에서의 이동체의 움직임을 예측할 수 있도록 물리법칙에 기반하여 이를 일일이 산출하여 적용 및 예측하여야 하는 어려움이 있었다.
본 발명이 해결하고자 하는 과제는 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법을 제공하는 것이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법은, 이동체에 대한 제어 명령을 획득하는 단계, 상기 제어 명령에 따른 상기 이동체의 실제 이동결과에 대한 정보를 획득하는 단계 및 상기 제어 명령 및 상기 이동결과에 대한 정보에 기초하여, 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 인공지능 모델을 학습시키는 단계를 포함한다.
또한, 상기 제어 명령을 획득하는 단계는, 상기 이동체의 추진력을 제어하는 제어명령을 획득하는 단계 및 상기 이동체의 조향을 제어하는 제어명령을 획득하는 단계를 포함할 수 있다.
또한, 상기 이동결과에 대한 정보를 획득하는 단계는, 상기 이동체의 위치정보 및 상기 이동체의 방향정보를 획득하는 단계를 포함할 수 있다.
또한, 상기 이동결과에 대한 정보를 획득하는 단계는, 상기 이동체의 시간별 속도를 산출하는 단계 및 상기 이동체의 시간별 회전 각속도(yaw rate)를 산출하는 단계를 더 포함할 수 있다.
또한, 상기 제어 명령을 획득하는 단계는, 상기 제어 명령을 포함하는 제어신호가 상기 이동체에 전달되는 시점에 대한 정보를 획득하는 단계를 포함하고, 상기 이동결과에 대한 정보를 획득하는 단계는, 상기 시점에 대한 상기 이동체의 이동결과에 대한 정보를 획득하는 단계를 포함할 수 있다.
또한, 상기 인공지능 모델을 학습시키는 단계는, 하나 이상의 시점에 대한 학습 데이터 - 상기 학습 데이터는 상기 하나 이상의 시점 각각에 대하여 상기 이동체에 전달된 제어신호에 포함된 제어명령과, 상기 이동체의 이동결과에 대한 정보를 포함함 - 를 획득하는 단계 및 상기 학습 데이터를 이용하여 딥 러닝에 기반한 학습을 수행함으로써, 상기 이동체에 제공되는 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 인공지능 모델을 학습시키는 단계를 포함할 수 있다.
또한, 상기 이동체에 대한 일련의 제어 명령을 획득하는 단계, 상기 인공지능 모델을 이용하여, 상기 일련의 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 단계 및 상기 추정 결과에 기초하여 상기 일련의 제어 명령에 따른 상기 이동체의 시뮬레이션 정보를 생성하는 단계를 더 포함할 수 있다.
또한, 상기 일련의 제어 명령을 획득하는 단계는, 상기 이동체의 이동 목표정보를 획득하는 단계 및 제2 인공지능 모델을 이용하여 상기 이동 목표정보에 대응하는 상기 일련의 제어 명령을 획득하는 단계를 포함하고, 상기 시뮬레이션 정보를 생성하는 단계는, 상기 시뮬레이션 정보를 상기 이동 목표정보와 비교하는 단계 및 상기 비교 결과에 기초하여 상기 제2 인공지능 모델에 대한 강화학습을 수행하는 단계를 더 포함할 수 있다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습장치는, 하나 이상의 인스트럭션을 저장하는 메모리 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 개시된 실시 예에 따른 방법을 수행한다.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습 프로그램은, 하드웨어인 컴퓨터와 결합되어, 개시된 실시 예에 따른 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
개시된 실시 예에 따르면, 제어명령에 따른 이동체의 실제 이동결과를 추정할 수 있는 인공지능 모델을 학습시킴으로써, 물리법칙에 기반한 복잡한 연산 없이도 제어명령에 따른 이동체의 실제 이동결과를 추정할 수 있도록 하는 장점이 있다.
개시된 실시 예에 따르면, 이동체를 실제로 이동시키지 않고도 이동체의 실제 움직임을 시뮬레이션할 수 있도록 하여, 이동체를 이용한 가상의 실험 및 데이터 수집을 가능케 하는 장점이 있다. 이에 따라, 이동체를 실제로 이동시키는 것보다 적은 비용으로 더 많은 데이터를 더 빠르게 수집할 수 있는 효과가 있다.
또한, 시뮬레이션을 통한 가상의 데이터 수집에 기반하여 실제 이동체의 주행제어에 사용할 수 있는 인공지능 모델을 강화학습을 통해 획득할 수 있도록 하는 효과가 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 일 실시 예에 따른 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법을 도시한 흐름도이다.
도 2는 이동체의 2차원 이동결과에 대한 정보를 수집하는 방법의 일 예를 도시한 도면이다.
도 3은 이동체의 3차원 이동결과에 대한 정보를 수집하는 방법의 일 예를 도시한 도면이다.
도 4는 일 실시 예에 따라 학습된 인공지능 모델을 이용하는 방법을 도시한 흐름도이다.
도 5는 일 실시 예에 따른 이동체의 주행 제어를 위한 인공지능 모델의 강화학습 방법을 도시한 흐름도이다.
도 6은 이동체 및 이동체를 주행시키고자 하는 이동 목표정보에 대응하는 주행경로를 도시한 도면이다.
도 7은 일 실시 예에 따른 장치의 구성도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.
도 1은 일 실시 예에 따른 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법을 도시한 흐름도이다.
단계 S110에서, 컴퓨터는 이동체에 대한 제어 명령을 획득한다.
본 명세서에서, 이동체는 제어 명령에 기반한 이동을 수행할 수 있는 모든 종류의 장치를 의미할 수 있으며, 예를 들어 RC카와 같이 지상에서 주행가능한 주행체를 의미할 수도 있고, 다른 예로 드론과 같이 공중을 비행할 수 있는 비행체를 의미할 수도 있으나, 이에 제한되는 것은 아니다. 또한, 이동체는 실제로 사람이 탑승할 수 있는 자율주행 차량을 의미할 수도 있다.
이하에서는, 설명의 편의를 위하여 상술한 이동체들 중 RC카를 기준으로 하여 개시된 실시 예에 따른 인공지능 모델 학습방법에 대해서 설명한다. 하지만, 이하에서 서술되는 실시 예들은 RC카가 아닌 다른 모든 종류의 이동체에 대해서도 적용될 수 있다.
일 실시 예에서, 상술한 제어 명령을 획득하는 단계는, 상기 이동체의 추진력을 제어하는 제어명령을 획득하는 단계 및 상기 이동체의 조향을 제어하는 제어명령을 획득하는 단계를 포함할 수 있다.
일 실시 예에서, 컴퓨터는 이동체에 제어신호를 전달하는 컨트롤 단말 혹은 컨트롤 모듈로부터 이동체에 전달되는 제어신호를 획득하고, 획득된 제어신호에 포함된 제어명령을 획득할 수 있으나, 컴퓨터가 제어명령을 획득하는 방법은 이에 제한되는 것은 아니다.
다른 예로, 컴퓨터는 이동체를 제어하기 위한 제어명령을 생성하고, 생성된 제어명령을 컨트롤 단말 혹은 컨트롤 모듈을 통하여 이동체에 전달하며, 생성된 제어명령을 학습을 위해 별도로 저장할 수도 있다.
일 실시 예에서, 이동체의 추진력을 제어하는 제어명령은 RC카의 뒷바퀴의 추진력을 제어하는 제어명령을 의미할 수 있으며, 예를 들어 이는 0 내지 1의 th(throttle) 값으로 설정될 수 있다. 예를 들어, 제어명령의 th값이 1인 경우, 이는 RC카의 뒷바퀴의 추진력을 최대로 하라는 의미일 수 있다.
일 실시 예에서, 이동체의 조향을 제어하는 제어명령은 RC카의 앞바퀴의 주향 목표값을 포함할 수 있으며, 예를 들어 이는 -1 내지 1의 st(steering) 값으로 설정될 수 있다. 예를 들어 제어명령의 st값이 -1인 경우, 이는 왼쪽으로 최대한 방향을 돌리라는 것을 의미하고, 제어명령의 st값이 1인 경우, 이는 오른쪽으로 최대한 방향을 돌리라는 것을 의미할 수 있다.
단, 제어명령의 값이 설정된다고 하여 RC카가 실제로 즉시 해당 물리 값(예를 들어, 추진력이나 조향)을 가지게 되는 것은 아니며, 이는 해당 값을 목표치로 설정한다는 것을 의미한다. 예를 들어, RC카의 추진력이 50%인 상태에서 추진력을 100%로 하라는 제어 명령(즉, th값이 1인 제어 명령)이 수신된다고 하여도, 즉시 추진력이 100%가 될 수는 없다. 따라서, th값이 1인 제어 명령은 가능한 빨리 추진력을 100%로 끌어올리라는 명령인 것으로 해석될 수 있다.
실시 예에 따라서, 제어 명령은 감속 혹은 정지를 위한 brake 제어 명령을 추가로 포함할 수 있다. 예를 들어, brake 제어 명령은 감속장치를 어느 정도 강도로 구동시킬지 여부를 최소인 0 내지 최대인 1 사이의 값으로 나타내는 제어 값을 포함할 수 있으나, 이에 제한되는 것은 아니다.
단계 S120에서, 컴퓨터는 상기 제어 명령에 따른 상기 이동체의 실제 이동결과에 대한 정보를 획득한다.
도 2를 참조하면, 이동체의 2차원 이동결과에 대한 정보를 수집하는 방법의 일 예가 도시되어 있다.
일 실시 예에서, 상술한 이동결과에 대한 정보를 획득하는 단계에서, 컴퓨터는 상기 이동체의 위치정보 및 상기 이동체의 방향정보를 획득하는 단계를 수행할 수 있다.
예를 들어, 컴퓨터는 도 2에 도시된 바와 같이 이동체(10)의 위치(x, y) 및 방향(θ)정보를 수집할 수 있으며, 이는 2차원 좌표계에 기반한 좌표와 각도 형태로 수집될 수 있다.
일 실시 예에서, 이동체(10)의 위치 및 방향은 천장에 설치된 복수의 카메라에 의하여 촬영된 정보로부터 획득될 수 있으나, 이동체(10)의 위치 및 방향을 획득하는 방법은 이에 제한되지 않으며, 또한 카메라가 이용되는 경우 카메라가 설치되는 위치 및 그 개수는 이에 제한되지 않는다.
예를 들어, 이동체(10)에는 촬영을 통해 위치와 방향을 인식하기 용이하도록 하는 적어도 하나의 마커가 구비될 수 있다. 다른 예로, 별도의 마커가 구비되지 않더라도 컴퓨터는 카메라에 의하여 촬영된 영상을 분석하여 이동체(10)의 위치와 방향을 판단할 수도 있다. 이동체(10)의 위치는 이동체(10)의 특정 지점에 기반하여 결정될 수 있으며, 예를 들어 이동체(10)의 중심점을 이동체(10)의 위치로 결정할 수 있으나, 이에 제한되는 것은 아니다.
또한, 이동체(10)의 주행이 이루어지는 바닥 공간의 경우 하나의 카메라만으로는 촬영이 어렵기 때문에, 복수의 카메라를 이용하여 이를 촬영하며, 복수의 카메라로부터 촬영된 이미지를 통해 이동체(10)의 위치를 파악해야 할 수 있다.
이동체(10)의 위치를 파악하기 위해서는 복수의 카메라로부터 촬영된 이미지에 대한 전처리 과정이 수행될 수 있으며, 이는 아래와 같은 세 단계의 처리과정을 포함할 수 있다.
첫째로, 카메라 렌즈에 의한 왜곡(distortion)을 보정하여 촬영된 이미지를 완벽한 perspective view로 변환하는 calibration 단계가 수행될 수 있다.
둘째로, 카메라가 바닥을 수직으로 비추지 않는 경우에, 촬영된 이미지가 마치 바닥에 대하여 수직으로 촬영한 것과 같은 이미지로 변환하는 flooring 단계가 수행될 수 있다.
셋째로, 복수의 카메라로부터 촬영 및 수집된 이미지들을 오차 없이 하나의 이미지로 합쳐주는 stitching 단계가 수행될 수 있다.
컴퓨터는 상기한 각각의 단계에 따른 처리과정에 적용할 파라미터를 미리 결정할 수 있으며, 결정된 파라미터에 기반하여 전처리를 수행함으로써 촬영된 이미지로부터 이동체(10)의 실제 위치를 정확히 판단할 수 있다.
또한, 이동체(10)의 위치를 정확하게 판단하기 위하여 타임 딜레이에 대한 보정단계가 수행될 수 있다.
예를 들어, 컴퓨터는 관제 프로그램에 기반하여 이동체(10)의 위치를 정확하게 판단하기 위해 아래와 같은 3가지 딜레이 요소를 고려하여 보정을 수행할 수 있다.
예를 들어, 3가지 딜레이 요소는 셔터 딜레이, 연산 딜레이 및 네트워크 딜레이를 포함할 수 있으나, 이에 제한되는 것은 아니다.
예를 들어, 연산 딜레이 및 네트워크 딜레이는 두 엔티티 간에 동기화(TimeSync) 패킷을 주고받으면서 계산할 수 있다.
또한, 카메라에만 존재하는 셔터 딜레이의 경우 상기한 연산 및 네트워크 딜레이에 대한 보정을 먼저 수행한 후, 카메라가 촬영한 이미지의 시각과 카메라 모듈이 인식한 시각의 차이에 따라 판단할 수 있다.
이하에서는, 타임 딜레이를 보정하는 방법을 구체적으로 설명한다.
우선, 이동체(10)의 위치를 정확하게 판단하기 위하여 사전에 시간 동기화 작업이 필요할 수 있다. 시간 동기화 작업은 카메라 모듈(예: 천장에 설치된 카메라 모듈), 관제 프로그램 및 이동체(10)를 포함하는 세 가지 엔티티 사이에서 수행될 수 있다.
예를 들어, 카메라를 통한 이동체(10)의 인식 과정은, 우선 카메라 모듈에서 이동체(10)의 모습을 촬영하여 인식하는 단계, 이에 탑재된 프로그램에서 영상 이미지를 획득하여 후처리하는 단계 및 이를 관제 프로그램에 전송하여 이미지 분석을 통해 이동체(10)의 위치를 파악하는 단계를 포함할 수 있다.
여기에서, 예를 들어 촬영으로부터 관제 프로그램에서 데이터를 확인할 때까지 100ms의 딜레이가 존재한다고 할 때, 그 사이 이동체(10)의 위치에 대해 20~30cm의 오차가 발생할 수 있다.
따라서, 시간 동기화가 정확하게 수행되지 않으면 수집한 데이터에 오차가 크게 발생할 수 있는 문제점이 있다.
발생할 수 있는 딜레이의 종류는 상술한 바와 같이 셔터 딜레이, 연산 딜레이 및 네트워크 딜레이를 포함할 수 있다.
첫째로, 셔터 딜레이는 카메라에서 이미지(예: 이동체)를 인식한 이후 카메라에 탑재된 프로그램에서 이에 대응하는 데이터를 획득할 때까지의 딜레이를 의미할 수 있다. 예를 들어, 셔터 딜레이는 카메라의 fps에 의한 지연 및 카메라 시스템에서 구동되는 프로그램 사이의 정보 전달에 필요한 시간에 따른 지연 등을 포함할 수 있으나, 이에 제한되지 않는다.
즉, 셔터 딜레이는 상술한 세 가지 엔티티(카메라 모듈, 관제 프로그램 및 이동체) 중 카메라 모듈과 관제 프로그램 사이에서 발생한다.
둘째로, 연산 딜레이는 데이터를 획득한 후 이를 네트워크에 보내기 위한 프로세싱에 수행되는 시간에 따른 지연을 의미할 수 있다.
셋째로, 네트워크 딜레이는 가공된 데이터를 네트워크를 통해 전송하는 데 발생하는 지연을 의미할 수 있다.
상술한 연산 딜레이 및 네트워크 딜레이를 측정하기 위하여, 컴퓨터는 두 엔티티(예: 카메라 모듈 및 관제 프로그램) 간의 네트워크가 맺어진 후 서로 일정 개수의 TimeSync 패킷을 일정 시간동안 주고받도록 할 수 있다.
컴퓨터는 패킷을 통해 패킷을 보낸 시간, 받은 시간 및 이에 따른 응답을 받은 시간을 측정할 수 있다. 컴퓨터는 이 시간들의 간격을 denoising (예: kalman filter를 사용함) 처리하여 연산 딜레이 및 네트워크 딜레이를 합한 시간을 결정할 수 있다. 이에 따라, local timestamp에 결정된 딜레이를 합산하여 remote의 시간을 판단할 수 있다.
상술한 셔터 딜레이를 측정하기 위해서는, 이를 수행하기 위한 모바일 애플리케이션이 이용될 수 있다. 해당 애플리케이션은 관제 프로그램과 연결되어, 시간 동기화를 통해 얻은 관제 프로그램의 시간을 화면에 출력할 수 있다.
이를 통하여, 컴퓨터는 애플리케이션과 관제 프로그램 간의 시간 동기화를 수행하고, 관제 프로그램과 카메라 사이의 시간 동기화를 수행할 수 있다. 이를 통하여 모든 엔티티에서 관제 프로그램의 시간을 알 수 있다.
이후, 애플리케이션 화면이 카메라에 의하여 촬영될 수 있도록 배치한 후, 관제 프로그램의 시각(카메라 모듈에서 이미지를 인식한 시각으로서, 관제 프로그램과 동기화된 시간을 기준으로 판단)과 애플리케이션 화면에 표시되는 시각(카메라에 의하여 촬영된 애플리케이션 화면에 표시되는 시간)의 차이를 계산함으로써 셔터 딜레이를 측정할 수 있다.
셔터 딜레이는 촬영된 애플리케이션 화면에 표시되는 시간을 인식하여 자동으로 측정될 수도 있으나, 실시 예에 따라 육안으로 시간을 인식하여 측정될 수도 있다.
셔터 딜레이는 카메라 설치 과정에서 한 차례 측정된 후, 고정된 상수값으로서 활용될 수 있으나, 이에 제한되는 것은 아니다. 특히 자동으로 셔터 딜레이가 측정되는 경우, 셔터 딜레이는 소정의 간격으로 업데이트될 수도 있다.
상술한 방법에 의하여 측정된 셔터 딜레이, 연산 딜레이 및 네트워크 딜레이의 합을 통해, 관제 프로그램에서 이동체(10)를 촬영한 이미지를 획득한 경우 이에 대응하는 시각을 정확하게 특정할 수 있으며, 해당 시각에서의 이동체(10)의 위치를 정확하게 판단할 수 있다.
상기한 방법들에 기반하여, 이동체(10)에 전달되는 제어 명령(st, th) 및 이동체(10)의 위치 및 방향정보(x, y, θ)를 포함하는 로우 데이터(raw data)가 수집될 수 있다.
수집된 데이터는 각각의 데이터가 수집된 시간이 일치하지 않고, 또한 학습에 필요한 형태를 갖추고 있지 못할 수 있다. 이러한 경우 수집된 로우 데이터를 필요한 형태로 가공하여 이용할 수 있다.
일 실시 예에서, 상술한 제어 명령을 획득하는 단계에서, 컴퓨터는 상기 제어 명령을 포함하는 제어신호가 상기 이동체에 전달되는 시점에 대한 정보를 획득하는 단계를 수행할 수 있다.
또한, 상술한 이동결과에 대한 정보를 획득하는 단계에서, 컴퓨터는 상기 시점에 대한 상기 이동체의 이동결과에 대한 정보를 획득하는 단계를 수행할 수 있다.
즉, 컴퓨터는 각각의 제어 명령이 이동체에 전달된 시점과, 해당 시점의 이동체의 이동 결과에 대한 정보를 매칭할 수 있으며, 또한 이동체의 이동 결과에 대한 로우 데이터를 가공하여 필요한 정보를 산출할 수 있다.
일 실시 예에서, 상술한 이동결과에 대한 정보를 획득하는 단계에서, 컴퓨터는 상기 이동체의 시간별 속도를 산출하는 단계 및 상기 이동체의 시간별 회전 각속도(yaw rate)를 산출하는 단계를 수행할 수 있다.
이에 따라, 컴퓨터는 시간별로 시각(t), 제어명령(st, th), 이동체의 위치 및 방향(x, y, θ), 이동체의 속도(vx, vy), 이동체의 회전 각속도(yaw rate) 등의 데이터를 획득할 수 있다.
일 실시 예에서, 컴퓨터는 단계 S110 및 단계 S120을 통해 상술한 데이터 수집방법을 자동으로 수행할 수 있다. 예를 들어, 컴퓨터는 이동체의 이동을 위한 하나 이상의 기 저장된 시나리오를 이용할 수 있다. 예를 들어, 시나리오는 RC카의 기 저장된 주행경로(주행패턴)를 의미할 수 있다. 컴퓨터는 기 저장된 시나리오에 기반하여 제어 명령을 획득하며, 획득된 제어 명령을 RC카에 전달하여 주행시키고, 주행에 따른 이동 결과를 수집하며, 수집된 정보를 이용하여 데이터를 산출 및 획득할 수 있다.
시나리오에 따른 주행시마다 상술한 파라미터들을 포함하는 데이터가 파일로 저장되며, 이는 인공지능 모델의 학습을 위한 학습 데이터로 활용될 수 있다.
또한, 데이터는 이동체의 종류 및 이동체의 이동 환경(예를 들어, RC카의 기종 및 주행하는 바닥의 재질이나 상태 등)을 포함하는 조건에 따라 상이하게 수집될 수 있으며, 이에 기반하여 조건별로 상이한 인공지능 모델이 학습될 수 있다.
다른 예로, 도 3을 참조하면 이동체의 3차원 이동결과에 대한 정보를 수집하는 방법의 일 예가 도시되어 있다.
일 실시 예에서, 상술한 이동결과에 대한 정보를 획득하는 단계에서, 컴퓨터는 상기 이동체의 위치정보 및 상기 이동체의 방향정보를 획득하는 단계를 수행할 수 있다.
예를 들어, 컴퓨터는 도 3에 도시된 바와 같이 이동체(10)의 위치(x, y, z) 및 방향정보를 수집할 수 있으며, 이는 3차원 좌표계에 기반한 좌표와 각도 형태로 수집될 수 있다.
예를 들어, 이동체(10)가 드론과 같이 3차원 이동이 가능한 경우, 컴퓨터는 도 3에 도시된 바와 같이 3차원 좌표계에 기반하여 이동체(10)의 이동결과에 대한 정보를 수집할 수 있다.
단계 S130에서, 컴퓨터는 상기 제어 명령 및 상기 이동결과에 대한 정보에 기초하여, 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 인공지능 모델을 학습시킨다.
일 실시 예에서, 상술한 인공지능 모델을 학습시키는 단계에서 컴퓨터는 하나 이상의 시점에 대한 학습 데이터를 획득하는 단계를 수행할 수 있다. 일 실시 예에서, 학습 데이터는 상기 하나 이상의 시점 각각에 대하여 상기 이동체에 전달된 제어신호에 포함된 제어명령과, 상기 이동체의 이동결과에 대한 정보를 포함할 수 있다. 제어명령 및 이동결과에 대한 정보는 상술한 다양한 파라미터들에 기반하여 표현될 수 있다.
또한, 컴퓨터는 상기 학습 데이터를 이용하여 딥 러닝에 기반한 학습을 수행함으로써, 상기 이동체에 제공되는 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 인공지능 모델을 학습시킬 수 있다.
일 실시 예에서, 인공지능 모델의 학습은 Recurrent State Space Model 기반의 Deep learning 모델 학습을 통해 수행될 수 있으나, 이에 제한되는 것은 아니다.
Recurrent State Space Model은 RNN을 기초로 하는 모델로서, 시간의 흐름에 따른 데이터를 기반으로 하여 다음 time step의 car dynamics를 모델링하기 위하여 이용된다. 또한, car dynamics를 모델링함에 있어서 관찰하지 못한 잠재적인(latent) 상태 파라미터를 상정하고, 데이터를 통해 이를 학습할 수 있다. 일 실시 예에서, 잠재적인 상태 파라미터는 시간의 흐름에 따라서 deterministic 또는 stochastic한 속성을 가지도록 모델링될 수 있다.
일 실시 예에서, 학습에 대한 목표(cost function)를 계산함에 있어서 이번 시점의 예측 결과(time step prediction)의 정확성만을 고려하는 것이 아니고, 장기 예측(long-time prediction)의 성능을 위하여 몇 단계 이후의 예측 정확성에 대한 정보 또한 포함(latent overshooting)시킬 수 있다.
제한되지 않는 예로서, 인공지능 모델의 학습을 위하여 설정되는 입력값은 시간(t), 제어명령(st, th), 이동체의 속도(vx, vy) 및 이동체의 각속도(yaw rate)의 파라미터를 포함할 수 있다. 일 실시 예에서, 시간의 흐름(예를 들어, 기 설정된 일정한 시간 주기)에 따라 획득되는 일련의 입력값들이 인공지능 모델의 학습에 활용될 수 있다.
인공지능 모델은 상기한 입력값을 포함하는 학습 데이터에 기반하여 학습되며, 학습 결과로서 시간(t)과 제어명령(st, th)이 주어졌을 때, 이에 따른 이동체의 속도(vx, vy) 및 각속도를 추정하는 머신러닝 모델 혹은 이를 구성하는 파라미터를 획득할 수 있다.
도 4는 일 실시 예에 따라 학습된 인공지능 모델을 이용하는 방법을 도시한 흐름도이다.
단계 S210에서, 컴퓨터는 상기 이동체에 대한 일련의 제어 명령을 획득하는 단계를 수행할 수 있다.
일 실시 예에서, 일련의 제어 명령은 이동체에 전달되어 이동체가 특정한 목적에 따라 주행가능하도록 제어하기 위하여 설정된 제어 명령을 의미할 수 있다.
일 실시 예에서, 제어명령은 상술한 (st, th) 정보를 포함할 수 있으며, 실시 예에 따라 해당 제어명령이 이동체에 전달되는 시점(t)에 대한 정보를 더 포함할 수 있다.
단계 S220에서, 컴퓨터는 상기 인공지능 모델을 이용하여, 상기 일련의 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 단계를 수행할 수 있다.
일 실시 예에서, 컴퓨터는 기 학습된 인공지능 모델을 로드하거나, 기 학습된 인공지능 모델의 파라미터를 적용하여 기 학습된 인공지능 모델을 획득할 수 있다.
일 실시 예에서, 컴퓨터는 학습된 인공지능 모델에 제어명령(st, th) 정보를 입력하고, 인공지능 모델의 출력으로부터 제어명령(st, th)에 대응하는 시점의 이동체의 속도(vx, vy) 및 각속도 정보를 획득할 수 있다.
단계 S230에서, 컴퓨터는 상기 추정 결과에 기초하여 상기 일련의 제어 명령에 따른 상기 이동체의 시뮬레이션 정보를 생성하는 단계를 수행할 수 있다.
즉, 컴퓨터는 이동체에 제어명령이 전달되었을 경우 이동체가 해당 제어명령에 따라 실제로 이동하였을 모습을 단계 S220에서 획득된 정보에 기초하여 시뮬레이션할 수 있다.
실시 예에 따라, 컴퓨터는 시뮬레이션 정보를 표시할 수 있고, 이에 따라 가상의 이동체가 제어명령에 따라 이동하는 영상이 표시수단을 통해 표시될 수 있다.
일 실시 예에서, 컴퓨터는 시뮬레이션에 따른 가상의 이동체의 이동결과에 대한 정보를 수집하여 저장할 수 있다.
수집된 정보는 이동체의 주행 제어를 위한 인공지능 모델의 학습에 활용될 수 있다.
도 5는 일 실시 예에 따른 이동체의 주행 제어를 위한 인공지능 모델의 강화학습 방법을 도시한 흐름도이다.
단계 S310에서, 컴퓨터는 상기 이동체의 이동 목표정보를 획득할 수 있다.
예를 들어, 이동체의 이동 목표정보는 이동체를 이동시키고자 하는 이동경로 혹은 패턴에 대한 정보를 포함할 수 있으나, 이에 제한되는 것은 아니다.
도 6을 참조하면, 이동체(10) 및 이동체(10)를 주행시키고자 하는 이동 목표정보(20)에 대응하는 주행경로가 도시되어 있다.
단계 S320에서, 컴퓨터는 제2 인공지능 모델을 이용하여 상기 이동 목표정보에 대응하는 상기 일련의 제어 명령을 획득할 수 있다.
일 실시 예에서, 제어 명령은 이동 목표정보(20)에 따른 주행을 가능케 하기 위하여 이동체(10)에 기 설정된 시간 주기로 전달되도록 설정되며, 이에 따라 컴퓨터는 기 설정된 시간 주기로 일련의 제어 명령을 획득할 수 있다.
일 실시 예에서, 컴퓨터는 획득된 일련의 제어 명령을 이용하여 상술한 바와 같이 이동체의 이동 시뮬레이션을 수행할 수 있다.
단계 S330에서, 컴퓨터는 상기 시뮬레이션 정보를 상기 이동 목표정보와 비교할 수 있다.
도 6을 참조하면, 시뮬레이션을 통하여 획득된 이동체(10)의 시뮬레이션 정보(30)에 대응하는 주행경로가 도시되어 있다.
컴퓨터는 시뮬레이션 정보와 이동 목표정보를 비교할 수 있으며, 이를 비교하는 구체적인 방법은 제한되지 않으나, 예를 들어 주행 결과에 따른 주행경로를 비교하거나, 각 시점에서의 이동체(10)의 위치 혹은 움직임을 비교할 수 있다.
단계 S340에서, 컴퓨터는 상기 비교 결과에 기초하여 상기 제2 인공지능 모델에 대한 강화학습을 수행할 수 있다.
강화학습을 통해, 컴퓨터는 이동체(10)가 기 설정된 목표대로 주행가능하도록 하는 제어명령을 생성하는 제2 인공지능 모델을 더욱 고도화할 수 있다.
도 7은 일 실시 예에 따른 장치의 구성도이다.
프로세서(102)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.
일 실시예에 따른 프로세서(102)는 메모리(104)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 1 내지 도 6과 관련하여 설명된 방법을 수행한다.
한편, 프로세서(102)는 프로세서(102) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(102)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.
메모리(104)에는 프로세서(102)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(104)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.

Claims (10)

  1. 컴퓨터에 의하여 수행되는 방법에 있어서,
    이동체에 대한 제어 명령을 획득하는 단계;
    상기 제어 명령에 따른 상기 이동체의 실제 이동결과에 대한 정보를 획득하는 단계; 및
    상기 제어 명령 및 상기 이동결과에 대한 정보에 기초하여, 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 인공지능 모델을 학습시키는 단계; 를 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  2. 제1 항에 있어서,
    상기 제어 명령을 획득하는 단계는,
    상기 이동체의 추진력을 제어하는 제어명령을 획득하는 단계; 및
    상기 이동체의 조향을 제어하는 제어명령을 획득하는 단계; 를 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  3. 제1 항에 있어서,
    상기 이동결과에 대한 정보를 획득하는 단계는,
    상기 이동체의 위치정보 및 상기 이동체의 방향정보를 획득하는 단계; 를 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  4. 제3 항에 있어서,
    상기 이동결과에 대한 정보를 획득하는 단계는,
    상기 이동체의 시간별 속도를 산출하는 단계; 및
    상기 이동체의 시간별 회전 각속도(yaw rate)를 산출하는 단계; 를 더 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  5. 제1 항에 있어서,
    상기 제어 명령을 획득하는 단계는,
    상기 제어 명령을 포함하는 제어신호가 상기 이동체에 전달되는 시점에 대한 정보를 획득하는 단계; 를 포함하고,
    상기 이동결과에 대한 정보를 획득하는 단계는,
    상기 시점에 대한 상기 이동체의 이동결과에 대한 정보를 획득하는 단계; 를 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  6. 제5 항에 있어서,
    상기 인공지능 모델을 학습시키는 단계는,
    하나 이상의 시점에 대한 학습 데이터 - 상기 학습 데이터는 상기 하나 이상의 시점 각각에 대하여 상기 이동체에 전달된 제어신호에 포함된 제어명령과, 상기 이동체의 이동결과에 대한 정보를 포함함 - 를 획득하는 단계; 및
    상기 학습 데이터를 이용하여 딥 러닝에 기반한 학습을 수행함으로써, 상기 이동체에 제공되는 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 인공지능 모델을 학습시키는 단계; 를 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  7. 제1 항에 있어서,
    상기 이동체에 대한 일련의 제어 명령을 획득하는 단계;
    상기 인공지능 모델을 이용하여, 상기 일련의 제어 명령에 따른 상기 이동체의 실제 이동결과를 추정하는 단계; 및
    상기 추정 결과에 기초하여 상기 일련의 제어 명령에 따른 상기 이동체의 시뮬레이션 정보를 생성하는 단계; 를 더 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  8. 제7 항에 있어서,
    상기 일련의 제어 명령을 획득하는 단계는,
    상기 이동체의 이동 목표정보를 획득하는 단계; 및
    제2 인공지능 모델을 이용하여 상기 이동 목표정보에 대응하는 상기 일련의 제어 명령을 획득하는 단계; 를 포함하고,
    상기 시뮬레이션 정보를 생성하는 단계는,
    상기 시뮬레이션 정보를 상기 이동 목표정보와 비교하는 단계; 및
    상기 비교 결과에 기초하여 상기 제2 인공지능 모델에 대한 강화학습을 수행하는 단계; 를 더 포함하는,
    제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법.
  9. 하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
    제1 항의 방법을 수행하는, 장치.
  10. 하드웨어인 컴퓨터와 결합되어, 제1 항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.
KR1020200000595A 2020-01-03 2020-01-03 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램 KR20210087631A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200000595A KR20210087631A (ko) 2020-01-03 2020-01-03 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200000595A KR20210087631A (ko) 2020-01-03 2020-01-03 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램

Publications (1)

Publication Number Publication Date
KR20210087631A true KR20210087631A (ko) 2021-07-13

Family

ID=76858646

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200000595A KR20210087631A (ko) 2020-01-03 2020-01-03 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램

Country Status (1)

Country Link
KR (1) KR20210087631A (ko)

Similar Documents

Publication Publication Date Title
US11392146B2 (en) Method for detecting target object, detection apparatus and robot
EP3583380B1 (en) Shape estimating apparatus
CN105760824B (zh) 一种运动人体跟踪方法和系统
JP6744679B2 (ja) ヒューマンマシンハイブリッド意思決定方法および装置
CN106104203B (zh) 一种移动物体的距离检测方法、装置及飞行器
US20190325597A1 (en) Simultaneous Localization And Mapping Constraints In Generative Adversarial Networks For Monocular Depth Estimation
CN112925223B (zh) 基于视觉传感网络的无人机三维跟踪虚拟测试仿真系统
US10564640B2 (en) System and method for sensing the driving environment of a motor vehicle
US11257309B2 (en) Systems and methods to test an autonomous vehicle
US20150139505A1 (en) Method and apparatus for predicting human motion in virtual environment
KR20130101942A (ko) 자세 인식 방법 및 장치
CN112580582B (zh) 动作学习方法、装置、介质及电子设备
EP3722906A1 (en) Device motion control
US20160277646A1 (en) Automatic device operation and object tracking based on learning of smooth predictors
US11080562B1 (en) Key point recognition with uncertainty measurement
US20220383576A1 (en) Binocular pose prediction
Butt et al. Camera calibration through camera projection loss
EP4244818A1 (en) Disambiguation of poses
JP2020118575A (ja) 車間距離測定装置、誤差モデル生成装置および学習モデル生成装置とこれらの方法およびプログラム
JP2020149186A (ja) 位置姿勢推定装置、学習装置、移動ロボット、位置姿勢推定方法、学習方法
KR102224693B1 (ko) 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램
KR20210087631A (ko) 제어 명령에 따른 이동체의 이동결과 추정을 위한 인공지능 모델 학습방법, 장치 및 프로그램
CN112291701B (zh) 定位验证方法、装置、机器人、外部设备和存储介质
RU2685996C1 (ru) Способ и система предиктивного избегания столкновения манипулятора с человеком
US11767034B2 (en) System and method of computation acceleration for autonomous driving systems