KR102204888B1 - 키보드에 의한 자동 번역 - Google Patents

키보드에 의한 자동 번역 Download PDF

Info

Publication number
KR102204888B1
KR102204888B1 KR1020187023038A KR20187023038A KR102204888B1 KR 102204888 B1 KR102204888 B1 KR 102204888B1 KR 1020187023038 A KR1020187023038 A KR 1020187023038A KR 20187023038 A KR20187023038 A KR 20187023038A KR 102204888 B1 KR102204888 B1 KR 102204888B1
Authority
KR
South Korea
Prior art keywords
translation
computing device
display
language
indication
Prior art date
Application number
KR1020187023038A
Other languages
English (en)
Other versions
KR20180102134A (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 KR20180102134A publication Critical patent/KR20180102134A/ko
Application granted granted Critical
Publication of KR102204888B1 publication Critical patent/KR102204888B1/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/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
    • G06F3/0488Interaction 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 using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction 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 using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • 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/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Machine Translation (AREA)

Abstract

모바일 컴퓨팅 디바이스는 프레즌스 감지 디스플레이 컴포넌트에서에서의 디스플레이를 위해, 편집 영역 및 복수의 키와 번역 영역을 포함하는 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스의 출력하는 것으로 개시된다. 상기 디바이스는 입력에 의해 선택된 복수의 키들로부터 하나 이상의 키를 결정하고, 상기 하나 이상의 키에 기초하여, 소스 언어로부터의 하나 이상의 후보 단어를 결정하고, 상기 편집 영역 내의 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력한다. 상기 디바이스는 소스 언어와 다른 목적 언어와 연관된 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정하고, 상기 번역 영역 내의 디스플레이를 위해 상기 특정 단어의 번역의 표시를 출력한다.

Description

키보드에 의한 자동 번역
여러 애플리케이션을 동시에 실행할 수 있음에도 불구하고, 일부 모바일 컴퓨팅 디바이스는 한번에 하나의 애플리케이션 그래픽 사용자 인터페이스(GUI)만을 제공할 수 있다. 한 번에 다수의 애플리케이션과 상호 작용하려면, 모바일 컴퓨팅 디바이스의 사용자는 특정 작업을 완료하기 위해 상이한 애플리케이션 GUI간을 전환하기 위한 여러 입력을 제공해야 할 수도 있다. 예를 들어, 모바일 컴퓨팅 디바이스의 사용자가 그래픽 키보드를 사용하여 메시징 애플리케이션 GUI 내에서 메시지를 타이핑하고 단어를 번역해야 하는 경우, 사용자는 번역 애플리케이션 GUI로 전환하고, 번역 애플리케이션으로 하여금 단어를 번역하게 하고, 상기 번역을 메모리 클립 보드로 복사하고, 메시징 애플리케이션 GUI으로 다시 전환하여, 상기 클립 보드로부터번역을 메시지에 붙여 넣기 위한 여러 입력을 제공해야 할 수도 있다.
상기 번역을 수행하기 위해 일부 컴퓨팅 디바이스에 필요한 여러 입력을 제공하는 것은 지루하고 반복적이며 시간 소모적일 수 있다.
일 예시에서, 방법은 컴퓨팅 디바이스에 의해, 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 출력하는 단계와, 상기 그래픽 키보드는 복수의 키 및 번역 영역을 포함하고; 상기 컴퓨팅 디바이스에 의해, 상기 복수의 키로부터 하나 이상의 키의 선택에 기초하여, 소스 언어로부터의 하나 이상의 후보 단어를 결정하는 단계와; 그리고 상기 컴퓨팅 디바이스에 의해, 상기 편집 영역 내의 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력하는 단계를 포함한다. 상기 방법은 컴퓨팅 디바이스에 의해, 상기 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정하는 단계와, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고; 그리고 상기 컴퓨팅 디바이스에 의해, 상기 그래픽 키보드의 번역 영역 내의 디스플레이를 위해, 상기 특정 단어의 번역의 표시를 출력하는 단계를 더 포함한다.
다른 예에서, 모바일 컴퓨팅 디바이스는 프레즌스 감지 디스플레이 컴포넌트, 적어도 하나의 프로세서 및 메모리를 포함한다. 상기 메모리는 명령들을 포함하여 실행될때 상기 적어도 하나의 프로세서로 하여금 상기 프레즌스 감지 디스플레이 컴포넌트에서의 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 출력하게 하고, 상기 그래픽 키보드는 복수의 키 및 번역 영역을 포함한다. 상기 명령들은 실행될 때, 상기 적어도 하나의 프로세서로 하여금 프레즌스 감지 디스플레이 컴포넌트에서 검출된 입력의 표시(indication)를 수신하고, 상기 복수의 키로부터 상기 입력에 의해 선택된 하나 이상의 키를 결정하고, 상기 하나 이상의 키에 기초하여, 소스 언어로부터 하나 이상의 후보 단어를 결정하고, 상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내에서 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력하고, 상기 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정하고, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고; 그리고 상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내에서의 디스플레이를 위해, 상기 특정 단어의 번역의 표시를 출력하도록 한다.
또 다른 예에서, 명령들을 포함하는 컴퓨터 판독 가능 저장매체로서, 실행될 때 상기 명령들은 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 출력하고, 상기 그래픽 키보드는 복수의 키 및 번역 영역을 포함하고, 상기 복수의 키로부터 하나 이상의 키의 선택의 표시를 수신하는 동안, 상기 영역 내의 디스플레이를 위해, 상기 선택으로부터 추론된 하나 이상의 후보 단어들을 출력하도록 하고, 상기 하나 이상의 후보 단어는 소스 언어와 관련된다. 상기 명령들은 실행될 때 적어도 하나의 프로세서로 하여금 상기 하나 이상의 후보 단어들로부터 특정 단어의 번역을 결정하고, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고, 그리고 상기 번역 영역 내의 디스플레이를 위해 상기 번역의 표시를 출력하도록 한다.
하나 이상의 실시예에 대한 세부 사항은 첨부된 도면 및 이하의 설명에서 설명된다. 본 발명의 다른 특징, 목적 및 이점은 상세한 설명 및 도면 및 청구 범위로부터 명백해질 것이다.
도 1a-1c는 본 발명의 하나 이상의 양태에 따라, 통합된 번역 특징을 갖는 그래픽 키보드를 제시하도록 구성된 예시적인 컴퓨팅 디바이스를 나타내는 개념도이다.
도 2는 본 발명의 하나 이상의 양태에 따라, 통합된 번역 특징을 갖는 그래픽 키보드를 제시하도록 구성된 예시적인 컴퓨팅 디바이스를 나타내는 블록도이다.
도 3은 본 발명의 하나 이상의 기술에 따라, 원격 디바이스에서 디스플레이하기 위한 그래픽 컨텐츠를 출력하는 예시적인 컴퓨팅 디바이스를 나타내는 블록도이다.
도 4a-4i는 본 발명의 하나 이상의 양태에 따라, 통합된 번역 특징을 갖는 그래픽 키보드를 제시하도록 구성된 예시적인 컴퓨팅 디바이스의 예시적인 그래픽 사용자 인터페이스를 나타내는 개념도이다.
도 5는 본 발명의 하나 이상의 양태에 따라, 통합된 번역 특징을 갖는 그래픽 키보드를 제시하도록 구성된 컴퓨팅 디바이스의 예시적인 동작을 도시하는 흐름도이다.
일반적으로, 본 발명는 컴퓨팅 디바이스가 그래픽 키보드로 입력되는 단어의 실시간 번역을 수행하고 상기 번역을 그래픽 키보드 내에 디스플레이할 수 있게 하는 기술에 관한 것이다. 예를 들어, 컴퓨팅 디바이스가 그래픽 사용자 인터페이스(GUI)의 그래픽 키보드에서 입력을 검출함에 따라, 컴퓨팅 디바이스는 사용자가 상기 입력으로부터 결정된 단어를 제2 언어로 번역하기를 원할 수도 있다고 추론할 수 있다. 사용자로부터 임의의 추가 입력을 요구하지 않고, 컴퓨팅 디바이스는 사용자가 번역하기를 원할 수 있는 제2 언어를 자동으로 결정할 수 있고, 제1 언어의 단어를 제1 언어와 다른 제2 언어로 자동 번역할 수 있다.컴퓨팅 디바이스는 사용자가 번역하기를 원할 수 있는 제2 언어를 자동으로 결정할 수 있고, 제1 언어의 단어를 제1 언어와 다른 제2 언어로 자동 번역할 수 있다. 디바이스는 그래픽 키보드 내에서 디스플레이하기 위해 번역의 그래픽 표시를 출력할 수 있다. 일부 예에서, 상기 번역의 그래픽 표시와 관련된 입력을 검출하는 것에 응답하여, 컴퓨팅 디바이스는 제1 언어로 입력된 원(original) 단어를 제2 언어로 된 단어의 번역으로 대체할 수 있다.
자동 제2 언어 검출 및 통합 번역을 갖는 그래픽 키보드에 제공함으로써, 사용자는 비-모국어(non-native language)로 텍스트를 입력하기 위해 상이한 애플리케이션 GUI 사이를 전환할 필요 없이, 사용자가 타이핑할 때 그래픽 키보드 내에서 단어의 선택 가능한 번역을 자동으로 획득할 수 있다. 이러한 방식으로, 본 발명의 기술은 다국어 텍스트 입력을 수행하는데 필요한 사용자 입력의 수를 감소시킬 수 있으며, 이는 사용자 경험을 단순화할 수 있고 컴퓨팅 디바이스의 전력 소비를 감소시킬 수 있다.
본 발명의 전반에 걸쳐, 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템은, 컴퓨팅 디바이스가 정보를 분석하기 위해 컴퓨팅 디바이스의 사용자로부터 허가를 수신하는 경우에만, 컴퓨팅 디바이스 및 컴퓨팅 디바이스의 사용자와 관련된 정보(예를 들어, 컨텍스트, 위치, 속도, 검색 질의 등)를 분석한다. 예를 들어, 아래에서 논의되는 상황에서, 컴퓨팅 디바이스 또는 컴퓨팅 시스템이 사용자와 관련된 정보를 수집하거나 사용할 수 있기 전에, 사용자는 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템의 프로그램 또는 특징(features)이 사용자 정보(예를 들어, 사용자의 현재 위치, 현재 속도 등에 관한 정보)를 수집하여 사용할 수 있는지 여부를 제어하거나 또는 디바이스 및/또는 시스템이 사용자와 관련될 수있는 콘텐츠를 수신할 수 있는지 여부 및/또는 방법을 지시하기 위한 입력을 제공할 기회를 제공받을 수 있다. 또한, 소정 데이터는 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템에 의해 저장되거나 사용되기 전에 하나 이상의 방식으로 처리되어 개인 식별 정보가 제거될 수 있다. 예를 들어, 사용자의 신원은 사용자에 대해 개인 식별 정보를 확인할 수 없도록 처리될 수 있거나 사용자의 특정 위치가 결정될 수 없도록 사용자의 지리적 위치를 위치 정보가 획득된 곳(예컨대, 도시, 우편 번호 또는 주(state) 수준)으로 일반화할 수 있다. 따라서, 사용자는 정보가 어떻게 사용자에 대해 수집되고 컴퓨팅 디바이스 및 컴퓨팅 시스템에 의해 사용되는지에 대한 제어를 가질 수 있다.
도 1a 내지 도 1c는 본 발명의 하나 이상의 양태에 따라, 통합된 번역 특징을 갖는 그래픽 키보드를 제시하도록 구성된 예시적인 컴퓨팅 디바이스(110)를 나타내는 개념도이다. 컴퓨팅 디바이스(110)는 스마트 폰, 태블릿 컴퓨터, 랩톱 컴퓨터, 컴퓨터화된 시계, 컴퓨터화된 안경, 컴퓨터화된 글러브(gloves) 또는 임의의 다른 유형의 휴대용 컴퓨팅 디바이스와 같은 모바일 디바이스를 나타낼 수 있다. 컴퓨팅 디바이스(110)의 추가의 예는 데스크탑 컴퓨터, 텔레비전, 개인 휴대 정보 단말기(PDA), 휴대용 게임 시스템, 미디어 플레이어, 전자책 판독기, 모바일 텔레비전 플랫폼, 자동차 네비게이션 및 엔터테인먼트 시스템, 차량(예컨대, 자동차, 항공기 또는 기타 차량) 조종 디스플레이 또는 디스플레이를 위한 그래픽 키보드를 출력할 수 있는 임의의 유형의 웨어러블 및 비-웨어러블, 모바일 또는 비-모바일 컴퓨팅 디바이스를 포함한다.
컴퓨팅 디바이스(110)는 프레즌스 감지 디스플레이(PSD)(112), 사용자 인터페이스(UI) 모듈(120) 및 키보드 모듈(122)을 포함한다. 모듈(120 및 122)은 소프트웨어, 하드웨어, 펌웨어, 또는 컴퓨팅 디바이스(110)에 상주하거나 및/또는 실행중인 하드웨어, 소프트웨어 및 펌웨어의 조합을 사용하여 기술된 동작들을 수행할 수 있다. 컴퓨팅 디바이스(110)의 하나 이상의 프로세서는 모듈(120 및 122)의 동작들을 수행하기 위해 컴퓨팅 디바이스(110)의 메모리 또는 다른 비일시적인 저장 매체에 저장된 명령들을 실행할 수 있다. 컴퓨팅 디바이스(110)는 하부 하드웨어상에서 실행되는 가상 머신으로서 모듈(120, 122)을 실행할 수 있다. 모듈(120 및 122)은 운영체제 또는 컴퓨팅 플랫폼의 하나 이상의 서비스로서 실행할 수 있다. 모듈들(120 및 122)은 컴퓨팅 플랫폼의 애플리케이션 계층에서 하나 이상의 실행 가능 프로그램들로서 실행될 수 있다.
컴퓨팅 디바이스(110)의 PSD(112)는 컴퓨팅 디바이스(110)에 대한 각각의 입력 및/또는 출력 디바이스로서 기능할 수 있다. PSD(112)는 다양한 기술을 사용하여 구현될 수 있다. 예를 들어, PSD(112)는 저항성 터치 스크린, 표면 음파 터치 스크린, 용량성 터치 스크린, 투영성 커패시턴스 터치 스크린, 압력 감지 스크린, 음향 펄스 인식 터치 스크린 또는 다른 프레즌스 감지 디스플레이 기술과 같은 프레즌스 감지 입력 스크린을 사용하는 입력 디바이스로서 기능할 수 있다. PSD(112)는 또한 액정 디스플레이(LCD), 도트 매트릭스 디스플레이, 발광 다이오드(LED) 디스플레이, 유기 발광 다이오드(OLED) 디스플레이 등과 같은 임의의 하나 이상의 디스플레이 디바이스를 사용하는 출력(예컨대, 디스플레이) 디스플레이, 전자 잉크 또는 컴퓨팅 디바이스(110)의 사용자에게 가시적인 정보를 출력할 수있는 유사한 단색(monochrome) 또는 컬러 디스플레이를 포함할 수 있다.
PSD(112)는 각각의 컴퓨팅 디바이스(110)의 사용자로부터 입력(예를 들어, 터치 및 비접촉 입력)을 검출할 수 있다. PSD(112)는 사용자로부터 하나 이상의 제스처(예컨대, 손가락 또는 스타일러스 펜으로 PSD(112)의 하나 이상의 위치에서 또는 그 부근에서 터치, 포인팅 및/또는 스와이핑)를 검출함으로써 입력의 표시 (indication)를 검출할 수 있다. PSD(112)는 컴퓨팅 디바이스(110)에 의해 제공되는 기능과 관련될 수 있는 사용자 인터페이스(예를 들어, 사용자 인터페이스(114A-114C))의 형태로 사용자에게 정보를 출력할 수 있다. 이러한 사용자 인터페이스는 컴퓨팅 디바이스(110)에서 실행되는 또는 컴퓨팅 디바이스(110)(예를 들어, 전자 메시지 애플리케이션, 채팅 애플리케이션, 인터넷 브라우저 애플리케이션, 모바일 또는 데스크탑 운영 체제, 소셜 미디어 애플리케이션, 전자 게임 및 기타 유형의 애플리케이션)로부터 액세스 가능한 컴퓨팅 플랫폼, 운영 체제, 애플리케이션 및/또는 서비스와 연과될 수 있다. 예를 들어, PSD(112)는 도 1a 내지 도 1c에 도시된 바와 같이, 컴퓨팅 디바이스(110)에서 실행되는 채팅 애플리케이션의 그래픽 사용자 인터페이스이고 PSD(112)의 다양한 위치에 디스플레이되는 다양한 그래픽 요소를 포함하는 사용자 인터페이스(114A-114C)(통칭하여 "사용자 인터페이스 (114)")를 제시할 수 있다.
도 1a 내지 도 1c에 도시된 바와 같이, 사용자 인터페이스(114)는 채팅 사용자 인터페이스이지만, 사용자 인터페이스(114)는 통합된 번역 특징을 갖는 그래픽 키보드를 포함하는 임의의 그래픽 사용자 인터페이스일 수 있다. 사용자 인터페이스(114)는 출력 영역(116A), 그래픽 키보드(116B) 및 편집 영역(116C)을 포함한다. 컴퓨팅 디바이스(110)의 사용자는 그래픽 키보드(116B)에 입력을 제공하여 출력 영역(116A) 내에 디스플레이된 전자 메시지의 내용을 형성하는 편집 영역(116C) 내의 텍스트 문자를 생성할 수 있다. 출력 영역(116A) 내에 디스플레이된 메시지는 컴퓨팅 디바이스(110)의 사용자와 다른 컴퓨팅 디바이스의 사용자 간의 채팅 대화를 형성한다.
UI 모듈(120)은 PSD(112) 및 컴퓨팅 디바이스(110)의 다른 컴포넌트와의 사용자 상호 작용을 관리한다. 다시 말해서, UI 모듈(120)은 PSD(112)에 의해 검출된 사용자 입력에 기초하여 결정을 행하고 사용자 입력에 응답하여 PSD(112)에서 출력을 생성하기 위해 컴퓨팅 디바이스(110)의 다양한 컴포넌트들 사이의 중개자 역할을 할 수 있다. UI 모듈(120)은 PSD(112)로 하여금 사용자 인터페이스(예컨대, 사용자 인터페이스(114))를 출력하게 하기 위해 컴퓨팅 디바이스(110)의 애플리케이션, 서비스, 플랫폼 또는 다른 모듈로부터 명령을 수신할 수 있다. UI 모듈(120)은 사용자가 PSD(112)에 제시된 사용자 인터페이스를 보고 상호 작용할 때 컴퓨팅 디바이스(110)에 의해 수신된 입력을 관리할 수 있고, 애플리케이션, 서비스, 플랫폼, 또는 사용자 입력을 처리하고 있는 컴퓨팅 디바이스(110)의 다른 모듈로부터 추가적인 명령을 수신하는 것에 응답하여 사용자 인터페이스를 업데이트할 수 있다.
키보드 모듈(122)은 통합된 번역 특징을 갖는 그래픽 키보드를 컴퓨팅 디바이스(110)에 제공하는 컴퓨팅 디바이스(110)에서 실행되거나 액세스 가능한 애플리케이션, 서비스 또는 컴포넌트를 나타낸다. 키보드 모듈(122)은 키보드 모듈(122)이 종래의 그래픽 키보드와 유사한 기능을 하는 텍스트 입력 모드 또는 키보드 모듈(122)이 다양한 통합된 번역 기능을 수행하는 번역 모드에서 동작하는 것 사이를 전환할 수 있다.
일부 예에서, 키보드 모듈(122)은 컴퓨팅 디바이스(110)에서 실행되는 독립형 애플리케이션, 서비스 또는 모듈일 수 있고, 다른 예에서, 키보드 모듈(122)은 그의 하위 컴포넌트일 수 있다. 예를 들어, 키보드 모듈(122)은 컴퓨팅 디바이스(110)에서 실행중인 채팅 또는 메시징 애플리케이션에 통합될 수 있는 반면, 다른 예들에서, 키보드 모듈(122)은 애플리케이션 또는 운영 플랫폼이 그래픽 키보드 입력 기능을 필요로 할 때마다 컴퓨팅 디바이스(110)의 애플리케이션 또는 운영 플랫폼에 의해 호출되는 독립형 애플리케이션 또는 서브 루틴일 수 있다. 일부 예에서, 컴퓨팅 디바이스(110)는 서비스 제공자의 애플리케이션 저장소와 같은 (예를 들어, 인터넷을 통해) 애플리케이션 분배 플랫폼으로부터 키보드 모듈(122)을 다운로드하여 설치할 수 있다. 다른 예에서, 키보드 모듈(122)은 컴퓨팅 디바이스(110)의 생산 중에 미리 적재될 수 있다
텍스트 입력 모드에서 동작할 때, 컴퓨팅 디바이스(110)의 키보드 모듈(122)은, PSD(112)에서 디스플레이하기 위한 그래픽 키보드 레이아웃을 생성하는 것, PSD(112)에서 검출된 입력을 그래픽 키들의 선택에 맵핑하는 것, 선택된 키들에 기초하여 문자를 결정하는 것 또는 선택된 키들로부터 결정된 문자들에 기초하여 단어 및/또는 어구를 예측하거나 자동 수정하는 것과 같은, 텍스트 입력을 위해 사용되는 종래의 그래픽 키보드 동작들을 수행할 수 있다.
그래픽 키보드(116B)는 그래픽 키들(118A)로서 디스플레이된 그래픽 요소들(elements)을 포함한다. 키보드 모듈(122)은 사용자 인터페이스(114) 내의 그래픽 키보드(116B)의 레이아웃을 지정하는 정보를 UI 모듈(120)로 출력할 수 있다. 예를 들어, 정보는 그래픽 키(118A)의 위치, 크기, 색 및 다른 특성을 지정하는 명령들을 포함할 수 있다. 키보드 모듈(122)로부터 수신된 정보에 기초하여, UI 모듈(120)은 사용자 인터페이스(114)의 일부로서 PSD(112)가 그래픽 키보드(116B)를 디스플레이하게 할 수 있다.
그래픽 키들(118A)의 각 키는 상기 키 내에 디스플레이된 각각의 문자(예를 들어, 문자, 숫자, 구두점 또는 다른 문자)와 관련될 수 있다. 컴퓨팅 디바이스(110)의 사용자는 편집 영역(116C)에 콘텐츠(예를 들어, 문자, 검색 결과 등)를 입력하기 위해 하나 이상의 그래픽 키들(118A)이 디스플레이되는 PSD(112)의 위치에 입력을 제공할 수 있다(예를 들어, 출력 영역(116A) 내에 전송되고 디스플레이되는 메시지를 구성하기 위해 또는 컴퓨팅 디바이스(110)가 그래픽 키보드(116B) 내에서 실행하는 검색 질의를 입력하기 위해). 키보드 모듈(122)은 PSD(112)에 의해 검출된 입력과 관련된 위치를 나타내는 정보를 UI 모듈(120)로부터 수신할 수 있으며, 이는 그래픽 키들의 각각의 위치에 관련된다. 공간 및/또는 언어 모델을 사용하여, 키보드 모듈(122)은 상기 입력을 키 및 문자, 단어 및/또는 어구의 선택들로 번역할 수 있다.
예를 들어, PSD(112)는 컴퓨팅 디바이스(110)의 사용자가 상기 PSD(112)가 그래픽 키들(118A)을 제시하는 PSD(112)의 위치 또는 그 부근에서 사용자 입력을 제공할 때 사용자 입력을 검출할 수 있다. UI 모듈(120)은 PSD(112)로부터, PSD(112)에 의해 검출된 사용자 입력의 표시를 수신하여, 사용자 입력에 관한 정보를 키보드 모듈(122)에 출력할 수 있다. 사용자 입력에 관한 정보는 PSD(112)에 의해 검출된 하나 이상의 터치 이벤트(예컨대, 입력에 대한 위치 및 다른 정보)의 표시를 포함할 수 있다.
UI 모듈(120)로부터 수신 된 정보에 기초하여, 키보드 모듈(122)은 PSD (112)에서 검출된 입력을 그래픽 키들(118A)의 선택에 맵핑하고, 선택된 키들(118A)에 기초하여 문자들을 결정하고, 상기 선택된 키(118A)와 관련된 문자들에 기초하여 결정된 예측 또는 자동 수정 단어 및/또는 구를 표시할 수 있다. 예를 들어, 키보드 모듈(122)은 키들(118A)의 위치 및 입력에 대한 정보에 기초하여, 가장 가능성 있는 하나 이상의 키들(118A)이 선택되는지를 결정할 수 있는 공간 모델을 포함할 수 있다. 상기 가장 가능성 있는 하나 이상의 키들(118A)이 선택되는 것을 결정하는 것에 응답하여, 키보드 모듈(122)은 하나 이상의 문자, 단어 및/또는 구를 결정할 수 있다. 예를 들어, PSD(112)에서 사용자 입력으로부터 선택되는 하나 이상의 키들(118A) 각각은 개별 문자 또는 키보드 동작을 나타낼 수 있다. 키보드 모듈(122)은 하나 이상의 선택된 키들(118A)에 기초하여 선택된 문자들의 시퀀스를 결정할 수 있다. 일부 예에서, 키보드 모듈(122)은 언어 모델을 문자들의 시퀀스에 적용하여 사용자가 키들(118A)의 선택에 기초하여 입력하려고 하는 하나 이상의 가장 가능성 있는 후보 문자, 형태소(morphemes), 단어 및/또는 구를 결정할 수 있다.
키보드 모듈(122)은 문자 및/또는 후보 단어 및 구의 시퀀스를 UI 모듈(120)로 전송할 수 있고, UI 모듈(120)은 PSD(112)로 하여금 편집 영역(116C) 내의 텍스트로서 하나 이상의 키(118A)의 선택으로부터 결정된 문자 및/또는 후보 단어를 제시하게 할 수 있다. 일부 예들에서, 텍스트 입력 동작을 수행하기 위한 종래의 키보드로서 기능할 때, 그리고 그래픽 키들(118A)에서 사용자 입력을 수신하는 것에 응답하여(예를 들어, 사용자가 편집 영역(116C)에 텍스트를 입력하기 위해 그래픽 키보드(116B)에 타이핑할 때), 키보드 모듈(122)은 UI 모듈(120)로 하여금 하나 이상의 선택 가능한 철자 교정(spelling corrections) 및/또는 추천 영역(118B) 내의 선택 가능한 단어 또는 구 제안(suggestions)으로서 상기 후보 단어 및/또는 구를 표시하게 할 수 있다.
텍스트 입력에 사용되는 종래의 그래픽 키보드 동작을 수행하는 것에 부가하여, 컴퓨팅 디바이스(110)의 키보드 모듈(122)은 또한 통합 번역 기능(integrated translation capability)을 제공한다. 즉, 컴퓨팅 디바이스(110)의 사용자가 그래픽 키보드(116B)를 제공하는 사용자 인터페이스(114A)(예를 들어, 컴퓨팅 디바이스(110)에서 실행되거나 컴퓨팅 디바이스(110)로부터 멀어지도록 요구하는 것보다, 키보드 모듈(122)은 키보드 모듈(122)이 그래픽 키보드(116B)가 디스플레이되는 PSD(112)의 동일한 영역 내에 상기 그래픽 키보드(116B)를 사용하여 입력되는 단어의 번역 동작을 실행하여 번역을 제시할 수 있는 번역 모드에서 동작할 수 있다. 본 명세서에 개시된 바와 같이, 영역(118B)은 키보드 모듈(122)이 통상적인 텍스트 입력 모드로 동작할 때는 "제안 영역(suggestion region)"(118B)으로 지칭될 수 있고, 키보드 모듈(122)이 번역 모드로 동작할 때에는 "번역 영역"(118B)으로 지칭될 수 있다.
전술한 바와 같이, 키보드 모듈(122)은 컴퓨팅 디바이스(110)에서 또는 그 단일의 통합된 하위 컴포넌트로서 실행되는 독립형 애플리케이션, 서비스 또는 모듈로서 실행할 수 있다. 따라서, 키보드 모듈(122)이 컴퓨팅 디바이스(110)에서 실행중인 채팅 또는 메시징 애플리케이션의 일부를 형성하는 경우, 키보드 모듈(122)은 채팅 또는 메시징 애플리케이션에 번역 기능뿐만 아니라 텍스트 입력 기능을 제공할 수 있다. 유사하게, 키보드 모듈(122)이 컴퓨팅 디바이스(110)의 애플리케이션 또는 운영 플랫폼에 의해 호출되는 독립형 애플리케이션 또는 서브 루틴인 경우, 애플리케이션 또는 운영 플랫폼이 그래픽 키보드 입력 기능을 필요로 할 때마다, 키보드 모듈(122)은 호출(invoking) 애플리케이션 또는 운영 플랫폼에 번역 기능뿐만 아니라 텍스트 입력 기능을 제공할 수 있다.
키보드 모듈(122)은 번역 모드에서 더 동작할 수 있다. 일부 예에서, 번역 모드에서 동작할 때, 키보드 모듈(122)은 그래픽 키보드(116B)가 번역 요소(118C)를 포함하도록 할 수 있다. 번역 요소(118C)는 그래픽 키보드(116B)의 다양한 번역 특징들 중 하나 이상을 호출하기 위한 그래픽 키보드(116B)의 선택 가능한 요소를 나타낸다. 예를 들어, (예컨대, 검색 요소(118C)가 디스플레이되는 PSD(112)의 영역내 또는 위치에서의 태핑(tapping) 또는 제스처에 의해) 번역 요소(118C)를 선택함으로써, 사용자는 컴퓨팅 디바이스(110)로 하여금 키보드 모듈(122)이 그래픽 키(118A)에서의 입력으로부터 결정하는 단어들의 번역을 시작하게 할 수 있거나 또는 사용자가 컴퓨팅 디바이스(110)에서 실행하거나 컴퓨팅 디바이스(110)로부터 액세스할 수있는 개별적인 애플리케이션, 서비스 또는 특징으로 이동(navigate)할 것을 요구하지 않는 상기 키보드 모듈(122)에 의해 제공된 다른 다양한 통합 번역 특징을 수행하게 할 수 있다.
예를 들어, UI 모듈(120)은 컴퓨팅 디바이스(110)의 사용자가 선택된 선택 가능한 요소(118C)를 가질 수 있음을 나타내는 정보를 키보드 모듈(122)로 출력할 수 있다. 상기 요소(118C)가 선택되었다는 결정에 응답하여, 키보드 모듈(122)은 번역 모드로 전환할 수 있다. 번역 모드에서 동작하는 동안, 키보드 모듈(122)은 전통적 단일 언어 텍스트 입력에 주로 기인하는 다른 동작들에 부가하여 또는 그에 반하여, 번역 기능을 실행하기 위해 그래픽 키보드(116B)를 재구성할 수 있다.
예를 들어, 키보드 모듈(122)은 번역의 그래픽 표시를 선택 가능한 요소로서 디스플레이하도록 구성된 번역 영역으로서 동작하도록 제안 영역(118B)을 재구성할 수 있다. 상기 번역의 그래픽 표시는 키보드 모듈(122)이 소스 언어와 관련된 언어 모델, 어휘 또는 사전으로부터 원래 유도한 소스 언어 단어의 목적 언어 번역일 수 있다. 예를 들어, 소스 언어가 영어이고 목적 언어가 전통 중국어인 경우, 제안 영역(118B) 내에 영어 철자 또는 단어 제안을 제공하기보다는 또는 부가하여, 컴퓨팅 디바이스(110)는 제안 영역(118B) 내에 중국어로 동등한 제안된 철자 또는 단어 제안을 포함할 수 있다.
동작시에, 사용자는 컴퓨팅 디바이스(110)에 의존하여 친구와 관련된 디바이스와 텍스트 메시지를 교환할 수 있다. 사용자는 영어 원어민일 수일 있고 친구는 주로 전통 중국어를 말할 수 있다. 때때로, 사용자는 전통 중국어를 말하여 친구에게 감동을 주려고 시도할 수 있다. 키보드 모듈(122)은 컴퓨팅 디바이스(110) 및 다른 컴퓨팅 디바이스에 의해 교환되는 메시지의 내용으로부터, 사용자에 의해 사용된 주요 언어 또는 메시지의 "소스 언어"가 일반적으로 영어(예컨대, 사용자가 전형적으로 영어 메시지를 타이핑하고 수신함)이고 때로는, 사용자에 의해 사용되는 제2 언어 또는 "목적 언어"가 전통 중국어(예컨대, 사용자가 전통 중국어로 작성된 메시지를 보내거나 받는 경우)임을 학습할 수 있다.
도 1a에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 친구와 관련된 디바이스로부터, "어디서 만나고 싶니?"라는 전통 중국어 메시지를 수신할 수 있다. 컴퓨팅 디바이스(110)는 친구와 관련된 디바이스로부터 수신된 메시지와 함께 메시지 버블을 포함하는 디스플레이용 사용자 인터페이스(114A)를 출력할 수 있다.
PSD(112)에 디스플레이된 메시지를 본 후에, 컴퓨팅 디바이스(110)의 사용자는 키들(118A)을 선택하기 위한 입력을 제공하여, 예를 들어 키들(118A)이 디스플레이되는 PSD(112)의 위치 또는 근처에서 제스처함으로써 응답 메시지를 구성할 수 있다. 컴퓨팅 디바이스(110)는 하나 이상의 키들(118A)의 선택에 기초하여 소스 언어로부터 하나 이상의 후보 단어를 결정할 수 있다. 예를 들어, 컴퓨팅 디바이스의 사용자가 키(118A)에서 입력을 제공함에 따라, 키보드 모듈(122)은 UI 모듈(120)로부터 입력의 표시를 수신하여 상기 입력으로부터 키(118A)의 선택을 결정할 수 있다. 영어와 관련된 공간 및/또는 언어 모델을 사용하여, 키보드 모듈(122)은 상기 선택에 기초하여, 사용자가 "금단의 도시(Forbidden City)"라는 단어를 입력했을 가능성이 있는지를 결정할 수 있다.
컴퓨팅 디바이스(110)는 편집 영역(116C) 내의 디스플레이를 위해, 컴퓨팅 디바이스(110)가 사용자 입력으로부터 도출한 후보 단어의 표시로서 텍스트 문자 "금단의 도시"를 출력할 수 있다. 예를 들어, 키보드 모듈(122)은 UI 모듈(120)에 정보를 전송하여 UI 모듈(120)로 하여금 편집 영역(116C) 내에 텍스트 "금단의 도시"를 제시하도록 할 수 있다.
컴퓨팅 디바이스(110)는 소스 언어와 다른 목적 언어와 연관된 후보 단어의 번역을 결정할 수 있다. 예를 들어, 친구를 감동시키기 위해, 사용자는 키보드 모듈(122)로 하여금 상기 단어 "금단의 도시"의 번역을 제공하게 하도록 선택 가능한 요소(118C)에서 입력을 제공할 수 있다. UI 모듈(120)로부터, 선택 가능한 요소 (118C)와 관련된 PSD(112)의 위치에서 입력의 표시를 수신하는 것에 응답하여, 키보드 모듈(122)은 번역 모드에서 동작하도록 전환하여 그래픽 키들(118A)의 선택으로부터 결정된 단어를 번역할 수 있다. 예를 들어, 전통 중국어 모델(예를 들어, 사전 또는 다른 보다 정교한 모델)을 사용하여, 키보드 모듈(122)은 영어 단어 또는 구 "금단의 도시"를 전통 중국어 "紫禁城"으로 번역하는 것을 결정할 수 있다.
컴퓨팅 디바이스(110)는 번역 영역(118B) 내 디스플레이를 위해, 특정 단어의 번역 표시를 출력할 수 있다. 예를 들어, 키보드 모듈(122)은 UI 모듈(120)로 정보를 출력하여 UI 모듈(120)로 하여금 번역 영역(118B) 내의 텍스트로서 전통 중국어 문자 "紫禁城"을 출력하게 할 수 잇다.
번역 영역(118B) 내에 번역을 디스플레이한 후에, 컴퓨팅 디바이스(110)는 편집 영역(116C) 내의 후속 입력에 대한 번역을 컴퓨팅 디바이스(110)의 사용자가 선택함에 따라 사용자 입력(119A)을 등록할 수 있다. 예를 들어, 키보드 모듈(122)은 번역 영역(118B)이 디스플레이되는 PSD(112)의 위치에서 입력(119A)(예를 들어, 탭 제스처)이 검출되었음을 나타내는 정보를 UI 모듈(120)로부터 수신할 수 있고, 이에 응답하여 UI 모듈(120)로 하여금 텍스트 "금단의 도시"를 텍스트 "紫禁城"으로 대체하게 하는 정보(예를 들어, 명령)을 UI 모듈(120)로 전송할 수 있다.
도 1b에 도시된 바와 같이, 편집 영역(116C) 내의 후보 단어를 후보 단어의 번역으로 대체한 후에, 컴퓨팅 디바이스(110)는 키들(118A)의 "전송(SEND)"키에서 입력(119B)(예컨대, 탭 제스처)을 검출할 수 있다. 예를 들어, UI 모듈(120)은 PSD (112)가 사용자 인터페이스(114B)의 그래픽 키보드(116B)의 "SEND"키를 나타내는 위치에서 또는 그 근처에서 PSD(112)가 입력(119B)을 검출했는지를 결정할 수 있다.
도 1c에 도시된 바와 같이, 컴퓨팅 디바이스(110)는 편집 영역(116C)의 컨텐츠를 친구와 관련된 디바이스에 대한 메시지로서 출력할 수 있고 출력 영역(116A) 내에 해당 메시지를 디스플레이할 수 있다. 예를 들어, UI 모듈(120)은 사용자 인터페이스(114C)와 관련된 채팅 애플리케이션에 정보를 전송할 수 있고, 채팅 애플리케이션은 편집 영역(116C)의 컨텐츠를 전자 메시지 포맷으로 패키징하여 컴퓨팅 장치(110)가 친구와 관련된 디바이스로 전자 메시지를 전송하도록 할 수 있다. 전자 메시지를 전송하는 동안, 채팅 애플리케이션은 UI 모듈(120)로 하여금 출력 영역(116A)에서 전자 메시지의 그래픽 표시를 제시하게 할 수 있다.
통합된 번역 특징을 갖는 그래픽 키보드를 제공함으로써, 예시적인 컴퓨팅 디바이스의 사용자는 사용자가 비-모국어로 텍스트를 입력하기 위해 상이한 애플리케이션 GUI 사이를 전환하도록 요구하지 않고, 그래픽 키보드 내에서 단어의 선택 가능한 번역을 자동으로 얻을 수 있다. 예를 들어 통합된 번역 특징을 갖는 그래픽 키보드를 제공함으로써, 예시적인 컴퓨팅 디바이스는 사용자가 단어의 번역을 메시지에 삽입하기 위해 다수의 GUI 사이를 전환하고 및/또는 복사 및 붙여 넣기 동작을 수행하기 위해 여러 입력을 제공할 필요가 없게 할 수 있다. 이러한 방식으로, 본 발명의 기술은 사용자 입력의 수를 감소시킬 수 있고, 따라서 사용자가 다국어 텍스트 입력을 수행할 수 있는 속도를 증가시켜, 사용자 경험을 단순화할 수 있고 컴퓨팅 디바이스의 전력 소비를 감소시킬 수 있다.
도 2는 본 발명의 하나 이상의 양태에 따라, 통합된 번역 특징을 갖는 그래픽 키보드를 제공하도록 구성된 컴퓨팅 디바이스의 예로서 컴퓨팅 디바이스(210)를 도시한 블록도이다. 도 2의 컴퓨팅 디바이스(210)는 도 1a~1c의 컴퓨팅 디바이스(110)의 일 예로서 아래에서 설명된다. 도 2는 컴퓨팅 디바이스(210)의 단지 하나의 특정 예를 도시하고, 컴퓨팅 디바이스(210)의 다른 많은 예는 다른 경우에 사용될 수 있으며 예시적인 컴퓨팅 디바이스(210)에 포함된 컴포넌트의 서브 세트를 포함하거나 도 2에 도시되지 않은 부가 컴포넌트를 포함할 수 있다.
도 2의 예에 도시된 바와 같이, 컴퓨팅 디바이스(210)는 PSD(212), 하나 이상의 프로세서(240), 하나 이상의 통신 유닛(242), 하나 이상의 입력 컴포넌트 (244), 하나 이상의 출력 컴포넌트(246) 및 하나 이상의 저장 컴포넌트(248)를 포함한다. 프레즌스 감지(presence-sensitive) 디스플레이(212)는 디스플레이 컴포넌트(202) 및 존재 감지 입력 컴포넌트(204)를 포함한다. 컴퓨팅 디바이스(210)의 저장 컴포넌트(248)는 UI 모듈(220), 키보드 모듈(222), 하나 이상의 애플리케이션 모듈(224) 및 하나 이상의 어휘 데이터 저장소(232)를 포함한다. 키보드 모듈(122)은 공간 모델("SM") 모듈(226), 언어 모델("LM") 모듈(228) 및 번역 모듈(230)을 포함할 수 있다. 통신 채널(250)은 컴포넌트 간 통신을 위해 (물리적으로, 통신적으로 및/또는 동작 가능하게) 컴포넌트들(212, 240, 242, 244, 246, 248, 226, 228 및 230) 각각을 상호 연결할 수 있다. 일부 예에서, 통신 채널(250)은 시스템 버스, 네트워크 접속, 프로세스 간 통신 데이터 구조, 또는 데이터를 통신하기 위한 임의의 다른 방법을 포함할 수 있다.
컴퓨팅 디바이스(210)의 하나 이상의 통신 유닛(242)은 하나 이상의 네트워크상에서 네트워크 신호를 송신 및/또는 수신함으로써 하나 이상의 유선 및/또는 무선 네트워크를 통해 외부 디바이스와 통신할 수 있다. 통신 유닛(242)의 예는 (이더넷 카드와 같은) 네트워크 인터페이스 카드, 광 송수신기, 무선 주파수 송수신기, GPS 수신기, 또는 정보를 송신 및/또는 수신할 수있는 임의의 다른 유형의 디바이스를 포함한다. 통신 유닛(242)의 다른 예는 단파 라디오, 셀룰러 데이터 라디오, 무선 네트워크 라디오 및 범용 직렬 버스(USB) 컨트롤러를 포함할 수 있다.
컴퓨팅 디바이스(210)의 하나 이상의 입력 컴포넌트(244)는 입력을 수신할 수 있다. 입력의 예는 촉각, 오디오 및 비디오 입력이다. 일 예에서, 컴퓨팅 디바이스(210)의 입력 컴포넌트(242)는 프레즌스 감지 입력 디바이스(예컨대, 터치 감지 스크린, PSD), 마우스, 키보드, 음성 응답 시스템, 비디오 카메라, 마이크로폰 또는 인간 또는 기계로부터의 입력을 검출하는 임의의 다른 유형의 디바이스를 포함한다.
일부 예에서, 입력 컴포넌트(242)는 하나 이상의 위치 센서(GPS 컴포넌트, Wi-Fi 컴포넌트, 셀룰러 컴포넌트), 하나 이상의 온도 센서, 하나 이상의 움직임 센서(예컨대, 가속도계, 자이로 스코프), 하나 이상의 압력 센서(예컨대, 기압계), 하나 이상의 주변광 센서 및 하나 이상의 다른 센서(예컨대, 마이크, 카메라, 적외선 근접 센서, 습도계 등)를 포함할 수 있다. 다른 센서는 몇 가지 다른 비 제한적인 예를 들면, 심박 센서, 자력계, 포도당 센서, 습도계 센서, 후각 센서, 나침반 센서, 스텝 카운터 센서를 포함할 수 있다.
컴퓨팅 디바이스(110)의 하나 이상의 출력 컴포넌트(246)는 출력을 생성할 수 있다. 출력의 예로는 촉각, 오디오 및 비디오 출력이 있다. 일 예에서, 컴퓨팅 디바이스(210)의 출력 컴포넌트(246)는 PSD, 사운드 카드, 비디오 그래픽 어댑터 카드, 스피커, 음극선 관(CRT) 모니터, 액정 디스플레이(LCD) 또는 사람 또는 기계에 대한 출력을 생성하는 임의의 유형의 디바이스를 포함한다.
컴퓨팅 디바이스(210)의 PSD(212)는 컴퓨팅 디바이스(110)의 PSD(112)와 유사할 수 있고, 디스플레이 컴포넌트(202) 및 프레즌스 감지 입력 컴포넌트(204)를 포함한다. 디스플레이 컴포넌트(202)는 정보가 PSD(212)에 의해 디스플레이되는 스크린일 수 있고, 존재 감지 입력 컴포넌트(204)는 디스플레이 컴포넌트(202)에서 및/또는 디스플레이 컴포넌트(202) 근처(near)의 객체를 검출할 수 있다. 하나의 예시적인 범위로서, 프레즌스 감지 입력 컴포넌트(204)는 2인치 이하의 디스플레이 컴포넌트(202) 내에 있는 손가락 또는 스타일러스와 같은 객체를 검출할 수 있다. 프레즌스 감지 입력 컴포넌트(204)는 객체가 검출된 디스플레이 컴포넌트(202)의 위치(예컨대, [x, y] 좌표)를 결정할 수 있다. 다른 예시적인 범위에서, 프레즌스 감지 입력 컴포넌트(204)는 디스플레이 컴포넌트(202)로부터 6인치 이하의 물체를 검출할 수 있으며 다른 범위도 가능하다. 프레즌스 감지 입력 컴포넌트(204)는 용량성, 유도성 및/또는 광학 인식 기술을 사용하여 사용자의 손가락에 의해 선택된 디스플레이 컴포넌트(202)의 위치를 결정할 수 있다. 일부 예에서, 프레즌스 감지 입력 컴포넌트(204)는 또한 디스플레이 컴포넌트(202)와 관련하여 설명된 바와 같이 촉각, 오디오 또는 비디오 자극을 사용하여 사용자에게 출력을 제공한다. 도 2의 예에서, PSD(212)는 (도 1a~1c의 그래픽 사용자 인터페이스(114)와 같은) 사용자 인터페이스를 제시할 수 있다.
컴퓨팅 디바이스(210)의 내부 컴포넌트로서 도시되어 있지만, PSD(212)는 또한 입력 및 출력을 송신 및/또는 수신하기 위해 컴퓨팅 디바이스(210)와 데이터 경로를 공유하는 외부 컴포넌트를 나타낼 수 있다. 예를 들어, 일 예에서, PSD(212)는 컴퓨팅 디바이스(210)의 외부 패키징(예컨대, 이동 전화상의 스크린) 내에 위치되고 물리적으로 연결된 컴퓨팅 디바이스(210)의 내장된 컴포넌트를 나타낸다. 다른 예에서, PSD(212)는 컴퓨팅 디바이스(210)의 패키징 또는 하우징(예를 들어, 컴퓨팅 디바이스(210)와 유선 및/또는 무선 데이터 경로를 공유하는 모니터, 프로젝터 등)의 외부에 위치되고 물리적으로 분리된 컴퓨팅 디바이스(210)의 외부 컴포넌트를 나타낸다.
컴퓨팅 디바이스(210)의 PSD(212)는 컴퓨팅 디바이스(210)의 사용자로부터의 입력으로서 2 차원 및/또는 3 차원 제스처를 검출할 수 있다. 예를 들어, PSD(212)의 센서는 PSD(212)의 센서의 임계 거리 내에서 사용자의 움직임(예를 들어, 손, 팔, 펜, 스타일러스 등을 움직이는)을 검출할 수 있다. PSD(212)는 상기 움직임의 2 차원 또는 3 차원 벡터 표현을 결정할 수 있고, 상기 벡터 표현을 다차원을 갖는 제스처 입력(예를 들어, 손 흔들기(hand-wave), 핀치(pinch), 박수, 펜 스트로크(pen stroke) 등)과 상관시킬 수 있다. 환언하면, PSD(212)는 사용자가 PSD (212)가 디스플레이하기 위한 정보를 출력하는 스크린 또는 표면에서 또는 그 부근에서 사용자가 제스처하도록 요구할 필요없이 다차원 제스처를 검출할 수 있다. 그 대신에, PSD(212)는 PSD(212)가 디스플레이하기 위한 정보를 출력하는 스크린 또는 표면 근처에 위치할 수도 있고 그렇지 않을 수도 있는 센서에서 또는 센서 근처에서 수행된 다차원 제스처를 검출할 수 있다.
하나 이상의 프로세서(240)는 컴퓨팅 디바이스(210)와 관련된 기능을 구현하고 및/또는 명령을 실행할 수 있다. 프로세서들(240)의 예들은 애플리케이션 프로세서, 디스플레이 컨트롤러, 보조 프로세서, 하나 이상의 센서 허브, 및 프로세서, 프로세싱 유닛, 또는 프로세싱 디바이스로서 기능하도록 구성된 임의의 다른 하드웨어를 포함한다. 모듈들(220, 222, 224, 226, 228 및 230)은 컴퓨팅 디바이스(210)의 다양한 액션, 동작 또는 기능을 수행하기 위해 프로세서(240)에 의해 동작 가능할 수 있다. 예를 들어, 컴퓨팅 디바이스(210)의 프로세서(240)는 프로세서(240)로 하여금 동작 모듈(220, 222, 224, 226, 228 및 230)을 수행하게 하는 저장 컴포넌트(248)에 의해 저장된 명령들을 검색하고 실행할 수 있다. 상기 명령들은 프로세서들(240)에 의해 실행될 때, 컴퓨팅 디바이스(210)로 하여금 저장 컴포넌트(248) 내에 정보를 저장하게 할 수 있다.
컴퓨팅 디바이스(210) 내의 하나 이상의 저장 컴포넌트(248)는 컴퓨팅 디바이스(210)의 동작 동안 프로세싱을 위한 정보를 저장할 수 있다(예를 들어, 컴퓨팅 디바이스(210)는 컴퓨팅 디바이스(210)에서의 실행 동안 모듈들(220, 222, 224, 226, 228 및 230)에 의해 액세스된 데이터를 저장할 수 있다). 예를 들어, 하나 이상의 저장 컴포넌트(248)는 키보드 모듈(222)이 그래픽 키보드에서의 입력에 기초하여 후보 단어들 및 후보 단어들의 번역을 결정하기 위해 사용하는 어휘 데이터 저장소(232)에 언어 정보(linguistic information)를 저장할 수 있다.
일부 예에서, 저장 컴포넌트(248)는 일시적인 메모리이며, 이는 저장 컴포넌트(248)의 주요 목적이 장기 저장이 아니라는 것을 의미한다. 컴퓨팅 디바이스(210)상의 저장 컴포넌트(248)는 정보의 단기 저장을 위해 휘발성 메모리로서 구성될 수 있고, 따라서 전원이 꺼지면 저장된 컨텐츠를 보유하지 않을 수 있다. 휘발성 메모리의 예는 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM), 정적 랜덤 액세스 메모리(SRAM) 및 당 업계에 공지된 다른 형태의 휘발성 메모리를 포함한다.
일부 예에서, 저장 컴포넌트(248)는 또한 하나 이상의 컴퓨터 판독 가능 저장 매체를 포함한다. 일부 예에서, 저장 컴포넌트(248)는 하나 이상의 비일시적인 컴퓨터 판독 가능 저장 매체를 포함한다. 저장 컴포넌트(248)는 통상적으로 휘발성 메모리에 의해 저장되는 것보다 많은 양의 정보를 저장하도록 구성될 수 있다. 저장 컴포넌트(248)는 비 휘발성 메모리 공간으로서 정보의 장기 저장을 위해 구성될 수 있고, 전원 온/오프 사이클 후에 정보를 유지할 수 있다. 비 휘발성 메모리의 예는 자기 하드 디스크, 광 디스크, 플로피 디스크, 플래시 메모리, 또는 전기적으로 프로그램 가능한 메모리(EPROM) 또는 전기적으로 소거 및 프로그램 가능한 (EEPROM) 메모리의 형태를 포함한다. 저장 컴포넌트(248)는 모듈들(220, 222, 224, 226, 228 및 230)과 관련된 프로그램 명령 및/또는 정보(예를 들어, 데이터)를 저장할 수 있다. 저장 컴포넌트(248)는 모듈들(220, 222, 224, 226, 228 및 230)과 관련된 데이터 또는 다른 정보를 저장하도록 구성된 메모리를 포함할 수 있다.
UI 모듈(220)은 도 1a 내지 도 1c의 컴퓨팅 디바이스(110)의 UI 모듈(120)의 모든 기능을 포함할 수 있고, 컴퓨팅 디바이스(210)가 사용자로부터의 입력을 처리하기 위해 프레즌스 감지 디스플레이(212)에서 제공하는 사용자 인터페이스(예컨대, 사용자 인터페이스(114))를 관리하기 위한 UI 모듈(120)과 유사한 동작을 수행할 수 있다. 예를 들어, 컴퓨팅 디바이스(210)의 UI 모듈(220)은 키보드 레이아웃(예를 들어, 영어 QWERTY 키보드 등)에 대해 키보드 모듈(222)에 질의할 수 있다. UI 모듈(220)은 키보드 레이아웃에 대한 요청을 통신 채널(250)을 통해 키보드 모듈(222)로 전송할 수 있다. 키보드 모듈(222)은 상기 요청을 수신하고 키보드 레이아웃과 관련된 데이터로 UI 모듈(220)에 응답할 수 있다. UI 모듈(220)은 통신 채널(250)을 통해 키보드 레이아웃 데이터를 수신하고 해당 데이터를 사용하여 사용자 인터페이스를 생성할 수 있다. UI 모듈(220)은 디스플레이 명령 및 데이터를 통신 채널(250)을 통해 전송하여 PSD(212)로 하여금 PSD(212)에서 사용자 인터페이스를 제시하게 할 수 있다.
일부 예들에서, UI 모듈(220)은 PSD(212)에서 검출된 하나 이상의 사용자 입력의 표시를 수신할 수 있고 키보드 입력(222)으로 사용자 입력에 관한 정보를 출력할 수 있다. 예를 들어, PSD(212)는 사용자 입력을 검출하여 사용자 입력에 관한 데이터를 UI 모듈(220)에 전송할 수 있다. UI 모듈(220)은 검출된 입력에 기초하여 하나 이상의 터치 이벤트를 생성할 수 있다. 터치 이벤트는 사용자 입력의 위치 성분(예컨대, [x, y] 좌표), 시간 성분(예컨대, 사용자 입력이 수신된 경우), 힘 (force) 성분(예컨대, 사용자 입력에 의해 인가된 압력의 양), 또는 사용자 입력에 관한 다른 데이터(예를 들어, 속도, 가속도, 방향, 밀도 등)와 같이 사용자 입력을 특징 짓는 정보를 포함할 수 있다.
사용자 입력으로부터 생성된 터치 이벤트들의 위치 정보에 기초하여, UI 모듈(220)은 검출된 사용자 입력이 그래픽 키보드와 관련되어 있음을 결정할 수 있다. UI 모듈(220)은 추가 해석(interpretation)을 위해 키보드 모듈(222)에 하나 이상의 터치 이벤트의 표시를 전송할 수 있다. 키보드 모듈(22)은 UI 모듈(220)로부터 수신된 터치 이벤트들에 기초하여, 상기 검출된 사용자 입력이 그래픽 키보드의 하나 이상의 키들의 초기 선택을 나타내는 것으로 결정할 수 있다.
애플리케이션 모듈(224)은 통합 검색 특징을 갖는 그래픽 키보드에 의존할 수 있는 컴퓨팅 디바이스(210)에서 실행되고 컴퓨팅 디바이스(210)로부터 액세스 가능한 모든 다양한 개별 애플리케이션 및 서비스들을 나타낸다. 컴퓨팅 디바이스(210)의 사용자는 컴퓨팅 디바이스(210)로 하여금 기능을 수행하도록 하기 위해 하나 이상의 애플리케이션 모듈(224)과 관련된 그래픽 사용자 인터페이스와 상호 작용할 수 있다. 애플리케이션 모듈(224)의 다수의 예가 존재할 수 있으며, 피트니스 애플리케이션, 캘린더 애플리케이션, 개인 비서 또는 예측 엔진, 검색 애플리케이션, 맵 또는 네비게이션 애플리케이션, 운송 서비스 애플리케이션(예컨대, 버스 또는 기차 추적 애플리케이션), 소셜 미디어 애플리케이션, 게임 애플리케이션, 이메일 애플리케이션, 채팅 또는 메시징 애플리케이션, 인터넷 브라우저 애플리케이션, 또는 컴퓨팅 디바이스(210)에서 실행할 수있는 임의의 및 모든 다른 애플리케이션을 포함할 수 잇다.
키보드 모듈(222)은 도 1a 내지 도 1c의 컴퓨팅 디바이스(110)의 키보드 모듈(122)의 모든 기능을 포함할 수 있으며, 키보드 모듈(122)과 유사한 동작을 수행하여 통합 검색 기능을 갖는 그래픽 키보드를 제공할 수 있다. 키보드 모듈(222)은 키보드 모듈(222)의 기능을 수행할 수 있는 SM 모듈(226), LM 모듈(228) 및 검색 모듈(230)과 같은 다양한 서브 모듈을 포함할 수 있다.
SM 모듈(226)은 입력으로서 하나 이상의 터치 이벤트를 수신하여, 하나 이상의 문자가 상기 터치 이벤트를 얼마나 가능성 있게 또는 얼마나 정확하게 정의하는지를 나타내는 확실성의 정도 또는 공간 모델 스코어와 함께, 하나 이상의 터치 이벤트를 나타내는 문자 또는 문자 시퀀스를 출력할 수 있다. 환언하면, SM 모듈(226)은 키보드의 하나 이상의 키들의 선택으로서 터치 이벤트를 추론할 수 있고, 하나 이상의 키들의 선택에 기초하여, 문자 또는 문자 시퀀스를 출력할 수 있다.
키보드 모듈(222)이 텍스트 입력 모드 또는 번역 모드에서 동작할 때, LM 모듈(228)은 입력으로서 문자 또는 문자 시퀀스를 수신하여, LM 모듈(228)이 어휘집(예컨대, 사전)으로부터, LM 모듈(228)이 주어진 언어 문맥(예컨대, 서면 언어(written language)로 된 문장)에 대한 입력으로서 수신한 문자들 시퀀스에 대한 잠재적 대체물임을 식별하는 하나 이상의 후보 문자, 단어 또는 구를 출력할 수 있다. 키보드 모듈(222)은 UI 모듈(220)로 하여금 사용자 인터페이스(114)의 제안 영역(118B)에 하나 이상의 후보 단어를 제시하도록 할 수 있다.
어휘 데이터 저장소들(232)은 통상적인 텍스트 입력뿐만 아니라 번역 동작을 수행하기 위해 키보드 모듈(222)에 의해 사용되는 다양한 가능 소스 및 목적 언어들의 다수의 어휘집(예를 들어, 사전들)을 포함할 수 있다. 데이터 저장소(232)에 저장된 각각의 어휘집은 서면 언어 어휘집(예를 들어, 사전) 내의 단어들의 리스트를 포함할 수 있다. 예를 들어, 어휘집은 단어들의 데이터베이스(예를 들어, 표준 사전에 있는 단어들 및/또는 사용자 또는 컴퓨팅 디바이스(210)에 의해 사전에 추가된 단어들)를 포함할 수 있다. LM 모듈(228)은 문자열의 문자의 일부 또는 전부를 포함하는 하나 이상의 문자, 단어 및/또는 구를 식별하기 위해, 어휘 데이터 저장소(232)의 어휘집에서 문자열의 룩업을 수행할 수 있다.
예를 들어, LM 모듈(228)은 입력된 문자 또는 문자들의 시퀀스와 동일한 문자들의 적어도 일부를 포함하는 컴퓨팅 디바이스(210)의 어휘집에 위치한 하나 이상의 후보 단어들에 언어 모델 확률 또는 유사 계수(예를 들어, Jaccard 유사 계수)를 할당할 수 있다. 하나 이상의 후보 단어 각각에 할당된 언어 모델 확률은, LM 모듈(228)에 의해 분석되는 문자들의 현재 시퀀스를 수신하기 이전 및/또는 후속하여 프레즌스 감지 입력 컴포넌트(204)에 의해 감지된 텍스트 입력으로부터 발생된 단어들의 시퀀스(예컨대, 문장)에 후속하여, 그 이전에 및/또는 그 안에서 위치된 후보 단어가 일반적으로 발견되는 확실성의 정도 또는 가능성의 정도를 나타낸다. 하나 이상의 후보 단어를 결정하는 것에 응답하여, LM 모듈(228)은 가장 높은 유사도 계수를 갖는 어휘 데이터 저장소(260A)로부터 하나 이상의 후보 단어를 출력할 수 있다.
키보드 모듈(222)의 번역 모듈(230)은 키보드 모듈(222)을 대신하여 통합된 번역 기능을 수행할 수 있다. 즉, (컴퓨팅 디바이스(210)의 사용자가 후보 단어를 번역하기를 원할 수 있다고 결정한 키보드 모듈(222)에 응답하여 자동으로 또는 번역을 시작하도록 컴퓨팅 디바이스(210)를 명령하는 명시적인 사용자 입력에 응답하여 수동으로) 호출될 때, 번역 모듈(230)은 키보드 모듈(222)로 하여금 키보드 모듈(222)이 그래픽 키보드(116B)를 통해 입력되는 단어들의 번역을 디스플레이하게 할 수 있는 번역 영역(118B)으로서 기능하도록 제안 영역(118B)을 재구성하게 할 수 있다.
예를 들어, 번역 모듈(230)은 그래픽 키보드(116B)에서의 사용자 입력에 응답하여 공간 모델(226) 및 언어 모델(228)에 의해 결정된 하나 이상의 후보 단어를 나타내는 텍스트 정보를 입력으로 수신할 수 있다. 번역 모듈(230)은 번역 모델, 룩업 테이블 및 다른 번역 시스템을 사용하여 텍스트 정보에 의해 표시된 하나 이상의 후보 단어의 소스 언어에서 목적 언어로의 번역을 결정할 수 있다. 달리 말하면, 번역 모듈(230)은 소스 언어로부터 후보 단어를 소스 언어와 다른 목적 언어로 번역할 수 있다.
번역 모듈(230)에 의해 사용되는 번역 모델, 룩업 테이블 및 다른 번역 시스템은 키보드 모듈(222)에 통합될 수 있다. 환언하면, 일부 예에서 번역 모듈(230)은 원격 컴퓨팅 디바이스(예를 들어, 클라우드 서비스)를 통해 액세스 가능한 모델 또는 번역 시스템에 의존할 수 있지만, 번역 모듈(230)은 번역을 수행하기 위해 원격 디바이스 및/또는 서비스에 의지하지 않고 온-디바이스(on-device) 번역을 수행할 수도 있다. 컴퓨팅 디바이스(210)에 국부적으로(예를 들어, 저장 디바이스들 (248)에) 저장된 모델들, 룩업 테이블들 및 다른 번역 시스템들에 의존함으로써, 번역 모듈(230)은 번역을 수행할 수 있고, 일부 실시예에서 키보드(116B)에서의 사용자 탭 또는 제스처와 같이 실시간으로 보이는 PSD(212)에서 보다 신속하게 그래픽적 번역을 제시할 수 있다.
번역 모듈(230)은 입력으로서 수신된 하나 이상의 후보 단어들 중 적어도 하나를 특정 언어와 관련하여 식별함으로써 적어도 소스 언어 및/또는 목적 언어를 식별할 수 있다. 하나 이상의 후보 단어가 다수의 상이한 언어에 대해 이용되는 경우에, 번역 모듈(230)은 그래픽 키보드(116B)에서 텍스트를 작성할 때 소스 언어가 컴퓨팅 디바이스(210)의 사용자에 의해 전형적으로 사용되거나 선택된 언어인 것으로 판단할 수 있다. 번역 모듈(230)은 그래픽 키보드(116B)에서 작성되는 텍스트의 번역을 요청할 때 컴퓨팅 디바이스(210)의 사용자에 의해 전형적으로 사용되거나 선택된 언어로서 목적 언어를 자동으로 식별할 수 있다. 일부 예에서, 번역 모듈(230)은 소스 언어 및/또는 목적 언어를 그래픽 키보드(116B)의 키보드 레이아웃과 연관된 언어로서 결정할 수 있다. 그리고 일부 예에서, 번역 모듈(230)은 번역 모듈(230)이 마지막으로 호출되었을 때 사용된 최종 소스 및/또는 목적 언어를 사용하도록 디폴트할 수 있다. 환언하면, 번역 모듈(230)은 이전의 번역에서 사용된 이전의 목적 언어에 기초하여 목적 언어를 결정할 수 있다.
일부 예들에서, 번역 모듈(230)은 사용자 선택 가능 설정(예를 들어, 컴퓨팅 디바이스(210)의 옵션 메뉴로부터)에 기초하여 또는 사용자 인터페이스(114)의 선택 가능 요소(118C)로부터 소스 및/또는 목적 언어를 결정할 수 있다. 예를 들어, 번역 모듈(230)은 번역을 위한 소스 언어 및/또는 목적 언어를 선택하기 위한 사용자 선택 가능 피처가 되도록 선택 가능 요소(118C)를 구성할 수 있다. 일부 예에서, 번역 모듈(230)은 선택 가능 요소(118C)의 선택에 기초하여, 제1 목적 언어로부터 상기 제1 목적 언어 및 소스 언어와 상이한 제2 목적 언어로 상기 목적 언어를 변경할 수 있다. 그리고 일부 예에서, 번역 모듈(230)은 선택 가능 요소(118C)의 선택에 기초하여, 제1 소스 언어로부터 상기 제1 소스 언어 및 목적 언어와 상이한 제2 소스 언어로 상기 소스 언어를 변경할 수 있다. 번역 모듈(230)은 전술한 기술들의 조합을 사용하여 목적 및 소스 언어를 결정할 수 있다.
어느 경우에나, 번역 모듈(230)은 목적 및/또는 소스 언어의 변경에 응답하여 키들(118A)의 선택에 기초하여 결정된 사전 번역을 갱신할 수 있다. 예를 들어, 번역 모듈(230)은 선택 가능 요소(118C)의 선택에 응답하여 목적 언어를 변경한 후에 제1 목적 언어로부터 제2 목적 언어로 후보 단어의 번역을 갱신할 수 있다.
키보드 모듈(222)은 사용자가 위치 정보, 메시지의 송신자 및/또는 수신자에 관한 정보 또는 다른 문맥 정보에 기초하여 후보 단어를 번역하고자 하는지를 결정하기 위해 하나 이상의 규칙 및/또는 기계 학습 기술을 기반으로 만들어진 모델에 의존할 수 있다. 본 명세서 전반에 걸쳐, 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템이 컴퓨팅 디바이스의 사용자로부터 정보를 분석하기 위한 허가를 수신하는 경우에만, 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템이 컴퓨팅 디바이스 및 컴퓨팅 디바이스의 사용자와 관련된 정보(예를 들어, 문맥, 위치, 속도, 검색 질의 등)를 분석하는 예가 개시된다. 예를 들어, 아래에서 논의되는 상황에서, 컴퓨팅 디바이스 또는 컴퓨팅 시스템이 사용자와 관련된 정보를 수집하거나 사용할 수 있기 전에, 사용자는 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템의 프로그램 또는 특징이 사용자 정보 (예컨대, 사용자의 현재 위치, 현재 속도 등에 관한 정보)를 수집하여 사용할 수 있는지 여부를 제어하기 위한 또는 상기 디바이스 및/또는 시스템이 사용자와 관련될 수 있는 컨텐츠를 수신할 수 있는지 여부를 지시하기 위한 입력을 제공할 기회를 제공받을 수있다. 또한, 소정 데이터는 컴퓨팅 디바이스 및/또는 컴퓨팅 시스템에 의해 저장되거나 사용되기 전에 하나 이상의 방식으로 처리되어 개인 식별 정보가 제거될 수 있다. 예를 들어, 사용자의 신원을 처리하여 사용자에 대해 개인 식별 정보를 결정할 수 없도록 하거나 사용자의 지리적 위치를 위치 정보가 획득된 곳(예컨대, 도시, 우편 번호 또는 주 수준)으로 일반화하여 사용자의 특정 위치가 결정될 수 없도록 한다. 따라서, 사용자는 정보가 어떻게 사용자에 대해 수집되고 컴퓨팅 디바이스 및 컴퓨팅 시스템에 의해 사용되는지에 대한 제어를 가질 수 있다.
목적/소스 언어를 자동으로 번역 및 선택하는 예로서, 키보드 모듈(222)은 입력 컴포넌트(244)의 센서 또는 통신 유닛(242)의 무선 수신기(예를 들어, GPS 센서 또는 수신기)로부터 위치 정보를 수신하여, 위치 정보로부터 컴퓨팅 디바이스 (210)의 현재 위치를 추론할 수 있다. 키보드 모듈(222)은 단어의 다양한 영역에서 가장 많이 사용되는 언어를 결정하기 위한 모델에 상기 위치를 입력하여, 현재 위치에서 사용되는(spoken) 가장 가능성 있는 언어의 모델로부터 표시 (indication)를 수신할 수 있다. 사용자가 그래픽 키보드(116C)에서 텍스트를 입력할 때 현재 위치가 컴퓨팅 디바이스(210)의 사용자에 의해 일반적으로 사용되는 언어와 관련되지 않은 지리적 영역에 있다고 키보드 모듈(222)이 결정한 것에 응답하여, 키보드 모듈(222)은 자동으로 번역 모듈(230)을 호출할 수 있다. 키보드 모듈(222)은 컴퓨팅 디바이스(210)의 현재 위치에 기초하여 목적 언어를 결정할 수 있고, 번역 모듈(230)로 하여금 현재 위치와 관련된 목적 언어로 번역 영역(118B)에 상기 번역을 자동적으로 디스플레이하도록 할 수 있다.
자동으로 번역 모듈(230)을 호출하고 사용할 목적 언어를 결정함으로써, 키보드 모듈(222)은 사용자가 그래픽 키보드(116)에서 입력을 제공하는 동안, PSD (212)로 하여금 현재 위치와 연관된 언어로 상기 입력으로부터 유추된 번역을 제시하도록 할 수 있다. 예를 들어, 컴퓨팅 디바이스(210)의 사용자가 덴마크의 국가로 여행을 가서, 컴퓨팅 디바이스(210)의 사용자가 일반적으로 영어를 사용하여 컴퓨팅 디바이스(210)와 상호 작용하면, 키보드 모듈(22)은 번역 모듈(230)로 하여금 그래픽 키보드(116B)에서의 사용자 입력에 기초하여 결정하는 영어 단어 키보드 모듈(222)의 번역 영역(118B)에서 덴마크어 번역을 자동적으로 제시하도록 할 수 있다.
키보드 모듈(222)은 애플리케이션 모듈들(224)로부터 메시지 정보를 수신하여, 사용자가 후보 단어들을 어떤 특정한 목적 언어로 번역하기를 원하는지 여부를 메시지 정보로부터 추론할 수 있다. 예를 들어, 키보드 모듈(222)이 채팅 애플리케이션(예컨대, 애플리케이션 모듈(224) 중 하나)에 그래픽 키보드 기능을 제공하는 경우, 키보드 모듈(222)은 채팅 애플리케이션에 의해 수신된 메시지 및 채팅 애플리케이션을 사용하여 전송된 메시지에 관한 정보를 얻을 수 있다. 메시지 정보는 메시지의 텍스트 및/또는 메시지에 관한 메타 데이터(예를 들면, 위치, 시간, 수신자 또는 송신자 위치, 수신자 또는 송신자 어드레스 등)를 포함할 수 있다. 만약 사용자가 수신된 메시지에 회신하는 경우, 키보드 모듈(222)은 수신된 메시지 내의 텍스트의 언어를 추론함으로써 사용할 목적 언어를 결정하기 위한 모델 또는 하나 이상의 규칙에 의존할 수 있다. 다시 말해, 키보드 모듈(222)은 텍스트의 일부를 모델에 입력하여 상기 텍스트와 가장 관련이 있을 수 있는 목적 언어를 결정할 수 있다. 마찬가지로, 키보드 모듈은 수신된 메시지의 송신자의 어드레스 또는 위치와 관련된 언어 및 컴퓨팅 디바이스(220)에 의해 송수신되는 메시지와 관련된 다른 정보를 추론함으로써 사용할 목적 언어를 결정할 수 있다.
도 3은 본 발명의 하나 이상의 기술에 따라, 원격 디바이스에 디스플레이하기 위한 그래픽 컨텐츠를 출력하는 예시적인 컴퓨팅 디바이스를 나타내는 블록도이다. 그래픽 콘텐츠는 일반적으로 텍스트, 이미지, 동영상 그룹과 같이 디스플레이 용 출력일 수 있는 임의의 시각적 정보를 포함할 수 있다. 도 3에 도시된 예들은 PSD(312), 통신 유닛(342), 프로젝터(380), 프로젝터 스크린(382), 모바일 디바이스(386) 및 시각 디스플레이 컴포넌트(390)를 포함한다. 일 부 예들에서, PSD (312)는 도 1 및 도 2에 기술된 바와 같이 프레즌스 감지 디스플레이일 수 있다.
독립형 컴퓨팅 디바이스(110)로서 도 1 및 도 2에서 예시의 목적으로 도시되었지만, 컴퓨팅 디바이스(310)와 같은 컴퓨팅 디바이스는 일반적으로 소프트웨어 명령을 실행하기 위한 프로세서 또는 다른 적절한 컴퓨팅 환경을 포함하고, 예를 들어 프레즌스 감지 디스플레이를 포함할 필요가 없는 임의의 컴포넌트 또는 시스템일 수 있다.
도 3의 예에 도시된 바와 같이, 컴퓨팅 디바이스(310)는 도 2의 프로세서(240)와 관련하여 설명된 기능을 포함하는 프로세서일 수 있다. 그러한 예들에서, 컴퓨팅 디바이스(310)는 시스템 버스 또는 다른 적절한 접속일 수 있는 통신 채널(362A)에 의해 PSD(312)에 동작 가능하게 결합될 수 있다. 컴퓨팅 디바이스(310)는 시스템 버스 또는 다른 적절한 접속일 수 있는 통신 채널(362B)에 의해, 후술되는 통신 유닛(342)에 또한 동작 가능하게 결합될 수 있다. 도 3에는 일 예로서 별도로 도시되어 있지만, 컴퓨팅 디바이스(310)는 임의의 수의 하나 이상의 통신 채널에 의해 PSD(312) 및 통신 유닛(342)에 동작 가능하게 결합될 수 있다.
다른 예들에서, 도 1 및 도 2의 컴퓨팅 디바이스(110)에 의해 이전에 도시된 바와 같이, 컴퓨팅 디바이스는 휴대 전화(스마트 폰을 포함하는), 랩탑 컴퓨터 등과 같은 휴대용 또는 모바일 디바이스를 지칭할 수 있다. 일부 예에서, 컴퓨팅 디바이스는 데스크탑 컴퓨터, 태블릿 컴퓨터, 스마트 텔레비전 플랫폼, 카메라, 개인 휴대 정보 단말기(PDA), 서버 또는 메인 프레임일 수 있다.
PSD(312)는 디스플레이 컴포넌트(302) 및 프레즌스 감지 입력 컴포넌트(304)를 포함할 수 있다. 디스플레이 컴포넌트(302)는 예를 들어 컴퓨팅 디바이스(310)로부터 데이터를 수신하고 그래픽 컨텐츠를 디스플레이할 수 있다. 일부 예에서, 프레즌스 감지 입력 컴포넌트(304)는 용량성, 유도성 및/또는 광학인식 기술을 사용하여 PSD(312)에서 하나 이상의 사용자 입력(예컨대, 연속 제스처, 멀티 터치 제스처, 싱글 터치 제스처)을 결정할 수 있고, 그러한 사용자 입력의 표시를 통신 채널(362A)을 이용하여 컴퓨팅 디바이스(310)로 전송할 수 있다. 일부 예에서, 프레즌스 감지 입력 컴포넌트(304)는, 디스플레이 컴포넌트(302)에 의해 디스플레이된 그래픽 요소 위에 사용자가 입력 유닛을 위치시킬 때, 프레즌스 감지 입력 컴포넌트(304)가 상기 그래픽 요소가 디스플레이되는 디스플레이 컴포넌트(302)의 위치에 대응하는 위치에 배치된 디스플레이 컴포넌트(302)의 상부에 물리적으로 배치될 수 있다.
도 3에 도시된 바와 같이, 컴퓨팅 디바이스(310)는 또한 통신 유닛(342)을 포함할 수 있고 및/또는 통신 유닛(342)과 동작 가능하게 결합될 수 있다. 통신 유닛(342)은 도 2에서 설명된 통신 유닛(242)의 기능을 포함할 수 있다. 통신 유닛(342)의 예들은 네트워크 인터페이스 카드, 이더넷 카드, 광 트랜시버, 무선 주파수 트랜시버, 또는 정보를 송신 및 수신할 수 있는 임의의 다른 유형의 디바이스를 포함할 수 있다. 그러한 통신 유닛의 다른 예들은 블루투스, 3G 및 WiFi 라디오, USB(Universal Serial Bus) 인터페이스 등을 포함할 수 있다. 또한, 컴퓨팅 디바이스(310)는 간략화 및 예시의 목적으로 도 3에 도시되지 않은 하나 이상의 다른 디바이스들(예를 들어, 입력 디바이스, 출력 컴포넌트, 메모리, 저장 디바이스)을 포함할 수 있고 및/또는 동작 가능하게 결합될 수 있다.
도 3은 또한 프로젝터(380) 및 프로젝터 스크린(382)을 도시한다. 프로젝션 디바이스의 다른 이러한 예들은 전자 화이트보드, 홀로 그래픽 디스플레이 컴포넌트, 및 그래픽 컨텐츠를 디스플레이하기 위한 임의의 다른 적절한 디바이스를 포함할 수 있다. 프로젝터(380) 및 프로젝터 스크린(382)은 각각의 디바이스를 컴퓨팅 디바이스(310)와 통신할 수 있게 하는 하나 이상의 통신 유닛을 포함할 수 있다. 일부 예들에서, 하나 이상의 통신 유닛은 프로젝터(380)와 프로젝터 스크린(382) 사이의 통신을 가능하게 할 수 있다. 프로젝터(380)는 그래픽 콘텐츠를 포함하는 데이터를 컴퓨팅 디바이스(310)로부터 수신할 수 있다. 프로젝터(380)는 데이터 수신에 응답하여, 그래픽 컨텐츠를 프로젝터 스크린(382) 상에 투사할 수 있다. 일부 예들에서, 프로젝터(380)는 광학인식 또는 다른 적절한 기술을 사용하여 프로젝터 스크린에서 하나 이상의 사용자 입력(예를 들어, 연속 제스처, 멀티 터치 제스처, 싱글 터치 제스처)을 결정할 수 있고, 하나 이상의 통신 유닛을 사용하여 그러한 사용자 입력의 표시를 컴퓨팅 디바이스(310)로 전송할 수 있다. 이러한 예들에서, 프로젝터 스크린(382)은 불필요할 수 있고, 프로젝터(380)는 임의의 적절한 매체 상에 그래픽 컨텐츠를 투사하고, 광학인식 또는 다른 적절한 기술을 사용하여 하나 이상의 사용자 입력을 검출할 수 있다.
일부 실시예에서, 프로젝터 스크린(382)은 프레즌스 감지 디스플레이(384)를 포함할 수 있다. 프레즌스 감지 디스플레이(384)는 본 발명에서 개시된 바와 같이 프레즌스 감지 디스플레이(112 및/또는 312)의 기능의 서브 세트 또는 모든 기능을 포함할 수 있다. 일부 예들에서, 프레즌스 감지 디스플레이(384)는 추가 기능을 포함할 수 있다. 프로젝터 스크린(382)(예를 들어, 전자 화이트 보드)은 컴퓨팅 디바이스(310)로부터 데이터를 수신하고 그래픽 콘텐츠를 디스플레이할 수 있다. 일부 예들에서, 프레즌스 감지 디스플레이(384)는 용량성, 유도성 및/또는 광학인식 기술을 사용하여 프로젝터 스크린(382)에서 하나 이상의 사용자 입력(예컨대, 연속 제스처, 멀티 터치 제스처, 싱글 터치 제스처)을 결정할 수 있고, 하나 이상의 통신 유닛을 사용하여 그러한 사용자 입력을 컴퓨팅 디바이스(310)로 전송할 수 있다.
도 3은 모바일 디바이스(386) 및 시각 디스플레이 컴포넌트(390)를 도시한다. 모바일 디바이스(386) 및 시각 디스플레이 컴포넌트(390)는 각각 컴퓨팅 및 접속 기능(capabilities)을 포함할 수 있다. 모바일 디바이스(386)의 예는 전자책 판독기 디바이스, 컨버터블 노트북 디바이스, 하이브리드 슬레이트 디바이스 등을 포함할 수 있다. 시각 디스플레이 컴포넌트(390)의 예는 텔레비전, 컴퓨터 모니터 등과 같은 다른 디바이스를 포함할 수 있다. 일부 예들에서, 시각 디스플레이 컴포넌트(390)는 (예를 들어, 자동차, 항공기 또는일부 다른 차량에서) 차량 조종석 디스플레이 또는 네비게이션 디스플레이일 수 있다. 일부 예들에서, 시각 디스플레이 컴포넌트(390)는 컴퓨팅 디바이스(310)와 별개의 홈 오토메이션 디스플레이 또는 일부 다른 유형의 디스플레이일 수 있다.
도 3에 도시된 바와 같이, 모바일 디바이스(386)는 프레즌스 감지 디스플레이(388)를 포함할 수 있다. 시각 디스플레이 컴포넌트(390)는 프레즌스 감지 디스플레이(392)를 포함할 수 있다. 프레즌스 감지 디스플레이(388, 392)는 본 명세서에 기술된 바와 같이 프레즌스 감지 디스플레이(112, 212 및/또는 312)의 기능의 서브 세트 또는 모든 기능을 포함할 수 있다. 일부 예들에서, 프레즌스 감지 디스플레이(388, 392)는 추가 기능을 포함할 수 있다. 임의의 경우에, 예를 들어, 프레즌스 감지 디스플레이(392)는 컴퓨팅 디바이스(310)로부터 데이터를 수신하여 그래픽 콘텐츠를 디스플레이할 수 있다. 일부 예들에서, 프레즌스 감지 디스플레이(392)는 용량성, 유도성 및/또는 광학인식 기술을 사용하여 프로젝터 스크린에서 하나 이상의 사용자 입력(예컨대, 연속 제스처, 멀티 터치 제스처, 싱글 터치 제스처)을 결정할 수 있고, 하나 이상의 통신 유닛을 사용하여 그러한 사용자 입력을 컴퓨팅 디바이스(310)로 전송할 수 있다.
전술한 바와 같이, 일부 예들에서, 컴퓨팅 디바이스(310)는 시스템 버스 또는 다른 적절한 통신 채널에 의해 컴퓨팅 디바이스(310)에 결합되는 PSD(312)에서의 디스플레이를 위한 그래픽 콘텐츠를 출력할 수 있다. 또한, 컴퓨팅 디바이스 (310)는 프로젝터(380), 프로젝터 스크린(382), 모바일 디바이스(386) 및 시각 디스플레이 컴포넌트(390)와 같은 하나 이상의 원격 디바이스에서 디스플레이하기 위한 그래픽 콘텐츠를 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(310)는 본 발명의 기술에 따라 그래픽 컨텐츠를 생성 및/또는 수정하기 위해 하나 이상의 명령을 실행할 수 있다. 컴퓨팅 디바이스(310)는 그래픽 컨텐츠를 포함하는 데이터를 통신 유닛(342)과 같은 컴퓨팅 디바이스(310)의 통신 유닛으로 출력할 수 있다. 통신 유닛(342)은 프로젝터(380), 프로젝터 스크린(382), 모바일 디바이스(386) 및/또는 시각 디스플레이 컴포넌트(390)와 같은 하나 이상의 원격 디바이스로 데이터를 전송할 수 있다. 이러한 방식으로, 컴퓨팅 디바이스(310)는 하나 이상의 원격 디바이스에서 디스플레이하기 위해 그래픽 콘텐츠를 출력할 수 있다. 일부 예들에서, 하나 이상의 원격 디바이스는 각각의 원격 디바이스에 포함되거나 및/또는 각각의 원격 디바이스에 동작 가능하게 결합된 프레즌스 감지 디스플레이에서 그래픽 콘텐츠를 출력할 수 있다.
일부 예에서, 컴퓨팅 디바이스(310)는 컴퓨팅 디바이스(310)에 동작 가능하게 결합된 PSD(312)에서 그래픽 콘텐츠를 출력하지 않을 수 있다. 다른 예들에서, 컴퓨팅 디바이스(310)는 통신 채널(362A)에 의해 컴퓨팅 디바이스(310)에 결합되는 PSD(312) 및 하나 이상의 원격 디바이스 모두에서 디스플레이하기 위한 그래픽 콘텐츠를 출력할 수 있다. 이러한 예들에서, 그래픽 콘텐츠는 각각의 개별 디바이스에서 실질적으로 동시에 디스플레이될 수 있다. 예를 들어, 통신 대기 시간에 의해 그래픽 콘텐츠를 포함하는 데이터를 원격 디바이스로 전송하기 위해 약간의 지연이 도입될 수 있다. 일부 예들에서, 컴퓨팅 디바이스(310)에 의해 생성된 그래픽 콘텐츠 및 PSD(312)에서 디스플레이하기 위한 출력은 하나 이상의 원격 디바이스에서 디스플레이 하기 위한 그래픽 콘텐츠 디스플레이 출력과 다를 수 있다.
컴퓨팅 디바이스(310)는 임의의 적절한 통신 기술을 사용하여 데이터를 송신 및 수신할 수 있다. 예를 들어, 컴퓨팅 디바이스(310)는 네트워크 링크(373A)를 사용하여 외부 네트워크(374)에 동작 가능하게 결합될 수 있다. 도 3에 도시된 원격 디바이스 각각은, 각각의 네트워크 링크(373B, 373C 또는 373D) 중 하나에 의해 네트워크 외부 네트워크(374)에 동작 가능하게 결합될 수 있다. 외부 네트워크(374)는 네트워크 허브, 네트워크 스위치, 네트워크 라우터 등을 포함할 수 있으며, 이들은 동작 가능하게 상호 결합되어 도 3에 도시된 컴퓨팅 디바이스(310)과 원격 디바이스들간의 정보 교환을 제공한다. 일부 예들에서, 네트워크 링크(373A-373D)는 이더넷, ATM 또는 다른 네트워크 연결일 수 있다. 이러한 연결들은 무선 및/또는 유선 연결일 수 있다.
일부 예에서, 컴퓨팅 디바이스(310)는 다이렉트(direct) 디바이스 통신(378)을 이용하여 도 3에 포함된 하나 이상의 원격 디바이스에 동작 가능하게 결합될 수 있다. 다이렉트 디바이스 통신(378)은 유선 또는 무선 통신을 이용하여, 컴퓨팅 디바이스(310)가 원격 디바이스와 직접 데이터를 송수신하는 통신을 포함할 수 있다. 즉, 다이렉트 디바이스 통신(378)의 일부 예에서, 컴퓨팅 디바이스(310)에 의해 전송된 데이터는 원격 디바이스에서 수신되기 전에 하나 이상의 추가 디바이스에 의해 포워딩될 수 없으며, 그 반대도 마찬가지이다. 다이렉트 디바이스 통신(378)의 예로는 블루투스, 근거리 무선 통신, 범용 직렬 버스, WiFi, 적외선 등이 포함될 수 있다. 도 3에 도시된 하나 이상의 원격 디바이스는 통신 링크(376A-376D)에 의해 컴퓨팅 디바이스(310)와 동작 가능하게 결합될 수 있다. 일부 예들에서, 통신 링크(376A-376D)는 블루투스, 근거리 무선 통신, 범용 직렬 버스, 적외선 등을 사용하는 연결일 수 있다. 이러한 연결은 무선 및/또는 유선 연결일 수 있다.
본 발명의 기술에 따르면, 컴퓨팅 디바이스(310)는 외부 네트워크(374)를 사용하여 시각 디스플레이 컴포넌트(390)에 동작 가능하게 결합될 수 있다. 컴퓨팅 디바이스(310)는 PSD(312)에서의 디스플레이를 위해, 편집 영역 및 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 복수의 키 및 번역 영역을 포함하는 그래픽 키보드로 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(310)는 그래픽 사용자 인터페이스의 표현(representation)을 포함하는 데이터를 통신 유닛(342)으로 전송할 수 있다. 통신 유닛(342)은 외부 네트워크(374)를 사용하여 그래픽 사용자 인터페이스의 표현을 포함하는 데이터를 시각 디스플레이 컴포넌트(390)로 전송할 수 있다. 시각 디스플레이 컴포넌트(390)는 외부 네트워크(374)를 사용하여 데이터를 수신한 것에 응답하여, PSD(312)로 하여금 그래픽 사용자 인터페이스를 출력하게 할 수 있다. 그래픽 사용자 인터페이스의 키보드의 하나 이상의 키를 선택하기 위해 PSD(312)에서 사용자 입력을 수신하는 것에 응답하여, 시각 디스플레이 디바이스(130)는 외부 네트워크(374)를 사용하여 컴퓨팅 디바이스(310)로 하나 이상의 키들의 선택의 표시를 전송할 수 있다. 통신 유닛(342)은 하나 이상의 키들의 선택의 표시를 수신하여, 하나 이상의 키들의 선택의 표시를 컴퓨팅 디바이스(310)로 전송할 수 있다.
상기 하나 이상의 키들의 선택의 표시를 수신하는 동안, 컴퓨팅 디바이스(310)는 그래픽 사용자 인터페이스의 편집 영역에 디스플레이하기 위해, 상기 선택으로부터 추론된 하나 이상의 후보 단어를 출력할 수 있으며, 상기 하나 이상의 후보 단어는 소스 언어와 연관되며, 상기 하나 이상의 후보 단어들로부터 특정 단어의 번역을 결정하고, 상기 특정 단어의 번역은 상기 소스 언어와 목적 언어와 관련되고, 그리고 상기 그래픽 키보드의 번역 영역 내의 디스플레이를 위해, 상기 번역의 표시를 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(310)는 편집 영역 내의 하나 이상의 후보 단어 및 그래픽 키보드의 번역 영역 내의 번역을 포함하는 그래픽 사용자 인터페이스의 업데이트된 표현을 전송할 수 있다. 통신 유닛(342)은 업데이트된 그래픽 사용자 인터페이스의 표현을 수신할 수 있고, 시각 디스플레이 컴포넌트(390)가 PSD(312)로 하여금 그래픽 키보드의 번역 영역에 디스플레이된 변환을 포함하여 업데이트된 그래픽 사용자 인터페이스를 출력하게 하도록, 상기 업데이트된 표현을 시각 디스플레이 컴포넌트(390)로 전송할 수 있다.
또한, 도 4a-4i는 본 발명의 하나 이상의 양태에 따라, 통합 번역 특징을 갖는 그래픽 키보드를 제시하도록 구성된 예시적인 컴퓨팅 디바이스의 예시적인 그래픽 사용자 인터페이스를 나타내는 개념도이다. 도 4a-4i는 각각 예시적인 그래픽 사용자 인터페이스들(414A-414I)(통칭하여, 사용자 인터페이스들(414))을 예시한다. 그러나, 그래픽 사용자 인터페이스(414)의 많은 다른 예들이 다른 경우들에서 사용될 수 있다. 각각의 그래픽 사용자 인터페이스(410)는 도 1 및 도 2의 컴퓨팅 디바이스(110 또는 210)에 의해 디스플레이된 그래픽 사용자 인터페이스에 대응할 수 있다. 사용자 인터페이스들(414) 각각은 그래픽 키보드(416B) 및 편집 영역 (416C)을 포함한다. 그래픽 키보드(416B)는 각각의 사용자 인터페이스(414)에서, 제안/번역 영역(418B) 및 그래픽 키(418A)를 포함한다. 또한, 도 4a-4i는 컴퓨팅 디바이스(110)와 관련하여 아래에서 설명된다.
도 4a 내지 도 4d의 예에서, 사용자 인터페이스(414A-414D)는 몇몇 예에서, 컴퓨팅 디바이스(110)의 사용자가 그래픽 키보드(416B)에서 입력을 제공하는 동안 컴퓨팅 디바이스(110)가 번역의 그래픽 표시(graphical indications)를 디스플레이를 위해 출력되게 하는 방법을 도시한다. 예를 들어, 도 4a에 도시된 바와 같이, 사용자는 다양한 키들(418A)의 위치 또는 근처에서 탭(tap) 입력을 제공할 수 있다. 키들(418A)에서의 탭 입력에 응답하여, 컴퓨팅 디바이스(110)는 소스 언어(예컨대, 영어)의 입력으로부터 결정된 하나 이상의 후보 단어(예컨대, Jackfruits, Jackfruit, Jack 등)를 제안/번역 영역(418B)에 자동으로 디스플레이할 수 있고, 또한 제안/번역 영역(418B) 내에 가장 가능성 있는 후보 단어(Jackfruit)의 번역을 목적 언어(예컨대, 중국어)로 디스플레이할 수 있다. 컴퓨팅 디바이스(110)는 편집 영역(416C) 내에, 소스 언어로 상기 가장 가능성 있는 후보 단어(Jackfruit)를 더 표시할 수 있다.
다음으로, 도 4c에 도시된 바와 같이, 컴퓨팅 디바이스(110)의 사용자는 키(418A)에서 입력을 계속 제공하여 컴퓨팅 디바이스(110)로 하여금 제안/번역 영역(418B) 내에, 소스 언어의 입력으로부터 결정된 하나 이상의 추가 후보 단어(예컨대, Indian, India, Indic 등)를 자동으로 디스플레이하도록 하고 또한 사용자가 타이핑을 시작한 이후에 결정된 목적 언어로 상기 가장 가능성 있는 후보 단어 (Jackfruit in India)의 번역을 제안/번역 영역(418B) 내에 표시하도록 한다. 컴퓨팅 디바이스(110)는 편집 영역(416C)내에 소스 언어로 상기 가장 가능성 있는 후보 단어를 더 표시할 수 있다.
다음으로, 도 4d에 도시된 바와 같이, 컴퓨팅 디바이스(110)의 사용자는 사용자가 제안/번역 영역(418B) 내에 디스플레이된 번역의 그래픽 표시를 선택했는지를 결정할 수 있고, 사용자가 번역을 선택했다는 결정에 응답하여 컴퓨팅 디바이스(110)는 편집 영역(416C) 내의 적어도 하나의 후보 단어의 표시를 번역의 표시로 대체할 수 있다. 예를 들어, 4d에 도시된 바와같이, 영어 구문 "인도의 잭프롯(Jackfruit in India"은 중국 구문 "
Figure 112018078915148-pct00001
蘿蜜印度"으로 대체되었다.
일부 예들에서, 번역의 선택 표시를 수신하기 전에, 컴퓨팅 디바이스(110)는 편집 영역(416C)에 제1 시각 포맷으로 적어도 하나의 후보 단어의 표시를 디스플레이할 수 있고, 다른 단어들의 표시는 편집 영역(416C)에 제2 시각 포맷으로 디스플레이될 수 있다. 다른 말로, 컴퓨팅 디바이스(110)는 제안/번역 영역(418B)에서 번역되고 디스플레이되었던 편집 영역(416C) 내의 후보 단어 또는 구를 하이라이트(예를 들어, 컬러링, 밑줄 긋기 등으로)할 수 있다.
일부 예들에서, 번역의 선택 표시를 수신하기 전에, 컴퓨팅 디바이스(110)는 편집 영역(416C)에 제1 시각 포맷으로 적어도 하나의 후보 단어의 표시를 디스플레이할 수 있고 편집 영역(416C)에 제2 시각 포맷으로 번역의 표시를 디스플레이할 수 있다. 환언하면, 컴퓨팅 디바이스(110)는 추천/번역 영역(418B)에서 번역되고 디스플레이되었던 편집 영역(416C) 내의 후보 단어 또는 구를 하이라이트(예컨대, 컬러링, 밑줄 긋기 등으로)하고 번역이 후보 단어 또는 구를 대체할 때 하이라이팅을 제거할 수 있다 .
도 4e-4h의 예에서, 사용자 인터페이스(414E-414H)는 몇몇 예들에서, 컴퓨팅 디바이스(110)는 사용자가 편집 영역(416C)에서 후보 단어를 대체한 번역을 선택한 후에 확인창(confirmation window)을 디스플레이하는 방법을 도시한다. 예를 들어,도 4a 및 도 4b에 도시된 바와 같이, 사용자는 다양한 키들(418A)의 위치 또는 근처에 탭 입력을 제공할 수 있다. 키들(418A)에서의 탭 입력에 응답하여, 컴퓨팅 디바이스(110)는 소스 언어(예를 들어, 영어)의 입력으로부터 결정된 하나 이상의 후보 단어들(예를 들면, Forbidden city)을 제안/번역 영역(418B)에 자동적으로 표시할 수 있다.
도 4g에 도시된 바와 같이, 컴퓨팅 디바이스(110)의 사용자가 그래픽 키보드(416B)의 리턴 키를 선택한 것이 검출되면, 컴퓨팅 디바이스(110)는 편집 영역(416C)의 입력으로부터 결정된 하나 이상의 후보 단어의 번역을 입력할 수 있다. 도 4h에 도시된 바와 같이, 컴퓨팅 디바이스(110)의 사용자가 편집 영역(416C) 내의 번역의 그래픽 표시를 선택한 것이 검출되면, 컴퓨팅 디바이스(110)는 사용자가 현재의 번역을 대체하도록 선택할 수있는 대체 번역(alternative translations)을 제공하는 팝업을 디스플레이할 수 있다.
일부 예들에서, 컴퓨팅 디바이스(110)는 하나 이상의 키들(418A)의 선택에 기초하여 번역을 수행하기 위한 사용자 명령을 결정할 수 있고, 번역을 수행하기 위한 사용자 명령을 결정하는 것에 응답하여 번역 영역(418B)에 디스플레이하기 위한 번역의 표시를 출력할 수 있다. 예를 들어, 도 4i에 도시된 바와 같이, 사용자는 컴퓨팅 디바이스(110)가 "중국어로 Hello를 번역하십시요"라는 구로 인식한 그래픽 키보드(416B)의 다양한 키들(418A)을 선택한다. 상기 구가 번역을 수행하라는 명령이라는 컴퓨팅 디바이스(110)의 결정에 응답하여, 컴퓨팅 디바이스(110)는 제안/번역 영역(418B) 내에, 영어 단어 "Hello"의 중국어 번역의 그래픽 표시를 디스플레이한다. 일부 예들에서, 컴퓨팅 디바이스(110)는 후보 단어들로 산재된 번역의 표시를 디스플레이할 수 있다. 예를 들어, 도 4i에 추가로 도시된 바와 같이, 컴퓨팅 디바이스(110)는 컴퓨팅 디바이스(110)가 사용자가 다음에 입력하기를 원할 가능성이 가장 높은 후보 단어인 것으로 결정하는 후보 단어 "I" 및 "You"사이에 "Hello"라는 단어의 번역을 디스플레이할 수 있다.
도 5는 본 발명의 하나 이상의 양태에 따라, 통합 검색 특징을 갖는 그래픽 키보드를 제시하도록 구성된 컴퓨팅 디바이스의 예시적인 동작을 도시하는 흐름도이다. 도 5의 동작은, 도 1의 컴퓨팅 디바이스(110) 또는 도 2의 컴퓨팅 디바이스(210)와 같은 컴퓨팅 디바이스의 하나 이상의 프로세서에 의해 수행될 수 있다. 오로지 설명의 목적으로, 도 5는 도 1a 내지 도 1c의 컴퓨팅 디바이스(110)의 문맥 내에서 아래에서 설명된다.
동작시에, 컴퓨팅 디바이스(110)는 디스플레이를 위해, 편집 영역 및 복수의 키와 번역 영역(500)을 포함하는 그래픽 키보드를 포함하는 그래픽 사용자 인터페이스를 출력할 수 있다. 예를 들어, 컴퓨팅 디바이스(110)는 PSD(112)로 하여금 그래픽 키보드(116B) 및 편집 영역(116C)을 포함하는 사용자 인터페이스(114A)를 제시하도록 할 수 있다. 그래픽 키보드(116B)는 키들(118A) 및 번역 영역(118B)을 포함할 수 있다.
컴퓨팅 디바이스(110)는 복수의 키들로부터 하나 이상의 키들의 선택에 기초하여, 소스 언어로부터의 하나 이상의 후보 단어들을 결정할 수 있다(510). 예를 들어, 사용자는 키(118A)가 디스플레이되는 PSD(112)의 위치 또는 그 부근에 탭 및/또는 제스처 입력을 제공할 수 있다. 키보드 모듈(122)의 언어 및/또는 공간 모델은 UI 모듈(120) 및 PSD(112)로부터 수신된 터치 이벤트에 기초하여, 사용자가 PSD(112)에서의 입력에 기초하여 입력할 수 있는 중국어 어휘집의 하나 이상의 단어를 결정할 수 있다.
컴퓨팅 디바이스(110)는 편집 영역 내의 디스플레이를 위해, 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력할 수 있다(520). 예를 들어, 키보드 모듈(122)은 터치 이벤트에 기초하여 선택되는 가장 높은 스코어 또는 가능성을 갖는 후보 단어를 결정할 수 있고 UI 모듈(120)로 하여금 편집 영역(116C) 내의 PSD(112)에 한자(Chinese characters)로 작성된 단어를 제시하도록 할 수 있다.
컴퓨팅 디바이스(110)는 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정할 수 있으며, 특정 단어의 번역은 소스 언어와 다른 목적 언어와 관련된다(530). 예를 들어, 컴퓨팅 디바이스(110)가 중국보다 오히려 호주에 위치한다고 결정한 것에 응답하여, 키보드 모듈(122)은 키보드 모듈(122)의 번역 특징을 자동으로 호출하여, 편집 영역(116C)내에 디스플레이되는 후보 단어를 영어 문자로 번역할 수 있다.
컴퓨팅 디바이스(110)는 그래픽 키보드의 번역 영역에 디스플레이하기 위해, 특정 단어의 번역의 표시를 출력할 수 있다(540). 예를 들어, 후보 단어를 번역한 후, 키보드 모듈(122)은 UI 모듈(120)로 하여금 PSD(112) 및 번역 영역(118B) 내에 후보 단어의 영어 번역을 제시하도록 할 수 있다.
컴퓨팅 디바이스(110)는 번역의 선택의 표시를 수신할 수 있다(550). 예를 들어, 컴퓨팅 디바이스(110)의 사용자는 후보 단어의 영어 번역이 디스플레이되는 PSD(112)의 위치 또는 그 부근을 탭핑하거나 제스처할 수 있다.
컴퓨팅 디바이스(110)는 편집 영역내에 디스플레이하기 위해, 번역의 표시를 출력할 수 있다(560). 예를 들어, 후보 단어의 영어 번역의 상기 그래픽 표시에서 상기 입력의 표시를 수신하는 것에 응답하여, 키보드 모듈(122)은 UI 모듈(120)로 하여금 편집 영역(116C) 내의 후보 단어의 한자를 후보 단어의 영어 문자로 대체하도록 할 수 있다.
일부 예에서, 컴퓨팅 디바이스(110)는 하나 이상의 후보 단어가 목적 언어가 아니라 소스 언어와 관련되어 있다는 결정에 응답하여 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정할 수 있다. 달리 말하면, 일부 예들에서, 컴퓨팅 디바이스(110)는 목적 언어인 제1 소스 언어로부터 제2 소스 언어로 변경된 소스 언어를 결정하는 것에 응답하여 상기 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정할 수 있다.
예를 들어, 컴퓨팅 디바이스(110)의 사용자는 영어일 수 있는 자신의 비-모국어로 하나 이상의 단어를 입력하기 위해 그래픽 키보드(116B)에서 입력을 제공할 수 있다. 사용자가 영어로 특정 단어를 입력하는 방법을 모르지만 스페인어로 상기 특정 단어를 입력하는 방법을 알고 있는 경우, 사용자는 그래픽 키보드(116B)에 입력을 제공하여 스페인어로 단어를 입력할 수 있다. 컴퓨팅 디바이스(110)는 사용자가 영어 단어 타이핑에서 스페인 단어 타이핑으로 전환하고 사용자가 스페인어 단어를 영어로 번역하기를 원한다는 것을 자동으로 인식할 수 있다. 컴퓨팅 디바이스(110)는 스페인어 단어를 영어로 자동 번역하여 제안 영역(118B) 및/또는 편집 영역(116C) 내에 디스플레이하기 위해 상기 영어 번역을 출력할 수 있다.
다음의 번호가 매겨진 절들(clauses)은 본 발명의 하나 이상의 양태를 설명할 수 있다.
절 1. 방법으로서, 컴퓨팅 디바이스에 의해, 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 출력하는 단계와, 상기 그래픽 키보드는 복수의 키 및 번역 영역을 포함하고; 상기 컴퓨팅 디바이스에 의해, 상기 복수의 키로부터 하나 이상의 키의 선택에 기초하여, 소스 언어(source language)로부터의 하나 이상의 후보 단어를 결정하는 단계와; 상기 컴퓨팅 디바이스에 의해, 상기 편집 영역 내의 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력하는 단계와; 상기 컴퓨팅 디바이스에 의해, 상기 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정하는 단계와, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고; 그리고 상기 컴퓨팅 디바이스에 의해, 상기 그래픽 키보드의 번역 영역 내의 디스플레이를 위해, 상기 특정 단어의 번역의 표시를 출력하는 단계를 포함한다.
절 2. 제1 절의 방법에서, 상기 그래픽 키보드는 애플리케이션 그래픽 사용자 인터페이스의 일부로서 디스플레이를 위해 출력되고, 상기 애플리케이션 그래픽 사용자 인터페이스는 편집 영역을 포함하며, 상기 방법은 상기 번역의 선택의 표시를 수신하는 것에 응답하여, 상기 컴퓨팅 디바이스에 의해, 상기 편집 영역 내의 디스플레이를 위해 상기 번역의 표시를 출력하는 단계를 더 포함한다.
절 3. 제2 절의 방법에서, 상기 번역의 선택 표시를 수신하기 전에, 상기 컴퓨팅 디바이스에 의해, 상기 편집 영역내의 디스플레이를 위해, 상기 소스 언어의 특정 단어의 표시를 출력하는 단계를 더 포함하고, 상기 편집 영역 내에 상기 번역의 표시를 출력하는 단계는 상기 편집 영역 내의 상기 적어도 하나의 후보 단어의 표시를 상기 번역의 표시로 대체하는 단계를 포함한다.
절 4. 제3 절의 방법에서, 상기 번역의 선택 표시를 수신하기 전에, 적어도 하나의 후보 단어의 표시는 상기 편집 영역 내에 제1 시각 포맷으로 디스플레이되고; 그리고 다른 단어의 표시는 상기 편집 영역 내에 상기 제1 시각 포맷과 상이한 제2 시각 포멧으로 디스플레이된다.
절 5. 제1 절 내지 제4 절 중 어느 한 절의 방법에서, 상기 번역 영역은 상기 목적 언어를 선택하기 위한 선택 가능한 요소를 포함하고, 상기 방법은 상기 컴퓨팅 디바이스에 의해, 상기 목적 언어를 선택하기 위한 상기 선택 가능한 요소의 선택에 기초하여, 상기 제1 언어 및 상기 소스 언어와 상이한 제1 언어로부터 상기 제2 언어로 상기 목적 언어를 변경하는 단계와; 그리고 컴퓨팅 디바이스에 의해, 제1 언어로부터 제2 언어로 적어도 하나의 후보 단어의 번역을 갱신하는 단계를 더 포함한다.
절 6. 제1 절 내지 제 5절 중 어느 한 절의 방법에서, 상기 컴퓨팅 디바이스에 의해, 상기 컴퓨팅 디바이스의 현재 위치에 기초하여 상기 목적 언어를 결정하는 단계를 더 포함한다.
절 7. 제 1절 내지 제 6절 중 어느 한 절의 방법에서, 상기 컴퓨팅 디바이스에 의해, 수신된 메시지의 추론된 언어에 기초하여 상기 목적 언어를 결정하는 단계를 더 포함한다.
절 8. 제 1절 내지 제 7절 중 어느 한 절의 방법에서, 상기 컴퓨팅 디바이스에 의해, 사전 번역(prior translations)에서 사용된 이전의 목적 언어들에 기초하여 상기 목적 언어를 결정하는 단계를 더 포함하는 포함한다.
절 9. 제 1절 내지 제 8절 중 어느 한 절의 방법에서, 상기 컴퓨팅 디바이스에 의해, 하나 이상의 키의 선택에 기초하여 번역을 수행하기 위한 사용자 명령을 결정하는 단계를 더 포함하고, 상기 번역의 표시는 번역을 수행하기 위한 사용자 명령을 결정하는 것에 응답하여 번역 영역 내의 디스플레이를 위한 출력이다.
절 10. 제 1절 내지 제 9절 중 어느 한 절의 방법에서, 상기 적어도 하나의 후보 단어로부터의 상기 특정 단어의 번역은 상기 하나 이상의 후보 단어가 상기 목적 언어가 아닌 상기 소스 언어와 관련되어 있다는 결정에 응답하여 결정된다.
절 11. 제 1절 내지 제 10절 중 어느 한 절의 방법에서, 상기 적어도 하나의 후보 단어로부터의 상기 특정 단어의 번역은 제1 소스 언어에서 제2 소스 언어로 변경된 소스 언어를 결정하는 것에 응답하여 결정되고, 상기 제1 소스 언어는 목적 언어이다.
절 12. 모바일 디바이스로서, 프레즌스 감지(presence-sensitive) 디스플레이 컴포넌트; 적어도 하나의 프로세서; 및 명령들을 저장하는 메모리를 포함하고, 상기 명령들은 실행될 때 상기 적어도 하나의 프로세서로 하여금: 상기 프레즌스 감지 디스플레이 컴포넌트에서의 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 출력하고, 상기 그래픽 키보드는 복수의 키들 및 번역 영역을 포함하고; 상기 프레즌스 감지 디스플레이 컴포넌트에서 검출된 입력의 표시 (indication)를 수신하고; 상기 복수의 키로부터 상기 입력에 의해 선택된 하나 이상의 키를 결정하고; 상기 하나 이상의 키에 기초하여, 소스 언어로부터 하나 이상의 후보 단어를 결정하고; 상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내에서의 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력하고; 상기 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정하고, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고; 그리고 상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내에서의 디스플레이를 위해, 상기 특정 단어의 번역의 표시를 출력하게 한다.
절 13. 제 12절의 모바일 디바이스에서, 상기 명령들은 실행될 때, 상기 적어도 하나의 프로세서로 하여금, 추가로 상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내에서의 디스플레이를 위해, 상기 번역의 선택의 표시를 수신하는 것에 응답하여 상기 번역의 표시를 출력한다.
절 14. 제 13절의 모바일 디바이스에서, 상기 명령들은 실행될 때, 상기 적어도 하나의 프로세서로 하여금, 상기 번역의 선택 표시를 수신하기 전에, 상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내의 디스플레이를 위해, 상기 소스 언어 내의 특정 단어의 표시를 출력하고, 상기 번역의 표시는 적어도 상기 편집 영역 내의 상기 적어도 하나의 후보 단어의 표시를 상기 번역의 표시로 대체함으로써 상기 편집 영역 내의 디스플레이를 위한 출력이다.
절 15. 제12 절 내지 제 14절 중 어느 한 절의 모바일 디바이스에서, 상기 명령들은 실행될 때, 상기 적어도 하나의 프로세서로 하여금 상기 컴퓨팅 디바이스의 현재 위치에 기초하여 상기 목적 언어를 결정하도록 하는 단계를 더 포함한다.
절 16. 제12 절 내지 제 14절 중 어느 한 절의 모바일 디바이스에서, 상기 명령들은 실행될 때 상기 적어도 하나의 프로세서로 하여금 수신된 메시지의 추론된 언어에 기초하여 상기 목적 언어를 결정하도록 한다.
절 17. 제12 절 내지 제 14절 중 어느 한 절의 모바일 디바이스에서, 상기 명령들은 실행될 때 상기 적어도 하나의 프로세서로 하여금 이전의 번역에서 사용 된 이전의 목적 언어들에 기초하여 상기 목적 언어를 결정하도록 한다.
절 18. 제12 절 내지 제 14절 중 어느 한 절의 모바일 디바이스에서, 상기 명령들은 실행될 때, 상기 적어도 하나의 프로세서로 하여금, 하나 이상의 키의 선택에 기초하여, 번역을 수행하기위한 사용자 명령을 결정하도록 하고, 상기 번역의 표시는 번역을 수행하기 위해 사용자 명령을 결정한 것에 응답하여 상기 번역 영역 내에 디스플레이하기 위한 출력이다.
절 19. 명령들을 포함하는 컴퓨터 판독 가능 저장매체로서, 상기 명령들은 실행될 때 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금: 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 출력하고, 상기 그래픽 키보드는 복수의 키 및 번역 영역을 포함하고; 상기 복수의 키로부터 하나 이상의 키의 선택의 표시를 수신하는 동안, 상기 영역 내의 디스플레이를 위해, 상기 선택으로부터 추론된 하나 이상의 후보 단어들을 출력하고, 상기 하나 이상의 후보 단어는 소스 언어와 관련되고; 상기 하나 이상의 후보 단어들로부터 특정 단어의 번역을 결정하고, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고; 그리고 상기 번역 영역 내의 디스플레이를 위해 상기 번역의 표시를 출력하도록 한다.
절 20. 제19 절의 컴퓨터 판독 가능 저장매체에서, 상기 번역은 제1번역이고, 상기 컴퓨터 판독 가능 저장매체는 추가 명령들을 포함하고, 상기 추가 명령들은 실행될 때 상기 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금: 추가로 상기 제1 번역의 선택의 표시를 수신하는 것에 응답하여, 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 상기 특정 단어의 하나 이상의 제 2 번역을 출력하고; 그리고 상기 하나 이상의 제2 번역으로부터 특정 제2 번역의 선택의 표시를 수신하는 것에 응답하여, 상기 편집 영역 내에서, 상기 제1 번역의 표시를 상기 특정 제2 번역의 표시로 대체한다.
절 21. 시스템으로서 제1 절 내지 제 11절 중 어느 한 절의 방법을 수행하기 위한 수단을 포함한다.
절 22. 컴퓨팅 디바이스로서, 제1 절 내지 제 11절 중 어느 한 절의 방법을 수행하기 위한 수단을 포함한다.
절 23. 명령들을 포함하는 컴퓨터 판독 가능 저장 매체로서, 상기 명령들은 실행될 때 컴퓨팅 디바이스의 적어도 하나의 프로세서로 하여금 제1 절 내지 제 11절 중 어느 한 절의 방법을 수행하도록 한다.
하나 이상의 예에서, 기술된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현 될 수있다. 소프트웨어로 구현되는 경우, 기능들은 하나 이상의 명령 또는 코드로서, 컴퓨터 판독 가능 매체 상에 저장되거나 전송될 수 있고 하드웨어 기반 프로세싱 유닛에 의해 실행될 수 있다. 컴퓨터 판독 가능 매체는 데이터 저장 매체와 같은 유형의 매체 또는 컴퓨터 프로그램을 한 장소에서 다른 장소로, 예를 들어 통신 프로토콜에 따라 용이하게 전달하는 임의의 매체를 포함하는 통신 매체에 해당하는 컴퓨터 판독 가능 저장 매체를 포함 할 수 있다. 이러한 방식으로, 컴퓨터-판독 가능 매체는 일반적으로 (1) 유형의 비-일시적 컴퓨터 판독 가능 저장 매체 또는 (2) 신호 또는 반송파와 같은 통신 매체에 해당할 수 있다. 데이터 저장 매체는 하나 이상의 컴퓨터 또는 하나 이상의 프로세서에 의해 액세스될 수 있는 임의의 이용 가능한 매체일 수 있으며, 본 명세서에서 설명된 기술의 구현을 위해 명령, 코드 및/또는 데이터 구조를 검색할 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독 가능 매체를 포함 할 수 있다.
제한이 아닌 예로서, 그러한 컴퓨터 판독 가능 저장 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장 장치, 자기 디스크 저장 장치, 또는 다른 자기 저장 디바이스, 플래시 메모리, 또는 명령 또는 데이터 구조의 형태로 원하는 프로그램 코드를 저장하는데 사용될 수 있고 컴퓨터에 의해 액세스 될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 임의의 접속은 적절하게 컴퓨터 판독 가능 매체로 지칭된다. 예를 들어, 명령들이 동축 케이블, 광섬유 케이블, 트위스트 페어, 디지털 가입자 회선(DSL) 또는 적외선, 무선 및 마이크로웨이브와 같은 무선 기술을 사용하여 웹 사이트, 서버 또는 다른 원격 소스로부터 전송되는 경우, 상기 동축 케이블, 광섬유 케이블, 트위스트 페어, DSL 또는 적외선, 무선 및 마이크로웨이브와 같은 무선 기술은 매체의 정의에 포함된다. 그러나, 컴퓨터-판독 가능 저장 매체 및 데이터 저장 매체는 접속, 반송파, 신호 또는 다른 일시적 매체를 포함하지 않고, 유형의 비-일시적 저장 매체로 향하게 됨을 이해해야 한다. 디스크 및 디스크에는 CD(Compact Disc), 레이저 디스크, 광학 디스크, DVD(Digital Versatile Disc), 플로피 디스크 및 블루-레이 디스크가 포함되며, 디스크는 일반적으로 데이터를 자기적으로 재생하며 디스크는 레이저로 데이터를 광학적으로 재생한다. 상기의 조합 또한 컴퓨터 판독 가능 매체의 범위내에 포함되어야 한다.
명령들은 하나 이상의 디지털 신호 프로세서(DSPs), 범용 마이크로 프로세서들, 주문형 집적 회로(ASICs), 필드 프로그래머블 로직 어레이(FPGAs) 또는 다른 동가 집적 회로 또는 이산 논리 회로와 같은 하나 이상의 프로세서에 의해 실행될 수 있다. 따라서, 따라서, 사용되는 "프로세서"라는 용어는 전술한 구조 또는 기술 된 기술의 구현에 적합한 임의의 다른 구조를 지칭할 수 있다. 또한, 일부 양상들에서, 기술된 기능은 전용 하드웨어 및/또는 소프트웨어 모듈들 내에 제공될 수 있다. 또한, 기술들은 하나 이상의 회로 또는 로직 요소에서 완전히 구현될 수 있다.
본 발명의 기술들은 무선 핸드셋, 집적 회로(IC) 또는 IC 세트(예를 들어, 칩 세트)를 포함하는 다양한 디바이스 또는 장치에서 구현될 수 있다. 개시된 기술을 수행하도록 구성된 디바이스들의 기능적 측면을 강조하기 위해 다양한 구성 요소, 모듈 또는 유닛이 본 개시에서 설명되지만, 반드시 상이한 하드웨어 유닛에 의한 실현을 요구하지는 않는다. 오히려, 상술한 바와 같이, 다양한 유닛들이 하드웨어 유닛에서 결합되거나 적절한 소프트웨어 및/또는 펌웨어와 관련하여 전술한 바와 같은 하나 이상의 프로세서를 포함하는 상호 운용성 하드웨어 유닛들의 집합에 의해 제공될 수 있다.
다양한 실시예가 개시되어 있다. 이들 및 다른 실시예들은 하기의 청구 범위의 범주내에 있다.

Claims (15)

  1. 방법으로서,
    컴퓨팅 디바이스에 의해, 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 디스플레이를 출력하는 단계와, 상기 그래픽 키보드는 복수의 키 및 상기 편집 영역과 상이한 번역 영역을 포함하고;
    상기 컴퓨팅 디바이스에 의해, 상기 복수의 키로부터 하나 이상의 키의 선택에 기초하여, 소스 언어로부터의 하나 이상의 후보 단어를 결정하는 단계와;
    상기 컴퓨팅 디바이스에 의해, 상기 그래픽 키보드의 번역 영역 내의 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력하는 단계와;
    상기 컴퓨팅 디바이스에 의해, 상기 적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정하는 단계와, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고; 그리고
    상기 컴퓨팅 디바이스에 의해, 상기 편집 영역 내의 디스플레이를 위해, 상기 특정 단어의 번역의 표시를 출력하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 그래픽 키보드는 애플리케이션 그래픽 사용자 인터페이스의 일부로서 디스플레이를 위해 출력되고, 그리고 상기 애플리케이션 그래픽 사용자 인터페이스는 편집 영역을 포함하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서,
    번역 요소의 선택 표시를 수신하기 전에, 상기 컴퓨팅 디바이스에 의해, 상기 편집 영역내의 디스플레이를 위해, 상기 소스 언어의 특정 단어의 표시를 출력하는 단계와,
    상기 번역 요소의 선택 표시를 수신하는 것에 응답하여, 상기 컴퓨팅 디바이스에 의해, 상기 편집 영역 내의 상기 적어도 하나의 후보 단어의 표시를 상기 번역의 표시로 대체하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 번역 영역은 상기 목적 언어를 선택하기 위한 선택 가능한 요소를 포함하고, 상기 방법은,
    상기 컴퓨팅 디바이스에 의해, 상기 목적 언어를 선택하기 위한 상기 선택 가능한 요소의 선택에 기초하여, 제1 언어에서 그 제1 언어 및 상기 소스 언어와 상이한 제2 언어로 상기 목적 언어를 변경하는 단계와; 그리고
    상기 컴퓨팅 디바이스에 의해, 제1 언어로부터 제2 언어로 적어도 하나의 후보 단어의 번역을 갱신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 컴퓨팅 디바이스에 의해, 상기 컴퓨팅 디바이스의 현재 위치에 기초하여, 상기 목적 언어를 결정하는 단계를 더 포함하는 포함하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 컴퓨팅 디바이스에 의해, 수신된 메시지의 추론된 언어에 기초하여, 상기 목적 언어를 결정하는 단계를 더 포함하는 포함하는 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 컴퓨팅 디바이스에 의해, 사전 번역(prior translations)에서 사용된 이전의 목적 언어들에 기초하여, 상기 목적 언어를 결정하는 단계를 더 포함하는 포함하는 것을 특징으로 하는 방법.
  9. 제1항에 있어서,
    상기 컴퓨팅 디바이스에 의해, 하나 이상의 키의 선택에 기초하여, 번역을 수행하기 위한 사용자 명령을 결정하는 단계를 더 포함하고, 상기 번역의 표시는 번역을 수행하기 위한 사용자 명령을 결정하는 것에 응답하여 번역 영역 내의 디스플레이를 위한 출력인 것을 특징으로 하는 방법.
  10. 제1항에 있어서,
    상기 적어도 하나의 후보 단어로부터의 상기 특정 단어의 번역은 상기 하나 이상의 후보 단어가 상기 목적 언어가 아닌 상기 소스 언어와 관련되어 있다는 결정에 응답하여 결정되는 것을 특징으로 하는 방법.
  11. 제1항에 있어서,
    상기 적어도 하나의 후보 단어로부터의 상기 특정 단어의 번역은 제1 소스 언어에서 제2 소스 언어로 변경된 소스 언어를 결정하는 것에 응답하여 결정되고, 상기 제1 소스 언어는 목적 언어인 것을 특징으로 하는 방법.
  12. 모바일 디바이스로서,
    프레즌스 감지(presence-sensitive) 디스플레이 컴포넌트;
    적어도 하나의 프로세서; 및
    명령들을 저장하는 메모리를 포함하고, 상기 명령들은 실행될 때 상기 적어도 하나의 프로세서로 하여금:
    프레즌스 감지 디스플레이 컴포넌트에서의 디스플레이를 위해, 그래픽 키보드 및 편집 영역을 포함하는 그래픽 사용자 인터페이스를 출력하고, 상기 그래픽 키보드는 복수의 키들 및 상기 편집 영역과 상이한 번역 영역을 포함하고;
    프레즌스 감지 디스플레이 컴포넌트에서 검출된 입력의 표시(indication)를 수신하고;
    복수의 키로부터 상기 입력에 의해 선택된 하나 이상의 키를 결정하고;
    하나 이상의 키에 기초하여, 소스 언어로부터의 하나 이상의 후보 단어를 결정하고;
    프레즌스 감지 디스플레이 컴포넌트 및 상기 번역 영역 내의 디스플레이를 위해, 상기 하나 이상의 후보 단어로부터 적어도 하나의 후보 단어의 표시를 출력하고;
    적어도 하나의 후보 단어로부터 특정 단어의 번역을 결정하고, 상기 특정 단어의 번역은 상기 소스 언어와 상이한 목적 언어와 관련되고; 그리고
    프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내의 디스플레이를 위해, 상기 특정 단어의 번역의 표시를 출력하도록 하는 것을 특징으로 하는 모바일 디바이스.
  13. 제12항에 있어서,
    상기 명령들은 실행될 때, 상기 적어도 하나의 프로세서로 하여금, 추가로
    상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내의 디스플레이를 위해, 번역 요소의 선택의 표시를 수신하는 것에 응답하여 상기 번역의 표시를 출력하는 것을 특징으로 하는 모바일 디바이스.
  14. 제13항에 있어서,
    상기 명령들은 실행될 때, 상기 적어도 하나의 프로세서로 하여금,
    상기 번역 요소의 선택 표시를 수신하기 전에, 상기 프레즌스 감지 디스플레이 컴포넌트 및 상기 편집 영역 내의 디스플레이를 위해, 상기 소스 언어 내의 특정 단어의 표시를 출력하고,
    상기 번역의 표시는 적어도 상기 편집 영역 내의 상기 적어도 하나의 후보 단어의 표시를 상기 번역의 표시로 대체함으로써 상기 편집 영역 내의 디스플레이를 위한 출력인 것을 특징으로 하는 모바일 디바이스.
  15. 제1항 내지 제3항 및 제5항 내지 제11항 중 어느 한 항의 방법을 수행하는 수단을 포함하는 시스템.
KR1020187023038A 2016-04-20 2016-04-20 키보드에 의한 자동 번역 KR102204888B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/079719 WO2017181355A1 (en) 2016-04-20 2016-04-20 Automatic translations by keyboard

Publications (2)

Publication Number Publication Date
KR20180102134A KR20180102134A (ko) 2018-09-14
KR102204888B1 true KR102204888B1 (ko) 2021-01-19

Family

ID=60116504

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187023038A KR102204888B1 (ko) 2016-04-20 2016-04-20 키보드에 의한 자동 번역

Country Status (6)

Country Link
US (1) US20190034080A1 (ko)
EP (1) EP3436971A4 (ko)
JP (1) JP2019519010A (ko)
KR (1) KR102204888B1 (ko)
CN (1) CN108701129A (ko)
WO (1) WO2017181355A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11900072B1 (en) * 2017-07-18 2024-02-13 Amazon Technologies, Inc. Quick lookup for speech translation
US10956186B1 (en) * 2017-09-05 2021-03-23 Parallels International Gmbh Runtime text translation for virtual execution environments
CN108334533B (zh) * 2017-10-20 2021-12-24 腾讯科技(深圳)有限公司 关键词提取方法和装置、存储介质及电子装置
CN109032377A (zh) * 2018-07-12 2018-12-18 广州三星通信技术研究有限公司 用于电子终端的输出输入法候选词的方法及设备
JP7409064B2 (ja) * 2019-12-18 2024-01-09 ブラザー工業株式会社 制御プログラム、制御システム、情報処理装置の制御方法
CN111666776B (zh) * 2020-06-23 2021-07-23 北京字节跳动网络技术有限公司 文档翻译方法和装置、存储介质和电子设备
KR20230023226A (ko) * 2021-08-10 2023-02-17 우순조 확장 키보드를 이용한 다국어 통합 서비스 장치 및 방법
US20230084294A1 (en) * 2021-09-15 2023-03-16 Google Llc Determining multilingual content in responses to a query

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040158471A1 (en) 2003-02-10 2004-08-12 Davis Joel A. Message translations
US20090248392A1 (en) * 2008-03-25 2009-10-01 International Business Machines Corporation Facilitating language learning during instant messaging sessions through simultaneous presentation of an original instant message and a translated version
US20100030549A1 (en) * 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US20150106702A1 (en) * 2012-06-29 2015-04-16 Microsoft Corporation Cross-Lingual Input Method Editor

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55108075A (en) * 1979-02-09 1980-08-19 Sharp Corp Data retrieval system
GB0505941D0 (en) * 2005-03-23 2005-04-27 Patel Sanjay Human-to-mobile interfaces
US7983897B2 (en) * 2007-02-14 2011-07-19 Google Inc. Machine translation feedback
US8051061B2 (en) * 2007-07-20 2011-11-01 Microsoft Corporation Cross-lingual query suggestion
CN101471893A (zh) * 2007-12-28 2009-07-01 英业达股份有限公司 即时消息翻译系统及方法
JP5809290B2 (ja) * 2011-01-05 2015-11-10 グーグル・インコーポレーテッド テキスト入力を容易にするための方法およびシステム
US20120215521A1 (en) * 2011-02-18 2012-08-23 Sistrunk Mark L Software Application Method to Translate an Incoming Message, an Outgoing Message, or an User Input Text
US8530980B2 (en) * 2011-04-27 2013-09-10 United Microelectronics Corp. Gate stack structure with etch stop layer and manufacturing process thereof
WO2012174741A1 (en) * 2011-06-24 2012-12-27 Google Inc. Determining cross-language query suggestion based on query translations
KR102073615B1 (ko) * 2013-01-22 2020-02-05 엘지전자 주식회사 인풋 인터페이스를 제공하는 터치 센서티브 디스플레이 디바이스 및 그 제어 방법
CN104714943A (zh) * 2015-03-26 2015-06-17 百度在线网络技术(北京)有限公司 翻译方法及系统
CN105718448B (zh) * 2016-01-13 2019-03-19 北京新美互通科技有限公司 一种对输入字符进行自动翻译的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040158471A1 (en) 2003-02-10 2004-08-12 Davis Joel A. Message translations
US20090248392A1 (en) * 2008-03-25 2009-10-01 International Business Machines Corporation Facilitating language learning during instant messaging sessions through simultaneous presentation of an original instant message and a translated version
US20100030549A1 (en) * 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US20150309997A1 (en) 2008-07-31 2015-10-29 Apple Inc. Mobile device having human language translation capability with positional feedback
US20150106702A1 (en) * 2012-06-29 2015-04-16 Microsoft Corporation Cross-Lingual Input Method Editor

Also Published As

Publication number Publication date
EP3436971A1 (en) 2019-02-06
KR20180102134A (ko) 2018-09-14
CN108701129A (zh) 2018-10-23
JP2019519010A (ja) 2019-07-04
US20190034080A1 (en) 2019-01-31
EP3436971A4 (en) 2019-12-04
WO2017181355A1 (en) 2017-10-26

Similar Documents

Publication Publication Date Title
EP3479213B1 (en) Image search query predictions by a keyboard
CN107305585B (zh) 由键盘作出的搜索查询预测
KR102151683B1 (ko) 그래픽 키보드 내에서의 도형 심볼 검색
EP3408733B1 (en) Keyboard with a suggested search query region
US10140017B2 (en) Graphical keyboard application with integrated search
EP3400539B1 (en) Determining graphical elements associated with text
KR102204888B1 (ko) 키보드에 의한 자동 번역
US20180173692A1 (en) Iconographic symbol predictions for a conversation
US20170308290A1 (en) Iconographic suggestions within a keyboard
US9946773B2 (en) Graphical keyboard with integrated search features

Legal Events

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