KR20210136043A - 포인팅 제어기를 사용하는 스마트 디바이스와의 상호작용 - Google Patents

포인팅 제어기를 사용하는 스마트 디바이스와의 상호작용 Download PDF

Info

Publication number
KR20210136043A
KR20210136043A KR1020217030557A KR20217030557A KR20210136043A KR 20210136043 A KR20210136043 A KR 20210136043A KR 1020217030557 A KR1020217030557 A KR 1020217030557A KR 20217030557 A KR20217030557 A KR 20217030557A KR 20210136043 A KR20210136043 A KR 20210136043A
Authority
KR
South Korea
Prior art keywords
pointing
tracking
smart device
controller
detecting
Prior art date
Application number
KR1020217030557A
Other languages
English (en)
Inventor
나다니엘 제임스 마틴
찰스 제임스 브루스
루이스 안토니 존스
Original Assignee
에이알케이에이치 리쏘 홀딩스, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에이알케이에이치 리쏘 홀딩스, 엘엘씨 filed Critical 에이알케이에이치 리쏘 홀딩스, 엘엘씨
Publication of KR20210136043A publication Critical patent/KR20210136043A/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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • 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
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • 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/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

사용자에 의해 착용되는 포인팅 컨트롤러는 연결된 다양한 스마트 디바이스들의 직관적 제어를 가능하게 한다. 사용자들은 스마트 디바이스(또는 프록시 개체)의 방향을 가리키고 미리 정의된 액션을 수행하여 제어할 디바이스를 선택함으로써 어느 디바이스가 제어될 것인지를 나타낼 수 있다. 일단 선택되면, 사용자는 다양한 제스처들을 수행함으로써 또는 포인팅 컨트롤러에 통합된 하나 이상의 제어 요소와의 상호작용에 의해 스마트 디바이스와 상호작용할 수 있다. 스마트 디바이스는 스마트 디바이스의 상의 시각적 또는 청각적 표시기들을 사용하여, 또는 햅틱, 청각 또는 시각적 피드백을 제공하는 사용자에 근접한 포인팅 컨트롤러 또는 다른 디바이스에 제어 신호를 전송함으로써 피드백을 제공할 수 있다.

Description

포인팅 컨트롤러를 사용하는 스마트 디바이스와의 상호작용
이 출원은 2019년 2월 18일 월요일자로 출원된 미국 가출원 제62/807,094호의 우선권을 청구하며, 이 가출원은 참조로서 본 명세서에 통합된다.
본 개시물은 스마트 디바이스의 제어에 관한 것으로, 보다 상세하게는 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하는 것에 관한 것이다.
사용자들은 통상적으로 디바이스 자체의 제어들을 통해 또는 스마트 폰 애플리케이션 또는 웹 포털 상에서 액세스가능한 사용자 인터페이스를 통해 온도 조절기들, 스피커들 및 조명 시스템들과 같은 스마트 디바이스들을 구성한다. 이들 인터페이스들에 액세스하는 것이 사용자에게 항상 편리한 것은 아니며 비효율적일 수 있다. 음성 제어 디바이스들은 추가 제어 레벨을 제공하지만 조용한 환경에서는 바람직하지 않고 시끄러운 환경에서는 신뢰할 수 없을 수 있다.
방법, 비일시적 컴퓨터 판독가능 저장 매체, 및 추적 디바이스가 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어한다. 포인팅 컨트롤러의 상태 감지 디바이스로부터 센서 데이터가 획득된다. 센서 데이터 및 저장된 팔 모델에 기초하여 3차원 공간을 통해 포인팅 벡터의 움직임이 추적된다. 스마트 디바이스를 선택된 상태에 두기 위해 스마트 디바이스와 연관된 3차원 공간의 좌표들과 포인팅 벡터의 교차가 검출된다. 증강 현실 디스플레이 디바이스는기 스마트 디바이스와 연관된 가상 메뉴를 디스플레이한다. 스마트 디바이스가 선택된 상태에 있을 때, 가상 메뉴와 연관된 포인팅 컨트롤러와의 제어 상호작용이 검출되고, 제어 상호작용에 기초하여 스마트 디바이스의 동작을 제어하기 위한 커맨드가 생성된다.
실시예에서, 스마트 디바이스와 연관된 좌표들은 스마트 디바이스의 물리적 위치를 포함한다. 다른 실시예에서, 스마트 디바이스와 연관된 좌표들은 스마트 디바이스와 연관된 실제 또는 가상 프록시 디바이스의 위치를 포함한다.
실시예에서, 스마트 디바이스와 연관된 좌표들과 포인팅 벡터의 교차를 검출하는 단계는, 포인팅 벡터와 정렬된 중심축, 포인팅 컨트롤러의 위치에 근접한 원점, 및 포인팅 벡터의 원점으로부터의 거리에 따라 증가하는 반경을 갖는 포인팅 원뿔을 생성하는 단계를 포함한다. 포인팅 원뿔이 스마트 디바이스와 연관된 좌표들과 중첩하는 것에 응답하여, 교차가 검출된다.
실시예에서, 제어 상호작용을 검출하는 단계는, 포인팅 컨트롤러의 인터디지트(interdigit) 버튼의 활성화를 검출하는 단계를 포함한다. 또한, 실시예에서, 제어 상호작용을 검출하는 단계는, 포인팅 컨트롤러의 슬라이더 제어 인터페이스와의 상호작용을 검출하는 단계; 슬라이더 제어 인터페이스와의 상호작용에 응답하여, 가상 메뉴의 상이한 메뉴 아이템들 사이에서 내비게이팅하는 단계; 및 포인팅 컨트롤러의 인터디지트 버튼의 활성화 검출에 응답하여 메뉴 아이템을 선택하는 단계를 포함한다. 실시예에서, 제어 상호작용을 검출하는 단계는, 스마트 디바이스의 제어 기능을 나타내는 포인팅 컨트롤러로 행해진 제스처를 검출하는 단계를 포함한다.
실시예에서, 포인팅 벡터의 움직임을 추적하는 단계는, 포인팅 컨트롤러와 통합된 카메라에 기초하여 추적을 수행하는 단계를 포함한다.
실시예에서, 포인팅 벡터의 움직임을 추적하는 단계는, 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지를 검출하는 단계; 및 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지에 따라, 팔 모델의 파라미터들을 조정하는 단계를 포함한다. 다른 실시예에서, 포인팅 벡터의 움직임을 추적하는 단계는, 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지를 검출하는 단계; 및 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지에 따라, 팔 모델의 파라미터들을 조정하는 단계를 포함한다. 다른 실시예에서, 포인팅 벡터의 움직임을 추적하는 단계는, 포인팅 컨트롤러의 사용자와 연관된 피로 레벨을 검출하는 단계; 및 검출된 피로 레벨에 따라 팔 모델의 파라미터들을 조정하는 단계를 포함한다.
실시예에서, 포인팅 벡터의 움직임을 추적하는 단계는, 스마트 디바이스와 연관된 3차원 공간의 좌표들이 포인팅 컨트롤러로부터의 문턱 거리보다 크다고 결정하는 단계; 뻗은 위치에 있는 것으로 팔에 대응하는 팔 모델의 파라미터들을 생성하는 단계; 및 팔 모델의 파라미터들에 기초하여 움직임을 추적하는 단계를 포함한다.
실시예에서, 포인팅 벡터의 움직임을 추적하는 단계는, 스마트 디바이스와 연관된 차원 공간의 좌표들이 포인팅 컨트롤러로부터의 문턱 거리보다 작다고 결정하는 단계; 신체 근처의 이완된 위치에 있는 것으로 팔에 대응하는 팔 모델의 파라미터들을 생성하는 단계; 및 팔 모델의 파라미터들에 기초하여 움직임을 추적하는 단계를 포함한다.
실시예에서, 추적 디바이스는 스마트 디바이스를 스마트 라이트(smart light)로서 인식하고, 포인팅 컨트롤러와의 제어 상호작용을 검출하는 것은 포인팅 컨트롤러의 터치 인터페이스 상의 스와이핑 제스처를 검출하는 것을 포함하고, 커맨드를 생성하는 것은 스와이핑 제스처의 방향에 따라 라이트의 디밍(dimming)을 제어하는 것을 포함한다.
추가적인 실시예들은 본 기술분야의 당업자들에게 명백할 것이다.
개시된 실시예들은 첨부된 도면들과 관련하여 취해질 때, 본 발명의 다음의 상세한 설명 및 첨부된 청구범위로부터 보다 쉽게 명백해질 다른 이점들 및 피처들을 갖는다:
도 1은 스마트 디바이스 제어 시스템의 예시적인 실시예를 예시한다.
도 2는 포인팅 컨트롤러의 예시적인 실시예를 예시한다.
도 3은 추적 디바이스의 예시적인 실시예를 예시한다.
도 4는 포인팅 컨트롤러로부터의 상호작용들을 프로세싱하기 위한 제어 프로세싱 모듈의 예시적인 실시예를 예시한다.
도 5는 포인팅 컨트롤러를 사용하는 상호작용들에 기초하여 스마트 디바이스를 제어하기 위한 프로세스의 예시적인 실시예를 예시한다.
도 6은 인접한 손가락들 사이에서 움켜잡기 위한 형태 인자를 갖는 포인팅 컨트롤러의 예시적인 실시예를 예시한다.
도면들 및 다음 설명은 단지 예시를 위한 바람직한 실시예들에 관한 것이다. 다음의 논의로부터, 본 명세서에 개시된 구조물들 및 방법들의 대안적인 실시예들은 청구된 것의 원리를 벗어나지 않고 채용될 수 있는 실행 가능한 대안들로서 쉽게 인식될 것이라는 점에 유의해야 한다.
이제 첨부된 도면들에서 그 예들이 도시된 몇몇 실시예들을 상세하게 참조할 것이다. 실행 가능한 모든 경우 유사한 또는 비슷한 참조 번호들이 도면들에 사용될 수 있고 유사한 또는 비슷한 기능부를 나타낼 수 있음에 유의한다. 도면들은 단지 예시의 목적으로 개시된 시스템(또는 방법)의 실시예들을 도시한다. 당업자는 본 명세서에 설명된 원리로부터 벗어남이 없이 본 명세서에 예시된 구조물들 및 방법들의 대안적인 실시예들이 채용될 수 있음을 다음의 설명으로부터 용이하게 인식할 것이다.
사용자에 의해 착용되는 포인팅 컨트롤러는 연결된 다양한 스마트 디바이스들의 직관적 제어를 가능하게 한다. 사용자들은 스마트 디바이스(또는 프록시 개체)의 방향을 가리키고 미리 정의된 액션을 수행하여 제어할 디바이스를 선택함으로써 어느 디바이스가 제어될 것인지를 나타낼 수 있다. 일단 선택되면, 사용자는 다양한 제스처들을 수행함으로써 또는 포인팅 컨트롤러에 통합된 하나 이상의 제어 요소와의 상호작용에 의해 스마트 디바이스와 상호작용할 수 있다. 스마트 디바이스는 스마트 디바이스의 상의 시각적 또는 청각적 표시기들을 사용하여, 또는 햅틱, 청각 또는 시각적 피드백을 제공하는 사용자에 근접한 포인팅 컨트롤러 또는 다른 디바이스에 제어 신호를 전송함으로써 피드백을 제공할 수 있다.
도 1은 일 실시예에 따른 따른 스마트 디바이스 제어 시스템(100)의 블록도이다. 스마트 디바이스 제어 시스템(100)은 네트워크(130)를 통해 연결된 스마트 디바이스(140), 추적 디바이스(110), 및 포인팅 컨트롤러(120)를 포함한다. 대안적인 구성들에서, 스마트 디바이스 제어 시스템(100)에는 상이한 및/또는 추가적인 컴포넌트들이 포함될 수 있다.
스마트 디바이스(140)는 다양한 구성 설정들에 기초하여 하나 이상의 기능을 수행할 수 있는 연결-인에이블된 전자 디바이스를 포함한다. 스마트 디바이스들(140)의 예들은 예를 들어, 스마트 온도 조절기들, 스마트 잠금 장치들, 스마트 냉장고들, 스마트 스피커들, 스마트 조명 컨트롤러들, 스마트 의료 장비, 또는 기타 디바이스들을 포함한다. 스마트 디바이스(140)는 일반적으로 적어도 프로세서, 저장 매체, 및 통신 인터페이스를 포함하는 하드웨어를 포함한다. 또한, 스마트 디바이스(140)는 그 동작과 관련된 다양한 환경 조건들을 검출하기 위한 하나 이상의 센서를 포함할 수 있다. 예를 들어, 스마트 온도 조절 장치는 온도 센서 및 습도 센서를 포함할 수 있다. 스마트 디바이스(140)는 일반적으로 직접 사용자 입력, 검출된 환경 조건들, 검출된 이벤트들, 또는 이들의 조합에 응답하여 하나 이상의 제어 출력을 제공한다. 예를 들어, 스마트 온도 조절 장치는 원하는 범위 내에서 주변 온도를 제어하기 위해 가열 및/또는 냉각 시스템을 제어할 수 있다. 스마트 조명 시스템은 연결된 전구의 턴온 또는 오프, 조명 출력의 색상, 또는 전구들과 연관된 온/오프 패턴들을 제어할 수 있다. 스마트 디바이스(140)는 이것이 사용자의 원하는 동작을 지능적으로 예측하기 위해 일정 레벨의 자동화 제어를 제공하는 것을 인에이블시키는 소프트웨어 또는 펌웨어를 실행할 수 있다. 스마트 디바이스(140)는 다른 연결된 디바이스들이 스마트 디바이스(140)에 코맨드 입력들을 제공하거나 또는 스마트 디바이스(140)로부터 상태 정보 또는 기타 정보를 질의하는 것을 인에이블시키는 API(Application Programming Interface)를 더 포함할 수 있다. API는 스마트 폰, 리모트 컨트롤러 또는 백엔드 서버와 같은 다른 네트워크 연결 디바이스의 애플리케이션 인터페이스 또는 웹 인터페이스를 통해 액세스가능할 수 있다.
포인팅 컨트롤러(120)는 사용자 제스처들 및 포인팅 컨트롤러(120)에 통합된 제어 요소들과의 상호작용들을 캡처하는 제어 디바이스를 포함한다. 실시예에서, 포인팅 컨트롤러(120)는 손, 손목, 또는 팔에 착용될 수 있게 하는 형태 인자를 갖는다. 예를 들어, 일 실시예에서, 포인팅 컨트롤러(120)는 도 6에 예시된 바와 같이 2개의 인접한 손가락들 사이에서 이것이 움켜쥐어지는 것을 가능하게 하는 형태 인자를 갖는다. 다른 실시예들에서, 포인팅 컨트롤러(120)는 이것이 한 손가락에 착용되는 것을 가능하게 하는 링 형태 인자를 포함할 수 있다. 다른 실시예에서, 포인팅 컨트롤러(120)는 다수의 손가락들에 걸쳐 착용되는 너클 더스터(knuckle duster)를 포함할 수 있다. 또 다른 실시예들에서, 포인팅 컨트롤러(120)는 손목 또는 팔 주위에 착용될 수 있는 밴드를 포함한다.
포인팅 컨트롤러(120)는 포인팅 컨트롤러(120)의 위치 및 배향 감지를 가능하게 하는 다양한 센서들, 및 포인팅 컨트롤러(120)를 착용하고 있는 사용자로부터 직접 입력들을 수신하기 위한 제어 인터페이스들을 포함한다. 예를 들어, 포인팅 컨트롤러(120)는 포인팅 또는 손 흔드는 것과 같은 인간의 제스처들을 캡처할 수 있고, 포인팅 컨트롤러(120) 상의 제어 요소들과의 상호작용들을 캡처할 수 있다. 스마트 디바이스들(140)에 상이한 제어 입력들을 제공하기 위해 상이한 제스처들이 이용될 수 있다. 유리하게는, 포인팅 컨트롤러(120)는 아래에서 더 상세히 설명되는 바와 같이 사용자가 스마트 디바이스(140)와 자연스러운 방식으로 상호작용하는 것을 가능하게 한다.
추적 디바이스(110)는 포인팅 컨트롤러(120)에 의해 검출된 제스처 및들 기타 상호작용들을 프로세싱하고 스마트 디바이스(140)를 제어하기 위한 제어 입력들을 생성하기 위해 포인팅 컨트롤러(120)와 함께 동작하는 컴퓨팅 디바이스를 포함한다. 실시예에서, 추적 디바이스(110)는 제어 입력들을 제공하기 위해 스마트 디바이스(140)의 API와 인터페이싱한다. 예를 들어, 추적 디바이스(110)는 포인팅 컨트롤러(120)의 센서들로부터 위치 추적 데이터를 수신하고, 추적 데이터에 기초하여 포인팅 컨트롤러(120)의 포인팅 방향 및/또는 포인팅 컨트롤러(120)를 착용하고 있는 사용자에 의해 취해진 특정 제스처들을 결정할 수 있다. 추적 디바이스(110)는 또한 추적 제어기(120)의 환경 내의 스마트 디바이스(140) 및/또는 다른 객체들의 위치에 대한 정보를 획득할 수 있다. 추가적으로, 추적 디바이스(110)는 포인팅 컨트롤러(120) 상의 제어 요소들과의 사용자 상호작용들을 나타내는 제어 데이터를 수신할 수 있다. 그 후, 추적 디바이스(110)는 검출된 포인팅 방향, 스마트 디바이스(140) 및/또는 다른 객체들의 위치들, 및 포인팅 컨트롤러(120)의 제어 요소들과의 상호작용들에 기초하여 스마트 디바이스(140)의 양상들을 제어하기 위한 제어 출력들을 생성한다.
실시예에서, 추적 디바이스(110)는 스마트 폰, 태블릿, 헤드 마운트 디스플레이(head mounted display) 디바이스, 또는 디스플레이를 반드시 포함할 필요는 없는 컴퓨팅 디바이스들을 포함하는 포인팅 컨트롤러(120)와 인터페이싱하기 위한 그리고 스마트 장치(140)와 인터페이스하기 위한 애플리케이션을 실행하는 다른 디바이스를 포함한다. 대안적으로, 추적 디바이스(110)는 상기 설명된 포인팅 컨트롤러(120)의 임의의 형태 인자들에서 포인팅 컨트롤러(120)와 통합될 수 있다.
특정 실시예에서, 추적 디바이스(110)는 오디오, 이미지, 비디오, 또는 이들의 조합과 같은 디지털 콘텐츠를 표시하는 디스플레이 시스템을 포함할 수 있다. 여기서, 추적 디바이스(110)는 예를 들어, 스마트폰이나 태블릿과 같은 통합 디스플레이 또는 별도의 디스플레이를 갖는 헤드 마운트 장치로서 구현된 증강 현실 디스플레이 디바이스를 포함할 수 있다. 증강 현실 애플리케이션에서, 추적 디바이스(110)는 현실 세계에 대한 뷰어의 시각과 함께 정보 및/또는 가상 객체들의 제시를 가능하게 한다. 이 오버레이는 예를 들어, 사용자가 렌더링된 프레젠테이션을 실제 세계 뷰와 동시에 보는 것을 가능하게 하는 반투명 디스플레이, 가상 객체들 또는 정보를 현실 세계 뷰에 투영하는 프로젝션 시스템, 또는 실제 세계 뷰를 캡처하여 이를 오버레이된 프레젠테이션과 결합하고 결합된 뷰를 디스플레이를 통해 사용자에게 제시하는 카메라 피드를 통해 구현될 수 있다.
예시적인 사용 경우에, 포인팅 컨트롤러(120) 및 추적 디바이스(110)는 사용자가 자연스럽고 직관적인 모션들을 사용하여 스마트 디바이스(140)와 상호작용하는 것을 가능하게 할 수 있다. 예를 들어, 사용자는 스마트 디바이스(140)를 가리키고 포인팅 컨트롤러(120)와 미리 정의된 상호작용을 수행하여 스마트 디바이스(140)의 기능(예를 들어, 조명 켜기, 온도 조절 장치 설정, 스피커의 볼륨 변경 또는 기타 기능과 같은)을 활성화할 수 있다. 다른 실시예들에서, 사용자는 스마트 디바이스(140)와 연관된 현실 세계 객체 또는 가상 객체를 포함할 수 있는 프록시 디바이스를 지시함으로써 스마트 디바이스를 제어할 수 있다. 여기서, 예를 들어, 사용자는 스마트 온도 조절 장치로 하여금 라디에이터의 온도를 제어하게 하기 위해 스마트 온도 조절 장치와 연관된 라디에이터를 가리킬 수 있다. 다른 예에서, 사용자는 스마트 스위치로 하여금 전구의 동작을 제어하게 하기 위해 스마트 스위치와 연관된 전구를 가리킬 수 있다. 또 다른 실시예들에서, 추적 컨트롤러(110)의 증강 현실 디스플레이의 가상 객체들은 스마트 디바이스(140)를 제어하기 위한 프록시 디바이스들의 역할을 할 수 있다. 예를 들어, 사용자는 스마트 온도 조절 장치의 기능을 제어하기 위해 스마트 온도 조절 장치와 관련된 가상 메뉴 또는 가상 아이콘들을 가리킬 수 있다.
네트워크(130)는 유선 및/또는 무선 통신 시스템 모두를 사용하여 근거리 및/또는 광역 네트워크의 임의의 조합을 포함할 수 있다. 일 실시예에서, 네트워크(130)는 표준 통신 기술들 및/또는 프로토콜들을 사용하고, 블루투스, 블루투스 저에너지, WiFi 다이렉트, WiFi, 셀룰러 네트워크 기술들, 또는 유선 통신 프로토콜들 중 하나 이상을 포함할 수 있다. 네트워크(130)는 상이한 디바이스들 사이의 상이한 유형의 연결들을 포함할 수 있다. 예를 들어, 추적 디바이스(110)는 블루투스 연결을 통해 포인팅 컨트롤러와 통신할 수 있고, WiFi 연결을 통해 스마트 디바이스(140)와 통신할 수 있다. 몇몇 실시예들에서, 네트워크(130)의 통신 링크들의 전부 또는 일부는 임의의 적합한 기법을 사용하여 암호화될 수 있다.
도 2는 포인팅 컨트롤러(120)의 예시적인 실시예를 예시하는 블록도이다. 실시예에서, 포인팅 컨트롤러(120)는 제어 유닛(210), 상태 감지 모듈(220), 제어 요소들(230), 전력 서브시스템(240), 무선 인터페이스(250), 및 출력 디바이스들(260)을 포함한다. 대안적인 실시예들에서, 포인팅 컨트롤러(120)는 추가의 또는 상이한 컴포넌트들을 포함한다.
상태 감지 모듈(220)은 포인팅 컨트롤러의 상태를 감지할 수 있는 데이터를 캡처하기 위한 전자 디바이스를 포함하며, 이는 예를 들어, 위치, 배향, 모션, 환경 조건들, 또는 포인팅 컨트롤러(120)의 상태에 대한 기타 정보를 포함할 수 있다. 예를 들어, 일 실시예에서, 상태 감지 모듈(220)은 배향 또는 각속도를 감지하기 위한 자이로스코프 및 가속을 감지하기 위한 가속도계를 갖는 6자유도(6 DOF, six degree of freedom) 관성 측정 유닛(IMU, inertial measurement unit)을 포함할 수 있다. 다른 실시예에서, 상태 감지 모듈(220)은 전술한 바와 같은 자이로스코프 및 가속도계를 포함하는 9 자유도(9 DOF) IMU를 포함할 수 있고, 자기장(예를 들어, 지구의 자기장)을 검출하기 위한 자력계를 더 포함할 수 있다. 자력계는 지리적 기본 방향들에 대한 포인팅 컨트롤러(120)의 배향을 검출하기 위한 나침반으로 이용될 수 있다. IMU는 더 나아가 가속도 데이터로부터 속도 또는 위치를 계산하는 것과 같이 측정치들을 다른 유용한 데이터로 변환하기 위해 직접 감지에 의해 얻어진 데이터를 프로세싱할 수 있다.
다른 실시예에서, 상태 감지 모듈(220)은 포인팅 컨트롤러(120)의 위치 및 배향을 추적하고 IMU 데이터에 축적될 수 있는 임의의 드리프트를 보정하기에 적합한 환경의 이미지들을 캡처하는 하나 이상의 카메라를 포함할 수 있다. 여기에서 이미지 데이터는 SIFT(Scale-invariant Feature Transform) 알고리즘과 공간의 기존 맵을 사용하여, SLAM(simultaneous localization and mapping) 기법들을 사용하여, 카메라에서 볼 수 있는 특별히 제작된 추적 마커들을 사용하여, 또는 다른 이미지 기반 추적 기법들을 사용하여 프로세싱될 수 있다. 캡처된 이미지들에 기초하여 포인팅 컨트롤러(120)의 위치 및 배향을 도출하기 위한 추적 알고리즘은 포인팅 컨트롤러(120) 자체에서 수행되거나, 또는 이미지들이 포인팅 컨트롤러(120)의 전력 소모를 줄이기 위한 프로세싱을 위해 추적 디바이스(110)에 제공될 수 있다.
다른 실시예에서, 상태 감지 모듈(220)은 환경 내의 알려진 위치들에 있는 앵커 디바이스들로부터 또는 추적 디바이스(110)로부터의 비컨(beacon)들을 검출하는 무선 주파수(RF) 트랜시버를 포함할 수 있다. 3차원 공간 내의 정확한 위치는 다양한 비컨 신호들의 비행 시간(time-of-flight)에 기초하는 삼각 측량 기법들을 사용하여 계산되거나 또는 앵커 디바이스들의 어레이의 수신 신호 강도 표시(RSSI, received signal strength indication)로부터 계산될 수 있다.
다른 실시예에서, 상태 감지 모듈(220)은 (예를 들어, 전파의 방향을 결정하기 위해 포인팅 컨트롤러(120), 추적 디바이스(110), 또는 둘 다의 안테나 어레이를 사용하여) 추적 디바이스(110) 또는 다른 외부 디바이스에 관한 포인팅 컨트롤러(120)의 위치를 획득하는 블루투스 방향 찾기 모듈을 포함할 수 있다.
실시예에서, 상태 감지 모듈(220)은 대기압을 측정하는 기압 센서를 포함할 수 있다. 포인팅 컨트롤러(120)의 높이는 하기에서 더욱 상세히 설명되는 바와 같이 검출된 압력에 기초하여 추정될 수 있다.
실시예에서, 상태 감지 모듈(220)은 하기에서 더욱 상세히 설명되는 바와 같이 (예를 들어, 전파의 방향을 결정하기 위해 포인팅 컨트롤러(120), 추적 디바이스(110), 또는 둘 다의 안테나 어레이를 사용하여) 추적 디바이스(110)에 관한 포인팅 컨트롤러(120)의 위치를 획득하기 위해 블루투스 방향 찾기를 이용할 수 있다.
추가 실시예들에서, 상태 감지 모듈(220)은 초음파 펄스 송신기 및/또는 포인팅 컨트롤러(120)와 추적 디바이스(110) 또는 아래에서 더욱 상세히 설명되는 바와 같은 다른 기준 디바이스 사이의 거리를 나타내는 음향 비행 시간을 결정하는 데 사용될 수 있는 마이크로폰을 포함할 수 있다.
다른 실시예에서, 상태 감지 모듈(220)은 완전히 생략될 수 있고, 포인팅 컨트롤러(120)의 포인팅 방향을 결정하는 데 대안적인 기법들이 사용될 수 있다. 예를 들어, 상태 감지 모듈(220) 대신에 (예를 들어, 스틱-온(stick-on), 저비용, 저전력 디바이스들) 스마트 디바이스(140) 또는 프록시 객체에 통합되거나 그에 부착된 수신기들에 의해 검출 가능한 IR 신호를 방출하는 적외선(IR, infrared) 모듈(미도시)이 포함될 수 있다.
제어 요소들(230)은 사용자로부터의 제어 입력들을 검출하기 위한 하나 이상의 제어를 포함한다. 제어 요소들(230)은 예를 들어 터치 센서(예를 들어, 정전식 터치 센서), 다른 센서들 또는 변환기들, 또는 물리적 버튼들, 다이얼들, 스위치들, 또는 다른 제어 메커니즘들을 포함할 수 있다. 특정 실시예에서, 제어 요소(230)는 슬라이더 제어 인터페이스(232) 및 인터디지트(interdigit) 버튼(234)을 포함한다. 다른 실시예들에서, 상이한 또는 추가적인 제어 요소들(230)이 채용될 수 있다.
슬라이더 제어 인터페이스(232)는 사용자의 엄지 또는 다른 손가락에 의해 액세스 가능한 터치 감지 패드를 포함한다. 터치 감지 패드는 터치에 응답하여 발생하는 커패시턴스 또는 저항의 변화를 검출하는 감지 요소들의 어레이를 포함할 수 있으며, 이에 따라 터치 감지 패드가 터치의 존재 또는 부재 및 패드의 영역 내의 터치 위치를 감지하는 것을 가능하게 할 수 있다. 몇몇 실시예들에서, 터치 감지 패드는 터치에 의해 가해지는 힘의 감지를 가능하게 하기 위한 터치 힘 센서들을 추가로 포함할 수 있다. 사용자는 엄지 또는 다른 손가락을 이용한 탭핑 또는 스와이프와 같은 다양한 제스처들을 수행함으로써 슬라이더 제어 인터페이스(232)와 상호작용할 수 있다. 스와이핑은 손가락의 축을 따라(예를 들어, 포인팅 방향에 평행하게) 순방향 또는 역방향으로, 손가락의 축에 실질적으로 수직인(예를 들어, 포인팅 방향에 수직인) 축을 따라, 또는 시계 방향 또는 반시계 방향으로 원을 그리며 수행될 수 있다. 도 6의 형태 인자에서, 슬라이더 컨트롤러 인터페이스(232)는 검지와 중지의 바닥을 가로질러 이어지는 표면 상의 포인팅 컨트롤러(120)의 바닥 측 상에 위치될 수 있다.
인터디지트 버튼(234)은 2개의 손가락들을 함께 쥐는 것(squeezing)에 의해 선택될 수 있도록 위치된 터치 감지 및/또는 압력 감지 패드를 포함할 수 있다. 예를 들어, 도 6의 형태 인자에서, 인터디지트 버튼(234)은 포인팅 컨트롤러(120)가 검지와 중지 사이에 유지될 때 검지 또는 중지의 측면에 인접하도록 곡면의 내부에 있을 수 있다. 실시예에서, 인터디지트 버튼(234)은 터치 감지 패드에 가해지는 힘을 검출하는 힘 감지 저항기를 포함한다. 대안적으로, 인터디지트 버튼(234)은 위에서 논의된 슬라이더 컨트롤러 인터페이스(232)의 터치 감지 패드와 유사하게 동작할 수 있다. 그것의 배치로 인해, 중지와 집게(또는 인접한 손가락들의 다른 쌍)가 인터디지트 버튼의 터치 감지 및/또는 압력 감지 패드에 적어도 임계 압력이 가해진 상태에서 서로를 향해 눌러지는 "핀칭(pinching) 제스처"를 검출하는 데 인터디지트 버튼이 사용될 수 있다.
전원 서브시스템(240)은 전원을 저장하고 포인팅 컨트롤러(120)에 공급한다. 예를 들어, 전력 서브시스템(240)은 배터리, 배터리를 충전하기 위한 충전 회로, 포인팅 컨트롤러(120)의 다른 컴포넌트들에 공급되는 전압을 제어하기 위한 하나 이상의 전압 조절기를 포함할 수 있다. 실시예에서, 전력 서브시스템(240)은 배터리를 효율적으로 활용하기 위하여 포인팅 컨트롤러(120)가 상이한 전력 모드들(예를 들어, 풀(full) 전력 모드, 저전력 모드 및 슬립(sleep) 모드) 사이를 전환하도록 제어할 수 있다.
무선 인터페이스(250)는 네트워크(130)를 통해 추적 디바이스(110)와 무선으로 통신한다. 실시예에서, 무선 인터페이스(250)는 예를 들어 블루투스 인터페이스, 블루투스 저에너지 인터페이스, WiFi 링크, 또는 다른 무선 인터페이스를 포함할 수 있다. 무선 인터페이스(250)는 피어-투-피어(peer-to-peer) 연결을 통해 추적 디바이스(110)와 직접 통신할 수 있거나 또는 근거리 통신망, 광역 통신망, 또는 이들의 조합을 통해 하나 이상의 중간 디바이스를 통해 추적 디바이스(110)와 통신할 수 있다. 실시예에서, 무선 인터페이스(250)는 스마트 디바이스(140)와 직접 통신할 수 있다.
출력 디바이스들(260)은 추적 디바이스(110)로부터의 제어 신호들에 응답하여 또는 포인팅 컨트롤러(120) 상의 동작들에 직접 응답하여 포인팅 컨트롤러(120)로부터의 출력들을 제공하기 위한 다양한 디바이스들을 포함한다. 출력 디바이스들(260)은 예를 들어, 햅틱 피드백 디바이스(예를 들어, 선형 공진 액추에이터 또는 편심 질량 진동 모터), 하나 이상의 발광 다이오드(LED, light emitting diode), 또는 오디오 출력 디바이스를 포함할 수 있다.
제어 유닛(210)은 포인팅 컨트롤러(120)의 다양한 기능들을 제어하기 위해 상태 감지 모듈(220), 제어 요소들(230), 전력 서브시스템(240) 및 무선 인터페이스(250)로부터의 입력들을 프로세싱한다. 실시예에서, 제어 유닛(210)은 프로세서, 및 프로세서에 의해 실행될 때 프로세서로 하여금 본 명세서에 설명된 컨트롤러(210)에 귀속된 기능들을 수행하게 하는 명령어들을 저장하는 비일시적 컴퓨터 판독 가능 저장 매체를 포함한다. 대안적으로 또는 추가로, 제어 유닛(210)은 ASIC(application specific integrated circuit) 또는 FPGA(field-programmable gate array)로서 구현된 디지털 로직을 포함할 수 있다.
제어 유닛(210)은 상태 감지 모듈(220) 및 제어 요소들(230)로부터 원시 데이터를 프로세싱하여 모션 이벤트들 또는 상호작용 이벤트들을 검출한 다음, 프로세싱된 이벤트들을 원시 데이터 대신 추적 디바이스(110)에 전송함으로써, 통신 링크(130)를 통한 대역폭을 감소시킬 수 있다. 예를 들어, 제어 유닛(210)은 상태 감지 모듈(220)의 IMU로부터 원시 가속도계, 자이로스코프, 및/또는 자력계 데이터를 획득하고 검출된 배향(예를 들어, 롤, 피치, 및 요(yaw) 값들)을 결정하기 위해 센서 융합 알고리즘을 적용할 수 있다. 또한, 제어 유닛(210)은 원시 터치 데이터(예를 들어, 정전 용량 또는 저항 감지)를 프로세싱하고 아날로그-디지털 변환 및 필터링과 같은 프로세싱을 수행하여 추적 디바이스(110)로 전송되는 터치의 검출 및 터치의 위치 또는 힘을 나타내는 터치 검출 이벤트들을 생성할 수 있다.
대안적으로, 제어 유닛(210)은 상태 감지 모듈(220) 및 제어 요소들(230)로부터의 원시 데이터만을 추적 디바이스(110)로 전송할 수 있고, 전술한 프로세싱은 대신에 추적 디바이스(110)에서 수행될 수 있다. 다른 실시예에서, 제어 유닛(210)은 원시 및 프로세싱된 이벤트 데이터 모두를 추적 디바이스(110)에 전송할 수 있다.
실시예에서, 포인팅 컨트롤러(120)의 다른 컴포넌트들은 SPI(Serial Peripheral Interface) 버스, 병렬 버스, 또는 I2C 버스와 같은 데이터 버스를 통해 제어 유닛(210)과 커플링될 수 있다. 또한, 포인팅 컨트롤러(120)의 컴포넌트들은 사용자 입력들에 대한 저 레이턴시 응답들을 가능하게 하기 위해 제어 유닛에 의해 검출 가능한 인터럽트 신호들을 생성할 수 있다.
도 3은 추적 디바이스(110)의 실시예를 예시하는 블록도이다. 예시된 실시예에서, 추적 디바이스(110)는 프로세서(310), 저장 매체(320), 무선 인터페이스(330), 카메라(345)와 상태 감지 모듈(342)을 포함하는 센서들(340), 및 디스플레이(352)와 오디오 출력 디바이스(354)를 포함하는 출력 디바이스들(350)을 포함한다. 대안적인 실시예들은 추가적 또는 상이한 컴포넌트들을 포함할 수 있다. 예를 들어, 몇몇 실시예들에서, 디스플레이 기능이 없는 추적 디바이스(110)는 디스플레이, 카메라(345), 또는 콘텐츠 프리젠테이션 모듈(322)을 반드시 포함할 필요는 없다.
무선 인터페이스(330)는 네트워크(130)를 통해 포인팅 컨트롤러(120)와 무선으로 통신한다. 실시예에서, 무선 인터페이스(330)는 예를 들어 블루투스 인터페이스, WiFi 인터페이스, 또는 둘 모두를 포함할 수 있다. 무선 인터페이스(330)는 피어-투-피어 연결을 통해 포인팅 컨트롤러(120)와 직접 통신할 수 있거나 또는 근거리 통신망, 광역 통신망, 또는 이들의 조합을 통해 하나 이상의 중간 디바이스를 통해 포인팅 컨트롤러(120)와 통신할 수 있다. 무선 인터페이스(330)는 네트워크(130)를 통해 스마트 디바이스(140)와 추가로 통신한다.
실시예에서, 무선 인터페이스(330)는 다양한 전력 모드들에 진입하도록 포인팅 컨트롤러(120)를 제어하는 것; 배터리 상태, 온도 또는 기타 진단 정보와 같은 포인팅 컨트롤러(120)의 상태에 대한 세부 정보를 요청하는 것; 포인팅 컨트롤러(120)의 펌웨어를 업데이트하는 것; 특정 진동 패턴에 따라 포인팅 컨트롤러(120)의 햅틱 액츄에이터를 활성화하는 것; 또는
포인팅 컨트롤러(120)에서 특정 버튼 또는 제어 입력을 활성화하는 것과 같이 포인팅 컨트롤러(120)에서 검출된 이벤트들에 직접 응답하도록 포인팅 컨트롤러(120) 상의 햅틱 액츄에이터를 구성하는 것과 같은 동작들을 수행하기 위해 포인팅 컨트롤러(120)에 송신 정보 및 커맨드들을 수신할 수 있다. 무선 인터페이스(330)는 또한 포인팅 컨트롤러(120)의 상태 감지 모듈(220)로부터의 추적 데이터, 포인팅 컨트롤러(120)의 제어 요소들(230)로부터의 제어 데이터, 또는 포인팅 컨트롤러(120)의 전원 서브시스템(240)으로부터의 배터리 정보와 같은 정보를 포함하는 포인팅 컨트롤러(120)로부터의 전송을 주기적으로 수신할 수 있다.
센서(340)는 추적 디바이스(110)의 작동 환경과 연관된 다양한 조건들을 검출한다. 예를 들어, 카메라(345)는 추적 디바이스(110)의 시야 내에서 실제 환경의 실시간 비디오를 캡처한다. 카메라의 이미지 데이터는 가상 객체들 또는 정보와 결합되어 세계의 증강 현실 보기를 제시할 수 있다. 카메라(345)는 기존의 이미지 카메라, 깊이 카메라 또는 LIDAR 카메라와 같은 비-시각 카메라, 또는 이들의 조합을 포함할 수 있다.
센서들(340)은 또한 추적 디바이스(110)의 움직임 및 배향을 감지하기 위한 상태 감지 모듈(342)을 포함할 수 있다. 상태 감지 모듈(342)은 유사한 컴포넌트들을 포함할 수 있고 위에서 논의된 포인팅 컨트롤러(120)의 상태 감지 모듈(220)과 유사하게 동작할 수 있다. 예를 들어, 상태 감지 모듈(342)은 IMU, 무선 주파수(RF) 트랜시버, 블루투스 방향 찾기 모듈, 기압 센서, 초음파 펄스 송신기 및/또는 마이크, 또는 다른 센서들 중 하나 이상을 포함할 수 있다.
센서들(340)은 예를 들어, 위치 센서(예를 들어, 글로벌 포지셔닝 시스템) 또는 온도 센서와 같은 다양한 조건들을 검출하기 위한 다른 센서들을 옵션적으로 포함할 수 있다.
출력 디바이스들(350)은 디지털 콘텐츠를 표시하기 위해 추적 디바이스(110)로부터의 출력들을 제공하기 위한 다양한 디바이스들을 포함한다. 실시예에서, 출력 디바이스들(350)은 적어도 디스플레이(352) 및 오디오 출력 디바이스(354)를 포함할 수 있다. 대안적인 실시예들에서, 출력 디바이스들(350)은 예를 들어 햅틱 피드백 디바이스 및 하나 이상의 발광 다이오드(LED)와 같은 사용자에게 피드백을 제공하기 위한 추가 출력 디바이스들을 포함할 수 있다. 오디오 출력 디바이스(354)는 하나 이상의 통합 스피커 또는 제시된 디지털 콘텐츠와 연관된 오디오를 재생하기 위해 하나 이상의 외부 스피커를 연결하기 위한 포트를 포함할 수 있다. 디스플레이 디바이스(352)는 LED 디스플레이 패널, LCD 디스플레이 패널, 또는 다른 유형의 디스플레이와 같은 이미지 또는 비디오 콘텐츠를 표시하기 위한 전자 디바이스를 포함한다. 디스플레이 디바이스(352)는 가상 또는 증강 현실 환경의 시뮬레이션을 제시하기 위해 몰입형 방식으로 디지털 콘텐츠를 제시하는 방식으로 구성될 수 있다. 예를 들어, 디스플레이 디바이스(352)는 3차원 환경의 외양을 생성하기 위해 왼쪽 눈 및 오른쪽 눈에 상이한 이미지를 제시하는 입체 디스플레이를 포함할 수 있다. 실시예에서, 디스플레이 디바이스(352)는 가상 객체들 및/또는 환경들을 묘사하는 렌더링된 그래픽들을 카메라(345)로부터 캡처된 콘텐츠와 결합하여 현실 세계 장면에 오버레이된 가상 객체들과 증강 현실 프레젠테이션을 가능하게 하는 디지털 콘텐츠를 제시할 수 있다.
저장 매체(320)(예를 들어, 비일시적 컴퓨터 판독 가능 저장 매체)는 본 명세서에 설명된 추적 디바이스(110)에 귀속된 기능들을 수행하기 위해 프로세서들(310)에 의해 실행 가능한 명령어들을 저장한다. 실시예에서, 저장 매체(320)는 콘텐츠 프리젠테이션 모듈(322) 및 제어 프로세싱 모듈(324)을 포함한다. 대안적인 실시예들에서, 저장 매체(320)는 추가의 또는 상이한 모듈들을 포함할 수 있다.
콘텐츠 프리젠테이션 모듈(322)은 디스플레이(352) 및/또는 오디오 출력 디바이스(354)를 통해 디지털 콘텐츠를 제시한다. 디스플레이된 콘텐츠는 3차원 공간에서 가상 현실 또는 증강 현실 환경을 포함할 수 있다. 디스플레이된 콘텐츠는 카메라(345)에 의해 캡처된 현실 세계 이미지와 결합될 수 있는 가상 객체들을 포함할 수 있다. 콘텐츠 프리젠테이션 모듈(322)은 제어 프로세싱 모듈(324)로부터 수신된 정보에 기초하여 콘텐츠를 적응시킬 수 있다.
제어 프로세싱 모듈(324)은 무선 인터페이스(330)를 통해 포인팅 컨트롤러(120)로부터 수신된 입력들을 프로세싱하고, 스마트 디바이스(140)에 대한 제어 커맨드들을 생성할 수 있고 그리고/또는 콘텐츠 프리젠테이션 모듈(322)의 출력을 제어할 수 있는 프로세싱된 입력 데이터를 생성한다. 예를 들어, 제어 프로세싱 모듈(324)은 상태 감지 모듈(220, 342)로부터 수신된 추적 데이터에 기초하여 콘텐츠 프리젠테이션 모듈(322)에 의해 디스플레이된 가상 환경 내의 포인팅 컨트롤러(120)의 위치를 ㅇ추적할 수 있다. 또한, 제어 프로세싱 모듈(324)은 제어 요소들(230)에 대해 수행된 제스처들을 검출하기 위해 제어 요소들(230)로부터의 입력들을 프로세싱할 수 있다. 제어 프로세싱 모듈(324)은 포인팅 컨트롤러(120)의 검출된 추적 및 검출된 제스처들에 기초하여 스마트 디바이스(140)에 출력하기 위한 커맨드들을 결정할 수 있고, 그리고/또는 콘텐츠 프리젠테이션 모듈(322)로 하여금 액션들에 응답하여 프리젠테이션을 업데이트하게 할 수 있다. 제어 프로세싱 모듈(324)의 예는 아래에서 더 상세히 설명된다.
도 4는 제어 프로세싱 모듈(324)의 예시적인 실시예를 예시한다. 제어 프로세싱 모듈(324)은 추적 모듈(402), 팔 모델(404), 제스처 인식 모듈(406), 객체 상호작용 모듈(408), 메뉴 내비게이션 모듈(410), 및 캘리브레이션(calibration) 모듈(412)을 포함한다. 대안적인 실시예들은 상이하거나 추가적인 모듈들을 포함할 수 있다.
추적 모듈(402)은 사용자의 머리에 대한 포인팅 컨트롤러(120)의 위치 및 배향을 추론한다. 추적 디바이스(110)가 헤드 마운트 디스플레이에 통합된 실시예에서, 추적 디바이스(110)가 머리 위치에 대해 고정되기 때문에 플레이어의 머리의 위치는 추적 디바이스(110)의 위치로부터 직접 추론될 수 있다. 특히, 추적 모듈(402)은 상태 감지 모듈(220)로부터의 추적 데이터에 기초하여 포인팅 컨트롤러(120)의 배향을 결정하고, 추적 디바이스(110)로부터의 센서 데이터(예를 들어, 상태 감지 모듈(342)로부터의 추적 데이터)에 기초하여 환경에 관한 추적 디바이스(110)에 대한 위치 및 배향을 획득한다. 그 다음, 추적 모듈(402)은 포인팅 컨트롤러(120)의 배향, 추적 디바이스(110)의 위치 및 배향, 및 사용자가 포인팅 컨트롤러(120)를 작동시키는 포즈를 모델링하는 팔 모델(404)에 기초하여 환경에 대한 포인팅 컨트롤러(120)의 위치를 추정한다.
포인팅 컨트롤러(120)의 배향 및 계산된 위치에 기초하여, 추적 모듈(402)은 포인팅 컨트롤러(120)의 위치에서 시작되고 검출된 배향에 대응하는 방향으로 연장되는 포인팅 벡터를 생성하고 계속해서 업데이트한다. 포인팅 컨트롤러(120)가 하나 이상의 손가락에 착용되는 경우, 포인팅 벡터는 손가락들과 정렬된 포인팅 컨트롤러(120)를 통해 중심축을 따라 연장될 수 있다. 포인팅 벡터는 추적 디바이스(110)에 의해 추적되는 가상 환경에서 3차원 좌표들에 따라 지정될 수 있다. 따라서 포인팅 벡터는 가상 환경의 장면에 대한 포인팅 방향을 제공합니다. 포인팅 벡터는 예를 들어 접지 평면에 대한 제1 각도(즉, 피치 각도) 및 접지 평면에 수직인 수직 평면에 대한 제2 각도(즉, 요 각도)를 포함하는 각도의 쌍을 포함할 수 있다. 실시예에서, 포인팅 벡터의 축에 대한 배향 각도(즉, 롤 각도)는 또한 포인팅 벡터와 함께 추적될 수 있다.
실시예에서, 추적 모듈(402)은 포인팅 벡터 주위의 포인팅 원뿔을 계산할 수 있다. 여기서 원뿔은 포인팅 컨트롤러(120)에서 시작하여 포인팅 벡터와 정렬된 중심축을 가지며, 포인팅 컨트롤러(120)로부터 멀어질수록 증가하는 직경을 갖는다. 원뿔 각도는 사용자 또는 개발자에 의해 조정가능할 수 있거나 또는 하드코딩된(hardcoded) 파라미터일 수 있다. 추가적으로, 원뿔 각도는 객체와의 검출된 상호작용의 맥락에 기초하여 자동으로 업데이트될 수 있다. 예를 들어, 가까이 많은 객체들이 있는 환경과 상호 작용할 때, 멀리 떨어져 있는 적은 수의 객체들을 갖는 환경에 비해 원뿔 각도가 자동으로 감소될 수 있다. 추적 모듈(402)은 사용자가 포인팅 컨트롤러(120)를 이동시킴에 따라 포인팅 벡터, 포인트 원뿔 및 배향 각도를 업데이트한다.
실시예에서, 추적 모듈(402)은 포인팅 컨트롤러(120)의 상태 감지 모듈(220)로부터의 IMU 데이터에 적어도 부분적으로 기초하여 추적을 수행한다.
실시예에서, 추적 모듈(402)은 상태 감지 모듈(220) 및/또는 추적 디바이스(110)의 기압 센서로부터의 대기압 데이터에 적어도 부분적으로 기초하여 추적을 수행할 수 있다. 단일 종단 감지의 경우, 기준 압력 값은 캘리브레이션 프로세스 동안 기준 높이에 대응하여 결정될 수 있다. 추적 모듈(402)은 후속하여 대기압 판독치들을 획득하고 압력 변화에 기초하여 기준 높이로부터 수직 오프셋을 계산할 수 있다. 다른 실시예에서, 추적 모듈(402)은 차동 감지를 사용하여 포인팅 컨트롤러(120)의 수직 위치를 추정한다. 이 실시예에서, 포인팅 컨트롤러(120)의 압력 센서로부터 획득된 대기압 측정치와 외부 추적 디바이스(110)의 압력 센서로부터 획득된 대기압 측정치 사이의 차압이 계산된다. 차동 센서 측정들은 날씨 또는 기타 요인들로 인한 자연적인 대기 변화를 보상하기 위해 필터링될 수 있다.
다른 실시예에서, 추적 모듈(402)은 포인팅 컨트롤러(120) 및 추적 디바이스(110) 모두에서 수신된 무선 신호들의 상대적 RSSI들에 부분적으로 기초하여 포인팅 컨트롤러(120)를 추적할 수 있다. 상대 RSSI들은 추적 디바이스(110)와 포인팅 컨트롤러(120) 사이의 거리를 추정하는 데 사용될 수 있다. 포인팅 컨트롤러(120) 및 추적 디바이스(110)(또는 포인팅 컨트롤러(120), AR 헤드셋 및 모바일 폰과 같은 다수의 디바이스들 사이)에서 안테나의 방출 및 감도 패턴들을 모델링함으로써 거리 추정이 더욱 개선될 수 있다.
다른 실시예에서, 추적 모듈(402)은 (예를 들어, 전파의 방향을 결정하기 위해 포인팅 컨트롤러(120), 추적 디바이스(110), 또는 둘 다의 안테나 어레이를 사용하여) 추적 디바이스(110)에 관한 포인팅 컨트롤러(120)의 위치를 획득하기 위해 블루투스 방향 찾기를 이용할 수 있다. 일 실시예에서, 포인팅 방향의 롤 및 피치 컴포넌트들은 통합된 IMU로부터 획득되고 요 방향은 블루투스 방향 찾기로부터 획득된다. 다른 실시예에서, 롤, 피치 및 요는 포인팅 컨트롤러(120)의 다른 컴포넌트들로부터 획득될 수 있고 블루투스 방향 찾기는 다른 측정들 사이에 불일치가 있는 경우 수정을 수행하는 데 사용될 수 있다. 다른 실시예에서, 통계적 에러 속성들이 결정될 수 있고(예를 들어, 에러가 일부 상대 배향에서 일관된 경우), 통계적 에러 속성들에 기초하여 상대 배향에 대한 정보를 결정할 수 있다. 또 다른 실시예에서, 블루투스 방향 찾기는 강성 몸체 상의 다수의 포인트들을 결정하는 데 이용될 수 있고(예를 들어, AR 뷰어 내의 2개 이상의 안테나 어레이들로부터), 반드시 RSSI에 의존하지 않고 포인팅 컨트롤러(120)와 추적 디바이스(110) 사이의 거리를 추가로 추정할 수 있다.
추가 실시예들에서, 추적 모듈(402)은 초음파 펄스 송신기와 포인팅 컨트롤러(120) 및 추적 디바이스(110) 내의 마이크로폰 사이의 거리를 나타내는 음향 비행 시간에 기초하여 추적을 수행할 수 있다. 실시예에서, 추적 모듈(402)은 검출된 거리가 최대 문턱 거리(예를 들어, 1.5미터)보다 작은 경우에만, 추적 컴퓨팅에서 음향 비행 시간으로부터 추정된 거리를 활용한다. 다른 실시예에서, 추적 디바이스(110)에 대한 포인팅 컨트롤러(120)의 속도를 추정하기 위해 도플러 시프트(doppler shift) 효과가 검출될 수 있다. 여기서, 속도 추정은 추측 항법을 이용하여 IMU 데이터로부터 결정된 속도 추정의 에러를 보상하기 위해 활용될 수 있다. 다른 실시예에서, 음향 비행 시간에 기초한 추정된 거리는 기압 데이터에 기초하여 조정되어 압력 차이로 인한 음속의 변화를 보상할 수 있다.
팔 모델(404)의 파라미터들은 초기화 프로세스에서 결정될 수 있고, 후술되는 바와 같이 추적 동안 업데이트될 수 있다. 팔 모델(404)의 입력 파라미터들은, 예를 들어, 사용자의 키, 인간 비율의 표준화된 모델, 관절 각도 모델, 및 시간에 따라 변할 수 있는 다양한 동작 조건들을 포함할 수 있다. 사용자의 키는 사용자 프롬프트가 사용자에게 키를 입력하도록 요청하는 것에 응답하여 초기화 프로세스 동안 사용자로부터 수동으로 획득될 수 있다. 또는, 지면에 대한 추적 디바이스(110)의 추정된 위치에 기초하여 높이가 자동으로 추정될 수 있다. 예를 들어, 높이를 추정하기 위해 추적 디바이스(110)의 카메라(345)에 의해 캡처된 이미지 데이터에 대해 시각적 분석이 수행될 수 있다. 사용자의 키에 기초하여, 추적 모듈(402)은 인간 비율의 표준화된 모델에 기초하여 손, 팔뚝, 팔, 어깨 및 목의 사이즈에 높이를 매핑하는 미리 채워진 룩업 테이블에서 룩업을 수행할 수 있다. 그 다음, 인체 모델의 결합된 치수와 포인팅 컨트롤러(120)의 검출된 방향을 사용하여, 추적 모듈(402)은 관절 각도 모델을 적용하여 다양한 팔 포즈의 상대적 확률들을 예측할 수 있다. 가장 가능성 있는 포즈가 선택될 수 있고 추적 모듈(402)은 포즈로부터 추적 디바이스(110)에 대한 포인팅 컨트롤러(120)의 위치를 추정할 수 있다.
실시예에서, 추적 모듈(402)에 의해 도출된 추가 정보는 사용자의 포즈를 보다 정확하게 예측하고 바람직하지 않은 결과들을 삭제하기 위해 통합될 수 있다. 예를 들어, 관절 각도 모델에 의해 생성된 가능성이 가장 높은 예측된 포즈가 사용자의 팔이 검출된 현실 세계 객체의 알려진 위치와 교차하는 것을 예측하는 경우에(불가능한 결과), 추적 모듈(402)은 대신에 팔이 검출된 객체와 교차하는 것을 예측하지 않는 다음으로 가장 가능성이 높은 예측을 선택할 수 있다.
다른 실시예에서, 추적 모듈(402)은 상이한 문맥에서 팔 모델(404)의 상이한 파라미터들을 적용함으로써 추적의 정확도를 개선하기 위해 사용자의 현재 위치 및/또는 움직임 이력에 관한 정보를 이용할 수 있다. 예를 들어, 사람들은 실내에 있을 때보다 실외에 있을 때 더 확장된 제스처를 사용하는 경향이 있기 때문에, 추적 모듈(402)은 사용자가 실내에 있는지 실외에 있는지에 따라 팔 모델(404)의 파라미터들을 조정할 수 있다. 추적 모듈(402)은 캡처된 이미지들 또는 다른 센서 데이터의 이미지 분석에 기초하여 사용자가 실내에 있는지 실외에 있는지를 검출할 수 있다. 하나의 기법에서, 추적 모듈(402)은 사용자의 특정 거리(예를 들어, 사용자 위 5미터 미만) 내의 천장 평면의 존재 또는 부재에 기초하여 사용자가 실내에 또는 실외에 있는지를 결정할 수 있으며, 이는 캡처된 이미지들 또는 다른 센서들로부터의 이미지 분석을 기반으로 검출될 수 있다. 다른 실시예에서, 추적 모듈(402)은 추적 디바이스(110)의 지정된 거리 내의 평면 표면들의 수를 측정하고, 그 수가 미리 정의된 문턱치를 초과하는 경우 사용자가 실내에 있다고 결정할 수 있고, 그 수가 문턱치를 초과하지 않는 경우 사용자가 실외에 있다고 결정할 수 있다. 또 다른 실시예에서, 위치 센서(예를 들어, 글로벌 포지셔닝 시스템 디바이스)는 추적 디바이스(110)의 지리적 위치를 결정하는 데 사용될 수 있다. 그 후, 맵 서비스로부터의 맵 데이터를 활용하여, 추적 모듈(402)은 위치가 건물과 일치하는 경우 사용자가 실내에 있다고 결정하거나 그렇지 않은 경우 사용자가 실외에 있다고 결정할 수 있다. 또 다른 실시예에서, 원격 소스로부터 추적 디바이스(110)에 의해 수신된 무선 신호(예를 들어, GPS 신호 또는 셀룰러 데이터 신호)의 무선 신호 강도는 사용자가 실내에 있는지 또는 실외에 있는지를 결정하는 데 사용될 수 있다. 예를 들어, 무선 신호 강도가 미리 정의된 문턱치를 초과할 때 추적 모듈(402)은 사용자가 실외에 있다고 결정하고, 무선 신호 강도가 문턱치 미만일 때 추적 모듈(402)은 사용자가 실내에 있다고 결정한다. 또 다른 실시예에서, 추적 모듈(402)은 사용자가 실내에 있는지 또는 실외에 있는지를 검출하기 위해 카메라(345)에 의해 검출된 국부 광원들의 밝기 및/또는 파장들의 분석을 수행할 수 있다. 예를 들어, 태양광의 색온도 주변의 고휘도 광은 사용자가 실외에 있을 가능성이 있음을 나타내고, 전구와 일치하는 색온도는 사용자가 실내에 있음을 나타낸다.
다른 실시예에서, 팔 모델(404)의 파라미터들은 사용자가 앉아 있는지 또는 서 있는지에 기초하여 적응될 수 있다. 여기서, 추적 모듈(402)은 위에서 설명한 바와 같이 지면에 대한 추적 디바이스(110)의 높이를 검출하고 높이가 사용자의 서 있는 높이보다 현저히 아래(예를 들어, 문턱 차이 이상)인지 여부를 검출함으로써 사용자가 앉아 있는지 또는 서 있는지를 결정할 수 있다.
실시예에서, 추적 모듈(402)은 또한 포인팅 컨트롤러(120)의 위치를 더 잘 예측하기 위해 사용자의 피로 레벨을 추정할 수 있다. 여기서, 추적 모듈(402)은 시간이 지남에 따라 피로 레벨이 증가함에 따라, 사용자가 특정 문턱 높이 주위에서 손목을 사용하는 시간량을 추적함으로써 피로 레벨을 모델링할 수 있다. 사용자는 피로가 증가함에 따라 팔을 더 낮게 유지하는 것을 선호할 수 있기 때문에, 팔 모델(404)의 파라미터들은 예측된 피로 레벨이 증가함에 따라 추적 모듈(402)로 하여금 검출된 위치를 아래쪽으로 조정하게 할 수 있다. 실시예에서, 추적 모듈(402)은 특정 사용자의 피로 특성을 모델링하기 위해 기계 학습 접근법을 적용할 수 있다.
실시예에서, 추적 모듈(402)은 카메라(345)로부터의 이미지 데이터를 활용하여 포인팅 컨트롤러(120), 손, 팔뚝, 또는 팔의 위치를 감지할 수 있다. 추적 모듈(402)은 감지된 위치를 활용하여 추적 디바이스(110)에 대한 포인팅 컨트롤러(120)의 배향 및 위치를 재 캘리브레이팅하여(re-calibrate) 아래에서 더 상세히 설명되는 추적 데이터의 누적된 드리프트를 설명할 수 있다. 또한, 추적 모듈(402)은 팔의 길이 또는 예측된 관절 각도와 같은 추정된 파라미터들을 업데이트함으로써 팔 모델(404)의 정확도를 개선하기 위해 이미지 데이터로부터 감지된 위치를 적용할 수 있다. 팔의 위치는 또한 상태 감지 모듈(220)의 가속도계로부터의 연속적인 가속 값들의 통합으로부터 추정될 수 있다.
실시예에서, 추적 모듈(402)은 포인팅 컨트롤러(120)의 위치를 추론하기 위해 가상 객체들(또는 알려진 위치들에 있는 현실 세계 객체들)에 대한 위치 정보를 더 활용할 수 있다. 예를 들어, 객체가 가까이 있으면(예를 들어, 문턱 거리 미만), 손이 몸에 가까운 이완된 위치에 있다고 추론될 수 있다. 반면에, 객체가 멀리 떨어져 있는 경우(예를 들어, 문턱 거리보다 큰 경우), 손이 뻗은 위치에 있다고 추론될 수 있다. 추적 모듈(402)은 추론된 팔 위치에 기초하여 팔 모델(404)의 파라미터들을 조정할 수 있다.
추적 디바이스(110)가 머리에 장착되지 않은 경우(예를 들어, 추적 디바이스(110)가 핸드헬드 스마트폰 또는 태블릿으로서 구현됨), 사용자의 머리 위치는 추적 디바이스(110)의 추적된 위치에 대해 알려지지 않을 수 있다. 이 경우, 추적 디바이스(110)의 위치에 대한 사용자의 머리 위치를 추정하기 위해 캘리브레이션 기법이 적용될 수 있다. 예를 들어, 일 실시예에서, 추적 디바이스(110) 상의 사용자 인터페이스는 애플리케이션의 캘리브레이션 단계 동안 추적 디바이스(110)를 사용자의 코에 터치하도록 사용자를 촉구한다. 또는, 추적 디바이스(110)의 카메라가 사용자의 얼굴의 이미지들을 캡처할 수 있고, 얼굴 추적 알고리즘이 적용되어 초기 머리 위치에 대응하는 얼굴의 중심점을 검출할 수 있다. 또 다른 실시예에서, 머리 위치의 수직 컴포넌트는 사용자에게 자신의 키를 입력하도록 촉구함으로써 수동으로 획득될 수 있거나, 사용자의 키는 연결된 건강 추적 애플리케이션 또는 추적 디바이스(110)에 의해 액세스 가능한 온라인 서비스로부터 획득될 수 있다.
일단 캘리브레이팅되면, 추적 모듈(402)은 3차원 공간에 고정될 머리 위치의 수직 성분을 추정하고 추적 디바이스(110)의 수직 운동은 이 위치에 대해 3차원 공간에서 추적될 수 있다. 대안적으로, 추적 디바이스(110)의 카메라(345)는 지형 높이의 변화를 검출하도록 프로세싱되는 이미지들을 캡처할 수 있다. 사용자의 추정된 머리 위치는 검출된 지형 높이의 변화에 기초하여 지면 위의 대략적으로 고정된 수직 위치에 있도록 업데이트될 수 있다.
수평면에서, 추적 모듈(402)은 머리 위치를 추적 디바이스(110)의 추적된 위치로부터 고정된 수평 오프셋이 되도록 추정할 수 있다. 따라서, 추적 디바이스(110)가 수평면에서 이동하고 회전함에 따라, 추적 디바이스(110)의 추적된 위치로부터 고정된 수평 거리에서 머리 위치가 추정된다.
사용자가 앉은 자세에서 서 있는 자세로 또는 그 반대로 변경하는 경우, 재 캘리브레이션이 수행될 수 있다. 이 변경은 사용자에 의해 수동으로 표시될 수 있거나 또는 추적 디바이스(110)(및/또는 포인팅 컨트롤러(120))의 수직 위치의 적절한 이동이 검출될 때 자동으로 검출될 수 있다. 예를 들어, 추적 디바이스(110)의 카메라(345)는 지면에 대한 추적 디바이스(110)의 높이를 검출하도록 프로세싱될 수 있는 이미지들을 캡처할 수 있고, 사용자가 앉거나 일어설 때를 검출하는 데 사용될 수 있다.
대안적인 실시예에서, 사용자의 머리 위치는 완전히 고정된 것으로 가정될 수 있다. 여기서, 고정된 오프셋에서 추적 디바이스(110)의 수평 움직임을 추적하기 위해 수평면에서 머리 위치를 추정하는 대신, 머리 위치는 대신에 추적 디바이스(110)의 움직임을 추적하지 않고 3차원 공간에서 고정된 수직 및 수평 위치 모두에 머무르는 것으로 추정될 수 있다.
또 다른 실시예에서, 전술한 기법들을 결합한 하이브리드 모델이 사용될 수 있다. 여기서, 추적 디바이스(110)에 대한 초기 머리 위치는 먼저 위에서 설명된 캘리브레이션 기법을 사용하여(예를 들어, 사용자가 디스플레이 디바이스를 사용자의 코에 터치하도록 촉진함으로써) 캘리브레이팅된다. 추적 모듈(402)은 초기에 3차원 공간에서 고정된 위치에 유지될 머리 위치를 추정하는 "정지" 모드로 설정될 수 있다. 추적 장치(110)의 위치는 그것이 3차원 공간을 통해 이동할 때 상태 감지 모듈(342)을 사용하여 추적되고, 추적 디바이스(110)와 고정된 추정 머리 위치 사이의 거리가 계산된다. 추정된 머리 위치와 추적 디바이스(110) 사이의 거리가 미리 정의된 활성화 반경을 초과할 때(예를 들어, 사용자의 완전히 확장된 팔의 추정된 길이와 대략 동일), 추적 모듈(402)은 "보행" 모드로 전환한다. "보행" 모드에서, 머리 위치는 대신에 추적 디바이스(110)의 검출된 위치 너머의 고정된 거리인 것으로 추정된다. 추적 디바이스(110)가 그 움직임이 문턱 속도 아래로 떨어지고 문턱 시간 기간 동안 문턱 속도 아래에 유지되는 것을 검출할 때,
추적 모듈(402)은 머리의 추정된 위치가 고정되고 추적 디바이스(110)의 위치에 기초하여 더 이상 업데이트되지 않는 "정지 모드”로 다시 전환한다.
대안적으로, "보행 모드"에 있을 때, 추적 디바이스(110)에 대한 머리 위치는 대신 질량-스프링 또는 질량-스프링-댐퍼 모델을 사용하여 추정될 수 있다. 이 실시예에서, 디스플레이 추적(110)의 검출된 위치 너머의 머리의 추정된 거리는 시간에 따라 변할 수 있지만, 추적 디바이스(110)가 연장된 시간 기간 동안 안정될 때 고정된 위치로 안정화된다. 추적 디바이스(110)가 이 실시예에서 스마트폰과 머리 사이의 거리가 비활성화 반경 아래로 떨어지는 것을 검출할 때, 추적 모듈(402)은 "정지" 모드로 다시 전환한다.
제스처 인식 모듈(406)은 사용자가 포인팅 컨트롤러(120)로 취한 제스처를 검출한다. 제스처들의 예들은 예를 들어, 포인팅 컨트롤러(120)를 미리 정의된 동작으로 이동시키는 것 또는 슬라이더 제어 인터페이스(232) 및/또는 인터디지트 버튼과 특정 방식으로 상호작용하는 것(예를 들어, 한번 탭핑, 두번 탭핑, 장기적 접촉 유지, 또는 특정 패턴의 상호작용들의 조합)을 포함할 수 있다. 여기서, 핀칭 제스처는 사용자가 가운데 손가락과 집게 손가락(또는 포인팅 컨트롤러(120)와 접촉하는 다른 손가락)을 함께 쥘 때 검출될 수 있으며, 그에 의해 하나 이상의 손가락으로 하여금 적어도 문턱 시간 기간 동안 적어도 문턱 압력량으로 포인팅 컨트롤러(120) 상의 인터디지트 버튼(234)과 접촉하도록 배치되게 한다. 핀칭 제스처는 손가락들을 떨어뜨리거나 가해진 압력을 완화시킴으로써 해제될 수 있다. 몇몇 실시예들에서, 제스처 인식 모듈(406)은 핀칭 제스처의 힘 또는 시간 기간을 캡처할 수 있고, 이러한 캡처된 파라미터들에 따라 상이한 동작을 취할 수 있다. 스와이핑 제스처는 사용자가 슬라이더 컨트롤러 인터페이스(232) 상에서 스와이핑 동작을 수행할 때 검출될 수 있다. 이 제스처는 일반적으로 포인팅 컨트롤러(120)를 착용한 손의 엄지(또는 다른 손가락)로 수행될 수 있지만, 대안적으로 반대쪽 손의 손가락에 의해 수행될도 수 있다. 여기서, 스와이핑 제스처는 포인팅 컨트롤러(120)를 어느 한 방향으로 유지하는 하나 이상의 손가락에 평행한 선을 따른 또는 어느 한 방향으로 하나 이상의 손가락에 대략 수직인 선을 따른 선형 스와이핑 제스처를 포함할 수 있다. 대안적으로, 스와이핑 제스처는 슬라이더 컨트롤러 인터페이스(232)의 평면에서 기준점에 대해 시계 방향 또는 반시계 방향으로 수행되는 방사상 스와이핑 제스처를 포함할 수 있다. 몇몇 실시예들에서, 제스처 인식 모듈(408)은 스와이핑 제스처의 힘, 속도 또는 거리를 캡처하고 이러한 캡처된 파라미터들에 따라 다른 동작들을 취할 수 있다. 다양한 태스크들을 수행하기 위해 다른 타입의 제스처들도 또한 인식될 수 있다.
객체 상호작용 모듈(408)은 포인팅 벡터 또는 원뿔이 스마트 디바이스(140)에 대응할 수 있는 객체, 알려진 위치에 있는 다른 현실 세계 객체, 또는 추적 디바이스(110)의 디스플레이 상에 디스플레이되는 장면의 가상 객체와 교차할 때를 결정한다. 예를 들어, 객체 상호작용 모듈(408)은 현실 세계 객체와 가상 객체에 의해 점유되는 위치들을 나타내는 좌표들을 저장하고, 포인팅 벡터 또는 원뿔이 객체들 중 하나에 의해 점유되는 좌표들과 교차할 때를 검출한다. 포인팅 벡터 또는 원뿔이 다수의 객체들과 교차하는 경우, 객체 상호작용 모듈(406)은 포인팅 컨트롤러(120)에 가장 가까운 객체를 선택하는 것을 디폴트로 할 수 있다. 다른 실시예에서, 추적 모듈(402)은 포인팅 벡터가 다수의 객체들과 교차할 때 사용자가 가까운 객체(예를 들어, 5미터 미만 떨어진) 또는 먼 객체(예를 들어, 5미터 이상 떨어진)를 가리키고자 하는지 여부를 지능적으로 예측할 수 있다. 예를 들어, 추적 모듈(402)은 팔이 사용자의 눈과 실질적으로 정렬되는 것으로 검출되고 팔이 완전히 확장될 때 사용자가 멀리 있는 물체를 가리키고자 하는 의도를 추론할 수 있다. 추적 모듈(402)은 팔을 구부려 눈높이보다 낮은 위치에 유지하는 경우 사용자가 가까운 객체를 가리키고자 하는 것으로 추론할 수 있다.
실시예에서, 시각적 표시자(예를 들어, 시각적 아웃 글로우(out glow) 또는 후광 효과, 음영 처리된 윤곽선, 바운딩 박스 등)는 가리키는 객체와 연관하여 증강 현실 디스플레이에 디스플레이된다. 옵션적으로, 객체 식별자, 포인팅 컨트롤러(120)로부터 선택된 객체까지의 거리, 객체의 상태 등과 같은 선택된 객체에 대한 세부 정보가 또한 디스플레이될 수 있다. 또한, 객체가 가리켜지면, 객체 상호작용 모듈(406)은 포인팅 컨트롤러(120)의 햅틱 모터로 하여금 동작의 물리적 피드백을 제공하도록 진동하게 할 수 있다. 대안적으로, 객체가 선택될 때를 나타내기 위해 다른 시각적 또는 오디오 피드백이 제공될 수 있다.
객체 상호작용 모듈(408)은 제스처와 연관된 커맨드들을 결정하거나 또는 사용자가 특정 객체를 가리키고 있을 때 수행되는 상호작용들을 제어할 수 있다. 예를 들어, 객체 상호작용 모듈(408)은 사용자가 객체를 가리키고 있을 때 확인 상호작용(예를 들어, 인터디지트 버튼(234)을 활성화하는 핀칭 제스처)을 검출할 수 있다. 여기서, 객체 인터랙션 모듈(408)은 스마트 디바이스(140) 또는 스마트 디바이스(140)와 연관된 프록시 객체가 포인팅 벡터 또는 원뿔에 기초하여 선택될 때 상호작용이 수행되는 경우, 스마트 디바이스(140)의 선택을 확인할 수 있다. 선택의 확인 시, 객체 상호작용 모듈(408)은 네트워크(130)를 통해 스마트 디바이스(140)로의 연결을 구축할 수 있다. 객체 상호작용 모듈(408)은 제스처 또는 스마트 디바이스(140)의 다양한 기능들을 제어하기 위해 사용자에 의해 수행된 제어 요소들의 선택을 검출할 수 있다. 여기서, 미리 정의된 제스처들의 세트는 스마트 디바이스(140)의 상이한 제어 기능들과 연관될 수 있다. 제스처의 자신의 기능들에 대한 매핑은 스마트 디바이스(140)의 자연스러운 제어를 가능하게 하는 직관적인 방식으로 구성될 수 있다. 예를 들어, 스마트 온도 조절 장치를 제어하기 위해, 사용자는 손을 위로 가리키거나 움직이고, 손을 시계 방향으로 돌리고, 또는 손을 위로 올려 온도를 높이고 손을 아래로 가리키거나 움직이고, 손을 시계 반대 방향으로 돌리고, 또는 손을 아래로 내려 온도를 낮출 수 있다. 대안적으로, 포인팅 컨트롤러(120) 상의 슬라이더 제어 인터페이스(232)는 스와이프 방향에 기초하여 온도를 제어할 수 있다.
다른 예시적인 상호작용에서, 사용자는 광 출력 강도를 증가 또는 감소시키거나 전구의 색 온도를 변경하기 위하여 스마트 조광기를 제어하기 위해 제스처들을 수행할 수 있다. 예를 들어, 추적 디바이스(110)는 포인팅 컨트롤러(120)가 광을 가리키는 때를 검출할 수 있다. 포인팅 컨트롤러(120)는 포인팅 벡터가 광의 위치와 교차할 때 햅틱, 청각 또는 시각 피드백 신호를 트리거하여, 광이 선택되었음을 표시한다. 포인팅 컨트롤러(120)는 사용자가 슬라이더 컨트롤러 인터페이스(232) 상에 엄지손가락을 유지하고 광의 밝기를 증가시키기 위해 한 방향으로 엄지손가락을 드래그하고 밝기를 감소시키기 위해 반대 방향으로 엄지손가락을 드래그할 때를 검출할 수 있다. 엄지를 해제시키면 밝기가 변경을 중지할 수 있고, 포인팅 벡터를 광에서 멀어지는 방향으로 이동하면 광이 선택 해제되어 제어 요소들(230)과의 추가 상호 작용이 더 이상 광에 대한 제어 신호들을 생성하지 않을 수 있다.
실시예에서, 선택된 스마트 디바이스(140)를 선택 해제하기 위해 선택 해제 동작이 수행될 수 있다. 실시예에서, 선택 해제는 스마트 디바이스(140) 또는 연관된 프록시 객체로부터 멀리 가리킴으로써 수행될 수 있다. 실시예에서, 상호작용들이 완료되었음을 확인하기 위해 햅틱 또는 다른 피드백이 출력될 수 있다.
메뉴 내비게이션 모듈(410)은 스마트 디바이스(140) 또는 연관된 프록시 객체가 선택되는 것, 또는 예를 들어 객체가 선택되는 동안 슬라이더 제어 인터페이스가 탭핑되는 것과 같은 다른 액션 또는 액션들의 조합에 응답하여, 디스플레이 디바이스(352) 상에 표시되는 메뉴를 생성한다. 메뉴는 사용자가 스마트 디바이스(140)와 연관된 고급 구성 설정들을 보고 및/또는 수정할 수 있게 허용할 수 있다. 실시예에서, 사용자가 스와이핑 제스처를 사용하여 파라미터들을 빠르게 수정할 수 있도록 허용하기 위해 휠 또는 슬라이더 인터페이스가 디스플레이될 수 있다.
캘리브레이션 모듈(412)은 포인팅 컨트롤러(120)의 상대 위치 및 배향을 콘텐츠 프리젠테이션 모듈(362)에 의해 제공되는 가상 환경의 위치 및 배향으로 초기화하기 위하여, 포인팅 컨트롤러(120)를 캘리브레이팅하기 위한 캘리브레이션 프로세스를 수행한다. 포인팅 컨트롤러(120)의 롤 및 피치는 가상 환경의 수직 축을 따라 아래쪽 방향으로 매핑된 (상태 감지 모듈(220)에 의해 감지된) 검출된 중력 방향으로 상태 감지 모듈(220)로부터 감지될 수 있다. 포인팅 컨트롤러(120)의 수평 방향(요(yaw))은 다양한 기법들을 사용하여 캘리브레이션 동안 기준 방향에 대해 감지될 수 있다. 이 기준 방향은 캘리브레이션 프로세스 동안 추적 디바이스(110)의 전방 지향 방향과 정렬될 수 있다.
일 실시예에서, 포인팅 컨트롤러(120)의 상태 감지 모듈(220) 내의 자력계는 자북을 검출하기 위한 나침반으로서 동작할 수 있다. 추적 디바이스(110)의 자력계는 유사하게 자북을 검출할 수 있고 캘리브레이션 모듈(412)은 이러한 기준 방향을 정렬하기 위해 캘리브레이션을 수행할 수 있다.
다른 실시예에서, 포인팅 컨트롤러(120)의 위치 및 배향은 추적 디바이스(110)의 카메라 또는 다른 외부 카메라에 의해 캡처된 하나 이상의 이미지에 대해 수행된 이미지(시각적 또는 깊이) 분석에 기초하여 검출될 수 있다. 캘리브레이션 모듈(412)은 그 후 검출된 추적 데이터와 이미지 데이터로부터 결정된 위치 및 위치를 사용하여 캘리브레이션을 수행할 수 있다.
다른 실시예에서, 캘리브레이션 모듈(412)은 사용자가 직접 앞을 가리키도록 한 다음 특정 제스처(예를 들어, 인터디지트 버튼(234)를 누르는 동안 슬라이더 제어 인터페이스(232)를 두 번 탭함)를 수행하도록 지시함으로써 캘리브레이션을 수행한다. 제스처가 검출될 때 상태 감지 모듈(220)에 의해 검출된 바와 같이 포인팅 컨트롤러(120)가 대략 수평이 아닌 경우, 이 제스처를 무시함으로써 의도하지 않은 액션들이 거부될 수 있다. 캘리브레이션 모듈(412)은 그 후 가상 환경에서 직진 방향에 매핑된 기준 방향으로 방향을 설정할 수 있다.
다른 실시예에서, 캘리브레이션은 이미지 프로세싱 디바이스에 의해 캡처된 이미지들로부터 검출되거나 알려질 수 있는 위치들에서 소수의 현실 세계 객체들을 가리키도록 사용자에게 지시함으로써 수행될 수 있다. 여기서, 사용자가 타겟을 가리키고 있는 때를 판단하기 위하여, 포인팅 컨트롤러(120)의 피치는 타겟에 대한 피치 벡터와 대략 매칭되어야 하고, 추가적으로 포인팅 컨트롤러(120)는 거의 정지되어 있어야 한다. 캘리브레이션 모듈(412)은 그 후 가상 환경에서 이들 객체들의 알려진 위치들을 사용하여 캘리브레이션을 수행할 수 있다. 실시예에서, 이 캘리브레이션 스테이지는 객체들과 상호작용하기 위해 포인팅 컨트롤러(120)를 사용하는 방법을 사용자에게 훈련시키기 위한 사용자 튜토리얼의 일부로서 수행될 수 있다.
포인팅 컨트롤러(120)의 상태 감지 모듈(220)에 의존하지 않는 또 다른 실시예들(예를 들어, 포인팅 방향의 IR 기반 검출을 사용하는 실시예들)에서, 캘리브레이션 모듈(412)은 생략될 수 있다.
하나의 특정 실시예에서, 추적 디바이스(110)는 (원근 에러를 최소화하기 위해) 멀리 위치된 타겟 객체를 디스플레이하도록 구성되고, 사용자가 타겟 객체를 가리키도록 지시하기 위해 프롬프트가 디스플레이된다. 캘리브레이션 모듈(412)은 포인팅 컨트롤러(120)가 (예를 들어, 각도 회전 레이트가 미리 결정된 문턱값 미만인 것을 검출함으로써) 대략 정지 상태일 때를 검출하고, 현재 포인팅 방향이 타겟 객체의 방향인 것으로 결정한다. 실시예에서, 추적 디바이스(110)는 캘리브레이션을 통해 사용자를 안내하는 시각적 표시자를 제공할 수 있다. 예를 들어, 추적 디바이스(110)는 포인팅 컨트롤러(120)가 잠시 동안 정지되어 있을 때 "채우기(fill up)"를 시작하는 시각적 표시자(예를 들어, 진행 표시줄 애니메이션, 시각적 표시자의 사이즈 변경 등)를 디스플레이할 수 있고, 추가로 포인팅 컨트롤러(120)의 피치는 사용자에 대한 타겟의 피치와 대략적으로 매칭된다. 이 시간 동안, 캘리브레이션 모듈(412)은 포인팅 컨트롤러(120)의 검출된 방향을 기록하고 추적 디바이스(110)의 요에 대한 포인팅 컨트롤러(120)의 요(헤딩)의 차이를 결정한다. 캘리브레이션 기간 동안 사용자가 포인팅 컨트롤러(120)를 이동시키거나 피치가 허용 범위를 벗어나면 진행은 재설정된다. 캘리브레이션 프로세스가 완료되면 타겟 객체는 디스플레이에서 사라지고 캘리브레이션 값이 저장된다. 위에서 설명된 캘리브레이션 프로세스는 정확도를 향상시키기 위해 다른 요들(헤딩들) 및/또는 피치들에서 타겟 객체에 대해 여러 번 반복될 수 있다. 캘리브레이션 프로세스는 추가로 다른 깊이에 있는 타겟 객체에 대해, 또는 사용자에게 한 방향을 계속 바라보도록 지시하지만 그들의 시야의 주변에 타겟들을 배치하여 캘리브레이션을 개선하도록 지시함으로써 수행될 수 있다.
다른 실시예에서, 추적 디바이스(110)는 포인팅 컨트롤러(120)의 이미지의 윤곽선을 디스플레이하고, 사용자에게 추적 디바이스(110)를 평평한 수평 표면에 배치한 다음 포인팅 컨트롤러(120)를 이미지의 윤곽과 정렬된 추적 디바이스(110)의 디스플레이 스크린 상에 배치하도록 지시할 수 있다. 캘리브레이션 모듈(412)은 포인팅 컨트롤러(120)의 피치가 문턱 각도 미만일 때와 추적 디바이스(110) 및 포인팅 컨트롤러(120) 모두가 문턱 시간 기간 동안 정지 상태로 유지되는 때를 검출한다. 이러한 조건들이 검출될 때, 캘리브레이션 모듈(412)은 포인팅 컨트롤러(120)의 검출된 요와 추적 디바이스(110) 사이의 차이를 캘리브레이션 오프셋으로서 저장한다. 작동 시, 이 캘리브레이션 오프셋은 포인팅 컨트롤러(120)의 요 측정치들로부터 차감된다.
일단 캘리브레이팅되면, 캘리브레이션 모듈(412)은 테스트 타겟을 디스플레이하고 사용자가 캘리브레이션이 올바르게 수행되었음을 보장할 수 있게 함으로써 사용자가 캘리브레이션을 검증할 수 있게 할 수 있다. 다른 실시예에서, 캘리브레이션 모듈(412)은 사용 동안 연속적인 자동 캘리브레이션을 수행할 수 있다. 캘리브레이션 모듈(412)은 상이한 타입의 객체들과 연관된 초점의 세트를 저장할 수 있다. 여기서, 객체의 초점은 사용자가 주어진 객체 타입을 가리키려고 할 때 사용자가 가리키는 것을 선호할 수 있는 주어진 객체 타입의 객체 상의 한 지점을 나타낸다. 단순한 형상의 경우, 균일한 밀도를 가정하여 객체의 질량 중심을 계산함으로써 초점이 계산될 수 있다. 복잡한 형상의 경우, 초점은 형상을 "감싸는" 볼록한 껍질(hull)의 질량 중심을 계산함으로써 계산할 수 있다. 다른 타입의 기능 객체들의 경우, 초점은 객체 타입에 기초하여 수동으로 할당되거나 외부 추적 시스템을 사용하여 다양한 타입의 객체들에 대해 학습될 수 있다. 이러한 타입의 객체들의 경우, 초점이 상호 작용 지점 쪽으로 편향될 수 있다. 예를 들어, 컴퓨터 모니터의 경우 초점은 스탠드를 무시하고 스크린의 중앙에 대응할 수 있다. 자전거의 경우, 초점은 질량 중심으로부터 핸들바에 더 가까운 지점으로 편향될 수 있다. 피아노의 경우, 초점은 질량 중심으로부터 건반에 더 가까운 지점으로 편향될 수 있다. 문의 경우, 초점은 질량 중심으로부터 핸들/푸시 플레이트(push plate)에 더 가까운 지점으로 편향될 수 있다.
실시예에서, 객체의 초점은 거리에 따라 변할 수 있다. 예를 들어, 먼 거리에서 사람들은 객체의 목적에 무관하게 객체의 중심을 가리킬 가능성이 높을 수 있다. 따라서, 실시예에서, 객체가 미리 정해진 거리보다 멀리 떨어져 있을 때 객체의 질량 중심이 초점으로서 사용될 수 있다. 그러나 객체에 더 가까울 때, 사람들은 기능적 객체들에 대한 상호작용 지점을 향하는 경향이 있지만 더 단순한 객체들에 대해서는 계속해서 질량 중심을 가리킨다. 따라서, 실시예에서, 객체가 미리 정의된 거리보다 가까울 때 객체 타입에 기초하여 미리 할당된 초점이 사용될 수 있다. 객체가 선택될 때마다, 캘리브레이션 모듈(412)은 객체의 초점 방향과 객체가 선택된 순간 포인팅 컨트롤러(120)의 실제 포인팅 방향 사이의 차이를 결정할 수 있다. 이러한 차이들(특히, 요 성분)이 한 방향으로 일관되게 편향되는 경우, 캘리브레이션 모듈(412)은 미스캘리브레이션(miscalibration)을 검출할 수 있다. 실시예에서, 미스캘리브레이션은 예를 들어, 다수의 객체 선택의 요 성분이 한 방향으로 일관되게 편향된 후와 같이 충분한 신뢰 레벨에 도달한 후에만 검출된다. 미스캘리브레이션을 검출하면, 캘리브레이션 모듈(412)은 캘리브레이션 파라미터를 조정하여 미스캘리브레이션을 정정할 수 있다. 이 재 캘리브레이션은 즉시 수행되거나 몇 초에 걸쳐 점진적으로 적용될 수 있다(사용자가 "점프"를 보는 것을 방지하기 위해).
도 5는 포인팅 컨트롤러(120)를 사용하여 스마트 디바이스(140)를 제어하는 프로세스의 예시적인 실시예를 예시하는 흐름도이다. 추적 디바이스(110)는 포인팅 컨트롤러(120)의 위치 및 배향과 연관된 추적 데이터를 획득한다(502). 추적 데이터는 위치가 도출될할 수 있는 모션 데이터를 포함할 수 있으며, IMU 데이터, 이미지 데이터, RF 비콘 데이터, 또는 이들의 조합의 형태일 수 있다. 추적 디바이스(110)는 추적 데이터에 기초하여 포인팅 컨트롤러(120)를 착용한 사용자의 포인팅 방향과 연관된 포인팅 벡터를 추적한다(504). 포인팅 벡터는 포인팅 방향의 축을 따라 포인팅 컨트롤러(120)로부터 거리에 따라 넓어지는 선 또는 원뿔을 포함할 수 있다. 추적 디바이스(110)는 추적된 포인팅 벡터와 스마트 디바이스(140)와 연관된 객체 위치의 교차를 검출하는 것에 기초하여 스마트 디바이스(140)의 선택을 검출하고(506), 스마트 디바이스(140)를 선택된 상태로 둔다. 여기서, 객체 위치는 스마트 디바이스(140) 자체의 위치일 수도 있고, 스마트 디바이스(140)와 연관된 현실 세계 또는 가상 프록시 객체의 위치일 수 있다. 실시예에서, 추적 디바이스(110)는 포인팅 방향이 객체 위치와 교차할 때 미리 정의된 상호작용(예를 들어, 제스처 또는 포인팅 컨트롤러 상의 인터페이스 컨트롤의 선택)을 검출하는 것에 응답하여 선택을 확인한다. 스마트 디바이스(140)의 선택 시, 추적 디바이스(110)는 스마트 디바이스(140)에 커맨드들을 전달하고(communicate) 그리고/또는 스마트 디바이스(140)로부터 상태 정보를 수신할 수 있도록 스마트 디바이스(140)에 대한 연결을 구축한다(508). 추적 디바이스(140)는 검출된 사용자 상호작용들에 기초하여 스마트 디바이스(140)를 제어하기 위한 커맨드들을 생성한다(510). 예를 들어, 추적 디바이스(110)는 포인팅 컨트롤러를 사용하여 수행된 하나 이상의 상호작용(예를 들어, 미리 정의된 제스처 또는 인터페이스 컨트롤과의 상호작용)을 검출하고, 스마트 디바이스(140)와 연관된 제어 커맨드에 대한 상호작용의 매핑을 결정한다. 추적 디바이스는 스마트 디바이스(140)를 선택 해제하고 스마트 디바이스(140)를 선택되지 않은 상태로 되돌리기 위해 포인팅 컨트롤러(120)와 연관된 상호작용을 후속하여 검출할(512) 수 있다. 예를 들어, 추적 디바이스(110)는 사용자가 스마트 디바이스(140)와 연관된 객체 위치 방향으로부터 멀어지는 방향을 가리키는 것을 검출하는 것 또는 스마트 디바이스(140)의 선택 해제와 연관된 미리 정의된 다른 제스처를 수행하는 것에 응답하여, 스마트 디바이스(140)를 선택 해제할 수 있다.
대안적인 실시예들에서, 제어 프로세싱 모듈(324)의 하나 이상의 성분은 추적 디바이스(110) 대신에 포인팅 컨트롤러(120) 상에서 구현될 수 있다. 예를 들어, 실시예에서, 추적 모듈(402) 및 제스처 인식 모듈(406)의 기능은 대신 포인팅 컨트롤러(120)에 의해 수행될 수 있다. 이 실시예에서, 추적 결과들 및 검출된 제스처들은 원시 추적 및 제어 요소 데이터를 전달하는 대신 추적 디바이스(110)에 직접 전달될 수 있다. 대안적으로, 다른 실시예들에서, 제어 프로세싱 모듈(324)의 하나 이상의 성분은 별도의 통신가능하게 커플링된 디바이스에서 구현될 수 있다. 예를 들어, 모바일 디바이스, 개인용 컴퓨터, 또는 게임 콘솔은 포인팅 컨트롤러(120)로부터 원시 추적 및 제어 요소 데이터를 수신하고, 원시 데이터를 프로세싱하기 위해 제어 프로세싱 모듈(324)의 기능들을 수행하고, 프로세싱된 제어 정보를 추적 디바이스에 전송하여 추적 디바이스(110)로 하여금 디스플레이 디바이스(352) 상의 디스플레이를 업데이트하게 할 수 있다. 또 다른 실시예에서, 제어 프로세싱 모듈(324)의 하나 이상의 성분은 포인팅 컨트롤러(120) 및 추적 디바이스(110)에 통신가능하게 커플링된 원격 서버(예를 들어, 클라우드 서버)에서 수행될 수 있다.
또 다른 실시예들에서, 추적 디바이스(110)는 생략되고 포인팅 컨트롤러(120)는 변조된 적외선(IR) 신호들을 사용함으로써 사용자가 상호 작용하는 경향이 있는 스마트 디바이스(140) 또는 프록시 디바이스를 결정한다. 여기서, 포인팅 컨트롤러(120)에 위치되는 송신기는 변조된 신호들을 손가락들과 대략적으로 정렬된 방향으로 그리고 정확한 조준이 가능하도록 충분히 좁은 빔 각도로 송신한다. 신호들은 스마트 디바이스(140), 프록시 디바이스, 또는 스마트 디바이스(140)나 프록시 디바이스에 부착된 비콘 디바이스ㅏ에 의해 수신 및 복조된다. 그 후, 수신 디바이스는 네트워크(130)를 통해 또는 새로운 IR 신호를 재송신함으로써 포인팅 컨트롤러(120)에 다시 시그널링할 수 있다. 또는, 스마트 디바이스(140)(또는 프록시 디바이스 또는 부착된 비콘 디바이스)에 위치된 송신기는 포인팅 컨트롤러(120)에 위치된 방향 감지 센서에 의해 수신 및 복조되는 신호들을 송신한다. 타겟 디바이스가 식별되고 선택되면, 생성된 커맨드들(510)은 네트워크(130)를 통해 스마트 디바이스(140)로 전송될 수 있다. 몇몇 실시예들에서, 커맨드들은 대안적으로 IR 채널을 통해 직접 전달될 수 있다.
IR 기반 솔루션의 경우, 송신된 빔 또는 수신기 광학계는 일반적으로 하나의 객체를 선택하기에 충분히 좁을 것이다. 다수의 객체들이 조명되는 경우, 추적 디바이스(110)는 IR 조명 강도 또는 조명 지속시간을 관찰함으로써 명확화를 시도할 수 있다. 감지 레벨에서 명확화가 가능하지 않은 경우, 추적 디바이스(110)는 (광학, 청각 또는 햅틱 피드백을 통해 포인팅이 모호했음을 표시함으로써) 사용자에게 피드백을 제공하여, 이들이 의도된 타겟 객체를 명확하게 가리키도록 할 수 있다.
또 다른 실시예에서, 외부 카메라, 깊이 측정 또는 거리 측정 시스템은 천장 또는 벽에 장착된 모듈에 위치될 수 있고, 포인팅 컨트롤러(120)를 추적하는 데 또는 포인팅 컨트롤러(120)를 사용하지 않고 포즈 추정 및 손 추적을 직접 수행하는 데 이용될 수 있다.
추가 고려사항들
본 명세서 전반에 걸쳐, 몇몇 실시예들은 그 파생어와 함께 "커플링된"이라는 표현을 사용하였다. 본 명세서에서 사용된 용어 "커플링된"은 직접 물리적으로 또는 전기적으로 접촉하는 둘 이상의 요소로 반드시 제한되는 것은 아니다. 오히려, "커플링된"이라는 용어는 서로 직접 접촉하지 않지만 여전히 서로 협력하거나 상호작용하는 둘 이상의 요소를 또한 포함할 수 있다.
유사하게, 본 명세서에 사용된 바와 같이, 용어 "구비한다", "구비하는", "포함한다", "포함하는", "갖는다", "갖는" 또는 이들의 임의의 다른 변형은 비배타적 포함을 포함하도록 의도된다. 예를 들어, 요소의 리스트를 포함하는 프로세스, 방법, 물품 또는 장치는 반드시 그러한 요소들에만 제한되지 않으나, 명시적으로 나열되지 않거나 그러한 프로세스, 방법, 물품 또는 장치에 고유하지 않은 다른 요소들을 포함할 수 있다.
또한, "a" 또는 "an"의 사용은 본 명세서의 실시예들의 요소들 및 성분들을 설명하기 위해 채용된다. 이것은 단지 편의를 위해 그리고 본 발명의 일반적인 의미를 제공하기 위해 수행된다. 이 설명은 하나 또는 적어도 하나를 포함하는 것으로 판독되어야 하며, 달리 의미하는 것이 분명하지 않는 한 단수는 복수도 포함한다.
마지막으로, 본 명세서에서 사용되는 "일 실시예" 또는 "실시예"에 대한 임의의 언급은 실시예와 관련하여 설명된 특정 요소, 피처, 구조 또는 특징이 적어도 하나의 실시예에 포함된다는 것을 의미한다. 명세서의 여러 곳에서 "일 실시예에서"라는 문구의 출현은 반드시 모두 동일한 실시예를 지칭하는 것은 아니다.
본 개시물을 판독할 때, 당업자는 본 명세서의 원리들로부터 개시되는 설명된 실시예들에 대한 또 다른 대안적인 구조적 및 기능적 설계들을 인식할 것이다. 따라서, 특정 실시예들 및 애플리케이션이 예시되고 설명되었지만, 개시된 실시예들은 본 명세서에 개시된 정확한 구성 및 성분들에 제한되지 않는다는 것을 이해해야 한다. 당업자들에게 자명할 다양한 수정들, 변경들 및 변형들이 범위를 벗어나지 않고 본 명세서에 개시된 방법 및 장치의 배열, 동작 및 세부사항에서 이루어질 수 있다.

Claims (42)

  1. 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법에 있어서,
    상기 포인팅 컨트롤러의 상태 감지 디바이스로부터 센서 데이터를 획득하는 단계;
    상기 센서 데이터 및 저장된 팔 모델에 기초하여 3차원 공간을 통한 포인팅 벡터의 움직임을 추적하는 단계;
    상기 스마트 디바이스를 선택된 상태에 두기 위해 상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들과 상기 포인팅 벡터의 교차를 검출하는 단계;
    증강 현실 디스플레이 디바이스로 하여금 상기 스마트 디바이스와 연관된 가상 메뉴를 디스플레이하게 하는 단계;
    상기 스마트 디바이스가 상기 선택된 상태에 있을 때, 상기 가상 메뉴와 연관된 상기 포인팅 컨트롤러와의 제어 상호작용을 검출하는 단계; 및
    상기 제어 상호작용에 기초하여 상기 스마트 디바이스의 동작을 제어하기 위한 커맨드를 생성하는 단계
    를 포함하는, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  2. 제1항에 있어서,
    상기 스마트 디바이스와 연관된 좌표들은 상기 스마트 디바이스의 물리적 위치를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  3. 제1항에 있어서,
    상기 스마트 디바이스와 연관된 좌표들은 상기 스마트 디바이스와 연관된 실제 또는 가상 프록시 디바이스의 위치를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  4. 제1항에 있어서,
    상기 교차를 검출하는 단계는:
    상기 포인팅 벡터와 정렬된 중심축, 상기 포인팅 컨트롤러의 위치에 근접한 원점, 및 상기 포인팅 벡터의 원점으로부터의 거리에 따라 증가하는 반경을 갖는 포인팅 원뿔을 생성하는 단계; 및
    상기 포인팅 원뿔이 상기 스마트 디바이스와 연관된 좌표들과 중첩하는 것에 응답하여, 상기 포인팅 벡터와의 교차를 검출하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  5. 제1항에 있어서,
    상기 제어 상호작용을 검출하는 단계는, 상기 포인팅 컨트롤러의 인터디지트(interdigit) 버튼의 활성화를 검출하는 단계를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  6. 제1항에 있어서,
    상기 제어 상호작용을 검출하는 단계는:
    상기 포인팅 컨트롤러의 슬라이더 제어 인터페이스와의 상호작용을 검출하는 단계;
    상기 슬라이더 제어 인터페이스와의 상호작용에 응답하여, 상기 가상 메뉴의 상이한 메뉴 아이템들 사이에서 내비게이팅하는 단계; 및
    상기 포인팅 컨트롤러의 인터디지트 버튼의 활성화 검출에 응답하여 메뉴 아이템을 선택하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  7. 제1항에 있어서,
    상기 제어 상호작용을 검출하는 단계는:
    상기 스마트 디바이스의 제어 기능을 나타내는 상기 포인팅 컨트롤러로 행해진 제스처를 검출하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  8. 제1항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는, 상기 포인팅 컨트롤러와 통합된 카메라에 기초하여 추적을 수행하는 단계를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  9. 제1항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지를 검출하는 단계; 및
    상기 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지에 따라, 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  10. 제1항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지를 검출하는 단계; 및
    상기 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지에 따라, 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  11. 제1항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러의 사용자와 연관된 피로 레벨을 검출하는 단계; 및
    상기 검출된 피로 레벨에 따라 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  12. 제1항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들이 상기 포인팅 컨트롤러로부터의 문턱 거리보다 크다고 결정하는 단계;
    뻗은 위치에 있는 것으로 팔에 대응하는 상기 팔 모델의 파라미터들을 생성하는 단계; 및
    상기 팔 모델의 파라미터들에 기초하여 상기 움직임을 추적하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  13. 제1항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들이 상기 포인팅 컨트롤러로부터의 문턱 거리보다 작다고 결정하는 단계;
    신체 근처의 이완된 위치에 있는 것으로 팔에 대응하는 상기 팔 모델의 파라미터들을 생성하는 단계; 및
    상기 팔 모델의 파라미터들에 기초하여 상기 움직임을 추적하는 단계
    를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  14. 제1항에 있어서,
    상기 스마트 디바이스를 스마트 라이트(smart light)로서 인식하는 단계를 더 포함하며,
    상기 포인팅 컨트롤러와의 제어 상호작용을 검출하는 단계는 상기 포인팅 컨트롤러의 터치 인터페이스 상의 스와이핑 제스처를 검출하는 단계를 포함하고,
    상기 커맨드를 생성하는 단계는 상기 스와이핑 제스처의 방향에 따라 상기 라이트의 디밍(dimming)을 제어하는 단계를 포함하는 것인, 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 방법.
  15. 포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체에 있어서,
    상기 명령어들은 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 단계들을 수행하게 하며, 상기 단계들은:
    상기 포인팅 컨트롤러의 상태 감지 디바이스로부터 센서 데이터를 획득하는 단계;
    상기 센서 데이터 및 저장된 팔 모델에 기초하여 3차원 공간을 통한 포인팅 벡터의 움직임을 추적하는 단계;
    상기 스마트 디바이스를 선택된 상태에 두기 위해 상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들과 상기 포인팅 벡터의 교차를 검출하는 단계;
    증강 현실 디스플레이 디바이스로 하여금 상기 스마트 디바이스와 연관된 가상 메뉴를 디스플레이하게 하는 단계;
    상기 스마트 디바이스가 상기 선택된 상태에 있을 때, 상기 가상 메뉴와 연관된 상기 포인팅 컨트롤러와의 제어 상호작용을 검출하는 단계; 및
    상기 제어 상호작용에 기초하여 상기 스마트 디바이스의 동작을 제어하기 위한 커맨드를 생성하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  16. 제15항에 있어서,
    상기 스마트 디바이스와 연관된 좌표들은 상기 스마트 디바이스의 물리적 위치를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  17. 제15항에 있어서,
    상기 스마트 디바이스와 연관된 좌표들은 상기 스마트 디바이스와 연관된 실제 또는 가상 프록시 디바이스의 위치를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  18. 제15항에 있어서,
    상기 교차를 검출하는 단계는:
    상기 포인팅 벡터와 정렬된 중심축, 상기 포인팅 컨트롤러의 위치에 근접한 원점, 및 상기 포인팅 벡터의 원점으로부터의 거리에 따라 증가하는 반경을 갖는 포인팅 원뿔을 생성하는 단계; 및
    상기 포인팅 원뿔이 상기 스마트 디바이스와 연관된 좌표들과 중첩하는 것에 응답하여, 상기 포인팅 벡터와의 교차를 검출하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  19. 제15항에 있어서,
    상기 제어 상호작용을 검출하는 단계는, 상기 포인팅 컨트롤러의 인터디지트 버튼의 활성화를 검출하는 단계를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  20. 제15항에 있어서,
    상기 제어 상호작용을 검출하는 단계는:
    상기 포인팅 컨트롤러의 슬라이더 제어 인터페이스와의 상호작용을 검출하는 단계;
    상기 슬라이더 제어 인터페이스와의 상호작용에 응답하여, 상기 가상 메뉴의 상이한 메뉴 아이템들 사이에서 내비게이팅하는 단계; 및
    상기 포인팅 컨트롤러의 인터디지트 버튼의 활성화 검출에 응답하여 메뉴 아이템을 선택하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  21. 제15항에 있어서,
    상기 제어 상호작용을 검출하는 단계는:
    상기 스마트 디바이스의 제어 기능을 나타내는 상기 포인팅 컨트롤러로 행해진 제스처를 검출하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  22. 제15항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는, 상기 포인팅 컨트롤러와 통합된 카메라에 기초하여 추적을 수행하는 단계를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  23. 제15항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지를 검출하는 단계; 및
    상기 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지에 따라, 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  24. 제15항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지를 검출하는 단계; 및
    상기 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지에 따라, 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  25. 제15항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러의 사용자와 연관된 피로 레벨을 검출하는 단계; 및
    상기 검출된 피로 레벨에 따라 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  26. 제15항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들이 상기 포인팅 컨트롤러로부터의 문턱 거리보다 크다고 결정하는 단계;
    뻗은 위치에 있는 것으로 팔에 대응하는 상기 팔 모델의 파라미터들을 생성하는 단계; 및
    상기 팔 모델의 파라미터들에 기초하여 상기 움직임을 추적하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  27. 제15항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들이 상기 포인팅 컨트롤러로부터의 문턱 거리보다 작다고 결정하는 단계;
    신체 근처의 이완된 위치에 있는 것으로 팔에 대응하는 상기 팔 모델의 파라미터들을 생성하는 단계; 및
    상기 팔 모델의 파라미터들에 기초하여 상기 움직임을 추적하는 단계
    를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  28. 제15항에 있어서,
    상기 스마트 디바이스를 스마트 라이트로서 인식하는 단계를 더 포함하며,
    상기 포인팅 컨트롤러와의 제어 상호작용을 검출하는 단계는 상기 포인팅 컨트롤러의 터치 인터페이스 상의 스와이핑 제스처를 검출하는 단계를 포함하고,
    상기 커맨드를 생성하는 단계는 상기 스와이핑 제스처의 방향에 따라 상기 라이트의 디밍을 제어하는 단계를 포함하는 것인, 비일시적 컴퓨터 판독가능 저장 매체.
  29. 추적 디바이스에 있어서,
    하나 이상의 프로세서; 및
    포인팅 컨트롤러를 사용하여 스마트 디바이스와의 상호작용들을 제어하기 위한 명령어들을 저장하는 비일시적 컴퓨터 판독가능 저장 매체
    를 포함하고, 상기 명령어들은 상기 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 단계들을 수행하게 하며, 상기 단계들은:
    상기 포인팅 컨트롤러의 상태 감지 디바이스로부터 센서 데이터를 획득하는 단계;
    상기 센서 데이터 및 저장된 팔 모델에 기초하여 3차원 공간을 통한 포인팅 벡터의 움직임을 추적하는 단계;
    상기 스마트 디바이스를 선택된 상태에 두기 위해 상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들과 상기 포인팅 벡터의 교차를 검출하는 단계;
    증강 현실 디스플레이 디바이스로 하여금 상기 스마트 디바이스와 연관된 가상 메뉴를 디스플레이하게 하는 단계;
    상기 스마트 디바이스가 상기 선택된 상태에 있을 때, 상기 가상 메뉴와 연관된 상기 포인팅 컨트롤러와의 제어 상호작용을 검출하는 단계; 및
    상기 제어 상호작용에 기초하여 상기 스마트 디바이스의 동작을 제어하기 위한 커맨드를 생성하는 단계
    를 포함하는 것인, 추적 디바이스.
  30. 제29항에 있어서,
    상기 스마트 디바이스와 연관된 좌표들은 상기 스마트 디바이스의 물리적 위치를 포함하는 것인, 추적 디바이스.
  31. 제29항에 있어서,
    상기 스마트 디바이스와 연관된 좌표들은 상기 스마트 디바이스와 연관된 실제 또는 가상 프록시 디바이스의 위치를 포함하는 것인, 추적 디바이스.
  32. 제29항에 있어서,
    상기 교차를 검출하는 단계는:
    상기 포인팅 벡터와 정렬된 중심축, 상기 포인팅 컨트롤러의 위치에 근접한 원점, 및 상기 포인팅 벡터의 원점으로부터의 거리에 따라 증가하는 반경을 갖는 포인팅 원뿔을 생성하는 단계; 및
    상기 포인팅 원뿔이 상기 스마트 디바이스와 연관된 좌표들과 중첩하는 것에 응답하여, 상기 포인팅 벡터와의 교차를 검출하는 단계
    를 포함하는 것인, 추적 디바이스.
  33. 제29항에 있어서,
    상기 제어 상호작용을 검출하는 단계는, 상기 포인팅 컨트롤러의 인터디지트 버튼의 활성화를 검출하는 단계를 포함하는 것인, 추적 디바이스.
  34. 제29항에 있어서,
    상기 제어 상호작용을 검출하는 단계는:
    상기 포인팅 컨트롤러의 슬라이더 제어 인터페이스와의 상호작용을 검출하는 단계;
    상기 슬라이더 제어 인터페이스와의 상호작용에 응답하여, 상기 가상 메뉴의 상이한 메뉴 아이템들 사이에서 내비게이팅하는 단계; 및
    상기 포인팅 컨트롤러의 인터디지트 버튼의 활성화 검출에 응답하여 메뉴 아이템을 선택하는 단계
    를 포함하는 것인, 추적 디바이스.
  35. 제29항에 있어서,
    상기 제어 상호작용을 검출하는 단계는:
    상기 스마트 디바이스의 제어 기능을 나타내는 상기 포인팅 컨트롤러로 행해진 제스처를 검출하는 단계
    를 포함하는 것인, 추적 디바이스.
  36. 제29항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는, 상기 포인팅 컨트롤러와 통합된 카메라에 기초하여 추적을 수행하는 단계를 포함하는 것인, 추적 디바이스.
  37. 제29항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지를 검출하는 단계; 및
    상기 포인팅 컨트롤러가 실내에 있는지 또는 실외에 있는지에 따라, 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 추적 디바이스.
  38. 제29항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지를 검출하는 단계; 및
    상기 포인팅 컨트롤러의 사용자가 앉아있는지 또는 서있는지에 따라, 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 추적 디바이스.
  39. 제29항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 포인팅 컨트롤러의 사용자와 연관된 피로 레벨을 검출하는 단계; 및
    상기 검출된 피로 레벨에 따라 상기 팔 모델의 파라미터들을 조정하는 단계
    를 포함하는 것인, 추적 디바이스.
  40. 제29항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들이 상기 포인팅 컨트롤러로부터의 문턱 거리보다 크다고 결정하는 단계;
    뻗은 위치에 있는 것으로 팔에 대응하는 상기 팔 모델의 파라미터들을 생성하는 단계; 및
    상기 팔 모델의 파라미터들에 기초하여 상기 움직임을 추적하는 단계
    를 포함하는 것인, 추적 디바이스.
  41. 제29항에 있어서,
    상기 포인팅 벡터의 움직임을 추적하는 단계는:
    상기 스마트 디바이스와 연관된 상기 3차원 공간의 좌표들이 상기 포인팅 컨트롤러로부터의 문턱 거리보다 작다고 결정하는 단계;
    신체 근처의 이완된 위치에 있는 것으로 팔에 대응하는 상기 팔 모델의 파라미터들을 생성하는 단계; 및
    상기 팔 모델의 파라미터들에 기초하여 상기 움직임을 추적하는 단계
    를 포함하는 것인, 추적 디바이스.
  42. 제29항에 있어서,
    상기 단계들은 상기 스마트 디바이스를 스마트 라이트로서 인식하는 단계를 더 포함하며,
    상기 포인팅 컨트롤러와의 제어 상호작용을 검출하는 단계는 상기 포인팅 컨트롤러의 터치 인터페이스 상의 스와이핑 제스처를 검출하는 단계를 포함하고,
    상기 커맨드를 생성하는 단계는 상기 스와이핑 제스처의 방향에 따라 상기 라이트의 디밍을 제어하는 단계를 포함하는 것인, 추적 디바이스.
KR1020217030557A 2019-02-18 2020-02-15 포인팅 제어기를 사용하는 스마트 디바이스와의 상호작용 KR20210136043A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962807094P 2019-02-18 2019-02-18
US62/807,094 2019-02-18
PCT/IB2020/051292 WO2020170105A1 (en) 2019-02-18 2020-02-15 Interacting with a smart device using a pointing controller

Publications (1)

Publication Number Publication Date
KR20210136043A true KR20210136043A (ko) 2021-11-16

Family

ID=69743620

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217030557A KR20210136043A (ko) 2019-02-18 2020-02-15 포인팅 제어기를 사용하는 스마트 디바이스와의 상호작용

Country Status (6)

Country Link
US (1) US11989355B2 (ko)
EP (1) EP3928187A1 (ko)
JP (1) JP2022521360A (ko)
KR (1) KR20210136043A (ko)
AU (1) AU2020226861A1 (ko)
WO (1) WO2020170105A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2020196475A1 (ko) 2019-03-25 2020-10-01
AU2020352826A1 (en) 2019-09-24 2022-05-12 Arkh, Inc. Smart ring
WO2021181280A1 (en) * 2020-03-10 2021-09-16 Purple Tambourine Limited Barometric sensing of arm position in a pointing controller system
US11755111B2 (en) 2020-03-16 2023-09-12 Arkh, Inc. Spatially aware computing hub and environment
US11747441B2 (en) * 2020-07-29 2023-09-05 Apple Inc. Indoor/outdoor detection using wireless signals
DE102021120315A1 (de) * 2021-08-04 2023-02-09 Universität Kassel, Körperschaft des öffentlichen Rechts Interagieren mit intelligenten Objekten in der Umgebung mobiler Geräte

Family Cites Families (140)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9108497D0 (en) 1991-04-20 1991-06-05 Ind Limited W Human/computer interface
US6967642B2 (en) 2001-01-31 2005-11-22 Microsoft Corporation Input device with pattern and tactile feedback for computer input and control
US20130104062A1 (en) 2011-09-27 2013-04-25 Z124 Unified desktop input segregation in an application manager
US9213365B2 (en) 2010-10-01 2015-12-15 Z124 Method and system for viewing stacked screen displays using gestures
US9223426B2 (en) 2010-10-01 2015-12-29 Z124 Repositioning windows in the pop-up window
US20130198867A1 (en) 2011-12-09 2013-08-01 Z124 A Docking Station for Portable Devices Providing Authorized Power Transfer and Facility Access
US9229540B2 (en) * 2004-01-30 2016-01-05 Electronic Scripting Products, Inc. Deriving input from six degrees of freedom interfaces
US7716586B2 (en) 2006-02-17 2010-05-11 International Business Machines Corporation Apparatus, system, and method for progressively disclosing information in support of information technology system visualization and management
DE102007016408A1 (de) 2007-03-26 2008-10-02 Ident Technology Ag Mobiles Kommunikationsgerät und Eingabeeinrichtung hierfür
JP4778934B2 (ja) 2007-06-05 2011-09-21 日本電信電話株式会社 機器制御方法、機器制御システム、コンピュータプログラムおよび記録媒体
US8031172B2 (en) 2007-10-12 2011-10-04 Immersion Corporation Method and apparatus for wearable remote interface device
US8232976B2 (en) 2010-03-25 2012-07-31 Panasonic Corporation Of North America Physically reconfigurable input and output systems and methods
US7885145B2 (en) * 2007-10-26 2011-02-08 Samsung Electronics Co. Ltd. System and method for selection of an object of interest during physical browsing by finger pointing and snapping
US7839269B2 (en) 2007-12-12 2010-11-23 Immersion Corporation Method and apparatus for distributing haptic synchronous signals
US9268483B2 (en) 2008-05-16 2016-02-23 Microsoft Technology Licensing, Llc Multi-touch input platform
US8266550B1 (en) 2008-05-28 2012-09-11 Google Inc. Parallax panning of mobile device desktop
US8830163B2 (en) 2008-12-12 2014-09-09 Hewlett-Packard Development Company, L.P. Integrated keyboard and touchpad
JP4701424B2 (ja) 2009-08-12 2011-06-15 島根県 画像認識装置および操作判定方法並びにプログラム
US8633916B2 (en) 2009-12-10 2014-01-21 Apple, Inc. Touch pad with force sensors and actuator feedback
WO2011116332A2 (en) 2010-03-18 2011-09-22 SPI Surgical, Inc. Surgical cockpit comprising multisensory and multimodal interfaces for robotic surgery and methods related thereto
US8570273B1 (en) * 2010-05-20 2013-10-29 Lockheed Martin Corporation Input device configured to control a computing device
US10922870B2 (en) 2010-06-01 2021-02-16 Vladimir Vaganov 3D digital painting
US8599152B1 (en) 2010-06-25 2013-12-03 Sprint Communications Company L.P. Intelligent touch screen keyboard
US8698764B1 (en) 2010-06-30 2014-04-15 Amazon Technologies, Inc. Dorsal touch input
US9477302B2 (en) * 2012-08-10 2016-10-25 Google Inc. System and method for programing devices within world space volumes
US9372618B2 (en) 2010-10-01 2016-06-21 Z124 Gesture based application management
US20130050265A1 (en) 2011-08-31 2013-02-28 Z124 Gravity drop
US20120290946A1 (en) 2010-11-17 2012-11-15 Imerj LLC Multi-screen email client
US8799803B2 (en) 2011-03-03 2014-08-05 Apple Inc. Configurable input device
EP2518591B1 (en) 2011-04-25 2018-05-30 LS Automotive Technologies Co., Ltd. Haptic steering wheel switch apparatus and haptic steering wheel switch system including the same
US8957868B2 (en) 2011-06-03 2015-02-17 Microsoft Corporation Multi-touch text input
US9417754B2 (en) 2011-08-05 2016-08-16 P4tents1, LLC User interface system, method, and computer program product
WO2013022431A1 (en) 2011-08-09 2013-02-14 Research In Motion Limited Manipulating screen layers in multi-layer applications
US20160124698A1 (en) 2011-08-24 2016-05-05 Z124 Unified desktop triad control user interface for an application launcher
US20130104051A1 (en) 2011-09-27 2013-04-25 Z124 Unified desktop big brother application pools
DE102011082467B4 (de) 2011-09-09 2022-12-22 Continental Automotive Technologies GmbH Anzeige- und Bediensystem für ein Kraftfahrzeug
US20160054757A1 (en) 2012-02-29 2016-02-25 Z124 Unified desktop docking flow
US20130080932A1 (en) 2011-09-27 2013-03-28 Sanjiv Sirpal Secondary single screen mode activation through user interface toggle
WO2013049861A1 (en) 2011-09-29 2013-04-04 Magic Leap, Inc. Tactile glove for human-computer interaction
TWI524218B (zh) 2011-10-05 2016-03-01 廣達電腦股份有限公司 觸覺回饋式虛擬鍵盤之提供方法及其電子裝置
US9713500B2 (en) 2011-10-25 2017-07-25 Snu R&Db Foundation Surgical robot control apparatus
US8860763B2 (en) 2012-01-31 2014-10-14 Xerox Corporation Reversible user interface component
US9448680B2 (en) 2012-02-16 2016-09-20 Microsoft Technology Licensing, Llc Power efficient application notification system
US9891709B2 (en) 2012-05-16 2018-02-13 Immersion Corporation Systems and methods for content- and context specific haptic effects using predefined haptic effects
US9939963B2 (en) 2012-08-14 2018-04-10 Christopher V. Beckman Techniques improving displays
JP2014117409A (ja) 2012-12-14 2014-06-30 Kawasaki Heavy Ind Ltd 身体関節位置の計測方法および装置
GB2514971B (en) 2013-01-06 2021-04-14 Intel Corp A method, apparatus, and system for distributed pre-processing of touch data and display region control
US8858335B2 (en) 2013-01-18 2014-10-14 Microsoft Corporation Reconfigurable clip-on modules for mobile computing devices
KR102178845B1 (ko) 2013-01-29 2020-11-13 삼성전자주식회사 햅틱을 제어하는 휴대 단말 및 방법
US9547366B2 (en) 2013-03-14 2017-01-17 Immersion Corporation Systems and methods for haptic and gesture-driven paper simulation
CN105473021B (zh) 2013-03-15 2018-01-19 智能专利有限责任公司 可穿戴设备及相关***
US9405369B2 (en) 2013-04-26 2016-08-02 Immersion Corporation, Inc. Simulation of tangible user interface interactions and gestures using array of haptic cells
US9330545B2 (en) 2013-07-17 2016-05-03 Google Inc. Determining input received via tactile input device
US9798388B1 (en) 2013-07-31 2017-10-24 Aquifi, Inc. Vibrotactile system to augment 3D input systems
US10599218B2 (en) 2013-09-06 2020-03-24 Immersion Corporation Haptic conversion system using frequency shifting
US9443401B2 (en) 2013-09-06 2016-09-13 Immersion Corporation Automatic remote sensing and haptic conversion system
US9898642B2 (en) 2013-09-09 2018-02-20 Apple Inc. Device, method, and graphical user interface for manipulating user interfaces based on fingerprint sensor inputs
US10139914B2 (en) * 2013-09-13 2018-11-27 Nod, Inc. Methods and apparatus for using the human body as an input device
US9542783B2 (en) 2013-11-15 2017-01-10 Google Technology Holdings LLC Method and apparatus for authenticating access to a multi-level secure environment of an electronic device
EP4071581A1 (en) 2013-11-29 2022-10-12 Motiv Inc. Wearable computing device
KR101831741B1 (ko) 2013-12-26 2018-02-26 인텔 코포레이션 원격 다중 터치 제어
US9412002B2 (en) 2013-12-26 2016-08-09 Intel Corporation Wearable electronic device having a fingerprint identification display
US10331777B2 (en) 2013-12-31 2019-06-25 Barnes & Noble College Booksellers, Llc Merging annotations of paginated digital content
US9792272B2 (en) 2013-12-31 2017-10-17 Barnes & Noble College Booksellers, Llc Deleting annotations of paginated digital content
US9945818B2 (en) 2014-02-23 2018-04-17 Qualcomm Incorporated Ultrasonic authenticating button
JP6524111B2 (ja) 2014-04-01 2019-06-05 アップル インコーポレイテッドApple Inc. リング形コンピューティングデバイスのための装置及び方法
KR101534282B1 (ko) 2014-05-07 2015-07-03 삼성전자주식회사 포터블 디바이스의 사용자 입력 방법 및 상기 사용자 입력 방법이 수행되는 포터블 디바이스
US10782657B2 (en) * 2014-05-27 2020-09-22 Ultrahaptics IP Two Limited Systems and methods of gestural interaction in a pervasive computing environment
US9606624B2 (en) 2014-07-02 2017-03-28 Immersion Corporation Systems and methods for surface elements that provide electrostatic haptic effects
US9600083B2 (en) 2014-07-15 2017-03-21 Immersion Corporation Systems and methods to generate haptic feedback for skin-mediated interactions
US9690381B2 (en) 2014-08-21 2017-06-27 Immersion Corporation Systems and methods for shape input and output for a haptically-enabled deformable surface
US10534447B2 (en) 2014-09-01 2020-01-14 Yinbo Li Multi-surface controller
KR102019505B1 (ko) 2014-09-02 2019-09-06 애플 인크. 햅틱 통지
US9785123B2 (en) 2014-09-26 2017-10-10 Intel Corporation Digital analog display with rotating bezel
US10146308B2 (en) 2014-10-14 2018-12-04 Immersion Corporation Systems and methods for impedance coupling for haptic devices
US9535550B2 (en) 2014-11-25 2017-01-03 Immersion Corporation Systems and methods for deformation-based haptic effects
US9383839B1 (en) 2014-12-08 2016-07-05 Amazon Technologies, Inc. Configuration of a profile associated with a stylus
US9600076B2 (en) 2014-12-19 2017-03-21 Immersion Corporation Systems and methods for object manipulation with haptic feedback
US9658693B2 (en) 2014-12-19 2017-05-23 Immersion Corporation Systems and methods for haptically-enabled interactions with objects
US9746921B2 (en) 2014-12-31 2017-08-29 Sony Interactive Entertainment Inc. Signal generation and detector systems and methods for determining positions of fingers of a user
US20160231812A1 (en) * 2015-02-06 2016-08-11 The Eye Tribe Aps Mobile gaze input system for pervasive interaction
US10921896B2 (en) * 2015-03-16 2021-02-16 Facebook Technologies, Llc Device interaction in augmented reality
US10849519B2 (en) 2015-03-31 2020-12-01 University of Pittsburgh—of the Commonwealth System of Higher Education Wearable cardiac electrophysiology measurement devices, software, systems and methods
WO2016157193A1 (en) * 2015-04-01 2016-10-06 Snapback S.R.L. Methods and systems foe electronic device interactions
US10065114B2 (en) 2015-04-07 2018-09-04 Virtuix Holding Inc. Haptic glove for use in a virtual environment
US10852700B2 (en) 2015-04-12 2020-12-01 Andrey Abramov Wearable smart watch with a control-ring and a user feedback mechanism
US9904409B2 (en) 2015-04-15 2018-02-27 Samsung Electronics Co., Ltd. Touch input processing method that adjusts touch sensitivity based on the state of a touch object and electronic device for supporting the same
US9645647B2 (en) 2015-05-13 2017-05-09 Immersion Corporation Systems and methods for haptic feedback for modular devices
US9746933B2 (en) 2015-05-20 2017-08-29 Survios, Inc. Systems and methods for natural motion interaction with a virtual environment
US9536421B2 (en) 2015-06-02 2017-01-03 Qualcomm Technologies International, Ltd. Intuitive way to point, access and control appliances and other objects in building interiors
US9696822B2 (en) 2015-06-29 2017-07-04 International Business Machines Corporation Rotating ring for device control
KR101650099B1 (ko) 2015-07-23 2016-08-23 린츠 주식회사 시각장애인용 착용형 햅틱 패턴 디스플레이 장치
US9861314B2 (en) 2015-08-14 2018-01-09 Oura Health Oy Wearable electronic device and method for manufacturing thereof
US10185670B2 (en) 2015-09-15 2019-01-22 Gatekeeper Ltd. System and method for securely connecting to a peripheral device
US10346038B2 (en) 2015-11-19 2019-07-09 International Business Machines Corporation Braille data entry using continuous contact virtual keyboard
US9829338B2 (en) 2015-11-21 2017-11-28 Ryan Thomas Ward System and method for providing directions haptically
US10169670B2 (en) 2015-11-30 2019-01-01 International Business Machines Corporation Stroke extraction in free space
US20230154123A1 (en) * 2016-01-07 2023-05-18 Northwest Instrument Inc. Intelligent interface based on augmented reality
JP2017168060A (ja) 2016-03-14 2017-09-21 明久 松園 スマートインターフェースリング
US10684478B2 (en) 2016-05-09 2020-06-16 Mentor Acquisition One, Llc User interface systems for head-worn computers
US10509469B2 (en) 2016-04-21 2019-12-17 Finch Technologies Ltd. Devices for controlling computers based on motions and positions of hands
US11327475B2 (en) 2016-05-09 2022-05-10 Strong Force Iot Portfolio 2016, Llc Methods and systems for intelligent collection and analysis of vehicle data
US10732621B2 (en) 2016-05-09 2020-08-04 Strong Force Iot Portfolio 2016, Llc Methods and systems for process adaptation in an internet of things downstream oil and gas environment
US10719232B2 (en) 2016-06-08 2020-07-21 Qualcomm Incorporated Providing virtual buttons in a handheld device
US9972134B2 (en) * 2016-06-30 2018-05-15 Microsoft Technology Licensing, Llc Adaptive smoothing based on user focus on a target object
DE102016113060A1 (de) * 2016-07-15 2018-01-18 Beckhoff Automation Gmbh Verfahren zum Steuern eines Objekts
GB2552984B (en) 2016-08-17 2018-10-24 Ford Global Tech Llc An ultrasonic haptic control system
US10216272B2 (en) 2016-08-25 2019-02-26 Facebook Technologies, Llc Strain measurement ring
US10303865B2 (en) 2016-08-31 2019-05-28 Redrock Biometrics, Inc. Blue/violet light touchless palm print identification
DK201670720A1 (en) 2016-09-06 2018-03-26 Apple Inc Devices, Methods, and Graphical User Interfaces for Generating Tactile Outputs
DK179278B1 (en) 2016-09-06 2018-03-26 Apple Inc Devices, methods and graphical user interfaces for haptic mixing
WO2018063136A1 (en) 2016-10-01 2018-04-05 Intel Corporation Systems, methods, and apparatuses for implementing increased human perception of haptic feedback systems
US10976822B2 (en) 2016-10-01 2021-04-13 Intel Corporation Systems, methods, and apparatuses for implementing increased human perception of haptic feedback systems
US10088902B2 (en) 2016-11-01 2018-10-02 Oculus Vr, Llc Fiducial rings in virtual reality
US11119633B2 (en) 2016-11-10 2021-09-14 Sony Corporation Information processing device and method
KR102668302B1 (ko) 2016-12-15 2024-05-23 삼성전자주식회사 커버 장치의 개폐를 판단하는 전자 장치와 이의 동작 방법
KR102337875B1 (ko) 2017-03-31 2021-12-10 삼성전자주식회사 전자 장치 및 그 동작 방법
US10183217B2 (en) 2017-04-13 2019-01-22 Facebook Technologies, Llc Hand-held controller using segmented capacitive touch trigger
US10061458B1 (en) 2017-04-20 2018-08-28 Oculus Vr, Llc Hand-held controller using capacitive touch pad
KR102364678B1 (ko) 2017-06-20 2022-02-18 엘지전자 주식회사 이동 단말기
US10191566B1 (en) * 2017-07-05 2019-01-29 Sony Interactive Entertainment Inc. Interactive input controls in a simulated three-dimensional (3D) environment
CN110914790A (zh) * 2017-07-26 2020-03-24 奇跃公司 采用用户界面设备的表示来训练神经网络
US10698486B2 (en) 2017-07-28 2020-06-30 Synaptics Incorporated Haptic tactile feedback with buckling mechanism
US10768747B2 (en) 2017-08-31 2020-09-08 Apple Inc. Haptic realignment cues for touch-input displays
US11546951B1 (en) * 2017-10-25 2023-01-03 Amazon Technologies, Inc. Touchless setup mode initiation for networked devices
JP2019096119A (ja) 2017-11-24 2019-06-20 富士通株式会社 手認識方法、手認識プログラムおよび手認識装置
US10514780B2 (en) 2017-12-01 2019-12-24 Logitech Europe S.A. Input device
CN108052202B (zh) 2017-12-11 2021-06-11 深圳市星野信息技术有限公司 一种3d交互方法、装置、计算机设备及存储介质
US10459495B2 (en) 2017-12-19 2019-10-29 North Inc. Wearable electronic devices having an inward facing input device and methods of use thereof
US20230072423A1 (en) * 2018-01-25 2023-03-09 Meta Platforms Technologies, Llc Wearable electronic devices and extended reality systems including neuromuscular sensors
US10775891B2 (en) 2018-04-02 2020-09-15 Microsoft Technology Licensing, Llc Resistance-based haptic device
US11106355B2 (en) 2018-04-20 2021-08-31 Opera Norway As Drag menu
US10579099B2 (en) 2018-04-30 2020-03-03 Apple Inc. Expandable ring device
WO2019229698A1 (en) * 2018-05-31 2019-12-05 Purple Tambourine Limited Interacting with a virtual environment using a pointing controller
US10496193B1 (en) 2018-06-28 2019-12-03 Dell Products, L.P. Digital pen with three-dimensional input interface
US10976820B2 (en) 2018-07-12 2021-04-13 Microsoft Technology Licensing, Llc Natural interactions with virtual objects and data through touch
US10713907B2 (en) 2018-07-27 2020-07-14 Autodesk, Inc. Haptic device for mixed reality environments
US10852154B1 (en) 2018-10-24 2020-12-01 Massachusetts Mutual Life Insurance Company Wearable electronic navigation system
WO2020106883A1 (en) * 2018-11-20 2020-05-28 The Regents Of The University Of California Flexible thermoelectric devices
US11061476B2 (en) 2019-05-24 2021-07-13 Microsoft Technology Licensing, Llc Haptic feedback apparatus

Also Published As

Publication number Publication date
JP2022521360A (ja) 2022-04-06
US20220155880A1 (en) 2022-05-19
US11989355B2 (en) 2024-05-21
WO2020170105A1 (en) 2020-08-27
EP3928187A1 (en) 2021-12-29
AU2020226861A1 (en) 2021-10-14

Similar Documents

Publication Publication Date Title
US11989355B2 (en) Interacting with a smart device using a pointing controller
US11353967B2 (en) Interacting with a virtual environment using a pointing controller
US10551834B2 (en) Method and electronic device for controlling unmanned aerial vehicle
EP3639119B1 (en) Object holographic augmentation
US10254546B2 (en) Optically augmenting electromagnetic tracking in mixed reality
US9852546B2 (en) Method and system for receiving gesture input via virtual control objects
US9983687B1 (en) Gesture-controlled augmented reality experience using a mobile communications device
US20180108179A1 (en) Generating and Displaying a Computer Generated Image on a Future Pose of a Real World Object
US20170352184A1 (en) Optically augmenting electromagnetic tracking in mixed reality
US20150323993A1 (en) Systems and methods for providing haptic feedback for remote interactions
US20160231812A1 (en) Mobile gaze input system for pervasive interaction
US9838573B2 (en) Method for guiding controller to move to within recognizable range of multimedia apparatus, the multimedia apparatus, and target tracking apparatus thereof
CN108431667A (zh) 信息处理装置、信息处理方法和程序
US10321065B2 (en) Remote communication method, remote communication system, and autonomous movement device
CN109059929B (zh) 导航方法、装置、穿戴式设备及存储介质
CN113728293A (zh) 用于基于位所的设备控制的***和界面
CN109145847B (zh) 识别方法、装置、穿戴式设备及存储介质
KR101956259B1 (ko) 거리 측정 장치 및 그 제어 방법
US20210042513A1 (en) Information processing apparatus, information processing method, and program
WO2021152513A1 (en) Low profile pointing device sensor fusion
US20230297166A1 (en) Barometric Sensing of Arm Position in a Pointing Controller System
WO2018074054A1 (ja) 表示制御装置、表示制御方法及びプログラム
KR20160089982A (ko) 동작인식센서를 이용한 입력장치
KR101522208B1 (ko) 증강현실기반의 자동 표적생성 시스템 및 방법
CN113220110A (zh) 显示***及方法