KR20170041905A - 원격 전문가 시스템 - Google Patents

원격 전문가 시스템 Download PDF

Info

Publication number
KR20170041905A
KR20170041905A KR1020177006975A KR20177006975A KR20170041905A KR 20170041905 A KR20170041905 A KR 20170041905A KR 1020177006975 A KR1020177006975 A KR 1020177006975A KR 20177006975 A KR20177006975 A KR 20177006975A KR 20170041905 A KR20170041905 A KR 20170041905A
Authority
KR
South Korea
Prior art keywords
wearable device
virtual objects
manipulation
expert
user
Prior art date
Application number
KR1020177006975A
Other languages
English (en)
Other versions
KR102292455B1 (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 KR20170041905A publication Critical patent/KR20170041905A/ko
Application granted granted Critical
Publication of KR102292455B1 publication Critical patent/KR102292455B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • 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
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/001Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/001Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background
    • G09G3/003Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background to produce spatial visual effects
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/14Solving problems related to the presentation of information to be displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/16Use of wireless transmission of display information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Optics & Photonics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

원격 전문가 애플리케이션은 제1 웨어러블 디바이스에서 디스플레이된 가상적 객체들의 조작을 식별한다. 가상적 객체들은 제2 웨어러블 디바이스로 관측된 물리적 객체에 기초하여 렌더링된다. 가상적 객체들의 조작은 제1 웨어러블 디바이스로부터 수신된다. 가상적 객체들의 조작의 시각화는 제2 웨어러블 디바이스의 디스플레이에 대하여 생성된다. 가상적 객체들의 조작의 시각화는 제2 웨어러블 디바이스로 통신된다.

Description

원격 전문가 시스템{REMOTE EXPERT SYSTEM}
관련 출원들에 대한 상호-참조
이 출원은 그 전체적으로 참조를 위해 본원에 편입되는, 2014년 8월 15일자로 출원된 미국 출원 번호 제14/461,252호의 이익을 주장한다.
본원에서 개시된 발명 요지는 일반적으로 데이터의 프로세싱에 관한 것이다. 구체적으로, 본 개시내용은 가상 모델과 관련하여 컴포넌트들의 동적 측량을 이용하는 원격 전문가 시스템을 생성하기 위한 시스템들 및 방법들을 다룬다.
디바이스는 디바이스로 캡처된 이미지에 추가로, 데이터를 생성하고 디스플레이하기 위하여 이용될 수 있다. 예를 들어, 증강 현실(augmented reality)(AR)은 그 엘리먼트(element)들이 사운드, 비디오, 그래픽, 또는 GPS 데이터와 같은 컴퓨터-생성된 감각 입력에 의해 증강되는 물리적, 실세계 환경의 직접적인 또는 간접적인 라이브 뷰이다. 진보된 AR 기술(예컨대, 컴퓨터 비전 추가, 객체 인식, 및 다른 상보적 기술들)의 도움으로, 사용자의 주변 실세계에 대한 정보는 대화형으로 된다. 환경 및 그 객체들에 대한 디바이스-생성된(예컨대, 인공적인) 정보는 실세계 상에서 오버레이(overlay)될 수 있다.
일부 실시예들은 동반되는 도면들의 도면에서 제한이 아니라, 예로서 예시되어 있다.
도 1은 일부 예시적인 실시예들에 따라, 원격 전문가 시스템을 위하여 적당한 네트워크의 예를 예시하는 블록도이다.
도 2는 사용자 웨어러블 디바이스(user wearable device)의 모듈들(예컨대, 컴포넌트들)의 예시적인 실시예를 예시하는 블록도이다.
도 3은 전문가 웨어러블 디바이스의 모듈들(예컨대, 컴포넌트들)의 예시적인 실시예를 예시하는 블록도이다.
도 4는 원격 전문가 서버의 예시적인 실시예를 예시하는 블록도이다.
도 5는 측량 엔진의 예시적인 실시예를 예시하는 블록도이다.
도 6은 원격 전문가 서버의 동작의 예시적인 실시예를 예시하는 래더 도면(ladder diagram)이다.
도 7은 원격 전문가 서버의 동작의 예시적인 실시예를 예시하는 플로우차트이다.
도 8은 일부 예시적인 실시예들에 따라, 머신-판독가능 매체로부터 명령들을 판독할 수 있고 본원에서 논의된 방법론들 중의 임의의 하나 이상을 수행할 수 있는 머신의 컴포넌트들을 예시하는 블록도이다.
도 9는 예시적인 실시예에 따라, 이동 디바이스를 예시하는 블록도이다.
예시적인 방법들 및 시스템들은 증강 현실 애플리케이션들을 위한 원격 전문가 시스템에 관한 것이다. 예들은 가능한 변형들을 단지 유형화한다. 이와 다르게 명시적으로 기재되지 않으면, 컴포넌트들 및 기능들은 임의적이고 조합되거나 세분화될 수도 있고, 동작들은 시퀀스(sequence)에 있어서 변동될 수도 있거나, 조합되거나 세분화될 수도 있다. 다음의 설명에서는, 설명의 목적들을 위하여, 여러 특정 세부사항들이 예시적인 실시예들의 철저한 이해를 제공하기 위하여 기재되어 있다. 그러나, 본 발명 요지는 이 특정 세부사항들 없이 실시될 수도 있다는 것이 본 기술분야의 통상의 기술자에게 분명할 것이다.
증강 현실 애플리케이션들은 사용자가 웨어러블 디바이스의 카메라에 의해 캡처된 물리적 객체의 이미지 상에 오버레이된 3 차원 가상적 객체의 형태와 같은 정보를 경험하도록 한다. 물리적 객체는 증강 현실 애플리케이션이 식별할 수 있는 시각적 기준을 포함할 수도 있다. 물리적 객체의 이미지와 오버레이되거나 관여된 3 차원 가상적 객체와 같은 추가적인 정보의 시각화는 디바이스의 디스플레이에서 생성된다. 3 차원 가상적 객체는 인식된 시각적 기준 또는 물리적 객체의 캡처된 이미지에 기초하여 선택될 수도 있다. 3 차원 가상적 객체의 시각화의 렌더링은 시각적 기준에 대한 디스플레이의 위치에 기초할 수도 있다. 다른 증강 현실 애플리케이션들은 사용자가 실제의 물리적 세계에서 임의의 객체의 뷰(view) 또는 이미지의 상부에 오버레이된 추가적인 정보의 시각화를 경험하도록 한다. 가상적 객체는 3 차원 가상적 객체 또는 2 차원 가상적 객체를 포함할 수도 있다. 예를 들어, 3 차원 가상적 객체는 의자 또는 애니메이팅된 공룡의 3 차원 뷰를 포함할 수도 있다. 2 차원 가상적 객체는 대화 박스, 메뉴, 또는 야구 선수에 대한 통계 정보와 같은 기입된 정보의 2 차원 뷰를 포함할 수도 있다. 가상적 객체의 이미지는 웨어러블 디바이스에서 렌더링될 수도 있다.
원격 전문가 서버의 원격 전문가 애플리케이션은 제1 웨어러블 디바이스에서 디스플레이된 가상적 객체들의 조작을 식별한다. 가상적 객체들은 제2 웨어러블 디바이스로 관측된 물리적 객체에 기초하여 렌더링된다. 가상적 객체들은 제1 웨어러블 디바이스에 의해 관측된 기준 객체와 관련하여 제1 웨어러블 디바이스에서 디스플레이된다. 가상적 객체들의 조작은 제1 웨어러블 디바이스로부터 수신된다. 가상적 객체들의 조작의 시각화는 제2 웨어러블 디바이스의 디스플레이에 대하여 생성된다. 가상적 객체들의 조작의 시각화는 제2 웨어러블 디바이스로 통신된다. 사용자는 제1 웨어러블 디바이스를 착용할 수도 있다. 전문가는 제2 웨어러블 디바이스를 착용할 수도 있다. 또 다른 예에서, 사용자는 전문가의 이동 디바이스(예컨대, 태블릿)와 통신하기 위하여 웨어러블 디바이스를 이용한다. 또 다른 예에서, 사용자는 웨어러블 디바이스를 가지는 전문가와 통신하기 위하여 이동 디바이스(예컨대, 태블릿)를 이용할 수도 있다. 또 다른 예에서, 사용자의 이동 디바이스(예컨대, 태블릿)는 전문가의 또 다른 이동 디바이스(예컨대, 태블릿)와 통신할 수도 있다.
일 예시적인 실시예에서, 원격 전문가 애플리케이션은 제2 웨어러블 디바이스로부터 비디오 피드(video feed), 로케이션 정보(location information), 및 방위 정보(orientation information)를 수신한다. 원격 전문가 애플리케이션은 비디오 피드로부터 물리적 객체를 식별한다. 원격 전문가 애플리케이션은 물리적 객체의 식별에 기초하여 가상적 객체들의 3 차원 모델을 생성한다. 원격 전문가 애플리케이션은 가상적 객체들의 3 차원 모델을 제2 웨어러블 디바이스로 통신한다. 제2 웨어러블 디바이스는 물리적 객체와 관련하여 가상적 객체들의 3 차원 모델을 렌더링한다.
또 다른 예시적인 실시예에서, 원격 전문가 애플리케이션은 제2 웨어러블 디바이스로부터 보조에 대한 요청을 수신한다. 보조에 대한 요청은 물리적 객체에 관련된다. 원격 전문가 애플리케이션은 제1 웨어러블 디바이스의 사용자를 물리적 객체에 관련된 전문가로서 식별한다.
또 다른 예시적인 실시예에서, 원격 전문가 애플리케이션은 제1 웨어러블 디바이스로부터의 가상적 객체들의 조작을 기록한다.
또 다른 예시적인 실시예에서, 원격 전문가 애플리케이션은 시각적 제스처 모듈(visual gesture module)을 이용하여 제1 웨어러블 디바이스로부터의 가상적 객체들의 조작을 식별한다. 시각적 제스처 모듈은 제1 웨어러블 디스플레이에서의 초점 영역 및 가상적 객체의 특징부를 결정하고, 특징부가 제1 웨어러블 디바이스의 디스플레이의 초점 영역에 있는 것에 응답하여 특징부의 상태를 변경한다.
또 다른 예시적인 실시예에서, 원격 전문가 애플리케이션은 물리적 제스처 모듈(physical gesture module)을 이용하여 제1 웨어러블 디바이스로부터의 가상적 객체들의 조작을 식별한다. 물리적 제스처 모듈은 제1 웨어러블 디바이스에서 디스플레이된 가상적 객체들에 대한 제1 웨어러블 디바이스의 사용자의 손가락의 물리적 이동을 결정한다.
또 다른 예시적인 실시예에서, 시각화는 가상적 객체들의 조작의 애니메이션(animation)을 포함한다. 제1 웨어러블 디바이스는 물리적 객체에 관련된 전문가에 의해 동작된다. 제2 웨어러블 디바이스는 사용자에 의해 동작된다.
또 다른 예시적인 실시예에서, 원격 전문가 애플리케이션은 제1 웨어러블 디바이스로부터 가상적 객체들의 조작을 수신된다. 원격 전문가 애플리케이션은 가상적 객체들의 조작의 시각화를 제2 웨어러블 디바이스의 사용자에게 통신한다. 원격 전문가 애플리케이션은 제2 웨어러블 디바이스의 사용자로부터 가상적 객체들의 조작을 수신한다. 원격 전문가 애플리케이션은 가상적 객체들의 조작의 시각화를 제1 웨어러블 디바이스의 전문가에게 통신한다. 가상적 객체들은 제1 웨어러블 디바이스의 전문가 및 제2 웨어러블 디바이스의 사용자 둘 다에 의해 조작될 수도 있다.
또 다른 예시적인 실시예에서, 원격 전문가 애플리케이션은 복수의 웨어러블 디바이스들로부터 비디오 피드, 로케이션 정보, 및 방위 정보를 수신한다. 원격 전문가 애플리케이션은 복수의 웨어러블 디바이스들로부터 수신된 비디오 피드들, 로케이션 정보, 및 방위 정보에 기초하여 가상적 객체들의 3 차원 모델을 생성한다. 웨어러블 디바이스들은 동일한 물리적 객체 상에 포커싱된다. 원격 전문가 애플리케이션은 물리적 객체의 조작을 식별하기 위하여 비디오 피드들/로케이션 정보/방위 정보에 대한 분석들을 수행하고, 물리적 객체의 조작에 기초하여 가상적 객체들의 3 차원 모델을 업데이트하고, 물리적 객체에 관련된 기준 데이터에 대한 물리적 객체의 조작에 관련된 동적 스테이터스(dynamic status)를 생성한다.
상이한 각도들 및 로케이션들로부터 동일한 물리적 객체를 보고 있는 다수의 웨어러블 디바이스들(예컨대, 카메라 및 디스플레이를 포함하는 이동 디바이스들)은 물리적 객체의 3 차원 모델을 생성하고 재구성하기 위하여 추가로 이용될 수도 있다. 다수의 웨어러블 디바이스들을 활용하는 측량 시스템을 위한 시스템 및 방법이 설명된다. 측량 애플리케이션은 물리적 객체의 3 차원 모델과 연관된 컴포넌트들의 측량을 생성한다. 예를 들어, 컴포넌트들은 건식벽체 상의 못(nail)들, 계기판 상의 스위치들, 공장 머신 상의 버튼들, 보트(boat), 또는 임의의 산업 물리적 객체를 포함할 수도 있다. 측량 애플리케이션은 웨어러블 디바이스들로부터 비디오 피드들, 로케이션 정보, 및 방위 정보를 수신한다. 객체의 3 차원 모델은 웨어러블 디바이스들로부터 수신된 비디오 피드들, 로케이션 정보, 및 방위 정보에 기초하여 생성된다. 분석들은 객체의 조작(예컨대, 못이 벽에 망치질되고 있고, 스위치가 계기판 상에서 동작됨)을 식별하기 위하여 비디오 피드들에 대해 수행된다. 객체의 3 차원 모델은 객체의 조작에 기초하여 업데이트된다. 객체의 조작에 관련된 동적 스테이터스는 객체에 관련된 기준 데이터에 대하여 생성된다. 객체의 3 차원 모델과 연관된 컴포넌트들의 측량이 생성된다.
일 예시적인 실시예에서, 객체의 조작은 객체의 기존 컴포넌트의 수정(예컨대, 벽 상의 스위치), 객체로의 새로운 컴포넌트의 추가(예컨대, 벽 내의 못), 또는 객체의 기존의 컴포넌트의 제거(예컨대, 도어로부터의 핸들)를 포함한다.
객체 인식은 객체 상의 컴포넌트(예컨대, 벽 상의 못들)를 식별하기 위하여 비디오 피드들에 대해 수행된다. 동적 스테이터스는 키 상태들 또는 속성들을 이용한 객체 상의 조작 또는 액션의 타입(예컨대, 망치질되지 않은 못, 색칠된 표면, 접착 단계, 망치질 단계 등)의 식별, 객체의 조작에서 이용된 도구(예컨대, 망치, 톱 등)의 식별, 객체의 3 차원 모델에 대한 조작의 로케이션(예컨대, 보트의 측면 패널 상에 망치질된 못들), 및 객체의 조작과 연관된 웨어러블 디바이스의 식별(예컨대, 웨어러블 디바이스 A의 사용자는 망치를 이용하는 사용자임)을 포함할 수도 있다.
기준 데이터는 기준 객체(예컨대, 보트, 자동차, 건물)의 3 차원 모델, 기준 객체(예컨대, 주택)를 완성하기 위한 기준 프로세스(예컨대, 단계 3 은 프레임을 만들기 위한 것이고, 단계 4는 배관을 설치하기 위한 것임), 및 기준 프로세스에 관련된 기준 준수성(예컨대, 빔 당 4 개의 브라켓(bracket)들 또는 브레이스(brace)들이 있어야 하고, 로케이션 또는 건식벽체 당 하나의 콘센트(outlet)가 있어야 함)을 포함할 수도 있다.
또 다른 예시적인 실시예에서, 비-일시적 머신-판독가능 저장 디바이스는, 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서로 하여금, 본 개시내용 내에서 논의된 방법 동작들을 수행하게 하는 명령들의 세트를 저장할 수도 있다.
도 1은 일부 예시적인 실시예들에 따라, 웨어러블 디바이스들(106 및 108)과 통신하는 원격 전문가 서버(112)를 동작시키기 위하여 적당한 네트워크 환경(100)을 예시하는 네트워크 도면이다. 네트워크 환경(100)은 컴퓨터 네트워크(110)를 통해 서로 통신가능하게 결합된, 웨어러블 디바이스들(106 및 108), 모니터링 클라이언트(114), 및 원격 전문가 서버(112)를 포함한다. 웨어러블 디바이스들(106 및 108), 모니터링 클라이언트(114), 및 원격 전문가 서버(112)는 도 8 및 도 9에 대하여 이하에서 설명된 바와 같이, 컴퓨터 시스템에서 전체적으로 또는 부분적으로 각각 구현될 수도 있다. 원격 전문가 서버(112)는 네트워크-기반 시스템의 일부일 수도 있다. 예를 들어, 네트워크-기반 시스템은 3 차원 모델들 및 3 차원 모델들에 대한 컴포넌트들 또는 항목들의 로케이션들과 같은 추가적인 정보를 웨어러블 디바이스들(106 및 108) 및 모니터링 클라이언트(114)에 제공하는 클라우드-기반 서버 시스템일 수도 있거나 클라우드-기반 서버 시스템을 포함할 수도 있다.
사용자 웨어러블 디바이스(106)는 물리적 객체(102)를 관측하는 사용자 또는 전문가에 의해 착용되거나 보유될 수도 있다. 예를 들어, 사용자는 건물을 위한 건축 작업자일 수도 있다. 사용자는 네트워크 환경(100)의 일부가 아니라, 대응하는 웨어러블 디바이스(106)와 연관된다. 예를 들어, 웨어러블 디바이스는 디스플레이 및 카메라를 갖는 두부-장착형 컴퓨팅 디바이스(head-mounted computing device)와 같은, 디스플레이를 갖는 컴퓨팅 디바이스일 수도 있다. 디스플레이 및 카메라는 별도의 디바이스들 상에 배치될 수도 있지만, 통신가능하게 접속될 수도 있다. 컴퓨팅 디바이스는 핸드헬드(hand held)일 수도 있거나, 사용자의 두부(head) 상에 일시적으로 장착될 수도 있다. 일 예에서, 디스플레이는 웨어러블 디바이스의 카메라로 캡처되는 것을 디스플레이하는 스크린일 수도 있다. 또 다른 예에서, 디바이스의 디스플레이는 웨어러블 컴퓨팅 안경들의 렌즈들과 같이, 투명할 수도 있다. 또 다른 예들에서, 디스플레이는 자동차, 비행기, 또는 트럭의 윈드실드(windshield)와 같은 투명 디스플레이일 수도 있다. 디스플레이는 비-투명할 수도 있고, 사용자의 시계(field of vision)를 커버하기 위하여 사용자에 의해 착용가능할 수도 있다.
각각의 사용자 웨어러블 디바이스(106)는 물리적 객체(102) 주위의 상이한 로케이션들에서 위치된 사용자들에 의해 착용될 수도 있다. 예를 들어, 물리적 객체(102)는 건축 중인 보트일 수도 있고, 각각의 웨어러블 디바이스는 조선소에서 보트 상에서 작업하는 건축 작업자의 헬멧에 장착될 수도 있다. 건축 작업자들은 보트 주위의 상이한 로케이션들에서 위치될 수도 있다. 이에 따라, 건축 작업자들은 보트의 상이한 부분들을 동시에 관측할 수도 있다. 건축 작업자들은 그들이 완성된 보트의 가상적 3 차원 모델로 보트의 그 뷰를 증가시키도록 하는 대응하는 웨어러블 디바이스에서의 애플리케이션의 사용자들일 수도 있다. 예를 들어, 애플리케이션은 보트의 실세계 물리적 환경에서 보트의 부품들, 2 차원 물리적 객체(예컨대, 도어 상의 마킹), 3 차원 물리적 객체(예컨대, 입구 상에 위치된 조각상), 로케이션(예컨대, 주요 데크, 포트, 우현), 또는 임의의 시각적 또는 비-시각적 기준들(예컨대, 벽들 또는 가구의 지각된 코너들)에 의해 트리거링된 경험을 건축 작업자들에게 제공하도록 구성된 증강 현실 애플리케이션을 포함할 수도 있다. 예를 들어, 건축 작업자는 2 차원 물리적 객체의 이미지를 캡처하기 위하여 대응하는 웨어러블 디바이스의 카메라를 지시할 수도 있다. 이미지는 웨어러블 디바이스의 증강 현실 애플리케이션의 컨텍스트 인식 데이터세트 모듈(context recognition dataset module)과 같은 로컬 데이터베이스를 이용하여 웨어러블 디바이스에서 로컬 방식으로 추적되고 인식된다. 로컬 컨텍스트 인식 데이터세트 모듈은 실세계 물리적 객체들 또는 기준들과 연관된 가상적 객체들의 라이브러리를 포함할 수도 있다. 그 다음으로, 증강 현실 애플리케이션은 이미지에 대응하는 추가적인 정보(예컨대, 3 차원 모델)를 생성하고, 인식된 이미지를 식별하는 것에 응답하여, 이 추가적인 정보를 웨어러블 디바이스의 디스플레이에서 제시한다. 캡처된 이미지가 웨어러블 디바이스에서 로컬 방식으로 인식되지 않을 경우, 웨어러블 디바이스는 컴퓨터 네트워크(110) 상에서 원격 전문가 서버(112)의 데이터베이스로부터 캡처된 이미지에 대응하는 추가적인 정보(예컨대, 3 차원 모델)를 다운로딩한다.
사용자 웨어러블 디바이스(106)는 물리적 객체(102)의 상이한 각도들로부터 비디오 및 이미지들을 캡처하기 위하여 이용될 수도 있다. 구조형 광(structured light)에 의해 생성된 데이터와 같은 다른 센서 데이터가 캡처될 수도 있다. 일 예시적인 실시예에서, 사용자 웨어러블 디바이스(106)는 대응하는 사용자가 보고 있는 것의 비디오 피드를 원격 전문가 서버(112)로 브로드캐스팅할 수도 있다. 또 다른 예에서, 사용자 웨어러블 디바이스(106)는 주기적인 간격들로 프레임들 또는 이미지들을 캡처하고, 그것들을 원격 전문가 서버(112)로 브로드캐스팅한다. 또 다른 예에서, 사용자 웨어러블 디바이스(106)는 규칙적인 간격들로, 및/또는 서로에 대한 그리고 물리적 객체(102)에 대한 그 지리적 로케이션에 기초하여 이미지들을 브로드캐스팅한다. 예를 들어, 이미지들은 물리적 객체(102) 주위에서 시계방향 또는 반시계방향과 같은 순차적인 패턴으로 캡처될 수도 있다. 다른 예들은 다른 사용자 웨어러블 디바이스들로부터의 이미지 캡처 및 비디오 피드의 조합을 포함한다. 비디오/이미지 캡처의 패턴은 각각의 웨어러블 디바이스의 이동, 로케이션, 및 방위에 기초하여 교대할 수도 있다. 예를 들어, 웨어러블 디바이스가 물리적 객체(102)로부터 눈길을 돌릴 경우, 캡처의 레이트는 감소될 수도 있거나, 또는 이미지가 캡처되지 않을 수도 있다. 또 다른 예에서, 웨어러블 디바이스들의 일부가 나머지 웨어러블 디바이스들 사이의 근접성에 비해 서로에 더 근접하게 위치될 경우, 그것들이 서로에 근접하다는 것을 검출하는 웨어러블 디바이스들은 더 낮은 레이트로 비디오/이미지들을 캡처하고 브로드캐스팅할 수도 있다. 유사하게, 다른 웨어러블 디바이스들로부터 상대적으로 더 먼 웨어러블 디바이스들은 더 높은 레이트로 비디오/이미지들을 캡처하고 브로드캐스팅할 수도 있다.
사용자 웨어러블 디바이스(106)로부터 수신된 데이터(예컨대, 카메라를 이용하여 캡처된 이미지 데이터, GPS 또는 WiFi를 이용하여 캡처된 로케이션 데이터, 가속도계를 이용하여 캡처된 방위 데이터)는 물리적 객체(102)의 3 차원 모델을 재구성하고 생성하기 위하여 이용될 수도 있다. 예를 들어, 조선소에서의 건축 작업자들에 의해 착용된 웨어러블 디바이스들은 그들이 만들어지고 있는 보트에 근접하자마자, 또는 거리 또는 반경 문턱이 교차될 때에 이미지들/비디오를 캡처하는 것을 시작할 수도 있다. 보트 주위의 상이한 각도들 및 방위들로부터의 2 차원 이미지들은 3 차원 객체 인식 알고리즘들을 갖는 공통적인 컴퓨터 비전(computer vision) 시스템들을 이용하여 만들어지고 있는 보트의 3 차원 모델을 재구성하기 위하여 이용될 수도 있다. 3 차원 재구성 모델은 자동 포스트-프로세싱(post-processing) 단계로서, 또는 원래의 데이터 캡처가 발생한 후에 시스템 내로 양호하게 도입된 새로운 질의 또는 수식에 관련된 바와 같은 요구 시에 생성될 수도 있다.
또한, 사용자 웨어러블 디바이스(106)로부터 수신된 데이터는 이미지들 및 비디오 프레임들에서 객체들을 채우고 식별하기 위한 컴퓨터 비전 객체 인식 시스템에 제공될 수도 있다. 일 실시예에서, 객체 인식 시스템은 원격 전문가 서버(112)의 일부일 수도 있다. 이에 따라, 사용자 웨어러블 디바이스(106)로부터의 데이터는 물리적 객체(102)의 3 차원 모델을 재구성할 뿐만 아니라, 인식된 객체들의 측량 또는 재고(inventory)를 유지하기 위하여 이용될 수도 있다. 예를 들어, 원격 전문가 서버(112)는 얼마나 많은 못들이 보트의 동쪽 측부 상의 패널에서 넣어졌는지, 누가 최후에 망치를 이용하였는지, 언제 망치가 이용되었는지, 그리고 어디에서 망치가 이용되었는지를 계속 추적할 수도 있다. 측량 시스템(도시되지 않음)은 만들어지고 있거나 작업되고 있는 물리적 객체(102)의 3 차원 모델을 물리적 객체(102)의 3 차원 완성된 모델과 비교하기 위하여 또한 이용될 수도 있다. 또 다른 예에서, 측량 시스템은 웨어러블 디바이스로부터 수신된 데이터 및 기준 데이터에 기초하여 검출된 문제를 식별하거나, 이 문제를 웨어러블 디바이스의 사용자에게 경보하기 위하여 이용될 수도 있다. 예를 들어, 원격 전문가 서버(112)는 기준 데이터에 기초하여 못들이 잘못된 로케이션에서 망치질되었다는 것을 검출할 수도 있고, 대응하는 웨어러블 디바이스를 사용자에게 통지할 수도 있다.
사용자 웨어러블 디바이스(106)는 인식된 물리적 객체(102)에 기초하여 가상적 객체들의 시각화를 생성할 수도 있다. 예를 들어, 사용자 웨어러블 디바이스(106)는 공조 유닛(air conditioning unit)을 보고 있을 수도 있다. 공조 유닛의 컴포넌트들과 같은 가상적 객체들은 사용자 웨어러블 디바이스(106)를 이용한 시청을 위하여 렌더링될 수도 있다. 이에 따라, 사용자는 물리적 객체(102) 주위, 그 상부, 또는 물리적 객체(102)에 대한 임의의 다른 미리 정의된 위치 상에서 부유하는 가상적 커버, 가상적 회로 박스, 및 가상적 제어 스위치의 3 차원 모델들과 같은 상이한 컴포넌트들을 볼 수 있을 수도 있다.
사용자 웨어러블 디바이스(106)의 사용자는 공조 유닛을 고정하는 것을 시도할 수도 있고, 사용자 웨어러블 디바이스(106)에 의해 식별된 바와 같은 공조 유닛의 브랜드 또는 타입에 기초하여 공조 유닛들의 분야에서의 전문가로부터의 보조를 요구할 수도 있다. 사용자 웨어러블 디바이스(106)의 사용자는 보조에 대하여 원격 전문가 서버(112)에 요청할 수도 있다. 원격 전문가 서버(112)는 물리적 객체(102)에 관련된 전문가를 식별할 수도 있고, 가상적 객체들의 모델들과 같은 데이터를 대응하는 전문가 웨어러블 디바이스(108)로 통신할 수도 있다.
이에 따라, 전문가 웨어러블 디바이스(108)는 사용자 웨어러블 디바이스(106)에 의해 관측된 가상적 객체들의 디스플레이를 생성할 수도 있다. 전문가 웨어러블 디바이스(108)는 기준 객체(104)와 관련하여 가상적 객체들을 관측할 수도 있다. 예를 들어, 전문가 웨어러블 디바이스(108)는 유사한 물리적 공조 유닛 또는 임의의 다른 물리적 기준 객체를 관측할 수도 있다. 가상적 객체들의 3 차원 모델은 전문가가 유사한 물리적 공조 유닛 또는 물리적 기준 객체 주위로 이동할 때에 상이한 관점들로부터 관측될 수도 있다. 전문가 웨어러블 디바이스(108)는 전문가가 가상적 객체들을 조작하는 것을 검출할 수도 있고, 그 조작들을 원격 전문가 서버(112)로 통신할 수도 있다. 예를 들어, 전문가 웨어러블 디바이스(108)는 전문가가 가상적 스위치를 턴 오프하고, 그 다음으로, 공조 유닛으로부터 멀어지도록 가상적 커버를 이동시키는 것을 캡처할 수도 있다.
일 예시적인 실시예에서, 웨어러블 디바이스는 원격 전문가 서버(112)의 추적 센서들 및 컴퓨팅 자원들을 이용하여 일부 프로세스들(예컨대, 웨어러블 디바이스에서 디스플레이되어야 할 가상적 객체들의 추적 및 렌더링)을 오프로딩(offloading)할 수도 있다. 추적 센서들은 웨어러블 디바이스 내부의 센서들에 의존해야 할 필요 없이, 웨어러블 디바이스의 로케이션 및 방위를 외부적으로 추적하기 위하여 이용될 수도 있다. 추적 센서들은 부가적으로, 또는 고장안전(failsafe)/중복성으로서, 또는 미세 튜닝을 위하여 이용될 수도 있다. 추적 센서들은 웨어러블 디바이스를 가지는 사용자의 로케이션, 사용자와 물리적 환경에서의 센서들(예컨대, 장소 또는 방의 코너들에서 배치된 센서들) 사이의 거리들, 또는 사용자가 보고 있는 것을 추적하기 위한 웨어러블 디바이스의 방위(예컨대, 웨어러블 디바이스가 지시되고, 웨어러블 디바이스가 테스트 코트 상의 선수를 향해 지시되고, 웨어러블 디바이스가 방 안의 사람에게 지시되는 방향)를 결정하기 위하여,
광학적 센서들(예컨대, 심도-가능형(depth-enabled) 3D 카메라들), 무선 센서들(예컨대, 블루투스(Bluetooth), WiFi), GPS 센서들, 생체계측 센서들, 및 오디오 센서들을 포함할 수도 있다.
원격 전문가 서버(112)의 컴퓨팅 자원들은 (웨어러블 디바이스로 내부적으로, 또는 추적 센서들로 외부적으로 생성된) 추적 데이터에 기초하여 가상적 객체들을 결정하고 렌더링하기 위하여 이용될 수도 있다. 그러므로, 증강 현실 렌더링은 원격 전문가 서버(112) 상에서 수행되고, 대응하는 웨어러블 디바이스로 다시 스트리밍된다. 이에 따라, 웨어러블 디바이스는 임의의 가상적 객체를 컴퓨팅하고 렌더링해야 할 필요가 없고, 웨어러블 디바이스의 디스플레이에서 이미 렌더링된 가상적 객체를 디스플레이할 수도 있다. 예를 들어, 증강 현실 렌더링은 핸들이 아키텍처 사양들 또는 도시 코드에 따라 설치되어야 할 로케이션을 포함할 수도 있다.
또 다른 실시예에서, 추적 센서들로부터의 데이터는 사용자가 어떻게 물리적 환경과 상호작용하는지의 분석을 위하여, 원격 전문가 서버(112)에서의 분석 데이터 프로세싱을 위해 이용될 수도 있다. 예를 들어, 분석 데이터는 사용자가 물리적 또는 가상적 객체 상의 어떤 로케이션들(예컨대, 포인트들 또는 특징부들)을 보았는지, 사용자가 물리적 또는 가상적 객체 상의 각각의 로케이션을 얼마나 오래 보았는지, 사용자가 물리적 또는 가상적 객체를 볼 때에 웨어러블 디바이스를 어떻게 보유하였는지, 사용자가 가상적 객체의 어느 특징부들과 상호작용하였는지(예컨대, 사용자가 가상적 객체에서의 링크 상에서 탭(tap)하였는지 여부), 및 그 임의의 적당한 조합을 추적할 수도 있다. 사용자 웨어러블 디바이스(106)는 분석 데이터에 관련된 시각화 컨텐츠 데이터세트를 수신한다. 그 다음으로, 사용자 웨어러블 디바이스(106)는 시각화 컨텐츠 데이터세트에 기초하여, 추가적인 또는 시각화 특징부들, 또는 새로운 경험을 갖는 가상적 객체를 생성한다.
도 1에서 도시된 머신들, 데이터베이스들, 또는 디바이스들 중의 임의의 것은 그 머신, 데이터베이스, 또는 디바이스에 대하여 본원에서 설명된 기능들 중의 하나 이상을 수행하기 위하여 특수-목적 컴퓨터가 되도록 소프트웨어에 의해 수정된(예컨대, 구성되거나 프로그래밍된) 범용 컴퓨터에서 구현될 수도 있다. 예를 들어, 본원에서 설명된 방법론들 중의 임의의 하나 이상을 구현할 수 있는 컴퓨터 시스템은 도 8 및 도 9에 대하여 이하에서 논의된다. 본원에서 이용된 바와 같이, "데이터베이스"는 데이터 저장 자원이고, 텍스트 파일, 테이블, 스프레드시트(spreadsheet), 관계 데이터베이스(예컨대, 객체-관계 데이터베이스), 트리플 저장소, 계층적 데이터 저장소, 또는 그 임의의 적당한 조합으로서 구조화된 데이터를 저장할 수도 있다. 또한, 도 1에서 예시된 머신들, 데이터베이스들, 또는 디바이스들 중의 임의의 2 개 이상은 단일 머신으로 조합될 수도 있고, 임의의 단일 머신, 데이터베이스, 또는 디바이스에 대하여 본원에서 설명된 기능들은 다수의 머신들, 데이터베이스들, 또는 디바이스들 중에서 세분화될 수도 있다.
컴퓨터 네트워크(110)는 머신들(예컨대, 원격 전문가 서버(112)), 데이터베이스들, 및 웨어러블 디바이스들 사이에서 또는 그 중에서의 통신을 가능하게 하는 임의의 네트워크일 수도 있다. 따라서, 컴퓨터 네트워크(110)는 유선 네트워크, 무선 네트워크(예컨대, 이동 또는 셀룰러 네트워크), 또는 그 임의의 적당한 조합일 수도 있다. 컴퓨터 네트워크(110)는 사설 네트워크, 공공 네트워크(예컨대, 인터넷), 또는 그 임의의 적당한 조합을 구성하는 하나 이상의 부분들을 포함할 수도 있다.
도 2는 일부 예시적인 실시예들에 따라, 사용자 웨어러블 디바이스(106)의 모듈들(예컨대, 컴포넌트들)을 예시하는 블록도이다. 사용자 웨어러블 디바이스(106)는 센서들(202), 디스플레이(204), 프로세서(206), 및 저장 디바이스(208)를 포함할 수도 있다. 예를 들어, 사용자 웨어러블 디바이스(106)는 웨어러블 컴퓨팅 디바이스, 차량 컴퓨터, 태블릿 컴퓨터, 내비게이션 디바이스, 휴대용 미디어 디바이스, 또는 사용자의 스마트 폰일 수도 있다. 사용자는 인간 사용자(예컨대, 인간), 머신 사용자(예컨대, 사용자 웨어러블 디바이스(106)와 상호작용하도록 소프트웨어 프로그램에 의해 구성된 컴퓨터), 또는 그 임의의 적당한 조합(예컨대, 머신에 의해 보조된 인간 또는 인간에 의해 감독된 머신)일 수도 있다.
센서들(202)은 예를 들어, 근접성 또는 로케이션 센서(예컨대, 근접장 통신, GPS, 블루투스, WiFi), 광학적 센서(예컨대, 카메라), 방위 센서(예컨대, 자이로스코프(gyroscope)), 오디오 센서(예컨대, 마이크로폰), 또는 그 임의의 적당한 조합을 포함할 수도 있다. 예를 들어, 센서들(202)은 사용자 웨어러블 디바이스(106)에서 후방 대향 카메라 및 전방 대향 카메라를 포함할 수도 있다. 본원에서 설명된 센서들은 오직 예시의 목적들을 위한 것이고, 이에 따라, 센서들(202)은 설명된 것들로 제한되지 않는다는 것에 주목한다. 센서들(202)은 비디오 및 오디오를 캡처하도록 구성될 수도 있다.
디스플레이(204)는 예를 들어, 터치스크린 디스플레이 상에서의 접촉을 통해 사용자 입력을 수신하도록 구성된 터치스크린 디스플레이를 포함할 수도 있다. 일 예에서, 디스플레이(204)는 프로세서(206)에 의해 생성된 이미지들을 디스플레이하도록 구성된 스크린 또는 모니터를 포함할 수도 있다. 또 다른 예에서, 디스플레이(204)는 사용자가 디스플레이(204)(예컨대, 헤드-업 디스플레이(Head-Up Display)를 통해 볼 수 있도록, 투명하거나 반-불투명할 수도 있다.
프로세서(206)는 브로드캐스트 애플리케이션(210) 및 디스플레이 애플리케이션(212)을 포함할 수도 있다. 브로드캐스트 애플리케이션(210)은 데이터를 사용자 웨어러블 디바이스(106)로부터 원격 전문가 서버(112)로 통신하도록 구성될 수도 있다. 예를 들어, 브로드캐스트 애플리케이션(210)은 비디오 프레임 피드 모듈(214) 및 로케이션/방위 모듈(216)을 포함할 수도 있다. 비디오 프레임 피드 모듈(214)은 센서들(202)로부터의 카메라를 이용하여 캡처된 이미지들 및/또는 비디오 프레임들을 전송하도록 구성될 수도 있다. 또 다른 예에서, 비디오 프레임 피드 모듈(214)은 센서들(202)을 이용하여 캡처된 비디오에 기초하여 비디오 피드를 전송하기 위하여 이용될 수도 있다. 로케이션/방위 모듈(216)은 사용자 웨어러블 디바이스(106)의 지리적 로케이션 및 방위를 결정하도록 구성될 수도 있다. 지리적 로케이션은 GPS, WiFi, 오디오 톤, 광 판독, 및 다른 수단을 이용하여 결정될 수도 있다. 방위는 사용자 웨어러블 디바이스(106)가 어디에 위치되는지와, 사용자 웨어러블 디바이스(106)가 어느 방향으로 방위가 정해지는지를 결정하기 위하여, 사용자 웨어러블 디바이스(106)에서의 내부 나침반 및 가속도계를 이용하여 결정될 수도 있다.
디스플레이 애플리케이션(212)은 디스플레이(204)에서 증강된 데이터를 생성하도록 구성될 수도 있다. 증강된 데이터는 예를 들어, 가상적 객체들 렌더링들을 포함할 수도 있다. 일 실시예에서, 디스플레이 애플리케이션(212)은 증강 현실(AR) 렌더링 모듈(218) 및 원격 전문가 모듈(224)을 포함할 수도 있다.
AR 렌더링 모듈(218)은 디스플레이(204)에서 가상적 객체를 생성하도록 구성될 수도 있다. AR 렌더링 모듈(218)은 사용자 웨어러블 디바이스(106)의 디스플레이(204)에서 사용자 웨어러블 디바이스(106)의 카메라에 의해 캡처된 물리적 객체의 이미지 상에 오버레이된(예컨대, 그 상에 중첩되거나, 또는 그렇지 않을 경우에 나란히 디스플레이된) 3 차원 가상적 객체의 시각화를 생성하는 로컬 렌더링 엔진을 포함할 수도 있다. 예를 들어, 가상적 객체는 노브(knob)가 어디에 설치되어야 하는지를 예시하기 위하여 물리적 도어 상에 위치된 가상적 노브들을 포함할 수도 있다. 또 다른 예에서, 가상적 객체는 컬러화된 배선 개략도들을 포함할 수도 있다. 3 차원 가상적 객체의 시각화는 사용자 웨어러블 디바이스(106)의 카메라에 대한 물리적 객체의 위치(예컨대, 그 물리적 로케이션, 방위, 또는 둘 다)를 조절함으로써 조작될 수도 있다. 유사하게, 3 차원 가상적 객체의 시각화는 물리적 객체에 대한 사용자 웨어러블 디바이스(106)의 카메라의 위치를 조절함으로써 조작될 수도 있다.
일 예시적인 실시예에서, AR 렌더링 모듈(218)은 캡처된 실세계 물리적 객체와 연관된 가상적 객체들의 3 차원 모델들을 취출(retrieve)할 수도 있다. 예를 들어, 캡처된 이미지는 식별가능한 이미지, 기호, 글자, 수, 또는 머신-판독가능 코드로 구성되는 시각적 기준(마커로서 또한 지칭됨)을 포함할 수도 있다. 예를 들어, 시각적 기준은 바 코드, 신속 응답(quick response)(QR) 코드, 3 차원 가상적 객체와 이전에 연관되었던 이미지(예컨대, 3 차원 가상적 객체에 대응하는 것으로 이전에 결정되었던 이미지)를 포함할 수도 있다.
일 예시적인 실시예에서, AR 렌더링 모듈(218)은, 물리적 객체(예컨대, 물리적 전화)를 식별하고, 물리적 객체의 물리적 조작들(예컨대, 물리적 전화 핸드셋을 들어올리는 것)과 연관된 가상적 기능들(예컨대, 근처의 텔레비전의 음량을 증가시키거나 감소시키는 것)을 액세스하고, 물리적 객체의 물리적 조작에 대응하는 가상적 기능을 생성하는 조작 모듈을 포함할 수도 있다.
원격 전문가 모듈(224)은 사용자 웨어러블 디바이스(106)의 사용자가 물리적 객체(102)에 관련된 보조를 요청하도록 할 수도 있다. 예를 들어, 사용자가 물리적 객체(102)를 고정하고 연구함에 있어서 도움을 필요로 할 경우, 원격 전문가 모듈(224)은 물리적 객체(102)에 관련된 전문가로부터의 보조를 탐색하기 위하여 원격 전문가 서버(112)와 통신할 수도 있다. 원격 전문가 모듈(224)은 AR 렌더링 모듈(218)에 의해 렌더링된 물리적 객체(102) 및 가상적 객체들의 비디오 피드를 포함하는 데이터를 원격 전문가 서버(112)로 통신할 수도 있다. 원격 전문가 서버(112)는 정보를 대응하는 전문가 웨어러블 디바이스(108)로 중계할 수도 있다. 또한, 원격 전문가 모듈(224)은 전문가 웨어러블 디바이스(108)로부터의 가상적 객체들의 식별된 조작들에 기초하여 가상적 객체들의 시각화를 수정할 수도 있다. 예를 들어, 전문가는 물리적 객체(102)의 특정한 영역을 강조표시하기 위하여 가상적 객체를 수정하거나 추가할 수도 있다. 전문가 웨어러블 디바이스(108)는 수정되거나 추가된 가상적 객체를, 원격 전문가 서버(112)를 통해 원격 전문가 모듈(224)로 통신할 수도 있다.
또 다른 예에서, AR 렌더링 모듈(218)에 의해 생성된 가상적 객체들은 공유되고, 가상적 객체들의 임의의 수정은 사용자 웨어러블 디바이스(106)와 전문가 웨어러블 디바이스(108) 사이에서 동기화되고 공유될 수도 있다.
저장 디바이스(208)는 시각적 기준들(예컨대, 이미지들) 및 대응하는 경험들(예컨대, 3 차원 가상적 객체들, 3 차원 가상적 객체들의 대화형 특징부들)의 데이터베이스를 저장하도록 구성될 수도 있다. 예를 들어, 시각적 기준은 머신-판독가능 코드 또는 이전에 식별된 이미지(예컨대, 신발의 그림)를 포함할 수도 있다. 신발의 이전에 식별된 이미지는 신발의 그림에 대한 사용자 웨어러블 디바이스(106)의 위치를 조작함으로써 상이한 각도들로부터 관측될 수 있는 신발의 3 차원 가상적 모델에 대응할 수도 있다. 3 차원 가상적 신발의 특징부들은 신발의 3 차원 가상적 모델 상의 선택가능한 아이콘(icon)들을 포함할 수도 있다. 아이콘은 사용자 웨어러블 디바이스(106)를 탭하거나 이동시킴으로써 선택되거나 활성화될 수도 있다.
일 예시적인 실시예에서, 저장 디바이스(208)는 물리적 객체(102)의 3 차원 모델을 저장할 수도 있다. 예를 들어, 3 차원 모델은 마무리된 보트의 3 차원 모델을 포함할 수도 있다. 웨어러블 디바이스는 웨어러블 디바이스에 의해 캡처된 물리적 객체(102)의 이미지 상에 중첩된 최종적인 제품의 뷰를 사용자에게 제시할 수 있다.
또 다른 예시적인 실시예에서, 저장 디바이스(208)는 주 컨텐츠 데이터세트, 컨텍스트 컨텐츠 데이터세트, 및 시각화 컨텐츠 데이터세트를 포함한다. 주 컨텐츠 데이터세트는 예를 들어, 이미지들 및 대응하는 경험(예컨대, 3 차원 가상적 객체 모델들과의 상호작용)의 제1 세트를 포함한다. 예를 들어, 이미지는 하나 이상의 가상적 객체 모델들과 연관될 수도 있다. 주 컨텐츠 데이터세트는 원격 전문가 서버(112)에 의해 결정된 가장 인기있는 이미지들의 코어 세트를 포함할 수도 있다. 예를 들어, 이미지들의 코어 세트는 10 개의 가장 인기있는 잡지들의 커버들을 도시하는 이미지들 및 그 대응하는 경험들(예컨대, 10 개의 가장 인기있는 잡지들을 나타내는 가상적 객체들)을 포함할 수도 있다. 또 다른 예에서, 원격 전문가 서버(112)는 원격 전문가 서버(112)에 의해 수신된 가장 인기있는 또는 종종 스캐닝된 이미지들에 기초하여 이미지들의 코어 세트를 생성할 수도 있다. 이에 따라, 주 컨텐츠 데이터세트는 사용자 웨어러블 디바이스(106)의 센서들(202)에 의해 스캐닝된 객체들 또는 이미지들에 종속되지 않는다.
컨텍스트 컨텐츠 데이터세트는 예를 들어, 원격 전문가 서버(112)로부터 취출된 이미지들 및 대응하는 경험들(예컨대, 3 차원 가상적 객체 모델들)의 제2 세트를 포함한다. 예를 들어, 주 컨텐츠 데이터세트에서 인식되지 않는, 사용자 웨어러블 디바이스(106)로 캡처된 이미지들은 인식을 위하여 원격 전문가 서버(112)로 제출된다. 캡처된 이미지가 원격 전문가 서버(112)에 의해 인식될 경우, 대응하는 경험은 사용자 웨어러블 디바이스(106)에 의해 다운로딩될 수도 있고, 컨텍스트 컨텐츠 데이터세트에서 저장될 수도 있다. 이에 따라, 컨텍스트 컨텐츠 데이터세트는 사용자 웨어러블 디바이스(106)가 이용되었던 컨텐츠에 의존한다. 이와 같이, 컨텍스트 컨텐츠 데이터세트는 사용자 웨어러블 디바이스(106)의 AR 렌더링 모듈(218)에 의해 스캐닝된 객체들 또는 이미지들에 종속된다.
본원에서 설명된 모듈들 중의 임의의 하나 이상은 하드웨어(예컨대, 머신의 프로세서) 또는 하드웨어 및 소프트웨어의 조합을 이용하여 구현될 수도 있다. 예를 들어, 본원에서 설명된 임의의 모듈은 그 모듈에 대하여 본원에서 설명된 동작들을 수행하도록 프로세서를 구성할 수도 있다. 또한, 이 모듈들 중의 임의의 2 개 이상은 단일 모듈로 조합될 수도 있고, 단일 모듈에 대하여 본원에서 설명된 기능들은 다수의 모듈들 중에서 세분화될 수도 있다. 또한, 다양한 예시적인 실시예들에 따르면, 단일 머신, 데이터베이스, 또는 디바이스 내에서 구현되는 것으로서 본원에서 설명된 모듈들은 다수의 머신들, 데이터베이스들, 또는 디바이스들에 걸쳐 분산될 수도 있다.
도 3은 일부 예시적인 실시예들에 따라, 전문가 웨어러블 디바이스(108)의 모듈들(예컨대, 컴포넌트들)을 예시하는 블록도이다. 전문가 웨어러블 디바이스(108)는 센서들(302), 디스플레이(304), 프로세서(306), 및 저장 디바이스(308)를 포함할 수도 있다. 예를 들어, 전문가 웨어러블 디바이스(108)는 웨어러블 컴퓨팅 디바이스, 차량 컴퓨터, 태블릿 컴퓨터, 내비게이션 디바이스, 휴대용 미디어 디바이스, 또는 사용자의 스마트 폰일 수도 있다. 사용자는 인간 사용자(예컨대, 인간), 머신 사용자(예컨대, 전문가 웨어러블 디바이스(108)와 상호작용하도록 소프트웨어 프로그램에 의해 구성된 컴퓨터), 또는 그 임의의 적당한 조합(예컨대, 머신에 의해 보조된 인간 또는 인간에 의해 감독된 머신)일 수도 있다.
센서들(302)은 도 2의 센서들(202)과 유사할 수도 있다. 디스플레이(304)는 도 2의 디스플레이(204)와 유사할 수도 있다.
프로세서(306)는 AR 조작 애플리케이션(310) 및 디스플레이 애플리케이션(312)을 포함할 수도 있다. AR 조작 애플리케이션(310)은 전문가 웨어러블 디바이스(108)의 사용자에 의해 행해진 제스처들을 식별하도록 구성될 수도 있다. 예를 들어, 제스처들은 사용자의 말단들(팔들, 손가락들)의 미리 정의된 모션들, 또는 전문가 웨어러블 디바이스(108)의 미리 정의된 모션들(좌우로 흔드는 것, 틸트(tilt)하는 것, 위로 이동시키는 것, 아래를 보는 것 등)을 포함할 수도 있다. 제스처들은 가상적 객체의 방위를 이동시키거나, 회전시키거나, 변경하는 것과 같은, 가상적 객체들의 조작을 나타내기 위하여 이용될 수도 있다. AR 조작 애플리케이션(310)은 가상적 객체들의 조작을 기록할 수도 있다. AR 조작 애플리케이션(310)은 시각적 제스처 모듈(314) 및 물리적 제스처 모듈(316)을 포함할 수도 있다. 시각적 제스처 모듈(314)은 디스플레이(304)의 초점 영역들을 이용하여 제스처를 해독하기 위하여 이용될 수도 있다. 일 실시예에서, 시각적 제스처 모듈(314)은 디스플레이(304)에서의 초점 영역 및 가상적 객체의 특징부를 결정하고, 특징부가 전문가 웨어러블 디바이스(108)의 디스플레이의 초점 영역에 있는 것에 응답하여 특징부의 상태를 변경한다. 예를 들어, 가상적 박스의 상부는 그것이 디스플레이(304)의 중심에 위치되도록 관측될 수도 있고, 여기서, 중심은 초점 영역으로서 정의될 수도 있다. 전문가 웨어러블 디바이스(108)의 사용자가 5 초를 초과하는 동안에 가상적 박스의 상부를 응시할 경우, 가상적 박스의 상부가 미리 정의된 양의 시간을 초과하는 동안에 초점 영역에 있는 결과로, 가상적 박스가 개방될 수도 있다.
물리적 제스처 모듈(316)은 전문가 웨어러블 디바이스(108)에서 디스플레이된 가상적 객체들에 대한 전문가 웨어러블 디바이스(108)의 사용자의 예를 들어, 손가락의 물리적 이동을 식별한다. 예를 들어, 사용자가 가상적 객체들을 관측할 때, 그는 자신의 손가락들/손들을 가상적 객체들의 "상부"에 배치함으로써 가상적 객체들을 조작하고 이동시키기 위하여 자신의 손가락을 이용할 수도 있다. 물리적 제스처 모듈(316)은 예를 들어, 사용자의 손가락들의 배치에 기초하여, 사용자가 이동시키거나, 변경하거나, 회전시키는 것을 희망할 수도 있는 것으로 결정할 수도 있다. 다른 물리적 제스처들은 특정한 패턴 또는 방향으로 손들을 흔들거나 손을 이동시키는 것을 포함할 수도 있다.
디스플레이 애플리케이션(312)은 디스플레이(304)에서 증강된 데이터를 생성하도록 구성될 수도 있다. 증강된 데이터는 사용자 웨어러블 디바이스(106)에 의해 관측된 바와 같은 가상적 객체들을 포함할 수도 있다. 일 실시예에서, 디스플레이 애플리케이션(312)은 도 2의 AR 렌더링 모듈(218)과 유사한 증강 현실(AR) 렌더링 모듈(318)을 포함할 수도 있다.
일 예시적인 실시예에서, AR 렌더링 모듈(318)은 물리적 객체(102)와는 상이할 수도 있는 기준 객체(104)와 관련하여 가상적 객체들의 3 차원 모델들을 취출할 수도 있다. 예를 들어, 기준 객체(104)는 물리적 객체(102)와 연관될 수도 있고, 식별가능한 이미지, 기호, 글자, 수, 또는 머신-판독가능 코드로 구성되는 시각적 기준(마커로서 또한 지칭됨)을 포함할 수도 있다. 예를 들어, 시각적 기준은 바 코드, 신속 응답(QR) 코드, 3 차원 가상적 객체와 이전에 연관되었던 이미지(예컨대, 3 차원 가상적 객체에 대응하는 것으로 이전에 결정되었던 이미지)를 포함할 수도 있다.
저장 디바이스(308)는 도 2의 저장 디바이스(208)와 유사할 수도 있다. 저장 디바이스(308)는 AR 조작 애플리케이션(310)을 이용하여 식별된 바와 같은 가상적 객체들의 조작의 기록을 저장할 수도 있다.
도 4는 원격 전문가 서버(112)의 모듈들(예컨대, 컴포넌트들)을 예시하는 블록도이다. 원격 전문가 서버(112)는 원격 전문가 애플리케이션(402) 및 데이터베이스(406)를 포함한다.
원격 전문가 애플리케이션(402)은 AR 컨텐츠 생성기(408), 전문가 AR 조작 검출기(410), 측량 엔진(412), AR 애니메이션 엔진(414), 및 웨어러블 디바이스들 통신 모듈(416)을 포함할 수도 있다.
AR 컨텐츠 생성기(408)는 사용자 웨어러블 디바이스(106)에 의해 관측된 물리적 객체(102)에 기초하여 가상적 객체들의 3 차원 모델들을 생성한다. AR 컨텐츠 생성기(408)는 물리적 객체(102)에 대한 사용자 웨어러블 디바이스(106)의 위치에 기초하여, 사용자 웨어러블 디바이스(106)의 디스플레이(204)에서 렌더링되어야 할 가상적 객체의 모델을 생성할 수도 있다. 물리적 객체(102)의 물리적 이동은 사용자 웨어러블 디바이스(106)에 의해 캡처된 이미지로부터 식별된다. AR 컨텐츠 생성기(408)는 (사용자 웨어러블 디바이스(106)로부터 수신되거나, 또는 사용자 웨어러블 디바이스(106)에 외부적으로 생성된) 추적 데이터에 대응하는 가상적 객체를 또한 결정할 수도 있고, 가상적 객체를 렌더링할 수도 있다. 또한, 추적 데이터는 사용자 웨어러블 디바이스(106)의 사용자에 의해 보이는 실세계 객체를 식별할 수도 있다. 가상적 객체는 조작가능한 가상적 객체, 또는 이러한 것과 연관된 디스플레이된 증강된 정보를 포함할 수도 있다. 가상적 객체는 물리적 객체(102)와의 사용자의 상호작용에 기초하여 조작가능할 수도 있다. 예를 들어, 사용자는 관측 디바이스(예컨대, 태블릿, 헬멧, 안경)로부터 물리적 객체 및 가상적 객체를 관측할 수도 있고, 관측 디바이스를 물리적 객체(102) 주위에, 물리적 객체(102)에 더 근접하게, 또는 물리적 객체(102)로부터 멀리 이동시킴으로써 가상적 객체를 조작할 수도 있다. 또 다른 예에서, 사용자는 관측 디바이스의 터치스크린을 통해 가상적 객체를 조작할 수도 있다. 예를 들어, 사용자는 터치스크린을 스와이핑(swiping)함으로써 가상적 객체의 뷰를 회전시킬 수도 있다.
전문가 AR 조작 검출기(410)는 전문가 웨어러블 디바이스(108)에 의해 가상적 객체들의 조작을 식별하고, 전문가 웨어러블 디바이스(108)의 AR 조작 애플리케이션(310)과 통신한다.
측량 엔진(412)은 물리적 객체(102)에 관련된 동적 및 실시간 스테이터스를 제공하기 위하여 물리적 객체(102)를 맵핑하고 측량하도록 구성될 수도 있다. 예를 들어, 조선소에서 사용자 웨어러블 디바이스(106)를 각각 가지는 건축 작업자들로부터의 조합된 데이터는 그들이 만들고 있는 선박 또는 보트의 3 차원 모델을 재구성하기 위하여 이용될 수도 있다. 3 차원 모델은 원격 전문가 서버(112)에서 렌더링될 수도 있고, 모니터링 클라이언트(114)로 제공될 수도 있다. 이에 따라, 건축가는 만들어지고 있는 선박의 동적 3D 모델을 볼 수도 있다. 3D 모델은 렌더링될 수도 있고, 증강된 정보로서 웨어러블 디바이스들에 제공될 수도 있다. 또한, 웨어러블 디바이스들로부터의 데이터는 누가 선박의 어느 부분 상에서 작업하고 있는지, 그들이 어디에 있는지, 도구들이 어디에 있는지, 그것들이 언제 최후에 이용되었는지, 및 건축 작업자들이 사양들 또는 코드들을 따랐는지 여부의 동적 스테이터스를 생성하기 위하여, 객체 인식 및 객체 추적을 위해 이용될 수도 있다.
AR 애니메이션 엔진(414)은 전문가 AR 조작 검출기(410)에 의해 검출된 바와 같은 AR 컨텐츠 조작의 애니메이션을 생성한다. AR 애니메이션 엔진(414)은 또 다른 웨어러블 디바이스에서의 디스플레이를 위한 가상적 객체들의 조작의 시각화를 생성한다. 예를 들어, 전문가는 공조 유닛의 부품들을 어떻게 분해할 것인지를 보여주기 위하여 가상적 객체들을 이동시킬 수도 있다. AR 애니메이션 엔진(414)은 가상적 객체들의 이동을 기록할 수도 있고, 가상적 객체들의 이동에 기초하여 애니메이션을 생성할 수도 있다.
웨어러블 디바이스들 통신 모듈(416)은 사용자 웨어러블 디바이스(106)의 AR 렌더링 모듈(218) 및 전문가 웨어러블 디바이스(108)의 AR 조작 애플리케이션(310) 둘 다와 통신한다. 일 실시예에서, 웨어러블 디바이스들 통신 모듈(416)은 렌더링된 가상적 객체의 부분을 스트리밍할 수도 있고, 사용자 웨어러블 디바이스(106)가 원격 전문가 서버(112)에 의해 렌더링되거나 전송되지 않는 가상적 객체의 나머지 부분들을 렌더링하게 할 수도 있다.
데이터베이스(406)는 기준 3D 모델 데이터세트(424), 기준 데이터세트(426), 컨텐츠 데이터세트(428), 및 가상적 컨텐츠 데이터세트(430)를 저장할 수도 있다. 기준 데이터세트(426)는 물리적 객체(102)에 관련된 기준들을 포함할 수도 있다. 기준 3D 모델 데이터세트(424)는 완성된 물리적 객체(102) 및 물리적 객체(102)에 관련된 다른 객체들의 3D 모델을 포함할 수도 있다. 예를 들어, 기준 3D 모델 데이터세트(424)는 완성된 선박, 머신, 또는 건물의 3D 모델을 포함할 수도 있다. 기준 데이터세트(426)는 예를 들어, 건물 코드들, 개략도들, 맵들, 배선 도면들, 건물 프로세스들, 재료들의 재고 리스트들, 건물 재료의 사양들, 건물의 건축에 관련된 프로세스들에서 이용된 도구들의 설명들, 및 각각의 건축 작업자의 전문지식에 대한 정보를 포함할 수도 있다.
컨텐츠 데이터세트(428)는 주 컨텐츠 데이터세트 및 컨텍스트 컨텐츠 데이터세트를 저장할 수도 있다. 주 컨텐츠 데이터세트는 이미지들 및 대응하는 가상적 객체 모델들의 제1 세트를 포함한다. 측량 엔진(412)은 사용자 웨어러블 디바이스(106)로부터 수신된 캡처된 이미지가 컨텐츠 데이터세트(428)에서 인식되지 않는 것으로 결정하고, 사용자 웨어러블 디바이스(106)에 대한 컨텍스트 컨텐츠 데이터세트를 생성한다. 컨텍스트 컨텐츠 데이터세트는 이미지들 및 대응하는 가상적 객체 모델들의 제2 세트를 포함할 수도 있다. 가상적 컨텐츠 데이터세트(430)는 대응하는 물리적 객체의 이미지와 연관된 통지를 수신할 시에 생성되어야 할 가상적 객체들의 모델들을 포함한다.
도 5는 측량 엔진(412)의 예시적인 실시예를 예시한다. 측량 엔진(412)은 동적 진행 스테이터스 모듈(502), 예외 검출 모듈(504), 객체 인식 모듈(510), 동적 재고 모듈(506), 피어 디바이스 지원 모듈(508), 및 객체 추적 모듈(512)을 포함할 수도 있다.
동적 진행 스테이터스 모듈(502)은 하나 이상의 웨어러블 디바이스들에 관련된 활동의 스테이터스를 결정하도록 구성될 수도 있다. 예를 들어, 동적 진행 스테이터스 모듈(502)은 모든 못들이 대응하는 영역들에서 배치되었다는 웨어러블 디바이스들에 의한 검출에 기초하여, 프로젝트의 단계 2가 완료되는 것으로 결정할 수도 있다. 동적 진행 스테이터스 모듈(502)은 프로젝트의 단계를 결정하기 위하여 객체 또는 활동 검출 외에 다른 파라미터들을 이용할 수도 있다. 예를 들어, 모든 웨어러블 디바이스들이 건물 폭발로부터의 보호를 위하여 지정된 핵심 로케이션들에서 위치될 경우, 동적 진행 스테이터스 모듈(502)은 건축 단계가 건물 파괴와 관련 있는 것으로 추론할 수 있다.
예외 검출 모듈(504)은 웨어러블 디바이스들로부터의 데이터 및 기준 데이터에 기초하여 예외들을 검출하도록 구성될 수도 있다. 예외 검출 모듈(504)은 웨어러블 디바이스들에 의해 검출된 액션들 및 객체들의 준수성을 모니터링할 수도 있다. 예를 들어, 예외 검출 모듈(504)은 일부 배선들이 누락되어 있는 것, 또는 콘센트가 벽으로부터 누락되어 있고 이에 따라, 설치는 아키텍처 사양들 또는 건물 코드들을 따르지 않는다는 것을 검출할 수도 있다. 또 다른 예에서, 잭 망치(jack hammer)가 장소 A에서 이용되어야 하고, 예외 검출 모듈(504)이 인식된 잭 망치가 장소 B에서 이용되고 있는 것으로 결정할 경우, 예외 검출 모듈(504)은 웨어러블 디바이스들에 대한 경보를 생성하고 발행할 수도 있다. 또 다른 예에서, 예외 검출 모듈(504)은 오직 5 개의 못들이 건물 코드 또는 아키텍처 계획에서 특정된 바와 같은 규정된 10 개의 못들 대신에 이용된 것으로 검출한다. 일단 예외가 검출되고 식별되면, 예외 검출 모듈(504)은 벽에서의 5 개의 못들에 대응하는 웨어러블 디바이스(들)에 대한 경보를 생성한다.
객체 인식 모듈(510)은 웨어러블 디바이스들에 의해 캡처된 객체들을 식별하기 위하여 비디오 피드들 및 이미지 피드들에 대해 객체 인식 알고리즘들을 수행한다. 객체 추적 모듈(512)은 인식된 객체를 추적하도록 구성될 수도 있다. 예를 들어, 객체 인식 모듈(510)은 망치를 식별하고, 객체 추적 모듈(512)은 예를 들어, 패널을 망치질함에 있어서 이용된 망치의 이동들을 추적한다.
동적 재고 모듈(506)은 인식된 객체들의 실시간 또는 동적 재고와, 비디오 피드들로부터의 인식된 객체들의 조작들을 생성한다. 동적 재고 모듈(506)은 웨어러블 디바이스를 인식된 객체들 및 조작들과 추가로 연관시킨다. 예를 들어, 동적 재고 모듈(506)은 어디에 망치가 위치되는지, 누가 망치를 이용하였는지, 및 언제 망치가 이용되었는지를 계속 추적할 수도 있다. 동적 재고 모듈(506)은 모니터링 클라이언트(114)가 망치 또는 웨어러블 디바이스들의 이력 스테이터스를 조사할 수 있도록, 재고의 이력을 포함할 수도 있다. 예를 들어, 사용자는 누가 특정한 시점에서 무엇을 행하는지를 식별하기 위하여 동적 재고 모듈(506)에 질의할 수 있다.
피어 디바이스 지원 모듈(508)은 웨어러블 디바이스들 사이의 통신을 가능하게 하도록 구성될 수도 있다. 예를 들어, 피어 디바이스 지원 모듈(508)은 그 사용자의 작업 유사성 또는 전문지식에 기초하여 웨어러블 디바이스를 또 다른 웨어러블 디바이스에 접속할 수도 있다.
도 6은 원격 전문가 서버(112)를 동작시키는 예시적인 실시예를 예시하는 래더 도면이다. 동작(602)에서, 사용자 웨어러블 디바이스(106)는 비디오 피드, 로케이션, 및 방위를 포함하는 데이터를 원격 전문가 서버(112)로 통신한다. 동작(604)에서, 원격 전문가 서버(112)는 사용자 웨어러블 디바이스(106)로부터 수신된 데이터에 기초하여 AR 컨텐츠를 생성한다. 동작(606)에서, 원격 전문가 서버(112)는 AR 컨텐츠를 사용자 웨어러블 디바이스(106)로 전송한다. 동작(608)에서, 사용자 웨어러블 디바이스(106)는 원격 전문가에 대한 요청을 원격 전문가 서버(112)로 전송한다. 동작(610)에서, 원격 전문가 서버(112)는 동일한 AR 컨텐츠를 전문가 웨어러블 디바이스(108)로 전송한다. 동작(612)에서, 전문가 웨어러블 디바이스(108)는 AR 컨텐츠를 조작한다. 동작(614)에서, 전문가 웨어러블 디바이스(108)는 AR 컨텐츠 조작을 원격 전문가 서버(112)로 전송한다. 동작(616)에서, 원격 전문가 서버(112)는 AR 컨텐츠 조작의 애니메이션을 생성하고, 동작(618)에서, 원격 전문가 서버(112)는 AR 컨텐츠 조작 애니메이션을 사용자 웨어러블 디바이스(106)로 전송한다.
도 7은 원격 전문가 서버(112)를 동작시키는 예시적인 실시예를 예시하는 플로우차트이다. 동작(702)에서, 원격 전문가 서버(112)는 사용자 웨어러블 디바이스(106)로부터, 비디오 피드, 로케이션, 및 방위를 포함하는 데이터와, 원격 전문가에 대한 요청을 수신한다. 원격 전문가 서버(112)는 물리적 객체의 예외에 관련된 알려진 기술적 전문지식을 갖는 사용자를 식별한다. 예를 들어, 예외가 올바르지 않게 배치된 전기 배선일 경우, 전기적 전문지식을 갖는 사용자는 검출된 전기적 예외에 기초하여 식별될 수도 있다. 원격 전문가 서버(112)는 식별된 전문가 및 식별된 예외를 갖는 사용자의 웨어러블 디바이스들 사이의 통신들을 가능하게 한다. 동작(704)에서, 원격 전문가 서버(112)는 AR 컨텐츠를 전문가 웨어러블 디바이스(108)에 제공한다. 동작(706)에서, 원격 전문가 서버(112)는 전문가 웨어러블 디바이스(108)로부터 AR 컨텐츠 조작을 수신한다. 동작(708)에서, 원격 전문가 서버(112)는 AR 컨텐츠 조작의 애니메이션을 생성하고, 동작(710)에서, 원격 전문가 서버(112)는 애니메이션을 사용자 웨어러블 디바이스(106)로 전송한다.
모듈들, 컴포넌트들, 및 로직
어떤 실시예들은 로직, 또는 다수의 컴포넌트들, 모듈들, 또는 메커니즘들을 포함하는 것으로서 본원에서 설명된다. 모듈들은 소프트웨어 모듈들(예컨대, 머신-판독가능 매체 상에서 또는 송신 신호에서 구체화된 코드) 또는 하드웨어 모듈들의 어느 하나를 구성할 수도 있다. 하드웨어 모듈은 어떤 동작들을 수행할 수 있는 유형의 유닛이고, 어떤 방식으로 구성되거나 배열될 수도 있다. 예시적인 실시예들에서, 하나 이상의 컴퓨터 시스템들(예컨대, 단독형, 클라이언트, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 하드웨어 모듈들(예컨대, 프로세서 또는 프로세서들의 그룹)은 본원에서 설명된 바와 같은 어떤 동작들을 수행하도록 동작하는 하드웨어 모듈로서 소프트웨어(예컨대, 애플리케이션 또는 애플리케이션 부분)에 의해 구성될 수도 있다.
다양한 실시예들에서, 하드웨어 모듈은 기계적으로 또는 전자적으로 구현될 수도 있다. 예를 들어, 하드웨어 모듈은 어떤 동작들을 수행하도록 (예컨대, 필드 프로그래밍가능 게이트 어레이(field programmable gate array)(FPGA) 또는 애플리케이션-특정 집적 회로(application-specific integrated circuit)(ASIC)와 같은 특수-목적 프로세서로서) 영구적으로 구성되는 전용 회로부 또는 로직을 포함할 수도 있다. 하드웨어 모듈은 어떤 동작들을 수행하기 위하여 소프트웨어에 의해 일시적으로 구성되는 (예컨대, 범용 프로세서 또는 다른 프로그래밍가능 프로세서 내에서 포함된 바와 같은) 프로그래밍가능 로직 또는 회로부를 또한 포함할 수도 있다. 전용이며 영구적으로 구성된 회로부에서, 또는 (예컨대, 소프트웨어에 의해 구성된) 일시적으로 구성된 회로부에서 하드웨어 모듈을 기계적으로 구현하기 위한 판단은 비용 및 시간 고려사항들에 의해 추진될 수도 있다는 것이 인식될 것이다.
따라서, 용어 "하드웨어 모듈"은 어떤 방식으로 동작하고 및/또는 본원에서 설명된 어떤 동작들을 수행하도록 물리적으로 구성되거나, 영구적으로 구성(예컨대, 하드와이어링(hardwired))되거나, 또는 일시적으로 구성(예컨대, 프로그래밍)되는 엔티티인, 유형의 엔티티(tangible entity)를 포함하는 것으로 이해되어야 한다. 하드웨어 모듈들이 일시적으로 구성(예컨대, 프로그래밍)되는 실시에들을 고려하면, 하드웨어 모듈들의 각각은 시간에 있어서의 임의의 하나의 인스턴스에서 구성되거나 인스턴스화(instantiate)될 필요가 없다. 예를 들어, 하드웨어 모듈들이 소프트웨어를 이용하여 구성된 범용 프로세서를 포함할 경우, 범용 프로세서는 상이한 시간들에서 개개의 상이한 하드웨어 모듈들로서 구성될 수도 있다. 따라서, 소프트웨어는 예를 들어, 시간의 하나의 인스턴스에서 특정한 하드웨어 모듈을 구성하고, 시간의 상이한 인스턴스에서 상이한 하드웨어 모듈을 구성하도록 프로세서를 구성할 수도 있다.
하드웨어 모듈들은 정보를 다른 하드웨어 모듈들에 제공할 수 있고, 다른 하드웨어 모듈들로부터 정보를 수신할 수 있다. 따라서, 설명된 하드웨어 모듈들은 통신가능하게 결합되는 것으로서 간주될 수도 있다. 다수의 이러한 하드웨어 모듈들이 동시에 존재할 경우, 통신들은 (예컨대, 하드웨어 모듈들을 접속하는 적절한 회로들 및 버스들 상에서) 신호 송신을 통해 달성될 수도 있다. 다수의 하드웨어 모듈들이 상이한 시간들에서 구성되거나 인스턴스화되는 실시예들에서, 이러한 하드웨어 모듈들 사이의 통신들은 예를 들어, 다수의 하드웨어 모듈들이 액세스하는 메모리 구조들에서의 정보의 저장 및 취출을 통해 달성될 수도 있다. 예를 들어, 하나의 하드웨어 모듈은 동작을 수행할 수도 있고, 그것이 통신가능하게 결합되는 메모리 디바이스에서의 그 동작의 출력을 저장할 수도 있다. 그 다음으로, 추가의 하드웨어 모듈은 저장된 출력을 취출하고 프로세싱하기 위하여 더 이후의 시간에 메모리 디바이스를 액세스할 수도 있다. 하드웨어 모듈들은 입력 또는 출력 디바이스들과의 통신들을 또한 개시할 수도 있고, 자원(예컨대, 정보의 집합)에 대해 동작할 수 있다.
본원에서 설명된 예시적인 방법들의 다양한 동작들은 적어도 부분적으로, 관련된 동작들을 수행하도록 (예컨대, 소프트웨어에 의해) 일시적으로 구성되거나 영구적으로 구성되는 하나 이상의 프로세서들에 의해 수행될 수도 있다. 일시적으로 또는 영구적으로 구성되든지 간에, 이러한 프로세서들은 하나 이상의 동작들 또는 기능들을 수행하도록 동작하는 프로세서-구현된 모듈들을 구성할 수도 있다. 본원에서 지칭된 모듈들은 일부 예시적인 실시예들에서, 프로세서-구현된 모듈들을 포함할 수도 있다.
유사하게, 본원에서 설명된 방법들은 적어도 부분적으로 프로세서-구현될 수도 있다. 예를 들어, 방법의 동작들의 적어도 일부는 하나 이상의 프로세서들 또는 프로세서-구현된 모듈들에 의해 수행될 수도 있다. 동작들 중의 어떤 것의 수행은 단일 머신 내에 상주할 뿐만 아니라, 다수의 머신들에 걸쳐 전개된 하나 이상의 프로세서들 사이에서 분산될 수도 있다. 일부 예시적인 실시예들에서, 프로세서 또는 프로세서들은 (가정 환경, 사무실 환경, 또는 서버 팜(server farm) 내에서) 단일 로케이션에서 위치될 수도 있는 반면, 다른 실시예들에서, 프로세서들은 다수의 로케이션들에 걸쳐 분산될 수도 있다.
하나 이상의 프로세서들은 "클라우드 컴퓨팅" 환경에서, 또는 "서비스로서의 소프트웨어(software as a service)"(SaaS)로서의 관련된 동작들의 성능을 지원하도록 또한 동작할 수도 있다. 예를 들어, 동작들의 적어도 일부는 (프로세서들을 포함하는 머신들의 예들로서의) 컴퓨터들의 그룹에 의해 수행될 수도 있고, 이 동작들은 네트워크를 통해, 그리고 하나 이상의 적절한 인터페이스들(예컨대, API들)을 통해 액세스가능하다.
전자 장치 및 시스템
예시적인 실시예들은 디지털 전자 회로부에서, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어에서, 또는 이것들의 조합들에서 구현될 수도 있다. 예시적인 실시예들은 컴퓨터 프로그램 제품, 예컨대, 데이터 프로세싱 장치, 예컨대, 프로그래밍가능 프로세서, 컴퓨터, 또는 다수의 컴퓨터들에 의한 실행을 위하여, 또는 데이터 프로세싱 장치, 예컨대, 프로그래밍가능 프로세서, 컴퓨터, 또는 다수의 컴퓨터들의 동작을 제어하기 위하여 정보 캐리어에서, 예컨대, 머신-판독가능 매체에서 유형적으로 구체화된 예컨대, 컴퓨터 프로그램을 이용하여 구현될 수도 있다.
컴퓨터 프로그래은 컴파일링된 또는 해독된 언어들을 포함하는 프로그래밍 언어의 형태로 기입될 수 있고, 그것은 단독형 프로그램으로서, 또는 모듈, 서브루틴, 또는 컴퓨팅 환경에서의 이용을 위하여 적당한 다른 유닛으로서 포함하는 임의의 형태로 전개될 수 있다. 컴퓨터 프로그램은 하나의 장소에서 하나의 컴퓨터 상에서, 또는 다수의 컴퓨터들 상에서 실행되도록 전개될 수 있거나, 다수의 장소들에 걸쳐 분산될 수 있고 통신 네트워크에 의해 상호접속될 수 있다.
예시적인 실시예들에서, 동작들은 입력 데이터에 대해 동작하고 출력을 생성함으로써 기능들을 수행하기 위하여 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래밍가능 프로세서들에 의해 수행될 수도 있다. 방법 동작들은 특수 목적 로직 회로부(예컨대, FPGA 또는 ASIC)에 의해 또한 수행될 수 있고, 예시적인 실시예들의 장치는 특수 목적 로직 회로부(예컨대, FPGA 또는 ASIC)로서 구현될 수도 있다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트 및 서버는 서로로부터 일반적으로 원격이고, 통신 네트워크를 통해 전형적으로 상호작용한다. 클라이언트 및 서버의 관계는 개개의 컴퓨터들 상에서 실행되고 서로에 대해 클라이언트-서버 관계를 가지는 컴퓨터 프로그램들에 의해 발생한다. 프로그래밍가능 컴퓨팅 시스템을 전개하는 실시예들에서는, 하드웨어 및 소프트웨어 아키텍처들 둘 다가 고려할 가치가 있다는 것이 인식될 것이다. 구체적으로, 영구적으로 구성된 하드웨어(예컨대, ASIC)에서, 일시적으로 구성된 하드웨어(예컨대, 소프트웨어 및 프로그래밍가능 프로세서의 조합)에서, 또는 영구적으로 그리고 일시적으로 구성된 하드웨어의 조합에서 어떤 기능성을 구현할 것인지 여부의 선택은 설계 선택일 수도 있다는 것이 인식될 것이다. 다양한 예시적인 실시예들에서 전개될 수도 있는 하드웨어(예컨대, 머신) 및 소프트웨어 아키텍처들이 이하에서 기재되어 있다.
예시적인 머신 아키텍처 및 머신-판독가능 매체
도 8은 머신이 본원에서 논의된 방법론들 중의 임의의 하나 이상을 수행하게 하기 위한 명령들이 그 내부에서 실행될 수도 있는 컴퓨터 시스템(800)의 예시적인 형태인 머신의 블록도이다. 대안적인 실시형태들에서, 머신은 단독형 디바이스로서 동작하거나, 다른 머신들에 접속(예컨대, 네트워크화)될 수도 있다. 네트워크화된 전개에서, 머신은 서버-클라이언트 네트워크 환경에서의 원격 전문가 서버(112) 또는 클라이언트 머신의 자격에서, 또는 피어-투-피어(peer-to-peer)(또는 분산된) 네트워크 환경에서의 피어 머신으로서 동작할 수도 있다. 머신은 개인용 컴퓨터(PC), 태블릿 PC, 셋톱 박스(set-top box)(STB), 개인용 정보 단말(personal digital assistant)(PDA), 셀룰러 전화, 웹 기기, 네트워크 라우터, 스위치 또는 브릿지, 또는 그 머신에 의해 취해져야 할 액션들을 특정하는 명령들(순차적 또는 그 외의 것)을 실행할 수 있는 임의의 머신일 수도 있다. 또한, 오직 단일 머신이 예시되어 있지만, 용어 "머신"은 본원에서 논의된 방법론들 중의 임의의 하나 이상을 수행하기 위한 명령들의 세트(또는 다수의 세트들)를 개별적으로 또는 공동으로 실행하는 머신들의 임의의 집합을 포함하기 위하여 또한 택해질 것이다.
예시적인 컴퓨터 시스템(800)은 버스(808)를 통해 서로 통신하는, 프로세서(802)(예컨대, 중앙 프로세싱 유닛(central processing unit)(CPU), 그래픽 프로세싱 유닛(graphics processing unit)(GPU) 또는 둘 다), 메인 메모리(804), 및 정적 메모리(806)를 포함한다. 컴퓨터 시스템(800)은 비디오 디스플레이(810)(예컨대, 액정 디스플레이(liquid crystal display)(LCD) 또는 음극선관(cathode ray tube)(CRT))를 더 포함할 수도 있다. 컴퓨터 시스템(800)은 영숫자 입력 디바이스(812)(예컨대, 키보드), 사용자 인터페이스(UI) 내비게이션(또는 커서 제어) 디바이스(814)(예컨대, 마우스), 구동 유닛(816), 신호 생성 디바이스(818)(예컨대, 스피커), 및 네트워크 인터페이스 디바이스(820)를 또한 포함한다.
머신-판독가능 매체
구동 유닛(816)은 본원에서 설명된 방법론들 또는 기능들 중의 임의의 하나 이상에 의해 구체화하거나 사용된 데이터 구조들 및 명령들(824)(예컨대, 소프트웨어)의 하나 이상의 세트들을 저장하는 머신-판독가능 매체(822)를 포함한다. 명령들(824)은 컴퓨터 시스템(800)에 의한 그 실행 동안에 메인 메모리(804) 내에서 및/또는 프로세서(802) 내에서 완전히 또는 적어도 부분적으로 또한 상주할 수도 있고, 메인 메모리(804) 및 프로세서(802)는 머신-판독가능 매체들을 또한 구성한다. 명령들(824)은 정적 메모리(806) 내에서 완전히 또는 적어도 부분적으로 또한 상주할 수도 있다.
머신-판독가능 매체(822)는 단일 매체인 것으로 예시적인 실시예에서 도시되어 있지만, 용어 "머신-판독가능 매체"는 하나 이상의 명령들(824) 또는 데이터 구조들을 저장하는 단일 매체 또는 다수의 매체들(예컨대, 중앙집중화된 또는 분산된 데이터베이스, 및/또는 연관된 캐시들 및 서버들)을 포함할 수도 있다. 용어 "머신-판독가능 매체"는, 머신에 의한 실행을 위한 명령들(824)을 저장하거나, 인코딩하거나, 반송할 수도 있으며, 머신으로 하여금, 본 실시예들의 방법론들 중의 임의의 하나 이상을 수행하게 하거나, 이러한 명령들(824)에 의해 사용되거나 이러한 명령들(824)과 연관된 데이터 구조들을 저장하거나, 인코딩하거나, 반송할 수 있는 임의의 유형의 매체를 포함하기 위하여 또한 택해질 것이다. 용어 "머신-판독가능 매체"는 따라서, 솔리드-스테이트(solid-state) 메모리들, 및 광학 및 자기 매체들을 포함하기 위하여 택해질 것이지만, 이것으로 제한되지는 않는다. 머신-판독가능 매체들(822)의 특정 예들은 예로서, 반도체 메모리 디바이스들(예컨대, 소거가능 프로그래밍가능 판독-전용 메모리(erasable programmable read-only memory)(EPROM), 전기적 소거가능 프로그래밍가능 판독-전용 메모리(electrically erasable programmable read-only memory)(EEPROM), 및 플래시 메모리 디바이스들); 내부 하드 디스크들 및 분리가능 디스크들과 같은 자기 디스크들; 자기-광 디스크들; 및 컴팩트 디스크 판독-전용 메모리(compact disk read-only memory)(CD-ROM) 및 디지털 다기능 디스크(또는 디지털 비디오 디스크) 판독-전용 메모리(DVD-ROM) 디스크들을 포함하는 비-휘발성 메모리를 포함한다.
송신 매체
명령들(824)은 송신 매체를 이용하여 통신 네트워크(826) 상에서 추가로 송신되거나 수신될 수도 있다. 명령들(824)은 네트워크 인터페이스 디바이스(820) 및 다수의 널리-공지된 전송 프로토콜들(예컨대, HTTP) 중의 임의의 하나를 이용하여 송신될 수도 있다. 통신 네트워크들의 예들은 LAN, WAN, 인터넷, 이동 전화 네트워크들, POTS 네트워크들, 및 무선 데이터 네트워크들(예컨대, WiFi 및 WiMax 네트워크들)을 포함한다. 용어 "송신 매체"는 머신에 의한 실행을 위한 명령들(824)을 저장하거나, 인코딩하거나, 반송할 수 있는 임의의 비유형(intangible) 매체를 포함하기 위하여 택해질 것이고, 이러한 소프트웨어의 통신을 가능하게 하기 위하여 디지털 또는 아날로그 통신 신호들 또는 다른 비유형 매체들을 포함한다.
예시적인 이동 디바이스
도 9는 예시적인 실시예에 따라, 이동 디바이스(900)를 예시하는 블록도이다. 이동 디바이스(900)는 프로세서(902)를 포함할 수도 있다. 프로세서(902)는 이동 디바이스들(900)을 위하여 적당한 다양한 상이한 타입들의 상업적으로 입수가능한 프로세서들(902)(예를 들어, 엑스스케일(XScale) 아키텍처 마이크로프로세서, 연동된 파이프라인 스테이지들을 갖지 않는 마이크로프로세서(microprocessor without interlocked pipeline stages)(MIPS) 아키텍처 프로세서, 또는 또 다른 타입의 프로세서(902))일 수도 있다. 랜덤 액세스 메모리(random access memory)(RAM), 플래시 메모리, 또는 다른 타입의 메모리와 같은 메모리(904)는 프로세서(902)에 의해 전형적으로 액세스가능하다. 메모리(904)는 오퍼레이팅 시스템(operating system)(OS)(906) 뿐만 아니라, 위치-기반 서비스(location-based service)(LBS)들을 사용자에게 제공할 수도 있는 이동 로케이션 가능형 애플리케이션과 같은 애플리케이션 프로그램들(908)을 저장하도록 구비될 수도 있다. 프로세서(902)는 직접적으로 또는 적절한 중간 하드웨어를 통해 중의 어느 하나로, 디스플레이(910)에, 그리고 키패드, 터치 패널 센서, 마이크로폰 등등과 같은 하나 이상의 입력/출력(input/output)(I/O) 디바이스들(912)에 결합될 수도 있다. 유사하게, 일부 실시예들에서, 프로세서(902)는 안테나(916)와 인터페이싱하는 트랜시버(914)에 결합될 수도 있다. 트랜시버(914)는 이동 디바이스(900)의 특성에 따라, 안테나(916)를 통해 셀룰러 네트워크 신호들, 무선 데이터 신호들, 또는 다른 타입들의 신호들을 송신하고 수신하는 것 둘 다를 행하도록 구성될 수도 있다. 또한, 일부 구성들에서, GPS 수신기(918)는 GPS 신호들을 수신하기 위하여 안테나(916)를 또한 이용할 수도 있다.
실시예는 특정 예시적인 실시예들을 참조하여 설명되었지만, 본 개시내용의 범위로부터 이탈하지 않으면서, 다양한 수정들 및 변경들이 이 실시예들에 대해 행해질 수도 있다는 것이 명백할 것이다. 따라서, 명세서 및 도면들은 한정적인 의미가 아니라 예시적인 것으로 간주되어야 한다. 그 일부를 형성하는 동반된 도면들은 제한이 아니라, 예시로서, 발명 요지가 실시될 수도 있는 특정 실시예들을 도시한다. 예시된 실시예들은 본 기술분야의 통상의 기술자들이 본원에서 개시된 교시사항들을 실시하는 것을 가능하게 할 정도로 충분히 상세하게 설명된다. 다른 실시예들이 사용될 수도 있고 그로부터 유도될 수도 있어서, 구조적 및 논리적 대체들 및 변경들은 이 개시내용의 범위로부터 이탈하지 않으면서 행해질 수도 있다. 그러므로, 이 상세한 설명은 제한적인 의미로 택해진 것이 아니며, 다양한 실시예들의 범위는 이러한 청구항들에 부여되는 등가물들의 전체 범위와 함께, 오직 첨부된 청구항들에 의해 정의된다.
발명적인 발명 요지의 이러한 실시예들은 단지 편의상, 그리고 하나를 초과하는 것이 사실상 개시될 경우에, 이 출원의 범위를 임의의 단일 발명 또는 발명적인 개념으로 자발적으로 제한하도록 의도하지 않으면서, 용어 "발명"에 의해 개별적으로 및/또는 집합적으로 본원에서 지칭될 수도 있다. 이에 따라, 특정 실시예들이 본원에서 예시되고 설명되었지만, 동일한 목적을 달성하기 위하여 계산된 임의의 배열이 도시된 특정 실시예들로 대체될 수도 있다는 것이 인식되어야 한다. 이 개시내용은 다양한 실시예들의 임의의 그리고 모든 개조들 또는 변형들을 커버하도록 의도된다. 상기 실시예들, 및 본원에서 구체적으로 설명되지 않은 다른 실시예들의 조합은 상기 설명을 검토할 시에 본 기술분양의 통상의 기술자들에게 명백할 것이다.
개시내용의 요약은 독자가 기술적 개시내용의 본질을 신속하게 알아내도록 하기 위하여 제공된다. 개시내용의 요약은 청구항들의 범위 또는 의미를 해독하거나 제한하기 위하여 이용되지 않을 것이라는 이해 하에서 제시된다. 게다가, 상기한 상세한 설명에서는, 다양한 특징들이 개시내용의 간소화의 목적을 위하여 단일 실시형태들에서 함께 그룹화되는 것을 알 수 있다. 개시내용의 이 방법은, 청구된 실시형태들이 각각의 청구항에서 명백히 기재되는 것보다 더 많은 특징들을 요구한다는 의도를 반영하는 것으로서 해독되지 않아야 한다. 오히려, 다음의 청구항들이 반영하는 바와 같이, 발명의 요지는 단일의 개시된 실시형태의 모든 특징들보다 더 적게 존재한다. 이에 따라, 다음의 청구항들은 본원에 의해 상세한 설명 내로 편입되고, 각각의 청구항은 별도의 실시형태로서 자립하고 있다.

Claims (20)

  1. 원격 서버로서,
    머신의 하드웨어 프로세서를 이용하여 구현되고, 전문가 조작 검출기, 애니메이션 엔진, 및 웨어러블 디바이스 통신 모듈을 포함하는 원격 전문가 애플리케이션을 포함하고,
    상기 전문가 조작 검출기는 제1 웨어러블 디바이스에서 디스플레이된 가상적 객체들의 조작을 식별하도록 구성되고, 상기 가상적 객체들은 제2 웨어러블 디바이스로 관측된 물리적 객체에 기초하여 렌더링되고, 상기 가상적 객체들은 상기 제1 웨어러블 디바이스로 관측된 기준 객체와 관련하여 상기 제1 웨어러블 디바이스에서 디스플레이되고;
    상기 애니메이션 엔진은 상기 제2 웨어러블 디바이스의 디스플레이를 위한 상기 가상적 객체들의 상기 조작의 시각화를 생성하도록 구성되고;
    상기 웨어러블 디바이스 통신 모듈은 상기 제1 웨어러블 디바이스로부터 상기 가상적 객체들의 상기 조작을 수신하고, 상기 가상적 객체들의 상기 조작의 상기 시각화를 상기 제2 웨어러블 디바이스로 통신하도록
    구성되는, 원격 서버.
  2. 제1항에 있어서, 상기 원격 전문가 애플리케이션은:
    상기 제2 웨어러블 디바이스로부터 비디오 피드, 로케이션 정보, 및 방위 정보를 수신하고, 상기 비디오 피드로부터 상기 물리적 객체를 식별하고, 상기 물리적 객체의 상기 식별에 기초하여 상기 가상적 객체들의 3 차원 모델을 생성하도록 구성된 컨텐츠 생성기를 더 포함하고;
    상기 웨어러블 디바이스 통신 모듈은 상기 가상적 객체들의 상기 3 차원 모델을 상기 제2 웨어러블 디바이스로 통신하도록 구성되고, 상기 제2 웨어러블 디바이스는 상기 물리적 객체와 관련하여 상기 가상적 객체들의 상기 3 차원 모델을 렌더링하도록
    구성되는, 원격 서버.
  3. 제1항에 있어서,
    상기 웨어러블 디바이스 통신 모듈은 상기 제2 웨어러블 디바이스로부터 보조에 대한 요청 - 상기 보조에 대한 요청은 상기 물리적 객체에 관련됨 - 을 수신하도록 구성되고;
    상기 원격 전문가 애플리케이션은 상기 제1 웨어러블 디바이스의 사용자를 상기 물리적 객체에 관련된 전문가로서 식별하도록 구성되는, 원격 서버.
  4. 제1항에 있어서, 상기 전문가 조작 검출기는 상기 제1 웨어러블 디바이스로부터의 상기 가상적 객체들의 상기 조작을 기록하도록 구성되는, 원격 서버.
  5. 제1항에 있어서, 상기 전문가 조작 검출기는 시각적 제스처 모듈- 상기 시각적 제스처 모듈은 상기 제1 웨어러블 디바이스의 디스플레이에서의 초점 영역 및 상기 가상적 객체들의 특징부를 결정하고, 상기 특징부가 상기 제1 웨어러블 디바이스의 상기 디스플레이의 상기 초점 영역에 있는 것에 응답하여 상기 특징부의 상태를 변경하도록 구성됨 - 을 이용하여 상기 제1 웨어러블 디바이스로부터의 상기 가상적 객체들의 상기 조작을 식별하도록 구성되는, 원격 서버.
  6. 제1항에 있어서, 상기 전문가 조작 검출기는 물리적 제스처 모듈 - 상기 물리적 제스처 모듈은 상기 제1 웨어러블 디바이스에서 디스플레이된 상기 가상적 객체들에 대한 상기 제1 웨어러블 디바이스의 사용자의 손가락의 물리적 이동을 결정하도록 구성됨 - 을 이용하여 상기 제1 웨어러블 디바이스로부터의 상기 가상적 객체들의 상기 조작을 식별하도록 구성되는, 원격 서버.
  7. 제1항에 있어서, 상기 시각화는 상기 가상적 객체들의 상기 조작의 애니메이션을 포함하는, 원격 서버.
  8. 제1항에 있어서, 상기 제1 웨어러블 디바이스는 상기 물리적 객체에 관련된 전문가에 의해 동작되고, 상기 제2 웨어러블 디바이스는 사용자에 의해 동작되는, 원격 서버.
  9. 제8항에 있어서, 상기 가상적 객체들은 상기 제1 웨어러블 디바이스의 상기 전문가 및 상기 제2 웨어러블 디바이스의 상기 사용자 둘 다에 의해 조작되도록 구성되고,
    상기 웨어러블 디바이스 통신 모듈은 상기 제1 웨어러블 디바이스의 상기 전문가로부터 상기 가상적 객체들의 상기 조작을 수신하고, 상기 가상적 객체들의 상기 조작의 상기 시각화를 상기 제2 웨어러블 디바이스의 상기 사용자에게 통신하도록 구성되고;
    상기 웨어러블 디바이스 통신 모듈은 상기 제2 웨어러블 디바이스의 상기 사용자로부터 상기 가상적 객체들의 상기 조작을 수신하고, 상기 가상적 객체들의 상기 조작의 상기 시각화를 상기 제1 웨어러블 디바이스의 상기 전문가에게 통신하도록
    구성되는, 원격 서버.
  10. 제1항에 있어서, 상기 원격 전문가 애플리케이션은:
    복수의 웨어러블 디바이스들로부터 비디오 피드들, 로케이션 정보, 및 방위 정보를 수신하고;
    상기 복수의 웨어러블 디바이스들로부터 수신된 상기 비디오 피드들, 로케이션 정보, 및 방위 정보에 기초하여 상기 가상적 객체들의 3 차원 모델을 생성하고;
    상기 물리적 객체의 조작을 식별하기 위하여 상기 비디오 피드들에 대한 분석들을 수행하여, 상기 물리적 객체의 상기 조작에 기초하여 상기 가상적 객체들의 상기 3 차원 모델을 업데이트하고;
    상기 물리적 객체에 관련된 기준 데이터에 대한 상기 물리적 객체의 상기 조작에 관련된 동적 스테이터스를 생성하도록
    구성되는 측량 엔진을 더 포함하는, 원격 서버.
  11. 방법으로서,
    머신의 하드웨어 프로세서를 이용하여, 제1 웨어러블 디바이스에서 디스플레이된 가상적 객체들의 조작을 식별하는 단계 - 상기 가상적 객체들은 제2 웨어러블 디바이스로 관측된 물리적 객체에 기초하여 렌더링되고, 상기 가상적 객체들은 상기 제1 웨어러블 디바이스로 관측된 기준 객체와 관련하여 상기 제1 웨어러블 디바이스에서 디스플레이됨 -;
    상기 제2 웨어러블 디바이스의 디스플레이에 대하여 상기 가상적 객체들의 상기 조작의 시각화를 생성하는 단계;
    상기 제1 웨어러블 디바이스로부터 상기 가상적 객체들의 상기 조작을 수신하는 단계; 및
    상기 가상적 객체들의 상기 조작의 상기 시각화를 상기 제2 웨어러블 디바이스로 통신하는 단계를 포함하는, 방법.
  12. 제11항에 있어서,
    상기 제2 웨어러블 디바이스로부터 비디오 피드, 로케이션 정보, 및 방위 정보를 수신하는 단계;
    상기 비디오 피드로부터 상기 물리적 객체를 식별하는 단계;
    상기 물리적 객체의 상기 식별에 기초하여 상기 가상적 객체들의 3 차원 모델을 생성하는 단계; 및
    상기 가상적 객체들의 상기 3 차원 모델을 상기 제2 웨어러블 디바이스로 통신하는 단계 - 상기 제2 웨어러블 디바이스는 상기 물리적 객체와 관련하여 상기 가상적 객체들의 상기 3 차원 모델을 렌더링하도록 구성됨 - 를 더 포함하는, 방법.
  13. 제11항에 있어서,
    상기 제2 웨어러블 디바이스로부터 보조에 대한 요청 - 상기 보조에 대한 요청은 상기 물리적 객체에 관련됨 - 을 수신하는 단계; 및
    상기 제1 웨어러블 디바이스의 사용자를 상기 물리적 객체에 관련된 전문가로서 식별하는 단계를 더 포함하는, 방법.
  14. 제11항에 있어서,
    상기 제1 웨어러블 디바이스로부터의 상기 가상적 객체들의 상기 조작을 기록하는 단계를 더 포함하는, 방법.
  15. 제11항에 있어서,
    시각적 제스처 모듈 - 상기 시각적 제스처 모듈은 상기 제1 웨어러블 디바이스의 디스플레이에서의 초점 영역 및 상기 가상적 객체들의 특징부를 결정하고, 상기 특징부가 상기 제1 웨어러블 디바이스의 상기 디스플레이의 상기 초점 영역에 있는 것에 응답하여 상기 특징부의 상태를 변경하도록 구성됨 - 을 이용하여 상기 제1 웨어러블 디바이스로부터의 상기 가상적 객체들의 상기 조작을 식별하는 단계를 더 포함하는, 방법.
  16. 제11항에 있어서,
    물리적 제스처 모듈 - 상기 물리적 제스처 모듈은 상기 제1 웨어러블 디바이스에서 디스플레이된 상기 가상적 객체들에 대한 상기 제1 웨어러블 디바이스의 사용자의 손가락의 물리적 이동을 결정하도록 구성됨 - 을 이용하여 상기 제1 웨어러블 디바이스로부터의 상기 가상적 객체들의 상기 조작을 식별하는 단계를 더 포함하는, 방법.
  17. 제11항에 있어서,
    상기 시각화는 상기 가상적 객체들의 상기 조작의 애니메이션을 포함하고;
    상기 제1 웨어러블 디바이스는 상기 물리적 객체에 관련된 전문가에 의해 동작되고;
    상기 제2 웨어러블 디바이스는 사용자에 의해 동작되는, 방법.
  18. 제17항에 있어서, 상기 가상적 객체들은 상기 제1 웨어러블 디바이스의 상기 전문가 및 상기 제2 웨어러블 디바이스의 상기 사용자 둘 다에 의해 조작되도록 구성되고, 상기 방법은:
    상기 제1 웨어러블 디바이스의 상기 전문가로부터 상기 가상적 객체들의 상기 조작을 수신하는 단계;
    상기 가상적 객체들의 상기 조작의 상기 시각화를 상기 제2 웨어러블 디바이스의 상기 사용자에게 통신하는 단계;
    상기 제2 웨어러블 디바이스의 상기 사용자로부터 상기 가상적 객체들의 상기 조작을 수신하는 단계; 및
    상기 가상적 객체들의 상기 조작의 상기 시각화를 상기 제1 웨어러블 디바이스의 상기 전문가에게 통신하는 단계를 더 포함하는, 방법.
  19. 제11항에 있어서,
    복수의 웨어러블 디바이스들로부터 비디오 피드들, 로케이션 정보, 및 방위 정보를 수신하는 단계;
    상기 복수의 웨어러블 디바이스들로부터 수신된 상기 비디오 피드들, 로케이션 정보, 및 방위 정보에 기초하여 상기 가상적 객체들의 3 차원 모델을 생성하는 단계;
    상기 물리적 객체의 조작을 식별하기 위하여 상기 비디오 피드들에 대해 분석들을 수행하는 단계;
    상기 물리적 객체의 상기 조작에 기초하여 상기 가상적 객체들의 상기 3 차원 모델을 업데이트하는 단계; 및
    상기 물리적 객체에 관련된 기준 데이터에 대한 상기 물리적 객체의 상기 조작에 관련된 동적 스테이터스를 생성하는 단계를 더 포함하는, 방법.
  20. 명령어들을 포함하는 비-일시적 머신-판독가능 매체로서,
    상기 명령어들은 머신의 하나 이상의 프로세서들에 의해 실행될 때, 상기 머신으로 하여금 동작들을 수행하게 하고, 상기 동작들은,
    제1 웨어러블 디바이스에서 디스플레이된 가상적 객체들의 조작을 식별하는 동작 - 상기 가상적 객체들은 제2 웨어러블 디바이스로 관측된 물리적 객체에 기초하여 렌더링되고, 상기 가상적 객체들은 상기 제1 웨어러블 디바이스로 관측된 기준 객체와 관련하여 상기 제1 웨어러블 디바이스에서 디스플레이됨 -;
    상기 제2 웨어러블 디바이스의 디스플레이에 대하여 상기 가상적 객체들의 상기 조작의 시각화를 생성하는 동작;
    상기 제1 웨어러블 디바이스로부터 상기 가상적 객체들의 상기 조작을 수신하는 동작; 및
    상기 가상적 객체들의 상기 조작의 상기 시각화를 상기 제2 웨어러블 디바이스로 통신하는 동작을 포함하는, 비-일시적 머신-판독가능 매체.
KR1020177006975A 2014-08-15 2015-08-13 원격 전문가 시스템 KR102292455B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/461,252 US9665985B2 (en) 2014-08-15 2014-08-15 Remote expert system
US14/461,252 2014-08-15
PCT/US2015/045018 WO2016025691A1 (en) 2014-08-15 2015-08-13 Remote expert system

Publications (2)

Publication Number Publication Date
KR20170041905A true KR20170041905A (ko) 2017-04-17
KR102292455B1 KR102292455B1 (ko) 2021-08-25

Family

ID=55302560

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177006975A KR102292455B1 (ko) 2014-08-15 2015-08-13 원격 전문가 시스템

Country Status (7)

Country Link
US (2) US9665985B2 (ko)
EP (1) EP3180677A4 (ko)
JP (1) JP2017531848A (ko)
KR (1) KR102292455B1 (ko)
AU (2) AU2015301620B2 (ko)
NZ (1) NZ728711A (ko)
WO (1) WO2016025691A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020055895A1 (en) * 2018-09-10 2020-03-19 Aveva Software, Llc Visualization and interaction of 3d models via remotely rendered video stream system and method
WO2023003126A1 (ko) * 2021-07-19 2023-01-26 삼성전자 주식회사 증강현실 가이드를 제공하는 글래스 타입 웨어러블 디바이스 및 그 제어 방법

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3089658A4 (en) * 2014-02-24 2017-10-11 Sony Corporation Smart wearable devices and methods for acquisition of sensorial information from wearable devices to activate functions in other devices
US9665985B2 (en) 2014-08-15 2017-05-30 Daqri, Llc Remote expert system
US9846972B2 (en) * 2015-04-06 2017-12-19 Scope Technologies Us Inc. Method and apparatus for sharing augmented reality applications to multiple clients
CN106502554B (zh) * 2015-09-08 2021-09-17 腾讯科技(深圳)有限公司 一种显示控制方法及装置
US9785741B2 (en) * 2015-12-30 2017-10-10 International Business Machines Corporation Immersive virtual telepresence in a smart environment
US10187686B2 (en) 2016-03-24 2019-01-22 Daqri, Llc Recording remote expert sessions
JP7095953B2 (ja) * 2017-01-19 2022-07-05 株式会社大林組 画像管理システム、画像管理方法、及び画像管理プログラム
US10712814B2 (en) * 2017-04-21 2020-07-14 Accenture Global Solutions Limited Multi-device virtual reality, augmented reality and mixed reality analytics
KR102358543B1 (ko) * 2017-04-27 2022-02-03 지멘스 악티엔게젤샤프트 증강 현실 및 가상 현실을 사용한 증강 현실 경험들의 저작
GB201714349D0 (en) 2017-09-06 2017-10-18 Xyz Reality Ltd A method and equipment for setting out a construction site
DE102018201711B4 (de) * 2018-02-05 2020-07-02 Vypii GmbH Anordnung und Verfahren zum Bereitstellen von Informationen bei einer kopftragbaren erweiterte-Realität-Vorrichtung
US10777009B2 (en) * 2018-02-18 2020-09-15 CN2, Inc. Dynamically forming an immersive augmented reality experience through collaboration between a consumer and a remote agent
US11562598B2 (en) 2019-03-25 2023-01-24 Microsoft Technology Licensing, Llc Spatially consistent representation of hand motion
US11107293B2 (en) * 2019-04-23 2021-08-31 XRSpace CO., LTD. Head mounted display system capable of assigning at least one predetermined interactive characteristic to a virtual object in a virtual environment created according to a real object in a real environment, a related method and a related non-transitory computer readable storage medium
GB2583733A (en) * 2019-05-07 2020-11-11 Mafic Ltd User activity determining system
WO2020242949A1 (en) * 2019-05-28 2020-12-03 Google Llc Systems and methods for video-based positioning and navigation in gastroenterological procedures
US11227007B2 (en) 2019-07-23 2022-01-18 Obayashi Corporation System, method, and computer-readable medium for managing image
US11188546B2 (en) 2019-09-24 2021-11-30 International Business Machines Corporation Pseudo real time communication system
US11380069B2 (en) * 2019-10-30 2022-07-05 Purdue Research Foundation System and method for generating asynchronous augmented reality instructions
CN111260084B (zh) * 2020-01-09 2024-03-15 长安大学 基于增强现实协同装配维修的远程系统及方法
EP4168879A4 (en) * 2020-08-14 2024-03-13 Siemens Ag REMOTE SUPPORT METHOD AND DEVICE
CN112527100A (zh) * 2020-11-09 2021-03-19 义乌市输变电工程有限公司 一种基于智能穿戴设备的远程协助方法及装置
CN115437507B (zh) * 2022-11-07 2023-04-07 中科航迈数控软件(深圳)有限公司 基于ar眼镜的设备维修指导方法、系统及相关设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090064634A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 가상 모바일 정보기기의 사용성 평가 시스템 및 그 방법
US20110316845A1 (en) * 2010-06-25 2011-12-29 Palo Alto Research Center Incorporated Spatial association between virtual and augmented reality
US20130083063A1 (en) * 2011-09-30 2013-04-04 Kevin A. Geisner Service Provision Using Personal Audio/Visual System
US20130157239A1 (en) * 2011-12-16 2013-06-20 Board Of Regents Of The Nevada System Of Higher Education, On Behalf Of The University Of Nevada Augmented reality tele-mentoring (art) platform for laparoscopic training

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020010734A1 (en) * 2000-02-03 2002-01-24 Ebersole John Franklin Internetworked augmented reality system and method
JP2002157607A (ja) * 2000-11-17 2002-05-31 Canon Inc 画像生成システム、画像生成方法および記憶媒体
EP1686554A3 (en) * 2005-01-31 2008-06-18 Canon Kabushiki Kaisha Virtual space generating system, image processing apparatus and information processing method
JP4738870B2 (ja) * 2005-04-08 2011-08-03 キヤノン株式会社 情報処理方法、情報処理装置および遠隔複合現実感共有装置
EP2203878B1 (en) * 2007-09-18 2017-09-13 VRMEDIA S.r.l. Information processing apparatus and method for remote technical assistance
US8745494B2 (en) 2009-05-27 2014-06-03 Zambala Lllp System and method for control of a simulated object that is associated with a physical location in the real world environment
US8400548B2 (en) 2010-01-05 2013-03-19 Apple Inc. Synchronized, interactive augmented reality displays for multifunction devices
KR101390383B1 (ko) * 2010-11-16 2014-04-29 한국전자통신연구원 가상현실 기반 훈련 시뮬레이터를 위한 가변형 플랫폼 관리 장치
US10019962B2 (en) 2011-08-17 2018-07-10 Microsoft Technology Licensing, Llc Context adaptive user interface for augmented reality display
US9665985B2 (en) 2014-08-15 2017-05-30 Daqri, Llc Remote expert system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090064634A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 가상 모바일 정보기기의 사용성 평가 시스템 및 그 방법
US20110316845A1 (en) * 2010-06-25 2011-12-29 Palo Alto Research Center Incorporated Spatial association between virtual and augmented reality
US20130083063A1 (en) * 2011-09-30 2013-04-04 Kevin A. Geisner Service Provision Using Personal Audio/Visual System
US20130157239A1 (en) * 2011-12-16 2013-06-20 Board Of Regents Of The Nevada System Of Higher Education, On Behalf Of The University Of Nevada Augmented reality tele-mentoring (art) platform for laparoscopic training

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020055895A1 (en) * 2018-09-10 2020-03-19 Aveva Software, Llc Visualization and interaction of 3d models via remotely rendered video stream system and method
US11075972B2 (en) 2018-09-10 2021-07-27 Aveva Software, Llc Visualization and interaction of 3D models via remotely rendered video stream system and method
US11601490B2 (en) 2018-09-10 2023-03-07 Aveva Software, Llc Visualization and interaction of 3D models via remotely rendered video stream system and method
WO2023003126A1 (ko) * 2021-07-19 2023-01-26 삼성전자 주식회사 증강현실 가이드를 제공하는 글래스 타입 웨어러블 디바이스 및 그 제어 방법

Also Published As

Publication number Publication date
AU2015301620A1 (en) 2017-02-23
NZ728711A (en) 2021-09-24
US20160049004A1 (en) 2016-02-18
KR102292455B1 (ko) 2021-08-25
US10198869B2 (en) 2019-02-05
US9665985B2 (en) 2017-05-30
AU2021200913A1 (en) 2021-03-04
EP3180677A4 (en) 2018-03-14
EP3180677A1 (en) 2017-06-21
JP2017531848A (ja) 2017-10-26
WO2016025691A1 (en) 2016-02-18
AU2015301620B2 (en) 2020-11-12
US20170221271A1 (en) 2017-08-03

Similar Documents

Publication Publication Date Title
KR102292455B1 (ko) 원격 전문가 시스템
US11341652B2 (en) Three-dimensional mapping system
US9978174B2 (en) Remote sensor access and queuing
US11678004B2 (en) Recording remote expert sessions
US9558592B2 (en) Visualization of physical interactions in augmented reality
US9898844B2 (en) Augmented reality content adapted to changes in real world space geometry
US20150185825A1 (en) Assigning a virtual user interface to a physical object
US9626801B2 (en) Visualization of physical characteristics in augmented reality
US20150187137A1 (en) Physical object discovery
US9799142B2 (en) Spatial data collection

Legal Events

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