KR20130118895A - 제스처 입력을 검출하기 위한 방법 및 장치 - Google Patents

제스처 입력을 검출하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20130118895A
KR20130118895A KR1020137014084A KR20137014084A KR20130118895A KR 20130118895 A KR20130118895 A KR 20130118895A KR 1020137014084 A KR1020137014084 A KR 1020137014084A KR 20137014084 A KR20137014084 A KR 20137014084A KR 20130118895 A KR20130118895 A KR 20130118895A
Authority
KR
South Korea
Prior art keywords
gesture
type
movement
sub
point
Prior art date
Application number
KR1020137014084A
Other languages
English (en)
Other versions
KR101760159B1 (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 KR20130118895A publication Critical patent/KR20130118895A/ko
Application granted granted Critical
Publication of KR101760159B1 publication Critical patent/KR101760159B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04102Flexible digitiser, i.e. constructional details for allowing the whole digitising part of a device to be flexed or rolled like a sheet of paper

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Social Psychology (AREA)
  • Psychiatry (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)
  • Position Input By Displaying (AREA)

Abstract

검출 장치 앞에서의 연속적인 왕복 움직임(consecutive reciprocating movement)에 대응하여 제스처 입력들(gesture inputs)을 검출하기 위한 방법이 제공되는데, 상기 연속적인 왕복 움직임은 제1 유형의 제스처 및 제2 유형의 제스처로 구성되고, 각각은 상기 검출 장치에 의해 인식되어 다른 제어 신호를 출력한다. 상기 방법은 상기 두 가지 유형 중 상기 제1 유형의 제스처로 시작하는 상기 연속적인 왕복 움직임 - 상기 제1 유형의 제스처 및 상기 제2 유형의 제스처는 번갈아 발생함 - 을 수신하는 단계, 및 상기 연속적인 왕복 움직임 내에 포함된 상기 제1 유형의 제스처의 수와 같은 횟수로 상기 제1 유형의 제스처에 해당하는 제어 신호들을 출력하는 단계를 포함한다.

Description

제스처 입력을 검출하기 위한 방법 및 장치{METHOD AND DEVICE FOR DETECTING GESTURE INPUTS}
본 발명은 사용자 인터페이스에 관한 것으로, 보다 상세하게는 제스처 입력을 검출하기 위한 방법에 관한 것이다.
제스처 인식, 특히 손의 제스처 인식은 임의의 기계장치 없이 사람이 기계와 접속하고 자연스럽게 상호작용할 수 있도록 한다. 제스처 인식은 컴퓨터 비전(computer vision)및 이미지 프로세싱에서 유래한 기술들을 사용하여 수행될 수 있다. 제스처 인식의 개념을 사용하여, 컴퓨터 화면에서 손가락을 가리키면 커서가 그에 따라 움직이도록 할 수 있을 것이다. 제스처는, 예컨대 승리 기호(집게 손가락과 가운데 손가락은 펼쳐서 나눠지고 엄지 및 나머지 손가락들은 움켜쥐고 있는 손의 제스처)와 같은 정적인 제스처(static gesture) 및 하나의 유효한 제스처의 입력 시간 내에 (예컨대, 일부 손가락들을 펼치거나 움켜쥐는 것과 같은) 모양 및/또는 사용자의 손의 위치가 유효한 제스처의 입력을 형성하도록 변하는 동적인 제스처(dynamic gesture)를 포함한다. 그리고 때때로, 연속적인 손 모양의 변화 및/또는 손의 움직임이 장치에서 두 가지 이상의 명령으로 해석될 수 있다.
제스처 입력은 많은 분야에 적용된다. 손 제스처 입력의 한 애플리케이션으로 독서용 애플리케이션이 있다. 예를 들어, 카메라 앞에서의 (손의 움직임 궤적이 실질적으로 수평이며 움직인 거리가 특정 값, 예컨대 15 센티미터를 넘는) 사용자 손의 수평 스트로크가 있을 때, 장치는 이 제스처 입력을 책의 페이지를 넘기기 위한 명령으로 해석한다. 책을 앞뒤로 넘기는 것이 움직임 방향에 따라 달라진다. 도 1은 종래 기술에 따라 책을 뒤로 넘기는 신호를 보내는 우측으로의 제스처를 도시하는 다이어그램이다. 도 1에 도시된 바와 같이, 우측으로의 제스처를 하기 위해서, 사용자는 먼저 카메라 앞에 자신의 오른손을 두고, 이후 특정 거리를 우측으로 움직여야 한다. 제스처가 완료되면, 즉 손이 도 1에 도시된 정지 위치에 이르면 사용자는 카메라 앞에서 신속하게 손을 빼야 한다. 사용자가 몇몇 페이지를, 예컨대 한번에 5 페이지를 넘기고 싶은 시나리오를 고려해보면, 사용자는 손을 올리고, 움직이고, 멈추고, 빼내는 것을 다섯 번 수행해야 한다. 이는 사용자에게 정말로 불편하기 때문에 사용자가 체험하려는 것이 감소하게 된다.
연속적인 제스처를 입력하는 새로운 방법이 필요하게 된다.
본 발명의 일실시예에 따르면, 검출 장치 앞에서 연속적인 왕복 움직임(consecutive reciprocating movement)에 대응하여 제스처 입력들(gesture inputs)을 검출하기 위한 방법이 제공되는데, 상기 연속적인 왕복 움직임은 제1 유형의 제스처 및 제2 유형의 제스처로 구성되고, 각각은 상기 검출 장치에 의해서 인식되어 다른 제어 신호를 출력하며, 상기 방법은 상기 두 가지 유형 중 제1 유형의 제스처로 시작하는 상기 연속적인 왕복 움직임 - 상기 제1 유형의 제스처 및 제2 유형의 제스처는 번갈아 발생함 - 을 수신하는 단계; 및 상기 연속적인 왕복 움직임 내에 포함된 상기 제1 유형의 제스처의 수와 같은 횟수로 상기 제1 유형의 제스처에 해당하는 제어 신호들을 출력하는 단계를 포함한다.
본 발명의 또 다른 실시예에 따르면, 연속적인 왕복 움직임에 대응하여 제스처 입력들을 검출하기 위한 장치가 제공되는데, 상기 연속적인 왕복 움직임은 제1 유형의 제스처 및 제2 유형의 제스처로 구성되고, 각각은 다른 제어 신호를 출력하기 위해서 인식될 수 있으며, 상기 장치는 상기 두 가지 유형 중 제1 유형의 제스처에서 시작하는 상기 연속적인 왕복 움직임을 포착하기 위한 포착 모듈(capturing module) - 상기 제1 유형의 제스처 및 상기 제2 유형의 제스처는 번갈아 발생함 -; 및 상기 포착된 연속적인 왕복 움직임에 기초하여 상기 연속적인 왕복 움직임 내에 포함된 상기 제1 유형의 제스처의 수와 같은 횟수로, 상기 제1 유형의 제스처에 해당하는 제어 신호들을 출력하기 위한 프로세싱 모듈을 포함한다.
본 발명의 더 많은 실시예 및 장점을 다음 본 발명의 상세한 설명에서 발견하게 될 것임을 이해하게 된다.
첨부 도면은 본 발명의 추가적인 이해를 제공하기 위해 포함된 것으로서, 본 발명의 원리를 설명하기 위해 제공하는 설명과 함께 본 발명의 실시예들을 도시하고 있다. 그러므로 본 발명은 실시예들로 제한되지 않는다. 도면은 다음과 같다.
도 1은 종래 기술에 따라 카메라 앞에서 손의 움직임을 도시하는 다이어그램.
도 2의 (a) 및 (b)는 본 발명의 일실시예에 따른 한 손의 웨이브 궤적을 도시하는 다이어그램.
도 3은 본 발명의 실시예에 따라 두 개의 인접한 이미지 프레임에 해당하는 두 포인트를 도시하는 다이어그램.
도 4는 본 발명의 실시예에 따라 시작지점부터의 손의 궤적을 도시하는 다이어그램.
도 5는 본 발명의 실시예에 따라 시작지점부터의 또 다른 손의 궤적을 도시하는 다이어그램.
도 6은 본 발명의 실시예에 따라 연속적인 왕복 움직임으로부터 제스처 입력을 검출하기 위한 방법을 도시하는 흐름도.
도 7은 본 발명의 실시예에 따라 연속적인 왕복 움직임으로부터 제스처 입력을 검출하기 위한 장치를 도시하는 블록 다이어그램.
본 발명의 실시예는 이제 도면과 함께 상세히 설명될 것이다. 다음 설명에서, 일부 공지의 기능 및 구성의 상세한 설명은 명확하고 간결하기 위해서 생략될 수 있다.
본 발명의 목적은 연속적인 손의 왕복 움직임에 의해서 이중의 명령을 내리기 위한 쉬운 방법을 제공하는 것이다. 연속적인 왕복 움직임은 순차적인 하위 움직임들의 세트로 장치에 의해 인식될 수 있으며, 임의의 인접한 두 가지 하위 움직임은 반대 방향의 방향성을 갖는다. 연속적인 왕복 움직임으로부터 결정되는 명령의 유형은 순차적인 하위 움직임들의 세트 내의 제1 움직임에 의해서 결정되며, 결정된 명령들의 수는 (제1 움직임을 포함하여) 세트 내의 제1 움직임과 같은 방향의 방향성을 갖는 하위 움직임들의 수와 같다.
본 발명의 일실시예에 따른 상세한 예가 이하 설명된다. 시스템은 제스처 입력의 연속적인 이미지들을 포착하기 위해 사용되는 카메라 및 상기 카메라에 연결하는 프로세싱 장치를 포함한다. 상기 프로세싱 장치는 해당 명령들을 생성하기 위해서 연속적인 이미지들을 사용한다. 실시예에서, 제스처 인식을 위한 기본 제스처의 궤적은 실질적으로 직선과 동일하다 (실제 제스처 움직임이 선처럼 곧을 수는 없다). 이 예시에서, 수평인 손의 웨이브 제스처는 본 발명의 원리를 도시하기 위해서 사용된다. 그러나 본 발명의 원리는 다른 연속적인 왕복 움직임들, 예컨대 수직의 손의 웨이브, 비스듬한 손의 웨이브 및 깊이 감지 카메라(depth-detectable camera) 앞에 손을 뻗었다 빼는 움직임에조차 또한 적용될 수 있음에 유의해야 할 것이다.
제스처 인식 기술은 이미지 프로세싱과 관련되며, 따라서 제스처 인식은 실시간 이미지 프레임들에 기초한 실시간 방식으로 수행될 수 있으나, 이미지 프레임들의 세트를 포착하는 카메라를 사용하고, 이후 상기 이미지 프레임들의 세트를 분석해서는 실시간 방식으로 수행될 수 없다.
사실 모든 정적인 제스처 인식(자세 인식)은 실시간 이미지 프레임들에 기초한 실시간 방식으로 수행될 수 있다. 예를 들어, 승리 기호 자세를 검출하면, 장치는 손 모양의 볼록한 윤곽의 분석에 기초하여 상기 자세가 승리 기호인지 아닌지를 판단할 필요만 있다. 동적인 제스처 인식을 위해서, 장치는 이미지 프레임들의 세트를 포착하여, 각 프레임에서 손의 중심을 찾고, 이러한 일련의 손의 중심이 형성한 곡선을 분석한 이후에 제스처가 어떠한 종류인지를 판단할 필요가 있다.
도 2는 본 발명의 일실시예에 따른 한 손의 웨이브 궤적을 도시하는 다이어그램으로, 도 2의 (a)는 좌측으로의 손의 움직임을 도시하고 도 2의 (b)는 우측으로의 손의 움직임을 도시한다. 이 예시에서, 카메라는 좌측 상단 좌표계에 위치한 것으로 가정한다. 제스처 인식에서, 실곡선(solid curve)은 (또는 실질적으로 직선이라고 부르는 실곡선은) 존재하지 않음에 유의해야 할 것이다. 각 프레임에서 손에 대한 질량 중심은 상기 곡선상의 한 포인트에 해당한다. 따라서, 모든 이미지 프레임이 어느 방향의 움직임, 예컨대 좌측으로의 손의 움직임에 대해서 포착되면, 일련의 연속적인 포인트들을 기록할 것이며, 편리하게 설명하기 위해서는 이 모든 포인트들을 연결하는 선을 사용하게 된다. 개별 포인트들의 수는 프레임의 포착률(frame capture rate)에 따른다.
도 3은 본 발명의 실시예에 따라 두 개의 인접한 이미지 프레임에 해당하는 두 포인트를 도시하는 다이어그램이다. 포인트(A)는 두 개의 이미지 프레임 중 전자에 해당하고, 포인트(B)는 두 개의 이미지 프레임 중 후자에 해당한다. 여기서, 포인트(A)를 마지막 위치 포인트라 부르며, 포인트(B)를 현재 위치 포인트라 부른다.
이 예시에서, 상, 하, 좌, 우를 포함한 네 가지 운동 방향이 사용된다. 도 3에 도시된 것처럼, 포인트(B)는 포인트(A)의 우측에 놓인다. 두 포인트가 같은 좌표계에서 좌표값을 가지기 때문에 장치에 의해서 쉽게 결정될 수 있다.
본 실시예에서, 사용자의 제스처를 분석하기 위한 손의 궤적을 저장하는데 두 개의 데이터 어레이를 사용한다. 만약, 예컨대 도 2의 (a)에서 도시된 것처럼 운동의 경향이 리버스되지(reversed) 않으면, 손의 궤적 데이터를 제1 어레이에 저장한다. 운동의 경향이 리버스된 것이 검출된 이후엔, 운동의 경향이 리버스된 이후부터의 손의 궤적 데이터를 제2 어레이에 저장하며, 이후 어떠한 제스처가 발생했는지 결정하기 위해서 제1 어레이의 데이터를 사용하고 해당 명령을 출력한다. 또한, 리버스 운동(reverse motion)의 발생을 결정하기 위해서 리버스 임계값(reverse threshold) 및 네 개의 방향 카운터(direction counters)를 사용한다. 수평의 손의 웨이브와 같은 사용자의 연속적인 제스처는 특정한 규칙을 갖기 때문에, 예컨대 사람들이 웨이브 동작을 수행할 때, 만약 좌측으로의 웨이브 동작이면, 먼저 좌측으로 임의의 거리를 움직여야만 하고 이후 우측으로 임의의 거리를 움직이며, 몇 회를 반복해야만 하고; 만약 우측으로의 웨이브 동작이면, 먼저 우측으로 임의의 거리를 움직여야만 하고 이후 좌측으로 임의의 거리를 움직이며, 역시 몇 회를 반복해야만 하므로 종전의 하위 제스처(sub-gesture)에 기초한 방향 카운터를 선택할 수 있다. 게다가, 이러한 실시예에서는 제스처를 판단하기 위한 근거로 제1 데이터 어레이를 항상 사용한다.
이하 본 발명의 실시예에 따라 손의 움직임으로부터 생성된 위치 포인트들 중 임의의 위치 포인트에 대해 수행되는 프로세싱 단계들을 설명한다.
제1 단계에서는, 연속적인 제스처가 입력되는 시점에서, 장치가 손의 마지막 위치 포인트 및 현재 위치 포인트의 좌표값들을 결정한다. 의사코드(pseudo-code)는 아래와 같다:
Last position x coordinates ( old _x) = ( hand trace trend reverse happened) ? got last stored data in second array ( pPointBuf1 .x) : got last stored data in first array ( pPointBuf0 .x);
Last position y coordinates ( old _y) = ( hand trace trend reverse happened) ? got last stored data in second array ( pPointBuf1 .y) : got last stored data in first array ( pPointBuf0 .y);
Current position x coordinates ( cur _x) = got hand x coordinate in current frame ;
Current position y coordinates ( cur _y) = got hand y coordinate in current frame ;
상기 시점에 해당하는 현재 프레임이 현재의 위치 포인트의 좌표값을 결정하기 위해 사용됨을 상기 의사코드에서 볼 수 있다. 상기 시점의 직전(immediately preceding) 이미지 프레임에 해당하는 마지막 위치 포인트의 경우, 장치는 먼저 운동 경향의 반전이 발생했는지를 결정할 필요가 있다. 만약 발생했다면, 제2 어레이의 데이터가 마지막 위치 포인트의 좌표값을 결정하기 위해서 사용될 것이고, 발생하지 않았다면, 제1 어레이의 데이터가 마지막 위치 포인트의 좌표값을 결정하기 위해 사용될 것이다.
제2 단계에서는, 손의 움직임의 운동 경향을 결정하기 위한 네 개의 방향 카운터가 현재의 위치 포인트 및 마지막 위치 포인트의 위치 관계에 기초하여 갱신된다. 이러한 실시예에서는, 상, 하, 좌, 우측 방향을 각각 기록하기 위한 네 개의 방향 카운터를 사용한다. 그러나 변형에 의해서, 만약 장치에서 규정된 수직의 손 제스처가 없다면, 상, 하 방향의 카운터들은 불필요하게 된다.
반대 방향에 해당하는 두 개의 방향 카운터는 그룹으로 작동한다. 예를 들어, 만약 마지막 위치 포인트를 기준으로 현재의 위치 포인트의 위치가 좌측 방향이면, 좌측 방향의 카운터에서는 1을 추가하게 될 것이고, 동시에, 만약 우측 방향의 카운터가 0이 아니면, 이 카운터에서는 1을 차감하게 될 것이다. 같은 원리가 상, 하 방향의 카운터들에 적용된다. X축 값들에 기초하여 좌, 우측 카운터들(orientation_l 및 orientation_r)을 결정하기 위한 관련된 의사코드는 아래와 같다. 유사한 원리가 Y축 값들에 기초하여 상, 하측 카운터들의 결정에 적용될 수 있다.
If( cur _x > old _x) {//x- axis coordinates of current position is bigger than last position
orientation _r++;// RIGHT orientation counter increase one
If ( orientation _l > 0) {// LEFT orientation counter bigger than zero
Orientation _l--;
} else {
Orientation _l = 0;
}
}
If( cur _x < old _x) {//x axis coordinates of current position is smaller than last position
orientation _l++;// LEFT orientation counter increase one
If ( orientation _r > 0) {// RIGHT orientation counter bigger than zero
Orientation _r--;
} else {
Orientation _r = 0;
}
}
도 4는 본 발명의 실시예에 따라 시작지점부터의 손의 궤적을 도시하는 다이어그램이다. 도 4에 도시된 바와 같이, 리버스 포인트(reverse point) 전에 14 개의 포인트가 존재한다 (리버스 포인트를 결정하는 방법은 아래 설명될 것이다). 리버스 포인트는 리버싱 제스처(reversing gesture)의 시작 포인트로 간주할 수 있다. 따라서, Orientation_l 및 Orientation_r에 대한 상기 처리 방법에 따라 (이 예시에서, 상하 방향의 카운터들에 대한 처리는 생략함), 리버스 포인트 전의 포인트, 즉 가장 우측의 포인트에서 Orientation_l는 0이고, Orientation_r은 13이다. cur_X < old_X인 리버스 포인트로 움직이면, Orientation_l은 하나가 추가되어 1이 되고, Orientation_r은 하나가 차감되어 12가 된다.
제3 단계에서는, 제스처 입력이 있는 동안 각 장치가 이미지 프레임을 포착할 때마다, 장치는 운동 경향이 반전되는지 여부를 결정한다. 제스처 입력이 있는 동안, 장치는 특정한 포착률로 이미지 프레임들의 집합으로서 제스처를 포착한다. 각 이미지 프레임에 대해, 장치는 먼저 이미지 프레임에서 사용자의 손의 위치 포인트를 결정하고, 관련된 방향 카운터들을 갱신하기 위해서 위치 포인트 및 그것의 이전 위치 포인트(preceding position point)를 사용한다. 방향 카운터들이 갱신된 이후, 장치는 운동 경향의 반전이 발생했는지 여부를 결정하기 위해서 방향 카운터들 및 방향 임계값을 사용한다. 방향 임계값은 사전 결정된 값으로, 이 예시에서는 6으로 설정한다. 운동 경향이 반전되는지 여부를 결정하기 위한 의사코드가 이하와 같이 나타난다. 여기서, 하위 제스처의 방향 지표들의 집합, 즉 gesture_l, gesture_r, gesture_u 및 gesture_d는 연속적인 제스처 입력 또는 연속적인 손의 왕복 움직임 중 마지막 제스처의 제스처 방향을 기록하기 위해서 사용한다. 사용자가 연속적인 제스처를 입력하기 전에, 이러한 파라미터들은 false로 설정된다. 장치가 연속적인 제스처 입력 중 제1 하위 제스처를 검출한 이후, 해당 파라미터는 true로 설정될 것이다.
제1 하위 제스처가 검출되기 전에, 방향 임계값과 비교하기 위해서 네 개의 카운터 중 최대 카운터를 선택한다. 만약 최대 카운터가 임계값보다 크고 최대 카운터와 반대 방향을 갖는 방향 카운터가 1에 해당하면, 반전이 발생했다고 결정하며, 제1 하위 제스처의 반대 방향에 해당하는 하위 제스처의 방향 지표를 true로 설정한다. 변형에 의해서, 네 가지 값의 선택권을 갖는 단일 지표가 네 개의 true-false 지표를 대체하기 위해서 사용될 수 있다.
If (~( gesture _l | gesture _r | gesture _u | gesture _d)) {// four orientation trajectory reversal does not happened
Got the maximum orientation counter ;
If ( the maximum orientation counter > THRESHOLD && the opposite orientation counter == 1) {
reverse = true ;// Trajectory reversal happened
}
}
여기서, 도시를 위해 여전히 도 4를 사용한다. 가장 우측의 포인트에서, Orientation_l은 0이고 Orientation_r은 13이다. 비록 최대 카운터로서 Orientation_r이 방향 임계값인 6보다 크지만, 반대 방향의 카운터, 즉 Orientation_l은 0이다. 따라서, 반전이 발생하지 않았다고 결정한다. 그러나 리버스 포인트에서는 두 조건이 충족된다. 따라서, 반전이 발생했다고 장치에 의해서 결정될 수 있다.
제1 하위 제스처의 방향 지표들 이후에 반전을 결정하는 것에 관해서, 장치는 다음 두 가지 조건, 1) 마지막 하위 제스처의 방향 지표와 같은 방향을 갖는 방향 카운터가 임계값을 넘을 것, 2) 마지막 하위 제스처의 방향 지표와 반대 방향을 갖는 방향 카운터가 1에 해당할 것이 충족되는지 여부를 결정한다. 만약 두 가지 모두가 충족되면, 반전이 발생했다고 결정한다. 이는 계산의 복잡도를 감소시킬 것이다. gesture_l이 선택된 이후에 반전을 결정하기 위한 의사코드는 이하와 같다. 다른 방향 지표들에 대한 의사코드는 유사하다.
If ( gesture _l) { // last gesture is LEFT
If(( orientation _l > THRESHOLD ) && ( orientation _r == 1)) {
Reverse = true ;
}
}
반전이 발견되기 이전에, 데이터는 제1 어레이(pPointBuf0)에 저장된다. 일단 제1 반전이 발생하면, pPointBuf0 내의 데이터는 제스처의 의미를 나타내는 신호를 출력하기 위해서 제스처를 해석하는 데 사용된다. 이 시점에서, 제스처가 무엇인지를 결정하기 위해서 pPointBuf0 내의 모든 포인트에 대한 방향 카운터의 수에 단지 기초하거나 인접한 두 포인트를 사용할 수만은 없다. 만약 그러했다면, 오류가 발생할 수 있다. 도 5는 이러한 상황을 도시하고 있다. 만약 사용자가 우측으로 움직이는 하위 제스처를 하고 있다면, 하측으로의 움직임 또한 수반될 수 있으며, 리버스 포인트에서 하측 방향의 카운터가 우측 방향의 카운터보다 클지라도, 이러한 하위 제스처를 하측으로의 제스처로 결정할 수는 없다. 전반적으로 이러한 제스처를 보면, 우측으로 움직인 거리가 하측으로 움직인 거리보다 훨씬 더 크다는 것이 분명하며, 이러한 하위 제스처는 우측으로의 제스처라고 판단해야 한다. 제1 반전이 발생한 후, 데이터는 제2 어레이 pPointBuf1에 저장될 것이다. 제2 반전의 발생을 결정하기 위해서 관련된 방향 카운터를 사용할 것이다. 제스처를 결정하기 위해서 이 예시에서는 pPointBuf1의 데이터를 사용하지 않음에 유의해야 한다. pPointBuf1의 데이터는 단지 제2 반전, 제4 반전, 제6 반전 등의 발생을 결정하기 위해서 사용한다. 제1 어레이는 제1 하위 제스처의 움직임과 같은 방향을 갖는 하위 제스처 움직임들의 데이터를 저장하는데 사용하며, 제스처의 움직임들이 왕복하고 있으므로 제2 어레이는 제1 하위 제스처의 움직임과 반대 방향을 갖는 하위 제스처 움직임들의 데이터를 저장하는데 사용한다. 제3 반전, 제5 반전, 제7 반전 등을 결정하는 것은 제1 반전을 결정하는 것과 유사하다. 그리고 제4 반전, 제6 반전, 제8 반전 등을 결정하는 것은 제2 반전을 결정하는 것과 유사하다. 어떠한 제스처가 발생했는지 판단하기 위해서 시작 포인트 및 정지 포인트의 x축 및 y축 좌표의 차이를 이용한다 (어떠한 종류의 제스처인지를 결정하기 위해서 제스처 궤적의 x축 및 y축 크기의 비를 사용하는 것은 또 다른 방법이다).
다음의 의사코드는 어떠한 제스처가 발생했는지를 결정하는 방법을 나타낸다.
Function calcAction () :
If ( nPointBufLength > 0) {// length of data array bigger than zero
nDiffx = pPointBuf0 [ nPointBufLength -1].x - pPointBuf0 [0].x;// Got the difference of x- axis nDiffx ;
nDiffy = pPointBuf0 [ nPointBufLength -1].y - pPointBuf0 [0].y;// Got the difference of y- axis nDiffy ;
If ( abs ( nDiffx ) > abs ( nDiffy ))
If( nDiffx < 0) LEFT gesture occurred ;
Else RIGHT gesture occurred ;
} else {
If( nDiffy < 0) DOWN gesture occurred ;
Else UP gesture occurred ;
}
Return gesture ;
수평 움직임 및 수직 움직임 간에 어떠한 주된 움직임이 발생하는지를 결정하기 위해서 nDiffx 및 nDiffy의 절대값들을 비교한다는 것이 이상 나타나 있다. 이는 사용자 손의 움직임이 정확하게 수평 또는 수직 움직임일 수가 없기 때문이다. 비록 수평 움직임을 하고자 할 때 수직방향의 차이가 불가피하지만, 수평방향의 절대적인 차이 값은 수직방향에서보다 더 클 것이다. 수평 움직임으로 결정한 후, nDiffx는 좌측 제스처 및 우측 제스처 간에 어느 제스처인지를 결정하기 위해 사용한다.
다음의 의사코드는 제1 반전이 발생한 이후의 처리 방법을 나타낸다:
If reversal occurred ( reversal ) {
Call calcAction ;
Clear all four orientation counter ;
gesture _l = LEFT gesture happened ;
gesture _r = RIGHT gesture happened ;
gesture _u = UP gesture happened ;
gesture _d = DOWN gesture happened ;
Set pPointBuf0 length to zero ;
Push current data into pPointBuf1 ;
Set pPointBuf1 length to one ;
} else {
Push data in pPointBuf0 ;
PointBufLength0 ++;// Increase the length of pPointBuf0
}
다음의 의사코드는 제2 반전이 발생한 이후의 처리 방법을 나타낸다:
If ( reverse ) {// after the first reversal occurs , bool variable reverse set to true
Got the four orientation counter ;
Got the maximum orientation counter ;
If ( the maximum orientation counter > THRESHOLD && the related exclusive orientation counter == 1) {
reverse = false ;// second trajectory reversal happened , after the second reversal occurs , bool variable reverse set to false
}
If (! reserve ) {
Clear four orientation counters ;
Push current point in pPointBuf0 [0];
PointBufLength0 = 1;
} else {
Push current point in pPointBuf1 ;
PointBufLength1 ++;// Increase the length of pPointBuf1
}
}
손의 왕복 움직임이 정지한 후 (공중에서 얼마간, 예컨대 2초간 손을 고정하거나, 정지를 나타내는 특정 자세를 사용하거나, 사용자가 신속하게 자신의 손을 빼는 행동), 만약 제1 어레이(pPointBuf0)의 유효한 데이터의 수가 특정한 임계값보다 크면 (대게 적어도 3이며, 그렇지 않으면 제스처의 궤적이 너무 짧아서 무시할 수 있다), 어떠한 제스처가 발생했는지 결정하기 위해서 이들 데이터를 사용할 것이다. 다음 의사코드는 하나의 연속적인 제스처가 정지한 후의 처리 방법을 나타낸다:
If ( gesture _ stop ) {
If( PointBufLength0 > 2) {
Call calcAction ;
}
Clear all four orientation counter ;
Set all gesture orientation indicators to false ;
PointBufLength0 = 0;
PointBufLength1 = 0;
}
도 6은 본 실시예에 따라 연속적인 왕복 움직임으로부터 제스처 입력을 검출하기 위한 방법을 도시하는 흐름도이다. 여기에서, 연속적인 왕복 움직임은 두 가지 유형의 장치가 인식 가능한 제스처들로 구성되어 있으며, 각각은 수차례 발생한다.
단계(601)에서, 장치는 움직임을 포착하기 위한 카메라를 사용하여 연속적인 왕복 움직임을 수신하고, 이미지 프레임들의 시퀀스(sequence)의 결과를 출력한다. 이 단계(601)는 적어도 다음 두 가지 시나리오를 포함하고 있음에 유의해야 할 것이다 - 1) 장치는 움직임을 멈출 때까지 움직임의 포착을 유지해야 하며, 포착 모듈은 이미지 프레임들의 시퀀스를 출력함; 2) 포착 모듈은 움직이는 동안 이미지 포착에 대응하여 즉시 이미지 프레임을 출력함 -.
단계(602)에서, 장치는 이미지 프레임들의 시퀀스를 사용하여 적어도 하나의 리버스 포인트를 결정한다. 특히, 좌표값들의 시퀀스를 얻기 위해서 이 단계는 각 이미지 프레임에 대한 손의 위치에 해당하는 좌표값을 결정하는 단계를 더 포함한다. 좌표값의 결정에 관해서는, 예컨대 포착한 RGB 이미지를 HSV 색공간(color space)으로 변환할 수 있으며, 피부 색상에 기초하여 배경 분리(background subtraction)를 수행할 수 있다. 필요하다면, 일부 형태학적 연산(morphological operations)을 수행할 수 있으며, 이후 손의 윤곽을 발견할 수 있다. 상기 윤곽의 집합체(mass)가 상기 프레임에 대한 손의 위치에 해당하는 좌표값이 될 것이다. 상기 제1 단계 내지 제3 단계를 사용함으로써 좌표값들의 시퀀스에 기초하여 리버스 포인트를 결정하게 된다.
단계(603)에서, 장치는 결정된 리버스 포인트에 기초하여 연속적인 왕복 움직임을 하위 움직임들(sub movements)로 분할한다. 리버스 포인트가 결정되고, 이미지 프레임들의 시퀀스가 연속적인 왕복 움직임에 해당하기 때문에, 이미지 프레임들의 시퀀스 내에서 하위 움직임들이 리버스 포인트에 의해 구분되며, 리버스 포인트는 제1 하위 움직임을 제외하고 임의의 하위 움직임에 대한 시작 포인트가 된다. 또한, 모든 분할된 하위 움직임이 인식 가능한 제스처임에 유의해야 할 것이다.
단계(604)에서, 장치는 분할된 하위 움직임들에 기초하여 적어도 하나의 신호를 출력한다. 특히, 장치는 먼저 제1 하위 움직임과 같은 방향을 가지면서 제1 하위 움직임을 포함하는 하위 움직임들의 수를 결정하고, 이후 인식 가능한 제1 하위 움직임에 해당하는 의미가 있으며 제1 하위 움직임과 같은 방향을 갖는 하위 움직임들의 수와 동일한 수를 갖는 신호들을 출력한다.
장치가 실시간 방식으로 이미지 프레임들을 처리하는지에 유의해야 할 것인데, 즉 단계(601)에서 언급된 시나리오 2에 해당하여, 장치는 각 이미지 프레임의 입력에 대응하여 제1 리버스 포인트를 발견함으로써 제1 하위 움직임을 결정하고, 제1 하위 움직임에 해당하는 신호를 출력할 필요가 있을 수 있다. 제1 하위 움직임을 결정한 후, 장치는 각 이미지 프레임의 입력에 대응하여, 제2 리버스 포인트, 제3 리버스 포인트, 제4 리버스 포인트 등을 발견함으로써 순차적인 방식으로 제2 하위 움직임, 제3 하위 움직임, 제4 하위 움직임 등을 결정할 것이며, 같은 유형의 제스처인지 결정하기 위해서 제2 하위 움직임, 제3 하위 움직임, 제4 하위 움직임 등을 제1 하위 움직임과 개별적으로 비교하고, 만약 이들이 같은 유형이라면, 제1 하위 움직임과 같은 신호를 출력할 것이다.
변형에 의하면, 이는 연속적인 왕복 움직임이므로, 제2 하위 움직임, 제4 하위 움직임, 제6 하위 움직임 등을 비교할 필요가 없다. 따라서, 장치는 제1 하위 움직임, 제3 하위 움직임, 제5 하위 움직임을 결정할 필요만이 있다. 물론, 장치는 연속적인 왕복 움직임을 하위 움직임들로 분할하기 위한 모든 리버스 포인트를 결정할 필요는 있다. 제3 하위 움직임, 제5 하위 움직임 등을 획득한 이후, 장치는 이들을 제1 하위 움직임과 비교하며, 각각의 긍정적인 비교결과(positive comparison)가 있은 후에 제1 하위 움직임에 해당하는 신호를 출력한다. 또한, 움직임을 왕복하기 때문에, 홀수 회(odd-times)의 하위 움직임들을 비교할 필요가 없을 수 있다. 대신에, 제1 리버스 포인트로부터 시작하여 매 두 번째 리버스 포인트마다, 장치는 제1 하위 움직임에 해당하는 신호를 출력한다.
도 7은 사용자 입력을 검출하기 위한 장치를 도시하는 블록 다이어그램이다. 도 7에 도시된 것처럼, 연속적인 왕복 움직임에 대응하여 제스처 입력을 검출하기 위한 장치가 제공되는데, 여기서 상기 연속적인 왕복 움직임은 두 가지 유형의 인식 가능한 제스처, 즉 (예컨대, 좌측으로의 움직임과 같은) 제1 유형의 제스처 및 (예컨대, 우측으로의 움직임과 같은) 제2 유형의 제스처로 구성되며, 각각은 인식되어 다른 제어 신호를 출력할 수 있으며, 상기 장치는 상기 두 가지 유형 중 상기 제1 유형의 제스처로 시작하는 상기 연속적인 왕복 움직임을 포착하기 위한 포착 모듈 - 상기 제1 유형의 제스처 및 상기 제2 유형의 제스처는 번갈아 발생함 -; 및 포착된 연속적인 왕복 움직임에 기초하여 연속적인 왕복 움직임 내에 포함된 상기 제1 유형의 제스처의 수와 같은 횟수로 상기 제1 유형의 제스처에 해당하는 제어 신호들을 출력하기 위한 프로세싱 모듈을 포함한다.
또한, 상기 프로세싱 모듈은 상기 연속적인 왕복 움직임에 대한 리버스 포인트들을 결정하도록 구성된다.
또한, 리버스 포인트들을 사용하여 상기 프로세싱 모듈은 상기 연속적인 왕복 움직임을 적어도 두 개의 하위 움직임으로 분할하도록 구성되며, 각각의 하위 움직임은 두 가지 유형의 제스처 중 하나에 해당하고, 이를 각각의 하위 움직임에 대한 제1 하위 움직임과 비교하며, 비교중인 하위 움직임이 제1 하위 움직임과 동일한 유형이라는 결정에 대응하여 상기 제1 유형의 제스처에 해당하는 제어 신호를 출력한다.
또한, 각 홀수 회의 리버스 포인트에 대응하여 상기 프로세싱 모듈은 상기 제1 유형의 제스처에 해당하는 제어 신호를 출력하도록 구성된다.
다수의 구현 방법이 설명되어 있다. 그럼에도 불구하고, 다양한 변형이 이루어질 수 있다는 것을 이해할 수 있을 것이다. 예를 들어, 다른 구현 방법을 만들어 내기 위해서 다른 구현 방법들의 요소들을 결합, 보충, 변경 또는 제거할 수 있다. 또한 통상의 지식을 가진 사람은 다른 구조 및 프로세스가 개시된 내용을 대체할 수 있다는 것을 이해할 것이며, 그 결과물은 개시된 구현 방법과 적어도 실질적으로 동일한 결과를 달성하기 위해, 적어도 실질적으로 동일한 방법으로, 적어도 실질적으로 동일한 기능을 수행할 것이다. 따라서, 이와 같은 구현 방법들 및 그 외의 구현 방법들은 본 발명의 범위에 놓이게 될 것이다.

Claims (10)

  1. 검출 장치 앞에서의 연속적인 왕복 움직임(consecutive reciprocating movement)에 대응하여 제스처 입력들(gesture inputs)을 검출하기 위한 방법으로서,
    상기 연속적인 왕복 움직임은 제1 유형의 제스처 및 제2 유형의 제스처로 구성되고, 각각은 상기 검출 장치에 의해 인식되어 다른 제어 신호를 출력하는 것을 특징으로 하며,
    상기 두 가지 유형 중 상기 제1 유형의 제스처로 시작하는 상기 연속적인 왕복 움직임 - 상기 제1 유형의 제스처 및 상기 제2 유형의 제스처는 번갈아 발생함 - 을 수신하는 단계; 및
    상기 연속적인 왕복 움직임 내에 포함된 상기 제1 유형의 제스처의 수와 같은 횟수로 상기 제1 유형의 제스처에 해당하는 제어 신호들을 출력하는 단계
    를 포함하는 제스처 입력들을 검출하기 위한 방법.
  2. 제1항에 있어서,
    상기 연속적인 왕복 움직임에 대한 리버스 포인트들(reverse points)을 결정하는 단계를 더 포함하는 것을 특징으로 하는 제스처 입력들을 검출하기 위한 방법.
  3. 제2항에 있어서,
    상기 리버스 포인트들의 결정은
    상기 연속적인 왕복 움직임의 이미지 프레임들의 시퀀스를 수신하는 단계;
    각 이미지 프레임에 대한 포인트를 결정하는 단계; 및
    상기 이미지 프레임들의 시퀀스의 상기 포인트들에 기초하여 상기 리버스 포인트들을 결정하는 단계
    를 더 포함하는 것을 특징으로 하는, 제스처 입력들을 검출하기 위한 방법.
  4. 제3항에 있어서,
    상기 이미지 프레임들의 시퀀스의 상기 포인트들에 기초한 상기 리버스 포인트의 결정은
    각 포인트에 대해서, 상기 이미지 프레임들의 시퀀스의 상기 포인트들 중 두 번째 것으로부터 시작하며, 포인트와 이의 인접한 이전 포인트(preceding point) 간의 위치 관계를 기록하기 위한 두 개의 카운터를 사용하는 단계; 및
    만약 특정 포인트에서 하나의 카운터가 사전 결정된 임계값을 초과하고 다른 카운터는 1이라고 결정하면, 상기 특정 포인트를 리버스 포인트로 결정하는 단계
    를 더 포함하는 것을 특징으로 하는, 제스처 입력들을 검출하기 위한 방법.
  5. 제2항에 있어서,
    상기 출력하는 단계는
    상기 반전 포인트들을 사용하여 상기 연속적인 왕복 움직임을 적어도 두 개의 하위 움직임 - 각각의 하위 움직임은 상기 두 가지 유형의 제스처 중 하나에 해당함 - 으로 분할하는 단계;
    각각의 하위 움직임을 제1 하위 움직임과 비교하는 단계; 및
    비교 중인 하위 움직임이 상기 제1 하위 움직임과 같은 유형이라는 결정에 대응하여, 상기 제1 유형의 제스처에 해당하는 제어 신호를 출력하는 단계
    를 더 포함하는 것을 특징으로 하는, 제스처 입력들을 검출하기 위한 방법.
  6. 제2항에 있어서,
    상기 출력하는 단계는 각각의 홀수 번째 리버스 포인트에 대응하여 상기 제1 유형의 제스처에 해당하는 제어 신호를 출력하는 단계를 더 포함하는 것을 특징으로 하는, 제스처 입력들을 검출하기 위한 방법.
  7. 연속적인 왕복 움직임에 대응하여 제스처 입력들을 검출하기 위한 장치로서,
    상기 연속적인 왕복 움직임은 제1 유형의 제스처 및 제2 유형의 제스처로 구성되고, 각각은 다른 제어 신호를 출력하도록 인식될 수 있으며,
    상기 두 가지 유형 중 상기 제1 유형의 제스처에서 시작하는 상기 연속적인 왕복 움직임 - 상기 제1 유형의 제스처 및 상기 제2 유형의 제스처는 번갈아 발생함 - 을 포착하기 위한 포착 모듈(capturing module); 및
    상기 포착된 연속적인 왕복 움직임에 기초하여 상기 연속적인 왕복 움직임 내에 포함된 상기 제1 유형의 제스처의 수와 같은 횟수로 상기 제1 유형의 제스처에 해당하는 제어 신호들을 출력하기 위한 프로세싱 모듈
    을 포함하는 제스처 입력들을 검출하기 위한 장치.
  8. 제7항에 있어서,
    상기 프로세싱 모듈은 상기 연속적인 왕복 움직임에 대한 리버스 포인트들을 결정하도록 더 구성된 것을 특징으로 하는, 제스처 입력들을 검출하기 위한 장치.
  9. 제8항에 있어서,
    상기 프로세싱 모듈은 상기 리버스 포인트들을 사용하여 상기 연속적인 왕복 움직임을 적어도 두 개의 하위 움직임으로 분할하도록 더 구성되며,
    각 하위 움직임은
    상기 두 가지 유형의 제스처 중 하나에 해당하고;
    이를 각 하위 움직임에 대한 제1 하위 움직임과 비교하며;
    비교 중인 하위 움직임이 상기 제1 하위 움직임과 같은 유형이라는 결정에 대응하여, 상기 제1 유형의 제스처에 해당하는 제어 신호를 출력하는 것을 특징으로 하는,
    제스처 입력들을 검출하기 위한 장치.
  10. 제8항에 있어서,
    상기 프로세싱 모듈은 각각의 홀수 번째 리버스 포인트에 대응하여 상기 제1 유형의 제스처에 해당하는 제어 신호를 출력하도록 더 구성되는 것을 특징으로 하는, 제스처 입력들을 검출하기 위한 장치.
KR1020137014084A 2010-11-01 2010-11-01 제스처 입력을 검출하기 위한 방법 및 장치 KR101760159B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2010/001733 WO2012058782A1 (en) 2010-11-01 2010-11-01 Method and device for detecting gesture inputs

Publications (2)

Publication Number Publication Date
KR20130118895A true KR20130118895A (ko) 2013-10-30
KR101760159B1 KR101760159B1 (ko) 2017-07-20

Family

ID=46023909

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137014084A KR101760159B1 (ko) 2010-11-01 2010-11-01 제스처 입력을 검출하기 위한 방법 및 장치

Country Status (9)

Country Link
US (1) US9189071B2 (ko)
EP (1) EP2635952B1 (ko)
JP (1) JP5997699B2 (ko)
KR (1) KR101760159B1 (ko)
CN (1) CN103282858B (ko)
BR (1) BR112013010520B1 (ko)
MX (1) MX2013004805A (ko)
RU (1) RU2581013C2 (ko)
WO (1) WO2012058782A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10088924B1 (en) * 2011-08-04 2018-10-02 Amazon Technologies, Inc. Overcoming motion effects in gesture recognition
JP2013250637A (ja) * 2012-05-30 2013-12-12 Toshiba Corp 認識装置
US20140118244A1 (en) * 2012-10-25 2014-05-01 Pointgrab Ltd. Control of a device by movement path of a hand
WO2016017956A1 (en) 2014-07-30 2016-02-04 Samsung Electronics Co., Ltd. Wearable device and method of operating the same
KR102397397B1 (ko) * 2014-07-30 2022-05-13 삼성전자주식회사 웨어러블 디바이스 및 웨어러블 디바이스의 동작 방법
JP5932082B2 (ja) * 2015-03-04 2016-06-08 株式会社東芝 認識装置
CN105278763B (zh) * 2015-05-28 2019-05-17 维沃移动通信有限公司 手势识别防误触的方法及装置
DE102016202455B4 (de) 2016-02-17 2024-10-10 Volkswagen Aktiengesellschaft Anwenderschnittstelle, Fortbewegungsmittel und Verfahren zur Klassifikation einer frei im Raum ausgeführten Anwendergeste
CN108076365B (zh) * 2017-02-22 2019-12-31 解波 人体姿势识别装置
KR101971982B1 (ko) * 2017-04-20 2019-04-24 주식회사 하이딥 터치 감지 및 터치압력 감지가 가능한 장치 및 제어방법

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6369794B1 (en) 1998-09-09 2002-04-09 Matsushita Electric Industrial Co., Ltd. Operation indication outputting device for giving operation indication according to type of user's action
JP5048890B2 (ja) 1998-10-13 2012-10-17 ソニー エレクトロニクス インク 動作検知インターフェース
US6501515B1 (en) 1998-10-13 2002-12-31 Sony Corporation Remote control system
JP2001216069A (ja) * 2000-02-01 2001-08-10 Toshiba Corp 操作入力装置および方向検出方法
SE0000850D0 (sv) * 2000-03-13 2000-03-13 Pink Solution Ab Recognition arrangement
RU2175143C1 (ru) * 2000-04-04 2001-10-20 Свириденко Андрей Владимирович Способ дистанционного управления
US7071914B1 (en) 2000-09-01 2006-07-04 Sony Computer Entertainment Inc. User input device and method for interaction with graphic images
US7259747B2 (en) * 2001-06-05 2007-08-21 Reactrix Systems, Inc. Interactive video display system
US20040001113A1 (en) * 2002-06-28 2004-01-01 John Zipperer Method and apparatus for spline-based trajectory classification, gesture detection and localization
US7932895B2 (en) * 2005-05-24 2011-04-26 Nokia Corporation Control of an electronic device using a gesture as an input
US20080040692A1 (en) 2006-06-29 2008-02-14 Microsoft Corporation Gesture input
JP5174492B2 (ja) 2008-03-05 2013-04-03 公立大学法人首都大学東京 画像認識装置、画像認識方法、画像認識プログラム、ジェスチャ動作認識システム、ジェスチャ動作認識方法、及びジェスチャ動作認識プログラム
TWI354225B (en) 2008-04-29 2011-12-11 Tsint Touch free public browser
US20090278801A1 (en) * 2008-05-11 2009-11-12 Kuo-Shu Cheng Method For Executing Command Associated With Mouse Gesture
WO2010011929A1 (en) * 2008-07-25 2010-01-28 Gesturetek, Inc. Enhanced detection of waving engagement gesture
CN101685343B (zh) * 2008-09-26 2011-12-28 联想(北京)有限公司 一种实现手势识别的方法、装置
US7996793B2 (en) * 2009-01-30 2011-08-09 Microsoft Corporation Gesture recognizer system architecture
KR101666995B1 (ko) 2009-03-23 2016-10-17 삼성전자주식회사 멀티 텔레포인터, 가상 객체 표시 장치, 및 가상 객체 제어 방법

Also Published As

Publication number Publication date
CN103282858B (zh) 2017-03-08
MX2013004805A (es) 2013-07-02
JP5997699B2 (ja) 2016-09-28
BR112013010520A2 (pt) 2016-08-02
EP2635952A1 (en) 2013-09-11
JP2013545183A (ja) 2013-12-19
WO2012058782A1 (en) 2012-05-10
BR112013010520B1 (pt) 2021-01-12
EP2635952B1 (en) 2021-01-06
US20130215017A1 (en) 2013-08-22
CN103282858A (zh) 2013-09-04
US9189071B2 (en) 2015-11-17
KR101760159B1 (ko) 2017-07-20
RU2013125228A (ru) 2014-12-10
EP2635952A4 (en) 2014-09-17
RU2581013C2 (ru) 2016-04-10

Similar Documents

Publication Publication Date Title
KR101760159B1 (ko) 제스처 입력을 검출하기 위한 방법 및 장치
US8339359B2 (en) Method and system for operating electric apparatus
CN101393477B (zh) 图像处理设备和方法
US9734392B2 (en) Image processing device and image processing method
KR101631011B1 (ko) 제스처 인식 장치 및 제스처 인식 장치의 제어 방법
CN104914990B (zh) 姿势辨识装置以及姿势辨识装置的控制方法
KR101654311B1 (ko) 사용자 모션 인식 방법 및 장치
KR101883291B1 (ko) 이동장치의 제스처 제어장치 및 방법
US20160140762A1 (en) Image processing device and image processing method
CN111754571A (zh) 一种姿态识别方法、装置及其存储介质
CN103309434B (zh) 一种指令识别方法和电子设备
US9489077B2 (en) Optical touch panel system, optical sensing module, and operation method thereof
EP2428870A1 (en) Device and method for controlling gesture for mobile device
JP2016525235A (ja) 文字入力のための方法及びデバイス
Siam et al. Human computer interaction using marker based hand gesture recognition
KR101360322B1 (ko) 다양한 손모양 검출 및 추적을 기반으로 한 원격 전자칠판 제어 장치 및 그 방법
Ghodichor et al. Virtual mouse using hand gesture and color detection
KR101348763B1 (ko) 손동작에 의한 인터페이스 조작 장치 및 방법, 그리고 컴퓨터로 읽을 수 있는 기록매체
KR101506197B1 (ko) 양손을 이용한 동작인식 입력방법
JP2017211739A (ja) ユーザインターフェース装置およびユーザインターフェースプログラム
CN118116078A (zh) 识别挥动动作的方法及相关装置
CN114740977A (zh) 一种无接触人机交互方法和装置
JP2016110517A (ja) 情報処理装置とその制御方法、プログラム、記憶媒体
KR101481307B1 (ko) 손가락 영상 및 센서를 이용하여 제어 명령을 생성하는 이동 단말 및 단말기의 카메라에 입력된 손가락 영상 및 센서를 이용한 제어 명령 생성 방법
CN117255982A (zh) 手势识别方法、交互方法、手势交互系统、电子设备、存储介质

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