KR102213090B1 - 객체의 특정 위치가 디바이스에 제공되게 하는 방법 - Google Patents

객체의 특정 위치가 디바이스에 제공되게 하는 방법 Download PDF

Info

Publication number
KR102213090B1
KR102213090B1 KR1020157026979A KR20157026979A KR102213090B1 KR 102213090 B1 KR102213090 B1 KR 102213090B1 KR 1020157026979 A KR1020157026979 A KR 1020157026979A KR 20157026979 A KR20157026979 A KR 20157026979A KR 102213090 B1 KR102213090 B1 KR 102213090B1
Authority
KR
South Korea
Prior art keywords
display
sharing
computing device
location
user
Prior art date
Application number
KR1020157026979A
Other languages
English (en)
Other versions
KR20150128765A (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 KR20150128765A publication Critical patent/KR20150128765A/ko
Application granted granted Critical
Publication of KR102213090B1 publication Critical patent/KR102213090B1/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/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1694Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1698Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a sending/receiving arrangement to establish a cordless communication link, e.g. radio or infrared link, integrated cellular phone
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

객체의 특정 위치가 공유 디바이스에 제공되게 하는 기법들. 이 기법들은 컴퓨팅 디바이스를 개별 디바이스와 연결시키는 것을 포함할 수 있다. 개별 디바이스는 객체를 공유 디바이스로 전송하고 공유 디바이스의 디스플레이 상의 초기 객체 위치에 디스플레이할 수 있다. 개별 디바이스의 움직임에 응답하여 초기 객체 위치가 업데이트될 수 있고, 객체가 디스플레이 상의 업데이트된 객체 위치에 디스플레이될 수 있다. 객체 위치가 신호에 응답하여 고정될 수 있고, 객체가 고정된 객체 위치에 디스플레이될 수 있다.

Description

객체의 특정 위치가 디바이스에 제공되게 하는 방법{CAUSING SPECIFIC LOCATION OF AN OBJECT PROVIDED TO A DEVICE}
본 발명은 객체를 공유하기 위한 방법 및 장치에 관한 것이고, 보다 구체적으로는 객체의 특정 위치가 디바이스에 제공되게 하는 방법 및 장치에 관한 것이다.
현대 사회에서 컴퓨팅 디바이스들이 없는 곳이 없다. 많은 사람들은 매우 구체적인 동작들을 수행하는 애플리케이션 또는 소프트웨어가 로드될 수 있는 컴퓨팅 디바이스들을 소유한다. 이들 디바이스는, 적절한 소프트웨어가 로드될 때, 디바이스들을 제어하기 위해, 다른 디바이스들과 정보를 교환하기 위해, 그리고 다른 기능들을 수행하기 위해 사용될 수 있다.
제1 컴퓨팅 디바이스로부터 제2 컴퓨팅 디바이스로 데이터를 전달할 때, 전달된 데이터는 종종 제2 디바이스(즉, 수신측 디바이스)에 의해 결정되는 제2 디바이스 상의 기본 위치들에 저장 및/또는 디스플레이된다. 기껏해야, 제1 컴퓨팅 디바이스의 사용자는, 데이터를 저장하는 데 사용되는 폴더를 선택하는 등에 의해, 제2 디바이스 상의 데이터에 대한 저장 위치를 지정할 수 있다.
개별 디바이스(즉, 모바일 컴퓨팅 디바이스 등)로부터 수신되고 공유 디바이스(예컨대, 공유 디스플레이 등) 상에 디스플레이하기 위해 이용가능할 수 있는 객체를 위치시키는 것을 가능하게 하는 기법들 및 시스템들이 본 명세서에 기술되어 있다. 공유 디바이스 상에 객체를 위치시키는 것은 개별 디바이스와 연관된 사용자의 움직임 및/또는 개별 디바이스의 움직임에 부분적으로 기초할 수 있다.
예시적인 기법들은 공유 디바이스와 개별 디바이스 사이의 통신 연결을 생성하는 것을 포함할 수 있다. 디바이스들 사이에 연결이 설정된 후에, 개별 디바이스 상에서 선택되는 객체가 개별 디바이스로부터 공유 디바이스로 전송되고, 공유 디바이스의 디스플레이 상의 초기 객체 위치에 디스플레이될 수 있다. 객체 위치가 개별 디바이스 또는 개별 디바이스를 조작하는 사용자의 움직임에 응답하여 업데이트될 수 있다. 객체 위치가 트리거링 이벤트에 응답하여 고정(lock)될 수 있고, 공유 디바이스에 의해, 객체가 고정된 객체 위치에 적어도 일시적으로 디스플레이될 수 있다.
이 발명의 내용은 이하에서 발명을 실시하기 위한 구체적인 내용에 추가로 기술되는 일련의 개념들을 간략화된 형태로 소개하기 위해 제공된다. 이 발명의 내용은 청구된 발명 요지의 주요 특징들 또는 필수적인 특징들을 나타내기 위한 것이 아니며, 청구된 발명 요지의 범주를 제한하기 위해 사용되기 위한 것도 아니다.
발명을 실시하기 위한 구체적인 내용이 첨부 도면들을 참조하여 기술된다. 도면들에서, 참조 번호의 가장 왼쪽의 숫자(들)는 그 참조 번호가 처음으로 나타나는 도면을 나타낸다. 상이한 도면들에서의 동일한 참조 번호들은 유사한 또는 동일한 항목들을 가리킨다.
도 1은 객체의 특정 위치가 컴퓨팅 디바이스에 제공되게 하는 예시적인 컴퓨팅 환경을 나타낸 도면.
도 2는 도 1에 도시된 공유 디바이스의 예시적인 아키텍처를 나타낸 도면.
도 3은 도 1에 도시된 개별 디바이스의 예시적인 아키텍처를 나타낸 도면.
도 4는 객체의 특정 위치가 컴퓨팅 디바이스에 제공되게 하는 예시적인 프로세스를 나타낸 도면.
도 5는 객체의 특정 위치가 컴퓨팅 디바이스에 제공되게 하는 예시적인 프로세스를 나타낸 도면으로서, 이 경우 공유 디바이스가 개별 디바이스 또는 사용자의 위치를 검출함.
도 6은 객체의 특정 위치가 컴퓨팅 디바이스에 제공되게 하는 예시적인 프로세스를 나타낸 도면으로서, 이 경우 개별 디바이스가 위치 정보를 공유 디바이스에 제공함.
도 7은 컴퓨팅 디바이스로 전송되는 객체들을 편집하기 위한 예시적인 사용자 인터페이스를 나타낸 도면.
개요
본 개시 내용은, 부분적으로, 개별 디바이스(예컨대, 모바일 컴퓨팅 디바이스 등)와 공유 디바이스(예컨대, 공유 디스플레이 등) 사이에서 객체를 전송하고 위치시키는 데 사용되는 동작들에 관한 것이다. 본 개시 내용의 실시예들은 공유 디바이스와 연관된 디스플레이 상에 객체를 위치시키기 위해, 개별 디바이스로부터, 매끄럽고 직관적인 복사-붙여넣기 및 위치 제어를 제공한다. 사용자가 객체들을 디스플레이로 "플릭(flick)"할 수 있게 하지만, 객체가 일단 디스플레이 상에 수신되면, 사용자에 의한 위치 제어를 제공하지 않는 종래의 기술들과 달리, 본 개시 내용의 실시예들은 객체를 전송한 사용자가, 객체가 디스플레이에 의해 수신된 후에, 객체를 디스플레이 상에서 정확하게 위치시킬 수 있게 한다.
본 개시 내용의 일부 양태들에서, 공유 디바이스(102)는 정보의 페어링(pairing), 핸드쉐이크(handshake), 자격 증명들의 교환 등과 같은, 연결 프로토콜을 수행하는 것에 의해, 및/또는 다른 연결 프로토콜들을 사용하는 것에 의해 개별 디바이스와 통신 연결을 생성할 수 있다. 공유 디바이스는 개별 디바이스로부터 객체를 수신할 수 있다. 예를 들어, 개별 디바이스는, 연결 프로토콜 동안 교환된 공유 디바이스의 하드웨어 주소를 사용하여, 객체를 공유 디바이스로 전송할 수 있다. 공유 디바이스는 객체를 초기 객체 위치에 디스플레이할 수 있다.
일부 실시예들에서, 공유 디바이스는, 개별 디바이스 또는 사용자의 위치를 제어 위치로서 검출하고 이어서 제어 위치의 변화에 응답하여 객체 위치를 업데이트하는 것에 의해, 객체의 위치를 업데이트할 수 있다. 공유 디바이스는 신호(예컨대, 종료 신호 등)의 수신, 미리 결정된 양의 시간의 만료, 개별 디바이스의 움직임의 중단, 및/또는 다른 트리거링 이벤트들과 같은, 트리거 이벤트에 응답하여 객체를 특정의 객체 위치에 고정(lock)시킬 수 있다.
다양한 실시예들에서, 개별 디바이스는 공유 디바이스가 객체를 공유 디바이스의 디스플레이 상에 위치시킬 수 있게 하기 위해 위치 정보를 제공할 수 있다. 예를 들어, 위치 정보는 개별 디바이스에 의해 생성된 이미지를 포함할 수 있고, 여기서 이미지는 객체 및 공유 디바이스와 연관된 기준점(reference point)들을 포함한다. 공유 디바이스는 이어서 공유 디바이스와 연관된 디스플레이 상에 객체를 위치시키기 위해 위치 정보를 사용할 수 있다.
예시적인 환경
도 1은 객체가 개별 디바이스로부터 전송되어 공유 디바이스와 연관된 디스플레이 상의 특정의 위치에 위치될 수 있는 예시적인 컴퓨팅 환경(100)을 나타낸 것이다. 일부 실시예들에서, 환경(100)은 사용자(106)에 의해 조작되는 개별 디바이스(104)와 통신하는 공유 디바이스(102)를 포함할 수 있다. 공유 디바이스(102)는 다른 디바이스(예컨대, 휴대폰)와 데이터를 교환하고 출력(예컨대, 시각적 표현)을 생성할 수 있는, 범용 컴퓨터, 하나 이상의 서버들, 셋톱 박스, 게임 콘솔, 또는 임의의 다른 컴퓨팅 디바이스일 수 있다. 이들 및 다른 경우에, 공유 디바이스(102)는 하나 이상의 컴퓨팅 디바이스들[예컨대, 개별 디바이스(104)]에 의해 액세스될 수 있다.
어떤 경우에, 개별 디바이스(104)가, 한편으로는, 다른 디바이스(예컨대, 감지 디바이스)와 데이터를 교환하고 다양한 디바이스들(예컨대, 디스플레이)에서 사용될 수 있는 출력(예컨대, 시각적 표현)을 생성할 수 있는, 모바일 컴퓨터, 휴대폰(예컨대, 스마트폰), 개인용 컴퓨터, 랩톱 컴퓨터, PDA(portable digital assistant), 게임 콘솔, PMP(personal media player), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라, PND(personal navigation device), 또는 임의의 다른 컴퓨팅 디바이스일 수 있다.
일부 실시예들에서, 공유 디바이스(102)는 개별 디바이스(104) 및 하나 이상의 다른 컴퓨팅 디바이스들과 통신할 수 있다. 이들 경우에, 개별 디바이스(104) 및 다른 컴퓨팅 디바이스들은 객체들을 공유 디바이스(102)와 연관된 디스플레이 상에 제시하고 그리고/또는 공유할 수 있다. 예를 들어, 개별 디바이스(104) 및 다른 컴퓨팅 디바이스들은 객체들을 복사하여 공유 디바이스(102)에 붙여넣기할 수 있고, 객체들을 디스플레이 상의 원하는 위치들에 디스플레이할 수 있다. 객체들은, 사용자들이 다른 사람들과 공유하고자 할 수 있는, 애플리케이션, 서비스, 문서, 데이터, 그래프, 사진, 멀티미디어(예컨대, 텍스트, 오디오, 이미지, 애니메이션, 비디오), 게임, 이메일, 온라인 채팅 기록(online chat record), 소셜 네트워킹 프로필, 포스팅(posting), 및 다른 파일일 수 있다. 일부 실시예들에서, 객체들의 선택은 동일한 유형의 객체들의 선택 및/또는 상이한 유형의 객체들의 조합을 포함하는 선택을 포함할 수 있다. 일부 실시예들에서, 선택은 애플리케이션의 일부(즉, 대화 상자)를 포함할 수 있다.
개별 디바이스(104)가 공유 디바이스(102)의 근처에 있을 때, 공유 디바이스(102)는 개별 디바이스(104)와 연결을 설정할 수 있다. 연결은 공유 디바이스(102) 또는 개별 디바이스(104)에 의해 초기화될 수 있다. 어떤 경우에, 연결이 네트워크(108)를 통해 설정될 수 있다. 네트워크(108)는 케이블 네트워크, 인터넷, 및 무선 네트워크[예컨대, 블루투스(Bluetooth)®, Wi-Fi, 이동 전화 네트워크 등]와 같은, 다수의 상이한 유형의 네트워크들 중 임의의 것 또는 그들의 임의의 조합을 포함할 수 있다.
일부 실시예들에서, 사용자(106)는 개별 디바이스(104)의 인터페이스(112) 상에서 객체(110)를 선택할 수 있고, 이어서 객체(110)를 디스플레이(114)로 복사할 수 있다. 객체(110)의 선택을 수신한 후에, 개별 디바이스(104)는 객체(110)를 공유 디바이스(102)로 전송할 수 있다. 예를 들어, 개별 디바이스(104)는, 연결 프로토콜 동안 교환된 공유 디바이스의 하드웨어 주소를 사용하여, 객체(110)를 공유 디바이스(102)로 전송할 수 있다. 공유 디바이스(102)는 객체(110)를 디스플레이(114)의 초기 객체 위치에 디스플레이할 수 있다. 어떤 경우에, 초기 객체 위치는, 공유 디바이스(102) 또는 개별 디바이스(104)가 처리하고 있는 작업과 같은, 미리 결정된 규칙 또는 컨텍스트에 기초하여 결정될 수 있다.
일부 실시예들에서, 초기 객체 위치는 센서(116) 또는 디스플레이(114)와 관련한 사용자(106) 및/또는 개별 디바이스(104)의 위치에 기초하여 결정될 수 있다. 이들 경우에, 초기 객체 위치는 사용자(106) 및/또는 개별 디바이스(104)의 기준 특징(reference feature)들과 연관되어 있을 수 있다. 예를 들어, 디스플레이(114)는 다수의 디스플레이들을 포함할 수 있고, 초기 객체 위치는 다수의 디스플레이들 중 사용자(106) 또는 개별 디바이스(104)가 목표로 하고 있는 디스플레이 상에 있을 수 있다.
일부 실시예들에서, 공유 디바이스(102)는 센서(116)를 통해 개별 디바이스(104)의 위치를 검출할 수 있다. 이들 경우에, 센서(116)는 개별 디바이스(104) 및/또는 사용자(106)의 부속기관(appendage)의 움직임을 검출 및/또는 추적할 수 있다. 예를 들어, 센서(116)는 특정의 물품들[예컨대, 개별 디바이스(104) 등]의 움직임을 추적할 수 있는 그리고/또는 사람들[예컨대, 사용자(106) 등]의 움직임을 추적할 수 있는 움직임 검출 센서일 수 있다. 그에 따라, 사용자(106)는, 센서(116)에 의해 추적되는 개별 디바이스(104) 및/또는 부속기관을 움직이는 것에 의해, 디스플레이(114) 상에서의 객체의 객체 위치를 제어할 수 있다. 공유 디바이스(102)는 센서(116)에 의해 수신되는 개별 디바이스(104)의 움직임에 응답하여 객체 위치를 업데이트하고, 이어서 업데이트된 객체 위치에 객체(110)를 디스플레이할 수 있다.
공유 디바이스(102)는 신호(예컨대, 종료 신호 등)의 수신, 미리 결정된 양의 시간의 만료, 개별 디바이스 또는 사용자의 움직임의 중단, 및/또는 다른 트리거링 이벤트들과 같은, 트리거 이벤트에 응답하여 객체를 특정의 객체 위치에 고정시킬 수 있다. 예를 들어, 공유 디바이스(102)가 정지 신호(stop signal)[예컨대, 사용자(106)가 개별 디바이스(104)로부터 손가락을 떼는 것 등]를 수신할 때까지, 객체 위치가 업데이트될 수 있다. 정지 신호를 수신하면, 공유 디바이스(102)는 객체 위치를 고정시키고 객체(110)를 고정된 객체 위치에 디스플레이할 수 있다.
다양한 실시예들에서, 개별 디바이스(104)는 객체 위치 정보를 공유 디바이스(102)로 전송할 수 있고, 이는 센서(116)를 사용함이 없이 디스플레이(114) 상에 객체(110)를 위치시키는 것을 가능하게 한다. 일부 실시예들에서, 객체 위치 정보는 개별 디바이스(104)의 카메라에 의해 포착된 이미지를 포함할 수 있다. 예를 들어, 이미지는 개별 디바이스(104) 상에 렌더링되는 객체(110)와 오버레이될 수 있는, 디스플레이(114)와 연관된 기준 특징들을 포함할 수 있다. 오버레이된 객체는 기준 특징들에 관련된 위치 정보를 제공할 수 있고, 이는 공유 디바이스(102)가, 객체 위치 정보의 분석 후에, 객체(110)를 디스플레이 상의 특정 위치들에 위치시킬 수 있게 할 수 있다. 사용자(106)가 개별 디바이스(104)(그리고 따라서 카메라)를 움직임에 따라, 객체와 기준 특징들의 상대 위치가 변할 수 있다. 개별 디바이스(104)는, 트리거링 이벤트의 발생 때까지, 객체 위치 정보를 계속하여 업데이트하고 공유 디바이스(102)로 전송할 수 있다. 객체 위치 정보를 수신할 때, 공유 디바이스(102)는 객체(110)를 객체 위치 정보에 대응하는 업데이트된 객체 위치에 디스플레이할 수 있다. 공유 디바이스는, 트리거 이벤트에 응답하여, 객체를 특정의 객체 위치에 고정시킬 수 있다. 예를 들어, 개별 디바이스(104)가 객체 위치 정보를 송신하는 것을 중단할 때까지, 객체 위치가 업데이트된다. 공유 디바이스(102)는 이어서 객체 위치를 고정시키고 객체(110)를 고정된 객체 위치에 디스플레이할 수 있다.
일부 실시예들에서, 환경(100)은 또한 서비스들(예컨대, 클라우드 저장소, 외부 콘텐츠 등)을 공유 디바이스(102) 및/또는 개별 디바이스(104)에 제공하는 서비스 공급자(120)와 연관된 서버(들)(118)를 포함할 수 있다. 어떤 경우에, 공유 디바이스(102)와 상호작용하는 동안, 개별 디바이스(104)는 네트워크(108)를 통해 서비스 공급자(120)의 서비스들에 액세스할 수 있다. 예를 들어, 사용자(106)는 서비스 공급자(120)에 지도 서비스(mapping service)를 요청할 수 있다. 공유 디바이스(102)는 지도 정보(예컨대, 지도)를 수신하고 지도 정보를 디스플레이(114) 상에 제시할 수 있다. 어떤 지도 정보가 또한 개별 디바이스(104)에도 제공될 수 있지만, 이 지도 정보가 공유 디바이스(102)에 제공되는 지도 정보와 상이할 수 있다.
예시적인 아키텍처
도 2는 도 1에 도시된 공유 디바이스의 예시적인 아키텍처를 나타낸 것이다. 도 2에 도시된 공유 디바이스(102) 및 개별 디바이스(104)는 가능한 컴퓨팅 디바이스들의 예에 불과하며, 컴퓨터 및 네트워크 아키텍처들의 용도 또는 기능의 범주에 관한 어떤 제한을 암시하도록 의도되어 있지 않다. 공유 디바이스(102) 및 개별 디바이스(104)는 예시적인 컴퓨팅 디바이스에 예시된 구성요소들 중 임의의 것 또는 그들의 임의의 조합에 관련된 어떤 의존관계 또는 요구사항을 가지는 것으로 해석되도록 의도되어 있지 않다.
다른 대안으로서 또는 그에 부가하여, 공유 디바이스(102) 및 개별 디바이스(104)에 관해 본 명세서에 기술된 기능은, 적어도 부분적으로, 하나 이상의 하드웨어 논리 구성요소들에 의해 수행될 수 있다. 제한이 아닌 예로서, 사용될 수 있는 예시적인 유형의 하드웨어 논리 구성요소들은 FPGA(Field-programmable Gate Array), ASIC(Program-specific Integrated Circuit), ASSP(Program-specific Standard Product), SOC(System-on-a-chip system), CPLD(Complex Programmable Logic Device) 등을 포함한다.
일부 실시예들에서, 공유 디바이스(102)는 적어도 하나의 처리 유닛(202) 및 시스템 메모리(204)를 포함할 수 있다. 컴퓨팅 디바이스의 정확한 구성 및 유형에 따라, 시스템 메모리(204)는 (RAM과 같은) 휘발성, (ROM, 플래시 메모리 등과 같은) 비휘발성, 또는 이 둘의 어떤 조합일 수 있다. 시스템 메모리(204)는 전형적으로 운영 체제(206), 하나 이상의 프로그램 모듈들(208)을 포함하고, 프로그램 데이터(212)는 물론 디바이스 데이터(212)를 포함할 수 있다. 어떤 경우에, 디바이스 데이터(212)는 공유 디바이스(102)와 연결된 적이 있는 그리고/또는 공유 디바이스(102)와 연결되어야 하는 디바이스들[예컨대, 개별 디바이스(104)]과 연관된 정보를 저장할 수 있다. 프로그램 모듈들(208)은 통신 모듈(214), 센서 모듈(216), 위치 모듈(218), 디스플레이 모듈(220), 및 편집 모듈(222)을 포함할 수 있고, 각각이 차례대로 논의된다.
통신 모듈(214)은 개별 디바이스(104) 및/또는 서버(118)와 같은 디바이스들과 통신하도록 구성될 수 있다. 일부 실시예들에서, 통신 모듈(214)은 네트워크(108)를 통해 개별 디바이스(104)와 연결을 초기화 및 설정할 수 있다. 예를 들어, 통신 모듈(214)은 블루투스 신호를 복조하고 그리고/또는 개별 디바이스(104)와 같은 블루투스 디바이스의 상태들 및 모드들을 제어할 수 있다. 어떤 경우에, 개별 디바이스가 공유 디바이스의 근처에 있을 때, 통신 모듈(214)은 블루투스 링크와 같은 연결을 생성하기 위해 개별 디바이스(104)와 핸드쉐이크를 수행 및/또는 설정할 수 있다. 이들 경우에, 핸드쉐이크 동안 공유 디바이스(102)와 개별 디바이스(104) 사이에서 인증 자격증명(authentication credential)들이 교환될 수 있다.
공유 디바이스(102)와 개별 디바이스(104) 사이에 연결이 설정된 후에, 통신 모듈(214)은 디바이스들 사이에 설정된 통신 프로토콜을 통해 개별 디바이스(104)로부터 객체(110)를 수신할 수 있다. 수신된 객체(110)는 디스플레이 모듈(220)에 의해 디스플레이(114) 상의 초기 객체 위치에 디스플레이될 수 있다. 일부 실시예들에서, 디스플레이 모듈(220)은 객체(110)를 표현할 디스플레이(114) 상의 초기 객체 위치에 음영(shadow)을 보여줄 수 있다. 사용자(106)의 움직임에 응답하여, 음영이 디스플레이(114) 상에서 이동될 수 있다. 음영은 객체(110)의 렌더링, 객체(110)의 반투명 렌더링, 자리 표시자(placeholder), 및/또는 다른 정보/이미지를 포함할 수 있다. 일부 실시예들에서, 디스플레이(114)는 다수의 디스플레이들 및/또는 다른 디바이스들을 포함할 수 있고, 개별 디바이스가 목표로 하고 있는 곳에 기초하여, 음영이 적절한 디스플레이 상에 나타날 수 있다.
일부 실시예들에서, 초기 객체 위치는, 공유 디바이스(102) 및/또는 개별 디바이스(104)가 처리하고 있는 작업과 같은, 미리 결정된 규칙 및/또는 컨텍스트에 기초하여 결정될 수 있다. 어떤 경우에, 초기 객체 위치는 또한 디스플레이까지의 거리와 관련한 개별 디바이스(104) 또는 사용자(106)의 부속기관의 위치에 기초하여 결정될 수 있다.
센서 모듈(216)은 개별 디바이스(104) 및/또는 사용자(106)의 부속기관의 위치와 같은, 제어 위치를 검출하도록 구성될 수 있다. 예를 들어, 센서(116)와 결합하여, 센서 모듈(216)은 신체의 일부 또는 전부의 3 차원(3D) 움직임 포착, 얼굴 인식 및 음성 인식을 수행할 수 있다. 일부 실시예들에서, 센서 모듈(216)은 제어 위치의 하나 이상의 변화들을 검출 및/또는 추적할 수 있다. 변화들에 응답하여, 위치확인 모듈(218)은 디스플레이(114) 상에 제시되는 객체(110)의 객체 위치를 업데이트할 수 있다. 이어서, 위치확인 모듈(218)은, 트리거링 이벤트에 응답하여, 객체(110)를 디스플레이(114) 상의 업데이트된 객체 위치에 고정시킬 수 있다. 트리거링 이벤트는 사용자(106)가 개별 디바이스(104)의 터치 스크린으로부터 자신의 손가락을 떼는 것과 같은 정지 제스처(stop gesture)를 수행한 후에, 미리 결정된 양의 시간 후에, 움직임의 정지 후에, 기타 경우에 전송되는 코맨드(command)일 수 있다.
일부 실시예들에서, 센서 모듈(216)은, 감지 디바이스(116)를 통해, 다수의 개별 디바이스들을 조작하는 다수의 사용자들을 추적할 수 있다. 어떤 경우에, 공유 디바이스(102)는 개개의 사용자들의 특징들을 식별하는 것에 의해 다수의 사용자들을 추적하고 개개의 사용자들을 개개의 사용자들이 조작하고 있는 하나 이상의 개별 디바이스들과 연관시킬 수 있다. 예를 들어, 공유 디바이스(102)는 사용자 특성들(예컨대, 음성, 얼굴 특징 및/또는 신체 특징 등)에 기초하여 및/또는 개개의 사용자의 개개의 사용자와 연관된 다른 추적 정보[예컨대, 디바이스 식별자, 마커 식별자(marker identifier), 자동 등록(self registration) 등]에 기초하여 개개의 사용자를 식별할 수 있다.
프로그램 모듈들(208)은 또한 객체가 고정된 후에 개별 디바이스(104)의 움직임 또는 사용자 부속기관의 제스처들에 기초하여 객체(110)를 편집 - 도 7에서 더 상세히 논의됨 - 하도록 구성되어 있는 편집 모듈(222)을 포함할 수 있다. 예를 들어, 사용자(106)는 객체(110)를 회전시키고, 객체(110)의 크기 및/또는 콘트라스트를 변경하며, 객체(110)의 일부분만을 크로핑(crop)하고 그리고/또는 남겨 두며, 그리고/또는 객체(110)와 연관된 주석을 추가할 수 있다.
일부 실시예들에서, 운영 체제(206)는 구성요소(component)(속성 및 이벤트를 포함함), 객체, 상속(inheritance), 다형성(polymorphism), 리플렉션(reflection)을 지원하는 구성요소 기반 프레임워크(component-based framework)를 포함하고, 운영 체제(206)는 객체 지향 구성요소 기반 API(application programming interface)를 제공할 수 있다. 다시 말하지만, 단말(terminal)이 더 적은 수의 구성요소들을 가질 수 있지만, 이러한 기본적인 구성을 가질 수 있는 컴퓨팅 디바이스와 상호작용할 것이다.
공유 디바이스(102)는 부가의 특징들 또는 기능을 가질 수 있다. 예를 들어, 공유 디바이스(102)는 또한, 예를 들어, 자기 디스크, 광 디스크, 또는 테이프와 같은 부가의 데이터 저장 디바이스들(이동식 및/또는 비이동식)을 포함할 수 있다. 이러한 부가의 저장소가 도 2에서 이동식 저장소(224) 및 비이동식 저장소(226)로 도시되어 있다. 컴퓨터 판독가능 매체는 적어도 2 가지 유형의 컴퓨터 판독가능 매체(즉, 컴퓨터 저장 매체 및 통신 매체)를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보를 저장하기 위해 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함할 수 있다. 시스템 메모리(204), 이동식 저장소(224), 및 비이동식 저장소(226) 모두가 컴퓨터 저장 매체의 예이다. 컴퓨터 저장 매체는 원하는 정보를 저장하는 데 사용될 수 있고 공유 디바이스(102)에 의해 액세스될 수 있는, RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 다른 광 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 다른 자기 저장 디바이스, 또는 임의의 다른 매체를 포함한다. 임의의 이러한 컴퓨터 저장 매체가 공유 디바이스(102)의 일부일 수 있다. 더욱이, 컴퓨터 판독가능 매체는, 프로세서 유닛(들)(202)에 의해 실행될 때, 공유 디바이스(102)로 하여금 본 명세서에 기술된 다양한 기능들 및/또는 동작들을 수행하게 하는 컴퓨터 실행가능 명령어들을 포함할 수 있다.
이와 달리, 통신 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터를 반송파 또는 다른 전송 메커니즘과 같은 피변조 데이터 신호(modulated data signal)에 구현할 수 있다. 본 명세서에서 정의된 바와 같이, 컴퓨터 저장 매체는 통신 매체를 포함하지 않는다.
공유 디바이스(102)는 또한 키보드, 마우스, 펜, 음성 입력 디바이스, 터치 입력 디바이스(예컨대, 스타일러스, 펜 등), 터치 스크린 디바이스, 탐색 디바이스(navigation device)(예컨대, 트랙 패드, 마우스 등) 등과 같은 입력 디바이스(들)(228)를 가질 수 있다. 일부 실시예들에서, 입력 방법들이 NUI(Natural User Interface)를 통해 구현될 수 있다. NUI는 사용자가, 마우스, 키보드, 리모콘 등과 같은 입력 디바이스들에 의해 부과되는 인위적 제약조건들 없이, "자연스러운" 방식으로 디바이스와 상호작용할 수 있게 하는 임의의 인터페이스 기술을 포함할 수 있다. NUI 방법의 예는 음성 인식, 터치 및 스타일러스 인식, 화면 상에서 이루어지는 제스처 인식 및 화면에 인접하여 이루어지는 제스처 인식 둘 다, 에어 제스처(air gesture), 머리 및 눈 추적, 음성 및 발화(voice and speech), 시각(vision), 터치, 제스처, 및 기계 지능(machine intelligence)에 의존하는 것들을 포함할 수 있다. NUI 기술들의 카테고리들은 터치 감응 디스플레이, 음성 및 발화 인식, 의도 및 목표 이해, 깊이 카메라(예컨대, 입체 카메라 시스템, 적외선 카메라 시스템, RGB 카메라 시스템 및 이들의 조합들)를 사용한 움직임 제스처 검출, 가속도계/자이로스코프를 사용한 움직임 제스처 검출, 얼굴 인식, 3D 디스플레이, 머리, 눈 및 시선 추적, 몰입 증강 현실 및 가상 현실 시스템 - 이들 모두는 보다 자연스러운 인터페이스를 제공함 - 은 물론, 전기장 감지 전극들을 사용하여 뇌 활동을 감지하는 기술들(예컨대, EEG 및 관련 방법들)을 포함할 수 있다.
일부 실시예들에서, 공유 디바이스(102)는 NUI와 같은 방법들을 통해 발생된 입력 신호를 수신하는 그리고/또는 그에 응답하는 센서(116)를 포함할 수 있다. 예를 들어, 센서(116)는 신체의 일부 또는 전부의 3D 움직임 포착, 얼굴 인식 및 음성 인식을 위해 사용되는 신호들을 수신하는 그리고/또는 그에 응답하는 움직임 감지 입력 디바이스일 수 있다. 어떤 경우에, 센서(116)는 사용자의 신체(예컨대, 골격 및 부속기관)를 추적하는 것에 의해 다양한 조건들(예컨대, 칠흑 같은 어둠)에서 한 명 이상의 사용자들을 추적할 수 있다. 부속기관은 사용자의 팔, 다리, 및 머리를 포함할 수 있다. 어떤 경우에, 표현(representation)이 깊이 감지(depth-sensing) 또는 광 흐름(optical flow) 기술들을 통해 추적될 수 있고, 특정의 신체 부위들의 식별을 꼭 필요로 하는 것은 아닐 수 있다.
공유 디바이스(102)는 또한 디스플레이[예컨대, 디스플레이(114)], 스피커, 프린터 등과 같은 출력 디바이스(들)(230)를 포함할 수 있다. 공유 디바이스(102)는 또한 그 디바이스가 네트워크(108)와 같은 네트워크를 통하는 등에 의해 다른 컴퓨팅 디바이스들[예컨대, 개별 디바이스(104)]과 통신할 수 있게 하는 통신 연결들(232)을 포함할 수 있다.
도 3은 도 1에 도시된 개별 디바이스의 예시적인 아키텍처(300)를 나타낸 것이다. 일부 실시예들에서, 개별 디바이스(104)는 적어도 하나의 처리 유닛(302) 및 시스템 메모리(304)를 포함할 수 있다. 컴퓨팅 디바이스의 정확한 구성 및 유형에 따라, 시스템 메모리(304)는 휘발성(RAM 등), 비휘발성(ROM, 플래시 메모리 등), 또는 이 둘의 어떤 조합일 수 있다. 개별 디바이스(104)는 또한 이동식 저장소(306) 및 비이동식 저장소(308)와 같은 데이터 저장 디바이스들을 포함할 수 있다. 시스템 메모리(304), 이동식 저장소(306), 및 비이동식 저장소(308) 모두가 컴퓨터 저장 매체의 예이다.
시스템 메모리(304)는 전형적으로 운영 체제(310), 하나 이상의 프로그램 모듈들(312)을 포함하고, 프로그램 데이터(314)는 물론 디바이스 데이터(316)를 포함할 수 있다. 어떤 경우에, 디바이스 데이터(316)는 개별 디바이스(104)와 연결된 적이 있는 그리고/또는 개별 디바이스(104)와 연결되어야 하는 디바이스들[예컨대, 공유 디바이스(102)]과 연관된 정보를 저장할 수 있다. 프로그램 모듈들(312)은 통신 모듈(318), 위치확인 모듈(320), 및 편집 모듈(322)을 포함할 수 있고, 각각이 차례대로 논의된다.
통신 모듈(318)은 공유 디바이스(102) 및/또는 서버(118)와 같은 디바이스들과 통신하도록 구성되어 있다. 일부 실시예들에서, 통신 모듈(318)은, 예를 들어, 블루투스 연결, 네트워크(108), 또는 다른 연결 프로토콜을 통해, 공유 디바이스(102)와 연결을 초기화 및 설정할 수 있다.
공유 디바이스(102)와 개별 디바이스(104) 사이에 연결이 설정된 후에, 통신 모듈(318)은 사용자(106)로부터 객체(110)의 선택을 수신하고, 공유 디바이스(102)와 설정된 통신 프로토콜을 통해 객체를 공유 디바이스(102)로 전송할 수 있다.
위치확인 모듈(320)은 공유 디바이스(102)의 디스플레이(114) 상에서의 객체 위치를 위치확인하도록 구성되어 있다. 일부 실시예들에서, 객체 위치는 디스플레이(114)의 기준 특징들과 관련한 객체(110)의 위치를 포함할 수 있다. 기준 특징들은 개별 디바이스(104)의 카메라에 의해 포착될 수 있다. 이들 경우에, 기준 특징들은 디스플레이(114) 상에 보여지는 이미지 또는 아이콘과 같은, 디스플레이(114) 상에 보여지는 객체들에 기초하여 결정될 수 있다. 어떤 경우에, 기준 특징들은 디스플레이(114)의 프레임과 같은 디스플레이의 외관 특징에 기초하여 결정될 수 있다.
위치확인 모듈(320)은 또한 개별 디바이스(104) 및/또는 사용자(106)의 부속기관의 움직임에 응답하여 객체 위치를 업데이트할 수 있다. 그에 따라, 사용자(106)는, 개별 디바이스(104) 및/또는 부속기관을 움직이는 것에 의해, 디스플레이(114) 상에서의 객체의 객체 위치를 제어할 수 있다. 객체 위치 및/또는 업데이트된 객체 위치의 정보는 통신 모듈(318)에 의해 공유 디바이스(102)로 전송될 수 있고, 공유 디바이스(102)는 이어서 객체를 디스플레이(114) 상의 객체 위치 또는 업데이트된 객체 위치에 디스플레이할 수 있다. 트리거링 이벤트의 발생 때까지 객체 위치가 업데이트된다. 예를 들어, 트리거링 이벤트는, 객체 위치를 고정시키고 객체(110)를 고정된 객체 위치에 디스플레이하기 위해, 통신 모듈(318)에 의해 공유 디바이스(102)로 전송되는 코맨드일 수 있다.
일부 실시예들에서, 사용자(106)는 디스플레이(114)의 배경 이미지를 개별 디바이스(104)의 카메라로부터의 이미지처럼 제공하는 것에 의해 객체(110)를 붙잡고 있다는 인상을 받을 수 있다. 그에 따라, 사용자(106)는 개별 디바이스(104)를 움직이는 것에 의해 객체 위치를 정확하게 제어할 수 있다. 어떤 경우에, 위치확인 모듈은 시각, 오디오 및/또는 공유 디바이스(102)와 통신하는 다른 방식들을 사용하여 디스플레이(114)에 상대적인 개별 디바이스(104)의 제어 위치를 추적할 수 있다.
프로그램 모듈들(312)은 또한 객체가 고정된 후의 개별 디바이스(104)의 움직임 또는 사용자 부속기관의 제스처들에 기초하여 객체(110)를 편집하고 그리고/또는 객체(110)를 편집하는 것을 가능하게 - 도 7에서 더 상세히 논의됨 - 하도록 구성되어 있는 편집 모듈(322)을 포함할 수 있다. 예를 들어, 사용자(106)는 객체(110)를 회전시키고, 객체(110)의 크기 및/또는 콘트라스트를 변경하며, 객체(110)의 일부분만을 크로핑하고 그리고/또는 남겨 두며, 그리고/또는 객체(110)와 연관된 주석을 추가할 수 있다.
개별 디바이스(104)는 또한 터치 스크린 디바이스, 물리 버튼(physical button)(메뉴 버튼, 키보드 등), 터치 입력 디바이스(스타일러스, 펜 등), 음성 입력 디바이스, 카메라, 광 센서, 마이크 등과 같은 입력 디바이스(들)(324)를 가질 수 있다. 일부 실시예들에서, 입력 방법들이 NUI를 통해 구현될 수 있다. 일부 실시예들에서, 개별 디바이스(104)는 카메라와 같은 감지 디바이스(326)를 포함한다.
일부 실시예들에서, 개별 디바이스(104)는 디스플레이(예컨대, 터치 스크린), 스피커 등과 같은 출력 디바이스(들)(328)를 포함한다. 개별 디바이스(104)는 또한 그 디바이스가 네트워크를 통하는 등에 의해 다른 컴퓨팅 디바이스들[예컨대, 공유 디바이스(102)]과 통신할 수 있게 하는 통신 연결들(330)을 포함할 수 있다. 이 네트워크들은 네트워크(108)와 같은 무선 네트워크 뿐만 아니라 유선 네트워크도 포함할 수 있다.
예시적인 동작
도 4는 객체의 특정 위치가 공유 디바이스에 제공되게 하는 예시적인 프로세스(400)를 나타낸 것이다. 프로세스(400) 및, 프로세스들(500 및 600)을 비롯한, 본 개시 내용 전체에 걸쳐 기술되는 다른 프로세스들이, 하드웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있는 동작들의 시퀀스들을 나타내는 논리 흐름 그래프(logical flow graph)에 블록들의 모음으로서 예시되어 있다. 소프트웨어와 관련하여, 블록들은, 하나 이상의 프로세서들에 의해 실행될 때, 하나 이상의 프로세서들로 하여금 언급된 동작들을 수행하게 하는 컴퓨터 실행가능 명령어들을 나타낸다. 일반적으로, 컴퓨터 실행가능 명령어들은 특정의 기능들을 수행하거나 특정의 추상 데이터 유형들을 구현하는 루틴, 프로그램, 객체, 구성요소, 데이터 구조 등을 포함한다. 동작들이 기술되어 있는 순서가 제한으로서 해석되도록 의도되어 있지 않으며, 임의의 수의 기술된 블록들이 프로세스를 구현하기 위해 임의의 순서로 및/또는 병렬로 결합될 수 있다.
402에서, 공유 디바이스(102)와 개별 디바이스(104)는 공유 디바이스(102)와 개별 디바이스(104) 사이의 통신을 가능하게 하기 위한 연결을 설정할 수 있다. 예를 들어, 공유 디바이스(102)는 정보의 페어링 또는 핸드쉐이크, 자격 증명들의 교환 등과 같은, 연결 프로토콜을 수행하는 것에 의해 개별 디바이스(104)와 연결을 설정할 수 있다. 연결은 어느 한 디바이스에 의해 개시될 수 있다. 일부 실시예들에서, 디바이스들이 서로로부터 미리 결정된 거리 내에 있을 때, 서로 터치할 때, 기타와 같은 때에, 디바이스들은 연결을 개시할 수 있다.
404에서, 객체가 개별 디바이스(104)로부터 공유 디바이스(102)로 전송되고 디스플레이(114) 상에서 초기 객체 위치(디스플레이 상의 위치)에 위치될 수 있다.
406에서, 객체 위치가 개별 디바이스(104) 및/또는 사용자(106)의 부속기관의 움직임에 응답하여 업데이트될 수 있다. 움직임은 공유 디바이스(102), 개별 디바이스(104), 또는 둘 다에 의해 검출될 수 있다. 예를 들어, 사용자(106)는 디스플레이(114) 상의 다른 객체들에 대해 위로 또는 아래로 움직일 수 있다. 예를 들어, 공유 디바이스(102)는 센서(116), 디스플레이(114), 또는 다른 위치와 관련한 움직임을 검출하기 위해 센서(116)를 사용할 수 있다. 개별 디바이스(104)는 디스플레이(114)와 연관된 기준 특징들에 기초하여 움직임을 검출할 수 있는 감지 디바이스(326)로부터의 정보에 기초하여 거리를 결정할 수 있다.
408에서, 객체 위치가 트리거링 이벤트에 응답하여 고정될 수 있고, 객체(110)가 디스플레이(114) 상의 고정된 객체 위치에 디스플레이될 수 있다. 일부 실시예들에서, 객체 위치가 고정된 후에, 사용자(106)는 객체(110)를 편집할 수 있다(예를 들어, 배향, 크기, 콘트라스트, 또는 주석을 변경 및/또는 추가할 수 있고, 이는 도 7에서 더 상세히 논의됨). 일부 실시예들에서, 객체는 고정된 후에 다른 코맨드에 기초하여 다시 이동될 수 있다.
도 5는 객체의 특정 위치가 컴퓨팅 디바이스에 제공되게 하는 예시적인 프로세스(500)를 나타낸 것이고, 이 경우 공유 디바이스(102)가 개별 디바이스(104) 또는 사용자의 위치를 검출한다.
502 및 504에서, 공유 디바이스(102)와 개별 디바이스(104)는 공유 디바이스(102)와 개별 디바이스(104) 사이의 통신을 가능하게 하기 위한 연결을 설정할 수 있다. 예를 들어, 공유 디바이스(102)는 정보의 페어링 또는 핸드쉐이크, 자격 증명들의 교환 등과 같은, 연결 프로토콜을 수행하는 것에 의해 개별 디바이스와 연결을 설정할 수 있다. 연결은 어느 한 디바이스에 의해 개시될 수 있다. 일부 실시예들에서, 디바이스들이 서로로부터 미리 결정된 거리 내에 있을 때, 서로 터치할 때, 기타와 같은 때에, 디바이스들은 연결을 개시할 수 있다.
506에서, 개별 디바이스(104)는 객체(110)의 선택을 수신할 수 있다. 예를 들어, 사용자(106)는 개별 디바이스(104)와 연관된 화면을 하나 이상의 손가락들 및/또는 스타일러스로 터치하는 것에 의해 객체(110)를 선택할 수 있다. 어떤 경우에, 객체(110)의 선택은 사용자(106)로부터의 오디오 입력의 음성 인식에 의해 구현될 수 있다. 508에서, 객체(110)가 공유 디바이스(102)로 전송될 수 있다.
510에서, 객체를 수신한 후에, 512에서, 공유 디바이스(102)는 객체(110)를 초기 객체 위치에 디스플레이할 수 있다. 어떤 경우에, 초기 객체 위치는, 공유 디바이스(102) 또는 개별 디바이스(104)가 처리하고 있는 작업과 같은, 미리 결정된 규칙 또는 컨텍스트에 기초하여 결정될 수 있다.
514에서, 공유 디바이스(102)는 개별 디바이스(104) 및/또는 사용자(106)와 연관된 위치(즉, 제어 위치)를 검출할 수 있다. 예를 들어, 공유 디바이스(102)의 센서(116)는 개별 디바이스(104) 또는 개별 디바이스(104)와 연관된 사용자 부속기관을 움직임 센서를 사용하여 추적할 수 있다.
516에서, 개별 디바이스(104)와 연관된 제어 위치의 변화에 응답하여, 공유 디바이스(102)는 디스플레이(114) 상에서 객체(110)를 움직일 수 있다.
518에서, 공유 디바이스(102)는 트리거링 이벤트가 발생했는지를 판정할 수 있다. 트리거링 이벤트는 신호, 미리 결정된 양의 시간 동안 움직임이 없는 것, 일정량의 시간의 만료 등일 수 있다. 트리거링 이벤트가 발생하면, 개별 디바이스(104)는, 520에서 발생된 코맨드를, 522에서 공유 디바이스(522)로 전송할 수 있다. 코맨드를 수신한 후에[즉, 동작(518)의 "예" 분기], 524에서, 공유 디바이스(102)는 객체 위치를 고정시키고 객체(110)를 디스플레이의 고정된 위치에 디스플레이할 수 있다. 그렇지만, 트리거링 이벤트가 코맨드를 필요로 하지 않는 경우, 동작들(520 및 522)의 수행 없이, 동작(524)에서 객체가 고정될 수 있다.
정지 신호가 수신되지 않는 경우[즉, 동작(518)의 "아니오" 분기], 동작들(514 내지 516)이 루프 프로세스에 의해 수행될 수 있다.
도 6은 객체의 특정 위치가 컴퓨팅 디바이스에 제공되게 하는 예시적인 프로세스(600)를 나타낸 것이고, 이 경우 개별 디바이스(104)가 위치 정보를 공유 디바이스(102)에 제공한다.
602 및 604에서, 공유 디바이스(102)와 개별 디바이스(104)는 공유 디바이스(102)와 개별 디바이스(104) 사이의 통신을 가능하게 하기 위한 연결을 설정할 수 있다. 예를 들어, 개별 디바이스(104)는 정보의 페어링 또는 핸드쉐이크, 자격 증명들의 교환 등과 같은, 연결 프로토콜을 수행하는 것에 의해 공유 디바이스와 연결을 설정할 수 있다. 연결은 어느 한 디바이스에 의해 개시될 수 있다. 일부 실시예들에서, 디바이스들이 서로로부터 미리 결정된 거리 내에 있을 때, 서로 터치할 때, 기타와 같은 때에, 디바이스들은 연결을 개시할 수 있다.
606에서, 개별 디바이스(104)는 객체(110)의 선택을 수신할 수 있고, 이 객체(110)는, 608에서 공유 디바이스(102)로 전송되고, 610에서 공유 디바이스(102)에 의해 수신될 수 있다.
612에서, 개별 디바이스(104)는 공유 디바이스(102)의 디스플레이(114) 상에서의 객체 위치를 위치확인할 수 있다. 일부 실시예들에서, 객체 위치는 디스플레이(114)의 기준 특징들과 관련한 객체(110)의 위치를 포함할 수 있다. 예를 들어, 디스플레이(114)를 카메라에 의해 포착된 배경 이미지로서 보여주는 것에 의해, 개별 디바이스(104)는 객체(110)가 디스플레이(114) 상에서 어디에 위치되어 있는지를 사용자(106)가 확인할 수 있게 할 수 있다.
614에서, 개별 디바이스(104)는 개별 디바이스(104) 및/또는 사용자(106)의 부속기관의 움직임에 응답하여 객체 위치를 업데이트할 수 있다.
616에서, 개별 디바이스(104)는 객체 위치 및/또는 업데이트된 객체 위치와 연관된 정보를 공유 디바이스(102)로 전송할 수 있다. 618에서, 정보를 수신한 후에, 공유 디바이스(102)는 객체(110)를 디스플레이(114) 상의 업데이트된 객체 위치에 디스플레이할 수 있다.
618에서, 개별 디바이스(104)는 트리거링 이벤트가 발생했는지를 판정할 수 있다. 트리거링 이벤트는 신호, 미리 결정된 양의 시간 동안 움직임이 없는 것, 일정량의 시간의 만료 등일 수 있다. 트리거링 이벤트가 발생하면, 620에서, 개별 디바이스(104)는 코맨드를 공유 디바이스로 전송할 수 있다. 코맨드를 수신한 후에[즉, 동작(618)의 "예" 분기], 624에서, 공유 디바이스(102)는 객체 위치를 고정시키고 객체(110)를 디스플레이의 고정된 위치에 디스플레이할 수 있다. 트리거링 이벤트가 발생하지 않는 경우[즉, 동작(618)의 "아니오" 분기], 동작들(612 내지 618)이 루프 프로세스에 의해 수행될 수 있다.
예시적인 인터페이스
도 7은 공유 디바이스(102)로 전송되는 객체들을 편집하기 위한 예시적인 사용자 인터페이스(user interface, UI)(700)를 나타낸 것이다. UI(700)는 공유 디바이스(102) 또는 개별 디바이스(104)에 의해 제시될 수 있다. 도 7이 하나의 예시적인 UI를 나타내고 있지만, 공유 디바이스(102)로 전송되는 객체들을 편집하기 위해 다수의 다른 그래픽 또는 비그래픽 사용자 인터페이스들이 이용될 수 있다는 것을 잘 알 것이다.
UI(700)는 하나 이상의 옵션 섹션들, 예를 들어, 객체 배향(702), 객체 크기(704), 객체 콘트라스트(710), 및 주석(712)을 포함할 수 있다. 사용자(106)는, 객체(110)가 디스플레이(114)의 객체 위치에 고정된 후에, 객체(110)를 편집하기 위해 하나 이상의 옵션 섹션들을 선택할 수 있다. 일부 실시예들에서, 사용자(106)가 이 옵션 섹션들 중 하나를 선택할 수 있게 하기 위해, 하나 이상의 옵션 섹션들이 한 번에 하나씩 노출(surface)되고 순환(cycle)될 수 있다.
일부 실시예들에서, 사용자(106)는 고정된 객체(110)를 선택하고, 이어서 객체(110)와 연관된 동작들(예컨대, 편집 또는 제거)을 수행할 수 있다. 일부 실시예들에서, 객체 선택을 용이하게 하기 위해, 디스플레이(114)는 신호(예컨대, 초기화 신호 등)의 수신, 미리 결정된 양의 시간의 만료, 및/또는 다른 트리거 이벤트들과 같은, 트리거 이벤트에 응답하여 음영을 특정의 위치에 보여줄 수 있다. 어떤 경우에, 사용자(106)는 [예컨대, 개별 디바이스(104)를 통해] 음영을 객체(110) 상으로 이동시키는 것, 제스처[예컨대, 클러치(clutch)]를 행하는 것, 및/또는 개별 디바이스(104)와 연관된 동작을 수행하는 것에 의해 객체(110)를 선택할 수 있다. 다른 경우에, 사용자(106)는 음영을 객체(110) 상으로 이동시키고 미리 결정된 기간(예컨대, 3 초) 동안 유지(hold)하는 것에 의해 객체(110)를 선택할 수 있다.
어떤 경우에, 객체 배향(702)이 선택되면, 사용자는 710에 도시된 바와 같이 객체(110)의 배향을 변경할 수 있다. 예를 들어, 사용자는 개별 디바이스를 원하는 배향에 대응하는 특정의 각도로 회전시키는 것에 의해 객체(110)의 배향을 제어할 수 있다.
어떤 경우에, 객체 크기(704)가 선택되고, 사용자는 712에 도시된 바와 같이 객체(110)의 크기를 변경할 수 있다. 예를 들어, 사용자는 사용자(106)의 초기 위치와 관련하여 디스플레이에 더 가깝게 또는 디스플레이(114)로부터 더 멀리 이동시키는 것에 의해 객체(110)의 크기를 증가시킬 수 있다.
이와 유사하게, 객체 콘트라스트(706) 및 주석(708) 중 하나가 선택되는 경우, 사용자는 714에 도시된 바와 같이 객체(110)의 콘트라스트를 변경하거나, 716에 도시된 바와 같이 객체(110)와 연관된 주석을 추가할 수 있다.
일부 실시예들에서, 객체(110)의 특징들[예컨대, 의미(semantics)] 및/또는 객체(110)와 연관된 동작들(예컨대, 고정 동작, 및 편집 동작)은 한 명 이상의 사용자들, 그의 디바이스들, 및 공유 디스플레이(또는 다른 자원) 사이의 거리 및/또는 상대 몸체 배향(relative body orientation)에 의존할수 있다. 예를 들어, 사용자(106)는 센서(116) 또는 디스플레이(114)로부터 멀어지는 쪽으로 향해 있을 때 한정된 또는 제한된 동작들을 가질 수 있다. 예를 들어, 사용자(106)가 이용할 수 있는 동작들은 센서(116)와 사용자(106) 또는 개별 디바이스(104) 사이의 거리에 기초하여 결정될 수 있다. 예를 들어, 사용자(106)가 이용할 수 있는 동작들은 센서(116)와 관련한 사용자(106)의 배향에 기초하여 결정될 수 있다.
결론
발명 요지가 구조적 특징들 및/또는 방법적 동작들과 관련하여 기술되어 있지만, 첨부된 청구범위에 한정되어 있는 발명 요지가 앞서 기술된 구체적인 특징들 또는 동작들로 꼭 제한될 필요는 없다는 것을 잘 알 것이다. 오히려, 구체적인 특징들 및 동작들은 청구항들을 구현하는 예시적인 형태들로서 개시되어 있다.

Claims (20)

  1. 객체를 공유하기 위한 컴퓨터로 구현된 방법에 있어서,
    공유 디바이스에 의해 컴퓨팅 디바이스로부터, 상기 공유 디바이스에 복사하기 위해 상기 컴퓨팅 디바이스에서 사용자에 의해 선택된 객체를 수신하는 단계;
    상기 공유 디바이스의 디스플레이 상에, 초기 객체 위치에서 상기 객체를 디스플레이하는 단계 - 상기 초기 객체 위치는 상기 공유 디바이스가 작동하고 있는 작업(task)에 대해 미리 결정된 규칙을 사용하여 결정됨 - ;
    상기 객체를 수신하는 것에 응답하여 상기 공유 디바이스에 의해, 상기 컴퓨팅 디바이스를 추적하기 위해 상기 공유 디바이스의 하나 이상의 카메라를 사용하여, 상기 객체가 수신되었던 상기 컴퓨팅 디바이스의 제어 위치를 검출하는 단계;
    상기 공유 디바이스에 의해, 상기 객체가 수신되었던 상기 컴퓨팅 디바이스의 제어 위치의 변화를 검출하는 단계 - 상기 제어 위치의 변화는, 상기 객체가 상기 디스플레이 상에서 상기 초기 객체 위치로부터 업데이트된 객체 위치로 이동하게 하는 사용자 입력에 대응함 - ;
    상기 사용자 입력을 검출하는 것에 적어도 부분적으로 기초하여, 상기 공유 디바이스의 디스플레이 상에 제시된 상기 객체의 객체 위치를 업데이트하는 단계; 및
    트리거링 이벤트에 응답하여 상기 디스플레이 상의 상기 업데이트된 객체 위치에서 상기 객체를 고정(locking)하는 단계
    를 포함하는, 객체를 공유하기 위한 컴퓨터로 구현된 방법.
  2. 제 1 항에 있어서,
    상기 객체를 수신하기 이전에 상기 공유 디바이스에 의해, 상기 디스플레이와 상기 컴퓨팅 디바이스 사이의 거리 또는 상기 디스플레에 대한 상기 컴퓨팅 디바이스를 조작하는 사용자의 배향(orientation)에 적어도 부분적으로 기초하여 상기 컴퓨팅 디바이스와의 연결을 설정(establish)하는 단계
    를 더 포함하는, 객체를 공유하기 위한 컴퓨터로 구현된 방법.
  3. 제 1 항에 있어서,
    상기 업데이트된 객체 위치에서 상기 객체의 배향, 콘트라스트, 또는 주석을 변경하는 단계
    를 더 포함하는, 객체를 공유하기 위한 컴퓨터로 구현된 방법.
  4. 제 1 항에 있어서,
    상기 하나 이상의 카메라는 상기 컴퓨팅 디바이스를 추적하기 위한 모션 센서로서 작동하는 것인, 객체를 공유하기 위한 컴퓨터로 구현된 방법.
  5. 제 1 항에 있어서,
    상기 객체가 수신되었던 상기 컴퓨팅 디바이스의 제어 위치의 변화는 상기 컴퓨팅 디바이스가 상기 디스플레이에 더 가깝게 이동되었음을 나타낸다고 결정한 것에 응답하여, 상기 디스플레이 상의 상기 객체의 크기를 증가시키는 단계
    를 더 포함하는, 객체를 공유하기 위한 컴퓨터로 구현된 방법.
  6. 제 1 항에 있어서,
    상기 초기 객체 위치는 상기 컴퓨팅 디바이스의 위치와 독립적으로 결정되는 것인, 객체를 공유하기 위한 컴퓨터로 구현된 방법.
  7. 컴퓨팅 디바이스에 있어서,
    하나 이상의 프로세서; 및
    하나 이상의 프로세서 상의 실행에 응답하여, 상기 하나 이상의 프로세서로 하여금 동작들을 수행하게 하는 컴퓨터 실행가능한 명령어들을 저장한 명령어들을 포함하는 메모리
    를 포함하고,
    상기 동작들은,
    상기 컴퓨팅 디바이스에서, 공유 디바이스에 복사하기 위한 객체의 사용자 선택를 수신하는 동작 - 상기 사용자 선택은 상기 컴퓨팅 디바이스의 사용자 인터페이스를 통해 수신된 입력을 포함함 - ;
    상기 컴퓨팅 디바이스로부터 상기 공유 디바이스로 상기 객체를 전송하는 동작;
    상기 컴퓨팅 디바이스로부터 상기 공유 디바이스로 객체 위치 정보를 전송하는 동작 - 상기 객체 위치 정보는 상기 공유 디바이스의 디스플레이 상에 디스플레이된 이미지와 관련한 상기 공유 디바이스의 디스플레이 상의 상기 객체에 대한 디스플레이 위치를 나타냄 - ; 및
    상기 공유 디바이스로 명령을 전송하는 동작 - 상기 명령은 상기 공유 디바이스로 하여금 미리 결정된 시간량의 만료에 응답하여 상기 디스플레이 상의 특정 객체 위치에서 상기 객체를 고정시키게 함 -
    을 포함하는 것인, 컴퓨팅 디바이스.
  8. 제 7 항에 있어서,
    상기 동작들은, 고정된 객체에 대한 하나 이상의 조작을 수행할 상기 고정된 객체의 선택을 수신하는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
  9. 제 7 항에 있어서,
    상기 객체 위치 정보는 상기 컴퓨팅 디바이스의 카메라로부터의 데이터에 적어도 부분적으로 기초하여 결정되는 것인, 컴퓨팅 디바이스.
  10. 제 9 항에 있어서,
    상기 공유 디바이스 상에 위치될 상기 객체의 이미지와 오버레이되는 상기 카메라에 의해 포착된 이미지를 상기 컴퓨팅 디바이스에서 디스플레이하는 동작
    을 더 포함하고,
    상기 객체 위치 정보를 전송하는 동작은, 상기 객체의 이미지와 오버레이되는 상기 이미지를 상기 공유 디바이스로 전송하는 동작을 포함하는 것인, 컴퓨팅 디바이스.
  11. 제 7 항에 있어서,
    상기 객체 위치 정보를 전송하는 동작은 업데이트된 객체 위치 정보를 전송하는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
  12. 제 7 항에 있어서,
    상기 미리 결정된 시간량은 상기 컴퓨팅 디바이스가 이동하지 않은 시간량을 포함하는 것인, 컴퓨팅 디바이스.
  13. 제 7 항에 있어서,
    상기 동작들은,
    상기 공유 디바이스와의 연결을 설정하는 동작; 및
    상기 공유 디바이스에 의해 구현되는 사용자 인터페이스 상의 상기 특정 객체 위치에서 상기 객체의 제시를 가능하게 하는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
  14. 제 7 항에 있어서,
    상기 동작들은, 상이한 미리 결정된 시구간 이후에 상기 특정 객체 위치를 업데이트하는 동작을 더 포함하는 것인, 컴퓨팅 디바이스.
  15. 제 7 항에 있어서,
    상기 공유 디바이스로 상기 객체를 전송하는 동작은, 상기 공유 디바이스에 복사하기 위한 상기 객체의 사용자 선택에 응답하여, 상기 공유 디바이스로 상기 객체를 전송하는 동작을 포함하는 것인, 컴퓨팅 디바이스.
  16. 객체를 공유하기 위한 컴퓨팅 디바이스에 있어서,
    하나 이상의 프로세서;
    하나 이상의 프로세서에 통신가능하게 결합되어 모바일 디바이스를 추적하도록 구성된 모션 센서; 및
    상기 하나 이상의 프로세서에 의해 실행가능한 복수의 컴포넌트를 유지하기위한 메모리
    를 포함하고,
    상기 복수의 컴포넌트는,
    상기 모바일 디바이스와의 연결을 설정하고 상기 모바일 디바이스로부터 객체를 수신하도록 구성된 통신 모듈 - 상기 객체는 상기 컴퓨팅 디바이스에 복사하기 위해 상기 모바일 디바이스에서 사용자에 의해 선택된 것임 - ,
    초기 위치에서 상기 객체를 디스플레이하도록 구성된 디스플레이 모듈 - 상기 초기 위치는 상기 컴퓨팅 디바이스가 작동하고 있는 작업에 기초하여 결정됨 - ,
    상기 모션 센서를 사용하여 상기 객체가 수신되었던 상기 모바일 디바이스의 제어 위치의 변화를 통해 디스플레이 상의 상기 모바일 디바이스에 의해 수신된 상기 객체와 상호작용하는 사용자 입력을 검출하도록 구성된 센서 모듈; 및
    상기 사용자 입력에 응답하여 상기 디스플레이 상에 제시된 상기 객체의 객체 위치를 업데이트하고, 트리거링 이벤트에 응답하여 상기 디스플레이 상에 제시된 상기 객체 위치에서 상기 객체를 고정하도록 구성된 위치 모듈을 포함하는 것인, 객체를 공유하기 위한 컴퓨팅 디바이스.
  17. 제 16 항에 있어서,
    상기 디스플레이 모듈은 또한, 상기 객체가 고정된 후에 상기 디스플레이 상의 상기 고정된 객체 위치에서 상기 객체의 제시가 행해지도록 구성되는 것인, 객체를 공유하기 위한 컴퓨팅 디바이스.
  18. 제 16 항에 있어서,
    상기 복수의 컴포넌트는, 상기 객체가 수신되었던 상기 모바일 디바이스의 움직임 또는 상기 모바일 디바이스와 연관된 사용자 부속기관(appendage)의 제스처에 적어도 부분적으로 기초하여 상기 객체를 편집하도록 구성된 편집 모듈을 더 포함하는 것인, 객체를 공유하기 위한 컴퓨팅 디바이스.
  19. 제 16 항에 있어서,
    상기 모션 센서는 또한, 복수의 상이한 사용자와 연관된 복수의 모바일 디바이스를 추적하도록 구성되는 것인, 객체를 공유하기 위한 컴퓨팅 디바이스.
  20. 제 16 항에 있어서,
    상기 통신 모듈은 또한, 상기 모바일 디바이스로부터 상기 트리거링 이벤트를 수신하도록 구성되는 것인, 객체를 공유하기 위한 컴퓨팅 디바이스.
KR1020157026979A 2013-03-04 2014-03-03 객체의 특정 위치가 디바이스에 제공되게 하는 방법 KR102213090B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361772458P 2013-03-04 2013-03-04
US61/772,458 2013-03-04
US13/830,124 2013-03-14
US13/830,124 US10139925B2 (en) 2013-03-04 2013-03-14 Causing specific location of an object provided to a device
PCT/US2014/019766 WO2014137857A1 (en) 2013-03-04 2014-03-03 Causing specific location of an object provided to a device

Publications (2)

Publication Number Publication Date
KR20150128765A KR20150128765A (ko) 2015-11-18
KR102213090B1 true KR102213090B1 (ko) 2021-02-04

Family

ID=51420726

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157026979A KR102213090B1 (ko) 2013-03-04 2014-03-03 객체의 특정 위치가 디바이스에 제공되게 하는 방법

Country Status (6)

Country Link
US (2) US10139925B2 (ko)
EP (1) EP2965164B1 (ko)
JP (1) JP6433923B2 (ko)
KR (1) KR102213090B1 (ko)
CN (1) CN105190469B (ko)
WO (1) WO2014137857A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9762851B1 (en) * 2016-05-31 2017-09-12 Microsoft Technology Licensing, Llc Shared experience with contextual augmentation
KR101788248B1 (ko) * 2017-03-02 2017-10-20 주식회사 미래엔 가상 현실과 증강 현실을 이용한 온라인 학습 시스템 및 방법
CN108572749A (zh) * 2017-03-14 2018-09-25 中兴通讯股份有限公司 一种终端控制方法和系统、设置适配装置、及移动终端
US11079995B1 (en) 2017-09-30 2021-08-03 Apple Inc. User interfaces for devices with multiple displays
US11422765B2 (en) 2018-07-10 2022-08-23 Apple Inc. Cross device interactions
KR102629412B1 (ko) * 2019-01-04 2024-01-26 삼성전자주식회사 외부 장치의 콘텐트를 편집하는 전자 장치 및 방법
US10852915B1 (en) 2019-05-06 2020-12-01 Apple Inc. User interfaces for sharing content with other electronic devices

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011133590A1 (en) 2010-04-19 2011-10-27 Amazon Technologies, Inc. Approaches for device location and communication

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03216720A (ja) * 1990-01-22 1991-09-24 Fujitsu Ltd デジタイザによる座標入力方法
US5818425A (en) * 1996-04-03 1998-10-06 Xerox Corporation Mapping drawings generated on small mobile pen based electronic devices onto large displays
US7145551B1 (en) * 1999-02-17 2006-12-05 Microsoft Corporation Two-handed computer input device with orientation sensor
CN1179257C (zh) 1999-09-30 2004-12-08 松下电工株式会社 在与可编程逻辑控制器结合使用的监视单元上设计视觉信息的系统
US7046213B2 (en) * 2002-06-05 2006-05-16 Ibm Apparatus and method for direct manipulation of electronic information
US7027035B2 (en) * 2002-10-07 2006-04-11 Hewlett-Packard Development Company, L.P. Image copy to a second display
JP2005190158A (ja) 2003-12-25 2005-07-14 Nippon Telegr & Teleph Corp <Ntt> 画面上オブジェクト選択方法及び画面上オブジェクト選択装置
US8164640B2 (en) 2005-06-30 2012-04-24 Nokia Corporation Camera control means to allow operating of a destined location of the information surface of a presentation and information system
TWI316195B (en) * 2005-12-01 2009-10-21 Ind Tech Res Inst Input means for interactive devices
US8310656B2 (en) * 2006-09-28 2012-11-13 Sony Computer Entertainment America Llc Mapping movements of a hand-held controller to the two-dimensional image plane of a display screen
US8391786B2 (en) * 2007-01-25 2013-03-05 Stephen Hodges Motion triggered data transfer
US8438480B2 (en) 2007-03-26 2013-05-07 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for tracking an input device using a display screen in captured frames of image data
EP2063350A1 (en) * 2007-11-20 2009-05-27 Samsung Electronics Co., Ltd. Method and apparatus for interfacing between devices in home network
US8682023B2 (en) * 2008-04-16 2014-03-25 Emil Stefanov Dotchevski Interactive display recognition devices and related methods and systems for implementation thereof
KR101520746B1 (ko) * 2009-01-07 2015-05-15 삼성전자주식회사 입력 장치 및 디스플레이 장치
US7870496B1 (en) * 2009-01-29 2011-01-11 Jahanzeb Ahmed Sherwani System using touchscreen user interface of a mobile device to remotely control a host computer
US20100201879A1 (en) * 2009-02-12 2010-08-12 Echostar Technologies L.L.C. Customizable Picture-in-Picture
US8566713B2 (en) * 2009-08-20 2013-10-22 Samsung Electronics Co., Ltd. Data transfer method and system
JP5343773B2 (ja) 2009-09-04 2013-11-13 ソニー株式会社 情報処理装置、表示制御方法及び表示制御プログラム
JP5568929B2 (ja) * 2009-09-15 2014-08-13 ソニー株式会社 表示装置および制御方法
US8312392B2 (en) 2009-10-02 2012-11-13 Qualcomm Incorporated User interface gestures and methods for providing file sharing functionality
KR20110069526A (ko) 2009-12-17 2011-06-23 삼성전자주식회사 휴대단말의 외부 출력 제어 방법 및 장치
US20110225553A1 (en) * 2010-03-15 2011-09-15 Abramson Robert W Use Of Standalone Mobile Devices To Extend HID Capabilities Of Computer Systems
US8217997B2 (en) 2010-03-16 2012-07-10 Interphase Corporation Interactive display system
JP5306455B2 (ja) * 2010-03-30 2013-10-02 株式会社カプコン プログラム、オブジェクト制御方法、記録媒体及びゲームシステム
US9195345B2 (en) 2010-10-28 2015-11-24 Microsoft Technology Licensing, Llc Position aware gestures with visual feedback as input method
US10275046B2 (en) 2010-12-10 2019-04-30 Microsoft Technology Licensing, Llc Accessing and interacting with information
AU2011202838B2 (en) * 2010-12-21 2014-04-10 Lg Electronics Inc. Mobile terminal and method of controlling a mode screen display therein
US8725133B2 (en) * 2011-02-15 2014-05-13 Lg Electronics Inc. Method of transmitting and receiving data, display device and mobile terminal using the same
US20130027315A1 (en) * 2011-07-25 2013-01-31 Arther Sing Hook Teng Techniques to display an input device on a mobile device
US20130141331A1 (en) * 2011-12-02 2013-06-06 Htc Corporation Method for performing wireless display control, and associated apparatus and associated computer program product
KR20130137459A (ko) * 2012-06-07 2013-12-17 삼성전자주식회사 디스플레이 장치, 디스플레이 장치를 제어하기 위한 사용자 단말 및 그 제어 방법
US9256299B2 (en) * 2012-08-28 2016-02-09 Hewlett-Packard Development Company, L.P. Client device orientation
US9513795B2 (en) * 2012-11-29 2016-12-06 Blackberry Limited System and method for graphic object management in a large-display area computing device
US9075514B1 (en) * 2012-12-13 2015-07-07 Amazon Technologies, Inc. Interface selection element display

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011133590A1 (en) 2010-04-19 2011-10-27 Amazon Technologies, Inc. Approaches for device location and communication

Also Published As

Publication number Publication date
US20140247207A1 (en) 2014-09-04
US10139925B2 (en) 2018-11-27
CN105190469B (zh) 2019-05-28
EP2965164A1 (en) 2016-01-13
US10416783B2 (en) 2019-09-17
US20190050068A1 (en) 2019-02-14
JP2016513833A (ja) 2016-05-16
JP6433923B2 (ja) 2018-12-05
EP2965164B1 (en) 2019-12-18
KR20150128765A (ko) 2015-11-18
WO2014137857A1 (en) 2014-09-12
CN105190469A (zh) 2015-12-23

Similar Documents

Publication Publication Date Title
US11704878B2 (en) Surface aware lens
KR102213090B1 (ko) 객체의 특정 위치가 디바이스에 제공되게 하는 방법
US11882162B2 (en) Software application manager for messaging applications
EP4296827A1 (en) Redundant tracking system
US20180004283A1 (en) Selection of objects in three-dimensional space
US9268410B2 (en) Image processing device, image processing method, and program
US8943582B1 (en) Transferring information among devices using cameras
CN112136099B (zh) 来自远程设备的直接输入
TW201346640A (zh) 影像處理裝置及電腦程式產品
JP2013164697A (ja) 画像処理装置、画像処理方法、プログラム及び画像処理システム
JP6304305B2 (ja) 画像処理装置、画像処理方法及びプログラム
CN118625928A (zh) 信息交互方法、装置、电子设备及存储介质
KR20180063763A (ko) 촬영된 멀티 미디어의 공유

Legal Events

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