KR20140121861A - 반대쌍 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법 - Google Patents

반대쌍 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법 Download PDF

Info

Publication number
KR20140121861A
KR20140121861A KR1020147023714A KR20147023714A KR20140121861A KR 20140121861 A KR20140121861 A KR 20140121861A KR 1020147023714 A KR1020147023714 A KR 1020147023714A KR 20147023714 A KR20147023714 A KR 20147023714A KR 20140121861 A KR20140121861 A KR 20140121861A
Authority
KR
South Korea
Prior art keywords
images
image
pair
camera
determining
Prior art date
Application number
KR1020147023714A
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 퀄컴 인코포레이티드
Publication of KR20140121861A publication Critical patent/KR20140121861A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • 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
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/16Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
    • 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
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Electromagnetism (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Navigation (AREA)
  • Telephone Function (AREA)
  • Telephonic Communication Services (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

반대쌍 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법이 개시된다. 일 실시형태에서, 방법은, 디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 단계, 전방 카메라 및 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 단계 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 디바이스가 제 2 배향으로 회전되는 것을 모니터링하는 단계, 전방 카메라 및 후방 카메라를 이용하여 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 단계 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 및 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하는 단계를 포함한다.

Description

반대쌍 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법{SYSTEM AND METHOD FOR DETERMINING LOCATION OF A DEVICE USING OPPOSING CAMERAS}
관련출원
본 출원은, 그 전체가 참조로서 본원에 포함되는, 2012 년 1 월 27 일에 출원된 미국 특허 출원 제 13/360,372 호에 대한 우선권을 주장하는 PCT 출원이다.
기술분야
본 개시물은 디바이스 포지셔닝의 분야에 관한 것이다. 특히, 본 개시물은 반대쌍 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법에 관한 것이다.
랜드마크들에 대한 비젼 기반 매칭이 비주얼 검색의 분야에서 널리 연구되고 적용되어 왔다. 예를 들어, 실내의 장소에 있어서, 실내의 장소 주위의 이미지들이 수집될 수 있다. 각각의 이미지에 대해, 스케일-불변 특징 변환 (scale-invariant feature transform; SIFT) 특징들이 계산되어 데이터베이스 (DB) 에 저장될 수 있다. DB 에서의 각각의 이미지는 연관된 위치 정보를 갖는다. 이러한 정보는 장소 지도 상의 위치 또는 구역에 맵핑될 수 있다. 장소에서 캡쳐된 질의 이미지는 특징 매칭에 기초하여 DB 에서의 이미지들에 다시 비교될 수 있다. 질의 이미지의 위치가 따라서 결정되고 맵핑될 수 있다. 그러나, 종래의 방법들은 듀얼 카메라들을 갖춘 보다 새로운 디바이스들의 이점을 취하지 못했다.
따라서, 반대편의 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법에 대한 필요가 있다.
본 개시물은 반대편의 카메라들을 이용하여 디바이스의 위치를 결정하는 것에 관한 것이다. 본 개시물의 실시형태들에 따르면, 디바이스의 위치를 결정하는 방법은, 디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 단계, 전방 카메라 및 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 단계 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 디바이스가 제 2 배향으로 회전되는 것을 모니터링하는 단계, 전방 카메라 및 후방 카메라를 이용하여 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 단계 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 및 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하는 단계를 포함한다.
디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 방법은 제스처로 디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 단계를 포함하며, 여기서 제스처는 디바이스의 하나 이상의 사용자-정의 이동들을 적용하는 것을 포함한다. 이미지들의 제 1 쌍을 캡쳐하는 방법은 동시에 이미지들의 제 1 쌍을 캡쳐하는 단계, 또는 미리 결정된 시간의 기간 내에 이미지들의 제 1 쌍을 캡쳐하는 단계를 포함한다. 방법은 가속도계, 자이로스코프, 및 자력계 중 적어도 하나를 이용하여 제 1 배향 및 제 2 배향의 정보를 결정하는 더 단계를 포함한다.
디바이스의 위치를 결정하는 방법은, 제 1 전면 이미지 및 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정하는 단계, 제 2 전면 이미지 및 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정하는 단계, 제 1 선과 제 2 선의 근사 교차 지점을 결정하는 단계, 및 근사 교차 지점을 디바이스의 추정된 위치로서 식별하는 단계를 포함한다. 제 1 전면 이미지와 제 1 후면 이미지를 연결하는 것과 연관된 제 1 선 위치들을 결정하는 방법은 제 1 전면 이미지를 데이터베이스에서의 이미지들과 비교하는 단계 (여기서 데이터베이스는 장소의 다수의 위치들의 이미지 특징 (image feature) 들을 저장한다), 제 1 전면 이미지의 근사 위치를 식별하는 단계, 제 1 후면 이미지를 데이터베이스에서의 이미지들과 비교하는 단계, 제 1 후면 이미지의 근사 위치를 식별하는 단계, 및 제 1 전면 이미지의 근사 위치 및 제 1 후면 이미지의 근사 위치를 이용하여 제 1 선을 결정하는 단계를 포함한다. 제 1 전면 이미지를 데이터베이스에서의 이미지들과 비교하는 방법은, 디바이스의 제 1 배향에 기초하여 데이터베이스로부터 이미지들의 제 1 세트를 선택하는 단계 (여기서 이미지들의 제 1 세트는 전방 카메라의 뷰 (view) 에서의 영역을 커버한다); 및 제 1 전면 이미지를 이미지들의 제 1 세트에 대해 비교하는 단계를 포함한다. 제 1 후면 이미지를 데이터베이스에서의 이미지들과 비교하는 방법은 제 1 전면 이미지의 근사 위치에 기초하여 데이터베이스로부터 이미지들의 제 2 세트를 선택하는 단계 (여기서 이미지들의 제 2 세트는 제 1 전면 이미지의 근사 위치의 반대편의 영역을 커버한다); 및 제 1 후면 이미지를 이미지들의 제 2 세트에 대해 비교하는 단계를 포함한다.
제 2 전면 이미지 및 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정하는 방법은 제 2 전면 이미지를 데이터베이스에서의 이미지들과 비교하는 단계 (여기서 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장한다), 제 2 전면 이미지의 근사 위치를 식별하는 단계, 제 2 후면 이미지를 데이터베이스에서의 이미지들과 비교하는 단계, 제 2 후면 이미지의 근사 위치를 식별하는 단계, 및 제 2 전면 이미지의 근사 위치 및 제 2 후면 이미지의 근사 위치를 이용하여 제 2 선을 결정하는 단계를 포함한다. 방법은 포지셔닝 엔진에 추정된 위치를 전송하는 단계, 및 포지셔닝 엔진에서 추정된 위치를 이용하여 디바이스의 최종 위치를 결정하는 단계를 더 포함한다.
다른 실시형태에서, 디바이스의 위치를 결정하기 위한 컴퓨터 프로그램 제품은 하나 이상의 컴퓨터 시스템들에 의한 실행을 위한 컴퓨터 프로그램들을 저장하는 비일시적 매체를 갖는다. 컴퓨터 프로그램 제품은, 디바이스의 전방 카메라 및 후방 카메라를 활성화시키기 위한 코드, 전방 카메라 및 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하기 위한 코드 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 디바이스가 제 2 배향으로 이동되는 것을 모니터링하기 위한 코드, 전방 카메라 및 후방 카메라를 이용하여 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하기 위한 코드 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 및 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하기 위한 코드를 더 포함한다.
또 다른 실시형태에서, 디바이스는 하나 이상의 프로세서들, 하나 이상의 프로세서들과 함께 작동하는 듀얼-카메라 보조 모듈, 및 디바이스의 위치를 저장하도록 구성된 메모리를 포함한다. 듀얼-카메라 보조 모듈은, 디바이스의 전방 카메라 및 후방 카메라를 활성화시키기 위한 로직, 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하기 위한 로직 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 디바이스가 제 2 배향으로 이동되는 것을 모니터링하기 위한 로직, 전방 카메라 및 후방 카메라를 이용하여 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하기 위한 로직 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하기 위한 로직을 포함한다.
또 다른 실시형태에서, 디바이스의 위치를 결정하기 위한 시스템은 하나 이상의 프로세서들, 하나 이상의 프로세서들과 함께 작동하도록 구성된 듀얼-카메라 보조 모듈, 및 디바이스의 위치를 저장하도록 구성된 메모리를 포함한다. 듀얼-카메라 보조 모듈은, 디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 수단, 전방 카메라 및 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 수단 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 디바이스가 제 2 배향으로 이동되는 것을 모니터링하는 수단, 전방 카메라 및 후방 카메라를 이용하여 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 수단 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 및 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하는 수단을 포함한다.
또 다른 실시형태에서, 디바이스의 위치를 결정하는 방법은, 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하는 단계 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하는 단계 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 및 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하는 단계를 포함한다.
또 다른 실시형태에서, 디바이스의 위치를 결정하기 위한 컴퓨터 프로그램 제품은 하나 이상의 컴퓨터 시스템들에 의한 실행을 위한 컴퓨터 프로그램들을 저장하는 비일시적 매체를 포함한다. 컴퓨터 프로그램 제품은, 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하기 위한 코드 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하기 위한 코드 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 및 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하기 위한 코드를 더 포함한다.
또 다른 실시형태에서, 서버는 하나 이상의 프로세서들, 하나 이상의 프로세서들과 함께 작동하도록 구성된 듀얼-카메라 포지셔닝 모듈, 및 디바이스의 위치를 저장하도록 구성된 메모리를 포함한다. 듀얼-카메라 포지셔닝 모듈은, 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하기 위한 로직 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하기 위한 로직 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 및 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하기 위한 로직을 포함한다.
또 다른 실시형태에서, 디바이스의 위치를 결정하기 위한 시스템은 하나 이상의 프로세서들, 하나 이상의 프로세서들과 함께 작동하도록 구성된 듀얼-카메라 포지셔닝 모듈, 디바이스의 위치를 저장하도록 구성된 메모리를 포함한다. 듀얼-카메라 포지셔닝 모듈은, 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하는 수단 (여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다), 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하는 수단 (여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다), 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하는 수단을 포함한다.
본 개시물의 앞서 언급된 특징들 및 이점들, 뿐만 아니라 그것의 추가적인 특징들 및 이점들은 다음의 도면들과 연계하여 본 개시물의 실시형태들의 상세한 설명들을 읽은 후에 보다 명확하게 이해가능하게 될 것이다.
도 1 은 본 개시물의 일부 양상들에 따른 디바이스의 배향을 정의하기 위한 예시적인 방법을 도시한다.
도 2a 내지 도 2d 는 본 개시물의 일부 양상들에 따른 반대편의 카메라들을 이용하여 디바이스의 포지션을 결정하는 방법들을 도시한다.
도 3 은 본 개시물의 일부 양상들에 따른 반대편의 카메라들을 이용하는 예시적인 애플리케이션을 도시한다.
도 4 는 본 개시물의 일부 양상들에 따른 도 3 에서 캡쳐된 이미지들의 예시적인 디스플레이들을 도시한다.
도 5a 는 본 개시물의 일부 양상들에 따른 디바이스의 포지션을 결정하기 위한 장치의 블록도를 도시한다.
도 5b 는 본 개시물의 일부 양상들에 따른 디바이스의 포지션을 결정하기 위한 서버의 블록도를 도시한다.
도 6a 내지 도 6c 는 본 개시물의 일부 양상들에 따른 도 5 의 듀얼-카메라 보조 모듈에 의해 구현되는 예시적인 플로 차트들을 도시한다.
도 7a 및 도 7b 는 본 개시물의 실시형태들에 따른 비주얼 검색 기능성의 예시적인 구현들을 도시한다.
반대편의 카메라들을 이용하여 디바이스의 위치를 결정하는 실시형태들이 개시된다. 다음의 설명들은 당업자가 본 개시물을 제작하고 이용하는 것을 가능하게 하기 위해 제시된다. 특정 실시형태들 및 애플리케이션들의 설명들은 단지 예들로서 제공된다. 본원에 설명된 예들의 다양한 수정들 및 조합들은 당업자들에게 자명할 것이고, 본원에 정의된 일반적인 원리들은 본 개시물의 사상 및 범주로부터 벗어나지 않으면서 다른 예들 및 애플리케이션들에 적용될 수도 있다. 따라서, 본 개시물은 본원에 설명되고 보여진 예들에 제한되고자 하는 것이 아니라, 본원에 개시된 원리들 및 특징들과 일관되는 가장 넓은 범주에 일치되고자 한다.
(전방 카메라 및 후방 카메라라고도 지칭되는) 전면 카메라 및 후면 카메라를 갖춘 새로운 디바이스들로, 장소에서의 반대편의 광경들로부터의 2 개의 이미지들이 캡쳐될 수 있다. 또한, 이러한 이미지들의 각각의 배향 (방위각 및 고도) 은 디바이스 상의 하나 이상의 센서들로부터 획득될 수 있다. 본 개시물은 캡쳐되고 배향 데이터가 태그로 붙여진 듀얼-뷰 이미지들의 2 개 이상의 세트들에 기초하여 디바이스의 포지션을 결정하기 위해 적용될 수 있는 시스템들 및 방법들을 설명한다. 방법들은 이미지들의 쌍들이 그것들이 캡쳐된 방식을 고려했을 때 서로 반대라는 점을 활용한다. 디바이스의 배향 데이터 및 캡쳐된 이미지들은 시각 검색을 최적화하는데 이용될 수 있다.
도 1 은 본 개시물의 일부 양상들에 따른 디바이스의 배향을 설명하는 예시적인 방법을 도시한다. 도 1 에 도시된 예에서, 디바이스 (102) 의 배향은 X 축, Y 축, 및 Z 축을 갖는 데카르트 좌표를 참조하여 설명될 수도 있다. 일부 접근법들에서, 디바이스 내의 특정 기준 지점이 원점 (origin) 으로서 이용될 수도 있다. 원점은 텍스트 설명을 이용하여 정의될 수도 있거나, 수학적으로 고유한 지점, 예컨대, 디스플레이 화면의 중심일 수도 있다. 다른 좌표 시스템들, 예컨대, 극 좌표 시스템 및 구 좌표 시스템이 디바이스 (102) 의 배향을 설명하는데 사용될 수도 있다는 것에 유의한다. 본 개시물의 실시형태들에 따르면, 디바이스 (102) 의 배향은 소정의 축에 대해 대략 정렬될 수도 있다. 예를 들어 (화살표 (104) 로 표시된) 똑바른 포지션에서의 디바이스 (102) 는 대략 Y 축에 대해 그리고 X-Z 평면에 대략 수직으로 정렬될 수도 있다. 화살표 (106) 으로 표시되는 디바이스 (102) 의 회전은 실질적으로 디바이스의 똑바른 포지션을 유지할 수도 있다.
일부 실시형태들에서, 사용자가 경사면에 또는 일련의 계단들에 있는 경우, 디바이스 (102) 의 배향을 설명하는 Y 축은 경사면에 대략 수직일 수도 있고, 디바이스 (102) 의 배향을 설명하는 X-Z 평면은 경사면에 대략 평행할 수도 있다.
본 개시물의 실시형태들에 따르면, 이로 제한되지는 않으나, 가속도계, 자이로스코프, 및 자력계를 포함하는 다양한 유형의 센서들이 디바이스의 모션들 및 회전들을 검출하는데 이용될 수도 있다. 가속도계는 선형 이동들을 검출하는 것을 보다 잘 수행할 수도 있으며, 자이로스코프는 회전들을 검출하는 것을 보다 잘 수행할 수도 있고, 자력계는 디바이스의 배향들을 검출하는 것을 보다 잘 수행할 수도 있다. 2 개 이상의 이러한 센서들의 조합이 본 개시물의 양상들에 따른 디바이스의 이동, 회전, 및 배향을 검출하는데 이용될 수도 있다.
본 개시물의 실시형태들에 따르면, 가속도계는 디바이스의 가속도를 측정하는 디바이스이다. 가속도계는 가속도계의 기준의 프레임에 있는 테스트 질량에 의해 경험되는 가중과 연관된 가속도를 측정한다. 예를 들어, 가속도계는 가속도계가 정지되어 있을지라도 값을 측정하는데, 속력에서의 변화가 없더라도 질량들이 가중들을 갖기 때문이다. 가속도계는 질량의 단위당 가중, 중력 또는 관성력 (g-force) 이라고도 알려진 양을 측정한다. 다시 말해, 가중을 측정함으로써, 가속도계는 그 자체에 대한 자유 낙하 기준 플레임 (관성 기준 프레임) 의 가속도를 측정한다. 일 접근법에서, 벡터 양으로서, 적절한 가속도 (또는 관성력) 의 크기 및 방향을 검출하는데 다-축 가속도계가 이용될 수 있다. 또한, 가중 변화들의 방향으로서의 배향, 관성력 또는 관성력에서의 변화를 생성하는 좌표 가속도, 진동, 및 충격을 감지하는데 다-축 가속도계가 이용될 수 있다. 다른 접근법에서, 디바이스의 포지션, 이동, 및 배향을 검출하는데 마이크로-머신 가속도계가 이용될 수 있다.
본 개시물의 실시형태들에 따르면, 각 운동량의 보존의 원리들에 기초하여, 디바이스의 회전 및 배향을 측정하는데 자이로스코프가 이용된다. 자이로스코프에 대한 처음의 기준을 확립하기 위해 가속도계 또는 자력계가 이용될 수 있다. 처음의 기준이 확립된 후에, 자이로스코프는 진동들에 의해 또는 디바이스 주위의 전기 기기들에 의해 발생되는 전자기장들에 의해 영향을 덜 받기 때문에, 자이로스코프는 디바이스의 회전을 검출할 시에 가속도계 또는 자력계보다 더 정확할 수 있다. 기계식 자이로스코프는 임의의 배향을 취하도록 그것의 차축이 자유로운 스피닝 휠 (spinning wheel) 또는 디스크일 수 있다. 이러한 배향은, 자이로스코프의 높은 스핀의 레이트와 연관된 큰 각 운동량이 없을 시에 변하는 것보다, 주어진 외부의 토크 (torque) 에 응답하여 훨씬 덜 변한다. 짐발 (gimbal) 들에 디바이스를 장착함으로써 외부 토크가 최소화되기 때문에, 디바이스가 장착되는 플랫폼의 임의의 모션에 상관없이, 디바이스의 배향이 거의 고정된 채로 있는다. 다른 접근법들에서, 전자, 마이크로칩-패키지 MEMS (Micro-electromechanical systems) 자이로스코프 디바이스들, 솔리드 스테이트 링 레이저들, 광 섬유 자이로스코프들, 및 퀀텀 자이로스코프와 같은, 다른 동작 원리들에 기초한 자이로스코프들이 또한 이용될 수도 있다.
본 개시물의 실시형태들에 따르면, 디바이스 주위의 자기장들의 세기 및 방향을 검출함으로써 배향들을 측정하는데 자력계가 이용될 수 있다. 다양한 유형의 자력계들이 이용될 수도 있다. 예를 들어, 스칼라 자력계가 대상이 되는 자기장의 전체 세기를 측정하고, 벡터 자력계는 디바이스의 공간적 배향에 대한, 특정 방향에서의 자기장의 컴포넌트를 측정한다. 다른 접근법에서, 솔리드-스테이트 홀-효과 (Hall-effect) 자력계가 이용될 수 있다. 홀-효과 자력계는 적용되는 자기장에 비례하는 전압을 생성하고, 극성을 감지하도록 구성될 수 있다.
도 2a 내지 도 2d 는 본 개시물의 일부 양상들에 따른 반대편의 카메라들을 이용하여 디바이스의 포지션을 결정하는 방법들을 도시한다. 도 2a 에서, 디바이스 (102) 는 축 X, 축 Y, 및 축 Z 에 대하여 배향된다. 디바이스는 제 1 전면 이미지 (204a) 및 제 1 후면 이미지 (204b) 를 캡쳐한다. A 는 제 1 전면 이미지 (204a) 상의 지점이고, B 는 제 1 후면 이미지 (204b) 상의 지점이다. 지점 A 및 지점 B 를 잇는 선이 디바이스 (102) 를 관통한다. 도 2b 에서, 디바이스 (102) 는 평면 X-Z 대해 각 (θ) 만큼 회전한다. 디바이스는 그 다음에 제 2 전면 이미지 (206a) 및 제 2 후면 이미지 (206b) 를 캡쳐한다. C 는 제 2 전면 이미지 (206a) 상의 지점이고, D 는 제 2 후면 이미지 (206b) 상의 지점이다. 지점 C 및 지점 D 를 잇는 선은 디바이스 (102) 를 관통한다. 보다 좋은 결과들을 위해, 디바이스 (102) 는 바람직하게는 다른 물체들이나 사람들에 의해 가려지지 않는 거리에서 광경들을 캡쳐할 수 있다는 것에 유의한다.
도 2c 는 도 2a 및 도 2b 의 결합된 뷰를 도시한다. 도 2c 에 도시된 바와 같이, 선 AB 는 제 1 전면 이미지 (204a) 와 제 1 후면 이미지 (204b) 를 이으며; 선 CD 는 제 2 전면 이미지 (206a) 와 제 2 후면 이미지 (206b) 를 잇는다. 점 (208) 으로 표시되는 선 AB 와 선 CD 의 교차 지점은 제 1 전면 이미지 (204a) 와 제 1 후면 이미지 (204b) 를 포함하는 이미지들의 제 1 쌍, 및 제 2 전면 이미지 (206a) 와 제 2 후면 이미지 (206b) 를 포함하는 이미지들의 제 2 쌍을 캡쳐하는 디바이스 (102) 의 위치를 말한다. 실제로는, 선 AB 와 선 CD 는 서로 정확하게 교차하지 않을 수도 있고, 방법은 이미지들을 캡쳐하고 이미지들의 제 1 쌍과 이미지들의 제 2 쌍을 캡쳐하는 사이의 회전 시에 디바이스 (102) 의 원치않는 이동들을 고려하여 근사 교차 지점을 계산한다는 것에 유의한다.
본 개시물의 실시형태들에 따르면, 매칭에 기초하여 비젼 (vision) 을 적용함으로써, 각각의 이미지에서의 광경의 위치가 지도 상에서 검색되고 위치를 찾아낼 수 있다. 그 다음에, 캡쳐된 이미지들의 위치들을 이용하여, (사용자 위치라고도 지칭되는) 디바이스의 위치가 이미지들의 각각의 쌍의 포지션들의 중심들을 연결하는 선 AB 및 선 CD 를 따라 있는 것으로 추측될 수 있다. 그 다음에, 디바이스의 포지션이 도 2c 에 도시된 바와 같이 지도 상의 2 개의 선들의 교차 지점 또는 교차 섹션으로 결정될 수 있다.
도 2d 는 본 개시물의 일부 양상들에 따른 반대편의 카메라들을 이용하여 디바이스의 포지션을 결정하는 다른 방법을 도시한다. 이미지들의 2 개의 쌍을 캡쳐하는 방법은 제 1 전면 이미지 (204a) 와 제 1 후면 이미지 (204b) 를 포함하는 이미지들의 제 1 쌍, 및 제 2 전면 이미지 (206a) 와 제 2 후면 이미지 (206b) 를 포함하는 이미지들의 제 2 쌍을 발생시키는 도 2a 내지 도 2c 에 도시된 예들과 유사하다. 이러한 예에서, 이미지들의 각각의 쌍을 잇는 2 개의 선들로부터 도출되는 교차의 지점을 결정하는 대신에, 방법은 제 1 전면 이미지 (204a) 와 제 1 후면 이미지 (204b) 를 포함하는 이미지들의 제 1 쌍을 이음으로써 형성되는 평면들의 제 1 세트 (212), 및 제 2 전면 이미지 (206a) 와 제 2 후면 이미지 (206b) 를 포함하는 이미지들의 제 2 쌍을 이음으로서 형성되는 평면들의 제 2 세트 (214) 를 식별한다. 평면들의 제 1 세트 (212) 와 평면들의 제 2 세트 (214) 의 교차점 (216) 이 그 다음에 디바이스 (102) 의 위치를 결정하는데 이용될 수도 있다. 도 2d 에 도시된 예에서, 교차점 (216) 은 제 1 전면 이미지 (204a) 와 제 1 후면 이미지 (204b) 의 상이한 영역들, 및 제 2 전면 이미지 (206a) 와 제 2 후면 이미지 (206b) 의 상이한 영역들에서의 특징 지점들로부터 추론될 수도 있다는 것에 유의한다. 다른 구현들에서, 교차점 (216) 은 제 1 전면 이미지 (204a) 와 제 1 후면 이미지 (204b) 의 하나 이상의 서브-영역들, 및 제 2 전면 이미지 (206a) 와 제 2 후면 이미지 (206b) 의 하나 이상의 서브-영역들에서의 특징 지점들로부터 추론될 수도 있다. 하나 이상의 서브-영역들은 특징 지점들에 매칭되는 SIFT 를 이용하여 식별되는 주요 지점들에 기초하여 이미지 매칭 프로세스 동안에 획득될 수도 있다.
도 2a 내지 도 2d 에 도시된 바와 같이, 디바이스의 위치를 결정하는 방법들이 설명된다. 전면 카메라 및 후면 카메라로, 방법은 구비된 (pipelined) 이미지 캡쳐 시스템으로 동시에 또는 미리 결정된 시간의 기간 내에 이미지들의 제 1 쌍을 캡쳐한다. 이러한 이미지들은 카메라로부터의 거리에서 뷰잉될 수도 있고 다른 물체들이나 사람들에 의해 가려지지 않은 장소의 광경들을 캡쳐할 수 있다. 비젼 기반 검색을 적용하여, 각각의 이미지에서의 광경의 위치가 지도 상에서 식별되고 위치가 찾아질 수 있다. (카메라라고도 지칭되는) 디바이스 및/또는 사용자의 위치는 이미지들의 제 1 쌍의 2 개의 포지션들의 중심들을 연결하는 선 (2D 지도) 또는 평면 (3D 지도) 을 따라 있는 것으로 추측될 수 있다. 다음으로, 디바이스는 수직 축에 대해 회전되고 반대편의 광경들의 제 2 쌍을 캡쳐한다. 다시, 사용자의 위치는 이미지들의 제 2 쌍의 2 개의 포지션들의 중심들을 연결하는 선을 따르는 것으로 추측될 수 있다. 카메라 및/또는 사용자의 포지션은 그 다음에 지도 상에서 2 개의 선들의 교차 지점 또는 섹션으로 결정될 수 있다.
도 3 은 본 개시물의 일부 양상들에 따른 반대편의 카메라들을 이용하는 예시적인 애플리케이션을 도시한다. 이러한 예에서, 사용자는 길을 잃을 수도 있고, 경기장 (302) 에서 그의 자리들을 찾는데 도움이 필요할 수도 있다. 그렇게 하기 위해, 사용자는 모바일 디바이스를 이용하여 도 2a 내지 도 2d 에서 설명된 방법을 적용할 수도 있다. 이러한 예시적인 애플리케이션에서, 모바일 디바이스는 사용자의 현재 포지션에서 이미지들의 제 1 쌍, 즉, 304a 및 304b 를 캡쳐하도록 구성될 수도 있다. 다음으로, 사용자는 모바일 디바이스를 회전시키고, 사용자의 현재 포지션에서 이미지들의 제 2 쌍, 즉, 306a 및 306b 를 취할 수도 있다. 2 개의 이미지들의 쌍들은 데이터베이스에서의 경기장의 알려진 이미지들과 비교된다. 비교들로부터, 이미지들의 각각의 쌍의 위치들이 결정된다. 2 개의 이미지들의 쌍들의 위치들에 기초하여, 2 개의 이미지들의 쌍들을 연결하는 선 (308) 및 선 (310) 이 결정된다. 최종적으로, 선 (308) 및 선 (310) 의 근사 교차 지점 (312) 이 모바일 디바이스의 위치로서 식별될 수 있다. 모바일 디바이스의 위치가 식별된 후에, 그 정보는 경기장에서 그의 자리를 찾기 위해 사용자에 대한 방향들을 생성하는데 이용된다.
도 4 는 본 개시물의 일부 양상들에 따른 도 3 에서 캡쳐된 이미지들의 예시적인 디스플레이들을 도시한다. 도 4 에 도시된 예들에서, 모바일 디바이스 (402) 에 의해 캡쳐된 제 1 전면 이미지 (404a) 및 제 1 후면 이미지 (404b) 를 포함하는 이미지들의 제 1 쌍이 제 1 디스플레이에 도시된다. 제 1 디스플레이는 각각 모바일 디바이스의 전면 카메라 및 후며 카메라에 의해 캡쳐된 전면 뷰 이미지 (404a) 및 뒷면 뷰 이미지 (404b) 양자 모두를 도시한다. 일부 구현들에서, 디바이스는 이미지들의 제 2 쌍을 캡쳐하기 전에 이미지들을 제 1 쌍을 확인할 것을 사용자에게 질의하도록 구성될 수도 있다. 일부 다른 구현들에서, 디바이스는 미리 결정된 시간의 기간 후에 캡쳐된 이미지와 데이터베이스에서의 이미지들 사이에 만족스러운 매치가 발견되지 않은 경우 또는 캡쳐된 이미지들의 품질이 개선될 수도 있는 경우, 다시 이미지들의 제 1 쌍을 캡쳐할 것을 사용자에게 요청하도록 구성될 수도 있다. 유사하게, 모바일 디바이스 (402) 에 의해 캡쳐된 제 2 전면 이미지 (406a) 및 제 2 후면 이미지 (406b) 를 포함하는 이미지들의 제 2 쌍이 제 2 디스플레이에 도시된다. 제 2 디스플레이는 각각 모바일 디바이스의 전면 카메라 및 후면 카메라에 의해 캡쳐된 전면 뷰 이미지 (406a) 및 뒷면 뷰 이미지 (406b) 양자 모두를 보여준다. 일부 구현들에서, 디바이스는 이미지들의 제 2 쌍을 확인할 것을 사용자에게 질의하도록 구성될 수도 있다. 일부 다른 구현들에서, 디바이스는 미리 결정된 시간의 기간 후에 캡쳐된 이미지와 데이터베이스에서의 이미지들 사이에 만족스러운 매치가 발견되지 않은 경우 또는 캡쳐된 이미지들의 품질이 개선될 수도 있는 경우, 다시 이미지들의 제 2 쌍을 캡쳐할 것을 사용자에게 요청하도록 구성될 수도 있다.
도 5a 는 본 개시물의 일부 양상들에 따른 모바일 디바이스의 포지션을 결정하기 위한 장치의 블록도를 도시한다. 도 5a 에 도시된 바와 같이, 안테나 (502) 가 기지국으로부터 변조된 신호들을 수신하여 모뎀 (504) 의 복조기 (DEMOD) 부분에 수신된 신호들을 제공한다. 복조기는 수신된 신호를 프로세싱 (예를 들어, 컨디셔닝 및 디지털화) 하여 입력 샘플들을 획득한다. 복조기는 입력 샘플들에 대해 직교 주파수-분할 다중화 (OFDM) 복조를 더 수행하여 모든 서브캐리어들에 대한 주파수-도메인 수신 심볼들을 제공한다. RX 데이터 프로세서 (506) 는 주파수-도메인 수신 심볼들을 프로세싱 (예를 들어, 심볼 맵핑해제, 인터리브해제, 및 디코딩) 하여, 모바일 디바이스의 제어기/프로세서 (508) 에 디코딩된 데이터를 제공한다.
제어기/프로세서 (508) 는 무선 네트워크를 통해 서버와 통신하기 위해 모바일 디바이스를 제어하도록 구성될 수 있다. TX 데이터 프로세서 (510) 는 모뎀 (504) 의 변조기 (MOD) 에 의해 프로세싱되어 안테나 (502) 를 통해 기지국으로 송신될 수 있는 시그널링 심볼들, 데이터 심볼들, 및 파일럿 심볼들을 발생시킨다. 또한, 제어기/프로세서 (508) 는 모바일 디바이스에서의 다양한 프로세싱 유닛들의 동작을 지시한다. 메모리 (512) 는 모바일 디바이스에 대한 프로그램 코드들 및 데이터를 저장하도록 구성될 수 있다. 이미지 캡쳐 모듈 (516) 은 (전방 카메라라고도 지칭되는) 전면 카메라 (518) 및 (후방 카메라라고도 지칭되는) 후면 카메라 (520) 를 포함한다. 전면 카메라 (518) 및 후면 카메라 (520) 는 다수의 듀얼 이미지들의 세트들을 캡쳐하도록 구성될 수 있다. 센서들 (522) 은 가속도계 (524), 자이로스코프 (526), 및 자력계 (528) 를 포함한다. 가속도계 (524), 자이로스코프 (526), 및/또는 자력계 (528) 는 모바일 디바이스의 배향을 결정하도록 구성될 수 있다. 듀얼-카메라 보조 모듈 (514) 은 다수의 듀얼 이미지들의 세트들을 이용하여 모바일 디바이스의 위치를 결정하는 방법들을 구현하도록 구성될 수 있다.
도 5b 는 본 개시물의 일부 양상들에 따른 디바이스의 포지션을 결정하기 위한 서버의 블록도를 도시한다. 도 5b 에 도시된 예에서, 서버 (530) 는 하나 이상의 프로세서들 (532), 네트워크 인터페이스 (534), 데이터베이스 (536), 듀얼-카메라 포지셔닝 모듈 (538), 및 메모리 (540) 를 포함한다. 하나 이상의 프로세서들 (532) 은 서버 (530) 의 동작들을 제어하도록 구성될 수 있다. 네트워크 인터페이스 (534) 는 다른 서버들, 컴퓨터들, 및 모바일 디바이스들과 통신하도록 구성될 수도 있는 네트워크 (미도시) 와 통신하도록 구성될 수 있다. 데이터베이스 (536) 는 상이한 장소들의 이미지들, 랜드마크들, 지도들, 다른 사용자-정의 정보를 저장하도록 구성될 수 있다. 듀얼-카메라 포지셔닝 모듈 (538) 은 듀얼 이미지들의 다수의 듀얼 이미지들의 세트들을 이용하여 디바이스의 위치를 결정하는 방법들을 구현하도록 구성될 수 있다. 예를 들어, 듀얼-카메라 포지셔닝 모듈 (538) 은 도 6b 와 도 6c 및 도 7a 와 도 7b 에 도시된 방법들을 구현하도록 구성될 수 있다. 또한, 듀얼-카메라 포지셔닝 모듈 (538) 은 도 2a 와 도 2d 및 도 6a 에서 도시된 방법들을 수행하도록 디바이스를 제어하기 위해 구성될 수 있다. 메모리 (540) 는 서버 (530) 에 대한 프로그램 코드들 및 데이터를 저장하도록 구성될 수 있다.
본 개시물의 실시형태들에 따르면, 데이터베이스는 공간적으로 구조화될 수도 있다. 각각의 이미지에 있어서, 카메라 배향은 카메라에 내장된 센서들을 이용하여 결정될 수 있다. 데이터베이스를 검색할 시에, 방법은 처음에 카메라의 배향의 이웃 내의 이미지들을 검색하는 것에 초점을 맞출 수도 있다. 다른 접근법에서, 검색은 전면 카메라 또는 후면 카메라 중 어느 일방으로 캡쳐된 이미지에 대한 특징을 매칭시키는 것에 초점을 맞추고, 처음의 검색 결과를 이용해 후속하는 데이터베이스의 검색들을 보조할 수도 있다. 또 다른 접근법에서, 데이터베이스를 검색하는 것은 GPS, A-GPS, 또는 Skyhook 스타일 WiFi 포지션으로부터 획득된 근사 위치 정보를 이용함으로써 보조될 수도 있다. 또한, 전면 카메라에 의해 캡쳐된 이미지가 위치 (x, y) 에서의 이미지 (A1) 와 매칭되는 경우, A1 의 반대편에서 근처에 있는 이미지들이 후면 카메라에 의해 캡쳐된 이미지와의 매치를 검색하도록 조사되거나, 그 반대이다. 이미지 (A1) 로부터, 카메라와 이미지 (A1) 에 도시된 랜드마크 사이의 거리가 추정될 수 있고, 이러한 정보는 후면 카메라에 의해 캡쳐된 이미지의 매치를 찾기 위해 데이터베이스에 남아 있는 이미지들의 검색을 더 보조하는데 이용될 수 있다는 것에 유의한다. 상술된 다양한 방법들은 데이터베이스에서 이미지들을 검색하는 효율을 개선시키기 위해 적용될 수 있다.
본 발명의 실시형태들에 따르면, 사용자는 하나 이상의 미리 정의된 제스처들을 이용하여 모바일 디바이스의 위치를 결정하기 위해 듀얼-카메라 보조 모듈을 트리거링할 수도 있다. 예를 들어, 사용자는 내부의 위치 기반 애플리케이션이 듀얼-카메라 보조 모듈을 활성화시키도록 카메라를 똑바로 들어올릴 수도 있다. 카메라를 들어올리는 것은 뷰파인더들이 폐색들을 피하는 것을 허용한다는 것에 유의한다. 다른 예로서, 사용자는 카메라를 앞뒤로 3 회 흔들어서 듀얼-카메라 보조 모듈을 활성화시킬 수도 있다. 듀얼-카메라 보조 모듈이 활성화된 후에, 위에서 도 2 내지 도 4 와 연관하여 설명된 바와 같이 카메라의 포지션이 결정될 수도 있다.
카메라의 포지션이 결정된 후에, 카메라의 포지션은 디바이스 내의 또는 원격 위치에 있는 서버에 있는 포지셔닝 엔진에 통신될 수 있다는 것에 유의한다. 포지션은 그 다음에 포지셔닝 엔진의 구현에 기초하여 입자 또는 칼만 (Kalman) 필터에 대한 추가적인 측정치로서, 또는 개개의 픽스 (fix) 로서 병합될 수도 있다. 일 접근법에서, 메시지가 카메라 모듈로부터 포지셔닝 엔진으로 전달될 수도 있으며, 포지셔닝 엔진은 메시지를 듀얼-카메라 픽스로서 태그로 붙이며, 이는 포지셔닝 엔진에 의해 높은 정확도 픽스로 취급될 수도 있다.
도 6a 는 본 개시물의 일부 양상들에 따른 도 5a 의 듀얼-카메라 보조 모듈에 의해 구현되는 예시적인 플로 차트를 도시한다. 도 6a 에 도시된 예시적인 구현에서, 블록 (602) 에서, 모듈은 디바이스의 전방 카메라 및 후방 카메라를 활성화시킨다. 블록 (604) 에서, 모듈은 디바이스의 전방 카메라 및 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하며, 여기서 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함한다. 블록 (606) 에서, 모듈은 디바이스가 제 2 배향으로 회전되는 것을 모니터링한다. 블록 (610) 에서, 모듈은 전방 카메라 및 후방 카메라를 이용하여 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하며, 여기서 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함한다. 블록 (610) 에서, 모듈은 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정한다.
듀얼-카메라 보조 모듈은 제스처로 디바이스의 전방 카메라 및 후방 카메라를 활성화시키도록 구성되며, 여기서 제스처는 디바이스의 하나 이상의 사용자-정의 이동들을 적용하는 것을 포함할 수도 있다는 것에 유의한다. 이미지들의 제 1 쌍 및 이미지들의 제 2 쌍은 동시에, 뿐만 아니라 미리 결정된 시간의 기간 내에 캡쳐될 수도 있다. 디바이스의 제 1 배향 및 제 2 배향의 정보는 가속도계, 자이로스코프, 및 자력계 중 적어도 하나를 이용하여 결정될 수도 있다.
본 개시물의 실시형태들에 따르면, 블록 (610) 은 도 6b 에 도시된 바와 같이 블록 (612) 내지 블록 (618) 에 의해 구현될 수도 있다. 블록 (612) 에서, 듀얼-카메라 보조 모듈은 제 1 전면 이미지 및 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정한다. 제 1 전면 이미지와 연관된 위치들의 예는 도 2a 에 도시된 바와 같은 제 1 전면 이미지 (204a) 의 지점 A 의 위치, 및 제 1 후면 이미지 (204b) 의 지점 B 의 위치일 수도 있다. 블록 (614) 에서, 모듈은 제 2 전면 이미지 및 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정한다. 제 2 전면 이미지와 연관된 위치들의 예는 도 2b 에 도시된 바와 같은 제 2 전면 이미지 (206a) 의 지점 C 의 위치, 및 제 2 후면 이미지 (206b) 의 지점 D 의 위치일 수도 있다. 블록 (616) 에서, 모듈은 제 1 선과 제 2 선의 근사 교차 지점을 결정한다. 블록 (618) 에서, 모듈은 근사 교차 지점을 디바이스의 추정된 위치로서 식별한다.
본 개시물의 실시형태들에 따르면, 블록 (612) 은 도 6c 에 도시된 바와 같이 블록 (620) 내지 블록 (636) 에 의해 구현될 수도 있다. 제 1 전면 이미지 및 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정하기 위해, 블록 (620) 에서, 모듈은 제 1 전면 이미지를 장소의 다수의 위치들의 이미지 특징들을 저장하는 데이터베이스에서의 이미지들과 비교하도록 구성될 수도 있다. 블록 (622) 에서, 모듈은 제 1 전면 이미지의 근사 위치를 식별한다. 블록 (624) 에서, 모듈은 제 1 후면 이미지를 데이터베이스에서의 이미지들과 비교한다. 블록 (626) 에서, 모듈은 제 1 후면 이미지의 근사 위치를 식별한다. 블록 (628) 에서, 모듈은 제 1 전면 이미지의 근사 위치 및 제 1 후면 이미지의 근사 위치를 이용하여 제 1 선을 결정한다.
일 접근법에서, 블록 (620) 은 블록 (630) 및 블록 (632) 을 포함할 수도 있고, 블록 (624) 은 블록 (634) 및 블록 (636) 을 포함할 수도 있다. 제 1 전면 이미지를 데이터베이스에서의 이미지들과 비교하기 위해, 블록 (30) 에서, 모듈은 디바이스의 제 1 배향에 기초하여 데이터베이스로부터 이미지들의 제 1 세트를 선택하며, 여기서 이미지들의 제 1 세트는 전방 카메라의 뷰에서의 영역을 커버한다. 블록 (632) 에서, 모듈은 제 1 전면 이미지를 이미지들의 제 1 세트에 대해 비교한다. 유사하게, 제 1 후면 이미지를 데이터베이스에서의 이미지들과 비교하기 위해, 블록 (634) 에서, 모듈은 제 1 전면 이미지의 근사 위치에 기초하여 데이터베이스로부터 이미지들의 제 2 세트를 선택하며, 여기서 이미지들의 제 2 세트는 제 1 전면 이미지의 근사 위치의 반대편의 영역을 커버한다. 블록 (636) 에서, 모듈은 제 1 후면 이미지를 이미지들의 제 2 세트에 대해 비교한다.
제 2 전면 이미지와 제 2 후면 이미지를 연결하는 제 2 선을 결정하기 위해, 듀얼-카메라 보조 모듈은 제 2 전면 이미지를 데이터베이스에서의 이미지들과 비교하며 (여기서 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장한다), 제 2 전면 이미지의 근사 위치를 식별하며, 제 2 후면 이미지를 데이터베이스에서의 이미지들과 비교하며, 제 2 후면 이미지의 근사 위치를 식별하고, 제 2 전면 이미지의 근사 위치 및 제 2 후면 이미지의 근사 위치를 이용하여 제 2 선을 결정한다.
본 개시물의 실시형태들에 따르면, 질의 이미지를 데이터베이스에서의 이미지들과 비교하기 위해, (서술자들이라고도 지칭되는) 로컬 특징들이 질의 이미지로부터 추출된다. 질의 이미지와 데이터베이스 이미지 사이의 유사성을 평가하는데 로컬 특징들의 세트가 이용된다. 모바일 애플리케이션들에 유용하기 위해, 개개의 특징들은 사용자가 대응하는 데이터베이스 이미지와 비교하여 상이한 뷰포인트로부터 그리고 상이한 조명으로 질의 사진을 취하는 경우 마주하게 되는 기하학적 왜곡 및 측광적 왜곡에 대해 강건할 필요가 있을 수도 있다. 다음으로, 질의 특징들은 데이터베이스에 저장된 이미지들의 특징들에 매칭된다. 이는 특수한 인덱스 구조들을 이용함으로써 달성될 수 있어, 매칭하는 특징들을 포함하는 이미지들의 리스트들에 대한 빠른 액세스를 허용한다. 질의 이미지와 공통적으로 갖는 특징들의 수에 기초하여, 잠재적으로 유사한 이미지들의 예비후보 리스트 (short list) 가 데이터베이스로부터 선택된다. 최종적으로, 데이터베이스에서의 가장 유사한 매치들에 기하학적 확인 단계가 적용된다. 기하학적 확인은 질의 이미지의 특징들과 후보 데이터베이스 이미지의 특징들 사이에서 일관성 있는 공간적 패턴을 찾아 매치가 정확하도록 한다.
위에서 논의된 바와 같이, 장소의 이미지들이 모바일 디바이스에 의해 캡쳐된 후에, 장소의 이미지들은 비주얼 검색 프로세스의 일부로서 데이터베이스에서의 이미지들에 비교된다. 도 7a 및 도 7b 는 본 개시물의 실시형태들에 따른 비주얼 검색 기능성의 예시적인 구현들을 도시한다. 본 개시물에서 설명된 시스템들 및 방법들은 도 7a 및 도 7b 에서 도시된 바와 같이 클라이언트 및 서버 환경에서 구현될 수도 있다.
도 7a 에 도시된 바와 같이, 시스템은 모바일 디바이스 (702) (예를 들어, 듀얼 카메라들을 갖춘 모바일 전화기), 비주얼 검색 서버 (704), 및 무선 네트워크 (706) 를 포함한다. 모바일 디바이스 (702) 는 이미지 캡쳐 모듈 (703), 이미지 인코딩 모듈 (705), 및 프로세스 및 디스플레이 결과들 모듈 (707) 을 포함한다. 비주얼 검색 서버 (704) 는 이미지 디코딩 모듈 (711), 서술자 추출 모듈 (713), 서술자 매칭 모듈 (715), 검색 결과들 모듈 (717), 및 데이터베이스 (719) 를 포함한다. 모바일 디바이스 (702), 무선 네트워크 (706), 및 비주얼 검색 서버 (704) 의 컴포넌트들은 도 7a 의 흐름도에서 도시된 바와 같이 통신가능하게 커플링된다. 모바일 디바이스 (702) 는 질의 이미지를 분석하며, 로컬 이미지 특징들 (서술자들) 을 추출하고, 특징 데이터를 송신한다. 취출 방법들은 검색을 수행하기 위한 질의에 따라 송신된 특징들을 이용하여 비주얼 검색 서버 (704) 상에서 구동한다.
도 7b 에 도시된 예에서, 시스템은 모바일 디바이스 (722) (모바일 전화기로 도시됨), 비주얼 검색 서버 (724), 및 무선 네트워크 (726) 를 포함한다. 모바일 디바이스 (722) 는 이미지 캡쳐 모듈 (723), 서술자 추출 모듈 (725), 서술자 인코딩 모듈 (727), 서술자 매칭 모듈 (729), 결정 브랜치 (731), 프로세스 및 디스플레이 결과들 모듈 (733), 및 로컬 데이터베이스 (D/B) 또는 캐쉬 (735) 를 포함한다. 비주얼 검색 서버 (724) 는 서술자 디코딩 모듈 (741), 서술자 매칭 모듈 (743), 검색 결과들 모듈 (745), 및 데이터베이스 (747) 를 포함한다. 모바일 디바이스 (722), 무선 네트워크 (726), 및 비주얼 검색 서버 (724) 의 컴포넌트들은 도 7b 의 흐름도에서 도시된 바와 같이 통신가능하게 커플링된다. 모바일 디바이스 (722) 는 데이터베이스의 캐쉬를 유지하고 로컬로 이미지 매칭을 수행한다. 매치가 발견되지 않는 경우에, 모바일 디바이스 (722) 는 비주얼 검색 서버 (724) 에 질의 요청을 전송한다. 이러한 방식으로, 네트워크를 통해 전송되는 데이터의 양을 더 감소킨다.
도 7a 및 도 7b 의 각각의 경우에, 취출 프레임워크는 엄격한 모바일 시스템 요구사항들에 적응할 수 있다. 모바일 디바이스 상에서의 프로세싱은 전력 소비의 면에서 빠르고 경제적일 필요가 있을 수도 있다. 네트워크를 통해 송신되는 데이터의 사이즈는 네트워크 지연을 최소화하고 따라서 최상의 사용자 경험을 제공하도록 가능한 한 작을 필요가 있을 수도 있다. 취출을 위해 이용되는 방법들은 잠재적으로 매우 큰 데이터베이스들에 대해 스케일러블 (scalable) 하고, 낮은 지연으로 정밀한 결과들을 전달하는 것이 가능할 필요가 있을 수도 있다. 또한, 취출 시스템은 상이한 거리들, 뷰잉 각도들, 및 조명 조건들을 포함하여 광범위한 조건들 하에서, 또는 부분적 가림들이나 모션 흐릿함 (blur) 이 존재할 시에 캡쳐된 물체들의 신뢰할 수 있는 인식을 허용하도록 강건해야할 필요가 있을 수도 있다. 다른 실시형태들에서, 전체 시스템은 모바일 디바이스 상에 상주할 수도 있으며, 비주얼 검색 서버의 기능성들 및 비주얼 검색 서버에 상주하는 데이터베이스는 모바일 디바이스에 구현될 수도 있다. 예를 들어, 장소의 데이터베이스가 모바일 디바이스에 다운로드될 수도 있고, 도 7a 에 설명된 비주얼 검색 서버 (704) 에 의해 수행되는 기능들 또는 도 7b 에 설명된 비주얼 검색 서버 (724) 에 의해 수행되는 기능들이 모바일 디바이스에서 구현될 수도 있다.
특징 추출 프로세스는 이미지에서 가장 두드러진 관심 지점들을 식별한다. 강력한 이미지 매칭을 위해, 이러한 관심 지점들은 (스케일 변화들, 회전, 및 변형과 같은) 변환들 및 조명 변동들의 관점 하에서 반복가능할 필요가 있을 수도 있다. 스케일 불변을 달성하기 위해, 관심 지점들은 이미지 피라미드를 이용하여 다수의 스케일들에서 계산될 수 있다. 회전 불변을 달성하기 위해, 각각의 관심 지점 주위의 패치는 지배적인 기울기의 방향으로 배향된다. 각각의 패치에서의 기울기들은 조도 변화들에 강건하도록 더 정규화된다.
상이한 관심 지점 검출기들은 반복도 및 복잡도에서 상이한 트레이드-오프들을 제공한다는 것에 유의한다. 예를 들어, SIFT 에 의해 발생되는 DoG (difference-of-Gaussian) 지점들은 계산하기에 느릴 수 있으나, 매우 반복가능할 수 있으며; 반면 코너 검출기 접근법은 빠를 수 있으나 이는 보다 낮은 반복도를 제공한다. 반복도와 복잡도 사이에 훌륭한 트레이드오프를 달성할 수 있는 다양한 접근법들 중에는 적분 이미지들로 속도를 높인 Hessian-blob 검출기가 있다. VGA 이미지들에 대한 이러한 접근법을 이용하여, 일부 현재의 모바일 전화기들 상에서 대략 1 초 미만에 관심 지점 검출이 이행될 수 있다.
관심 지점 검출 후에, 그러한 지점들 주위의 작은 이미지 패치들을 이용하여 "비주얼 단어" 서술자들이 계산된다. 특징 서술자들을 계산하는데 있어 한 가지 난제는 이미지 또는 이미지들의 작은 세트의 특성을 크게 차별하도록 하는 것이다. 거의 모든 이미지에서 생기는 서술자들 (예를 들어, 텍스트 문서들에서 단어 "그리고" 의 등가물) 은 취출에 유용하지 않을 것이다.
일 구현에서, 서술자를 계산하는 프로세스는 다음과 같이 설명된다:
Figure pct00001
패치가 여러 개의 (예를 들어, 5 내지 9) 공간적으로 로컬화된 빈들로 나누어진다;
Figure pct00002
각각의 공간적 빈에서의 조인트 (dx,dy) 기울기 히스토그램이 그 다음에 계산된다. CHoG 히스토그램 비닝은 주요 지점들 주위에서 추출된 패치들에 대해 관찰되는 기울기 통계치들에서 통상적인 스큐 (skew) 를 이용한다; 그리고
Figure pct00003
각각의 공간적 빈으로부터의 기울기들의 히스토그램이 서술자의 일부로서 양자화되어 저장된다.
이미지의 특징들을 추출하기 위한 위의 구현에서, 상이한 스케일들에서의 관심 지점들 (예를 들어, 코너들, 블롭 (blob) 들) 이 추출된다. 상이한 스케일들에서의 패치들은 가장 지배적인 기울기를 따라 배향된다. 서술자는 표준적으로 배향되고 정규화된 패치들을 이용하여 계산된다. 패치는 로컬화된 공간적 빈들로 나누어지고, 관심 지점 로컬화 오류에 대해 강건성을 준다. 패치의 조밀한 서술을 획득하기 위해 각각의 공간적 빈들에서의 기울기들의 분포가 직접적으로 압축된다.
히스토그램들의 이용은 이미지 특징들 사이의 미스매치의 정도를 평가하는데 사용될 KL-분산과 같은 정보 거리 측정치들을 허용한다. 히스토그램들은 또한 간단하고 효과적인 인코딩을 허용한다. 일부 예들에서, 각각의 패치를 압축된 히스토그램-기반 서술자로 바꾸는데 오직 50-60 비트만이 필요할 수도 있다.
로컬 이미지 특징들을 송신하거나 저장하는 모바일 비주얼 검색 시스템들은 효율적으로 특징 위치 정보 및 특징들의 세트들을 인코딩 (및/또는 다중화) 할 필요가 있을 수도 있다. 특정 위치 정보는 기하학적 확인에 이용되기 때문에 역시 인코딩될 필요가 있을 수도 있다. 매칭 정확도를 위해, 일 접근법에서는, 수백 개의 로컬 특징들이 보통 이용된다. 이러한 특징들은 보통 공간적으로 매우 상관이 있다. 특징 위치 정보의 인코딩은 먼저 특징 위치 정보를 2-D 히스토그램으로 양자화하고, 그 다음에 컨텍스트 기반 산출 코딩 기법을 이용하여 공간적 상관성을 활용함으로써 달성될 수 있다. 이러한 기법은 특징 위치 정보의 표현의 충분히 높은 정확도를 산출하면서, 약 5 비트/특징 코딩 레이트를 달성할 수 있다.
로컬 특징들 및 로컬 특징들에 대응하는 위치들의 전체 세트의 인코딩은 먼저 특징 위치 히스토그램을 송신하고, 그 다음에 순서대로 특징들을 송신함으로써 달성될 수 있으며, 특징들의 위치들은 히스토그램을 디코딩할 시에 나타난다. 예를 들어, 블록 (x,y) 이 3 개의 특징들을 포함한다고 히스토그램이 표시하는 경우, 인코더는 비트스트림에서 연속적으로 3 개의 대응하는 서술자들의 코드들을 출력할 수 있다.
대형의 이미지들의 데이터베이스에서 이미지의 특징들을 인덱싱하고 매칭시키기 위해, 개시된 실시형태들은 질의 이미지에 매칭할 것 같은 데이터베이스 후보들의 예비후보 리스트를 반환하는 데이터 구조를 이용한다. 예비후보 리스트는 정확한 매치가 포함되는 한 거짓 긍정들을 포함할 수도 있다. 전체 데이터베이스 대신에 단지 후보들의 예비후보리스트에 대해 후속하여 보다 느린 쌍의 측면에서의 비교들이 수행될 수 있다.
이미지 데이터베이스에서 로컬 특징들을 인덱싱하는데 다양한 데이터 구조들이 사용될 수 있다. 한 가지 접근법은 최상의 빈 우선 (best-bin-first) 전략을 갖는 SIFT 서술자들의 근사 최근접 이웃 (approximate nearest neighbor; ANN) 검색을 이용하는 것이다. 또한, BoF (Bag of Features) 모델이 이용될 수도 있다. BoF 코드북은 서술자들의 트레이닝 세트를 클러스터링하는 k-수단으로 구성된다. 질의 동안에, BoF 코드북과 연관된 역 파일 인덱스를 이용함으로써 데이터베이스 이미지들에 점수를 매기는 것이 수행될 수 있다. 대형의 코드북을 발생시키기 위해, 계층적 k-수단 클러스터링이 이용되어 어휘 트리 (vocabulary tree; VT) 를 생성할 수 있다. 국부-감지 해싱 (Locality-Sensitive Hashing; LSH) 과 같은 다른 검색 기법들 및 종래의 트리 기반 접근법들에서의 개선안들이 또한 이용될 수 있다.
특징 매칭 후에 기하학적 확인이 수행된다. 이 스테이지에서, 특징 매치들이 2 개의 이미지들 사이에서의 뷰포인트에서의 변화에 일관되는 것을 확인하는데 질의에서의 특징들의 위치 정보 및 데이터베이스 이미지들이 이용된다. 질의와 데이터베이스 이미지 사이의 기하학적 변환은 회귀 기법들을 이용하여 추정된다. 변환은 보통 기초 행렬로 나타내어지고, 기초 행렬은 3-D 기하학 모델, 호모그래피 모델, 또는 아핀 (affine) 모델을 포함한다.
단락 [0066] 내지 단락 [0068], 도 3, 도 5a, 도 6a 내지 도 6c, 및 그것들에 대응하는 설명들은 디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 수단, 디바이스의 전방 카메라 및 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 수단, 디바이스가 제 2 배향으로 이동되는 것을 모니터링하는 수단, 전방 카메라 및 후방 카메라를 이용하여 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 수단, 및 이미지들의 제 1 쌍과 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하는 수단을 제공한다는 것에 유의한다. 단락 [0066] 내지 단락 [0068], 도 2a 내지 도 2d, 도 5a, 도 6a 내지 도 6c, 및 그것들에 대응하는 설명들은 제 1 전면 이미지 및 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정하는 수단, 제 2 전면 이미지 및 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정하는 수단, 제 1 선과 제 2 선의 근사 교차 지점을 결정하는 수단, 및 근사 교차 지점을 디바이스의 추정된 위치로 식별하는 수단을 제공한다. 단락 [0066] 내지 단락 [0068], 도 2a 내지 도 2d, 도 5a, 도 6a 내지 도 6c, 도 7a 와 도 7b, 및 그것들의 대응하는 설명들은 제 1 전면 이미지를 데이터베이스에서의 이미지들과 비교하는 수단, 제 1 전면 이미지의 근사 위치를 식별하는 수단, 제 1 후면 이미지를 데이터베이스에서의 이미지들과 비교하는 수단, 제 1 후면 이미지의 근사 위치를 식별하는 수단, 및 제 1 전면 이미지의 근사 위치 및 제 1 후면 이미지의 근사 위치를 이용하여 제 1 선을 결정하는 수단을 제공한다. 단락 [0066] 내지 단락 [0068], 도 2a 내지 도 2d, 도 4, 도 5a, 도 6a 내지 도 6c, 및 그것들의 대응하는 설명들은 디바이스의 제 1 배향에 기초하여 데이터베이스로부터 이미지들의 제 1 세트를 선택하는 수단, 제 1 전면 이미지를 이미지들의 제 1 세트에 대해 비교하는 수단, 제 1 전면 이미지의 근사 위치에 기초하여 데이터베이스로부터 이미지들의 제 2 세트를 선택하는 수단, 및 제 1 후면 이미지를 이미지들의 제 2 세트에 대해 비교하는 수단을 제공한다. 단락 [0066] 내지 단락 [0068], 도 2a 내지 도 2d, 도 5a, 도 6a 내지 도 6c, 도 7a 와 도 7b, 및 그것들의 대응하는 설명들은 제 2 전면 이미지를 데이터베이스에서의 이미지들과 비교하는 수단 (여기서 데이터베이스는 장소의 다수의 이미지 특징들을 저장한다), 제 2 전면 이미지의 근사 위치를 식별하는 수단, 제 2 후면 이미지를 데이터베이스에서의 이미지들과 비교하는 수단, 제 2 후면 이미지의 근사 위치를 식별하는 수단, 및 제 1 전면 이미지의 근사 위치와 제 2 후면 이미지의 근사 위치를 이용하여 제 2 선을 결정하는 수단을 제공한다. 단락 [0066] 내지 단락 [0068], 도 4, 도 5b, 도 6a 내지 도 6c, 도 7a 와 도 7b, 및 그것들의 대응하는 설명들은 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하는 수단, 전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하는 수단, 및 이미지들의 제 1 쌍과 이미지들의 제 2 쌍을 이용하여 디바이스의 위치를 결정하는 수단을 제공한다는 것에 유의한다.
본원에서 설명된 방법론들 및 모바일 디바이스는 애플리케이션에 따라 다양한 수단에 의해 구현될 수 있다. 예를 들어, 이러한 방법론들은 하드웨어, 펌웨어, 소프트웨어, 또는 그 조합으로 구현될 수 있다. 하드웨어 구현에서, 프로세싱 유닛들은 하나 이상의 주문형 반도체 (application specific integrated circuit; ASIC) 들, 디지털 신호 프로세서 (DSP) 들, 디지털 신호 프로세싱 디바이스 (DSPD) 들, 프로그램가능 로직 디바이스 (PLD) 들, 필드 프로그램가능 게이트 어레이 (FPGA) 들, 프로세서들, 제어기들, 마이크로-제어기들, 마이크로프로세서들, 전자 디바이스들, 본원에서 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 또는 이들의 조합 내에 구현될 수 있다. 본원에서, 용어 "제어 로직" 은 소프트웨어, 하드웨어, 펌웨어, 또는 조합에 의해 구현되는 로직을 망라한다.
펌웨어 및/또는 소프트웨어 구현을 위해, 방법론들은 본원에서 설명된 기능들을 수행하는 모듈들 (예를 들어, 절차들, 기능들 등) 로 구현될 수 있다. 명령들을 유형적으로 구체화하는 임의의 머신 판독가능 매체가 본원에서 설명된 방법론들을 구현하는데 이용될 수 있다. 예를 들어, 소프트웨어 코드들은 메모리에 저장될 수 있고 프로세서 유닛에 의해 실행될 수 있다. 메모리는 프로세싱 유닛 내에 또는 프로세싱 유닛의 외부에 구현될 수 있다. 본원에서 이용되는 바와 같은 용어 "메모리" 는 임의의 유형의 장기, 단기, 휘발성, 불휘발성, 또는 다른 저장 디바이스들을 지칭할 수도 있고, 임의의 특정 유형의 메모리 또는 특정 개수의 메모리들, 또는 메모리가 저장되는 매체들의 유형에 제한되지 않는다.
펌웨어 및/또는 소프트웨어로 구현되는 경우, 기능들은 컴퓨터 판독가능 매체 상의 하나 이상의 명령들 또는 코드로서 저장될 수도 있다. 예들은 데이터 구조로 인코딩된 컴퓨터 판독가능 매체 및 컴퓨터 프로그램으로 인코딩된 컴퓨터 판독가능 매체들을 포함한다. 컴퓨터 판독가능 매체들은 제조자의 물품의 형태를 취할 수도 있다. 컴퓨터 판독가능 매체들은 물리적인 컴퓨터 저장 매체들을 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수도 있다. 비제한적인 예로서, 이러한 컴퓨터 판독가능 매체들은 RAM, ROM, EEPROM, CD-ROM, 또는 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 저장 디바이스들, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는데 이용될 수 있고, 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있으며; 본원에서 사용된 디스크 (disk) 및 디스크 (disc) 는 컴팩트 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크 및 블루레이 디스크를 포함하며, 여기서 디스크 (disk) 들은 통상 데이터를 자기적으로 재생하는 한편, 디스크 (disc) 들은 통상 데이터를 레이저들을 이용하여 광학적으로 재생한다. 위의 조합들도 컴퓨터 판독가능 매체들의 범주 내에 포함될 수도 있다.
컴퓨터 판독가능 매체 상의 저장에 더불어, 명령들 및/또는 데이터는 통신 장치에 포함되는 송신 매체들 상의 신호들로서 제공될 수도 있다. 예를 들어, 통신 장치는 명령들 및 데이터를 표시하는 신호들을 갖는 송수신기를 포함할 수도 있다. 명령들 및 데이터는 하나 이상의 프로세서들로 하여금 청구항들에서 강조되는 기능들을 구현하게 하도록 구성된다. 즉, 통신 장치는 개시된 기능들을 수행하기 위한 정보를 표시하는 신호들을 갖는 송신 매체들을 포함한다. 제 1 시간에, 통신 장치에 포함된 송신 매체들은 개시된 기능들을 수행하기 위한 정보의 제 1 부분을 포함할 수도 있으며, 한편 제 2 시간에, 통신 장치에 포함된 송신 매체들은 개시된 기능들을 수행하기 위한 정보의 제 2 부분을 포함할 수도 있다.
개시물은 다양한 무선 통신 네트워크들, 예컨대, 무선 광역 네트워크 (WWAN), 무선 근거리 네트워크 (WLAN), 무선 개인 네트워크 (WPAN) 등과 연계하여 구현될 수도 있다. 용어 "네트워크" 및 용어 "시스템" 은 종종 상호교환가능하게 이용된다. 용어 "포지션" 및 용어 "위치" 는 종종 상호교환가능하게 이용된다. WWAN 은 코드 분할 다중 접속 (CDMA) 네트워크, 시간 분할 다중 접속 (TDMA) 네트워크, 주파수 분할 다중 접속 (FDMA) 네트워크, 직교 주파수 분할 다중 접속 (OFDMA) 네트워크, 단일-캐리어 주파수 분할 다중 접속 (SC-FDMA) 네트워크, 롱 텀 에볼루션 (LTE) 네트워크, WiMAX (IEEE 802.16) 네트워크 등일 수도 있다. CDMA 네트워크는 하나 이상의 무선 접속 기술 (radio access technology; RAT) 들, 예컨대, cdma2000, 광대역-CDMA (W-CDMA) 등을 구현할 수도 있다. Cdma2000 은 IS-95 표준, IS2000 표준, 및 IS-856 표준을 포함한다. TDMA 네트워크는 모바일 통신용 글로벌 시스템 (GSM), 디지털 어드밴스드 모바일 전화 시스템 (Digital Advanced Mobile Phone System; D-AMPS), 또는 몇몇 다른 RAT 를 구현할 수도 있다. GSM 및 W-CDMA 는 “3 세대 파트너쉽 프로젝트” (3GPP) 로 명명된 컨소시엄으로부터의 문서들에서 설명된다. Cdma2000 은 “3 세대 파트너쉽 프로젝트 2” (3GPP2) 로 명명된 컨소시엄으로부터의 문서들에서 설명된다. 3GPP 문서 및 3GPP2 문서는 공개적으로 이용가능하다. WLAN 은 IEEE 802.11x 네트워크일 수도 있고, WPAN 은 블루투스 네트워크, IEEE 802.15x, 또는 일부 다른 유형의 네트워크일 수도 있다. 기법들은 또한 WWAN, WLAN, 및/또는 WPAN 의 임의의 조합과 연계하여 구현될 수도 있다.
모바일국은 셀룰러 혹은 다른 무선 통신 디바이스, 개인용 통신 시스템 (PCS) 디바이스, 개인용 네비게이션 디바이스 (PND), 개인 정보 관리자 (PIM), 개인 휴대 정보 단말기 (PDA), 랩탑, 또는 무선 통신 및/또는 네비게이션 신호들을 수신할 수 있는 다른 적합한 모바일 디바이스와 같은 디바이스를 지칭한다. 용어 "모바일국" 은 또한, 디바이스 또는 PND 에서 일어나는 위성 신호 수신, 보조 데이터 수신, 및/또는 포지션-관련 프로세싱에 상관없이, 예컨대, 단거리 무선, 적외선, 유선 접속, 또는 다른 접속에 의해, 개인용 네비게이션 디바이스 (PND) 와 통신하는 디바이스들을 포함하고자 한다. 또한, "모바일국" 은, 예컨대, 인터넷, Wi-Fi, 또는 다른 네트워크를 통해, 그리고, 디바이스에서, 서버에서, 또는 네트워크와 연관된 다른 디바이스에서 일어나는 위성 신호 수신, 보조 데이터 수신, 및/또는 포지션-관련 프로세싱과 상관없이, 서버와 통신할 수 있는 무선 통신 디바이스들, 컴퓨터들, 랩탑들 등을 포함하는, 모든 디바이스들을 포함하고자 한다. 위의 임의의 동작가능한 조합 역시 "모바일국" 으로 고려된다.
어떤 것이 "최적화된다", "요구된다" 는 지정, 또는 다른 지정은 현재 개시물이 오직 최적화된 시스템들, 또는 "요구되는" 요소들 (또는 다른 지정들로 인한 다른 제한) 이 존재하는 시스템들에만 적용되는 것을 표시하지는 않는다. 이러한 지정들은 단지 특정한 설명된 구현만을 지칭한다. 물론, 많은 구현들이 가능하다. 기법들은, 개발 중이거나 개발될 프로토콜들을 포함하여, 본원에서 논의된 프로토콜들 이외의 프로토콜들과 함께 이용될 수 있다.
여전히 동일한 기본 기초 매커니즘들 및 방법론들을 사용하면서, 많은 가능한 수정예들 및 개시된 실시형태들의 조합들이 이용될 수도 있다는 것을 당업자는 인식할 것이다. 설명을 위한 앞서의 설명은 특정 실시형태들을 참조하여 작성되었다. 그러나, 위의 예증적인 논의들은 개시된 정확한 형태들에 대한 개시물을 포괄하거나 그로 제한되고자 하지 않는다. 위의 사상들의 관점에서 많은 수정들 및 변형들이 가능하다. 실시형태들은 본 개시물의 원리들 및 그것의 실용적인 애플리케이션들을 설명하고, 당업자들이 본 개시물 및 고려되는 특정 이용에 적합한 다양한 수정예들을 갖는 다양한 실시형태들을 가장 잘 활용하도록 선택되고 설명되었다.

Claims (43)

  1. 디바이스의 위치를 결정하는 방법으로서,
    상기 디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 단계;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 단계로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함하는, 상기 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 단계;
    상기 디바이스가 제 2 배향으로 회전되는 것을 모니터링하는 단계;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 단계로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 단계; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하는 단계를 포함하는, 디바이스 위치 결정 방법.
  2. 제 1 항에 있어서,
    상기 디바이스의 전방 카메라 및 후방 카메라를 활성화시키는 단계는,
    제스처로 상기 디바이스의 상기 전방 카메라 및 상기 후방 카메라를 활성화시키는 단계를 포함하고,
    상기 제스처는 상기 디바이스의 하나 이상의 사용자-정의 이동들을 적용하는 것을 포함하는, 디바이스 위치 결정 방법.
  3. 제 1 항에 있어서,
    상기 이미지들의 제 1 쌍을 캡쳐하는 단계는,
    상기 이미지들의 제 1 쌍을 동시에 캡쳐하는 단계를 포함하는, 디바이스 위치 결정 방법.
  4. 제 1 항에 있어서,
    상기 이미지들의 제 1 쌍을 캡쳐하는 단계는,
    미리 결정된 시간의 기간 내에 상기 이미지들의 제 1 쌍을 캡쳐하는 단계를 더 포함하는, 디바이스 위치 결정 방법.
  5. 제 1 항에 있어서,
    가속도계, 자이로스코프, 및 자력계 중 적어도 하나를 이용하여 상기 제 1 배향 및 상기 제 2 배향의 정보를 결정하는 단계를 더 포함하는, 디바이스 위치 결정 방법.
  6. 제 1 항에 있어서,
    상기 디바이스의 위치를 결정하는 단계는,
    상기 제 1 전면 이미지 및 상기 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정하는 단계;
    상기 제 2 전면 이미지 및 상기 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정하는 단계;
    상기 제 1 선과 상기 제 2 선의 근사 교차 지점을 결정하는 단계; 및
    상기 근사 교차 지점을 상기 디바이스의 추정된 위치로서 식별하는 단계를 포함하는, 디바이스 위치 결정 방법.
  7. 제 6 항에 있어서,
    상기 제 1 선을 결정하는 단계는,
    데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하는 단계로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하는 단계;
    상기 제 1 전면 이미지의 근사 위치를 식별하는 단계;
    상기 데이터베이스에서의 이미지들과 상기 제 1 후면 이미지를 비교하는 단계;
    상기 제 1 후면 이미지의 근사 위치를 식별하는 단계; 및
    상기 제 1 전면 이미지의 상기 근사 위치 및 상기 제 1 후면 이미지의 상기 근사 위치를 이용하여 상기 제 1 선을 결정하는 단계를 포함하는, 디바이스 위치 결정 방법.
  8. 제 7 항에 있어서,
    상기 제 1 전면 이미지를 비교하는 단계는,
    상기 디바이스의 상기 제 1 배향에 기초하여 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하는 단계로서, 상기 이미지들의 제 1 세트는 상기 전방 카메라의 뷰에서의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하는 단계; 및
    상기 이미지들의 제 1 세트에 대해 상기 제 1 전면 이미지를 비교하는 단계를 포함하는, 디바이스 위치 결정 방법.
  9. 제 7 항에 있어서,
    상기 제 1 후면 이미지를 비교하는 단계는,
    상기 제 1 전면 이미지의 상기 근사 위치에 기초하여 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하는 단계로서, 상기 이미지들의 제 2 세트는 상기 제 1 전면 이미지의 상기 근사 위치의 반대편의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하는 단계; 및
    상기 이미지들의 제 2 세트에 대해 상기 제 1 후면 이미지를 비교하는 단계를 포함하는, 디바이스 위치 결정 방법.
  10. 제 6 항에 있어서,
    상기 제 2 선을 결정하는 단계는,
    데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하는 단계로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하는 단계;
    상기 제 2 전면 이미지의 근사 위치를 식별하는 단계;
    상기 데이터베이스에서의 이미지들과 상기 제 2 후면 이미지를 비교하는 단계;
    상기 제 2 후면 이미지의 근사 위치를 식별하는 단계; 및
    상기 제 2 전면 이미지의 상기 근사 위치 및 상기 제 2 후면 이미지의 상기 근사 위치를 이용하여 상기 제 2 선을 결정하는 단계를 포함하는, 디바이스 위치 결정 방법.
  11. 제 6 항에 있어서,
    포지셔닝 엔진에 상기 추정된 위치를 전송하는 단계; 및
    상기 포지셔닝 엔진에서 상기 추정된 위치를 이용하여 상기 디바이스의 최종 위치를 결정하는 단계를 더 포함하는, 디바이스 위치 결정 방법.
  12. 하나 이상의 컴퓨터 시스템들에 의한 실행을 위한 컴퓨터 프로그램들을 저장하는 비일시적 매체를 포함하는, 디바이스의 위치를 결정하기 위한 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 프로그램 제품은,
    상기 디바이스의 전방 카메라 및 후방 카메라를 활성화시키기 위한 코드;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하기 위한 코드로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함하는, 상기 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하기 위한 코드;
    상기 디바이스가 제 2 배향으로 회전되는 것을 모니터링하기 위한 코드;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하기 위한 코드로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하기 위한 코드; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  13. 제 12 항에 있어서,
    상기 디바이스의 전방 카메라 및 후방 카메라를 활성화시키기 위한 코드는,
    제스처로 상기 디바이스의 상기 전방 카메라 및 상기 후방 카메라를 활성화시키기 위한 코드를 포함하고,
    상기 제스처는 상기 디바이스의 하나 이상의 사용자-정의 이동들을 적용하는 것을 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  14. 제 12 항에 있어서,
    상기 이미지들의 제 1 쌍을 캡쳐하기 위한 코드는,
    상기 이미지들의 제 1 쌍을 동시에 캡쳐하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  15. 제 12 항에 있어서,
    상기 이미지들의 제 1 쌍을 캡쳐하기 위한 코드는,
    미리 결정된 시간의 기간 내에 상기 이미지들의 제 1 쌍을 캡쳐하기 위한 코드를 더 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  16. 제 12 항에 있어서,
    가속도계, 자이로스코프, 및 자력계 중 적어도 하나를 이용하여 상기 제 1 배향 및 상기 제 2 배향의 정보를 결정하기 위한 코드를 더 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  17. 제 12 항에 있어서,
    상기 디바이스의 위치를 결정하기 위한 코드는,
    상기 제 1 전면 이미지 및 상기 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정하기 위한 코드;
    상기 제 2 전면 이미지 및 상기 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정하기 위한 코드;
    상기 제 1 선과 상기 제 2 선의 근사 교차 지점을 결정하기 위한 코드; 및
    상기 근사 교차 지점을 상기 디바이스의 추정된 위치로서 식별하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  18. 제 17 항에 있어서,
    상기 제 1 선을 결정하기 위한 코드는,
    데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하기 위한 코드로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하기 위한 코드;
    상기 제 1 전면 이미지의 근사 위치를 식별하기 위한 코드;
    상기 데이터베이스에서의 이미지들과 상기 제 1 후면 이미지를 비교하기 위한 코드;
    상기 제 1 후면 이미지의 근사 위치를 식별하기 위한 코드; 및
    상기 제 1 전면 이미지의 상기 근사 위치 및 상기 제 1 후면 이미지의 상기 근사 위치를 이용하여 상기 제 1 선을 결정하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  19. 제 18 항에 있어서,
    상기 제 1 전면 이미지를 비교하기 위한 코드는,
    상기 디바이스의 상기 제 1 배향에 기초하여 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하기 위한 코드로서, 상기 이미지들의 제 1 세트는 상기 전방 카메라의 뷰에서의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하기 위한 코드; 및
    상기 이미지들의 제 1 세트에 대해 상기 제 1 전면 이미지를 비교하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  20. 제 18 항에 있어서,
    상기 제 1 후면 이미지를 비교하기 위한 코드는,
    상기 제 1 전면 이미지의 상기 근사 위치에 기초하여 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하기 위한 코드로서, 상기 이미지들의 제 2 세트는 상기 제 1 전면 이미지의 상기 근사 위치의 반대편의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하기 위한 코드; 및
    상기 이미지들의 제 2 세트에 대해 상기 제 1 후면 이미지를 비교하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  21. 제 17 항에 있어서,
    상기 제 2 선을 결정하기 위한 코드는,
    데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하기 위한 코드로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하기 위한 코드;
    상기 제 2 전면 이미지의 근사 위치를 식별하기 위한 코드;
    상기 데이터베이스에서의 이미지들과 상기 제 2 후면 이미지를 비교하기 위한 코드;
    상기 제 2 후면 이미지의 근사 위치를 식별하기 위한 코드; 및
    상기 제 2 전면 이미지의 상기 근사 위치 및 상기 제 2 후면 이미지의 상기 근사 위치를 이용하여 상기 제 2 선을 결정하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  22. 제 17 항에 있어서,
    포지셔닝 엔진에 상기 추정된 위치를 전송하기 위한 코드; 및
    상기 포지셔닝 엔진에서 상기 추정된 위치를 이용하여 상기 디바이스의 최종 위치를 결정하기 위한 코드를 더 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  23. 디바이스로서,
    하나 이상의 프로세서들;
    상기 하나 이상의 프로세서들과 함께 작동하는, 듀얼-카메라 보조 모듈로서,
    상기 듀얼-카메라 보조 모듈은,
    디바이스의 전방 카메라 및 후방 카메라를 활성화시키기 위한 로직;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 디바이스의 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하기 위한 로직으로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하기 위한 로직;
    상기 디바이스가 제 2 배향으로 이동되는 것을 모니터링하기 위한 로직;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하기 위한 로직으로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하기 위한 로직; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하기 위한 로직을 포함하는, 상기 듀얼-카메라 보조 모듈; 및
    상기 디바이스의 상기 위치를 저장하도록 구성된 메모리를 포함하는, 디바이스.
  24. 제 23 항에 있어서,
    상기 디바이스의 전방 카메라 및 후방 카메라를 활성화시키기 위한 로직은,
    제스처로 상기 디바이스의 상기 전방 카메라 및 상기 후방 카메라를 활성화시키는 것을 포함하고,
    상기 제스처는 상기 디바이스의 하나 이상의 사용자-정의 이동들을 적용하는 것을 포함하는, 디바이스.
  25. 제 23 항에 있어서,
    이미지들의 제 1 쌍을 캡쳐하기 위한 로직은,
    동시에 상기 이미지들의 제 1 쌍을 캡쳐하기 위한 로직을 포함하는, 디바이스.
  26. 제 23 항에 있어서,
    이미지들의 제 1 쌍을 캡쳐하기 위한 로직은,
    미리 결정된 시간의 기간 내에 상기 이미지들의 제 1 쌍을 캡쳐하기 위한 로직을 더 포함하는, 디바이스.
  27. 제 23 항에 있어서,
    가속도계, 자이로스코프, 및 자력계 중 적어도 하나를 이용하여 상기 제 1 배향 및 상기 제 2 배향의 정보를 결정하기 위한 로직을 더 포함하는, 디바이스.
  28. 제 23 항에 있어서,
    상기 디바이스의 위치를 결정하기 위한 로직은,
    상기 제 1 전면 이미지 및 상기 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정하기 위한 로직;
    상기 제 2 전면 이미지 및 상기 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정하기 위한 로직;
    상기 제 1 선과 상기 제 2 선의 근사 교차 지점을 결정하기 위한 로직; 및
    상기 근사 교차 지점을 상기 디바이스의 추정된 위치로서 식별하기 위한 로직을 포함하는, 디바이스.
  29. 제 28 항에 있어서,
    상기 제 1 선을 결정하기 위한 로직은,
    데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하기 위한 로직으로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하기 위한 로직;
    상기 제 1 전면 이미지의 근사 위치를 식별하기 위한 로직;
    상기 데이터베이스에서의 이미지들과 상기 제 1 후면 이미지를 비교하기 위한 로직;
    상기 제 1 후면 이미지의 근사 위치를 식별하기 위한 로직; 및
    상기 제 1 전면 이미지의 상기 근사 위치 및 상기 제 1 후면 이미지의 상기 근사 위치를 이용하여 상기 제 1 선을 결정하기 위한 로직을 포함하는, 디바이스.
  30. 제 29 항에 있어서,
    상기 제 1 전면 이미지를 비교하기 위한 로직은,
    상기 디바이스의 상기 제 1 배향에 기초하여 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하기 위한 로직으로서, 상기 이미지들의 제 1 세트는 상기 전방 카메라의 뷰에서의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하기 위한 로직; 및
    상기 이미지들의 제 1 세트에 대해 상기 제 1 전면 이미지를 비교하기 위한 로직을 포함하는, 디바이스.
  31. 제 29 항에 있어서,
    상기 제 1 후면 이미지를 비교하기 위한 로직은,
    상기 제 1 전면 이미지의 상기 근사 위치에 기초하여 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하기 위한 로직으로서, 상기 이미지들의 제 2 세트는 상기 제 1 전면 이미지의 상기 근사 위치의 반대편의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하기 위한 로직; 및
    상기 이미지들의 제 2 세트에 대해 상기 제 1 후면 이미지를 비교하기 위한 로직을 포함하는, 디바이스.
  32. 제 28 항에 있어서,
    상기 제 2 선을 결정하기 위한 로직은,
    데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하기 위한 로직으로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하기 위한 로직;
    상기 제 2 전면 이미지의 근사 위치를 식별하기 위한 로직;
    상기 데이터베이스에서의 이미지들과 상기 제 2 후면 이미지를 비교하기 위한 로직;
    상기 제 2 후면 이미지의 근사 위치를 식별하기 위한 로직; 및
    상기 제 2 전면 이미지의 상기 근사 위치 및 상기 제 2 후면 이미지의 상기 근사 위치를 이용하여 상기 제 2 선을 결정하기 위한 로직을 포함하는, 디바이스.
  33. 제 28 항에 있어서,
    포지셔닝 엔진에 상기 추정된 위치를 전송하기 위한 로직; 및
    상기 포지셔닝 엔진에서 상기 추정된 위치를 이용하여 상기 디바이스의 최종 위치를 결정하기 위한 로직을 더 포함하는, 디바이스.
  34. 디바이스의 위치를 결정하기 위한 시스템으로서,
    하나 이상의 프로세서들;
    상기 하나 이상의 프로세서들과 함께 작동하는, 듀얼-카메라 보조 모듈로서,
    상기 듀얼-카메로 보조 모듈은,
    상기 디바이스의 전방 카메라 및 후방 카메라를 활성화시키기 위한 수단;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 수단으로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 제 1 배향으로부터 이미지들의 제 1 쌍을 캡쳐하는 수단;
    상기 디바이스가 제 2 배향으로 이동되는 것을 모니터링하는 수단;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 수단으로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 제 2 배향으로부터 이미지들의 제 2 쌍을 캡쳐하는 수단; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하는 수단을 포함하는, 상기 듀얼-카메로 보조 모듈; 및
    상기 디바이스의 상기 위치를 저장하도록 구성된 메모리를 포함하는, 디바이스 위치 결정 시스템.
  35. 제 34 항에 있어서,
    상기 디바이스의 위치를 결정하는 수단은,
    상기 제 1 전면 이미지 및 상기 제 1 후면 이미지와 연관된 위치들을 연결하는 제 1 선을 결정하는 수단;
    상기 제 2 전면 이미지 및 상기 제 2 후면 이미지와 연관된 위치들을 연결하는 제 2 선을 결정하는 수단;
    상기 제 1 선과 상기 제 2 선의 근사 교차 지점을 결정하는 수단; 및
    상기 근사 교차 지점을 상기 디바이스의 추정된 위치로서 식별하는 수단을 포함하는, 디바이스 위치 결정 시스템.
  36. 제 35 항에 있어서,
    상기 제 1 선을 결정하는 수단은,
    데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하는 수단으로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 1 전면 이미지를 비교하는 수단;
    상기 제 1 전면 이미지의 근사 위치를 식별하는 수단;
    상기 데이터베이스에서의 이미지들과 상기 제 1 후면 이미지를 비교하는 수단;
    상기 제 1 후면 이미지의 근사 위치를 식별하는 수단; 및
    상기 제 1 전면 이미지의 상기 근사 위치 및 상기 제 1 후면 이미지의 상기 근사 위치를 이용하여 상기 제 1 선을 결정하는 수단을 포함하는, 디바이스 위치 결정 시스템.
  37. 제 36 항에 있어서,
    상기 제 1 전면 이미지를 비교하는 수단은,
    상기 디바이스의 상기 제 1 배향에 기초하여 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하는 수단으로서, 상기 이미지들의 제 1 세트는 상기 전방 카메라의 뷰에서의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 1 세트를 선택하는 수단; 및
    상기 이미지들의 제 1 세트에 대해 상기 제 1 전면 이미지를 비교하는 수단을 포함하는, 디바이스 위치 결정 시스템.
  38. 제 36 항에 있어서,
    상기 제 1 후면 이미지를 비교하는 수단은,
    상기 제 1 전면 이미지의 상기 근사 위치에 기초하여 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하는 수단으로서, 상기 이미지들의 제 2 세트는 상기 제 1 전면 이미지의 상기 근사 위치의 반대편의 영역을 커버하는, 상기 데이터베이스로부터 이미지들의 제 2 세트를 선택하는 수단; 및
    상기 이미지들의 제 2 세트에 대해 상기 제 1 후면 이미지를 비교하는 수단을 포함하는, 디바이스 위치 결정 시스템.
  39. 제 35 항에 있어서,
    상기 제 2 선을 결정하는 수단은,
    데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하는 수단으로서, 상기 데이터베이스는 장소의 다수의 위치들의 이미지 특징들을 저장하는, 상기 데이터베이스에서의 이미지들과 상기 제 2 전면 이미지를 비교하는 수단;
    상기 제 2 전면 이미지의 근사 위치를 식별하는 수단;
    상기 데이터베이스에서의 이미지들과 상기 제 2 후면 이미지를 비교하는 수단;
    상기 제 2 후면 이미지의 근사 위치를 식별하는 수단; 및
    상기 제 2 전면 이미지의 상기 근사 위치 및 상기 제 2 후면 이미지의 상기 근사 위치를 이용하여 상기 제 2 선을 결정하는 수단을 포함하는, 디바이스 위치 결정 시스템.
  40. 디바이스의 위치를 결정하는 방법으로서,
    전방 카메라 및 후방 카메라를 이용하여 상기 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하는 단계로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함하는, 상기 이미지들의 제 1 쌍을 수신하는 단계;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하는 단계로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 이미지들의 제 2 쌍을 수신하는 단계; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하는 단계를 포함하는, 디바이스 위치 결정 방법.
  41. 하나 이상의 컴퓨터 시스템들에 의한 실행을 위한 컴퓨터 프로그램들을 저장하는 비일시적 매체를 포함하는, 디바이스의 위치를 결정하기 위한 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 프로그램 제품은,
    전방 카메라 및 후방 카메라를 이용하여 상기 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하기 위한 코드로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함하는, 상기 이미지들의 제 1 쌍을 수신하기 위한 코드;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하기 위한 코드로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 이미지들의 제 2 쌍을 수신하기 위한 코드; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하기 위한 코드를 포함하는, 비일시적 매체를 포함하는 컴퓨터 프로그램 제품.
  42. 서버로서,
    하나 이상의 프로세서들;
    상기 하나 이상의 프로세서들과 함께 작동하도록 구성된 듀얼-카메라 포지셔닝 모듈로서,
    상기 듀얼-카메라 포지셔닝 모듈은,
    전방 카메라 및 후방 카메라를 이용하여 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하기 위한 로직으로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함하는, 상기 이미지들의 제 1 쌍을 수신하기 위한 로직;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하기 위한 로직으로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 이미지들의 제 2 쌍을 수신하기 위한 로직; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하기 위한 로직을 포함하는, 상기 듀얼-카메라 포지셔닝 모듈; 및
    상기 디바이스의 상기 위치를 저장하도록 구성된 메모리를 포함하는, 서버.
  43. 디바이스의 위치를 결정하기 위한 시스템으로서,
    하나 이상의 프로세서들;
    상기 하나 이상의 프로세서들과 함께 작동하도록 구성된 듀얼-카메라 포지셔닝 모듈로서,
    상기 듀얼-카메라 포지셔닝 모듈은,
    전방 카메라 및 후방 카메라를 이용하여 상기 디바이스의 제 1 배향으로부터 캡쳐된 이미지들의 제 1 쌍을 수신하는 수단으로서, 상기 이미지들의 제 1 쌍은 제 1 전면 이미지 및 제 1 후면 이미지를 포함하는, 상기 이미지들의 제 1 쌍을 수신하는 수단;
    상기 전방 카메라 및 상기 후방 카메라를 이용하여 상기 디바이스의 제 2 배향으로부터 캡쳐된 이미지들의 제 2 쌍을 수신하는 수단으로서, 상기 이미지들의 제 2 쌍은 제 2 전면 이미지 및 제 2 후면 이미지를 포함하는, 상기 이미지들의 제 2 쌍을 수신하는 수단; 및
    상기 이미지들의 제 1 쌍 및 상기 이미지들의 제 2 쌍을 이용하여 상기 디바이스의 위치를 결정하는 수단을 포함하는, 상기 듀얼-카메라 포지셔닝 모듈; 및
    상기 디바이스의 상기 위치를 저장하도록 구성된 메모리를 포함하는, 디바이스 위치 결정 시스템.
KR1020147023714A 2012-01-27 2013-01-22 반대쌍 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법 KR20140121861A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/360,372 2012-01-27
US13/360,372 US9986208B2 (en) 2012-01-27 2012-01-27 System and method for determining location of a device using opposing cameras
PCT/US2013/022527 WO2013112461A1 (en) 2012-01-27 2013-01-22 System and method for determining location of a device using opposing cameras

Publications (1)

Publication Number Publication Date
KR20140121861A true KR20140121861A (ko) 2014-10-16

Family

ID=47624428

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147023714A KR20140121861A (ko) 2012-01-27 2013-01-22 반대쌍 카메라들을 이용하여 디바이스의 위치를 결정하는 시스템 및 방법

Country Status (7)

Country Link
US (2) US9986208B2 (ko)
EP (1) EP2807453B1 (ko)
JP (1) JP6151278B2 (ko)
KR (1) KR20140121861A (ko)
CN (1) CN104067091B (ko)
IN (1) IN2014MN01545A (ko)
WO (1) WO2013112461A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180037941A (ko) * 2015-06-16 2018-04-13 리브헤어 컴포넌츠 비버라흐 게엠베하 전기 스위칭 시스템을 탑재하기 위한 방법 및 그러한 스위칭 시스템의 조립을 단순화하기 위한 조립 지원 디바이스

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10015449B2 (en) 2013-10-11 2018-07-03 Stmicroelectronics, Inc. Method and apparatus for managing provisioning of an imaging system
US9986208B2 (en) 2012-01-27 2018-05-29 Qualcomm Incorporated System and method for determining location of a device using opposing cameras
US9792528B2 (en) * 2012-01-30 2017-10-17 Nec Corporation Information processing system, information processing method, information processing apparatus and control method and control program thereof, and communication terminal and control method and control program thereof
CN103364774A (zh) * 2012-04-02 2013-10-23 深圳富泰宏精密工业有限公司 基于WiFi直连的邻近设备定位系统及方法
WO2013162585A1 (en) * 2012-04-26 2013-10-31 Intel Corporation Multiple lenses in a mobile device
CN103630130A (zh) * 2012-08-23 2014-03-12 环达电脑(上海)有限公司 基于位基服务的导航系统及其导航显示方法
US9074892B2 (en) * 2013-03-15 2015-07-07 Ian Michael Fink System and method of determining a position of a remote object
US9589189B2 (en) * 2013-05-23 2017-03-07 Cellco Partnership Device for mapping physical world with virtual information
US10670402B2 (en) * 2013-11-01 2020-06-02 Invensense, Inc. Systems and methods for optical sensor navigation
US20150138314A1 (en) * 2013-11-20 2015-05-21 Google Inc. Generating Panoramic Images
CN104936283B (zh) * 2014-03-21 2018-12-25 中国电信股份有限公司 室内定位方法、服务器和系统
US9684831B2 (en) * 2015-02-18 2017-06-20 Qualcomm Incorporated Adaptive edge-like feature selection during object detection
US10088318B2 (en) 2015-08-27 2018-10-02 Qualcomm Incorporated Cradle rotation insensitive inertial navigation
US9349414B1 (en) * 2015-09-18 2016-05-24 Odile Aimee Furment System and method for simultaneous capture of two video streams
CN105282440B (zh) * 2015-09-29 2018-11-09 联想(北京)有限公司 一种图像处理方法及电子设备
CN105352484B (zh) * 2015-10-12 2017-03-01 北京林业大学 一种地面摄影单像解析计算的方法
US9789403B1 (en) 2016-06-14 2017-10-17 Odile Aimee Furment System for interactive image based game
WO2018093438A1 (en) * 2016-08-26 2018-05-24 William Marsh Rice University Camera-based positioning system using learning
US9813150B1 (en) * 2016-09-23 2017-11-07 Qualcomm Incorporated Controllable selection of light-capture devices
JP2020501156A (ja) 2016-12-07 2020-01-16 マジック アイ インコーポレイテッド 平行パターンを投射する距離センサ
JP2018185182A (ja) * 2017-04-25 2018-11-22 東京電力ホールディングス株式会社 位置特定装置
US10663298B2 (en) * 2017-06-25 2020-05-26 Invensense, Inc. Method and apparatus for characterizing platform motion
US10740612B2 (en) * 2017-07-20 2020-08-11 International Business Machines Corporation Location determination
JP2020537242A (ja) * 2017-10-08 2020-12-17 マジック アイ インコーポレイテッド 複数の可動センサを含むセンサシステムの校正
KR20200054326A (ko) 2017-10-08 2020-05-19 매직 아이 인코포레이티드 경도 그리드 패턴을 사용한 거리 측정
CN114827573A (zh) 2018-03-20 2022-07-29 魔眼公司 调整相机曝光以用于三维深度感测和二维成像
WO2019182881A1 (en) 2018-03-20 2019-09-26 Magik Eye Inc. Distance measurement using projection patterns of varying densities
JP7292315B2 (ja) 2018-06-06 2023-06-16 マジック アイ インコーポレイテッド 高密度投影パターンを使用した距離測定
US11475584B2 (en) 2018-08-07 2022-10-18 Magik Eye Inc. Baffles for three-dimensional sensors having spherical fields of view
JP7565282B2 (ja) 2019-01-20 2024-10-10 マジック アイ インコーポレイテッド 複数個の通過域を有するバンドパスフィルタを備える三次元センサ
WO2020197813A1 (en) 2019-03-25 2020-10-01 Magik Eye Inc. Distance measurement using high density projection patterns
EP3970362A4 (en) 2019-05-12 2023-06-21 Magik Eye Inc. MAPPING THREE-DIMENSIONAL DEPTH MAP DATA TO TWO-DIMENSIONAL IMAGERY
CN114730010B (zh) 2019-12-01 2024-05-31 魔眼公司 利用飞行时间信息增强基于三角测量的三维距离测量
EP4094181A4 (en) 2019-12-29 2024-04-03 Magik Eye Inc. ASSIGNMENT OF THREE-DIMENSIONAL COORDINATES TO TWO-DIMENSIONAL FEATURE POINTS
EP4097681A4 (en) 2020-01-05 2024-05-15 Magik Eye Inc. TRANSFER OF THE COORDINATE SYSTEM OF A THREE-DIMENSIONAL CAMERA TO THE IMPACT POINT OF A TWO-DIMENSIONAL CAMERA
CN117036663B (zh) * 2022-04-18 2024-07-09 荣耀终端有限公司 视觉定位方法、设备和存储介质

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5259037A (en) * 1991-02-07 1993-11-02 Hughes Training, Inc. Automated video imagery database generation using photogrammetry
US5699444A (en) * 1995-03-31 1997-12-16 Synthonics Incorporated Methods and apparatus for using image data to determine camera location and orientation
US5870136A (en) * 1997-12-05 1999-02-09 The University Of North Carolina At Chapel Hill Dynamic generation of imperceptible structured light for tracking and acquisition of three dimensional scene geometry and surface characteristics in interactive three dimensional computer graphics applications
US7508444B1 (en) * 1998-01-22 2009-03-24 Eastman Kodak Company Electronic camera with quick view and quick erase features
US6895126B2 (en) * 2000-10-06 2005-05-17 Enrico Di Bernardo System and method for creating, storing, and utilizing composite images of a geographic location
US6990219B2 (en) * 2000-12-15 2006-01-24 Nippon Telegraph And Telephone Corporation Image capturing method and apparatus and fingerprint collation method and apparatus
JP2003111128A (ja) 2001-09-28 2003-04-11 J-Phone East Co Ltd 現在位置特定方法、現在位置情報提供方法、移動経路案内方法、位置情報管理システム及び情報通信端末
JP2004191339A (ja) 2002-12-13 2004-07-08 Sharp Corp 位置情報検索方法、位置情報検索装置、位置情報検索端末、及び、位置情報検索システム
US7619683B2 (en) 2003-08-29 2009-11-17 Aptina Imaging Corporation Apparatus including a dual camera module and method of using the same
US7671916B2 (en) * 2004-06-04 2010-03-02 Electronic Arts Inc. Motion sensor using dual camera inputs
WO2006035476A1 (ja) 2004-09-27 2006-04-06 Mitsubishi Denki Kabushiki Kaisha 位置特定サーバ及び移動体端末
WO2006110584A2 (en) * 2005-04-07 2006-10-19 Axis Engineering Technologies, Inc. Stereoscopic wide field of view imaging system
US7860276B2 (en) 2005-12-08 2010-12-28 Topcon Corporation Image processing device and method
JP4764305B2 (ja) * 2006-10-02 2011-08-31 株式会社東芝 立体画像生成装置、方法およびプログラム
JP2009145061A (ja) * 2007-12-11 2009-07-02 Mitsubishi Electric Corp 位置計測装置
JP4831434B2 (ja) * 2007-12-27 2011-12-07 アイシン・エィ・ダブリュ株式会社 地物情報収集装置及び地物情報収集プログラム、並びに自車位置認識装置及びナビゲーション装置
US8814052B2 (en) * 2008-08-20 2014-08-26 X-Card Holdings, Llc Secure smart card system
US8483715B2 (en) 2009-03-26 2013-07-09 Yahoo! Inc. Computer based location identification using images
US8509488B1 (en) * 2010-02-24 2013-08-13 Qualcomm Incorporated Image-aided positioning and navigation system
US8384770B2 (en) * 2010-06-02 2013-02-26 Nintendo Co., Ltd. Image display system, image display apparatus, and image display method
US9031809B1 (en) * 2010-07-14 2015-05-12 Sri International Method and apparatus for generating three-dimensional pose using multi-modal sensor fusion
US9392102B2 (en) * 2011-08-23 2016-07-12 Samsung Electronics Co., Ltd. Apparatus and method for providing panoramic view during video telephony and video messaging
US9323325B2 (en) * 2011-08-30 2016-04-26 Microsoft Technology Licensing, Llc Enhancing an object of interest in a see-through, mixed reality display device
WO2013029675A1 (en) 2011-08-31 2013-03-07 Metaio Gmbh Method for estimating a camera motion and for determining a three-dimensional model of a real environment
CN103959308B (zh) 2011-08-31 2017-09-19 Metaio有限公司 以参考特征匹配图像特征的方法
US9986208B2 (en) 2012-01-27 2018-05-29 Qualcomm Incorporated System and method for determining location of a device using opposing cameras

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180037941A (ko) * 2015-06-16 2018-04-13 리브헤어 컴포넌츠 비버라흐 게엠베하 전기 스위칭 시스템을 탑재하기 위한 방법 및 그러한 스위칭 시스템의 조립을 단순화하기 위한 조립 지원 디바이스

Also Published As

Publication number Publication date
JP2015513235A (ja) 2015-04-30
US20140354822A1 (en) 2014-12-04
WO2013112461A1 (en) 2013-08-01
JP6151278B2 (ja) 2017-06-21
US20130194428A1 (en) 2013-08-01
CN104067091B (zh) 2017-02-22
EP2807453B1 (en) 2017-03-15
EP2807453A1 (en) 2014-12-03
US9986208B2 (en) 2018-05-29
IN2014MN01545A (ko) 2015-05-08
CN104067091A (zh) 2014-09-24

Similar Documents

Publication Publication Date Title
EP2807453B1 (en) System and method for determining location of a device using opposing cameras
US11263475B2 (en) Incremental learning for dynamic feature database management in an object recognition system
US9031283B2 (en) Sensor-aided wide-area localization on mobile devices
KR101775591B1 (ko) 데이터베이스 생성의 목적을 위한 대화식 및 자동 3-d 오브젝트 스캐닝 방법
Chen et al. City-scale landmark identification on mobile devices
CN105009120B (zh) 基于客户端-服务器的动态搜索
ES2745739T3 (es) Un entorno adaptable para realidad aumentada asistida por la nube
EP3053100B1 (en) Dynamic extension of map data for object detection and tracking
US20140226864A1 (en) Camera Aided Motion Direction and Speed Estimation
US20150095360A1 (en) Multiview pruning of feature database for object recognition system
US20150098616A1 (en) Object recognition and map generation with environment references
CN111832579A (zh) 地图兴趣点数据处理方法、装置、电子设备以及可读介质
US20160066150A1 (en) Dynamic Configuration of a Positioning System
US9870514B2 (en) Hypotheses line mapping and verification for 3D maps
JP6306274B1 (ja) オブジェクト検出中の適応的なエッジ状の特徴の選択
Fernández Alcantarilla Vision based localization: from humanoid robots to visually impaired people

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid