KR102516450B1 - 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템 - Google Patents

맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템 Download PDF

Info

Publication number
KR102516450B1
KR102516450B1 KR1020200133998A KR20200133998A KR102516450B1 KR 102516450 B1 KR102516450 B1 KR 102516450B1 KR 1020200133998 A KR1020200133998 A KR 1020200133998A KR 20200133998 A KR20200133998 A KR 20200133998A KR 102516450 B1 KR102516450 B1 KR 102516450B1
Authority
KR
South Korea
Prior art keywords
image
street view
map
feature
view image
Prior art date
Application number
KR1020200133998A
Other languages
English (en)
Other versions
KR20220050386A (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 KR1020200133998A priority Critical patent/KR102516450B1/ko
Publication of KR20220050386A publication Critical patent/KR20220050386A/ko
Application granted granted Critical
Publication of KR102516450B1 publication Critical patent/KR102516450B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • 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
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/03Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
    • G01S19/05Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers providing aiding data
    • G06T3/0087
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/16Spatio-temporal transformations, e.g. video cubism
    • G06T5/002
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20132Image cropping

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Remote Sensing (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Computer Graphics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Processing Or Creating Images (AREA)
  • Navigation (AREA)
  • Instructional Devices (AREA)

Abstract

본 발명은 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템에 관한 것이다. 본 발명에 따른 이미지 기반 측위용 맵 생성 방법은, 거리뷰 이미지로부터 특징점들을 검출하는 단계와, 상기 특징점들 간의 매칭을 수행하고, 상기 매칭된 특징점들에 상기 거리뷰 이미지의 특성정보를 반영하여, 상기 거리뷰 이미지와 관련된 3차원 포인트를 생성하는 단계, 및 상기 생성된 3차원 포인트에 대한 최적화를 수행하여 상기 거리뷰 이미지에 대한 특징점 맵을 생성하는 단계를 포함한다.

Description

맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템{METHOD OF GENERATING MAP AND VISUAL LOCALIZATION SYSTEM USING THE MAP}
본 발명은 이미지 기반 측위에 활용가능한 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템에 관한 것이다.
측위 기술은, GPS 기반, 관성 센서 기반, 이미지 기반, SLAM(Simultaneous localization and mapping), VLC(Visible light communication) 등 다양한 방식의 시스템이 서로 밀접한 관계를 가지고 발전해오고 있다.
이러한 측위 기술 중, 이미지 기반 측위(Visual Localization)는, 촬영한 사진을 통해 위치를 찾는 기술로서, GPS와 비교하였을 때, 오차가 적고, 사용자가 바라보는 방향까지도 정확하게 측정할 수 있는 장점이 있다. 이러한, 이미지 기반 측위를 위하여, 촬영한 사진과 비교하여 위치를 특정하기 위한 맵이 구축되어야 한다.
한편, 최근에는 온라인 지도 제작 기술이 상당히 고도화되어, 많은 IT 기업들이 실외 공간에 대한 지도정보와 이에 따른 서비스를 제공하고 있다. 이러한, 예로서, 차도를 따라 차량이 이동하면서 촬영 이미지를 획득한 후, 사용자가 전자 지도 상의 특정 지점에 대한 거리뷰 이미지를 요청할 경우 촬영된 이미지를 제공하는 거리뷰 기능이 상용화되어 있다.
예를 들어, 한국공개특허 제 10-2020-0033242호(공개일자 2020년03월27일)는 거리뷰 제공 방법 및 장치에 관한 것으로, 거리뷰 이미지를 제공하는 방법을 개시하고 있다.
이러한, 거리뷰 이미지는 이미지를 기반으로 하므로, 이미지 기반 측위용 맵을 구축하기 위한 데이터로서 활용이 가능하다. 따라서, 이미지 기반 측위용 맵을 생성하기 위하여, 거리뷰 이미지를 이용하는 방안이 고려될 수 있다.
본 발명은, 거리뷰 이미지를 활용하여 이미지 기반 측위용 맵을 생성하는 방법 및 시스템을 제공하는 것이다.
보다 구체적으로, 본 발명은, 거리뷰 이미지를 이용하여 도로나 보도(sidewalk)에서 이미지 기반 측위에 활용가능한 3차원 특징점 맵을 생성하는 방법을 제공한다.
또한, 본 발명은, 특징점 맵을 활용하여 이미지 한장만으로 도로나 보도에서 3차원 위치 및 포즈를 추정하는 이미지 기반 측위를 구현한다.
위에서 살펴본 과제를 해결하기 위하여, 본 발명에 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템은, 거리뷰 이미지로부터 추출한 3차원 포인트를 최적화를 수행하여 맵을 생성하는 프로세스를 이용한다.
구체적으로, 이미지 기반 측위용 맵 생성 방법은, 거리뷰 이미지로부터 특징점들을 검출하는 단계와, 상기 특징점들 간의 매칭을 수행하고, 상기 매칭된 특징점들에 상기 거리뷰 이미지의 특성정보를 반영하여, 상기 거리뷰 이미지와 관련된 3차원 포인트를 생성하는 단계, 및 상기 생성된 3차원 포인트에 대한 최적화를 수행하여 상기 거리뷰 이미지에 대한 특징점 맵을 생성하는 단계를 포함한다.
본 발명의 일 실시예에 있어서, 상기 특징점들을 검출하는 단계는, 상기 거리뷰 이미지의 각각에서 오브젝트에 대한 특징점을 검출하고, 상기 거리뷰 이미지 내에서 상기 오브젝트들을 의미 단위로 분할하여, 상기 오브젝트 중 적어도 일부에 해당하는 특징점을 필터링하는 단계가 될 수 있다.
상기 특징점의 필터링은 상기 거리뷰 이미지를 불필요한 영역과 필요한 영역으로 분할하고, 상기 불필요한 영역에 해당하는 특징점들을 제거한다.
상기 특징점의 매칭은 상기 거리뷰 이미지 중 적어도 한 쌍의 이미지 간의 호모그래피(homography)를 산출하고, 상기 호모그래피를 이용하여 설정된 특정 범위내에서 수행될 수 있다.
본 발명의 다른 일 실시예에 있어서, 상기 이미지 기반 측위용 맵 생성 방법은 상기 거리뷰 이미지를 적어도 하나의 이미지로 크로핑하는 단계를 더 포함한다. 상기 특징점들을 검출하는 단계는 상기 적어도 하나의 크로핑된 이미지에 대하여 수행될 수 있다.
상기 거리뷰 이미지는 구형 파노라마(spherical panoramic) 이미지를 구비하고, 상기 구형 파노라마 이미지는 복수의 이미지로 크로핑(cropping)될 수 있다. 상기 크로핑된 복수의 이미지는 세로 방향이 가로 방향보다 긴 이미지가 될 수 있다.
본 발명의 다른 일 실시예에 있어서, 상기 특성정보는 상기 거리뷰 이미지의 취득 시점의 GPS 위치 정보와 차량의 각도 정보를 포함하고, 상기 3차원 포인트는 상기 GPS 위치 정보와 상기 차량의 각도 정보를 이용하여, 실제 스케일과 동일한 포인트로서 생성된다.
상기 3차원 포인트는 상기 거리뷰 이미지 간의 매칭된 특징점과 매칭에 실패한 특징점에 대하여 서로 다른 방법으로 생성될 수 있다.
상기 거리뷰 이미지로부터 추출되는 컬러 이미지 및 sparse depth 이미지를 이용하여 dense한 depth 이미지를 추정하고, 상기 추정된 depth 이미지를 이용하여 상기 매칭에 실패한 특징점에 대응되는 3차원 포인트가 추출될 수 있다.
본 발명의 다른 일 실시예에 있어서, 상기 특징점 맵을 생성하는 단계는, 노드와 엣지를 이용한 그래프 구성을 통하여 상기 거리뷰 이미지들의 포즈와 상기 3차원 포인트의 위치를 보정하여 상기 특징점 맵을 생성한다.
상기 노드는 상기 거리뷰 이미지들의 포즈와 상기 3차원 포인트의 위치로 설정되고, 상기 엣지는 상기 노드와 관련된 적어도 하나의 에러로 설정될 수 있다.
나아가, 본 발명은, 이미지 기반 측위 시스템에 있어서, 특징점 맵을 저장하는 데이터 베이스, 및 모바일 기기나 자율주행 기기에서 실행되며, 상기 특징점 맵과 상기 모바일 기기나 자율주행 기기에서 촬영한 이미지를 이용하여 이미지 기반 측위를 수행하는 구동부를 구비하고, 상기 특징점 맵은 상기 도로에서 촬영된 거리뷰 이미지를 이용하여 추출한 3차원 포인트를 최적화를 통하여 보정하여 생성되며, 상기 3차원 포인트는 상기 거리뷰 이미지의 각각에서 특징점들을 검출하고, 상기 특징점들 간의 매칭을 수행하며, 상기 매칭된 특징점들에 상기 거리뷰 이미지의 특성정보를 반영하여 생성되는 것을 특징으로 하는 이미지 기반 측위 시스템을 개시한다.
본 발명에 따른 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템은, 거리뷰 이미지를 이용하여 맵을 생성하기에, 도로나 보도에서 실제 이미지를 사용한 이미지 기반 측위(Visual Localization)를 가능하게 한다. 실제 이미지이므로, 이미지 매칭이나 특징(feature) 매칭이 보다 용이하게 될 수 있다. 또한, 거리뷰 이미지는 지표면 근처에서 촬영한 이미지이므로, 저층 건물의 Texture 가 뭉개지는 일이 없으며, 표지판 등을 포함할 수 있다.
또한, 본 발명은, 기 구축된 데이터인 거리뷰 이미지를 이용하여 맵을 생성하므로, 실외 환경에 대한 사전 스캔 프로세스가 없는 맵 생성을 구현한다. 이를 통하여, 시간 및 비용의 효율성이 제고될 수 있다. 이 경우에, 부정확한 거리뷰 이미지의 위치정보 및 포즈정보를 보정하여, 거리뷰 이미지로부터 최적화된 특징점 맵이 생성되는 것을 가능하게 한다.
또한, 본 발명은, 거리뷰 이미지의 GPS 및 IMU의 데이터를 사용하므로, 실제 스케일을 구현할 수 있다. 또한, 타일별 병렬처리를 통하여 맵을 생성할 수 있어, 확장성(scalability)이 확보될 수 있다.
또한, 본 발명은 여러 장소에서 촬영된 거리뷰 이미지들을 활용하여 3차원 지도를 재건하고, 재건된 3차원 지도를 활용하여 측위를 수행하므로, 이미지 한 장만으로도 3차원 위치 및 포즈를 추정할 수 있는 장점을 가진다.
도 1은 본 발명에 따른 이미지 기반 측위를 수행하는 동작을 설명하기 위한 개념도이다.
도 2는 도 1의 이미지 기반 측위를 구현하는 시스템의 일 예를 도시한 것이다.
도 3a는 본 발명에 따른 이미지 기반 측위용 맵 생성 방법을 설명하기 위한 흐름도이고, 도 3b는 도 3a의 흐름도의 일 실시예를 나타내는 상세 흐름도이다.
도 4는 도 3b의 제1단계의 설명을 위한 개념도들이다.
도 5a 및 도 5b는 도 3b의 제2단계의 설명을 위한 개념도들이다.
도 6a 및 도 6b는 도 3b의 제3단계의 설명을 위한 개념도들이다.
도 7a 및 도 7b는 도 3b의 제4단계의 설명을 위한 개념도들이다.
도 8a 및 도 8b는 도 3b의 제5단계의 설명을 위한 개념도들이고, 도 8c는 도 3b의 제5단계에 의한 데이터 처리 결과물을 나타내는 개념도이다.
도 9a는 도 3a의 프로세스에 의하여 구현된 맵의 일 예를 보여주는 예시도이고, 도 9b는 도 9a의 맵을 이용하여 보도에서 이미지 기반 측위를 수행하는 예를 나타내는 개념도이다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소에는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명은 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템에 관한 것으로, 구체적으로 거리뷰 이미지를 이용하여 도로나 보도에서 이미지 기반 측위를 하는 시스템을 제공하는 것이다.
온라인에서 제공되는 거리뷰 기능은 전자 지도 상의 특정 스팟에서 사용자가 선택한 방향의 이미지(또는 사진이나 영상)를 보여주는 기능이다. 여기서 스팟은 거리뷰 사진을 찍은 위치로서, 일정 거리, 예를 들어 10m 간격으로 존재할 수 있다.
이러한 거리뷰 기능에 이용되는 거리뷰 이미지는 여러 대의 카메라로 여러 방향의 사진을 촬영한 후 사진을 이어 붙인 파노라마 사진으로, 사용자는 사진을 360도로 돌려 한 지점에서 여러 방향의 사진을 볼 수 있다. 보다 구체적으로, 본 발명에서 예시하는 거리뷰 이미지는 360도의 구형 파노라마 이미지가 될 수 있다.
이와 같이, 거리뷰 이미지는 파노라마 사진이므로 해당 스팟에서 방향을 조절하여 360도 파노라마 사진을 보고 해당 공간에 대한 실제 정보를 얻을 수 있다.
한편, 상기 거리뷰 이미지는 도로 시점에서 촬영된 이미지가 될 수 있다. 예를 들어, 차도를 따라 차량이 이동하면서 촬영 이미지를 획득한 후, 파노라마 사진을 생성하며, 따라서 상기 거리뷰 이미지는 도로, 보다 구체적으로 차도에서 바라본 이미지가 될 수 있으며, 본 발명에서는 이를 도로 시점에서 촬영된 이미지로 지칭한다. 다만, 본 발명은 반드시 이에 한정되는 것은 아니며, 상기 거리뷰 이미지는 다른 시점이나 다른 방법으로 촬영된 이미지도 될 수 있다.
상기 보도(sidewalk)는 차량 등이 다니는 도로에 병설된 인도(人道)를 의미하는 말이다. 차도 양측에 설치되어 사람과 차 모두 해당 지역을 통행할 수 있도록 하는 동시에 서로의 경로를 구분 짓는다. 상기 보도는 좁은 의미로, 차도 옆에 설치된 포장된 길을 특정하는 말로 쓰일 수 있으나, 본 발명에서는 이에 한정하는 것은 아니다. 즉, 상기 보도는 사람이 다니는 길을 통칭하는 의미로 정의된다.
상기 도로나 보도에서 이미지 기반 측위(Visual localization)를 하는 것은, 상기 도로나 보도에서 GPS를 사용하지 않고 주변을 촬영한 사진을 이용하여 자신의 정확한 위치를 파악하는 측위를 의미한다. 다른 의미로, 상기 도로나 보도에서 이미지 기반 측위를 하는 것은 도보로 이동하는 사용자가 주변을 촬영하면, 촬영된 이미지로부터 사용자의 위치를 파악하는 것을 의미할 수 있다.
한편, 본 발명에서 상기 이미지 기반 측위는 모바일 기기나 자율주행 기기에서 수행될 수 있다.
상기 모바일 기기는, 손에 들거나 몸에 지니고 다닐 수 있는 이동 단말기가 될 수 있고, 상기 자율주행 기기는, 스스로가 이동 가능하도록 이루어지는 모바일 장치를 의미할 수 있다.
예를 들어, 상기 이동 단말기에는 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿 PC(tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(wearable device, 예를 들어, 워치형 단말기 (smartwatch), 글래스형 단말기 (smart glass), HMD(head mounted display) 등이 포함될 수 있다. 또한, 상기 자율주행 기기는 자율주행차, 드론, 로봇 등이 될 수 있으며, 상기 로봇은 청소로봇, 안내로봇, 배달로봇 등 이동하면서 위치기반 서비스를 제공하는 로봇이 될 수 있다.
한편, 본 발명의 실시예에서는 보도에서 위치를 획득하거나, 도보로 이동하면서 위치를 획득하는 새로운 방식의 측위 방법 및 시스템에 대하여 상기 모바일 기기나 자율 주행기기의 위치를 기준으로 설명하나, 본 발명은 반드시 이에 한정되는 것은 아니다. 상기 모바일 기기나 자율 주행기기는 사용자의 위치를 측정하는 하나의 수단으로 이해되며, 다른 기기도 본 발명에 적용될 수 있다.
이와 같이, 본 발명에 따른 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템은 사용자에게 현재의 위치 정보를 제공하며, 이를 위하여 거리뷰 이미지를 이용하여 생성된 맵을 사용한다. 이하에서는, 먼저, 이미지 기반 측위와 이를 구현하는 시스템에 대하여 설명하고, 이후에, 이러한 이미지 기반 측위에 사용되는 맵을 생성하는 방법에 대하여 도면을 참조하여 보다 상세히 설명한다.
도 1은 본 발명에 따른 이미지 기반 측위를 수행하는 동작을 설명하기 위한 개념도이고, 도 2는 도 1의 이미지 기반 측위를 구현하는 시스템의 일 예를 도시한 것이다.
도 1을 참조하면, 자율 주행기기로서 로봇(R)이 실외 공간에 위치한다. 상기 로봇은 배달 로봇이나 안내 로봇 등의 서비스 로봇이 될 수 있다. 다만, 로봇(R)이 주행하는 공간의 종류에는 제한이 없으며, 필요에 따라 실내 공간 및 실외 공간 중 적어도 하나를 주행하도록 이루어 질 수 있다. 본 예시에서는, 상기 로봇(R)은 서비스를 제공 등, 부여된 임무를 수행하기 위하여 사람들이 도보로 이동하는 보도(11)를 통하여 주행하도록 이루어질 수 있다.
로봇(R)을 이용하여 다양한 서비스를 제공하기 위해서는, 로봇(R)이 정확하고, 신속하게 자기 위치를 확인하는 것이 매우 중요한 요소이다. 따라서, 로봇(R)은 보도(11)를 통하여 주행하면서 신속하게 이미지 기반 측위를 수행할 수 있다.
이러한 이미지 기반 측위의 예로서, 로봇(R)이 도로(12)를 중심으로 일측 보도(11)에서 타측 보도를 바라보면서 이미지를 촬영하고, 촬영한 이미지를 3차원 맵과 비교하여 자신의 위치를 찾게 된다. 이 경우에, 보도(11)에서 바라본 이미지들을 획득하여 3차원 맵을 생성하는 것은 많은 노력과 시간이 들어간다. 본 발명에서는 기 구축된 데이터인 거리뷰 이미지를 이용하여 특징점 맵을 생성하며, 이를 통하여 실외 환경에 대한 사전 스캔 프로세스가 없는 맵 생성을 구현한다.
상기 특징점 맵은 3차원의 특징점에 대한 데이터를 가지는 맵으로서, 피쳐 맵, 거리 맵 또는 3차원 특징점 맵으로도 지칭될 수 있다. 본 예시에서는 도로나 보도와 같은 거리에서 이미지 기반 측위에 활용되는 맵을 예시한다. 다만, 상기 도로나 보도는 이미지 기반 측위를 수행하는 지점의 예시일 뿐, 본 발명의 특징점 맵은 항공의 이미지 기반 측위에도 활용될 수 있다. 이하에서는, 설명의 편의상 보도(11)에서의 이미지 기반 측위를 예시로서 본 발명을 설명한다.
또한, 보도(11)에서의 이미지 기반 측위는 도 2를 통하여 예시한 이미지 기반 측위 시스템(100)을 통하여 구현될 수 있다.
상기 이미지 기반 측위 시스템(100)은 자율주행 기기(110) 및 컨트롤 서버(120)를 구비할 수 있다. 다만, 전술한 바와 같이 상기 자율주행 기기(110)는 본 실시예에서 로봇(R)으로 예시되며, 또한, 모바일 기기로 대체될 수 있다.
상기 자율주행 기기(110)는 무선통신부(111), 구동부(112) 및 제어부(113) 중 적어도 하나를 구비할 수 있다.
상기 무선통신부(111)는 상기 자율주행 기기와 컨트롤 서버 사이, 상기 자율주행 기기와 다른 자율주행 기기의 사이, 상기 자율주행 기기와 모바일 기기 사이, 상기 자율주행 기기와 통신 네트워크 사이에서 무선 통신을 수행한다. 이러한 무선통신의 수행을 위하여, 상기 무선통신부(111)는 무선 인터넷 모듈, 근거리 통신 모듈, 위치정보 모듈 등을 구비할 수 있다.
상기 구동부(112)는 상기 제어부에 의한 제어 하에 상기 자율주행 기기나 모바일 기기에서 실행될 수 있다. 상기 구동부(112)는 특징점 맵과 상기 자율주행 기기나 모바일 기기에서 촬영한 이미지를 이용하여 이미지 기반 측위를 수행하도록 이루어진다. 이와 같이 이미지 기반 측위를 수행하기 위하여, 상기 구동부(112)는 이미지 센서 등을 구비할 수 있다.
상기 특징점 맵은 도로(12)의 주변에 위치한 보도(sidewalk) 시점의 이미지 기반 측위에 활용가능한 맵으로서, 이미지 기반 측위용으로 제작된 맵이 될 수 있다.
한편, 제어부(113)는 무선통신을 제어하고, 이미지를 촬영하고, 구동부(112)를 제어하는 동작과 더불어, 통상적으로 상기 자율주행 기기나 모바일 기기의 전반적인 동작을 제어한다.
이 경우에, 상기 특징점 맵은 컨트롤 서버(120)에서 상기 자율주행 기기(110)로 제공되거나, 상기 자율주행 기기(110)의 요청에 의하여 상기 컨트롤 서버(120)에서 측위에 이용될 수 있다. 상기 컨트롤 서버는 무선통신부(121), 데이터 베이스(122), 연산부(123), 제어부(124) 중 적어도 하나를 구비할 수 있다.
상기 무선통신부(121)는 상기 제어부(124)의 제어 하에 상기 자율주행 기기(110)와 무선 통신을 수행한다. 또한, 상기 제어부(124)는 상기 연산부(123)와 데이터 베이스(122)와 연계하여, 특징점 맵을 생성, 저장 및 업데이트하는 일련의 프로세스를 제어한다.
상기 데이터 베이스(122)에는 상기 특징점 맵이 저장되며, 상기 특징점 맵에는 좌표정보, 포인트 클라우드 정보, 이미지 정보, 포즈 정보 등이 구비될 수 있다.
상기 연산부(123)는 상기 특징점 맵을 최초 생성하거나, 생성된 특징점 맵을 업데이트하는 기능을 수행할 수 있다. 또 다른 예로서, 상기 연산부(123)가 상기 자율주행 기기(110)의 구동부(112)가 하는 기능을 대신하는 것도 가능하다. 예를 들어, 상기 자율주행 기기(110)에서 촬영한 이미지를 이용하여, 이미지 기반 측위를 위한 데이터 처리 또는 연산 등을 수행하여 상기 자율주행 기기(110)의 위치를 산출한 후, 산출된 위치를 기기(110)에 제공할 수 있다.
본 발명에서 상기 특징점 맵은 상기 도로에서 촬영된 거리뷰 이미지를 이용하여 추출한 3차원 포인트를 보도 시점의 이미지 기반 측위에 활용가능하도록, 최적화 수행으로 보정하여 생성될 수 있다. 이와 같이, 본 발명은 거리뷰 이미지들을 활용하여 3차원 지도를 재건하여 특징점 맵을 생성하고, 상기 특징점 맵을 활용하여 측위를 수행하므로, 이미지 한 장만으로도 3차원 위치 및 포즈를 추정할 수 있는 장점을 가진다.
이하에서는, 이러한 특징점 맵을 생성하는 방법에 대하여 도면을 참조하여 보다 상세하게 설명한다.
도 3a는 본 발명에 따른 이미지 기반 측위용 맵 생성 방법을 설명하기 위한 흐름도이고, 도 3b는 도 3a의 흐름도의 일 실시예를 나타내는 상세 흐름도이다.
도 3a를 참조하면, 본 발명의 실내 측위 방법은 특징점 검출 단계(S110), 포인트 생성 단계(S120) 및 특징점 맵을 생성하는 단계(S130)를 구비할 수 있다.
먼저, 특징점 검출 단계(S110)에서는 도로 시점에서 촬영된 거리뷰 이미지에서 특징점들을 검출한다. 예를 들어, 상기 거리뷰 이미지의 각각에서 오브젝트에 대한 특징점이 검출될 수 있다.
상기 오브젝트는 도로, 나무, 사람, 자동차, 하늘, 건물 등을 포함하며, 상기 거리뷰 이미지 내의 모든 객체들 중 적어도 하나가 될 수 있다.
이를 위하여, 도 3b를 참조하면, 상기 특징점 검출 단계(S110)는 제1단계(S111), 제2단계(S112) 및 제3단계(S113)로 세분화될 수 있다. 상기 제1단계(S111)는 이미지를 크로핑(cropping)하는 단계이며, 거리뷰 이미지를 복수의 이미지들로 크로핑한다.
상기 크로핑은 이미 촬영된 이미지의 일부를 잘라내는 것을 의미한다. 구체적으로, 상기 크로핑은 트리밍과 유사한 의미로서, 이미지의 불필요한 부분을 잘라내거나, 또는 사진을 분할하여 기설정된 기준에 따라 여러가지 이미지로 자르는 것을 의미할 수 있다.
상기 제2단계(S112)는 특징점을 필터링하는 단계이며, 보다 구체적으로 특징점을 매칭하기 전에 이미지 내에서 불필요한 오브젝트를 설정하는 단계가 될 수 있다. 상기 제3단계(S113)는 특징점을 매칭하는 단계로서, 상기 불필요한 오브젝트를 제외한 나머지 오브젝트에서 특징점을 매칭하는 단계가 될 수 있다.
다만, 본 발명에서 불필요한 오브젝트를 제외하고 특징점을 매칭한다는 것은 반드시 불필요한 오브젝트에 해당하는 모든 특징점을 제거한다는 것을 의미하는 것은 아니다. 여기서 특징점의 필터링은 불필요한 오브젝트에 해당하는 특징점의 수를 최대한 줄인다는 의미로 해석되어야 한다. 나아가, 상기 제2단계(S112)와 제3단계(S113)는 반드시 시계열적으로 진행되는 단계로 한정되지 않는다. 예를 들어, 상기 제2단계(S112)와 제3단계(S113)는 순서가 뒤바뀌거나 동시에 진행될 수 있다.
이와 같이, 상기 특징점 검출 단계(S110)에서는 거리뷰 이미지를 크로핑하고, 필터링과 함께 크로핑한 이미지들 간의 특징점이 매칭될 수 있다.
이후에, 포인트 생성 단계(S120)에서 특징점 맵을 생성하기 위한 포인트들이 생성된다. 보다 구체적으로, 상기 포인트 생성 단계(S120)는 제4단계(S121) 및 제5단계(S122)를 구비할 수 있다.
상기 제4단계(S121)는 상기 특징점들 간의 매칭에 근거하여, 상기 거리뷰 이미지와 관련된 3차원 포인트들을 생성하는 단계가 될 수 있다. 생성된 3차원 포인트들은 제5단계(S122)의 포인트 최적화를 거치며, 이를 통하여 특징점 맵이 생성(S130)될 수 있다. 이 때에, 상기 제5단계(S122)는 상기 특징점 맵을 생성하기 위하여, 최적화를 수행하여 상기 3차원 포인트를 보정하는 단계가 될 수 있다.
상기에서 설명한 바와 같이, 본 발명의 이미지 기반 측위용 맵 생성 방법은 제1단계 내지 제5단계를 구비할 수 있다. 다만, 본 발명은 반드시 이에 한정되는 것은 아니며, 예를 들어 이미지 기반 측위용 맵 생성 방법의 각 단계 중에서 일부가 제외되는 것도 가능하다. 이러한 예로서, 상기 이미지를 크로핑하는 제1단계(S111)를 제외하여 상기 특징점 맵이 생성될 수 있다.
이하에서는, 이미지 기반 측위용 맵 생성 방법의 각 단계에 대하여 예시와 함께 보다 상세히 설명한다.
도 4는 도 3b의 제1단계의 설명을 위한 개념도들이고, 도 5a 및 도 5b는 도 3b의 제2단계의 설명을 위한 개념도들이며, 도 6a 및 도 6b는 도 3b의 제3단계의 설명을 위한 개념도들이고, 도 7a 및 도 7b는 도 3b의 제4단계의 설명을 위한 개념도들이며, 도 8a 및 도 8b는 도 3b의 제5단계의 설명을 위한 개념도들이고, 도 8c는 도 3b의 제5단계에 의한 데이터 처리 결과물을 나타내는 개념도이다.
먼저, 도 4를 참조하여 거리뷰 이미지를 크로핑하는 단계에 대하여 설명한다.
상기 제1단계(S111)에서는, 거리뷰 이미지(130)를 기반으로 이미지를 크로핑(cropping)하여 적어도 하나의의 이미지로 분할한다. 상기 이미지의 분할은 상기 거리뷰 이미지(130)의 하나의 이미지를 잘라내거나, 복수의 이미지로 분할하는 것을 포함할 수 있다.
예를 들어, 상기 거리뷰 이미지(130)는 구형 파노라마(spherical panoramic) 이미지를 구비하고, 상기 구형 파노라마 이미지는 복수의 이미지(141, 142)로 크로핑(cropping)될 수 있다.
상기 구형 파노라마 이미지는 360도의 이미지이며, 이를 특정 각도로 바라본 여러 장의 이미지로 크로핑이 수행된다. 예를 들어, 북쪽을 기준으로 복수의 방향으로 나누어서 상기 크로핑을 수행할 수 있다.
상기 거리뷰 이미지(130)를 크로핑하므로, 상기 거리뷰 이미지(130)와 사이즈가 다른 복수의 이미지(141, 142)가 생성된다. 이 경우에, 상기 크로핑된 복수의 이미지(141, 142)는 세로 방향이 가로 방향보다 긴 이미지가 될 수 있다. 예를 들어, 상기 거리뷰 이미지(130)는 스마트 폰의 디스플레이와 같이, 세로 방향으로 긴 이미지로 크로핑될 수 있다. 상기 스마트 폰에서 이미지를 촬영하여 이미지 기반 측위에 활용하기 위하여, 상기 크로핑된 복수의 이미지(141, 142)는 촬영된 이미지와 유사한 형태를 가질 수 있다. 이와 같이, 상기 크로핑된 복수의 이미지(141, 142)는 세로방향으로 길게 형성되어, 스마트 폰에서 촬영된 이미지와 대조하는 정보로서 활용될 수 있다.
또한, 상기 크로핑된 복수의 이미지(141, 142)에는 동일한 오브젝트의 그래픽 객체가 시점을 달리하여 포함될 수 있다. 즉, 상기 크로핑된 복수의 이미지(141, 142)에서 상기 그래픽 객체는 일부 중첩되나 서로 다른 각도에서 바라보는 모습을 가질 수 있다.
한편, 상기 크로핑에 의하여 상기 거리뷰 이미지(130)에서 특정 영역은 상기 복수의 이미지에서 제외될 수 있다. 이러한 예로서, 도시된 바와 같이 상기 거리뷰 이미지(130)에는 거리를 촬영하는 차량의 일부가 포함될 수 있다. 해당하는 영역은 특징점 맵 생성에 불필요한 영역으로서 상기 크로핑을 이용하여 제외할 수 있다.
다음으로, 상기 특징점들을 검출하는 단계는 상기 크로핑된 복수의 이미지에 대하여 수행될 수 있다. 이 때에, 상기 특징점 매칭을 필터링하는 제2단계(S122)가 먼저 수행될 수 있다.
도 5a를 참조하면, 제2단계(S122)에서는 상기 거리뷰 이미지 내에서 상기 오브젝트들을 의미 단위로 분할하여, 상기 오브젝트 중 적어도 일부에 해당하는 특징점을 필터링한다. 상기 특징점의 필터링은 상기 거리뷰 이미지를 불필요한 영역과 필요한 영역으로 분할하고, 상기 불필요한 영역에 해당하는 특징점들을 제거하는 방식으로 수행될 수 있다. 이러한 예로서, 시맨틱 세그먼트(Semantic segmentation) 기반의 매칭 필터링을 통하여 불필요한 특징점들이 제거될 수 있다.
도 5b를 참조하면, 제1 이미지(143)과 제2이미지(144)의 사이에서 나무(153)와 자동차(154)에 의하여 많은 특징점들이 생성됨을 알 수 있다. 이와 같이, 이미지 내에 도로, 나무, 사람, 자동차 영역에서 불필요한 매칭들이 발생하면, 이미지 기반 측위의 성능 저하 및 매핑의 정확도를 떨어트리게 된다. 이를 방지하기 위하여, 크로핑된 이미지(150)의 픽셀에 대하여 기설정된 개수의 클래스로 분류하여, 모든 픽셀에 대하여 레이블의 예측을 수행한다. 이러한 모든 픽셀의 레이블 예측을 통하여 분할이 수행될 수 있다.
크로핑된 이미지(150)내의 건물(151)은 필요한 영역의 제1클래스로서 레이블될 수 있고, 도로(152), 나무(153), 자동차(154), 사람(155)은 불필요한 영역의 제2클래스로서 레이블 될 수 있다.
결론적으로, 크로핑된 이미지(150) 내에서, 도로, 나무, 사람, 자동차 등 동적으로 움직이거나 계절에 따라 변하는 오브젝트에 대하여 시맨틱 세그먼트 필터링을 이용하여 특징점을 제거할 수 있다.
이와 같은 시맨틱 세그먼트 필터링에 의하여, 이후 특징점 매칭이 보다 정확하게 수행될 수 있다. 도 6a는 제2단계(S122)를 통하여 필터링을 수행하면서, 제3단계(S123)의 특징점 매칭을 수행한 결과를 보여준다. 도시에 의하면, 제1 이미지(143)과 제2이미지(144)에서 나무(153)와 자동차(154)에서 특징점이 제거되어, 보다 정확한 특징점 매칭이 수행됨을 알 수 있다.
이 경우에, 제3단계(S123)에서는 특정 범위 안에 있는 여러 장의 크로핑된 이미지들끼리 서로 특징점 매칭을 수행한다. 예를 들어, 거리뷰 이미지의 GPS 정보를 이용하여 반경을 설정하고, 설정된 반경내에 수집되고 크로핑된 이미지들을 모아서 특징점 매칭을 수행한다. 보다 구체적으로, 도 6b와 같이 이미지 내에 특정 건물이 나타나는 범위를 예시하면, 건물의 일측 끝이 나타나는 이미지와 건물의 대부분이 나타나는 이미지의 사이에서 특징점의 매칭이 수행될 수 있다.
또한, 상기 특징점의 매칭은 상기 거리뷰 이미지 중 적어도 한 쌍의 이미지 간의 호모그래피(homography)를 산출하고, 상기 호모그래피를 이용하여 설정된 특정 범위내에서 수행될 수 있다. 이와 같이, 본 발명에서는 두 이미지 간의 전체 특징점을 비교하는 Putative Matching와 달리, 호모그래피를 이용하여 설정된 특정 범위내에서 밀도높은 특징점 매칭이 진행된다.
도 6b의 (a)는 Putative Matching의 결과를 나타내며, 도 6b의 (b)는 호모그래피에 의한 가이드 매칭(Guided Matching)의 결과를 나타낸다. 도시에 의하면, 매칭 수행시에 두 이미지 간의 호모그래피를 산출하여 이용함에 따라, 보다 밀도 높은 특징점 매칭이 가능함을 알 수 있다.
보다 구체적으로, 먼저 두 이미지 전체의 특징점들을 일대일로 매칭하는 Putative Matching을 통하여, 두 이미지 사이의 호모그래피의 트랜스폼(Transform)을 산출한다. 다음으로, 기설정된 범위의 픽셀 내에서 특징점을 매칭한다. 보다 구체적으로, 상기 트랜스폼을 이용하여 대응하는 픽셀을 찾은 다음에 반경을 설정하고, 반경내의 특징점끼리만 매칭을 하게 된다. 이러한 예로서, 포인트를 기준으로 제1이미지내의 어느 픽셀에 대한 제2이미지에 대한 위치를 검출하며, 상기 위치를 기준으로 10 내지 20픽셀의 반경내에서 상기 호모그래피를 이용하여 특징점 매칭을 수행한다.
이후에 이미지 전체에 걸쳐서 위치를 이동하면서 특징점 매칭이 수행되며, 이러한 가이드 매칭에 의하면, 보다 밀도 높은 특징점 매칭이 수행될 수 있다.
다음으로, 제4단계(S121)에서는 매칭된 결과를 이용하여 3차원 포인트들을 생성하게 된다.
상기 3차원 포인트는 상기 거리뷰 이미지의 취득 시점의 GPS 위치 정보와 차량의 각도를 이용하여, 실제 스케일과 동일한 포인트로서 생성된다. 이러한 예로서, 트라이앵글레이션(triangulation) 기법에 의하여 상기 포인트가 생성될 수 있다.
도 7a를 참조하면, GPS 위치 정보와 차량의 각도를 이용하여 한 장의 이미지에서 대하여 포즈를 산출한다. 여기서 차량의 각도는 IMU (Inertial Measurement Unit, 관성 측정 장치) 정보로부터 획득할 수 있다. 이후에, 포즈를 이용하여 두 이미지(161, 163) 사이에서 얻어지는 동일한 특징점에 대한 3차원 포인트(P)를 산출한다.
예를 들어, 제1이미지(161)와 제2이미지(163)에서, 에피폴라 기하학(Epipolar Geometry)을 고려하면, 우리가 눈으로 보는 3차원 포인트(P)와, 제1중심점(O1)에서 촬영한 제1이미지(161)와, 상기 제1이미지(161)에 투영된 포인트(P1)와, 제2중심점(O2)에서 촬영한 제2이미지(163)와, 상기 제2이미지(163)에 투영된 포인트(P2)의 사이에는 도 7a와 같은 관계가 성립한다.
상기 제1중심점(O1)과 제2중심점(O2)을 연결한 라인과 상기 이미지들(161, 163)이 만나는 지점에 에피폴(Epipole, e1, e2)가 형성되고, 에피폴라 라인(162) 상에 상기 에피폴(e1, e2)과 투영된 포인트들(P1, P2)이 위치하게 된다. 이러한 관계를 이용하면, 두 이미지로부터 3차원 포인트(P)가 생성될 수 있으며, 절대적인 GPS 위치에 상기 3차원 포인트가 배치된다.
이 경우에, 상기 3차원 포인트는 상기 거리뷰 이미지 간의 매칭된 특징점과 매칭에 실패한 특징점에 대하여 서로 다른 방법으로 생성될 수 있다. 상기 매칭된 특징점은 전술한 트라이앵글레이션(triangulation) 기법에 의하여 3차원 포인트를 생성하고, 매칭에 실패한 특징점은 뎁스 컴플리션(Depth completion) 기법을 통하여 3차원 포인트를 생성한다.
예를 들어, 도 7b와 같이 컬러 이미지 및 sparse depth 이미지를 이용하여 dense한 depth 이미지를 추정한다. 구체적으로, 트라이앵글레이션 기법으로 생성된 3차원 포인트를 이미지로 프로젝션하고, 프로젝션된 이미지와 RGB 컬러 이미지를 뉴럴 네트워크에 입력하면, 학습에 의하여 sparse depth 이미지가 출력될 수 있다.
이후에, 컬러 이미지 및 sparse depth 이미지를 이용하여 dense한 depth 이미지를 추정하고, 상기 추정된 depth 이미지를 이용하여 상기 매칭에 실패한 특징점에 대응되는 3차원 포인트를 추출한다.
이러한 방법에 의하여 3차원 포인트를 생성되면, 제5단계(S122)로 상기 3차원 포인트의 최적화가 수행되고, 최적화된 3차원 포인트를 이용하여 특징점 맵을 생성하는 단계(S130)가 진행된다. 이 때에, 상기 특징점 맵을 생성하는 단계는, 노드와 엣지를 이용한 그래프 구성을 통하여 상기 거리뷰 이미지들의 포즈와 상기 3차원 포인트의 위치를 보정하여 상기 특징점 맵을 생성할 수 있다.
상기 3차원 포인트의 최적화를 위하여, 상기 노드는 상기 거리뷰 이미지들의 포즈와 상기 3차원 포인트의 위치로 설정되고, 상기 엣지는 상기 노드와 관련된 적어도 하나의 에러로 설정될 수 있다.
보다 구체적으로, 부정확한 GPS 정보나 IMU의 오차로 인하여 3차원 포인트가 잘못 재건될 수 있다. 특히, 도로를 주행하는 차량에서 보는 이미지에서 획득되는 상기 거리뷰 이미지의 특성정보는 부정확한 정보가 될 수 있다. 이러한 예로서, 상기 특성정보는 상기 거리뷰 이미지의 취득 시점의 GPS 위치 정보와 차량의 각도 정보를 포함하며, 상기 GPS 위치 정보와 상기 차량의 각도 정보는 에러를 가질 수 있다. 따라서, Graph 기반의 최적화를 통해, 거리뷰의 포즈 및 재건된 3차원 포인트를 보정하여 최적화된 특징점 맵을 생성한다.
예를 들어, 도 8a를 참조하면 상기 노드는 크로핑된 거리뷰 이미지들의 포즈 노드(171)와 GPS 및 IMU 포즈 노드(172)를 구비할 수 있다. 크로핑된 거리뷰 이미지들 각각의 포즈 노드(171)는 서로 다른 포즈를 가질 수 있다. 이 경우에 엣지는 신뢰도를 높게 설정한 Cropped 된 거리뷰 이미지들 간의 포즈 차이에 해당하는 between pose 에러(181)와, 신뢰도를 낮게 설정한 거리뷰 취득시 얻었던 GPS와 IMU의 prior 포즈 에러(182)를 구비할 수 있다.
또한, 상기 엣지는 트라이앵글레이션을 통해 재건한 3차원 포인트(173)와 거리뷰 이미지 간의 프로젝션 에러(183)를 더 포함할 수 있다. 여기서 프로젝션 에러(183)는 3차원 포인트를 cropped된 이미지 평면으로 프로젝션을 시켜 얻어진 픽셀 좌표와 각 cropped 된 이미지에서 대응되는 특징점의 픽셀 좌표 사이의 에러를 의미한다. 상기 엣지는 노드(171)와 노드(173) 간의 관계를 정의하는 바이너리 팩터일 수 있다.
이 경우에, 에러 최적화 기법을 이용하여 이러한 에러들(181, 182, 183)에 대하여 최적화를 수행하며, 그 결과로 도 8b와 같이 거리뷰 포즈와 3차원 포인트가 보정될 수 있다.
상기에서 설명한 바와 같이, 거리뷰 이미지를 이용하여 추출된 3차원 포인트는 상기 거리뷰 이미지가 가지는 부정확한 GPS 정보로 인해서 잘못 추정될 수 있으며, 이렇게 잘못 추정된 3차원 포인트로 인해, 복수의 에러가 생기게 되고, 상기 에러를 최소화함으로써, 3차원 포인트 및 GPS 오차까지 보정될 수 있다.
본 발명에서는 거리뷰 이미지를 기반으로 특징점 맵을 생성하며, 상기 특징점 맵을 이용하여 보도에서의 이미지 기반 측위를 수행할 수 있다. 이 경우에, 상기 거리뷰 이미지는 도로 시점에서 획득된 이미지이므로, 보도 시점으로 전환하면 3차원 포인트의 정확도가 보다 저감될 수 있다. 따라서, 본 발명에서는 상기 에러 최적화를 통하여 거리뷰 포즈와 3차원 포인트가 보다 정확해지도록 재건하며, 이를 통하여, 보도 시점의 이미지 기반 측위용 맵이 구현될 수 있다.
이 경우에, 상기 에러 최적화 기법은 특정예에 한정되지 않으며, 본 발명에 적용할 수 있는 다양한 기법들이 고려될 수 있다. 따라서, 본 명세서에서는 이에 대한 특별한 제한을 두지 않는다.
그 결과로, 도 8c의 (a)에 도시된 최적화 수행 전의 3차원 포인트는 도 8의 (b)에 도시된 최적화 수행 후의 3차원 포인트와 같이 보다 정확해질 수 있다.
상기에서 설명한 특징점 맵을 활용하여 이미지 한 장만으로 도보로 이동하는 사용자의 3차원 위치 및 포즈를 추정하는 것이 가능하게 된다. 예를 들어, 사용자는 모바일 기기를 이용하여 자신의 위치를 확인하거나, 자신의 위치를 기반으로 한 서비스를 제공받을 수 있게 된다.
도 9a는 도 3a의 프로세스에 의하여 구현된 맵의 일 예를 보여주는 예시도이고, 도 9b는 도 9a의 맵을 이용하여 보도에서 이미지 기반 측위를 수행하는 예를 나타내는 개념도이다.
구체적으로, 도 9a에서는 경기도 성남시 분당구 구미동의 특정 영역에 대하여 3차원 특징점 맵을 재건한 결과를 나타낸다. 이렇게 재건된 3차원 특징점 맵을 이용하여 사용자에게 위치 서비스를 제공할 수 있다.
도 9b를 참조하면, 상기 위치 서비스의 일 예로, 사용자의 모바일 기기에서 이미지 기반 측위 서비스가 구현될 수 있다. 예를 들어, 사용자는 구미동의 특정 지점에서 도보로 이동 중에 자신의 위치를 확인하기 위하여 스마트 폰(191)에서 상기 이미지 기반 측위 서비스와 관련된 애플리케이션을 실행하고, 주변의 거리를 촬영할 수 있다. 상기 애플리케이션은 촬영된 사진(192)의 특징점(193)과 3차원 특징점 맵의 특징점(194)을 비교하여, 상기 모바일 기기의 3차원 위치 및 포즈를 추정하게 된다.
이러한 3차원 위치 및 추정된 포즈를 이용하여 상기 모바일 기기의 정확한 위치가 추정될 수 있다. 이 경우에, 상기 스마트 폰에서는 상기 위치를 기반으로 한 여러가지 서비스가 실행될 수 있다.
이상에서 설명한 바와 같이, 본 발명에 따른 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템은, 거리뷰 이미지를 이용하여 맵을 생성하기에, 도로나 보도에서 실제 이미지를 사용한 이미지 기반 측위(Visual Localization)를 가능하게 한다. 실제 이미지이므로, 이미지 매칭이나 특징(feature) 매칭이 보다 용이하게 될 수 있다. 또한, 거리뷰 이미지는 지표면 근처에서 촬영한 이미지이므로, 저층 건물의 Texture 가 뭉개지는 일이 없으며, 표지판 등을 포함할 수 있다.
상기와 같이 설명된 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템은 상기 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.

Claims (14)

  1. 거리뷰 이미지를 적어도 하나의 이미지로 크로핑하는 단계;
    상기 거리뷰 이미지로부터 특징점들을 검출하는 단계;
    상기 특징점들 간의 매칭을 수행하고, 상기 매칭된 특징점들에 상기 거리뷰 이미지의 특성정보를 반영하여, 상기 거리뷰 이미지와 관련된 3차원 포인트를 생성하는 단계; 및
    상기 생성된 3차원 포인트에 대한 최적화를 수행하여 상기 거리뷰 이미지에 대한 특징점 맵을 생성하는 단계를 포함하며,
    상기 특징점들을 검출하는 단계는 상기 적어도 하나의 크로핑된 이미지에 대하여 수행되고,
    상기 특징점 맵을 생성하는 단계는,
    노드와 엣지를 이용한 그래프 구성을 통하여 상기 거리뷰 이미지의 포즈와 상기 3차원 포인트의 위치를 보정하여 상기 특징점 맵을 생성하며,
    상기 노드는 상기 크로핑된 이미지들의 포즈 노드를 구비하는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  2. 제1항에 있어서, 
    상기 특징점들을 검출하는 단계는,
    상기 거리뷰 이미지의 각각에서 오브젝트에 대한 특징점을 검출하고,
    상기 거리뷰 이미지 내에서 상기 오브젝트들을 의미 단위로 분할하여, 상기 오브젝트 중 적어도 일부에 해당하는 특징점을 필터링하는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  3. 제2항에 있어서, 
    상기 특징점의 필터링은 상기 거리뷰 이미지를 불필요한 영역과 필요한 영역으로 분할하고, 상기 불필요한 영역에 해당하는 특징점들을 제거하는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  4. 제1항에 있어서, 
    상기 특징점의 매칭은 상기 거리뷰 이미지 중 적어도 한 쌍의 이미지 간의 호모그래피(homography)를 산출하고, 상기 호모그래피를 이용하여 설정된 특정 범위내에서 수행되는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 거리뷰 이미지는 구형 파노라마(spherical panoramic) 이미지를 구비하고, 상기 구형 파노라마 이미지는 복수의 이미지로 크로핑(cropping)되는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  7. 제6항에 있어서, 
    상기 크로핑된 복수의 이미지는 세로 방향이 가로 방향보다 긴 이미지인 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  8. 제1항에 있어서,
    상기 특성정보는 상기 거리뷰 이미지의 취득 시점의 GPS 위치 정보와 차량의 각도 정보를 포함하고,
    상기 3차원 포인트는 상기 GPS 위치 정보와 상기 차량의 각도 정보를 이용하여, 실제 스케일과 동일한 포인트로서 생성되는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  9. 제1항에 있어서,
    상기 3차원 포인트는 상기 거리뷰 이미지 간의 매칭된 특징점과 매칭에 실패한 특징점에 대하여 서로 다른 방법으로 생성되는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  10. 제9항에 있어서,
    상기 거리뷰 이미지로부터 추출되는 컬러 이미지 및 sparse depth 이미지를 이용하여 dense한 depth 이미지를 추정하고, 상기 추정된 depth 이미지를 이용하여 상기 매칭에 실패한 특징점에 대응되는 3차원 포인트를 추출하는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  11. 삭제
  12. 제1항에 있어서, 
    상기 노드는 상기 거리뷰 이미지의 포즈와 상기 3차원 포인트의 위치로 설정되고,
    상기 엣지는 상기 노드와 관련된 적어도 하나의 에러로 설정되는 것을 특징으로 하는 이미지 기반 측위용 맵 생성 방법.
  13. 이미지 기반 측위 시스템에 있어서,
    특징점 맵을 저장하는 데이터 베이스; 및
    모바일 기기나 자율주행 기기에서 실행되며, 상기 특징점 맵과 상기 모바일 기기나 자율주행 기기에서 촬영한 이미지를 이용하여 이미지 기반 측위를 수행하는 구동부를 구비하고,
    상기 특징점 맵은 도로에서 촬영된 거리뷰 이미지를 이용하여 추출한 3차원 포인트를 최적화를 통하여 보정하여 생성되며,
    상기 3차원 포인트는 상기 거리뷰 이미지의 각각에서 특징점들을 검출하고, 상기 특징점들 간의 매칭을 수행하며, 상기 매칭된 특징점들에 상기 거리뷰 이미지의 특성정보를 반영하여 생성되며,
    상기 특징점들의 검출은 상기 거리뷰 이미지를 적어도 하나의 이미지로 크로핑하여 상기 적어도 하나의 크로핑된 이미지에 대하여 수행되고,
    상기 특징점 맵은 노드와 엣지를 이용한 그래프 구성을 통하여 상기 거리뷰 이미지의 포즈와 상기 3차원 포인트의 위치를 보정하여 생성되며,
    상기 노드는 상기 크로핑된 이미지들의 포즈 노드를 구비하는 것을 특징으로 하는 이미지 기반 측위 시스템.
  14. 전자기기에서 하나 이상의 프로세스에 의하여 실행되며, 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램으로서,
    상기 프로그램은,
    거리뷰 이미지를 적어도 하나의 이미지로 크로핑하는 단계;
    상기 거리뷰 이미지로부터 특징점들을 검출하는 단계;
    상기 특징점들 간의 매칭을 수행하고, 상기 매칭된 특징점들에 상기 거리뷰 이미지의 특성정보를 반영하여, 상기 거리뷰 이미지와 관련된 3차원 포인트를 생성하는 단계; 및
    상기 생성된 3차원 포인트에 대한 최적화를 수행하여 상기 거리뷰 이미지에 대한 특징점 맵을 생성하는 단계:를 수행하도록 하는 명령어들을 포함하며,
    상기 특징점들을 검출하는 단계는 상기 적어도 하나의 크로핑된 이미지에 대하여 수행되고,
    상기 특징점 맵을 생성하는 단계는,
    노드와 엣지를 이용한 그래프 구성을 통하여 상기 거리뷰 이미지의 포즈와 상기 3차원 포인트의 위치를 보정하여 상기 특징점 맵을 생성하며,
    상기 노드는 상기 크로핑된 이미지들의 포즈 노드를 구비하는 것을 특징으로 하는 컴퓨터로 판독될 수 있는 매체에 저장 가능한 프로그램.
KR1020200133998A 2020-10-16 2020-10-16 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템 KR102516450B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200133998A KR102516450B1 (ko) 2020-10-16 2020-10-16 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200133998A KR102516450B1 (ko) 2020-10-16 2020-10-16 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템

Publications (2)

Publication Number Publication Date
KR20220050386A KR20220050386A (ko) 2022-04-25
KR102516450B1 true KR102516450B1 (ko) 2023-04-03

Family

ID=81451783

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200133998A KR102516450B1 (ko) 2020-10-16 2020-10-16 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템

Country Status (1)

Country Link
KR (1) KR102516450B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102481367B1 (ko) * 2022-05-27 2023-01-03 주식회사 라이드플럭스 포인트 클라우드 데이터로부터 지표면 데이터를 생성하기 위한 인공지능 모델의 학습 방법, 장치 및 컴퓨터프로그램

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101224734B1 (ko) * 2006-12-31 2013-01-21 주식회사 포스코아이씨티 위치기반 컨텐츠 서비스를 제공하기 위한 컨텐츠 서버 및 그 서비스 방법
KR101454857B1 (ko) * 2012-12-26 2014-11-04 주식회사 영국전자 탐지용 로봇 시스템
KR101490055B1 (ko) * 2013-10-30 2015-02-06 한국과학기술원 이동 로봇의 위치와 지도를 추정하는 방법 및 이를 수행하는 장치들
US20200320738A1 (en) * 2019-04-08 2020-10-08 Naver Labs Corporation Method and system for updating map for pose estimation based on images

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101745493B1 (ko) * 2015-09-07 2017-06-09 한국과학기술원 깊이 지도 생성 장치 및 방법
KR102647351B1 (ko) * 2017-01-26 2024-03-13 삼성전자주식회사 3차원의 포인트 클라우드를 이용한 모델링 방법 및 모델링 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101224734B1 (ko) * 2006-12-31 2013-01-21 주식회사 포스코아이씨티 위치기반 컨텐츠 서비스를 제공하기 위한 컨텐츠 서버 및 그 서비스 방법
KR101454857B1 (ko) * 2012-12-26 2014-11-04 주식회사 영국전자 탐지용 로봇 시스템
KR101490055B1 (ko) * 2013-10-30 2015-02-06 한국과학기술원 이동 로봇의 위치와 지도를 추정하는 방법 및 이를 수행하는 장치들
US20200320738A1 (en) * 2019-04-08 2020-10-08 Naver Labs Corporation Method and system for updating map for pose estimation based on images

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
문성태 외 3인, "실내 자율 주행을 위한 3D Map 생성 시스템" 항공우주기술 제11권 제2호(2012)*

Also Published As

Publication number Publication date
KR20220050386A (ko) 2022-04-25

Similar Documents

Publication Publication Date Title
JP7485749B2 (ja) ビデオベースの位置決め及びマッピングの方法及びシステム
US11989028B2 (en) Mobile robot system and method for generating map data using straight lines extracted from visual images
KR102525281B1 (ko) 이미지 기반 측위 방법 및 시스템
EP2458336B1 (en) Method and system for reporting errors in a geographic database
WO2020102944A1 (zh) 点云处理方法、设备及存储介质
JP2018533721A (ja) ローカライゼーション基準データを生成及び使用する方法及びシステム
KR102200299B1 (ko) 3d-vr 멀티센서 시스템 기반의 도로 시설물 관리 솔루션을 구현하는 시스템 및 그 방법
KR102167835B1 (ko) 영상 처리 방법 및 장치
US10706576B2 (en) Urban environment labelling
CN112700486B (zh) 对图像中路面车道线的深度进行估计的方法及装置
US11941755B2 (en) Method of generating map and visual localization system using the map
Tao et al. Automated processing of mobile mapping image sequences
KR102516450B1 (ko) 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템
CN114969221A (zh) 一种更新地图的方法及相关设备
KR20200142315A (ko) 도로 네트워크를 갱신하는 방법 및 장치
NL2016718B1 (en) A method for improving position information associated with a collection of images.
Yang et al. Road detection by RANSAC on randomly sampled patches with slanted plane prior
Jonas et al. IMAGO: Image-guided navigation for visually impaired people
KR102555668B1 (ko) 맵 생성 방법 및 이를 이용한 이미지 기반 측위 방법
Yabuuchi et al. VMVG-Loc: Visual Localization for Autonomous Driving using Vector Map and Voxel Grid Map
LU et al. Scene Visual Perception and AR Navigation Applications
Peter et al. Refinement of coarse indoor models using position traces and a low-cost range camera
Li-Chee-Ming et al. Feasibility study of using the RoboEarth cloud engine for rapid mapping and tracking with small unmanned aerial systems
Li-Chee-Ming et al. Generation of dense 3D point clouds using a small quadcopter
CN115019167A (zh) 基于移动终端的融合定位方法、系统、设备及存储介质

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant