KR101874926B1 - 인식된 오브젝트들을 사용하여 센서들을 교정하기 위한 방법들 및 시스템들 - Google Patents

인식된 오브젝트들을 사용하여 센서들을 교정하기 위한 방법들 및 시스템들 Download PDF

Info

Publication number
KR101874926B1
KR101874926B1 KR1020167034660A KR20167034660A KR101874926B1 KR 101874926 B1 KR101874926 B1 KR 101874926B1 KR 1020167034660 A KR1020167034660 A KR 1020167034660A KR 20167034660 A KR20167034660 A KR 20167034660A KR 101874926 B1 KR101874926 B1 KR 101874926B1
Authority
KR
South Korea
Prior art keywords
data
image
sensor
image data
target object
Prior art date
Application number
KR1020167034660A
Other languages
English (en)
Other versions
KR20160149311A (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 KR20160149311A publication Critical patent/KR20160149311A/ko
Application granted granted Critical
Publication of KR101874926B1 publication Critical patent/KR101874926B1/ko

Links

Images

Classifications

    • G06K9/209
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C17/00Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
    • G01C17/38Testing, calibrating, or compensating of compasses
    • 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/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1656Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C25/00Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C25/00Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass
    • G01C25/005Manufacturing, calibrating, cleaning, or repairing instruments or devices referred to in the other groups of this subclass initial alignment, calibration or starting-up of inertial devices
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R35/00Testing or calibrating of apparatus covered by the other groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • G06T7/344Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/147Details of sensors, e.g. sensor lenses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Vascular Medicine (AREA)
  • General Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices With Unspecified Measuring Means (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

센서 교정을 위한 방법들 및 시스템들이 설명된다. 예시적 방법은 제 1 센서로부터의 이미지 데이터 및 이 이미지 데이터와 연관된, 제 2 센서로부터의 센서 데이터를 수신하는 단계를 수반한다. 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함한다. 방법은 추가로, 캡쳐된 이미지 데이터에 기초하여 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 단계를 수반한다. 부가적으로, 방법은 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙하는 단계를 포함하며, 오브젝트 데이터는 타겟 오브젝트의 삼차원 표현에 관련된 데이터를 포함한다. 부가적으로, 방법은 오브젝트 데이터 및 이미지 데이터에 기초하여, 예측 센서 값을 결정하는 단계를 포함한다. 추가로, 방법은 수신 센서 데이터와 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하는 단계를 포함한다. 게다가, 방법은 센서 교정 값에 기초하여 제 2 센서를 조절하는 단계를 포함한다.

Description

인식된 오브젝트들을 사용하여 센서들을 교정하기 위한 방법들 및 시스템들{METHODS AND SYSTEMS FOR CALIBRATING SENSORS USING RECOGNIZED OBJECTS}
관련 출원
[0001] 본 출원은, 2014년 6월 12일자로 제출된 U.S. 특허 출원 번호 제 14/302,926호에 대한 우선권을 주장하며, 위 특허 출원은 이로써 인용에 의해 그 전체가 통합된다.
[0002] 고속 데이터 통신을 용이하게 하기 위해 고급 컴퓨팅 및 연결성 능력들을 갖는 것 외에도, 많은 최신 모바일 디바이스들은 다양한 센서들을 포함한다. 예컨대, 모바일 디바이스들, 이를테면, 스마트폰들, 태블릿들, 및 웨어러블 컴퓨팅 디바이스들에는 이미징 및 포지셔닝을 위한 센서들이 종종 장착된다. 모바일 디바이스에서 발견될 수 있는 센서들의 몇몇 예들은 다른 타입들의 센서들 중에서 가속도계들, 자이로스코프들, 자력계들, 기압계들, 글로벌 포지셔닝 시스템(GPS;global positioning system) 수신기들, 마이크로폰들, 카메라들, Wi-Fi 센서들, 블루투스 센서들, 온도 센서들, 및 압력 센서들을 포함한다.
[0003] 폭넓게 다양한 이용가능한 센서들은, 모바일 디바이스들이 다양한 기능들을 수행하고 다양한 사용자 경험들을 제공하는 것을 가능하게 한다. 일 예로서, 모바일 디바이스는 사용자가 환경을 통해 모바일 디바이스를 이동시킴에 따라 모바일 디바이스의 궤적을 결정하기 위해 이미징 및/또는 포지셔닝 데이터를 사용할 수 있다. 다른 예로서, 모바일 디바이스는, 환경의 2D 또는 3D 맵을 생성하기 위해 또는 환경의 2D 또는 3D 맵 내에서 모바일 디바이스의 위치를 결정하기 위해, 이미징 및/또는 포지셔닝 데이터를 사용할 수 있다. 추가적인 예로서, 모바일 디바이스는 증강 현실 애플리케이션들을 용이하게 하기 위해 이미징 및/또는 포지셔닝 데이터를 사용할 수 있다. 다른 예들이 또한 존재한다.
[0004] 모바일 디바이스가 센서들로부터의 데이터에 의존하여 특정한 기능(예컨대, 궤적 결정, 주행거리측정, 맵 생성 등)을 수행하는 예들에서, 센서들로부터 수신된 데이터를 교정할 수 있는 것이 유리할 수 있다. 예컨대, 모바일 디바이스의 센서들은 디바이스가 제조될 때 공장 셋팅에서 교정될 수 있다. 본원에서는 공장 셋팅 이외를 포함하여 센서들을 교정하기 위한 방법들 및 시스템들이 설명된다. 예컨대, 모바일 디바이스의 최종 사용자는 이미지 또는 비디오 데이터로서 광학 데이터를 캡쳐할 수 있으며, 이 광학 데이터는 모바일 디바이스의 다양한 센서들을 교정하기 위해 사용될 수 있다.
[0005] 일 예시적 양상에서, 복수의 센서들을 갖는 모바일 디바이스에 의해 수행되는 방법이 제공된다. 방법은, 모바일 디바이스의 복수의 센서들 중 제 1 센서로부터 이미지 데이터를 수신하는 단계를 수반한다. 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함할 수 있다. 방법은 또한, 복수의 센서들 중 제 2 센서를 사용하여 결정된 센서 데이터를 수신하는 단계를 포함한다. 방법은, 이미지 데이터에 기초하여, 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 단계를 더 포함한다. 방법은 또한, 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙(retrieving)하는 단계를 포함한다. 오브젝트 데이터는 오브젝트 식별의 삼차원 표현에 관련된 데이터를 포함할 수 있다. 부가적으로, 방법은, 이미지 데이터를 출력하는 제 1 센서에 대응하여 제 2 센서로부터 출력될 예측 센서 값을 결정하기 위하여, 이미지 데이터에서 타겟 오브젝트를 표현하는 데이터와 오브젝트 데이터를 비교하는 단계를 포함한다. 추가로, 방법은 수신 센서 데이터와 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하는 단계를 포함한다. 게다가, 방법은 센서 교정 값에 기초하여 제 2 센서를 조절하는 단계를 포함한다.
[0006] 다른 예시적 양상에서, 모바일 디바이스가 제공된다. 모바일 디바이스는 이미지 데이터를 캡쳐하도록 구성된 적어도 하나의 카메라, 적어도 하나의 센서, 및 프로세서를 포함한다. 프로세서는 적어도 하나의 카메라로부터 이미지 데이터를 수신하도록 구성된다. 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함한다. 프로세서는 또한, 적어도 하나의 센서를 사용하여 결정된 센서 데이터를 수신하도록 구성된다. 프로세서는 추가로, 이미지 데이터에 기초하여 타겟 오브젝트에 대한 오브젝트 식별을 결정하도록 구성된다. 오브젝트 식별이 결정된 이후에, 프로세서는 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙하도록 구성된다. 오브젝트 데이터는 오브젝트 식별의 삼차원 표현에 관련된 데이터를 포함한다. 부가적으로, 프로세서는, 이미지 데이터를 출력하는 제 1 센서에 대응하여 제 2 센서로부터 출력될 예측 센서 값을 결정하기 위하여, 이미지 데이터에서 타겟 오브젝트를 표현하는 데이터와 오브젝트 데이터를 비교하도록 구성된다. 추가로, 프로세서는 또한, 수신 센서 데이터와 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하도록 구성된다. 이후, 프로세서는 센서 교정 값에 기초하여 적어도 하나의 센서를 조절하도록 구성된다.
[0007] 여전히 다른 예시적 양상에서, 하나 또는 그 초과의 프로세서들에 의해 실행될 때 하나 또는 그 초과의 프로세서들로 하여금 기능들을 수행하게 하는 비-일시적 컴퓨터 판독가능 매체가 제공된다. 기능들은, 모바일 디바이스의 복수의 센서들 중 제 1 센서로부터 이미지 데이터를 수신하는 것을 수반한다. 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함할 수 있다. 기능들은 또한, 복수의 센서들 중 제 2 센서를 사용하여 결정된 센서 데이터를 수신하는 것을 포함한다. 기능들은, 이미지 데이터에 기초하여, 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 것을 더 포함한다. 기능들은 또한, 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙하는 것을 포함한다. 오브젝트 데이터는 오브젝트 식별의 삼차원 표현에 관련된 데이터를 포함할 수 있다. 부가적으로, 기능들은, 이미지 데이터를 출력하는 제 1 센서에 대응하여 제 2 센서로부터 출력될 예측 센서 값을 결정하기 위하여, 이미지 데이터에서 타겟 오브젝트를 표현하는 데이터와 오브젝트 데이터를 비교하는 것을 포함한다. 추가로, 기능들은 수신 센서 데이터와 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하는 것을 포함한다. 게다가, 기능들은 센서 교정 값에 기초하여 제 2 센서를 조절하는 단계를 포함한다.
[0008] 전술한 요약은 단지 예시적이며, 어떠한 방식으로도 제한하려는 것으로 의도되지 않는다. 위에서 설명된 예시적 양상들, 실시예들, 및 특징들 외에도, 추가적인 양상들, 실시예들, 및 특징들이 도면들 및 하기의 상세한 설명을 참조하여 명백해질 것이다.
[0009] 도 1은 예시적 컴퓨팅 디바이스를 예시한다.
[0010] 도 2는 다른 예시적 컴퓨팅 디바이스를 예시한다.
[0011] 도 3a-도 3b는 예시적 컴퓨팅 디바이스의 개념적 예시들이다.
[0012] 도 4는 의자의 이미지 데이터를 캡쳐하는 예시적 모바일 디바이스의 개념적 예시이다.
[0013] 도 5는 의자에 대한 세 개의 삼차원 오브젝트 데이터의 예시적 렌더링들을 표현한다.
[0014] 도 6은 디바이스 센서 교정에 대한 예시적 방법이다.
[0015] 도 7a는 본원에 개시된 방법들의 실시예에 대한 흐름 다이어그램이다.
[0016] 도 7b는 본원에 개시된 방법들의 실시예에 대한 흐름 다이어그램이다.
[0017] 도 8은 컴퓨팅 디바이스 상에서 컴퓨터 프로세스를 실행하기 위한 컴퓨터 프로그램을 포함하는 예시적 컴퓨터 프로그램 제품의 개념적 부분 뷰를 예시하는 개략이다.
[0018] 하기의 상세한 설명에서는, 이 설명의 일부를 형성하는 첨부된 도면들이 참조된다. 도면들에서, 유사한 심볼들은 통상적으로 콘텍스트가 달리 지시하지 않는 한 유사한 컴포넌트들을 식별한다. 상세한 설명, 도면들, 및 청구항들에 설명된 예시적 실시예들은 제한하는 것으로 여겨지지 않는다. 본원에 제시된 발명의 요지의 범위를 벗어나지 않고, 다른 실시예들이 활용될 수 있으며 다른 변경들이 이루어질 수 있다. 일반적으로 본원에 설명되고 도면들에 예시된 바와 같은 본 개시내용의 양상들이 폭넓게 다양한 상이한 구성들로 배열, 치환, 결합, 분리, 및 설계될 수 있으며, 이들 전부가 명시적으로 본원에서 고려되는 것이 용이하게 이해될 것이다.
[0019] 예들 내에서, 모바일 디바이스는 이미지들을 캡쳐하며, 응답으로, 캡쳐된 이미지들에 기초하여 센서 교정들을 결정할 수 있다. 예로서, 모바일 디바이스는 적어도 하나의 이미지를 캡쳐하며, 또한 각각의 이미지와 함께 센서 데이터를 캡쳐할 수 있다. 모바일 디바이스는 이미지로부터 적어도 하나의 오브젝트를 인식할 수 있다. 일부 예들에서, 모바일은 오브젝트에 관한 정보를 획득하기 위해 디바이스에 대해 로컬이든 또는 원격 위치에 있든 데이터베이스에 질의할 수 있다. 오브젝트에 관한 정보는 삼차원 오브젝트 데이터를 포함할 수 있다. 이후, 모바일 디바이스는 삼차원 오브젝트 데이터 및 캡쳐된 이미지에 기초하여 연관된 센서 값들을 결정할 수 있다. 센서 교정을 결정하기 위해, 연관된 센서 값들이 캡쳐된 센서 데이터와 비교될 수 있다. 이후, 결정된 센서 교정은 연관된 센서에 적용될 수 있다.
[0020] 비교를 위해 이미지들 및 센서 판독들로부터 도출될 수 있는 정보의 타입의 다양한 예들이 이하에 설명된다. 일부 예들에서, 컴퓨팅 디바이스는 계산들에 기초하여 모바일 디바이스의 다양한 센서들의 내재적 및/또는 외재적 파라미터들의 정확성을 결정할 수 있다. 내재적 파라미터들은 단일 센서의 출력으로부터의 데이터를 처리하는 그러한 파라미터들일 수 있다. 예컨대, 자이로스코프 유닛의 바이어스는 내재적 파라미터일 수 있다. 외재적 파라미터들은 센서들의 세트로부터 출력되는 앙상블을 설명하는 것들일 수 있다. 예컨대, 센서 쌍의 상대적 포지션 및 배향은, 장면을 이동할 때 그들의 측정들이 일치하는 방법을 설명하는 것을 돕는다.
[0021] 다른 예들에서, 다른 모바일 디바이스들로부터 도출된 정보는, 교정을 보조하기 위해 사용될 수 있다. 일 예로서, 제 1 모바일 디바이스가 사진을 찍을 수 있다. 이 사진은 서버에 통신될 수 있다. 제 2 모바일 디바이스가 사진을 찍을 때, 서버는 오브젝트가 제 1 디바이스로부터의 제 1 사진과 제 2 디바이스로부터의 제 2 사진 둘 모두에 존재했음을 결정할 수 있다. 제 2 디바이스의 센서들에 대한 교정은 부분적으로, 제 1 디바이스로부터의 사진과 연관된 정보에 기초하여 계산될 수 있다.
[0022] 추가적인 예시적 방법들 뿐만 아니라 예시적 디바이스들(예컨대, 모바일이든 또는 다른 것이든)이 첨부된 도면들을 참조하여 이후에 설명된다.
[0023] 이제 도면들을 참조하면, 도 1은 예시적 컴퓨팅 디바이스(100)를 예시한다. 일부 예들에서,도 1에 예시된 컴포넌트들은 다수의 컴퓨팅 디바이스들에 걸쳐 분산될 수 있다. 그러나, 예를 위하여, 컴포넌트들은 일 예시적 컴퓨팅 디바이스(100)의 일부로서 도시 및 설명된다. 컴퓨팅 디바이스(100)는 모바일 디바이스(이를테면, 모바일 폰), 데스크톱 컴퓨터, 랩톱 컴퓨터, 이메일/메시징 디바이스, 태블릿 컴퓨터, 또는 본원에 설명된 기능들을 수행하도록 구성될 수 있는 유사한 디바이스일 수 있거나 또는 이를 포함할 수 있다. 일반적으로, 컴퓨팅 디바이스(100)는, 본원에 설명된 방법들 및 기능들에 따라 데이터를 송신하거나 또는 데이터를 수신하도록 구성되는 임의의 타입의 컴퓨팅 디바이스 또는 송신기 일 수 있다.
[0024] 컴퓨팅 디바이스(100)는 인터페이스(102), 무선 통신 컴포넌트(104), 셀룰러 라디오 통신 컴포넌트(106), 글로벌 포지셔닝 시스템(GPS;global positioning system) 수신기(108), 센서(들)(110), 데이터 스토리지(112), 및 프로세서(들)(114)를 포함할 수 있다. 도 1에 예시된 컴포넌트들은 통신 링크(116)에 의해 함께 링크될 수 있다. 컴퓨팅 디바이스(100)는 또한, 컴퓨팅 디바이스(100) 내에서의, 그리고 컴퓨팅 디바이스(100)와 다른 컴퓨팅 디바이스들(미도시), 이를테면, 서버 엔티티 사이에서의 통신을 가능하게 하기 위한 하드웨어를 포함할 수 있다. 예컨대, 하드웨어는 송신기들, 수신기들, 및 안테나들을 포함할 수 있다.
[0025] 인터페이스(102)는 컴퓨팅 디바이스(100)가 다른 컴퓨팅 디바이스들(미도시), 이를테면, 서버와 통신하게 하도록 구성될 수 있다. 따라서, 인터페이스(102)는 하나 또는 그 초과의 컴퓨팅 디바이스들로부터 입력 데이터를 수신하도록 구성될 수 있고, 또한 출력 데이터를 하나 또는 그 초과의 컴퓨팅 디바이스들에 전송하도록 구성될 수 있다. 인터페이스(102)는 유선 또는 무선 통신 프로토콜에 따라 기능하도록 구성될 수 있다. 일부 예들에서, 인터페이스(102)는 버튼들, 키보드, 터치스크린, 스피커(들)(118), 마이크로폰(들)(120), 및/또는 입력들을 수신하기 위한 임의의 다른 엘리먼트들, 뿐만 아니라 하나 또는 그 초과의 디스플레이들, 및/또는 출력들을 통신하기 위한 임의의 다른 엘리먼트들을 포함할 수 있다.
[0026] 무선 통신 컴포넌트(104)는 하나 또는 그 초과의 무선 통신 표준들에 따라 컴퓨팅 디바이스(100)에 대한 무선 데이터 통신을 용이하게 하도록 구성되는 통신 인터페이스일 수 있다. 예컨대, 무선 통신 컴포넌트(104)는 하나 또는 그 초과의 IEEE 802.11 표준들에 따라 무선 데이터 통신을 용이하게 하도록 구성되는 Wi-Fi 통신 컴포넌트를 포함할 수 있다. 다른 예로서, 무선 통신 컴포넌트(104)는 하나 또는 그 초과의 블루투스 표준들에 따라 무선 데이터 통신을 용이하게 하도록 구성되는 블루투스 통신 컴포넌트를 포함할 수 있다. 다른 예들이 또한 가능하다.
[0027] 셀룰러 라디오 통신 컴포넌트(106)는 네트워크에 대한 모바일 연결성을 제공하기 위한 셀룰러 무선 기지국과의 무선 통신(음성 및/또는 데이터)을 용이하게 하도록 구성되는 통신 인터페이스일 수 있다. 셀룰러 라디오 통신 컴포넌트(106)는 예컨대 컴퓨팅 디바이스(100)가 위치되는 셀의 기지국에 연결되도록 구성될 수 있다.
[0028] GPS 수신기(108)는 GPS 위성들에 의해 전송된 신호들을 정확하게 타이밍함으로써 컴퓨팅 디바이스(100)의 위치를 추정하도록 구성될 수 있다.
[0029] 센서(들)(110)는 하나 또는 그 초과의 센서들을 포함할 수 있거나, 또는 컴퓨팅 디바이스(100) 내에 포함된 하나 또는 그 초과의 센서들을 표현할 수 있다. 예시적 센서들은 가속도계, 자이로스코프, 관성 측정 유닛(IMU;inertial measurement unit), 보수계, 광 센서, 마이크로폰, 카메라(들), 적외선 플래시, 기압계, 자력계, Wi-Fi, 근거리 무선통신(NFC;near field communication), 블루투스, 프로젝터, 깊이 센서, 온도 센서, 또는 다른 위치 및/또는 콘텍스트-인식 센서들을 포함한다.
[0030] 데이터 스토리지(112)는 프로세서(들)(114)에 의해 액세스 및 실행될 수 있는 프로그램 로직(122)을 저장할 수 있다. 데이터 스토리지(112)는 또한, 센서(들)(110)에 의해 수집된 데이터, 또는 무선 통신 컴포넌트(104), 셀룰러 라디오 통신 컴포넌트(106), 및 GPS 수신기(108) 중 임의의 것에 의해 수집된 데이터를 저장할 수 있다.
[0031] 프로세서(들)(114)는, 센서(들)(110) 중 임의의 것에 의해 수집된 데이터를 수신하고 이 데이터에 기초하여 임의의 개수의 기능들을 수행하도록 구성될 수 있다. 예로서, 프로세서(들)(114)는 하나 또는 그 초과의 위치-결정 컴포넌트들, 이를테면, 무선 통신 컴포넌트(104), 셀룰러 라디오 통신 컴포넌트(106), 또는 GPS 수신기(108)를 사용하여 컴퓨팅 디바이스(100)의 하나 또는 그 초과의 지리적 위치 추정치들을 결정하도록 구성될 수 있다. 프로세서(들)(114)는 컴퓨팅 디바이스(100)의 무선 범위 내의 하나 또는 그 초과의 알려진 무선 액세스 포인트들의 존재 및/또는 위치에 기초하여 컴퓨팅 디바이스(100)의 위치를 결정하기 위한 위치-결정 알고리즘을 사용할 수 있다. 일 예에서, 무선 위치결정 컴포넌트(104)는, 하나 또는 그 초과의 무선 액세스 포인트들의 아이덴티티(예컨대, MAC 어드레스)를 결정하고 하나 또는 그 초과의 무선 액세스 포인트들 각각으로부터 수신된 신호들의 세기(예컨대, 수신 신호 강도 표시)를 측정할 수 있다. 각각의 고유한 무선 액세스 포인트로부터의 수신 신호 강도 표시(RSSI;received signal strength indication)는, 각각의 무선 액세스 포인트로부터의 거리를 결정하기 위해 사용될 수 있다. 이후, 거리들은 각각의 고유한 무선 액세스 포인트가 위치되는 곳에 관한 정보를 저장하는 데이터베이스와 비교될 수 있다. 각각의 무선 액세스 포인트로부터의 거리 및 무선 액세스 포인트들 각각의 알려진 위치에 기초하여, 컴퓨팅 디바이스(100)의 위치 추정치가 결정될 수 있다.
[0032] 다른 사례에서, 프로세서(들)(114)는 인근의 셀룰러 기지국들에 기초하여 컴퓨팅 디바이스(100)의 위치를 결정하기 위한 위치-결정 알고리즘을 사용할 수 있다. 예컨대, 셀룰러 라디오 통신 컴포넌트(106)는 셀(컴퓨팅 디바이스(100)가 셀룰러 네트워크로부터의 신호를 이 셀로부터 수신하고 있거나 또는 마지막으로 수신했음)을 식별하도록 구성될 수 있다. 셀룰러 라디오 통신 컴포넌트(106)는 또한, 신호를 제공하는 기지국에 대한 왕복 시간(RTT;round trip time)을 측정하고, 위치 추정치를 결정하기 위해 이 정보를 식별된 셀과 결합하도록 구성될 수 있다. 다른 예에서, 셀룰러 통신 컴포넌트(106)는 컴퓨팅 디바이스(100)의 위치를 추정하기 위해 셋 또는 그 초과의 기지국들로부터의 OTDOA(observed time difference of arrival)를 사용하도록 구성될 수 있다.
[0033] 일부 구현들에서, 컴퓨팅 디바이스(100)는 디바이스 플랫폼(미도시)을 포함할 수 있으며, 이 디바이스 플랫폼은 다중 계층 리눅스 플랫폼으로서 구성될 수 있다. 디바이스 플랫폼은 상이한 애플리케이션들 및 애플리케이션 프레임워크, 뿐만 아니라 다양한 커널들, 라이브러리들, 및 런타임 엔티티들을 포함할 수 있다. 다른 예들에서, 다른 포맷들 또는 운영 체제들이 컴퓨팅 디바이스(100)도 또한 동작시킬 수 있다.
[0034] 통신 링크(116)는 유선 연결로서 예시되지만; 무선 연결들이 또한 사용될 수 있다. 예컨대, 통신 링크(116)는 다른 가능성들 중에서, 유선 직렬 버스, 이를테면, 유니버셜 직렬 버스 또는 병렬 버스, 또는 예컨대 단거리 무선 라디오 기술, 또는 IEEE 802.11(임의의 IEEE 802.11 개정들을 포함함)에 설명된 통신 프로토콜들을 사용하는 무선 연결일 수 있다.
[0035] 컴퓨팅 디바이스(100)는 더 많거나 또는 더 적은 개수의 컴포넌트들을 포함할 수 있다. 추가로, 본원에 설명된 예시적 방법들은 컴퓨팅 디바이스(100)의 컴포넌트들에 의해 개별적으로, 또는 컴퓨팅 디바이스(100)의 컴포넌트들 중 하나 또는 전부에 의해 결합하여 수행될 수 있다.
[0036] 도 2는 다른 예시적 컴퓨팅 디바이스(200)를 예시한다. 도 2의 컴퓨팅 디바이스(200)는 도 1에 도시된 컴퓨팅 디바이스(100)의 부분을 표현할 수 있다. 도 2에서, 컴퓨팅 디바이스(200)는 다수의 센서들, 이를테면, 자이로스코프(204) 및 가속도계(206)를 포함하는 관성 측정 유닛(IMU)(202), 글로벌 셔터(GS;global shutter) 카메라(208), 롤링 셔터(RS;rolling shutter) 카메라(210), 프론트 페이싱 카메라(212), 적외선(IR;infrared) 플래시(214), 기압계(216), 자력계(218), GPS 수신기(220), Wi-Fi/NFC/블루투스 센서(222), 프로젝터(224), 및 온도 센서(226)를 포함하는 것으로 도시되며, 이들 각각은 코-프로세서(230)에 출력한다. 부가적으로, 컴퓨팅 디바이스(200)는, 코-프로세서(230)로부터 입력을 수신하고 이 코-프로세서(230)에 출력하는 깊이 프로세서(228)를 포함하는 것으로 도시된다. 그리고 코-프로세서(230)는 애플리케이션 프로세서(232)로부터 입력을 수신하고, 이 애플리케이션 프로세서(232)에 출력한다. 컴퓨팅 디바이스(200)는, 애플리케이션 프로세서(232)에 직접적으로 출력하는 제 2 IMU(234)를 더 포함할 수 있다.
[0037] IMU(202)는 자이로스코프(204) 및 가속도계(206)의 출력들에 기초하여 컴퓨팅 디바이스(200)의 속도, 배향, 및 중력들을 결정하도록 구성될 수 있다.
[0038] GS 카메라(208)는, 컴퓨팅 디바이스(200) 상에서 리어 페이싱 카메라가 되도록 구성되어, 컴퓨팅 디바이스(200)의 전면을 등질 수 있다. GS 카메라(208)는 카메라(208)의 모든 픽셀들의 출력들을 동시에 판독하도록 구성될 수 있다. GS 카메라(208)는 광각 뷰잉을 위해 약 120-170도 시야, 이를테면, 어안 센서를 갖도록 구성될 수 있다.
[0039] RS 카메라(210)는 픽셀 디스플레이의 맨 위로부터 픽셀 디스플레이의 바닥까지의 픽셀들의 출력들을 판독하도록 구성될 수 있다. 일 예로서, 다른 센서들도 또한 가능하지만, RS 카메라(210)는 적색/녹색/청색(RGB) 적외선(IR) 4 메가픽셀 이미지 센서일 수 있다. RS 카메라(210)는 예컨대 약 5.5 ㎳의 최소 판독 시간으로 동작하기 위하여 고속 노출을 가질 수 있다. GS 카메라(208)처럼, RS 카메라(210)는 리어 페이싱 카메라일 수 있다.
[0040] 카메라(212)는 프론트 페이싱 카메라로서 또는 GS 카메라(208) 및 RS 카메라(210)의 맞은 편을 향하는 방향으로 구성되는 컴퓨팅 디바이스(200)의 추가적인 카메라일 수 있다. 카메라(212)는 광각 카메라일 수 있고, 예컨대, 광각 뷰잉을 위해 약 120-170도 시야를 가질 수 있다.
[0041] IR 플래시(214)는 컴퓨팅 디바이스(200)에 광원을 제공할 수 있으며, 예컨대, 컴퓨팅 디바이스(200)의 후방을 향하는 방향으로 광을 출력하도록 구성되어 GS 카메라(208) 및 RS 카메라(210)에 광을 제공할 수 있다. 일부 예들에서, IR 플래시(214)는 낮은 듀티 사이클, 이를테면, 5Hz로 또는 코-프로세서(230) 또는 애플리케이션 프로세서(232)에 의해 지시된 바와 같이 비-연속적 방식으로 플래싱하도록 구성될 수 있다. IR 플래시(214)는 예컨대 모바일 디바이스들에서 사용하도록 구성된 LED 광원을 포함할 수 있다.
[0042] 도 3a-도 3b는 컴퓨팅 디바이스(300) 상의 센서들 중 일부의 구성을 도시하는, 컴퓨팅 디바이스(300)의 개념적 예시들이다. 도 3a-도 3b에서, 컴퓨팅 디바이스(300)는 모바일 폰으로서 도시된다. 컴퓨팅 디바이스(300)는 도 1의 컴퓨팅 디바이스(100) 또는 도 2의 컴퓨팅 디바이스(200) 중 어느 한 쪽과 유사할 수 있다. 도 3a는 프론트 페이싱 카메라(304) 및 P/L 센서 오프닝(306)(예컨대, 근접성 또는 광 센서)과 함께 디스플레이(302)가 제공되는 컴퓨팅 디바이스(300)의 전면을 예시한다. 프론트 페이싱 카메라(304)는 도 2에 설명된 카메라(212)일 수 있다.
[0043] 도 3b는 리어 카메라(310) 및 다른 리어 카메라(314)가 제공되는 컴퓨팅 디바이스(300)의 후면(308)을 예시한다. 도 2의 컴퓨팅 디바이스(200)에 설명된 바와 같이, 리어 카메라(310)는 RS 카메라(210)일 수 있고, 리어 카메라(312)는 GS 카메라(208)일 수 있다. 컴퓨팅 디바이스(300)의 후면(308)은 또한 IR 플래시(314)를 포함하며, 이 IR 플래시(314)는 도 2의 컴퓨팅 디바이스(200)에 설명된 IR 플래시(214) 또는 프로젝터(224)일 수 있다. 일 예에서, IR 플래시(214) 및 프로젝터(224)는 동일할 수 있다. 예컨대, 단일 IR 플래시가 IR 플래시(214) 및 프로젝터(224)의 기능들을 수행하기 위해 사용될 수 있다. 다른 예에서, 컴퓨팅 디바이스(300)는 리어 카메라(310)(미도시) 근처에 위치된 제 2 플래시(예컨대, LED 플래시)를 포함할 수 있다. 센서들의 구성 및 배치는 예컨대 컴퓨팅 디바이스(300)의 원하는 기능성을 제공하는데 도움이 될 수 있지만, 다른 구성들도 또한 가능하다.
[0044] 도 2를 다시 참조하면, 기압계(216)는 압력 센서를 포함할 수 있고, 공기 압력들 및 고도 변화들을 결정하도록 구성될 수 있다.
[0045] 자력계(218)는 컴퓨팅 디바이스(200)의 롤, 요, 및 피치 측정들을 제공하도록 구성될 수 있으며, 예컨대, 내부 나침반으로서 동작하도록 구성될 수 있다. 일부 예들에서, 자력계(218)는 IMU(202)(미도시)의 컴포넌트일 수 있다.
[0046] GPS 수신기(220)는 도 1의 컴퓨팅 디바이스(100)에 설명된 GPS 수신기(108)와 유사할 수 있다. 추가적인 예들에서, GPS(220)는 또한, GPS 위성들 또는 다른 네트워크 엔티티들로부터 수신된 타이밍 신호들을 출력할 수 있다. 이러한 타이밍 신호들은 동일한 위성 타임스탬프들을 포함하는 다수의 디바이스들에 걸쳐 있는 센서들로부터 수집된 데이터를 동기화하기 위해 사용될 수 있다.
[0047] Wi-Fi/NFC/블루투스 센서(222)는 도 1의 컴퓨팅 디바이스(100)에 대해 위에서 논의된 Wi-Fi 및 블루투스 표준들에 따라, 그리고 다른 디바이스와의 접촉 또는 다른 디바이스와 아주 근접하게 됨을 통해 다른 디바이스와의 무선 통신을 설정하기 위한 NFC 표준들에 따라 동작하도록 구성된 무선 통신 컴포넌트들을 포함할 수 있다.
[0048] 프로젝터(224)는 환경에서 도트 패턴을 생성하기 위한 패턴 생성기를 갖는 레이저를 구비하는 구조화된 광 프로젝터일 수 있거나 또는 이를 포함할 수 있다. 프로젝터(224)는 환경에서의 오브젝트들의 깊이에 관한 정보, 이를테면, 오브젝트들의 삼차원(3D) 특성들을 복원하기 위해 RS 카메라(210)와 함께 동작하도록 구성될 수 있다. 예컨대, RS 카메라(210)는, 도트 패턴의 하나 또는 그 초과의 이미지들을 캡쳐하고 이미지 데이터를 깊이 프로세서(228)에 제공하도록 구성되는 RGB-IR 카메라일 수 있다. 이후, 깊이 프로세서(228)는 프로젝팅된 도트 패턴에 기초하여 오브젝트들에 대한 거리들 및 이 오브젝트들의 형상들을 결정하도록 구성될 수 있다. 예로서, 깊이 프로세서(228)는 프로젝터(224)로 하여금 도트 패턴을 생성하게 하고 RS 카메라(210)로 하여금 도트 패턴의 이미지를 캡쳐하게 하도록 구성될 수 있다. 이후, 깊이 프로세서는 도트 패턴의 이미지를 프로세싱하고, 다양한 알고리즘들을 사용하여 3D 데이터를 삼각측량 및 추출하며, 그리고 깊이 이미지를 코-프로세서(230)에 출력할 수 있다.
[0049] 온도 센서(226)는 예컨대 컴퓨팅 디바이스(200)의 주변 환경의 온도 또는 온도 그래디언트, 이를테면, 온도의 변화를 측정하도록 구성될 수 있다.
[0050] 코-프로세서(230)는 컴퓨팅 디바이스(200) 상의 모든 센서들을 제어하도록 구성될 수 있다. 예들에서, 코-프로세서(230)는 IR 플래시(214)에 매칭하도록 카메라들(208, 210, 및 212) 중 임의의 카메라의 노출 시간들을 제어하고, 프로젝터(224) 펄스 싱크, 지속기간, 및 세기를 제어하며, 그리고 일반적으로 센서들의 데이터 캡쳐 또는 수집 시간들을 제어할 수 있다. 코-프로세서(230)는 또한, 센서들 중 임의의 센서로부터의 데이터를 애플리케이션 프로세서(232)에 대한 적절한 포맷으로 프로세싱하도록 구성될 수 있다. 일부 예들에서, 코-프로세서(230)는 동일한 타임스탬프 또는 데이터 수집 시간(또는 시간 기간)에 대응하는 센서들 중 임의의 센서로부터의 모든 데이터를, 애플리케이션 프로세서(232)에 제공되도록 단일 데이터 구조로 합친다. 코-프로세서(230)는 또한, 아래에 설명된 다른 기능들을 수행하도록 구성될 수 있다.
[0051] 애플리케이션 프로세서(232)는 컴퓨팅 디바이스(200)의 다른 기능성을 제어하도록, 이를테면, 운영체제 또는 컴퓨팅 디바이스(200) 상에 저장된 임의의 개수의 소프트웨어 애플리케이션들에 따라 동작하게 컴퓨팅 디바이스(200)를 제어하도록 구성될 수 있다. 애플리케이션 프로세서(232)는, 센서들에 의해 수집되고 코-프로세서로부터 수신된 데이터를 사용하여 임의의 개수의 타입들의 기능성을 수행할 수 있다. 애플리케이션 프로세서(232)는 코-프로세서(230)의 출력들을 수신할 수 있고, 일부 예들에서, 애플리케이션 프로세서(232)는 GS 카메라(208) 및 RS 카메라(210)를 비롯해 다른 센서들로부터도 또한 미가공 데이터 출력들을 수신할 수 있다. 애플리케이션 프로세서(232)는 또한, 아래에 설명된 다른 기능들을 수행하도록 구성될 수 있다.
[0052] 제 2 IMU(234)는 수집된 데이터를 애플리케이션 프로세서(232)에 직접적으로 출력할 수 있으며, 이 수집된 데이터는 애플리케이션 프로세서(232)에 의해 수신되고, 데이터를 수집하는 것을 시작하도록 다른 센서들을 트리거링하기 위해 사용될 수 있다. 예로서, 제 2 IMU(234)의 출력들은 컴퓨팅 디바이스(200)의 모션을 표시할 수 있으며, 컴퓨팅 디바이스(200)가 움직이고 있을 때, 이미지 데이터, GPS 데이터 등을 수집하는 것이 원해질 수 있다. 따라서, 애플리케이션 프로세서(232)는, IMU(234)의 출력들이 모션을 표시하는 시간들에 데이터를 수집하도록 공통 버스들 상에서의 통신 시그널링을 통해 다른 센서들을 트리거링할 수 있다.
[0053] 도 2에 도시된 컴퓨팅 디바이스(200)는 센서들 각각과 프로세서들 사이에 다수의 통신 버스들을 포함할 수 있다. 예컨대, 코-프로세서(230)는 통신을 위해 멀티-마스터 직렬 싱글-엔드형 버스를 포함하는 집적 회로 간(I2C;inter-integrated circuit) 버스를 통해 IMU(202), GS 카메라(208), 및 RS 카메라(212) 각각과 통신할 수 있다. 코-프로세서(230)는 IMU(202), GS 카메라(208), 및 RS 카메라(212) 각각에 의해 수집, 측정, 또는 검출된 미가공 데이터를 동일한 I2C 버스 또는 별개의 통신 버스를 통해 수신할 수 있다. 코-프로세서(230)는 다수의 통신 버스들을 통해 애플리케이션 프로세서(232)와 통신할 수 있으며, 이 다수의 통신 버스들은 풀 듀플렉스 모드로 동작할 수 있는 동기성 직렬 데이터 링크를 포함하는 직렬 주변장치 인터페이스(SPI;serial peripheral interface) 버스, I2C 버스, 및 카메라 또는 픽셀 정보를 통신하도록 구성된 직렬 인터페이스를 포함하는 MIPI(mobile industry processor interface)를 포함한다. 다양한 버스들의 사용은 예컨대, 개개의 통신 버스에 의해 제공되는 대역폭 뿐만 아니라 데이터의 통신의 스피드의 필요성에 기초하여 결정될 수 있다.
[0054] 도 4는 모바일 디바이스(402)가 의자(404)의 이미지 데이터를 캡쳐하고 있는 시나리오(400)의 개념적 예시이다. 본원에 제시된 실시예들에서, 모바일 디바이스(402)는 하나 또는 그 초과의 이미지들을 캡쳐할 수 있는데, 각각의 이미지는 동일한 오브젝트, 이를테면, 도 4의 의자(404)를 포함한다. 모바일 디바이스(402)는 모바일 디바이스(402)의 표현들(402A-402E)에 의해 도시된 바와 같이 다양한 각도들로 그리고 다양한 배향들로 의자의 이미지 데이터를 캡쳐할 수 있다. 이미지가 캡쳐되는 각각의 포지션에서, 모바일 디바이스(402)의 각각의 표현(402A-402E)은 연관된 시야(406A-406E)를 가질 수 있다. 각각의 시야(406A-406E) 내에서, 모바일 디바이스의 카메라는 타겟 오브젝트(404)를 볼 수 있다.
[0055] 부가적으로, 모바일 디바이스(402)가 이미지 데이터를 캡쳐할 때, 이 모바일 디바이스(402)는 연관된 센서 데이터를 또한 저장할 수 있다. 예컨대, 모바일 디바이스(402)는 포토가 캡쳐되는 각각의 표현(402A-402E)의 포지션에서 센서 데이터를 캡쳐할 수 있다. 다른 실시예들에서, 모바일 디바이스(402)는 표현(402A-402E)의 포지션들에 대응하는 각각의 이미지가 캡쳐될 때 센서 데이터를 계속해서 캡쳐할 수 있다.
[0056] 도 5는 의자에 대한 삼차원 오브젝트 데이터(500)의 렌더링들을 표현한다. 삼차원 오브젝트 데이터는 모바일 디바이스 내에 저장될 수 있다. 모바일 디바이스는 삼차원 오브젝트 데이터와 모바일 디바이스에 의해 캡쳐된 이미지를 비교할 수 있다. 예컨대, 의자를 상이한 각도들로 보는 경우, 의자는 상이하게 나타날 수 있다. 따라서, 삼차원 오브젝트 데이터(500)는 의자의 많은 상이한 뷰들로 렌더링된 채로 도시된다. 도 5에 도시된 바와 같이, 뷰들(502A-502D) 각각은 상이한 각도로 의자를 도시한다. 일부 추가적인 예들에서, 의자의 삼차원 오브젝트 데이터(500)는 또한, 의자에 관한 컬러 정보를 포함할 수 있다.
[0057] 모바일 디바이스가 의자를 포함하는 이미지를 캡쳐할 때, 모바일 디바이스는 의자의 삼차원 오브젝트 데이터(500)를 사용하여 사진의 파라미터들을 결정할 수 있다. 예컨대, 의자의 사이즈 및 배향에 기초하여, 모바일 디바이스는 의자에 대한 모바일 디바이스의 위치에 관한 어떤 포지션 정보를 계산할 수 있다. 제 2 사진이 캡쳐된다면, 모바일 디바이스는 자신이 제 2 사진을 캡쳐했었을 때의 모바일 디바이스의 위치에 관한 어떤 포지션 정보를 계산할 수 있다. 두 개의 이미지들에 기초하여, 모바일 디바이스는 각각의 사진의 의자를 분석하는 것에 기초하여 이동, 배향, 또는 다른 센서 파라미터를 결정할 수 있다. 모바일은 캡쳐된 센서 데이터와 이 결정된 이동, 배향, 또는 다른 센서 파라미터를 비교할 수 있다. 그러므로, 교정 값은 결정된 이동, 배향, 또는 다른 센서 파라미터와 캡쳐된 센서 데이터 사이의 차이에 기초하여 계산될 수 있다.
[0058] 도 6은 디바이스 센서 교정에 대한 예시적 방법(600)의 블록 다이어그램이다. 도 6에 도시된 방법(600)은 예컨대 도 1의 컴퓨팅 디바이스(100) 또는 도 2의 컴퓨팅 디바이스(200)에 의해 또는 더욱 일반적으로 임의의 컴퓨팅 디바이스의 하나 또는 그 초과의 컴포넌트들에 의해 사용되거나 또는 구현될 수 있는 방법의 실시예를 제시한다. 방법(600)은 블록들(602-614) 중 하나 또는 그 초과에 의해 예시된 하나 또는 그 초과의 동작들, 기능들, 또는 액션들을 포함할 수 있다. 블록들이 순차적 순서로 예시되지만, 이들 블록들은 또한, 병렬로 그리고/또는 본원에 설명된 것들과 상이한 순서로 수행될 수 있다. 또한, 다양한 블록들은 더 적은 개수의 블록들로 결합되고, 추가적인 블록들로 분할되고, 그리고/또는 원하는 구현에 기초하여 제거될 수 있다.
[0059] 부가하여, 방법(600)과 본원에 개시된 다른 프로세스들 및 방법들의 경우, 블록 다이어그램은 현재 실시예들의 하나의 가능한 구현의 기능성 및 동작을 도시한다. 이 점에 있어서, 각각의 블록은 모듈, 세그먼트, 또는 프로세스의 특정 논리적 기능들 또는 단계들을 구현하기 위해 프로세서 또는 컴퓨팅 디바이스에 의해 실행가능한 하나 또는 그 초과의 명령들을 포함하는 프로그램 코드의 부분을 표현할 수 있다. 프로그램 코드는 임의의 타입의 컴퓨터-판독가능 매체, 예컨대, 이를테면, 디스크 또는 하드 드라이브를 포함하는 저장 디바이스 상에 저장될 수 있다. 컴퓨터-판독가능 매체는 비-일시적 컴퓨터-판독가능 매체, 예컨대, 이를테면, 레지스터 메모리, 프로세서 캐시 및 랜덤 액세스 메모리(RAM;random access memory)처럼 짧은 시간 기간들 동안 데이터를 저장하는 컴퓨터-판독가능 미디어를 포함할 수 있다. 컴퓨터-판독가능 매체는 또한, 예컨대 판독 전용 메모리(ROM;read only memory), 광학 또는 자기 디스크들, 콤팩트-디스크 판독 전용 메모리(CD-ROM;compact-disc read only memory)처럼 비-일시적 미디어, 이를테면, 이차 또는 영구적 장기 스토리지를 포함할 수 있다. 컴퓨터-판독가능 미디어는 또한, 임의의 다른 휘발성 또는 비-휘발성 저장 시스템들일 수 있다. 컴퓨터-판독가능 매체는 예컨대 컴퓨터-판독가능 저장 매체 또는 유형의 저장 디바이스로 간주될 수 있다.
[0060] 부가하여, 방법(600)과 본원에 개시된 다른 프로세스들 및 방법들의 경우, 도 6의 각각의 블록은 프로세스의 특정 논리적 기능들을 수행하도록 배선된 회로를 표현할 수 있다.
[0061] 방법(600)의 기능들은 컴퓨팅 디바이스에 의해 완전히 수행될 수 있거나, 또는 다수의 컴퓨팅 디바이스들 및/또는 서버들에 걸쳐 분산될 수 있다. 일 예로서, 방법(600)은 운영체제에 기초하여 기능하도록 구성된 애플리케이션 프로세서 및 디바이스의 복수의 센서들로부터 데이터를 수신하도록 구성된 코-프로세서를 갖는 디바이스에 의해 수행될 수 있다. 센서들은 예컨대 IMU, 글로벌 셔터 카메라, 롤링 셔터 카메라, 구조화된 광 프로젝터, 깊이 카메라, 적외선 플래시, 기압계, 자력계, 및 온도 센서를 비롯해 도 1, 도 2, 또는 도 3a-도 3b 중 임의의 도면에서 위에서 설명된 임의의 센서들을 포함할 수 있다. 센서들이 다른 타입들의 센서들도 또한 포함할 수 있음이 고려된다. 방법(600)은 또한, 도 4에 대하여 개시된 것과 유사한 이미지 캡쳐링을 포함할 수 있다. 추가로, 방법(600)은 또한, 도 5에 대하여 설명된 것과 유사한 삼차원 오브젝트 데이터를 통합할 수 있다.
[0062] 일부 실시예들에서, 방법(600)의 기능들은 도 2의 애플리케이션 프로세서(232)에 의해 수행될 수 있다. 다른 실시예들에서, 방법(600)의 기능들은 도 2의 코-프로세서(230)에 의해 수행될 수 있다. 여전히 다른 실시예들에서, 방법(600)의 기능들은 모바일 디바이스로부터 원격으로 위치되는 컴퓨팅 디바이스에 의해 수행될 수 있다. 일부 실시예들에서, 원격 컴퓨팅 디바이스는 서버에 있을 수 있다.
[0063] 초기에, 블록(602)에서, 방법(600)은 모바일 디바이스의 복수의 센서들 중 제 1 센서로부터 이미지 데이터를 수신하는 단계를 포함한다. 일부 예들에서, 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함할 수 있다. 예컨대, 이미지 데이터는 모바일 디바이스의 카메라 또는 깊이 프로세서를 사용하여 캡쳐된 이차원 또는 삼차원 이미지 데이터일 수 있다. 예들 내에서, 이미지 데이터는 모바일 디바이스의 카메라로부터 수신되거나, 또는 모바일 디바이스의 코-프로세서로부터 수신될 수 있다. 부가적으로, 이미지 데이터는 또한, 다수의 캡쳐된 이미지들 및/또는 캡쳐된 비디오로부터의 데이터를 포함할 수 있다.
[0064] 이미지 데이터는, 모바일 디바이스의 포지션 및/또는 배향이 조작되는 동안에 모바일 디바이스가 캡쳐했을 수 있는 타겟 오브젝트를 표현하는 데이터를 포함할 수 있다. 예컨대, 이미지 데이터는, 사용자가 모바일 디바이스를 회전시키거나 또는 모바일 디바이스의 포지션을 변경시키는 동안에 캡쳐되었을 수 있다. 그러나, 다른 실시예들에서, 디바이스가 이동되지 않고 단일 위치에 있는 모바일 디바이스가 이미지 데이터를 캡쳐할 수 있다.
[0065] 일 실시예에서, 이미지 데이터는 이미지들의 시퀀스, 이를테면, 시퀀스로 캡쳐된 세 개, 다섯 개, 열 개, 또는 다른 개수의 이미지들일 수 있다. 다른 실시예에서, 이미지 데이터는 비디오로서 캡쳐될 수 있다.
[0066] 캡쳐된 이미지 데이터는 각각의 이미지(또는 비디오)에서 타겟 오브젝트를 표현하는 데이터를 포함할 수 있다. 일부 예들에서, 이미지 데이터를 구성하는 다양한 이미지들은 동일한 타겟 오브젝트를 포함할 수 있다. 예컨대, 캡쳐된 이미지 데이터의 다양한 이미지들 각각은 의자를 포함할 수 있다. 의자는 상이한 포지션들 및 각도들로 이미징될 수 있다. 따라서, 의자는 각각의 이미지로 표현될 수 있으며, 이 의자는 모바일이 다양한 포지션들로 그리고 다양한 배향들로 이미지들을 캡쳐하는 것으로 인해 정확하게 동일하게 나타나지 않을 수 있다. 부가적으로, 실시예들에서, 하나보다 많은 타겟 오브젝트가 이미지 데이터에서 캡쳐될 수 있다.
[0067] 블록(604)에서, 방법(600)은 복수의 센서들 중 제 2 센서로부터 센서 데이터를 수신하는 단계를 포함한다. 센서 데이터는 또한, 위에서 설명된 모바일 디바이스의 동일한 모션에 대응할 수 있다. 부가적으로, 센서 데이터는, 이미지 데이터의 이미지들 중 하나 또는 그 초과가 캡쳐되었던 시간에 모바일 디바이스의 제 2 센서를 사용하여 결정되었을 수 있다. 예들 내에서, 센서 데이터는 코-프로세서로부터 수신되거나, 또는 모바일 디바이스의 센서로부터 수신될 수 있다.
[0068] 하나의 사례에서, 센서 데이터는 모바일 디바이스의 자이로스코프, IMU, 자력계, 또는 가속도계로부터의 가속도계 판독들을 포함할 수 있다. 센서 데이터는 또한, GPS, 데드 레코닝, 또는 로컬화의 다른 형태에 기초하는 이동 정보를 포함할 수 있다. 다른 사례에서, 센서 데이터는 모바일 디바이스의 제 2 카메라를 사용하여 캡쳐된 모바일 디바이스의 모션을 표현하는 이미지들을 포함할 수 있다. 여전히 다른 사례에서, 센서 데이터는 모바일 디바이스의 깊이 프로세서를 사용하여 결정된 깊이 이미지들의 시퀀스를 포함할 수 있다. 또 다른 사례에서, 센서 데이터는 모바일 디바이스의 광 센서에 의해 제공된 주변 광 측정들을 포함할 수 있다. 추가적인 실시예들에서, 센서 데이터는 모바일 디바이스의 카메라에 의해 제공된 컬러 데이터를 포함할 수 있다. 예컨대, 일부 실시예들에서, 제 1 센서 및 제 2 센서 둘 모두가 전부 카메라 유닛들일 수 있다. 추가적인 실시예들에서, 카메라 센서는 제 1 센서 및 제 2 센서 둘 모두로서 기능할 수 있다.
[0069] 센서 데이터는 이미지 데이터의 이미지가 캡쳐되는 것과 동시에, 이미지가 캡쳐되기 직전에 또는 직후에, 이미지 캡쳐들이 발생하고 있는 동안에 계속해서, 또는 상이한 타이밍으로 캡쳐될 수 있다. 하나의 특정 예에서, 센서 데이터는 제 1 이미지가 캡쳐될 때 캡쳐될 수 있고, 제 2 이미지가 캡쳐될 때까지, 데이터가 센서로부터 계속해서 캡쳐될 수 있다. 다른 실시예에서, 센서 데이터는 각각의 이미지 캡쳐와 동시에 캡쳐될 수 있다.
[0070] 블록(606)에서, 방법(600)은, 이미지 데이터에 기초하여, 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 단계를 포함한다. 다양한 실시예들에서, 블록(606)은 로컬로 또는 원격 컴퓨팅 디바이스에 의해 수행될 수 있다. 블록(606)이 로컬로 수행되는 실시예들에서, 모바일 디바이스는 오브젝트 데이터베이스를 가질 수 있다. 모바일은 오브젝트 식별을 결정하기 위해 데이터베이스의 오브젝트들과 타겟 오브젝트를 표현하는 데이터를 비교할 수 있다. 예컨대, 이미지는, 어떤 오브젝트들이 이미지에 존재하는지를 결정하기 위해 분석될 수 있다. 일단 오브젝트들이 식별되면, 타겟 오브젝트가 다양한 기준들에 기초하여 식별될 수 있다. 일부 실시예들에서, 타겟 오브젝트는 이미지 내에서의 오브젝트의 배치에 의해 식별된다. 다른 실시예들에서, 복수의 오브젝트들이 분석될 수 있으며, 임의의 인식된 오브젝트가 식별되는 타겟 오브젝트일 수 있다.
[0071] 다른 실시예들에서, 모바일 디바이스는 이미지 데이터의 적어도 서브세트를 원격 서버에 통신할 수 있다. 서버는 이미지 데이터에 기초하여 타겟 오브젝트를 식별할 수 있다. 이후, 서버는 응답으로, 오브젝트 식별을 모바일 디바이스에 통신할 수 있다. 또 추가적인 실시예들에서, 모바일 디바이스는 타겟 오브젝트를 스스로 식별하려고 시도할 수 있으며, 이 모바일 디바이스가 타겟 오브젝트를 식별할 수 없으면, 이 모바일 디바이스는 식별을 수행하기 위해 이미지 데이터의 적어도 부분을 서버에 통신할 수 있다.
[0072] 블록(608)에서, 방법(600)은 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙(retrieving)하는 단계를 포함한다. 오브젝트 데이터는 오브젝트 식별의 삼차원 표현에 관련된 데이터를 포함할 수 있다. 일단 오브젝트가 식별되었다면, 모바일은 식별된 오브젝트에 관한 오브젝트 데이터를 리트리빙할 수 있다. 다양한 실시예들에서, 블록(608)의 리트리빙은, 모바일 디바이스의 메모리로부터 로컬로 리트리빙하여 또는 원격 컴퓨팅 디바이스에 질의함으로써 수행될 수 있다. 일부 실시예들에서, 모바일 디바이스는 먼저 오브젝트 데이터에 대해 로컬 디바이스 메모리를 체크할 수 있으며, 로컬 메모리가 오브젝트 데이터를 갖지 않으면, 모바일 디바이스는 응답으로 원격 컴퓨팅 디바이스에 질의할 수 있다.
[0073] 오브젝트 데이터는 도 5에 대하여 논의된 것과 유사한 식별된 오브젝트의 삼차원 표현에 관련된 데이터를 포함할 수 있다. 예컨대, 오브젝트 데이터는 이미지 데이터의 일부로서 캡쳐된 오브젝트의 3D 모델일 수 있다. 오브젝트 데이터는 또한, 식별된 오브젝트에 관한 컬러 정보를 포함할 수 있다. 오브젝트 데이터는 다양한 방식들로 획득될 수 있다. 예컨대, 데이터베이스는 오브젝트에 대한 세부 측정 및 사이즈 데이터를 포함할 수 있다. 오브젝트가 식별될 때, 데이터베이스는 오브젝트 데이터를 리트리빙하도록 질의받을 수 있다.
[0074] 일 예에서, 서버는 오브젝트 데이터의 라이브러리를 포함할 수 있다. 서버는 주기적으로 오브젝트 데이터를 모바일 디바이스에 통신할 수 있다. 모바일에 통신되는 오브젝트 데이터는 모바일 디바이스에 의해 이미지에서 캡쳐될 것 같은 오브젝트들에 기초할 수 있다. 서버는 다양한 방식들로 이미지에서 캡쳐될 것 같은 오브젝트들을 결정할 수 있다. 일 예에서, 흔한 가구 오브젝트들에 대한 오브젝트 데이터가 모바일 디바이스에 통신될 수 있다. 다른 예에서, 모바일 디바이스의 소유자가 소유하는 것으로 알고 있는 오브젝트들에 대한 오브젝트 데이터가 모바일 디바이스에 통신될 수 있습니다. 또 다른 예에서, 오브젝트 데이터는 상이한 모바일 디바이스에 의해 캡쳐된 이미지에 기초하여 모바일 디바이스에 통신될 수 있다. 이 예에서, 상이한 모바일 디바이스가 이미지를 캡쳐하거나 또는 오브젝트들을 식별하며, 이미지 또는 오브젝트 정보를 서버에 통신할 수 있다. 서버는, 다른 모바일 디바이스가 동일한 오브젝트들을 만나고 오브젝트 데이터를 모바일 디바이스에 통신할 것 같다고 결정할 수 있다.
[0075] 블록(610)에서, 방법(600)은 오브젝트 데이터 및 이미지 데이터에 기초하여 예측 센서 값을 결정하는 단계를 포함한다. 오브젝트 데이터가 오브젝트의 삼차원 표현을 포함하기 때문에, 오브젝트 데이터는 교정을 위한 레퍼런스로서 기능할 수 있다. 예컨대, 예측 센서 값은, 이미지 데이터에서 타겟 오브젝트를 표현하는 데이터와 오브젝트 데이터를 비교함으로써 결정될 수 있다. 예측 값을 결정하기 위해, 이미지 데이터가 오브젝트 데이터와 함께 분석되어, 센서가 정확하게 동작하고 있다면 이 센서가 무엇을 출력해야 하는지가 예측된다.
[0076] 일 실시예에서, 이미지 데이터의 제 1 이미지에서 타겟 오브젝트의 사이즈, 형상, 및 포지션이 오브젝트 데이터와 비교될 수 있다. 이 비교에 기초하여, 모바일 디바이스에 관련된 타겟 오브젝트의 거리, 각도, 배향, 컬러, 또는 다른 속성들이 계산될 수 있다. 비교는 이미지 데이터의 제 2 이미지에 기초하여 반복될 수 있다. 따라서, 레퍼런스로서 작용하는 오브젝트 데이터에 기초하는 두 개의 비교들은, 제 1 이미지가 캡쳐된 포지션과 제 2 이미지가 캡쳐된 포지션 사이에서의 모바일 디바이스의 이동에 대해 예측 센서 값들이 계산되도록 한다.
[0077] 부가적으로, 일부 실시예들에서, 오브젝트 데이터는 컬러 정보를 포함할 수 있다. 이들 실시예들에서, 컬러 정보는 교정을 위한 레퍼런스로서 작용할 수 있다. 부가적으로, 광 레벨 센서는 컬러 정보 실시예들에서 제 2 센서로서 작용할 수 있다. 따라서, 이들 실시예들에서, 센서 조절은 모바일 디바이스의 카메라의 컬러 출력을 정확하게 조절할 수 있다.
[0078] 블록(612)에서, 방법(600)은 수신 센서 데이터와 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하는 단계를 포함한다. 센서 교정 값은 모바일 디바이스에 의해, 원격 서버에 의해, 또는 둘 모두의 결합에 의해 계산될 수 있다.
[0079] 이후, 예측 센서 값들이 측정 센서 값들과 비교되어, 센서 교정 값의 오프셋이 결정될 수 있다. 이 오프셋은 수학적으로 정확한 값들로 측정 값들 사이의 차이를 표현하며, 교정 값일 수 있다. 예컨대, 두 개의 캡쳐된 이미지들의 분석에 기초하여, 모바일 디바이스가 두 개의 사진들 사이에서 오른쪽으로 8 인치 이동했음이 결정될 수 있다. 센서 데이터는 디바이스가 단지 6 인치 이동했음을 표시할 수 있다. 따라서, 두 개의 인치들의 차이가, 센서 오프셋을 계산하기 위해 사용될 수 있다. 일부 실시예들에서, (2 인치가 센서에 의해 보고된 6 인치의 33 %이므로) 센서 오프셋은 센서 데이터의 33 % 증가인 것으로 계산될 수 있다 .
[0080] 다른 실시예들에서, 교정은 모바일 디바이스의 이미징 엘리먼트에 대해 수행될 수 있다. 이 실시예에서, 오브젝트로부터의 컬러 정보는 타겟 오브젝트에 대해 캡쳐된 컬러와 비교될 수 있다. 이 교정은 이미지 데이터에서 단일한 캡쳐된 이미지만으로 수행될 수 있다. 그러나, 일부 예들에서, 타겟 오브젝트는 다양한 조명 조건들에서 캡쳐될 수 있다. 교정은 상이한 조명 조건들을 이용하여 다양한 이미지들에 걸쳐 수행될 수 있다. 예컨대, 이미지는 화이트의 특정 음영을 갖는 의자를 포함할 수 있다. 그러나, 오브젝트 데이터는 의자가 실제로 화이트의 상이한 음영임을 표시할 수 있다. 센서 오프셋은, 의자의 화이트 컬러를 정확하게 이미징하도록 결정될 수 있다.
[0081] 또 다른 실시예에서, 교정은 제 2 모바일 디바이스에 의해 캡쳐된 단일 이미지에 기초하여 수행될 수 있으며, 여기서 제 1 모바일 디바이스는 타겟 디바이스의 이미지를 캡쳐했다. 제 1 모바일 디바이스는 타겟 오브젝트의 이미지를 캡쳐하며, 이미지를 캡쳐할 때 연관된 센서 데이터를 또한 저장한다. 이 이미지 및 센서 데이터는 서버 또는 다른 모바일 디바이스에 통신될 수 있다. 제 2 모바일 디바이스는 또한, 타겟 오브젝트의 이미지 및 연관된 센서 데이터를 캡쳐할 수 있다. 이후, 두 개의 상이한 디바이스들로부터 캡쳐된 이미지들과 두 개의 상이한 디바이스들로부터 캡쳐된 센서 데이터 사이에 비교가 이루어질 수 있다. 이 비교는 여전히 제 2 디바이스에 대한 교정 값을 계산하기 위해 사용될 수 있는데, 그 이유는 두 개의 이미지들 사이의 포지션 정보가 센서 정보에 기초하여 계산될 수 있기 때문이다. 예컨대, 교정된 제 1 디바이스는 알려진 포지션으로부터 의자의 사진을 찍을 수 있다. 제 2 디바이스는 교정되지 않을 수 있고, 이 제 2 디바이스는 또한 동일한 의자의 사진을 찍을 수 있다. 두 개의 이미지들의 계산에 기초하여, 제 2 디바이스의 센서들에 대한 이동, GPS 위치, 또는 다른 파라미터들이 계산될 수 있다.
[0082] 추가적인 예의 경우, 이미지 데이터가 이차원 이미지들의 시퀀스를 포함하는 예에서, 모바일 디바이스의 모션의 추정은 모바일 디바이스의 회전 모션의 추정치를 포함할 수 있다. 모바일 디바이스의 회전 모션의 그러한 추정치는 센서 데이터에 기초하는 계산들에 의해 도출될 수 있다. 모바일의 회전 모션의 추정치는 레퍼런스 이동과 비교될 수 있으며, 여기서 레퍼런스 이동은, 이미지들에서 타겟 오브젝트를 식별하고 이미지들의 시퀀스 전체에 걸쳐 각각의 이미지 내에서 타겟 오브젝트의 위치의 이동을 추적하는 것에 기초한다. 예컨대, 캡쳐된 이미지들 중 두 개의 이미지들의 분석에 기초하여, 모바일 디바이스가 두 개의 사진들 사이에서 90도 회전했음이 결정될 수 있다. 센서 데이터는 디바이스가 단지 85도 이동했음을 표시할 수 있다. 따라서, 5도의 차이가, 센서 오프셋을 계산하기 위해 사용될 수 있다.
[0083] 다른 예에서, 모바일 디바이스의 레퍼런스 모션은 모바일 디바이스의 궤적을 포함할 수 있다. 예컨대, 모바일 디바이스가 알려진 타겟 오브젝트의 앞에서 이동되면, 시간에 따른 모바일 디바이스의 궤적은 알려진 오브젝트 또는 타겟의 관찰들에 기초하여 결정될 수 있다. 궤적은 알려진 오브젝트 또는 타겟의 레퍼런스의 프레임 내에서 시간에 따른 모바일 디바이스의 포지션 및 배향 추정치들 중 하나 또는 이들의 임의의 결합을 포함할 수 있다. 레퍼런스 궤적이 센서 값들에 기초하여 결정된 궤적과 비교되어, 센서 교정 값이 결정될 수 있다. 궤적은, 디바이스 이동에 대해 설명된 것과 유사하게 센서 오프셋들을 계산하기 위해 사용될 수 있다.
[0084] 블록(614)에서, 방법(600)은 센서 교정 값에 기초하여 제 2 센서를 조절하는 단계를 포함한다. 제 2 센서는 센서 교정 값에 기초하여 조절될 수 있다. 센서의 타입 또는 센서 오프셋에 따라, 다양한 상이한 방식들로 조절이 이루어질 수 있다. 일부 실시예들에서, 센서는 고정된 오프셋 조절을 가질 수 있다. 다른 실시예들에서, 센서는 센서의 값에 기초하여 조절되는 오프셋을 가질 수 있다. 또 추가적인 실시예들에서, 센서 교정 값은 센서 값과 예상 값 사이의 수학적 관계에 기초하여 결정될 수 있다. 일부 실시예들에서, 블록들(602-612)은 센서 교정 값을 생성하기 위해 여러 번 반복될 수 있다. 부가적으로, 블록들(602-612)은, 조절된 제 2 센서 값이 이미지들의 분석에 기초하여 계산된 것과 유사한 센서 값을 제공하는 것을 확인하기 위해 반복될 수 있다.
[0085] 이제 도 7a 및 도 7b를 참조하면, 본원에 개시된 방법들의 상이한 실시예들에 대한 흐름 다이어그램들이 개시된다. 도 7a는 방법(600)의 실시예를 수행하는 단일 모바일 디바이스에 대한 흐름 다이어그램을 개시한다. 도 7b는 방법(600)의 실시예를 함께 수행하는 두 개의 모바일 디바이스들에 대한 흐름 다이어그램을 개시한다.
[0086] 도 7a에서, 센서들(702)의 그룹은 프로세서(704)에 커플링된다. 센서들 및 프로세서 둘 모두는 모바일 디바이스에 위치될 수 있다. 서버(706)는 모바일 디바이스로부터 원격에 위치될 수 있지만, 이 모바일 디바이스와 통신할 수 있다. 센서들(702)의 그룹은 프로세서(704)에 대한 통신을 위한 데이터를 생성할 수 있다. 프로세서(704)는 센서들(702)의 그룹으로부터 센서 데이터 및 이미지 데이터 둘 모두를 수신할 수 있다.
[0087] 센서들(702)의 그룹으로부터 수신된 데이터에 기초하여, 프로세서는 타겟 오브젝트에 대한 오브젝트 식별을 결정할 수 있다. 이후, 타겟 오브젝트에 대한 오브젝트 식별은 센서들(702)의 그룹으로부터의 이미지 데이터에 기초하여 결정될 수 있다. 일부 실시예들(그려지지 않음)에서, 프로세서(704)는 이후 타겟 오브젝트에 대한 오브젝트 식별을 결정할 수 없을 수 있다. 이 경우, 오브젝트 식별을 결정하기 위해, 센서들의 그룹으로부터의 이미지 데이터가 서버(706)에 통신될 수 있다.
[0088] 일단 오브젝트 식별이 프로세서(704)에 의해 결정되면, 프로세서(704)는 오브젝트 데이터에 대한 요청을 서버(706)에 통신할 수 있다. 프로세서(704)는 응답으로 서버(706)로부터 오브젝트 데이터를 수신할 수 있다. 서버(706)가 오브젝트 식별을 결정하는 실시예들에서, 프로세서가 오브젝트 데이터에 대한 요청을 서버(706)에 통신하는 것이 아니라, 서버(706)가 오브젝트 식별을 결정한 이후에 이 프로세서가 서버(706)로부터 오브젝트 데이터를 수신할 수 있다.
[0089] 프로세서(704)가 서버(706)로부터 오브젝트 데이터를 수신하는 것에 대한 응답으로, 프로세서(704)는 센서 교정을 결정할 수 있다. 프로세서(704)는 블록들(610 및 612)을 비롯해 위에서 도 6에 관련된 논의와 유사한 방식으로 센서 교정을 결정할 수 있다. 유사하게, 프로세서(704)는 위에서 도 6에 대하여 앞서 논의된 바와 같이 센서 교정에 기초하여 센서 데이터를 조절할 수있다.
[0090] 도 7b에서, 디바이스 1(710)은 서버(706)와 통신한다. 서버(706)는 또한 디바이스 2(720)와 통신한다. 도 7b에 도시된 실시예에서, 두 개의 디바이스들은 제 2 디바이스를 그것의 센서 교정을 수행할 때 보조하기 위해 사용될 수 있다. 디바이스 1(710)은 영역의, 이를테면, 사무실 내부의 이미지 데이터를 캡쳐할 수 있다. 디바이스 1(710)은 응답으로 이미지 데이터를 서버(706)에 송신할 수 있다. 일단 서버(706)가 디바이스 1(710)로부터 이미지 데이터를 수신했다면, 이 서버(706)는 이미지에서 타겟 오브젝트들을 결정할 것이다. 서버(706)는 또한, 결정된 오브젝트들에 대한 오브젝트 데이터를 디바이스 2(720)에 송신할 것이다. 따라서, 디바이스 2(720)는 어떤 오브젝트들이 이미지에 존재하는지를 그것이 언제나 결정하기 이전에 오브젝트 데이터의 로컬 복사본들을 저장할 수 있다. 부가적으로, 디바이스 2(720)가 오브젝트 데이터의 로컬 복사본들을 저장한 이후에, 이 디바이스 2(720)는 임의의 외부 네트워크 연결들을 사용하지 않고 방법(600)을 수행할 수 있다.
[0091] 이후, 디바이스 2(720)는 디바이스 2의 프로세서에 커플링되는 센서들의 그룹으로부터의 이미지 및 센서 데이터를 캡쳐할 수 있다. 캡쳐된 이미지는 디바이스 1(710)에 의해 캡쳐된 것과 동일한 사무실의 이미지일 수 있다. 센서들 및 프로세서 둘 모두는 모바일 디바이스에 위치될 수 있다. 센서들의 그룹으로부터 수신된 데이터에 기초하여, 디바이스 2(720)의 프로세서는 타겟 오브젝트에 대한 오브젝트 식별을 결정할 수 있다. 이후, 타겟 오브젝트에 대한 오브젝트 식별은 센서들의 그룹으로부터의 이미지 데이터에 기초하여 결정될 수 있다.
[0092] 일단 오브젝트 식별이 프로세서에 의해 결정되면, 프로세서는 서버(706)로부터 디바이스 2(720)로 제공되었던 오브젝트 데이터를 룩업할 수 있다. 프로세서가 오브젝트 데이터를 룩업하는 것에 대한 응답으로, 프로세서는 센서 교정을 결정할 수 있다. 프로세서는 블록들(610 및 612)을 비롯해 위에서 도 6에 관련된 논의와 유사한 방식으로 센서 교정을 결정할 수 있다. 유사하게, 프로세서는 위에서 도 6에 대하여 앞서 논의된 바와 같이 센서 교정에 기초하여 센서 데이터를 조절할 수 있다.
[0093] 일부 실시예들에서, 개시된 방법들은 비-일시적 컴퓨터-판독가능 저장 미디어 상에 머신-판독가능 포맷으로, 또는 다른 비-일시적 미디어 또는 제조 아티클들 상에 인코딩된 컴퓨터 프로그램 명령들로서 구현될 수 있다. 도 8은 본원에 제시된 적어도 일부 실시예들에 따라 배열된 컴퓨팅 디바이스 상에서 컴퓨터 프로세스를 실행하기 위한 컴퓨터 프로그램을 포함하는 예시적 컴퓨터 프로그램 제품(300)의 개념적 부분 뷰를 예시하는 개략이다.
[0094] 일 실시예에서, 예시적 컴퓨터 프로그램 제품(800)은, 신호 베어링 매체(801)를 사용하여 제공된다. 신호 베어링 매체(801)는, 하나 또는 그 초과의 프로세서들에 의해 실행될 때 도 1-도 7b에 대하여 위에서 설명된 기능성 또는 기능성의 부분들을 제공할 수 있는 하나 또는 그 초과의 프로그래밍 명령들(802)을 포함할 수 있다. 일부 예들에서, 신호 베어링 매체(801)는 컴퓨터-판독가능 매체(803), 이를테면, 하드 디스크 드라이브, 콤팩트 디스크(CD;Compact Disc), 디지털 비디오 디스크(DVD;Digital Video Disk), 디지털 테이프, 메모리 등을 포함할 수 있지만, 이에 제한되지 않는다. 일부 구현들에서, 신호 베어링 매체(801)는 컴퓨터 레코딩가능 매체(804), 이를테면, 메모리, 판독/기록(R/W) CD들, R/W DVD들 등을 포함할 수 있지만, 이에 제한되지 않는다. 일부 구현들에서, 신호 베어링 매체(801)는 통신 매체(806), 이를테면, 디지털 및/또는 아날로그 통신 매체(예컨대, 광섬유 케이블, 도파관, 유선 통신 링크, 무선 통신 링크 등)를 포함할 수 있지만, 이에 제한되지 않는다. 따라서, 예컨대, 신호 베어링 매체(801)는 통신 매체(806)의 무선 형태(예컨대, IEEE 802.11 표준 또는 다른 송신 프로토콜에 따르는 무선 통신 매체)에 의해 전달될 수 있다.
[0095] 하나 또는 그 초과의 프로그래밍 명령들(802)은 예컨대, 컴퓨터 실행가능 및/또는 논리 구현 명령들일 수 있다. 일부 예들에서, 컴퓨팅 디바이스, 이를테면, 도 1의 컴퓨팅 디바이스(100)는 컴퓨터-판독가능 매체(803), 컴퓨터 레코딩가능 매체(804), 및/또는 통신 매체(806) 중 하나 또는 그 초과에 의해 컴퓨팅 디바이스(100)에 전달되는 프로그래밍 명령들(802)에 대한 응답으로 다양한 동작들, 기능들, 또는 액션들을 제공하도록 구성될 수 있다.
[0096] 본원에 설명된 어레인지먼트들이 단지 예의 목적들을 위한 것임이 이해되어야 한다. 따라서, 기술분야의 당업자들은, 다른 어레인지먼트들 및 다른 엘리먼트들(예컨대, 머신들, 인터페이스들, 기능들, 오더들, 및 기능들의 그룹핑들 등)이 대신 사용될 수 있으며, 일부 엘리먼트들이 원하는 결과들에 따라 전적으로 생략될 수 있음을 인식할 것이다. 추가로, 설명되는 엘리먼트들 중 많은 엘리먼트들이 임의의 적절한 결합 및 위치로, 이산의 또는 분산된 컴포넌트들로서 또는 다른 컴포넌트들과 함께 구현될 수 있는 기능적 엔티티들이다.
[0097] 다양한 양상들 및 실시예들이 본원에 개시되었지만, 다른 양상들 및 실시예들이 기술분야의 당업자들에게 명백할 것이다. 본원에 개시된 다양한 양상들 및 실시예들은 예시의 목적들을 위한 것이고, 제한하는 것으로의도되지 않으며, 진정한 범위는 하기의 청구항들이 권리를 부여하는 등가물들의 전체 범위와 함께 이러한 청구항들에 의해 표시된다. 본원에 사용된 용어가 특정 실시예들을 설명하는 목적만을 위한 것이며 제한하는 것으로 의도되지 않음이 또한 이해되어야 한다.

Claims (20)

  1. 방법으로서,
    모바일 디바이스의 복수의 센서들 중 제 1 센서로부터 이미지 데이터를 수신하는 단계 ―상기 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함함―;
    상기 복수의 센서들 중 제 2 센서를 사용하여 결정된 센서 데이터를 수신하는 단계;
    상기 이미지 데이터에 기초하여, 상기 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 단계;
    상기 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙하는 단계 ―상기 오브젝트 데이터는 상기 오브젝트 식별의 적어도 하나의 뷰(view)의 각도를 포함하는 삼차원 표현에 관련된 데이터를 포함함―;
    상기 이미지 데이터를 출력하는 상기 제 1 센서에 대응하여 상기 제 2 센서로부터 출력될 예측 센서 값을 결정하기 위하여, 상기 이미지 데이터에서 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터를 비교하는 단계;
    상기 수신된 센서 데이터와 상기 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하는 단계; 및
    상기 센서 교정 값에 기초하여 상기 제 2 센서를 조절하는 단계
    를 포함하고,
    상기 이미지 데이터는 이차원 이미지들의 시퀀스를 포함하고;
    상기 시퀀스의 제 1 이미지 및 상기 시퀀스의 제 2 이미지는 둘 모두가 상기 타겟 오브젝트를 표현하는 데이터를 포함하고;
    상기 제 1 이미지의 이미지 캡쳐 위치는 상기 제 2 이미지의 이미지 캡쳐 위치와 상이하며; 그리고
    상기 수신된 센서 데이터는 상기 제 1 이미지의 이미지 캡쳐 위치와 상기 제 2 이미지의 이미지 캡쳐 위치 사이의 이동에 관련된 데이터를 포함하는,
    방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 오브젝트 데이터는 상기 오브젝트 식별과 연관된 컬러 데이터를 포함하고, 상기 센서 교정 값은 상기 오브젝트 식별과 연관된 컬러 데이터와 상기 타겟 오브젝트를 표현하는 데이터의 컬러 데이터 사이의 차이에 기초하는,
    방법.
  4. 제 1 항에 있어서,
    상기 모바일 디바이스의 프로세서는 상기 오브젝트 식별을 결정하는 단계, 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터를 비교하는 단계, 및 센서 교정 값을 결정하는 단계를 수행하는,
    방법.
  5. 제 1 항에 있어서,
    상기 오브젝트 식별을 결정하는 단계는,
    상기 이미지 데이터의 적어도 서브세트를 원격 서버에 통신하는 단계; 및
    상기 원격 서버로부터 상기 오브젝트 식별을 표시하는 데이터를 수신하는 단계
    를 포함하는,
    방법.
  6. 제 1 항에 있어서,
    상기 오브젝트 데이터는 제 2 모바일 디바이스로부터 서버로 통신되는 이미지 데이터에 기초하여 리트리빙되는,
    방법.
  7. 제 1 항에 있어서,
    상기 이미지 데이터에 기초하여, 제 2 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 단계 ―상기 이미지 데이터는 상기 제 2 타겟 오브젝트를 표현하는 데이터를 포함함―;
    상기 오브젝트 식별에 기초하여 제 2 오브젝트 데이터를 리트리빙하는 단계; 및
    상기 오브젝트 데이터, 상기 제 2 오브젝트 데이터, 및 상기 이미지 데이터에 기초하여 상기 예측 센서 값을 결정하는 단계
    를 더 포함하고,
    상기 예측 센서 값은,
    (i) 상기 이미지 데이터에서 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터, 및
    (ⅱ) 상기 이미지 데이터에서 상기 제 2 타겟 오브젝트를 표현하는 데이터와 상기 제 2 오브젝트 데이터
    둘 모두를 비교함으로써 결정되는,
    방법.
  8. 모바일 디바이스로서,
    이미지 데이터를 캡쳐하도록 구성된 적어도 하나의 카메라;
    적어도 하나의 센서; 및
    프로세서
    를 포함하고, 상기 프로세서는,
    상기 적어도 하나의 카메라로부터 이미지 데이터를 수신하고 ―상기 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함함―;
    상기 적어도 하나의 센서를 사용하여 결정된 센서 데이터를 수신하고;
    상기 이미지 데이터에 기초하여 상기 타겟 오브젝트에 대한 오브젝트 식별을 결정하고;
    상기 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙하고 ―상기 오브젝트 데이터는 상기 오브젝트 식별의 적어도 하나의 뷰의 각도를 포함하는 삼차원 표현에 관련된 데이터를 포함함―;
    상기 이미지 데이터를 출력하는 상기 적어도 하나의 카메라에 대응하여 상기 적어도 하나의 센서로부터 출력될 예측 센서 값을 결정하기 위하여, 상기 이미지 데이터에서 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터를 비교하고;
    상기 수신된 센서 데이터와 상기 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하고; 그리고
    상기 센서 교정 값에 기초하여 상기 적어도 하나의 센서를 조절하도록
    구성되고,
    상기 이미지 데이터는 이차원 이미지들의 시퀀스를 포함하고;
    상기 시퀀스의 제 1 이미지 및 상기 시퀀스의 제 2 이미지는 둘 모두가 상기 타겟 오브젝트를 표현하는 데이터를 포함하고;
    상기 제 1 이미지의 이미지 캡쳐 위치는 상기 제 2 이미지의 이미지 캡쳐 위치와 상이하며; 그리고
    상기 수신된 센서 데이터는 상기 제 1 이미지의 이미지 캡쳐 위치와 상기 제 2 이미지의 이미지 캡쳐 위치 사이의 이동에 관련된 데이터를 포함하는,
    모바일 디바이스.
  9. 삭제
  10. 제 8 항에 있어서,
    상기 오브젝트 데이터는 상기 오브젝트 식별과 연관된 컬러 데이터를 포함하고, 상기 센서 교정 값은 상기 오브젝트 식별과 연관된 컬러 데이터와 상기 타겟 오브젝트를 표현하는 데이터의 컬러 데이터 사이의 차이에 기초하는,
    모바일 디바이스.
  11. 제 8 항에 있어서,
    상기 오브젝트 식별을 결정하는 것은, 상기 프로세서가 추가로,
    상기 이미지 데이터의 적어도 서브세트를 원격 서버에 통신하고; 그리고
    상기 원격 서버로부터 오브젝트 식별을 표시하는 데이터를 수신하도록
    구성되는 것을 포함하는,
    모바일 디바이스.
  12. 제 8 항에 있어서,
    상기 오브젝트 데이터는 제 2 모바일 디바이스로부터 서버로 통신되는 이미지 데이터에 기초하여 리트리빙되는,
    모바일 디바이스.
  13. 제 8 항에 있어서,
    상기 프로세서가 추가로,
    상기 이미지 데이터에 기초하여, 제 2 타겟 오브젝트에 대한 오브젝트 식별을 결정하고 ―상기 이미지 데이터는 상기 제 2 타겟 오브젝트를 표현하는 데이터를 포함함―;
    상기 오브젝트 식별에 기초하여 제 2 오브젝트 데이터를 리트리빙하고; 그리고
    상기 오브젝트 데이터, 상기 제 2 오브젝트 데이터, 및 상기 이미지 데이터에 기초하여 상기 예측 센서 값을 결정하도록 구성되는 것
    을 더 포함하고, 상기 예측 센서 값은,
    (i) 상기 이미지 데이터에서 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터, 및
    (ⅱ) 상기 이미지 데이터에서 상기 제 2 타겟 오브젝트를 표현하는 데이터와 상기 제 2 오브젝트 데이터
    둘 모두를 비교함으로써 결정되는,
    모바일 디바이스.
  14. 명령들을 저장하고 있는 컴퓨터-판독가능 저장 매체로서,
    상기 명령들은, 시스템의 프로세서에 의해 실행될 때, 상기 시스템으로 하여금,
    모바일 디바이스의 복수의 센서들 중 제 1 센서로부터 이미지 데이터를 수신하는 동작 ―상기 이미지 데이터는 타겟 오브젝트를 표현하는 데이터를 포함함―;
    상기 복수의 센서들 중 제 2 센서를 사용하여 결정된 센서 데이터를 수신하는 동작;
    상기 이미지 데이터에 기초하여, 상기 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 동작;
    상기 오브젝트 식별에 기초하여 오브젝트 데이터를 리트리빙하는 동작 ― 상기 오브젝트 데이터는 상기 오브젝트 식별의 적어도 하나의 뷰의 각도를 포함하는 삼차원 표현에 관련된 데이터를 포함함―;
    상기 이미지 데이터를 출력하는 상기 제 1 센서에 대응하여 상기 제 2 센서로부터 출력될 예측 센서 값을 결정하기 위하여, 상기 이미지 데이터에서 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터를 비교하는 동작;
    상기 수신된 센서 데이터와 상기 예측 센서 값 사이의 차이에 기초하여 센서 교정 값을 결정하는 동작; 및
    상기 센서 교정 값에 기초하여 상기 제 2 센서를 조절하는 동작
    을 포함하는 동작들을 수행하게 하고,
    상기 이미지 데이터는 이차원 이미지들의 시퀀스를 포함하고;
    상기 시퀀스의 제 1 이미지 및 상기 시퀀스의 제 2 이미지는 둘 모두가 상기 타겟 오브젝트를 표현하는 데이터를 포함하고;
    상기 제 1 이미지의 이미지 캡쳐 위치는 상기 제 2 이미지의 이미지 캡쳐 위치와 상이하며; 그리고
    상기 수신된 센서 데이터는 상기 제 1 이미지의 이미지 캡쳐 위치와 상기 제 2 이미지의 이미지 캡쳐 위치 사이의 이동에 관련된 데이터를 포함하는,
    컴퓨터-판독가능 저장 매체.
  15. 삭제
  16. 제 14 항에 있어서,
    상기 오브젝트 데이터는 상기 오브젝트 식별과 연관된 컬러 데이터를 포함하고, 상기 센서 교정 값은 상기 오브젝트 식별과 연관된 컬러 데이터와 상기 타겟 오브젝트를 표현하는 데이터의 컬러 데이터 사이의 차이에 기초하는,
    컴퓨터-판독가능 저장 매체.
  17. 제 14 항에 있어서,
    상기 모바일 디바이스의 프로세서는 상기 오브젝트 식별을 결정하는 것, 상기 이미지 데이터에서 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터를 비교하는 것, 및 센서 교정 값을 결정하는 것을 수행하는,
    컴퓨터-판독가능 저장 매체.
  18. 제 14 항에 있어서,
    상기 오브젝트 식별을 결정하는 것은,
    상기 이미지 데이터의 적어도 서브세트를 원격 서버에 통신하는 것; 및
    상기 원격 서버로부터 오브젝트 식별을 표시하는 데이터를 수신하는 것
    을 포함하는,
    컴퓨터-판독가능 저장 매체.
  19. 제 14 항에 있어서,
    상기 오브젝트 데이터는 제 2 모바일 디바이스로부터 서버로 통신되는 이미지 데이터에 기초하여 리트리빙되는,
    컴퓨터-판독가능 저장 매체.
  20. 제 14 항에 있어서,
    상기 이미지 데이터에 기초하여, 제 2 타겟 오브젝트에 대한 오브젝트 식별을 결정하는 것 ―상기 이미지 데이터는 상기 제 2 타겟 오브젝트를 표현하는 데이터를 포함함―;
    상기 오브젝트 식별에 기초하여 제 2 오브젝트 데이터를 리트리빙하는 것; 및
    상기 오브젝트 데이터, 상기 제 2 오브젝트 데이터, 및 상기 이미지 데이터에 기초하여 상기 예측 센서 값을 결정하는 것을 더 포함하고, 상기 예측 센서 값은,
    (i) 상기 이미지 데이터에서 상기 타겟 오브젝트를 표현하는 데이터와 상기 오브젝트 데이터, 및
    (ⅱ) 상기 이미지 데이터에서 상기 제 2 타겟 오브젝트를 표현하는 데이터와 상기 제 2 오브젝트 데이터
    둘 모두를 비교함으로써 결정되는,
    컴퓨터-판독가능 저장 매체.
KR1020167034660A 2014-06-12 2015-05-12 인식된 오브젝트들을 사용하여 센서들을 교정하기 위한 방법들 및 시스템들 KR101874926B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/302,926 US20150362579A1 (en) 2014-06-12 2014-06-12 Methods and Systems for Calibrating Sensors Using Recognized Objects
US14/302,926 2014-06-12
PCT/US2015/030307 WO2015191204A1 (en) 2014-06-12 2015-05-12 Methods and systems for calibrating sensors using recognized objects

Publications (2)

Publication Number Publication Date
KR20160149311A KR20160149311A (ko) 2016-12-27
KR101874926B1 true KR101874926B1 (ko) 2018-07-05

Family

ID=54834080

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167034660A KR101874926B1 (ko) 2014-06-12 2015-05-12 인식된 오브젝트들을 사용하여 센서들을 교정하기 위한 방법들 및 시스템들

Country Status (7)

Country Link
US (1) US20150362579A1 (ko)
EP (1) EP3155503A4 (ko)
JP (1) JP6383439B2 (ko)
KR (1) KR101874926B1 (ko)
CN (1) CN106462244A (ko)
AU (1) AU2015275198B2 (ko)
WO (1) WO2015191204A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10187629B2 (en) 2016-04-06 2019-01-22 Facebook, Inc. Camera calibration system
US10012517B2 (en) 2016-08-01 2018-07-03 Infinity Augmented Reality Israel Ltd. Method and system for calibrating components of an inertial measurement unit (IMU) using scene-captured data
US20180276842A1 (en) * 2017-03-27 2018-09-27 Blackberry Limited System and method for image based confirmation
DE102017211038A1 (de) * 2017-06-29 2019-01-03 Robert Bosch Gmbh Verfahren zum Einstellen einer Kamera
US11002820B2 (en) * 2018-07-30 2021-05-11 7hugs Labs SAS System for object tracking in physical space with aligned reference frames
WO2020117675A1 (en) 2018-12-03 2020-06-11 DSi Digital, LLC Data interaction platforms utilizing dynamic relational awareness
CN114152860B (zh) * 2021-11-05 2023-11-10 深圳橙子自动化有限公司 探针校准方法和装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090033926A1 (en) 2004-10-13 2009-02-05 Karsten Haug Device for Calibrating an Image Sensor System in a Motor Vehicle
US20110178708A1 (en) * 2010-01-18 2011-07-21 Qualcomm Incorporated Using object to align and calibrate inertial navigation system
US20130136301A1 (en) * 2011-11-30 2013-05-30 Sony Mobile Communications Ab Method for calibration of a sensor unit and accessory comprising the same
JP2013531223A (ja) 2010-05-07 2013-08-01 クアルコム,インコーポレイテッド 方位センサの較正

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050222801A1 (en) * 2004-04-06 2005-10-06 Thomas Wulff System and method for monitoring a mobile computing product/arrangement
KR100560966B1 (ko) * 2004-10-12 2006-03-15 삼성광주전자 주식회사 로봇 청소기의 자이로 센서 보정방법
KR100761011B1 (ko) * 2006-05-30 2007-09-21 학교법인 인하학원 카메라형 태양센서를 이용한 관성항법시스템의자세보정장치 및 방법
EP1972893A1 (en) * 2007-03-21 2008-09-24 Universiteit Gent System and method for position determination
KR101557678B1 (ko) * 2009-04-22 2015-10-19 삼성전자주식회사 휴대 단말기의 캘리브레이션 방법 및 장치
US8963883B2 (en) * 2011-03-17 2015-02-24 Symbol Technologies, Inc. Touchless interactive display system
KR101207462B1 (ko) * 2011-05-31 2012-12-03 전자부품연구원 영상 정보와 거리-각도 정보를 이용한 센서 보정 시스템
US20150172513A1 (en) * 2013-12-18 2015-06-18 Nokia Corporation Methods And Apparatus For Color Balance Correction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090033926A1 (en) 2004-10-13 2009-02-05 Karsten Haug Device for Calibrating an Image Sensor System in a Motor Vehicle
US20110178708A1 (en) * 2010-01-18 2011-07-21 Qualcomm Incorporated Using object to align and calibrate inertial navigation system
JP2013531223A (ja) 2010-05-07 2013-08-01 クアルコム,インコーポレイテッド 方位センサの較正
US20130136301A1 (en) * 2011-11-30 2013-05-30 Sony Mobile Communications Ab Method for calibration of a sensor unit and accessory comprising the same

Also Published As

Publication number Publication date
JP6383439B2 (ja) 2018-08-29
AU2015275198A1 (en) 2016-10-06
EP3155503A1 (en) 2017-04-19
EP3155503A4 (en) 2017-12-20
AU2015275198B2 (en) 2017-08-03
US20150362579A1 (en) 2015-12-17
JP2017527145A (ja) 2017-09-14
WO2015191204A1 (en) 2015-12-17
CN106462244A (zh) 2017-02-22
KR20160149311A (ko) 2016-12-27

Similar Documents

Publication Publication Date Title
KR101874926B1 (ko) 인식된 오브젝트들을 사용하여 센서들을 교정하기 위한 방법들 및 시스템들
US9596443B2 (en) Methods and systems for providing sensor data and image data to an application processor in a digital image format
US9277361B2 (en) Methods and systems for cross-validating sensor data acquired using sensors of a mobile device
US9631956B2 (en) Methods and systems for calibrating sensors of a computing device
US9303999B2 (en) Methods and systems for determining estimation of motion of a device
KR101722068B1 (ko) 디바이스의 다수의 센서들로부터 수신된 데이터를 동기화시키는 방법들 및 시스템들
US20150193971A1 (en) Methods and Systems for Generating a Map including Sparse and Dense Mapping Information
US9485366B2 (en) Methods and systems for communicating sensor data on a mobile device
US9990547B2 (en) Odometry feature matching
US9752892B2 (en) Methods and systems for acquiring sensor data on a device using multiple acquisition modes
US9424619B2 (en) Methods and systems for detecting frame tears
US9445015B2 (en) Methods and systems for adjusting sensor viewpoint to a virtual viewpoint

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right