KR20130060339A - 클라우드 보조 증강 현실을 위한 적응적 프레임워크 - Google Patents

클라우드 보조 증강 현실을 위한 적응적 프레임워크 Download PDF

Info

Publication number
KR20130060339A
KR20130060339A KR1020137010149A KR20137010149A KR20130060339A KR 20130060339 A KR20130060339 A KR 20130060339A KR 1020137010149 A KR1020137010149 A KR 1020137010149A KR 20137010149 A KR20137010149 A KR 20137010149A KR 20130060339 A KR20130060339 A KR 20130060339A
Authority
KR
South Korea
Prior art keywords
sensor data
captured image
image
server
pose
Prior art date
Application number
KR1020137010149A
Other languages
English (en)
Other versions
KR101548834B1 (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 KR20130060339A publication Critical patent/KR20130060339A/ko
Application granted granted Critical
Publication of KR101548834B1 publication Critical patent/KR101548834B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • 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/10004Still image; Photographic image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

이동 플랫폼은, 레이턴시 민감 동작들이 이동 플랫폼 상에서 수행되는 반면 레이턴시 둔감형이지만 계산 집약적인 동작들이 원격 서버 상에서 수행되는 분배 프로세싱을 사용하여, 이미지 데이터를 포함하는 센서 데이터를 효율적으로 프로세싱한다. 이동 플랫폼은 이미지 데이터와 같은 센서 데이터를 획득하며, 트리거 이벤트가 존재하는지를 판정하여 센서 데이터를 서버에 송신한다. 트리거 이벤트는, 이미지에서, 이전에 획득된 센서 데이터, 에를 들어 장면 변화에 대한 센서 데이터에서의 변화일 수도 있다. 변화가 존재할 때, 센서 데이터는 프로세싱을 위해 서버로 송신될 수도 있다. 서버는 센서 데이터를 프로세싱하고, 이미지 또는 기준 이미지 또는 모델 내의 오브젝트의 식별과 같은 센서 데이터에 관련된 정보를 리턴한다. 그 후, 이동 플랫폼은 식별된 오브젝트를 사용하여 기준 기반 트래킹을 수행할 수도 있다.

Description

클라우드 보조 증강 현실을 위한 적응적 프레임워크{AN ADAPTABLE FRAMEWORK FOR CLOUD ASSISTED AUGMENTED REALITY}
본 출원은, 발명의 명칭이 "An Adaptable Framework For Cloud Assisted Augmented Reality" 이고 2010 년 9 월 20 일에 출원된 미국 특허 가출원 제 61/384,667 호, 및 발명이 명칭이 "An Adaptable Framework For Cloud Assisted Augmented Reality" 이고 2011 년 9 월 19일에 출원된 미국 특허 출원 제 13/235,847 호에 대한 우선권을 주장하며, 이들 2 개의 출원 모두는 본 출원의 양수인에게 양도되고, 참조로서 여기에 포함된다.
증강 현실 시스템은 실세계의 사용자 관점에 가상 오브젝트들을 삽입할 수 있다. 일반적인 AR 시스템에는 많은 콤포넌트들이 존재할 수도 있다. 이들은 다음을 포함한다: 데이터 수집, 데이터 프로세싱, 오브젝트 검출, 오브젝트 트래킹, 등록, 정제 (refinement), 및 렌더링 콤포넌트들. 이들 콤포넌트들은 서로 상호작용하여, 사용자에게 풍요로운 AR 경험을 제공할 수도 있다. 그러나, 일반적인 AR 시스템에서의 검출 및 트래킹에 있어서 여러 개의 콤포넌트들은 계산 집약적 동작들을 이용할 수도 있는데, 이는, 사용자에 대한 AR 경험에 지장을 줄 수 있다.
이동 플랫폼은, 레이턴시 민감 동작들이 이동 플랫폼 상에서 수행되는 반면 레이턴시 둔감형이지만 계산 집약적인 동작들이 원격 서버 상에서 수행되는 분배 프로세싱을 사용하여, 이미지 데이터를 포함하는 센서 데이터를 효율적으로 프로세싱한다. 이동 플랫폼은 이미지 데이터와 같은 센서 데이터를 획득하며, 트리거 이벤트가 존재하는지를 판정하여 센서 데이터를 서버에 송신한다. 트리거 이벤트는, 이미지에서, 이전에 획득된 센서 데이터, 에를 들어 장면 변화에 대한 센서 데이터에서의 변화일 수도 있다. 변화가 존재할 때, 센서 데이터는 프로세싱을 위해 서버로 송신될 수도 있다. 서버는 센서 데이터를 프로세싱하고, 이미지 또는 기준 이미지 또는 모델 내의 오브젝트의 식별과 같은 센서 데이터에 관련된 정보를 리턴한다. 그 후, 이동 플랫폼은 식별된 오브젝트를 사용하여 기준 기반 트래킹을 수행할 수도 있다.
일 구현예에서, 방법은, 이동 플랫폼을 사용하여 센서 데이터를 획득하는 단계; 이전에 획득된 센서 데이터에 대한 센서 데이터의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 단계; 트리거 이벤트가 존재하는 때에 센서 데이터를 서버로 송신하는 단계; 서버로부터 센서 데이터에 관련된 정보를 수신하는 단계를 포함한다. 센서 데이터는 오브젝트의 캡처 이미지, 예컨대 사진 또는 비디오 프레임일 수도 있다.
다른 구현예에서, 이동 플랫폼은 센서 데이터를 획득하도록 구성된 센서 및 무선 송수신기를 포함한다. 센서는, 예컨대 오브젝트의 이미지를 캡처하는 카메라일 수도 있다. 프로세서는 센서 및 무선 송수신기에 커플링되고, 센서를 통해 센서 데이터를 획득하고, 이전에 획득된 센서 데이터에 대한 센서 데이터의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하고, 트리거 이벤트가 존재할 때, 무선 송수신기를 통해 센서 데이터를 외부 프로세서로 송신하고, 무선 송수신기를 통해 외부 프로세서로부터 센서 데이터에 관련된 정보를 수신하도록 구성된다.
다른 구현예에서, 이동 플랫폼은 센서 데이터를 획득하는 수단; 이전에 획득된 센서 데이터에 대해 센서 데이터에서의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 수단; 트리거 이벤트가 존재할 때 센서 데이터를 서버로 송신하는 수단; 및 서버로부터 센서 데이터에 관련된 정보를 수신하는 수단을 포함한다. 센서 데이터를 획득하는 수단은 카메라이고, 센서 데이터는 오브젝트의 캡처 이미지이다.
또 다른 구현예에서, 프로그램 코드를 저장하는 비일시적 컴퓨터 판독가능 매체는, 센서 데이터를 획득하는 프로그램 코드; 이전에 획득된 센서 데이터에 대해 센서 데이터에서의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 프로그램 코드; 트리거 이벤트가 존재할 때 센서 데이터를 서버로 송신하는 프로그램 코드; 및 서버로부터 센서 데이터에 관련된 정보를 수신하는 프로그램 코드를 포함한다.
도 1 은 이동 플랫폼 및 원격 서버를 포함하는 분산 프로세싱용 시스템을 도시한 블록도를 예시한다.
도 2 는 이동 플랫폼에 의해 수행되는 레이턴시 민감 동작들 및 외부 프로세서에 의해 수행되는 레이턴시 둔감 및 계산 집약적 동작들에 따른 분산 프로세싱의 프로세스를 예시한 흐름 차트이다.
도 3 은 서버 보조 AR 용 시스템의 동작 블록도를 예시한다.
도 4 는 포즈가 원격 서버에 의해 제공되는 서버 보조 AR 에 대한 호출 흐름도를 예시한다.
도 5 는 포즈가 원격 서버에 의해 제공되지 않는 서버 보조 AR 에 대한 호출 흐름도를 예시한다.
도 6 은 장면 변경 검출기에 의해 수행되는 방법의 흐름 차트를 예시한다.
도 7 은 최소 트리거 갭의 함수로서 필요한 네트워크 송신을 나타내는 분산 프로세싱 시스템의 성능을 예시한 차트이다.
도 8 및 도 9 는 서버 보조 AR 프로세스를 사용한 안면 인식에 대한 접근법들을 예시한다.
도 10 및 도 11 은 서버 보조 AR 프로세스를 사용하여 시각 검색 (visual search) 에 대한 접근법들을 예시한다.
도 12 및 도 13 은 서버 보조 프로세스를 사용하여 기준 기반 트래킹에 대한 접근법들을 예시한다.
도 14 는 서버 보조 프로세스를 사용한 3D 모델 생성에 대한 접근법을 예시한다.
도 15 는 서버 기반 검출을 사용하여 배분 프로세싱을 할 수 있는 이동 플랫폼의 블록도이다.
여기에서 개시되는 분산 프로세싱 시스템은, 무선 네트워크를 통해서 서버로 또는 클라우드 컴퓨팅 환경에서의 네트워크를 통해서 다른 디바이스로, 프로세싱될 데이터를 제공하는 때를 판정할 수도 있는 디바이스를 포함한다. 디바이스는 또한 데이터 자체를 프로세싱할 수도 있다. 예를 들어, 레이턴시 민감 동작들은 디바이스 상에서 수행되도록 선택될 수도 있고, 레이턴시 둔감 동작들은, 더 효율적인 프로세싱을 위해, 원격으로 수행되도록 선택될 수도 있다. 프로세싱되는 데이터를 서버에 전송하는 때를 판정하기 위한 팩터들은, 특히, 데이터 상에서 수행되고 있는 동작들이 레이턴시 민감/둔감인지의 여부, 필요한 계산량, 디바이스 또는 서버 중 어느 하나에서의 프로세서 속도/가용성, 네트워크 조건들, 또는 서비스 품질을 포함할 수도 있다.
일 실시형태에서, 이동 플랫폼 및 외부 서버를 포함하는 시스템이 증강 현실 (AR) 애플리케이션들에 제공되며, 여기서 레이턴시 민감 동작들은 이동 플랫폼 상에서 수행되지만, 레이턴시 둔감형이지만 계산 집약적인 동작들은, 효율적인 프로세싱을 위해, 예컨대 서버 상에서, 원격으로 수행된다. 그 후, 결과들은 서버에 의해 이동 플랫폼으로 전송될 수도 있다. AR 애플리케이션들을 위한 분산 프로세싱을 사용하면, 최종 사용자는 AR 경험을 끊임없이 즐길 수 있다.
여기에서 사용되는 바와 같이, 이동 플랫폼은, 셀룰러 또는 다른 무선 통신 디바이스, 개인 통신 시스템 (PCS) 디바이스, 개인 내비게이션 디바이스 (PND), 개인 정보 관리자 (PIM), 개인 디지털 보조기 (PDA), 또는 다른 적합한 이동 디바이스와 같은 임의의 포터블 전자 디바이스를 지칭한다. 이동 플랫폼은, 내비게이션 포지셔닝 신호들과 같은 무선 통신 및/또는 내비게이션 신호들을 수신할 수도 있다. 용어 "이동 플랫폼" 은 또한, 예컨대 근거리 무선 방식, 적외선, 유선 커넥션, 또는 위성 신호 수신, 보조 데이터 수신, 및/또는 포지션 관련 프로세싱이 디바이스에서 또는 개인 내비게이션 디바이스 (PDA) 에서 발생하는지의 여부와는 무관한 다른 커넥션에 의해, PND 와 통신하는 디바이스들을 포함하도록 의도된다. 또한, "이동 플랫폼"은, AR 이 가능한, 무선 통신 디바이스들, 컴퓨터들, 랩톱들, 태블릿 컴퓨터들 등을 포함하는 모든 전자 디바이스들을 포함하도록 의도된다.
도 1 은 서버 기반 오브젝트 검출 및 식별을 사용하는 분산 프로세싱용 시스템 (100) 을 도시한 블록도를 예시한다. 시스템 (100) 은, 트래킹과 같은 레이턴시 민감 동작들을 수행하는 이동 플랫폼 (110), 및 오브젝트 식별과 같은 레이턴시 둔감형이지만 계산 집약적인 동작들을 수행하는 원격 서버 (130) 를 포함한다. 이동 플랫폼은 카메라 (112) 및 디스플레이 (114) 를 포함할 수도 있고, 및/또는 모션 센서들 (164) 을 포함할 수도 있다. 이동 플랫폼 (110) 은 디스플레이 (114) 상에 도시될 수도 있는 오브젝트 (102) 의 이미지 (104) 를 획득할 수도 있다. 이동 플랫폼 (110) 에 의해 캡처된 이미지 (104) 는 정적 이미지, 예컨대 사진일 수도 있고, 또는 비디오 스트림으로부터의 단일 프레임일 수도 있으며, 이러한 정적 이미지 및 단일 프레임 양측 모두는 여기에서 캡처 이미지로 지칭된다. 이동 플랫폼 (110) 은, 예를 들어 가속도계들, 자이로스코프들, 전자 컴퍼스들, 또는 다른 유사한 모션 감지 엘리먼트들을 포함하는 하나 이상의 모션 센서들 (164) 및 위성 포지셔닝 시스템 (SPS) 수신기 (166) 를 사용하여, 카메라 (112) 이외의 센서로부터, 포지션 및/또는 방위 데이터를 포함하는 다른 센서 데이터를 추가로 또는 대안으로 획득할 수도 있다. SPS 는, 글로벌 포지셔닝 시스템 (GPS), 갈릴레오, 글로나스 또는 콤파스와 같은 글로벌 내비게이션 위성 시스템 (GNSS), 또는, 예컨대 일본의 준천정 위성 (Quasi-Zenith Satellite System: QZSS), 인도의 인도 지역 내비게이션 위성 시스템 (Indian Regional Navigational Satellite System: IRNSS), 중국의 북두 (Beidou) 등과 같은 다른 다양한 지역 시스템들의 콘스텔레이션, 및/또는 하나 이상의 글로벌 및/또는 지역 내비게이션 위성 시스템들과 관련되거나 이와 달리 함께 사용될 수도 있는 다양한 증강 시스템들 (예컨대, 위성 기반 증강 시스템 (Satellite Based Augmentation System: SBAS)) 일 수도 있다.
이동 플랫폼 (110) 은, 캡처 이미지 (104) 와 같은 획득된 데이터 정보 및/또는 SPS 정보 또는 포지션 정보와 같은 센서 데이터를 온-보드 모션 센서들 (164) 로부터 네트워크 (120) 를 통해 서버 (130) 로 송신한다. 획득된 데이터 정보는, 이동 플랫폼 (110) 에 의해 현재 트래킹되고 있는 임의의 오브젝트들의 식별과 같은 콘텍스트 데이터를 역시 또는 대안으로 포함할 수도 있다. 네트워크 (120) 는 무선 광역 통신망 (WWAN), 무선 근거리 통신망 (WLAN), 무선 개인 근거리 통신망 (WPAN) 등과 같은 임의의 무선 통신 네트워크들일 수도 있다. 서버 (130) 는 이동 플랫폼 (110) 에 의해 제공되는 데이터 정보를 프로세싱하며, 그 데이터 정보에 관한 정보를 생성한다. 예를 들어, 서버 (130) 는 제공된 이미지 데이터에 기초하여 오브젝트 데이터베이스 (140) 를 사용하여 오브젝트 검출 및 식별을 수행할 수도 있다. 서버 (130) 는 획득된 데이터에 관련된 정보를 이동 플랫폼 (110) 으로 리턴한다. 예를 들어, 서버 (130) 가 이동 플랫폼 (110) 에 의해 제공된 이미지 데이터로부터 오브젝트를 식별하면, 서버 (130) 는, 예를 들어 오브젝트 (102) 의 타이틀, 식별 번호 또는 기준 이미지 (106) 와 같은 식별자뿐 아니라, 증강 현실 애플리케이션을 위해 이동 플랫폼에서 사용될 수도 있는, 핵심적인 표시들, 정보 링크들 등과 같은 임의의 희망하는 부수 정보를 포함하는 오브젝트의 식별을 리턴할 수도 있다.
원한다면, 서버 (130) 는, 이미지 (104) 가 캡처된 시각에 기준 이미지 (106)(예컨대, 공지된 포지션 및 방위로부터의 오브젝트 (102) 의 이미지) 내의 오브젝트 (102) 에 대해 상대적인 이동 플랫폼 (110) 의 포즈 (포지션 및 방위) 를 판정하여 이동 플랫폼 (110) 에 제공할 수도 있다. 리턴된 포즈는 이동 플랫폼 (110) 에서 트래킹 시스템을 부트스트랩하는 데 사용될 수 있다. 다시 말해, 이동 플랫폼 (110) 은, 그것이 이미지 (104) 를 캡처한 시각으로부터 그것이 서버 (130) 로부터 기준 이미지 (106) 및 포즈를 수신한 시각까지, 예컨대 시각적으로 또는 모션 센서들 (164) 을 사용하여, 그것의 포즈에서의 모든 점증 변화들을 트래킹수도 있다. 그 후, 이동 플랫폼 (110) 은 수신된 포즈를 그것의 트래킹된 포즈 증가 변화와 함께 사용하여 오브젝트 (102) 에 대한 현재 포즈를 신속하게 판정하게 할 수도 있다.
다른 실시형태에서, 서버 (130) 는 기준 이미지 (106) 를 리턴하지만 포즈 정보를 제공하지는 않으며, 이동 플랫폼 (110) 은, 오브젝트 검출 알고리즘을 이용하여 오브젝트 (102) 의 현재 캡처 이미지를 오브젝트 (102) 의 기준 이미지 (106) 에 대해서 비교함으로써, 오브젝트 (102) 에 대해서 현재 포즈를 판정한다. 포즈는 상대적인 모션이 추정될 수 있도록 트래킹 시스템으로의 입력으로서 사용될 수도 있다.
또 다른 실시형태에서, 서버 (130) 는 포즈 정보만을 리턴하고 기준 이미지를 제공하지는 않는다. 이 경우, 이동 플랫폼 (110) 은, 트래킹 시스템에 의해 후속으로 사용될 수 있는 기준 이미지를 생성하기 위해, 포즈 정보와 함께 캡처 이미지 (104) 를 사용할 수도 있다. 대안으로, 이동 플랫폼 (110) 은 캡처 이미지 (104) 와 후속 캡처 이미지 (현재 이미지로 지칭됨) 사이의 점증적인 포지션 변화를 트래킹할 수도 있으며, 점증적인 트래킹 결과들과 함께 서버 (130) 로부터 획득된 포즈를 사용하여 이동 플랫폼 생성 기준 이미지에 대해서 현재 이미지의 포즈를 산출할 수도 있다. 기준 이미지 (102) 의 부재 시, 트래킹 시스템을 부트스트랩하는 데 사용될 수도 있는 기준 이미지의 추정을 획득하도록 추정 포즈를 사용한 현재 이미지는 왜곡 (또는 교정) 될 수도 있다.
또한, 이동 플랫폼 (110) 에 의해 서버 (130) 로 전송되는 검출 요청들의 빈도를 최소화하기 위해, 이동 플랫폼 (110) 은 트리거 이벤트가 존재하는 경우에만 검출 요청을 개시할 수도 있다. 트리거 이벤트는, 이전에 획득된 이미지 데이터 또는 센서 데이터에 대한, 모션 센서들 (164) 로부터의 이미지 데이터 또는 센서 데이터에서의 변화에 기초할 수도 있다. 예를 들어, 이동 플랫폼 (110) 은 장면 변화 검출기 (304) 를 사용하여 이미지 데이터에서의 변화가 발생했는지를 판정할 수도 있다. 따라서, 몇몇 실시형태들에서, 이동 플랫폼 (110) 은 장면 변화 검출기 (304) 에 의해 트리거되는 경우에만 검출 요청들을 위해 네트워크를 통해 서버 (130) 와 통신할 수도 있다. 장면 변화 검출기 (304) 는, 예컨대 새로운 정보가 현재 이미지에 존재하는 경우에만, 오브젝트 검출을 위해 서버와의 통신을 트리거한다.
도 2 는 이동 플랫폼 (110) 에 의해 수행되는 레이턴시 민감 동작들 및 서버 (130) 와 같은 외부 프로세서에 의해 수행되는 레이턴시 둔감형이고 계산 집약적인 동작들을 가지는 분산 프로세싱의 프로세스를 예시한 흐름 차트이다. 예시된 바와 같이, 센서 데이터는 이동 플랫폼 (110) 에 의해 획득된다 (202). 센서 데이터는, 획득 이미지, 예컨대 캡처 사진 또는 비디오 프레임, 또는 그로부터 도출된, 문자 인식 또는 발췌된 키포인트들을 포함하는 정보일 수도 있다. 센서 데이터는, 예컨대 SPS 정보, 모션 센서 정보, 바코드 인식, 텍스트 검출 결과들, 또는 이미지를 부분적으로 프로세싱한 것으로부터의 다른 결과들뿐 아니라, 사용자 거동, 사용자 선호도, 로케이션, 사용자 정보 또는 데이터 (예컨대, 사용자에 관한 소셜 네트워크 정보), 시각, 조명 품질 (자연광 대 인공광), 및 (이미지 내에서) 인근에 있는 사람들 등을 역시 또는 대안으로 포함할 수도 있다.
이동 플랫폼 (110) 은 이전에 획득된 센서 데이터에 대한 센서 데이터에서의 변화와 같은 트리거 이벤트가 존재하는지를 판정한다 (204). 예를 들어, 트리거 이벤트는 이미지에 새로운 또는 상이한 오브젝트가 나타나는 장면 변화일 수도 있다. 획득된 센서 데이터는 장변 변화와 같은 트리거 이벤트가 검출된 후에 서버 (130) 로 송신된다 (206). 물론, 어떠한 장면 변화도 검출되지 않으면, 센서 데이터는 서버 (130) 로 송신될 필요가 없어, 통신 및 검출 요청들을 감소시킨다.
서버 (130) 는 획득 정보를 프로세싱하여, 본 분야에서 주지되어 있는, 예컨대 오브젝트 인식을 수행한다. 서버 (130) 가 그 정보를 프로세싱한 후, 이동 플랫폼 (110) 은 서버 (130) 로부터 그 센서 데이터에 관련된 정보를 수신한다 (208). 예를 들어, 이동 플랫폼 (110) 은, 예컨대 기준 이미지를 포함하는 오브젝트 인식 결과들을 수신할 수도 있다. 센서 데이터와 관련된 정보는, 이동 플랫폼 (110) 근처에 위치한 아이템들 (예컨대, 빌딩, 레스토랑, 상점 내 가용 제품들 등) 뿐 아니라, 서버로부터의 2D 또는 3D 모델들과 같은 정보, 또는 게이밍과 같은 다른 프로세스들에서 사용될 수도 있는 정보를 추가로 또는 대안으로 포함할 수도 있다. 원한다면, 전술한 바와 같이, 이미지 (104) 가 캡처된 시각에 기준 이미지에서 오브젝트에 대한 이동 플랫폼 (110) 의 포즈를 포함하는 추가 정보가 제공될 수도 있다. 이동 플랫폼 (110) 이 로컬 캐시를 포함하면, 이동 플랫폼 (110) 은 서버 (130) 에 의해 전송된 다수의 기준 이미지들을 저장할 수도 있다. 이들 저장된 기준 이미지들은, 예컨대 트래킹이 손실되면 이동 플랫폼 (110) 에서 수행될 수 있는 후속 재검출에 사용될 수 있다. 몇몇 실시형태들에서, 서버는, 이미지에서 센서로부터 복수의 오브젝트들을 식별한다. 이러한 실시예들에서, 기준 이미지 또는 다른 오브젝트 식별자는 식별된 오브젝트들에 의해서만 이동 플랫폼 (110) 에 전송될 수도 있고, 또는 각각의 오브젝트들에 대응하는 복수의 오브젝트 식별자들은 이동 플랫폼 (110) 으로 송신되고 그에 의해 수신될 수도 있다.
따라서, 서버 (130) 에 의해 제공될 수도 있는 정보는, 인식 결과, 식별된 오브젝트(들) 에 관한 정보, 트래킹에서와 같은 다양한 기능들에 사용될 수 있는 오브젝트(들) 에 관한 기준 이미지들 (하나 또는 다수), 인식되는 오브젝트(들) 의 2D/3D 모델, 인식된 오브젝트(들) 의 절대 포즈, 디스플레이에 사용되는 증강 정보, 및/또는 오브젝트에 관한 핵심 정보를 포함할 수도 있다. 또한, 서버 (130) 는 이동 플랫폼 (110) 에서 분류기를 강화할 수 있는 오브젝트 매칭에 관련된 정보를 전송할 수도 있다. 한 가지 가능한 예는 이동 플랫폼 (110) 이 매칭용 결정 트리들을 사용하고 있을 때이다. 이 경우, 서버 (130) 는 트리의 개별 노드들에 대한 값들을 전송하여 더 정교한 트리 빌딩 및 후속하여 더 우수한 매칭을 용이하게 할 수 있다. 결정 트리들의 예들은, 예컨대 k-평균, k-d 트리들, 어휘 트리들, 및 다른 트리들을 포함한다. k-평균 트리의 경우, 서버 (130) 는 또한 이동 플랫폼 (110) 상의 계층적 k-평균 트리 구조를 개시하도록 시드를 전송하여, 이동 플랫폼 (110) 이 적절한 트리를 로딩하는 룩업을 수행하게 할 수도 있다.
선택적으로, 이동 플랫폼 (110) 은 오브젝트 (102) 에 대한 이동 플랫폼의 포즈를 획득할 수도 있다 (210). 예를 들어, 이동 플랫폼 (110) 은, 오브젝트 (102) 의 다른 이미지를 캡처하여 새롭게 캡처된 이미지를 기준 이미지와 비교함으로써, 서버 (130) 로부터 임의의 포즈 정보를 수신하지 않고도 기준 이미지 내의 오브젝트에 대한 포즈를 획득할 수도 있다. 서버 (130) 가 포즈 정보를 제공하는 경우, 이동 플랫폼은, 초기 이미지 (104) 가 캡처된 시각에 기준 이미지 내의 오브젝트에 대한 이동 플랫폼 (110) 의 포즈인, 서버 (130) 에 의해 제공되는 포즈와, 초기 이미지 (104) 가 캡처된 이래로 이동 플랫폼 (110) 의 포즈에서의 트래킹된 변화들을 비교함으로써, 현재 포즈를 신속하게 판정할 수도 있다. 포즈가 서버 (130) 의 도움으로 획득되는지 또는 도움 없이 획득되는지는 네트워크 (120) 및/또는 이동 플랫폼 (110) 의 능력들에 의존할 수도 있음에 주목한다. 예를 들어, 서버 (130) 가 포즈 추정을 지원하는 경우, 그리고 이동 플랫폼 (110) 및 서버 (130) 가 포즈를 송신하는 애플리케이션 프로그래밍 인터페이스 (API) 에 동의하는 경우, 포즈 정보는 이동 플랫폼 (110) 으로 송신될 수도 있고, 트래킹에 사용될 수도 있다. 서버에 의해 전송된 오브젝트 (102) (210) 의 포즈는 상대적인 회전 및 변환 매트릭스들, 호모그래피 매트리스, 아핀 변환 매트릭스의 형태, 또는 다른 형태일 수도 있다.
그 후, 선택적으로, 이동 플랫폼 (110) 은, 서버 (130) 로부터 수신된 데이터를 사용하여, 예컨대 타깃을 트래킹하고, 각각의 프레임에서 오브젝트 포즈를 추정하고, 가상 오브젝트를 삽입하여, 또는 이와 달리 추정 포즈를 사용하여 렌더링 엔진을 통해 사용자 뷰 또는 이미지를 증강하여 오브젝트를 갖는 AR을 수행할 수도 있다 (212).
도 3 은 서버 (130) 보조 AR 용 시스템 (100) 의 동작 블록도를 예시한다. 도 3 에 도시된 바와 같이, 새로이 캡처된 이미지 (300) 는 기준-프리 트래커 (302) 를 개시하는 데 사용된다. 기준-프리 트래커 (302) 는 옵티컬 흐름, 정규 상호 상관도 (normalized cross correlations: NCC) 또는 당업계에 공지된 임의의 유사한 방법들에 기초하여 트래킹을 수행한다. 기준-프리 트래커 (302) 는 새로이 캡처된 이미지 (300) 에서 점, 선면, 영역 등과 같은 피처들을 식별하고, 예컨대 흐름 벡터들을 사용하여, 프레임으로부터 프레임으로 이들 피처들을 트래킹한다. 트래킹 결과들로부터 획득된 흐름 벡터들은, 이전 캡처 이미지와 현재 캡처 이미지 사이의 상대적 모션을 추정하는 데 도움이 되며, 이어서 모션 속도를 식별하는 데 도움이 된다. 기준-프리 트래커 (302) 에 의해 제공된 정보는 장면 변화 검출기 (304) 에 의해 수신된다. 장면 변화 검출기 (304) 는, 이동 플랫폼 내의 센서들로부터의 다른 가용 정보 및 다른 타입들의 이미지 통계 (예컨대, 히스토그램 통계) 와 함께, 기준-프리 트래커 (302) 로부터의 트래킹된 피처들을 사용하여 장면 변화를 추정한다. 장면 변화 검출기 (304) 에 의해 어떠한 트리거도 전송되지 않으면, 프로세스는 기준-프리 트래커 (302) 를 계속한다. 장면 변화 검출기 (304) 가 실질적인 장면 변화를 검출하면, 장면 변화 검출기 (304) 는 서버 기반 검출기 (308) 에서의 검출 프로세스를 개시할 수도 있는 트리거 신호를 전송한다. 원한다면, 서버 기반 검출기 (308) 로의 요청들의 송신을 더 제어하도록 이미지 품질을 분석하는 데 이미지 품질 추정기 (306) 가 사용될 수도 있다. 이미지 품질 추정기 (306) 는 이미지 품질을 조사하고, 품질이 우수하면, 즉 임계치보다 크면, 검출 요청이 트리거된다. 이미지 품질이 불량하면, 어떠한 검출도 트리거되지 않고 이미지는 서버 기반 검출기 (308) 로 송신되지 않는다. 본 발명의 일 실시형태에서, 이동 플랫폼 (110) 은, 오브젝트 인식을 위해, 우수한 품질의 이미지를 서버 (130) 로 전송하기 전에, 장면 변화가 검출된 이후의 유한 기간 동안 우수한 품질의 이미지를 기다릴 수도 있다.
이미지의 품질은, 공지된 이미지 통계, 이미지 품질 측정, 및 다른 유사한 접근법들에 기초할 수도 있다. 예를 들어, 캡처 이미지의 선명도는, 고역 통과 필터링에 의해, 그리고 예컨대 에지 세기들 및 공간 분포를 나타내는 통계 세트를 생성함으로써 수량화될 수도 있다. 선명도 값이, 예컨대 여러 개의 이전 프레임들을 통해 평균화된, 장면의 "우세한 선명도 (prevailing sharpness)"를 초과하거나 그에 필적하다면, 이미지는 우수한 품질의 이미지로서 분류될 수도 있다. 다른 구현예에서는, FAST (Features from Accelerated Segment Test) 코너들 또는 Harris 코너들과 같은 퀵 코너 검출 알고리즘이 이미지를 분석하는데 사용될 수도 있다. 이미지는, 충분한 수의 코너들이 존재한다면, 예컨대 검출된 코너들의 수가 임계를 초과하거나, 예컨대 여러 개의 이전 프레임들을 통해 평균화된, 장면의 "코너들의 우세한 수"보다 많거나 그에 필적한다면, 이미지는 우수한 품질의 이미지로서 분류될 수도 있다. 다른 구현예에서, 에지 그레디언트 크기들의 평균 또는 표준 분산과 같은 이미지로부터의 통계는, 우수한 품질의 이미지와 불량한 품질의 이미지 사이를 구별하는 데 사용될 수도 있는 학습 분류기를 알리는 데 사용될 수도 있다.
이미지 품질은 또한 센서 입력들을 사용하여 측정될 수도 있다. 예를 들어, 신속하게 이동하는 동안에 이동 플랫폼 (110) 에 의해 캡처된 이미지들은 블러링될 수도 있고, 그에 따라 이동 플랫폼 (110) 이 정적이었거나 천천히 이동하고 있는 경우에 비해 불량한 품질의 것일 수도 있다. 따라서, 센서 데이터로부터의, 예컨대 모션 센서들 (164) 또는 시각 기반 트래킹으로부터의 모션 추정들은, 결과로서 생성되는 카메라 이미지들이 오브젝트 검출을 위해 전송되는 충분한 품질의 것인지를 판정하도록 임계와 비교될 수도 있다. 마찬가지로, 이미지 품질은 미리 정해진 이미지 블러량에 기초하여 측정될 수도 있다.
또한, 트리거 시간 관리자 (305) 가 서버 기반 검출기 (308) 로 송신되는 요청들의 수를 더 제어하도록 제공될 수도 있다. 트리거 시간 관리자 (305) 는 시스템의 상태를 유지하며, 휴리스틱 및 규칙들에 기초할 수도 있다. 예를 들어, 최종 트리거 이미지로부터의 이미지들의 수가 임계치보다 크면, 예컨대 1000 개의 이미지들보다 많으면, 트리거 시간 관리자 (305) 는 서버 기반 검출기 (308) 에서 검출 프로세스를 타임-아웃하고 자동으로 개시할 수도 있다. 따라서, 연장된 수의 이미지들에 대한 트리거가 없다면, 트리거 시간 관리자 (305) 는 트리거를 강제할 수도 있는데, 이는 임의의 추가 오브젝트들이 카메라의 시야 (field of view) 에 있는지를 판정하는 데 유용하다. 또한, 트리거 시간 관리자 (305) 는 선택된 값 η 에서 2 개의 트리거들 사이의 최소 이격을 유지하도록 프로그래밍될 수도 있는데, 다시 말해 트리거 시간 관리자 (305) 는, 그것이 최종으로 트리거된 이미지로부터의 η 개의 이미지들 내에 있다면 트리거들을 억제한다. 트리거된 이미지들을 이격시키는 것은, 예를 들어 장면이 급속히 변화하고 있는 경우에 유용할 수도 있다. 따라서, 장변 변화 검출기 (304) 가 η 개의 이미지들 내에서 2 개 이상의 트리거를 생성한다면, 오로지 하나의 트리거된 이미지만이 서버 기반 검출기 (308) 에 전송되어 이동 플랫폼 (110) 으로부터 서버 (130) 로의 통신량을 감소시킨다. 트리거 시간 관리자 (305) 는 또한 트리거 스케줄들을 관리할 수도 있다. 예를 들어, 장면 변화 검출기 (304) 가 최종 트리거로부터 η 개의 이미지들보다는 작고 μ 개의 이미지들보다는 큰 새로운 트리거를 생성하면, 그 새로운 트리거는, 연속적인 트리거들 사이의 이미지 갭이 적어도 η 일 때까지 트리거 시간 관리자 (305) 에 의해 저장 및 지연될 수도 있다. 예로서, μ 는 2 개의 이미지들일 수도 있고 η ≥ μ 이며, 예로서, η 는 2, 4, 8, 16, 32, 64 에 따라 변할 수도 있다.
트리거 시간 관리자 (305) 는 또한 서버 (130) 의 검출 실패들을 관리할 수도 있다. 예를 들어, 이전의 서버 기반 검출 시도가 실패했다면, 트리거 시간 관리자 (305) 는 트리거를 주기적으로 생성하여 서버 기반 검출기 (308) 에 요청을 재송신할 수도 있다. 이들 시도들의 각각은 가장 최근의 캡처 이미지에 기초하여 상이한 쿼리 이미지를 사용할 수도 있다. 예를 들어, 검출 실패 이후, 주기적 트리거가 주기 갭 η 로 트리거 시간 관리자 (305) 에 의해 생성될 수도 있는데, 예컨대 최종 실패 검출 시도가 η 개의 이미지들보다 더 길었다면, η 값이 가변적일 수도 있는 트리거가 전송된다.
서버 기반 검출기 (308) 가 개시될 때, 서버 (130) 는 새로운 캡처 이미지 (300) 와 관련된 데이터를 제공받는데, 이 새로운 캡처 이미지 (300) 는 새로운 캡처 이미지 (300) 자체, 새로운 캡처 이미지 (300) 에 관한 정보 및 새로운 캡처 이미지 (300) 와 관련된 센서 데이터를 포함할 수도 있다. 오브젝트가 서버 기반 검출기 (308) 에 의해 식별되면, 발견된 오브젝트, 예컨대 기준 이미지, 오브젝트의 3D 모델, 또는 다른 관련 정보가 이동 플랫폼 (110) 에 제공되어, 그것의 로컬 캐시 (310) 를 업데이트한다. 서버 기반 검출기 (308) 에 의해 어떠한 오브젝트도 발견되지 않으면, 프로세스는, 예컨대 트리거 시간 관리자 (305) 를 사용하여 주기적 트리거링으로 되돌아갈 수도 있다. Γ 회의 시도들, 예컨대 4 회의 시도들 후에 어떠한 오브젝트도 검출되지 않으면, 해당 오브젝트는 데이터베이스에 있지 않은 것으로 간주되며, 시스템은 장면 변화 검출기 기반 트리거들을 리셋한다.
발견된 오브젝트가 로컬 캐시 (310) 에 저장되면, 이동 플랫폼 (110) 상에서 동작 중인 오브젝트 검출기 (312) 는 현재 카메라 뷰에서 오브젝트를 식별하고 오브젝트에 대한 포즈를 식별하도록 오브젝트 검출 프로세스를 수행하고, 오브젝트 아이덴티티 및 포즈를 기준 기반 트래커 (314) 에 전송한다. 오브젝트 검출기 (312) 에 의해 전송된 포즈 및 오브젝트 아이덴티티는 기준 기반 트래커 (314) 를 초기화 및 시작하는 데 사용될 수도 있다. 각각의 후속 캡처 이미지 (예컨대, 비디오 프레임) 에서, 기준 기반 트래커 (314) 는 디스플레이된 오브젝트의 상단에 또는 이와 달리 이미지 내에 원하는 증강을 두는 이동 플랫폼 (110) 의 렌더링 엔진에 오브젝트에 대한 포즈를 제공할 수도 있다. 일 구현예에서, 서버 기반 검출기 (308) 는 기준 이미지 대신에 오브젝트의 3D 모델을 전송할 수도 있다. 이러한 경우들에 있어서, 3D 모델은 로컬 캐시 (310) 에 저장되고, 이어서 기준 기반 트래커 (314) 로의 입력으로서 사용된다. 기준 기반 트래커 (314) 가 초기화된 후, 기준 기반 트래커 (314) 는 각각의 새로운 캡처 이미지 (300) 를 수신하고 각각의 새로운 캡처 이미지 (300) 내의 트래킹된 오브젝트의 로케이션을 식별하여, 증강 데이터가 트래킹된 오브젝트에 대해 디스플레이되게 한다. 기준 기반 트래커 (314) 는, 포즈 추정, 안면 인식, 빌딩 인식, 또는 다른 애플리케이션들과 같은 많은 애플리케이션들에 사용될 수도 있다.
또한, 기준 기반 트래커 (314) 가 초기화된 후, 기준 기반 트래커 (314) 는, 각각의 새로운 캡처 이미지 (300) 의 영역들로서, 식별된 오브젝트가 존재하고 이 정보가 트래킹 마스크용 수단에 의해 저장되는 영역들을 식별한다. 따라서, 새로운 카메라 이미지들 (300) 내의 영역들로서 시스템이 완전한 정보를 가지는 영역들이 식별되고, 기준-프리 트래커 (302) 및 장면 변화 검출기 (304) 로의 입력으로서 제공된다. 기준-프리 트래커 (302) 및 장면 변화 검출기 (304) 는 각각의 새로운 캡처 이미지 (300) 를 계속해서 수신하고, 트래킹 마스크를 사용하여 각각의 새로운 캡처 이미지 (300) 의 나머지 영역들, 즉 완전한 정보가 없는 영역들 상에서 동작한다. 피드백으로서 트래킹 마스크를 사용하면, 트래킹된 오브젝트로 인해 장면 변환 검출기 (304) 로부터 미스트리거들 (mistriggers) 이 감소하는 데 도움이 될 뿐 아니라, 기준-프리 트래커 (302) 및 장면 변화 검출기 (304) 의 계산 복잡도가 감소하는 데에도 도움이 된다.
도 3에서 점선으로 예시된 일 실시형태들에서, 서버 기반 검출기 (308) 는 기준 이미지 내의 오브젝트에 대한 새로운 캡처 이미지 (300) 내의 오브젝트에 대한 포즈 정보를 추가로 제공할 수도 있다. 서버 기반 검출기 (308) 에 의해 제공된 포즈 정보는, 기준-프리 트래커 (302) 에 의해 판정되는 포즈 변화와 함께 포즈 업데이터 (316) 에 의해 사용되어 업데이트된 포즈를 생성할 수도 있다. 그 후, 업데이트된 포즈는 기준 기반 트래커 (314) 에 제공될 수도 있다.
또한, 트래킹이 일시적으로 손실되면, 로컬 캐시 (310) 를 검색하는 로컬 검출기 (318) 를 사용하여 후속 재검출이 수행될 수도 있다. 도 3 이 명료성을 위해 로컬 검출기 (318) 및 오브젝트 검출기 (312) 를 분리하여 예시하고 있지만, 원한다면, 로컬 검출기 (318) 는 오브젝트 검출기 (312) 를 구현할 수도 있으며, 다시 말해 오브젝트 검출기 (312) 가 재검출을 수행할 수도 있다. 오브젝트가 로컬 캐시에서 발견되면, 오브젝트 아이덴티티는 기준 기반 트래커 (314) 를 다시 초기화하고 시작하는 데 사용된다.
도 4 는, 도 3 에서 파선 및 포즈 업데이터 (316) 로 예시된, 포즈가 서버 (130) 에 의해 제공되는 서버 보조 AR 에 대한 호출 흐름도를 예시한다. 장면 변화 검출기 (304) 가, 뷰가 변했다 (스텝 A) 는 것을 나타낼 때, 서버 기반 검출 프로세스는, 서버 기반 검출기 (308) 에, 예컨대 jpeg 또는 다른 포맷일 수도 있는 새로운 이미지 및 오브젝트 검출 요청을 제공하는 시스템 관리자 (320) 에 의해 개시된다 (스텝 B). 이미지에 관한 정보, SPS, 방위 센서 리딩 (reading), 자이로 (Gyro), 컴퍼스, 압력 센서, 고도계 등과 같은 센서들로부터의 정보뿐 아니라 사용자 데이터, 예컨대 애플리케이션 사용 데이터, 사용자 프로파일들, 소셜 네트워크 정보, 과거 검색들, 위치/센서 정보 등과 같은, 추가 또는 대안의 정보가 또한 검출기 (308) 로 전송될 수도 있다. 시스템 관리자 (320) 는 또한 기준-프리 트래커 (302) 에게 오브젝트를 트래킹하라는 커맨드를 전송한다 (스텝 C). 검출기 (308) 는 데이터를 프로세싱하고, 오브젝트(들) 에 대한 기준 이미지들과 같은 오브젝트(들) 의 리스트, SIFT 피처들과 같은 피처들, 기술어 (descriptors) 등을 가지는 라인들, 메타데이터 (예컨대, 증강용), 및 AR 애플리케이션에 대한 포즈를 시스템 관리자 (320) 에게 리턴한다 (스텝 D). 오브젝트에 대한 기준 이미지는 로컬 캐시 (310) 에 추가되어 (스텝 E), 오브젝트를 추가한 것을 확인한다 (스텝 F). 기준-프리 트래커 (302) 는 초기 이미지와 현재 이미지 사이의 포즈 변화들을 검출기 (312) 에게로 제공한다 (스텝 G). 검출기 (312) 는 현재 캡처 이미지에서 오브젝트를 찾는 데 기준 이미지를 사용하여, 오브젝트 ID 시스템 관리자 (320) 에게 제공한다 (스텝 H). 또한, 서버 기반 검출기 (308) 에 의해 제공된 포즈는 기준-프리 트래커 (302) 로부터의 포즈 변화들과 함께 검출기 (312) 에 의해 사용되어, 역시 시스템 관리자 (320) 에게 제공되는 현재 포즈를 생성한다 (스텝 H). 시스템 관리자 (320) 는 기준-프리 트래커 (302) 에게 오브젝트 트래킹을 중지하도록 명령하고 (스텝 I), 기준 기반 트래커 (314) 에게 오브젝트 트래킹을 시작하도록 명령한다 (스텝 J). 트래킹이 손실될 때까지, 기준 기반 트래커 (314) 로 트래킹이 계속된다 (스텝 K).
도 5 는, 포즈가 서버 (130) 에 의해 제공되는 서버 보조 AR 에 대한 호출 흐름도를 예시한다. 호출 흐름은, 검출기 (308) 가 스텝 D 에서 시스템 관리자 (320) 에게 포즈 정보를 제공하지 않는다는 점을 제외하면, 도 4 에 도시된 것과 유사하다. 따라서, 검출기 (312) 는 검출기 (308) 에 의해 제공된 기준 이미지 및 현재 이미지에 기초하여 포즈를 판정하고, 그 포즈를 시스템 관리자 (320) 에게 제공한다 (스텝 G).
전술한 바와 같이, 장면 변환 검출기 (304) 는 이전 캡처 이미지들에 대한 현재 캡처 이미지에서의 변화들에 기초하여 서버 (130) 로 전송되는 검출 요청들의 빈도를 제어한다. 장면 변화 검출기 (304) 는, 중요한 새로운 정보가 이미지에 존재하는 경우에만 오브젝트 검출을 개시하기 위해, 외부 서버 (130) 와 통신하는 것이 바람직할 때 사용된다.
도 6 은 장면 변화 검출기 (304) 에 의해 수행되는 방법의 흐름 차트를 예시한다. 장면 변화 검출을 위한 프로세스는 기준-프리 트래커 (302, 도 3) 로부터의 메트릭들과 이미지 픽셀 히스토그램들과의 조합에 기초한다. 전술한 바와 같이, 기준-프리 트래커 (302) 는 옵티컬 흐름, 정규 교차 상관성과 같은 접근법 및/또는 연속적인 이미지들 사이에서 상대적 모션을, 예컨대 점, 선 또는 영역 대응성으로서 트래킹하는 임의의 그러한 접근법들을 이용한다. 히스토그램 기반 방법은, 단기간의 듀레이션 내에 장면의 정보 콘텐츠에 현저한 변화가 있는 북 플리핑 (book flipping) 과 같은 특정 유스 케이스들에 잘 작용할 수도 있으며, 그에 따라 장면 검출 프로세스에서의 사용에 유익할 수도 있고; 기준-프리 트래킹 프로세스는, 장면 내의 정보 콘텐츠에 점진적인 변화가 있는 패닝 (panning) 과 같은 다른 유스 케이스들에 대한 변화들을 효율적으로 검출할 수도 있다.
따라서, 도 6 에 예시된 바와 같이, 입력 이미지 (402) 가 제공된다. 입력 이미지는, 현재 비디오 프레임 또는 사진일 수도 있는 현재 캡처 이미지이다. 최종 이미지가 장변 변화 검출을 트리거하지 않았다면 (404), 장면 변화 검출기의 초기화 (406) 가 수행된다 (406). 초기화는, 이미지를 블록들, 예컨대 QVGA 이미지에 대해서는 8×8 블록들로 분할하는 것 (408), 및 각각의 블록으로부터, 예컨대 FAST (Features from Accelerated Segment Test) 코너 검출기를 사용하여 키포인트들을 추출하되, 여기서 M (M 은 2 일수도 있음) 개의 최강 코너들이 유지되는 것 (410) 을 포함한다. 물론, Harris 코너들, 스케일 불변 피처 변환 (Scale Invariant Feature Transform: SIFT) 피처 포인트들, 가속 로버스트 피처들 (Speeded-up Robust Features: SURF) 과 같은 다른 방법들, 또는 임의의 다른 바람직한 방법이, 키포인트들을 추출하는 데 대안으로 사용될 수도 있다. 어떠한 트리거 신호도 리턴되지 않는다 (412).
최종 이미지가 장면 변환 검출을 트리거했다면 (404), 옵티컬 흐름 프로세스 (420) 로서 예시된 기준-프리 트래커 (302, 도 3) 및 히스토그램 프로세스 (430) 로서 예시된 이미지 픽셀 히스토그램들로부터 메트릭들이 얻어진다. 원한다면, 기준-프리 트래커 (302) 는, 정규 교차 상관성과 같이, 옵티컬 흐름 이외의 프로세스들을 사용하여 메트릭들을 생성할 수도 있다. 옵티컬 흐름 프로세스 (420) 는 이전 이미지로부터, 예를 들어 정규 교차 상관성을 이용하여 코너들을 트래킹하고 (422), 현재 이미지에서 그들의 위치들을 식별한다. 코너들은, 이미지를 블록들로 분할하고 각각의 블록으로부터, 예컨대 앞서 초기화 (406) 에서 설명한 바와 같이 FAST 코너 임계치에 기초한 M 개의 최강 코너들이 유지되고, Harris 코너들의 경우에 있어서는 Hessian 임계치에 기초한 M 개의 최강 코너들이 유지되는 FAST 코너 검출기를 사용하여 키포인트들을 선택함으로써 이전에 추출되었을 수도 있다. 기준-프리 트래킹은 연속적인 이미지들에 걸쳐서 선택된 코너들에 대해 실행되어, 현재 이미지 내의 코너 위치 및 트래킹에서 손실된 코너들을 판정하도록 한다. 현재 반복 (424 에서 d) 에서, 즉 현재 이미지와 선행 이미지 사이에서 손실된 코너들의 총 세기는 제 1 변화 메트릭으로서 산출되고, 이전 트리거 (426 에서 D) 이래로, 즉 현재 이미지와 이전 트리거 이미지 사이에서 손실된 코너들의 총 세기는 제 2 변화 메트릭으로서 산출되며, 이들은 비디오 통계 계산 (440) 을 위해 제공된다. 히스토그램 프로세스 (430) 는 현재 입력 이미지 (C 로 지칭됨) 를 B×B 블록들로 분할하고, 각각의 블록에 대해 컬러 히스토그램 HC i , j 를 생성하는데, 여기서 i 및 j 는 이미지 내의 블록 인덱스들이다. 히스토그램들의 블록 단위 비교는, 예컨대 카이자승법을 이용하여 N 번째 과거 이미지 HN i , j 로부터 대응하는 블록 히스토그램들과 수행된다 (434). 히스토그램들의 비교는 현재 이미지와 N 번째 과거 이미지 사이의 유사성을 판정하여 장면이 현저하게 변화했는지를 식별하는 데 도움이 된다. 예로서, B 는 10 으로 선택될 수 있다. 카이자승법을 이용하여 현재 이미지와 N 번째 과거 이미지의 히스토그램들을 비교하기 위해, 다음의 계산이 수행된다:
[수학식 1]
Figure pct00001
블록 단위 비교는, 차이 값들의 어레이 fij 를 생성한다. 어레이 fij 는 소트되고, 히스토그램 변화 메트릭 h 는, 예컨대 소트된 어레이 fij 의 중간에 있는 엘리먼트들의 절반의 평균으로서 결정된다 (436). 히스토그램 변화 메트릭 h 는 또한 비디오 통계 계산을 위해 제공된다.
전술한 바와 같이, 원한다면, 기준 기반 트래커 (314, 도 3) 에 의해 제공되는 트래킹 마스크는, 장면 변화 검출 동안 사용되어 장면 변화를 위해 모니터링되는 입력 이미지의 영역들을 감소시킬 수도 있다. 트래킹 마스크는, 오브젝트들이 식별되고 그에 따라 장면 변화 모니터링이 생략될 수도 있는 영역들을 식별한다. 따라서, 예를 들어 입력 이미지가, 예컨대 422 및 432 에서 블록들로 분할될 때, 트래킹 마스크는 식별된 오브젝트들을 가지는 영역들 내에 있는 블록들을 식별하는 데 사용될 수도 있고, 그에 따라 그러한 블록들은 무시될 수도 있다.
비디오 통계 계산 (440) 은 옵티컬 흐름 메트릭들 d, D 및 히스토그램 변경 메트릭 h 를 수신하고, 검출이 트리거되어야 하는지를 판정하도록 메트릭들 d, D 와 함께 제공되는 이미지 품질의 판정을 생성한다. 변화 메트릭 Δ 가 계산되고 임계치와 비교되어 (458), 트리거 신호를 리턴한다 (460). 물론, 변화 메트릭 Δ 가 임계치보다 작으면, 어떠한 트리거 신호도 리턴되지 않는다. 변화 메트릭 Δ 는 옵티컬 흐름 메트릭들 d, D 및 히스토그램 변화 메트릭 h 에 기초하여, 예컨대 다음과 같이 계산될 수도 있다 (456):
[수학식 2]
Figure pct00002
여기서, α, β, 및 γ 는 3 개의 통계치들 d, D 및 h 에 상대적인 중요성을 제공하도록 적절히 선택되는 가중치들 (452) 이다. 일 실시형태에서, α, β, 및 γ 는 전체 런 동안에 상수로 설정될 수도 있다. 대안의 실시형태에서, α, β, 및 γ 의 값들은 시스템의 성능에 관해 수신된 가능한 피드백에 의존하여 또는 타깃화된 유스 케이스에 의존하여 적응될 수도 있다. 예를 들어, α 및 β 의 값은, 패닝 타입 장면 변경 검출을 수반하는 애플리케이션들에 대해 γ 에 비해 상대적으로 높게 설정될 수도 있는데, 이는 통계치 d 및 D 가 이 경우에 신뢰성이 더 높을 수도 있기 때문이다. 대안으로, α 및 β 의 값들은, 히스토그램 통계 h 가 유익한 정보를 더 많이 제공할 수도 있는 북 플리핑 타입의 유스 케이스들을 주로 수반하는 애플리케이션들에 대해서 γ 에 비해 상대적으로 낮게 설정될 수도 있다. 임계치는, 원한다면, 비디오 통계 계산 (440) 의 출력에 기초하여 적응될 수도 있다 (454).
일 경우에 있어서, 원한다면, 장면 검출 프로세스는, 히스토그램들로부터의 메트릭들 없이 기준-프리 트래커 (302) 로부터의 메트릭들에 기초할 수도 있는데, 예컨대 수학식 2 로부터의 변화 메트릭 Δ 는 γ = 0 과 함께 사용될 수도 있다. 다른 구현예에서, 입력 이미지는 블록들로 분할될 수도 있고, 키포인트들이, 전술한 바와 같이, 예컨대 M 개의 최강 코너들이 유지되는 FAST (Features from Accelerated Segment Test) 코너 검출기를 사용하여, 각각의 블록으로부터 추출될 수도 있다. 현재 이미지와 이전 이미지 사이에서 충분한 수의 블록들이, 예컨대 임계치에 비해 변화했다면, 장면은 변화한 것으로 판정되고 트리거 신호가 리턴된다. 블록은, 예컨대 트래킹된 코너들의 수가 다른 임계치보다 작다면, 변한 것으로 간주될 수도 있다.
또한, 원한다면, 장면 검출 프로세스는, 단순히, 이미지 내에서 총 수의 코너들의 세기에 대해 이전 트리거 (426 에서 D) 이래로 손실된 코너들의 총 세기에 기초할 수도 있는데, 예컨대 수학식 2 로부터의 변화 메트릭 Δ 는 α = 0 및 γ = 0 과 함께 사용될 수도 있다. 이전 트리거 이래로 손실된 코너들의 총 세기는 다음과 같이 판정될 수도 있다:
[수학식 3]
Figure pct00003
수학식 3 에서, sj 는 코너 j 의 세기이고, t 는 최종 트리거된 이미지 번호이며, c 는 현재 이미지 번호이고, Li 는 프레임 i 에서 손실된 코너들의 식별자들을 포함하는 세트이다. 원한다면, 상이한 변화 메트픽 Δ 가 다음과 같이 사용될 수도 있다:
[수학식 4]
Figure pct00004
여기서 NT 는 트리거된 이미지 내의 코너들의 총 수이다. 변화 메트릭 Δ 는 임계치와 비교될 수도 있다 (458).
또한, 전술한 바와 같이, 트래킹 마스크는 장면 변화 검출기 (304) 에 의해 사용되어 각각의 이미지 중 장면 내의 변화들에 대해 검색되는 영역을 제한할 수도 있다. 다시 말해, 트리거 마스크의 영역 외부의 코너들의 세기의 손실은 관련 메트릭이다. 장면 변화 검출기 (304) 에 의해 검색되는 영역의 사이즈 감소는 검출될 것으로 예상될 수 있는 코너들의 대응하는 개수 감소를 야기한다. 따라서, 추가 파라미터는 트래킹 마스크로 인한 코너들의 손실을 보상하는 데에, 예컨대 다음과 같이 사용될 수도 있다:
[수학식 5]
Figure pct00005
보상 파라미터 λ 는 변화 메트릭 Δ 를 조절하는 데 사용될 수도 있다. 예를 들어, 장면 검출 프로세스가, 단순히, 이전 트리거 (D) 이래로 마스킹되지 않은 영역에서 손실된 코너들의 총 세기에 기초한다면, 수학식 4 로부터의 변화 메트릭 Δ 는 다음과 같이 수정될 수도 있다:
[수학식 6]
Figure pct00006
여기서, Dc 는 수학식 3 에 의해 제공되고 (Li 는 프레임 i 에서 마스킹되지 않은 영역 내의 손실된 코너들의 식별자들을 포함하는 세트로서 정의됨), Ac 는 이미지 c 에 대한 마스크의 영역이며 A 는 At +1 로 초기화된다.
도 7 은, 50 초에 5 페이지가 턴하는 전형적인 북 플리핑 유스 케이스에 대한 시스템의 성능을 예시한 차트이다. 도 7 은 최소 트리거 갭 (초 단위) 의 함수로서 오브젝트 검출을 요청하는 요구되는 네트워크 송신물들의 수를 예시한다. 동일한 최소 트리거 갭에 대해 요구되는 네트워크 송신물들의 수가 적을수록 더 우수한 성능을 암시한다. 주기적 트리거에 대한 곡선 (480), 히스토그램 통계치 (γ = 0) 를 가지지 않고 기준 기반 트래커 (314)(도 3) 를 사용하지 않는 옵티컬 흐름에 기초한 장면 변화 검출기 (SCD) 에 대한 곡선 (482), 히스토그램 통계치 (γ = 0) 를 가지지 않지만 기준 기반 트래커 (314) 를 사용하는 옵티컬 흐름에 기초한 장변 변화 검출기 (SCD) 에 대한 곡선 (484), 및 기준 기반 트래커 (314) 및 타이밍 관리자 (305)(도 3) 와 함께 결합형 옵티컬 흐름 및 히스토그램 기반 장면 변화 검출기 (SCD)(도 6 에서 설명됨) 에 대한 곡선 (486) 을 포함하는 여러 개의 곡선들이 예시된다. 도 7 로부터 알 수 있는 바와 같이, 결합형 시스템은 플리핑 유스 케이스에서 다른 시스템들을 능가한다.
도 8 은 서버 보조 AR 프로세스를 사용한 안면 인식에 대한 접근법을 예시한다. 도 8 에 예시된 바와 같이, 이동 플랫폼 (110) 은, 안면 이미지를 획득하는 것 뿐 아니라 SPS 또는 포지션/모션 센서 데이터와 같은 임의의 다른 유용한 센서 정보를 획득하는 것을 포함하는 데이터 획득 (502) 을 수행한다. 이동 플랫폼 (110) 은 안면 검출 (504) 을 수행하고, 화살표 (506) 로 나타낸 바와 같이, 하나 이상의 안면들에 대한 안면 데이터 (안면의 이미지일 수도 있음) 뿐 아니라 SPS 또는 포지션/모션 센서 데이터와 같은 임의의 다른 유용한 데이터를 서버 (130) 에 제공한다. 이동 플랫폼 (110) 은 안면의 2D 모션을 트래킹한다 (508). 서버 (130) 는, 예컨대 글로벌 데이터베이스 (512) 로부터 취출되고 로컬 캐시 (514) 에 저장된 데이터를 사용하여, 제공된 안면 데이터에 기초하여 안면 인식 (510) 을 수행한다. 서버 (130) 는 안면에 관한 데이터, 예컨대 아이덴티티 또는 다른 원하는 정보를, 이동 플랫폼 (110) 에 제공하여, 수신된 데이터를 사용하여 디스플레이 (114) 상에 디스플레이된 안면에 이름 등을 붙이거나 또는 이와는 다르게 렌더링된 증강 데이터를 제공한다 (516).
도 9 는 서버 보조 AR 프로세스를 사용하는 안면 인식에 대한 다른 접근법을 예시한다. 도 9 는 도 8 에 예시된 접근법과 유사하여, 동일하게 표기된 엘리먼트들은 동일하다. 그러나, 도 9 에 예시된 바와 같이, 이미지는 서버 (130) 에 제공되고 (508'), 안면 검출 (504') 은 서버 (130) 에 의해 수행된다.
도 10 은 서버 보조 AR 프로세스를 사용하는 시각적 검색에 대한 접근법을 예시한다. 도 10 에 예시된 바와 같이, 이동 플랫폼 (110) 은 데이터 획득 (520) 을 하는데, 이는 원하는 오브젝트의 이미지를 획득하는 것뿐 아니라, SPS 또는 포지션/모션 센서 데이터와 같은 임의의 다른 유용한 센서 정보를 획득하는 것을 포함한다. 이동 플랫폼 (110) 은 피처 검출을 수행하고 (522), 화살표 (526) 로 나타낸 바와 같이, 검출된 피처들 뿐 아니라 SPS 또는 포지션/모션 센서 데이터와 같은 임의의 다른 유용한 데이터를 서버 (130) 에 제공한다. 이동 플랫폼 (110) 은 피처들의 2D 모션을 트래킹한다 (524). 서버 (130) 는 제공된 피처들에 기초하여, 예컨대 글로벌 데이터베이스로부터 취출 (530) 되고 로컬 캐시에 저장 (532) 된 데이터를 사용하여, 오브젝트 인식 (528) 을 수행한다. 서버 (130) 는 또한 글로벌 등록을 수행하여 (534), 예컨대 기준 이미지, 포즈 등을 획득할 수도 있다. 서버 (130) 는 이동 플랫폼 (110) 에, 오브젝트, 예컨대 기준 이미지, 포즈 등과 관련된 데이터를 제공하여, 수신된 데이터를 사용하여 로컬 등록을 수행한다 (536). 그 후, 이동 플랫폼 (110) 은 디스플레이 (114) 상에 디스플레이된 오브젝트에 대한 원하는 증강 데이터를 렌더링할 수도 있다 (538).
도 11 은 서버 보조 AR 프로세스를 사용한 시각적 검색에 대한 다른 접근법을 예시한다. 도 11 은 도 10 에 예시된 접근법과 유사하며, 동일하게 표기된 엘리먼트들을 동일하다. 그러나, 도 11 에 예시된 바와 같이, 전체 이미지가 서버 (130) 에 제공되고 (526'), 피처 검출 (522') 이 서버 (130) 에 의해 수행된다.
도 12 는 서버 보조 프로세스를 사용한 기준 기반 트래킹에 대한 접근법을 예시한다. 도 12 에 예시된 바와 같이, 이동 플랫폼 (110) 은 데이터 획득을 수행하고 (540), 이는 원하는 오브젝트의 이미지를 획득하는 것뿐 아니라, SPS 또는 포지션/모션 센서 데이터와 같은 임의의 다른 유용한 센서 정보를 획득하는 것을 포함한다. 몇몇 실시형태들에서, 이동 플랫폼 (110) 은, 텍스트 인식 또는 바코드 판독 등과 같은 부수 정보를 생성할 수도 있다 (541). 이동 플랫폼 (110) 은 피처 검출을 수행하고 (542), 화살표 (546) 로 나타낸 바와 같이, 검출된 피처들 뿐 아니라 SPS 또는 포지션/모션 센서 데이터와 같은 임의의 다른 유용한 데이터, 및 생성된다면 부수 정보를 서버 (130) 에 제공한다. 이동 플랫폼 (110) 은 피처들의 2D 모션을, 예컨대 점, 선 또는 영역 트래킹을 사용하여 또는 조밀한 옵티컬 흐름을 사용하여 트래킹한다 (544). 몇몇 실시형태들에서, 서버 (130) 는 제공된 피처들을 사용하여 다중 평면 인식 (548) 을 수행할 수도 있다. 일단 평면들이 식별되었다면, 오브젝트 인식 (550) 이 개별 평면들 또는 평면 그룹 상에서, 예컨대 글로벌 데이터베이스 (552) 로부터 취출되고 로컬 캐시 (554) 에 저장된 데이터를 사용하여 수행될 수도 있다. 원한다면, 임의의 다른 인식 방법이 사용될 수도 있다. 몇몇 실시예들에서, 서버 (130) 는 또한, 원한다면 6-자유도, 호모그래피, 아핀, 회전 및 병진 매트릭스들에 제공될 수도 있는 포즈 추정 (555) 을 수행할 수도 있다. 서버 (130) 는, 기준 이미지와 같은 오브젝트에 관련된 데이터를 이동 플랫폼 (110) 에 제공하여, 수신된 데이터를 사용하여 로컬 등록을 수행한다 (556). 전술한 바와 같이, 이동 플랫폼 (110) 은, 수신된 데이터를 저장하는 로컬 캐시 (557) 를 포함할 수도 있어, 트래킹이 손실되면, 이동 플랫폼 (110) 에서 수행될 수 있는 후속 재검출에 유익할 수 있다. 이동 플랫폼 (110) 은 디스플레이 (114) 상에 디스플레이되는 오브젝트에 대한 원하는 증강 데이터를 렌더링할 수도 있다 (558).
도 13 은 서버 보조 프로세스를 사용한 기준 기반 트래킹에 대한 다른 접근법을 예시한다. 도 13 은 도 12 에 예시된 접근법과 유사하며, 동일하게 표기된 엘리먼트들은 동일하다. 그러나, 도 13 에 예시된 바와 같이, 전체 이미지가 서버 (130) 에 제공되고 (546'), 피처 검출 (542') 이 서버 (130) 에 의해 수행된다.
도 14 는 서버 보조 프로세스를 사용한 3D 모델 생성에 대한 접근법을 예시한다. 도 14 에 예시된 바와 같이, 이동 플랫폼 (110) 은 데이터 획득을 수행하며 (560), 이는 원하는 오브젝트의 이미지를 획득하는 것 뿐 아니라 SPS 또는 포지션/모션 센서 데이터와 같은 임의의 다른 유용한 센서 정보를 획득하는 것을 포함한다. 이동 플랫폼 (110) 은 2D 이미지 프로세싱을 수행하고 (562), 예컨대 옵티컬 흐름 또는 정규 교차 상관성 기반 접근법들을 사용하여 모션을 트래킹한다 (564). 이동 플랫폼 (110) 은 로컬 6-자유도 등록을 수행하여 (568), 포즈의 대략적인 추정을 얻는다. 특정 실시형태들에서 이미지들과 함께 이 데이터는 서버 (130) 에 제공될 수도 있다. 그러면, 서버 (130) 는 번들 조절 (bundle adjustment) 을 수행하여, 등록을 개량할 수도 있다 (570). 상이한 시점으로부터 이미지들 및 3D 점들의 세트가 제공되면, 번들 조절 알고리즘들은, 공지된 기준 좌표 시스템에서 점의 3D 좌표들을 추정하는 데 도움이 되고, 상이한 시점들 사이에서 카메라의 상대적인 모션을 식별하는 데 도움이 된다. 번들 조절 알고리즘들은, 전반적으로 계산 집약적으로 동작하게 되며, 이동 플랫폼 (110) 으로부터의 부수 정보 및 로컬 캐시 (572) 로부터 이용 가능한 경우의 추가 정보를 전달함으로서 서버 측 상에서 효율적으로 이행될 수 있다. 3D 점들의 위치 및 상대적인 포즈가 추정된 후, 그들은 이동 플랫폼 (110) 에 직접적으로 제공될 수 있다. 대안으로, 오브젝트의 3D 모델들은, 데이터에 기초하여 서버에서 구성될 수도 있고, 이러한 데이터는 이동 플랫폼 (110) 에 전송될 수도 있다. 그 후, 이동 플랫폼 (110) 은 서버 (130) 로부터 획득된 정보를 이용하여 디스플레이 (114) 에 디스플레이된 오브젝트에 대한 원하는 증강 데이터를 렌더링할 수도 있다 (576).
전체 시스템 구성은, 이동 플랫폼 (110), 서버(130) 및 통신 인터페이스, 예컨대 네트워크 (120) 의 용량에 의존하여 적응될 수도 있다. 이동 플랫폼 (110) 이 전용 프로세서가 없는 저렴한 디바이스이면, 동작들 중 대부분은 서버 (130) 에 오프로드될 수도 있다. 한편, 이동 플랫폼 (110) 이 우수한 계산 능력을 가진 고가의 디바이스이면, 이동 플랫폼 (110) 은 태스크들 중 일부를 수행하고 더 적은 태스크들을 서버 (130) 로 오프-로드 (off-load) 하도록 선택할 수도 있다. 따라서, 시스템은, 예컨대 인터페이스 상에서의 가용 대역폭에 의존하여 상이한 타입들의 통신 인터페이스들을 처리하도록 적응될 수도 있다.
일 구현예에서, 서버 (130) 는 태스크에 대한 피드백 및 태스크의 어떤 부분들이 서버 (130) 에 오프-로드될 수 있는지에 대한 피드백을 이동 플랫폼 (110) 에 제공할 수도 있다. 이러한 피드백은 서버 (130) 의 용량, 수행되는 동작들을 타입, 통신 채널에서의 가용 대역폭, 이동 플랫폼 (110) 및/또는 서버 (130) 의 전력 레벨들 등에 기초할 수도 있다. 예를 들어, 서버 (130) 는, 네트워크 커넥션이 불량하고 데이터 레이트들이 낮으면, 이동 플랫폼 (110) 이 더 낮은 품질 버전의 이미지들을 전송하는 것을 추천할 수도 있다. 서버 (130) 는, 또한, 데이터 레이트들이 낮으면, 이동 플랫폼이 데이터 상에서 더 많은 프로세싱을 수행하고, 프로세싱된 데이터를 서버 (130) 에 전송하는 것을 제안할 수도 있다. 예를 들어, 이동 플랫폼 (110) 은, 통신 링크가 낮은 데이터 레이트를 가진다면, 전체 이미지를 전송하는 대신에, 오브젝트 검출을 위한 피처들을 계산하여, 그 피처들을 전송할 수도 있다. 서버 (130) 는, 네트워크 커넥션이 우수하거나 또는 이미지 내의 오브젝트를 인식하려는 과거의 시도들이 실패했다면, 대안으로, 이동 플랫폼 (110) 이 더 높은 품질 버전의 이미지를 전송하거나 이미지들을 더 빈번하게 전송하는 것 (그에 따라, 최소 프레임 갭 η 을 감소시키는 것) 을 추천할 수도 있다.
또한, 여기에서 소개되는 이동-서버 아키텍처는 또한 2 개 이상의 이동 플랫폼 (110) 이 사용되는 시나리오들로도 연장될 수 있다. 예를 들어, 2 개의 이동 플랫폼들 (110) 은 상이한 각도들로부터 동일한 3D 오브젝트를 볼 수도 있고, 서버 (130) 는 오브젝트의 우수한 3D 모델을 생성하도록 이동 플랫폼들 (110) 양측 모두로부터 획득된 데이터로부터 조인트 번들 조절을 수행할 수도 있다. 이러한 애플리케이션은 멀티플레이어 게이밍 등과 같은 애플리케이션들에 유용할 수도 있다.
도 15 는 서버 기반 검출을 사용하여 분산 프로세싱을 할 수 있는 이동 플랫폼 (110) 의 블록도이다. 이동 플랫폼 (110) 은 카메라 (112) 뿐 아니라, 카메라 (112) 에 의해 캡처된 이미지들을 디스플레이할 수 있는 디스플레이 (114) 를 포함하는 사용자 인터페이스 (150) 를 포함한다. 사용자 인터페이스 (150) 는 또한 키패드 (152), 또는 사용자가 이동 플랫폼 (110) 내로 정보를 입력할 수 있게 하는 다른 입력 디바이스를 포함할 수도 있다. 원한다면, 키패드 (152) 는 터치 센서를 갖춘 디스플레이 (114) 내에 가상 키패드를 통합함으로써 배제될 수도 있다. 사용자 인터페이스 (150) 는 또한, 예컨대 이동 플랫폼이 셀룰러 전화기인 경우, 마이크로폰 (154) 및 스피커 (156) 를 포함할 수도 있다.
이동 플랫폼 (110) 은, 전술한 바와 같이, 외부 서버 (130, 도 3) 와 통신하는 데 사용될 수도 있는 무선 송수신기 (162) 를 포함할 수도 있다. 이동 플랫폼 (110) 은, 예컨대 가속도계, 자이로스코프들, 전자 컴파스, 또는 기타 유사한 모션 감지 엘리먼트들을 포함하는 모션 센서들 (164), 그리고 위성 포지셔닝 시스템 (satellite positioning system: SPS) 으로부터의 포지셔닝 신호들을 수신할 수 있는 SPS 수신기 (166) 와 같은 AR 애플리케이션들에 도움이 될 수도 있는 추가 특징들을 선택적으로 포함할 수도 있다. 물론, 이동 플랫폼 (110) 은 본 개시물과는 무관한 다른 엘리먼트들을 포함할 수도 있다.
이동 플랫폼 (110) 은 또한, 사용된다면, 사용자 인터페이스 (150), 모션 센서들 (164) 및 SPS 수신기 (166) 와 같은 다른 피처들과 함께, 카메라 (112) 및 무선 송수신기 (162) 에 접속되고 그와 통신하는 제어 유닛 (170) 도 포함한다. 제어 유닛 (170) 은, 전술한 바와 같이, 카메라 (112) 로부터의 데이터를 수용하고 프로세싱하며, 응답으로 무선 송수신기 (162) 를 통한 외부 서버와의 통신을 제어한다. 제어 유닛 (170) 은 프로세서 (171) 및 관련 메모리 (172) 에 의해 제공될 수도 있으며, 관련 메모리 (172) 는 프로세서 (171) 에 의해 실행되어 여기에서 설명되는 방법들 또는 방법들의 일부를 수행하게 하는 소프트웨어 (173) 를 포함할 수도 있다. 제어 유닛 (170) 은 추가로 또는 대안으로 하드웨어 (174) 및/또는 펌웨어 (175) 를 포함할 수도 있다.
제어 유닛 (170) 은, 전술한 바와 같이, 외부 서버와의 통신을 트리거하는 장면 변화 검출기 (304) 를 포함한다. 도 3 에 예시된 트리거 시간 관리자 (305) 및 이미지 품질 추정기 (306) 와 같은 추가 콤포넌트들이 또한 포함될 수도 있다. 제어 유닛 (170) 은 기준-프리 트래커 (302), 기준 기반 트래커 (314), 및 로컬 캐시, 예컨대 메모리 (172) 에 저장된 오브젝트들에 기초하여 현재 이미지에서 오브젝트들을 검출하는 데 사용되는 검출 유닛 (312) 을 더 포함한다. 제어 유닛 (170) 은 디스플레이 (114) 상에 AR 정보를 생성하고 디스플레이하는 증간 현실 (AR) 유닛 (178) 을 더 포함한다. 장면 변화 검출기 (304), 기준-프리 트래커 (302), 기준 기반 트래커 (314), 검출 유닛 (312) 및 AR 유닛 (178) 은 별개로 예시되고 명료성을 위해 프로세서 (171) 와는 이격된 것으로 예시되지만, 단일 유닛일 수도 있고, 및/또는 프로세서 (171) 에 의해 판독되고 실행되는 소프트웨어 (173) 내의 명령들에 기초하여 프로세서 (171) 에서 구현될 수도 있다. 본 명세서에서 사용되는 바와 같이, 프로세서 (171) 뿐 아니라, 장면 변화 검출기 (304), 기준-프리 트래커 (302), 기준 기반 트래커 (314), 검출 유닛 (312) 및 AR 유닛 (178) 은 하나 이상의 마이크로프로세서들, 임베딩 프로세서들, 제어기들, ASICs, DSPs 등을 포함할 수 있지만 반드시 포함해야 하는 것은 아니다. 용어 프로세서는 특정 하드웨어가 아니라 시스템에 의해 구현되는 기능을 설명하도록 의도된다. 또한, 본 명세서에서 사용되는 바와 같이, "메모리"라는 용어는, 이동 플랫폼과 관련된, 장기, 단기, 또는 다른 메모리를 포함하는 임의의 타입의 컴퓨터 저장 매체들을 지칭하며, 임의의 특정 타입의 메모리 또는 임의의 특정 수의 메모리들, 또는 메모리가 저장되는 매체 타입으로 제한되지 않는다.
본 명세서에서 설명되는 방법들은, 애플리케이션에 따라서 다양한 수단에 의해 구현될 수도 있다. 예를 들어, 이러한 방법들은, 하드웨어 (174), 펌웨어 (175), 소프트웨어 (173), 또는 이들의 임의의 조합으로 구현될 수도 있다. 하드웨어 구현에 대해, 프로세싱 유닛들은 하나 이상의 주문형 반도체들 (ASICs), 디지털 신호 프로세서들 (DSPs), 디지털 신호 프로세싱 디바이스들 (DSPDs), 프로그래밍가능 로직 디바이스들 (PLDs), 필드 프로그래밍가능 게이트 어레이들 (FPGAs), 프로세서들, 제어기들, 마이크로제어기들, 마이크로프로세서들, 전자 디바이스들, 본 명세서에서 설명된 기능들을 수행하도록 설계된 다른 전자 유닛들, 또는 이들의 조합 내에서 구현될 수도 있다. 따라서, 센서 데이터를 획득하는 디바이스는, 카메라 (112), SPS 수신기 (166), 및 모션 센서들 (164) 뿐 아니라, 카메라 (112) 에 의해 또는 센서 데이터를 획득하기 위한 다른 수단에 의해 생성되는 이미지에 기초하여, 텍스트 인식 또는 바코드 판독과 같이, 부수 정보를 생성할 수도 있는 프로세서를 포함할 수도 있다. 이전에 획득된 센서 데이터에 대한 센서 데이터의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 디바이스는, 소프트웨어 (173), 또는 하드웨어 (174) 또는 펌웨어 (175) 로 구현되는 명령들을 수행하는 프로세서 (171) 에 의해 구현될 수도 있는 검출 유닛 (312), 또는 이전에 획득된 센서 데이터에 대한 센서 데이터의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 다른 수단을 포함한다. 트리거 이벤트가 존재할 때 센서 데이터를 서버에 전송하는 디바이스는 무선 송수신기 (162) 또는 트리거 이벤트가 존재할 때 센서 데이터를 서버로 송신하는 다른 수단을 포함한다. 서버로부터 센서 데이터와 관련된 정보를 수신하는 디바이스는 무선 송수신기 (162) 또는 센서 데이터에 관한 정보를 서버로부터 수신하는 다른 수단을 포함한다. 오브젝트에 대한 이동 플랫폼의 포즈를 획득하는 디바이스는 기준-프리 트래커 (302), 무선 송수신기 (162), 또는 오브젝트에 대한 이동 플랫폼의 포즈를 획득하기 위한 다른 수단을 포함한다. 오브젝트의 포즈 및 기준 이미지를 사용하여 오브젝트를 트래킹하는 디바이스는, 기준 기반 트래커 (314) 또는 오브젝트의 포즈 및 기준이미지를 사용하여 오브젝트를 트래킹하는 다른 수단을 포함한다. 이전 캡처 이미지에 대한 캡처 이미지 내의 장면 변화가 존재하는지를 판정하는 디바이스는, 소프트웨어 (173), 하드웨어 (174) 또는 펌웨어 (175) 로 구현되는 명령들을 수행하는 프로세서 (171) 에 의해 구현될 수도 있는 장면 변화 검출기 (304), 및 이전 캡처 이미지에 대한 캡처 이미지 내의 장면 변화가 존재하는지를 판정하기 위한 다른 수단을 포함한다.
펌웨어 및/또는 소프트웨어 구현에 대해, 방법들은, 여기에서 설명되는 기능들을 수행하는 모듈들 (예컨대, 절차들, 기능들 등) 로 구현될 수도 있다. 명령들을 유형적으로 구체화하는 임의의 머신 판독가능 매체는 여기에서 설명되는 방법들을 구현하는 데 사용될 수도 있다. 예를 들어, 소프트웨어 (173) 는 메모리 (172) 에 저장되고 프로세서 (171) 에 의해 실행되는 프로그램 코드들을 포함할 수도 있다. 메모리는 프로세서 (171) 내부에 또는 외부에 구현될 수도 있다.
펌웨어 및/또는 소프트웨어로 구현된다면, 기능들은 하나 이상의 명령들 또는 코드로서 컴퓨터 판독가능 매체 상에 저장될 수도 있다. 예들은, 데이터 구조로 인코딩된 비일시적 컴퓨터 판독가능 매체들 및 컴퓨터 프로그램으로 인코딩된 컴퓨터 판독가능 매체들을 포함한다. 컴퓨터 판독가능 매체들은 물리적 컴퓨터 저장 매체들을 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수도 있다. 제한이 아니라 예로서, 이러한 컴퓨터 판독가능 매체들은 RAM, ROM, 플래시 메모리, EEPROM, CD-ROM 또는 다른 광디스크 저장소, 자기디스크 저장소 또는 다른 자기 저장소 디바이스들, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 저장하는 데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있고; 여기에서 설명되는 바와 같은, 컴팩트디스크 (compact disc: CD), 레이저 디스크 (disc), 광디스크 (disc), 디지털 범용 디스크 (digital versatile disc: DVD), 플로피 디스크 (disk) 및 블루레이 디스크 (disk) 를 포함하며, 여기서 디스크들 (disks) 은 일반적으로 데이터를 자기적으로 재생하고 그 반면에 디스크들 (discs) 은 데이터를 광학적으로 레이저를 사용하여 재생한다. 전술한 사항들의 조합들은 또한 컴퓨터 판독가능 매체들의 범주 내에 포함되어야 한다.
본 발명이 명령 목적을 위한 특정 실시형태들과 관련하여 예시되지만, 본 발명은 그로 제한되지 않는다. 본 발명의 범주로부터 벗어나지 않고 다양한 적응 및 수정이 이루어질 수도 있다. 따라서, 첨부한 청구범위의 사상 및 범주는 전술한 설명으로 제한되어서는 안 된다.

Claims (48)

  1. 이동 플랫폼을 사용하여 센서 데이터를 획득하는 단계;
    이전에 획득된 센서 데이터에 대한 상기 센서 데이터의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 단계;
    상기 트리거 이벤트가 존재하는 때에 상기 센서 데이터를 서버로 송신하는 단계; 및
    상기 서버로부터 상기 센서 데이터에 관련된 정보를 수신하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 센서 데이터는 오브젝트의 캡처 이미지를 포함하는, 방법.
  3. 제 2 항에 있어서,
    상기 방법은 상기 센서 데이터를 상기 서버로 송신하는 단계 이전에 상기 캡처 이미지의 품질을 판정하는 단계를 더 포함하고,
    상기 센서 데이터는 상기 캡처 이미지의 품질이 임계치보다 우수한 경우에만 상기 서버로 송신되는, 방법.
  4. 제 3 항에 있어서,
    상기 캡처 이미지의 품질을 판정하는 단계는, 상기 캡처 이미지의 선명도를 분석하는 단계, 상기 캡처 이미지 내의 다수의 검출된 코너들을 분석하는 단계, 및 학습 분류기로 상기 캡처 이미지로부터 도출된 통계를 사용하는 단계 중 적어도 하나를 포함하는, 방법.
  5. 제 2 항에 있어서,
    상기 서버로부터 수신된 상기 센서 데이터에 관련된 정보에 기초하여 상기 오브젝트에 대한 증강 (augmentation) 을 렌더링하는 단계를 더 포함하는, 방법.
  6. 제 2 항에 있어서,
    상기 센서 데이터에 관련된 정보는 상기 오브젝트의 식별 (identification) 을 포함하는, 방법.
  7. 제 2 항에 있어서,
    상기 캡처 이미지는 복수의 오브젝트들을 포함하고, 상기 센서 데이터에 관련된 정보는 상기 복수의 오브젝트들의 식별을 포함하는, 방법.
  8. 제 7 항에 있어서,
    상기 이동 플랫폼에 대한 상기 복수의 오브젝트들의 각각에 대한 포즈들을 획득하는 단계; 및
    상기 포즈들 및 상기 센서 데이터에 관련된 정보를 사용하여 상기 복수의 오브젝트들의 각각을 트래킹하는 단계를 더 포함하는, 방법.
  9. 제 2 항에 있어서,
    상기 오브젝트에 대한 상기 이동 플랫폼의 포즈를 획득하는 단계; 및
    상기 포즈 및 상기 센서 데이터에 관련된 정보를 사용하여 상기 오브젝트를 트래킹하는 단계를 더 포함하는, 방법.
  10. 제 9 항에 있어서,
    상기 센서 데이터에 관련된 정보는 상기 오브젝트의 기준 이미지를 포함하고,
    상기 포즈를 획득하는 단계는 상기 캡처 이미지 및 상기 기준 이미지에 기초하여 상기 서버로부터 제 1 포즈를 수신하는 단계를 포함하는, 방법.
  11. 제 10 항에 있어서,
    상기 제 1 포즈가 상기 서버로부터 수신될 때까지 상기 오브젝트의 기준-프리 트래킹 (reference-free tracking) 을 수행하는 단계를 더 포함하는, 방법.
  12. 제 10 항에 있어서,
    상기 제 1 포즈가 상기 서버로부터 수신될 때, 상기 오브젝트의 제 2 캡처 이미지를 획득하는 단계;
    상기 캡처 이미지와 상기 제 2 캡처 이미지 사이에서 상기 오브젝트를 트래킹하여 증분 변화를 판정하는 단계; 및
    상기 증분 변화 및 상기 제 1 포즈를 사용하여 상기 오브젝트에 대한 상기 이동 플랫폼의 포즈를 획득하는 단계를 더 포함하는, 방법.
  13. 제 10 항에 있어서,
    상기 오브젝트의 제 2 캡처 이미지를 획득하는 단계;
    상기 기준 이미지를 사용하여 상기 제 2 캡처 이미지에서 상기 오브젝트를 검출하는 단계;
    상기 제 2 캡처 이미지에서 검출된 상기 오브젝트 및 상기 기준 이미지를 사용하여 상기 오브젝트에 대한 상기 이동 플랫폼의 포즈를 획득하는 단계; 및
    상기 포즈를 사용하여 상기 오브젝트의 기준 기반 트래킹 (reference based tracking) 을 초기화하는 단계를 더 포함하는, 방법.
  14. 제 2 항에 있어서,
    상기 센서 데이터에 관련된 정보는: 상기 오브젝트의 2 차원 (2D) 모델, 상기 오브젝트의 3 차원 (3D) 모델, 증강 정보, 상기 오브젝트에 관한 핵심 (saliency) 정보, 및 오브젝트 매칭에 관련된 정보 중 적어도 하나를 포함하는, 방법.
  15. 제 2 항에 있어서,
    상기 트리거 이벤트가 존재하는지를 판정하는 단계는 이전 캡처 이미지에 대한 상기 캡처 이미지의 장면 변화가 존재하는지를 판정하는 단계를 포함하는, 방법.
  16. 제 15 항에 있어서,
    상기 장면 변화가 존재하는지를 판정하는 단계는:
    상기 캡처 이미지 및 상기 이전 캡처 이미지를 사용하여 제 1 변화 메트릭을 판정하는 단계;
    상기 캡처 이미지 및 이전 트리거 이벤트로부터의 제 2 이전 캡처 이미지를 사용하여 제 2 변화 메트릭을 판정하는 단계;
    상기 캡처 이미지에 대한 히스토그램 변화 메트릭을 생성하는 단계; 및
    상기 제 1 변화 메트릭, 상기 제 2 변화 메트릭 및 상기 히스토그램 변화 메트릭을 사용하여 상기 장면 변화를 판정하는 단계를 포함하는, 방법.
  17. 제 2 항에 있어서,
    상기 센서 데이터에 관련된 정보는 오브젝트 식별을 포함하고,
    상기 방법은:
    상이 오브젝트의 추가 캡처 이미지들을 획득하는 단계;
    상기 오브젝트 식별을 사용하여 상기 추가 챕처 이미지들에서 상기 오브젝트를 식별하는 단계;
    상기 오브젝트 식별에 기초하여 상기 추가 캡처 이미지들에 대한 트래킹 마스크를 생성하는 단계로서, 상기 트래킹 마스크는 상기 오브젝트가 식별되는 상기 추가 캡처 이미지들 내의 영역들을 나타내는, 상기 트래킹 마스크를 생성하는 단계;
    상기 오브젝트의 상기 추가 캡처 이미지들을 갖는 상기 트래킹 마스크를 사용하여 상기 추가 캡처 이미지들의 나머지 영역들을 식별하는 단계; 및
    상기 추가 캡처 이미지들의 상기 나머지 영역들에서의 장면 변화들을 포함하는 트리거 이벤트들을 검출하는 단계를 더 포함하는, 방법.
  18. 제 1 항에 있어서,
    상기 센서 데이터는, 이미지 데이터, 모션 센서 데이터, 포지션 데이터, 바코드 인식, 텍스트 검출 결과들, 및 정황 정보 중 하나 이상을 포함하는, 방법.
  19. 제 18 항에 있어서,
    상기 정황 정보는, 사용자 거동, 사용자 선호도, 로케이션, 상기 사용자에 관한 정보, 시각 (time of day), 및 조명 품질 중 하나 이상을 포함하는, 방법.
  20. 제 1 항에 있어서,
    상기 센서 데이터는 안면의 이미지를 포함하고, 상기 서버로부터 수신된 정보는 상기 안면과 관련된 아이덴티티를 포함하는, 방법.
  21. 제 1 항에 있어서,
    상기 센서 데이터는 상이한 포지션들에서 카메라로 캡처된 오브젝트의 복수의 이미지들 및 상기 오브젝트에 대한 상기 카메라의 포즈의 대략적 추정을 포함하고, 상기 서버로부터 수신된 정보는 상기 포즈의 정제 및 상기 오브젝트의 3 차원 모델 중 적어도 하나를 포함하는, 방법.
  22. 센서 데이터를 획득하도록 구성된 센서;
    무선 송수신기; 및
    상기 센서 및 상기 무선 송수신기에 커플링된 프로세서로서, 상기 프로세서는, 상기 센서를 통해 센서 데이터를 획득하고, 이전에 획득된 센서 데이터에 대한 상기 센서 데이터의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하고, 상기 트리거 이벤트가 존재할 때, 상기 무선 송수신기를 통해 상기 센서 데이터를 외부 프로세서로 송신하고, 상기 무선 송수신기를 통해 상기 외부 프로세서로부터 상기 센서 데이터에 관련된 정보를 수신하도록 구성된, 상기 프로세서를 포함하는, 이동 플랫폼.
  23. 제 22 항에 있어서,
    상기 센서는 카메라이고,
    상기 센서 데이터는 오브젝트의 캡처 이미지를 포함하는, 이동 플랫폼.
  24. 제 23 항에 있어서,
    상기 프로세서는 상기 센서 데이터가 상기 외부 프로세서로 송신되기 전에 상기 캡처 이미지의 품질을 판정하도록 추가로 구성되고,
    상기 센서 데이터는 상기 캡처 이미지의 품질이 임계치보다 우수한 경우에만 상기 외부 프로세서로 송신되는, 이동 플랫폼.
  25. 제 24 항에 있어서,
    상기 프로세서는, 상기 캡처 이미지의 선명도 분석, 상기 캡처 이미지의 다수의 검출된 코너들의 분석, 및 상기 이미지로부터 도출되는 통계치를 갖는 학습 분류기의 프로세싱 중 적어도 하나를 수행하도록 구성됨으로써 상기 캡처 이미지의 품질을 판정하도록 구성된, 이동 플랫폼.
  26. 제 23 항에 있어서,
    상기 프로세서는, 상기 무선 송수신기를 통해 수신된 상기 센서 데이터에 관련된 정보에 기초하여 상기 오브젝트에 대한 증강을 렌더링하도록 추가로 구성된, 이동 플랫폼.
  27. 제 23 항에 있어서,
    상기 센서 데이터에 관련된 정보는 상기 오브젝트의 식별을 포함하는, 이동 플랫폼.
  28. 제 23 항에 있어서,
    상기 캡처 이미지는 복수의 오브젝트들을 포함하고,
    상기 센서 데이터에 관련된 정보는 상기 복수의 오브젝트들의 식별을 포함하는, 이동 플랫폼.
  29. 제 28 항에 있어서,
    상기 프로세서는, 상기 이동 플랫폼에 대한 상기 복수의 오브젝트들의 각각의 포즈들을 획득하고, 상기 센서 데이터에 관련된 정보 및 상기 포즈들을 사용하여 상기 복수의 오브젝트들의 각각을 트래킹하도록 추가로 구성된, 이동 플랫폼.
  30. 제 23 항에 있어서,
    상기 프로세서는, 상기 오브젝트에 대한 상기 이동 플랫폼의 포즈를 획득하고, 상기 센서 데이터에 관련된 정보 및 상기 이동 플랫폼의 포즈를 사용하여 상기 오브젝트를 트래킹하도록 추가로 구성된, 이동 플랫폼.
  31. 제 30 항에 있어서,
    상기 센서 데이터에 관련된 정보는 상기 오브젝트의 기준 이미지를 포함하고,
    상기 프로세서는 상기 캡처 이미지 및 상기 기준 이미지에 기초하여 상기 외부 프로세서로부터 제 1 포즈를 수신하도록 구성된, 이동 플랫폼.
  32. 제 31 항에 있어서,
    상기 프로세서는, 상기 제 1 포즈가 상기 서버로부터 수신될 때까지, 상기 오브젝트의 기준-프리 트래킹을 수행하도록 추가로 구성된, 이동 플랫폼.
  33. 제 31 항에 있어서,
    상기 프로세서는, 상기 제 1 포즈가 상기 외부 프로세서로부터 수신될 때, 상기 오브젝트의 제 2 캡처 이미지를 획득하고, 상기 캡처 이미지와 상기 제 2 캡처 이미지 사이에서 상기 오브젝트를 트래킹하여 증분 변화를 판정하고, 상기 증분 변화 및 상기 제 1 포즈를 사용하여 상기 오브젝트에 대한 상기 이동 플랫폼의 상기 포즈를 획득하도록 추가로 구성된, 이동 플랫폼.
  34. 제 31 항에 있어서,
    상기 프로세서는, 상기 오브젝트의 제 2 캡처 이미지를 획득하고, 상기 기준 이미지를 사용하여 상기 제 2 캡처 이미지에서 상기 오브젝트를 검출하고, 상기 제 2 캡처 이미지에서 검출된 상기 오브젝트 및 상기 기준 이미지를 사용하여 상기 오브젝트에 대한 상기 이동 플랫폼의 포즈를 획득하고, 상기 이동 플랫폼의 포즈를 사용하여 상기 오브젝트의 기준 기반 트래킹을 초기화하도록 추가로 구성된, 이동 플랫폼.
  35. 제 23 항에 있어서,
    상기 프로세서는 상기 무선 송신기를 통해 상기 외부 프로세서로부터, 상기 오브젝트의 2 차원 (2D) 모델, 상기 오브젝트의 3 차원 (3D) 모델, 증강 정보, 상기 오브젝트에 관한 핵심 정보, 및 상기 오브젝트 매칭에 관련된 정보를 수신하도록 추가로 구성된, 이동 플랫폼.
  36. 제 23 항에 있어서,
    상기 프로세서는 이전 캡처 이미지에 대한 상기 캡처 이미지에 장면 변화가 존재하는지를 판정하도록 구성됨으로써 트리거 이벤트가 존재하는지를 판정하도록 구성된, 이동 플랫폼.
  37. 제 36 항에 있어서,
    상기 프로세서는 상기 캡처 이미지 및 상기 이전 캡처 이미지를 사용하여 제 1 변화 메트릭을 판정하고, 상기 캡처 이미지 및 이전 트리거 이벤트로부터의 제 2 이전 캡처 이미지를 사용하여 제 2 변화 메트릭을 판정하고, 상기 캡처 이미지에 대한 히스토그램 변화 메트릭을 생성하고, 상기 제 1 변화 메트릭, 상기 제 2 변화 메트릭 및 상기 히스토그램 변화 메트릭을 사용하여 상기 장면 변화를 판정하도록 구성됨으로써 상기 장면 변화가 존재하는지를 판정하도록 구성된, 이동 플랫폼.
  38. 제 23 항에 있어서,
    상기 센서 데이터에 관련된 정보는 오브젝트 식별을 포함하고,
    상기 프로세서는, 상기 오브젝트의 추가 캡처 이미지들을 획득하고, 상기 오브젝트 식별을 사용하여 상기 추가 캡처 이미지들에서 상기 오브젝트를 식별하고, 상기 오브젝트 식별에 기초하여 상기 추가 캡처 이미지들에 대한 트래킹 마스크를 생성하되, 상기 추가 캡처 이미지들에서 상기 오브젝트가 식별되는 영역들을 나타내도록 상기 트래킹 마스크를 생성하고, 상기 오브젝트의 상기 추가 캡처 이미지들을 가지는 상기 트래킹 마스크를 사용하여 상기 추가 캡처 이미지들의 나머지 영역들을 식별하고, 상기 추가 캡처 이미지들의 상기 나머지 영역들에서의 장면 변화들을 포함하는 트리거 이벤트들을 검출하도록 추가로 구성된, 이동 플랫폼.
  39. 제 22 항에 있어서,
    상기 센서 데이터는, 이미지 데이터, 모션 센서 데이터, 포지션 데이터, 바코드 인식, 텍스트 검출 결과들, 및 정황 정보 중 하나 이상을 포함하는, 이동 플랫폼.
  40. 제 39 항에 있어서,
    상기 정황 정보는, 사용자 거동, 사용자 선호도, 로케이션, 상기 사용자에 관한 정보, 시각, 및 조명 품질 중 하나 이상을 포함하는, 이동 플랫폼.
  41. 제 22 항에 있어서,
    상기 센서는 카메라를 포함하고,
    상기 센서 데이터는 안면의 이미지를 포함하고,
    상기 무선 송수신기를 통해 수신된 정보는 상기 안면과 관련된 아이덴티티를 포함하는, 이동 플랫폼.
  42. 제 22 항에 있어서,
    상기 센서는 카메라를 포함하고,
    상기 센서 데이터는 상이한 포지션들에서 상기 카메라로 캡처된 오브젝트의 복수의 이미지들 및 상기 오브젝트에 대한 상기 카메라의 포즈의 대략적 추정을 포함하고,
    상기 서버로부터 수신된 정보는 상기 오브젝트의 3 차원 모델 및 상기 카메라의 포즈의 정제 중 적어도 하나를 포함하는, 이동 플랫폼.
  43. 센서 데이터를 획득하는 수단;
    이전에 획득된 센서 데이터에 대해 상기 센서 데이터에서의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 수단;
    상기 트리거 이벤트가 존재할 때 상기 센서 데이터를 서버로 송신하는 수단; 및
    상기 서버로부터 상기 센서 데이터에 관련된 정보를 수신하는 수단을 포함하는, 이동 플랫폼.
  44. 제 43 항에 있어서,
    상기 센서 데이터를 획득하는 수단은 카메라이고, 상기 센서 데이터는 오브젝트의 캡처 이미지이고,
    상기 센서 데이터에 관련된 정보는 상기 오브젝트의 기준 이미지를 포함하고,
    상기 이동 플랫폼은,
    상기 오브젝트에 대한 상기 이동 플랫폼의 포즈를 획득하는 수단; 및
    상기 오브젝트의 상기 기준 이미지 및 상기 이동 플랫폼의 포즈를 사용하여 상기 오브젝트를 트래킹하는 수단을 더 포함하는, 이동 플랫폼.
  45. 제 43 항에 있어서,
    상기 센서 데이터를 획득하는 수단은 카메라이고, 상기 센서 데이터는 오브젝트의 캡처 이미지이고,
    상기 트리거 이벤트가 존재하는지를 판정하는 수단은 이전 캡처 이미지에 대한 상기 캡처 이미지에서 장면 변화가 있는지를 판정하는 수단을 포함하는, 이동 플랫폼.
  46. 저장된 프로그램 코드를 포함하는 비일시적 컴퓨터 판독가능 매체로서,
    센서 데이터를 획득하는 프로그램 코드;
    이전에 획득된 센서 데이터에 대해 상기 센서 데이터에서의 변화를 포함하는 트리거 이벤트가 존재하는지를 판정하는 프로그램 코드;
    상기 트리거 이벤트가 존재할 때 상기 센서 데이터를 서버로 송신하는 프로그램 코드; 및
    상기 서버로부터 상기 센서 데이터에 관련된 정보를 수신하는 프로그램 코드를 포함하는, 비일시적 컴퓨터 판독가능 매체.
  47. 제 46 항에 있어서,
    상기 센서 데이터는 오브젝트의 캡처 이미지이고,
    상기 센서 데이터에 관련된 정보는 상기 오브젝트의 기준 이미지를 포함하고,
    상기 비일시적 컴퓨터 판독가능 매체는,
    상기 오브젝트에 대한 상기 이동 플랫폼의 포즈를 획득하는 프로그램 코드; 및
    상기 오브젝트의 상기 기준 이미지 및 상기 이동 플랫폼의 포즈를 사용하여 상기 오브젝트를 트래킹하는 프로그램 코드를 더 포함하는, 비일시적 컴퓨터 판독가능 매체.
  48. 제 46 항에 있어서,
    상기 센서 데이터는 오브젝트의 캡처 이미지이고,
    상기 트리거 이벤트가 존재하는지를 판정하는 프로그램 코드는 이전 캡처 이미지에 대한 상기 캡처 이미지에서 장면 변화가 있는지를 판정하는 프로그램 코드를 포함하는, 비일시적 컴퓨터 판독가능 매체.
KR1020137010149A 2010-09-20 2011-09-19 클라우드 보조 증강 현실을 위한 적응적 프레임워크 KR101548834B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US38466710P 2010-09-20 2010-09-20
US61/384,667 2010-09-20
US13/235,847 US9495760B2 (en) 2010-09-20 2011-09-19 Adaptable framework for cloud assisted augmented reality
PCT/US2011/052135 WO2012040099A1 (en) 2010-09-20 2011-09-19 An adaptable framework for cloud assisted augmented reality
US13/235,847 2011-09-19

Publications (2)

Publication Number Publication Date
KR20130060339A true KR20130060339A (ko) 2013-06-07
KR101548834B1 KR101548834B1 (ko) 2015-08-31

Family

ID=44773155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137010149A KR101548834B1 (ko) 2010-09-20 2011-09-19 클라우드 보조 증강 현실을 위한 적응적 프레임워크

Country Status (8)

Country Link
US (2) US9495760B2 (ko)
EP (1) EP2619728B1 (ko)
JP (3) JP6000954B2 (ko)
KR (1) KR101548834B1 (ko)
CN (1) CN103119627B (ko)
ES (1) ES2745739T3 (ko)
HU (1) HUE047021T2 (ko)
WO (1) WO2012040099A1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150108099A (ko) * 2014-03-17 2015-09-25 에스케이플래닛 주식회사 객체의 자세 기반 검색 결과 제공 장치, 그 방법 및 컴퓨터 프로그램이 기록된 기록매체
KR20150108556A (ko) * 2014-03-18 2015-09-30 에스케이플래닛 주식회사 객체 자세 기반 연출 효과 제공 장치 및 방법, 그리고 이를 위한 컴퓨터 프로그램이 기록된 기록매체
KR101953567B1 (ko) * 2017-11-03 2019-03-04 서울과학기술대학교 산학협력단 가상현실 서비스를 위한 콘텐츠 후처리 방법
KR101953578B1 (ko) * 2017-10-19 2019-03-04 서울과학기술대학교 산학협력단 클라우드 기반의 가상현실 서비스를 위한 콘텐츠 가공 방법 및 장치
WO2019177181A1 (ko) * 2018-03-12 2019-09-19 라인플러스(주) 뉴럴 네트워크를 이용하여 상황을 인지하는 증강 현실 제공 장치, 제공 방법 및 상기 방법을 실행하기 위하여 매체에 저장된 컴퓨터 프로그램
KR102103430B1 (ko) * 2018-11-08 2020-04-22 서울과학기술대학교 산학협력단 클라우드에 기반한 가상현실 서비스의 레이턴시 측정방법 및 시스템

Families Citing this family (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110135144A1 (en) * 2009-07-01 2011-06-09 Hand Held Products, Inc. Method and system for collecting voice and image data on a remote device and coverting the combined data
US10395125B2 (en) 2016-10-06 2019-08-27 Smr Patents S.A.R.L. Object detection and classification with fourier fans
WO2012016370A1 (en) * 2010-08-02 2012-02-09 Peking University Representative motion flow extraction for effective video classification and retrieval
ES2745739T3 (es) * 2010-09-20 2020-03-03 Qualcomm Inc Un entorno adaptable para realidad aumentada asistida por la nube
US8750557B2 (en) * 2011-02-15 2014-06-10 Ebay Inc. Identifying product metadata from an item image
US8810598B2 (en) 2011-04-08 2014-08-19 Nant Holdings Ip, Llc Interference based augmented reality hosting platforms
US9424255B2 (en) * 2011-11-04 2016-08-23 Microsoft Technology Licensing, Llc Server-assisted object recognition and tracking for mobile devices
US10099614B2 (en) * 2011-11-28 2018-10-16 Magna Electronics Inc. Vision system for vehicle
ITVI20120041A1 (it) * 2012-02-22 2013-08-23 St Microelectronics Srl Rilevazione di caratteristiche di un'immagine
US8965057B2 (en) 2012-03-02 2015-02-24 Qualcomm Incorporated Scene structure-based self-pose estimation
JP5892236B2 (ja) * 2012-03-26 2016-03-23 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
US9125255B2 (en) 2012-05-03 2015-09-01 Abl Ip Holding Llc Networked architecture for system of lighting devices having sensors, for intelligent applications
US9066200B1 (en) * 2012-05-10 2015-06-23 Longsand Limited User-generated content in a virtual reality environment
US9064326B1 (en) * 2012-05-10 2015-06-23 Longsand Limited Local cache of augmented reality content in a mobile computing device
US9349218B2 (en) 2012-07-26 2016-05-24 Qualcomm Incorporated Method and apparatus for controlling augmented reality
CN104541300B (zh) * 2012-09-28 2019-01-22 英特尔公司 增强现实信息的确定
US10269179B2 (en) * 2012-10-05 2019-04-23 Elwha Llc Displaying second augmentations that are based on registered first augmentations
US10180715B2 (en) 2012-10-05 2019-01-15 Elwha Llc Correlating user reaction with at least an aspect associated with an augmentation of an augmented view
US10713846B2 (en) 2012-10-05 2020-07-14 Elwha Llc Systems and methods for sharing augmentation data
EP3349121B1 (en) 2012-10-08 2019-04-24 Patrick Soon-Shiong Distributed storage system
US9076257B2 (en) * 2013-01-03 2015-07-07 Qualcomm Incorporated Rendering augmented reality based on foreground object
US10109075B2 (en) 2013-03-15 2018-10-23 Elwha Llc Temporal element restoration in augmented reality systems
US10025486B2 (en) 2013-03-15 2018-07-17 Elwha Llc Cross-reality select, drag, and drop for augmented reality systems
US9111348B2 (en) 2013-03-15 2015-08-18 Toyota Motor Engineering & Manufacturing North America, Inc. Computer-based method and system of dynamic category object recognition
US9070217B2 (en) 2013-03-15 2015-06-30 Daqri, Llc Contextual local image recognition dataset
WO2014165862A1 (en) * 2013-04-05 2014-10-09 Ladd Mark J Systems and methods for sensor-based mobile gaming
US9818150B2 (en) 2013-04-05 2017-11-14 Digimarc Corporation Imagery and annotations
EP2808805A1 (en) * 2013-05-30 2014-12-03 Thomson Licensing Method and apparatus for displaying metadata on a display and for providing metadata for display
WO2014205715A1 (en) * 2013-06-27 2014-12-31 Intel Corporation Face recognition with parallel detection and tracking, and/or grouped feature motion shift tracking
US9443355B2 (en) 2013-06-28 2016-09-13 Microsoft Technology Licensing, Llc Reprojection OLED display for augmented reality experiences
US9514571B2 (en) 2013-07-25 2016-12-06 Microsoft Technology Licensing, Llc Late stage reprojection
TWI484452B (zh) * 2013-07-25 2015-05-11 Univ Nat Taiwan Normal 擴增實境學習系統及其方法
US9582516B2 (en) 2013-10-17 2017-02-28 Nant Holdings Ip, Llc Wide area augmented reality location-based services
JP6260215B2 (ja) * 2013-11-13 2018-01-17 富士通株式会社 特徴点追跡装置、及び、特徴点追跡方法
WO2015090420A1 (en) * 2013-12-19 2015-06-25 Metaio Gmbh Slam on a mobile device
US10572215B1 (en) * 2014-03-31 2020-02-25 Amazon Technologies, Inc. Extendable architecture for augmented reality system
US9652893B2 (en) 2014-04-29 2017-05-16 Microsoft Technology Licensing, Llc Stabilization plane determination based on gaze location
US9729784B2 (en) * 2014-05-21 2017-08-08 Google Technology Holdings LLC Enhanced image capture
US9723109B2 (en) 2014-05-28 2017-08-01 Alexander Hertel Platform for constructing and consuming realm and object feature clouds
KR102223308B1 (ko) 2014-05-29 2021-03-08 삼성전자 주식회사 영상처리 방법 및 이를 구현한 전자 장치
US20170164056A1 (en) * 2014-06-25 2017-06-08 Thomson Licensing Annotation method and corresponding device, computer program product and storage medium
US9626577B1 (en) * 2014-09-15 2017-04-18 Amazon Technologies, Inc. Image selection and recognition processing from a video feed
US9883122B2 (en) * 2014-09-16 2018-01-30 Qualcomm Incorporated Event-based down sampling
CA2983046A1 (en) 2015-04-23 2016-10-27 Hasbro, Inc. Context-aware digital play
US10586102B2 (en) * 2015-08-18 2020-03-10 Qualcomm Incorporated Systems and methods for object tracking
GB2542561B (en) * 2015-09-21 2019-04-17 Canon Kk A portable device and a method for processing a data stream
US20170132267A1 (en) * 2015-11-11 2017-05-11 Le Holdings (Beijing) Co., Ltd. Pushing system and method based on natural information recognition, and a client end
US20170280130A1 (en) * 2016-03-25 2017-09-28 Microsoft Technology Licensing, Llc 2d video analysis for 3d modeling
GB2549940A (en) * 2016-04-29 2017-11-08 Kudan Ltd Discovering points of interest and identifying reference images in video processing and efficient search and storage therefor
JP6533761B2 (ja) * 2016-05-18 2019-06-19 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理システム、および情報処理方法
JP6499993B2 (ja) 2016-05-18 2019-04-10 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理システム、および情報処理方法
US20180034581A1 (en) * 2016-07-27 2018-02-01 International Business Machines Corporation Quality of service assessment for conferences
US10274582B2 (en) * 2016-09-30 2019-04-30 Bae Systems Information And Electronic Systems Integration Inc. Remote unit data registration
US11400860B2 (en) 2016-10-06 2022-08-02 SMR Patents S.à.r.l. CMS systems and processing methods for vehicles
US10242503B2 (en) 2017-01-09 2019-03-26 Snap Inc. Surface aware lens
KR101897505B1 (ko) * 2017-01-23 2018-09-12 광주과학기술원 다중 카메라 환경에서의 관심 객체를 실시간으로 추적하기 위한 방법 및 시스템
WO2018144315A1 (en) 2017-02-01 2018-08-09 Pcms Holdings, Inc. System and method for augmented reality content delivery in pre-captured environments
CN106899829B (zh) * 2017-02-07 2018-06-29 深圳云天励飞技术有限公司 一种视频处理方法及装置
US10628675B2 (en) 2017-02-07 2020-04-21 Fyusion, Inc. Skeleton detection and tracking via client-server communication
CN108428242B (zh) * 2017-02-15 2022-02-08 宏达国际电子股份有限公司 图像处理装置及其方法
CN108875460B (zh) * 2017-05-15 2023-06-20 腾讯科技(深圳)有限公司 增强现实处理方法及装置、显示终端及计算机存储介质
IT201700058961A1 (it) * 2017-05-30 2018-11-30 Artglass S R L Metodo e sistema di fruizione di un contenuto editoriale in un sito preferibilmente culturale o artistico o paesaggistico o naturalistico o fieristico o espositivo
JP6762913B2 (ja) * 2017-07-11 2020-09-30 キヤノン株式会社 情報処理装置、情報処理方法
US10360832B2 (en) 2017-08-14 2019-07-23 Microsoft Technology Licensing, Llc Post-rendering image transformation using parallel image transformation pipelines
WO2019077697A1 (ja) * 2017-10-18 2019-04-25 三菱電機株式会社 画像共有支援装置、画像共有システム、及び、画像共有支援方法
US10796185B2 (en) * 2017-11-03 2020-10-06 Facebook, Inc. Dynamic graceful degradation of augmented-reality effects
CN107818592B (zh) * 2017-11-24 2022-04-01 北京华捷艾米科技有限公司 协作式同步定位与地图构建的方法、系统及交互系统
US10565464B2 (en) * 2017-12-21 2020-02-18 At&T Intellectual Property I, L.P. Adaptive cloud offloading of mobile augmented reality
US10970425B2 (en) * 2017-12-26 2021-04-06 Seiko Epson Corporation Object detection and tracking
US11847773B1 (en) 2018-04-27 2023-12-19 Splunk Inc. Geofence-based object identification in an extended reality environment
US11145123B1 (en) 2018-04-27 2021-10-12 Splunk Inc. Generating extended reality overlays in an industrial environment
CN112088377A (zh) * 2018-05-07 2020-12-15 谷歌有限责任公司 实时对象检测和跟踪
US11030813B2 (en) 2018-08-30 2021-06-08 Snap Inc. Video clip object tracking
EP3629290B1 (en) 2018-09-26 2023-01-04 Apple Inc. Localization for mobile devices
US11176737B2 (en) 2018-11-27 2021-11-16 Snap Inc. Textured mesh building
US10902685B2 (en) 2018-12-13 2021-01-26 John T. Daly Augmented reality remote authoring and social media platform and system
EP3899865A1 (en) * 2018-12-20 2021-10-27 Snap Inc. Virtual surface modification
US10810430B2 (en) 2018-12-27 2020-10-20 At&T Intellectual Property I, L.P. Augmented reality with markerless, context-aware object tracking
US10984575B2 (en) 2019-02-06 2021-04-20 Snap Inc. Body pose estimation
WO2020251772A1 (en) 2019-06-11 2020-12-17 Ecolab Usa Inc. Corrosion inhibitor formulation for geothermal reinjection well
US11189098B2 (en) 2019-06-28 2021-11-30 Snap Inc. 3D object camera customization system
US11232646B2 (en) 2019-09-06 2022-01-25 Snap Inc. Context-based virtual object rendering
US11196842B2 (en) 2019-09-26 2021-12-07 At&T Intellectual Property I, L.P. Collaborative and edge-enhanced augmented reality systems
CN112752119B (zh) * 2019-10-31 2023-12-01 中兴通讯股份有限公司 一种时延误差校正方法、终端设备、服务器及存储介质
US11227442B1 (en) 2019-12-19 2022-01-18 Snap Inc. 3D captions with semantic graphical elements
US11263817B1 (en) 2019-12-19 2022-03-01 Snap Inc. 3D captions with face tracking
TWI793390B (zh) * 2019-12-25 2023-02-21 財團法人工業技術研究院 資訊顯示方法及其處理裝置與顯示系統
GB2592040B (en) * 2020-02-13 2022-10-12 Advanced Risc Mach Ltd Method and System for Providing Augmented Reality Displays
EP4200847A1 (en) 2020-08-24 2023-06-28 FD IP & Licensing LLC Previsualization devices and systems for the film industry
CN114138829B (zh) * 2020-09-03 2022-11-29 金篆信科有限责任公司 共享Prepare Statement的方法、系统和网络设备
KR20220039110A (ko) 2020-09-21 2022-03-29 삼성전자주식회사 증강 현실 시스템 및 그 생성 방법
US11615592B2 (en) 2020-10-27 2023-03-28 Snap Inc. Side-by-side character animation from realtime 3D body motion capture
US11660022B2 (en) 2020-10-27 2023-05-30 Snap Inc. Adaptive skeletal joint smoothing
US11748931B2 (en) 2020-11-18 2023-09-05 Snap Inc. Body animation sharing and remixing
US11734894B2 (en) 2020-11-18 2023-08-22 Snap Inc. Real-time motion transfer for prosthetic limbs
US11450051B2 (en) 2020-11-18 2022-09-20 Snap Inc. Personalized avatar real-time motion capture
US11880947B2 (en) 2021-12-21 2024-01-23 Snap Inc. Real-time upper-body garment exchange
CN117237399A (zh) * 2022-06-08 2023-12-15 华为云计算技术有限公司 一种物体跟踪方法以及相关设备
US11875492B1 (en) 2023-05-01 2024-01-16 Fd Ip & Licensing Llc Systems and methods for digital compositing

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6118456A (en) 1998-04-02 2000-09-12 Adaptive Media Technologies Method and apparatus capable of prioritizing and streaming objects within a 3-D virtual environment
EP1089198A3 (en) * 1999-09-30 2003-03-12 Hewlett-Packard Company, A Delaware Corporation Content-based image searching
JP2003266349A (ja) 2002-03-18 2003-09-24 Sony Corp 位置認識方法、その装置、そのプログラム、その記録媒体及び位置認識装置搭載型ロボット装置
JP2004145448A (ja) * 2002-10-22 2004-05-20 Toshiba Corp 端末装置、サーバ装置および画像加工方法
JP4418225B2 (ja) * 2003-12-18 2010-02-17 オリンパス株式会社 情報呈示システム
US7656822B1 (en) * 2003-12-22 2010-02-02 Sun Microsystems, Inc. Method and apparatus for decentralized device and service description and discovery
JP2006293912A (ja) 2005-04-14 2006-10-26 Toshiba Corp 情報表示システム、情報表示方法および携帯端末装置
WO2007026162A2 (en) 2005-09-01 2007-03-08 Astragroup As (A Norwegian Company) Post- recording data analysis and retrieval
US20070285554A1 (en) * 2005-10-31 2007-12-13 Dor Givon Apparatus method and system for imaging
US8493323B2 (en) * 2006-08-02 2013-07-23 Research In Motion Limited System and method for adjusting presentation of moving images on an electronic device according to an orientation of the device
US7932938B2 (en) * 2006-08-25 2011-04-26 Micron Technology, Inc. Method, apparatus and system providing adjustment of pixel defect map
FR2911707B1 (fr) 2007-01-22 2009-07-10 Total Immersion Sa Procede et dispositifs de realite augmentee utilisant un suivi automatique, en temps reel, d'objets geometriques planaires textures, sans marqueur, dans un flux video.
GB2452508A (en) 2007-09-05 2009-03-11 Sony Corp Generating a three-dimensional representation of a sports game
US20100214111A1 (en) 2007-12-21 2010-08-26 Motorola, Inc. Mobile virtual and augmented reality system
EP2276234A4 (en) * 2008-04-23 2017-11-22 NEC Corporation Image processing device, camera, image processing method, and program
JP2009301197A (ja) 2008-06-11 2009-12-24 Fujifilm Corp プレビュー提供方法、装置及びプログラム並びに画像付対象物提供装置
JP2010118019A (ja) 2008-11-14 2010-05-27 Sharp Corp 端末装置、配信装置、端末装置の制御方法、配信装置の制御方法、制御プログラムおよび記録媒体
US9683853B2 (en) * 2009-01-23 2017-06-20 Fuji Xerox Co., Ltd. Image matching in support of mobile navigation
US20100257252A1 (en) 2009-04-01 2010-10-07 Microsoft Corporation Augmented Reality Cloud Computing
US20100309225A1 (en) * 2009-06-03 2010-12-09 Gray Douglas R Image matching for mobile augmented reality
KR20110005140A (ko) * 2009-07-09 2011-01-17 주식회사 아인스아이앤에스 컨텐츠 처리 방법 및 컨텐츠 제공 시스템
KR101667715B1 (ko) * 2010-06-08 2016-10-19 엘지전자 주식회사 증강현실을 이용한 경로 안내 방법 및 이를 이용하는 이동 단말기
KR101357262B1 (ko) * 2010-08-13 2014-01-29 주식회사 팬택 필터 정보를 이용한 객체 인식 장치 및 방법
ES2745739T3 (es) 2010-09-20 2020-03-03 Qualcomm Inc Un entorno adaptable para realidad aumentada asistida por la nube
US8488011B2 (en) * 2011-02-08 2013-07-16 Longsand Limited System to augment a visual data stream based on a combination of geographical and visual information
US8447329B2 (en) * 2011-02-08 2013-05-21 Longsand Limited Method for spatially-accurate location of a device using audio-visual information
US8392450B2 (en) * 2011-02-08 2013-03-05 Autonomy Corporation Ltd. System to augment a visual data stream with user-specific content
US8493353B2 (en) * 2011-04-13 2013-07-23 Longsand Limited Methods and systems for generating and joining shared experience
US20120300020A1 (en) * 2011-05-27 2012-11-29 Qualcomm Incorporated Real-time self-localization from panoramic images
US8521128B1 (en) * 2011-12-09 2013-08-27 Google Inc. Method, system, and computer program product for obtaining crowd-sourced location information
US9674507B2 (en) * 2013-04-30 2017-06-06 Qualcomm Incorporated Monocular visual SLAM with general and panorama camera movements

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150108099A (ko) * 2014-03-17 2015-09-25 에스케이플래닛 주식회사 객체의 자세 기반 검색 결과 제공 장치, 그 방법 및 컴퓨터 프로그램이 기록된 기록매체
KR20150108556A (ko) * 2014-03-18 2015-09-30 에스케이플래닛 주식회사 객체 자세 기반 연출 효과 제공 장치 및 방법, 그리고 이를 위한 컴퓨터 프로그램이 기록된 기록매체
KR101953578B1 (ko) * 2017-10-19 2019-03-04 서울과학기술대학교 산학협력단 클라우드 기반의 가상현실 서비스를 위한 콘텐츠 가공 방법 및 장치
KR101953567B1 (ko) * 2017-11-03 2019-03-04 서울과학기술대학교 산학협력단 가상현실 서비스를 위한 콘텐츠 후처리 방법
WO2019177181A1 (ko) * 2018-03-12 2019-09-19 라인플러스(주) 뉴럴 네트워크를 이용하여 상황을 인지하는 증강 현실 제공 장치, 제공 방법 및 상기 방법을 실행하기 위하여 매체에 저장된 컴퓨터 프로그램
US11501500B2 (en) 2018-03-12 2022-11-15 LINE Plus Corporation Augmented reality (AR) providing apparatus and method for recognizing context using neural network, and non-transitory computer-readable record medium for executing the method
KR102103430B1 (ko) * 2018-11-08 2020-04-22 서울과학기술대학교 산학협력단 클라우드에 기반한 가상현실 서비스의 레이턴시 측정방법 및 시스템

Also Published As

Publication number Publication date
US20120243732A1 (en) 2012-09-27
JP6000954B2 (ja) 2016-10-05
JP6290331B2 (ja) 2018-03-07
ES2745739T3 (es) 2020-03-03
US9633447B2 (en) 2017-04-25
US9495760B2 (en) 2016-11-15
CN103119627B (zh) 2017-03-08
EP2619728A1 (en) 2013-07-31
CN103119627A (zh) 2013-05-22
JP2013541096A (ja) 2013-11-07
JP5989832B2 (ja) 2016-09-07
HUE047021T2 (hu) 2020-04-28
JP2017011718A (ja) 2017-01-12
JP2015144474A (ja) 2015-08-06
EP2619728B1 (en) 2019-07-17
WO2012040099A1 (en) 2012-03-29
US20160284099A1 (en) 2016-09-29
KR101548834B1 (ko) 2015-08-31

Similar Documents

Publication Publication Date Title
US9633447B2 (en) Adaptable framework for cloud assisted augmented reality
US11145083B2 (en) Image-based localization
JP6043856B2 (ja) Rgbdカメラを用いた頭部ポーズ推定
EP3008695B1 (en) Robust tracking using point and line features
US10565764B2 (en) Collaborative augmented reality system
JP6144828B2 (ja) 動的に構築された環境地図データに基づくオブジェクト追跡
EP3100210B1 (en) Dynamically updating a feature database that contains features corresponding to a known target object
KR20160003066A (ko) 일반적인 카메라 움직임 및 파노라마 카메라 움직임을 갖는 단안 시각 slam
JP2016533557A (ja) オブジェクト検出および追跡のための地図データの動的拡張
CN107430436B (zh) 全景手势的自动检测
US10122912B2 (en) Device and method for detecting regions in an image
US20150095360A1 (en) Multiview pruning of feature database for object recognition system
US20230298143A1 (en) Object removal during video conferencing
US10282633B2 (en) Cross-asset media analysis and processing
KR101273634B1 (ko) 모바일 기기를 이용하는 증강현실 환경에서 복수 객체 추적방법 및 이를 이용한 시스템
JP6306274B1 (ja) オブジェクト検出中の適応的なエッジ状の特徴の選択
JP2021184115A (ja) 情報処理装置、情報処理方法、及び、プログラム
TW202238068A (zh) 自監督多圖框單眼深度估計模型

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180628

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190624

Year of fee payment: 5