KR101863647B1 - 3d 맵들에 대한 가설 라인 맵핑 및 검증 - Google Patents

3d 맵들에 대한 가설 라인 맵핑 및 검증 Download PDF

Info

Publication number
KR101863647B1
KR101863647B1 KR1020177037785A KR20177037785A KR101863647B1 KR 101863647 B1 KR101863647 B1 KR 101863647B1 KR 1020177037785 A KR1020177037785 A KR 1020177037785A KR 20177037785 A KR20177037785 A KR 20177037785A KR 101863647 B1 KR101863647 B1 KR 101863647B1
Authority
KR
South Korea
Prior art keywords
lines
hypothetical
line
images
mapping
Prior art date
Application number
KR1020177037785A
Other languages
English (en)
Other versions
KR20180026404A (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 퀄컴 인코포레이티드
Publication of KR20180026404A publication Critical patent/KR20180026404A/ko
Application granted granted Critical
Publication of KR101863647B1 publication Critical patent/KR101863647B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/543Depth or shape recovery from line drawings
    • G06K9/4604
    • G06K9/52
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • 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/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence

Abstract

라인 맵핑을 수행하기 위한 디바이스, 장치 및 방법이 개시된다. 실세계 환경의 양상에 대응하는 적어도 제 1 및 제 2의 3D(three-dimensional) 라인을 포함하는 3D 맵이 획득될 수 있다. 양상의 하나 또는 그 초과의 이미지들이 또한 획득되고 가설 3D 라인이 결정될 수 있다. 가설 3D 라인들은 하나 또는 그 초과의 이미지들을 이용하여 검증될 수 있고, 3D 맵은 업데이트될 수 있다. 가설 3D 라인들의 결정 및 검증은 3D 공간에서 평면을 생성하고 동일-평면성 또는 직교성 가정들을 이용하는 것을 포함할 수 있다.

Description

3D 맵들에 대한 가설 라인 맵핑 및 검증
[0001] 본 출원은 2015년 7월 2일에 출원되고 발명의 명칭이 "HYPOTHESES LINE MAPPING AND VERIFICATION FOR 3D MAPS"인 미국 특허 출원 제14/791,205호의 우선권의 이익을 주장하며, 이는 본원에 인용에 의해 포함된다.
[0002] 본 개시는 일반적으로 컴퓨터 비전 기반 객체 인식 애플리케이션들에 관한 것으로서, 특히 3-차원(3D) 라인 맵핑에 관한 것이다(그러나 배타적이지 않음).
[0003] 모바일 무선 통신 디바이스들, PDA(personal digital assistant)들, 랩톱 컴퓨터들, 데스크톱 컴퓨터들, 디지털 카메라들, 디지털 레코딩 디바이스 등을 포함하는 광범위한 전자 디바이스들은 머신 비전 기술들을 이용하여 다양한(versatile) 이미징 능력들을 제공한다. 이러한 능력들은 사용자들이 랜드마크들을 인식하는 것, 친구들 및/또는 이방인들을 식별하는 것 및 다양한 다른 작업들을 보조하는 기능들을 포함할 수 있다.
[0004] AR(augmented reality) 시스템들은 카메라에 의해 캡처된 컬러 또는 그레이스케일 이미지 데이터에 기초한 모델-기반(예를 들어, 3D 모델) 추적 알고리즘들 또는 SLAM(Simultaneous Localization And Mapping) 알고리즘들에 의존하였다. SLAM 알고리즘들은 환경 내의 식별 가능한 피처들에 기초하여 환경의 양상들(예를 들어, 랜드마크들 및 타겟 객체)을 검출하고 추적할 수 있다. 일부 SLAM 시스템들은 양상들/타겟 객체들의 검출 및 추적을 위해 포인트-기반 피처 선택을 사용할 수 있다. 그러나 다수의 환경들(예를 들어, 사람이 만든 환경들)은 에지-유사 피처들(edge-like features)을 검출하는 데 도움이 되는 풍부한 에지들을 갖는다. 에지-유사 피처들을 식별하여 환경의 3D 맵에 부가하는 프로세스는 종종 라인 맵핑으로서 지칭된다. 그러나 통상적인 라인 맵핑 시스템들은, 이들이 종종 하나의 3D 라인을 삼각측량(triangulate)하기 위해 적어도 3개의 키프레임들의 생성에 의존하기 때문에 불완전한 3D 라인들을 생성한다. 하나의 3D 라인에 대해 3개의 키프레임들을 프로세싱하는 요건은 모바일 디바이스들과 같이 비교적 낮은 프로세싱 능력을 갖는 디바이스에 과한 부담을 준다.
[0005] 본원에서 논의되는 일부 실시예들은 3D 맵핑 시스템에서 개선된(예를 들어, 더 신속한) 라인 맵핑을 제공한다. 보다 구체적으로, 본원에서 논의된 실시예들은 기존의 3D 맵에 포함된 기존의 3D 라인들로부터 새로운 3D 라인들의 확장 또는 생성을 포함한다. 논의된 프로세스들은 작은 카메라 이동(즉, 키프레임 생성을 대기하는 대신 소수의 카메라 이미지들)을 이용함으로써 새로운 3D 라인들을 생성할 수 있다. 일반적으로, 프로세스는 수신된 이미지들로부터 또는 3D 맵에서 기존 라인들을 관찰함으로써 가설 3D 라인들을 생성하는 것을 포함한다. 가설 3D 라인들은 인입 이미지들 중 하나 또는 그 초과 상에서 검증될 수 있다.
[0006] 일 실시예에서, 라인-맵핑의 컴퓨터-구현 방법은, 실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 및 제 2의 3D(three-dimensional) 라인을 포함하는 3D 맵을 획득하는 단계 및 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하는 단계를 포함한다. 이 방법은 또한, 3D 맵, 제 1의 하나 또는 그 초과의 이미지들, 또는 이들의 결합 중 하나 또는 그 초과에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성하는 단계를 포함할 수 있다. 이 방법은 또한, 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득하는 단계를 포함할 수 있으며, 여기서 제 2의 하나 또는 그 초과의 이미지들은 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처된다. 부가적으로, 이 방법은, 제 2의 하나 또는 그 초과의 이미지들로부터, 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 하나 또는 그 초과의 양상들에 대응한다는 것을 검증하는 단계를 포함할 수 있다.
[0007] 다른 실시예에서, 컴퓨터-판독 가능한 매체는 라인 맵핑을 위한 프로그램 코드가 저장되어 있다. 일 실시예에서, 프로그램 코드는, 실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 및 제 2의 3D(three-dimensional) 라인을 포함하는 3D 맵을 획득하고 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하도록 하는 명령들을 포함한다. 이 명령들은 또한 3D 맵, 제 1의 하나 또는 그 초과의 이미지들, 또는 이들의 결합 중 하나 또는 그 초과에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성할 수 있다. 이 명령들은 또한, 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득할 수 있으며, 여기서 제 2의 하나 또는 그 초과의 이미지들은 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처된다. 부가적으로, 이 명령들은, 제 2의 하나 또는 그 초과의 이미지들로부터, 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 하나 또는 그 초과의 양상들에 대응한다는 것을 검증할 수 있다.
[0008] 또 다른 실시예에서, 디바이스는 프로세싱 유닛에 커플링되는 메모리를 포함한다. 메모리는 라인 맵핑을 위한 프로그램 코드를 저장하도록 적응되며, 프로세싱 유닛은 프로그램 코드에 포함된 명령들에 액세스하여 실행하도록 적응된다. 명령들이 프로세싱 유닛에 의해 실행될 때, 프로세싱 유닛은, 실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 및 제 2의 3D(three-dimensional) 라인을 포함하는 3D 맵을 획득하고 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하도록 디바이스에 지시한다. 이 명령들은 또한 3D 맵, 제 1의 하나 또는 그 초과의 이미지들, 또는 이들의 결합 중 하나 또는 그 초과에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성할 수 있다. 이 명령들은 또한, 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득할 수 있으며, 여기서 제 2의 하나 또는 그 초과의 이미지들은 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처된다. 부가적으로, 이 명령들은, 제 2의 하나 또는 그 초과의 이미지들로부터, 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 하나 또는 그 초과의 양상들에 대응한다는 것을 검증할 수 있다.
[0009] 추가의 실시예에서, 라인-맵핑을 위한 장치는, 실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 및 제 2의 3D(three-dimensional) 라인을 포함하는 3D 맵을 획득하기 위한 수단 및 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하기 위한 수단을 포함한다. 이 장치는 또한, 3D 맵, 제 1의 하나 또는 그 초과의 이미지들, 또는 이들의 결합 중 하나 또는 그 초과에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성하기 위한 수단을 포함할 수 있다. 이 장치는 또한, 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득하기 위한 수단을 포함할 수 있으며, 여기서 제 2의 하나 또는 그 초과의 이미지들은 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처된다. 부가적으로, 이 장치는 제 2의 하나 또는 그 초과의 이미지들로부터, 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 하나 또는 그 초과의 양상들에 대응한다는 것을 검증하기 위한 수단을 포함할 수 있다.
[0010] 본 개시의 위의 그리고 다른 실시예들, 목적들 및 피처들은 첨부 도면들과 함께 주어진 다양한 실시예들의 하기의 설명으로부터 명백해질 것이다.
[0011] 도 1a 및 도 1b는 일 실시예에서, 라인 맵핑이 가능한 모바일 플랫폼의 정면측 및 배면측을 각각 예시한다.
[0012] 도 2는 일 실시예에서, 라인 맵핑 프로세스를 예시하는 흐름도이다.
[0013] 도 3a는 일 실시예에서, 직교성 가정에 기초하여 가설 3D 라인들을 생성하는 프로세스(300A)를 예시하는 흐름도이다.
[0014] 도 3b는 일 실시예에서, 직교성 가정으로부터 생성된 가설 3D 라인들을 검증하는 프로세스(300B)를 예시하는 흐름도이다.
[0015] 도 4a는 일 실시예에서, 타겟 객체의 이미지를 예시한다.
[0016] 도 4b는 일 실시예에서, 타겟 객체에 대응하는 기존의 3D 모델의 제 1 및 제 2 이미-존재하는 3D 라인들을 예시한다.
[0017] 도 4c는 일 실시예에서, 제 1 및 제 2 3D 라인들에 기초하여 3D 공간에서 정의된 평면을 예시한다.
[0018] 도 4d는 일 실시예에서, 정의된 평면에 직교하는 몇 개의 가설 3D 라인들을 예시한다.
[0019] 도 4e는 일 실시예에서, 가설 3D 라인들의 검증된 부분들을 예시한다.
[0020] 도 4f는 일 실시예에서, 업데이트된 3D 맵의 3D 라인들을 예시한다.
[0021] 도 5a는 일 실시예에서, 동일-평면성 가정에 기초하여 가설 3D 라인들을 생성하는 프로세스를 예시하는 흐름도이다.
[0022] 도 5b는 일 실시예에서, 동일-평면성 가정에 기초하여 생성된 가설 3D 라인들을 검증하는 프로세스를 예시하는 흐름도이다.
[0023] 도 6a는 타겟 및 배경 객체들의 예시적인 이미지를 예시한다.
[0024] 도 6b는 일 실시예에서, 타겟 객체에 대응하는 기존의 3D 모델의 제 1 및 제 2 이미-존재하는 3D 라인들을 예시한다.
[0025] 도 6c는 일 실시예에서, 동일-평면성 가정에 기초하여 생성된 가설 3D 라인들을 예시한다.
[0026] 도 6d는 일 실시예에서, 제 1 및 제 2 3D 라인들에 기초하여 3D 공간에서 정의된 평면을 예시한다.
[0027] 도 6e는 일 실시예에서, 업데이트된 3D 맵의 이미-존재하는 그리고 검증된 3D 라인들을 예시한다.
[0028] 도 7은 본원에서 논의된 프로세스들을 수행할 수 있는 디바이스의 실시예의 기능 블록도이다.
[0029] 도 8은 본원에서 논의된 프로세스들을 수행할 수 있는 예시적인 이미지 프로세싱 시스템의 실시예의 기능 블록도이다.
[0030] 본 명세서 전반에 걸쳐 "일 실시예", "실시예", "일 예" 또는 "예"에 대한 참조는 실시예 또는 예와 관련하여 설명된 특정한 피처, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함된다는 것을 의미한다. 따라서, 본 명세서 전반에 걸친 다양한 위치들에서 "일 실시예에서" 또는 "실시예에서"라는 문구들의 출현들이 모두 반드시 동일한 실시예를 지칭하는 것은 아니다. 또한, 특정한 피처들, 구조들 또는 특성들은 하나 또는 그 초과의 실시예들에서 임의의 적합한 방식으로 결합될 수 있다. 본원에서 설명되는 어떠한 예 또는 실시예도 다른 예들 또는 실시예들 보다 바람직하거나 또는 유리한 것으로 해석되지 않는다.
[0031] 일 실시예에서, 본원에서 설명된 개선된 컴퓨터 비전 라인 맵핑 기술들은 환경(예를 들어, 실세계 환경)의 하나 또는 그 초과의 양상들(예를 들어, 본원에서는 또한 객체들 또는 엘리먼트들로서 지칭됨)의 검출 및/또는 추적을 가능하게 한다. 일 실시예에서, 입력 이미지들로부터의 작은 카메라 이동을 레버리지(leverage)함으로써, 3D 맵에 포함된 3D 라인들(예를 들어, 미리 결정된 또는 수신된 맵 내의 이미-존재하는 라인들)은 가설 3D 라인들(예를 들어, 미리 결정된 3D 맵 내의 3D 공간에서 식별되거나 맵핑되지 않는 새로운 라인들)을 결정하는 데 사용된다. 가설 3D 라인들은 입력 이미지들에 따라 정확도에 대해 검증될 수 있다. 예를 들어, 가설 3D 라인들은, 이들이 환경의 하나 또는 그 초과의 검출 또는 추적된 양상들(예를 들어, 타겟 객체 또는 환경의 다른 엘리먼트)에 대응하는 실제 라인들을 나타내는지를 결정하기 위해 분석될 수 있다. 본 개시의 이들 및 다른 피처들이 아래에서 보다 상세히 설명된다.
[0032] 도 1a 및 도 1b는 라인 맵핑이 가능한 모바일 플랫폼/장치의 정면측 및 배면측을 각각 예시한다. 모바일 플랫폼(100)은 디스플레이(102), 스피커들(104) 및 마이크로폰(106)을 포함하는 것으로서 예시된다. 모바일 플랫폼(100)은 환경의 이미지들을 캡처하기 위한 카메라(108)를 더 포함한다. 모바일 플랫폼(100)은, 모션 센서들에 대한 알려진/보정된 포지션 관계를 가질 수 있는 모바일 플랫폼(100) 또는 등가의 카메라(108)의 포즈(pose)를 결정하는 데 도움을 주는데 사용될 수 있는 모션 센서들(도시되지 않음), 예컨대, 가속도계, 자이로스코프 등을 더 포함할 수 있다. 부가적으로 또는 대안적으로, 모바일 플랫폼(100)의 포즈는 또한 비전 기반 추적 기술들을 사용하여 결정될 수 있다.
[0033] 본원에서 사용되는 바와 같이, 모바일 플랫폼은 셀룰러 또는 다른 무선 통신 디바이스, PCS(personal communication system) 디바이스, PND(personal navigation device), PIM(Personal Information Manager), PDA(Personal Digital Assistant), 태블릿, 웨어러블 디바이스, HMD(head mounted display) 또는 다른 적합한 모바일 디바이스와 같은 임의의 휴대용 전자 디바이스를 지칭한다. 모바일 플랫폼은 내비게이션 포지셔닝 신호들과 같은 무선 통신 및/또는 내비게이션 신호들을 수신할 수 있을 수 있다. "모바일 플랫폼"이라는 용어는 또한, 위성 신호 수신, 보조 데이터 수신, 및/또는 포지션-관련 프로세싱이 디바이스에서 발생하는지 또는 PND(personal navigation device)에서 발생하는지와 무관하게, 예컨대, 단거리 무선, 적외선, 와이어라인 연결, 또는 다른 연결에 의해 PND와 통신하는 디바이스들을 포함하는 것으로 의도된다. 또한 "모바일 플랫폼"은 AR(augmented reality) 애플리케이션들을 수행할 수 있는 무선 통신 디바이스들, 컴퓨터들, 랩톱들, 태블릿 컴퓨터들 등을 포함하는 모든 전자 디바이스들을 포함하는 것으로 의도된다.
[0034] AR 애플리케이션들에서, 실세계 객체는 이미징되고 이미지, 3D 가상 배우 또는 텍스트 정보와 같은 컴퓨터 생성 정보와 함께 스크린 상에 디스플레이된다. AR에서, 이미징된 실세계 객체들은 이미징된 실세계 객체들에 대한 카메라의 포지션 및 방위(포즈) 정보를 결정하기 위해 검출되고 추적될 수 있다. 이 정보는 실세계 객체와 함께 디스플레이되는 그래픽 객체를 올바르게 렌더링하는 데 사용된다. 검출 및 추적되는 실세계 객체들은 2차원(2D) 또는 3차원(3D) 객체일 수 있다.
[0035] 모바일 전화들 또는 다른 모바일 플랫폼들 상에서 AR을 가능하게 하는 데 있어 중요한 과제는 카메라 포즈를 정확하고 실시간으로 추정하고 추적하는 문제이다. AR 애플리케이션들에 대한 포즈 추적은 매우 까다로운 요건들을 갖는데: 그것은 완전한 6 자유도를 전달하고, 주어진 좌표계에 대해 절대 측정(absolute measurement)들을 제공하며, 매우 견고하고 실시간으로 실행되어야 한다. 관심 대상은, 먼저 카메라 뷰(camera view) 내의 하나 또는 그 초과의 객체들을 먼저 검출하고 후속적으로 추적하는 CV(computer vision) 기반 접근법들을 사용하여 포즈를 컴퓨팅하는 방법이다.
[0036] 동작에서, 증강 현실을 구현하는 모바일 플랫폼은, 모바일 플랫폼이 환경(예를 들어, 모바일 플랫폼 카메라 관점으로부터 가시적인 로컬 환경)의 양상(예를 들어, 랜드마크, 타겟 객체 또는 엘리먼트)에 대해 제 1 포지션에 있는 동안, 환경의 양상의 제 1 이미지를 캡처할 수 있다. 모바일 플랫폼은 모바일 플랫폼이 제 2 포지션에 있는 동안 환경의 양상을 포함하는 제 2 이미지를 캡처할 수 있다. 모바일 플랫폼의 이동으로 인해, 환경의 양상에 대한 카메라의 포즈가 변할 수 있다. 예를 들어, 모바일 플랫폼의 이동은 제 1 및 제 2 이미지들 사이의 타겟 객체의 이동으로 전환될 수 있다. 모바일 플랫폼의 이러한 이동은 디스플레이(102) 상에서 객체들의 시프트를 초래한다. 컴퓨터-생성 AR 그래픽들은 그래픽들의 크기 또는 시야각을 업데이트함으로써 조정될 수 있다. 다양한 예들에서, 객체 이동은 실제 객체 이동, 모바일 플랫폼 이동, 또는 이 둘의 결합에 의해 야기될 수 있다. 모바일 플랫폼은 객체 이동을 추적하여 렌더링되는 증강(augmentation)들이 적절한 위치, 크기 및 원근감(perspective)으로 유지되게 할 수 있다.
[0037] 에지 검출 및 대응성 발견은 이미지에서 타겟 객체의 존재를 검출하고 그리고/또는 AR 애플리케이션들에서 타겟 객체의 이동을 추적하는 데 사용될 수 있다. 그러나 위에서 언급된 바와 같이, 통상적인 라인 맵핑 시스템들은, 이들이 모바일 플랫폼 상에 부여하는 과한 프로세싱 부담으로 인해 불완전한 3D 라인들을 생성한다. 예를 들어, SLAM과 같은 종래의 3D 맵핑 시스템들은 종종, 단일 라인을 삼각측량하기 위해 적어도 3개의 키프레임들의 생성에 의존하며, 이는 엄청나게 느리거나 그리고/또는 시스템에 부담이 될 수 있다.
[0038] 타겟 객체의 이동을 검출 및/또는 추적하기 위해, 본 개시의 실시예들은 개선된(예를 들어, 보다 신속한) 컴퓨터 비전 라인 맵핑(예를 들어, 3D SLAM 또는 다른 시스템들과 같은 실시간 맵핑 및 추적)을 제공한다. 보다 구체적으로, 본원에서 논의된 실시예들은 기존의 3D 맵에 포함된 기존의 3D 라인들로부터 새로운 3D 라인들의 확장 또는 생성을 포함한다. 논의된 프로세스들은 작은 카메라 이동(즉, 키프레임 생성을 대기해야 하는 대신 소수의 카메라 이미지들)을 이용함으로써 새로운 3D 라인들을 생성할 수 있다. 일반적으로, 프로세스는 3D 맵에서 기존 라인들을 관찰함으로써 가설 3D 라인들을 생성하는 것을 포함한다. 가설 라인들은 인입 이미지들 중 하나 또는 그 초과를 사용하여 검증될 수 있다. 따라서, 본 개시의 실시예는 적어도 2개의 별개의 동작들, 즉 (1) 가설 3D 라인들의 생성; 및 (2) 타겟 객체에 대응하는 실제 라인들로서 이러한 가설 3D 라인들의 검증을 포함할 수 있다. 본 개시의 이들 및 다른 피처들이 아래에서 보다 상세히 설명된다.
[0039] 도 2는 라인 맵핑의 프로세스(200)를 예시하는 흐름도이다. 프로세스 블록(205)은 실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 및 제 2 3D 라인을 포함하는 3D 맵을 먼저 획득하는 것을 포함한다. 예를 들어, 환경 내의 양상들(예를 들어, 타겟 객체)에 대응하는 2개의 이미-존재하는 3D 라인들을 포함하는 3D 맵을 먼저 획득하는 것을 포함한다.
[0040] 프로세스 블록(210)은 그 후, 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하는 것을 포함한다. 예를 들어, 모바일 플랫폼(100)과 같은 디바이스는 카메라로부터 이미지들을 수신할 수 있고 이미지들은 전체 타겟 객체 또는 그의 섹션 또는 환경의 다른 양상을 포함할 수 있다.
[0041] 프로세스 블록(215)은 3D 맵, 제 1의 하나 또는 그 초과의 이미지들, 또는 이들의 결합 중 하나 또는 그 초과에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성하는 것을 포함한다. 예를 들어, 가설 3D 라인들을 생성하는 것은 3D 맵으로부터의 기존 3D 라인들에 대한 직교성 가정에 기초하거나 또는 동일-평면성 가정(co-planarity assumption)에 기초할 수 있다. 즉, 일 실시예에서, 가설 3D 라인들은 이들이 기존 3D 라인들에 의해 정의된 평면에 직교하는 것으로 가정되도록 생성될 수 있는 반면에, 다른 실시예에서, 가설 3D 라인들은 이들이 기존 3D 라인들에 의해 정의된 평면과 동일-평면 상에 있는 것으로 가정되도록 생성될 수 있다. 일부 실시예들에서, 동일-평면성 가정은 3D 맵 대신에 또는 그에 부가하여, 이미지로부터 가설 3D 라인들을 추출할 수 있다.
[0042] 프로세스 블록(220)은 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득하는 것을 포함하며, 여기서 제 2의 하나 또는 그 초과의 이미지들은 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처된다. 예를 들어, 이미지들은 블록(205)으로부터 제 1의 하나 또는 그 초과의 이미지들과 동일한 카메라 센서로 캡처될 수 있다. 카메라 센서의 관점은 제 1의 하나 또는 그 초과의 이미지들과 포지션이 상이한데, 예를 들어, 제 1의 하나 또는 그 초과의 이미지들보다 추후의 시점에 촬영될 수 있다. 일 실시예에서, 제 2의 하나 또는 그 초과의 이미지들은 제 1의 하나 또는 그 초과의 이미지들과 상이한 포즈를 가질 수 있다.
[0043] 프로세스 블록(225)은 제 2의 하나 또는 그 초과의 이미지들로부터, 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 하나 또는 그 초과의 양상들에 대응한다는 것을 검증하는 것을 포함한다. 예를 들어, 검증은 가설 3D 라인들이 실제로 양상 또는 타겟 객체에 대응하는지를 결정하는 것을 포함할 수 있다. 이미-존재하는 라인들은, 가설 라인들을 검증하도록 작은 카메라 이동들을 포함하는 (예를 들어, 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션들을 갖는) 하나 또는 그 초과의 캡처된 이미지들(예를 들어, 제 2의 하나 또는 그 초과의이미지들) 상에서 관찰될 수 있다. 가설 라인들이 실세계 환경의 양상에 대응하는 것으로서 검증되는 경우, 프로세스는 선택적으로, 3D 맵 데이터를 업데이트하여서, 업데이트된 3D 맵은 새롭게 생성되고 검증된 가설 3D 라인들의 표현을 포함하게 될 수 있다. 예를 들어, 업데이트된 3D 맵은 가설 결정 이전의 3D 맵의 일부인 이미-존재하는 3D 라인들은 물론, 가설 3D 라인들의 성공적인 검증에 대한 응답으로 결정된 3D 라인들을 포함할 수 있다.
[0044] 도 3a는 일 실시예에서, 직교성 가정에 기초하여 가설 3D 라인들을 생성하는 프로세스(300A)를 예시하는 흐름도이다. 프로세스(300A)는 프로세스(200)의 프로세스 블록(210)의 하나의 가능한 구현이다. 프로세스(300A)는 직교성 가정에 기초하여 가설 3D 라인들을 생성하는 가능한 프로세스를 나타낸다. 도 3a에 도시된 바와 같이, 프로세스 블록(305)은 3D 맵 데이터에 포함된 이미-존재하는 라인들에 기초하여 3D 공간에서 평면을 정의하는 것을 포함한다. 일 실시예에서, 가설 3D 라인들을 생성하는 프로세스는 타겟 객체에 대응하는 적어도 2개의 3D 라인들을 포함하는 3D 맵을 수신하는 것을 포함한다. 도 4a는 타겟 객체(404)의 이미지(402)를 예시한다. 도 4b는 타겟 객체(404)의 기존 3D 맵 데이터에 포함된 이미-존재하는 3D 라인들(406 및 408)을 예시한다. 2개의 3D 라인들(406 및 408)은 그 후, 3D 공간에서 평면(410)(도 4c)을 정의하는 데 사용된다.
[0045] 그 후, 가설 3D 라인들은 이들이 평면(410)에 직교하도록 생성될 수 있다(즉, 도 3a의 프로세스 블록(310)). 예를 들어, 도 4d는 평면(410)에 직교하는 가설 3D 라인들(412-418)을 예시한다. 예시된 예에서, 가설 3D 라인들(412 및 414)은 라인 피처(406)의 라인 세그먼트의 단부들에 생성된다. 유사하게, 가설 3D 라인들(416 및 418)은 3D 라인(408)의 라인 세그먼트의 단부에 생성된다. 가설 3D 라인들(417)은 라인(406) 및 라인(408)의 투영된 교차부에 생성될 수 있다. 일 실시예에서, 가설 3D 라인들은 2개의 기존 라인들(406 및 408)의 외적을 취함으로써 생성될 수 있다.
[0046] 도 3b는 일 실시예에서, 직교성 가정으로부터 생성된 가설 3D 라인들을 검증하는 프로세스(300B)를 예시하는 흐름도이다. 프로세스(300B)는 프로세스(200)의 프로세스 블록(220)의 하나의 가능한 구현이다. 프로세스(300B)는 직교성 가정에 기초하여 생성된 가설 3D 라인들을 검증하는 일 실시예를 나타낸다. 일 실시예에서, 타겟 객체의 하나 또는 그 초과의 수신된 이미지들은 가설 3D 라인들이 3D 맵에 부가될 실제 라인들이라는 것을 검증하는 데 사용될 수 있다. 검증은 가설 3D 라인들의 실제 에지-스코어(real edge-score)를 컴퓨팅하는 것이다. 일 실시예에서, Sobel 필터와 같은 에지 필터가, 이미지에 포함된 임의의 에지들을 강조하기 위해 인입 이미지들에 적용될 수 있다(즉, 프로세스 블록(315)). 다양한 포즈들로부터의 하나 또는 그 초과의 필터링된 이미지들은 그 후, 가설 3D 라인들이 실제 라인들이라는 것을 검증하는 데 사용될 수 있다. 예를 들어, 필터링된 이미지는 가설 3D 라인들의 매그니튜드(magnitude)를 획득하고 그리고/또는 비-에지 라인 피처들을 제거하는 데 사용될 수 있다(즉, 프로세스 블록(320)). 도 4e는 가설 3D 라인들의 검증된 부분들(412'-418')을 예시한다.
[0047] 위에서 논의된 바와 같이, 검증된 3D 라인들은 그 후, 3D 맵이 이제 이전 3D 라인들(406 및 408) 뿐만 아니라 새롭게 생성된 3D 라인들(412'-418')(도 4f)을 포함하도록 3D 맵 데이터에 부가될 수 있다. 업데이트된 3D 맵은 그 후 타겟 객체의 향후의 검출 및 추적을 위해 사용될 수 있다.
[0048] 도 5a는 동일-평면성 가정에 기초하여 가설 3D 라인들을 생성하는 프로세스(500A)를 예시하는 흐름도이다. 프로세스(500A)는 프로세스(200)로부터의 프로세스 블록(210)의 하나의 가능한 구현이다. 프로세스(500A)는 동일-평면성 가정에 기초하여 가설 3D 라인들을 생성하는 가능한 프로세스를 나타낸다. 프로세스 블록(505)은 하나 또는 그 초과의 수신된 이미지들로부터 하나 또는 그 초과의 라인들을 추출하는 것을 포함한다. 예를 들어, 라인들은 연관된 카메라 포즈를 갖는 수신된 이미지(예를 들어, 현재 또는 이전에 획득된 이미지)로부터 추출될 수 있다. 일부 실시예들에서, 이미지로부터 가설 3D 라인들을 추출하는 대신에, 또는 그에 추가로, 가설 3D 라인들은 기존의 3D 맵(예를 들어, 본원에서 설명된 바와 같은 재구성된 라인들을 포함하는 3D 맵)으로부터 결정될 수 있다.
[0049] 3D 가설 라인 결정의 일 실시예에서, 평면 "P"(예를 들어, 3D 맵 라인들로부터 획득됨)는 영역 "R"이 평면인지(예를 들어, 구성 가능하거나 특정된 임계치 내에 있는지)를 결정하기 위해 이미지 및 이미지의 카메라 포즈(예를 들어, 현재 또는 이전에 수신된 이미지, 여기서 카메라 이미지들은 연속적으로 수신되고 "이전 이미지"는 현재 이미지가 디바이스에 의해 디스플레이되거나 버퍼링되기 바로 전 이미지임) 상에 투영된다. 2D 라인들은 영역 "R" 내에서 검출되고 3D 라인 좌표들을 결정하기 위해 2D 라인들을 대응하는 포즈로 역-투영할 수 있다. 다음 이미지가 수신될 때, 가설 3D 라인들은 (예를 들어, 본원의 검증 프로세스에서 설명된 바와 같이) 검증될 수 있다.
[0050] 예를 들어, 도 6a는 배경 객체들(606 및 608) 뿐만 아니라 타겟 객체(604)를 포함하는 이미지(602)를 예시한다. 각각의 객체는 또한, 이미지(602)에 의해 표현되는 환경의 양상으로서 고려되고 이로서 본원에서 지칭될 수 있다. 도 6b는 타겟 객체/양상(604)의 기존의 또는 다른 방식으로 미리 결정된 3D 맵에 포함되는 2개의 기존의 또는 다른 방식으로 미리 결정된 3D 라인들(610 및 612)을 예시한다. 일 실시예에서, 이미지(602)는 이미지에 포함된 하나 또는 그 초과의 라인들을 검출하기 위해 프로세싱된다(즉, 프로세스 블록(505)). 예를 들어, 이미지(602)는 Sobel 에지 필터 또는 다른 필터로 프로세싱될 수 있다. 도 6c는 몇 개의 검출된 라인들(614-624)을 예시한다. 일 실시예에서, 검출된 라인은 가설 3D 라인으로 고려되기 위해 최소 임계치보다 큰 라인 세그먼트 길이를 가져야 한다. 검출된 라인들(614-626)은 그 후, 이들이 기존의 3D 라인들(610 및 612)과 동일 평면 상에 있는 것으로 가정함으로써 가설 3D 라인들로 고려될 수 있다(즉, 프로세스 블록(510)).
[0051] 도 5b는 일 실시예에서, 동일-평면성 가정에 기초하여 생성된 가설 3D 라인들을 검증하는 프로세스(500B)를 예시하는 흐름도이다. 프로세스(500B)는 프로세스(200)의 프로세스 블록(220)의 하나의 가능한 구현이다. 프로세스(500B)는 동일-평면성 가정에 기초하여 생성된 가설 3D 라인들을 검증하는 일 실시예를 나타낸다. 프로세스 블록(515)은 이미-존재하는 3D 라인들에 기초하여 3D 공간에서 평면을 정의하는 것을 포함한다. 예를 들어, 도 6d는 기존의 3D 라인들(610 및 612)에 기초하여 평면(630)을 정의하는 것을 예시한다.
[0052] 프로세스 블록(520)은 그 후 가설 3D 라인들이 실제로 정의된 평면과 동일 평면 상에 있는지를 결정하는 것을 포함한다. 다양한 포즈들로부터 타겟 객체의 하나 또는 그 초과의 이미지들은 가설 3D 라인들이 실제로 평면(630)에 로케이팅되는지를 검증하는 데 사용될 수 있다. 도 6d에 도시된 바와 같이, 가설 3D 라인들(622, 624)은 평면(630) 상에 로케이팅되지 않고, 이에 따라 무시될 수 있다. 그러나 3D 라인들(614-620, 626)은 실제로 평면(630)과 동일 평면 상에 있고, 이에 따라 실제 3D 라인들(614'-620', 626')로 검증된다. 도 6e는 검증된 3D 라인들(614'-620'및 626') 뿐만 아니라 이미-존재하는 3D 라인들(610 및 612)을 이제 포함하는 업데이트된 3D 맵의 3D 라인들을 예시한다.
[0053] 도 7은 본원에서 논의된 프로세스들을 수행할 수 있는 디바이스(700)의 기능 블록도이다. 디바이스(700)는 도 1a 및 도 1b의 모바일 플랫폼(100)의 하나의 가능한 구현이다. 디바이스(700)는 또한, 예컨대, 인터넷, WiFi, 또는 다른 네트워크를 통해 그리고 위성 신호 수신, 보조 데이터 수신, 및/또는 포지션-관련 프로세싱이 디바이스에서 발생하는지, 서버에서 발생하는지, 또는 네트워크와 연관된 다른 디바이스에서 발생하는지와 무관하게, 서버와 통신할 수 있는 무선 통신 디바이스들, 컴퓨터들, 랩톱들 등을 포함한 디바이스일 수 있다. 디바이스(700)는 또한 AR(augmented reality), VR(virtual reality) 및/또는 MR(mixed reality) 애플리케이션들이 가능한 모든 전자 디바이스들을 포함할 수 있다.
[0054] 디바이스(700)는 선택적으로 카메라(702)는 물론, 카메라(702)에 의해 캡처된 이미지들을 디스플레이할 수 있는 디스플레이(722)를 포함하는 선택적인 사용자 인터페이스(706)를 포함할 수 있다. 사용자 인터페이스(706)는 또한, 사용자가 디바이스(700)에 정보를 입력할 수 있게 하는 키패드(724), 또는 다른 입력 디바이스를 포함할 수 있다. 원하는 경우, 키패드(724)는 터치 센서를 갖는 디스플레이(722)에 가상 키패드를 통합시킴으로써 제거될 수 있다. 사용자 인터페이스(706)는 또한 마이크로폰(726) 및 스피커(728)를 포함할 수 있다.
[0055] 디바이스(700)는 카메라(702) 및 만약 있다면, 사용자 인터페이스(706)에 연결되고 이들과 통신하는 제어 유닛(704)을 또한 포함한다. 제어 유닛(704)은 카메라(702)로부터 그리고/또는 네트워크 어댑터(716)로부터 수신된 이미지들을 받아서 프로세싱한다. 제어 유닛(704)은 프로세싱 유닛(708) 및 연관된 메모리(714), 하드웨어(710), 소프트웨어(715) 및 펌웨어(712)에 의해 제공될 수 있다.
[0056] 제어 유닛(704)은, 원하는 경우 디스플레이(722)에 원하는 데이터를 렌더링하기 위해 그래픽 엔진(720)(이는 예를 들어, 게임 엔진일 수 있음)을 더 포함할 수 있다. 프로세싱 유닛(708) 및 그래픽 엔진(720)은 명확성을 위해 별개로 예시되지만, 이들은 프로세싱 유닛(708)에서 실행되는 소프트웨어(715)의 명령들에 기초하여 프로세싱 유닛(708)에서 구현되고 그리고/또는 단일 유닛일 수 있다. 프로세싱 유닛(708) 뿐만 아니라, 그래픽 엔진(720)은 하나 또는 그 초과의 마이크로프로세서들, 임베딩된 프로세서들, 제어기들, ASIC(application specific integrated circuit)들, DSP(digital signal processor)들 등을 포함할 수 있지만 반드시 그럴 필요는 없다. 프로세서 및 프로세싱 유닛이라는 용어들은 특정 하드웨어 보다는, 시스템에 의해 구현된 기능들을 설명한다. 또한, 본원에서 사용되는 바와 같이, "메모리"라는 용어는 디바이스(700)와 연관된 장기, 단기 또는 다른 메모리를 포함하는 임의의 타입의 컴퓨터 저장 매체(즉, 머신 판독 가능한 비-일시적인 저장 매체)를 지칭하며, 임의의 특정한 타입의 메모리 또는 메모리들의 개수, 또는 메모리가 저장되는 매체들의 타입으로 제한되지 않는다.
[0057] 본원에 설명된 프로세스들은 애플리케이션에 의존하여 다양한 수단에 의해 구현될 수 있다. 예를 들어, 이들 프로세스들은 하드웨어(710), 펌웨어(712), 소프트웨어(715), 또는 이들의 임의의 결합으로 구현될 수 있다. 하드웨어 구현의 경우, 프로세싱 유닛들은 하나 또는 그 초과의 ASIC(application specific integrated circuit)들, DSP(digital signal processor)들, DSPD(digital signal processing device)들, PLD(programmable logic device)들, FPGA(field programmable gate array)들, 프로세서들, 제어기들, 마이크로-제어기들, 마이크로프로세서들, 전자 디바이스들, 본원에서 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 또는 이들의 결합 내에 구현될 수 있다.
[0058] 펌웨어 및/또는 소프트웨어 구현의 경우, 프로세스들은 본원에서 설명된 기능들을 수행하는 모듈들(예를 들어, 절차들, 함수들 등)을 이용하여 구현될 수 있다. 본원에서 설명된 프로세스들을 구현하는 데 있어서 명령들을 유형으로(tangibly) 구현하는 임의의 비-일시적인 컴퓨터-판독 가능한 매체가 사용될 수 있다. 예를 들어, 프로그램 코드는 메모리(714)에 저장되고 프로세싱 유닛(708)에 의해 실행될 수 있다. 메모리는 프로세싱 유닛(708) 내에서 또는 그 외부에서 구현될 수 있다.
[0059] 펌웨어 및/또는 소프트웨어로 구현되면, 기능들은 컴퓨터-판독 가능한 매체 상에 하나 또는 그 초과의 명령들 또는 코드로서 저장될 수 있다. 예들은, 데이터 구조로 인코딩된 비-일시적인 컴퓨터-판독 가능한 매체들 및 컴퓨터 프로그램으로 인코딩된 컴퓨터-판독 가능한 매체들을 포함한다. 컴퓨터-판독 가능한 매체들은 물리적 컴퓨터 저장 매체들을 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수 있다. 제한이 아닌 예로서, 이러한 컴퓨터-판독 가능한 매체들은 RAM, ROM, 플래시 메모리, EEPROM, CD-ROM 또는 다른 광학 디스크 저장소, 자기 디스크 저장 또는 다른 자기 저장 디바이스들, 또는 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 저장하는 데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있고; 본원에 사용된 바와 같이, 디스크(disk) 및 디스크(disc)는 CD(compact disc), 레이저 디스크(disc), 광학 디스크(disc), DVD(digital versatile disc), 플로피 디스크(disk) 및 Blu-ray 디스크(disc)를 포함하며, 여기서, 디스크(disk)들은 일반적으로 데이터를 자기적으로 재생하지만, 디스크(disc)들은 레이저들을 이용하여 광학적으로 데이터를 재생한다. 위의 것들의 결합들이 또한 컴퓨터-판독 가능한 매체들의 범위 내에 포함되어야 한다.
[0060] 도 8은 이미지 프로세싱 시스템(800)의 기능 블록도이다. 도시된 바와 같이, 이미지 프로세싱 시스템(800)은 객체(814)를 포함하는 장면의 이미지를 캡처할 수 있는 카메라(현재 뷰에서 도시되지 않음)를 포함하는 예시적인 모바일 플랫폼(802)을 포함한다. 데이터베이스(812)는 타겟 객체(814)의 기존 3D 라인들을 포함하는 데이터를 포함할 수 있다.
[0061] 모바일 플랫폼(802)은 카메라에 의해 캡처된 이미지들을 도시하도록 디스플레이를 포함할 수 있다. 모바일 플랫폼(802)은 또한, 예를 들어, 위성 비히클(들)(806)을 포함하는 SPS(satellite positioning system), 또는 셀룰러 타워(들)(804) 또는 무선 통신 액세스 포인트들(805)을 포함한, 포지션 결정을 위한 임의의 다른 적합한 소스로부터의 신호들을 사용하여 모바일 플랫폼(802)의 위도 및 경도를 결정하는 것에 기초하여 내비게이션을 위해 사용될 수 있다. 모바일 플랫폼(802)은 또한 모바일 플랫폼(802)의 방위를 결정하는 데 사용될 수 있는 방위 센서들, 예컨대, 디지털 나침반, 가속도계들 또는 자이로스코프들을 포함할 수 있다.
[0062] SPS(satellite positioning system)는 통상적으로 엔티티들이 송신기들로부터 수신된 신호들에 적어도 부분적으로 기초하여 지상의 또는 그 위의 엔티티들의 위치들을 결정하는 것을 가능하게 하도록 포지셔닝되는 송신기들의 시스템을 포함한다. 이러한 송신기는 통상적으로 칩들의 세팅된 수의 반복 의사-랜덤 노이즈(PN) 코드로 표시된 신호를 송신하고 그라운드 기반 제어 스테이션, 사용자 장비 및/또는 우주선들 상에 로케이팅될 수 있다. 특정 예에서, 그러한 송신기들은 지구 궤도 SV(satellite vehicle)들(806) 상에 로케이팅될 수 있다. 예를 들어, GPS(Global Positioning System), Galileo, Glonass 또는 Compass와 같은 GNSS(Global Navigation Satellite System)의 성상도(constellation)에 있는 SV는 (예를 들어, GPS에서와 같이 각각의 위성마다 다른 PN 코드들을 사용하거나 Glonass에서와 같이 상이한 주파수들 상에서 동일한 코드를 사용함으로써) 그 성상도에 있는 다른 SV들에 의해 송신된 PN 코드와 구별 가능한 PN 코드로 표시된 신호를 송신할 수 있다.
[0063] 소정의 실시예들에 따라, 본원에서 제시된 기술들은 SPS에 대한 글로벌 시스템들(예를 들어, GNSS)로 제한되지 않는다. 예를 들어, 본원에서 제공되는 기술들은 일본의 경우 QZSS(Quasi-Zenith Satellite System), 인도의 경우 IRNSS(Indian Regional Navigational Satellite System), 중국의 경우 Beidou 등과 같은 다양한 지역 시스템들 및/또는 하나 또는 그 초과의 글로벌 및/또는 지역 내비게이션 위성 시스템들과 연관될 수 있거나 그렇지 않으면 그것들에 이용하도록 인에이블될 수 있는 다양한 증강 시스템들(예를 들어, SBAS(Satellite Based Augmentation System))에 적용되거나 그렇지 않으면 그것들에 이용하도록 인에이블될 수 있다. 제한이 아닌 예로서, SBAS는 예를 들어, WAAS(Wide Area Augmentation System), EGNOS(European Geostationary Navigation Overlay Service), MSAS(Multi-functional Satellite Augmentation System), GPS Aided Geo Augmented Navigation 또는 GAGAN(GPS Aided Geo Augmented Navigation 또는 GPS and Geo Augmented Navigation) 시스템 등과 같이 무결성 정보, 차등 보정들(differential corrections) 등을 제공하는 증강 시스템(들)을 포함할 수 있다. 따라서, 본원에서 사용된 바와 같이, SPS는 하나 또는 그 초과의 글로벌 및/또는 지역 내비게이션 위성 시스템들 및/또는 증강 시스템들의 임의의 결합을 포함할 수 있고, SPS 신호들은 SPS, SPS-유사 및/또는 이러한 하나 또는 그 초과의 SPS와 연관된 다른 신호들을 포함할 수 있다.
[0064] 모바일 플랫폼(802)은, 포지션 결정 기술들이 무선 광역 네트워크 WWAN(wireless wide area network), WLAN(wireless local area network), WPAN(wireless personal area network)과 같이, 셀룰러 타워들(804) 및 무선 통신 액세스 포인트들(805)을 포함하는 다양한 무선 통신 네트워크들과 함께 구현될 수 있기 때문에, 포지션 결정을 위해 SPS를 사용하는 것으로 제한되지 않는다. 또한, 모바일 플랫폼(802)은 셀룰러 타워들(804) 및 무선 통신 액세스 포인트들(805)을 통해 다양한 무선 통신 네트워크들을 사용하여, 또는 원하는 경우 위성 비히클들(806)을 사용하여 데이터베이스(812)로부터 기존 3D 라인들을 포함하는 데이터, 예컨대, 3D 맵 데이터를 획득하도록 하나 또는 그 초과의 서버들(808)에 액세스할 수 있다. "네트워크" 및 "시스템"이란 용어는 종종 상호교환 가능하게 사용된다. WWAN은, CDMA(Code Division Multiple Access) 네트워크, TDMA(Time Division Multiple Access) 네트워크, FDMA(Frequency Division Multiple Access) 네트워크, OFDMA(Orthogonal Frequency Division Multiple Access) 네트워크, SC-FDMA(Single-Carrier Frequency Division Multiple Access) 네트워크, LTE(Long Term Evolution) 등일 수 있다. CDMA 네트워크는, cdma2000, W-CDMA(Wideband-CDMA) 등과 같은 하나 또는 그 초과의 RAT(radio access technology)들을 구현할 수 있다. cdma2000은 IS-95, IS-2000 및 IS-856 표준들을 포함한다. TDMA 네트워크는 GSM(Global System for Mobile Communications), D-AMPS(Digital Advanced Mobile Phone System), 또는 일부 다른 RAT를 구현할 수 있다. GSM 및 W-CDMA는 3GPP("3rd Generation Partnership Project")란 명칭의 컨소시엄으로부터의 문헌들에 설명되어 있다. cdma2000은 3GPP2("3rd Generation Partnership Project 2")란 명칭의 컨소시엄으로부터의 문헌들에 설명되어 있다. 3GPP 및 3GPP2 문헌들은 공개적으로 이용 가능하다. WLAN은 IEEE 802.11x 네트워크일 수 있고, WPAN은 Bluetooth 네트워크, IEEE 802.15x, 또는 일부 다른 타입의 네트워크일 수 있다. 기술들은 또한, WWAN, WLAN, 및/또는 WPAN의 임의의 결합과 함께 구현될 수 있다.
[0065] 도 8에 도시된 바와 같이, 시스템(800)은 SLAM(또는 다른 추적 시스템)을 사용하여 추적될 객체(814)의 이미지를 캡처하는 모바일 플랫폼(802)을 포함한다. 예시된 바와 같이, 모바일 플랫폼(802)은 예를 들어, 셀룰러 타워(804) 또는 무선 통신 액세스 포인트(805)를 통해, 타겟 객체들과 관련된 정보를 저장하는 데이터베이스(812)에 연결되는 서버(808)에 커플링되는 네트워크(810), 예컨대, WWAN(wireless wide area network)에 액세스할 수 있고, 또한 타겟 객체에 대응하는 이미-존재하는 3D 라인들을 갖는 3D 맵 데이터를 포함할 수 있다. 도 8이 하나의 서버(808)를 도시하지만, 다수의 데이터베이스들(812) 뿐만 아니라 다수의 서버들이 사용될 수 있다는 것이 이해되어야 한다. 모바일 플랫폼(802)은 서버(808)로부터 데이터베이스(812)의 적어도 일부를 획득하고 모바일 플랫폼(802) 내부의 로컬 데이터베이스에 다운로드된 맵 데이터를 저장함으로써, 도 8에 도시된 바와 같은 객체 추적을 스스로 수행할 수 있다. 서버(808)로부터 획득된 데이터베이스의 일부는 모바일 플랫폼의 포지셔닝 시스템에 의해 결정된 바와 같은 모바일 플랫폼의 지리적 위치들에 기초할 수 있다. 또한, 서버(808)로부터 획득된 데이터베이스의 일부는 모바일 플랫폼(802) 상의 데이터베이스를 필요로 하는 특정 애플리케이션에 의존할 수 있다. 모바일 플랫폼의 지리적 위치에 기초하여 데이터베이스(812)의 작은 부분을 다운로드하고 모바일 플랫폼(802) 상에서 객체 검출을 수행함으로써, 네트워크 레이턴시 문제가 회피될 수 있고, OTA(over the air) 대역폭 사용이 클라이언트(즉, 모바일 플랫폼) 측 상의 메모리 요건들에 따라 감소된다. 그러나 원하는 경우, 객체 검출 및 추적은 서버(808)(또는 다른 서버)에 의해 수행될 수 있으며, 여기서 이미지 그 자체 또는 이미지로부터의 추출된 피처들은 모바일 플랫폼(802)에 의해 서버(808)에 제공된다.
[0066] 위에서 논의된 각각의 프로세스에서 프로세스 블록들 중 일부 또는 전부가 나타나는 순서는 제한적인 것으로 간주되어서는 안 된다. 오히려, 본 개시의 혜택을 받는 당업자는 프로세스 블록들 중 일부가 예시되지 않은 다양한 순서들로 실행될 수 있다는 것을 이해할 것이다.
[0067] 본원에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 로직 블록들, 모듈들, 엔진들, 회로들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘의 결합들로서 구현될 수 있다는 것을 당업자들은 추가로 인지할 것이다. 하드웨어 및 소프트웨어의 이러한 상호교환성을 명확히 예시하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 엔진들, 회로들, 및 단계들이 이들의 기능성의 견지에서 일반적으로 위에서 설명되었다. 이러한 기능성이 하드웨어 또는 소프트웨어로 구현되는지 여부는 전체 시스템에 부과되는 설계 제약들 및 특정 애플리케이션에 의존한다. 당업자들은, 설명된 기능성을 각각의 특정 애플리케이션 마다 다양한 방식들로 구현할 수 있지만, 이러한 구현 결정들이 본 발명의 범위를 벗어나게 하는 것으로 해석되어서는 안 된다.
[0068] 본원에서 개시되는 실시예들에 대한 다양한 수정들은 당업자에게 쉽게 자명해질 것이며, 본원에서 정의된 일반적인 원리들은 본 발명의 사상 또는 범위를 벗어남 없이 다른 실시예들에 적용될 수 있다. 따라서, 본 발명은 본원에서 도시된 실시예들로 제한되도록 의도되는 것이 아니라, 본원에서 개시된 신규한 피처들 및 원리들에 일치하는 최광의의 범위에 부합할 것이다.

Claims (28)

  1. 라인-맵핑(line mapping)의 컴퓨터-구현 방법으로서,
    실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 3D(three-dimensional) 라인 및 제 2 3D 라인을 포함하는 3D 맵을 획득하는 단계;
    상기 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하는 단계;
    상기 3D 맵, 및 상기 제 1의 하나 또는 그 초과의 이미지들의 결합에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성하는 단계;
    상기 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득하는 단계 ― 상기 제 2의 하나 또는 그 초과의 이미지들은 상기 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처됨 ―; 및
    상기 제 2의 하나 또는 그 초과의 이미지들로부터, 상기 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 상기 하나 또는 그 초과의 양상들에 대응한다는 것을 검증하는 단계를 포함하고,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하는 단계는, 상기 하나 또는 그 초과의 가설 3D 라인들의 매그니튜드(magnitude)를 획득하기 위해, 상기 제 2의 하나 또는 그 초과의 이미지들에 에지(edge) 필터를 적용하는 단계를 포함하는,
    라인-맵핑의 컴퓨터-구현 방법.
  2. 제1항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들의 성공적인 검증에 대한 응답으로, 상기 하나 또는 그 초과의 가설 3D 라인들을 포함하도록 상기 3D 맵을 업데이트하는 단계를 더 포함하는,
    라인-맵핑의 컴퓨터-구현 방법.
  3. 제1항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들을 생성하는 단계는,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면(plane)을 정의하는 단계;
    상기 평면에 직교하는 하나 또는 그 초과의 3D 라인들을 식별하는 단계; 및
    상기 하나 또는 그 초과의 가설 3D 라인들로서 상기 평면에 직교하는 3D 라인들 중 하나 또는 그 초과를 선택하는 단계를 포함하는,
    라인-맵핑의 컴퓨터-구현 방법.
  4. 제1항에 있어서,
    상기 에지 필터를 적용하는 단계는 Sobel 에지 필터를 적용하는 단계를 포함하는,
    라인-맵핑의 컴퓨터-구현 방법.
  5. 제1항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들을 생성하는 단계는 상기 제 1의 하나 또는 그 초과의 이미지들로부터 하나 또는 그 초과의 라인들을 추출하는 단계를 포함하고, 상기 가설 3D 라인들은 추출된 하나 또는 그 초과의 라인들에 기초하는,
    라인-맵핑의 컴퓨터-구현 방법.
  6. 제5항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하는 단계는,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면을 정의하는 단계; 및
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 평면과 동일 평면 상에 있는지 여부를 결정하는 단계를 포함하는,
    라인-맵핑의 컴퓨터-구현 방법.
  7. 라인 맵핑 프로그램 명령들이 저장되어 있는 머신 판독 가능한 비-일시적인 저장 매체로서, 상기 라인 맵핑 프로그램 명령들은,
    실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 3D(three-dimensional) 라인 및 제 2 3D 라인을 포함하는 3D 맵을 획득하고;
    상기 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하고;
    상기 3D 맵, 및 상기 제 1의 하나 또는 그 초과의 이미지들의 결합에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성하고;
    상기 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득하고 ― 상기 제 2의 하나 또는 그 초과의 이미지들은 상기 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처됨 ―; 그리고
    상기 제 2의 하나 또는 그 초과의 이미지들로부터, 상기 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 상기 하나 또는 그 초과의 양상들에 대응한다는 것을 검증하도록, 프로세서에 의해 실행 가능하고,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하도록 하는 명령들은, 상기 하나 또는 그 초과의 가설 3D 라인들의 매그니튜드를 획득하기 위해, 상기 제 2의 하나 또는 그 초과의 이미지들에 에지 필터를 적용하도록 하는 명령들을 포함하는,
    머신 판독 가능한 비-일시적인 저장 매체.
  8. 제7항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들의 성공적인 검증에 대한 응답으로, 상기 하나 또는 그 초과의 가설 3D 라인들을 포함하도록 상기 3D 맵을 업데이트하도록 하는 명령들을 더 포함하는,
    머신 판독 가능한 비-일시적인 저장 매체.
  9. 제7항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들을 생성하도록 하는 명령들은,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면을 정의하고;
    상기 평면에 직교하는 하나 또는 그 초과의 3D 라인들을 식별하고; 그리고
    상기 하나 또는 그 초과의 가설 3D 라인들로서 상기 평면에 직교하는 3D 라인들 중 하나 또는 그 초과를 선택하도록 하는 명령들을 포함하는,
    머신 판독 가능한 비-일시적인 저장 매체.
  10. 제7항에 있어서,
    상기 에지 필터를 적용하도록 하는 명령들은 Sobel 에지 필터를 적용하도록 하는 명령들을 포함하는,
    머신 판독 가능한 비-일시적인 저장 매체.
  11. 제7항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들을 생성하도록 하는 명령들은, 상기 제 1의 하나 또는 그 초과의 이미지들로부터 하나 또는 그 초과의 라인들을 추출하도록 하는 명령들을 포함하고, 그리고 상기 가설 3D 라인들은 추출된 하나 또는 그 초과의 라인들에 기초하는,
    머신 판독 가능한 비-일시적인 저장 매체.
  12. 제11항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하도록 하는 명령들은,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면을 정의하고; 그리고
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 평면과 동일 평면 상에 있는지 여부를 결정하도록 하는 명령들을 포함하는,
    머신 판독 가능한 비-일시적인 저장 매체.
  13. 라인 맵핑을 위한 디바이스로서,
    메모리;
    상기 메모리에 커플링되는 프로세서를 포함하며, 상기 프로세서는,
    실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 3D(three-dimensional) 라인 및 제 2 3D 라인을 포함하는 3D 맵을 획득하고;
    상기 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하고;
    상기 3D 맵, 및 상기 제 1의 하나 또는 그 초과의 이미지들의 결합에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성하고;
    상기 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득하고 ― 상기 제 2의 하나 또는 그 초과의 이미지들은 상기 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처됨 ―; 그리고
    상기 제 2의 하나 또는 그 초과의 이미지들로부터, 상기 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 상기 하나 또는 그 초과의 양상들에 대응한다는 것을 검증하도록 구성되고,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하도록 구성되는 상기 프로세서는, 상기 하나 또는 그 초과의 가설 3D 라인들의 매그니튜드를 획득하기 위해 상기 제 2의 하나 또는 그 초과의 이미지들에 에지 필터를 적용하도록 추가로 구성되는,
    라인 맵핑을 위한 디바이스.
  14. 제13항에 있어서,
    상기 프로세서는,
    상기 하나 또는 그 초과의 가설 3D 라인들의 성공적인 검증에 대한 응답으로, 상기 하나 또는 그 초과의 가설 3D 라인들을 포함하도록 상기 3D 맵을 업데이트하게 추가로 구성되는,
    라인 맵핑을 위한 디바이스.
  15. 제13항에 있어서,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인을 프로세싱하도록 구성되는 상기 프로세서는,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면을 정의하고;
    상기 평면에 직교하는 하나 또는 그 초과의 3D 라인들을 식별하고; 그리고
    상기 하나 또는 그 초과의 가설 3D 라인들로서 상기 평면에 직교하는 3D 라인들 중 하나 또는 그 초과를 선택하도록 추가로 구성되는,
    라인 맵핑을 위한 디바이스.
  16. 제13항에 있어서,
    상기 에지 필터를 적용하도록 구성되는 상기 프로세서는,
    Sobel 에지 필터를 적용하도록 추가로 구성되는,
    라인 맵핑을 위한 디바이스.
  17. 제13항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들을 결정하도록 구성되는 상기 프로세서는,
    상기 제 1의 하나 또는 그 초과의 이미지들로부터 하나 또는 그 초과의 라인들을 추출하도록 추가로 구성되고, 그리고 상기 가설 3D 라인들은 추출된 하나 또는 그 초과의 라인들에 기초하는,
    라인 맵핑을 위한 디바이스.
  18. 제17항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하도록 구성되는 상기 프로세서는,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면을 정의하고; 그리고
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 평면과 동일 평면 상에 있는지 여부를 결정하도록 추가로 구성되는,
    라인 맵핑을 위한 디바이스.
  19. 라인 맵핑을 수행하기 위한 장치로서,
    실세계 환경의 하나 또는 그 초과의 양상들에 대응하는 적어도 제 1 3D(three-dimensional) 라인 및 제 2 3D 라인을 포함하는 3D 맵을 획득하기 위한 수단;
    상기 하나 또는 그 초과의 양상들의 적어도 일부를 포함하는 제 1의 하나 또는 그 초과의 이미지들을 획득하기 위한 수단;
    상기 3D 맵, 및 상기 제 1의 하나 또는 그 초과의 이미지들의 결합에 따라 하나 또는 그 초과의 가설 3D 라인들을 생성하기 위한 수단;
    상기 하나 또는 그 초과의 양상들 중 적어도 일부를 포함하는 제 2의 하나 또는 그 초과의 이미지들을 획득하기 위한 수단 ― 상기 제 2의 하나 또는 그 초과의 이미지들은 상기 제 1의 하나 또는 그 초과의 이미지들과 상이한 포지션으로부터 캡처됨 ―; 및
    상기 제 2의 하나 또는 그 초과의 이미지들로부터, 상기 하나 또는 그 초과의 가설 3D 라인들 중 적어도 하나가 상기 하나 또는 그 초과의 양상들에 대응한다는 것을 검증하기 위한 수단을 포함하고,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하기 위한 수단은, 상기 하나 또는 그 초과의 가설 3D 라인들의 매그니튜드를 획득하기 위해, 상기 제 2의 하나 또는 그 초과의 이미지들에 에지 필터를 적용하기 위한 수단을 포함하는,
    라인 맵핑을 수행하기 위한 장치.
  20. 제19항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들의 성공적인 검증에 대한 응답으로, 상기 하나 또는 그 초과의 가설 3D 라인들을 포함하도록 상기 3D 맵을 업데이트하기 위한 수단을 더 포함하는,
    라인 맵핑을 수행하기 위한 장치.
  21. 제19항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들을 생성하기 위한 수단은,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면을 정의하기 위한 수단;
    상기 평면에 직교하는 하나 또는 그 초과의 3D 라인들을 식별하기 위한 수단; 및
    상기 하나 또는 그 초과의 가설 3D 라인들로서 상기 평면에 직교하는 3D 라인들 중 하나 또는 그 초과를 선택하기 위한 수단을 포함하는,
    라인 맵핑을 수행하기 위한 장치.
  22. 제19항에 있어서,
    상기 에지 필터를 적용하기 위한 수단은 Sobel 에지 필터를 적용하기 위한 수단을 포함하는,
    라인 맵핑을 수행하기 위한 장치.
  23. 제19항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들을 생성하기 위한 수단은, 상기 제 1의 하나 또는 그 초과의 이미지들로부터 하나 또는 그 초과의 라인들을 추출하기 위한 수단을 포함하고, 그리고 상기 가설 3D 라인들은 추출된 하나 또는 그 초과의 라인들에 기초하는,
    라인 맵핑을 수행하기 위한 장치.
  24. 제23항에 있어서,
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 양상에 대응한다는 것을 검증하는 것은,
    상기 제 1 3D 라인 및 상기 제 2 3D 라인에 기초하여 3D 공간에서 평면을 정의하는 것; 및
    상기 하나 또는 그 초과의 가설 3D 라인들이 상기 평면과 동일 평면 상에 있는지 여부를 결정하는 것을 포함하는,
    라인 맵핑을 수행하기 위한 장치.
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
KR1020177037785A 2015-07-02 2016-06-23 3d 맵들에 대한 가설 라인 맵핑 및 검증 KR101863647B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/791,205 US9870514B2 (en) 2015-07-02 2015-07-02 Hypotheses line mapping and verification for 3D maps
US14/791,205 2015-07-02
PCT/US2016/039088 WO2017003825A1 (en) 2015-07-02 2016-06-23 Hypotheses line mapping and verification for 3d maps

Publications (2)

Publication Number Publication Date
KR20180026404A KR20180026404A (ko) 2018-03-12
KR101863647B1 true KR101863647B1 (ko) 2018-06-04

Family

ID=56345267

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177037785A KR101863647B1 (ko) 2015-07-02 2016-06-23 3d 맵들에 대한 가설 라인 맵핑 및 검증

Country Status (7)

Country Link
US (1) US9870514B2 (ko)
EP (1) EP3317854A1 (ko)
JP (1) JP6393000B2 (ko)
KR (1) KR101863647B1 (ko)
CN (1) CN107683496B (ko)
BR (1) BR112018000064A2 (ko)
WO (1) WO2017003825A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10768682B2 (en) * 2017-01-20 2020-09-08 Flir Systems, Inc. Detection-based wakeup of detection devices
US11625806B2 (en) * 2019-01-23 2023-04-11 Qualcomm Incorporated Methods and apparatus for standardized APIs for split rendering

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000090290A (ja) 1998-07-13 2000-03-31 Sony Corp 画像処理装置および画像処理方法、並びに媒体
US7831089B2 (en) * 2006-08-24 2010-11-09 Microsoft Corporation Modeling and texturing digital surface models in a mapping application
US8442304B2 (en) 2008-12-29 2013-05-14 Cognex Corporation System and method for three-dimensional alignment of objects using machine vision
US8473187B2 (en) * 2009-06-01 2013-06-25 Robert Bosch Gmbh Method and apparatus for combining three-dimensional position and two-dimensional intensity mapping for localization
US8933925B2 (en) 2009-06-15 2015-01-13 Microsoft Corporation Piecewise planar reconstruction of three-dimensional scenes
US8610758B2 (en) * 2009-12-15 2013-12-17 Himax Technologies Limited Depth map generation for a video conversion system
JP5223062B2 (ja) * 2010-03-11 2013-06-26 株式会社ジオ技術研究所 3次元地図描画システム
JP5924862B2 (ja) 2010-12-15 2016-05-25 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
WO2013002280A1 (ja) 2011-06-29 2013-01-03 Necシステムテクノロジー株式会社 三次元地物データ生成装置、三次元地物データ生成方法、および、三次元地物データ生成プログラムを記録した記録媒体
EP2845025A4 (en) * 2012-05-01 2016-03-09 Intel Corp SIMULTANEOUS MAPPING AND LOCATION USING SPATIAL AND TEMPORAL COHERENCE FOR INDOOR LOCALIZATION
US20140037189A1 (en) * 2012-08-02 2014-02-06 Qualcomm Incorporated Fast 3-D point cloud generation on mobile devices
JP2014170368A (ja) * 2013-03-04 2014-09-18 Univ Of Tokyo 画像処理装置、方法及びプログラム並びに移動体
US9811731B2 (en) * 2013-10-04 2017-11-07 Qualcomm Incorporated Dynamic extension of map data for object detection and tracking

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANTONIS KATARTZIS ET AL : "A Stochastic Framework for the Identification of Building Rooftops Using a Single Remote Sensing Image", IEEE TRANSACTIONS ON GEOSCIENCE AND REMOTE SENSING, IEEE
C Baillard ET AL : "A plane-sweep strategy for the 3D reconstruction of buildings from multiple images", 1 January 2000, pages 1-16, XP055017531
VANDEKERCHHOVE J ET AL : "Semi-automatic modelling of urban buildings from high resolution aerial imagery", COMPUTER GRAPHICS INTERNATIONAL, 1998, PROCEEDINGS HANNOVER, GERMANY 22-26 JUNE 1998

Also Published As

Publication number Publication date
BR112018000064A2 (pt) 2018-09-11
US9870514B2 (en) 2018-01-16
EP3317854A1 (en) 2018-05-09
CN107683496B (zh) 2019-09-17
CN107683496A (zh) 2018-02-09
KR20180026404A (ko) 2018-03-12
US20170004377A1 (en) 2017-01-05
JP6393000B2 (ja) 2018-09-19
JP2018521412A (ja) 2018-08-02
WO2017003825A1 (en) 2017-01-05

Similar Documents

Publication Publication Date Title
US11393173B2 (en) Mobile augmented reality system
US9996936B2 (en) Predictor-corrector based pose detection
US9524434B2 (en) Object tracking based on dynamically built environment map data
EP2820618B1 (en) Scene structure-based self-pose estimation
US9576183B2 (en) Fast initialization for monocular visual SLAM
EP3053100B1 (en) Dynamic extension of map data for object detection and tracking
US20150371440A1 (en) Zero-baseline 3d map initialization
WO2014011346A1 (en) Sensor-aided wide-area localization on mobile devices
JP2017508197A (ja) オブジェクト認識システムにおける動的な特徴データベース管理のためのインクリメンタル学習
JP2018513493A (ja) ポーズ決定のための非マッチング特徴に基づく視覚動き推定
WO2015048046A1 (en) Multiview pruning of feature database for object recognition system
US20150262380A1 (en) Adaptive resolution in optical flow computations for an image processing system
KR101863647B1 (ko) 3d 맵들에 대한 가설 라인 맵핑 및 검증

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant