KR102247020B1 - 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법 - Google Patents

손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법 Download PDF

Info

Publication number
KR102247020B1
KR102247020B1 KR1020200121775A KR20200121775A KR102247020B1 KR 102247020 B1 KR102247020 B1 KR 102247020B1 KR 1020200121775 A KR1020200121775 A KR 1020200121775A KR 20200121775 A KR20200121775 A KR 20200121775A KR 102247020 B1 KR102247020 B1 KR 102247020B1
Authority
KR
South Korea
Prior art keywords
virtual keyboard
user
finger
key
keyboard input
Prior art date
Application number
KR1020200121775A
Other languages
English (en)
Other versions
KR20200112777A (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 KR20200112777A publication Critical patent/KR20200112777A/ko
Application granted granted Critical
Publication of KR102247020B1 publication Critical patent/KR102247020B1/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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/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
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06K9/00355
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/155Segmentation; Edge detection involving morphological operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/64Analysis of geometric attributes of convexity or concavity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • 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/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person

Abstract

손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법이 개시된다. 본 발명의 실시예에 따른 키보드 입력 시스템은 영상 촬영부에 의해 획득된 영상에 글쇠들이 배열된 가상 키보드를 겹쳐서 표시하도록 구성되는 가상 키보드 표시부; 및 영상에서 인식된 사용자의 손가락 동작을 기반으로 가상 키보드의 글쇠를 출력하도록 구성되는 가상 키보드 입력부를 포함한다. 가상 키보드 입력부는 영상에서 사용자의 손가락 동작을 인식하도록 구성되는 손가락 인식부; 손가락 동작이 설정된 클릭 제스쳐에 해당하는지 판단하도록 구성되는 클릭 제스쳐 판단부; 및 클릭 제스쳐가 발생한 때에 사용자의 설정된 손가락 위치와 중첩되는 글쇠를 결정하도록 구성되는 글쇠 출력부를 포함하다. 클릭 제스쳐는 사용자의 적어도 두 손가락들 간의 상호 작용을 포함할 수 있다.

Description

손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법{Keyboard Typing System and Keyboard Typing Method with Finger Gesture}
본 발명은 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법에 관한 것이다.
최근 디지털 미디어의 발달로 인하여 실제 환경에 가상 사물이나 정보를 합성하는 증강현실(Augmented Reality) 기술이 보급화 됨에 따라 카메라를 통해 입력할 수 있는 인터페이스 기술에 대한 요구가 커지고 있다. 현실세계와 가상 세계가 함께 공존하는 증강현실에서, 사용자가 가상의 이미지나 영상을 제어하기 위한 다양한 방법이 연구되고 있다. 컴퓨터 시스템에서 사용되었던 키보드와 마우스는 가장 보편적이며 중요한 입력장치이지만, 휴대용 기기에 사용하기에는 이동시 부피 면에서 불편한 점이 많다. 이러한 문제를 해결하기 위해 가상 키보드 방식의 입력장치가 개발되었으며, 사람과 컴퓨터 간의 직관적이고 자연스러운 상호작용을 위해, 사용자의 손 동작을 이용한 인터페이스 방법에 대한 연구가 많이 되고 있다. 종래의 손동작 인식 방식은 기계 학습을 통하여 기하학적 특징을 이용하여 손끝 움직임을 인식하고, 손가락 끝의 클릭 동작을 인식하는 방식이나, 이 방식은 증강현실과 같은 환경에 적용될 경우 공간 상에 터치가 안되기 때문에 키(Key)가 클릭된 것인지 정확한 판단이 어렵다. 마커들의 움직임을 인식하는 데이터 글로브 기반의 입력 방식은 장갑, 마커와 같은 추가 장비들을 필요로 하여 비용이 고가이며, 사용자가 반드시 장갑을 착용하여야 하는 불편함을 느끼게 된다.
본 발명은 손가락 동작 인식을 이용하여 보다 빠른 입력을 가능하게 하는 키보드 입력 시스템 및 키보드 입력 방법을 제공하기 위한 것이다.
또한, 본 발명은 손가락 동작을 정확하게 인식하여 클릭 제스쳐를 정확하게 판단할 수 있는 키보드 입력 시스템 및 키보드 입력 방법을 제공하기 위한 것이다.
또한, 본 발명은 멀티탭 글쇠의 연속 입력으로 인한 대기 시간을 크게 줄일 수 있는 키보드 입력 시스템 및 키보드 입력 방법을 제공하기 위한 것이다.
또한, 본 발명은 손가락 동작 인식 기반의 가상 키보드의 글쇠 배열 구조를 최적화하여 입력 시간을 단축할 수 있는 키보드 입력 시스템 및 키보드 입력 방법을 제공하기 위한 것이다.
본 발명이 해결하고자 하는 과제는 이상에서 언급된 과제로 제한되지 않는다. 언급되지 않은 다른 기술적 과제들은 이하의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 따른 키보드 입력 시스템은 영상 촬영부에 의해 획득된 영상에 글쇠들이 배열된 가상 키보드를 겹쳐서 표시하도록 구성되는 가상 키보드 표시부; 및 상기 영상에서 인식된 사용자의 손가락 동작을 기반으로 상기 가상 키보드의 글쇠를 출력하도록 구성되는 가상 키보드 입력부를 포함한다.
상기 가상 키보드 입력부는, 상기 영상에서 상기 사용자의 손가락 동작을 인식하도록 구성되는 손가락 인식부; 상기 손가락 동작이 설정된 클릭 제스쳐에 해당하는지 판단하도록 구성되는 클릭 제스쳐 판단부; 및 상기 클릭 제스쳐가 발생한 때에 상기 사용자의 설정된 손가락 위치와 중첩되는 글쇠를 결정하도록 구성되는 글쇠 출력부를 포함할 수 있다.
상기 클릭 제스쳐는 상기 사용자의 적어도 두 손가락들 간의 상호 작용을 포함할 수 있다.
상기 클릭 제스쳐는 상기 사용자의 엄지손가락이 검지손가락에 접촉 또는 근접되는 동작이고, 상기 설정된 손가락 위치는 상기 사용자의 검지손가락의 끝 부분의 위치일 수 있다.
상기 손가락 인식부는, 상기 사용자의 손 영역을 포함하는 컨벡스헐(convex hull)을 구하고; 상기 사용자의 손가락들 사이의 깊이 정보를 포함하는 컨벡서티 디펙트(convexity defects)를 구하고; 그리고 상기 손 영역의 컨벡스헐에서 추출한 경계점들 및 상기 컨벡서티 디펙트를 기준으로 손가락 위치를 추적하도록 구성될 수 있다.
상기 클릭 제스쳐 판단부는, 상기 사용자의 엄지손가락의 손톱 위치를 결정하고; 상기 엄지손가락의 손톱 위치와, 상기 사용자의 엄지손가락과 검지손가락 사이의 컨벡서티 디펙트 간의 거리를 산출하고; 그리고 상기 엄지손가락의 손톱 위치와, 상기 컨벡서티 디펙트 간의 거리를 기반으로, 상기 클릭 제스쳐를 판단하도록 구성될 수 있다.
상기 가상 키보드는 복수개의 글쇠 박스들을 포함하고, 상기 글쇠 박스들 중 적어도 하나는 복수개의 레이어로 글쇠들이 배열된 멀티탭 글쇠로 제공될 수 있다.
상기 가상 키보드 입력부는 상기 사용자의 손가락 동작으로부터 설정된 레이어 제스쳐를 판단하는 레이어 제스쳐 판단부를 더 포함할 수 있다.
상기 글쇠 출력부는 상기 멀티탭 글쇠 중 상기 레이어 제스쳐에 대응되는 레이어의 글쇠를 결정하도록 구성될 수 있다.
상기 레이어 제스쳐 판단부는, 상기 클릭 제스쳐가 발생한 때에 상기 사용자가 펼친 손가락 개수를 산출하고, 상기 손가락 개수를 기반으로 상기 레이어 제스쳐를 판단하도록 구성될 수 있다.
상기 레이어 제스쳐 판단부는, 상기 사용자가 엄지손가락을 제외한 4개의 손가락 중 검지손가락 만을 펼친 경우, 제1 레이어 제스쳐로 판단하고; 그리고 상기 사용자가 엄지손가락을 제외한 4개의 손가락 중 검지손가락 및 중지손가락 만을 펼친 경우, 제2 레이어 제스쳐로 판단하도록 구성될 수 있다.
상기 글쇠 출력부는, 상기 사용자의 손가락 동작이 상기 제1 레이어 제스쳐에 해당하는 경우, 상기 멀티탭 글쇠 중 첫번째 레이어의 글쇠를 출력하고, 상기 사용자의 손가락 동작이 상기 제2 레이어 제스쳐에 해당하는 경우, 상기 멀티탭 글쇠 중 두번째 레이어의 글쇠를 출력하도록 구성될 수 있다.
상기 가상 키보드 입력부는, 상기 사용자의 손가락 동작이 설정된 그랩 제스쳐에 해당하는지 판단하는 그랩 제스쳐 판단부를 더 포함할 수 있다.
상기 손가락 동작이 그랩 제스쳐에 해당하는 경우, 상기 가상 키보드 표시부는 상기 가상 키보드의 글쇠들을 문자, 숫자 및 기호 중 적어도 둘 이상을 포함하는 복수개의 글쇠 유형들 간에 전환하여 표시하도록 구성될 수 있다.
상기 키보드 입력 시스템은 소정의 단어들 또는 문장들 내에서의 글쇠들의 출현 빈도, 그리고 상기 단어들 또는 상기 문장들에서 상기 글쇠들 간의 인접 빈도를 기반으로, 상기 가상 키보드의 글쇠 배열을 결정하는 글쇠 배열 결정부를 더 포함할 수 있다.
상기 글쇠 배열 결정부는, 상기 단어들 또는 상기 문장들을 상기 가상 키보드로 입력 시에, 사용자의 손가락 이동 거리, 글쇠 입력 시간 및 멀티탭 글쇠의 연속 입력에 따른 대기 시간을 기반으로 상기 단어들 또는 상기 문장들의 입력 시간을 산출하고, 상기 입력 시간이 최소가 되도록 상기 글쇠들의 배열을 결정하도록 r구성될 수 있다.
본 발명에 따른 키보드 입력 방법은 영상 촬영부에 의해 획득된 영상에 글쇠들이 배열된 가상 키보드를 겹쳐서 표시하는 단계; 및 상기 영상에서 인식된 사용자의 손가락 동작을 기반으로 상기 가상 키보드의 글쇠를 출력하는 단계를 포함한다.
상기 글쇠를 출력하는 단계는, 상기 영상에서 상기 사용자의 손가락 동작을 인식하고, 상기 손가락 동작이 설정된 클릭 제스쳐에 해당하는지 판단하는 단계; 및 상기 클릭 제스쳐가 발생한 때에 상기 사용자의 설정된 손가락 위치와 중첩되는 글쇠를 결정하는 단계를 포함할 수 있다.
상기 클릭 제스쳐는 상기 사용자의 적어도 두 손가락들 간의 상호 작용을 포함할 수 있다. 상기 클릭 제스쳐는 상기 사용자의 엄지손가락이 검지손가락에 접촉되는 동작이고, 상기 설정된 손가락 위치는 상기 사용자의 검지손가락의 끝 부분의 위치일 수 있다.
상기 클릭 제스쳐에 해당하는지 판단하는 단계는, 상기 사용자의 손 영역을 포함하는 컨벡스헐(convex hull)을 구하는 단계; 상기 사용자의 손가락들 사이의 깊이 정보를 포함하는 컨벡서티 디펙트(convexity defects)를 구하는 단계; 상기 손 영역의 컨벡스헐에서 추출한 경계점들과, 상기 컨벡서티 디펙트를 기준으로 손가락 위치를 추적하는 단계; 추적된 상기 손가락 위치로부터 상기 사용자의 엄지손가락의 손톱 위치를 결정하는 단계; 상기 엄지손가락의 손톱 위치와, 엄지손가락과 검지손가락 사이의 컨벡서티 디펙트 간의 거리를 산출하는 단계; 그리고 상기 엄지손가락의 손톱 위치와, 엄지손가락과 검지손가락 사이의 컨벡서티 디펙트 간의 거리를 기반으로, 상기 클릭 제스쳐를 판단하는 단계를 포함할 수 있다.
상기 가상 키보드는 복수개의 글쇠 박스들을 포함하고, 상기 글쇠 박스들 중 적어도 하나는 복수개의 레이어로 글쇠들이 배열된 멀티탭 글쇠로 제공될 수 있다.
상기 키보드 입력 방법은 상기 사용자의 손가락 동작으로부터 설정된 레이어 제스쳐를 판단하는 단계를 더 포함할 수 있다.
상기 글쇠를 출력하는 단계는, 상기 멀티탭 글쇠 중 상기 레이어 제스쳐에 대응되는 레이어의 글쇠를 결정하는 단계를 포함할 수 있다.
상기 레이어 제스쳐를 판단하는 단계는, 상기 클릭 제스쳐가 발생한 때에 상기 사용자가 펼친 손가락 개수를 산출하고, 상기 손가락 개수로부터 상기 레이어 제스쳐를 판단하는 단계를 포함할 수 있다.
상기 키보드 입력 방법은 상기 사용자의 손가락 동작이 설정된 그랩 제스쳐에 해당하는지 판단하는 단계를 더 포함할 수 있다.
상기 가상 키보드를 겹쳐서 표시하는 단계는, 상기 손가락 동작이 그랩 제스쳐에 해당하는 경우, 상기 가상 키보드의 글쇠들을 문자, 숫자 및 기호 중 적어도 둘 이상을 포함하는 복수개의 글쇠 유형들 간에 전환하여 표시하는 단계를 포함할 수 있다.
상기 키보드 입력 방법은 단어들 또는 문장들 내에서의 글쇠들의 빈도 및 상기 단어들 또는 상기 문장들에서 상기 글쇠들 간의 인접 빈도를 기반으로, 상기 가상 키보드의 글쇠 배열을 결정하는 단계를 더 포함할 수 있다.
상기 가상 키보드의 글쇠 배열을 결정하는 단계는, 상기 단어들 또는 상기 문장들을 상기 가상 키보드로 입력 시에, 상기 사용자의 글쇠들간 손가락 이동 거리, 글쇠들의 입력 시간 및 멀티탭 글쇠의 연속 입력에 따른 대기 시간을 기반으로 상기 단어들 또는 상기 문장들의 입력 시간을 산출하고, 상기 입력 시간이 최소가 되도록 상기 글쇠들의 배열을 결정할 수 있다.
본 발명에 따르면, 상기 키보드 입력 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체가 제공될 수 있다.
본 발명의 실시예에 의하면, 손가락 동작 인식을 이용하여 보다 빠른 입력을 가능하게 하는 키보드 입력 시스템 및 키보드 입력 방법이 제공된다.
또한, 본 발명의 실시예에 의하면, 손가락 동작을 정확하게 인식하여 클릭 제스쳐를 정확하게 판단할 수 있는 키보드 입력 시스템 및 키보드 입력 방법이 제공된다.
또한, 본 발명의 실시예에 의하면, 멀티탭 글쇠의 연속 입력으로 인한 대기 시간을 크게 줄일 수 있는 키보드 입력 시스템 및 키보드 입력 방법이 제공된다.
또한, 본 발명의 실시예에 의하면, 손가락 동작 인식 기반의 가상 키보드의 글쇠 배열 구조를 최적화하여 입력 시간을 단축할 수 있는 키보드 입력 시스템 및 키보드 입력 방법이 제공된다.
본 발명의 효과는 상술한 효과들로 제한되지 않는다. 언급되지 않은 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 키보드 입력 시스템을 보여주는 도면이다.
도 2는 본 발명의 실시예에 따른 키보드 입력 시스템의 구성도이다.
도 3은 본 발명의 실시예에 따른 키보드 입력 시스템을 구성하는 가상 키보드 입력부의 구성도이다.
도 4는 본 발명의 실시예에 따른 키보드 입력 방법의 흐름도이다.
도 5는 본 발명의 실시예에 따라 사용자의 손을 촬영한 영상에서 컨벡스 헐을 추출한 것을 보여주는 도면이다.
도 6은 본 발명의 실시예에 따라 사용자의 손을 촬영한 영상에서 컨벡서티 디펙트를 추출한 것을 보여주는 도면이다.
도 7 및 도 8은 본 발명의 실시예에 따라 가상 키보드의 글쇠를 출력하는 손가락 동작을 보여주는 예시도이다.
도 9는 본 발명의 실시예에 따라 영상에 가상 키보드를 중첩시키는 방법을 설명하기 위한 도면이다.
도 10 및 도 11은 본 발명의 실시예에 따라 복수개의 레이어로 배열된 멀티탭 구조의 글쇠를 출력하기 위한 손가락 동작을 보여주는 도면이다.
도 12 및 도 13은 본 발명의 실시예에 따라 그랩 제스쳐 기반으로 가상 키보드의 글쇠들을 전환하기 위한 손가락 동작을 보여주는 도면이다.
도 14 및 도 15는 본 발명의 실시예에 따른 키보드 입력 방법에 의해 제공되는 가상 키보드의 다른 예들을 보여주는 도면이다.
도 16은 가상 키보드의 글쇠들 간의 이동 거리 별로 일련번호를 부여한 것을 보여주는 도면이다.
도 17 내지 도 19는 각각 첫번째, 두번째 및 세번째 레이어의 알파벳들의 조합에 대해 가상 키보드 입력 시간을 시뮬레이션하여 입력 시간 순으로 정렬한 것이다.
도 20은 레이어 제스쳐 인식 기능을 가지는 가상 키보드의 글쇠들 간의 이동 거리 별로 일련번호를 부여한 것을 보여주는 도면이다.
도 21 내지 도 23은 각각 첫번째, 두번째 및 세번째 레이어의 알파벳들의 조합에 대해 레이어 제스쳐 인식 기능을 가지는 가상 키보드의 입력 시간을 시뮬레이션하여 입력 시간 순으로 정렬한 것이다.
도 24는 레이어 제스쳐 인식 기능을 가지는 가상 키보드에 대해 최적화한 글쇠들의 배열을 예시한 도면이다.
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술하는 실시예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되지 않으며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 갖는다. 공지된 구성에 대한 일반적인 설명은 본 발명의 요지를 흐리지 않기 위해 생략될 수 있다. 본 발명의 도면에서 동일하거나 상응하는 구성에 대하여는 가급적 동일한 도면부호가 사용된다. 본 발명의 이해를 돕기 위하여, 도면에서 일부 구성은 다소 과장되거나 축소되어 도시될 수 있다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다", "가지다" 또는 "구비하다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서 전체에서 사용되는 '~부'는 적어도 하나의 기능이나 동작을 처리하는 단위로서, 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부'가 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함할 수 있다. 구성요소와 '~부'에서 제공하는 기능은 복수의 구성요소 및 '~부'들에 의해 분리되어 수행될 수도 있고, 다른 추가적인 구성요소와 통합될 수도 있다.
본 발명의 실시예에 따른 키보드 입력 시스템은 사용자의 손을 촬영한 영상에 가상 키보드가 겹쳐지게 표시하고, 상기 영상에서 인식된 사용자의 손가락 동작을 기반으로 가상 키보드의 글쇠를 출력하도록 구성된다. 키보드 입력 시스템은 손가락 동작이 설정된 클릭 제스쳐(예를 들어, 엄지손가락을 검지손가락의 옆 부분에 닿는 동작)에 해당하는 경우, 클릭 제스쳐가 발생한 순간에 사용자의 설정된 손가락 위치(예를 들어, 검지손가락의 손톱 부분)와 중첩되는 글쇠를 판단하여 출력하도록 구성된다.
본 발명의 실시예에서, 가상 키보드의 글쇠가 복수개의 레이어를 가지는 멀티탭 구조로 제공되는 경우, 키보드 입력 시스템은 사용자의 손가락 동작으로부터 레이어 제스쳐(예를 들어, 중지, 약지 등의 손가락 등을 펼치는 행위)를 판단하고, 클릭 제스쳐가 발생한 순간에 사용자의 설정된 손가락 위치(예를 들어, 검지손가락의 손톱 부분)와 중첩되는 글쇠에서 레이어 제스쳐에 대응되는 레이어의 글쇠를 출력하도록 구성된다.
도 1은 본 발명의 실시예에 따른 키보드 입력 시스템을 보여주는 도면이다. 도 2는 본 발명의 실시예에 따른 키보드 입력 시스템의 구성도이다. 도 1 및 도 2를 참조하면, 본 발명의 실시예에 따른 키보드 입력 시스템(100)은 증강 현실 등의 다양한 환경에서, 사용자의 손가락 동작을 인식하여 영상 표시 화면에 가상의 키보드를 입력할 수 있도록 제공된다.
키보드 입력 시스템(100)은 영상 촬영부(110), 가상 키보드 표시부(120) 및 가상 키보드 입력부(130)를 포함할 수 있다. 키보드 입력 시스템(100)의 각 구성요소는 하나 이상의 프로세서(processor)를 포함하는 제어부 및 메모리(도시생략)와 유/무선 인터페이스를 통해 연결될 수 있다.
영상 촬영부(110)는 사용자의 손을 연속적으로 촬영하여 비디오 영상(30)을 생성할 수 있다. 사용자의 손가락 동작을 기반으로 가상 키보드(50)를 입력하기 위하여, 영상 촬영부(110)에 의해 획득된 비디오 영상(30)은 가상 키보드 표시부(120)로 입력된다. 영상 촬영부(110)에 의해 획득된 비디오 영상(30)은 가상 키보드 표시부(120)에 의해 영상 표시 장치(20)의 화면 상에 표시된다.
가상 키보드 표시부(120)는 영상 촬영부(110)에 의해 획득된 영상에 글쇠들이 배열된 가상 키보드(50)를 중첩시켜, 영상 표시 장치(20)의 화면 상에 사용자의 손(40)을 포함하는 영상(30)에 가상 키보드(50)를 겹쳐서 표시하도록 구성된다.
사용자는 영상 표시 장치(20)의 화면 상에 표시되는 손가락 동작을 조절함으로써, 가상 키보드(50)를 입력하도록 구성된다. 실시예에서, 사용자가 바라보는 손의 모습과 영상 표시 장치(20)의 화면 상에 표시되는 손(40)의 모습을 최대한 일치시켜, 사용자가 가상 키보드(50) 입력을 위한 손가락 동작을 자연스럽게 조절할 수 있도록, 영상 촬영부(110)는 사용자의 눈과 근접한 위치에 장착될 수 있다.
도 1에 도시된 실시예에서, 영상 촬영부(110)는 사용자가 눈에 착용한 안경(10)에 장착되어 있다. 영상 촬영부(110)는 반드시 사용자에 착용될 필요는 없으며, 사용자의 손을 촬영하기에 적합하기만 하다면 설치 위치, 방향 등이 특별히 제한되지는 않는다. 예를 들어, 영상 촬영부(110)는 영상 표시 장치(20)에 장착될 수도 있으며, 사용자의 주변 어디에라도 배치될 수 있다. 영상 촬영부(110)는 예를 들어, CCD(Charge Coupled Device) 카메라, CMOS(Complementary Metal-Oxide Semiconductor) 카메라 등으로 제공될 수 있으나, 이에 제한되지는 않는다.
도 3은 본 발명의 실시예에 따른 키보드 입력 시스템을 구성하는 가상 키보드 입력부의 구성도이다. 도 1 내지 도 3을 참조하면, 가상 키보드 입력부(130)는 영상 촬영부(110)에 의해 획득되어 영상 표시 장치(20)의 화면 상에 표시되는 영상(30)에서 사용자의 손가락 동작들을 인식하고, 인식된 사용자의 손가락 동작들을 기반으로 가상 키보드(50)의 글쇠들을 출력하도록 구성된다.
사용자의 클릭(입력) 행위를 명확하게 인식하기 위하여, 가상 키보드 입력부(130)는 손가락 인식부(131), 클릭 제스쳐 판단부(132) 및 글쇠 출력부(135)를 포함할 수 있다.
손가락 인식부(131)는 영상(30)에서 사용자의 손가락 동작을 인식하도록 구성된다. 손가락 인식부(131)가 사용자의 손가락 동작을 인식하기 위한 구체적인 방법은 후술된다.
클릭 제스쳐 판단부(132)는 손가락 인식부(131)에 의해 인식된 사용자의 손가락 동작이 설정된 클릭 제스쳐에 해당하는지를 판단한다. 이때, 사용자의 클릭 입력을 명확하게 인식하기 위하여, 클릭 제스쳐는 사용자의 적어도 두 손가락들 간의 상호 작용을 포함할 수 있다. 일 실시예에서, 클릭 제스쳐는 사용자의 엄지손가락이 검지손가락의 옆 부분에 접촉 또는 근접되는 동작일 수 있다.
가상 키보드(50)의 글쇠는 사용자에 의해 클릭 제스쳐에 해당하는 손가락 동작이 발생하는 때에만 출력된다. 글쇠 출력부(135)는 가상 키보드(50)의 글쇠들 중, 클릭 제스쳐가 발생한 때에 사용자의 설정된 손가락 위치와 중첩되는 글쇠를 결정하여 출력하도록 구성된다. 실시예에서, 상기 설정된 손가락 위치는 사용자의 검지손가락의 끝 부분(손톱 부분)의 위치일 수 있다. 즉, 글쇠 출력부(135)는 사용자가 엄지손가락을 검지손가락에 닿게 하는 순간에 검지손가락의 끝 부분이 가르키는 가상 키보드(50)의 글쇠를 출력하도록 구성될 수 있다.
도 4는 본 발명의 실시예에 따른 키보드 입력 방법의 흐름도이다. 도 1, 도 2 및 도 4를 참조하면, 영상 촬영부(110)에 의해 사용자의 손을 촬영하여 비디오 영상을 생성하고, 비디오 영상을 가상 키보드 표시부(120)로 입력한다(S10). 가상 키보드 표시부(120)는 사용자의 손(40)을 포함하는 영상(30)에 가상 키보드(50)를 겹쳐 영상 표시 장치(20)의 화면 상에 표시한다.
가상 키보드 입력부(130)는 영상(30)에서 사용자의 손(40)을 정확하게 인식하기 위하여, 영상 촬영부(110)로부터 입력받은 RGB 영상을 HSV 영상으로 변환하고, 변환된 HSV 영상의 색상 정보, 예를 들어 H(Hue)와 S(Saturation) 정보를 기반으로, 피부의 고유색을 분리해내어 손 영역을 탐색, 분리 추출하여 이진화 영상을 만든 후, 노이즈를 제거한다(S20 내지 S40). HSV 영상은 색상(Hue), 채도(Saturation), 명도(Value)를 기준으로 색을 표현한 영상으로, RGB 영상보다 조명 밝기의 변화에 영향을 덜 받기 때문에, HSV 영상을 기반으로 손 영역을 추출하는 경우, 조명 밝기에 따라 손 영역이 부정확하게 추출되는 것을 방지할 수 있다. 노이즈 제거는 침식(erosion) 연산 또는 확장/팽창(dilation) 연산과 같은 모폴로지 기법을 이용해 이진 영상의 잡음을 제거하여 영상을 정규화하는 방법으로 수행될 수 있다.
이어서, 가상 키보드 입력부(130)는 손가락의 위치를 탐색하기 위해 정규화된 영상에서 손에 대한 특징을 추출하고, 손가락의 위치를 추적하여 움직임에 대한 분석을 통해 손동작을 인식한다. 실시예에서, 가상 키보드 입력부(130)는 사용자의 손 영역(손의 외곽)을 포함하는 컨벡스헐(convex hull)을 구한 후, 사용자의 손가락들 사이의 깊이를 포함하는 컨벡서티 디펙트(convexity defects)를 구하여 손가락들의 위치를 구분한다(S50 내지 S60).
도 5는 본 발명의 실시예에 따라 사용자의 손을 촬영한 영상에서 컨벡스 헐을 추출한 것을 보여주는 도면이다. 도 6은 본 발명의 실시예에 따라 사용자의 손을 촬영한 영상에서 컨벡서티 디펙트를 추출한 것을 보여주는 도면이다. 사용자가 손가락들을 움직이거나 펼치거나 접는 등의 손가락 동작을 하는 경우, 컨벡스헐(CH) 및 컨벡서티 디펙트(CD1, CD2)는 사용자의 손가락 동작에 따라 변화한다.
손에 해당하는 객체의 컨벡스헐(CH)은 주어진 점들을 포함하는 최소 크기의 볼록 다각형으로, 객체 안에 포함되어 있는 점들의 모든 컨벡스(convex) 조합의 집합을 의미한다. 가상 키보드 입력부(130)는 사용자의 손(40) 영역의 컨벡스헐(CH)에서 경계점들을 추출하고, 컨벡서티 디펙트(CD1, CD2)를 기준으로 손가락들의 위치 및 펼쳐진 손가락의 개수를 추적하여 손가락 동작을 인식할 수 있다(S70).
사용자의 손가락 동작이 인식되면, 가상 키보드 입력부(130)는 사용자의 손가락 동작들을 기반으로 가상 키보드(50)의 글쇠들을 출력한다(S80). 가상 키보드 입력부(130)는 컨벡스헐 및 컨벡서티 디펙트에 의해 탐색한 손의 외곽과 손가락의 위치를 기준으로 엄지손가락과 검지손가락 손톱의 위치를 탐색할 수 있다.
도 7 및 도 8은 본 발명의 실시예에 따라 가상 키보드의 글쇠를 출력하는 손가락 동작을 보여주는 예시도이다. 도 7의 도시에서, 사용자의 손가락 동작은 엄지손가락(41)이 검지손가락(42)에 닿지 않은 상태이고, 이때에는 가상 키보드(50)의 글쇠가 출력되지 않는다. 도 8의 도시와 같이, 사용자가 엄지손가락(41)을 검지손가락(42)의 옆부분에 닿는 손가락 동작(클릭 제스쳐)을 하는 경우, 그 때의 검지손가락(42)의 끝부분과 중첩되는 가상 키보드(50)의 글쇠(51)(도시된 예에서, 알파벳 N)가 출력된다.
도 6을 참조하여 보다 구체적으로 설명하면, 가상 키보드 입력부(130)는 사용자의 엄지손가락(41)의 손톱 위치를 결정하고, 엄지손가락(41)의 손톱 위치와 엄지손가락(41)과 검지손가락(42) 사이의 컨벡서티 디펙트(CD1) 간의 거리를 산출할 수 있다. 그리고, 가상 키보드 입력부(130)는 엄지손가락(41)의 손톱 위치와, 엄지손가락(41)과 검지손가락(42) 사이의 컨벡서티 디펙트(41) 간의 거리를 기반으로, 클릭 제스쳐를 판단할 수 있다.
사용자가 클릭 동작을 하게 되면, 펴고 있던 엄지손가락의 손톱 위치가 검지손가락의 중간에 닿게 되므로, 엄지손가락의 손톱 위치와 엄지와 검지 사이의 컨벡서티 디펙트와의 거리가 최저점에 도달하거나, 설정된 기준값 이하로 되는 경우에, 사용자가 클릭 제스쳐에 해당하는 손가락 동작을 한 것으로 판단할 수 있다.
도 8에 도시된 예에서, 사용자가 설정 시간 간격 이내의 짧은 간격으로 클릭 제스쳐를 두번 연속으로 하는 경우, 검지손가락(42)의 끝부분과 중첩되는 글쇠(51)의 두번째 레이어에 해당하는 알파벳 M이 출력된다. 또한, 사용자가 클릭 제스쳐를 세번 연속으로 하는 경우, 검지손가락(42)의 끝부분과 중첩되는 글쇠(51)의 세번째 레이어에 해당하는 알파벳 V가 출력된다.
도 9는 본 발명의 실시예에 따라 영상에 가상 키보드를 중첩시키는 방법을 설명하기 위한 도면이다. 도 9를 참조하면, 영상(30) 내의 설정된 위치에, 가상 키보드(50)를 구성하는 M×N개(도 9의 예에서, 12개)의 글쇠 박스 윤곽선을 표시한다. 각각의 박스의 크기는 사용자의 눈으로 손을 바라볼 때의 손가락의 크기를 고려하여 설정될 수 있다.
글쇠 박스의 크기가 너무 작으면 손가락 끝 부분이 가리킬 수 있는 영역이 작아지기 때문에, 손가락이 애매한 위치로 걸치게 되어 오류가 날 확률이 커지게 된다. 반대로 글쇠 박스의 크기가 너무 크면 가상 키보드(50)가 화면을 차지하는 면적이 넓어져 입력을 위한 손동작의 움직임이 커지게 되어 빠른 입력을 방해하게 된다.
*완전한 손 모양을 보장하여 손가락 동작을 정확하게 인식할 수 있도록, 영상(30) 내에 표시되는 가상 키보드(50)의 위치는 가상 키보드(50)의 아래에 최소한의 높이 이상의 영역이 확보될 수 있도록 설정하는 것이 바람직하다. 가상 키보드(50) 아래에 일정 영역이 확보되지 않는 경우, 가상 키보드(50) 중 아래 부분의 글쇠를 입력할 때, 영상(30)에서 손에 해당하는 객체의 일부가 잘리게 되어, 정확한 손가락 동작을 인식하기가 어려울 수 있기 때문이다.
가상 키보드(50)는 글쇠들의 위치 좌표를 통하여 문자들, 기호들 및/또는 숫자들 등에 대한 입력 영역이 부여된다. 각각의 글쇠 박스에 대한 모서리 부분은 글쇠의 시작과 끝의 위치에 대한 고유의 영역으로 나눌 수 있다. 도 9의 예를 들면, 시작점인 x0,y0(170,20)에서 끝점인 x1,y1(270,85)까지의 영역에 대해 클릭 제스쳐가 발생하면, 해당 영역의 글쇠의 위치에 해당하는 값을 출력하게 된다. x0,y0(170,20)에서 x2,y2(470,280)까지 모든 글쇠들에 대한 좌표를 부여하여, 이 영역들에 대해 클릭 제스쳐 발생시 해당 영역의 글쇠 값을 출력하게 된다.
가상 키보드(50)가 복수개의 글쇠 박스들을 포함하고, 글쇠 박스들 중의 적어도 하나는 2개 이상의 레이어로 배열된 멀티탭 구조를 포함하는 경우에 있어서, 같은 글쇠 박스에 속하는 문자들을 연속으로 입력하기 위해서는 선행하는 문자를 입력한 후 대기 시간(예를 들어, 1초 이상) 만큼 기다린 후, 후속 문자를 입력해야 하므로, 대기 시간 만큼 입력 시간이 지연되는 단점이 있다.
이러한 문제를 해결하기 위하여, 가상 키보드 입력부(130)는 레이어 제스쳐 판단부(도 3의 도면부호 133)를 더 포함할 수 있다. 레이어 제스쳐 판단부(133)는 사용자의 손가락 동작으로부터 설정된 레이어 제스쳐를 판단하도록 구성될 수 있다. 레이어 제스쳐 판단부(133)는 클릭 제스쳐가 발생한 때에 사용자가 펼친 손가락 개수를 산출하고, 산출된 손가락 개수로부터 레이어 제스쳐를 판단하도록 구성될 수 있다. 글쇠 출력부(135)는 멀티탭 구조의 글쇠에서, 레이어 제스쳐에 대응되는 레이어를 결정하여 출력하도록 구성될 수 있다.
도 10 및 도 11은 본 발명의 실시예에 따라 복수개의 레이어로 배열된 멀티탭 구조의 글쇠를 출력하기 위한 손가락 동작을 보여주는 도면이다. 도 10에 도시된 바와 같이, 사용자가 검지손가락(42)과 함께 중지손가락(43)을 펼치는 손가락 동작을 하는 경우, 가상 키보드 입력부(130)는 엄지손가락(41)을 제외한 4개의 손가락들 중 2개의 손가락을 펼친 것으로 판단하고, 엄지손가락(41)이 검지손가락(42)에 접촉되는 때에 검지손가락(42)의 끝 부분과 중첩되는 가상 키보드(50)의 글쇠(51)의 알파벳들 중, 두번째 레이어의 알파벳 M을 출력할 수 있다.
또한, 도 11에 도시된 바와 같이, 사용자가 엄지손가락(41)을 제외한 4개의 손가락들 중 3개 이상의 손가락, 예를 들어 검지손가락(42)과 함께, 중지손가락(43), 약지손가락(44) 및 새끼손가락(45)을 모두 펼치는 손가락 동작을 하는 경우, 가상 키보드 입력부(130)는 엄지손가락(41)이 검지손가락(42)에 접촉되는 때에 검지손가락(42)의 끝 부분과 중첩되는 가상 키보드(50)의 글쇠(51)의 알파벳들 중, 세번째 레이어의 알파벳 V를 출력할 수 있다.
도 8의 도시와 같이, 사용자가 엄지손가락(41)을 제외한 4개의 손가락들 중 검지손가락(42)만을 펼치고, 중지손가락(43), 약지손가락(44) 및 새끼손가락(45)을 접는 손가락 동작을 하는 경우, 가상 키보드 입력부(130)는 펼친 손가락의 개수를 1개로 판단하여, 엄지손가락(41)이 검지손가락(42)에 접촉되는 때에 검지손가락(42)의 끝 부분과 중첩되는 가상 키보드(50)의 글쇠(51)의 알파벳들 중, 첫번째 레이어의 알파벳 N을 출력할 수 있다.
이와 같이, 사용자의 레이어 제스쳐를 기반으로, 멀티탭 글쇠의 레이어를 판단하여 글쇠를 출력하면, 2번째 혹은 3번째 이상의 레이어를 출력하기 위해 클릭 행위를 여러번 할 필요가 없고, 또한, 동일한 글쇠박스에 속하는 문자, 기호 또는 숫자들을 연속해서 입력해야 하는 경우에도, 대기 시간 없이 연속하여 문자, 기호 또는 숫자들을 입력할 수 있다. 예를 들어, 사용자가 알파벳 'NMV'를 연속하여 입력하려는 경우, 도 8에 도시된 바와 같은 손가락 동작(첫번째 레이어 제스쳐)을 하여 알파벳 N을 입력하고, 이어서 대기 시간 동안 기다리지 않고 도 10에 도시된 바와 같은 손가락 동작(두번째 레이어 제스쳐)을 하여 알파벳 M을 입력한 후, 다시 대기 시간 동안 기다리지 않고 도 11의 손가락 동작(세번째 레이어 제스쳐)을 하여 알파벳 V를 입력할 수 있다.
따라서, 본 실시예에 의하면, 레이어 제스쳐 인식을 기반으로 멀티탭 글쇠의 레이어를 판단하여 출력함으로써, 같은 글쇠박스 내의 문자, 숫자 및/또는 기호들을 연속으로 입력해야 하는 경우에도 대기 시간 없이 입력이 가능하므로, 문자, 숫자 및/또는 기호들의 입력 시간을 단축시킬 수 있다.
실시예에서, 가상 키보드(50)에는 리셋/전원 글쇠(52)와, 전환 글쇠(53)가 포함될 수 있다. 사용자가 손가락 동작에 의해 리셋/전원 글쇠(52)를 입력하는 경우, 리셋을 하거나 전원을 끌 수 있다. 사용자가 손가락 동작에 의해 전환 글쇠(53)를 입력하는 경우, 가상 키보드(50)가 문자, 숫자 및/또는 기호 글쇠들 간에 전환되도록 할 수 있다.
다시 도 1 및 도 3을 참조하면, 가상 키보드 입력부(130)는 그랩 제스쳐 판단부(134)를 더 포함할 수 있다. 그랩 제스쳐 판단부(134)는 사용자의 손가락 동작이 설정된 그랩 제스쳐(Grab-gesture)에 해당하는지 판단하도록 구성될 수 있다.
도 12 및 도 13은 본 발명의 실시예에 따라 그랩 제스쳐 기반으로 가상 키보드의 글쇠들을 전환하기 위한 손가락 동작을 보여주는 도면이다. 도 1, 도 3, 도 12 및 도 13을 참조하면, 그랩 제스쳐 판단부(134)는 사용자가 모든 손가락을 접은 주먹쥔 상태의 손가락 동작을 하는 경우, 또는 주먹쥔 상태에서 설정된 방향으로 손을 움직이는 동작을 하는 경우, 등을 그랩 제스쳐에 해당하는 것으로 판단할 수 있다.
사용자의 손가락 동작이 그랩 제스쳐에 해당하는 것으로 판단되면, 가상 키보드 표시부(120)는 도 12 및 도 13의 도시와 같이, 가상 키보드(50)의 글쇠들을 문자, 숫자 및 기호 중 적어도 둘 이상을 포함하는 복수개의 글쇠 유형들 간에 전환하여 표시하도록 구성될 수 있다.
본 발명의 실시예에 따른 키보드 입력 시스템 및 방법에 의하면, 증강 현실 등의 다양한 환경에서, 카메라를 통해 얻은 비디오 영상으로부터 사용자의 다양한 손가락 동작을 인식하여 별도의 키보드나 마우스 없이 디스플레이 화면에 표시되는 가상 키보드를 이용하여 편리하게 글쇠 입력이 가능하다. 또한, 장갑, 마커 등의 별도의 추가적인 장비 없이 사용자의 손가락 동작 만으로 가상 키보드의 글쇠 입력이 가능하다.
도 14 및 도 15는 본 발명의 실시예에 따른 키보드 입력 방법에 의해 제공되는 가상 키보드의 다른 예들을 보여주는 도면이다. 도 14 및 도 15에 도시된 바와 같이, 가상 키보드는 3×4 글쇠 배열 외에, 4×4, 4×5 등의 다양한 글쇠 배열을 가질 수 있다. 또한, 가상 키보드(50)는 하나의 글쇠(51) 내에 수개의 레이어를 가지는 다수의 문자, 기호, 숫자 등이 포함된 멀티탭 구조 뿐 아니라, 단일 레이어의 글쇠들로 배열될 수도 있다.
다시 도 1 및 도 2를 참조하면, 키보드 입력 시스템(100)은 글쇠 배열 결정부(140)를 더 포함할 수 있다. 글쇠 배열 결정부(140)는 손가락 동작을 기반으로 보다 빠른 입력이 가능한 가상 키보드(50)의 글쇠들의 배열을 결정하도록 구성될 수 있다. 실시예에서, 글쇠 배열 결정부(140)는 소정의 단어들 또는 문장들 내에서의 글쇠들의 사용 빈도 및 단어들 또는 문장들에서 글쇠들 간의 인접(상관) 빈도를 기반으로, 가상 키보드의 글쇠 배열을 결정할 수 있다.
실시예에서, 글쇠 배열 결정부(140)는 단어들 또는 문장들 입력 시에, 사용자의 손가락 이동 거리, 글쇠 입력 시간 및 멀티탭 글쇠들의 연속 입력에 따른 대기 시간을 기반으로 단어들의 입력 시간을 산출하고, 입력 시간이 최소가 되도록 글쇠들의 배열을 결정할 수 있다.
상관 빈도수가 높은 문자들 간의 글쇠 배치가 가까워지도록 글쇠들을 최적화 배열할 경우, 문장 입력시의 전체 입력 시간을 줄일 수 있게 된다. 즉, 손가락 동작 인식 기반의 키보드 입력 시스템에 있어서, 문자들의 빈도수와 연속된 문자들의 상관 빈도수를 고려하여, 글쇠들 간의 이동거리가 최소화되도록 글쇠들의 배열을 최적화하여 입력 시간을 단축할 수 있다.
손가락 동작 인식을 이용한 가상 키보드 입력의 정확도를 높이기 위해서는 3x4 배열 등으로 글쇠의 개수를 줄이는 대신, 글쇠 크기를 일정 수준 이상 확보하여 오타율을 줄이고, 하나의 글쇠에 2~3개의 문자를 배치시키는 멀티탭 방식을 적용하는 것이 바람직하다.
E-book(예: 20,000 Leagues Under the Sea by Jules Verne; E-book1, Les Miserables by Victor Hugo; E-book2) 등의 문장들에 포함된 알파벳들의 사용 빈도수와 알파벳들 간의 상관(인접) 빈도수를 고려하여, 글자 입력시 글쇠들 간의 이동 거리 및 멀티탭 입력을 위한 클릭 수를 최소화하도록 글쇠들의 배열을 시뮬레이션할 수 있다.
예를 들어, 출현 빈도수의 크기가 큰 알파벳의 경우 가상 키보드의 중심 위치에 넣어 글쇠들 간의 이동 거리를 줄이고, 입력 시간을 단축할 수 있다. 상관 빈도수가 높은 알파벳들을 최대한 가까운 위치에 배열하는 경우, 입력 시간을 추가로 줄일 수 있다. 상관 빈도수는 E-book1, E-book2 등을 이용하여, 인접한 알파벳들 간의 빈도수를 구하여 얻을 수 있다. 클릭 제스쳐 반복 실험을 통해 글쇠들 간의 이동 거리에 따라 입력 시간에 대한 가중치를 반영한다.
도 16은 가상 키보드의 글쇠들 간의 이동 거리 별로 일련번호를 부여한 것을 보여주는 도면이다. 동일 글쇠의 반복 클릭의 경우 이동 거리에 따른 일련번호는 0으로 설정되고, 글쇠들 간의 거리 순으로 1 내지 8까지 일련번호를 부여하였다. 일련번호 0 내지 8에 대한 클릭 제스쳐 실험 결과, 가중치는 각각 0.488(sec), 0.593(sec), 0.607(sec), 0.684(sec), 0.825(sec), 0.884(sec), 0.907(sec), 0.933(sec), 0.960(sec)로 측정되었다. 동일 글쇠에 대한 연속 입력에 따른 멀티탭 대기 시간은 1,800(sec)로, 많은 소요 시간이 드는 것으로 측정되었다. 따라서, 멀티탭 구조의 가상 키보드의 경우, 상관 빈도수 확률이 높은 알파벳들이 같은 글쇠에 배치되지 않도록, 가상 키보드의 글쇠 배열을 최적화하는 것이 바람직하다.
레이어 제스쳐 기반의 가상 키보드 입력 기능이 없는 실시예에서, 입력 글자가 첫번째 레이어가 아닌 두/세번째 레이어에 있는 경우, 클릭 제스쳐를 두번 또는 세번 해야 하므로, 제자리에서 클릭하는 소요 시간도 달라진다. 따라서, 멀티탭 배열의 제자리 클릭 소요 시간도 가중치 요소에 넣어 입력 시간을 산출하여 최적 글쇠 배열을 산출할 수 있다.
제자리에서 엄지손가락으로 클릭 제스쳐를 할 때 소요된 시간을 C, 이전 글쇠(i)에서 다음 글쇠(j)로 이동시 걸리는 시간을 D(i,j), 같은 알파벳 또는 같은 글쇠 내의 알파벳들을 연속하여 입력하기 위해 기다리는 대기 시간을 W이라 정의하면, 가상 키보드 입력 시간(Ttot)은 아래와 같은 수식 1로 산출할 수 있다.
[수식 1]
Figure 112020100298972-pat00001
26개의 알파벳들의 모든 조합들에 대해 입력 시간을 계산하려면 26! 개의 조합에 대한 입력 시간을 계산해야 하기 때문에, 시뮬레이션에 과도한 시간이 소요되고 비효율적이다. 따라서, 빈도수가 가장 높은 알파벳들이 전체 입력 시간 중에 가장 큰 영향을 미치고, 빈도수가 낮은 알파벳의 배열은 입력 시간에 미치는 영향이 작으므로, 알파벳의 빈도수를 기준으로 각 레이어 별로 다수의 그룹(예를 들어, 3그룹)으로 나누어, 입력 시간을 시뮬레이션할 수 있다.
빈도수로 나눈 3개의 그룹 중에서 각 레이어 별로 모든 경우의 수를 시뮬레이션하여 그 중에서 최소의 시간을 수행하는 알파벳 배열을 가상 키보드의 글쇠 배열로 결정할 수 있다. 이러한 방식으로 수행 할 경우, 9개의 알파벳으로 구성된 제1 레이어와, 제2 레이어는 각각 9!(362,880)개, 8개의 알파벳으로 구성된 제3 레이어는 8!(40,320)개의 조합에 대해 각각 시뮬레이션을 할 수 있다. 이때 시뮬레이션 모델제1, 제2 및 제3 레이어의 766,080(9!x2 + 8!)개의 조합 중에서 입력 시간이 가장 작은 글쇠 배열을 가지도록 가상 키보드를 최적화할 수 있다.
첫번째 레이어에 배열할 9개의 알파벳을 ETAOHINSR으로 선정하고, 두번째 레이어에 배열할 9개의 알파벳을 DLUCMWFGP으로 선정하고, 나머지 8개의 알파벳 YBVKJXQZ을 세번째 레이어에 배열하여, 입력 시간을 산출하였다. 도 17 내지 도 19는 각각 첫번째, 두번째 및 세번째 레이어의 알파벳들의 조합에 대해 가상 키보드 입력 시간을 시뮬레이션하여 입력 시간 순으로 정렬한 것이다. 제1 레이어에서 가장 적은 입력 시간을 나타내는 알파벳 배열은 SNIOETRAH이다.
첫번째 레이어의 알파벳 배열을 가장 적은 입력 시간을 나타내는 배열로 설정한 상태에서, 두번째 레이어의 알파벳들의 조합에 대한 시뮬레이션을 하였으며, 제2 레이어에서 가장 적은 입력 시간을 나타내는 알파벳 배열은 GMPDUCWFL이다. 마찬가지로, 첫번째 및 두번째 레이어의 알파벳 배열을 가장 적은 입력 시간을 나타내는 배열들로 설정한 상태에서, 세번째 레이어의 알파벳들의 조합에 대한 시뮬레이션을 하였으며, 제3 레이어에서 가장 적은 입력 시간을 나타내는 알파벳 배열은 ZVJXYBKQ였다.
도 20은 레이어 제스쳐 인식 기능을 가지는 가상 키보드의 글쇠들 간의 이동 거리 별로 일련번호를 부여한 것을 보여주는 도면이다. 도 21 내지 도 23은 각각 첫번째, 두번째 및 세번째 레이어의 알파벳들의 조합에 대해 레이어 제스쳐 인식 기능을 가지는 가상 키보드의 입력 시간을 시뮬레이션하여 입력 시간 순으로 정렬한 것이다. 시뮬레이션은 손가락 개수를 기반으로 레이어를 인식하여 글쇠를 출력할 때의 입력 시간을 산출하는 점을 제외하고, 도 17 내지 도 19와 같은 방식으로 수행하였다.
도 24는 레이어 제스쳐 인식 기능을 가지는 가상 키보드에 대해 최적화한 글쇠들의 배열을 예시한 도면이다. 레이어 제스쳐 인식 기능을 가지는 가상 키보드의 경우, 제1 레이어에서 가장 적은 입력 시간을 나타내는 알파벳 배열은 OARNTEISH, 제2 레이어에서 가장 적은 입력 시간을 나타내는 알파벳 배열은 UPMGLDFCW, 제3 레이어에서 가장 적은 입력 시간을 나타내는 알파벳 배열은 QBJXYVZK였으며, 이로부터 도 24에 도시된 바와 같이 최소의 입력 시간을 갖도록 최적화된 가상 키보드의 글쇠 배열을 결정할 수 있다.
본 발명의 실시예에 따른 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법은 증강 현실 응용을 위한 제어 및 입력 인터페이스로 사용될 수 있을 뿐 아니라, 사용자가 이동통신 및 인터넷을 이용한 SMS 메세지, SNS 서비스, 웹서핑 등의 다양한 컨텐츠 정보들을 편리하게 이용할 수 있도록 다양한 환경에 적용될 수 있으며, 착용형 컴퓨터, 컴퓨터 비젼, 착용형 디스플레이 등의 분야에 적용이 가능하다.
본 발명의 실시예에 따른 방법은 예를 들어 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 컴퓨터로 읽을 수 있는 기록매체는 SRAM(Static RAM), DRAM(Dynamic RAM), SDRAM(Synchronous DRAM) 등과 같은 휘발성 메모리, ROM(Read Only Memory), PROM(Programmable ROM), EPROM(Electrically Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), 플래시 메모리 장치, PRAM(Phase-change RAM), MRAM(Magnetic RAM), RRAM(Resistive RAM), FRAM(Ferroelectric RAM)과 같은 불휘발성 메모리, 플로피 디스크, 하드 디스크 또는 광학적 판독 매체 예를 들어 시디롬, 디브이디 등과 같은 형태의 저장매체일 수 있으나, 이에 제한되지는 않는다.
이상의 실시예들은 본 발명의 이해를 돕기 위하여 제시된 것으로, 본 발명의 범위를 제한하지 않으며, 이로부터 다양한 변형 가능한 실시예들도 본 발명의 범위에 속하는 것임을 이해하여야 한다. 본 발명의 기술적 보호범위는 특허청구범위의 기술적 사상에 의해 정해져야 할 것이며, 본 발명의 기술적 보호범위는 특허청구범위의 문언적 기재 그 자체로 한정되는 것이 아니라 실질적으로는 기술적 가치가 균등한 범주의 발명까지 미치는 것임을 이해하여야 한다.
10: 안경
20: 영상 표시 장치
30: 영상
40: 손
50: 가상 키보드
51: 글쇠
100: 키보드 입력 시스템
110: 영상 촬영부
120: 가상 키보드 표시부
130: 가상 키보드 입력부
131: 손가락 인식부
132: 클릭 제스쳐 판단부
133: 레이어 제스쳐 판단부
134: 그랩 제스쳐 판단부
135: 글쇠 출력부

Claims (14)

  1. 영상 촬영부에 의해 획득된 사용자 손의 영상에 글쇠들이 배열된 가상 키보드를 중첩하여 영상 표시 장치의 화면에 표시하도록 구성되는 가상 키보드 표시부; 그리고,
    상기 영상에서 인식한 사용자 손의 손가락 동작을 기반으로 상기 가상 키보드의 글쇠를 출력하도록 구성되는 가상 키보드 입력부를 포함하고,
    상기 가상 키보드 입력부는 상기 영상에서 인식한 사용자 손의 손가락 동작이 두 손가락의 상호 작용에 의한 클릭 제스쳐일 때 상기 두 손가락 중 어느 한 손가락의 끝 부분의 위치와 중첩되는 글쇠를 출력하도록 구성되는,
    가상 키보드 입력 시스템.
  2. 제1항에 있어서,
    상기 두 손가락의 상호 작용은 제1 손가락이 제2 손가락으로 이동하여 상기 제2 손가락에 접촉하는 동작인,
    가상 키보드 입력 시스템.
  3. 제1항에 있어서,
    상기 두 손가락의 상호 작용은 엄지손가락이 이동하여 검지손가락에 접촉하는 동작이고, 상기 검지손가락의 끝의 위치와 중첩되는 글쇠가 출력되는,
    가상 키보드 입력 시스템.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 가상 키보드 입력부는,
    사용자의 손 영역을 포함하는 컨벡스헐(convex hull)을 구하고;
    사용자의 손가락들 사이의 깊이 정보를 포함하는 컨벡서티 디펙트(convexity defects)를 구하고; 그리고
    사용자의 손 영역의 컨벡스헐에서 추출한 경계점들 및 상기 컨벡서티 디펙트를 기준으로 손가락들의 위치 및 펼쳐진 손가락의 개수를 추적하여 상기 손가락 동작을 인식하는,
    가상 키보드 입력 시스템.
  5. 제4항에 있어서,
    상기 가상 키보드는 글쇠 박스들을 포함하고, 상기 글쇠 박스들 중 적어도 하나는 복수 개의 글쇠가 복수 개의 레이어로 글쇠들이 배열된 멀티탭 글쇠 박스로 제공되며,
    상기 두 손가락 이외에 펼쳐진 손가락의 개수에 따라 상기 멀티탭 글쇠 박스에 포함된 복수 개의 글쇠에서 출력되는 글쇠가 결정되는,
    가상 키보드 입력 시스템.
  6. 제4항에 있어서,
    상기 가상 키보드 입력부가 사용자 손의 손가락 동작이 설정된 그랩 제스쳐에 해당하는 것으로 판단할 경우,
    상기 가상 키보드 표시부는 상기 가상 키보드의 글쇠들을 문자, 숫자 및 기호 중 적어도 둘 이상을 포함하는 복수개의 글쇠 유형들 간에 전환하여 표시하는,
    가상 키보드 입력 시스템.
  7. 제1항 있어서,
    상기 영상 촬영부는 상기 영상 표시 장치에 구비되는,
    가상 키보드 입력 시스템.
  8. 가상 키보드 입력 장치가 영상 촬영부에 의해 획득된 사용자 손의 영상에 글쇠들이 배열된 가상 키보드를 중첩하여 영상 표시 장치의 화면에 표시하는 단계; 그리고
    상기 가상 키보드 입력 장치가 상기 영상에서 인식한 사용자 손의 손가락 동작에 따라 상기 가상 키보드의 글쇠를 출력하는 단계를 포함하며,
    상기 가상 키보드 입력 장치는 상기 영상에서 인식한 사용자 손의 손가락 동작이 두 손가락의 상호 작용에 의한 클릭 제스쳐일 때 상기 두 손가락 중 어느 한 손가락의 끝 부분의 위치와 중첩되는 글쇠를 출력하는,
    키보드 입력 방법.
  9. 제8항에 있어서,
    상기 두 손가락의 상호 작용은 제1 손가락이 제2 손가락으로 이동하여 상기 제2 손가락에 접촉하는 동작인,
    키보드 입력 방법.
  10. 제8항에 있어서,
    상기 두 손가락의 상호 작용은 엄지손가락이 이동하여 검지손가락에 접촉하는 동작이고,
    상기 글쇠를 출력하는 단계는 상기 엄지손가락이 이동하여 상기 검지손가락에 접촉할 때 상기 검지손가락의 끝의 위치와 중첩되는 글쇠를 출력하는,
    키보드 입력 방법.
  11. 제8항에 있어서,
    상기 가상 키보드는 글쇠 박스들을 포함하고, 상기 글쇠 박스들 중 적어도 하나는 복수 개의 글쇠가 복수 개의 레이어로 글쇠들이 배열된 멀티탭 글쇠 박스로 제공되며,
    상기 두 손가락 이외에 펼쳐진 손가락의 개수에 따라 상기 멀티탭 글쇠 박스에 포함된 복수 개의 글쇠에서 출력되는 글쇠가 결정되는,
    키보드 입력 방법.
  12. 제8항에 있어서,
    상기 가상 키보드 입력 장치가 상기 영상에서 인식한 사용자 손의 손가락 동작이 설정된 그랩 제스쳐에 해당하는 것으로 판단할 경우,
    상기 가상 키보드의 글쇠들을 문자, 숫자 및 기호 중 적어도 둘 이상을 포함하는 복수개의 글쇠 유형들 간에 전환하여 표시하는 단계를 더 포함하는,
    키보드 입력 방법.
  13. 제8항 내지 제12항 중 어느 한 항에 있어서,
    상기 가상 키보드 입력 장치의 상기 손가락 동작의 인식은:
    사용자의 손 영역을 포함하는 컨벡스헐(convex hull)을 구하고;
    사용자의 손가락들 사이의 깊이 정보를 포함하는 컨벡서티 디펙트(convexity defects)를 구하고; 그리고
    사용자의 손 영역의 컨벡스헐에서 추출한 경계점들 및 상기 컨벡서티 디펙트를 기준으로 손가락들의 위치 및 펼쳐진 손가락의 개수를 추적하여 상기 손가락 동작을 인식함을 포함하는,
    키보드 입력 방법.
  14. 제13항의 키보드 입력 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.




KR1020200121775A 2017-06-26 2020-09-21 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법 KR102247020B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170080458 2017-06-26
KR20170080458 2017-06-26

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180073217A Division KR102160297B1 (ko) 2017-06-26 2018-06-26 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법

Publications (2)

Publication Number Publication Date
KR20200112777A KR20200112777A (ko) 2020-10-05
KR102247020B1 true KR102247020B1 (ko) 2021-04-30

Family

ID=64742429

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020180073217A KR102160297B1 (ko) 2017-06-26 2018-06-26 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
KR1020200121775A KR102247020B1 (ko) 2017-06-26 2020-09-21 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020180073217A KR102160297B1 (ko) 2017-06-26 2018-06-26 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법

Country Status (3)

Country Link
US (1) US10963066B2 (ko)
KR (2) KR102160297B1 (ko)
WO (1) WO2019004686A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110008818A (zh) * 2019-01-29 2019-07-12 北京奇艺世纪科技有限公司 一种手势识别方法、装置及计算机可读存储介质
US20200387214A1 (en) * 2019-06-07 2020-12-10 Facebook Technologies, Llc Artificial reality system having a self-haptic virtual keyboard
US10955929B2 (en) 2019-06-07 2021-03-23 Facebook Technologies, Llc Artificial reality system having a digit-mapped self-haptic input method
CN111443831A (zh) * 2020-03-30 2020-07-24 北京嘉楠捷思信息技术有限公司 一种手势识别方法及装置
US20220050527A1 (en) * 2020-08-12 2022-02-17 Himax Technologies Limited Simulated system and method with an input interface
CN114138117B (zh) * 2021-12-06 2024-02-13 塔普翊海(上海)智能科技有限公司 一种基于虚拟现实场景的虚拟键盘输入方法及系统
WO2023104286A1 (en) * 2021-12-07 2023-06-15 Ericsson Rendering of virtual keyboards in virtual environments
US11914789B2 (en) * 2022-01-20 2024-02-27 Htc Corporation Method for inputting letters, host, and computer readable storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014165660A (ja) * 2013-02-25 2014-09-08 Univ Of Tsukuba バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム
JP2017058818A (ja) * 2015-09-15 2017-03-23 オムロン株式会社 文字入力方法および文字入力用のプログラムならびに情報処理装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100682885B1 (ko) 2003-04-23 2007-02-15 삼성전자주식회사 공간형 정보 입력 장치 및 방법, 이를 위한 소프트 키매핑 방법 및 그에 따른 가상 키보드
KR20050048978A (ko) 2003-11-20 2005-05-25 주식회사 팬택앤큐리텔 터치 스크린을 가지는 기기에서 소프트웨어 키보드 자판배열 변경 장치 및 그 방법
US8621379B2 (en) * 2010-03-12 2013-12-31 Apple Inc. Device, method, and graphical user interface for creating and using duplicate virtual keys
US8756503B2 (en) * 2011-02-21 2014-06-17 Xerox Corporation Query generation from displayed text documents using virtual magnets
US8928589B2 (en) * 2011-04-20 2015-01-06 Qualcomm Incorporated Virtual keyboards and methods of providing the same
US10203812B2 (en) * 2013-10-10 2019-02-12 Eyesight Mobile Technologies, LTD. Systems, devices, and methods for touch-free typing
US9764242B2 (en) * 2013-10-16 2017-09-19 Tencent Technology (Shenzhen) Company Limited Method and system for providing game ranking information
KR101541421B1 (ko) 2013-12-26 2015-08-03 한밭대학교 산학협력단 손 자세 인식 기반 사용자 인터페이스 방법 및 시스템
KR101559502B1 (ko) 2013-12-26 2015-10-14 서경대학교 산학협력단 실시간 손 포즈 인식을 통한 비접촉식 입력 인터페이스 방법 및 기록 매체
KR20160097410A (ko) 2015-02-06 2016-08-18 이강우 동작 인식을 통한 비접촉식 입력 인터페이스 제공 방법 및 그 장치
KR101873842B1 (ko) 2015-03-11 2018-07-04 한양대학교 산학협력단 깊이 센서를 이용하는 가상 입력 장치 및 이를 이용하는 방법
US10606343B2 (en) * 2017-04-01 2020-03-31 Intel Corporation Keyboard for virtual reality

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014165660A (ja) * 2013-02-25 2014-09-08 Univ Of Tsukuba バーチャルキーボードの入力方法、プログラム、記憶媒体、及びバーチャルキーボードシステム
JP2017058818A (ja) * 2015-09-15 2017-03-23 オムロン株式会社 文字入力方法および文字入力用のプログラムならびに情報処理装置

Also Published As

Publication number Publication date
KR102160297B9 (ko) 2022-03-15
KR20190001559A (ko) 2019-01-04
US10963066B2 (en) 2021-03-30
KR20200112777A (ko) 2020-10-05
US20200117282A1 (en) 2020-04-16
KR102160297B1 (ko) 2020-09-28
WO2019004686A1 (ko) 2019-01-03

Similar Documents

Publication Publication Date Title
KR102247020B1 (ko) 손가락 동작 인식을 이용한 키보드 입력 시스템 및 키보드 입력 방법
US10126941B2 (en) Multi-touch text input
KR101947034B1 (ko) 휴대 기기의 입력 장치 및 방법
US9405404B2 (en) Multi-touch marking menus and directional chording gestures
Nai et al. Fast hand posture classification using depth features extracted from random line segments
US20110264442A1 (en) Visually emphasizing predicted keys of virtual keyboard
US20190004694A1 (en) Electronic systems and methods for text input in a virtual environment
US20120212413A1 (en) Method and System for Touch-Free Control of Devices
WO2022267760A1 (zh) 按键功能执行方法、装置、设备及存储介质
CN108885615A (zh) 针对浏览器导航的墨水输入
CN109074223A (zh) 用于在字符串中进行字符插入的方法和系统
KR20050081555A (ko) 디지털 잉크 질의 검색 장치 및 방법
Desai et al. Human Computer Interaction through hand gestures for home automation using Microsoft Kinect
JP5567097B2 (ja) 電子機器、手書き文書表示方法、及び表示プログラム
Geer Will gesture recognition technology point the way?
Vivek Veeriah et al. Robust hand gesture recognition algorithm for simple mouse control
Do-Lenh et al. Multi-finger interactions with papers on augmented tabletops
Hartanto et al. Real time hand gesture movements tracking and recognizing system
Enkhbat et al. Handkey: An efficient hand typing recognition using cnn for virtual keyboard
Pansare et al. Gestuelle: A system to recognize dynamic hand gestures using hidden Markov model to control windows applications
CN107132919A (zh) 一种基于手势的汉字笔画输入方法
Chang et al. Virtual keyboard for head mounted display-based wearable devices
TWI603226B (zh) 體感偵測器之手勢辨識方法
Hsieh et al. Robust visual mouse by motion history image
Erdem et al. Computer vision based unistroke keyboards

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant