[go: up one dir, main page]

KR102460825B1 - 위치 추정 방법 및 시스템 - Google Patents

위치 추정 방법 및 시스템 Download PDF

Info

Publication number
KR102460825B1
KR102460825B1 KR1020200110001A KR20200110001A KR102460825B1 KR 102460825 B1 KR102460825 B1 KR 102460825B1 KR 1020200110001 A KR1020200110001 A KR 1020200110001A KR 20200110001 A KR20200110001 A KR 20200110001A KR 102460825 B1 KR102460825 B1 KR 102460825B1
Authority
KR
South Korea
Prior art keywords
voxel
information
laser
feature vector
voxels
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020200110001A
Other languages
English (en)
Other versions
KR20220028684A (ko
Inventor
장민영
연수용
유수현
이동환
Original Assignee
네이버랩스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버랩스 주식회사 filed Critical 네이버랩스 주식회사
Priority to KR1020200110001A priority Critical patent/KR102460825B1/ko
Priority to JP2022550893A priority patent/JP7416968B2/ja
Priority to PCT/KR2020/012697 priority patent/WO2022045431A1/ko
Publication of KR20220028684A publication Critical patent/KR20220028684A/ko
Priority to US17/814,715 priority patent/US12175692B2/en
Application granted granted Critical
Publication of KR102460825B1 publication Critical patent/KR102460825B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/46Indirect determination of position data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/50Systems of measurement based on relative movement of target
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • G01S17/8943D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/481Constructional features, e.g. arrangements of optical elements
    • G01S7/4817Constructional features, e.g. arrangements of optical elements relating to scanning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots 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, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING OR 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 OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING OR 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 OR 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]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Optics & Photonics (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Optical Radar Systems And Details Thereof (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 로봇을 포함하는 디바이스에 대한 위치 추정 방법 및 시스템에 관한 것이다. 위에서 살펴본 과제를 해결하기 위하여 본 발명에 따른 위치 추정 방법은, 기준 영역에서 출력되는 레이저를 이용하여, 주변 공간을 스캔하는 단계, 상기 레이저에 대한 반사 신호에 근거하여, 상기 주변 공간에 대한 공간 정보를 처리하는 단계, 상기 공간 정보를 포함하는 공간 벡터를 입력 데이터로 하는 딥러닝 네트워크를 이용하여, 상기 공간 정보가 반영된 특징 벡터를 추출하는 단계 및 기 특정된 참조 맵 데이터와 상기 특징 벡터를 비교하여, 상기 기준 영역에 대한 위치 정보를 추정하는 단계를 포함할 수 있다.

Description

위치 추정 방법 및 시스템{METHOD AND SYSTEM FOR LOCALIZATION}
본 발명은 디바이스에 대한 위치 추정 방법 및 시스템에 관한 것이다.
기술이 발전함에 따라, 다양한 서비스 디바이스들이 나타나고 있으며, 특히 최근에는 다양한 작업 또는 서비스를 수행하는 로봇에 대한 기술 개발이 활발하게 이루어지고 있다.
나아가 최근에는, 인공 지능 기술, 클라우드 기술 등이 발전함에 따라, 로봇의 활용도가 점차적으로 높아지고 있다.
한편, 로봇으로 다양한 작업 또는 서비스를 제공하기 위해서는, 로봇의 현재 위치를 정확하게 파악하는 것이 매우 중요한 요소이다. 이에, 로봇을 포함하는 디바이스의 위치를 추정하기 위한 다양한 연구들이 이루어지고 있다.
예를 들어, 위치를 추정하기 위한 기술로는 대한민국등록특허 10-1925862호(3차원 라이다(LiDAR)를 이용한 실시간 3차원 지도 생성 방법 및 장치)와 같이, 라이다를 이용하여, 주변 환경에 대한 정보를 획득하고, 이를 복셀(voxel)로 표현하여 얻어진 고유 벡터를 기반으로 현재 위치를 추정하는 기술 등이 존재한다.
한편, 최근에는, 실내 공간(예를 들어, 공항, 백화점 등)에서도 로봇의 활용도가 점차적으로 높아지고 있으며, 이에 따라, 실내 공간에서도 정확하게 로봇의 위치를 추정할 수 있는 기술에 대한 니즈가 존재한다. 특히, 실내 공간의 경우, 실외에 비하여 공간이 협소하고, 사람의 이동, 구조물과 같은 오브젝트(object)의 존재에 의하여 혼잡도가 높으며, 이에 따라 종래의 위치 추정 방법 만으로는 그 정확도가 낮아지는 문제가 발생할 수 있다. 이에, 사람의 움직임, 구조물 등에 의하여 실내 공간에 대한 폐색이 발생하더라도 정확하게 로봇의 현재 위치를 추정할 수 있는 기술 개발이 필요하다.
본 발명은 실내 공간에서 로봇 등과 같은 디바이스의 위치를 정확하게 파악할 수 있는 위치 추정 방법 및 시스템을 제공하는 것이다.
나아가, 본 발명은 실내 공간에서 위치 추정의 한계를 극복할 수 있는 새로운 방식의 데이터 처리 방법을 제안할 수 있는 위치 추정 방법 및 시스템을 제공하는 것이다.
보다 구체적으로 본 발명은 사람, 구조물과 같은 오브젝트의 특성을 고려할 수 있는 포인트 클라우드(point cloud) 기반의 위치 추정 방법 및 시스템을 제공하는 것이다.
나아가, 본 발명은, 라이다 기반의 위치 인식 알고리즘의 성능을 높일 수 있는 딥러닝 네트워크를 제공하기 위한 것이다. 보다 구체적으로, 본 발명은 보다 정확한 위치를 추정하기 위하여, 딥러닝 네트워크에 입력되는 입력 데이터에 대한 새로운 방식의 전처리 방법을 제공하기 위한 것이다.
위에서 살펴본 과제를 해결하기 위하여 본 발명에 따른 위치 추정 방법은, 기준 영역에서 출력되는 레이저를 이용하여, 주변 공간을 스캔하는 단계, 상기 레이저에 대한 반사 신호에 근거하여, 상기 주변 공간에 대한 공간 정보를 처리하는 단계, 상기 공간 정보를 포함하는 공간 벡터를 입력 데이터로 하는 딥러닝 네트워크를 이용하여, 상기 공간 정보가 반영된 특징 벡터를 추출하는 단계 및 기 특정된 참조 맵 데이터와 상기 특징 벡터를 비교하여, 상기 기준 영역에 대한 위치 정보를 추정하는 단계를 포함하고, 상기 공간 정보를 처리하는 단계에서는, 상기 주변 공간에 위치한 오브젝트에 상기 레이저가 도달하여 반사되는 상기 반사 신호에 근거하여, 상기 주변 공간에 대응되는 구면 좌표(spherical coordinate) 상의 복수의 복셀(VOXEL)에 대해 상기 오브젝트의 점유 상태와 관련된 점유 정보를 할당하는 것을 특징으로 한다.
나아가, 본 발명에 따른 위치 추정 시스템은, 레이저를 이용하여, 기준 영역을 기준으로 주변 공간을 스캔부, 상기 레이저에 대한 반사 신호에 근거하여, 상기 주변 공간에 대한 공간 정보를 처리하는 처리부, 상기 공간 정보를 포함한 공간 벡터를 입력 데이터로 하는 딥러닝 네트워크를 이용하여, 상기 공간 정보가 반영된 특징 벡터를 추출하는 딥러닝부 및 기 특정된 참조 맵 데이터와 상기 특징 벡터를 비교하여, 상기 기준 영역에 대한 위치 정보를 추정하는 제어부를 포함하고, 상기 처리부는, 상기 주변 공간에 위치한 오브젝트에 상기 레이저가 도달하여 반사되는 상기 반사 신호에 근거하여, 구면 좌표(spherical coordinate) 상의 복수의 복셀(VOXEL)에 대해 상기 오브젝트의 점유 상태와 관련된 점유 정보를 할당하는 것을 특징으로 한다.
위에서 살펴본 것과 같이, 본 발명에 따른 위치 추정 방법 및 시스템은, 레이저에 대한 반사 신호에 근거하여, 오브젝트의 점유 상태와 관련된 정보를 복셀 상에 나타낼 수 있다. 이때, 본 발명은, 구면 좌표(spherical coordinate) 상의 복셀로 공간을 분할함으로써, 구면 좌표 상의 복셀 상에 레이저의 방사 특성을 보다 정확하게 반영 수 있고, 결과적으로 보다 정확한 위치를 추정할 수 있다.
나아가, 본 발명은, 오브젝트의 점유 상태와 관련된 정보를 나타낼 때에, 레이저가 미도달한 공간에 대한 점유 상태를 새롭게 정의함으로써, 사람, 구조물 등과 같은 오브젝트 등에 의하여 폐색된 공간을 추가적으로 고려할 수 있다. 이 경우, 레이저가 미도달한 공간의 점유 정보는, 레이저가 통과하거나, 레이저가 반사된 영역의 점유 정보와 다른 점유 정보로 정의될 수 있다. 이와 같이, 본 발명은 폐색된 공간을 추가적으로 고려하여 위치 추정을 수행함으로써, 실내 공간에서도 정확도 높은 위치 추정을 수행할 수 있다.
한편, 본 발명은, 특정 복셀 뿐만 아니라, 특정 복셀을 둘러싼 공간에 대한 정보를 함께 반영할 수 있는 Integrator를 포함하는 딥러닝 네트워크를 제안함으로써, 위치 추정의 대상이 되는 공간의 특성을 종합적으로 고려할 수 있으며, 결과적으로 위치 추정의 성능을 높일 수 있다.
도 1 및 도 2는 본 발명에 따른 위치 추정 방법 및 시스템을 설명하기 위한 개념도들이다.
도 3 및 도 4는 본 발명에 따른 위치 추정 방법에서 구면 좌표계를 활용하는 방법을 설명하기 위한 개념도들이다.
도 5는 본 발명에 따른 위치 추정 방법을 설명하기 위한 흐름도이다.
도 6a, 도 6b, 도 7a, 도 7b, 도 8a 및 도 8b는 본 발명에 따른 위치 추정 방법 및 시스템에서, 점유 상태를 정의하는 방법을 설명하기 위한 개념도들이다.
도 9a, 도 9b 및 도 9c는 본 발명에 따른 위치 추정 방법 및 시스템에서의 딥러닝 네트워크 구조를 설명하기 위한 개념도들이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
위에서 살펴본 것과 같이, 본 발명은 실내 공간에서 로봇 등과 같은 디바이스의 위치를 정확하게 파악할 수 있는 위치 추정 방법 및 시스템을 제공하는 것이다. 특히, 본 발명은, 실내 공간에서 위치 추정의 한계를 극복할 수 있는 새로운 방식의 데이터 처리 방법을 제안할 수 있는 위치 추정 방법 및 시스템을 제공하는 것이다.
보다 구체적으로 본 발명은 사람, 구조물과 같은 오브젝트(object)의 특성을 고려할 수 있는 포인트 클라우드(point cloud) 기반의 위치 추정 방법 및 시스템을 제공하는 것이다. 본 발명에서는, 라이다(LiDAR: Light Detection And Ranging)를 이용하여, 위치를 추정하는 방법을 제안한다.
한편, 본 발명에서 “위치를 추정”한다는 것은, “위치를 찾는다”, “위치를 특정한다”, “위치를 검색한다”, “위치를 확인한다” 등과 같이, 다양한 표현으로 대체될 수 있으며, 설명의 편의를 위하여, “추정”이라는 표현으로 통일하여 기재하도록 한다.
본 발명에서는, 라이다에서 출력되는 레이저(laser) 및 레이저가 오브젝트에 도달하여 반사되는 반사신호에 기반하여, 공간에 배치된 오브젝트를 감지함으로써, 공간적인 특성을 감지하고, 이를 기 특정된 참조 맵(map)과 비교함으로써, 레이저가 출력된 영역에 대한 위치 정보를 추정한다.
한편, 본 발명의 요지를 흐리지 않기 위하여, 라이다에 대한 기술적인 설명 및 오브젝트를 감지하는 기술적인 설명은 본 명세서에서는 생략하도록 한다.
한편, 본 발명에서 사용되는 “오브젝트”의 용어는, 라이다에 의해 센싱의 대상이되는 공간에 배치된 사물을 의미하는 것으로서, 사람, 동물 및 물체를 모두 포함하는 개념으로 이해되어 질 수 있다. 즉, 오브젝트는, “사물(事物)”로 이해되어 질 수 있다.
나아가, 본 발명에서, 추정의 대상이되는 위치(또는 장소, 영역)는, 레이저를 출력하는 센서(또는 라이다)의 위치를 포함하는 영역으로 이해되어 질 수 있다.
이때, 라이다는, 디바이스 내에 구비될 수 있으며, 라이다를 구비하는 디바이스의 종류는 매우 다양할 수 있다. 즉, 디바이스는, 라이다를 구비할 수 있기만 하면, 그 종류에는 무관한다. 예를 들어, 디바이스는, 로봇(robot), 무인 이동 머신, 자율 이동 머신 등이 존재할 수 있다.
일 예로서, 라이다가 로봇에 구비한 경우, 본 발명에 따른 위치 추정 방법 및 시스템은 “로봇의 위치를 추정한다”라고 표현될 수 있다.
한편, 본 발명은, 실내 공간의 특성을 반영하여, 보다 정확한 위치를 추정하는 방법 및 시스템에 관한 것으로서, 이하에서는 첨부된 도면과 함께 본 발명에 대하여 보다 구체적으로 살펴본다. 도 1 및 도 2는 본 발명에 따른 위치 추정 방법 및 시스템을 설명하기 위한 개념도들이고, 도 3 및 도 4는 본 발명에 따른 위치 추정 방법에서 구면 좌표계를 활용하는 방법을 설명하기 위한 개념도들이다.
도 1에 도시된 것과 같이, 본 발명은 라이다(11)가 구비된 디바이스(10)의 위치를 추정하는 것으로서, 이하에서는 설명의 편의를 위하여, “라이다(11)가 구비된 디바이스(10)의 위치를 추정”을 “디바이스(10)의 위치를 추정”한다고 표현하기로 한다.
본 발명은, 디바이스(10)가 위치한 공간(또는 주변 공간, 20)을 라이다(11)를 이용하여 스캔한 후, 스캔 결과에 기반하여, 디바이스(10)의 위치를 추정할 수 있다. 한편, 디바이스(10)를 둘러싼 주변 공간(20)은 도시와 같이, 실내 공간일 수 있으며, 이러한 실내 공간은, 백화점, 공항, 학교, 빌딩, 지하철역, 기차역, 서점 등과 같이, 매우 다양한 종류의 공간일 수 있다.
한편, 이러한 실내 공간은, 실외에 비하여 절대적인 공간 자체가 협소하고, 사람(21, 23)의 움직임, 구조물 등에 의하여 공간에 대한 폐색이 발생하여, 디바이스(10)에서 주변 공간을 정확하게 센싱하지 못하는 경우가 발생할 수 있다. 이러한 경우, 디바이스(10)에서 센싱된 공간 정보는, 주변 공간에 대하여 미리 만들어진 참조 맵(map)과 상이한 결과를 가져올 수 있다. 예를 들어, 참조 맵(map)은, 사람이 아무도 없는 상태에서 공간에 대한 센싱에 기반하여 만들어질 수 있다. 이 경우, 도 1에 도시된 것과 같이, 공간(20)에 사람(21, 23)이 위치하는 경우, 참조 맵이 만들어진 동일한 공간(20)임에도 불구하고, 디바이스(10)에서는 사람(21, 23)의 존재로 인하여 참조맵과 상이한 공간 정보를 획득하게 될 수 있다. 이에, 본 발명에서는, 이러한 오브젝트의 존재에도 불구하고, 보다 정확하게 디바이스(10)의 위치를 추정할 수 있는 방법에 대하여 제안한다.
보다 구체적으로 도 2에 도시된 것과 같이, 본 발명에 따른 위치 추정 시스템(100)은, 스캔부(110), 처리부(120), 딥러닝부(130), 저장부(140) 및 제어부(150) 중 적어도 하나를 포함할 수 있다.
여기에서, 스캔부(110)는 디바이스(10)의 라이다(11)를 포함하는 것으로서, 라이다(11)에서 출력되는 레이저에 근거하여 디바이스(10)를 둘러싼 주변 공간을 스캔하도록 이루어질 수 있다.
처리부(120)는 스캔부(110)에서 주변 공간을 스캔하는 것에 근거하여, 주변 공간에 대한 정보를 처리하도록 이루어질 수 있다. 처리부(120)는, 레이저에 대한 반사 신호에 근거하여, 주변 공간에 대한 공간 정보를 처리하도록 이루어질 수 있다.
한편, 공간 정보는, 도 3에 도시된 것과 같이, 구면 좌표계(또는 구면 좌표, spherical coordinate) 상에 나타내어지는 정보로 이루어질 수 있다.
즉, 처리부(120)는, 스캔부(110)에서 스캔된 주변 공간에 대한 구조적인 정보(포인트 클라우드)를 구면 좌표 상의 복셀에 대한 정보로 인코딩 하도록 이루어질 수 있다.
여기에서, 구조적인 정보는, 오브젝트에 의하여 영역이 점유되고 있는지에 대한 정보를 포함하는 것으로서, 레이저가 오브젝트에 도달하고, 도달된 레이저가 반사되는 것에 근거하여 획득될 수 있다.
한편, 공간 정보는, 구면 좌표계를 형성하는 각각의 복셀(voxel)에 대한 점유 정보를 포함할 수 있다. 나아가, 점유 정보는, 각각의 복셀에 대하여 오브젝트에 대한 점유 상태와 관련된 정보로서, 이에 대해서는 뒷부분에서 구체적으로 살펴보도록 한다.
다음으로 딥러닝부(130)는, 공간 정보를 이용하여, 공간 정보에 대응되는 특징 벡터를 추출하도록 이루어질 수 있다.
딥러닝부(130)는 적어도 하나의 인공지능 알고리즘을 이용하여 특징 벡터를 추출하도록 이루어질 수 있다.
딥러닝부(130)는 딥러닝 네트워크를 포함하며, 이러한 딥러닝 네트워크는 적어도 하나의 데이터 전처리 모듈(또는 전처리기)을 포함할 수 있다.
보다 구체적으로, 본 발명의 딥러닝 네트워크는, 공간 정보에 대한 전처리를 수행하는 미세 특징 추출기(Fine Feature Extractor), 거친 특징 추출기(Coarse Feature Extractor) 및 적분기(integrator) 중 적어도 하나를 포함할 수 있다.
나아가, 본 발명에 따른 딥러닝부(130)는, 위에서 살펴본 전처리 모듈을 통과한 데이터를 NetVLAD에 입력하여, 특징 벡터를 추출할 수 있다.
여기에서, 특징 벡터는, 스캔부(110)에서 스캔된 주변 공간(또는 공간)에 대한 스캔 정보(또는 공간 정보)를 벡터로 표현한 것으로서, 이러한 특징 벡터는, 기 특정된 참조 맵과 비교되는 대상이 될 수 있다.
특징 벡터는, 다양한 용어로 명명될 수 있으며, 예를 들어, 글로벌 벡터(global vector), 글로벌 디스크립터 벡터(global descriptor vector)라고 명명될 수 있다.
한편, 기 특정된 참조 맵은 주변 공간에 대하여 사전에 구축된 복수의 벡터들을 포함할 수 있으며, 이러한 복수의 벡터들의 집합은 글로벌 디스크립터 세트(global descriptor set)라고 명명될 수 있다.
다음으로, 저장부(140)는, 본 발명과 관련된 다양한 정보를 저장하도록 이루어질 수 있다.
제어부(150)는 위에서 살펴본 구성 요소들 중 적어도 하나에 대한 제어를 수행하며, 본 발명에 따른 위치 추정을 위하여 전반적인 제어를 수행할 수 있다.
제어부(150)는, 딥러닝부(130)에서 추출된 특징 벡터와, 기 특정된 참조 맵을 비교하여, 위치 추정의 대상이 되는 기준 영역에 대한 위치 정보를 추정할 수 있다.
보다 구체적으로 제어부(150)는, 기 특정된 참조맵 데이터(예를 들어, 복수의 벡터들의 집합)와 특징 벡터를 비교하여, 기 특정된 참조맵 데이터에서, 상기 특징 벡터와 가장 가까운(또는 가장 유사한) 벡터를 특정할 수 있다. 그리고, 특정된 벡터에 매칭된 위치 정보를, 기준 영역에 대한 위치 정보로서 추정할 수 있다.
한편, 본 발명에서, 특징 벡터와의 비교 대상은, 기 특정된 참조 맵에 포함된 복수의 벡터들에 국한되지 않는다.
즉, 본 발명에서는, 기 특정된 참조 맵이 존재하지 않더라도, SLAM(Simultaneous Localization and Mapping) 기술에 기반하여 생성되는 맵과 특징 벡터를 비교하는 것 또한 가능하다. 이 경우, 제어부(150)는 스캔부(110)를 통해 스캔되는 정보에 기반하여, 공간(10)에 대한 맵을 생성하고, 생성된 맵을 구성하는 데이터 셋(set)(예를 들어, 복수의 벡터들의 집합으로 이루어짐)과 특징 벡터를 비교할 수 있다. 이 경우, 상기 생성된 맵을 구성하는 데이터 셋과 특징 벡터는, 단일 데이터 셋 내에 포함될 수 있다.
한편, 비록 도시되지는 않았지만, 본 발명에 따른 위치 추정 시스템(100)은 통신부를 더 포함하며, 통신부는, 스캔부(110)에 포함된 라이다(11)가 탑재된 디바이스(10)와 통신하도록 이루어질 수 있다.
나아가, 통신부는 적어도 하나의 외부 서버(또는 외부 저장소, 200)와 통신하도록 이루어질 수 있다. 여기에서, 외부 서버(200)는, 도시된 것과 같이, 클라우드 서버(210) 또는 데이터베이스(220) 중 적어도 하나를 포함하도록 구성될 수 있다. 한편, 외부 서버(200)에서는, 제어부(150)의 적어도 일부의 역할을 수행하도록 구성될 수 있다. 즉, 데이터 처리 또는 데이터 연산 등의 수행은 외부 서버(200)에서 이루어지는 것이 가능하며, 본 발명에서는 이러한 방식에 대한 특별한 제한을 두지 않는다.
한편, 본 발명에서 제어부(150)는 스캔부(110)를 통해 주변 공간을 스캔하기 위한 레이저가 출력되고, 레이저에 대한 반사 신호에 근거하여, 주변 공간에 대한 공간 정보가 처리되도록 처리부(120)를 제어할 수 있다.
이때, 공간 정보는, 반사 신호에 대응되는 것으로서, 제어부(150)는 이러한 공간 정보를 도 3에 도시된 것과 같이, 구면 좌표(300) 상의 정보로 나타낼 수 있다.
구면 좌표(300)의 원점(301)은, 도시와 같이, 레이저가 출력된 지점(11a)으로서, 스캔부(110)에 포함된 라이다(11)의 위치(11a)에 대응될 수 있다. 본 발명에서는, 레이저가 출력된 지점(11a)을 포함하는 영역을 “기준 영역”이라고 표현할 수 있다. 본 발명에서 추정의 대상이 되는 위치는 “기준 영역”을 포함하는 위치로 이해되어 질 수 있다.
구면 좌표(300) 상의 공간 정보는 원점(301)을 기준으로 i)원점에서의 거리(r), ii)z축과 이루는 각도(θ), 및 iii)x축과 이루는 각도(Φ)로 특정될 수 있다. 본 발명에서, 구면 좌표(300) 상의 원점은 레이저가 출력된 지점에 대응되며, 따라서, 기준 영역은 구면 좌표(300)의 원점(301)에 대응될 수 있다. 이에, 본 명세서에서는, 원점을 기준 영역이라고 혼용하여 사용하도록 한다.
본 발명에서는 편의상 i)원점에서의 거리(r)를 “반지름 거리(r)”로 명명하고, ii)z축과 이루는 각도(θ)는 “극각(θ)”, 및 iii)x축과 이루는 각도(Φ)는 “방사각(Φ)”으로 명명하도록 한다. 이때, 구면 좌표(300)상의 정보는, (r, θ, Φ)로 나타내어질 수 있다.
구면 좌표(300)상의 원점(301)은 (0, 0 ,0)에 해당하는 좌표를 가지며, 이는 레이저가 출력된 지점(11a)의 좌표일 수 있다.
도 3에 도시된 것과 같이, 라이다(11)에서 출력되는 레이저(12a, 12b, 12c, 12d, 12e, 12f) 각각은 공간에 위치한 오브젝트에서 반사된 지점을 기준으로, 구면 좌표(300) 상의 특정 지점에 해당하는 좌표로서 표현될 수 있다.
라이다(11)에서 출력되는 레이저(12a, 12b, 12c, 12d, 12e, 12f)는, 방사 특성을 가지며, 본 발명에서는 이러한 레이저의 방사 특성에 따라 공간 정보를 보다 정확하게 표현하기 위하여, 구면 좌표 상에 공간 정보를 나타낼 수 있다.
한편, 제어부(150)는 도 4의 (a)에 도시된 것과 같이, 공간 정보를 구면 좌표 상의 복셀로 인코딩할 수 있다.
한편, 도 4의 (a)에 도시된 것과 같이, 구면 좌표계는, 복수의 복셀로 구분될 수 있다. 구면 좌표계를 형성하는 복셀은 소정의 변위(Δ)만큼 반지름 거리(r), 극각(θ) 및 방사각(Φ) 각각을 분할하는 것에 의하여 정의되는 볼륨을 가질 수 있다. 따라서, 각각의 복셀은, (Δr, Δθ, ΔΦ)에 해당하는 부피를 가질 수 있다.
여기에서, 소정의 변위(Δ)의 정도는, 반지름 거리(r), 극각(θ) 및 방사각(Φ) 각각에 대하여 서로 다를 수 있다. 이러한 복셀 각각은, V(ri, θj, Φk)으로 정의될 수 있다. 여기에서. i, j, k는 반지름 거리(r), 극각(θ) 및 방사각(Φ)의 분할에 대한 수(순서, 또는 차수)를 나타내는 것으로서, 원점을 기준으로 멀어질수록 더 커지는 수를 갖는다.
본 발명에서는 설명의 편의를 위하여, 반지름 거리(r)는, 특정 거리를 기준으로 4개의 영역으로 분할하고, 극각(θ)에 대해서는 180도를 15개의 영역으로 분할(1개 영역 당 12도의 변위를 가짐)하며, 방위각(Φ)에 대해서는 360도를 8개의 영역으로 분할(1개 영역 당 45도의 변위를 가짐)할 수 있다. 이때, 반지름 거리(r)의 분할 기준이 되는 “특정 거리”는, 라이다의 도달 임계거리 일 수 있다.
한편, 위와 같은 경우, i)반지름 거리를 기준으로 구면 좌표는 4개의 영역으로 분할되고(Nr = 4), ii)극각을 기준으로 구면 좌표는 15개의 영역으로 분할되며(Nθ = 15), 방위각을 기준으로 구면 좌표는 8개의 영역으로 분할(NΦ = 8)될 수 있다. 이 경우, 구면 좌표계는 총 320(4x15x8=320)개의 복셀로 분할될 수 있다.
이 경우, 복셀 V(ri, θj, Φk)을 정의하기 위한, i, j, k는 각각 i∈[1, Nr = 4], j∈[1, Nθ = 15], k∈[1, NΦ = 8]일 수 있다.
한편, 본 발명에서는 설명의 편의를 위하여, 3차원의 구면 좌표를 도 4의 (b)에 도시된 것과 같이, 2차원의 좌표로 간략하게 표현하도록 한다. 도 4의 (b)에 도시된 2차원 좌표는 극각(θ)에 대한 표현이 생략된 것으로서, 2차원 좌표의 극각이 θj = 1이라고 가정한다면, 특정 복셀(410)은 V(r2, θ1, Φ1)로 표현될 수 있다.
이하에서는, 위에서 살펴본 구면 좌표 상의 복셀을 이용하여, 위치 정보를 추정하는 방법에 대하여 첨부된 도면과 함께 보다 구체적으로 살펴본다. 도 5는 본 발명에 따른 위치 추정 방법을 설명하기 위한 흐름도이고, 도 6a, 도 6b, 도 7a, 도 7b, 도 8a 및 도 8b는 본 발명에 따른 위치 추정 방법 및 시스템에서, 점유 상태를 정의하는 방법을 설명하기 위한 개념도들이다. 그리고, 도 9a, 도 9b 및 도 9c는 본 발명에 따른 위치 추정 방법 및 시스템에서의 딥러닝 네트워크 구조를 설명하기 위한 개념도들이다.
먼저, 본 발명에서는, 기준 영역에서 출력되는 레이저를 이용하여, 주변 공간을 스캔하는 과정이 진행된다(S510). 앞서 살펴본 것과 같이, 기준 영역은, 레이저가 출력된 지점(11a, 도 3 참조)을 포함하는 영역으로서, 본 발명에서 추정의 대상이 되는 위치에 해당한다. 다음으로, 본 발명에서는, 상기 레이저에 대한 반사 신호에 근거하여, 주변 공간에 대한 공간 정보를 처리하는 과정이 진행된다(S520).
여기에서, 공간 정보를 처리하는 과정은, 레이저에 대한 반사 신호를 수신하고, 수신된 반사 신호에 대응하여, 구면 좌표 상의 복수의 복셀(voxel)에 각각에 대해 점유 정보를 할당하는 과정을 포함할 수 있다.
보다 구체적으로, 도 6a의 (a)에 도시된 것과 같이, 레이저는, 주변 공간에 오브젝트(610)가 존재하는 경우, 오브젝트(610)에 도달되는 것에 근거하여 굴절될 수 있다. 이러한 굴절에 근거하여, 레이저에 대한 반사 신호가 생성되며, 스캔부(110)는 이러한 반사 신호를 수신할 수 있다. 그리고, 처리부(120)는, 이러한 반사 신호를 이용하여 공간 정보를 처리하도록 이루어질 수 있다.
처리부(120)는 레이저가 출력된 후, 반사 신호가 수신될 때까지의 시간에 근거하여 기준 영역(601)으로부터 특정 오브젝트(610)까지의 거리를 측정할 수 있다. 나아가, 처리부(120)는 스캔부(110)로부터 레이저의 극각 정보 및 방사각 정보를 수집할 수 있다. 이와 같이, 처리부(120)는, 기준 영역(601)으로부터 레이저가 오브젝트가지 도달한 거리, 레이저의 극각 정보 및 방사각 정보를 특정할 수 있다. 그리고, 처리부(120)는 이와 같이 특정된 정보를 기반으로, 특정 오브젝트(610)가 위치한(또는 존재하는) 복셀을 특정할 수 있다.
그리고, 처리부(120)는, 레이저의 반사 신호에 근거하여, 복셀이 특정되는 경우, 해당 복셀에 오브젝트가 존재함을 나타내는 정보를 할당할 수 있다. 이와 같이, 처리부(120)는, 복셀 마다 오브젝트의 존재 여부에 대한 점유 정보를 할당할 수 있다.
예를 들어, 제1 복셀(602) 및 제2 복셀(603)에 해당하는 영역에 오브젝트(610)가 존재하는 경우, 기준 영역(601)에서 출력된 레이저는, 제1 복셀(602) 및 제2 복셀(603)에서 반사될 수 있다. 처리부(120)는, 제1 복셀(602) 및 제2 복셀(603)에서의 반사 신호에 근거하여, 제1 복셀(602) 및 제2 복셀(603)에 오브젝트가 존재한다고 판단할 수 있다. 그리고, 처리부120)는 이러한 오브젝트의 존재에 대한 점유 정보를 제1 복셀(602) 및 제2 복셀(603)에 할당할 수 있다.
한편, 도 6a의 (a)에 도시된 것과 같이, 특정 오브젝트(610)에 레이저가 도달하는 경우, 레이저가 도달된 특정 오브젝트(610)를 기준으로 레이저가 반사되므로, 도 6a의 (b)에 도시된 것과 같이, 특정 오브젝트(610)에 의해 가려지는 다른 오브젝트(620)에는 레이저가 도달되지 않을 수 있다.
이 경우, 스캔부(110)는 특정 오브젝트(610)에 의해 가려진 영역에 대해서 레이저를 이용하여 센싱이 불가능할 수 있다. 이에, 처리부(120)는, 레이저가 도달하지 않는 영역을 고려하여, 복셀마다 점유 정보를 할당할 수 있다.
처리부(120)는, 기준 영역(601)을 기준으로, 주변 공간에 대응되는 구면 좌표(spherical coordinate) 상의 복수의 복셀(voxel)에 대해 오브젝트의 점유 상태와 관련된 점유 정보를 할당할 수 있다.
예를 들어, 도 6b의 (a)를 참조하면, 종래에는, 복셀 마다 점유 정보를 할당하는 경우, 오브젝트가 존재하는 복셀(602, 603)에 “1”의 정보를 할당하고, 오브젝트가 존재하지 않는 복셀(608, 609)에 “0”의 정보를 할당하였다. 다만, 이 경우, 오브젝트에 의하여 가려진 영역(레이저가 도달하지 않은 영역)에 해당하는 복셀(604, 605, 606, 607) 역시, 오브젝트가 존재하지 않는 복셀로 처리하였다. 따라서, 종래에는, 오브젝트가 존재하지 않는 복셀(608, 609)과 오브젝트에 의하여 가려진 영역(레이저가 도달하지 않은 영역)에 해당하는 복셀(604, 605, 606, 607) 모두 “0”의 점유 정보가 할당되었다. 이러한 종래 방식의 경우, 실제 오브젝트에 가려진 영역에, 오브젝트가 존재함에도 불구하고, 오브젝트가 존재하지 않는 것으로 처리되었으며, 그 결과, 위치 추정의 성능이 저하되는 문제점이 발생하였다.
이에, 본 발명에서는, 이러한 문제점을 해결하고자, 복셀의 특성을 적어도 3개 이상으로 구분하여, 점유 정보를 할당함으로써, 위치 추정의 성능을 높이는 방법을 제안하는 것이다. 보다 구체적으로, 본 발명에서, 구면 좌표 상의 복수의 복셀은, i)레이저가 통과한 제1 복셀 타입, ii)오브젝트에 의해 레이저가 반사된 제2 복셀 타입 및 iii) 오브젝트에 의해 레이저가 미도달한 제3 복셀 타입으로 구분될 수 있다.
처리부(120)는, 레이저의 반사신호에 근거하여, 상기 제1 내지 제3 복셀 타입에 각각 대응되는 복셀에 각각 서로 다른 점유 정보 할당할 수 있다.
본 발명에서는, 복셀을 특정하는 정보(예를 들어, 복셀의 좌표 정보) 및 복셀의 점유 정보를 포함하여, “공간 정보”라고 명명할 수 있다.
한편, 위에서 살펴본 것과 같이, 처리부(120)는, 레이저의 반사신호에 근거하여, 상기 제1 내지 제3 복셀 타입에 각각 대응되는 복셀에 서로 다른 점유 정보 할당할 수 있다. 이때, 서로 다른 점유 정보는, i) 레이저가 통과한 상기 제1 복셀 타입에 해당하는 복셀에 대해 할당되는 제1 점유 정보, ii) 레이저가 반사된 상기 제2 복셀 타입에 해당하는 복셀에 대해 할당되는 제2 점유 정보 및 iii) 레이저가 미도달한 상기 제3 복셀 타입에 해당하는 복셀에 대해 할당되는 제3 점유 정보를 포함할 수 있다.
본 발명에서, 제3 복셀 타입에 해당하는 복셀에 할당되는 상기 제3 점유 정보는, 상기 제1 복셀 및 제2 복셀 타입에 해당하는 복셀에 각각 할당되는 제1 및 제2 점유 정보의 사이 값(value)을 갖도록 형성될 수 있다.
이와 같이, 3가지 타입을 갖는 점유 정보는, Ternary Occupancy Value라고 명명될 수 있다. 한편, 점유 정보는, 복셀에 오브젝트가 존재하는지 또는 존재하지 않는지에 대한 확률 값으로서, 복셀에 오브젝트가 존재할 가능성이 확실한 경우, 해당 복셀에는 “1”(오브젝트가 존재할 확률이 100%)의 값이 할당될 수 있다. 그리고, 복셀에 오브젝트가 존재할 가능성이 없는 경우, 해당 복셀에는 “0”(오브젝트가 존재할 확률이 0%)의 값이 할당될 수 있다. 그러므로, 오브젝트에 의해 가려진 영역은, 오브젝트가 존재할 수도 있고, 또는 존재하지 않을 수도 있으므로, 0과 1 사이의 확률 값을 가질 수 있다.
이에, 본 발명에서, 처리부(120)는, 도 6b의 (b) 및 (c)에 도시된 것과 같이, 레이저가 통과한 제1 복셀 타입에 해당하는 복셀 (608, 609)에 제1 점유 정보를 할당할 수 있다. 본 발명에서 제1 점유 정보는 “0”의 값을 가질 수 있다. 여기에서, 레이저가 통과했다는 것은, 레이저의 반사 없이, 레이저가 해당 영역을 관통했다는 것으로서, 이는 오브젝트가 해당 영역에 존재하지 않음으로써 기인한다.
그리고, 처리부(120)는, 도 6b의 (b) 및 (c)에 도시된 것과 같이, 레이저가 반사된 제2 복셀 타입에 해당하는 복셀(602, 603)에 제2 점유 정보를 할당할 수 있다. 본 발명에서 제2 점유 정보는 “1”의 값을 가질 수 있다. 여기에서, 레이저가 반사되었다는 것은, 레이저가 오브젝트에 부딪혔다는 것을 의미하는 것으로서, 이는 오브젝트가 해당 영역에 존재함으로써 기인하다.
그리고, 처리부(120)는, 도 6b의 (b) 및 (c)에 도시된 것과 같이, 레이저가 미도달된 제3 복셀 타입에 해당하는 복셀 (604, 605, 606, 607)에 제3 점유 정보를 할당할 수 있다. 본 발명에서 제3 점유 정보는 “0.5”의 값으로 설정될 수 있다. 한편, 본 발명에서는 제3 점유 정보를 “0.5”의 값으로 동일하게 설정하였으나, 경우에 따라, 제3 점유 정보는 복수의 값을 포함할 수 있다. 즉, 제3 복셀 타입에 해당하는 복셀에 할당되는 점유 정보는, 서로 다른 값을 가질 수 있다. 예를 들어, 처리부(120)는, 다른 기준 영역에서의 스캔 결과에 기반하여, 레이저가 미도달한 제3 복셀 타입에 해당하는 복셀의 점유 정보를 결정할 수 있다. 즉, 처리부(120)는, 다른 기준 영역에서의 스캔 결과 기반하여, 제3 복셀 타입에 해당하는 복셀에 해당하는 영역에, 오브젝트가 존재할 가능성이 높은 경우, 0.5보다 더 1에 가까운 값을 할당할 수 있다. 이와 반대로, 처리부(120)는, 다른 기준 영역에서의 스캔 결과에 기반하여, 제3 복셀 타입에 해당하는 복셀에 해당하는 영역에, 오브젝트가 존재할 가능성이 낮은 경우, 0.5보다 더 0에 가까운 값을 할당할 수 있다. 이와 같이, 처리부(120)는 다른 기준 영역에서의 스캔 결과에 따른 확률에 근거하여, 제3 복셀 타입에 해당하는 복셀에 대한 점유 정보를 할당할 수 있다.
이상에서 살펴본 것과 같이, 처리부(120)는 레이저의 반사 신호에 근거하여, 구면 좌표상의 복수의 복셀에 대해 점유 상태를 정의할 수 있다. 점유 상태의 정의는, 복수의 복셀 각각에 대해 점유 정보를 할당하는 것을 의미할 수 있다.
한편, 본 발명에서 처리부(120)는 구면 좌표 상에 존재하는 모든 복셀에 대해 점유 정보를 할당할 수 있다. 결과, 구면 좌표에 포함된 모든 복셀에 각각 대응되는 벡터가 획득할 수 있다. 이러한 벡터의 획득은, 딥러닝부(130)에 의해 이루어질 수 있다.
이하에서는, 복수의 복셀 각각에 대해 점유 정보를 할당하는 방법에 대하여 보다 구체적으로 살펴본다. 설명의 편의를 위하여, 도 7a에 도시된 것과 같이, 구면 좌표는, i)반지름 거리를 기준으로 4개의 영역으로 분할되고(Nr = 4), ii)극각을 기준으로 15개의 영역으로 분할되며(Nθ = 15), 방위각을 기준으로 8개의 영역으로 분할(NΦ = 8)된다고 가정한다. 이 경우, 구면 좌표계는 총 320(4x15x8=320)개의 복셀로 분할될 수 있다. 이 경우, 복셀 V(ri, θj, Φk)을 정의하기 위한, i, j, k는 각각 i∈[1, Nr = 4], j∈[1, Nθ = 15], k∈[1, NΦ = 8]일 수 있다.
이 경우, 도 7b에 도시된 것과 같이, 복셀 영역 각각은, V(ri, θj, Φk)으로 위치가 특정될 수 있다. 도 7b는 극각(θ)는 j=1일 때의 2차원 좌표이다.
도 8a에 도시된 것과 같이, 설명을 위하여, 주변 공간에 대응되는 구면 좌표 영역 상의 제1, 제2, 및 제3 복셀(905, 906, 908)과 대응되는 영역에 오브젝트(910)가 존재하는 경우를 가정한다. 이때, 도 8a는 극각(θ)는 j=1일 때의 2차원 좌표이다.
본 발명에서는, 스캔부(110)에서 스캔을 수행한 결과, 제1, 제2 복셀(905, 906)에 대응되는 영역에서 반사 신호가 수신될 수 있다. 비록, 오브젝트(910)는 제3 복셀(908)에 대응되는 영역에도 존재하지만, 제3 복셀(908)에 대응되는 영역은 제2 복셀(906)에 대응되는 영역에 위치한 오브젝트에 의하여 가려졌으므로, 제3 복셀(908)에 대응되는 영역에 대한 반사신호는 수신되지 않는다.
처리부(120)는 특정 영역에서 반사 신호가 수신된 경우, 반사 신호가 수신된 특정 영역에 대응하는 복셀과 동일한 극각 및 방사각을 갖는 모든 복셀에 대하여 점유 정보를 할당할 수 있다. 즉, 반사신호에 근거하여, 오브젝트가 존재하는 복셀이 특정된 경우, 처리부(120)는 특정된 복셀을 기준으로, 특정된 복셀과 동일한 극각 및 방사각을 갖는 모든 복셀의 점유 정보를 할당할 수 있다.
이때, 반사 신호가 수신된 특정 영역에 대응하는 복셀은, 앞서 살펴본 제2 복셀 타입에 해당하는 복셀로 이해되어 질 수 있다.
여기에서, “특정된 복셀과 동일한 극각 및 방사각을 갖는 모든 복셀”은, 극각 및 방사각은 모두 동일하지만, “반지름 거리”가 서로 다른 복셀을 의미한다.
본 발명에서는, 설명의 편의를 위하여, “특정된 복셀과 동일한 극각 및 방사각을 갖으며, 반지름 거리가 서로 다른 복셀”을 특정 복셀(906)에 대한 “주변 복셀”이라고 명명할 수 있다.
예를 들어, 특정 복셀(905, V(3, 1, 1))에 대응되는 영역에서 반사 신호가 수신된 경우, 처리부(120)는 상기 특정 복셀(906)을 기준으로, 특정 복셀(906)의 주변 복셀(902, 904, 908)의 점유 정보를 할당할 수 있다.
즉, 반사 신호가 수신된 복셀(906)이 특정되는 경우, 처리부(120)는 특정된 복셀(906)을 기준으로, 주변 복셀의 복셀 타입을 결정할 수 있다. 그리고, 결정된 복셀 타입에 따라, 주변 복셀에 점유 정보를 할당할 수 있다.
보다 구체적으로, 처리부(120)는, 특정 복셀(906)보다 기준 영역(801)에서 가깝게 위치한 적어도 하나의 복셀(902, 904)을 “레이저 신호가 통과한 복셀”에 해당하는 제1 복셀 타입으로 결정할 수 있다.
그리고, 처리부(120)는, 반사 신호가 수신된 특정 복셀(906)을 “레이저 신호가 반사된 복셀”에 해당하는 제2 복셀 타입으로 결정할 수 있다.
그리고, 처리부(120)는, 반사 신호가 수신된 특정 복셀(906)보다 기준 영역(801)에서 멀리 위치한 적어도 하나의 복셀(908)을 “레이저 신호가 미도달한 복셀”에 해당하는 제3 복셀 타입으로 결정할 수 있다.
그리고, 처리부(120)는 제1 복셀 타입에 해당하는 적어도 하나의 복셀(902(V(1, 1, 1)), 904(V(2, 1, 1))에 대해 도 8b의 No1행에 도시된 것과 같이, “0”의 값을 점유 정보로서 일괄적으로 할당할 수 있다.
그리고, 처리부(120)는 제2 복셀 타입에 해당하는 특정 복셀(905(V(3, 1, 1))에 도시된 것과 같이, “1”의 값을 점유 정보로서 할당할 수 있다.
그리고, 처리부(120)는, 제3 복셀 타입에 해당하는 주변 복셀(905(V(4, 1, 1))에 도시된 것과 같이, “0.5”의 값을 점유 정보로서 일괄적으로 할당할 수 있다.
이와 같이, 처리부(120)는 제2 복셀 타입(오브젝트가 존재하는 복셀)만 특정되는 경우, 동일한 극각 및 방사각을 갖는 주변 복셀에 대한 스캔 정보(반사 신호)가 존재하지 않더라도, 주변 복셀에 대해 점유 정보를 할당할 수 있다.
이와 같은 방식으로, 처리부(120)는, 도 8b의 (a) 및 (b)에 도시된 것과 같이, 구면 좌표 상의 모든 복셀에 대해 점유 정보를 할당할 수 있다. 도 8b의 (b)는 j=2때의 복셀 정보이며, 비록 도시되지는 않았지만, 처리부(120)는 극각이 15개의 영역으로 구분된 경우, j=15까지에 해당하는 복셀 정보를 모두 할당할 수 있다.
처리부(120)는 이와 같은 방식으로, 구면 좌표 상의 모든 복셀에 대하여 점유 정보를 할당할 수 있다.
위에서 살펴본 것과 같이, 레이저에 대한 반사신호에 근거하여, 복셀에 대한 점유 정보가 할당되는 경우, 각각의 복셀 및 이에 대한 점유 정보를 포함하는 공간 정보를 이용하여, 특징 벡터가 추출되는 과정이 진행된다.
본 발명에서는, 공간 정보를 입력 데이터로 하는 딥러닝 네트워크를 이용하여, 공간 정보가 반영된 특징 벡터를 추출하는 과정이 진행된다(S530, 도 5 참조).
이때, 딥러닝부(130)는, 공간 정보를 이용하여, 공간 정보에 대응되는 특징 벡터를 추출하도록 이루어질 수 있다. 딥러닝부(130)는 도 9a에 도시된 것과 같이, 딥러닝 네트워크를 포함하며, 이러한 딥러닝 네트워크는 적어도 하나의 데이터 전처리 모듈(또는 전처리기)을 포함할 수 있다.
도시와 같이, 딥러닝 네트워크에는 특정 복셀에 대한 점유 정보가 입력 데이터로서 입력되며, 각각의 복셀은, Nr, Nθ, NΦ으로 특정될 수 있다.
이때, 딥러닝 네트워크에 입력되는 데이터(1001)는 B x Nr x Nθ x NΦ x 1으로서, 여기에서, B는 배치 수(B for number of batches)를 의미할 수 있다. 경우에 따라, B는 생략될 수 있다. 나아가, 여기에서 “1”은 특정된 복셀의 점유 정보로써, 앞서 살펴본 것과 같이, 특정된 복셀의 점유 상태에 따라, 1, 0, 0.5 등의 값으로 변경될 수 있다.
한편, 본 발명의 딥러닝 네트워크는, 공간 정보에 대한 전처리를 수행하는 미세 특징 추출기(Fine Feature Extractor, 1010), 거친 특징 추출기(Coarse Feature Extractor, 1020) 및 적분기(integrator, 1030) 중 적어도 하나를 포함할 수 있다.
미세 특징 추출기(Fine Feature Extractor, 1010) 및 거친 특징 추출기(Coarse Feature Extractor, 1020)는 서로 병렬 구조로 설계될 수 있다. 미세 특징 추출기(Fine Feature Extractor, 1010) 및 거친 특징 추출기(Coarse Feature Extractor, 1020)에서 각각 추출된 벡터는, 열(Column)을 따라 연결될 수 있으며, 연결된 벡터는 다시 적분기(integrator, 1030)의 입력 데이터가 될 수 있다.
한편, 미세 특징 추출기(Fine Feature Extractor, 1010)는, 인접한 복셀 간의 구조적 관계를 인코딩하도록 이루어질 수 있다. 미세 특징 추출기(Fine Feature Extractor, 1010)는 입력된 복셀 정보에 해당하는 복셀(타겟 복셀)과 인접한 복셀에 대한 점유 정보를 이용하여, 주변 공간을 세밀하게 묘사하는 벡터를 추출할 수 있다.
미세 특징 추출기(Fine Feature Extractor, 1010)는, 3 차원 컨볼루션 네트워크의 여러 계층으로 구성될 수 있다.
나아가, 거친 특징 추출기(Coarse Feature Extractor, 1020)는, 각 복셀이 보다 넓은 공간에 대한 정보를 포함하도록 하는 구조를 설계하고, 이로부터 벡터를 추출할 수 있다. 거친 특징 추출기(Coarse Feature Extractor, 1020)는, 입력 복셀로부터 구조적으로 더 거친 특징을 인코딩하며, 결과적으로, 3D pooling 레이어를 통해 피처 치수를 원래 치수의 1/4로 줄인다. 그리고, 거친 특징 추출기(Coarse Feature Extractor, 1020)는 디컨볼루션 레이어를 통해, 줄여진 피처의 치수를 원본 치수로 복구할 수 있다.
미세 특징 추출기(Fine Feature Extractor, 1010) 및 거친 특징 추출기(Coarse Feature Extractor, 1020)를 통해 추출된 벡터는 각각 64차원의 벡터로 이루어질 수 있으며, 이러한 64차원의 벡터는 열을 따라 연결되어, 128차원의 벡터가 될 수 있다.
본 발명에서, 미세 특징 추출기(Fine Feature Extractor, 1010) 및 거친 특징 추출기(Coarse Feature Extractor, 1020)를 통해 추출된(또는 인코딩된) 벡터는 서브 특징 벡터라고도 명명될 수 있다. 이 경우, 미세 특징 추출기(Fine Feature Extractor, 1010)를 통해 추출되는 벡터는 제1 서브 특징 벡터로, 거친 특징 추출기(Coarse Feature Extractor, 1020)를 통해 추출되는 벡터는 제2 서브 특징 벡터로 명명될 수 있다.
이와 같이, 제1 및 제2 서브 특징 벡터는 열을 따라 연결될 수 있으며, 제1 및 제2 서브 특징 벡터를 조합한 벡터는 “서브 특징 벡터”로 명명될 수 있다. 이러한 서브 특징 벡터(1002)는 적분기(integrator, 1030)의 입력 데이터로서 입력될 수 있다.
다음으로, 적분기(integrator, 1030)에 대하여 살펴보면, 적분기는, 특정 복셀에 해당하는 서브 특징 벡터 및 상기 특정 복셀과 관련된 적어도 하나의 주변 복셀에 대한 서브 특징 벡터를 조합하도록 이루어질 수 있다.
여기에서, 특정 복셀과 관련된 적어도 하나의 주변 복셀은, 특정 복셀과 반지름 거리 및 극각은 동일하되, 방위각이 서로 다른 복셀을 의미할 수 있다.
즉, 본 발명에서, “주변 복셀”이라 함은, 반드시 서로 인접한 복셀을 의미하는 것이 아닌, 서로 관련성이 있는 복셀이면 충분하다.
이와 같이, 딥러닝부(130)는, 상기 특정 복셀의 점유 정보 및 상기 특정 복셀과 관련된 적어도 하나의 주변 복셀의 점유 정보를 이용하여 특징 벡터를 생성할 수 있다.
예를 들어, 도 9b에 도시된 것과 같이, 적분기(integrator, 1030)는, 특정 복셀(1041, V(3, 1, 2))의 방위각을 기준으로, +90도(degree) 또는 -90도(degree)를 갖는 주변 복셀의 점유 정보(또는 서브 특징 벡터)를 이용하여, 단위 벡터를 생성할 수 있다. 이 경우, 적분기는 특정 복셀(1041)과 반지름 거리 및 극각은 동일하되, 방위각(Φ)을 기준으로, Φ+90, Φ+180, Φ+270의 방위각을 갖는 제1 내지 제3 주변 복셀(1042, 1043, 1044)의 점유 정보(또는 서브 특징 벡터)를 이용하여, 단위 벡터를 생성할 수 있다. 적분기(integrator, 1030)는 도 9b의 (b)의 표와 같이, 특정 복셀(1041, V(3, 1, 2))의 점유 정보 “1”(1051 참조), 제1 주변 복셀(1042, V(3, 1, 4))의 점유 정보 “0”(1052 참조), 제2 주변 복셀(1043, V(3, 1, 6))의 점유 정보 “0”(1053 참조), 제4 주변 복셀(1044, V(3, 1, 8))의 점유 정보 “0”(1054 참조)를 이용하여 단위 벡터를 생성할 수 있다.
이와 같이, 90도를 기준으로 4방향의 복셀의 정보를 이용하는 경우, 적분기(integrator, 1030)는 Quad-View Integrator로 명명될 수 있다.
한편, 본 발명에서, 특정 복셀과 함께 고려하는 방위각 기준의 방향의 개수, 즉, 복셀의 개수는 제한하지 않으며, 경우에 따라 다양하게 변형될 수 있다.
딥러닝부(130)는 도 9c에 도시된 것과 같이, 특정 복셀(1041)과, 제1 내지 제3 주변 복셀(1042, 1043, 1044)에 대한 공간 정보(복셀을 특정하는 정보(반지름 거리, 극각, 방위각 정보) 및 점유 정보를 포함)를 미세 특징 추출기(Fine Feature Extractor, 1010) 및 거친 특징 추출기(Coarse Feature Extractor, 1020)의 입력 데이터로 입력할 수 있다. 그리고, 딥러닝부(130)는, 미세 특징 추출기(Fine Feature Extractor, 1010) 및 거친 특징 추출기(Coarse Feature Extractor, 1020)를 이용하여, 특정 복셀(1041)과, 제1 내지 제3 주변 복셀(1042, 1043, 1044) 각각에 대한 서브 특징 벡터(1002a, 1002b, 1002c, 1002d)를 추출할 수 있다. 그리고, 딥러닝부(130)는, 특정 복셀(1041)과, 제1 내지 제3 주변 복셀(1042, 1043, 1044) 각각에 대한 서브 특징 벡터(1002a, 1002b, 1002c, 1002d)를 적분기(1030)를 통해 조합하여, 특정 복셀에 대한 단위 벡터(1030a)를 생성할 수 있다. 이와 같이, 적분기(1030)에서는, 구면 좌표 상의 모든 복셀에 대하여 단위 벡터를 각각 생성하고, 생성된 단위 벡터를 NetVLAD에 입력함으로써, 특징 벡터를 추출할 수 있다.
이와 같이, 본 발명에서는, 특정 복셀에 대하여, 특정 복셀 주변의 복셀 정보까지 포함한 특징 벡터를 추출함으로써, 주변 공간에 대한 정보까지 고려하여 위치 추정을 수행하는 위치 추정 방법 및 시스템을 제공할 수 있다.
여기에서, 특징 벡터는 스캔부(110)에 의해 스캔된 주변 공간에 대한 공간 정보(스캔 정보)를 벡터로서 나타낸 것으로서, 이러한 특징 벡터는, 기 특정된 참조 맵과 비교되는 대상이 될 수 있다. 앞서 살펴본 것과 같이, 특징 벡터는, 다양한 용어로 명명될 수 있으며, 예를 들어, 글로벌 벡터(global vector), 글로벌 디스크립터 벡터(global descriptor vector)라고 명명될 수 있다.
이와 같이, 특징 벡터가 추출되면, 본 발명에서는, 기 특정된 참조 맵 데이터와 특징 벡터를 비교하여, 기준 영역에 대한 위치 정보를 추정하는 과정이 진행될 수 있다(S540). 제어부(150)는, 딥러닝부(130)에서 추출된 특징 벡터와, 기 특정된 참조 맵을 비교하여, 위치 추정의 대상이 되는 기준 영역에 대한 위치 정보를 추정할 수 있다. 보다 구체적으로 제어부(150)는, 기 특정된 참조맵 데이터(예를 들어, 복수의 벡터들의 집합)와 특징 벡터를 비교하여, 기 특정된 참조맵 데이터에서, 상기 특징 벡터와 가장 가까운(또는 가장 유사한) 벡터를 특정할 수 있다. 그리고, 특정된 벡터에 매칭된 위치 정보를, 기준 영역에 대한 위치 정보로서 추정할 수 있다.
한편, 제어부(150)는, 상기 참조 맵 데이터에 포함된 복수의 참조 벡터와 상기 특징 벡터를 비교하여, 상기 복수의 참조 벡터 중 상기 특징 벡터와 기준 거리(또는 임계 거리)이내에 위치한 특정 참조 벡터를 추출할 수 있다. 그리고, 추출된 특정 참조 벡터에 매칭된 위치 정보를 상기 기준 영역에 대한 위치 정보로 추정할 수 있다.
한편, 상기 기준 거리 이내에 위치한 특정 참조 벡터가 복수개인 경우, 제어부(150)는, 상기 복수개의 특정 참조 벡터 중 상기 특징 벡터와 가깝게 위치한 참조 벡터에 매칭된 위치 정보를, 상기 기준 영역에 대한 위치 정보로 추정할 수 있다.
위에서 살펴본 것과 같이, 본 발명에 따른 위치 추정 방법 및 시스템은, 레이저에 대한 반사 신호에 근거하여, 오브젝트의 점유 상태와 관련된 정보를 복셀 상에 나타낼 수 있다. 이때, 본 발명은, 구면 좌표(spherical coordinate) 상의 복셀로 공간을 분할함으로써, 구면 좌표 상의 복셀 상에 레이저의 방사 특성을 보다 정확하게 반영 수 있고, 결과적으로 보다 정확한 위치를 추정할 수 있다.
나아가, 본 발명은, 오브젝트의 점유 상태와 관련된 정보를 나타낼 때에, 레이저가 미도달한 공간에 대한 점유 상태를 새롭게 정의함으로써, 사람, 구조물 등과 같은 오브젝트 등에 의하여 폐색된 공간을 추가적으로 고려할 수 있다. 이 경우, 레이저가 미도달한 공간의 점유 정보는, 레이저가 통과하거나, 레이저가 반사된 영역의 점유 정보와 다른 점유 정보로 정의될 수 있다. 이와 같이, 본 발명은 폐색된 공간을 추가적으로 고려하여 위치 추정을 수행함으로써, 실내 공간에서도 정확도 높은 위치 추정을 수행할 수 있다.
한편, 본 발명은, 특정 복셀 뿐만 아니라, 특정 복셀을 둘러싼 주변 공간에 대한 정보를 함께 반영할 수 있는 Integrator를 포함하는 딥러닝 네트워크를 제안함으로써, 위치 추정의 대상이 되는 공간의 특성을 종합적으로 고려할 수 있으며, 결과적으로 위치 추정의 성능을 높일 수 있다.
한편, 위에서 살펴본 본 발명은, 컴퓨터에서 하나 이상의 프로세스에 의하여 실행되며, 이러한 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서 구현될 수 있다.
나아가, 위에서 살펴본 본 발명은, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드 또는 명령어로서 구현하는 것이 가능하다. 즉, 본 발명은 프로그램의 형태로 제공될 수 있다.
한편, 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다.
나아가, 컴퓨터가 읽을 수 있는 매체는, 저장소를 포함하며 전자기기가 통신을 통하여 접근할 수 있는 서버 또는 클라우드 저장소일 수 있다. 이 경우, 컴퓨터는 유선 또는 무선 통신을 통하여, 서버 또는 클라우드 저장소로부터 본 발명에 따른 프로그램을 다운로드 받을 수 있다.
나아가, 본 발명에서는 위에서 설명한 컴퓨터는 프로세서, 즉 CPU(Central Processing Unit, 중앙처리장치)가 탑재된 전자기기로서, 그 종류에 대하여 특별한 한정을 두지 않는다.
한편, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (15)

  1. 기준 영역에서 출력되는 레이저를 이용하여, 주변 공간을 스캔하는 단계;
    상기 레이저에 대한 반사 신호에 근거하여, 상기 주변 공간에 대한 공간 정보를 처리하는 단계;
    상기 공간 정보를 입력 데이터로 하는 딥러닝 네트워크를 이용하여, 상기 공간 정보가 반영된 특징 벡터를 추출하는 단계; 및
    기 특정된 참조 맵 데이터와 상기 특징 벡터를 비교하여, 상기 기준 영역에 대한 위치 정보를 추정하는 단계를 포함하고,
    상기 공간 정보를 처리하는 단계에서는,
    상기 주변 공간에 위치한 오브젝트에 상기 레이저가 도달하여 반사되는 상기 반사 신호에 근거하여,
    상기 주변 공간에 대응되는 구면 좌표(spherical coordinate) 상의 복수의 복셀(VOXEL)에 대해 상기 오브젝트의 점유 상태와 관련된 점유 정보를 할당하는 것을 특징으로 하는 위치 추정 방법.
  2. 제1항에 있어서,
    상기 구면 좌표 상의 상기 복수의 복셀은,
    상기 레이저가 통과한 복셀에 해당하는 제1 복셀 타입,
    상기 오브젝트에 의해 상기 레이저가 반사된 복셀에 해당하는 제2 복셀 타입 및
    상기 오브젝트에 의해 상기 레이저가 미도달한 복셀에 해당하는 제3 복셀 타입으로 구분되고,
    상기 공간 정보를 처리하는 단계에서는,
    상기 제1 내지 제3 복셀 타입에 해당하는 복셀마다 서로 다른 점유 정보를 할당하는 것을 특징으로 하는 위치 추정 방법.
  3. 제2항에 있어서,
    상기 서로 다른 점유 정보는,
    상기 제1 복셀 타입에 해당하는 상기 레이저가 통과한 복셀 에 대해 할당되는 제1 점유 정보,
    상기 제2 복셀 타입에 해당하는 상기 레이저가 반사된 복셀에 대해 할당되는 제2 점유 정보 및
    상기 제3 복셀 타입에 해당하는 상기 레이저가 미도달한 복셀에 대해 할당되는 제3 점유 정보를 포함하는 것을 특징으로 하는 위치 추정 방법.
  4. 제3항에 있어서,
    상기 제3 복셀 타입에 해당하는 복셀에 할당되는 상기 제3 점유 정보는,
    상기 제1 복셀 타입 및 상기 제2 복셀 타입에 해당되는 복셀들에 각각 할당되는 제1 및 제2 점유 정보의 사이 값(value)을 갖는 것을 특징으로 하는 위치 추정 방법.
  5. 제4항에 있어서,
    상기 구면 좌표는, 상기 기준 영역을 기준으로 반지름 거리(r), 극각(θ) 및 방위각(Φ) 중 적어도 하나가 다른 상기 복수의 복셀로 구획되고,
    상기 공간 정보를 처리하는 단계에서는,
    상기 복수의 복셀 중 상기 레이저가 반사된 복셀이 특정되는 경우,
    상기 특정된 복셀을 기준으로, 상기 특정된 복셀과 동일한 극각 및 방위각을 갖는 적어도 하나의 복셀에 대한 복셀 타입을 결정하는 것을 특징으로 하는 위치 추정 방법.
  6. 제5항에 있어서,
    상기 공간 정보를 처리하는 단계에서는,
    상기 특정된 복셀을 기준으로, 상기 기준 영역으로부터 상기 특정된 복셀보다 가깝게 위치한 복셀은 상기 제1 복셀 타입으로 결정하고,
    상기 특정된 복셀을 기준으로, 상기 기준 영역으로부터 상기 특정된 복셀보다 멀리 위치한 복셀은 상기 제3 복셀 타입으로 결정하며,
    상기 특정된 복셀은, 상기 제2 복셀 타입으로 결정하는 것을 특징으로 하는 위치 추정 방법.
  7. 제1항에 있어서,
    상기 특징 벡터를 추출하는 단계에서는,
    특정 복셀의 점유 정보 및 상기 특정 복셀과 관련된 적어도 하나의 주변 복셀의 점유 정보를 이용하여 상기 특징 벡터를 생성하는 것을 특징으로 하는 위치 추정 방법.
  8. 제7항에 있어서,
    상기 특정 복셀 및 상기 특정 복셀과 관련된 상기 적어도 하나의 주변 복셀은,
    상기 기준 영역을 기준으로 반지름 거리 및 극각이 서로 동일하고, 방위각이 서로 다른 것을 특징으로 하는 위치 추정 방법.
  9. 제8항에 있어서,
    상기 적어도 하나의 주변 복셀은,
    상기 특정 복셀과 서로 다른 방위각을 갖는 제1 내지 제3 주변 복셀을 포함하고,
    상기 특정 복셀 및 상기 제1 내지 제3 주변 복셀은,
    상기 특정 복셀의 방위각을 기준으로, 상기 특정 복셀의 방위각과 +90도(degree) 또는 -90도의 차이를 갖는 것을 특징으로 하는 위치 추정 방법.
  10. 제9항에 있어서,
    상기 특징 벡터를 추출하는 단계에서는,
    상기 특정 복셀 및 상기 제1 내지 제3 주변 복셀에 각각 대응되는 점유 정보를 조합하여, 상기 특정 복셀에 대응되는 단위 벡터를 생성하는 것을 특징으로 하는 위치 추정 방법.
  11. 제1항에 있어서,
    상기 특징 벡터를 추출하는 단계에서는,
    상기 공간 정보를 미세 특징 추출기(Fine Feature Extractor) 및 거친 특징 추출기(Coarse Feature Extractor) 각각의 입력 데이터로 하여, 서브 특징 벡터를 추출하는 것을 특징으로 하는 위치 추정 방법
  12. 제11항에 있어서,
    상기 서브 특징 벡터는,
    상기 미세 특징 추출기(Fine Feature Extractor)의 출력 벡터인 제1 서브 특징 벡터 및 상기 거친 특징 추출기(Coarse Feature Extractor)의 출력 벡터인 제2 서브 특징 벡터를 조합한 벡터인 것을 특징으로 하는 위치 추정 방법.
  13. 제1항에 있어서,
    상기 위치 정보를 추정하는 단계에서는,
    상기 참조 맵 데이터에 포함된 복수의 참조 벡터와 상기 특징 벡터를 비교하여, 상기 복수의 참조 벡터 중 상기 특징 벡터와 기준 거리 이내에 위치한 특정 참조 벡터를 추출하고,
    상기 특정 참조 벡터에 매칭된 위치 정보를 상기 기준 영역에 대한 위치 정보로 추정하는 것을 특징으로 하는 위치 추정 방법.
  14. 제13항에 있어서,
    상기 위치 정보를 추정하는 단계에서는,
    상기 기준 거리 이내에 위치한 특정 참조 벡터가 복수개인 경우,
    상기 복수개의 특정 참조 벡터 중 상기 특징 벡터와 가깝게 위치한 참조 벡터에 매칭된 위치 정보를, 상기 기준 영역에 대한 위치 정보로 추정하는 것을 특징으로 하는 위치 추정 방법.
  15. 레이저를 이용하여, 기준 영역을 기준으로 주변 공간을 스캔부;
    상기 레이저에 대한 반사 신호에 근거하여, 상기 주변 공간에 대한 공간 정보를 처리하는 처리부;
    상기 공간 정보를 입력 데이터로 하는 딥러닝 네트워크를 이용하여, 상기 공간 정보가 반영된 특징 벡터를 추출하는 딥러닝부; 및
    기 특정된 참조 맵 데이터와 상기 특징 벡터를 비교하여, 상기 기준 영역에 대한 위치 정보를 추정하는 제어부를 포함하고,
    상기 처리부는,
    상기 주변 공간에 위치한 오브젝트에 상기 레이저가 도달하여 반사되는 상기 반사 신호에 근거하여, 구면 좌표 상의 복수의 복셀에 대해 상기 오브젝트의 점유 상태와 관련된 점유 정보를 할당하는 것을 특징으로 하는 위치 추정 시스템.
KR1020200110001A 2020-08-31 2020-08-31 위치 추정 방법 및 시스템 Active KR102460825B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020200110001A KR102460825B1 (ko) 2020-08-31 2020-08-31 위치 추정 방법 및 시스템
JP2022550893A JP7416968B2 (ja) 2020-08-31 2020-09-21 位置推定方法及びシステム
PCT/KR2020/012697 WO2022045431A1 (ko) 2020-08-31 2020-09-21 위치 추정 방법 및 시스템
US17/814,715 US12175692B2 (en) 2020-08-31 2022-07-25 Method and system for localization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200110001A KR102460825B1 (ko) 2020-08-31 2020-08-31 위치 추정 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20220028684A KR20220028684A (ko) 2022-03-08
KR102460825B1 true KR102460825B1 (ko) 2022-10-31

Family

ID=80353573

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200110001A Active KR102460825B1 (ko) 2020-08-31 2020-08-31 위치 추정 방법 및 시스템

Country Status (4)

Country Link
US (1) US12175692B2 (ko)
JP (1) JP7416968B2 (ko)
KR (1) KR102460825B1 (ko)
WO (1) WO2022045431A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020214002B3 (de) * 2020-11-08 2022-04-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung eingetragener Verein Vorrichtung und Verfahren zur Bestimmung einer Position einer Erfassungseinheit und Verfahren zur Hinterlegung von Extraktionsinformationen in einer Datenbank
KR102444672B1 (ko) * 2021-08-27 2022-09-20 (주)뷰런테크놀로지 라이다 센서를 이용하여 동적 맵을 생성하고, 생성된 동적 맵을 이용하여 객체를 판단하는 방법 및 상기 방법을 수행하는 장치
CN114694013B (zh) * 2022-04-11 2022-11-15 北京理工大学 一种分布式多机协同视觉slam方法与系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112006003361T5 (de) * 2005-12-16 2008-10-16 Ihi Corporation Verfahren und Vorrichtung für das Aufzeichnen/Anzeigen von dreidimensionalen Formdaten und Verfahren und Vorrichtung für das Messen einer dreidimensionalen Form
US9110163B2 (en) * 2013-06-14 2015-08-18 Microsoft Technology Licensing, Llc Lidar-based classification of object movement
KR101708275B1 (ko) * 2015-03-05 2017-02-20 국방과학연구소 Svm기반 레이더 스캔형태 인식방법 및 장치
WO2017063033A1 (en) * 2015-10-12 2017-04-20 Groundprobe Pty Ltd Slope stability lidar
KR101925862B1 (ko) * 2018-09-13 2018-12-06 주식회사 에이엠오토노미 3차원 라이다를 이용한 실시간 3차원 지도 생성 방법 및 장치
US11927668B2 (en) * 2018-11-30 2024-03-12 Qualcomm Incorporated Radar deep learning
KR102379295B1 (ko) * 2019-01-30 2022-03-25 바이두닷컴 타임즈 테크놀로지(베이징) 컴퍼니 리미티드 자율 주행 차량을 위한 rgb 포인트 클라우드 기반의 맵 생성 시스템
US11164363B2 (en) * 2019-07-08 2021-11-02 Waymo Llc Processing point clouds using dynamic voxelization

Also Published As

Publication number Publication date
JP7416968B2 (ja) 2024-01-17
JP2023515954A (ja) 2023-04-17
KR20220028684A (ko) 2022-03-08
US12175692B2 (en) 2024-12-24
US20220358665A1 (en) 2022-11-10
WO2022045431A1 (ko) 2022-03-03

Similar Documents

Publication Publication Date Title
KR102460825B1 (ko) 위치 추정 방법 및 시스템
CN101331379B (zh) 自身位置辨认方法和装置以及三维形状的计测方法和装置
KR102681992B1 (ko) 자율 주행을 위한 단일 계층 3차원 다중 객체 검출 장치 및 방법
US11216951B2 (en) Method and apparatus for representing environmental elements, system, and vehicle/robot
KR102526542B1 (ko) 지오아크를 이용한 2차원 운송수단 국소화
WO2018138516A1 (en) Apparatus, method, and system for alignment of 3d datasets
JP5981886B2 (ja) 点群解析処理装置、点群解析処理方法、及びプログラム
CN108801268A (zh) 目标对象的定位方法、装置及机器人
KR102114558B1 (ko) 라이다를 이용한 지면 및 비지면 검출 장치 및 방법
JPWO2019040997A5 (ko)
KR102516005B1 (ko) 실내 측위 조사로봇을 활용한 건물 붕괴 위험성 평가 방법 및 장치
KR102450139B1 (ko) 3차원 라이다 스캐너를 이용한 동적 환경 대상 전역 위치 인식 장치 및 방법
KR102516002B1 (ko) 조사로봇기반 실내 공간 측위·매핑 방법 및 장치
Dey et al. Machine learning-based segmentation of aerial LiDAR point cloud data on building roof
Gehrung et al. A fast voxel-based indicator for change detection using low resolution octrees
KR20220000328A (ko) 레이저 반사 강도를 이용한 공간 구조 정보 기반 이동 로봇의 위치 인식 장치 및 방법
Santos et al. Classification of LiDAR data over building roofs using k-means and principal component analysis
Nagavarapu et al. A dynamic object removal and reconstruction algorithm for point clouds
KR102196076B1 (ko) 삼각-육각 지도 생성방법 및 장치와 이를 이용한 이동체의 광역위치 결정방법 및 장치
CN118089794B (zh) 一种基于多源信息的自适应多信息组合导航的仿真方法
Antić et al. Segmentation of Stereo-Camera Depth Image into Planar Regions based on Evolving Principal Component Clustering
KR20250136064A (ko) 3차원 지도 갱신 방법 및 이를 지원하는 시스템
Cupec et al. Place recognition based on planar surfaces using multiple RGB-D Images taken from the same position
Cserép et al. Object extraction of rail track from VLS LiDAR data
Aldoshkin et al. Evaluation of two-dimensional angular orientation of a mobile robot by a modified algorithm based on Hough Transform

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20200831

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20220210

Patent event code: PE09021S01D

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20220516

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20220805

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20221026

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20221026

End annual number: 3

Start annual number: 1

PG1601 Publication of registration