KR20090097891A - 문서 제어 방법, 시스템 및 프로그램 제품 - Google Patents

문서 제어 방법, 시스템 및 프로그램 제품 Download PDF

Info

Publication number
KR20090097891A
KR20090097891A KR1020097012924A KR20097012924A KR20090097891A KR 20090097891 A KR20090097891 A KR 20090097891A KR 1020097012924 A KR1020097012924 A KR 1020097012924A KR 20097012924 A KR20097012924 A KR 20097012924A KR 20090097891 A KR20090097891 A KR 20090097891A
Authority
KR
South Korea
Prior art keywords
behavior
document
user
movement
dimensional
Prior art date
Application number
KR1020097012924A
Other languages
English (en)
Other versions
KR101137041B1 (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 KR20090097891A publication Critical patent/KR20090097891A/ko
Application granted granted Critical
Publication of KR101137041B1 publication Critical patent/KR101137041B1/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/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/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
    • 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
    • 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

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)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

컴퓨터 구현 방법, 시스템 및 프로그램 제품은 사용자의 3 차원 이동을 캡쳐하되, 3 차원 이동은 사용자를 지향하는 적어도 하나의 이미지 캡쳐 디바이스를 이용하여 결정되는 행위 프로세싱 시스템을 포함한다. 행위 프로세싱 시스템은 캡쳐된 이동을 이용하여 3 차원 객체 특성을 식별한다. 행위 프로세싱 시스템은 식별된 3 차원 객체 특성 스트림을 상기 문서의 제어를 트리거하는 개별적인 행위 신호를 각각 나타내는 다수의 행위 정의와 비교함으로써 3 차원 객체 특성 스트림으로부터 사용자의 적어도 하나의 특정의 정의된 행위를 식별한다. 문서 프로세싱 시스템은 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하고, 선택된 문서 요소를 상기 문서에 삽입한다.

Description

문서 제어 방법, 시스템 및 프로그램 제품{CONTROLLING A DOCUMENT BASED ON USER BEHAVIORAL SIGNALS DETECTED FROM A 3D CAPTURED IMAGE STREAM}
본 발명은 전반적으로 향상된 자동 문서 생성, 트랜스크립트(transcript) 및 편집에 관한 것이다. 특히, 본 발명은 하나 이상의 이미지 캡쳐 디바이스에 의해 캡쳐된 3 차원 이미지 스트림으로부터 식별된 사용자의 행위에 근거하여, 문서의 제어를 트리거하는 행위 신호를 나타내는 문서를 제어하는 것에 관한 것이다.
다수의 사람들은, 예를 들어, 이메일 문서를 생성하고, 웹 문서를 탐색하며, 워드 프로세서로 문서를 생성하고, 스프레드시트를 편집하고, 문서 프리젠테이션 애플리케이션을 통해 문서를 제시하거나, 또는 애플리케이션을 코딩하는 것을 통해, 매일마다 다수의 문서를 생성하고, 검토하며, 편집한다. 다수의 유형의 문서를 생성하고, 검토하며, 편집하는 것은 전형적으로 키보드 상에서 타이핑하고, 마우스로 옵션을 선택하거나 또는 음성 커맨드 시스템에 접속된 마이크로폰으로 커맨드를 발음함으로써 사용자가 다수의 커맨드를 입력할 것을 필요로 한다.
이벤트를 트랜스크립트하는 문서를 생성함에 있어, 코트 리포터와 같이, 이 벤트를 시청하는 사람은 이벤트 동안 발음된 워드의 사람의 관측을 나타내는 로그를 타이핑하는 것을 통해 이벤트의 트랜스크립트를 기록한다. 이벤트를 관찰하는 사람은 다른 사람의 행위를 관측하고 로그 내의 행위에 대한 레퍼런스를 타이핑할 수 있다. 음성 트랜스크립트 시스템은 통상 이벤트의 트랜스크립트를 기록하도록 사람 대신에 사용되며, 여기서 음성 트랜스크립트 시스템은 이벤트의 트랜스크립트를 생성하도록 검출된 음성 신호를 텍스트로 자동으로 변환한다. 그러나, 음성 트랜스크립트 시스템은 스피커의 행위가 텍스트 트랜스크립트로 기록되지 않는다는 점에서 제한된다. 스피커 행위의 비디오 기록을 제공하도록 이벤트의 비디오 기록이 기록될 수 있는 한편, 텍스트 및 비디오 기록으로 변환된 음성으로부터 자동화된 트랜스크립트의 결합은 이벤트 동안 발음된 워드 및 스피커의 행위 등의 완전한 텍스트 트랜스크립트를 제공하지 않는다.
또한, 문서를 생성하고 편집함에 있어, 사용자는 문서를 생성하고 편집하는 동안, 다른 사람에게 발음하거나 또는 다른 사람을 청취할 수 있는 것이 통상적이다. 따라서, 음성 커맨드는 사용자가 하루 동안 수행하는 키 스트로크 또는 마우스 클릭의 수를 사용자가 감소시키기 위한 방식을 제공하는 한편, 문서를 편집하면서 변환함으로써 멀티 태스크를 수행하는 사용자는 문서를 편집하기 위한 음성 커맨드를 사용하는 것이 불가능할 수 있다.
따라서, 전술한 관점에서, 사용자 행위의 3 차원 이미지 스트림을 캡쳐하고, 캡쳐된 3 차원 이미지 스트림으로부터 사용자 행위의 적어도 하나의 행위 유형을 예측하며, 문서에 요소를 부가하거나 또는 요소에 대해 기능을 수행하는 것을 포함 하여, 문서를 제어하는 것이 행위의 식별된 유형에 근거하여 트리거될지의 여부를 선택하는 방법, 시스템 및 프로그램 제품에 대한 필요성이 존재한다.
발명의 개요
따라서, 본 발명은 향상된 자동 문서 생성, 트랜스크립트 및 편집을 제공한다. 특히, 본 발명은 하나 이상의 이미지 캡쳐 디바이스에 의해 캡쳐된 3 차원 이미지 스트림으로부터 식별된 사용자의 행위에 근거하여, 문서의 제어를 트리거하는 행위 신호를 나타내는 문서를 제어하는 것을 제공한다.
일 실시예에서, 컴퓨터 구현 방법, 시스템 및 프로그램 제품은 사용자의 3 차원 이동을 캡쳐하되, 3 차원 이동은 사용자를 지향하는 적어도 하나의 이미지 캡쳐 디바이스를 이용하여 결정되는 행위 프로세싱 시스템을 포함한다. 행위 프로세싱 시스템은 캡쳐된 이동을 이용하여 3 차원 객체 특성을 식별한다. 행위 프로세싱 시스템은 식별된 3 차원 객체 특성 스트림을 상기 문서의 제어를 트리거하는 개별적인 행위 신호를 각각 나타내는 다수의 행위 정의와 비교함으로써 3 차원 객체 특성 스트림으로부터 사용자의 적어도 하나의 특정의 정의된 행위를 식별한다. 문서 제어 시스템은 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하고, 선택된 문서 요소를 상기 문서에 삽입한다.
사용자의 3 차원 이동을 캡쳐함에 있어, 행위 프로세싱 시스템은 식별할 입체적 이미지 디바이스를 이용하여 3 차원 이동을 캡쳐하고 사용자의 특정의 3 차원 이동을 트래킹한다. 또한, 사용자의 3 차원 이동을 캡쳐함에 있어, 행위 프로세싱 시스템은 제 1 시점에서의 사용자의 적어도 하나의 이미지 프레임을 캡쳐하고 제 2 시점으로부터의 적어도 하나의 추가적인 이미지 프레임을 제 1 시점으로부터의 이미지 프레임과 비교한다.
적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택함에 있어, 문서 제어 시스템은 캡쳐된 3 차원 객체 특성 스트림과 연관된 타임 스탬프에 의해 지정된 위치에서 문서에 기록된 트랜스크립트에 삽입하기 위한 적어도 하나의 특정의 정의된 행위의 텍스트 표시자를 포함하는 적어도 하나의 문서 요소를 선택한다. 또한, 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택함에 있어, 문서 제어 시스템은 적어도 하나의 특정의 정의된 행위를 적어도 하나의 프로그래밍 코드 요소, 수학식 및 모듈로 변환할 수 있다.
또한, 실시예에서, 문서 제어 시스템은 적어도 하나의 특정의 정의된 행위를 나타내는 문서에 대해 적어도 하나의 기능을 선택하고, 문서 상에서 적어도 하나의 기능을 수행하도록 애플리케이션을 트리거한다. 또한, 문서 제어 시스템은 문서 및 문서에 삽입하는 문서 요소에 대해 수행하기 위한 기능을 선택할 수 있다.
도면의 간단한 설명
본 발명의 특징으로 간주되는 신규한 특징은 첨부된 특허 청구 범위에 개시되어 있다. 그러나, 본 발명의 자체 뿐만 아니라, 사용, 다른 목적 및 그 장점은 예시적인 실시예의 후술하는 상세한 설명을 참조하여 첨부 도면과 함께 읽을 때 가 장 잘 이해될 것이며, 도면에서,
도 1은 행위 프로세싱 방법, 시스템 및 프로그램 제품에서 정보의 흐름을 도시하는 블록도이고,
도 2는 3D 객체 검출기가 캡쳐된 행위 이동을 나타내는 3D 객체 특성을 캡쳐하고 생성하는 환경의 예를 도시하는 예시적인 블록도이며,
도 3은 3D 객체 특성, 모니터링된 사용자의 행위 및 이들 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부로부터 행위 번역기가 사용자 행위의 유형을 번역할 수 있도록 3D 객체 특성을 생성하는 3D 객체 검출기 시스템의 일 실시예를 도시하는 블록도이고,
도 4는 행위 번역기 시스템의 일 실시예를 도시하는 블록도이며,
도 5는 본 발명이 구현될 수 있는 컴퓨터 시스템의 일 실시예를 도시하는 블록도이고,
도 6은 행위 인에이블된 리소스 제어 방법, 시스템 및 프로그램 제품이 구현될 수 있는 분배 네트워크 환경의 일례를 도시하는 블록도이며,
도 7은 행위 인에이블된 문서 제어 시스템과 통신하는 행위 프로세싱 시스템의 구현의 일례를 도시하는 블록도이고,
도 8은 다수의 애플리케이션에 대해 문서 제어 신호를 관리하는 문서 제어 시스템의 일례를 도시하는 블록도이며,
도 9는 행위 변환 데이터베이스 내의 엔트리의 예를 도시하는 예시적인 도면이고,
도 10은 문서 요소를 문서에 삽입하는 것으로서, 문서 요소가 행위 유형의 텍스트 표시자인 일례를 도시하는 예시적인 도면이고,
도 11은 퍼센티지 확률로 행위 유형을 예측하기 위한 행위 프로세싱 시스템에 대한 프로세스 및 프로그램을 도시하는 하이 레벨 논리 플로우차트이며,
도 12는 이미지 스트림 및 다른 감지된 데이터 내의 객체를 트래킹하고 행위를 나타내는 트래킹된 객체에 대한 3D 객체 특성을 생성함으로써 행위 검출을 수행하는 3D 객체 검출기에 대한 프로세스 및 프로그램을 도시하는 하이 레벨 논리 플로우차트이고,
도 13은 트래킹된 3D 객체 특성으로부터 행위 예측을 수행하는 행위 번역기에 대한 프로세스 및 프로그램을 도시하는 하이 레벨 논리 플로우차트이며,
도 14는 행위 인에이블된 문서 제어 시스템 내의 예측된 행위 기록을 적용하는 프로세스 및 프로그램을 도시하는 하이 레벨 논리 플로우차트이다.
이제 도 1을 참조하면, 블록도는 행위 프로세싱 방법, 시스템 및 프로그램 제품에서 정보의 흐름을 도시한다. 도 1은 사용자 이동의 이미지 스트림을 캡쳐하고 사용자의 행위를 예측하고 어느 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 예측하도록 이들 이미지 스트림을 프로세스하는 정보 흐름의 일 실시예를 제공하지만, 캡쳐된 데이터를 프로세스하고 캡쳐된 데이터로부터 사용자 행위를 예측하고 행위가 문서 제어의 트리거를 위한 행위 신호를 나타내는지 여부를 예측 하도록 다른 정보 흐름이 구현될 수 있음이 이해될 것이다.
명세서 전반에 걸쳐 사용된 바와 같이, "행위"란 용어는 행위, 안면 표현과 같은 행위 또는 신체 언어로서 전형적으로 표시된 사용자 신체적 이동을 포함할 수 있으며, 임의의 검출 가능한 신체 이동, 검출 가능한 신체 자세, 검출 가능한 육안 이동, 색, 온도 톤 및 인식 레벨과 같은 피부 표면의 변화, 근육 수축의 변화, 및 다른 유형의 비언어(non-verbal) 통신을 포함할 수 있으며, 이들로만 제한되지 않는다. 명세서 전반에 걸쳐 사용된 바와 같이, "문서"란 용어는 애플리케이션 또는 애플리케이션에 의해 사용하기 위한 데이터를 포함하는 컴퓨터 파일로 생성된 적어도 하나의 텍스트 또는 그래픽 요소를 갖는 컴퓨터 파일을 포함할 수 있으나, 이로만 제한되지 않는다. 문서의 예는 워드 프로세서 파일, 이메일, 웹 페이지, 코드 모듈 및 그래픽 파일을 포함할 수 있으나, 이들로만 제한되지 않는다.
예에서, 행위 프로세싱 시스템(100)은 3 차원(3D) 객체 검출기(104)를 포함한다. 3D 객체 검출기(104)는 3D 객체 특성(110)에 의해 도시된 바와 같이, 이미지 및 이동과 고정 객체에 관한 다른 데이터를 캡쳐하고, 캡쳐된 데이터를 스트림라이닝하며, 캡쳐된 이동 내의 특정의 객체를 트래킹하고, 스트리밍된 특성을 캡쳐된 객체의 3D 특성의 2 차원 표시로 결합하는 다수의 시스템을 포함한다. 3D 객체 특성(110)은 사용자 이동, 환경 내에서의 다른 객체, 및 예를 들어, 환경의 속성을 식별하는 배경을 나타내는 색, 크기 및 배향을 포함할 수 있으며, 이들로만 제한되지 않는다.
예에서, 3D 객체 검출기(104)는 검출 가능한 행위 이동(102)으로서 표현된 포커스 영역 내의 이미지를 캡쳐한다. 또한, 3D 객체 검출기(104)는 포커스 영역 내의 다른 유형의 데이터를 검출할 수 있다. 특히, 3D 객체 검출기(104)는 다수의 유형의 이미지를 통해 검출 가능한 행위 이동(102)을 검출하며, 데이터 검출은 비디오 이미지를 캡쳐하고, 인체 부분 이동을 검출하며, 피부 텍스쳐를 검출하고, 육안 이동을 검출하며, 피부 표면 특성을 검출하고, 열적 이미지를 캡쳐하는 것을 포함할 수 있으며, 이들로만 제한되지 않는다. 다수의 유형의 이미지 및 데이터 검출을 지원하기 위해, 3D 객체 검출기(104)는 입체적 이미지 캡쳐에 대해 배치된 하나 이상의 비디오 카메라, 및 열적 신체 이미징 센서, 피부 텍스트 센서, 레이저 감지 디바이스, SONAR(sound navigation and ranging) 디바이스, 또는 합성 레이저 또는 SONAR 시스템과 같은 하나 이상의 객체의 적어도 하나의 다른 특성을 캡쳐하는 다른 유형의 센서를 포함하며, 다수의 유형의 이미지 캡쳐 디바이스를 포함할 수 있다. 특히, 센서는 개별적인 세서 유닛을 이용하여 구현될 수 있거나 또는 캡쳐된 이미지 스트림 상에서 동작하는 논리 유닛을 통해 구현될 수 있다. 예를 들어, 논리 유닛은 포커스 영역 내에서, 스무드 월(smooth wall) 또는 텍스트 폴리지(textured foliage)와 같은 비피부 텍스트와 구별 가능한 안면 피부 첵스처를 검출하도록 캡처된 이미지 스트림을 프로세스할 수 있다.
검출 가능한 행위 이동(102)의 일부분은 실제의 행위를 나타내는 이미지 및 다른 데이터를 포함할 수 있으며, 검출 가능한 행위 이동(102)의 다른 부분은 행위를 나타내지 않는 이미지 및 데이터를 포함할 수 있다. 검출 가능한 행위 이동(102) 내에서의 몇몇 행위는 문서의 제어를 트리거하는 행위 신호를 나타낼 수 있다.
3D 객체 검출기(104)는 검출 가능한 행위 이동(102)을 검출된 객체의 3D 특성의 스트림으로 변환하고 3D 객체 특성(110)의 스트림을 행위 번역기(106)에 전달한다. 행위 번역기(106)는 스트리밍된 3D 객체 특성(110)을 각각의 검출된 사용자에 대한 하나 이상의 행위 정의로 매핑하고, 검출된 사용자의 각각의 예측된 행위에 대해, 검출 가능한 행위 이동(102)에서의 실제의 행위가 행위 번역기(106)에 의해 정확하게 예측되는 확률을 계산한다. 또한, 행위 번역기(106)는 특정의 예측된 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측한다.
행위 번역기(106)는 각각의 예측된 행위 유형 및 퍼센티지 확률을 출력하고 예측된 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측된 행위 출력(108)으로서 출력한다. 행위 번역기(106)는 예측된 행위 출력(108)을 하나 이상의 시스템에서의 하나 이상의 행위 인에이블된 애플리케이션으로 전달할 수 있다.
특히, 검출 가능한 행위 이동(102)을 프로세스하고 예측된 행위 출력(108)을 생성할 때에, 3D 객체 검출기(104) 및 행위 번역기(106)는 3D 객체 특성(110) 내에서, 행위를 나타내는 이들 모니터링된 객체를 보다 잘 트래킹하고 검출하고, 검출 가능한 행위 이동(102) 내에서, 다른 사용자와 별도의 사람을 보다 잘 인식하며, 3D 객체 특성(110)으로부터 문서의 제어를 트리거하는 행위 신호를 나타내는 행위를 보다 잘 트래킹하고 검출하며, 예측하기 위해, 이전에 축적되고 저장된 행위 정의의 정의 데이터베이스(112)를 액세스할 수 있다.
또한, 검출 가능한 행위 이동(102)을 프로세스하고 예측된 행위 출력(108)을 생성할 때에, 3D 객체 검출기(104) 및 행위 번역기(106)는 사용자 행위를 나타내는 객체를 식별하고 행위가 행해지는 전체 상호 작용의 관점에서 행위의 유형을 예측하도록 시도한다. 따라서, 3D 객체 검출기(104) 및 행위 번역기(106)는 행위가 아니라, 행위의 유형에 영향을 주는 행위에 포함된 강조 레벨, 행위의 유형에 영향을 주는 행위의 배경, 행위의 유형에 영향을 주는 사용자 행위의 환경, 행위의 유형 및 행위의 의미의 결정에 영향을 주는 행위 또는 행위의 결합 및 다른 검출 가능한 인자로서 이동의 의미에 영향을 주는 함께 행해진 이동의 결합인 것으로서 판정하도록 시도한다. 또한, 3D 객체 검출기(104) 및 행위 번역기(106)는 특정의 사용자가 그 행위가 문서의 제어를 트리거해야 하는지 여부를 판정한다. 따라서, 정의 데이터베이스(112)는 행위의 유형 및 의미를 결정하도록 행위의 의미에 영향을 줄 수 있는 상이한 유형의 사람, 환경 및 다른 인자에 대응하는 행위 정의를 포함한다. 또한, 정의 데이터베이스(112)는 사용자 행위에 근거하여 특정의 사용자를 보다 정밀하게 식별하도록 트레이닝될 수 있다. 또한, 정의 데이터베이스(112)는 특정의 사람, 동물, 장소 또는 사물을 나타내는 객체를 보다 정확하게 식별하도록 트리거될 수 있다.
예측된 행위 출력(108)을 생성할 때에, 행위 번역기(106)는 행위를 식별하고, 행위가 발생하는 시간 범위 또는 행위가 발생하는 속도 또는 강도를 식별한다. 일례에서, 예측된 행위가 문서의 제어를 트리거하는 경우, 예측된 행위는 이동의 속도나 강도와 같은 인자가 텍스트 표시자 내의 세부 사항 레벨에 영향을 주도록, 행위의 텍스트 표시자를 포함하도록 문서를 편집하는 것을 트리거한다. 다른 예에서, 예측된 행위가 문서의 제어를 트리거하는 경우, 예측된 행위는 애플리케이션의 기능에 영향을 주는 이동의 속도나 강도와 같은 인자가 예측된 행위에 의해 트리거될 수 있도록, 문서 상에 수행될 애플리케이션의 기능을 트리거한다.
또한, 검출 가능한 행위 이동(102)을 프로세스할 때에, 이미지 캡쳐 디바이스 및 다른 센서의 다수의 개별적인 시스템은 상이한 각도로부터의 개별적인 또는 오버래핑 포커스 영역에 관한 이미지 및 데이터를 각각 캡쳐할 수 있다. 이미지 캡쳐 디바이스 및 다른 센서의 개별적인 시스템은 데이터 결합에 의해, 행위 번역기(106)가 보다 나은 정확도로 행위를 번역할 수 있도록, 3D 객체 검출기 사이 또는 행위 번역기 사이의 서로 간에 캡쳐된 이미지 및 데이터를 공유할 수 있는 무선 또는 유선 접속을 통해 통신 가능하게 접속될 수 있다.
이제 도 2를 참조하면, 예시적인 블록도는 3D 객체 검출기가 캡쳐된 행위 이동을 나타내는 3D 객체 특성을 캡쳐하고 생성하는 환경의 예를 도시한다. 검출 가능한 이동 환경(200)은 도 1의 행위 프로세싱 시스템(100)을 참조하여 기술된 바와 같이, 3D 객체 검출기(104)가 검출 가능한 행위 이동(102)을 나타내는 이미지 및 데이터를 검출하는 일례라는 것이 이해될 것이다.
예에서, 검출 가능한 이동 환경(200)은 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)를 포함하고, 각각이 결합된 3D 포커스 영역(220) 내에서 사람을 포함하는 하나 이상의 객체를 검출하도록 배치되는 입체적 이미지 디바이스를 포함한다. 도시된 실시예에서, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이 스(204)는 각각 3D 포커스 영역(220)에 의해 나타내어진 영역이 일정하게 포커스된 채로 유지하도록, 하나의 고정 축 또는 개별적인 고정 축 상에 배치될 수 있다. 또한, 도시된 실시예에서, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)와 임의의 다른 센서는 3D 포커스 영역(220) 내에서 캡쳐 이미지의 스팬을 제어하도록 접점에서 또는 임의의 다른 각도에서 병렬로 배치될 수 있다.
다른 실시예에서, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 각각 3D 포커스 영역(220)에 의해 나타내어진 영역이 재배치될 수 있도록, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)의 위치 조정 가능한 축 또는 실제의 포커스 지점 상에 배치될 수 있다. 일례에서, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)의 각각은 넓은 영역 내에서의 이동에 근거한 열적 이미징을 검출하고 각각의 카메라의 포커스 영역 내에서의 열적 이동을 트래킹하도록 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)의 각각의 재배치를 지시하는 하나 이상의 열적 이미징 디바이스와 결합될 수 있다.
또한, 본 실시예에서, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 사람에 의해 운반되거나 또는 착용되는 장치에 부착될 수 있다. 예를 들어, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 사람이 이동함에 따라 3D 포커스 영역(220)이 변화하도록, 한 쌍의 글래스 또는 사람에 대한 다른 행위에 부착될 수 있다. 다른 예에서, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 차량이 이동함에 따라 3D 포커스 영역(220)이 변화하도록, 차량과 같은 이동 머신에 부착될 수 있다.
다른 실시예에서 도시되지는 않았으나, 이미지 캡쳐 디바이스(202)와 같은 단일의 비디오 카메라만이 입체적 이미지 디바이스로서 구현될 수 있다. 단일의 비디오 카메라는 트랙 또는 다른 조정 가능한 영역 상에 위치하고 콘트롤러는 트랙을 따라 단일의 비디오 카메라의 위치를 조정하며, 여기서 단일의 비디오 카메라는 트랙을 따라 상이하게 배치된 지점에서의 포커스 영역 내에서 비디오 이미지의 스트림을 캡쳐하고, 3D 행위 검출기(104)는 이미지의 스트림을 검출 가능한 객체의 특성의 3D 객체 특성 스트림으로 결합한다. 일례에서, 3D 객체 특성 스트림은 휘도 변호를 비교하고 카메라가 위치에 따라 변화함에 따라 프레임 상에서 섀도우잉함으로써 생성될 수 있다. 대안적으로, 입체적 이미지 디바이스는 깊이를 검출하는 스트림과 결합된 단일의 고정 카메라를 이용하여 구현될 수 있다. 또한, 대안적으로, 이미지를 프로세스하고 고정 위치로부터의 깊이를 검출하도록 인에이블된 단일의 카메라가 입체적 이미지 디바이스로서 기능할 수 있다. 예를 들어, 단일의 카메라는 광원의 이동을 검출하고 휘도 변화를 비교하며 캡쳐된 이미지 프레임 상에서 섀도우잉하는 것으로부터 이미지를 프로세스하고 깊이를 검출할 수 있다. 특히, 단일의 카메라 시스템은 먼저 눈, 입 및 코 상에 포커스하는 모니터링된 안면의 모델을 매핑하고 그 다음에, 안면의 깊이 특성을 검출하도록 휘도 변화를 비교하며 이미지 프레임 상에서 섀도우잉한다. 다른 예에서, 시스템은 이미지 스트림의 다른 특성으로부터 깊이를 추출하도록 비디오 이미지의 캡쳐된 스트림을 프로세스할 수 있다.
예시를 위해, 3D 포커스 영역(220)은 이미지 캡쳐 디바이스(202)에 의해 캡 쳐된 제 1 캡쳐 평면(206) 및 이미지 캡쳐 디바이스(204)에 의해 캡쳐된 제 2 캡쳐 평면(208)을 포함한다. 제 1 캡쳐 평면(206)은 참조 번호(214)에 의해 도시된 평면 내의 이동을 검출하고 제 2 캡쳐 평면(208)은 참조 번호(216)에 의해 도시된 평면 내의 이동을 검출한다. 따라서, 예를 들어, 이미지 캡쳐 디바이스(202)는 측면 또는 상하에 대한 객체 축의 이동을 검출하고 이미지 캡쳐 디바이스(204)는 3D 포커스 영역(220) 내에서 객체의 전방 및 후방 이동을 검출한다. 객체의 이동이 미세한 입자성으로 트래킹될 때, 심지어 사람의 올라간 눈썹, 수축된 근육 또는 손가락 구부러짐과 같은 신체 이동의 작은 조정 조차도 트래킹되고 문서의 제어를 트리거하는 행위를 나타내는 행위로서 구현될 수 있다는 것에 주목해야 하는 것이 중요하다.
예에서, 3D 포커스 영역(220) 내에서, 핸드(210)는 이동 객체를 나타내고 박스(212)는 고정 객체를 나타낸다. 예에서, 핸드(210)는 3D 포커스 영역(220) 내에서의 사람의 핸드의 위치이다. 모니터링된 오퍼레이터는 핸드(210)를 이동함으로써 문서의 제어를 트리거하는 행위를 나타내는 임의의 수의 이동을 형성할 수 있다.
사람이 3D 포커스 영역(220) 내에서 핸드(210)를 이동함에 따라, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)의 각각은 캡쳐 평면(206) 및 캡쳐 평면(208) 내에서 핸드(210)의 이동의 비디오 스트림을 캡쳐한다. 비디오 스트림으로부터, 3D 객체 검출기(104)는 3D 포커스 영역(220) 내에서의 이동 객체로서 핸드(210)를 검출하고 시간 구간 상에서, 핸드(210)의 3D 객체 특성(110)을 나타내는 3D 기하 구조 스트림을 생성한다.
또한, 사람은 박스(212) 또는 다른 객체에 대해 박스(210)를 이동할 수 있다. 예를 들어, 사용자는 박스(212)에 대해 지향된 다른 유형의 행위를 지정하거나 형성할 수 있다. 3D 포커스 영역(220) 내에서 사람이 이동함에 따라, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)에 의해 캡쳐된 비디오 스트림은 핸드(210) 및 핸드(212)의 이동을 포함한다. 비디오 스트림으로부터, 3D 객체 검출기(104)는 3D 포커스 영역(220) 내에서 이동 객체로서 핸드(210)를 검출하고 고정 객체로서 핸드(212)를 검출하며, 시간 구간 상에서 핸드(212)에 대해 박스(212)의 3D 특성 및 박스(210)의 3D 특성을 포함하는 3D 객체 특성 스트림을 생성한다.
다수의 카메라를 이용하여 3D 포커스 영역(220) 내에서 이동의 상이한 평면을 캡쳐함으로써, 전형적인 고정 단일 카메라로 발생하는 보다 많은 이동 지점이 캡쳐된다는 것에 주목하는 것이 중요하다. 2 이상의 각도로부터 보다 많은 이동 지점을 캡쳐함으로써, 3D 객체 검출기(104)는 3D 포커스 영역(220) 내에서, 행위를 포함하는 고정 객체 및 이동 객체의 3D 표시를 보다 정확하게 검출하고 정의할 수 있다. 또한, 3D 객체 검출기(104)는 이동 객체의 3D 표시를 정의하고, 보다 정확하게 행위 번역기(106)는 3D 모델로부터 행위를 예측할 수 있다. 예를 들어, 행위는 2 차원 프레임으로 캡쳐되는 것이 불가능한 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204) 중 하나를 향하여 또는 떨어져 움직임을 직접 형성하는 사람으로 구성될 수 있고, 3D 객체 검출기(104)는 행위의 3D 표시를 이동 객체로서 검출하여 정의하고 행위 번역기(106)는 환경의 3D 모델로부터 비디오 카메라를 향 하여 또는 떨어져 이동에 의해 행해진 행위를 예측한다. 또한, 3D 포커스 영역(220) 내의 이동 평면과 상이한 다수의 지점을 캡쳐함으로써, 3D 객체 특성(110)을 생성하도록 요구된 프로세싱 로드는 단지 이동의 단일의 2D 평면으로부터 수집된 지점으로부터 3D 객체 특성(110)을 생성하도록 요구된 프로세싱 로드에 비해 감소된다.
또한, 도 2는 행위 핸드(210) 및 고정 박스(212)를 도시하지만, 대안적인 실시예에서, 3D 포커스 영역(220)은 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)가 다수의 사람의 행위의 이미지 및 다른 하나 이상의 요소 각각에 대해 다수의 사람의 행위의 이미지를 캡쳐하도록, 다수의 개별적인 모니터링된 사용자 및 다른 요소를 포함할 수 있으며, 3D 객체 검출기(104)는 각각의 행위에 의해 개별적인 객체로서 각각의 행위를 검출한다는 것에 주목해야 하는 것이 중요하다. 특히, 3D 객체 검출기(104)는 사람의 비언어 통신의 3D 객체 특성을 정확하게 생성하도록, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)로부터 캡쳐된 비디오 이미지를 검출하고, 캡쳐에 의해 행해진 행위와 같은 보다 많은 모션으로 행위하며, 안면 표현과 같은 보다 적은 모션으로 행위한다.
예에서, 3D 포커스 영역(220) 내에서 이미지를 캡쳐하는 것에 부가하여, 검출 가능한 이동 환경(200) 내에서, 3D 포커스 영역(220) 외부를 제외하고, 다른 센서는 환경으로 지칭된 정보를 검출할 수 있다. 예를 들어, 센서(240)는 센서 영역(242) 내에서 정보를 검출할 수 있다. 센서 영역(242)은 포커스 영역(220) 내에 포함되도록 중첩되거나, 또는 적절하게는, 포커스 영역(220)으로부터 분리될 수 있 다. 3D 객체 검출기(104)는 3D 객체 특성(110)을 보다 정확하게 생성하고 환경에 관한 추가적인 정보를 문서 제어 시스템에 제공하도록 제 2 정보를 캡쳐된 이미지와 결합한다.
일례에서, 센서(240)는 캡쳐된 이미지 스트림으로부터 안면 인식 또는 다른 식별 인식을 수행할 수 있다. 일례에서, 센서(240)는 사용자에 대한 안면 매핑의 데이터베이스를 액세스하고 데이터베이스로부터 특정의 안면 매핑에 매칭하는 특정의 사용자 안면 매핑을 식별할 수 있다. 다른 예에서, 센서(240)는 사용자를 식별할 수 있는 텍스트에 대해 캡쳐된 이미지 스트림을 분석할 수 있다. 예를 들어, 센서(240)는 사용자에 의해 착용된 배지(a badge)의 캡쳐된 이미지 스트림의 배지 번호를 검출할 수 있다. 사용자 아이덴티티를 검출하는 센서(240)에 의해, 객체 검출기(104)는 3D 객체 특성을 보다 정확하게 생성할 수 있고 이동 번역기(106)는 정의 데이터베이스(112) 내의 식별된 사용자에 대해 지정된 정의로부터 사용자 행위 이동의 유형을 보다 정확하게 예측할 수 있다.
추가적으로, 다른 예에서, 서버(240)는 센서 영역(242) 내의 객체 상에 위치하는 RFID 칩으로부터 브로드캐스팅된 정보를 검출함으로써 사용자 및 다른 객체인식을 보충할 수 있고, 여기서 객체의 RFID는 객체 유형, 객체 위치 및 객체와 연관된 임의의 경고 조건을 브로드캐스팅한다. 일례에서, 사용자가 지니는 휴대 전화, 사용자가 지니는 식별 카드 또는 사용자가 지니는 다른 항목은 사용자에 대한 식별자 및 항목에 대한 식별자 중 하나 이상을 브로드캐스팅하는 RFID 칩을 포함할 수 있다. 이미지가 식별되는 캡쳐된 이미지와 특정의 객체의 위치에 관한 제 2 정보 를 결합함으로써, 객체 검출기(104)는 3D 객체 특성(110)을 보다 정확하게 생성할 수 있고 행위 번역기(106)는 3D 객체의 유형, 3D 객체와 연관된 사용자, 3D 객체 특성(110) 내에서 검출된 문서의 제어를 트리거하는 행위 신호를 나타내는 행위 신호를 보다 정확하게 예측할 수 있다.
다른 예에서, 센서(240)는 센서 영역(242) 내에서 트래킹된 객체의 상대 위치를 트래킹할 수 있다. 도시되지는 않았으나, 센서 영역(242)은 센서 영역(242) 내에서 제 1 포커스 영역(220)으로부터 제 2 포커스 영역으로 사람 이동을 트래킹할 수 있다. 다수의 포커스 영역 상에서 이동을 트래킹함으로써, 센서(240)는 3D 객체 특성(110)을 생성할 때에 상이한 포커스 영역에서 수집된 데이터가 공유될 수 있도록 모니터링된 사람 위치의 추가적인 트래킹 정보를 제공한다.
또 다른 예에서, 센서(240)는 객체가 특정의 행위를 나타내는지 여부 및 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 보다 정확하게 예측하도록 객체의 깊이, 표면 영역, 컬러 온도 또는 다른 특성에 관한 추가 정보를 검출할 수 있다. 특히, 객체의 깊이, 표면 영역, 컬러 온도 또는 다른 특성에 관한 추가 정보를 검출함으로써, 센서(240)에 의해 수집된 데이터는 행위 이동을 나타내는 객체의 3D 이미지의 추가적인 세부 사항 및 입자성을 생성하도록 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)에 의해 캡쳐된 이미지와 결합된다.
이제 도 3을 참조하면, 블록도는 3D 객체 특성으로부터 행위 번역기가 모니터링된 사용자의 행위 및 이들 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 번역할 수 있도록 3D 객체 특성을 생성하는 3D 객체 검출기 시스템 의 일 실시예를 도시한다. 3D 객체 검출기(104) 내에 도시된 다수의 구성요소는 단일의 스트림 내에 포함되거나 또는 다수의 시스템 상에서 네트워크, 다른 통신 매체, 또는 다른 트랜스포트 매체를 통해 분배될 수 있다는 것에 주목하는 것이 중요하다. 또한, 도시된 것으로부터의 추가적인 또는 대안적인 구성요소는 이미지 및 데이터를 캡쳐하고 3D 객체 특성(110)의 스트림을 생성하기 위해 3D 객체 검출기(104) 내에서 구현될 수 있다는 것에 주목하는 것이 중요하다.
우선, 이미지 캡쳐 디바이스(202), 이미지 캡쳐 디바이스(204) 및 센서(240)와 같은 다수의 이미지 캡쳐 디바이스는 3D 포커스 영역(220) 및 센서(242)와 같은 3D 포커스 영역 및 센서 내에서 검출 가능한 환경(102)을 나타내는 데이터를 획득하는 입체적 이미지 디바이스를 나타낸다. 앞서 기술된 바와 같이, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 비디오 이미지를 캡쳐하는 비디오 카메라를 나타낼 수 있다. 또한, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 카메라 또는 다른 정지 화상 이미지 캡쳐 디바이스를 나타낼 수 있다. 또한, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 검출 가능한 행위 이동(102)을 나타내는 데이터를 캡쳐할 수 있는 다른 유형의 디바이스를 나타낼 수 있다. 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)는 동일한 유형의 이미지 캡쳐 시스템 또는 상이한 유형의 이미지 캡쳐 시스템을 이용하여 구현될 수 있다. 또한, 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)의 각각에 의해 캡쳐된 캡쳐 영역 및 평면의 범위, 크기 및 행위는 가변될 수 있다.
센서(240)는 도 2를 참조하여 기술된 바와 같이 하나 이상의 상이한 유형의 센서를 나타낼 수 있다. 센서(240)는 객체에 관한 독립적인 데이터를 수집하거나 또는 이미지 캡쳐 디바이스(202) 및 이미지 캡쳐 디바이스(204)에 의해 캡쳐된 이미지를 프로세스할 수 있다.
이미지 캡쳐 디바이스(202), 이미지 캡쳐 디바이스(204) 및 센서(240)의 각각은 캡쳐된 이미지 및 데이터를 초기에 수신하고 버퍼링하도록 인에이블된 하나 이상의 컴퓨팅 시스템으로 캡쳐된 이미지 및 데이터를 송신한다. 예에서, 이미지 캡쳐 디바이스(202)는 이미지 캡쳐 센서(308)에 캡쳐된 이미지를 송신하고, 이미지 캡쳐 디바이스(204)는 이미지 캡쳐 센서(310)에 캡쳐된 이미지를 송신하며, 센서(240)는 센서 서버(312)에 캡쳐된 데이터를 송신한다. 이미지 캡쳐 디바이스(202), 이미지 캡쳐 디바이스(204) 및 센서(240)는 하나 이상의 서버 시스템 내에서 구현될 수 있다.
이미지 캡쳐 서버(308), 이미지 캡쳐 서버(310) 및 센서 서버(312)의 각각은 이미지 캡쳐 디바이스(202), 이미지 캡쳐 디바이스(204) 및 센서(240)로부터의 버퍼링된 이미지 및 데이터를 하나 이상의 프로세서에 스트리밍한다. 예에서, 이미지 캡쳐 서버(308)는 비디오 프로세서(316)를 통해 이미지를 스트리밍하고, 이미지 캡쳐 서버(310)는 비디오 프로세서(318)를 통해 이미지를 스트리밍하며, 센서 서버(312)는 감지된 데이터를 센서 프로세서(319)에 스트리밍한다. 비디오 프로세서(316), 비디오 프로세서(318) 및 센서 프로세서(319)는 하나 이상의 컴퓨터 시스템에서 하나 이상의 프로세서 내에서 구현될 수 있다.
일례에서, 이미지 캡쳐 서버(308) 및 이미지 캡쳐 서버(310) 각각은 이미지를 비디오 프로세서(316) 및 비디오 프로세서(318)로 각각 스트리밍하며 여기서 이미지는 프레임으로 스트리밍된다. 각각의 프레임은 이미지 캡쳐 디바이스의 카메라 식별자(ID), 프레임 번호, 타임 스탬프 및 픽셀 카운트를 포함할 수 있으며, 이들로만 제한되지 않는다.
비디오 프로세서(316), 비디오 프로세서(318) 및 센서 프로세서(319)는 이미지 프레임 내의 객체를 검출하고 트래킹하도록 프로그래밍된다. 특히, 비디오 프로세서(316), 비디오 프로세서(318) 및 센서 프로세서(319)는 모니터링된 사용자 및 3 차원 객체의 특성을 나타내는 객체를 포함하는 3 차원 객체를 식별하도록 복합 데이터의 스트림을 수신하고 데이터를 프로세스하며, 비디오 프로세서(316), 비디오 프로세서(318) 및 센서 프로세서(319)는 Cell Broadband Engine(Cell BE) 아키텍처를 구현할 수 있다(Cell Broadband는 Sony Computer Entertainment, Inc.의 등록된 트레이드마크임). Cell BE 아키텍처는 SPE(Synergetic Processing Elements)로서 또한 지칭된 다수의 추가적인 프로세서 요소에 접속되어 프로세서 요소 사이의 효율적인 통신을 위한 DMA 커맨드 세트를 구현하는 PPE(Power Architecture-based control)와 같은 베이스 프로세서 요소를 포함하는 프로세서 아키텍처를 지칭한다. 특히, SPE는 사용자보다 효율적으로 태스크를 프로세스하는 특정의 유형을 처리하도록 설계될 수 있다. 예를 들어, SPE는 프레임 스트림 내에서 이동 객체의 지점을 식별하고 매핑하기 위한 비디오 스트림의 프로세싱을 보다 효율적으로 처리하도록 설계될 수 있다. 또한, 비디오 프로세서(316), 비디오 프 로세서(318) 및 센서 프로세서(319)는 모니터링된 사용자의 행위, 및 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부가 예측될 수 있는 비디오 이미지 내에서 3 차원 비디오 및 고정 객체를 식별하도록 비디오 이미지의 효율적인 프로세싱을 가능하게 하는 다른 유형의 프로세서 아키텍처를 구현할 수 있다.
예에서, 비디오 프로세서(316), 비디오 프로세서(318) 및 센서 프로세서(319) 각각은 기하 구조 프로세서(320)에 대해 검출된 객체의 위치, 컬러, 형성 및 배향을 포함하는 특성을 생성하고 스트리밍한다. 일례에서, 기하 구조 프로세서(320)에 대해 스트리밍된 각각의 프로세스된 프레임은 카메라 ID, 프레임 번호, 타임 스탬프, 및 X 축 좌표(x_loc), Y 축 좌표(y_loc) Z 축 좌표(z_loc)의 2개 이상의 결합을 포함할 수 있으며, 이들로만 제한되지 않는다. x_loc, y_loc 및 z_loc는 객체의 모든 특성을 식별하는 다수의 지점 및 다른 데이터 세트를 각각 포함할 수 있다는 것에 주목하는 것이 중요하다. 다수의 객체가 단일의 프레임 내에서 검출되고 트래킹되면, 각각의 객체에 대한 X 축 좌표 및 Y 축 좌표는 단일의 스트리밍된 객체 특성 기록 또는 단일의 스트리밍된 객체 특성 기록에 포함될 수 있다. 또한, SONAR 검출된 위치에 대한 센서 프로세서(319)로부터의 프레임과 같은 스트리밍된 특성 프레임은, 예를 들어, z_loc로서 리스트된 Z 축 위치 좌표를 포함할 수 있다.
기하 구조 프로세서(320)는 비디오 프로세서(316) 및 비디오 프로세서(318)로부터의 2D 스트리밍된 객체 특성 및 센서 프로세서(319)로부터의 다른 객체 데이터를 수신한다. 기하 구조 프로세서(320)는 스트리밍된 2D 객체 특성 및 다른 데 이터와 조화하고 스트리밍된 2D 객체 특성 및 다른 데이터로부터의 3D 객체 특성(110)을 구성한다. 특히, 기하 구조 프로세서(320)는 객체의 깊이를 포함하는 3D 객체 특성(110)을 구성한다. 일례에서, 기하 구조 프로세서(320)에 의해 구성된 각각의 3D 객체 특성 기록은 타임 스탬프, 객체 또는 사용자 이동 레이블, X 축 좌표(x_loc), Y 축 좌표(y_loc) Z 축 좌표(z_loc) 및 센서로부터 수집된 추가적인 정보를 포함할 수 있다. 예를 들어, 센서로부터 수집된 추가적인 정보는 RFID 또는 GPS 검출된 위치 좌표로부터 수신된 위치 식별자를 포함할 수 있다.
예에서, 비디오 프로세서(316), 비디오 프로세서(318), 센서 프로세서(319) 및 기하 구조 프로세서(320) 중 임의의 하나에서, 특성 기록은 객체를 트래킹하는 지속성을 가능하게 하도록 적어도 하나의 식별자를 포함할 수 있다. 예를 들어, 식별자는 객체 자체에 대한 고유의 식별자, 및 사용자 이동으로서 식별된 객체를 포함하는 객체의 클래스 또는 유형의 식별자를 포함할 수 있다.
특히, 객체 특성을 식별하고 분류하는 비디오 프로세서(316), 비디오 프로세서(318) 및 센서 프로세서(319)에 의해, 프로세서의 각각은 객체에 대한 스트리밍된 2D 객체 특성을 검출하고 매칭하기 위한 2D 객체 특성을 보다 정확하게 식별하고 분류하도록 이전에 프로세스된 이미지 및 행위 매핑을 액세스하는 행위 데이터베이스(112)를 액세스할 수 있다. 또한, 기하 구조 프로세서(320)는 스트리밍된 2D 객체 특성, 및 행위 데이터베이스(112)로부터 액세스된 객체의 이전에 매칭되고 구성된 3D 특성에 근거하여, 객체의 3D 특성을 보다 정확하게 구성할 수 있다. 또한, 객체 데이터베이스(122)는 향후의 레퍼런스를 위해 스트리밍된 2D 객체 특성 및 3D 객체 특성을 저장할 수 있다.
또한, 객체 특성을 식별하고 분류하는 비디오 프로세서(316), 비디오 프로세서(318) 및 센서 프로세서(319)에 의해, 및 3D 객체 특성(110)을 포함하는 기하 구조 프로세서에 의해, 프로세서의 각각은 모니터링된 사람의 행위를 포함하는 검출된 객체를 식별할 수 있다. 예를 들어, 비디오 프로세서(316), 비디오 프로세서(318), 센서 프로세서(319) 및 기하 구조 프로세서(320)는 안면 표현 및 다른 신체 이동을 매핑하고, 안면 및 다른 신체 이동 인식을 수행하며, 행위를 나타내는 객체를 식별하기 위한 추가적인 프로세싱을 수행하는데 사용하기 위해 사양을 포함하는 행위 데이터베이스(112)를 액세스할 수 있다. 또한, 비디오 프로세서(316), 비디오 프로세서(318), 센서 프로세서(319) 및 기하 구조 프로세서(320)는 검출된 객체 및 배경에 근거하여 사용자가 위치하는 특정의 환경을 식별하는데 사용하기 위해 사양을 포함하는 행위 데이터베이스(112)를 액세스할 수 있다. 또한, 3D 객체 특성(110)을 구성함에 있어, 비디오 프로세서(316), 비디오 프로세서(318), 센서 프로세서(319) 및 기하 구조 프로세서(320)는 환경 내의 다수의 검출된 객체를 식별할 수 있고 이에 따라 단일의 모니터링된 사람의 다수의 행위 또는 다수의 사람 간의 하나 이상의 상호 작용을 식별할 수 있다. 객체가 위치하는 환경에서 검출된 객체 간의 상호 작용을 모니터링하고 식별함으로써, 행위가 행해지는 문맥에서의 행위의 보다 정확한 예측이 수행될 수 있다.
이제 도 4를 참조하면, 블록도는 행위 번역기 시스템의 일 실시예를 도시한다. 행위 번역기(106) 내에 도시된 다수의 구성요소가 단일의 시스템 내에 포함되 거나 또는 다수의 시스템 상에서 네트워크 상에 분배될 수 있음에 주목하는 것이 중요하다. 예에서, 3D 프로그램 기록(402)은 "타임 스탬프", "x_loc", "y_loc" 및 "z_loc" 데이터 요소를 포함한다. 3D 프로그램 기록(402)은 도 3의 기하 구조 프로세서(320)에 의해 결정된 바와 같은 추가적인 또는 대안적인 데이터 요소를 포함할 수 있다는 것이 이해될 것이다. 예를 들어, 3D 프로그램 기록(402)은 이미지 캡쳐 디바이스에 의해 수집되고 3D 객체 검출기(104) 내에서 프로세스된 포커스 영역, 컬러 및 다른 데이터 내에서가 아니라, 센서 영역 내에서의 사용자의 특정의 또는 상대적 행위를 식별하는 추가적인 정보를 포함할 수 있다.
행위 번역기(106)는 행위 번역기 콘트롤러(404)를 포함하며, 여기서 행위 번역기 콘트롤러(404)는 행위 번역을 수행하도록 프로그래밍된 하나 이상의 프로세서를 포함할 수 있다. 예를 들어, 행위 번역기 콘트롤러(404)는 3D 객체 특성 데이터 스트림을 효율적으로 프로세스하고, 다수의 사용자의 행위를 예측하며, 행위의 유형을 예측하고 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측하도록 프로그래밍된 CellBE 아키텍처를 갖는 프로세서를 포함할 수 있다. 또한, 행위 번역기 콘트롤러(404)는 소프트웨어가 실행하는 프로세서를 포함할 수 있으며, 여기서 소프트웨어는 3D 객체 특성 데이터 스트림의 프로세싱을 지시하고, 다수의 사용자의 행위를 예측하며, 행위의 유형을 예측하고, 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측한다.
3D 객체 특성 스트림을 프로세스하고, 행위를 예측하며, 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측함에 있어, 행위 번역기 콘트롤 러(404)는 스트리밍된 3D 객체 파라미터가 매핑된 행위 정의를 나타내는 퍼센티지 확률 및 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는 퍼센티지 확률로 하나 이상의 행위 정의에 3D 객체 특성을 매핑한다. 특히, 행위 번역기 콘트롤러(404)는 하나 이상의 행위에 대한 하나 이상의 행위 정의를 액세스하고 3D 객체가 하나 이상의 행위 정의에서 정의된 바와 같은 하나 이상의 정의의 하나 이상의 특성에 매칭하는지 여부를 판정한다. 행위 정의는 하나 이상의 유형의 행위의 매핑된 3D 모델을 포함할 수 있다. 또한, 행위 정의는 검출된 신체 부분, 이동 유형, 표면 특성, 형성, 이동 속도, 주파수, 이동 스팬, 이동 깊이, 온도 및 컬러를 포함하되 이들로만 제한되지 않는 행위의 특성을 식별하는 파라미터를 정의할 수 있다.
또한, 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는 것을 행위의 특성이 표시하는지 여부를 행위 번역기 콘트롤러(404)가 판정할 수 있도록 행위 정의가 지정된다. 예를 들어, 일단 행위 번역기 콘트롤러(404)가 객체 스트림이 사람이 자신의 코를 스크래칭하는 것을 나타내는 것으로 판정하면, 행위 번역기 콘트롤러(404)는 문서의 유형, 애플리케이션의 유형, 환경의 유형, 또는 다른 인자에 근거하여 사람이 자신의 코를 스크래칭하는 것이 특정의 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 판정한다. 예를 들어, 매칭 동안 사람이 자신의 코를 스크래칭하는 것은 매칭의 텍스트 트랜스크립트 시에 행위의 텍스트 표시자를 삽입하는 것을 트리거하는 행위 신호를 나타내지 않을 수 있다. 또한, 코 스크래치는 사용자가 통상 무의식적으로 수행하는 행위의 유형으로서 결정될 수 있다. 이와 대조적으로, 사용자가 2개의 손가락을 들어올리는 것은 의도적으로 수행하고 텍스트 표시자가 트랜스크립트에 부가되어야 하거나 또는 문서 상의 애플리케이션에 의해 수행될 기능을 트리거해야 하는 행위의 유형으로서 결정될 수 있다.
3D 객체 특성 스트림을 번역함에 있어, 행위 번역기 콘트롤러(404)는 하나 이상의 행위 프로세싱 시스템에 의해 특정의 포커스 영역에 대해 식별된 하나 이상의 3D 객체 특성 스트림에서 모든 트래킹된 객체의 집합적 분석을 수행한다. 일례에서, 행위 번역기 콘트롤러(404)는 특정의 포커스 영역 및 특정의 센서 영역에 대한 3D 객체 특성 스트림을 군집화한다. 다른 예에서, 행위 번역기 콘트롤러(404)는 특정의 포커스 영역 및 특정의 센서 영역에 중첩하는 영역으로부터 다수의 3D 객체 특성 스트림을 수신하고, 유사성, 위치 표시자 및 배향 표시자를 위한 행위 번역기 콘트롤러(404)는 특정의 포커스 영역 및 특정의 센서 영역에 대한 3D 객체 특성 스트림을 분석하며, 행위 번역기 콘트롤러(404)는 특정의 포커스 영역 및 특정의 센서 영역에 대한 3D 객체 특성 스트림을 영역의 3D 군집화 표시로 구성한다.
일 실시예에서, 행위 번역기 콘트롤러(404)는 트래킹된 객체의 군집을 단일의 행위 정의로 직접 매핑할 수 있다. 다른 실시예에서, 행위 번역기 콘트롤러(404)는 다수의 군집된 트래킹된 객체를 다수의 행위 정의로 매핑한다. 예를 들어, 안면 행위 및 헤드 행위를 통해 동시에 통신할 수 있으며, 안면 행위 및 헤드 행위의 트래킹된 이동을 통해 통신된 실제의 행위를 예측함에 있어, 행위 번역기 콘트롤러(404)는 행위의 각각을 예측하고 행위가 이와 결합하여, 문서의 제어를 트리거하는 행위 신호를 나타내는 행위를 나타내는지 여부를 예측할 수 있도록, 헤드 행위의 3D 객체 특성과 상관하여 안면 행위의 3D 객체 특성을 분석하고 행위 정의를 액세스한다. 추가적으로, 행위 번역기 콘트롤러(404)는 환경 내에서의 다수의 모니터링된 사람에 의해 행위를 나타내는 트래킹된 객체를 군집화할 수 있다. 행위 번역기 콘트롤러(404)는 다수의 모니터링된 사람에 의한 행위의 결합이 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측한다.
예에서, 행위 번역기 콘트롤러(404)는 제스처 행위 정의(412), 환경 특정 행위 정의(414), 애플리케이션 특정 정의(416) 및 사용자 특정 행위 데이터베이스(418)를 포함하는 정의 데이터베이스(112)로부터 행위 정의를 액세스한다. 정의 데이터베이스(112)는 추가적인 또는 대안적인 유형의 행위 정의를 포함할 수 있고 항목 정의 특정의 카테고리를 또한 포함할 수 있음이 이해될 것이다. 또한, 예에서 도시된 정의의 그루핑의 각각은 단일의 데이터베이스에 상주할 수 있거나 또는 네트워크를 통해 다수의 데이터베이스 및 데이터 저장 시스템으로부터 액세스될 수 있다는 것에 주목하는 것이 중요하다.
제스처 행위 정의(412)는 통상적인 행위에 대한 행위 정의를 포함한다. 예를 들어, 제스처 행위 정의(412)는 사람이 지적하고, 사람이 착용하며, 사람이 "예"라고 고개를 흔들거나 또는 "아니오"라고 고개를 젖는 것과 같은 통상적인 행위 또는 다른 유형의 통상적인 행위에 대한 행위 정의를 포함할 수 있다.
환경 특정 행위 정의(414)는 행위를 예측하고 행위가 검출되는 문맥에 특정한 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측하는 행위 정의 및 인자를 포함한다. 문맥의 예로는 모니터링된 사람의 현재의 행위, 사용자에 의 해 현재 액세스된 문서의 유형, 하루 중의 시간, 제스처 이면의 문화적 의미 및 문맥 내에서의 다른 행위, 문맥 내에서 발음된 언어, 및 행위가 번역될 수 있는 문맥에 영향을 주는 다른 인자를 포함할 수 있으며, 이들로만 제한되지 않는다. 행위 번역기 콘트롤러(404)는 모니터링된 사람 위치를 나타내는 GPS를 액세스하는 것으로부터 현재의 문맥을 검출하고, 언어의 편차를 검출하기 위한 모니터링된 사람의 음성의 음성 분석을 수행하는 것으로부터 문맥을 검출하며, 특정의 유형의 위치를 나타내는 이미지 데이터 내에서의 객체를 검출하는 것으로부터 문맥을 검출하거나, 또는 모니터링된 사람이 모니터링되는 문맥을 모니터링하는 다른 시스템으로부터 추가적인 데이터를 수신하는 것으로부터 문맥을 검출할 수 있다.
애플리케이션 특정 정의(416)는 예측된 행위 출력(108)에 근거하여 문서를 제어하도록 트리거되는 애플리케이션에 대해 특정한 행위 정의를 포함한다. 예를 들어, 예측된 행위 출력(108)이 문서에 행위의 텍스트 표시자를 삽입하도록 애플리케이션을 트리거하면, 애플리케이션 특정 정의(416)는 문서 내의 텍스트 표시자로서 추가하도록 관련되는 행위의 유형에 대해 행위 정의를 지정한다. 다른 예에서, 예측된 행위 출력(108)이 문서 상에서 기능을 수행하도록 애플리케이션을 트리거하면, 애플리케이션 특정 정의(416)는 문서 상에서 수행될 기능을 트리거하도록 관련되는 행위의 유형에 대해 행위 정의를 지정한다. 또한, 애플리케이션 특정 정의(416)는 행위의 의미에 영향을 주거나 또는 특정의 행위가 문서 상에서 수행될 기능을 트리거하도록 관련되는지 여부에 영향을 주는 애플리케이션에 의해 수행된 현재의 프로세스를 검출하는 정의를 포함할 수 있다.
사용자 특정 행위 데이터베이스(418)는 모니터링되는 특정의 사람에 대해 특정한 행위 정의를 포함한다. 일례에서, 행위 번역기 콘트롤러(404)는 사람에 의해 또는 행위 번역기 콘트롤러(404)에 의해 수행된 안면 또는 음성 인식으로부터 사용자에 대한 식별자를 액세스한다. 또한, 행위 번역기 콘트롤러(404)는 모니터링된 사람의 실제의 아이덴티티를 식별하지 않을 수 있으나, 행위가 문서 제어를 트리거하는 사람의 유형으로서 사람을 식별하는 사람의 속성을 식별할 수 있다. 다른 예에서, 안면 인식은 모니터링된 사람이 지니는 RFID 또는 식별에 대해 스캐닝하고, 사용자에 의해 착용된 특정의 항목을 검출하거나, 또는 사용자의 식별을 모니터링하는 시스템으로부터 다른 유형의 식별을 액세스하는 것에 의해서만 수행될 수 있다.
정의 데이터베이스(112)는 특정의 환경 내에서의 모니터링된 사람의 경험 레벨에 따라 지정된 행위 정의 및 다른 인자를 또한 포함할 수 있다. 예를 들어, 정의 데이터베이스 내의 행위의 특성 및 정의 데이터베이스(112) 내에서 그루핑된 특정의 행위 정의는 행위 신호에 근거하여 문서 제어를 트리거함에 있어 사용자의 경험 레벨에 따라 지정될 수 있다.
또한, 이용 가능한 행위 정의 내에서, 행위 정의는 3D 포커스 영역 내에서 이동의 특정의 영역 또는 이동의 특정의 깊이와 연관될 수 있다. 특히, 이동이 검출되는 3 차원 포커스 영역은 3 차원 부분으로 분할될 수 있으며, 각각의 부분에서 행해진 이동은 상이한 행위 정의의 선택 하에서 번역될 수 있다. 예를 들어, 포커스의 하나의 3 차원 부분은 "활성 구역"으로 간주될 수 있고, 여기서 영역 내의 검 출된 이동은 키보드의 특정의 거리 내에서의 구역 또는 사용자가 행위 신호에 근거하여 문서 제어를 트리거할 수 있는 다른 영역과 같은 특정의 활성 구역과 연관된 행위 정의 선택과 비교된다.
추가적으로, 정의 데이터베이스(112) 내에 포함된 행위 정의 내에서, 행위의 예측 가능성은 연관된 오디오 서명 또는 오디오로부터의 변환된 텍스트의 존재에 의해 증가될 수 있다. 특히, 센서(240) 또는 다른 오디오 센서는 환경으로부터 또는 특정의 사람으로부터 오디오를 검출할 수 있다. 행위 번역기 콘트롤러(404)는 검출된 이동이 특정의 유형의 행위를 나타내는 확률을 감지된 오디오가 증가시키는지 여부를 판정할 수 있다. 일례에서, 행위 번역기 콘트롤러(404)는 오디오 신호를 텍스트로 변환하고 텍스트가 행위 신호와 전형적으로 연관된 유형의 워드에 매칭하는지 여부를 판정할 수 있다.
정의 데이터베이스(112) 내에 포함된 행위 정의는 행위를 보다 정확하게 매핑하고 예측하도록 음성 인식이 트레이닝됨에 따라 유사한 방식으로 모니터링된 사람의 사용자 피드백에 근거하여 부가 또는 조정될 수 있다. 예를 들어, 정의 데이터베이스(112)는 행위에 응답하여 문서 제어 트리거의 특정의 유형이 사용자의 행위 신호에 의해 트리거되도록 의도된 문서 제어의 유형인지 여부를 표시하는 모니터링된 사람을 통해 추가적인 행위 정의를 인지하고 이미 인지된 행위 정의의 파라미터를 조정할 수 있다.
행위 번역기 콘트롤러(404)는 행위 기록(420)과 같은 하나 이상의 행위 기록의 형태로 예측된 행위 출력(108)을 출력할 수있다. 행위 기록(420)은 "행위 유 형", "표시자로서의 확률 %", 및 "행위 신호 유형"을 표시한다. "행위 신호 유형"은, 예를 들어, 행위 신호로서 행위의 퍼센티지 확률을 표시할 수 있다. 다른 예에서, "행위 신호 유형"은 행위 신호가 연관되는 사용자, 환경의 유형, 애플리케이션 또는 문서에 대한 식별자를 표시할 수 있다. 또한, "행위 신호 유형"은 행위 유형을 예측하고 행위 유형이 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측함에 있어, 행위 번역기 콘트롤러(404)에 의해 수집된 데이터의 추가적인 또는 대안적인 유형을 포함할 수 있다. 대안적으로, 행위 번역기 콘트롤러(404)는 예측된 행위 기록(420)에서 임의의 예측된 행위를 문서 제어 시스템으로 송신하고 예측된 행위 유형이 문서 제어 시스템에 의해 문서의 제어를 트리거하는지 여부를 판정하도록 문서 제어 시스템을 편집할 수 있다.
또한, 도시된 바와 같이, 예측된 행위 기록(420)은 개시 X, Y 및 Z 축 특성을 포함하고, "start_x_pos", "end_x_pos", "start_y_pos", "end_y_pos", "start_z_pos" 및 "end_z_pos"로서 리스트된 행위의 위치, 이동 방향, 이동 속도, 및 행위가 검출되는 시간을 표시하는 타임 스탬프 범위를 나타내는 검출된 행위의 X, Y 및 Z 축 특성을 편집한다. 추가적으로 또는 대안적으로, 예측된 행위 기록(420)은 모니터링된 사람의 위치, 이동 방향, 이동 속도의 표시자를 포함할 수 있다. 또한, RFID 데이터, GPS 좌표, 피부 표면 특성 및 다른 감지된 데이터와 같은 센서로부터 획득된 추가적인 정보는 특정의 행위 기록과 연관되거나 또는 개별적인 객체 기록 내에 포함될 수 있다.
행위 기록(420)을 전달함에 있어, 행위 번역기 콘트롤러(404)는 특정의 유형 의 행위 기록을 필터링할 수 있다. 예를 들어, 행위 번역기 콘트롤러(404)는 행위 유형으로서 행위의 예측 가능성이 특정의 퍼센티지보다 낮을 기록을 전달할 수 없다. 또한, 행위 기록(420)을 전달함에 있어, 행위 번역기 콘트롤러(404)는 하나의 유형의 문서 제어 시스템을 전달하는 하나의 유형의 행위 기록을 필터링하고 다른 유형의 문서 제어 시스템을 전달하는 다른 유형의 행위 기록을 필터링할 수 있다.
이제 도 5를 참조하면, 블록도는 본 발명이 구현될 수 있는 컴퓨터 시스템의 일 실시예를 도시한다. 본 발명의 좌표 및 시스템은 네트워크(502)와 같은 네트워크에 통신 가능하게 접속된 컴퓨터 시스템(500)과 같은 다양한 컴퓨터 시스템을 포함하는 다양한 시스템으로 실행될 수 있다.
컴퓨터 시스템(500)은 컴퓨터 시스템(500) 내에서 정보를 통신하는 버스(522) 또는 다른 통신 디바이스, 및 버스(522)에 결합되어, 정보를 프로세스하는 프로세서(512)와 같은 적어도 하나의 프로세싱 디바이스를 포함한다. 버스(522)는 바람직하게 브리지 및 어댑터에 의해 접속되고 다수의 버스 콘트롤러에 의해 컴퓨터 시스템(500) 내에서 제어되는 낮은 레이턴시 및 보다 높은 레이턴시 경로를 포함한다. 서버로서 구현될 때, 컴퓨터 시스템(500)은 네트워크 서비스 전력을 향상시키도록 설계된 다수의 프로세서를 포함할 수 있다. 다수의 프로세서가 버스(522)를 공유하는 경우, 버스 액세스 및 로크를 관리하는 추가적인 콘트롤러(도시되지 않음)가 구현될 수 있다.
프로세서(512)는 통상적인 동작 동안, 컴퓨터 시스템(200), 애플리케이션 소프트웨어(570), 미들웨어(도시되지 않음), 및 RAM(Random Access Memory)(514)와 같은 다이내믹 저장 디바이스, ROM(Read Only Memory)(516)와 같은 스태틱 저장 디바이스, 대형 저장 디바이스와 같은 데이터 저장 디바이스, 또는 데이터 저장 매체로부터 액세스 가능한 다른 코드의 제어 하에 데이터를 프로세스하는 IBM의 PowerPCTM 프로세서와 같은 범용 프로세서일 수 있다. 일례에서, 프로세서(512)는 3D의 데이터의 복합 스트림을 보다 효율적으로 프로세스하도록 CellBE 아키텍처를 또한 구현할 수 있다. 프로세서(512)는 다른 유형의 프로세서 아키첵처를 구현할 수 있음이 이해될 것이다. 또한, 프로세서(512)는 국소적으로 또는 네트워크를 통해 접속되고 프로세싱 태스크를 효율적으로 분배하도록 인에이블된 다수의 프로세서 칩을 나타낼 수 있다.
일 실시예에서, 프로세서(512)에 의해 수행된 동작은 도 11 내지 도 14의 플로우차트의 동작 및 본 명세서에서 기술된 동작에서 기술된 바와 같이 사람이 행위를 통해 통신하고, 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 판정하며, 행위 신호에 응답하여 문서를 제어할 수 있다. 프로세서(512)에 의해 수행된 동작은 운영 체제(560), 애플리케이션 소프트웨어(570), 미들웨어 또는 다른 코드에 의해 요청될 수 있거나 또는 본 발명의 단계는 단계를 수행하는 프로그래밍 로직을 포함하는 특정의 하드웨어 구성요소에 의해, 또는 프로그래밍된 컴퓨터 구성요소 및 커스텀 하드웨어 구성요소의 임의의 결합에 의해 수행될 수 있다.
본 발명의 행위 프로세싱 시스템 및 행위 인에이블된 문서 데어 시스템은 컴 퓨터 시스템(500) 상에서 실행될 때, 컴퓨터 시스템(500)이 본 발명에 따른 프로세스를 수행하도록 하는 컴퓨터 판독 가능한 프로그램의 실행 가능한 인스트럭션을 저장하는 컴퓨터 판독 가능한 또는 머신 판독 가능한 매체 상에 포함되는 컴퓨터 프로그램 제품으로서 제공될 수 있다. 본 명세서에서 사용된 바와 같은 "컴퓨터 판독 가능한 매체" 또는 "머신 판독 가능한 매체"란 용어는 프로세서(512)에 대한 인스트럭션 또는 실행을 위한 컴퓨터 시스템(500)의 다른 구성요소를 제공하는데 수반하는 임의의 매체를 포함한다. 이러한 매체는 비휘발성 매체 및 휘발성 매체와 같은 저장 유형 매체, 및 전송 매체를 포함하되, 이들로만 제한되지 않는 다수의 형태를 취할 수 있다. 비휘발성 매체의 통상적인 형태는, 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프 또는 임의의 다른 자기 매체, CD-ROM(compact disk ROM) 또는 임의의 다른 광학 매체, 펀치 카드 또는 홀의 패턴을 갖는 임의의 다른 물리적 매체, PROM(programmable ROM), EPROM(erasable PROM), EEPROM(electrically EPROM), 플래시 메모리, 임의의 다른 메모리 칩 또는 카트리지, 또는 컴퓨터 시스템(500)이 판독할 수 있고 인스트럭션을 저장하는데 적합한 임의의 다른 매체를 포함할 수 있다. 본 발명의 실시예에서, 비휘발성 매체의 예는 도시된 바와 같이 컴퓨터 시스템(500)의 내부 구성요소인 대형 저장 디바이스(518)이지만, 외부 디바이스에 의해 제공된다는 것이 또한 이해될 것이다. 휘발성 매체는 RAM(514)와 같은 다이내믹 메모리를 포함한다. 전송 매체는 버스(522)를 포함하는 와이어를 포함하여, 동축 케이블, 구리 와이어, 광 섬유를 포함한다. 전송 매체는 무선 주파수 또는 적외선 데이터 통신 동안 생성된 것과 같 은 어쿠스틱 파형 또는 광 파형의 형태를 또한 취할 수 있다.
또한, 본 발명의 기능 관리 툴은 컴퓨터 프로그램 제품으로서 다운로드되거나 또는 분배될 수 있으며, 여기서 프로그램 인스트럭션은 네트워크(102)를 통해 네트워크 링크(534)(예를 들어, 매체 또는 버스(522)에 결합된 통신 인터페이스(532)에 대한 네트워크 접속)에 대해 캐리어 파형 또는 다른 전파 매체로 구현된 데이터 신호에 의해 서버(540)와 같은 원격 컴퓨터로부터 요청 컴퓨터 시스템(500)으로 전송될 수 있다. 일례에서, 프로세서(12)가 다수의 프로세서 요소를 포함할 때, 프로세서 요소 간에 분배된 프로세싱 태스크는 국소적으로 또는 네트워크를 통하든 간에, 컴퓨터 프로그램 제품을 나타낼 수 있으며, 여기서 프로세싱 태스크는 Java(Java는 선 마이크로시스템즈사의 등록된 트레이드마크임) 객체를 액세스하는 프로세스 또는 프로그램 인스트럭션을 수행하는 프로그램 인스트럭션 또는 프로세스를 수행하는 다른 실행을 포함한다. 통신 인터페이스(532)는, 예를 들어, LAN(local area network) 또는 WAN(wide area network)에, 또는 ISP(Internet Service Provider)에 직접 접속될 수 있는 네트워크 링크(534)에 결합하는 투 웨이(two-way) 데이터 통신 결합을 제공한다. 특히, 네트워크 링크(534)는 네트워크(502)와 같은 하나 이상의 네트워크에 유선 및/또는 무선 네트워크 통신을 제공할 수 있다. 또한, 도시되어 있지 않으나, 통신 인터페이스(532)는 디바이스 드라이버와 같은 소프트웨어, 어댑터와 같은 하드웨어, 및 통신을 가능하게 하는 다른 콘트롤러를 포함할 수 있다. 서버로서 구현될 때에, 컴퓨터 시스템(500)은, 예를 들어, 입/출력 콘트롤러에 접속된 다수의 PCI(peripheral component interconnect) 버스 브리지를 통해 액세스 가능한 다수의 통신 인터페이스를 포함할 수 있다. 이러한 방식으로, 컴퓨터 시스템(500)은 다수의 개별적인 포트를 통해 다수의 클라이언트에 대한 접속을 허용하고 각각의 포트는 다수의 클라이언트에 대한 다수의 접속을 또한 지원할 수 있다.
네트워크 링크(534) 및 네트워크(502)는 디지털 데이터 스트림을 운반하는 전기적, 전자기적, 또는 광학적 신호이다. 각종 네트워크를 통한 신호 및 네트워크 링크(534) 상에서 통신 인터페이스(532)를 통해 컴퓨터 시스템(500)으로 및 컴퓨터 시스템(500)으로부터 디지털 데이터를 운반하는 신호는 정보를 트랜스포트하는 캐리어 파형의 형태일 수 있다.
또한, 컴퓨터 시스템(500)은 입력 및 출력을 촉진하는 다수의 주변 구성요소를 포함할 수 있다. 이들 주변 구성요소는 버스(522)의 다수의 레벨 중 하나에 결합된, 다수의 콘트롤러, 어댑터, 및 입/출력(I/O) 인터페이스(526)와 같은 확장 슬롯에 접속된다. 예를 들어, 입력 디바이스(524)는 입력을 제어하는 I/O 인터페이스(526)를 통해 버스(522) 상에 통신 가능하게 인에이블된, 예를 들어, 마이크로폰, 비디오 캡쳐 디바이스, 카드 판독기, 신체 스캐닝 시스템, 키보드, 마우스, 또는 다른 입력 주변 디바이스를 포함할 수 있다. 또한, 예를 들어, 출력을 제어하는 I/O 인터페이스(526)를 통해 버스(522) 상에 통신 가능하게 인에이블된, 출력 디바이스(520)는, 예를 들어, 하나 이상의 그래픽 디스플레이 디바이스, 오디오 스피커, 및 촉각(tactile) 검출 가능한 출력 인터페이스를 포함할 수 있으나, 다른 출력 인터페이스를 또한 포함할 수 있다. 본 발명의 대안적인 실시예에서, 추가적 인 또는 대안적인 주변 구성요소가 부가될 수 있다.
당 분야에서 통상의 지식을 가진 자라면 도 5에 도시된 하드웨어가 가변될 수 있음을 이해할 것이다. 또한 당 분야에서 통상의 지식을 가진 자라면 도시된 예가 본 발명에 대해 아키텍처 제한을 암시하지 않는다는 것을 이해할 것이다.
이제 도 6을 참조하면, 블록도는 행위 인에이블된 리소스 제어 방법, 시스템 및 프로그램 제품이 구현될 수 있는 분배 네트워크 환경의 일례를 도시한다. 분배 네트워크 환경(600)은 행위 인에이블된 리소스 제어 방법, 시스템 및 프로그램이 구현될 수 있는 하나의 유형의 네트워크로 도시되어 있으나, 행위 인에이블된 리소스 제어 방법, 시스템 및 프로그램 제품이 다른 네트워크 환경에서 구현될 수 있다는 것에 주목하는 것이 중요하다. 또한, 분배 네트워크 환경(600) 내에서의 시스템의 분배가 시스템의 분배로 도시되어 있으나, 네트워크 환경 내에서의 다른 시스템의 분배가 구현될 수 있다는 것에 주목하는 것이 중요하다. 또한, 예에서, 도시된 시스템은 행위 프로세싱 시스템 및 행위 인에이블된 문서 제어 시스템을 구현함에 있어 액세스될 수 있는 또는 액세스를 요청할 수 있는 시스템 및 서비스의 유형을 나타낸다는 것에 주목하는 것이 중요하다. 네트워크 환경에 있어서 다른 유형의 시스템 및 서비스와 다른 그루핑의 시스템 서비스가 행위 프로세싱 시스템 및 행위 인에이블된 문서 제어 시스템을 구현할 수 있다는 것이 이해될 것이다.
도시된 바와 같이, 분배 네트워크 환경(600) 내에서의 다수의 시스템은 각종 디바이스 및 통신 가능하게 접속된 컴퓨터 사이의 통신 링크를 제공하도록 사용된 매체인 네트워크(502)를 통해 통신 가능하게 접속될 수 있다. 네트워크(502)는, 예를 들어, 전화 접속 및 무선 전송 접속을 통해 행해진 유선 또는 광 파이버 케이블 및 임시 접속과 같은 영구적인 접속을 포함할 수 있다. 네트워크(502)는 패킷 스위칭 기반형 및 전화 기반형 네트워크, LAN(local area network) 및 WAN(wide area network), 공용 및 사설 네트워크를 나타낼 수 있다. 도 6은 행위 프로세싱 시스템 및 행위 인에이블된 문서 제어 시스템을 지원하는 분배 네트워크 환경의 일례를 나타내지만, 다른 네트워크 구성 및 네트워크 구성요소가 구현될 수 있다는 것에 주목해야 하는 것이 중요하다.
도 6에 도시된 네트워크 환경은 다수의 유형의 네트워크 아키텍처를 구현할 수 있다. 일례에서, 네트워크 환경은 클라이언트/서버 아키텍처를 이용하여 구현될 수 있으며, 여기서 데이터 또는 프로세스를 요청하는 컴퓨팅 시스템은 클라이언트로서 지칭되고 데이터 요청 또는 프로세스를 프로세스하는 컴퓨팅 시스템은 서버로서 지칭된다. 클라이언트/서버 아키텍처 내에서, 클라이언트 시스템이 클라이언트 및 서버로서 수행할 수 있고, 서버 시스템이 클라이언트 및 서버로서 수행할 수 있다는 것이 이해될 것이다. 또한, 다른 유형의 네트워크 아키텍처 및 네트워크 아키텍처의 결합이 구현될 수 있다는 것이 이해될 것이다.
예에서, 분배 네트워크 환경(600)은 이미지 캡쳐 시스템(604)을 갖는 클라이언트 시스템(602) 및 이미지 캡쳐 시스템(608)을 갖는 클라이언트 시스템(606)을 포함한다. 일례에서, 이미지 캡쳐 시스템(604 및 608)은 이미지 캡쳐 디바이스(202 및 204)와 같은 하나 이상의 이미지 캡쳐 디바이스를 구현하는 입체적 이미지 디바이스를 나타내고, 센서(240)와 같은 하나 이상의 센서를 포함할 수 있다. 이미지 캡쳐 시스템(604 및 608)은 이미지 및 다른 데이터를 캡쳐하고 프로세싱을 위한 네트워크(602)를 통해 그 이미지 및 다른 데이터를 다른 시스템으로 스트리밍한다. 또한, 이미지 캡쳐 시스템(604 및 608)은 도 3을 참조하여 기술된 비디오 프로세서(316) 및 비디오 프로세서(318)와 같은 객체 특성을 트래킹하는 비디오 프로세서 및 도 3을 참조하여 기술된 기하 구조 프로세서(320)와 같은 3D 객체 특성의 스트림을 생성하는 기하 구조 프로세서를 포함할 수 있다.
일례에서, 클라이언트 시스템(602) 및 클라이언트 시스템(606)은 캡쳐된 이미지 프레임을 하나 이상의 객체 검출 가능한 서비스로 스트리밍할 수 있다. 일례에서, 행위 프로세싱 서비스 제공자 서버(620)는 스트리밍된 이미지 및 다른 데이터를 프로세스하는 3D 객체 검출기(104)와 같은 객체 검출기 서비스 및 사용자 행위 융형을 예측하고, 캡쳐된 이미지가 예측된 유형의 행위를 나타내는 확률을 예측하며, 행위가 문서의 제어를 트리거하는 행위 신호를 나타내는지 여부를 예측하고, 네트워크(502)를 통해 액세스 가능한 하나 이상의 문서 제어 시스템에 대해 예측된 행위 기록의 출력을 제어하는 행위 번역기(186)와 같은 행위 번역기 서비스를 포함하는 서비스를 제공한다.
행위 프로세싱 서비스 제공자 서버(620)에 대해, 상이한 엔티티가 행위 프로세싱 서비스를 구현할 수 있고 상이한 엔티티가 행위 프로세싱 서비스를 액세스할 수 있다. 일례에서, 클라이언트 시스템(602) 및 클라이언트 시스템(606) 중 하나에 로그한 사용자는 행위 프로세싱 서비스에 대해 가입할 수 있다. 다른 예에서, 이미지 캡쳐 시스템 또는 행위 프로세싱을 요청하는 특정의 애플리케이션은 캡쳐된 이미지 및 데이터를 행위 프로세싱 서비스에 자동으로 스트리밍할 수 있다. 또 다른 예에서, 비즈니스 또는 다른 엔티티는 통신 네트워크에서 행위 프로세싱 서비스를 구현할 수 있다.
다른 예에서, 클라이언트 시스템(602) 및 클라이언트 시스템(606)의 각각은 3D 객체 검출기 서버(624)에 캡쳐된 프레임을 스트리밍할 수 있다. 3D 객체 검출기 서버(624)는 이미지 캡쳐 시스템(604) 또는 이미지 캡쳐 시스템(608)과 같은 이미지 캡쳐 시스템으로부터 캡쳐된 이미지 및 다른 데이터를 수신하고, 행위 번역기 서버(622) 또는 행위 프로세싱 서비스 제공자 서버(620)와 같은 행위 번역기 시스템으로의 출력을 위해, 검출된 행위의 3D 객체 특성을 생성하도록 이미지 및 다른 데이터를 프로세스한다. 추가적인 또는 대안적인 실시예에서, 객체 검출기 서버는 이들 시스템 내에서 수행된 하나 이상의 다른 서비스와 함께, 하나 이상의 다른 시스템 내에서 구현될 수 있다. 특히, 추가적인 또는 대안적인 실시예에서, 3D 객체 검출기 디바이스는 이미지 및 다른 데이터가 캡쳐되는 클라이언트 시스템 내에서 구현될 수 있다.
기술된 서버 시스템의 각각은 하나 이상의 시스템 상에서 분배될 수 있다. 또한, 서버 시스템의 각각은 효율적인 3D 데이터 프로세싱을 수행하도록 프로그래밍된 CellBE 아키텍처를 갖는 프로세서를 포함하는 3D 이미지 프로세싱 전력으로 시스템 상에 분배될 수 있다. 일례에서, 비즈니스 또는 서비스 제공자와 같은 엔티티는 객체 검출 및 행위 번역을 위한 개별적인 서버 시스템을 구현할 수 있으며, 여기서 다수의 행위 번역기 모듈은 상이한 유형의 3D 객체 특성을 프로세스하는 각 각의 행위 번역기 서버로 구현될 수 있다.
행위 프로세싱 서비스 제공자 서버(620), 행위 번역기 서버(622) 및 3D 객체 검출기 서버(624)는 생(raw) 이미지의 정의 데이터베이스(112)와 같은 정의 데이터베이스, 3D 행위 특성, 행위 정의 및 다른 객체 정의를 국소적으로 저장할 수 있다. 또한, 행위 프로세싱 서비스 제공자 서버(620), 행위 번역기 서버(622) 및 3D 객체 검출기 서버(624)는 정의 데이터베이스(112)를 촉진하는 행위 데이터베이스 서비스 서버(626)를 액세스할 수 있다.
또한, 행위 데이터베이스 서비스 서버(626)는 행위 인지 콘트롤러(630)를 포함한다. 행위 인지 콘트롤러(630)는 문서 내의 텍스트 표시자를 통해 기록되어야 하거나 또는 문서 상에서 수행될 특정의 기능에 대한 행위 신호를 나타내야 하는 특정의 유형의 행위의 샘플을 제공하도록 사용자를 프롬프트한다. 또한, 행위 인지 콘트롤러(630)는 예측된 행위 유형이 실제로 예측되는지 여부를 표시하도록 사용자를 프롬프트한다. 또한, 행위 인지 콘트롤러(630)는 객체 검출기 서비스 및 행위 번역기 서비스에 의해 액세스될 때 3D 객체 특성의 생성의 정확성 및 이들 서비스에 의해 3D 객체 특성으로부터의 행위 유형의 예측의 정확성을 증가시키는 정의 데이터베이스(112) 내의 행위 정의를 행위 인지 콘트롤러(630)가 인지하고 유지할 수 있도록 하는 다른 정보를 수집한다.
또한, 행위 프로세싱 서비스 제공자 서버(620), 행위 번역기 서버(622), 3D 객체 검출기 서버(624) 또는 행위 검출기 서비스 서버(626)는 클라이언트 프로파일 서비스 서버(640)로부터, 특정의 사용자에 대해 행위 신호를 나타내는 행위의 유형 을 지정하는 사용자에 대해 추가적인 컨텍스트 정보를 액세스할 수 있다. 일례에서, 클라이언트 프로파일 서비스 서버(640)는 사용자가 개별적인 서버의 각각에 개별적인 행위 샘플을 제공할 필요가 없도록, 행위 프로세싱 서비스 제공자 서버(620), 행위 번역기 서버(622), 문서 제어 시스템(610) 및 문서 제어 시스템(614)과 같은 다수의 서비스에 대해 액세스 가능한 특정의 유형의 행위에 대한 행위 정의를 캡쳐하고 저장하는 것을 촉진한다.
행위 프로세싱 서비스 제공자 서버(620) 및 행위 번역기 서버(622)는 네트워크(502)를 통해 행위 인에이블된 애플리케이션에, 예측된 행위 기록(420)과 같은 예측된 행위 기록을 스트리밍한다. 예시적인 실시예에서, 클라이언트 시스템(606)은 클라이언트 시스템(606)이 행위 기록 및 다른 데이터에 근거하여, 단일의 애플리케이션 내에서 또는 다수의 애플리케이션 상에서 문서를 결정하고 제어할 수 있도록 하는 행위 인에이블된 문서 제어 시스템인 문서 제어 시스템(610)을 포함한다. 클라이언트 시스템(606)에서의 문서 제어 시스템(610)은 이미지 캡쳐 시스템(608)에 의해 캡쳐된 바와 같이, 클라이언트 시스템(606)으로부터 예측된 행위 기록을 수신할 수 있거나, 또는 다른 이미지 캡쳐 시스템에 의해 검출된 이미지 및 데이터에 근거하여 예측된 행위 기록을 수신할 수 있다.
또한, 예시적인 실시예에서, 클라이언트 서비스 제공자 서버(612)는 다수의 가입자에 대한 행위 기록에 근거하여 문서를 제어하도록 클라이언트 서비스 제공자 서버(612)를 편집하는 행위 인에이블된 문서 제어 디바이스인 문서 제어 시스템(614)을 포함한다. 특히, 클라이언트 서비스 제공자 서버(612)는 하나 이상의 가입자 클라이언트 시스템 또는 가입자 사용자에 문서 제어 서비스를 제공하는 서버를 나타낸다. 문서 제어 시스템(614)은 특정의 사용자, 특정의 이미지 캡쳐 시스템, 특정의 클라이언트 시스템, 특정의 환경 또는 다른 연관성과 연관된 행위 기록을 수신하고, 문서 제어를 위한 제어 신호를 하나 이상의 클라이언트 시스템에 대해 결정하고 출력할 수 있다. 또한, 문서 제어 시스템(614)은 행위 기록을 수신하고, 행위 기록에 근거하여 요구된 문서 제어를 결정하며, 요구된 문서 제어를 수행할 수 있다.
이제 도 7을 참조하면, 블록도는 행위 인에이블된 문서 제어 시스템과 통신하는 행위 프로세싱 시스템의 구현의 일례를 도시한다. 문서 제어 시스템(700)은 행위 프로세싱 시스템(100)으로부터, 예측된 행위 기록(420)과 같은 예측된 행위 기록을 수신한다. 예측된 행위 기록에 근거하여, 문서 제어 시스템(700)은 문서(724)와 같은 특정의 문서를 제어하거나, 또는 다수의 문서를 제어하는 문서 제어 신호(722)를 지정한다. 일례에서, 문서 제어 신호는 문서 또는 문서에 적용할 기능에 삽입하기 위한 요소를 지정할 수 있다.
예에서, 문서 요소 콘트롤러(702)는 예측된 행위 기록(420)을 수신하고 행위 변환 데이터베이스(704)에 근거하여 행위를 문서 제어 신호(722)로 변환한다. 예에서, 행위 변환 데이터베이스(706)는 예측된 행위 기록(420)으로부터의 행위 유형(706) 및 최소 확률(708)을 문서에 공급될 문서 요소(710) 또는 기능(712)으로 변환하는 다수의 엔트리를 포함한다.
특히, 문서 요소(710)는 텍스트 또는 그래픽 요소를 나타낼 수 있다. 또한, 문서 요소(710)는 사용자에 의해 수행된 행위를 지정할 수 있거나 또는 사용자에 의해 수행된 행위로부터 변환된 텍스트 또는 그래픽 요소를 지정할 수 있다. 예를 들어, 사용자가 포인터 핑거를 들어올리면, 문서 요소(710)는 수 "1"을 나타내거나 또는 누군가를 대기하라는 요청을 나타내는 것과 같이, 행위가 행위의 문자 표시자로 변환되거나 또는 행위 의미의 표시자를 변환되는지에 따라, "사용자가 포인터 핑거를 들어올린다"의 텍스트 문장, 들어올려진 포인터 핑거를 갖는 핸드의 그래픽 요소, "1"의 텍스트 문장, 또는 "대기"의 텍스트 문장을 포함할 수 있다.
기능(712)은 전체 문서, 문서의 일부분, 또는 문서 내의 특정 요소에 적용될 기능을 나타낼 수 있다. 기능(712)의 예는 텍스트를 볼드체, 이탤릭체 또는 취소선으로 변경하는 것과 같은 텍스트 포맷의 지정, 스펠링 체크, 문서 내의 트래킹 변경과 같은 툴 애플리케이션, 또는 다른 특정 기능의 애플리케이션을 포함할 수 있으며, 이들로만 제한되지 않는다.
또한, 행위 유형은 하나 이상의 문서 요소 및 기능 요소로 변환될 수 있다는 것에 주목해야 하는 것이 중요하다. 일례에서, 사용자는 회의 동안 사람들을 지정할 수 있으며, 사람들을 지정하면 이메일 애플리케이션이 지정된 이들 사람들의 이메일 어드레스를 액세스하도록 요청하는 기능 요소(712)를 트리거하고 이메일 어드레스를 전자 메일 메시지의 어드레스인 cc로서 삽입하도록 문서 요소(710)를 트리거한다. 다른 예에서, 예측된 행위 기록은 x 레이 또는 다른 디스플레이된 문서에 대해 지정하는 행위를 지정하고 지정된 문서 내의 위치를 지정하는 것을 포함할 수 있다. 기능 요소(712)는 지정된 문서 내의 위치에서 코멘트 박스를 생성하는 기능 을 요청할 수 있다. 문서 요소(710)는 임의의 스피치를, 문서를 지정하는 것과 연관하여 검출된 텍스트로의 변환, 사용자 지정의 텍스트 표시자 및 타임 스탬프, 또는 다른 행위 유형의 다른 텍스트 또는 그래픽 표시자를 포함하되, 이들로만 제한되지 않는 고멘트 박스에 부가하기 위한 텍스트 또는 그래픽 표시자를 지정할 수 있다.
일례에서, 문서 제어 시스템(700)은 문서(724)를 제어하는 특정의 애플리케이션의 기능적 구성요소이다. 다른 예에서, 문서 제어 시스템(700)은 특정의 애플리케이션과 별도로 구현되고 문서 제어 신호(722)를 애플리케이션 제어 문서(724)에 대한 입력으로서 송신한다.
또한, 문서 제어 시스템(700)은 문서 프레퍼런스(preference) 애플리케이션 프로그래밍 인터페이스(application programming interface : API)(714)를 포함한다. 일례에서, 문서 프레퍼런스 API(714)는 예측된 행위 유형이 문서 요소 또는 기능으로 변환되어야 하는지 여부를 사용자가 선택할 수 있는 인터페이스를 인에이블링한다. 다른 예에서, 문서 프레퍼런스 API(714)는 애플리케이션이 문서 요소를 삽입하는 문서 제어 신호를 적용하거나 또는 문서에 기능을 적용하는 문서 제어 신호만을 적용하는지 여부를 애플리케이션이 지정할 수 있도록 한다. 또한, 문서 프레퍼런스 API(714)는 유형 선택이 문서 요소로 변환하고 행위 유형 선택이 기능으로 변환하는 것을 애플리케이션이 지정할 수 있도록 한다.
이제 도 8을 참조하면, 블록도는 다수의 애플리케이션에 대해 문서 제어 신호를 관리하는 문서 제어 시스템의 일례를 도시한다. 예에서, 문서 제어 시스 템(700)은 변환 프레퍼런스 인지 콘트롤러(802)를 포함한다. 더 기술되는 바와 같이, 변환 프레퍼런스 인지 콘트롤러(802)는 행위 변환 데이터베이스(704)에 저장하기 위한 행위 유형을 변환하는 규칙을 각각의 개별적인 애플리케이션에 대해 사용자가 선택할 수 있는 인터페이스를 촉진한다. 일례에서, 변환 규칙은 특정의 애플리케이션 식별자(804)에 대해 정확하게 예측되는 최소 확률(708)로, 행위 유형(706)을 특정의 문서 요소(710) 또는 식별된 애플리케이션의 기능(712)으로 변환한다. 또한, 행위 유형을 변환하는데 있어 인자는 특정의 사용자 환경 또는 하나 이상의 애플리케이션 모드를 포함할 수 있는 사용자 환경(806)을 또한 포함할 수 있다.
일례에서, 사용자가 슬라이드 프리젠테이션 애플리케이션을 뷰잉하고 사용자 환경이 프리젠테이션 문서의 프레임을 생성하도록, 프로젝트 생성 모드로 사용자가 슬라이드 프리젠테이션을 뷰잉하는 것으로 지정하면, 이러한 환경의 행위 유형은 사용자가 애플리케이션의 프리젠테이션 모드의 사용자 환경에서 슬라이드 프리젠테이션을 뷰잉하다 하더라도, 이와는 별도로 행위 변환 데이터베이스(704) 내에서 변환에 대해 지정한다. 일례에서, 사용자는 사용자 환경이 프리젠테이션 모드에 있을 때, 특정의 행위 유형이 프리젠테이션 문서 내의 다음 프레임으로 전개하기 위해 애플리케이션을 트리거하는 기능으로 변환하도록, 특정의 행위 유형을 지정할 수 있다. 다른 예에서, 사용자는 사용자 환경이 프리젠테이션 모드에 있을 때, 프리젠테이션의 프레임 내에서 또는 프리젠테이션의 기록 내에서 행위 유형의 텍스트 또는 그래픽 표시자를 삽입하도록 프리젠테이션 애플리케이션을 트리거해야 하는 행위 유형의 선택을 지정할 수 있다. 일례에서, 프리젠테이션의 기록은 디스플레이되는 바와 같이 프레임과 연관된 텍스트로 변환된 스피치의 기록 및 디스플레이되는 바와 같이 프레임과 연관된 행위 유형의 텍스트 또는 그래픽 표시자를 포함하는, 프레임의 기록을 포함할 수 있다.
또한, 문서 제어 시스템(700)은 사용자에 대해 액세스 가능한 현재 활성 애플리케이션의 상태를 검출하는 애플리케이션 상태 검출기(810)를 포함한다. 애플리케이션 상태 검출기(810)는 애플리케이션 상태 타임 스탬프 로그(812) 내에서 애플리케이션 상태 기록(814 및 816)과 같은 애플리케이션 상태 기록을 기록한다. 예에서, 애플리케이션 상태 기록(814 및 816)은 애플리케이션에 대한 식별자(ID) 애플리케이션 내에서 개방된 적어도 하나의 문서 및 애플리케이션이 활성 애플리케이션으로서 선택될 때의 타임 스탬프를 포함한다. 애플리케이션이 활성일 때의 타임 스탬프 및 문서 또는 애플리케이션 내에서 개방된 문서를 기록함으로써, 문서 제어 콘트롤러(702)는 예측된 행위 기록(420)의 타임 스탬프 범위를 애플리케이션 또는 일련의 애플리케이션 및 행위가 검출될 때의 활성 문서로 보다 정확하게 매핑할 수 있다.
일례에서, 문서 제어 콘트롤러(702)는 애플리케이션 상태 기록(816)에 매칭하는 타임 스탬프를 갖는 예측된 행위 기록(720)을 수신한다. 행위 변환 데이터베이스(704) 내의 엔트리에 근거하여, 문서 제어 콘트롤러(702)는 "80%"의 확률로, 펼쳐진 손가락"의 예측된 행위 및 "앉음"의 환경을 "워드 시리즈를 분해된 리스트 포맷으로 포맷"의 기능으로 변환한다. 예에서, 문서 제어 콘트롤러(702)는 애플리 케이션 식별자 "워드 프로세서" 및 문서 "프리젠테이션 C"에 대한 "워드 시리즈를 분해된 리스트 포맷으로 포맷"의 기능을 수행하기 위한 인스트럭션으로 문서 제어 신호(820)를 생성한다. 예에서, 문서 제어 신호(820)의 기능 요소는 함수의 기술을 포함하지만, 함수 요소는 키 커맨드, 함수 호출, 또는 특정의 기능을 수행하도록 애플리케이션을 구체적으로 호출하는 다른 지시를 또한 포함할 수 있다.
이제 도 9를 참조하면, 예시적인 도면은 행위 변환 데이터베이스 내의 엔트리의 예를 도시한다. 예에서, 애플리케이션에 따라 디스플레이된 엔트리 각각이 애플리케이션에 할당된다. 특히, 엔트리(904, 906, 908 및 910)는 모든 애플리케이션에 대해 적용 가능하며, 엔트리(920, 922 및 924)는 웹 페이지 편집기 애플리케이션에 적용 가능하고, 엔트리(912, 914 및 916)는 이메일 애플리케이션에 적용 가능하다. 행위 변환 데이터베이스(704)는 도시된 바와 같이 하나 이상의 애플리케이션에 적용 가능한 엔트리를 포함할 수 있으며, 도시된 애플리케이션으로부터 추가적인 또는 대안적인 애플리케이션에 적용 가능한 엔트리를 포함할 수 있다는 것이 이해될 것이다.
모든 애플리케이션에 적용 가능한 엔트리의 제 1 칼럼에서, 엔트리(904)가 90%의 최소 확률로 "손을 함께 고정한다"의 행위 유형에 대해 지정하면, "문단 리플로우"의 기능이 하나 이상의 문서에 대해 트리거해야 한다. 다음 예에서, 엔트리(906)가 95%의 최소 확률로 "원 내의 손을 회전시킨다"의 행위 유형에 대해 지정하면, "스펠링 체크"의 기능이 하나 이상의 문서에 대해 트리거해야 한다. 엔트리(908)가 95%의 최소 확률로 "인용 부호"의 행위 유형에 대해 지정하면, "인용 부 호"의 기능이 하나 이상의 문서에 대해 트리거해야 한다. 또한, 엔트리(910)가 90%의 최소 확률로 "좌측 손 곡선 스윕"의 행위 유형에 대해 지정하면, "좌측 괄호"의 기능이 하나 이상의 문서에 대해 트리거해야 한다. 추가적인 또는 대안적인 유형의 엔트리가 모든 애플리케이션에 적용될 수 있음이 이해될 것이다. 또한, 엔트리는 2 이상의 애플리케이션에 적용될 수 있는 한편, 엔트리는 애플리케이션의 각각에서 기능을 실제로 트리거하는 다수의 개별적인 기능 호출을 포함할 수 있음이 이해될 것이다.
웹 페이지 편집기 애플리케이션에 대해 적용 가능한 엔트리의 다음 칼럼에서, 엔트리(912)는 95%의 최소 확률로 "손을 지정한다" 및 "다수의 손가락을 들어올리다"의 일련의 행위에 대해, 손가락 번호로 넘버링된 헤더 클래스 요소는 문서 요소로서 부가되어야 함을 지정한다. 예를 들어, 사용자가 3개의 손가락을 들어올리면, "<h3></h3>"의 클래스 레퍼런스가 문서에 부가된다. 다음 예에서, 엔트리(914)는 70%의 최소 확률로 "손을 둘러싸다" 및 "다수의 손가락을 들어올리다"의 일련의 행위에 대해, 들어올려진 손가락 번호에 대해 1의 기본값을 갖는 루프 요소는 문서 요소로서 부가되어야 함을 지정한다. 예를 들어, 사용자가 10개의 손가락을 2회 플래시하면, "for (1; x<20) x++"의 루프 문서에 부가된다. 특히, 엔트리(912 및 914)는 사용자가 프로그래머에 의해 통상적으로 사용된 프로그래밍 코드 요소, 수학식, 또는 모듈을 생성하는 행위 신호를 나타내는 행위를 지정할 수 있음을 도시한다.
다음 엔트리의 선택에서, 엔트리(916 및 920)는 개별적인 애플리케이션에 대 해 지정되고 동일한 행위 유형을 포함하지만, 상이한 유형의 기능을 트리거한다. 특히, 엔트리(916)는 95%의 최소 확률로 "3-5 인치 바운스로 데스크 상에서 1회 주먹을 두드리다"의 행위에 대해, 웹 페이지 편집기의 "브라우저 체크" 기능이 트리거되어야 함을 지정한다. 예에서, 바운스 범위는 데스크에 두드린 후에 주먹의 상측 방향 이동의 예상 범위를 표시한다. 엔트리(920)는 동일한 행위에 대해, 이메일 애플리케이션의 문맥 내에서, 이메일 애플리케이션은 전자 서명의 문서 요소를 삽입하도록 트리거해야 함을 지정한다. 예에서, 주먹을 두드리는 동일한 행위가 상이한 애플리케이션 내의 상이한 기능을 트리거한다 하더라도, 이들 기능은 사용자가 드래프트를 결론지을 때 전형적으로 수행된 기능을 나타낸다. 예를 들어, 사용자가 어떻게 코딩된 HTML이 브라우저 윈도우에 나타날지를 체크하도록 준비되어 있을 때 사용자는 브라우저 체크 기능을 트리거하고, 사용자가 이메일 조성의 온 오프를 부호화하도록 준비되어 있을 때 사용자는 전자 서명을 트리거한다. 다른 실시예에서, 보다 작거나 또는 보다 큰 바운스 범위로 두드려진 주먹과 같이, 약간의 편차를 갖는 동일한 행위 유형을 선택할 수 있는 사용자는 동일한 애플리케이션에서 상이한 기능을 트리거하거나, 또는 상이한 애플리케이션 상에서 상이한 기능을 트리거할 수 있다.
또한, 예에서, 엔트리(922 및 924)는 기능을 수행하고 문서 요소를 삽입하도록 애플리케이션을 트리거하는 행위 유형을 도시한다. 예에서, 엔트리(922)는 75%의 최소 확률로 "2개의 손가락으로 다른 사람을 지정한다"의 행위에 대해, "식별된 사람에 대해 이메일 어드레스를 찾는다"의 기능이 트리거되고 "이메일 어드레스를 주요 어드레스로서 삽입한다"의 문서 요소가 트리거됨을 지정한다. 엔트리(924)는 "하나의 손가락으로 다른 사람을 지정한다"의 행위에 대해, 엔트리(922)로서 동일한 기능이 트리거되지만, 문서 요소는 "cc: 어드레스로서 이메일 어드레스를 삽입한다"를 필요로 함을 지정하며, 여기서 이메일 어드레스는 사용자가 하나 이상의 주요 수신자 및 하나 이상의 복사본(carbon copy : cc) 수신자를 어드레싱하도록 한다. 예측된 행위 기록이 기능 및 문서 요소로 변환될 때, 문서 제어 시스템(700)은 기능 및 문서 요소로 문서 제어 신호를 전송하거나, 또는 문서 제어 시스템(700)은 제 1 기능 요청을 전송할 수 있으며, 그 다음에 제 1 기능의 결과에 근거하여, 문서 요소를 삽입하는 문서 제어 신호를 전송할 수 있다는 것에 주목해야 하는 것이 중요하다.
이제 도 10을 참조하면, 예시적인 도면은 문서 요소를 문서에 삽입하는 것으로서, 문서 요소가 행위 유형의 텍스트 표시자인 일례를 도시한다. 예에서, 문서 제어 시스템(700)은 "Tate"의 사용자 식별자(ID), 및 "11:21:25-11:21:28"의 시간 범위에 대해, "하나의 손가락을 들어올리는"의 행위 유형, 90%의 확률로 예측된 행위 기록(1010)을 수신한다. 문서 제어 시스템(700)은 타임 스탬프 11:21:25에서 "Tate"로서의 사용자 식별자에 대해 예측된 행위 기록(1010)을 "하나의 손가락을 들어올리는"의 문서 요소를 삽입하는 문서 제어 신호(1012)로 변환하도록, 행위 변환 데이터베이스(704) 내의 하나 이상의 엔트리에 근거하여 결정한다.
예에서, 예측된 행위 기록(1010)은 웹 컨퍼런스의 문맥 내에 있다. 트랜스크립트 콘트롤러(1002)는 웹 컨퍼런스 동안 입력된 비디오, 오디오 및 텍스트의 웹 컨퍼런스 스트림을 수신한다. 행위 프로세싱 시스템(100)은 웹 컨퍼런스 스트림(1004)을 또한 수신하고 웹 컨퍼런스 스트림(1004)으로부터 예측된 행위 기록(1010)을 생성할 수 있다. 다른 예에서, 행위 프로세싱 시스템(100)은 웹 컨퍼런스 스트림(1004)과 독립적인 사용자의 이미지 스트림을 캡쳐하고 캡쳐된 이미지 스트림으로부터 예측된 행위 기록(1010)을 생성할 수 있다.
특히, 예에서, 트랜스크립트 콘트롤러(1002)는 모든 웹 컨퍼런스 가입자로부터의 웹 컨퍼런스 스트림(1004)를 트랜스크립트(1014)로 변환한다. 또한, 트랜스크립트 콘트롤러(1002)는 문서 제어 시스템(700)으로부터의 문서 제어 신호(1012)와 같은 하나 이상의 문서 제어 시스템으로부터의 문서 제어 신호를 수신하고 문서 제어 신호로 지정된 문서 요소를 트랜스크립트(1014)에 삽입한다. 예에서, 트랜스크립트 콘트롤러(1002)는 문서 제어 신호(1012)에 응답하여 엔트리(1016)를 삽입한다.
이제 도 11을 참조하면, 하이 레벨 논리 플로우차트는 퍼센티지 확률로 행위 유형을 예측하기 위한 행위 프로세싱 시스템에 대한 프로세스 및 프로그램을 도시한다. 예에서, 프로세스는 블록(1100)에서 개시하고 이후 블록(1102)으로 진행한다. 블록(1102)은 입체적 이미지 디바이스를 통해 다수의 이미지 스트림을 캡쳐하고 포커스 영역 내에서 센서를 통해 센서 데이터를 캡쳐하는 것을 도시한다. 다음에, 블록(1104)은 이미지 및 센서 데이터 내에서 객체를 트래킹하는 것을 도시한다. 이후, 블록(1106)은 트래킹된 객체에 대한 3D 객체 특성의 스트림을 생성하는 것을 도시한다. 이후, 블록(1108)은 트래킹된 객체의 각각에 대한 3D 객체 특성의 스트림을 군집화하는 것을 도시한다. 특히, 군집화된 3D 객체 특성은 적어도 하나의 모니터링된 사람의 행위를 나타내는 적어도 하나의 모니터링된 사람과 연관하여 트래킹된 하나 이상의 객체를 나타낸다. 다음에, 블록(1110)은 3D 객체 특성의 군집화된 스트림이 확률 퍼센티지에 매칭하는 하나 이상의 행위 정의로부터 3D 객체 특성의 군집화된 스트림으로부터 적어도 하나의 유형의 행위를 예측하는 것을 도시한다. 이후, 블록(1112)은 특정의 행위 기록 내의 퍼센티지 확률, 매핑된 위치, 사용자 식별자 및 타임 스탬프와 같은 다른 메타데이터(metadata) 및 각각의 예측된 유형의 행위를 적어도 하나의 행위 인에이블된 문서 제어 시스템으로 송신하고, 프로세스를 종료한다.
이제 도 12를 참조하면, 하이 레벨 논리 플로우차트는 이미지 스트림 및 다른 감지된 데이터 내의 객체를 트래킹하고 행위를 나타내는 트래킹된 객체에 대한 3D 객체 특성을 생성함으로써 행위 검출을 수행하는 3D 객체 검출기에 대한 프로세스 및 프로그램을 도시한다. 도시된 바와 같이, 프로세스는 블록(1200)에서 개시하고 이후 블록(1202)으로 진행한다. 블록(1202)은 이미지 캡쳐 디바이스를 통해 다수의 이미지 스트림을 수신하고 하나 이상의 센서를 통해 감지된 데이터를 수신하는 것을 도시한다. 다음에, 블록(1204)은 이미지 프레임 및 감지된 데이터에 메타데이터를 부착하는 객체 검출기 시스템을 도시하고, 프로세스는 블록(1206)으로 진행한다. 일례에서, 메타데이터는 카메라 식별자, 프레임 번호, 타임 스탬프 및 픽셀 카운트를 포함하되, 이들로만 제한되지 않는 데이터를 포함한다.
블록(1208)은 객체를 검출하고 트래킹하도록 각각의 이미지 스트림 및 감지 된 데이터를 프로세스하는 객체 검출기 시스템을 도시하며, 여기서 객체는 물리적 객체 및 행위를 표시하는 사용자 이동을 포함할 수 있다. 다음에, 블록(1208)은 각각의 이미지 프레임으로부터의 메타데이터로 트래킹된 객체 특성의 스트림을 생성하는 것으로 도시한다. 이후, 블록(1210)은 메타데이터로 3D 객체 특성을 생성하도록 트래킹된 객체 특성을 결합하는 것을 도시한다. 다음에, 블록(1212)은 행위 번역기 시스템에 3D 트래킹된 객체 특성을 송신하고 프로세스를 종료하는 것을 도시한다.
이제 도 13을 참조하면, 하이 레벨 논리 플로우차트는 트래킹된 3D 객체 특성으로부터 행위 예측을 수행하는 행위 번역기에 대한 프로세스 및 프로그램을 도시한다. 예에서, 프로세스는 블록(1300)에서 개시하고 이후 블록(1302)으로 진행한다. 블록(1302)은 행위 번역기 시스템이 3D 객체 특성을 수신하는지 여부의 결정을 도시한다. 행위 번역기 시스템이 3D 객체 특성을 수신하면, 프로세스는 블록(1304)으로 진행한다. 블록(1304)은 문서의 제어를 트리거하는 적용 가능한 행위 정의의 범위를 액세스하는 것으로 도시하고, 프로세스는 블록(1306)으로 진행한다.
블록(1306)은 트래킹된 객체에 대한 3D 객체 특성을 적용 가능한 행위 정의와 비교하는 행위 번역기 시스템을 도시한다. 다음에, 블록(1308)은 하나 이상의 필터링된 3D 객체 특성에 대해 가장 근접한 매칭을 갖는 적어도 하나의 행위 정의를 식별하는 행위 번역기 시스템을 도시한다. 이후, 블록(1310)은 3D 객체 특성이 식별된 행위 정의에 매칭하는 퍼센티지 확률을 계산하는 것을 도시한다. 다음에, 블록(1312)은 사용자 식별자, 환경, 애플리케이션 또는 문서를 포함하되, 이들로만 제한되지 않는 식별된 행위 신호 유형의 적어도 하나의 속성을 지정하는 것을 도시한다. 다음에, 블록(1314)은 예측된 행위 유형, 퍼센티지 확률, 행위 신호 유형 속성, 타임 스탬프 및 다른 메타데이터를 갖는 예측된 행위 기록을 하나 이상의 행위 인에이블된 문서 제어 시스템으로 송신하고, 프로세스가 종료하는 것을 도시한다.
이제 도 14를 참조하면, 하이 레벨 논리 플로우차트는 행위 인에이블된 문서 제어 시스템 내의 예측된 행위 기록을 적용하는 프로세스 및 프로그램을 도시한다. 도시된 바와 같이, 프로세스는 블록(1400)에서 개시하고 이후 블록(1402)으로 진행한다. 블록(1402)은 행위 인에이블된 문서 제어 시스템이 예측된 행위 기록을 수신하는지 여부의 판정을 도시한다. 문서 제어 시스템이 예측된 행위 기록을 수신하면, 프로세스는 블록(1404)으로 진행한다. 블록(1404)은 예측된 행위 유형, 연관된 애플리케이션 및 다른 인자에 대해 적용 가능한 행위 변환 데이터베이스 내의 하나 이상의 엔트리를 액세스하는 것을 도시한다. 다음에, 블록(1406)은 문서로의 문서 요소의 삽입을 지시하고 문서 상에서 수행될 애플리케이션 기능을 트리거하도록 예측된 행위 기록을 하나 이상의 문서 제어 신호로 변환하는 것을 도시한다. 이후, 블록(1408)은 선택된 애플리케이션 콘트롤러에 대해 문서 제어 신호의 출력을 제어하고, 프로세스가 종료하는 것을 도시한다.
본 발명은 특히 바람직한 실시예를 참조하여 도시되고 기술되었으나, 당 분야에서 통상의 지식을 가진 자라면 본 발명의 사상 및 범위로부터 벗어나지 않고 각종 형태의 변경 및 세부 사항이 이루어질 수 있음이 이해될 것이다.

Claims (10)

  1. 사용자 행위에 근거하여 문서를 제어하는 컴퓨터 구현 방법으로서,
    사용자의 3 차원 이동을 캡쳐하는 단계-상기 3 차원 이동은 상기 사용자를 지향하는 적어도 하나의 이미지 캡쳐 디바이스를 이용하여 결정됨-와,
    상기 캡쳐된 이동을 이용하여 3 차원 객체 특성을 식별하는 단계와,
    상기 식별된 3 차원 객체 특성 스트림을 상기 문서의 제어를 트리거하는 개별적인 행위 신호를 각각 나타내는 다수의 행위 정의(a plurality of behavior definitions)와 비교함으로써 상기 3 차원 객체 특성 스트림으로부터 상기 사용자의 적어도 하나의 특정의 정의된 행위를 식별하는 단계와,
    상기 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하는 단계와,
    상기 선택된 문서 요소를 상기 문서에 삽입하는 단계를 포함하는
    컴퓨터 구현 방법.
  2. 제 1 항에 있어서,
    상기 사용자의 3 차원 이동을 캡쳐하는 단계는, 입체적 이미지 디바이스를 이용하여 상기 3 차원 이동을 캡쳐하여 상기 사용자의 특정의 3 차원 이동을 식별하고 트래킹하는 단계를 더 포함하는
    컴퓨터 구현 방법.
  3. 제 1 항에 있어서,
    상기 사용자의 3 차원 이동을 캡쳐하는 단계는, 제 1 시점에서의 사용자의 적어도 하나의 이미지 프레임을 캡쳐하고 제 2 시점으로부터의 적어도 하나의 추가적인 이미지 프레임을 상기 제 1 시점으로부터의 이미지 프레임과 비교하는 단계를 더 포함하는
    컴퓨터 구현 방법.
  4. 제 1 항에 있어서,
    상기 3 차원 객체 특성 스트림으로부터 특정의 행위 신호를 나타내는 적어도 하나의 특정의 정의된 행위를 식별하는 단계는, 상기 캡쳐된 3 차원 이동이 상기 적어도 하나의 특정의 정의된 행위를 나타내는 퍼센티지 확률을 계산하는 단계를 더 포함하는
    컴퓨터 구현 방법.
  5. 제 1 항에 있어서,
    상기 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하는 단계는, 상기 캡쳐된 3 차원 객체 특성 스트림과 연관된 타임 스탬프에 의해 지정된 위치에서 문서 내의 기록된 트랜스크립트(transcript)에 삽입하기 위한 상기 적어도 하나의 특정의 정의된 행위의 텍스트 표시자(textual indicator)를 포함하는 상기 적어도 하나의 문서 요소를 선택하는 단계를 더 포함하는
    컴퓨터 구현 방법.
  6. 제 1 항에 있어서,
    상기 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하는 단계는, 상기 적어도 하나의 특정의 정의된 행위를 적어도 하나의 프로그래밍 코드 요소, 프로그래밍 코드 수학식 및 프로그래밍 코드 모듈로 변환하는 단계를 더 포함하는
    컴퓨터 구현 방법.
  7. 제 1 항에 있어서,
    상기 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하는 단계는, 상기 문서의 디스플레이 상에서 상기 사용자에 의해 지정 된 위치에 의해 식별된 문서 내의 특정의 위치에 삽입하기 위한 상기 적어도 하나의 특정의 정의된 행위를 나타내는 상기 적어도 하나의 문서 요소를 선택하는 단계를 더 포함하는
    컴퓨터 구현 방법.
  8. 제 1 항에 있어서,
    상기 적어도 하나의 특정의 정의된 행위를 나타내는 문서 상에서 수행하도록 상기 적어도 하나의 기능을 선택하는 단계와,
    상기 문서 상에서 상기 적어도 하나의 기능을 수행하도록 애플리케이션을 트리거하는 단계를 더 포함하는
    컴퓨터 구현 방법.
  9. 사용자 행위에 근거하여 문서를 제어하는 시스템으로서,
    네트워크에 통신 가능하게 접속된 행위 프로세싱 시스템과,
    상기 네트워크를 통해 상기 행위 프로세싱 시스템에 통신 가능하게 접속된 문서 제어 시스템을 포함하며,
    상기 행위 프로세싱 시스템은,
    사용자의 3 차원 이동을 캡쳐하되, 상기 3 차원 이동은 상기 사용자를 지향 하는 적어도 하나의 이미지 캡쳐 디바이스를 이용하여 결정되는 수단과,
    상기 캡쳐된 이동을 이용하여 3 차원 객체 특성 스트림을 식별하는 수단과,
    상기 식별된 3 차원 객체 특성 스트림을 상기 문서의 제어를 트리거하는 개별적인 행위 신호를 각각 나타내는 다수의 행위 정의와 비교함으로써 상기 3 차원 객체 특성 스트림으로부터 상기 사용자의 적어도 하나의 특정의 정의된 행위를 식별하는 수단을 포함하고,
    상기 문서 제어 시스템은, 상기 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하고, 상기 선택된 문서 요소를 상기 문서에 삽입하는
    시스템.
  10. 사용자 행위에 근거하여 문서를 제어하는 컴퓨터 판독 가능한 프로그램을 포함하는 저장 유형 컴퓨터 사용 가능한 매체를 포함하는 프로그램 제품으로서, 상기 컴퓨터 판독 가능한 프로그램은 컴퓨터 상에서 실행될 때, 상기 컴퓨터가,
    사용자의 3 차원 이동을 캡쳐하되, 상기 3 차원 이동은 상기 사용자를 지향하는 적어도 하나의 이미지 캡쳐 디바이스를 이용하여 결정되고,
    상기 캡쳐된 이동을 이용하여 3 차원 객체 특성을 식별하며,
    상기 식별된 3 차원 객체 특성 스트림을 상기 문서의 제어를 트리거하는 개별적인 행위 신호를 각각 나타내는 다수의 행위 정의와 비교함으로써 상기 3 차원 객체 특성 스트림으로부터 상기 사용자의 적어도 하나의 특정의 정의된 행위를 식별하고,
    상기 적어도 하나의 특정의 정의된 행위를 나타내도록 적어도 하나의 문서 요소를 선택하며,
    상기 선택된 문서 요소를 상기 문서에 삽입하도록 하는
    프로그램 제품.
KR1020097012924A 2007-01-12 2008-01-08 문서 제어를 위한 컴퓨터 구현 방법, 문서 제어 시스템 및 컴퓨터 판독 가능한 저장 매체 KR101137041B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/622,690 2007-01-12
US11/622,690 US7877706B2 (en) 2007-01-12 2007-01-12 Controlling a document based on user behavioral signals detected from a 3D captured image stream
PCT/EP2008/050117 WO2008084034A1 (en) 2007-01-12 2008-01-08 Controlling a document based on user behavioral signals detected from a 3d captured image stream

Publications (2)

Publication Number Publication Date
KR20090097891A true KR20090097891A (ko) 2009-09-16
KR101137041B1 KR101137041B1 (ko) 2012-05-24

Family

ID=39470417

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097012924A KR101137041B1 (ko) 2007-01-12 2008-01-08 문서 제어를 위한 컴퓨터 구현 방법, 문서 제어 시스템 및 컴퓨터 판독 가능한 저장 매체

Country Status (5)

Country Link
US (1) US7877706B2 (ko)
EP (1) EP2118722B1 (ko)
KR (1) KR101137041B1 (ko)
TW (1) TWI412953B (ko)
WO (1) WO2008084034A1 (ko)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4315161B2 (ja) * 2006-02-16 2009-08-19 村田機械株式会社 時刻認証要求機能付き画像読取装置
US8396906B2 (en) * 2007-10-10 2013-03-12 Electronics And Telecommunications Research Institute Metadata structure for storing and playing stereoscopic data, and method for storing stereoscopic content file using this metadata
US20090158190A1 (en) * 2007-12-13 2009-06-18 Yuvee, Inc. Computing apparatus including a personal web and application assistant
US20100131523A1 (en) * 2008-11-25 2010-05-27 Leo Chi-Lok Yu Mechanism for associating document with email based on relevant context
US8244070B2 (en) * 2009-06-01 2012-08-14 Xerox Corporation Real-time image personalization
US20100313106A1 (en) * 2009-06-04 2010-12-09 Microsoft Corporation Converting diagrams between formats
US8452599B2 (en) * 2009-06-10 2013-05-28 Toyota Motor Engineering & Manufacturing North America, Inc. Method and system for extracting messages
US8269616B2 (en) * 2009-07-16 2012-09-18 Toyota Motor Engineering & Manufacturing North America, Inc. Method and system for detecting gaps between objects
US8337160B2 (en) * 2009-10-19 2012-12-25 Toyota Motor Engineering & Manufacturing North America, Inc. High efficiency turbine system
US8237792B2 (en) * 2009-12-18 2012-08-07 Toyota Motor Engineering & Manufacturing North America, Inc. Method and system for describing and organizing image data
US8553982B2 (en) * 2009-12-23 2013-10-08 Intel Corporation Model-based play field registration
US20110199469A1 (en) * 2010-02-15 2011-08-18 Gallagher Andrew C Detection and display of stereo images
US20110199463A1 (en) * 2010-02-15 2011-08-18 Gallagher Andrew C Display with integrated camera
US8384774B2 (en) * 2010-02-15 2013-02-26 Eastman Kodak Company Glasses for viewing stereo images
US20110199468A1 (en) * 2010-02-15 2011-08-18 Gallagher Andrew C 3-dimensional display with preferences
CN102221957B (zh) * 2010-04-16 2014-04-23 联想(北京)有限公司 电子设备的操作控制的方法及电子设备
US20110298891A1 (en) * 2010-06-04 2011-12-08 Iowa State University Research Foundation, Inc. Composite phase-shifting algorithm for 3-d shape compression
US8964004B2 (en) 2010-06-18 2015-02-24 Amchael Visual Technology Corporation Three channel reflector imaging system
WO2012005392A1 (en) * 2010-07-06 2012-01-12 Lg Electronics Inc. Object recognition and tracking based apparatus and method
US8424621B2 (en) 2010-07-23 2013-04-23 Toyota Motor Engineering & Manufacturing North America, Inc. Omni traction wheel system and methods of operating the same
US8656279B2 (en) * 2010-12-14 2014-02-18 Sap Ag Global settings for the enablement of culture-based gestures
US8514295B2 (en) 2010-12-17 2013-08-20 Qualcomm Incorporated Augmented reality processing based on eye capture in handheld device
US9072461B2 (en) * 2011-02-25 2015-07-07 Embraer S.A. Posture observer for ergonomic observation, posture analysis and reconstruction
KR101789683B1 (ko) * 2011-06-13 2017-11-20 삼성전자주식회사 디스플레이 장치 및 그의 제어 방법, 그리고 리모컨 장치
US8648808B2 (en) * 2011-09-19 2014-02-11 Amchael Visual Technology Corp. Three-dimensional human-computer interaction system that supports mouse operations through the motion of a finger and an operation method thereof
DE102011086267A1 (de) * 2011-11-14 2013-05-16 Siemens Aktiengesellschaft System und Verfahren zur Steuerung eines thermografischen Messvorganges
US9019352B2 (en) 2011-11-21 2015-04-28 Amchael Visual Technology Corp. Two-parallel-channel reflector with focal length and disparity control
US9072929B1 (en) * 2011-12-01 2015-07-07 Nebraska Global Investment Company, LLC Image capture system
JP5915158B2 (ja) * 2011-12-22 2016-05-11 ソニー株式会社 タイムコード表示装置及びタイムコード表示方法
TWI488068B (zh) * 2012-03-20 2015-06-11 Acer Inc 手勢控制方法及裝置
US9019603B2 (en) 2012-03-22 2015-04-28 Amchael Visual Technology Corp. Two-parallel-channel reflector with focal length and disparity control
US9152440B2 (en) * 2012-06-27 2015-10-06 Intel Corporation User events/behaviors and perceptual computing system emulation
US9557634B2 (en) 2012-07-05 2017-01-31 Amchael Visual Technology Corporation Two-channel reflector based single-lens 2D/3D camera with disparity and convergence angle control
TWI464632B (zh) * 2012-07-12 2014-12-11 Univ Lunghwa Sci & Technology 應用雷射導引技術之類觸控簡報系統
US9025860B2 (en) * 2012-08-06 2015-05-05 Microsoft Technology Licensing, Llc Three-dimensional object browsing in documents
US9607025B2 (en) 2012-09-24 2017-03-28 Andrew L. DiRienzo Multi-component profiling systems and methods
US9393695B2 (en) 2013-02-27 2016-07-19 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with person and object discrimination
US9804576B2 (en) 2013-02-27 2017-10-31 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with position and derivative decision reference
US9798302B2 (en) 2013-02-27 2017-10-24 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with redundant system input support
US9498885B2 (en) 2013-02-27 2016-11-22 Rockwell Automation Technologies, Inc. Recognition-based industrial automation control with confidence-based decision support
US9122916B2 (en) 2013-03-14 2015-09-01 Honda Motor Co., Ltd. Three dimensional fingertip tracking
TWI582390B (zh) * 2013-06-11 2017-05-11 To automatically detect the behavior of the user's way to obtain information
US10198583B2 (en) * 2013-11-26 2019-02-05 Sap Se Data field mapping and data anonymization
DE102015201901B4 (de) 2015-02-04 2021-07-22 Volkswagen Aktiengesellschaft Bestimmung einer Position eines fahrzeugfremden Objekts in einem Fahrzeug
US10157169B2 (en) * 2015-04-20 2018-12-18 International Business Machines Corporation Smarter electronic reader
US10824293B2 (en) * 2017-05-08 2020-11-03 International Business Machines Corporation Finger direction based holographic object interaction from a distance
US11281302B2 (en) * 2018-05-18 2022-03-22 Steven Reynolds Gesture based data capture and analysis device and system
TWI780444B (zh) * 2019-12-26 2022-10-11 仁寶電腦工業股份有限公司 疫苗施打提醒方法、行動設備與儲存媒體
TWI755198B (zh) * 2020-12-11 2022-02-11 財團法人工業技術研究院 基於圖像的行為辨識方法及計算機可讀媒體
US11366529B1 (en) 2021-07-14 2022-06-21 Steven Reynolds Gesture based data capture and analysis device and system with states, confirmatory feedback and timeline
US11807685B2 (en) 2021-08-05 2023-11-07 The Uab Research Foundation Anti-CD47 antibody and uses thereof

Family Cites Families (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5109425A (en) * 1988-09-30 1992-04-28 The United States Of America As Represented By The United States National Aeronautics And Space Administration Method and apparatus for predicting the direction of movement in machine vision
JP2953712B2 (ja) * 1989-09-27 1999-09-27 株式会社東芝 移動物体検知装置
JP3244798B2 (ja) * 1992-09-08 2002-01-07 株式会社東芝 動画像処理装置
US5502803A (en) * 1993-01-18 1996-03-26 Sharp Kabushiki Kaisha Information processing apparatus having a gesture editing function
US5454043A (en) * 1993-07-30 1995-09-26 Mitsubishi Electric Research Laboratories, Inc. Dynamic and static hand gesture recognition through low-level image analysis
US5583946A (en) * 1993-09-30 1996-12-10 Apple Computer, Inc. Method and apparatus for recognizing gestures on a computer system
JP3630712B2 (ja) * 1994-02-03 2005-03-23 キヤノン株式会社 ジェスチャー入力方法及びその装置
US6115053A (en) * 1994-08-02 2000-09-05 New York University Computer animation method and system for synthesizing human-like gestures and actions
US5691693A (en) * 1995-09-28 1997-11-25 Advanced Safety Concepts, Inc. Impaired transportation vehicle operator system
GB2306826A (en) * 1995-10-18 1997-05-07 Sharp Kk Display, method of calibrating an observer tracking display and observer tracking autostereoscopic 3D display
US5880731A (en) * 1995-12-14 1999-03-09 Microsoft Corporation Use of avatars with automatic gesturing and bounded interaction in on-line chat session
JPH09212648A (ja) * 1996-01-31 1997-08-15 Toshiba Corp 動画像処理方法
JPH10960A (ja) * 1996-06-12 1998-01-06 Yazaki Corp 運転者監視装置
US6002808A (en) * 1996-07-26 1999-12-14 Mitsubishi Electric Information Technology Center America, Inc. Hand gesture control system
US5847709A (en) * 1996-09-26 1998-12-08 Xerox Corporation 3-D document workspace with focus, immediate and tertiary spaces
US6295367B1 (en) * 1997-06-19 2001-09-25 Emtera Corporation System and method for tracking movement of objects in a scene using correspondence graphs
EP0905644A3 (en) * 1997-09-26 2004-02-25 Matsushita Electric Industrial Co., Ltd. Hand gesture recognizing device
US6072494A (en) * 1997-10-15 2000-06-06 Electric Planet, Inc. Method and apparatus for real-time gesture recognition
US6181343B1 (en) * 1997-12-23 2001-01-30 Philips Electronics North America Corp. System and method for permitting three-dimensional navigation through a virtual reality environment using camera-based gesture inputs
US6301370B1 (en) * 1998-04-13 2001-10-09 Eyematic Interfaces, Inc. Face recognition from video images
US6154558A (en) * 1998-04-22 2000-11-28 Hsieh; Kuan-Hong Intention identification method
US6421453B1 (en) * 1998-05-15 2002-07-16 International Business Machines Corporation Apparatus and methods for user recognition employing behavioral passwords
US6064354A (en) * 1998-07-01 2000-05-16 Deluca; Michael Joseph Stereoscopic user interface method and apparatus
US7036094B1 (en) * 1998-08-10 2006-04-25 Cybernet Systems Corporation Behavior recognition system
US6950534B2 (en) * 1998-08-10 2005-09-27 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
DE69936620T2 (de) 1998-09-28 2008-05-21 Matsushita Electric Industrial Co., Ltd., Kadoma Verfahren und Vorrichtung zum Segmentieren von Handgebärden
FR2784887B1 (fr) 1998-10-22 2001-01-19 Renault Systeme pour surveiller des yeux afin de detecter et de prevenir des baisses de vigilance d'un conducteur de vehicule
US6161071A (en) * 1999-03-12 2000-12-12 Navigation Technologies Corporation Method and system for an in-vehicle computing architecture
US6766036B1 (en) * 1999-07-08 2004-07-20 Timothy R. Pryor Camera based man machine interfaces
US6674877B1 (en) * 2000-02-03 2004-01-06 Microsoft Corporation System and method for visually tracking occluded objects in real time
US6784901B1 (en) * 2000-05-09 2004-08-31 There Method, system and computer program product for the delivery of a chat message in a 3D multi-user environment
ES2258972T3 (es) * 2000-05-16 2006-09-16 Swisscom Mobile Ag Procedimiento y terminal para entrar instrucciones.
JP2001338069A (ja) * 2000-05-29 2001-12-07 Pioneer Electronic Corp ライフサポート装置
US6788809B1 (en) * 2000-06-30 2004-09-07 Intel Corporation System and method for gesture recognition in three dimensions using stereo imaging and color vision
US20050206610A1 (en) * 2000-09-29 2005-09-22 Gary Gerard Cordelli Computer-"reflected" (avatar) mirror
US7058204B2 (en) * 2000-10-03 2006-06-06 Gesturetek, Inc. Multiple camera control system
US7039676B1 (en) * 2000-10-31 2006-05-02 International Business Machines Corporation Using video image analysis to automatically transmit gestures over a network in a chat or instant messaging session
US7095401B2 (en) * 2000-11-02 2006-08-22 Siemens Corporate Research, Inc. System and method for gesture interface
US6498970B2 (en) * 2001-04-17 2002-12-24 Koninklijke Phillips Electronics N.V. Automatic access to an automobile via biometrics
US7274800B2 (en) * 2001-07-18 2007-09-25 Intel Corporation Dynamic gesture recognition from stereo sequences
US20030058111A1 (en) * 2001-09-27 2003-03-27 Koninklijke Philips Electronics N.V. Computer vision based elderly care monitoring system
US6571064B1 (en) * 2001-12-17 2003-05-27 Concord Camera Corp. LED reflector device
US7340077B2 (en) * 2002-02-15 2008-03-04 Canesta, Inc. Gesture recognition system using depth perceptive sensors
DE10210130B4 (de) * 2002-03-08 2014-12-24 Robert Bosch Gmbh Verfahren und Vorrichtung zur Fahrerwarnung
JP4006577B2 (ja) 2002-03-13 2007-11-14 オムロン株式会社 監視装置
TW554293B (en) * 2002-03-29 2003-09-21 Ind Tech Res Inst Method for extracting and matching hand gesture features of image
US20030227453A1 (en) * 2002-04-09 2003-12-11 Klaus-Peter Beier Method, system and computer program product for automatically creating an animated 3-D scenario from human position and path data
US7324663B2 (en) * 2002-06-06 2008-01-29 Wintriss Engineering Corporation Flight parameter measurement system
TW558689B (en) * 2002-08-30 2003-10-21 Univ Taipei Medical Three-dimensional surgery simulation system and method
WO2004057460A2 (en) * 2002-12-20 2004-07-08 Koninklijke Philips Electronics N.V. Segment-based motion estimation
US7224830B2 (en) * 2003-02-04 2007-05-29 Intel Corporation Gesture detection from digital video images
US6859144B2 (en) * 2003-02-05 2005-02-22 Delphi Technologies, Inc. Vehicle situation alert system with eye gaze controlled alert signal generation
US7330566B2 (en) * 2003-05-15 2008-02-12 Microsoft Corporation Video-based gait recognition
BRPI0411056A (pt) * 2003-06-06 2007-04-17 Volvo Technology Corp método e disposição para controlar subsistemas veiculares baseados na atividade interpretativa do condutor
US7607097B2 (en) * 2003-09-25 2009-10-20 International Business Machines Corporation Translating emotion to braille, emoticons and other special symbols
US7755608B2 (en) * 2004-01-23 2010-07-13 Hewlett-Packard Development Company, L.P. Systems and methods of interfacing with a machine
FI117308B (fi) * 2004-02-06 2006-08-31 Nokia Corp Eleohjausjärjestelmä
EP1794703A4 (en) * 2004-09-17 2012-02-29 Cyberextruder Com Inc SYSTEM, METHOD AND APPARATUS FOR GENERATING THREE-DIMENSIONAL REPRESENTATION FROM ONE OR MORE TWO-DIMENSIONAL IMAGES
JP2006119840A (ja) * 2004-10-20 2006-05-11 Hitachi Ltd 車両用警告装置
US7441202B2 (en) * 2005-02-14 2008-10-21 Mitsubishi Electric Research Laboratories, Inc. Spatial multiplexing to mediate direct-touch input on large displays
US20060181519A1 (en) * 2005-02-14 2006-08-17 Vernier Frederic D Method and system for manipulating graphical objects displayed on a touch-sensitive display surface using displaced pop-ups
US20060259206A1 (en) 2005-05-16 2006-11-16 Smith Matthew R Vehicle operator monitoring system and method
US7809214B2 (en) * 2005-08-22 2010-10-05 Samsung Electronics Co., Ltd. Device and a method for identifying movement patterns
US20080040692A1 (en) * 2006-06-29 2008-02-14 Microsoft Corporation Gesture input
KR100780210B1 (ko) * 2006-07-20 2007-11-27 삼성전기주식회사 휴대형 보안 송신 장치 및 보안 인증 시스템
US7692551B2 (en) * 2006-09-12 2010-04-06 Deere & Company Method and system for detecting operator alertness
US8248462B2 (en) * 2006-12-15 2012-08-21 The Board Of Trustees Of The University Of Illinois Dynamic parallax barrier autosteroscopic display system and method
US20100169792A1 (en) * 2008-12-29 2010-07-01 Seif Ascar Web and visual content interaction analytics

Also Published As

Publication number Publication date
US20080170748A1 (en) 2008-07-17
KR101137041B1 (ko) 2012-05-24
WO2008084034A1 (en) 2008-07-17
US7877706B2 (en) 2011-01-25
TW200844795A (en) 2008-11-16
EP2118722A1 (en) 2009-11-18
EP2118722B1 (en) 2014-08-20
TWI412953B (zh) 2013-10-21

Similar Documents

Publication Publication Date Title
KR101137041B1 (ko) 문서 제어를 위한 컴퓨터 구현 방법, 문서 제어 시스템 및 컴퓨터 판독 가능한 저장 매체
US20230402038A1 (en) Computerized intelligent assistant for conferences
US7725547B2 (en) Informing a user of gestures made by others out of the user&#39;s line of sight
CN107153496B (zh) 用于输入表情图标的方法和装置
US7801332B2 (en) Controlling a system based on user behavioral signals detected from a 3D captured image stream
US20190188903A1 (en) Method and apparatus for providing virtual companion to a user
US10684754B2 (en) Method of providing visual sound image and electronic device implementing the same
US20140289323A1 (en) Knowledge-information-processing server system having image recognition system
US20150169527A1 (en) Interacting method, apparatus and server based on image
CN107533360A (zh) 一种显示、处理的方法及相关装置
CN110741331A (zh) 用于图像响应自动助理的系统、方法和装置
CN101489073B (zh) 信息处理装置以及信息处理方法
CN105009113A (zh) 基于情境的无查询搜索
KR20090108591A (ko) 리소스에 대한 액세스 제어 방법, 시스템 및 컴퓨터 판독 가능한 저장 매체
CN102365645A (zh) 通过关联面部来组织数字图像
Christensen et al. An interactive computer vision system dypers: Dynamic personal enhanced reality system
CN108182270A (zh) 搜索内容发送及搜索方法、智能笔、搜索终端及存储介质
JP6888854B1 (ja) 遠隔勤務支援システム及び遠隔勤務支援方法
WO2020205197A1 (en) Contextual media filter search
KR102440198B1 (ko) 시각 검색 방법, 장치, 컴퓨터 기기 및 저장 매체 (video search method and apparatus, computer device, and storage medium)
Ronzhin et al. Context-aware mobile applications for communication in intelligent environment
JP7230803B2 (ja) 情報処理装置および情報処理方法
JP2018060374A (ja) 情報処理装置、評価システムおよびプログラム
JP4649944B2 (ja) 動画像処理装置、動画像処理方法およびプログラム
KR102395410B1 (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
LAPS Lapse due to unpaid annual fee