KR20210118168A - 제스처 처리 방법 및 디바이스 - Google Patents

제스처 처리 방법 및 디바이스 Download PDF

Info

Publication number
KR20210118168A
KR20210118168A KR1020217027292A KR20217027292A KR20210118168A KR 20210118168 A KR20210118168 A KR 20210118168A KR 1020217027292 A KR1020217027292 A KR 1020217027292A KR 20217027292 A KR20217027292 A KR 20217027292A KR 20210118168 A KR20210118168 A KR 20210118168A
Authority
KR
South Korea
Prior art keywords
gesture
hand
electronic device
application
mobile phone
Prior art date
Application number
KR1020217027292A
Other languages
English (en)
Inventor
량 후
지에 수
샤오잉 추이
Original Assignee
후아웨이 테크놀러지 컴퍼니 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 후아웨이 테크놀러지 컴퍼니 리미티드 filed Critical 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20210118168A publication Critical patent/KR20210118168A/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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/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
    • G06F3/0483Interaction with page-structured environments, e.g. book metaphor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • 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/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 출원의 실시예는 전자 기술 분야에 관한 것이고 제스처 처리 방법 및 디바이스를 제공하므로, 시스템 애플리케이션과 제3자 애플리케이션이 모두 응답할 수 있는 범용 입력 이벤트가 공중 제스처에 기반하여 생성될 수 있으며, 공중 제스처의 사용 범위가 확대될 수 있고, 제3자 애플리케이션의 적응 작업이 생략될 수 있다. 구체적인 솔루션은 다음과 같다: 전자 디바이스는 공중 제스처를 검출한 후 공중 제스처에 기반하여 범용 입력 이벤트를 생성하며, 여기서 범용 입력 이벤트는 시스템 애플리케이션 및 제3자 애플리케이션 모두가 응답할 수 있는 입력 이벤트이고; 전자 디바이스는 관련 애플리케이션을 사용하여 범용 입력 이벤트에 응답하여 공중 제스처에 응답한다. 본 출원의 실시예는 제스처 처리에 사용된다.

Description

제스처 처리 방법 및 디바이스
본 출원은 2019년 3월 1일에 중국 국가 지식 재산 관리국에 출원되고 발명의 명칭이 "제스처 처리 방법 및 디바이스"인 중국 특허 출원 번호 제201910157644.4호에 대한 우선권을 주장하는 바이며, 상기 문헌의 내용은 그 전체로서 원용에 의해 본 명세서에 포함된다.
본 출원의 실시예는 전자 기술 분야에 관한 것으로, 특히 제스처(gesture) 처리 방법 및 디바이스에 관한 것이다.
전자 디바이스의 지능화로 인해 사용자와 모바일 폰과 같은 전자 디바이스 간의 상호 작용 방식이 더 많아지고 있다. 공중 제스처(mid-air gesture)는 최근 몇 년 동안 등장한 상호 작용 형태이다.
일반적으로 전자 디바이스의 시스템 애플리케이션은 사용자의 공중 제스처를 지원하며, 일반적으로 제3자 애플리케이션(third-party application)은 사전에 공중 제스처에 적응해야 한다. 예를 들어, 제3자 애플리케이션은 공중 제스처와 애플리케이션 제어 또는 코드에서의 명령 사이의 대응 관계를 미리 정의해야 한다. 이와 같이, 전자 디바이스는 공중 제스처를 검출한 후 대응하는 애플리케이션 제어 또는 명령을 사용하여 응답한다.
현재, 전자 디바이스에서 사용자가 사용하는 더 많은 유형의 제3자 애플리케이션과 더 많은 수량의 제3자 애플리케이션이 있다. 각각의 제3자 애플리케이션이 공중 제스처에 적응되면, 적응 작업량(workload)이 상대적으로 크다. 적응이 구현되지 않으면, 사용자가 공중 제스처를 사용하여 제3자 애플리케이션을 작동할 수 없으며, 이에 따라 공중 제스처의 사용 범위가 제한되고 공중 제스처의 사용자 경험에 영향을 미친다.
본 출원의 실시예는 공중 제스처에 기반하여 대응하는 범용 입력 이벤트(general-purpose input event)를 생성하기 위한 제스처 처리 방법 및 디바이스를 제공한다. 범용 입력 이벤트는 사용자가 전자 디바이스 상에서 수행하는 접촉 작동(contact operation)에 대응하는 입력 이벤트이므로, 시스템 애플리케이션과 제3자 애플리케이션 모두 범용 입력 이벤트에 응답할 수 있으며, 즉, 둘 다 공중 제스처에 응답한다. 이와 같이, 공중 제스처의 사용 범위를 확대할 수 있고, 제3자 애플리케이션의 적응 작업(adaptation work)을 생략할 수 있다.
전술한 목적을 달성하기 위해, 다음과 같은 기술적 솔루션이 본 출원의 실시예에서 사용된다.
일 측면에 따르면, 본 출원의 실시예는 전자 디바이스를 제공하며, 상기 전자 디바이스는, 하나 이상의 프로세서; 하나 이상의 메모리; 하나 이상의 멀티미디어 애플리케이션(즉, 하나 이상의 멀티미디어 애플리케이션 프로그램) - 상기 멀티미디어 애플리케이션은 오디오 애플리케이션 또는 비디오 애플리케이션을 포함함 -; 하나 이상의 컴퓨터 프로그램; 인터페이스를 디스플레이하도록 구성된 디스플레이; 및 검출 컴포넌트를 포함한다. 상기 검출 컴포넌트는 카메라, 상기 디스플레이 아래에 배치된 적외선 센서, 상기 디스플레이 아래에 배치된 초음파 센서, 또는 상기 디스플레이 아래에 배치된 전자기 유도 컴포넌트 중 어느 하나 또는 임의의 조합을 포함한다. 상기 검출 컴포넌트는 사용자가 상기 전자 디바이스와 접촉하지 않을 때 상기 사용자가 만든 공중 제스처(mid-air gesture)를 검출하도록 구성된다. 상기 하나 이상의 컴퓨터 프로그램이 상기 메모리에 저장된다. 상기 하나 이상의 컴퓨터 프로그램이 명령을 포함한다. 상기 명령이 상기 프로세서에 의해 실행될 때 상기 전자 디바이스는, 상기 멀티미디어 애플리케이션이 오픈된(open) 후 상기 멀티미디어 애플리케이션의 제1 인터페이스를 디스플레이하는 단계 - 상기 제1 인터페이스는 제1 멀티미디어 파일에 대응함 -; 및 상기 검출 컴포넌트가 상기 공중 제스처를 검출하면, 상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계를 수행하도록 활성화된다. 상기 응답 작동은 상기 제1 멀티미디어 파일을 재생하기(playing), 상기 제1 멀티미디어 파일 재생을 일시 정지하기(pausing), 상기 제1 멀티미디어 파일의 재생 진행을 조정하기, 재생 볼륨을 조정하기, 디스플레이 밝기를 조정하기, 또는 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기(switching) 중 적어도 하나를 포함한다.
상기 멀티미디어 애플리케이션은 시스템 애플리케이션일 수도 있고, 전자 디바이스의 제3자 애플리케이션일 수도 있다.
이와 같이, 사용자는 공중 제스처를 사용하여, 전자 디바이스와 접촉하지 않고, 전자 디바이스의 시스템 멀티미디어 애플리케이션 및 제3자 멀티미디어 애플리케이션이 재생 제어와 관련된 작동을 수행할 수 있도록 함으로써, 사용자 경험을 개선시킨다.
가능한 구현에서, 상기 공중 제스처는 손의 흔들기(wave of a hand) 또는 손의 병진 이동(translational move of a hand)이다. 상기 응답 작동은, 상기 제1 멀티미디어 파일을 빨리 감기(fast-forwarding), 상기 제1 멀티미디어 파일을 되감기(rewinding), 상기 재생 볼륨을 높이기, 상기 재생 볼륨을 낮추기, 상기 디스플레이 밝기를 높이기, 상기 디스플레이 밝기를 낮추기, 또는 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기를 포함한다.
다시 말해서, 사용자는 손의 흔들기나 손의 병진 이동의 공중 제스처를 통해, 전자 디바이스의 멀티미디어 애플리케이션이 재생 제어와 관련된 작동을 수행하도록 할 수 있다.
다른 가능한 설계에서, 상기 멀티미디어 애플리케이션은 제1 비디오 플레이어이다. 상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계는, 상기 공중 제스처 및 상기 공중 제스처가 발생한 위치에 기반하여 상기 응답 작동을 수행하는 단계를 포함한다. 상기 공중 제스처가 손의 상향(upward translational move) 병진 이동 또는 손의 상향 흔들기(upward wave)일 때, 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 오른쪽(right side)에 가까우면, 상기 응답 작동은 상기 재생 볼륨을 높이기이고; 또는 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 왼쪽(left side)에 가까우면 상기 응답 작동이 상기 디스플레이 밝기를 높이기이다. 상기 공중 제스처가 손의 하향(downward) 병진 이동 또는 손의 하향 흔들기일 때, 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 오른쪽에 가까우면 상기 응답 작동은 상기 재생 볼륨을 낮추기이고; 또는 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 왼쪽에 가까우면 상기 응답 작동은 상기 디스플레이 밝기를 낮추기이다. 상기 공중 제스처가 손의 우측(rightward) 병진 이동 또는 손의 우측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 빨리 감기이다. 상기 공중 제스처가 손의 좌측(leftward) 병진 이동 또는 손의 좌측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 되감기다.
다시 말해서, 손의 흔들기 또는 손의 병진 이동의 방향 그리고 손의 흔들기 또는 손의 병진 이동이 발생하는 위치와 같은 팩터에 기반하여, 사용자는 전자 디바이스에서의 비디오 플레이어가 재생 제어와 관련된 작동을 수행하도록 할 수 있다.
다른 가능한 설계에서, 상기 멀티미디어 애플리케이션은 오디오 플레이어이다. 상기 공중 제스처가 손의 우측 병진 이동 또는 손의 우측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 빨리 감기이다. 상기 공중 제스처가 손의 좌측 병진 이동 또는 손의 좌측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 되감기이다.
이와 같이, 사용자는 손의 흔들기 또는 손의 병진 이동의 공중 제스처를 통해, 전자 디바이스의 오디오 플레이어가 재생 제어와 관련된 작동을 수행하도록 할 수 있다.
다른 가능한 설계에서, 상기 멀티미디어 애플리케이션은 제2 비디오 플레이어이다. 상기 공중 제스처가 손의 상향 병진 이동 또는 손의 상향 흔들기일 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 제2 멀티미디어 파일로 스위칭하기이다. 상기 공중 제스처가 손의 하향 병진 이동 또는 손의 하향 흔들기일 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 제3 멀티미디어 파일로 스위칭하기이다.
이와 같이, 사용자는 손의 흔들기 또는 손의 병진 이동의 공중 제스처를 통해 전자 디바이스의 비디오 플레이어가 재생 제어와 관련된 작동을 수행하도록 할 수 있다.
다른 가능한 설계에서, 상기 멀티미디어 애플리케이션은 갤러리이다. 상기 공중 제스처가 손의 우측 병진 이동 또는 손의 우측 흔들기일 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 제2 멀티미디어 파일로 스위칭하기이다. 상기 공중 제스처가 손의 좌측 병진 이동 또는 손의 좌측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 제3 멀티미디어 파일로 스위칭하기이다.
이와 같이, 사용자는 손의 흔들기 또는 손의 병진 이동의 공중 제스처를 통해, 전자 디바이스의 갤러리가 디스플레이된 사진을 스위칭하도록 할 수 있다.
다른 가능한 설계에서, 상기 공중 제스처는 상기 전자 디바이스를 향한 손바닥의 이동이다. 상기 응답 작동은, 상기 제1 멀티미디어 파일을 재생하기, 또는 상기 제1 멀티미디어 파일 재생을 일시 중지하기, 또는 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기를 포함한다.
전자 디바이스를 향한 손바닥의 이동은 또한 전자 디바이스를 향한 슬랩(slap)으로 지칭될 수 있다.
이와 같이, 사용자는 전자 디바이스를 향하는 손바닥의 이동의 공중 제스처를 통해, 전자 디바이스의 멀티미디어 애플리케이션이 재생 제어와 관련된 작동을 수행하도록 할 수 있다.
다른 가능한 설계에서, 상기 멀티미디어 애플리케이션은 제1 비디오 플레이어이다. 상기 제1 인터페이스는 재생 컨트롤 및 스위칭 컨트롤을 포함한다. 상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계는, 상기 공중 제스처, 상기 공중 제스처가 발생한 위치 및 상기 제1 비디오 플레이어의 현재 상태에 기반하여 상기 응답 작동을 수행하는 단계를 포함한다. 상기 공중 제스처가 발생한 위치가 상기 재생 컨트롤에 가깝고 상기 제1 멀티미디어 파일이 현재 재생되고 있을 때, 상기 응답 작동은 상기 제1 멀티미디어 파일 재생을 일시 중지하기이다. 상기 공중 제스처가 발생한 위치가 상기 재생 컨트롤에 가깝고 상기 제1 멀티미디어 파일이 현재 재생되지 않을 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 재생하기이다. 상기 공중 제스처가 발생한 위치가 상기 스위칭 컨트롤에 가까울 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기이다.
다시 말해서, 전자 디바이스는 사용자에 의한 공중 제스처, 공중 제스처가 발생한 위치 및 현재 비디오 플레이어의 재생 상태를 참조하여 서로 다른 응답 작동을 수행할 수 있다.
다른 측면에 따르면, 본 출원의 실시예는 전자 디바이스를 제공하며, 상기 전자 디바이스는, 하나 이상의 프로세서; 하나 이상의 메모리; 하나 이상의 애플리케이션(즉, 하나 이상의 애플리케이션 프로그램); 하나 이상의 컴퓨터 프로그램; 인터페이스를 디스플레이하도록 구성된 디스플레이; 및 사용자가 상기 전자 디바이스와 접촉하지 않을 때 상기 사용자가 만든 공중 제스처를 검출하도록 구성된 검출 컴포넌트를 포함한다. 상기 검출 컴포넌트는 카메라, 상기 디스플레이 아래에 배치된 적외선 센서, 상기 디스플레이 아래에 배치된 초음파 센서, 또는 상기 디스플레이 아래에 배치된 전자기 유도 컴포넌트 중 어느 하나 또는 임의의 조합을 포함한다. 상기 하나 이상의 컴퓨터 프로그램이 상기 메모리에 저장된다. 상기 하나 이상의 컴퓨터 프로그램이 명령을 포함한다. 상기 명령이 상기 프로세서에 의해 실행될 때 상기 전자 디바이스는, 상기 애플리케이션이 오픈된 후 상기 애플리케이션의 제1 인터페이스를 디스플레이하는 단계; 및 상기 검출 컴포넌트가 상기 공중 제스처를 검출하면, 상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계를 수행하도록 활성화된다. 상기 응답 작동은 페이지를 스크롤하기(scrolling), 또는 상기 제1 인터페이스를 다른 인터페이스로 스위칭하기 중 적어도 하나를 포함한다.
상기 애플리케이션은 시스템 애플리케이션일 수도 있고, 전자 디바이스에서의 제3자 애플리케이션일 수도 있다.
이러한 방식으로, 사용자는 공중 제스처를 사용하여, 전자 디바이스와 접촉하지 않고, 전자 디바이스의 시스템 애플리케이션 및 제3자 애플리케이션이 페이지 스크롤하기 및 디스플레이된 인터페이스를 스위칭하는 작동을 수행할 수 있도록 함으로써, 사용자 경험을 개선시킨다.
가능한 설계에서, 상기 공중 제스처가 손의 상향 병진 이동 또는 손의 상향 흔들기일 때, 상기 응답 작동은 상기 페이지를 상향 스크롤하기이다. 상기 공중 제스처가 손의 하향 병진 이동 또는 손의 하향 흔들기일 때, 상기 응답 작동은 상기 페이지를 하향 스크롤하기이다.
이와 같이, 사용자는 손의 흔들기 또는 손의 병진 이동의 공중 제스처를 통해 전자 디바이스가 페이지를 스크롤하기의 작동을 수행하도록 할 수 있다.
다른 가능한 설계에서, 상기 공중 제스처가 손의 우측 병진 이동 또는 손의 우측 흔들기일 때, 상기 응답 작동은 상기 제1 인터페이스를 제2 인터페이스로 스위칭하기이다. 상기 공중 제스처가 손의 좌측 병진 이동 또는 손의 좌측 흔들기일 때, 상기 응답 작동은 상기 제1 인터페이스를 제3 인터페이스로 스위칭하기이다. 상기 제1 인터페이스는 상기 애플리케이션의 제1 기능에 대응하고, 상기 제2 인터페이스는 상기 애플리케이션의 제2 기능에 대응하며, 상기 제3 인터페이스는 상기 애플리케이션의 제3 기능에 대응한다. 다르게는, 상기 애플리케이션은 리더기(reader)이고, 상기 제1 인터페이스, 상기 제2 인터페이스 및 상기 제3 인터페이스는 각각 상기 리더기에 의해 디스플레이되는 3개의 페이지이다.
이러한 방식으로, 사용자는 손의 병진 이동 또는 손의 흔들기의 공중 제스처를 통해, 위챗(WeChat)과 같은 애플리케이션이 상이한 기능에 대응하는 페이지를 스위칭 및 디스플레이하도록 하거나, 페이지를 넘기를 리더기와 같은 애플리케이션을 활성화할 수 있다.
다른 가능한 설계에서, 상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로, 상기 검출 컴포넌트가 상기 공중 제스처를 검출한 후, 상기 공중 제스처에 대응하는 작동 마크(mark)를 디스플레이하는 단계를 수행하도록 활성화된다.
이 솔루션에서, 작동 마크를 사용하여 사용자가 터치스크린에서 수행하는 실제 터치 작동과 공중 제스처에 대응하는 작동을 시뮬레이션하여, 사용자에게 직관적인 시각적 경험을 제공할 수 있다.
다른 가능한 설계에서, 상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계는, 상기 공중 제스처에 기반하여 범용 입력 이벤트(general-purpose input event)를 생성하는 단계 - 상기 범용 입력 이벤트는 시스템 애플리케이션 및 제3자 애플리케이션 모두가 응답할 수 있는 입력 이벤트임 -; 및 상기 범용 입력 이벤트에 기반하여 상기 응답 작동을 수행하는 단계를 포함한다.
다시 말해서, 전자 디바이스는 사용자의 공중 제스처에 기반하여 시스템 애플리케이션 및 제3자 애플리케이션이 모두 응답할 수 있는 범용 입력 이벤트를 생성할 수 있다. 따라서, 전자 디바이스의 시스템 애플리케이션과 제3자 애플리케이션 모두 범용 입력 이벤트에 응답할 수 있으므로, 시스템 애플리케이션과 제3자 애플리케이션 모두 사용자의 공중 제스처에 응답할 수 있다. 이와 같이 공중 제스처의 사용 범위가 비교적 넓다.
다른 가능한 설계에서, 상기 공중 제스처에 기반하여 범용 입력 이벤트를 생성하는 단계는, 미리 설정된 제1 대응 관계에 기반하여 상기 공중 제스처의 제스처 유형을 결정하는 단계 - 상기 제1 대응 관계는 제스처 정보와 상기 공중 제스처의 제스처 유형 사이의 대응 관계이고, 상기 제스처 정보는 자세, 모양, 이동 거리, 이동 방향, 이동 속도, 이동 궤적 또는 상기 공중 제스처의 위치와 순간(moment) 사이의 대응 관계 중 어느 하나 또는 임의의 조합을 포함함 -; 상기 제스처 유형을 상기 전자 디바이스의 애플리케이션 프레임워크 계층에 보고하는 단계; 상기 애플리케이션 프레임워크 계층이, 미리 설정된 제2 대응 관계에 기반하여 상기 범용 입력 이벤트를 결정하고, 상기 범용 입력 이벤트를 생성하기 위해 상기 범용 입력 이벤트를 애플리케이션 계층에 보고하는 단계 - 상기 제2 대응 관계는 제스처 유형과 범용 입력 이벤트 사이의 대응 관계임 -; 및 상기 애플리케이션 계층에서, 포그라운드(foreground) 시스템 애플리케이션 또는 포그라운드 제3자 애플리케이션이, 상기 범용 입력 이벤트에 응답하는 작동을 수행하는 단계를 포함한다.
다시 말해서, 전자 디바이스의 애플리케이션 프레임워크 계층 및 애플리케이션 계층은 공중 제스처에 기반하여 대응하는 범용 입력 이벤트를 생성하여 응답할 수 있다.
다른 가능한 설계에서, 상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로, 상기 제1 대응 관계에 기반하여, 상기 공중 제스처에 대응하는 제스처 유형이 존재하지 않는 것으로 결정되면, 상기 공중 제스처가 효과가 없는 제스처(ineffective gesture)라고 결정하고, 현재 애플리케이션 및/또는 상기 사용자의 사용 습관에 기반하여 효과적인 참조 공중 제스처를 결정하는 단계; 및 상기 참조 공중 제스처로 상기 사용자에게 프롬프트하는(prompting) 단계를 수행하도록 활성화된다.
이와 같이, 사용자의 제스처가 효과가 없다고 결정할 때, 전자 디바이스는 현재 애플리케이션 및/또는 사용자의 사용 습관을 참조하여, 사용자가 사용할 수 있고, 사용자가 자주 사용할 수 있고, 현재 애플리케이션이 응답할 수 있는 등의 효과적인 공중 제스처를 참조 공중 제스처로 결정하여, 참조 공중 제스처를 사용자에게 프롬프트한다. 따라서 사용자는 프롬프트에 따라 올바른 공중 제스처를 만들 수 있다.
다른 가능한 설계에서, 상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로, 상기 제1 대응 관계에 기반하여, 상기 공중 제스처에 대응하는 제스처 유형이 존재하지 않는 것으로 결정되면, 상기 공중 제스처가 효과가 없는 제스처라고 결정하고, 현재 애플리케이션 및/또는 상기 사용자의 사용 습관에 기반하여 효과적인 참조 공중 제스처를 결정하는 단계; 상기 참조 공중 제스처에 대응하는 참조 범용 입력 이벤트를 결정하는 단계; 상기 참조 범용 입력 이벤트 및 상기 현재 애플리케이션에 기반하여 제1 작동을 결정하는 단계; 상기 사용자에게 상기 제1 작동을 수행할지를 프롬프트하는 단계; 및 상기 사용자로부터 상기 제1 작동을 수행하라는 지시가 검출된 후 상기 제1 작동을 수행하는 단계를 수행하도록 활성화된다.
이와 같이, 전자 디바이스는 현재 애플리케이션 및/또는 사용 습관에 기반하여 사용자의 의도를 추측할 수 있으며, 즉, 사용자가 전자 디바이스가 수행할 것으로 기대되는 제1 작동을 추측할 수 있다. 이와 같이, 전자 디바이스는 사용자가 필요로 하는 제1 작동을 직접 수행할 수 있으며, 사용자는 대응하는 공중 제스처를 새로 할 필요가 없다.
다른 가능한 설계에서, 상기 공중 제스처가 손의 흔들기 또는 손의 병진 이동일 때, 상기 범용 입력 이벤트는 슬라이딩 이벤트이고; 또는 상기 공중 제스처가 상기 전자 디바이스를 향한 손바닥의 이동일 때, 상기 범용 입력 이벤트는 태핑(tapping) 이벤트이다.
다시 말해서, 전자 디바이스는 손의 흔들기 또는 손의 병진 이동의 공중 제스처에 기반하여 슬라이딩 이벤트를 생성할 수 있고, 전자 디바이스를 향한 손바닥의 이동의 공중 제스처에 기반하여 태핑 이벤트를 생성할 수 있다.
다른 가능한 설계에서, 상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로, 상기 범용 입력 이벤트가 생성된 후, 상기 범용 입력 이벤트에 대응하는 작동 마크를 디스플레이하는 단계를 수행하도록 활성화된다.
이 솔루션에서, 작동 마크는 사용자에 의해 터치스크린에서 수행되는 것이면서 또한 범용 입력 이벤트에 대응하는 실제 터치 작동을 시뮬레이션하는 데 사용되어, 사용자에게 직관적인 시각적 경험을 제공할 수 있다.
다른 가능한 설계에서, 상기 작동 마크는 정적 마크 또는 동적 마크이다. 상기 동적 마크는 프로세스 픽토그램(process pictogram)일 수 있다.
예를 들어, 정적 마크는 화살표 또는 실선일 수 있다. 예를 들어, 동적 마크는 움직이는 화살표일 수도 있고, 화살표와 함께 손이 이동하는 프로세스를 나타내는 픽토그램일 수도 있다.
다른 가능한 설계에서, 상기 범용 입력 이벤트는 태핑 이벤트 및 슬라이딩 이벤트 외에, 터치 및 홀딩(touching and holding) 이벤트 또는 드래그(dragging) 이벤트를 더 포함할 수 있다. 상기 태핑 이벤트는 단일 태핑 이벤트 또는 더블(dual) 태핑 이벤트를 포함한다.
예를 들어, 범용 입력 이벤트는 사용자가 실제로 전자 디바이스의 터치스크린을 터치할 때 생성될 수 있는 입력 이벤트일 수 있다.
다른 가능한 설계에서, 상기 범용 입력 이벤트는 적어도 하나의 다운(down) 이벤트, 적어도 하나의 업(up) 이벤트, 및/또는 적어도 하나의 이동(move) 이벤트를 사용하여 표현된다.
다시 말해서, 범용 입력 이벤트는 다운 이벤트, 업 이벤트, 이동 이벤트 또는 이들의 조합을 사용하여 기술될 수 있다.
다른 측면에 따르면, 본 출원의 실시예는 제스처 처리 방법을 제공하며, 상기 제스처 처리 방법은, 전자 디바이스가 공중 제스처를 검출하는 것을 포함한다. 상기 전자 디바이스는 상기 공중 제스처에 기반하여 범용 입력 이벤트를 생성한다. 상기 전자 디바이스는 시스템 애플리케이션 또는 제3자 애플리케이션을 사용하여 상기 범용 입력 이벤트에 응답한다.
이 솔루션에서, 전자 디바이스는 공중 제스처에 기반하여 시스템 애플리케이션 및 제3자 애플리케이션 모두가 응답할 수 있는 범용 입력 이벤트를 생성할 수 있다. 따라서, 전자 디바이스의 임의의 애플리케이션은 범용 입력 이벤트에 응답할 수 있으며, 즉, 임의의 애플리케이션은 사용자의 공중 제스처에 응답하여 공중 제스처의 사용 범위를 확대하고 사용자 경험을 개선할 수 있다.
가능한 설계에서, 상기 전자 디바이스가 공중 제스처에 기반하여 범용 입력 이벤트를 결정하는 것은, 전자 디바이스가 상기 공중 제스처의 제스처 정보에 기반하여 상기 범용 입력 이벤트를 생성하는 것을 포함한다.
이 솔루션에서, 먼저 제스처 정보에 기반하여 제스처 유형을 결정한 다음 제스처 유형에 따라 대응하는 범용 입력 이벤트를 결정하는 대신에, 전자 디바이스는 자세, 모양, 이동 거리, 이동 방향, 이동 속도, 이동 궤적, 또는 공중 제스처의 위치와 순간(moment) 사이의 대응 관계와 같은 제스처 정보에 기반하여 대응하는 범용 입력 이벤트를 생성할 수 있다.
다른 가능한 설계에서, 상기 사용자가 상기 공중 제스처를 트리거하는(trigger) 것을 검출한 후, 상기 전자 디바이스는 상기 공중 제스처를 검출한다. 상기 전자 디바이스가 상기 사용자의 손을 검출할 대, 상기 전자 디바이스는 상기 사용자가 상기 공중 제스처를 트리거한 것으로 결정한다. 상기 전자 디바이스가 상기 공중 제스처를 검출하는 것은, 상기 전자 디바이스가 검출 컴포넌트를 사용하여 상기 공중 제스처의 데이터 정보를 수집하는 것을 포함한다.
이와 같이, 사용자가 공중 제스처를 트리거한 후, 공중 제스처의 데이터 정보를 수집, 제스처 정보를 결정, 제스처 유형을 결정, 범용 입력 이벤트 생성 등의 일련의 작동이 수행된다. 이와 같이, 일련의 작동을 실시간으로 쉬지 않고 수행할 필요가 없어, 전자 디바이스의 관련 자원을 절약할 수 있다.
다른 가능한 설계에서, 상기 전자 디바이스가 상기 공중 제스처를 검출하는 것은, 공중 제스처 검출 기능을 활성화한 후, 상기 전자 디바이스가 상기 공중 제스처를 검출하는 것을 포함한다.
이와 같이, 전자 디바이스는 공중 제스처를 활성화한 후 공중 제스처를 검출함으로써, 전자 디바이스의 관련 검출 자원을 절약하고, 공중 제스처로 인한 오작동을 방지할 수 있다.
다른 측면에 따르면, 본 출원의 실시예는 제스처 처리 장치를 제공한다. 상기 장치는 전자 디바이스에 포함된다. 상기 장치는 전술한 측면 및 가능한 구현에서 임의의 방법에서 전자 디바이스의 액션(action)을 구현하는 기능을 갖는다. 상기 기능은 하드웨어를 사용하여 구현될 수도 있고, 또는 대응하는 소프트웨어를 하드웨어로 실행하는 것에 의해 구현될 수도 있다. 하드웨어 또는 소프트웨어는 전술한 기능에 대응하는 적어도 하나의 모듈 또는 유닛, 예를 들어, 검출 모듈 또는 유닛, 생성 모듈 또는 유닛, 또는 실행 모듈 또는 유닛을 포함한다.
또 다른 측면에 따르면, 본 출원의 실시예는 적어도 하나의 프로세서 및 적어도 하나의 메모리를 포함하는 전자 디바이스를 제공한다. 상기 적어도 하나의 메모리는 상기 적어도 하나의 프로세서에 결합된다. 상기 적어도 하나의 메모리는 컴퓨터 프로그램 코드를 저장하도록 구성된다. 상기 컴퓨터 프로그램 코드는 컴퓨터 명령을 포함한다. 상기 적어도 하나의 프로세서가 상기 컴퓨터 명령을 실행할 때, 상기 전자 디바이스는 전술한 측면의 임의의 가능한 구현에서 제스처 처리 방법을 수행하도록 활성화된다.
다른 측면에 따르면, 본 출원의 실시예는 컴퓨터 명령을 포함하는 컴퓨터 저장 매체를 제공한다. 상기 컴퓨터 명령이 전자 디바이스에서 실행될 때, 상기 전자 디바이스는 전술한 측면의 임의의 가능한 구현에서 제스처 처리 방법을 수행하도록 활성화된다.
또 다른 측면에 따르면, 본 출원의 실시예는 컴퓨터 프로그램 제품을 제공한다. 상기 컴퓨터 프로그램 제품이 컴퓨터에서 실행될 때, 상기 컴퓨터는 전술한 측면의 임의의 가능한 구현에서 제스처 처리 방법을 수행하도록 활성화된다.
도 1은 본 출원의 실시예에 따른 모바일 폰의 하드웨어 구조의 개략도이다.
도 2는 본 출원의 실시예에 따른 모바일 폰의 소프트웨어 구조의 개략도이다.
도 3a 및 도 3b는 본 출원의 실시예에 따른 제스처 처리 절차의 흐름도이다.
도 4a 및 도 4b는 본 출원의 실시예에 따른 작동 효과의 개략도이다.
도 5a 내지 도 5d는 본 출원의 실시예에 따른 제스처 그룹의 개략도이다.
도 5e는 본 출원의 실시예에 따른 카메라에 의해 수집된 제스처 그룹의 개략도이다.
도 5f는 본 출원의 실시예에 따른 제스처 그룹의 개략도이다.
도 6a 내지 도 6d는 본 출원의 실시예에 따른 인터페이스 그룹의 개략도이다.
도 7은 본 출원의 실시예에 따른 인터페이스의 개략도이다.
도 8a 및 도 8b는 본 출원의 실시예에 따른 다른 작동 효과의 개략도이다.
도 9a, 도 9b 및 도 9c는 본 출원의 실시예에 따른 다른 작동 효과의 개략도이다.
도 10a 및 도 10b는 본 출원의 실시예에 따른 다른 작동 효과의 개략도이다.
도 11a, 도 11b 및 도 11c는 본 출원의 실시예에 따른 다른 작동 효과의 개략도이다.
도 12a, 도 12b 및 도 12c는 본 출원의 실시예에 따른 다른 작동 효과의 개략도이다.
도 13a, 도 13b 및 도 13c는 본 출원의 실시예에 따른 다른 작동 효과의 개략도이다.
도 14는 본 출원의 실시예에 따른 작동 마크의 개략도이다.
도 15a 및 도 15b는 본 출원의 실시예에 따른 작동 마크 그룹의 개략도이다.
도 16은 본 출원의 실시예에 따른 다른 작동 마크의 개략도이다.
도 17은 본 출원의 일 실시예에 따른 제스처 처리 방법의 흐름도이다.
다음은 본 출원의 실시예의 첨부 도면을 참조하여 본 출원의 실시예의 기술적 솔루션을 설명한다. 본 출원의 설명에서, "/"는 달리 명시되지 않는 한 연관된 객체 간의 "또는" 관계를 나타낸다. 예를 들어, A/B는 A 또는 B를 나타낼 수 있다. 본 출원에서 "및/또는"은 연관된 객체를 설명하기 위한 연관 관계만을 기술하고 세 가지 관계가 존재할 수 있음을 나타낸다. 예를 들어, A 및/또는 B는 다음 세 가지 경우: A만 존재하는 경우, A와 B가 모두 존재하는 경우, B만 존재하는 경우를 나타낼 수 있으며, 여기서 A 또는 B는 단수 또는 복수일 수 있다.
또한, 본 출원의 설명에서 "복수"는 특별한 언급이 없는 한 둘 이상을 의미한다. "다음 중 적어도 하나" 또는 이와 유사한 표현은 단일 항목 또는 복수 항목의 임의의 조합을 포함하여 이러한 항목의 임의의 조합을 의미한다. 예를 들어, a, b, c 중 적어도 하나는 a, b, c, a와 b, a와 c, b와 c, 또는 a와 b와 c를 나타낼 수 있다. 여기서, a, b, c는 단수 또는 복수일 수 있다.
모바일 폰과 같은 전자 디바이스를 사용할 때, 사용자가 손을 통해 전자 디바이스와 직접 접촉하여 작동을 수행하는 것이 불편할 수 있다. 예를 들어, 사용자의 손이 젖었거나, 기름지거나, 더러워진 경우, 사용자가 손을 통해 전자 디바이스에 직접 접촉하는 것이 불편하다. 다른 예로, 사용자가 야외에서 추워서 장갑을 착용하는 경우, 사용자가 손을 통해 전자 디바이스를 직접 접촉하는 것이 불편하다. 다른 예로, 사용자는 침대에 누워 모바일 폰을 시청하고, 모바일 폰은 지지대를 사용하여 침대 머리에 장착되어 사용자의 손에서 떨어져 있다. 다르게는, 차량 탑재 케이스의 경우 전자 디바이스가 사용자로부터 멀리 떨어져 있어 사용자가 직접 손으로 전자 디바이스를 작동하는 것이 불편하다.
이 경우, 사용자는 공중 제스처(mid-air gesture)를 사용하여 전자 디바이스를 작동할 수 있다. 공중 제스처는 사용자의 손이 전자 디바이스에 접촉하지 않은 상태에서 수행되는 제스처 작동으로, 손과 전자 디바이스 사이의 거리가 미리 설정된 거리 임계값(예를 들어, 1cm)보다 크거나 같다. 전자 디바이스는 카메라, 터치스크린, 전자기 유도 컴포넌트(electromagnetic induction component)(예를 들어, 전자 디바이스의 디스플레이 아래에 배치될 수 있음) 디바이스), 적외선 센서(예를 들어, 전자 디바이스의 디스플레이 아래에 배치될 수 있음), 또는 초음파 센서(예를 들어, 전자 디바이스의 디스플레이 아래에 배치될 수 있음)과 같은 검출(detection) 컴포넌트를 사용하여 사용자의 손 모양(shape), 모션(motion) 상태 등의 정보를 수집하여, 공중 제스처를 검출할 수 있다. 공중 제스처는 정적 제스처(static gesture) 및 동적 제스처(dynamic gesture)를 포함할 수 있지만 이에 제한되지 않는다. 정적 제스처는 손가락을 구부리거나(bending) 닫는 것(closing)과 같은 순간(moment)에서의 손의 자세(posture)를 의미하며, 예를 들어 OK 제스처, V 제스처, 다섯 손가락을 펼치는(five-finger spreading) 제스처 등을 의미한다. 동적 제스처는 일정 기간 내 손의 모션 상태를 의미하며, 이동 방향(moving direction), 속도, 손 자세 변경 등을 포함하며, 예를 들어, 흔들기 제스처(wave gesture), 병진 이동 제스처(translational move gesture), 주먹(fist) 제스처, 그리고 누르기(press) 제스처를 포함한다.
본 출원의 실시예는 공중 제스처에 기반하여 대응하는 범용 입력 이벤트를 생성하기 위해 전자 디바이스에 적용 가능한 제스처 처리 방법을 제공한다. 범용 입력 이벤트는 사용자가 전자 디바이스에서 수행하는 접촉 작동에 대응하는 입력 이벤트이므로, 시스템 애플리케이션과 제3자 애플리케이션 모두 범용 입력 이벤트에 응답할 수 있으며, 즉, 공중 제스처에 응답할 수 있다. 이와 같이, 공중 제스처의 사용 범위를 확대할 수 있고, 제3자 애플리케이션의 적응 작업을 생략할 수 있다. 또한, 제3자 애플리케이션을 미리 공중 제스처에 적응시킬 필요가 없으므로 적응 작업량을 줄일 수 있다.
예를 들어, 전자 디바이스는 모바일 폰, 태블릿 컴퓨터, 웨어러블 디바이스, 차량 탑재 디바이스, 증강 현실(Augmented Reality, AR)/가상 현실(virtual Reality, VR) 디바이스, 노트북 컴퓨터, 울트라 모바일 퍼스널 컴퓨터(ultra-mobile personal computer, UMPC), 넷북 또는 개인 정보 단말기(personal digital assistant, PDA)와 같은 전자 디바이스일 수 있다. 본 출원의 실시예에서 전자 디바이스의 특정 유형은 제한되지 않는다.
예를 들어, 전자 디바이스는 모바일 폰이다. 도 1은 모바일 폰(100)의 개략적인 구조도이다. 모바일 폰(100)은 프로세서(110), 외부 메모리 인터페이스(120), 내부 메모리(121), 범용 직렬 버스(Universal Serial Bus, USB) 인터페이스(130), 충전 관리 모듈(140), 전원 관리 모듈(141), 배터리(142), 안테나 1, 안테나 2, 이동 통신 모듈(150), 무선 통신 모듈(160), 오디오 모듈(170), 스피커(170A), 리시버(receiver)(170B), 마이크로폰(170C), 헤드셋 잭(170D), 센서 모듈(180), 버튼(190), 모터(191), 인디케이터(indicator)(192), 카메라(193), 디스플레이(194), 가입자 식별 모듈(subscriber identification module, SIM) 카드 인터페이스(195) 등을 포함할 수 있다. 센서 모듈(180)은 압력 센서(180A), 자이로 센서(180B), 기압 센서(180C), 자기 센서(180D), 가속도 센서(180E), 거리 센서(180F), 광 근접(optical proximity) 센서(180G), 지문 센서(180H), 온도 센서(180J), 터치 센서(180K), 주변광(ambient light) 센서(180L), 골전도(bone conduction) 센서(180M) 등을 포함할 수 있다.
본 출원의 본 실시예에 도시된 구조는 모바일 폰(100)에 대한 특정한 제한을 구성하지 않는 것으로 이해될 수 있다. 본 출원의 일부 다른 실시예에서, 모바일 폰(100)은 도면에 도시된 것보다 더 많거나 더 적은 컴포넌트를 포함하거나, 일부 컴포넌트를 결합하거나, 일부 컴포넌트를 분할하거나, 상이한 컴포넌트 배열을 가질 수 있다. 도면에 도시된 컴포넌트는 하드웨어, 소프트웨어 또는 소프트웨어와 하드웨어의 조합을 사용하여 구현될 수 있다. 예를 들어, 모바일 폰(100)은 적외선 센서, 초음파 센서, 전자기 유도 컴포넌트 등을 더 포함할 수 있으며, 에어(air) 제스처를 검출하고, 수집된 에어 제스처 데이터 정보를 프로세서로 송신하여 에어 제스처의 제스처 정보를 획득하도록 구성될 수 있다.
프로세서(110)는 하나 이상의 처리 유닛을 포함할 수 있다. 예를 들어, 프로세서(110)는 애플리케이션 프로세서(application processor, AP), 모뎀 프로세서, 그래픽 처리 유닛(graphics processing unit, GPU), 이미지 신호 프로세서(image signal processor, ISP), 컨트롤러, 메모리, 비디오 코덱, 디지털 신호 프로세서(digital signal processor, DSP), 기저대역 프로세서 및/또는 신경망 처리 유닛(neural-network processing unit, NPU)을 포함할 수 있다. 서로 다른 처리 디바이스는 독립적인 디바이스이거나 하나 이상의 프로세서에 통합될 수 있다.
컨트롤러는 모바일 폰(100)의 신경 센터(nerve center) 및 명령어(command) 센터일 수 있다. 컨트롤러는 명령(instruction) 판독 및 명령 실행의 제어를 완료하기 위해 명령 작동 코드 및 시간 시퀀스 신호에 기반하여 작동 제어 신호를 생성할 수 있다.
메모리는 프로세서(110)에 더 배치될 수 있으며, 명령 및 데이터를 저장하도록 구성된다. 일부 실시예에서, 프로세서(110)의 메모리는 캐시 메모리이다. 메모리는 프로세서(110)에 의해 방금 사용되거나 주기적으로 사용되는 명령 또는 데이터를 저장할 수 있다. 프로세서(110)가 명령 또는 데이터를 다시 사용해야 하면, 프로세서(110)는 메모리로부터 명령 또는 데이터를 직접 호출할 수 있다. 이는 반복 액세스를 방지하고 프로세서(110)의 대기 시간을 줄여서, 시스템 효율을 향상시킨다.
일부 실시예에서, 프로세서(110)는 하나 이상의 인터페이스를 포함할 수 있다. 인터페이스는 인터 통합된 회로(inter-integrated circuit, I2C) 인터페이스, 인터 통합된 회로 사운드(inter-integrated circuit sound, I2S) 인터페이스, 펄스 코드 변조(pulse code modulation, PCM) 인터페이스, 범용 비동기 수신기/송신기(universal asynchronous receiver/transmitter, UART) 인터페이스, 모바일 산업 프로세서 인터페이스(mobile industry processor interface, MIPI), 범용 입력/출력(general-purpose input/output, GPIO) 인터페이스, 가입자 식별 모듈(subscriber identity module, SIM) 인터페이스, 범용 직렬 버스(universal serial bus, USB) 인터페이스 등을 포함한다.
I2C 인터페이스는 양방향 동기화 직렬 버스이며 하나의 직렬 데이터 라인(serial data line, SDA)과 하나의 직렬 클락 라인(serial clock line, SCL)을 포함한다. 일부 실시예에서, 프로세서(110)는 복수의 I2S 버스 그룹을 포함할 수 있다. 프로세서(110)는 서로 다른 I2C 버스 인터페이스를 통해 터치 센서(180K), 충전기, 플래시 라이트, 카메라(193) 등과 별도로 연결될 수 있다. 예를 들어, 프로세서(110)는 I2C 인터페이스를 통해 터치 센서(180K)와 결합되므로, 프로세서(110)는 I2C 버스 인터페이스를 통해 터치 센서(180K)와 통신하여 모바일 폰(100)의 터치 기능을 구현할 수 있다.
I2S 인터페이스는 오디오 통신을 수행하도록 구성될 수 있다. 일부 실시예에서, 프로세서(110)는 복수의 I2S 버스 그룹을 포함할 수 있다. 프로세서(110)는 I2S 버스를 통해 오디오 모듈(170)과 결합되어 프로세서(110)와 오디오 모듈(170) 간의 통신을 구현할 수 있다. 일부 실시예에서, 오디오 모듈(170)은 I2S 인터페이스를 통해 오디오 신호를 무선 통신 모듈(160)에 전송하여, 블루투스 헤드셋을 사용하여 전화(call)에 응답하는 기능을 구현할 수 있다.
PCM 인터페이스는 또한 오디오 통신을 수행하고, 아날로그 신호를 샘플링, 양자화 및 코딩하도록 구성될 수 있다. 일부 실시 예에서, 오디오 모듈(170)은 PCM 버스 인터페이스를 통해 무선 통신 모듈(160)에 결합될 수 있다. 일부 실시예에서, 오디오 모듈(170)은 다르게는, PCM 버스 인터페이스를 통해 오디오 신호를 무선 통신 모듈(160)에 전송하여, 블루투스 헤드셋을 사용하여 전화에 응답하는 기능을 구현할 수 있다. I2S 인터페이스와 PCM 인터페이스 모두 오디오 통신을 수행하도록 구성될 수 있다.
UART 인터페이스는 범용 직렬 데이터 버스이며, 비동기 통신을 수행하도록 구성된다. 버스는 양방향 통신 버스일 수 있으며, 직렬 통신과 병렬 통신 사이에서 전송될 데이터를 변환한다. 일부 실시예에서, UART 인터페이스는 일반적으로 프로세서(110)를 무선 통신 모듈(160)에 연결하도록 구성된다. 예를 들어, 프로세서(110)는 UART 인터페이스를 통해 무선 통신 모듈(160) 내의 블루투스 모듈과 통신하여 블루투스 기능을 구현할 수 있다. 일부 실시예에서, 오디오 모듈(170)은 UART 인터페이스를 통해 오디오 신호를 무선 통신 모듈(160)에 전송하여, 블루투스 헤드셋을 사용하여 음악을 재생하는 기능을 구현할 수 있다.
MIPI 인터페이스는 프로세서(110)를 디스플레이(194) 또는 카메라(193)와 같은 주변 컴포넌트에 연결하도록 구성될 수 있다. MIPI 인터페이스는 카메라 직렬 인터페이스(Camera Serial Interface, CSI), 디스플레이 직렬 인터페이스(Display Serial Interface, DSI) 등을 포함한다. 일부 실시예에서, 프로세서(110)는 CSI 인터페이스를 통해 카메라(193)와 통신하여, 모바일 폰(100)의 촬영 기능을 구현한다. 프로세서(110)는 DSI 인터페이스를 통해 디스플레이(194)와 통신하여, 모바일 폰(100)의 디스플레이 기능을 구현한다.
GPIO 인터페이스는 소프트웨어를 통해 구성할 수 있다. GPIO 인터페이스는 제어 신호 또는 데이터 신호로 구성될 수 있다. 일부 실시예에서, GPIO 인터페이스는 프로세서(110)를 카메라(193), 디스플레이(194), 무선 통신 모듈(160), 오디오 모듈(170), 센서 모듈(180) 등에 연결하도록 구성될 수 있다. GPIO 인터페이스는 다르게는, I2C 인터페이스, I2S 인터페이스, UART 인터페이스, MIPI 인터페이스 등으로 구성될 수 있다.
USB 인터페이스(130)는 USB 표준 사양을 따르는 인터페이스로서, 구체적으로 미니 USB 인터페이스, 마이크로 USB 인터페이스, USB Type-C 인터페이스 등이 될 수 있다. USB 인터페이스(130)는 충전기(charger)에 연결되어 모바일 폰(100)을 충전하도록 구성되거나, 모바일 폰(100)과 주변 디바이스 간에 데이터를 전송하도록 구성되거나, 헤드셋에 연결되어 헤드셋을 사용하여 오디오를 재생하도록 구성될 수 있다. 다르게는, 인터페이스는 다른 전자 디바이스, 예를 들면, AR 디바이스와 연결되도록 구성될 수 있다.
본 출원의 실시예들에 도시된 모듈들 간의 인터페이스 연결 관계는 설명을 위한 예시일 뿐이며, 모바일 폰(100)의 구조를 한정하는 것은 아님을 이해할 수 있다. 본 출원의 일부 다른 실시예에서, 모바일 폰(100)은 다르게는, 전술한 실시예와 상이한 인터페이스 연결 방식을 사용하거나, 복수의 인터페이스 연결 방식의 조합을 사용할 수 있다.
충전 관리 모듈(140)은 충전기로부터 충전 입력을 수신하도록 구성된다. 충전기는 무선 충전기 또는 유선 충전기일 수 있다. 유선 충전의 일부 실시예에서, 충전 관리 모듈(140)은 USB 인터페이스(130)를 통해 유선 충전기로부터 충전 입력을 수신할 수 있다. 무선 충전의 일부 실시예에서, 충전 관리 모듈(140)은 모바일 폰(100)의 무선 충전 코일을 사용하여 무선 충전 입력을 수신할 수 있다. 충전 관리 모듈(140)은 배터리(142)를 충전하면서 전원 관리 모듈(141)을 사용하여 모바일 폰(100)에 전원을 공급한다.
전원 관리 모듈(141)은 배터리(142) 및 충전 관리 모듈(140)을 프로세서(110)에 연결하도록 구성된다. 전원 관리 모듈(141)은 배터리(142) 및/또는 충전 관리 모듈(140)의 입력을 수신하고, 프로세서(110), 내부 메모리(121), 외부 메모리, 디스플레이(194), 카메라(193), 무선 통신 모듈(160) 등에 전원을 공급한다. 전원 관리 모듈(141)은 추가로, 배터리 용량, 배터리 사이클의 양, 배터리 상태(battery health status)(누전 또는 임피던스)와 같은 파라미터를 모니터링하도록 구성될 수 있다.
일부 다른 실시예에서, 전원 관리 모듈(141)은 다르게는 프로세서(110)에 배치될 수 있다. 일부 다른 실시예에서, 전원 관리 모듈(141) 및 충전 관리 모듈(140)은 다르게는 동일한 디바이스에 배치될 수 있다.
모바일 폰(100)의 무선 통신 기능은 안테나 1, 안테나 2, 이동 통신 모듈(150), 무선 통신 모듈(160), 모뎀 프로세서, 기저대역 프로세서 등을 통해 구현될 수 있다.
안테나 1 및 안테나 2는 전자기파 신호를 송수신하도록 구성된다. 모바일 폰(100)의 각 안테나는 하나 이상의 통신 대역을 커버하도록 구성될 수 있다. 안테나 활용을 개선하기 위해 상이한 안테나가 추가로 다중화될 수 있다. 예를 들어, 안테나 1은 무선 근거리 통신망에서 다이버시티 안테나로 다중화될 수 있다. 일부 다른 실시예에서, 안테나는 튜닝 스위치와 조합하여 사용될 수 있다.
이동 통신 모듈(150)은 2G/3G/4G/5G 등을 포함하며, 모바일 폰(100)에 적용되는 무선 통신 솔루션을 제공할 수 있다. 이동 통신 모듈(150)은 적어도 하나의 필터, 스위치, 전력 증폭기, 저잡음 증폭기(Low Noise Amplifier, LNA) 등을 포함할 수 있다. 이동 통신 모듈(150)은 안테나 1을 통해 전자파를 수신하고, 수신된 전자파를 필터링 또는 증폭하는 등의 처리를 수행하고, 처리된 전자파를 복조를 위해 모뎀 프로세서로 전송할 수 있다. 이동 통신 모듈(150)은 추가로, 모뎀 프로세서에 의해 변조된 신호를 증폭하고, 증폭된 신호를 방사용 안테나 1을 통해 전자파로 변환할 수 있다.
일부 실시예에서, 모바일 통신 모듈(150)의 적어도 일부 기능 모듈은 프로세서(110)에 배치될 수 있다. 일부 실시예에서, 모바일 통신 모듈(150)의 적어도 일부 기능 모듈 및 프로세서(110)의 적어도 일부 모듈은 동일한 디바이스에 배치될 수 있다.
모뎀 프로세서는 변조기 및 복조기를 포함할 수 있다. 변조기는 송신될 저주파 기저대역 신호를 중간 고주파 신호로 변조하도록 구성된다. 복조기는 수신된 전자기파 신호를 저주파 기저대역 신호로 복조하도록 구성된다. 그러면 복조기는 복조를 통해 획득된 저주파 기저대역 신호를 기저대역 프로세서로 전송하여 처리한다. 저주파 기저대역 신호는 기저대역 프로세서에서 처리된 후 애플리케이션 프로세서로 전송된다. 애플리케이션 프로세서는 오디오 디바이스(스피커(170A), 리시버(170B) 등으로 한정되지 않음)를 사용하여 사운드 신호를 출력하거나, 디스플레이(194)를 통해 이미지 또는 비디오를 디스플레이한다.
일부 실시예에서, 모뎀 프로세서는 독립 컴포넌트일 수 있다. 일부 다른 실시예에서, 모뎀 프로세서는 프로세서(110)와 독립적일 수 있고, 모바일 통신 모듈(150) 또는 다른 기능 모듈과 동일한 디바이스에 배치된다.
무선 통신 모듈(160)은 무선 근거리 통신망(wireless local area network, WLAN)(예를 들어, 무선 충실도(wireless fidelity, Wi-Fi) 네트워크), 블루투스(Bluetooth, BT), 글로벌 항법 위성 시스템(Global Navigation Satellite System, GNSS), 주파수 변조(Frequency Modulation, FM), 근거리 무선 통신(Near Field Communication, NFC) 기술, 적외선(infrared, IR) 기술 등을 포함하면서 또한 모바일 폰(100)에 적용되는, 무선 통신 솔루션을 제공할 수 있다. 무선 통신 모듈(160)은 적어도 하나의 통신 처리 모듈에 통합된 하나 이상의 컴포넌트일 수 있다. 무선 통신 모듈(160)은 안테나 2를 통해 전자파를 수신하고, 전자파 신호에 대해 주파수 변조 및 필터링 처리를 수행하며, 처리된 신호를 프로세서(110)로 송신한다. 무선 통신 모듈(160)은 추가로, 프로세서(110)로부터 송신될 신호를 수신하고, 이 신호에 대해 주파수 변조 및 증폭을 수행하며, 처리된 신호를 방사용 안테나 2를 통해 전자파로 변환할 수 있다.
일부 실시예에서, 모바일 폰(100)에서, 안테나 1와 이동 통신 모듈(150)이 결합되고, 안테나 2와 무선 통신 모듈(160)이 결합되므로, 모바일 폰(100)이 무선 통신 기술을 사용하여 네트워크 및 다른 디바이스와 통신할 수 있다. 무선 통신 기술은 이동 통신을 위한 글로벌 시스템(Global System for Mobile Communications, GSM), 일반 패킷 무선 서비스(general packet radio service, GPRS), 코드 분할 다중 액세스(code division multiple access, CDMA), 광대역 코드 분할 다중 액세스(wideband code division multiple access, WCDMA), 시분할 코드 분할 다중 액세스(time-division code division multiple access, TD-SCDMA), 장기 진화(long term evolution, LTE), BT, GNSS, WLAN, NFC, FM, IR 기술 등을 포함할 수 있다. GNSS는 글로벌 포지셔닝 시스템(Global Positioning System, GPS), 글로벌 항법 위성 시스템(Global Navigation Satellite System, GLONASS), BeiDou 항법 위성 시스템(BeiDou Navigation Satellite System, BDS), 준천정 위성 시스템(quasi-zenith satellite system, QZSS) 및/또는 위성 기반 증강 시스템(satellite based augmentation systems, SBAS)을 포함할 수 있다.
모바일 폰(100)은 GPU, 디스플레이(194), 애플리케이션 프로세서 등을 사용하여 디스플레이 기능을 구현한다. GPU는 이미지 처리를 위한 마이크로프로세서이며, 디스플레이(194) 및 애플리케이션 프로세서에 연결된다. GPU는 수학적 및 기하학적 계산을 수행하고 이미지를 렌더링하도록(render) 구성된다. 프로세서(110)는 디스플레이 정보를 생성 또는 변경하기 위한 프로그램 명령을 실행하는 하나 이상의 GPU를 포함할 수 있다.
스크린(194)이라고도 하는 디스플레이(194)는 이미지, 비디오 등을 디스플레이하도록 구성될 수 있다. 디스플레이(194)는 디스플레이 패널을 포함한다. 디스플레이 패널은 액정 디스플레이(liquid crystal display, LCD), 유기 발광 다이오드(organic light-emitting diode, OLED), 능동 매트릭스 유기 발광 다이오드(active-matrix organic light emitting diode, AMOLED), 플렉서블 발광 다이오드(flex light-emitting diode, FLED), 미니 LED, 마이크로 LED, 마이크로 OLED, 양자점 발광 다이오드(quantum dot light emitting diode, QLED) 등일 수 있다. 일부 실시예에서, 모바일 폰(100)은 하나 또는 N개의 디스플레이(194)를 포함할 수 있으며, 여기서 N은 1보다 큰 양의 정수이다.
모바일 폰(100)은 ISP, 카메라(193), 비디오 코덱, GPU, 디스플레이(194), 애플리케이션 프로세서 등을 사용하여 촬영 기능을 구현할 수 있다.
ISP는 카메라(193)에 의해 피드백된 데이터를 처리하도록 구성된다. 예를 들어, 촬영 중 셔터를 누르면 렌즈를 통해 카메라의 감광 소자에 빛이 전달된다. 광 신호가 전기 신호로 변환되고, 카메라의 감광 소자가 전기 신호를 처리를 위해 ISP에 전송하여, 전기 신호를 가시 이미지(visible image)로 변환한다. ISP는 추가로 이미지의 노이즈, 밝기 및 색조(complexion)에 대한 알고리즘 최적화를 수행할 수 있다. ISP는 추가로, 촬영 시나리오의 노출 및 색온도와 같은 파라미터를 최적화할 수 있다. 일부 실시예에서, ISP는 카메라(193)에 배치될 수 있다.
카메라(193)는 정지 이미지 또는 비디오를 캡처하도록 구성된다. 렌즈를 통해 객체의 광학 이미지가 생성되어 감광 소자에 투영된다. 감광 소자는 전하 결합 디바이스(charge coupled device, CCD) 또는 상보형 금속 산화물 반도체(complementary metal-oxide-semiconductor, CMOS) 광트랜지스터일 수 있다. 감광 소자는 광 신호를 전기 신호로 변환한 다음, 전기 신호를 ISP에 전송하여 전기 신호를 디지털 이미지 신호로 변환한다. ISP는 처리를 위해 디지털 이미지 신호를 DSP로 출력한다. DSP는 디지털 이미지 신호를 RGB 포맷 또는 YUV 포맷과 같은 표준 포맷의 이미지 신호로 변환한다. 일부 실시예에서, 모바일 폰(100)은 하나 또는 N개의 카메라(193)를 포함할 수 있으며, 여기서 N은 1보다 큰 양의 정수이다.
카메라는 RGB 카메라, 적외선 카메라, 깊이 카메라 등 중 하나 이상을 포함할 수 있다. 일부 실시예에서, 카메라는 에어 제스처를 검출하고, 에어 제스처의 수집된 데이터 정보를 프로세서에 전송하여, 에어 제스처의 제스처 정보를 획득하도록 구성될 수 있다. 예를 들어, 데이터 정보는 에어 제스처의 이미지 정보를 수집할 수 있다.
디지털 신호 프로세서는 디지털 신호를 처리하도록 구성되며, 디지털 이미지신호 외에 다른 디지털 신호를 처리할 수 있다. 예를 들어, 모바일 폰(100)이 주파수를 선택할 때, 디지털 신호 프로세서는 주파수 에너지 등에 대한 푸리에 변환을 수행하도록 구성된다.
비디오 코덱은 디지털 비디오를 압축하거나 압축 해제하도록 구성된다. 모바일 폰(100)은 하나 이상의 비디오 코덱을 지원할 수 있다. 이와 같이, 모바일 폰(100)은 MPEG(moving picture experts group)-1, MPEG-2, MPEG-3, MPEG-4와 같은 복수의 코딩 포맷으로 비디오를 재생하거나 녹화할 수 있다.
NPU는 신경망(neural-network, NN) 컴퓨팅 프로세서로, 생물학적 신경망의 구조, 예를 들어 인간의 뇌 뉴런 간의 전송 방식을 참고하여 입력 정보를 신속하게 처리하고, 더 나아가 지속적으로 자기 학습을 수행한다. 이미지 인식, 얼굴 인식, 음성 인식, 텍스트 이해와 같은 모바일 폰(100)의 지능적 인식과 같은 애플리케이션은 NPU를 사용하여 구현될 수 있다.
일부 실시예에서, NPU 또는 다른 프로세서는 에어 제스처의 것이면서 또한 카메라와 같은 검출 컴포넌트에 의해 전송된 데이터 정보에 기반하여, 제스처 정보를 획득하고, 제스처 정보에 기반하여 제스처 유형 등을 식별할 수 있다.
외부 메모리 인터페이스(120)는 마이크로 SD 카드와 같은 외부 저장 카드에 연결하여 모바일 폰(100)의 저장 능력을 확장하도록 구성될 수 있다. 외부 저장 카드는 외부 메모리 인터페이스(120)를 통해 프로세서(110)와 통신하여 데이터 저장 기능을 구현한다. 예를 들어, 음악, 비디오 등의 파일은 외부 저장 카드에 저장된다.
내부 메모리(121)는 컴퓨터 실행 가능한 프로그램 코드를 저장하도록 구성될 수 있으며, 실행 가능한 프로그램 코드는 명령을 포함한다. 프로세서(110)는 내부 메모리(121)에 저장된 명령을 실행하여 모바일 폰(100)의 다양한 기능 애플리케이션 및 데이터 처리를 수행한다. 내부 메모리(121)는 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있다. 프로그램 저장 영역은 운영체제, 적어도 하나의 기능(예를 들어, 사운드 재생 기능 또는 이미지 재생 기능)에 필요한 애플리케이션 등이 저장될 수 있다. 데이터 저장 영역은 모바일 폰(100) 사용 중 생성된 데이터(예를 들어, 오디오 데이터 또는 주소록) 등을 저장할 수 있다. 또한, 내부 메모리(121)는 고속 랜덤 액세스 메모리를 포함할 수 있으며, 비휘발성 메모리, 예를 들어, 적어도 하나의 자기 디스크 저장 디바이스, 플래시 메모리 디바이스 또는 범용 플래시 저장 디바이스(universal flash storage, UFS)를 더 포함할 수 있다.
모바일 폰(100)은 오디오 모듈(170), 스피커(170A), 리시버(170B), 마이크로폰(170C), 헤드셋 잭(170D), 애플리케이션 프로세서 등을 사용하여 음악 재생 또는 녹음과 같은 오디오 기능을 구현할 수 있다.
오디오 모듈(170)은 디지털 오디오 정보를 아날로그 오디오 신호 출력으로 변환하도록 구성되고, 또한 아날로그 오디오 입력을 디지털 오디오 신호로 변환하도록 구성된다. 오디오 모듈(170)은 추가로, 오디오 신호를 코딩 및 디코딩하도록 구성될 수 있다. 일부 실시예에서, 오디오 모듈(170)은 프로세서(110)에 배치될 수 있거나, 오디오 모듈(170)의 일부 기능 모듈은 프로세서(110)에 배치될 수 있다.
"혼(horn)"이라고도 하는 스피커(170A)는 오디오 전기 신호를 사운드 신호로 변환하도록 구성된다. 모바일 폰(100)은 스피커(170A)를 통해 음악을 듣거나 핸즈프리 통화에 응답할 수 있다.
"이어피스(earpiece)"라고도 하는 리시버(170B)는 오디오 전기 신호를 사운드 신호로 변환하도록 구성된다. 모바일 폰(100)을 사용하여 전화를 받거나 음성 정보를 수신할 때, 리시버(170B)를 사람의 귀에 가까이 대어 음성을 들을 수 있다.
"마이크(mike)" 또는 "마이크로폰"이라고도 하는 마이크로폰(170C)는 사운드 신호를 전기 신호로 변환하도록 구성된다. 사용자는 전화를 걸거나 음성 정보를 보낼 때, 사용자는 입을 마이크로폰(170C)에 가까이 대고 소리를 내면서 마이크로폰(170C)에 사운드 신호를 입력할 수 있다. 적어도 하나의 마이크로폰(170C)이 모바일 폰(100)에 배치될 수 있다.
다른 실시예에서, 2개의 마이크로폰(170C)이 모바일 폰(100)에 배치되어 사운드 신호를 수집하고 노이즈 감소 기능을 더 구현할 수 있다. 일부 다른 실시예에서, 3개, 4개 또는 그 이상의 마이크로폰(170C)이 다르게는 모바일 폰(100)에 배치되어, 사운드 신호를 수집하고, 노이즈를 감소시키며, 음원을 추가로 식별하고, 지향성 녹음 기능을 구현하는 등을 수행할 수 있다.
헤드셋 잭(170D)은 유선 헤드셋에 연결되도록 구성된다. 헤드셋 잭(170D)은 USB 인터페이스(130)일 수 있으며, 또는 3.5mm 개방형 모바일 단말 플랫폼(open mobile terminal platform, OMTP) 표준 인터페이스 또는 미국 셀룰러 통신 산업 협회(Cellular Telecommunications Industry Association of USA, CTIA) 표준 인터페이스일 수 있다.
압력 센서(180A)는 압력 신호를 감지하고(sense), 압력 신호를 전기적 신호로 변환할 수 있다. 일부 실시예에서, 압력 센서(180A)는 디스플레이(194) 상에 배치될 수 있다. 저항성 압력 센서, 유도 압력 센서, 정전용량식 압력 센서 등의 복수 유형의 압력 센서(180A)가 존재한다. 정전용량식 압력 센서는 전도성 물질로 이루어진 적어도 두 개의 평행판을 포함할 수 있다. 압력 센서(180A)에 힘이 가해질 때 전극 사이의 정전용량이 변한다. 모바일 폰(100)은 정전 용량 변화에 기반하여 압력 강도(intensity)를 결정한다. 모바일 폰(100)은 디스플레이(194) 상에서 터치 작동이 수행될 때, 압력 센서(180A)를 사용하여 터치 작동의 강도를 검출한다. 또한, 모바일 폰(100)은 압력 센서(180A)의 검출 신호에 기반하여 터치 위치를 계산할 수 있다.
일부 실시예에서, 동일한 터치 위치에서 수행되지만 상이한 터치 작동 강도를 갖는 터치 작동은 상이한 작동 명령에 대응할 수 있다. 예를 들어, 터치 작동 강도가 제1 압력 임계값보다 작은 터치 작동이 메시지 아이콘에 대해 수행될 때, SMS 메시지를 보기 위한 명령이 실행된다. 터치 작동 강도가 제1 압력 임계값보다 크거나 같은 터치 작동이 메시지 아이콘에 대해 수행될 때, 신규 SMS 메시지 생성을 위한 명령이 실행된다.
자이로 센서(180B)는 모바일 폰(100)의 이동 자세를 결정하도록 구성될 수 있다. 일부 실시예에서, 자이로 센서(180B)를 사용하여 3개의 축(즉, x축, y축, z축)을 중심으로 하는 모바일 폰(100)의 각속도(angular velocity)가 결정될 수 있다. 자이로 센서(180B)는 촬영 시 손떨림 보정을 구현하도록 구성될 수 있다. 예를 들어, 자이로 센서(180B)는 셔터가 눌렸을 때, 모바일 폰(100)이 흔들리는 각도를 검출하고, 그 각도에 따른 계산을 통해 렌즈 모듈이 보정해야 할 거리를 구하며, 렌즈가 반전 모션(reverse motion)을 통해 모바일 폰(100)의 지터(jitter)를 상쇄하여, 이미지 안정화(image stabilization)를 구현한다. 자이로 센서(180B)는 추가로, 내비게이션 시나리오 및 모션 센싱 게임 시나리오에서 사용될 수 있다.
가속도 센서(180E)는 모바일 폰(100)의 다양한 방향(보통 3축)의 가속도 값을 검출할 수 있다. 모바일 폰(100)이 정지된 상태일 때, 중력의 값 및 방향이 검출될 수 있다. 가속도 센서(180E)는 추가로, 모바일 폰(100)의 자세를 식별하도록 구성될 수 있으며, 가로 모드(landscape mode)와 세로 모드(portrait mode) 간 스위칭 또는 만보계와 같은 애플리케이션에 적용된다.
거리 센서(180F)는 거리를 측정하도록 구성된다. 모바일 폰(100)은 적외선 또는 레이저를 통해 거리를 측정할 수 있다. 일부 실시예에서, 촬영 시나리오에서, 모바일 폰(100)은 거리 센서(180F)를 사용하여 거리를 측정하여, 빠른 포커싱(focusing)을 구현할 수 있다.
광 근접 센서(180G)는, 예를 들면, 발광 다이오드(light-emitting diode, LED) 및 광 검출기, 예를 들면, 포토다이오드를 포함할 수 있다. 발광 다이오드는 적외선 발광 다이오드일 수 있다. 모바일 폰(100)은 발광 다이오드를 통해 적외선을 방출한다. 모바일 폰(100)은 포토다이오드를 사용하여 주변 객체로부터 적외선 반사광을 검출한다. 충분한 반사광이 검출될 때, 모바일 폰(100)은 모바일 폰(100) 주변에 객체가 있는 것으로 결정할 수 있다. 부족한 반사광이 검출될 때, 모바일 폰(100)은 모바일 폰(100) 주변에 객체가 없는 것으로 결정할 수 있다. 모바일 폰(100)은 광 근접 센서(180G)를 사용하여 사용자가 모바일 폰(100)을 귀에 가까이 대고 통화하는 것을 검출하여, 절전을 위해 스크린을 자동으로 끌 수 있다. 광 근접 센서(180G)는 가죽 케이스 모드나 포켓 모드에서도 자동으로 스크린 잠금을 해제하거나 잠글 수 있다.
주변광 센서(180L)는 주변광 밝기를 검출하도록 구성된다. 모바일 폰(100)은 검출된 주변광 밝기에 기반하여 디스플레이(194)의 밝기를 적응적으로 조절할 수 있다. 주변광 센서(180L)는 촬영시 화이트 밸런스를 자동으로 조절하도록 구성될 수도 있다. 주변광 센서(180L)는 또한 우발적인 터치를 방지하기 위해 모바일 폰(100)이 주머니에 있는지 여부를 검출하기 위해 광학 근접 센서(180G)와 협력할 수 있다.
지문 센서(180H)는 지문을 수집하도록 구성된다. 모바일 폰(100)은 수집된 지문의 특징을 사용하여 지문 잠금 해제, 애플리케이션 잠금 접근, 지문 기반 촬영, 지문 기반 전화 응답 등을 구현할 수 있다.
터치 센서(180K)는 "터치 패널"이라고도 한다. 터치 센서(180K)는 디스플레이(194) 상에 배치될 수 있고, 터치 센서(180K)와 디스플레이(194)는 "터치스크린"이라고도 하는 터치스크린을 형성한다. 터치 센서(180K)는 터치 센서(180K) 상에서 또는 그 근처에서 수행되는 터치 작동을 검출하도록 구성된다. 터치 센서는 검출된 터치 작동을 애플리케이션 프로세서에 전달하여 터치 이벤트의 유형을 결정할 수 있다. 디스플레이(194)는 터치 작동과 관련된 시각적 출력을 제공할 수 있다. 일부 다른 실시예에서, 터치 센서(180K)는 다르게는 모바일 폰(100)의 표면 상에 배치될 수 있고, 디스플레이(194)의 위치와 상이한 위치에 있다.
일부 다른 실시예에서, 터치스크린은 에어 제스처를 검출하고, 에어 제스처의 수집된 데이터 정보를 프로세서에 전송하여, 에어 제스처의 제스처 정보를 획득하도록 구성될 수 있다.
버튼(190)은 전원 버튼, 볼륨 버튼 등을 포함한다. 버튼(190)은 기계식 버튼일 수도 있고, 터치 버튼일 수도 있다. 모바일 폰(100)은 버튼 입력을 수신하고, 모바일 폰(100)의 사용자 설정 및 기능 제어와 관련된 버튼 신호 입력을 생성할 수 있다.
모터(191)는 진동 프롬프트(vibration prompt)를 생성할 수 있다. 모터(191)는 착신(incoming call) 진동 프롬프트 및 터치 진동 피드백을 제공하도록 구성될 수 있다. 예를 들어, 서로 다른 애플리케이션(예를 들어, 촬영 및 오디오 재생)에서 수행되는 터치 작동은 서로 다른 진동 피드백 효과에 대응할 수 있다. 모터(191)는 또한 디스플레이(194)의 서로 다른 영역 상에서 수행되는 터치 작동에 대한 서로 다른 진동 피드백 효과에 대응할 수 있다. 서로 다른 애플리케이션 시나리오(예를 들어, 시간 알림, 정보 수신, 알람 시계 및 게임)도 서로 다른 진동 피드백 효과에 대응할 수 있다. 터치 진동 피드백 효과는 추가로 커스터마이징될 수 있다.
인디케이터(192)는 인디케이터 라이트(light)로, 충전 상태 및 전원 변경을 지시하거나, 메시지, 부재중 전화, 알림 등을 지시하도록 구성될 수 있다.
SIM 카드 인터페이스(195)는 SIM 카드에 연결하도록 구성된다. SIM 카드는 SIM 카드 인터페이스(195)에 삽입되거나 SIM 카드 인터페이스(195)로부터 플러그화되어 모바일 폰(100)과의 접촉 또는 분리를 구현할 수 있다. 모바일 폰(100)은 하나 또는 N개의 SIM 카드 인터페이스를 지원할 수 있으며, 여기서 N은 1보다 큰 양의 정수이다. SIM 카드 인터페이스(195)는 나노(nano) SIM 카드, 마이크로 SIM 카드, SIM 카드 등을 지원할 수 있다. 동일한 SIM 카드 인터페이스(195)에는 복수의 카드가 동시에 삽입될 수 있다. 복수의 카드는 동일한 유형일 수도 있고 상이한 유형일 수도 있다. SIM 카드 인터페이스(195)는 상이한 유형의 SIM 카드와 호환될 수 있다. SIM 카드 인터페이스(195)는 또한 외부 저장 카드와 호환될 수 있다. 모바일 폰(100)은 SIM 카드를 사용하여 네트워크와 상호작용하여, 통화, 데이터 통신 등의 기능을 구현한다. 일부 실시예에서, 모바일 폰(100)은 eSIM, 즉 임베디드 SIM 카드(embedded SIM card)를 사용한다. eSIM 카드는 모바일 폰(100)에 내장될 수 있으며 모바일 폰(100)과 분리될 수 없다.
도 2는 본 출원의 일 실시예에 따른 모바일 폰(100)의 소프트웨어 구조의 블록도이다. 계층 구조에서, 소프트웨어는 여러 계층으로 나뉘며, 각 계층에는 명확한 역할과 태스크(task)가 있다. 계층은 소프트웨어 인터페이스를 통해 서로 통신한다. 일부 실시예에서, 안드로이드 시스템은 4개의 계층: 위에서 아래로 애플리케이션 계층, 애플리케이션 프레임워크 계층, 안드로이드 런타임(Android runtime) 및 시스템 라이브러리, 그리고 커널 계층으로 나누어진다. 애플리케이션 계층은 일련의 애플리케이션 패키지를 포함할 수 있다.
도 2에 도시된 바와 같이, 애플리케이션 패키지는 카메라, 갤러리, 캘린더, 전화, 지도, 내비게이션, WLAN, 블루투스, 음악, 비디오 및 메시지와 같은 애플리케이션을 포함할 수 있다.
애플리케이션 프레임워크 계층은 애플리케이션 계층에서 애플리케이션 프로그래밍 인터페이스(application programming interface, API)와 애플리케이션을 위한 프로그래밍 프레임워크를 제공한다. 애플리케이션 프레임워크 계층은 미리 정의된 몇 가지 기능을 포함한다.
도 2에 도시된 바와 같이, 애플리케이션 프레임워크 계층은 윈도우 매니저, 콘텐츠 제공자, 뷰(view) 시스템, 폰 매니저, 리소스 매니저, 알림(notification) 매니저 등을 포함할 수 있다.
윈도우 매니저는 윈도우 프로그램을 관리하도록 구성된다. 윈도우 매니저는 디스플레이의 크기를 획득하고, 상태 표시줄(bar)이 있는지 결정하고, 스크린을 잠그고, 스크린샷을 찍는 등의 작업을 수행할 수 있다.
콘텐츠 제공자는 데이터를 저장 및 획득하고 애플리케이션에서 데이터에 액세스할 수 있도록 구성된다. 데이터는 비디오, 이미지, 오디오, 발신 및 수신된 통화, 브라우징 이력(browsing history) 및 북마크, 주소록 등을 포함할 수 있다.
뷰 시스템은 텍스트를 디스플레이하기 위한 컨트롤(control) 및 사진(picture)을 디스플레이하기 위한 컨트롤과 같은 시각적 컨트롤을 포함한다. 뷰 시스템은 애플리케이션을 구성하도록 구성될 수 있다. 디스플레이 인터페이스는 하나 이상의 뷰를 포함할 수 있다. 예를 들어, 메시지 알림 아이콘(Messages notification icon)을 포함하는 디스플레이 인터페이스는 텍스트 디스플레이 뷰 및 사진 디스플레이 뷰를 포함할 수 있다.
폰 매니저는 모바일 폰(100)의 통신 기능, 예를 들어 통화 상태(응답 또는 거절 포함) 관리를 제공하도록 구성된다.
리소스 매니저는 로컬화된(localized) 문자열, 아이콘, 사진, 레이아웃 파일, 비디오 파일 등 애플리케이션을 위한 다양한 리소스를 제공한다.
알림 매니저는 애플리케이션이 상태 표시줄에 알림 정보를 디스플레이할 수 있도록 하고 알림 메시지를 전달하도록 구성될 수 있다. 알림 매니저는 사용자 상호 작용 없이 잠시 일시 중지된 후 자동으로 사라질 수 있다. 예를 들어, 알림 매니저는 다운로드 완료 알림, 메시지 프롬프트 등을 제공하도록 구성된다. 알림 매니저는 다르게는 시스템의 상단(top) 상태 표시줄에 그래프 또는 스크롤 바 텍스트(scroll bar text) 형태로 나타나는 알림, 예를 들어 백그라운드에서 실행 중인 애플리케이션의 알림 또는 대화창 형태로 화면에 나타나는 알림일 수 있다. 예를 들어 상태 표시줄에 텍스트 정보가 디스플레이되거나, 경고음이 재생되거나, 진동이 발생하거나, 지시등이 깜박인다.
안드로이드 런타임은 코어 라이브러리와 가상 머신을 포함한다. 안드로이드 런타임은 안드로이드 시스템의 일정 관리 및 관리를 담당한다.
코어 라이브러리는 자바(Java) 언어로 호출해야 하는 함수와 안드로이드의 코어 라이브러리의 두 부분으로 구성된다.
애플리케이션 계층과 애플리케이션 프레임워크 계층은 가상 머신 상에서 실행된다. 가상 머신은 애플리케이션 계층과 애플리케이션 프레임워크 계층에서 자바 파일을 바이너리 파일로 실행한다. 가상 머신은 객체 수명 주기 관리, 스택(stack) 관리, 스레드(thread) 관리, 보안 및 예외 관리, 가비지(garbage) 수집과 같은 기능을 구현하도록 구성된다.
시스템 라이브러리는 복수의 기능 모듈, 예를 들면, 표면 매니저(surface manager), 미디어 라이브러리(Media Libraries), 3차원 그래픽 처리 라이브러리(예를 들어, OpenGL ES), 2차원 그래픽 엔진(예를 들어, SGL)을 포함할 수 있다
표면 매니저는 디스플레이 서브시스템을 관리하고 복수의 애플리케이션을 위한 2D 및 3D 레이어의 융합을 제공하도록 구성된다.
미디어 라이브러리는 일반적으로 사용되는 다수의 오디오 및 비디오 포맷, 정적 이미지 파일 등의 재생 및 기록을 지원한다. 미디어 라이브러리는 MPEG-4, H.264, MP3, AAC, AMR, JPG 및 PNG와 같은 복수의 오디오 및 비디오 코딩 포맷을 지원할 수 있다.
3차원 그래픽 처리 라이브러리는 3차원 그래픽 드로잉(drawing), 이미지 렌더링, 합성, 레이어 처리 등을 구현하도록 구성된다.
2D 그래픽 엔진은 2D 드로잉을 위한 드로잉 엔진이다.
커널 계층은 하드웨어와 소프트웨어 사이의 계층이다. 커널 계층은 적어도 디스플레이 드라이버, 카메라 드라이버, 오디오 드라이버 및 센서 드라이버를 포함한다.
본 출원의 이 실시예에서, 공중 제스처에 기반하여 전자 디바이스에 의해 생성되면서 또한 시스템 애플리케이션 및 제3자 애플리케이션 모두가 직접 응답할 수 있는 범용 입력 이벤트는, 전자 디바이스 상에서 사용자에 의해 수행된 접촉 작동에 대응하는 입력 이벤트일 수 있다. 예를 들어, 전자 디바이스는 터치스크린을 구비한 디바이스(예를 들어, 터치스크린을 구비한 모바일 폰 또는 태블릿 컴퓨터)일 수 있으며, 공중 제스처에 기반하여 전자 디바이스에 의해 생성되는 범용 입력 이벤트는, 사용자가 터치스크린 상에서 수행한 터치 작동에 대응하는 입력 이벤트일 수 있다. 다르게는, 전자 디바이스는 버튼이 구비된 디바이스(예를 들어, 모바일 폰 또는 버튼이 구비된 노트북)일 수 있으며, 공중 제스처에 기반하여 전자 디바이스에 의해 생성되는 범용 입력 이벤트는, 사용자가 버튼에서 수행한 작동에 대응하는 입력 이벤트일 수 있다. 다르게는, 전자 디바이스는 마우스와 연동하여 사용되는 디바이스일 수 있으며, 공중 제스처에 기반하여 전자 디바이스에 의해 생성되는 범용 입력 이벤트는, 사용자의 마우스 클릭 또는 스크롤과 같은 작동에 대응하는 입력 이벤트일 수 있다. 다르게는, 전자 디바이스는 터치 패드와 연동하여 사용되는 디바이스(예를 들어, 노트북)일 수 있으며, 공중 제스처에 기반하여 전자 디바이스에 의해 생성되는 범용 입력 이벤트는 사용자가 터치패드에서 수행하는 터치 작동에 대응하는 입력 이벤트일 수 있다
전자 디바이스가 모바일 폰(100)일 때, 본 출원의 일부 실시예에서, 도 3a에 도시된 바와 같이, NPU 또는 다른 프로세서와 같은 계산 모듈은, 모바일 폰(100)의 카메라, 터치스크린, 적외선 센서, 초음파 센서, 전자기 유도 컴포넌트, 또는 다른 검출 컴포넌트(예를 들어, Leap Motion과 같은 외부 컴포넌트)에 의해 수집된 공중 제스처의 데이터 정보에 기반하여 제스처 정보를 획득할 수 있고; 제스처 정보에 기반하여 제스처 식별을 수행하여 제스처 유형을 결정하도록 구성된다. 계산 모듈은 제스처 유형을 애플리케이션 프레임워크 계층에 보고한다. 애플리케이션 프레임워크 계층은 제스처 유형과 범용 입력 이벤트 간의 미리 설정된 대응 관계에 기반하여, 계산 모듈에서 보고한 제스처 유형에 대응하는 범용 입력 이벤트를 결정하고, 범용 입력 이벤트를 애플리케이션 계층에 보고한다. 달리 말하면, 애플리케이션 프레임워크 계층은 범용 입력 이벤트를 생성한다. 범용 입력 이벤트는 일반적으로 운영체제에 의해 정의되며, 사용자가 작동을 수행하기 위해 모바일 폰을 접촉할 때 생성될 수 있다. 시스템 애플리케이션과 제3자 애플리케이션 모두 입력 이벤트에 직접 응답할 수 있다. 애플리케이션 계층의 관련 애플리케이션(예를 들어, 포그라운드(foreground) 애플리케이션)은 범용 입력 이벤트에 응답하여 대응하는 기능을 수행할 수 있다. 관련 애플리케이션은 시스템 애플리케이션일 수도 있고, 제3자 애플리케이션일 수도 있다.
본 출원의 일부 다른 실시예에서, 도 3b에 도시된 바와 같이, NPU 또는 다른 프로세서와 같은 계산 모듈은 검출 컴포넌트에 의해 수집된 공중 제스처의 데이터 정보에 기반하여 제스처 정보를 획득할 수 있고; 제스처 정보를 애플리케이션 프레임워크 계층에 보고한다. 미리 설정된 매핑 정책을 참조하여, 애플리케이션 프레임워크 계층은 제스처 정보에 기반하여 대응하는 범용 입력 이벤트를 생성한다. 범용 입력 이벤트는 전자 디바이스 시스템에서 일반적으로 정의되는 다운(down) 이벤트, 업(up) 이벤트 및/또는 이동 이벤트를 사용하여 기술되는 이벤트일 수 있다. 다시 말해서, 범용 입력 이벤트는 다운 이벤트, 업 이벤트, 이동 이벤트 또는 이들의 조합일 수 있다. 애플리케이션 프레임워크 계층은 범용 입력 이벤트를 애플리케이션 계층에 보고한다. 시스템 애플리케이션 또는 애플리케이션 계층의 제3자 애플리케이션은 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 설명된 범용 입력 이벤트에 응답할 수 있으며, 대응하는 기능을 수행한다.
이러한 방식으로 시스템 애플리케이션과 제3자 애플리케이션 모두 공중 제스처에 기반하여 생성된 범용 입력 이벤트(이는 공중 제스처에 매핑하는 범용 입력 이벤트로 지칭될 수 있음)에 응답할 수 있다. 다시 말해서, 시스템 애플리케이션과 제3자 애플리케이션 모두 공중 제스처에 응답할 수 있다. 따라서, 공중 제스처의 사용 범위가 상대적으로 크고, 공중 제스처의 사용자 경험이 상대적으로 좋다. 또한, 제3자 애플리케이션은 미리 공중 제스처에 적응할 필요가 없으므로, 제3자 애플리케이션의 적응 작업을 생략할 수 있다.
현재, 터치스크린을 구비한 모바일 폰을 예로 들 수 있다. 이 경우, 사용자가 터치스크린 상에서 수행하는 터치 작동(즉, 접촉 작동)의 처리 프로세스는 다음을 포함할 수 있다: 터치스크린이 사용자의 터치 작동을 검출한 후, 대응하는 하드웨어는 터치 작동을 커널 계층으로 전송한다. 커널 계층은 터치 작동을 범용 입력 이벤트(터치 좌표 및 터치 작동의 타임스탬프와 같은 정보 포함)로 처리한다. 범용 입력 이벤트는 커널 계층에 저장된다. 애플리케이션 프레임워크 계층은 커널 계층으로부터 범용 입력 이벤트를 획득하고 범용 입력 이벤트를 관련 애플리케이션(예를 들어, 포그라운드 애플리케이션)에 전달한다. 관련 애플리케이션은 범용 입력 이벤트에 응답하여 터치 작동에 응답한다.
본 출원의 구현에서 제공되는 공중 제스처의 작동의 처리 프로세스와 모바일 폰이 생성할 수 있는 터치 작동의 현재 처리 프로세스의 비교로부터, 공중 제스처에 기반하여, 사용자가 터치스크린 상에서 수행한 터치 작동에 대응하는 범용 입력 이벤트를 생성할 수 있음을 알 수 있다. 따라서, 시스템 애플리케이션과 제3자 애플리케이션 모두 범용 입력 이벤트에 응답할 수 있고, 시스템 애플리케이션과 제3자 애플리케이션 모두 공중 제스처에 응답할 수 있다. 또한, 모바일 폰은 사용자가 터치스크린 상에서 수행하는 실제 터치 작동을 공중 제스처를 사용하여 시뮬레이션하여, 실제 터치 작동에 대응하는 범용 입력 이벤트를 생성함을 이해할 수 있다. 따라서, 시스템 애플리케이션과 제3자 애플리케이션 모두 범용 입력 이벤트에 응답할 수 있고, 시스템 애플리케이션과 제3자 애플리케이션 모두 공중 제스처에 응답할 수 있다.
다음의 실시예는 전자 디바이스가 터치스크린을 갖는 모바일 폰인 예를 사용하여 본 출원의 본 실시예에서 제공되는 제스처 처리 방법을 설명하고, 모바일 폰이 공중 제스처에 기반하여 생성하는 범용 입력 이벤트는 사용자의 실제 터치 이벤트에 대응하는 입력 이벤트이다.
본 출원의 이 실시예에서, 모바일 폰은 공중 제스처 검출 기능을 갖는다. 공중 제스처 검출 기능이 활성화된(enabled) 후, 모바일 폰은 카메라, 터치스크린, 적외선 센서 또는 초음파 센서와 같은 검출 컴포넌트를 사용하여 사용자의 공중 제스처를 검출할 수 있다.
일부 실시예에서, 모바일 폰은 기본적으로 공중 제스처 검출 기능을 활성화하고, 터치스크린의 스크린 온 상태(screen-on state) 및 스크린 오프 상태(screen-off state) 모두에서 공중 제스처를 연속적으로 검출할 수 있다.
예를 들어, 모바일 폰의 저전력 프로세서는 카메라, 터치스크린, 적외선 센서 또는 초음파 센서와 같은 검출 컴포넌트를 계속 사용하여 스크린 오프 상태의 모바일 폰을 지원하여, 공기 제스처가 트리거되는지를 검출한다. 예를 들어, 저전력 프로세서는 센서 허브(sensor hub)일 수 있다.
일부 다른 실시예에서, 스크린 오프 상태의 모바일 폰은 기본적으로 공중 제스처 검출 기능을 비활성화한다(disable).
예를 들어, 기술적 솔루션에서 스크린 온 상태에서, 현재 터치스크린이 잠금 해제되면(unlocked), 모바일 폰은 자동으로 공중 제스처 검출 기능을 활성화하여, 터치스크린이 잠겨 있을 때 공중 제스처를 검출하는 것에 의해 발생하는 오작동(misoperation)을 방지한다.
또 다른 기술적 솔루션에서, 터치스크린이 스크린 온 상태이면, 터치스크린 잠금 해제 여부에 관계없이 공중 제스처 검출 기능이 자동으로 활성화된다. 일반적으로 터치스크린은 사용자에 의해 수행되는 스크린 온 작동이 검출된 후에야 스크린 온 상태가 된다. 그러나, 일반적으로 사용자가 터치스크린 상에서 스크린 온 작동을 할 때, 사용자는 모바일 폰을 사용하기를 기대하거나 모바일 폰에 대해 염려한다. 이 경우, 모바일 폰은 또한 사용자에 의한 능동적인 공중 제스처를 검출하여, 공중 제스처를 사용하여 직접 모바일 폰을 작동하며, 이에 따라 사용자의 터치스크린 잠금 해제 작동을 생략할 수 있다.
일부 다른 실시예에서, 모바일 폰은 기본적으로 공중 제스처 검출 기능을 비활성화하고, 사용자의 활성화 지시(enabling indication)를 검출한 후에만 공중 제스처 검출 기능을 활성화한다. 활성화 지시는 사용자의 음성 지시, 사용자가 모바일 폰의 물리적인 버튼을 누르는 작동, 사용자가 터치스크린 상에서 수행하는 터치 작동, 사용자가 모바일 폰을 흔드는 작동 등일 수 있다.
예를 들어, 스크린 오프 상태에서, 모바일 폰의 터치스크린은 콘텐츠를 디스플레이하지 않지만, 터치스크린의 터치 기능은 활성화된다. 사용자의 손가락이 터치스크린 상에서 슬라이드될 때, 터치스크린은 콘텐츠를 디스플레이하기 시작하고, 디스플레이되는 콘텐츠는 터치스크린 상에서 사용자의 슬라이딩 제스처 궤적(sliding gesture track)이다. 도 4a를 참조하면, 사용자가 터치스크린 상에서 원형 궤적(circular track)을 그리는 작동을 검출한 후, 모바일 폰은 궤적을 디스플레이하고, 공중 제스처 검출 기능을 활성화한다.
다른 예를 들면, 도 4b를 참조하면, 스크린 온 상태에서, 사용자가 손가락 마디(knuckle)를 사용하여 터치스크린 상에 'g' 궤적을 그리는 작동을 검출한 후, 모바일 폰은 공중 제스처 검출 기능을 활성화한다.
일부 다른 실시예에서, 기본적으로, 모바일 폰은 스크린 온 상태에서 공중 제스처 검출 기능을 활성화하고, 스크린 오프 상태에서 공중 제스처 검출 기능을 비활성화한다. 스크린 오프 상태의 모바일 폰은 사용자의 활성화 지시를 검출한 후에만 공중 제스처 검출 기능을 활성화한다. 모바일 폰이 스크린 오프 상태이면, 사용자는 현재 모바일 폰을 작동하는 것을 예상하지 못할 수 있다. 모바일 폰은 사용자의 활성화 지시를 검출한 후 공중 제스처 검출 기능을 활성화하여, 공중 제스처로 인한 오작동을 방지하고 작동 정확도를 향상시킨다.
일부 다른 실시예에서, 모바일 폰은 기본적으로 스크린 온 상태에서 공중 제스처 검출 기능을 활성화하고, 스크린 오프 상태로 스위칭한 후 공중 제스처 검출 기능을 계속해서 활성화할지를 사용자에게 프롬프트한다(prompt). 사용자의 활성화 지시를 검출한 후 모바일 폰은 계속해서 공중 제스처 검출 기능을 활성화한다.
공중 제스처 검출 기능이 활성화될 때, 모바일 폰은 사용자의 공중 제스처 검출, 공중 제스처의 데이터 정보 수집, 데이터 정보에 기반한 제스처 정보 획득, 제스처 정보에 기반한 제스처 유형 식별, 범용 입력 이벤트 생성과 같은 처리를 수행할 수 있다.
기술적인 솔루션에서, 공중 제스처 검출 기능이 활성화된 후, 모바일 폰은 사용자가 공중 제스처 작동을 수행하는지에 관계없이, 데이터 수집, 수집된 데이터에 기반한 제스처 유형 식별, 범용 입력 이벤트 생성과 같은 처리를 계속해서 수행한다.
또 다른 기술적 솔루션에서, 공중 제스처 검출 기능이 활성화된 후, 모바일 폰이 사용자가 공중 제스처를 트리거(또는 사용자가 공중 제스처 검출을 트리거)한 것으로 결정하면, 모바일 폰은 사용자의 공중 제스처에 대한 데이터 정보를 수집, 데이터 정보에 기반하여 제스처 유형을 식별, 범용 입력 이벤트를 생성하는 것과 같은 처리를 수행한다. 모바일 폰은 사용자가 공중 제스처를 트리거하는 것을 검출하기 전에, 수집된 데이터 정보에 기반하여 제스처 유형을 식별하는 것과 같은 처리를 수행하지 않으며, 이에 따라 모바일 폰의 컴퓨팅 리소스를 절약할 수 있다. 이 솔루션을 예로 들어 설명하면 다음과 같다.
일부 실시예에서, 모바일 폰이 사용자의 손을 검출하고 사용자의 손이 모바일 폰과 접촉하지 않은 것으로 결정하면, 모바일 폰은 사용자가 공중 제스처를 트리거하는 것으로 결정할 수 있다.
모바일 폰이 손이 등장하는지(appear)를 검출하는 방법은 여러 가지가 있을 수 있다. 예를 들어, 일 솔루션에서, 카메라를 사용하여 손이 등장하는지를 검출할 때, 모바일 폰은 신경망 알고리즘을 사용하여 카메라가 수집한 사진을 식별한다. 신경망 알고리즘은 사전에 훈련된다. 훈련 중에 많은 수량의 손 사진과 많은 수량의 손 레이블(label)이 신경망에 입력된다. 카메라에서 수집한 사진이 훈련된 신경망에 입력된 후 신경망에서 출력된 레이블이 손의 레이블이면, 모바일 폰은 사용자의 손이 검출된 것으로 결정한다. 또한, 신경망이 훈련될 때, 손바닥(palm)의 일부를 포함하는 많은 수량의 사진(예를 들어, 하나 이상의 손가락 끝(fingertip)을 포함하는 손 사진)이 사전에 신경망에 입력될 수 있다. 이와 같이 손이 상대적으로 카메라에 가깝기 때문에 손바닥을 부분적으로만 촬영할 수 있을 때, 모바일 폰은 신경망을 사용하여 손을 정확하게 식별할 수 있다.
카메라를 사용하여 손의 등장하는지를 검출할 때 다른 솔루션에서는 손의 모델을 모바일 폰에 설정하고, 모바일 폰은 카메라에서 수집한 손의 사진과 손의 모델을 매칭한다. 유사도가 70%보다 크거나 같으면, 모바일 폰은 손이 검출된 것으로 결정한다.
다른 예를 들어, 적외선 센서를 사용하여 손의 등장하는지를 검출할 때, 적외선 방사체(infrared emitter)가 적외선을 방출하고, 검출된 타깃에 의해 적외선이 반사될 수 있다. 검출된 타깃의 반사를 통해 획득된 적외선 에너지 분포 그래프는 적외선 검출기의 감광 소자에 반사되어 적외선 열 그래프를 획득할 수 있다. 열 그래프는 객체 표면의 열 분포 필드에 대응한다. 서로 다른 검출 대상의 표면은 서로 다른 열 분포 필드에 대응한다. 검출된 타깃의 열 그래프가 손 표면의 열 분포 필드와 매칭할 때, 모바일 폰은 사용자의 손이 검출된 것으로 결정할 수 있다.
일부 다른 실시예에서, 공중 제스처의 잘못된 검출 이벤트를 줄이기 위해 검출 정책이 모바일 폰에 추가로 구성될 수 있다. 예를 들어, 검출 정책에서, 손이 모바일 폰에 접촉하지 않고 손과 모바일 폰 사이의 거리가 미리 설정된 값 1(예를 들어, 20cm)보다 작거나 같을 때, 모바일 폰은 사용자가 공중 제스처를 트리거하는 것으로 결정할 수 있다. 손과 모바일 폰 사이의 거리가 미리 설정된 값 1보다 클 때, 모바일 폰은 사용자가 공중 제스처를 트리거하지 않는 것으로 간주할 수 있다.
다른 예를 들어, 다른 검출 정책에서, 모바일 폰에 손이 접촉하지 않고 모바일 폰이 검출한 손의 면적(area)이 미리 설정된 값 2(예를 들어, 9cm2)보다 크거나 같을 때, 모바일 폰은 사용자가 공중 제스처를 트리거하는 것으로 결정할 수 있다. 검출된 손의 면적이 미리 설정된 값 2보다 작을 때, 모바일 폰은 사용자가 공중 제스처를 트리거하지 않는 것으로 간주할 수 있다.
손과 모바일 폰 사이의 거리는 손의 일부(예를 들어, 손의 무게 중심, 집게손가락 끝 또는 모바일 폰에서 처음으로 검출한 손의 일부)와 모바일 폰의 일부(예를 들어, 터치스크린의 중앙 위치) 사이의 거리 일 수 있으며; 또는 손의 일부와 모바일 폰의 터치스크린이 위치한 평면 사이의 수직 거리일 수 있으며; 또는 다른 거리일 수 있다. 이것은 본 출원의 이 실시예에서 제한되지 않는다.
모바일 폰은 사용자가 공중 제스처를 트리거하는 것을 검출하면, 모바일 폰은 공중 제스처의 데이터 정보를 수집할 수 있다. 공중 제스처의 데이터 정보는 공중 제스처의 작동 프로세스에서 검출 컴포넌트에 의해 수집된 데이터이다.
예를 들어, 검출 컴포넌트가 카메라일 때, 공중 제스처의 데이터 정보는 카메라에 의해 수집되면서 또한 사용자의 손을 포함하는 사진일 수 있고; 또는, 검출 컴포넌트가 적외선 센서일 때, 공중 제스처의 데이터 정보는 적외선 센서가 손을 검출할 때 적외선의 방출 데이터, 반사 데이터 등일 수 있다.
구체적으로, 모바일 폰은 공중 제스처가 트리거된 후 그리고 공중 제스처가 종료되기 전에 공중 제스처의 데이터 정보를 지속적으로 수집할 수 있다. 모바일 폰이 공중 제스처가 종료되는 것으로 결정하는 데에는 복수의 방식이 있을 수 있다. 예를 들어, 일 실시예에서, 모바일 폰이 더 이상 사용자의 손을 검출하지 않을 때, 모바일 폰은 공중 제스처가 종료되는 것으로 결정한다.
다른 예를 들어, 다른 실시예에서, 손과 모바일 폰 사이의 거리가 미리 설정된 값 3(예를 들어, 20cm)보다 크거나 같은 것으로 결정할 때, 모바일 폰은 공중 제스처가 종료된 것으로 결정할 수 있다. 또 다른 실시예에서, 사용자에 의해 송신된 "공중 제스처 종료" 음성을 검출한 후, 모바일 폰은 공중 제스처가 종료된 것으로 결정한다. 또 다른 실시예에서, 사용자의 종료 제스처를 검출한 후, 모바일 폰은 공중 제스처가 종료된 것으로 결정한다. 예를 들어, 종료 제스처는 'V' 제스처이고, 공중 제스처는 손을 위쪽으로 흔드는 제스처이다. 손을 위쪽으로 흔드는 공중 제스처를 완료한 후, 사용자는 "V" 제스처를 만들어 공중 제스처가 완료되었음을 지시한다.
예를 들어, 검출 컴포넌트는 카메라이다. 카메라는 상대적으로 낮은 프레임 레이트(예를 들어, 10fps(frames per second))로 사진을 촬영하여, 손이 사진에 등장하는지에 따라 공중 제스처가 트리거되는지를 판정할 수 있다. 카메라가 촬영된 사진에 손이 등장한 것으로 결정한 후, 모바일 폰은 공중 제스처가 트리거된 것으로 결정한다. 그러면, 카메라는 상대적으로 높은 프레임 레이트(예를 들어, 60fps)로 사진을 촬영하여 사용자의 공중 제스처에 대한 데이터 정보를 수집할 수 있다.
예를 들어, 도 5a 내지 도 5d에 도시된 바와 같이, 사용자가 손을 위쪽으로 흔드는 프로세스에서, 카메라에 의해 수집되는 데이터 정보는 도 5e의 (a) 내지 도 5e의 (d)에서 손의 자세와 모션 상태가 동적으로 변화하는 사진 세트일 수 있다. 카메라로 촬영한 사진에 더 이상 손이 포함되지 않을 때, 모바일 폰은 공중 제스처가 종료된 것으로 결정하고, 상대적으로 낮은 프레임 레이트로 사진을 계속 촬영하여 공중 제스처가 트리거되는지를 추가로 검출할 수 있다.
그다음, 모바일 폰은 수집된 공중 제스처 데이터 정보에 기반하여 공중 제스처의 제스처 정보를 획득할 수 있다. 제스처 정보는 공중 제스처의 자세, 모션 상태 등의 정보를 지시하는 데 사용된다. 예를 들어, 제스처 정보는 자세, 모양, 이동 거리, 이동 방향, 이동 속도, 이동 궤적 또는 손의 위치와 순간(moment) 사이의 대응 관계 중 임의의 하나 이상을 포함한다.
모바일 폰은 복수의 방법을 사용하여 제스처 정보에서 손의 자세나 모양 등과 같은 정적 특징을 결정할 수 있다. 예를 들어, 모바일 폰에서 신경망 알고리즘을 사용하여 손의 자세나 모양과 같은 정적 특징을 결정한다. 신경망이 훈련될 때, 다양한 서로 다른 자세와 모양을 가지는 손의 사진과 대응하는 레이블이 사전에 신경망에 입력된다. 훈련된 신경망을 사용하여 카메라가 수집한 사진을 처리할 때, 서로 다른 손의 자세 및 모양과 같은 정적 특징을 식별할 수 있다.
다른 예를 들어, 자세 및 모양과 같은 정적 특징이 서로 다른 손의 표면의 열 분포 필드가 상이하다. 모바일 폰은 검출된 타깃의 열 그래프와 자세 및 모양과 같은 서로 다른 미리 설정된 정적 특징을 가진 손의 표면의 열 분포 필드 사이의 매칭 상태에 기반하여, 손의 자세 및 모양과 같은 서로 다른 정적 특징을 식별할 수 있다.
예를 들어, 도 5e의 (a) 내지 도 5e의 (d)에 도시된 사진 세트에 대응하는 공중 제스처의 경우, 모바일 폰에 의해 획득된 제스처 정보는: 손의 모양이 손의 측면(side face)인 것; 이동 시작 위치가 (x1, y1)인 것; 이동 종료 위치가 (x2, y2)인 것; 이동 거리가 10cm인 것; 이동 방향이 아래에서 위로인 것; 이동 궤적이 (x1, y1),(x3, y3),(x4, y4), ..,(x2, y2)인 것; (x1, y1)에서 손의 자세가 손의 측면의 측방향 확장(lateral extension)인 것; (x2, y2)에서 손의 자세가 손의 기울어진 측면(inclined side face)인 것; (x3, y3)에서 손의 자세가 대략적으로 손 측면의 수직 확장인 것; 순간과 위치 사이의 대응 관계 등을 포함할 수 있다.
공중 제스처의 제스처 정보를 획득한 후, 일 실시예에서, 모바일 폰은 제스처 정보에 기반하여 제스처를 식별하여, 공중 제스처의 제스처 유형을 획득할 수 있다.
공중 제스처의 제스처 유형은 정적 제스처의 제스처 유형 및 동적 제스처의 제스처 유형을 포함할 수 있지만, 이에 제한되지 않는다. 예를 들어, 정적 제스처의 제스처 유형은 OK 제스처 유형, V 제스처 유형 또는 다섯 손가락을 펴는(spreading) 제스처 유형을 포함할 수 있고, 동적 제스처의 제스처 유형은 흔들기(waving)(예를 들어, 상향(upward), 하향(downward), 좌측(leftward) 또는 우측(rightward)으로 흔들기), 병진 이동(translational moving), 슬래핑(slapping), 클러칭(clutching) 또는 풀기(loosening)와 같은 다양한 유형을 포함할 수 있다.
모바일 폰은 자세, 모양, 이동 거리, 이동 방향, 이동 속도, 이동 궤적 또는 손의 위치와 순간 사이의 대응 관계와 같은 제스처 정보에 기반하여, 공중 제스처의 제스처 유형을 결정할 수 있다. 예를 들어, 모바일 폰은 손의 자세 및 모양과 같은 정적 특징을 결정한 후, 정적 특징에 기반하여 정적 제스처의 제스처 유형을 결정할 수 있다. 동적 제스처의 경우, 모바일 폰은 상이한 순간의 손의 자세 및 모양과 같은 정적 특징 및/또는 손의 이동 거리, 이동 방향, 이동 속도와 같은 모션 상태에 기반하여, 동적 제스처의 제스처 유형을 결정할 수 있다.
상이한 사용자는 동일한 제스처 유형에서 공중 제스처에 대해 상이한 작동을 할 수 있지만, 공중 제스처의 기능은 기본적으로 일관성이 있다는 점에 유의해야 한다. 모바일 폰은 상이한 사용자가 만든 동일한 제스처 유형에서 공중 제스처를 식별할 수 있다.
예를 들어, 도 5e의 (a) 내지 도 5e의 (d)에 도시된 사진 세트로부터 획득된 제스처 정보의 경우, 모바일 폰은 제스처 정보에 기반하여 초기에 손바닥과 손목이 수평이고 손가락 끝이 우측에 있다가 그다음 손목이 기본적으로 이동하지 않고 손바닥이 위쪽으로 회전한다고 결정하여, 대응하는 제스처 유형이 상향 흔들기(upward wave)인 것으로 결정할 수 있다.
일부 실시예에서, 모바일 폰이 제스처 정보와 매칭하는 제스처 유형이 없다고 결정하면, 모바일 폰은 유효한 공중 제스처가 식별되지 않는 것으로 결정한다. 이와 같이, 모바일 폰은 음성, 진동, 터치스크린에 프롬프트 정보를 디스플레이하기 등의 방식으로, 현재의 공중 제스처가 효과가 없음(ineffective)을 사용자에게 프롬프트할 수 있다. 다르게는, 사용자는 현재 사용 중인 애플리케이션 또는 이전에 모바일 폰에 의해 학습 및 기록된 사용자 습관에 기반하여, 사용자가 올바른 공중 제스처를 취할 것을 예상하는지에 대해 프롬프트를 받을 수 있거나, 또는 사용자가 모바일 폰이 작동을 수행하기를 예상하는지에 대해 사용자에게 프롬프트될 수 있다.
예를 들어, 모바일 폰은 음성을 사용하여 사용자에게 "공중 제스처는 효과가 없습니다", "올바른 공중 제스처를 취해 주십시오"를 프롬프트한다. 다른 예를 들면, 도 6a를 참조하면, 모바일 폰은 터치스크린 상에 프롬프트 정보(601): "현재 공중 제스처는 효과가 없습니다", "손을 위쪽으로 흔드시겠습니까?"를 디스플레이할 수 있다. 모바일 폰이 사용자에 의해 입력된 "예"의 음성 지시를 검출하면, 모바일 폰은 손의 상향 흔들기의 제스처에 기반하여 본 출원의 이 실시예에서 후속 단계를 수행한다.
다른 예를 들면, 도 6b를 참조하면, 모바일 폰은 터치스크린 상에 프롬프트 정보(602): "현재 공중 제스처는 효과가 없습니다", "페이지를 위쪽으로 슬라이딩하겠습니까?"를 디스플레이할 수 있다. 모바일 폰이 사용자에 의해 입력된 "예"의 음성 지시를 검출하거나 사용자의 컨트롤(603)을 탭하는 작동을 검출하면, 모바일 폰은 페이지를 위쪽으로 슬라이드한다.
다른 예를 들면, 도 6c 또는 도 6d를 참조하면, 모바일 폰은 사용자가 사용할 것으로 예상되는 공중 제스처의 텍스트 정보(604) 및/또는 픽토그램(pictogram) 정보(605)를 터치스크린 상에 디스플레이할 수 있다.
다른 예로, 모바일 폰은 현재 애플리케이션 인터페이스가 응답할 수 있는 범용 입력 이벤트에 대응하는 공중 제스처의 텍스트 정보 및/또는 픽토그램 정보를 터치스크린 상에 디스플레이할 수 있다.
다른 예로, 모바일 폰은 현재 효과가 없는 공중 제스처와 유사한 효과적인(effective) 공중 제스처의 텍스트 정보 및/또는 픽토그램 정보를 터치스크린 상에 디스플레이할 수 있다.
다른 예로, 모바일 폰은 가장 많이 사용되는 하나 이상의 효과적인 공중 제스처의 텍스트 정보 및/또는 픽토그램 정보를 터치스크린 상에 디스플레이할 수 있다.
제스처 유형을 결정한 후, 모바일 폰은 제스처 유형에 기반하여 대응하는 범용 입력 이벤트를 생성할 수 있다. 범용 입력 이벤트는 일반적으로 운영체제에 의해 정의되며, 사용자가 모바일 폰의 터치스크린을 터치하는 경우를 시뮬레이션하여 생성할 수 있다. 시스템 애플리케이션과 제3자 애플리케이션 모두 입력 이벤트에 직접 응답할 수 있다. 예를 들어, 제스처 유형과 범용 입력 이벤트 사이의 대응 관계가 모바일 폰에 미리 설정되어 있다. 모바일 폰은 대응 관계에 기반하여 제스처 유형에 대응하는 범용 입력 이벤트를 결정하여 범용 입력 이벤트를 생성할 수 있다. 구체적으로, 모바일 폰의 애플리케이션 프레임워크 계층은 대응 관계에 기반하여 제스처 유형에 대응하는 범용 입력 이벤트를 결정하고, 범용 입력 이벤트를 애플리케이션 계층에 보고하여 범용 입력 이벤트를 생성할 수 있다.
예를 들어, 제스처 유형과 범용 입력 이벤트의 대응 관계는 표 1을 참조할 수 있다. 흔들기 제스처 유형은 슬라이딩 이벤트에 대응한다. 여기서, 도 5a 내지 도 5d에 도시된 상향 흔들기(upward wave)의 제스처 유형은 상향 슬라이딩(upward sliding) 이벤트에 대응하고, 좌측 흔들기(leftward wave)의 제스처 유형은 좌측 슬라이딩(leftward sliding) 이벤트에 대응하며, 방향에서의 흔들기의 제스처 유형은 방향에서의 슬라이딩 이벤트에 대응한다.
표 1과 같이 슬랩(slap)(손바닥을 모바일 폰을 향해 이동) 제스처 유형은 태핑(tapping) 이벤트에 대응한다. 하나의 슬랩의 제스처 유형은 단일 태핑 이벤트에 대응하고, 미리 설정된 지속 기간에서의 2개의 연속적인 슬랩의 제스처 유형은 더블 태핑 이벤트에 대응하며, 빠른(fast) 슬랩의 제스처 유형은 누르기(press) 이벤트(즉, 누르는 강도가 미리 설정된 임계값보다 크거나 같음)에 대응한다.
다른 예로, 표 1을 참조하면 OK 제스처 유형은 단일 태핑 이벤트에 대응한다. 시스템 애플리케이션 및 제3자 애플리케이션은 상향 슬라이딩 이벤트, 좌측 슬라이딩 이벤트 또는 단일 태핑 이벤트와 같은 범용 입력 이벤트에 응답할 수 있으며, 즉 공중 제스처에 직접 응답할 수 있다.
제스처 유형 범용 입력 이벤트
흔들기 상향 흔들기 슬라이딩 이벤트 상향 슬라이딩 이벤트
좌측 흔들기 좌측 슬라이딩 이벤트
... ...
병진 이동 하향 병진 이동 슬라이딩 이벤트 하향 슬라이딩 이벤트
우측 병진 이동 우측 슬라이딩 이벤트
...
슬랩 한번의 슬랩 태핑 이벤트 단일 태핑 이벤트
미리 설정된 지속기간 내에서 두 번의 연속적인 슬랩 더블 태핑 이벤트
빠른 슬랩 누르기 이벤트
... ...
OK 제스처 단일 태핑 이벤트
... ...
모바일 폰에 미리 설정되어 있는 제스처 유형에 대응하는 범용 입력 이벤트는 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술될 수 있다. 예를 들어, 범용 입력 이벤트와 다운 이벤트, 업 이벤트 및/또는 이동 이벤트 각각의 대응 관계는 모바일 폰에 미리 설정될 수 있다. 슬라이딩 이벤트는 다운 이벤트, 이동 이벤트, 업 이벤트로 기술될 수 있다. 태핑 이벤트는 다운 이벤트와 업 이벤트를 사용하여 기술될 수 있다. 예를 들어, 상향 슬라이딩 이벤트는 다운 이벤트를 수신하고, 일련의 이동 이벤트를 수신하며, 최종적으로 업 이벤트를 수신하는 것으로 기술될 수 있다. 여기서, 이동 이벤트에 의해 기술되는 이동 방향은 상향 이동(upward move)이다.
다른 실시예에서, 모바일 폰은 범용 입력 이벤트와 정적 제스처의 제스처 유형 사이의 대응 관계 그리고 범용 입력 이벤트와 동적 제스처의 제스처 유형 사이의 대응 관계를 별도로 저장할 수 있다. 사용자는 공중 제스처가 정적 제스처인지 동적 제스처인지를 추가로 지시(예를 들어, 음성으로 지시)할 수 있다. 모바일 폰은 사용자가 지시하는 공중 제스처가 정적 제스처임을 검출할 때, 범용 입력 이벤트와 정적 제스처의 제스처 유형 사이의 대응 관계에 기반하여 대응하는 범용 입력 이벤트를 결정한다. 모바일 폰은 사용자가 지시하는 공중 제스처가 동적 제스처임을 검출할 때, 범용 입력 이벤트와 동적 제스처의 제스처 유형 사이의 대응 관계에 기반하여 대응하는 범용 입력 이벤트를 결정하여, 공중 제스처와 범용 입력 이벤트 간의 매칭 정확도 및 매칭 효율성을 개선한다.
다른 실시예에서, 모바일 폰은 제스처 유형을 결정한 후 제스처 유형에 기반하여 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 범용 입력 이벤트를 생성할 수 있다. 예를 들어, 제스처 유형과 다운 이벤트, 업 이벤트 및/또는 이동 이벤트 각각의 대응 관계는 모바일 폰에 미리 설정될 수 있다. 흔들기 제스처 유형은 다운 이벤트, 이동 이벤트, 업 이벤트의 조합으로 기술된 범용 입력 이벤트에 대응할 수 있다. 슬랩 제스처 유형은 다운 이벤트와 업 이벤트를 조합하여 기술된 범용 입력 이벤트에 대응할 수 있다. OK 제스처 유형은 다운 이벤트와 업 이벤트를 조합하여 기술된 범용 입력 이벤트에 대응할 수 있다. 시스템 애플리케이션 및 제3자 애플리케이션은 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 범용 입력 이벤트에 직접 응답할 수 있으며, 즉, 공중 제스처에 응답할 수 있다. 구체적으로, 모바일 폰의 애플리케이션 프레임워크 계층은 제스처 유형에 기반하여 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 범용 입력 이벤트를 결정하고, 범용 입력 이벤트를 애플리케이션 계층에 보고하여, 범용 입력 이벤트를 생성할 수 있다.
예를 들어, 제스처 유형이 세 손가락 누르기(three-finger pressing)일 때, 모바일 폰은 세 손가락 누르기에 기반하여 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 다점 터치 이벤트(multi-point touch event)(즉, 범용 입력 이벤트)를 생성할 수 있다. 달리 말하면, 서로 다른 위치에서 복수의 다운 이벤트가 동시에 수신되고, 그다음 서로 다른 위치에서 업 이벤트가 수신된다.
다른 예로, 제스처 유형이 세 손가락 하향 이동일 때, 모바일 폰은 다운 이벤트, 업 이벤트, 및/또는 이동 이벤트를 사용하여 기술된 다점 하향 슬라이딩 이벤트(즉, 범용 입력 이벤트)를 생성할 수 있다. 다른 예를 들어, 제스처 유형이 클러칭일 때, 모바일 폰은 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 클러칭 이벤트(즉, 범용 입력 이벤트)를 생성할 수 있다.
다른 예로, 제스처 유형이 풀기일 때, 모바일 폰은 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 확장(extension) 이벤트(즉, 범용 입력 이벤트)를 생성할 수 있다.
다른 실시예에서, 손의 이동의 진폭 및 속도와 같은 상이한 특징에 기반하여, 공중 제스처는 다른 제스처 유형을 더 포함할 수 있다. 모바일 폰은 추가로, 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술되면서 또한 다른 제스처 유형에 대응하는 범용 입력 이벤트를 생성할 수 있다.
예를 들어, 다른 제스처 유형은 큰 진폭의(large-amplitude) 상향 흔들기와 빠른 상향 흔들기를 더 포함할 수 있다. 제스처 유형이 큰 진폭의 상향 흔들기일 때, 모바일 폰은 이에 대응하여 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 장거리(long-distance) 상향 슬라이딩 이벤트(즉, 범용 입력 이벤트)를 생성할 수 있다. 제스처 유형이 빠른 상향 흔들기일 때, 모바일 폰은 이에 대응하여 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 빠른 상향 슬라이딩 이벤트(즉, 범용 입력 이벤트)를 생성할 수 있다. 모바일 폰은 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술된 장거리 상향 슬라이딩 이벤트, 빠른 상향 슬라이딩 이벤트 등에 직접 응답할 수 있으며, 즉, 공중 제스처에 응답할 수 있다.
제스처 유형에 대응하는 범용 입력 이벤트가 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 기술될 때, 예를 들어, 이동 이벤트에서 손의 오프셋과 이동 거리 사이에 미리 설정된 비례 관계가 존재할 수 있다. 상향 흔들기에서 손의 오프셋이 미리 설정된 값 4(예를 들어, 15cm)보다 클 때, 공중 제스처는 큰 진폭의 상향 흔들기의 제스처이다. 공중 제스처에 대응하는 이동 이벤트에서 이동 거리 합이 미리 설정된 값 5(예를 들어, 3cm)보다 클 때, 이동 이벤트를 사용하여 기술되는 범용 입력 이벤트는 장거리 상향 슬라이딩 이벤트이다.
다른 예를 들어, 손의 상향 흔들기의 이동 속도가 미리 설정된 값 6(예를 들어, 1m/s)보다 클 때, 공중 제스처는 빠른 상향 흔들기의 제스처이다. 공중 제스처에 대응하는 이동 이벤트의 이동 속도가 미리 설정된 값 7(예를 들어, 5cm/s)보다 클 때, 이동 이벤트를 사용하여 기술되는 범용 입력 이벤트는 빠른 슬라이딩 이벤트이다.
제스처 형태에 기반하여 모바일 폰에 의해 생성되는 범용 입력 이벤트는 사용자가 실제로 모바일 폰을 터치하여 작동할 때 생성되는 입력 이벤트이기 때문에, 모바일 폰은 사용자의 실제 터치 작동으로 공중 제스처를 시뮬레이션하여, 사용자의 실제 터치 작동에 대응하는 범용 입력 이벤트를 생성함을 유의해야 한다.
범용 입력 이벤트를 생성한 후, 모바일 폰은 관련 애플리케이션을 사용하여 범용 입력 이벤트에 응답할 수 있다. 관련 애플리케이션은 포그라운드 애플리케이션일 수 있고, 포그라운드 애플리케이션과 관련된 애플리케이션, 예를 들어 현재 애플리케이션이 점프하는 다른 애플리케이션일 수 있다.
구체적으로, 관련 애플리케이션은 미리 설정된 정책에 따라 범용 입력 이벤트에 응답할 수 있다. 예를 들어, 사용자가 브라우저를 사용하여 웹 페이지를 브라우징하고 손을 위로 흔드는, 도 5a 내지 도 5d에서의 시나리오에서, 상향 흔들기의 제스처 유형에 기반하여 상향 슬라이딩 이벤트를 생성한다. 도 7에 도시된 바와 같이, 상향 슬라이딩 이벤트에 응답하여 브라우저 애플리케이션은 페이지를 위로 스크롤(scroll)할 수 있다. 스크롤링 페이지 길이는 터치스크린 높이의 1/3이다. 장거리 상향 슬라이딩 이벤트 및 빠른 상향 슬라이딩 이벤트에 응답하여 브라우저 애플리케이션도 페이지를 위로 스크롤할 수 있다. 스크롤링 페이지 길이는 각각 터치스크린 높이의 2/3 및 터치스크린 높이일 수 있다.
다른 예를 들면, 사용자가 브라우저를 사용하여 웹 페이지를 브라우징하고 손을 위쪽으로 과도기적으로(transitionally) 이동시키는 도 5f의 시나리오에서, 모바일 폰은 상향 병진 이동의 제스처 유형에 기반하여 상향 슬라이딩 이벤트를 생성한다. 도 7에 도시된 바와 같이, 브라우저는 상향 슬라이딩 이벤트에 응답하여 페이지를 위로 스크롤한다.
다른 예로, 사용자가 브라우저를 사용하여 웹페이지를 브라우징하는 시나리오에서, 공중 제스처가 손의 하향 흔들기 또는 손의 하향 병진 이동이면, 모바일 폰은 하향 흔들기 또는 병진 하향 이동의 제스처 유형을 기반으로 하향 슬라이딩 이벤트를 생성한다. 브라우저 애플리케이션은 하향 슬라이딩 이벤트에 응답하여 페이지를 아래로 스크롤할 수 있다.
다른 예를 들면, 도 8a에 도시된 음악 재생 시나리오에서, 공중 제스처는 사용자의 손바닥이 모바일 폰을 향해 1회 누르는 것(또는 손바닥이 모바일 폰에 접근하거나 손바닥이 모바일 폰을 향하여 두드리는 것)이고, 범용 입력 이벤트는 단일 태핑 이벤트이며, 음악 플레이어의 현재 인터페이스 상의 복수의 컨트롤은 예를 들어 이전 컨트롤(Previous control), 일시 중지 컨트롤(Pause control) 및 다음 컨트롤(Next control)과 같은 단일 태핑 이벤트에 응답할 수 있다. 기술적 솔루션에서, 미리 설정된 정책에 따라, 미리 설정된 위치에 있는 컨트롤(예를 들어, 터치스크린의 맨 왼쪽에 있는 이전 컨트롤)이 단일 태핑 이벤트에 응답할 수 있다. 또 다른 기술적 솔루션에서, 미리 설정된 정책에 따라, 미리 설정된 컨트롤(예를 들어, 일시 중지 컨트롤(801))이 태핑 이벤트에 응답할 수 있다. 일시 정지의 개략도는 도 8b를 참조한다.
또 다른 기술적 솔루션에서, 미리 설정된 정책에 따라, 모바일 폰은 추가로, 공중 제스처가 발생한 위치를 참조하여 범용 입력 이벤트에 응답할 수 있다. 예를 들어, 공중 제스처가 발생한 위치가 일시 중지 컨트롤에 가까울 때, 일시 중지 컨트롤은 단일 태핑 이벤트에 응답하며; 공중 제스처가 발생한 위치가 이전 컨트롤에 가까울 때, 이전 컨트롤은 단일 태핑 이벤트에 응답하고; 또는 공중 제스처가 발생한 위치가 다음 컨트롤에 가까울 때, 다음 컨트롤은 단일 태핑 이벤트에 응답한다. 예를 들어, 사용자의 손바닥이 모바일 폰을 향해 누르는 공중 제스처의 경우, 모바일 폰의 애플리케이션 인터페이스 상에 있으면서 또한 터치스크린 상에서 손의 무게 중심의 투영에 가장 가까운 일시 중지 컨트롤은, 단일 태핑 이벤트에 응답할 수 있다.
또 다른 기술적 솔루션에서, 미리 설정된 정책에 따라, 모바일 폰은 추가로, 포그라운드 실행 애플리케이션의 현재 상태를 참조하여 단일 태핑 이벤트에 응답할 수 있다. 예를 들어, 음악 플레이어의 현재 인터페이스는 재생 컨트롤을 포함한다. 음악 플레이어가 현재 음악 재생 상태에 있으면, 모바일 폰은 재생 컨트롤이 단일 태핑 이벤트에 응답할 때 음악 재생을 일시 중지한다. 음악 플레이어가 현재 음악 재생 상태가 아니면, 모바일 폰은 재생 컨트롤이 단일 태핑 이벤트에 응답할 때 음악을 재생한다.
다른 예를 들면, 도 8a에 도시된 음악 재생 시나리오에서, 공중 제스처가 사용자의 손을 우측으로 흔드는(또는 손의 우측 병진 이동) 제스처이면, 범용 입력 이벤트는 우측 슬라이딩 이벤트이고, 음악 플레이어는 우측 슬라이딩 이벤트에 응답하여 현재 음악의 재생 진행을 빨리 감기하며; 또는 공중 제스처가 사용자의 손을 좌측으로 흔드는(또는 손의 좌측 병진 이동) 제스처이면, 범용 입력 이벤트는 좌측 슬라이딩 이벤트이고, 음악 플레이어는 좌측 슬라이딩 이벤트에 응답하여 현재 음악의 재생 진행을 되감기한다.
모바일 폰이 공중 제스처에 기반하여 범용 입력 이벤트를 생성하고 이에 응답하는 시나리오는 위에서 열거한 브라우저 시나리오 및 음악 재생 시나리오에 한정되지 않고, 복수의 다른 사용 시나리오가 더 추가될 수 있음에 유의해야 한다.
예를 들어, 사용자가 도 9a에 도시된 틱톡(Tik Tok)에서 짧은 비디오를 재생하는 시나리오에서, 도 9b를 참조하면, 모바일 폰이 사용자가 손을 위쪽으로 흔드는(또는 손의 상향 병진 이동) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 상향 흔들기(또는 상향 병진 이동)인 것으로 결정하여, 대응하는 상향 슬라이딩 이벤트를 생성한다. 도 9c를 참조하면, 틱톡은 상향 슬라이딩 이벤트에 응답하여 또 다른 짧은 비디오를 재생한다.
모바일 폰이 사용자의 손을 아래로 흔드는(또는 손의 하향 병진 이동) 공중 제스처를 검출하면, 모바일 폰이 제스처 유형이 하향 흔들기(또는 하향 병진 이동)으로 결정하여, 대응하는 하향 슬라이딩 이벤트를 생성할 수 있다. 이 경우, 틱톡은 하향 슬라이딩 이벤트에 응답하여 또 다른 짧은 비디오를 재생한다.
다른 예로서, 사용자가 도 10a에 도시된 틱톡에서 짧은 비디오를 재생하는 시나리오에서, 모바일 폰이 사용자의 손바닥이 모바일 폰을 향해 한번 누르는(또는 손바닥이 모바일 폰에 접근하거나 손바닥이 모바일 폰을 향해 슬랩) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 하나의 슬랩인 것으로 결정하여, 대응하는 단일 태핑 이벤트를 생성할 수 있다. 도 10b를 참조하면, 틱톡은 단일 태핑 이벤트에 응답하여 현재 짧은 비디오 재생을 일시 중지한다.
다른 예로, 사용자가 도 11a에 도시된 리더기(reader)를 사용하여 전자 문서를 읽는 시나리오에서, 도 11b를 참조하면, 모바일 폰이 사용자의 손을 좌측으로 흔드는(또는 손의 좌측 과도기적(transitional) 이동) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 좌측 흔들기(또는 좌측 과도기적 이동)인 것으로 결정하여, 대응하는 좌측 슬라이딩 이벤트를 생성할 수 있다. 도 11c를 참조하면, 리더기는 좌측 슬라이딩 이벤트에 응답하여 페이지를 앞으로 넘긴다.
모바일 폰이 사용자의 손을 우측으로 흔드는(또는 손의 우측 과도기적 이동) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 우측 흔들기(또는 우측 과도기적 이동)으로 결정하여, 대응하는 우측 슬라이딩 이벤트를 생성할 수 있다. 리더기는 우측 슬라이딩 이벤트에 응답하여, 페이지를 뒤로 넘긴다.
다른 예로, 모바일 폰이 도 12a에 도시된 위챗(WeChat)의 "콘택트(Contacts)" 기능에 대응하는 인터페이스를 디스플레이하는 시나리오에서, 도 12b를 참조하면, 모바일 폰이 사용자의 손을 우측으로 흔드는(또는 손의 우측 과도기적 이동) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 우측 흔들기(또는 우측 과도기적 이동)인 것으로 결정하여, 대응하는 우측 슬라이딩 이벤트를 생성한다. 도 12c를 참조하면, 위챗(WeChat)은 우측 슬라이딩 이벤트에 응답하여 "메시지(Messages)" 기능에 대응하는 인터페이스를 디스플레이한다.
도 12a에 도시된 바와 같이, 모바일 폰이 사용자가 손을 좌측으로 흔드는(또는 손의 좌측 과도기적 이동) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 좌측 흔들기(또는 좌측 과도기적 이동)인 것으로 결정하여, 대응하는 좌측 슬라이딩 이벤트를 생성할 수 있다. 이 경우, 위챗은 좌측 슬라이딩 이벤트에 응답하여 "발견(Discovery)" 기능에 대응하는 인터페이스를 디스플레이한다.
또한, 도 12a에 도시된 바와 같이, 위챗은 추가로 상향 슬라이딩 이벤트 또는 하향 슬라이딩 이벤트에 응답하여, 페이지를 스크롤할 수 있다.
다른 예를 들면, 도 13a 및 도 13b에 도시된 바와 같이, 사용자가 갤러리(또는 앨범)를 사용하여 사진을 브라우징하는 시나리오에서, 모바일 폰이 사용자의 주먹의 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 클러칭임을 결정하여, 대응하는 클러칭 이벤트를 생성할 수 있다. 도 13c를 참조하면, 갤러리는 클러칭 이벤트에 응답하여 사진을 축소한다(scale down).
모바일 폰이 사용자가 손을 우측으로 흔드는 공중 제스처를 검출하면 모바일 폰은 제스처 유형이 우측 흔들기인 것으로 결정하여 대응하는 우측 슬라이딩 이벤트를 생성할 수 있다. 갤러리는 우측 슬라이딩 이벤트에 응답하여 이전 사진을 디스플레이한다. 모바일 폰이 사용자가 손을 좌측으로 흔드는 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 좌측 흔들기인 것으로 결정하여 대응하는 좌측 슬라이딩 이벤트를 생성할 수 있다. 갤러리는 좌측 슬라이딩 이벤트에 응답하여 다음 사진을 디스플레이한다.
다른 예로, 사용자가 유튜브(YouTube) 플레이어를 사용하여 비디오를 재생하는 시나리오에서, 모바일 폰은 공중 제스처에 기반하여 비디오의 재생 진행을 조정하고, 비디오를 재생하며, 재생을 일시 중지하고, 다른 비디오로 스위칭할 수 있다. 이는 음악 재생 시나리오와 유사하다.
또한, 모바일 폰이 공중 제스처가 사용자가 손을 위로 흔드는 제스처(또는 손의 상향 과도기적 이동)인 것을 검출할 때, 범용 입력 이벤트는 상향 슬라이딩 이벤트이다. 공중 제스처가 발생하는 위치가 모바일 폰의 오른쪽(right side)에 가까우면, 유튜브 플레이어가 상향 슬라이딩 이벤트에 응답하여 볼륨을 높인다. 공중 제스처가 발생하는 위치가 모바일 폰의 왼쪽(left side)에 가까우면 유튜브 플레이어가 상향 슬라이딩 이벤트에 응답하여 디스플레이 밝기를 높인다. 이와 유사하게, 유튜브 플레이어는 추가로, 사용자의 공중 제스처에 기반하여 볼륨을 낮추고 디스플레이 밝기를 낮출 수 있다.
다른 예로, 모바일 폰이 스크린의 인터페이스 1을 디스플레이하는 시나리오에서, 모바일 폰이 사용자가 손을 좌측으로 흔드는(또는 손의 좌측 과도기적 이동) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 좌측 흔들기(또는 좌측 과도기적 이동)인 것으로 결정하여, 대응하는 좌측 슬라이딩 이벤트를 생성할 수 있다. 모바일 폰은 좌측 슬라이딩 이벤트에 응답하여, 스크린의 인터페이스 2를 디스플레이한다. 모바일 폰이 사용자의 손을 우측으로 흔드는(또는 손의 우측 과도기적 이동) 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 우측 흔들기(또는 우측 과도기적 이동)인 것으로 결정하여, 대응하는 우측 슬라이딩 이벤트를 생성할 수 있다. 모바일 폰은 우측 슬라이딩 이벤트에 응답하여 스크린의 인터페이스 3을 디스플레이한다.
일부 다른 실시예에서, 모바일 폰이 임의의 인터페이스를 디스플레이할 때, 모바일 폰이 사용자의 주먹의 공중 제스처를 검출하면, 모바일 폰은 제스처 유형이 클러칭인 것으로 결정하여, 대응하는 더블 태핑 스크린 캡처 이벤트를 생성할 수 있다. 모바일 폰은 더블 태핑 화면 캡처 이벤트에 응답하여 현재 화면을 캡처하여 사진을 형성한다.
본 출원의 다른 실시예에서, 모바일 폰은 추가로 터치스크린 상에 작동 마크(operation mark)를 디스플레이하여, 터치스크린 상에서 사용자에 의해 수행되고 공중 제스처 또는 범용 입력 이벤트에 대응하는 실제 터치 작동을 시뮬레이션할 수 있으므로, 사용자에게 직관적인 시각적 경험을 제공한다. 작동 마크는 추가로, 모바일 폰이 응답하는 범용 입력 이벤트를 사용자에게 프롬프트하는 데 사용될 수 있다. 그러면, 모바일 폰은 관련 애플리케이션을 사용하여 범용 입력 이벤트에 응답할 수 있다. 작동 마크는 정적 마크일 수 있고 또는 동적 마크일 수 있다. 동적 마크는 프로세스 픽토그램일 수 있다.
기술적 솔루션에서, 범용 입력 이벤트와 작동 마크 사이의 대응 관계는 모바일 폰에 미리 설정되어 있다. 모바일 폰은 제스처 유형에 대응하는 범용 입력 이벤트에 기반하여 터치스크린 상에 작동 마크를 디스플레이하여, 사용자에 의해 터치스크린 상에서 수행되는 것이면서 또한 범용 입력 이벤트에 대응하는 실제 터치 작동을 시뮬레이션하고, 모바일 폰이 응답하는 범용 입력 이벤트를 사용자에게 프롬프트할 수 있다.
예를 들어, 도 5a 내지 도 5d에 도시된 공중 제스처를 검출한 후, 모바일 폰은 상향 흔들기의 제스처 유형이 상향 슬라이딩 이벤트에 대응하는 것으로 결정한다. 모바일 폰은 도 14에 도시된 작동 마크(1401)를 디스플레이할 수 있으며, 즉, 터치스크린 상에 상향 화살표(upward arrow)를 디스플레이하여, 터치스크린 상에서 사용자에 의해 수행되는 상향 슬라이딩 작동을 시뮬레이션하고, 상향 슬라이딩 이벤트가 응답되어야 함을 사용자에게 프롬프트할 수 있다. 이후, 상향 슬라이딩 작동에 응답하여, 모바일 폰은 페이지를 스크롤하여, 도 7에 도시된 인터페이스를 디스플레이할 수 있다.
다른 예를 들면, 도 15a 및 도 15b를 참조하면, 모바일 폰은 아래에서 위로 이동하는 손 모양(1501)을 터치스크린에 디스플레이하고, 손의 이동 궤적에 대응하는 상향 화살표(1502)를 디스플레이하여 사용자에 의해 터치스크린 상에서 수행되는 상향 슬라이딩 작동을 시뮬레이션할 수 있다. 그다음, 상향 슬라이딩 작동에 응답하여, 모바일 폰은 페이지를 스크롤하여 도 7에 도시된 인터페이스를 디스플레이할 수 있다.
다른 예로, 사용자의 손바닥이 도 10a에 도시된 모바일 폰을 향해 한 번 누르는 공중 제스처를 검출한 후, 모바일 폰은 하나의 슬랩의 제스처 유형이 단일 태핑 이벤트에 대응하는 것으로 결정하고, 도 16에 도시된 원형 마크(1601)를 디스플레이하여, 터치스크린 상에서 사용자의 단일 태핑 작동을 시뮬레이션하고, 사용자에게 모바일 폰이 단일 태핑 이벤트에 응답할 것임을 프롬프트한다. 그러면, 단일 태핑 작동에 응답하여, 모바일 폰은 현재의 짧은 비디오의 재생을 일시 정지하고, 도 10b에 도시된 인터페이스를 디스플레이한다.
또 다른 기술적 솔루션에서, 제스처 유형과 작동 마크 사이의 대응 관계가 모바일 폰에 미리 설정되어 있다. 모바일 폰은 제스처 유형에 기반하여 작동 마크를 터치스크린 상에 디스플레이하여, 사용자의 의해 터치스크린에서 수행되는 것이면서 또한 범용 입력 이벤트에 대응하는 실제 터치 작동을 시뮬레이션하고, 모바일 폰이 응답하는 범용 입력 이벤트를 사용자에게 프롬프트할 수 있다. 예를 들어, 모바일 폰은 상향 흔들기의 공중 제스처를 식별한 후, 도 14 그리고 도 15a 및 도 15b에 도시된 터치스크린 상에 작동 마크 또는 다른 작동 마크를 디스플레이할 수 있다.
또 다른 기술적 솔루션에서, 모바일 폰은 범용 입력 이벤트에서 다운 이벤트, 업 이벤트 및/또는 이동 이벤트에 기반하여 터치스크린 상에 작동 마크를 디스플레이하여, 터치스크린 상에서 사용자에 의해 수행되는 것이면서 또한 범용 입력 이벤트에 대응하는 실제 터치 작동을 시뮬레이션하고, 모바일 폰이 응답하는 범용 입력 이벤트를 사용자에게 프롬프트한다. 예를 들어, 범용 입력 이벤트에서 다운 이벤트에 대응하여 터치스크린은 손 모양을 디스플레이하고; 이동 이벤트에 대응하여 터치스크린 상의 손이 이동하고, 터치스크린은 방향 화살표와 함께 이동 궤적을 디스플레이하며; 그리고 업 이벤트에 대응하여, 터치스크린은 손의 모양 및 이동 궤적을 디스플레이하는 것을 중지한다.
본 출원의 다른 실시예에서, 공중 제스처의 제스처 정보가 획득된 후, 모바일 폰은 추가로, 제스처 정보에 기반하여, 다운 이벤트, 업 이벤트, 및/또는 이동 이벤트를 사용하여 조합된 범용 입력 이벤트를 생성할 수 있다. 시스템 애플리케이션과 제3자 애플리케이션은 다운 이벤트, 업 이벤트 및/또는 이동 이벤트에 직접 응답할 수 있으며, 즉, 다운 이벤트, 업 이벤트 및/또는 이동 이벤트를 사용하여 조합된 범용 입력 이벤트에 직접 응답하여 공중 제스처에 응답할 수 있다.
구체적으로, 제스처 정보와 다운 이벤트, 업 이벤트 및/또는 이동 이벤트 각각과의 매핑 관계를 결정하기 위해 미리 설정된 매핑 정책이 모바일 폰에 설정될 수 있다. 예를 들어 매핑 정책에서, 모바일 폰은 제스처 정보에 기반하여, 손이 등장하는 순간이 다운 이벤트가 발생하는 순간에 대응하고, 터치스크린(예를 들어, 터치스크린 상의(x0, y0)) 상의 미리 설정된 손 부분의 투영 위치(예를 들어, 손의 무게 중심, 집게손가락 끝 또는 모바일 폰이 처음으로 검출한 손의 일부)가 다운 이벤트가 발생하는 위치에 대응하는 것임을 검출한다. 손이 이동하면, 손이 이동하는 프로세스는 이동 이벤트가 발생하는 프로세스(즉, 일련의 이동 이벤트가 수신됨)에 대응하며, 손의 이동 거리와 이동 이벤트에서의 이동 거리 사이에 미리 정해진 비례 관계가 존재한다. 그다음, 모바일 폰이 손의 미리 설정된 부분을 더 이상 검출하지 못하는 순간은 업 이벤트가 발생한 순간에 대응하며, 마지막으로 터치스크린 상의 미리 설정된 부분의 투영 위치(예를 들어, 터치스크린 상의(x1, y1))는 업 이벤트가 발생하는 순간에 대응한다. 제스처 정보에 매핑하는 다운 이벤트, 업 이벤트 및/또는 이동 이벤트는 범용 입력 이벤트로 조합된다. 이러한 범용 입력 이벤트는 전술한 실시예에서 설명한 범용 입력 이벤트, 예를 들어 단일 태핑 이벤트, 상향 슬라이딩 이벤트, 클러칭 이벤트, 멀티 터치 이벤트, 빠른 상향 슬라이딩 이벤트일 수 있다.
전술한 실시예들은 주로 전자 디바이스가 모바일 폰인 예를 사용하여 설명하였으며, 모바일 폰에서 공중 제스처에 기반하여 발생하는 범용 입력 이벤트는, 사용자에 의해 터치스크린 상에서 수행된 터치 작동에 대응하면서 또한 시스템 애플리케이션과 제3자 애플리케이션 모두에 직접 응답할 수 있는 입력 이벤트이다.
다른 실시예에서, 범용 입력 이벤트는 다르게는 다른 입력 이벤트일 수 있다. 예를 들어, 모바일 폰이 공중 제스처에 기반하여 생성하는 범용 입력 이벤트는, 사용자가 모바일 폰에서 물리적 버튼(예를 들어, 전원 버튼)을 누르는 작동에 대응하면서 또한 시스템 애플리케이션과 제3자 애플리케이션 모두 직접 응답할 수 있는 입력 이벤트이다. 예를 들어, 적외선 센서는 전원 버튼 주위에 배치된다. 전원 버튼 주위에 배치된 적외선 센서가 모바일 폰의 측면 상에서 손에 의해 수행되는 슬랩(즉, 모바일 폰의 측면에 접근)의 공중 제스처를 검출할 때, 전원 버튼을 누르는 범용 입력 이벤트가 생성된다.
전술한 실시예들은 주로 전자 디바이스가 모바일 폰인 예를 사용하여 설명하였다. 전자 디바이스가 다른 전자 디바이스일 때, 공중 제스처에 기반하여 전자 디바이스에 의해 생성되는 범용 입력 이벤트는 다르게는, 전자 디바이스 상에서 사용자에 의해 수행되는 다른 유형의 접촉 작동(예를 들어, 버튼, 터치패드 또는 마우스에 대한 터치 작동)에 대응하는 입력 이벤트일 수 있다. 세부 사항은 본 출원의 실시예에서 설명되지 않는다.
본 출원의 다른 실시예는 제스처 처리 방법을 더 제공한다. 제스처 처리 방법은 전자 디바이스에 적용될 수 있다. 전자 디바이스에는 디스플레이 및 검출 컴포넌트가 배치된다. 디스플레이는 인터페이스를 디스플레이하도록 구성될 수 있다. 검출 컴포넌트는 공중 제스처를 검출하도록 구성될 수 있다. 검출 컴포넌트는 카메라, 디스플레이 아래에 배치된 적외선 센서, 디스플레이 아래에 배치된 초음파 센서, 디스플레이 아래에 배치된 전자기 유도 컴포넌트 등 중 어느 하나 또는 임의의 조합을 포함한다. 도 17에 도시된 바와 같이, 방법은 다음 단계를 포함할 수 있다:
1701. 전자 디바이스가 멀티미디어 애플리케이션을 오픈한다(open)
예를 들어, 멀티미디어 애플리케이션은 오디오 애플리케이션(예를 들어, 음악 플레이어), 비디오 플레이어(예를 들어, 틱톡과 같은 비디오 플레이어) 또는 갤러리일 수 있다.
1702. 전자 디바이스가 멀티미디어 애플리케이션의 제1 인터페이스를 디스플레이한다. 제1 인터페이스는 제1 멀티미디어 파일에 대응한다.
1703. 전자 디바이스가 공중 제스처를 검출하면, 전자 디바이스는 공중 제스처에 기반하여 응답 작동을 수행한다.
응답 작동은 제1 멀티미디어 파일을 재생하기, 제1 멀티미디어 파일 재생을 일시 정지하기, 제1 멀티미디어 파일 재생 진행을 조정하기, 재생 볼륨을 조정하기, 디스플레이 밝기를 조정하기, 제1 멀티미디어 파일을 멀티미디어 파일로 스위칭하기 등 중 적어도 하나를 포함할 수 있다. 달리 말하면, 전자 디바이스는 멀티미디어 애플리케이션을 사용하여 응답 작동을 수행할 수 있다. 멀티미디어 애플리케이션은 시스템 애플리케이션 또는 제3자 애플리케이션일 수 있다.
이러한 방식으로, 사용자는 공중 제스처를 사용하여 전자 디바이스의 시스템 멀티미디어 애플리케이션 또는 제3자 멀티미디어 애플리케이션을 제어하여, 대응하는 재생 컨트롤 작동을 수행함으로써 사용자 경험을 향상시킬 수 있다.
본 출원의 실시예는 전자 디바이스를 제공하며, 전자 디바이스는 공중 제스처를 검출하도록 구성된 검출 유닛; 및 공중 제스처에 기반하여 응답 작동을 수행하도록 구성된 처리 유닛을 포함한다. 처리 유닛은 구체적으로, 공중 제스처에 기반하여 범용 입력 이벤트를 생성하고 범용 입력 이벤트에 응답하도록 구성될 수 있다. 또한, 검출 유닛 및 처리 유닛은 추가로, 전술한 실시예의 다른 단계를 수행하여 전술한 실시예의 제스처 처리 방법을 구현하도록 구성될 수 있다.
본 출원의 실시예는 전자 디바이스를 제공하며, 전자 디바이스는 하나 이상의 프로세서; 하나 이상의 메모리; 하나 이상의 애플리케이션; 하나 이상의 컴퓨터 프로그램; 애플리케이션의 인터페이스를 디스플레이하도록 구성된 디스플레이; 및 검출 컴포넌트를 포함한다. 검출 컴포넌트는 카메라, 디스플레이 아래에 배치된 적외선 센서, 디스플레이 아래에 배치된 초음파 센서, 또는 디스플레이 아래에 배치된 전자기 유도 컴포넌트 중 어느 하나 또는 임의의 조합을 포함한다. 검출 컴포넌트는 사용자가 전자 디바이스와 접촉하지 않을 때 사용자가 수행하는 공중 제스처를 검출하도록 구성된다. 하나 이상의 컴퓨터 프로그램이 메모리에 저장된다. 하나 이상의 컴퓨터 프로그램은 명령을 포함한다. 명령이 프로세서에 의해 실행될 때, 전자 디바이스는 전술한 실시예의 단계를 수행하도록 활성화될 수 있다.
예를 들어, 명령이 프로세서에 의해 실행될 때, 전자 디바이스는, 멀티미디어 애플리케이션이 오픈된 후 멀티미디어 애플리케이션의 제1 인터페이스를 디스플레이하는 단계 - 여기서 제1 인터페이스는 제1 멀티미디어 파일에 대응함 -; 및 검출 컴포넌트가 공중 제스처를 검출하면, 공중 제스처에 기반하여 응답 작동을 수행하는 단계를 수행하도록 활성화될 수 있다. 응답 작동은 제1 멀티미디어 파일을 재생하기, 제1 멀티미디어 파일 재생을 일시 정지하기, 제1 멀티미디어 파일 재생 진행을 조정하기, 재생 볼륨을 조정하기, 디스플레이 밝기를 조정하기, 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기 등 중 적어도 하나를 포함할 수 있다.
다른 예로, 프로세서에 의해 명령이 실행될 때, 전자 디바이스는 애플리케이션이 오픈된 후 애플리케이션의 제1 인터페이스를 디스플레이하도록 활성화될 수 있다. 검출 컴포넌트가 공중 제스처를 검출하면, 공중 제스처에 기반하여 응답 작동이 수행된다. 응답 작동은 페이지 스크롤하기, 또는 제1 인터페이스를 다른 인터페이스로 스위칭하기 중 적어도 하나를 포함할 수 있다.
예를 들어, 전자 디바이스가 모바일 폰일 때, 전자 디바이스의 프로세서는 도 1의 프로세서(110)일 수 있으며, 메모리는 도 1의 내부 메모리(121)일 수 있고, 디스플레이는 도 1의 디스플레이(194)일 수 있으며, 검출 컴포넌트의 카메라는 도 1의 카메라(193)일 수 있고, 검출 컴포넌트의 적외선 센서, 초음파 센서, 전자기 센서 등은 도 1의 센서 모듈(180)일 수 있다.
본 출원의 실시예는 컴퓨터 저장 매체를 더 제공한다. 컴퓨터 저장 매체는 컴퓨터 명령을 저장한다. 컴퓨터 명령이 전자 디바이스에서 실행될 때, 전자 디바이스는 전술한 실시예에서 제스처 처리 방법을 구현하기 위해 관련 방법 단계를 수행하도록 활성화된다.
본 출원의 실시예는 컴퓨터 프로그램 제품을 더 제공한다. 컴퓨터 프로그램 제품이 컴퓨터 상에서 실행될 때, 컴퓨터는 전술한 실시예에서 제스처 처리 방법을 구현하기 위해 전술한 관련 단계를 수행하도록 활성화된다.
또한, 본 출원의 실시예는 장치를 더 제공한다. 장치는 구체적으로 칩, 컴포넌트 또는 모듈일 수 있다. 장치는 연결된 프로세서 및 메모리를 포함할 수 있다. 메모리는 컴퓨터가 실행 가능한 명령을 저장하도록 구성된다. 장치가 실행될 때, 프로세서는 메모리에 저장된 컴퓨터가 실행 가능한 명령을 실행하므로, 칩이 방법 실시예에서의 제스처 처리 방법을 수행할 수 있다.
본 출원의 실시예에서 제공되는 전자 디바이스, 컴퓨터 저장 매체, 컴퓨터 프로그램 제품, 또는 칩이 모두 위에서 제공된 대응하는 방법을 수행하도록 구성될 수 있다. 따라서 획득할 수 있는 유익한 효과에 대해서는 위에서 제시한 대응 방법의 유익한 효과를 참조한다. 세부 사항은 여기서 다시 설명하지 않는다.
전술한 실시예들에 대한 설명에 기반하여, 당업자는 편리하고 간략한 설명을 위해 전술한 기능 모듈들로 분할된 것은 단지 설명을 위한 예시일 뿐임을 명백히 이해할 수 있을 것이다. 실제 애플리케이션에서, 요건에 기반하여 구현을 위해 전술한 기능을 서로 다른 기능 모듈에 할당할 수 있으며, 즉, 장치의 내부 구조를 서로 다른 기능 모듈로 분할하여 상술한 기능의 전부 또는 일부를 구현한다.
본 출원에서 제공된 여러 실시예에서, 개시된 장치 및 방법은 다른 방식으로 구현될 수 있음을 이해해야 한다. 예를 들어, 설명된 장치 실시예는 단지 예일 뿐이다. 예를 들어, 모듈 또는 유닛으로의 분할은 단지 논리적 기능 분할일 뿐이며 실제 구현에서는 다른 분할일 수 있다. 예를 들어, 복수의 유닛 또는 컴포넌트가 다른 장치에 결합 또는 통합되거나, 일부 특징이 무시되거나 수행되지 않을 수 있다. 또한, 디스플레이되거나 논의된 상호 결합 또는 직접 결합 또는 통신 연결은 일부 인터페이스를 통해 구현될 수 있다. 장치 또는 유닛 간의 간접 결합 또는 통신 연결은 전자적, 기계적 또는 다른 형태로 구현될 수 있다.
별도의 컴포넌트로 설명된 유닛은 물리적으로 분리되거나 분리되지 않을 수 있으며, 유닛으로 디스플레이되는 부분은 하나 이상의 물리적 유닛일 수 있으며 한 장소에 있을 수도 있고 상이한 장소에 분산될 수도 있다. 유닛의 일부 또는 전부는 실시예의 솔루션의 목적을 달성하기 위한 실제 요건에 기반하여 선택될 수 있다.
또한, 본 출원의 실시예에서 기능 유닛은 하나의 처리 유닛으로 통합될 수 있거나, 각각의 유닛이 물리적으로 단독으로 존재할 수 있거나, 둘 이상의 유닛이 하나의 유닛으로 통합될 수 있다. 통합 유닛은 하드웨어의 형태로 구현될 수도 있고, 또는 소프트웨어 기능 유닛의 형태로 구현될 수도 있다.
통합 유닛이 소프트웨어 기능 유닛의 형태로 구현되어 독립적인 제품으로 판매 또는 사용되는 경우, 통합 유닛은 판독가능한 저장 매체에 저장될 수 있다. 이러한 이해에 기반하여, 본 출원의 실시예의 기술적 솔루션은 본질적으로, 또는 종래 기술에 기여하는 부분, 또는 기술적 솔루션의 전부 또는 일부는 소프트웨어 제품의 형태로 구현될 수 있다. 소프트웨어 제품은 저장 매체에 저장되며, 디바이스(단일 칩 마이크로컴퓨터, 칩 등이 될 수 있음) 또는 프로세서(processor)가 본 출원의 실시예의 방법에서의 단계의 전부 또는 일부를 수행하도록 지시하기 위한 여러 명령을 포함한다. 전술한 저장 매체는 USB 플래시 드라이브, 이동식 하드 디스크, 읽기 전용 메모리(read only memory, ROM), 랜덤 액세스 메모리(random access memory, RAM), 자기 디스크 또는 광 디스크와 같은, 프로그램 코드를 저장할 수 있는 임의의 매체를 포함한다.
전술한 설명은 단지 본 출원의 특정 구현일 뿐이며 본 출원의 보호 범위를 제한하려는 것은 아니다. 본 출원에 공개된 기술 범위 내의 모든 변형 또는 교체는 본 출원의 보호 범위에 속한다. 따라서 본 출원의 보호 범위는 청구범위의 보호 범위에 따른다.

Claims (18)

  1. 전자 디바이스로서,
    하나 이상의 프로세서;
    하나 이상의 메모리;
    하나 이상의 멀티미디어 애플리케이션 - 상기 멀티미디어 애플리케이션은 오디오 애플리케이션 또는 비디오 애플리케이션을 포함함 -;
    하나 이상의 컴퓨터 프로그램;
    인터페이스를 디스플레이하도록 구성된 디스플레이; 및
    사용자가 상기 전자 디바이스와 접촉하지 않을 때 상기 사용자가 만든 공중 제스처(mid-air gesture)를 검출하도록 구성된 검출 컴포넌트 - 상기 검출 컴포넌트는 카메라, 상기 디스플레이 아래에 배치된 적외선 센서, 상기 디스플레이 아래에 배치된 초음파 센서, 또는 상기 디스플레이 아래에 배치된 전자기 유도 컴포넌트 중 어느 하나 또는 임의의 조합을 포함함 -
    를 포함하고,
    상기 하나 이상의 컴퓨터 프로그램이 상기 메모리에 저장되고, 상기 하나 이상의 컴퓨터 프로그램이 명령을 포함하며, 상기 명령이 상기 프로세서에 의해 실행될 때 상기 전자 디바이스는,
    상기 멀티미디어 애플리케이션이 오픈된(open) 후 상기 멀티미디어 애플리케이션의 제1 인터페이스를 디스플레이하는 단계 - 상기 제1 인터페이스는 제1 멀티미디어 파일에 대응함 -; 및
    상기 검출 컴포넌트가 상기 공중 제스처를 검출하면, 상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계
    를 수행하도록 활성화되며,
    상기 응답 작동은 상기 제1 멀티미디어 파일을 재생하기, 상기 제1 멀티미디어 파일 재생을 일시 정지하기(pausing), 상기 제1 멀티미디어 파일의 재생 진행을 조정하기, 재생 볼륨을 조정하기, 디스플레이 밝기를 조정하기, 또는 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기(switching) 중 적어도 하나를 포함하는, 전자 디바이스.
  2. 제1항에 있어서,
    상기 공중 제스처는 손의 흔들기(wave of a hand) 또는 손의 병진 이동(translational move of a hand)이고,
    상기 응답 작동은, 상기 제1 멀티미디어 파일을 빨리 감기(fast-forwarding), 상기 제1 멀티미디어 파일을 되감기, 상기 재생 볼륨을 높이기, 상기 재생 볼륨을 낮추기, 상기 디스플레이 밝기를 높이기, 상기 디스플레이 밝기를 낮추기, 또는 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기를 포함하는, 전자 디바이스.
  3. 제2항에 있어서,
    상기 멀티미디어 애플리케이션은 제1 비디오 플레이어이고,
    상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계는,
    상기 공중 제스처 및 상기 공중 제스처가 발생한 위치에 기반하여 상기 응답 작동을 수행하는 단계
    를 포함하고,
    상기 공중 제스처가 손의 상향(upward translational move) 병진 이동 또는 손의 상향 흔들기(upward wave)일 때, 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 오른쪽(right side)에 가까우면, 상기 응답 작동은 상기 재생 볼륨을 높이기이고; 또는 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 왼쪽(left side)에 가까우면 상기 응답 작동이 상기 디스플레이 밝기를 높이기이며;
    상기 공중 제스처가 손의 하향(downward) 병진 이동 또는 손의 하향 흔들기일 때, 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 오른쪽에 가까우면 상기 응답 작동은 상기 재생 볼륨을 낮추기이고; 또는 상기 공중 제스처가 발생한 위치가 상기 전자 디바이스의 왼쪽에 가까우면 상기 응답 작동은 상기 디스플레이 밝기를 낮추기이며;
    상기 공중 제스처가 손의 우측(rightward) 병진 이동 또는 손의 우측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 빨리 감기이며; 또는
    상기 공중 제스처가 손의 좌측(leftward) 병진 이동 또는 손의 좌측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 되감기인, 전자 디바이스.
  4. 제2항에 있어서,
    상기 멀티미디어 애플리케이션은 오디오 플레이어이고, 그리고
    상기 공중 제스처가 손의 우측 병진 이동 또는 손의 우측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 빨리 감기이며, 또는
    상기 공중 제스처가 손의 좌측 병진 이동 또는 손의 좌측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 되감기인, 전자 디바이스.
  5. 제2항에 있어서,
    상기 멀티미디어 애플리케이션은 제2 비디오 플레이어이고, 그리고
    상기 공중 제스처가 손의 상향 병진 이동 또는 손의 상향 흔들기일 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 제2 멀티미디어 파일로 스위칭하기이며; 또는
    상기 공중 제스처가 손의 하향 병진 이동 또는 손의 하향 흔들기일 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 제3 멀티미디어 파일로 스위칭하기인, 전자 디바이스.
  6. 제2항에 있어서,
    상기 멀티미디어 애플리케이션은 갤러리이고, 그리고
    상기 공중 제스처가 손의 우측 병진 이동 또는 손의 우측 흔들기일 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 제2 멀티미디어 파일로 스위칭하기이고; 또는
    상기 공중 제스처가 손의 좌측 병진 이동 또는 손의 좌측 흔들기일 때 상기 응답 작동은 상기 제1 멀티미디어 파일을 제3 멀티미디어 파일로 스위칭하기인, 전자 디바이스.
  7. 제1항에 있어서,
    상기 공중 제스처는 상기 전자 디바이스를 향한 손바닥의 이동이고, 상기 응답 작동은, 상기 제1 멀티미디어 파일을 재생하기, 또는 상기 제1 멀티미디어 파일 재생을 일시 중지하기, 또는 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기를 포함하는, 전자 디바이스.
  8. 제7항에 있어서,
    상기 멀티미디어 애플리케이션은 제1 비디오 플레이어이고, 상기 제1 인터페이스는 재생 컨트롤(control) 및 스위칭 컨트롤을 포함하며,
    상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계는,
    상기 공중 제스처, 상기 공중 제스처가 발생한 위치 및 상기 제1 비디오 플레이어의 현재 상태에 기반하여 상기 응답 작동을 수행하는 단계
    를 포함하고,
    상기 공중 제스처가 발생한 위치가 상기 재생 컨트롤에 가깝고 상기 제1 멀티미디어 파일이 현재 재생되고 있을 때, 상기 응답 작동은 상기 제1 멀티미디어 파일 재생을 일시 중지하기이며;
    상기 공중 제스처가 발생한 위치가 상기 재생 컨트롤에 가깝고 상기 제1 멀티미디어 파일이 현재 재생되지 않을 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 재생하기이며, 또는
    상기 공중 제스처가 발생한 위치가 상기 스위칭 컨트롤에 가까울 때, 상기 응답 작동은 상기 제1 멀티미디어 파일을 다른 멀티미디어 파일로 스위칭하기인, 전자 디바이스.
  9. 전자 디바이스로서,
    하나 이상의 프로세서;
    하나 이상의 메모리;
    하나 이상의 애플리케이션;
    하나 이상의 컴퓨터 프로그램;
    인터페이스를 디스플레이하도록 구성된 디스플레이; 및
    사용자가 상기 전자 디바이스와 접촉하지 않을 때 상기 사용자가 만든 공중 제스처를 검출하도록 구성된 검출 컴포넌트 - 상기 검출 컴포넌트는 카메라, 상기 디스플레이 아래에 배치된 적외선 센서, 상기 디스플레이 아래에 배치된 초음파 센서, 또는 상기 디스플레이 아래에 배치된 전자기 유도 컴포넌트 중 어느 하나 또는 임의의 조합을 포함함 -
    를 포함하고,
    상기 하나 이상의 컴퓨터 프로그램이 상기 메모리에 저장되고, 상기 하나 이상의 컴퓨터 프로그램이 명령을 포함하며, 상기 명령이 상기 프로세서에 의해 실행될 때 상기 전자 디바이스는,
    상기 애플리케이션이 오픈된 후 상기 애플리케이션의 제1 인터페이스를 디스플레이하는 단계; 및
    상기 검출 컴포넌트가 상기 공중 제스처를 검출하면, 상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계
    를 수행하도록 활성화되고,
    상기 응답 작동은 페이지를 스크롤하기(scrolling), 또는 상기 제1 인터페이스를 다른 인터페이스로 스위칭하기 중 적어도 하나를 포함하는, 전자 디바이스.
  10. 제9항에 있어서,
    상기 공중 제스처가 손의 상향 병진 이동 또는 손의 상향 흔들기일 때, 상기 응답 작동은 상기 페이지를 상향 스크롤하기이며; 또는
    상기 공중 제스처가 손의 하향 병진 이동 또는 손의 하향 흔들기일 때, 상기 응답 작동은 상기 페이지를 하향 스크롤하기인, 전자 디바이스.
  11. 제9항에 있어서,
    상기 공중 제스처가 손의 우측 병진 이동 또는 손의 우측 흔들기일 때, 상기 응답 작동은 상기 제1 인터페이스를 제2 인터페이스로 스위칭하기이고; 또는
    상기 공중 제스처가 손의 좌측 병진 이동 또는 손의 좌측 흔들기일 때, 상기 응답 작동은 상기 제1 인터페이스를 제3 인터페이스로 스위칭하기이며,
    상기 제1 인터페이스는 상기 애플리케이션의 제1 기능에 대응하고, 상기 제2 인터페이스는 상기 애플리케이션의 제2 기능에 대응하며, 상기 제3 인터페이스는 상기 애플리케이션의 제3 기능에 대응하고; 또는
    상기 애플리케이션은 리더기(reader)이고, 상기 제1 인터페이스, 상기 제2 인터페이스 및 상기 제3 인터페이스는 각각 상기 리더기에 의해 디스플레이되는 3개의 페이지인, 전자 디바이스.
  12. 제1항 내지 제11항 중 어느 한 항에 있어서,
    상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로,
    상기 검출 컴포넌트가 상기 공중 제스처를 검출한 후, 상기 공중 제스처에 대응하는 작동 마크(mark)를 디스플레이하는 단계
    를 수행하도록 활성화되는, 전자 디바이스.
  13. 제1항 내지 제11항 중 어느 한 항에 있어서,
    상기 공중 제스처에 기반하여 응답 작동을 수행하는 단계는,
    상기 공중 제스처에 기반하여 범용 입력 이벤트(general-purpose input event)를 생성하는 단계 - 상기 범용 입력 이벤트는 시스템 애플리케이션 및 제3자 애플리케이션 모두가 응답할 수 있는 입력 이벤트임 -; 및
    상기 범용 입력 이벤트에 기반하여 상기 응답 작동을 수행하는 단계
    를 포함하는, 전자 디바이스.
  14. 제13항에 있어서,
    상기 공중 제스처에 기반하여 범용 입력 이벤트를 생성하는 단계는,
    미리 설정된 제1 대응 관계에 기반하여 상기 공중 제스처의 제스처 유형을 결정하는 단계 - 상기 제1 대응 관계는 제스처 정보와 상기 공중 제스처의 제스처 유형 사이의 대응 관계이고, 상기 제스처 정보는 자세, 모양, 이동 거리, 이동 방향, 이동 속도, 이동 궤적 또는 상기 공중 제스처의 위치와 순간(moment) 사이의 대응 관계 중 어느 하나 또는 임의의 조합을 포함함 -;
    상기 제스처 유형을 상기 전자 디바이스의 애플리케이션 프레임워크 계층에 보고하는 단계;
    상기 애플리케이션 프레임워크 계층이, 미리 설정된 제2 대응 관계에 기반하여 상기 범용 입력 이벤트를 결정하고, 상기 범용 입력 이벤트를 생성하기 위해 상기 범용 입력 이벤트를 애플리케이션 계층에 보고하는 단계 - 상기 제2 대응 관계는 제스처 유형과 범용 입력 이벤트 사이의 대응 관계임 -; 및
    상기 애플리케이션 계층에서, 포그라운드(foreground) 시스템 애플리케이션 또는 포그라운드 제3자 애플리케이션이, 상기 범용 입력 이벤트에 응답하는 작동을 수행하는 단계
    를 포함하는, 전자 디바이스.
  15. 제14항에 있어서,
    상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로,
    상기 제1 대응 관계에 기반하여, 상기 공중 제스처에 대응하는 제스처 유형이 존재하지 않는 것으로 결정되면, 상기 공중 제스처가 효과가 없는 제스처(ineffective gesture)라고 결정하고, 현재 애플리케이션 및/또는 상기 사용자의 사용 습관에 기반하여 효과적인 참조 공중 제스처를 결정하는 단계; 및
    상기 참조 공중 제스처로 상기 사용자에게 프롬프트하는(prompting) 단계
    를 수행하도록 활성화되는, 전자 디바이스.
  16. 제15항에 있어서,
    상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로,
    상기 제1 대응 관계에 기반하여, 상기 공중 제스처에 대응하는 제스처 유형이 존재하지 않는 것으로 결정되면, 상기 공중 제스처가 효과가 없는 제스처라고 결정하고, 현재 애플리케이션 및/또는 상기 사용자의 사용 습관에 기반하여 효과적인 참조 공중 제스처를 결정하는 단계;
    상기 참조 공중 제스처에 대응하는 참조 범용 입력 이벤트를 결정하는 단계;
    상기 참조 범용 입력 이벤트 및 상기 현재 애플리케이션에 기반하여 제1 작동을 결정하는 단계;
    상기 사용자에게 상기 제1 작동을 수행할지를 프롬프트하는 단계; 및
    상기 사용자로부터 상기 제1 작동을 수행하라는 지시가 검출된 후 상기 제1 작동을 수행하는 단계
    를 수행하도록 활성화되는, 전자 디바이스.
  17. 제13항 내지 제17항 중 어느 한 항에 있어서,
    상기 공중 제스처가 손의 흔들기 또는 손의 병진 이동일 때, 상기 범용 입력 이벤트는 슬라이딩 이벤트이고; 또는
    상기 공중 제스처가 상기 전자 디바이스를 향한 손바닥의 이동일 때, 상기 범용 입력 이벤트는 태핑(tapping) 이벤트인, 전자 디바이스.
  18. 제13항 내지 제17항 중 어느 한 항에 있어서,
    상기 명령이 상기 프로세서에 의해 실행될 때, 상기 전자 디바이스는 추가로,
    상기 범용 입력 이벤트가 생성된 후, 상기 범용 입력 이벤트에 대응하는 작동 마크를 디스플레이하는 단계
    를 수행하도록 활성화되는, 전자 디바이스.
KR1020217027292A 2019-03-01 2020-02-26 제스처 처리 방법 및 디바이스 KR20210118168A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910157644.4 2019-03-01
CN201910157644.4A CN110045819B (zh) 2019-03-01 2019-03-01 一种手势处理方法及设备
PCT/CN2020/076699 WO2020177585A1 (zh) 2019-03-01 2020-02-26 一种手势处理方法及设备

Publications (1)

Publication Number Publication Date
KR20210118168A true KR20210118168A (ko) 2021-09-29

Family

ID=67274489

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217027292A KR20210118168A (ko) 2019-03-01 2020-02-26 제스처 처리 방법 및 디바이스

Country Status (6)

Country Link
US (1) US20220137713A1 (ko)
EP (1) EP3910449A4 (ko)
JP (1) JP7391102B2 (ko)
KR (1) KR20210118168A (ko)
CN (1) CN110045819B (ko)
WO (1) WO2020177585A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110045819B (zh) * 2019-03-01 2021-07-09 华为技术有限公司 一种手势处理方法及设备
CN112394811B (zh) * 2019-08-19 2023-12-08 华为技术有限公司 一种隔空手势的交互方法及电子设备
CN110941339B (zh) * 2019-11-27 2024-02-23 上海创功通讯技术有限公司 一种手势感应方法及电子设备、存储介质
CN110855969B (zh) * 2019-12-06 2022-11-15 深圳乐信软件技术有限公司 一种投影方法、装置及***
CN113050788A (zh) * 2019-12-26 2021-06-29 华为技术有限公司 一种声音播放的控制方法及装置
CN111027643B (zh) * 2019-12-26 2024-03-08 北京奇艺世纪科技有限公司 深度神经网络模型的训练方法、人机交互识别方法、装置、电子设备及存储介质
WO2021217570A1 (zh) * 2020-04-30 2021-11-04 华为技术有限公司 基于隔空手势的控制方法、装置及***
CN111880717B (zh) * 2020-07-23 2021-11-16 卡莱特云科技股份有限公司 一种悬浮触控遥控播放设备的方法及装置
CN111988522B (zh) * 2020-07-28 2022-04-22 北京达佳互联信息技术有限公司 拍摄控制方法、装置、电子设备及存储介质
CN112799574A (zh) * 2021-02-23 2021-05-14 京东方科技集团股份有限公司 一种显示控制方法和显示装置
CN115079810A (zh) * 2021-03-10 2022-09-20 Oppo广东移动通信有限公司 信息处理方法与装置、主控设备和受控设备
CN115484394B (zh) * 2021-06-16 2023-11-14 荣耀终端有限公司 一种隔空手势的引导使用方法及电子设备
CN113687722A (zh) * 2021-08-25 2021-11-23 精电(河源)显示技术有限公司 电子设备的页面控制方法、装置、设备和存储介质
CN115884067A (zh) * 2021-09-28 2023-03-31 华为技术有限公司 一种设备组网及声道配置方法和电子设备
CN116193243B (zh) * 2021-11-25 2024-03-22 荣耀终端有限公司 拍摄方法和电子设备
CN114911397A (zh) * 2022-05-18 2022-08-16 北京五八信息技术有限公司 一种数据处理方法、装置、电子设备及存储介质
CN115079822B (zh) * 2022-05-31 2023-07-21 荣耀终端有限公司 隔空手势交互方法、装置、电子芯片及电子设备
CN115576417A (zh) * 2022-09-27 2023-01-06 广州视琨电子科技有限公司 基于图像识别的交互控制方法、装置及设备
CN116661635B (zh) * 2022-11-22 2024-04-05 荣耀终端有限公司 手势处理方法和电子设备
CN115695518B (zh) * 2023-01-04 2023-06-30 广东保伦电子股份有限公司 一种基于智能移动设备的ppt控制方法
CN117101117A (zh) * 2023-07-12 2023-11-24 荣耀终端有限公司 触控方法及相关设备
CN116627260A (zh) * 2023-07-24 2023-08-22 成都赛力斯科技有限公司 一种隔空操作方法、装置、计算机设备和存储介质

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001117686A (ja) 1999-10-20 2001-04-27 Toshiba Corp ペン入力装置およびペン入力装置のポインティング処理方法
CN101558367A (zh) * 2006-12-05 2009-10-14 索尼爱立信移动通讯有限公司 用于检测物体移动的方法和***
US7877707B2 (en) * 2007-01-06 2011-01-25 Apple Inc. Detecting and interpreting real-world and security gestures on touch and hover sensitive devices
US8643628B1 (en) * 2012-10-14 2014-02-04 Neonode Inc. Light-based proximity detection system and user interface
US20110310005A1 (en) * 2010-06-17 2011-12-22 Qualcomm Incorporated Methods and apparatus for contactless gesture recognition
JP2014029565A (ja) 2010-11-24 2014-02-13 Panasonic Corp 情報処理装置
US9417754B2 (en) * 2011-08-05 2016-08-16 P4tents1, LLC User interface system, method, and computer program product
US20130054335A1 (en) * 2011-08-29 2013-02-28 Ebay Inc. Mobile platform for generating and distributing deals
US9423876B2 (en) * 2011-09-30 2016-08-23 Microsoft Technology Licensing, Llc Omni-spatial gesture input
US8749485B2 (en) * 2011-12-20 2014-06-10 Microsoft Corporation User control gesture detection
US9389690B2 (en) 2012-03-01 2016-07-12 Qualcomm Incorporated Gesture detection based on information from multiple types of sensors
WO2013144807A1 (en) * 2012-03-26 2013-10-03 Primesense Ltd. Enhanced virtual touchpad and touchscreen
US9377860B1 (en) * 2012-12-19 2016-06-28 Amazon Technologies, Inc. Enabling gesture input for controlling a presentation of content
CN103914126A (zh) * 2012-12-31 2014-07-09 腾讯科技(深圳)有限公司 一种多媒体播放器控制方法和装置
JP2014219938A (ja) 2013-05-10 2014-11-20 株式会社ゲッシュ 入力支援装置、入力支援方法、および、プログラム
US9766855B2 (en) * 2013-09-10 2017-09-19 Avigilon Corporation Method and apparatus for controlling surveillance system with gesture and/or audio commands
CN103558920B (zh) * 2013-11-15 2018-06-19 努比亚技术有限公司 非接触式姿势的处理方法及装置
JPWO2015108112A1 (ja) * 2014-01-15 2017-03-23 株式会社Juice Design 操作判定装置、操作判定方法、および、プログラム
CN104978014B (zh) * 2014-04-11 2018-05-11 维沃移动通信有限公司 一种快速调用应用程序或***功能的方法及其移动终端
CN105094659A (zh) * 2014-05-19 2015-11-25 中兴通讯股份有限公司 一种基于手势对应用程序进行操作的方法及终端
CN105518587B (zh) * 2014-05-30 2018-08-21 华为技术有限公司 终端设备显示方法和终端设备
GB201412268D0 (en) * 2014-07-10 2014-08-27 Elliptic Laboratories As Gesture control
CN104463119B (zh) * 2014-12-05 2017-10-31 苏州触达信息技术有限公司 基于超声与视觉的复合式手势识别设备及其控制方法
CN104615366B (zh) * 2014-12-31 2017-07-14 中国人民解放军国防科学技术大学 一种面向多设备的手势交互方法
JP5869711B1 (ja) 2015-04-07 2016-02-24 株式会社メディアドゥ コンテンツ表示装置、コンテンツ表示プログラム、コンテンツ表示方法
CN104808856B (zh) * 2015-05-04 2018-01-16 广东欧珀移动通信有限公司 一种模拟触摸屏滑动的方法、装置和一种移动终端
EP3133474B1 (en) * 2015-08-19 2019-03-27 Nxp B.V. Gesture detector using ultrasound
CN105511675B (zh) * 2015-11-20 2020-07-24 重庆桔子科技发展有限公司 触摸控制方法、用户设备、输入处理方法、移动终端及智能终端
CN105824427A (zh) * 2016-03-31 2016-08-03 广州飞傲电子科技有限公司 基于手势操作进行音量调节的方法及***
CN106055098B (zh) * 2016-05-24 2019-03-15 北京小米移动软件有限公司 隔空手势操作方法及装置
JP2018042191A (ja) 2016-09-09 2018-03-15 キヤノン株式会社 撮像制御装置、撮像装置の制御方法及びプログラム
CN106484302A (zh) * 2016-10-31 2017-03-08 维沃移动通信有限公司 一种歌曲播放方法及移动终端
US10754417B2 (en) * 2016-11-14 2020-08-25 Logitech Europe S.A. Systems and methods for operating an input device in an augmented/virtual reality environment
CN106843669A (zh) * 2016-12-06 2017-06-13 北京小度信息科技有限公司 应用界面操作方法和装置
US11353754B2 (en) 2017-02-21 2022-06-07 Semiconductor Energy Laboratory Co., Ltd. Display panel, display device, input/output device, and data processing device
CN107463329B (zh) * 2017-07-28 2019-08-27 Oppo广东移动通信有限公司 黑屏手势的检测方法、装置、存储介质及移动终端
JP6373537B1 (ja) 2017-09-04 2018-08-15 株式会社ワコム 空間位置指示システム
US11442160B2 (en) * 2018-01-09 2022-09-13 Infineon Technologies Ag Multifunctional radar systems and methods of operation thereof
CN108958844B (zh) * 2018-07-13 2021-09-03 京东方科技集团股份有限公司 一种应用程序的控制方法及终端
CN109144392B (zh) * 2018-08-22 2021-04-16 北京奇艺世纪科技有限公司 一种处理手势冲突的方法、装置及电子设备
CN109032359A (zh) * 2018-08-28 2018-12-18 上海擎感智能科技有限公司 一种多媒体播放方法、装置、电子终端及介质
CN110045819B (zh) * 2019-03-01 2021-07-09 华为技术有限公司 一种手势处理方法及设备

Also Published As

Publication number Publication date
JP7391102B2 (ja) 2023-12-04
CN110045819B (zh) 2021-07-09
CN110045819A (zh) 2019-07-23
WO2020177585A1 (zh) 2020-09-10
US20220137713A1 (en) 2022-05-05
EP3910449A1 (en) 2021-11-17
EP3910449A4 (en) 2022-03-30
JP2022522491A (ja) 2022-04-19

Similar Documents

Publication Publication Date Title
EP3910449A1 (en) Gesture processing method and device
US11797143B2 (en) Method for controlling small screen window and related device
JP7081048B2 (ja) システムナビゲーションバー表示方法、システムナビゲーションバー制御方法、グラフィカルユーザインターフェース、および電子機器
WO2021000881A1 (zh) 一种分屏方法及电子设备
CN113645351B (zh) 应用界面交互方法、电子设备和计算机可读存储介质
US20220206741A1 (en) Volume adjustment method and electronic device
WO2021036770A1 (zh) 一种分屏处理方法及终端设备
WO2019072178A1 (zh) 一种通知处理方法及电子设备
WO2021063098A1 (zh) 一种触摸屏的响应方法及电子设备
WO2021057343A1 (zh) 一种对电子设备的操作方法及电子设备
US11861156B2 (en) Interface display method and related apparatus
US20220244846A1 (en) User Interface Display Method and Electronic Device
CN110559645B (zh) 一种应用的运行方法及电子设备
WO2020062310A1 (zh) 手写笔检测方法、***及相关装置
EP4024839A1 (en) Operation method and electronic device
JP2023500656A (ja) 表示要素の表示方法及び電子機器
WO2020221062A1 (zh) 一种导航操作方法及电子设备
CN115016697A (zh) 投屏方法、计算机设备、可读存储介质和程序产品
WO2020103091A1 (zh) 锁定触控操作的方法及电子设备
US20220317841A1 (en) Screenshot Method and Related Device
WO2022002213A1 (zh) 翻译结果显示方法、装置及电子设备
CN114356196B (zh) 一种显示方法及电子设备
WO2022217969A1 (zh) 一种在应用中启用功能的方法及装置

Legal Events

Date Code Title Description
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
E601 Decision to refuse application
E801 Decision on dismissal of amendment