[go: up one dir, main page]

KR102431122B1 - 맵 타겟 추적 방법 및 그 시스템 - Google Patents

맵 타겟 추적 방법 및 그 시스템 Download PDF

Info

Publication number
KR102431122B1
KR102431122B1 KR1020210193464A KR20210193464A KR102431122B1 KR 102431122 B1 KR102431122 B1 KR 102431122B1 KR 1020210193464 A KR1020210193464 A KR 1020210193464A KR 20210193464 A KR20210193464 A KR 20210193464A KR 102431122 B1 KR102431122 B1 KR 102431122B1
Authority
KR
South Korea
Prior art keywords
sub
map
key frame
image
posture information
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
KR1020210193464A
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 KR1020210193464A priority Critical patent/KR102431122B1/ko
Application granted granted Critical
Publication of KR102431122B1 publication Critical patent/KR102431122B1/ko
Priority to US18/148,038 priority patent/US11688094B1/en
Priority to EP22217159.7A priority patent/EP4207070A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • 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
    • 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/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/653Three-dimensional objects by matching three-dimensional models, e.g. conformal mapping of Riemann surfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • 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/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • 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/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/07Target detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Remote Sensing (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Graphics (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)

Abstract

본 발명의 실시예에 따른 맵 타겟 추적 방법 및 그 시스템은, 단말의 적어도 하나의 프로세서에 의하여 실행되는 맵 타겟 추적 애플리케이션이 맵 타겟 추적을 수행하는 방법으로서, 3차원 공간을 촬영한 기초영상을 획득하는 단계; 상기 획득된 기초영상을 상기 3차원 공간 내 서브 공간별로 분할한 복수의 서브영상을 획득하는 단계; 상기 획득된 복수의 서브영상을 기초로 복수의 서브 맵(Sub map)을 생성하는 단계; 상기 생성된 복수의 서브 맵 각각에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정하는 단계; 상기 적어도 하나의 대표 키 프레임이 결정된 복수의 서브 맵을 결합한 3차원 메인 맵(3D Main map)을 생성하는 단계; 및 상기 생성된 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하는 단계를 포함한다.

Description

맵 타겟 추적 방법 및 그 시스템{METHOD AND SYSTEM FOR MAP TARTET TRACKING}
본 발명은 맵 타겟 추적 방법 및 그 시스템에 관한 것이다. 보다 상세하게는, 3차원 공간을 복수의 서브 공간으로 구분한 3차원 맵(3D Map)을 기초로 상기 3차원 공간에서의 현재 자세(위치/방위)를 추적하는 맵 타겟 추적 방법 및 그 시스템에 관한 것이다.
맵 타겟(Map target) 즉, 슬램(Simultaneous Localizaton and Mapping, SLAM) 기술은, 이동 로봇 등과 같은 컴퓨팅 장치의 자율 주행에 주로 쓰이는 기술로서, 주변 환경의 지도를 이용하여 위치를 인식하거나, 역으로 위치를 인식하여 해당 지역의 지도를 만들고, 또한 위치 인식과 지도 작성 두 가지를 동시에 수행하는 기술을 말한다.
슬램(SLAM) 기술을 이용하는 이동형 컴퓨팅 장치는, 카메라로부터 획득한 영상에서 키 프레임, 랜드마크 등을 추출하여 SLAM 지도를 생성한다.
그리고 이러한 이동형 컴퓨팅 장치는, 슬램(SLAM) 지도가 생성된 지역을 이동할 때, 카메라로부터 획득한 영상에서 키 프레임, 랜드마크 등을 추출하고, 기 생성된 슬램(SLAM) 지도의 키 프레임, 랜드마크와 비교하여 위치를 인식한다.
그러나 종래에는, 기 생성된 슬램(SLAM) 지도가 포함하는 모든 키 프레임, 랜드마크와의 비교 연산을 수행하는 데이터 처리가 요구되어, 슬램(SLAM) 지도를 이용한 위치 추적에 소요되는 자원이나 시간이 상당하다는 문제가 있다.
그리하여 종래에는, 기 생성된 슬램(SLAM) 지도를 소정의 키 프레임 간격마다 분할하고, 상기 분할된 키 프레임 그룹별로 비교 연산을 수행하는 등의 방식으로 데이터 처리 효율성의 향상을 도모하였으나, 이는 해당하는 3차원 공간 내 연속된 하나의 공간에 대한 프레임들을 분리시킴으로써 해당 3차원 공간에서의 의미있는 공간적 단위의 위치 인식에 도달하기 어렵다는 한계가 있다.
KR 10-2014706 B1
본 발명은, 상술된 바와 같은 문제를 해결하기 위하여 안출된 것으로서, 3차원 공간을 복수의 서브 공간으로 구분한 3차원 맵(3D Map)을 기초로 상기 3차원 공간에서의 현재 자세(위치/방위)를 추적하는 맵 타겟 추적 방법 및 그 시스템을 제공하는데 그 목적이 있다.
자세히, 본 발명은, 3차원 공간을 복수의 서브 공간으로 구분한 3차원 맵을 생성하는 맵 타겟 추적 방법 및 그 시스템을 제공하고자 한다.
또한, 본 발명은, 위와 같이 생성된 3차원 맵을 기초로 현재 자세(위치/방위)정보를 추적하는 맵 타겟 추적 방법 및 그 시스템을 제공하고자 한다.
또한, 본 발명은, 상기 추적된 현재 자세(위치/방위)정보에 기초한 소정의 기능 동작을 실행하는 맵 타겟 추적 방법 및 그 시스템을 제공하고자 한다.
다만, 본 발명 및 본 발명의 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
본 발명의 실시예에 따른 맵 타겟 추적 방법 및 그 시스템은, 단말의 적어도 하나의 프로세서에 의하여 실행되는 맵 타겟 추적 애플리케이션이 맵 타겟 추적을 수행하는 방법으로서, 3차원 공간을 촬영한 기초영상을 획득하는 단계; 상기 획득된 기초영상을 상기 3차원 공간 내 서브 공간별로 분할한 복수의 서브영상을 획득하는 단계; 상기 획득된 복수의 서브영상을 기초로 복수의 서브 맵(Sub map)을 생성하는 단계; 상기 생성된 복수의 서브 맵 각각에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정하는 단계; 상기 적어도 하나의 대표 키 프레임이 결정된 복수의 서브 맵을 결합한 3차원 메인 맵(3D Main map)을 생성하는 단계; 및 상기 생성된 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하는 단계를 포함한다.
이때, 상기 복수의 서브영상을 획득하는 단계는, 기 설정된 공간 분할 조건을 기초로 상기 3차원 공간 내 서브 공간을 구분하는 단계를 포함한다.
또한, 상기 공간 분할 조건은, 기 설정된 공간분할 객체를 검출하는 조건, 기 촬영 위치로 회귀하는 조건 및 상기 기초영상을 촬영한 카메라의 위치 군집도가 소정의 기준 미만인 조건 중 적어도 하나의 조건을 포함한다.
또한, 본 발명의 실시예에 따른 맵 타겟 추적 방법은, 상기 기초영상 내 각 프레임을 촬영한 카메라의 위치 및 방위 정보를 제공하는 카메라 자세정보를 획득하는 단계를 더 포함하고, 상기 복수의 서브 맵을 생성하는 단계는, 상기 서브영상별 적어도 하나의 키 프레임(Key frame)을 추출하는 단계와, 상기 추출된 키 프레임별 복수의 특징점 및 상기 특징점별 디스크립터(descriptor)를 검출하는 단계와, 상기 검출된 복수의 특징점 및 상기 특징점별 디스크립터를 상기 카메라 자세정보를 기초로 3차원 공간좌표에 맵핑하여 상기 복수의 서브 맵을 생성하는 단계를 포함한다.
또한, 상기 적어도 하나의 대표 키 프레임을 결정하는 단계는, 상기 서브 맵에 대한 복수의 키 프레임 중에서 기 설정된 간격에 따른 적어도 일부 키 프레임을 상기 서브 맵의 대표 키 프레임으로 결정하는 단계와, 상기 서브 맵에 대한 복수의 키 프레임 간 유사도를 산출하고, 상기 산출된 유사도가 소정의 기준 미만인 적어도 일부 키 프레임을 상기 서브 맵의 대표 키 프레임으로 결정하는 단계 중 적어도 하나의 단계를 포함한다.
또한, 상기 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하는 단계는, 상기 3차원 공간을 별도로 촬영한 위치검출 영상을 획득하는 단계; 상기 획득된 위치검출 영상과 상기 3차원 메인 맵을 비교하여 상기 서브 맵별 유사도를 산출하는 단계; 상기 산출된 서브 맵별 유사도 중 가장 높은 유사도를 가지는 서브 맵을 대표 서브 맵으로 결정하는 단계; 및 상기 결정된 대표 서브 맵과 상기 위치검출 영상을 비교하여 상기 위치검출 영상 내 각 프레임을 촬영한 카메라의 위치 및 방위 정보를 제공하는 상기 현재 자세정보를 검출하는 단계를 포함한다.
또한, 상기 서브 맵별 유사도를 산출하는 단계는, 상기 위치검출 영상의 적어도 하나의 프레임과 상기 서브 맵별 적어도 하나의 대표 키 프레임 간의 유사도를 산출하는 단계를 포함한다.
또한, 상기 결정된 대표 서브 맵과 상기 위치검출 영상을 비교하여 상기 현재 자세정보를 검출하는 단계는, 상기 대표 서브 맵에 대한 적어도 하나의 키 프레임 중에서 상기 위치검출 영상의 적어도 하나의 프레임과 소정의 유사도 이상을 가지는 대응 프레임을 추출하는 단계와, 상기 추출된 대응 프레임에 매칭되는 카메라 자세정보를 획득하는 단계와, 상기 획득된 카메라 자세정보를 기초로 상기 현재 자세정보를 검출하는 단계를 포함한다.
또한, 본 발명의 실시예에 따른 맵 타겟 추적 방법은, 상기 검출된 현재 자세정보를 기초로 소정의 기능 동작을 실행하는 단계를 더 포함하고, 상기 소정의 기능 동작을 실행하는 단계는, 상기 대표 서브 맵에서 상기 현재 자세정보에 대응되는 카메라 자세정보를 가지는 키 프레임을 추출하는 단계와, 상기 추출된 키 프레임 내 기 설정된 마커(Marker), 특징점 및 3차원 공간좌표 중 적어도 하나를 포함하는 기준타겟을 검출하는 단계와, 상기 검출된 기준타겟에 맵핍된 기능 동작을 실행하는 단계를 포함한다.
한편, 본 발명의 실시예에 따른 맵 타겟 추적 시스템은, 3차원 메인 맵(3D Main map)을 출력하는 적어도 하나 이상의 디스플레이; 적어도 하나 이상의 메모리; 및 적어도 하나 이상의 프로세서; 를 포함하고, 상기 메모리에 저장되고 상기 프로세서에 의해 실행되어 맵 타겟 추적을 수행하는 적어도 하나의 애플리케이션으로서 상기 적어도 하나의 애플리케이션은, 3차원 공간을 촬영한 기초영상을 획득하고, 상기 획득된 기초영상을 상기 3차원 공간 내 서브 공간별로 분할한 복수의 서브영상을 획득하고, 상기 획득된 복수의 서브영상을 기초로 복수의 서브 맵(Sub map)을 생성하고, 상기 생성된 복수의 서브 맵 각각에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정하고, 상기 적어도 하나의 대표 키 프레임이 결정된 복수의 서브 맵을 결합한 상기 3차원 메인 맵을 생성하고, 상기 생성된 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적한다.
본 발명의 실시예에 따른 맵 타겟 추적 방법 및 그 시스템은, 3차원 공간을 복수의 서브 공간으로 구분한 3차원 맵(3D Map)을 생성하고, 상기 생성된 3차원 맵을 기초로 현재 자세(위치/방위)정보를 추적함으로써, 기 생성된 3차원 맵 내에서 상기 구분된 서브 공간별로 포함하는 적어도 일부의 키 프레임(Key frame) 및/또는 특징점들과의 비교 연산만을 수행하여 현재 자세정보를 추적할 수 있고, 이를 통해 상기 비교 연산에 요구되는 데이터 처리량이 감소되어 현재 위치/방위 추적에 소요되는 자원이나 시간을 절감할 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 맵 타겟 추적 방법 및 그 시스템은, 위와 같은 3차원 맵을 통해 추적된 현재 자세(위치/방위)정보에 기초한 소정의 기능 동작을 실행함으로써, 해당하는 기능 동작을 실행하기 위해 필요한 데이터 처리의 속도 및 효율성을 향상시킬 수 있고, 이를 통해 상기 기능 동작을 포함하는 각종 애플리케이션 서비스의 성능과 품질을 제고할 수 있는 효과가 있다.
다만, 본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 명확하게 이해될 수 있다.
도 1은 본 발명의 실시예에 따른 맵 타겟 추적 시스템의 개념도이다.
도 2는 본 발명의 실시예에 따른 단말의 내부 블록도이다.
도 3은 본 발명의 실시예에 따른 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 생성하는 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 실시예에 따른 서브 맵(Sub map)을 설명하기 위한 도면의 일례이다.
도 5는 본 발명의 실시예에 따른 대표 키 프레임(Main key frame)을 설명하기 위한 도면의 일례이다.
도 6은 본 발명의 실시예에 따른 대표 키 프레임을 결정하는 일 방법을 설명하기 위한 도면의 일례이다.
도 7은 본 발명의 실시예에 따른 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 기초로 현재 자세정보를 추적하는 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 실시예에 따른 복수의 서브 맵 유사도를 산출하는 방법을 설명하기 위한 도면의 일례이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 포함하다 또는 가지다 등의 용어는 명세서상에 기재된 특징, 또는 구성요소가 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. 또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예들을 상세히 설명하기로 하며, 도면을 참조하여 설명할 때 동일하거나 대응하는 구성 요소는 동일한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 1은 본 발명의 실시예에 따른 맵 타겟 추적 시스템의 개념도이다.
도 1을 참조하면, 본 발명의 실시예에 따른 맵 타겟 추적 시스템(1000)은, 3차원 공간을 복수의 서브 공간으로 구분한 3차원 맵(3D Map)을 기초로 상기 3차원 공간에서의 현재 자세(위치/방위)를 추적하는 맵 타겟 추적 서비스를 제공할 수 있다.
실시예에서, 위와 같은 맵 타겟 추적 서비스를 제공하는 맵 타겟 추적 시스템(1000)은, 단말(100), 데이터베이스 서버(200) 및 네트워크(300: Network)를 포함할 수 있다.
이때, 상기 단말(100) 및 데이터베이스 서버(200)는, 상기 네트워크(300)를 통하여 연결될 수 있다.
여기서, 실시예에 따른 상기 네트워크(300)는, 상기 단말(100) 및/또는 데이터베이스 서버(200) 등과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(300)의 일례에는 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
이하, 첨부된 도면을 참조하여 맵 타겟 추적 시스템(1000)을 구현하는 단말(100) 및 데이터베이스 서버(200)에 대해 상세히 설명한다.
- 단말(100: Terminal)
본 발명의 실시예에 따른 단말(100)은, 맵 타겟 추적 서비스를 제공하는 맵 타겟 추적 애플리케이션(이하, 애플리케이션)이 설치된 소정의 컴퓨팅 디바이스일 수 있다.
자세히, 하드웨어적 관점에서 단말(100)은, 애플리케이션이 설치된 모바일 타입 컴퓨팅 장치(100-1)를 포함할 수 있다.
여기서, 모바일 타입 컴퓨팅 장치(100-1)는, 애플리케이션이 설치된 스마트 폰이나 테블릿 PC와 같은 모바일 장치일 수 있다.
예를 들어, 모바일 타입 컴퓨팅 장치(100-1)는, 스마트 폰(smart phone), 휴대폰, 디지털방송용 디바이스, PDA(personal digital assistants), PMP(portable multimedia player), 태블릿 PC(tablet PC) 등이 포함될 수 있다.
다만, 실시예에 따라서 단말(100)은, 데스크탑 타입 컴퓨팅 장치(100-2)를 포함할 수도 있다.
여기서, 데스크탑 타입 컴퓨팅 장치(100-2)는, 애플리케이션이 설치된 고정형 데스크탑 PC, 노트북 컴퓨터(laptop computer), 울트라북(ultrabook)과 같은 퍼스널 컴퓨터 등과 같이 유/무선 통신을 기반으로 맵 타겟 추적 서비스를 실행하기 위한 프로그램이 설치된 장치 등을 포함할 수 있다.
또한, 실시예에 따라서 단말(100)은, 맵 타겟 추적 서비스 환경을 제공하는 소정의 서버(Server) 컴퓨팅 디바이스를 더 포함할 수도 있다.
또한, 실시예에 따라서 단말(100)은, 맵 타겟 추적 서비스 환경을 제공하는 소정의 로봇(Robot)의 적어도 일부로 구현될 수도 있다.
여기서, 상기 로봇은, 외부환경을 인식(Perception)하고 스스로 상황을 판단(Cognition)하여 자율적으로 동작(Manipulation)하는 지능형 로봇(Intelligent Robots)을 의미할 수 있다.
도 2는 본 발명의 실시예에 따른 단말(100)의 내부 블록도이다.
한편, 도 2를 참조하면, 기능적 관점에서 단말(100)은, 메모리(110), 프로세서 어셈블리(120), 통신 프로세서(130), 인터페이스부(140), 입력 시스템(150), 센서 시스템(160) 및 디스플레이 시스템(170)을 포함할 수 있다. 이러한 구성요소들은 단말(100)의 하우징 내에 포함되도록 구성될 수 있다.
자세히, 메모리(110)에는, 애플리케이션(111)이 저장되며, 애플리케이션(111)은 맵 타겟 추적 서비스 환경을 제공하기 위한 각종 응용 프로그램, 데이터 및 명령어 중 어느 하나 이상을 저장할 수 있다.
즉, 메모리(110)는, 맵 타겟 추적 서비스 환경을 생성하기 위하여 사용될 수 있는 명령 및 데이터 등을 저장할 수 있다.
또한, 상기 메모리(110)는, 프로그램 영역과 데이터 영역을 포함할 수 있다.
여기서, 실시예에 따른 프로그램 영역은, 단말(100)을 부팅하는 운영체제(OS: Operating System) 및 기능요소들 사이에 연계될 수 있으며, 데이터 영역은, 단말(100)의 사용에 따라 발생하는 데이터가 저장될 수 있다.
또한, 메모리(110)는, 적어도 하나 이상의 비일시적 컴퓨터 판독 가능 저장매체와, 일시적 컴퓨터 판독 가능 저장매체를 포함할 수 있다.
예를 들어, 메모리(110)는, ROM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기일 수 있고, 인터넷(internet) 상에서 상기 메모리(110)의 저장 기능을 수행하는 웹 스토리지(web storage)를 포함할 수 있다.
프로세서 어셈블리(120)는, 맵 타겟 추적 서비스 환경을 생성하기 위한 다양한 작업을 수행하기 위해, 메모리(110)에 저장된 애플리케이션(111)의 명령들을 실행할 수 있는 적어도 하나 이상의 프로세서를 포함할 수 있다.
실시예에서 프로세서 어셈블리(120)는, 맵 타겟 추적 서비스를 제공하기 위하여 메모리(110)의 애플리케이션(111)을 통해 구성요소의 전반적인 동작을 컨트롤할 수 있다.
이러한 프로세서 어셈블리(120)는, 중앙처리장치(CPU) 및/또는 그래픽처리장치(GPU) 등이 포함된 단말(100)에 적합한 시스템 온 칩(SOC)일 수 있으며, 메모리(110)에 저장된 운영체제(OS) 및/또는 응용 프로그램 등을 실행할 수 있고, 단말(100)에 탑재된 각 구성요소들을 제어할 수 있다.
또한, 프로세서 어셈블리(120)는, 각 구성요소와 내부적으로 시스템 버스(System Bus)에 의해 통신을 수행할 수 있고, 로컬 버스(Local Bus)를 비롯한 소정의 버스 구조들을 하나 이상 포함할 수 있다.
또한, 프로세서 어셈블리(120)는, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세스(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 포함하여 구현될 수 있다.
통신 프로세서(130)은, 외부의 장치와 통신하기 위한 하나 이상의 장치를 포함할 수 있다. 이러한 통신 프로세서(130)은, 무선 네트워크를 통해 통신할 수 있다.
자세히, 통신 프로세서(130)은, 맵 타겟 추적 서비스 환경을 구현하기 위한 콘텐츠 소스를 저장한 소정의 컴퓨팅 디바이스와 통신할 수 있으며, 사용자 입력을 받은 컨트롤러와 같은 다양한 사용자 입력 컴포넌트와 통신할 수 있다.
실시예에서, 통신 프로세서(130)은, 맵 타겟 추적 서비스와 관련된 각종 데이터를 타 단말(100) 및/또는 외부의 서버 등과 송수신할 수 있다.
이러한 통신 프로세서(130)은, 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced),5G NR(New Radio), WIFI) 또는 근거리 통신방식 등을 수행할 수 있는 통신장치를 통해 구축된 이동 통신망 상에서 기지국, 외부의 단말(100), 임의의 서버 중 적어도 하나와 무선으로 데이터를 송수신할 수 있다.
센서 시스템(160)은, 이미지 센서(161), 위치 센서(IMU, 163), 오디오 센서(165), 거리 센서, 근접 센서, 접촉 센서 등 다양한 센서를 포함할 수 있다.
여기서, 이미지 센서(161)는, 단말(100) 주위의 물리적 공간에 대한 이미지 및/또는 영상을 캡처할 수 있다.
실시예에서, 이미지 센서(161)는, 맵 타겟 추적 서비스와 관련된 영상(예컨대, 기초영상 및/또는 위치검출 영상 등)을 촬영하여 획득할 수 있다.
또한, 이미지 센서(161)는, 단말(100)의 전면 또는/및 후면에 배치되어 배치된 방향측을 촬영하여 영상을 획득할 수 있으며, 단말(100)의 외부를 향해 배치된 카메라를 통해 물리적 공간을 촬영할 수 있다.
이러한 이미지 센서(161)는, 이미지 센서장치와 영상 처리 모듈을 포함할 수 있다. 자세히, 이미지 센서(161)는, 이미지 센서장치(예를 들면, CMOS 또는 CCD)에 의해 얻어지는 정지영상 또는 동영상을 처리할 수 있다.
또한, 이미지 센서(161)는, 영상 처리 모듈을 이용하여 이미지 센서장치를 통해 획득된 정지영상 또는 동영상을 가공해 필요한 정보를 추출하고, 추출된 정보를 프로세서에 전달할 수 있다.
이러한 이미지 센서(161)는, 적어도 하나 이상의 카메라를 포함하는 카메라 어셈블리일 수 있다. 카메라 어셈블리는, 가시광선 대역을 촬영하는 일반 카메라를 포함할 수 있으며, 적외선 카메라, 스테레오 카메라 등의 특수 카메라를 더 포함할 수 있다.
또한, 위와 같은 이미지 센서(161)는, 실시예에 따라서 단말(100)에 포함되어 동작할 수도 있고, 외부의 장치(예컨대, 외부의 서버 등)에 포함되어 상술된 통신 프로세서(130) 및/또는 인터페이스부(140)에 기초한 연동을 통하여 동작할 수도 있다.
위치 센서(IMU, 163)는, 단말(100)의 움직임 및 가속도 중 적어도 하나 이상을 감지할 수 있다. 예를 들어, 가속도계, 자이로스코프, 자력계와 같은 다양한 위치 센서의 조합으로 이루어질 수 있다.
또한, 위치 센서(IMU, 163)는, 통신 프로세서(130)의 GPS와 같은 위치 통신 프로세서(130)과 연동하여, 단말(100) 주변의 물리적 공간에 대한 공간 정보를 인식할 수 있다.
오디오 센서(165)는, 단말(100) 주변의 소리를 인식할 수 있다.
자세히, 오디오 센서(165)는, 단말(100)을 사용하는 사용자의 음성 입력을 감지할 수 있는 마이크로폰을 포함할 수 있다.
실시예에서 오디오 센서(165)는 맵 타겟 추적 서비스를 위해 필요한 음성 데이터를 사용자로부터 입력 받을 수 있다.
인터페이스부(140)은, 단말(100)을 하나 이상의 다른 장치와 통신 가능하게 연결할 수 있다. 자세히, 인터페이스부(140)은, 하나 이상의 상이한 통신 프로토콜과 호환되는 유선 및/또는 무선 통신 장치를 포함할 수 있다.
이러한 인터페이스부(140)을 통해 단말(100)은, 여러 입출력 장치들과 연결될 수 있다.
예를 들어, 인터페이스부(140)은, 헤드셋 포트나 스피커와 같은 오디오 출력장치와 연결되어, 오디오를 출력할 수 있다.
예시적으로 오디오 출력장치가 인터페이스부(140)을 통해 연결되는 것으로 설명하였으나, 단말(100) 내부에 설치되는 실시예도 포함될 수 있다.
또한, 예를 들면 인터페이스부(140)은, 키보드 및/또는 마우스와 같은 입력장치와 연결되어, 사용자 입력을 획득할 수 있다.
예시적으로 키보드 및/또는 마우스가 인터페이스부(140)을 통해 연결되는 것으로 설명하였으나, 단말(100) 내부에 설치되는 실시예도 포함될 수 있다.
이러한 인터페이스부(140)은, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port), 전력 증폭기, RF 회로, 송수신기 및 기타 통신 회로 중 적어도 하나를 포함하여 구성될 수 있다.
입력 시스템(150)은 맵 타겟 추적 서비스와 관련된 사용자의 입력(예를 들어, 제스처, 음성 명령, 버튼의 작동 또는 다른 유형의 입력)을 감지할 수 있다.
자세히, 입력 시스템(150)은 소정의 버튼, 터치 센서 및/또는 사용자 모션 입력을 수신하는 이미지 센서(161) 등을 포함할 수 있다.
또한, 입력 시스템(150)은, 인터페이스부(140)을 통해 외부 컨트롤러와 연결되어, 사용자의 입력을 수신할 수 있다.
디스플레이 시스템(170)은, 맵 타겟 추적 서비스와 관련된 다양한 정보를 그래픽 이미지로 출력할 수 있다.
실시예로, 디스플레이 시스템(170)은, 기초영상, 서브영상, 서브 맵, 메인 맵, 위치검출 영상 및/또는 각종 사용자 인터페이스 등을 표시할 수 있다.
이러한 디스플레이는, 액정 디스플레이(liquid crystal display, LCD), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display, TFT LCD), 유기 발광 다이오드(organic light-emitting diode, OLED), 플렉서블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전자잉크 디스플레이(e-ink display) 중에서 적어도 하나를 포함할 수 있다.
단말(100)의 하우징 내에는 상기 구성요소들이 배치될 수 있으며, 사용자 인터페이스는 사용자 터치 입력을 수신하도록 구성된 디스플레이(171) 상에 터치 센서(173)를 포함할 수 있다.
자세히, 디스플레이 시스템(170)은, 이미지를 출력하는 디스플레이(171)와, 사용자의 터치 입력을 감지하는 터치 센서(173)를 포함할 수 있다.
예시적으로 디스플레이(171)는 터치 센서(173)와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린으로 구현될 수 있다. 이러한 터치 스크린은, 단말(100)과 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부로써 기능함과 동시에, 단말(100)과 사용자 사이의 출력 인터페이스를 제공할 수 있다.
한편, 본 발명의 실시예에 따른 단말(100)은, 개시된 적어도 하나의 알고리즘을 이용하여 맵 타겟 추적 서비스에 필요한 각종 기능 동작을 수행할 수 있다.
실시예로, 단말(100)은, 특징점 검출(Feature point detection) 및/또는 유사도 산출(Calculation of similarity) 등을 수행하는 다양한 알고리즘에 기반하여 맵 타겟 추적 서비스에 필요한 각종 기능 동작을 수행할 수 있다.
실시예에서, 단말(100)은, FastFeatureDetector, MSER, SimpleBlobDetector 및/또는 GFTTDetector 등과 같은 알고리즘에 기반하여 소정의 영상 프레임 내 적어도 하나의 특징점과 상기 특징점별 디스크립터를 추출하는 기능 동작을 수행할 수 있다.
또한, 실시예에서 단말(100)은, Feature Matching, Histogram, MSE(mean square error) 및/또는 Autoencoder 등에 기반한 유사도 산출 알고리즘에 기초하여 소정의 영상 프레임 간의 유사도를 측정하는 기능 동작을 수행할 수 있다.
또한, 실시예에 따라서 단말(100)은, 후술되는 데이터베이스 서버(200)에서 수행하는 기능 동작의 적어도 일부를 더 수행할 수도 있다.
- 데이터베이스 서버(200: Database server)
한편, 본 발명의 실시예에 따른 데이터베이스 서버(200)는, 맵 타겟 추적 서비스를 제공하기 위한 일련의 프로세스를 수행할 수 있다.
자세히, 실시예에서 데이터베이스 서버(200)는, 단말(100)과 같은 외부의 장치에서 맵 타겟 추적 프로세스가 구동되게 하기 위해 필요한 데이터를, 상기 외부의 장치와 교환함으로써 상기 맵 타겟 추적 서비스를 제공할 수 있다.
보다 상세히, 실시예에서 데이터베이스 서버(200)는, 외부의 장치(실시예에서, 단말(100) 등)에서 애플리케이션(111)이 동작할 수 있는 환경을 제공할 수 있다.
이를 위해, 데이터베이스 서버(200)는, 애플리케이션(111)이 동작하기 위한 응용 프로그램, 데이터 및/또는 명령어 등을 포함할 수 있고, 이에 기초한 데이터를 상기 외부의 장치와 송수신할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 3차원 공간을 촬영한 기초영상 및 카메라 자세정보를 획득할 수 있다.
여기서, 실시예에 따른 상기 기초영상은, 소정의 3차원 공간을 카메라(즉, 소정의 이미지 센서를 포함하는 컴퓨팅 장치)가 이동하며 촬영한 영상을 의미할 수 있으며, 상기 카메라 자세정보는, 상기 기초영상을 촬영할 시의 카메라의 위치/방위 정보를 제공하는 정보를 의미할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 획득된 기초영상을 기반으로 상기 3차원 공간에 대한 서브영상을 획득할 수 있다.
여기서, 실시예에 따른 상기 서브영상은, 상기 기초영상을 상기 3차원 공간이 포함하는 복수의 서브 공간 각각에 따라서 분할하여 획득되는 영상을 의미할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 획득된 서브영상에 기초한 서브 맵을 생성할 수 있다.
여기서, 실시예에 따른 상기 서브 맵은, 상기 서브영상 내 적어도 하나의 키 프레임을 분석하여 획득되는 포인트 클라우드 정보를 기초로 해당 서브영상이 나타내는 3차원 공간(즉, 서브 공간)을 인식해 제공하는 3차원 맵을 의미할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 생성된 서브 맵에 대한 적어도 하나의 대표 키 프레임을 결정할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 생성된 서브 맵에 기초한 메인 맵을 생성할 수 있다.
한편, 실시예에서 데이터베이스 서버(200)는, 3차원 공간을 별도로 촬영한 위치검출 영상을 획득할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 획득된 위치검출 영상과 상술된 메인 맵을 비교하여 복수의 서브 맵 유사도를 산출할 수 있다.
여기서, 실시예에 따른 상기 서브 맵 유사도는, 상기 위치검출 영상의 적어도 하나의 프레임과 상기 메인 맵이 포함하는 각 서브 맵의 적어도 하나의 대표 키 프레임 간의 유사도를 의미할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 산출된 복수의 서브 맵 유사도를 기초로 대표 서브 맵을 추출할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 추출된 대표 서브 맵과 상기 위치검출 영상을 기초로 현재 자세정보를 검출할 수 있다.
여기서, 실시예에 따른 상기 현재 자세정보는, 상기 위치검출 영상을 촬영할 시의 카메라의 위치/방위 정보를 의미할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 상기 검출된 현재 자세정보와 상기 위치검출 영상에 기초한 소정의 기능 동작(예컨대, 상기 위치검출 영상 상에 소정의 가상객체 증강 표시 등)을 실행할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, 개시된 적어도 하나의 알고리즘을 이용하여 맵 타겟 추적 서비스에 필요한 소정의 기능 동작을 수행할 수 있다.
실시예로, 데이터베이스 서버(200)는, 특징점 검출(Feature point detection) 및/또는 유사도 산출(Calculation of similarity) 등을 수행하는 다양한 알고리즘에 기반하여 맵 타겟 추적 서비스에 필요한 각종 기능 동작을 수행할 수 있다.
실시예에서, 데이터베이스 서버(200)는, FastFeatureDetector, MSER, SimpleBlobDetector 및/또는 GFTTDetector 등과 같은 알고리즘에 기반하여 소정의 영상 프레임 내 적어도 하나의 특징점과 상기 특징점별 디스크립터를 추출하는 기능 동작을 수행할 수 있다.
또한, 실시예에서 데이터베이스 서버(200)는, Feature Matching, Histogram, MSE(mean square error) 및/또는 Autoencoder 등에 기반한 유사도 산출 알고리즘에 기초하여 소정의 영상 프레임 간의 유사도를 측정하는 기능 동작을 수행할 수 있다.
보다 상세히, 실시예에서 데이터베이스 서버(200)는, 위와 같은 기능 동작을 수행하기 위해 구축되어 있는 소정의 알고리즘 구동 프로그램을 메모리 모듈(230)로부터 독출하여, 상기 독출된 소정의 알고리즘 시스템에 따라 해당하는 기능 동작을 수행할 수 있다.
이때, 실시예에 따라서 위와 같은 소정의 알고리즘은, 데이터베이스 서버(200)에 직접 포함되거나, 또는 데이터베이스 서버(200)와는 별도의 장치 및/또는 서버에 구현되어 상기 맵 타겟 추적 서비스를 위한 기능 동작을 수행할 수 있다.
이하의 설명에서는, 상기 소정의 알고리즘이 데이터베이스 서버(200)에 포함되어 구현되는 것으로 설명하나 이에 한정되는 것은 아니다.
또한, 실시예에서 데이터베이스 서버(200)는, 맵 타겟 추적 서비스를 구현하기 위한 각종 응용 프로그램, 명령어 및/또는 데이터 등을 저장하고 관리할 수 있다.
실시예로, 데이터베이스 서버(200)는, 적어도 하나 이상의 기초영상, 카메라 자세정보, 서브영상, 서브 맵, 키 프레임, 대표 키 프레임, 메인 맵, 위치검출 영상, 서브 맵 유사도, 대표 서브 맵, 현재 자세정보 및/또는 맵 타겟 추적 서비스에 필요한 각종 알고리즘(실시예에서, 공간 분할 알고리즘, 특징점 검출 알고리즘, 유사도 산출 알고리즘 및/또는 각종 기능 동작 알고리즘 등) 등을 저장 및 관리할 수 있다.
한편, 도 1을 더 참조하면, 실시예에서 위와 같은 데이터베이스 서버(200)는, 데이터 처리를 위한 적어도 하나 이상의 프로세서 모듈(210: Processor Module)과, 외부의 장치와의 데이터 교환을 위한 적어도 하나 이상의 커뮤니케이션 모듈(220: Communication Module)과, 맵 타겟 추적 서비스의 제공을 위한 각종 응용 프로그램, 데이터 및/또는 명령어들을 저장하는 적어도 하나 이상의 메모리 모듈(230: Memory Module)을 포함하는 소정의 컴퓨팅 장치로 구현될 수 있다.
여기서, 상기 메모리 모듈(230)은, 맵 타겟 추적 서비스를 제공하기 위한 운영체제(OS), 각종 응용 프로그램, 데이터 및 명령어 중 어느 하나 이상을 저장할 수 있다.
또한, 상기 메모리 모듈(230)은, 프로그램 영역과 데이터 영역을 포함할 수 있다.
여기서, 실시예에 따른 프로그램 영역은, 서버를 부팅하는 운영체제(OS: Operating System) 및 기능요소들 사이에 연계될 수 있으며, 데이터 영역은, 서버의 사용에 따라 발생하는 데이터가 저장될 수 있다.
실시예에서, 이러한 메모리 모듈(230)은, ROM, RAM, EPROM, 플래시 드라이브, 하드 드라이브 등과 같은 다양한 저장기기일 수 있고, 인터넷(internet)상에서 상기 메모리 모듈(230)의 저장 기능을 수행하는 웹 스토리지(web storage)일 수도 있다.
또한, 메모리 모듈(230)은, 서버 상에 탈착 가능한 형태의 기록매체일 수 있다.
한편, 상기 프로세서 모듈(210)은, 맵 타겟 추적 서비스를 구현하기 위하여 전술한 각 유닛(unit)의 전반적인 동작을 컨트롤할 수 있다.
이러한 프로세서 모듈(210)은, 중앙처리장치(CPU) 및/또는 그래픽처리장치(GPU) 등이 포함된 서버에 적합한 시스템 온 칩(SOC)일 수 있으며, 메모리 모듈(230)에 저장된 운영체제(OS) 및/또는 응용 프로그램 등을 실행할 수 있고, 서버에 탑재된 각 구성요소들을 제어할 수 있다.
또한, 프로세서 모듈(210)은, 각 구성요소와 내부적으로 시스템 버스(System Bus)에 의해 통신을 수행할 수 있고, 로컬 버스(Local Bus)를 비롯한 소정의 버스 구조들을 하나 이상 포함할 수 있다.
또한, 프로세서 모듈(210)은, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세스(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
이상의 설명에서는, 본 발명의 실시예에 따른 데이터베이스 서버(200)가 상술된 바와 같은 기능 동작을 수행한다고 설명하였으나, 실시예에 따라서 데이터베이스 서버(200)에서 수행하는 기능 동작의 적어도 일부를 외부의 장치(예컨대, 단말(100) 등)에서 수행할 수도 있고, 상기 외부의 장치에서 수행하는 기능 동작의 적어도 일부를 상기 데이터베이스 서버(200)에서 더 수행할 수도 있는 등 다양한 실시예가 가능할 수 있다.
- 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 생성하는 방법
이하, 본 발명의 실시예에 따른 단말(100)의 적어도 하나 이상의 프로세서에 의하여 실행되는 애플리케이션(111)이 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 생성하는 방법을 첨부된 도 3 내지 도 6을 참조하여 상세히 설명한다.
본 발명의 실시예에서 상기 단말(100)의 적어도 하나 이상의 프로세서는, 적어도 하나 이상의 메모리(110)에 저장된 적어도 하나 이상의 애플리케이션(111)을 실행하거나 백그라운드 상태로 동작하게 할 수 있다.
이하, 상기 적어도 하나 이상의 프로세서가 상기 애플리케이션(111)의 명령어를 실행하기 위해 동작하여 상술된 동적 학습 기반의 타겟 검출 서비스를 제공하는 방법을 수행하는 것을 상기 애플리케이션(111)이 수행하는 것으로 단축하여 설명한다.
도 3은 본 발명의 실시예에 따른 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 생성하는 방법을 설명하기 위한 흐름도이다.
도 3을 참조하면, 실시예에서 상기 단말(100)의 적어도 하나 이상의 프로세서에 의하여 실행되거나 백그라운드 상태로 동작하는 애플리케이션(111)은, 3차원 공간을 촬영한 기초영상 및 카메라 자세정보를 획득할 수 있다. (S101)
여기서, 실시예에 따른 상기 기초영상이란, 소정의 3차원 공간을 카메라(즉, 소정의 이미지 센서를 포함하는 컴퓨팅 장치)가 이동하며 촬영한 영상을 의미할 수 있다.
실시예에서, 애플리케이션(111)은, 상기 카메라를 포함하는 소정의 컴퓨팅 디바이스(예컨대, 단말 및/또는 로봇 등)가 상기 3차원 공간을 이동하며 촬영한 영상을 상기 기초영상으로서 획득할 수 있다.
실시예에서, 이러한 기초영상은, 복수의 프레임(frame)을 포함하여 구성될 수 있으며, 상기 복수의 프레임은 트리 형태의 데이터 구조로 저장 및 관리될 수 있고, 상기 복수의 프레임 각각에는 해당 프레임을 촬영할 시의 카메라 자세정보가 매칭되어 있을 수 있다.
여기서, 실시예에 따른 상기 카메라 자세정보란, 상기 기초영상을 촬영할 시의 카메라의 위치/방위 정보를 제공하는 정보를 의미할 수 있다.
즉, 여기서 상기 카메라 자세정보는, 상기 기초영상 내 각각의 프레임을 촬영할 때의 카메라의 위치와 방위 정보일 수 있다.
실시예에서, 상기 카메라 및/또는 상기 카메라를 포함하는 소정의 컴퓨팅 디바이스는, 위와 같은 카메라 자세정보를 획득하기 위한 소정의 센서(예컨대, 자이로스코프 센서(Gyroscope sensor) 및/또는 가속도 센서(acceleration sensor) 등)를 더 포함할 수 있으며, 상기 기초영상 내 각 프레임마다 대응되는 카메라 자세정보를 매칭하여 애플리케이션(111)으로 제공할 수 있다.
그리하여 실시예에서 애플리케이션(111)은, 상기 3차원 공간에 대한 기초영상 및 해당 기초영상 내 각 프레임별 카메라 자세정보를 획득할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 획득된 기초영상을 기반으로 상기 3차원 공간에 대한 서브영상을 획득할 수 있다. (S103)
여기서, 실시예에 따른 상기 서브영상이란, 상기 기초영상을 상기 3차원 공간이 포함하는 복수의 서브 공간 각각에 따라서 분할하여 획득되는 영상을 의미할 수 있다.
즉, 상기 서브영상은, 상기 3차원 공간이 포함하는 복수의 서브 공간 각각을 촬영한 영상일 수 있다.
자세히, 실시예에서 애플리케이션(111)은, 기 설정된 공간 분할 조건에 따라서 상기 기초영상을 복수의 서브영상으로 구분하여 상기 3차원 공간에 대한 복수의 서브영상을 획득할 수 있다.
구체적으로, 실시예에 따른 상기 공간 분할 조건은, 1) 소정의 공간분할 객체(예컨대, 파티션(partition), 문(door) 및/또는 입출구 객체 등)가 검출되는 경우를 제1 공간 분할 조건으로 포함할 수 있다.
또한, 상기 공간 분할 조건은, 2) 소정의 위치 이동 이후에 이전에 위치하던 기 촬영 위치로 회귀한 경우를 제2 공간 분할 조건으로 포함할 수 있다.
즉, 상기 제2 공간 분할 조건은, 상기 기초영상 내 소정의 제1 프레임을 촬영한 카메라 위치와, 상기 제1 프레임으로부터 소정의 간격 이후의 제2 프레임을 촬영한 카메라 위치가 소정의 유사도 이상을 충족하는 경우를 포함할 수 있다.
예를 들면, 상기 제2 공간 분할 조건은, 상기 3차원 공간에서 카메라가 제1 서브 공간의 입구 위치에서 출발하여 상기 제1 서브 공간 내부를 이동한 이후 다시 상기 제1 서브 공간의 입구 위치로 회귀하는 경우일 수 있다.
또한, 상기 공간 분할 조건은, 3) 상기 기초영상 내 프레임별 카메라 위치의 군집도가 소정의 기준 미만인 경우를 제3 공간 분할 조건으로 포함할 수 있다.
자세히, 상기 제3 공간 분할 조건은, 상기 기초영상 내 적어도 일부 프레임을 촬영하는 동안에는 카메라 위치의 군집도가 소정의 기준 이상을 충족하다가, 특정한 프레임으로부터 상기 카메라 위치의 군집도가 소정의 기준 이상을 불충하는 경우를 포함할 수 있다.
예를 들면, 상기 제3 공간 분할 조건은, 상기 3차원 공간 내 제1 서브 공간을 촬영한 복수의 프레임에서의 카메라 위치 군집도는 소정의 기준 이상을 충족하다가, 상기 제1 서브 공간을 빠져나와 타 서브 공간으로 이동하는 경우에는 해당 카메라 위치 군집도가 소정의 기준 미만으로 감소하는 경우일 수 있다.
다시 돌아와서, 실시예에서 애플리케이션(111)은, 위와 같은 공간 분할 조건들 중에서 적어도 하나 이상의 조건이 충족하면, 해당 조건을 충족하는 영상 지점을 기준으로 상기 기초영상을 복수의 서브영상으로 분할할 수 있다.
그리하여 애플리케이션(111)은, 상기 기 설정된 공간 분할 조건에 따른 복수의 서브영상을 획득할 수 있다.
따라서, 애플리케이션(111)은, 해당하는 3차원 공간 내에서 실질적으로 의미있게 분할되는 공간들을 체계적인 기준에 따라서 높은 정확도로 구분 및 감지할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 획득된 서브영상에 기초한 서브 맵(Sub map)을 생성할 수 있다.
여기서, 실시예에 따른 상기 서브 맵이란, 상기 서브영상 내 적어도 하나의 키 프레임(Key frame)을 분석하여 획득되는 포인트 클라우드 정보(Point cloud data)를 기초로 해당 서브영상이 나타내는 3차원 공간(즉, 서브 공간)을 인식해 제공하는 3차원 맵(3D Map)을 의미할 수 있다.
자세히, 실시예에서 애플리케이션(111)은, 상기 획득된 복수의 서브영상 각각에 대한 서브 맵을 생성할 수 있다.
도 4는 본 발명의 실시예에 따른 서브 맵(Sub map)을 설명하기 위한 도면의 일례이다.
보다 상세히, 도 4를 참조하면, 실시예에서 애플리케이션(111)은, 상기 서브영상을 구성하는 전체 프레임 중에서 소정의 기준(예컨대, 소정의 간격 및/또는 소정의 변화 검출 등)에 따른 적어도 하나의 키 프레임(KF)을 추출할 수 있다.
이때, 상기 적어도 하나의 키 프레임(KF)은, 트리 형태의 데이터 구조로 저장 및 관리될 수 있다.
또한, 실시예에서 애플리케이션(111)은, 소정의 특징 검출기(Feature detector)와 연동하여 상기 키 프레임(KF) 내 복수의 특징점을 검출할 수 있다.
참고적으로, 상기 특징점은, 물체의 모서리(Edge) 또는 코너(Corner)와 같은 형상을 특정할 수 있는 점일 수 있으며, 닫힌 영역(Closed region)의 윤곽선에서 추출된 라인(Line)을 특정할 수 있는 점이 될 수도 있다.
예를 들면, 상기 특징점은, 실내의 천장을 촬영한 천장 영상 중에서 조명 등의 원형이나 사각형의 윤곽선으로부터 라인이나 점을 추출해 획득될 수 있다.
즉, 실시예에 따른 상기 특징 검출기는, 상기 키 프레임(KF) 내 소정의 피처(예컨대, 엣지(Edge) 및/또는 코너(Corner) 등) 포인트를 상기 특징점으로서 검출할 수 있다.
이때, 상기 특징 검출기는, 상기 검출된 각 특징점을 특정할 수 있는 디스크립터(descriptor)를 상기 특징점 각각에 대하여 함께 산출할 수 있다.
참고적으로, 상기 디스크립터는, 각 특징점을 특정할 수 있는 정보로서 해당하는 특징점 주변 픽셀을 일정한 크기의 블록으로 나누어 각 블록에 속한 픽셀의 그레디언트 히스토그램을 계산한 것일 수 있다. 이러한 디스크립터는, 주로 특징점 주변의 3차원 공간좌표 정보(실시예에서, 노멀 벡터(normal vector) 및/또는 6자유도(6 degrees of freedom, 6 DoF) 등), 밝기, 색상, 방향 및/또는 크기 등의 정보를 포함할 수 있다.
위와 같은 특징 검출기는, 예시적으로 FastFeatureDetector, MSER, SimpleBlobDetector 및/또는 GFTTDetector 등과 같은 알고리즘에 기반하여 구현될 수 있다. 다만, 이는 일례일 뿐 이에 한정되는 것은 아니다.
이때, 실시예에서 애플리케이션(111)은, 상기 검출된 복수의 특징점과 이들 각각에 대한 디스크립터를 상호 매칭하여 저장 및 관리할 수 있다.
또한, 실시예예서 애플리케이션(111)은, 상기 검출된 복수의 특징점을 3차원 공간좌표 상에 맵핑함으로써 상기 서브영상에 대한 서브 맵을 생성할 수 있다.
자세히, 애플리케이션(111)은, 상기 서브영상 내 키 프레임(KF)들로부터 검출된 각 복수의 특징점(및/또는 상기 각 복수의 특징점별 디스크립터)을, 해당하는 키 프레임(KF)을 획득할 시의 카메라 자세정보(즉, 카메라의 위치/방위 정보)와 맵핑해나감으로써 상기 3차원 공간좌표에 따른 서브 맵을 생성할 수 있다.
즉, 실시예에서 애플리케이션(111)은, 상기 각 서브영상 내 적어도 하나의 키 프레임(KF)으로부터 복수의 특징점(즉, 포인트 클라우드)을 검출하고, 상기 검출된 복수의 특징점(및/또는 상기 복수의 특징점별 디스크립터)을 해당 키 프레임(KF) 촬영 시의 카메라 자세정보에 따라서 3차원 공간좌표 상에 맵핑하여 상기 각 서브영상별 서브 맵을 생성할 수 있다.
따라서, 애플리케이션(111)은, 해당 3차원 공간에 대한 3차원 맵을 상기 3차원 공간 내 분할된 각각의 서브 공간별로 구분하여 구현할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 생성된 서브 맵에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정할 수 있다. (S107)
도 5는 본 발명의 실시예에 따른 대표 키 프레임(Main key frame)을 설명하기 위한 도면의 일례이다.
자세히, 도 5를 참조하면, 실시예에서 애플리케이션(111)은, 상기 생성된 각 서브 맵이 포함하는 복수의 키 프레임(KF) 중 적어도 일부를 상기 각 서브 맵에 대한 대표 키 프레임(MF)으로 결정할 수 있다.
보다 상세히, 실시예에서 애플리케이션(111)은, 1) 기 설정된 간격을 기초로 각 서브 맵에 대한 적어도 하나의 대표 키 프레임(MF)을 결정할 수 있다.
구체적으로, 애플리케이션(111)은, 상기 각 서브 맵이 포함하는 복수의 키 프레임(KF) 중 적어도 일부를 기 설정된 간격에 따라서 선택하여 추출할 수 있다.
그리고 애플리케이션(111)은, 상기 추출된 적어도 일부의 키 프레임(KF)을 해당 서브 맵에 대한 적어도 하나의 대표 키 프레임(MF)으로 결정할 수 있다.
다른 실시예에서 애플리케이션(111)은, 2) 각 서브 맵 내 복수의 키 프레임(KF) 간 유사도를 기초로 상기 각 서브 맵에 대한 적어도 하나의 대표 키 프레임(MF)을 결정할 수 있다.
자세히, 애플리케이션(111)은, 상기 각 서브 맵이 포함하는 복수의 키 프레임(KF) 간 유사도를 산출할 수 있다.
실시예로, 애플리케이션(111)은, 개시된 유사도 산출 알고리즘(예컨대, Feature Matching, Histogram, MSE(mean square error) 및/또는 Autoencoder 기반 유사도 산출 알고리즘 등)에 기초하여 상기 각 서브 맵 내 복수의 키 프레임(KF) 간 유사도를 산출할 수 있다.
또한, 애플리케이션(111)은, 상기 산출된 유사도가 소정의 기준 미만인 적어도 일부의 키 프레임(KF)(즉, 유사도 변화가 큰 키 프레임(KF))을 검출할 수 있다.
또한, 애플리케이션(111)은, 상기 검출된 적어도 일부의 키 프레임(KF)을 해당 서브 맵에 대한 적어도 하나의 대표 키 프레임(MF)으로 결정할 수 있다.
또 다른 실시예에서 애플리케이션(111)은, 3) 각 서브 맵 내 복수의 키 프레임(KF) 상에서 검출된 모서리(Edge)를 기초로 상기 각 서브 맵에 대한 적어도 하나의 대표 키 프레임(MF)을 결정할 수 있다.
자세히, 애플리케이션(111)은, 상기 각 서브 맵 내 복수의 키 프레임(KF)이 포함하는 복수의 특징점에 기초하여 해당하는 서브 공간을 형성하는 벽면 간 접선(모서리)을 적어도 둘 이상 검출할 수 있다.
도 6은 본 발명의 실시예에 따른 대표 키 프레임(MF)을 결정하는 일 방법을 설명하기 위한 도면의 일례이다.
예를 들어, 도 6을 참조하면, 애플리케이션(111)은, 제1 서브 공간(SS1)을 제1 내지 제4 벽면(즉, 측면)이 형성하고 있는 경우, 상기 제1 벽면과 상기 제2 벽면 간 접선인 제1 모서리(E1)와, 상기 제2 벽면과 상기 제3 벽면 간 접선인 제2 모서리(E2)와, 상기 제3 벽면과 상기 제4 벽면 간 접선인 제3 모서리(E3)와, 상기 제4 벽면과 상기 제1 벽면 간 접선인 제4 모서리(E4)를 검출할 수 있다.
또한, 애플리케이션(111)은, 상기 검출된 적어도 둘의 접선(모서리)를 인접한 두 개의 접선끼리 한 쌍으로 그룹화할 수 있다.
예를 들어, 애플리케이션(111)은, 상기 제1 모서리(E1)와 상기 제2 모서리(E2)를 한 쌍으로 그룹화하고, 상기 제2 모서리(E2)와 상기 제3 모서리(E3)를 한 쌍으로 그룹화하고, 상기 제3 모서리(E3)와 상기 제4 모서리(E4)를 한 쌍으로 그룹화하고, 상기 제4 모서리(E4)와 상기 제1 모서리(E1)를 한 쌍으로 그룹화할 수 있다.
또한, 애플리케이션(111)은, 상기 각각의 접선 그룹에 대하여, 해당 접선 그룹 내 두 접선(모서리)을 모두 포함하는 적어도 하나의 키 프레임(KF)을 추출할 수 있다.
또한, 애플리케이션(111)은, 상기 추출된 적어도 하나의 키 프레임(KF) 중에서 해당하는 두 접선(모서리) 사이의 중심지점이 해당 키 프레임(KF)의 중심영역에 위치하는 키 프레임(KF)을 검출할 수 있다.
즉, 애플리케이션(111)은, 상기 각각의 접선 그룹별로 해당하는 두 접선(모서리) 사이의 중심이 되는 키 프레임(CF: 이하, 중심 키 프레임)을 검출할 수 있다.
또한, 애플리케이션(111)은, 상기 각 접선 그룹마다 검출된 중심 키 프레임(CF)들을 해당하는 서브 맵에 대한 적어도 하나의 대표 키 프레임(MF)으로 결정할 수 있다.
이때, 상기 적어도 하나의 대표 키 프레임(MF)은, 트리 형태의 데이터 구조로 저장 및 관리될 수 있다.
이상에서는, 효과적인 설명을 위하여 실시예들을 상술된 바와 같이 구분하여 설명하였으나 실시예에 따라서 상기 실시예들 중 적어도 일부가 상호 유기적으로 결합하여 동작할 수도 있는 등 다양한 실시예 또한 가능할 수 있다.
따라서, 애플리케이션(111)은, 해당 서브 맵에 기초한 각종 데이터 처리 시 해당 서브 맵이 포함하는 전체 프레임 모두에 대한 연산을 대신해 해당 전체 프레임을 대표하는 적어도 일부 프레임을 이용한 연산을 가능하게 하여 그 연산량을 줄이고 속도를 향상시키는 등 데이터 처리의 효율성을 제고시킬 수 있으며, 실시예에서는 추후 맵 타겟 추적 서비스를 위한 현재 자세정보 검출 시의 데이터 처리가 보다 효율적으로 동작하게 할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 생성된 서브 맵에 기초한 메인 맵(Main map)을 생성할 수 있다. (S109)
자세히, 실시예에서 애플리케이션(111)은, 위와 같이 적어도 하나의 대표 키 프레임(MF)이 결정된 복수의 서브 맵을 결합하여 상기 메인 맵을 생성할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 생성된 메인 맵을 외부의 컴퓨팅 디바이스(실시예에서, 타 단말 및/또는 데이터베이스 서버 등)로 제공할 수 있다.
그리하여 애플리케이션(111)은, 3차원 공간 내 각 서브 공간별로 구분되어 생성된 복수의 서브 맵을 포함하는 3차원 맵(즉, 실시예에서 메인 맵)을 이용하여 본 발명의 실시예에 따른 맵 타겟 추적 서비스가 구현되게 할 수 있다.
- 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 기초로 현재 자세정보를 추적하는 방법
이하에서는, 본 발명의 실시예에 따른 애플리케이션(111)이 본 발명의 실시예에 따른 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 기초로 현재 자세(위치/방위)정보를 추적하는 방법을 첨부된 도면들을 참조하여 상세히 설명한다. 이때, 상술된 설명과 중복되는 기재는 요약되거나 생략될 수 있다.
도 7은 본 발명의 실시예에 따른 맵 타겟 추적 서비스를 위한 3차원 맵(3D Map)을 기초로 현재 자세정보를 추적하는 방법을 설명하기 위한 흐름도이다.
도 7을 참조하면, 실시예에서 애플리케이션(111)은, 메인 맵(Main map)을 획득할 수 있다. (S201)
자세히, 실시예에서 애플리케이션(111)은, 전술한 바와 같이 복수의 서브 맵이 결합된 3차원의 메인 맵을 자체적으로 생성 및/또는 외부의 컴퓨팅 디바이스(실시예에서, 타 단말 및/또는 데이터베이스 서버 등)로부터 수신하여 획득할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 3차원 공간을 촬영한 위치검출 영상을 획득할 수 있다. (S203)
여기서, 실시예에 따른 상기 위치검출 영상이란, 상기 메인 맵 및 카메라(즉, 소정의 이미지 센서를 포함하는 컴퓨팅 장치)를 포함하는 단말(및/또는 로봇)이 소정의 3차원 공간을 이동하며 촬영한 영상을 의미할 수 있다.
실시예에서, 이러한 위치검출 영상은, 복수의 프레임(frame)을 포함하여 구성될 수 있으며, 상기 복수의 프레임은 트리 형태의 데이터 구조로 저장 및 관리될 수 있다.
실시예에서, 상기 메인 맵 및 카메라를 포함하는 단말(및/또는 로봇)은, 상기 카메라를 기초로 소정의 3차원 공간을 별도로 촬영하여 상기 위치검출 영상을 획득할 수 있으며, 상기 획득된 위치검출 영상을 애플리케이션(111)으로 제공할 수 있다.
그리하여 실시예에서 애플리케이션(111)은, 상기 3차원 공간에 대한 위치검출 영상을 획득할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 획득된 위치검출 영상과 메인 맵을 비교하여 복수의 서브 맵 유사도를 산출할 수 있다. (S205)
도 8은 본 발명의 실시예에 따른 복수의 서브 맵 유사도를 산출하는 방법을 설명하기 위한 도면의 일례이다.
자세히, 도 8을 참조하면, 실시예예서 애플리케이션(111)은, 상기 획득된 위치검출 영상(LV)과 상기 메인 맵이 포함하는 복수의 서브 맵 각각을 상호 비교하여, 상기 복수의 서브 맵 각각에 대한 서브 맵 유사도를 산출할 수 있다.
여기서, 실시예에 따른 상기 서브 맵 유사도란, 상기 위치검출 영상(LV)의 적어도 하나의 프레임(이하, 위치검출 프레임)과 상기 메인 맵이 포함하는 각 서브 맵의 적어도 하나의 대표 키 프레임(MF) 간의 유사도를 의미할 수 있다.
보다 상세히, 실시예에서 애플리케이션(111)은, 상기 적어도 하나의 위치검출 프레임과 상기 복수의 서브 맵별 적어도 하나의 대표 키 프레임(MF) 각각을 상호 비교하여 상기 복수의 서브 맵 각각에 대한 서브 맵 유사도를 산출할 수 있다.
이때, 상기 복수의 서브 맵별 적어도 하나의 대표 키 프레임(MF)은 단일 트리 형태로 데이터 구조화되어 상기 적어도 하나의 위치검출 프레임과 비교될 수 있으므로, 상기 복수의 서브 맵이 포함하는 모든 키 프레임(KF)과 일일이 비교하는 것에 비하여 그 데이터 처리 효율성을 향상시킬 수 있다.
실시예로, 애플리케이션(111)은, 개시된 유사도 산출 알고리즘(예컨대, Feature Matching, Histogram, MSE(mean square error) 및/또는 Autoencoder 기반 유사도 산출 알고리즘 등)에 기초하여 상기 위치검출 영상(LV)의 적어도 하나의 프레임과 상기 서브 맵별 적어도 하나의 대표 키 프레임(MF) 간 유사도를 산출할 수 있다.
이때, 실시예에서 애플리케이션(111)은, 상기 메인 맵 내 각 서브 맵별 유사도 산출을 위한 데이터 연산을 상기 복수의 서브 맵 전체에 대하여 병렬적으로 수행할 수 있다.
즉, 애플리케이션(111)은, 기 구축된 3차원 메인 맵에서의 대표 키 프레임(MF)들에 기초한 표본 데이터들과 복수의 서브 맵에 기초한 병렬 연산을 수행하여 각 서브 맵별 유사도를 산출함으로써, 이후 해당하는 위치검출 영상(LV)과 가장 높은 유사도를 가지는 서브 맵을 적은 연산량으로도 손 쉽게 추출할 수 있고, 이를 통해 추후 기 구축된 3차원 맵을 이용하여 현재 위치/방위를 추적할 시 상기 가장 유사한 것으로 판단되어 추출된 서브 맵(즉, 부분적인 맵)만을 이용해 필요한 연산을 수행하게 하여 해당 연산에 요구되는 데이터 처리량 및 자원을 더욱 절감시킴과 동시에 속도를 높이는 등 그 효율성을 향상시킬 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 산출된 복수의 서브 맵 유사도를 기초로 대표 서브 맵을 추출할 수 있다. (S207)
여기서, 실시예에 따른 상기 대표 서브 맵이란, 상기 복수의 서브 맵 유사도 중에서 가장 높은 유사도를 가지는 서브 맵을 의미할 수 있다.
즉, 실시예에서 애플리케이션(111)은, 위와 같이 산출된 복수의 서브 맵 유사도 중에서 가장 높은 유사도를 가지는 서브 맵을 검출할 수 있다.
그리고 애플리케이션(111)은, 상기 검출된 서브 맵을 상기 대표 서브 맵으로서 상기 메인 맵으로부터 추출할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 추출된 대표 서브 맵과 상기 위치검출 영상(LV)을 기초로 현재 자세정보를 검출할 수 있다. (S209)
여기서, 실시예에 따른 상기 현재 자세정보란, 상기 위치검출 영상(LV)을 촬영할 시의 카메라의 위치/방위 정보를 의미할 수 있다.
즉, 상기 현재 자세정보는, 상기 위치검출 영상(LV) 내 각각의 프레임을 촬영할 때의 카메라의 위치와 방위 정보를 포함할 수 있다.
자세히, 실시예에서 애플리케이션(111)은, 상기 추출된 대표 서브 맵이 포함하는 적어도 하나의 키 프레임(KF)과 상기 위치검출 영상(LV)의 적어도 하나의 위치검출 프레임을 상호 비교할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 위치검출 프레임과 소정의 유사도 이상을 가지는 적어도 하나의 키 프레임(KF)(이하, 대응 프레임)을 상기 서브 맵으로부터 추출할 수 있다.
이때, 실시예로 애플리케이션(111)은, 개시된 유사도 산출 알고리즘(예컨대, Feature Matching, Histogram, MSE(mean square error) 및/또는 Autoencoder 기반 유사도 산출 알고리즘 등)에 기초하여 상기 유사도를 산출할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 추출된 대응 프레임에 매칭되어 있는 카메라 자세정보를 메모리(110)로부터 독출할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 독출된 카메라 자세정보에 기초하여 상기 현재 자세정보를 검출할 수 있다.
이와 같이, 애플리케이션(111)은, 3차원 공간 전체를 나타내는 메인 맵 내에서 상기 위치검출 영상(LV)을 촬영한 공간과 가장 유사하다고 판단된 서브 공간의 서브 맵만을 부분적으로 추출하고, 이를 기초로 상기 3차원 공간에서의 현재 자세정보(즉, 상기 위치검출 영상(LV)을 촬영할 시의 위치/방위 정보)를 검출함으로써, 현재 자세정보를 추적하기 위해 해당 3차원 공간에 대한 전체 3차원 맵(즉, 실시예에서 메인 맵)을 모두 둘러보며 비교해보지 않더라도, 효율적 연산을 통해 추출된 일부 3차원 맵(즉, 실시예에서 대표 서브 맵)만을 이용하여 현재 자세정보를 용이하게 검출할 수 있으며, 이를 통해 3차원 공간에서의 현재 위치/방위 추적을 위한 맵 타겟 서비스의 데이터 처리량 및 필요 자원을 감소시키고 데이터 처리 속도는 향상시키는 등 효율적으로 동작하는 맵 타겟 추적 서비스를 구현할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 검출된 현재 자세정보와 상기 위치검출 영상(LV)에 기초한 기능 동작을 실행할 수 있다. (S209)
자세히, 실시예에서 애플리케이션(111)은, 상기 검출된 현재 자세정보에 대응되는 카메라 자세정보를 가지는 키 프레임(이하, 타겟 프레임)을 상기 대표 서브 맵으로부터 추출할 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 추출된 타겟 프레임이 포함하는 소정의 기준타겟(실시예로, 특징점, 기 설정된 마커(Marker) 및/또는 소정의 3차원 공간좌표 등)에 맵핑된 소정의 기능 동작을 검출할 수 있다.
예시적으로, 상기 기능 동작은, 맵핑된 기준타겟에 대하여 소정의 가상객체를 증강 표시하는 기능 및/또는 웨이포인트(waypoint)를 지정하는 기능 등일 수 있다.
또한, 실시예에서 애플리케이션(111)은, 상기 검출된 기능 동작을 상기 위치검출 영상(LV)에 기초하여 실행할 수 있다.
예를 들면, 애플리케이션(111)은, 상기 위치검출 영상(LV) 내 소정의 기준타겟에 대하여 특정 가상객체를 증강 표시할 수도 있고, 해당 기준타겟을 특정 웨이포인트로 지정할 수도 있다.
이와 같이, 애플리케이션(111)은, 3차원 공간 내 복수의 서브 공간별로 구분이 가능한 형태의 3차원 맵(즉, 실시예에서 메인 맵)을 이용하여 특정 서브 공간에서 요구되는 각종 기능 동작이 적은 데이터 처리로도 빠르게 수행되도록 할 수 있고, 이러한 기능 동작들을 포함하는 각종 애플리케이션(111) 서비스의 성능 및 품질을 향상시킬 수 있다.
이상, 본 발명의 실시예에 따른 맵 타겟 추적 방법 및 그 시스템은, 3차원 공간을 복수의 서브 공간으로 구분한 3차원 맵(3D Map)을 생성하고, 상기 생성된 3차원 맵을 기초로 현재 자세(위치/방위)정보를 추적함으로써, 기 생성된 3차원 맵 내에서 상기 구분된 서브 공간별로 포함하는 적어도 일부의 키 프레임(Key frame) 및/또는 특징점들과의 비교 연산만을 수행하여 현재 자세정보를 추적할 수 있고, 이를 통해 상기 비교 연산에 요구되는 데이터 처리량이 감소되어 현재 위치/방위 추적에 소요되는 자원이나 시간을 절감할 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 맵 타겟 추적 방법 및 그 시스템은, 위와 같은 3차원 맵을 통해 추적된 현재 자세(위치/방위)정보에 기초한 소정의 기능 동작을 실행함으로써, 해당하는 기능 동작을 실행하기 위해 필요한 데이터 처리의 속도 및 효율성을 향상시킬 수 있고, 이를 통해 상기 기능 동작을 포함하는 각종 애플리케이션(111) 서비스의 성능과 품질을 제고할 수 있는 효과가 있다.
한편, 이상에서 설명된 본 발명에 따른 실시예는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위하여 하나 이상의 소프트웨어 모듈로 변경될 수 있으며, 그 역도 마찬가지이다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
또한 설명한 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자 또는 해당 기술분야에 통상의 지식을 갖는 자라면 후술할 특허청구범위에 기재된 본 발명의 사상 및 기술 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 기술적 범위는 명세서의 상세한 설명에 기재된 내용으로 한정되는 것이 아니라 특허청구범위에 의해 정하여져야만 할 것이다.

Claims (10)

  1. 단말의 적어도 하나의 프로세서에 의하여 실행되는 맵 타겟 추적 애플리케이션이 맵 타겟 추적을 수행하는 방법으로서,
    3차원 공간을 촬영한 기초영상을 획득하는 단계;
    상기 획득된 기초영상을 상기 3차원 공간 내 서브 공간별로 분할한 복수의 서브영상을 획득하는 단계;
    상기 획득된 복수의 서브영상을 기초로 복수의 서브 맵(Sub map)을 생성하는 단계;
    상기 생성된 복수의 서브 맵 각각에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정하는 단계;
    상기 적어도 하나의 대표 키 프레임이 결정된 복수의 서브 맵을 결합한 3차원 메인 맵(3D Main map)을 생성하는 단계; 및
    상기 생성된 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하는 단계를 포함하고,
    상기 기초영상 내 각 프레임을 촬영한 카메라의 위치 및 방위 정보를 제공하는 카메라 자세정보를 획득하는 단계를 더 포함하고,
    상기 복수의 서브 맵을 생성하는 단계는,
    상기 서브영상별 적어도 하나의 키 프레임(Key frame)을 추출하는 단계와,
    상기 추출된 키 프레임별 복수의 특징점 및 상기 특징점별 디스크립터(descriptor)를 검출하는 단계와,
    상기 검출된 복수의 특징점 및 상기 특징점별 디스크립터를 상기 카메라 자세정보를 기초로 3차원 공간좌표에 맵핑하여 상기 복수의 서브 맵을 생성하는 단계를 포함하는
    맵 타겟 추적 방법.
  2. 제1 항에 있어서,
    상기 복수의 서브영상을 획득하는 단계는,
    기 설정된 공간 분할 조건을 기초로 상기 3차원 공간 내 서브 공간을 구분하는 단계를 포함하는
    맵 타겟 추적 방법.
  3. 제2 항에 있어서,
    상기 공간 분할 조건은,
    기 설정된 공간분할 객체를 검출하는 조건, 기 촬영 위치로 회귀하는 조건 및 상기 기초영상을 촬영한 카메라의 위치 군집도가 소정의 기준 미만인 조건 중 적어도 하나의 조건을 포함하는
    맵 타겟 추적 방법.
  4. 삭제
  5. 단말의 적어도 하나의 프로세서에 의하여 실행되는 맵 타겟 추적 애플리케이션이 맵 타겟 추적을 수행하는 방법으로서,
    3차원 공간을 촬영한 기초영상을 획득하는 단계;
    상기 획득된 기초영상을 상기 3차원 공간 내 서브 공간별로 분할한 복수의 서브영상을 획득하는 단계;
    상기 획득된 복수의 서브영상을 기초로 복수의 서브 맵(Sub map)을 생성하는 단계;
    상기 생성된 복수의 서브 맵 각각에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정하는 단계;
    상기 적어도 하나의 대표 키 프레임이 결정된 복수의 서브 맵을 결합한 3차원 메인 맵(3D Main map)을 생성하는 단계; 및
    상기 생성된 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하는 단계를 포함하고,
    상기 적어도 하나의 대표 키 프레임을 결정하는 단계는,
    상기 서브 맵에 대한 복수의 키 프레임 중에서 기 설정된 간격에 따른 적어도 일부 키 프레임을 상기 서브 맵의 대표 키 프레임으로 결정하는 단계와,
    상기 서브 맵에 대한 복수의 키 프레임 간 유사도를 산출하고, 상기 산출된 유사도가 소정의 기준 미만인 적어도 일부 키 프레임을 상기 서브 맵의 대표 키 프레임으로 결정하는 단계 중 적어도 하나의 단계를 포함하는
    맵 타겟 추적 방법.
  6. 단말의 적어도 하나의 프로세서에 의하여 실행되는 맵 타겟 추적 애플리케이션이 맵 타겟 추적을 수행하는 방법으로서,
    3차원 공간을 촬영한 기초영상을 획득하는 단계;
    상기 획득된 기초영상을 상기 3차원 공간 내 서브 공간별로 분할한 복수의 서브영상을 획득하는 단계;
    상기 획득된 복수의 서브영상을 기초로 복수의 서브 맵(Sub map)을 생성하는 단계;
    상기 생성된 복수의 서브 맵 각각에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정하는 단계;
    상기 적어도 하나의 대표 키 프레임이 결정된 복수의 서브 맵을 결합한 3차원 메인 맵(3D Main map)을 생성하는 단계; 및
    상기 생성된 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하는 단계를 포함하고,
    상기 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하는 단계는,
    상기 3차원 공간을 별도로 촬영한 위치검출 영상을 획득하는 단계;
    상기 획득된 위치검출 영상과 상기 3차원 메인 맵을 비교하여 상기 서브 맵별 유사도를 산출하는 단계;
    상기 산출된 서브 맵별 유사도 중 가장 높은 유사도를 가지는 서브 맵을 대표 서브 맵으로 결정하는 단계; 및
    상기 결정된 대표 서브 맵과 상기 위치검출 영상을 비교하여 상기 위치검출 영상 내 각 프레임을 촬영한 카메라의 위치 및 방위 정보를 제공하는 상기 현재 자세정보를 검출하는 단계를 포함하는
    맵 타겟 추적 방법.
  7. 제6 항에 있어서,
    상기 서브 맵별 유사도를 산출하는 단계는,
    상기 위치검출 영상의 적어도 하나의 프레임과 상기 서브 맵별 적어도 하나의 대표 키 프레임 간의 유사도를 산출하는 단계를 포함하는
    맵 타겟 추적 방법.
  8. 제6 항에 있어서,
    상기 결정된 대표 서브 맵과 상기 위치검출 영상을 비교하여 상기 현재 자세정보를 검출하는 단계는,
    상기 대표 서브 맵에 대한 적어도 하나의 키 프레임 중에서 상기 위치검출 영상의 적어도 하나의 프레임과 소정의 유사도 이상을 가지는 대응 프레임을 추출하는 단계와,
    상기 추출된 대응 프레임에 매칭되는 카메라 자세정보를 획득하는 단계와,
    상기 획득된 카메라 자세정보를 기초로 상기 현재 자세정보를 검출하는 단계를 포함하는
    맵 타겟 추적 방법.
  9. 제6 항에 있어서,
    상기 검출된 현재 자세정보를 기초로 소정의 기능 동작을 실행하는 단계를 더 포함하고,
    상기 소정의 기능 동작을 실행하는 단계는,
    상기 대표 서브 맵에서 상기 현재 자세정보에 대응되는 카메라 자세정보를 가지는 키 프레임을 추출하는 단계와,
    상기 추출된 키 프레임 내 기 설정된 마커(Marker), 특징점 및 3차원 공간좌표 중 적어도 하나를 포함하는 기준타겟을 검출하는 단계와,
    상기 검출된 기준타겟에 맵핍된 기능 동작을 실행하는 단계를 포함하는
    맵 타겟 추적 방법.
  10. 3차원 메인 맵(3D Main map)을 출력하는 적어도 하나 이상의 디스플레이;
    적어도 하나 이상의 메모리; 및
    적어도 하나 이상의 프로세서; 를 포함하고,
    상기 메모리에 저장되고 상기 프로세서에 의해 실행되어 맵 타겟 추적을 수행하는 적어도 하나의 애플리케이션으로서 상기 적어도 하나의 애플리케이션은,
    3차원 공간을 촬영한 기초영상을 획득하고,
    상기 획득된 기초영상을 상기 3차원 공간 내 서브 공간별로 분할한 복수의 서브영상을 획득하고,
    상기 획득된 복수의 서브영상을 기초로 복수의 서브 맵(Sub map)을 생성하고,
    상기 생성된 복수의 서브 맵 각각에 대한 적어도 하나의 대표 키 프레임(Main key frame)을 결정하고,
    상기 적어도 하나의 대표 키 프레임이 결정된 복수의 서브 맵을 결합한 상기 3차원 메인 맵을 생성하고,
    상기 생성된 3차원 메인 맵을 기초로 상기 3차원 공간에서의 현재 자세정보를 추적하며,
    상기 기초영상 내 각 프레임을 촬영한 카메라의 위치 및 방위 정보를 제공하는 카메라 자세정보를 획득하고,
    상기 서브영상별 적어도 하나의 키 프레임(Key frame)을 추출하고,
    상기 추출된 키 프레임별 복수의 특징점 및 상기 특징점별 디스크립터(descriptor)를 검출하고,
    상기 검출된 복수의 특징점 및 상기 특징점별 디스크립터를 상기 카메라 자세정보를 기초로 3차원 공간좌표에 맵핑하여 상기 복수의 서브 맵을 생성하는
    맵 타겟 추적 시스템.
KR1020210193464A 2021-12-30 2021-12-30 맵 타겟 추적 방법 및 그 시스템 Active KR102431122B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210193464A KR102431122B1 (ko) 2021-12-30 2021-12-30 맵 타겟 추적 방법 및 그 시스템
US18/148,038 US11688094B1 (en) 2021-12-30 2022-12-29 Method and system for map target tracking
EP22217159.7A EP4207070A1 (en) 2021-12-30 2022-12-29 Method and system for map target tracking

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210193464A KR102431122B1 (ko) 2021-12-30 2021-12-30 맵 타겟 추적 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR102431122B1 true KR102431122B1 (ko) 2022-08-10

Family

ID=82846889

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210193464A Active KR102431122B1 (ko) 2021-12-30 2021-12-30 맵 타겟 추적 방법 및 그 시스템

Country Status (3)

Country Link
US (1) US11688094B1 (ko)
EP (1) EP4207070A1 (ko)
KR (1) KR102431122B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011043419A (ja) * 2009-08-21 2011-03-03 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
KR20150079730A (ko) * 2012-10-31 2015-07-08 퀄컴 인코포레이티드 컴퓨터 비전 기반 추적을 위해 멀티 맵들을 병합하는 시스템들 및 방법들
JP2016526313A (ja) * 2013-04-30 2016-09-01 クアルコム,インコーポレイテッド 総体的カメラ移動およびパノラマカメラ移動を使用した単眼視覚slam
KR102014706B1 (ko) 2017-02-15 2019-08-27 한양대학교 산학협력단 Slam 지도 저장 및 로드 방법
KR20200030508A (ko) * 2018-07-19 2020-03-20 우이시 테크놀로지스 (베이징) 리미티드. 시각 위치 확인 지도 저장 및 로딩 방법, 장치, 시스템 및 저장 매체

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100855657B1 (ko) 2006-09-28 2008-09-08 부천산업진흥재단 단안 줌 카메라를 이용한 이동로봇의 자기위치 추정 시스템및 방법
KR100926783B1 (ko) 2008-02-15 2009-11-13 한국과학기술연구원 물체인식 및 인식된 물체를 포함하는 주변 환경 정보를바탕으로 한 로봇의 자기 위치 추정 방법
US9830452B2 (en) * 2012-11-30 2017-11-28 Beijing Qihoo Technology Company Limited Scanning device, cloud management device, method and system for checking and killing malicious programs
US11086334B2 (en) * 2016-07-21 2021-08-10 Mobileye Vision Technologies Ltd. Crowdsourcing a sparse map for autonomous vehicle navigation
US10445928B2 (en) * 2017-02-11 2019-10-15 Vayavision Ltd. Method and system for generating multidimensional maps of a scene using a plurality of sensors of various types
CN107554430B (zh) * 2017-09-20 2020-01-17 京东方科技集团股份有限公司 车辆盲区可视化方法、装置、终端、系统及车辆
JP7125214B2 (ja) * 2018-04-03 2022-08-24 モービルアイ ビジョン テクノロジーズ リミテッド プログラムおよびコンピューティングデバイス
CN108692720B (zh) * 2018-04-09 2021-01-22 京东方科技集团股份有限公司 定位方法、定位服务器及定位系统
KR102618865B1 (ko) 2018-04-26 2023-12-28 에이치디한국조선해양 주식회사 3d 지도 작성 시스템
US10665028B2 (en) * 2018-06-04 2020-05-26 Facebook, Inc. Mobile persistent augmented-reality experiences
GB2621722B (en) * 2019-02-14 2024-06-05 Mobileye Vision Technologies Ltd Systems and methods for vehicle navigation
CN110276826A (zh) * 2019-05-23 2019-09-24 全球能源互联网研究院有限公司 一种电网作业环境地图的构建方法及系统
AU2020313865A1 (en) * 2019-07-12 2022-02-03 Reflexion Medical, Inc. Multi-target treatment planning and delivery and virtual localization for radiation therapy
CN110488874A (zh) * 2019-08-29 2019-11-22 五邑大学 一种教育辅助机器人及其控制方法
KR102238522B1 (ko) 2019-09-27 2021-04-09 주식회사 서울로보틱스 3차원 공간에 대응되는 맵을 생성하는 차량 및 방법
US11481925B1 (en) * 2020-11-23 2022-10-25 Zillow, Inc. Automated determination of image acquisition locations in building interiors using determined room shapes
CN114549746B (zh) * 2022-01-28 2023-03-07 电子科技大学 一种高精度真彩三维重建方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011043419A (ja) * 2009-08-21 2011-03-03 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
KR20150079730A (ko) * 2012-10-31 2015-07-08 퀄컴 인코포레이티드 컴퓨터 비전 기반 추적을 위해 멀티 맵들을 병합하는 시스템들 및 방법들
JP2016526313A (ja) * 2013-04-30 2016-09-01 クアルコム,インコーポレイテッド 総体的カメラ移動およびパノラマカメラ移動を使用した単眼視覚slam
KR102014706B1 (ko) 2017-02-15 2019-08-27 한양대학교 산학협력단 Slam 지도 저장 및 로드 방법
KR20200030508A (ko) * 2018-07-19 2020-03-20 우이시 테크놀로지스 (베이징) 리미티드. 시각 위치 확인 지도 저장 및 로딩 방법, 장치, 시스템 및 저장 매체

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Jun Wang 등, A Submap Joining Based RGB-D SLAM Algorithm using Planes as Features, Field and Service Robotics.(2017.11.03.)* *
Karl Holmquist, SLAMIT: A Sub-map based SLAM System, Master of Science Thesis in Linkoping University(2017.01.17.)* *

Also Published As

Publication number Publication date
US11688094B1 (en) 2023-06-27
EP4207070A1 (en) 2023-07-05
US20230215036A1 (en) 2023-07-06

Similar Documents

Publication Publication Date Title
CN109211241B (zh) 基于视觉slam的无人机自主定位方法
CN109947886B (zh) 图像处理方法、装置、电子设备及存储介质
EP2989481B1 (en) Localization systems and methods
EP3008695B1 (en) Robust tracking using point and line features
EP2770783B1 (en) A wearable information system having at least one camera
WO2021057742A1 (zh) 定位方法及装置、设备、存储介质
US9560273B2 (en) Wearable information system having at least one camera
WO2017172778A1 (en) Collaborative navigation and mapping
EP3206163B1 (en) Image processing method, mobile device and method for generating a video image database
WO2021147113A1 (zh) 一种平面语义类别的识别方法以及图像数据处理装置
US20220157032A1 (en) Multi-modality localization of users
US20240203069A1 (en) Method and system for tracking object for augmented reality
Elloumi et al. Real-time camera orientation estimation based on vanishing point tracking under manhattan world assumption
KR102431122B1 (ko) 맵 타겟 추적 방법 및 그 시스템
KR102709388B1 (ko) 맵 타겟 생성을 위한 사용자 인터페이스 제공 방법 및 그 시스템
US20230162376A1 (en) Method and system for estimating motion of real-time image target between successive frames
US20230215098A1 (en) Method and system for creating and storing map target
US20230162375A1 (en) Method and system for improving target detection performance through dynamic learning
KR20240095674A (ko) 증강현실을 위한 객체 트래킹 방법 및 시스템
KR20230162292A (ko) 3차원 스캐너를 이용한 맵타겟 데이터 생성방법 및 시스템
Wang et al. Research on 3D Modeling Method of Unmanned System Based on ORB-SLAM and Oblique Photogrammetry
KR20230098944A (ko) 모바일 환경에서 실시간 트래킹을 위한 키포인트 선택 방법
KR20240095672A (ko) 딥러닝 기반의 ar 객체 트래킹 서비스 제공 방법 및 시스템
KR20230076048A (ko) 연속 프레임 간의 실시간 이미지 타겟의 모션 추정 방법 및 그 시스템
KR20230076044A (ko) 동적 학습을 통한 타겟 검출 성능 향상 방법 및 그 시스템

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20211230

PA0201 Request for examination
PA0302 Request for accelerated examination

Patent event date: 20211231

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

Patent event date: 20211230

Patent event code: PA03021R01I

Comment text: Patent Application

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20220318

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

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20220805

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20220805

End annual number: 3

Start annual number: 1

PG1601 Publication of registration