Title of Invention

A TEXT ENTRY INPUT SYSTEM; A TEXT INPUT METHOD USING A DIRECTIONAL INPUT DEVICE; AND A TEXT ENTRY INPUT MODULE FOR USE WITH USER INTERFACE COMPONENTS

Abstract The technical field concerns data input devices. The technical problem is developing input devices without inefficiency and slowness of existing products. To this end, a system (ref. 100, Fig. 1) associated with a text entry application comprises a representation of a circular keyboard (Figures 2, 3, 5), a list (224, Fig. 2) of potential linguistic object matches, and a message area (220, Fig. 2) to enter user selected words. The circular keyboard is manipulated via a hardware joystick (110, Fig. 1) or other appropriate device. The user points the joystick in the direction of the desired letter (ref. 604, Fig. 6), then continues pointing roughly to each letter in the desired word. Once all letters have been roughly selected, buttons (ref. 606, Fig. 6) are used to select a specific word from the list of potential matches and send the selected word to the message area.
Full Text A TEXT ENTRY INPUT SYSTEM; A TEXT INPUT METHOD USING
A DIRECTIONAL INPUT DEVICE; AND A TEXT ENTRY INPUT
MODULE FOR USE WITH USER INTERFACE COMPONENTS
BACKGROUND OF THE INVENTION
TECHNICAL FIELD
This invention relates generally to input devices. More particularly, the invention
relates to a directional input system with automatic correction.
DESCRIPTION OF RELATED ARTS
To operate a computing device, such as a computer, one or more input devices
must be connected thereto. Since the early days of the computing age, the
keyboard has been the primary input device for users to input textual messages
into to computing devices. The textual messages may be commands for the
computers to execute, or just plain data entry if he's using a keyboard as an
input device. However, the user must memorize the correct spelling and syntax
of computer commands. Even if the user has memorized the correct spelling, the
input of data with keyboard itself can be error prone. Hence, a graphical user
interface (GUI) has been developed for computing devices to reduce the use of
keyboard. In a GUI, the user operates an alternative input device, such as a
mouse, trackball, or joystick, to move around a cursor or pointer on the display.
Once the cursor is moved to the desired position, a button is pressed and
released, and a corresponding computer command is thus executed. Although a
GUI provides an alternative way to invoke computer commands, the keyboard
continues to serve as the primary text entry input device for computing devices.
Nevertheless, there are situations such as in console video-game machines or
hand held devices with a joystick or joystub, where a traditional keyboard is
neither available nor convenient. Currently, the text entry method for these
systems usually consists of scrolling through an alphabet or on-screen QWERTY
keyboard. Another commonly adopted navigation means in video-game
machines provides users with a pie menu, which is a circular menu that allows
users choose items by dragging the pointing device in the direction of the menu
item. To input a word, the user must select each letter by scrolling through an
alphabet list, navigating through the pie menu, or locating it on the on-screen
keyboard and click a selection button after each letter is located.
The above text entry method has numerous disadvantages. For example: the
method is inefficient because the user has to spend time in locating the letter
and confirming the letter; the method is inconvenient because it breaks the
normal typing flow when inserting clicks between letter selections; and the
method is ineffective because the user could easily mistake an adjacent letter for
the limited size of the on-screen keyboard.
What is desired is an effective text entry input system using a directional input
means such as a joystick or trackball device. It is further desired that the text
entry input system is intuitive and easy to operate. It is still further desired that
the text entry input system can provide auto-correction of input mistakes.
SUMMARY OF THE INVENTION
The invention provides a directional input system associated with a text entry
application, such as email or instant messaging. The system comprises an
optional onscreen representation of a circular keyboard, a list of potential
linguistic object matches, and a message area where the selected words are
entered. The circular keyboard is manipulated via a hardware joystick or game-
pad having an analog joystick or omni-directional rocker switch built therein. The
user points the joystick in the general direction of the desired letter, and then
continues pointing roughly to each letter in the desired word. Once all letters
have been roughly selected, buttons or equivalent means are used to select a
specific word from the list of potential matches and to send the selected word to
the message area.
In one preferred embodiment, the invention provides a text entry input system
which includes: (1) a directional selection means, plus one or more buttons or
equivalent user input means; (2) a list of linguistic objects, organized by
frequency of use; (3) an output device with a text display area; and (4) a
processor which includes an object search engine, a distance or angular value
calculation module, word module for evaluating and ordering words, and a
selection component.
The directional selection means is used to point in the direction of each letter of
a word. The processor calculates a distance or an angle to find letters and
weight values for the letters in the pointing direction with the distance or the
angle calculation module, retrieves a predicted list of words based on the letters
and weight values with the object search engine, and evaluates and orders the
predicted list of words with the word module. The selection component is used to
select a desired word from the predicted list of words.
In another preferred embodiment, the invention provides a text entry input
method using a directional selection means. The method includes the steps of:
The user moving a cursor on an on-screen keyboard in the direction of a
desired letter using the directional input means;
Recording the X-Y coordinate position of the cursor;
Converting the recorded X-Y coordinate position into the corresponding
set of polar coordinates;
Applying a selection weight value to each input based on the set of polar
coordinates of the recorded cursor position; and
Retrieving a list of predicted words from a vocabulary database based on
the weight value for each input and a plurality of pre-determined values.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
FIG. 1 is a block diagram illustrating a directional input system according to the
invention;
FIG. 2 is a schematic diagram depicting an exemplary screen of the display
device corresponding to the directional input system of FIG. 1;
FIG. 3 is a schematic diagram depicting a preferred layout of an on-screen
keyboard according to the invention;
FIG. 4A is a schematic view of a set of compass points according to one
embodiment of the invention;
FIG. 4B is a schematic view of a set of compass points around the word
selection list according to another embodiment of the invention;
FIG. 5 is a schematic view of an on-screen feedback of the directional input
system according to the invention;
FIG. 6 is a flow diagram illustrating a process for precision input mode of the
directional input system according to the invention; and
FIG. 7 is a flow diagram illustrating a process for operating the directional input
system according to the invention.
DETAILED DESCRIPTION OF THE INVENTION
The invention provides a directional input system associated with a text entry
application, such as email or instant messaging. The system includes an optional
onscreen representation of a circular keyboard, a list of potential linguistic object
matches, and a message area where the selected words are entered. The
circular keyboard is manipulated via a hardware joystick or game-pad having an
analog joystick or omni-directional rocker switch built therein. The user points the
joystick in the general direction of the desired letter, and then continues pointing
roughly to each letter in the desired word. Once all letters have been roughly
selected, buttons or equivalent means are used to select a specific word from
the list of potential matches and send the selected word to the message area.
System Construction and Basic Operation
FIG. 1 is a block schematic diagram illustrating a directional input system 100
incorporated in a home video game console machine according to the preferred
embodiment of this invention. The input system 100 includes an analog joystick
110 having one or more buttons, a vocabulary module 150 which stores a
collection of linguistic objects, a display device 120 having a text display area,
and a processor 140. The processor 140, which connects the other components
together, further includes an object search engine 142, a distance calculation
module 144 for calculating distance value, a word (linguistic object) module 146
for evaluating and ordering words, and a selection component 148. The system
100 may further include an optional on-screen representation of a keyboard 130
showing on the display device 120.
The joystick 110 serves as a directional selection input device, which provides a
possibility of directional input with a sufficient precision, preferably 10° or more
precise. It is preferable that the default position of the cursor, if it is shown, is at
the center of the circle of letters. It is possible to use a joystick device to navigate
in two dimensions an on-screen "QWERTY" or "ABC" keyboard, either in the
standard rectangular form or in a circular layout. It is also possible to navigate
through multiple concentric rings of characters. It is the goal of this invention,
however, to depend only on the joystick in its center/resting position and its non-
centered (or perimeter) positions, i.e. using the radial direction rather than the
specific degree of tilt.
As soon as a direction has been established by some degree of tilt from the
center, the input may be registered and recorded. It may still be beneficial to the
user, however, to allow the direction to be altered slightly before recording it.
Therefore, the last effective direction is only recorded after the joystick is
returned to its resting position in the preferred embodiment of the invention.
Although analog joystick is described as the preferred directional selection
device, any input device that provides the possibility of directional input with a
sufficient precision can be used. For examples: omni-directional rocker switch,
thumbstick, e.g. IBM TrackPointa, touchpad, touchscreen, touchscreen and
stylus combination, trackball, eye tracking device, trapped-disk sliding switch,
steering wheel, Apple iPod™ Navigation Wheel, or Sony's Jog-dial and data
glove, e.g. old Nintendo Game Glove, can be used as alternative.
The joystick input device preferably has eight buttons. However, it may only have
one button, or any other number of buttons. Note that the stick itself does not
usually have that many buttons despite the fact that the joystick base or
enclosing game controller may have. A 4-way directional hat switch or jog-dial
may be used to support multiple functions, both for character input and for
secondary navigation. In addition, a joystick may be pressed straight down (z-
axis) to provide an additional button.
These buttons provide a mechanism for explicit commands to the system. One
of the buttons may invoke a menu which contains additional commands. Another
button may change the set of characters which may be selected via the
directional input.
In an alternate embodiment, a second joystick or omni directional rocker switch
is used to invoke some of the explicit commands of the system. For example,
tilting the joystick up and down scrolls through the word choices and tilting it to
the right extends the current word with a choice of suffixes.
The linguistic objects that are stored in the vocabulary module 150 include but
not limit to: words, phrases, abbreviations, chat slang, emoticons, user IDs,
URLs, non-English (such as Chinese or Japanese) characters. Although words
are used in the preferred embodiments, any other linguistic objects are equally
applicable. Similarly, although the term "letter" or "character" is used in the
preferred embodiment, other sub-word components from Non-English
languages, e.g. strokes, radicals/components, jamos, kana, plus punctuation
symbols and digits, are equally applicable.
The list of predicted words is ordered in accordance with a linguistic model,
which may include one or more of: frequency of occurrence of a word in formal
or conversational written text; frequency of occurrence of a word when following
a preceding word or words; proper or common grammar of the surrounding
sentence; application context of current word entry; and recency of use or
repeated use of the word by the user or within an application program.
FIG. 2 is a schematic diagram depicting an exemplary screen of the display
device 120 corresponding to the directional input system 100 of FIG. 1. The
screen includes an on-screen keyboard 130 and a text display area 210. As
mentioned above, the on-screen keyboard 130 is optional because if the
alphabets are printed around the joystick device, the on-screen keyboard
component would be unnecessary.
The on-screen keyboard area can take a variety of shapes, including but not
limited to circle, square, oval and polygon with any number of sides. The visual
representation is typically, but not limited to, a two-dimensional plane figure.
The on-screen keyboard 130 may be enhanced by, or even replaced with, a set
of compass point letters, which are 'A', 'H', 'N' and 'U. Compass point letters can
be placed in a separate compass area on screen as shown in FIG. 4A. They can
also be placed around the word selection list as shown in FIG. 4B. These
compass pointer letters can also be placed in an interactive pointer/cursor on
screen or even around the joystick device 110.
The letters in the on-screen keyboard 130 can be arranged in any order or
orientation. In the preferred layout as shown in FIG. 2, all letters have their
bottoms towards the center of the ring. In an alternative layout, all letters may be
upright. In the preferred layout as shown in FIG. 2, the letters are ordered
alphabetically. In an alternative layout, the letters may follow the Dvorak order. In
the preferred layout as shown in FIG. 2, the letters start at the 12 o'clock
position. In an alternative layout, the letters may start at the 9 o'clock location.
Alternatively, the letters may have a moving starting position in a rotating
keyboard in an embodiment, for example, where the input device is a type of
wheel. In the preferred layout as shown in FIG. 2, the letters are placed
clockwise in the character ring. In an alternate layout, the letters may be placed
counterclockwise. In the preferred embodiment as shown in FIG. 2, letters
occupy different amount of radians depending upon their frequency of use in the
language, giving more frequent letters a larger target area.
Likewise, the digits can be arranged in any order or orientation. In the preferred
embodiment as shown in FIG. 3, the digits would be located adjacent to the
series of letters assigned to the corresponding digit keys on a telephone keypad.
The on-screen keyboard 130 may include letters of a primary input language,
letters of alternate input languages (and/or accented letters), digits, and
punctuation symbols. The keyboard may also include character components for
pictographic languages, diacritics and other "zero-width" characters that attach to
preceding characters. The keyboard may further include tone marks, bi-
directional characters, functions indicated by a word or symbol, and symbolic
representation of a set of characters such as "Smart Punctuation" as described
below.
The preferred primary text input keyboard as shown in FIG. 3 includes
unaccented letters which form an outer ring, digits which form an inner ring, and
a symbol or an indicator between the letters "z" and "a", called "Smart
Punctuation", which intuitively determines which punctuation is most appropriate
based on the word context.
There may be auditory and/or visual feedback on each joystick movement or
button press. For example, as soon as the joystick direction is registered, a solid
or gradient-fill pie wedge shape could appear on the keyboard, centered on the
current direction of tilt. Further, the width of that pie wedge could narrow in
proportion to the tilt of the joystick towards the perimeter. The pie wedge could
remain momentarily after the joystick is returned to its center/resting position.
The pie wedge provides a visual cue that the tilt of the joystick was registered
and reinforces the notion that each action represents a range of possible letters.
FIG. 5 depicts a visual feedback for a joystick movement. The solid pie wedge
502 on the keyboard 302 shows the current direction of the joystick and the
range of letters in that direction.
Referring back to FIG. 2, the text display area 210 includes a word choice list
region 224 and a message area 220. The word choice list is a list of words that
the system predicts as likely candidates based on the characters entered by
ambiguous directional input.
The most likely word is a default word. The user can either accept the default
word with one action, or select an alternate word with a combination of actions.
The exact spelling sequence of exact characters coincidentally selected by the
user is also displayed. Preferably, the spelling sequence is displayed in a
separate area above or below the word choice list. Alternatively, it may be
displayed as an entry in the word choice list, typically the first line or the last line.
In FIG. 2, the exact spelling sequence 222 is displayed above the word choice
list 224.
The last letter entered is also indicated both on the on-screen keyboard and in
the exact spell sequence, by some method including but not limited to font
change, color change, reverse video or alternate background color, underline,
bold face or italics, and outline. Example of outline can be a box or a circle.
All the words on the word choice list, other than the exact spelling sequence at
the time when the exact spelling sequence is displayed as the first or last entry,
are ordered by a combination of the shortest calculated distances between the
joystick entry sequence and each letter in each word and the recency of use
and/or the frequency of use within the given language.
The directional input system 100 implements a method whereby the user can
select a specific word from the word choice list. Preferably, the method is
consistent with other applications use of scrolling methods and selection button.
The system also includes a means of selecting the exact spelling sequence as
well as any predicted words. In one preferred embodiment, the system may
include a next button and a previous button, with which the user can navigate
forward and backward through the word choice list.
Alternatively, the directional input system 100 may include a selection mode
switch button. When the selection mode switch button is pressed, the system
enters a selection mode and the directional input means can be used to scroll
forward and backward through the word choice list.
In addition, selecting a predicted word using a particular means may replace the
exact spelling sequence as if the letters of the selected word had been entered
directly by the user, and a new list of predicted words is generated.
The most likely word is the word added if the user does not try to select a
different word. The default word may be a copy of the exact spelling sequence if
the user was accurate. Alternatively, it may be the selected word as described
above. In addition, the exact spelling sequence may become the default word if a
precision method or mode (described below) is used to explicitly choose at least
one letter in the sequence.
Words that are longer than the number of joystick actions registered in the
current entry sequence may be included in the prediction list. Alternately, a
further means can be provided to extend a selected word with completions. For
example, longer words that begin with a selected word may appear on a pop-up
list after a button press or directional input, similar to the cascading menus on
PC windowing systems.
Once a word is entered, the word is typically displayed in the message area 220.
Alternatively, the directional input system 100 can be implemented as an input
method editor (IME). In this case, the text entered by the system goes into
whatever program is actively accepting input from the system. Other applications
may be linked to the system, or the system may be incorporated as part of
another application. These applications include but are not limited to: instant
messaging, electronic mail, chat programs, web browsing, communication within
a video game, supplying text to a video game, as well as word processing.
To enter a text message using the directional input system 100, the user first
points the joystick in the general direction of the desired letter, and then
continues pointing roughly to each letter in the desired word. Once all letters
have been roughly selected, buttons are used to select a specific word from the
list of potential matches. The selected word goes into the message area 220,
which may be an appropriate text application such as email or instant message.
The invention also provides a method for precisely choosing the letters of a
word. The method is useful for entering uncommon names and any word that is
not part of the standard language currently active. The method can also be used
to change the last character entered by stepping between characters adjacent to
the last character entered. To step between characters adjacent to the last
character entered, a forward button and a backward button may be used. Once
the character entered has been changed, the word choice list refreshes to reflect
the changes in the predicted words. Alternatively, the system may be switched to
a precision mode and the directional input means may be used to cycle through
letters. To switch to the precision mode, the system may choose to use the
degree of joystick tilt from the center. Once the tilt exceeds a preconfigured limit,
the system switches to the precision mode. Alternatively, the system may use
the time interval that the joystick dwells at the perimeter. Once the time interval
reaches a preconfigured limit, the system switches to the precision mode and
notifies the user through a visual cue or a tone. The system may also include a
button for switching to precision mode.
FIG. 6 is a flow diagram illustrating a process for operating the directional input
system in the precision mode to select an exact letter. The process includes the
following steps:
Step 600: The user switches to precision mode. This is typically a clicking
on a predefined button. However, any of the above mentioned method can be
used.
Step 602: The system can optionally zoom in on the area of the last
character entered.
Step 604: The user uses directional input to drive an indicator to the
desired character. If the joystick is used for directional input and if the zoom-in
has been employed, then the system processes joystick movement at a finer
resolution. For example, a radial move of 90° is treated as if it were only 30°.
Step 606: The user uses a button to accept the character.
Step 608: The system optionally returns to normal directional text entry
mode.
In addition to the preceding methods, the system may determine the precise
letters by detecting the difference in speed of selection or change in
acceleration, especially when the system embodiment is based on a directional
selection means employing a wheel.
In the preferred embodiment above, the directional input system 100 is deployed
to a home video game console machine. However, this technology can also be
deployed to many other products such as portable video game devices, phones
with the appropriate input methods, wheelchairs, and TV related electronic
devices, etc. In TV related electronic devices, for example, the invention may be
deployed as set-top boxes and the joystick/rocker may be incorporated in the
remote controls.
FIG. 7 is a flow diagram illustrating a direction input method according to another
preferred embodiment of the invention. The method includes the following steps:
Step 700: The user moves an on-screen cursor in the direction of the
desired letter using a joystick, or any other directional input means.
Step 702: The system records the X-Y coordinate position of the cursor.
Step 704: The system converts recorded X-Y coordinate position into
corresponding set of polar coordinates.
Step 706: The system applies a selection weight value to each input
based on the set of polar coordinates of the recorded cursor position.
Step 708: The system retrieves a list of predicted words based on the
weight values for each of input and a set of pre-determined values.
For internal calculations, the on-screen keyboard 130 may be represented
internally in the same way as the screen using direct mapping. Alternatively, it
can be represented in a very different format using virtual mapping. The internal
representation of keyboards may use any coordinate system, including but not
limited to Polar and Cartesian coordinate systems.
When the on-screen keyboard 130 is represented internally using a Polar
system, key positions are set by bounding angles and radial distance from the
center. In the preferred embodiment, multiple concentric circles are permitted.
The system can accept direct Polar inputs. Alternatively, it can map Cartesian
inputs into Polar coordinates before performing calculations.
When the on-screen keyboard 130 is represented internally using a Cartesian
system, key positions are set by left, right, top, and bottom of a bounding box.
The horizontal and vertical positions are relative to one corner, usually top left
but can vary by platform and operating system (OS). In the preferred
embodiment, multiple rows of keys are permitted.
The directional input system 100 may also alternate between several keyboards
for a variety of reasons. Such reasons may include the following: uppercase vs.
lowercase letters, alphabets for other supported languages, extended alphabets
for languages with large numbers of letters, diacritics, numbers vs. letters,
symbols and punctuation, strokes vs. character components, different alphabets
for the same language, function keys, and precision mode for selecting specific
exact spell characters.
In another preferred embodiment of the invention, the directional input system
100 also provides a mechanism for changing the keyboard face and the input
directions. The system includes an input means to switch among a set of system
modes. A mode is a combination of keyboard, key-map, and sometimes
dictionary. Modes can be used for many things, including but not limited to
entering characters, executing functions, and changing system parameters.
In the preferred embodiment, the system may also contain the following buttons:
Space or Select word, Backspace, Next & Previous word, Next & Previous
character, Shift/Caps Lock, and Menu/Mode switch. Each of these buttons is
mapped to a system function. The functions that can be performed by buttons
include, but are not limited to the following:
Select: Adding a specified word to the message area and at the same
time clearing out the current word;
Next/Previous word: Altering which word is highlighted for selection;
Next/Previous character. Altering the last character entered;
Backspace/Delete word: Deleting a character or word;
Shift, Caps lock: Altering the case of letters being entered;
Undo: Undoing last function or entry;
Cut/Copy/Paste: Standard clipboard commands;
Escape: Activate/deactivate the directional text input;
Toggling Next Lock/Hold;
Extend or Add Suffix: Selecting a word and displaying its possible suffixes
or using any additional characters entered to extend the selected root word;
Change to a new Language;
Change to a new Keyboard layout;
Download/install new language/keyboard layout/program version; and
Toggle Precision mode for Exact Spell.
Some characters that can optionally be entered by buttons include, but are not
limited to:
"Smart Punctuation", which intuitively determines which punctuation is
most appropriate based on the word context;
"Smart Diacritics", which intuitively determines which diacritic to be added;
and
"Smart Tones", which intuitively determines which tone to be added to a
word for tonal languages, such as Vietnamese. Alternately, a tone key could
display a selection of tones to add to the current word or last character entered.
The directional input system 100 supports multiple languages. Each language
supported is stored in a separate language database (LDB). The language
database stores words organized by word length and frequency of use within the
given language. When the system uses case sensitive letters, the database
storage is also case sensitive and thus words are stored in a mixed case format.
The directional input system 100 can optionally support user added words.
These words are either stored in a separate user database (UDB) or appended
to the primary language database (LDB). When a UDB is used, it organizes
words by word length and recency of use.
The directional input system 100 can optionally support dynamic word prediction,
where likelihood changes are made either by re-ordering sections of the LDB, or
via a recency database (RDB) which is organized by word length and recency of
use.
The final word choice list is retrieved and ordered using the following types of
data: word length, ordinal ranking, letter weight, and recently used words. Only
words that have at least as many letters as the letters entered are presented.
When "Word Completion" is used, longer words may be presented if they are
determined to be likely. Words in the LDB may be ordered by frequency, most
common first, and least common last.
The invention adopts an algorithm which matches the entry sequence to letters
of words in the LDB based on their nearness to the point/angle of each entry. For
example, the weighting may approximate an inverse square of the distance from
the center of the corresponding letter. Grouping letters for efficiency is an
optional, yet preferred feature; it excludes letter matching when the letter is far
outside of the smaller area of adjacent letters surrounding the point/angle of
entry. A detailed description of the algorithm is set further in the copending
application, U.S. Serial No. 09/580,319, filed on May 26, 2000, entitled
"KEYBOARD SYSTEM WITH AUTOMATIC CORRECTION". This detailed
description is hereby incorporated by reference.
Each letter in a keyboard group has a relative weight to nearby letters. When
one letter is entered, nearby letters are taken into account, and all of these
letters are assigned a likelihood weight. The actual letter entered has the highest
weight, and the weight decreases with distance from the exact letter. These letter
weights combine to alter the order of likely words presented in the word choice
list.
Recently used words may be weighted as more frequent, so their likelihood is
increased and they are shown higher in the word choice list. Recency
information is also used for determining the placement of user-defined words in
the word choice list.
The directional input system 100 also supports word completion. If the system
suspects that the letters entered are the beginning part of a longer word, longer
words that roughly match are presented in the word choice list. Alternatively, the
system can present the user a list of suffixes for a stem word. If a root word is
selected with a "suffix button", a list of suffixes is then displayed at the end of the
root, allowing the user to select the suffix of choice.
The directional input system 100 also allows the user to select a partial word
while still building a word. The list is then filtered to only include words that begin
with the chosen word stem. If a user scrolls down to an alternate word, and then
adds more letters, this alternate word continues to be the selection, highlighted
by the method discussed above, until it becomes invalid by further addition of
characters.
Although the invention is described herein with reference to the preferred
embodiment, one skilled in the art will readily appreciate that other applications
may be substituted for those set forth herein without departing from the spirit and
scope of the present invention.
WE CLAIM :
1. A text entry input system, comprising:
a direction selector to individually point in a direction of letters to
collectively form an intended linguistic object, where each letter comprises a
linguistic object subcomponent;
a collection of linguistic objects;
an output device with a text display area;
a processor, comprising:
a difference calculation module configured to output, for each act of
pointing, various letters and associated weight values based upon factors
including at least an angular difference between an actual direction indicated by
the directional selector and pre-assigned directions of said letters;
an object search engine configured to construct a predicted list of
linguistic objects based on the output letters and weight values;
a selection component to facilitate user selection of a desired linguistic
object from the predicted list of linguistic objects.
2. The system as claimed in claim 1, comprising an on-screen keyboard
representation of a ring of letters in each writing system.
3. The system as claimed in claim 2, wherein said on-screen keyboard is of
any shape selected from a group comprising circle, square, oval and polygon.
4. The system as claimed in claim 1, comprising a set of compass point
letters, said compass point letters being placed at positions around in a linguistic
object selection list, in a separate on-screen compass area, or around said
directional selector.
5. The system as claimed in claim 2, wherein said letters have bottoms
towards the center of said ring.
6. The system as claimed in claim 2, wherein said letters have an
alphabetical order, QWERTY order, or Dvorak order.
7. The system as claimed in claim 2, wherein said letters start at the 12
o'clock or 9 o'clock position.
8. The system as claimed in claim 2, wherein said letters have a moving
starting position.
9. The system as claimed in claim 2, wherein said letters have a clockwise or
counterclockwise layout.
10. The system as claimed in claim 2, wherein each of said letters occupies
different amount of radians depending upon use frequency.
11. The system as claimed in claim 1, wherein a number of characters are
printed around said directional selector.
12. The system as claimed in claim 1, wherein said directional selector
comprises a joystick or an omni-directional rocker switch.
13. The system as claimed in claim 1, wherein each letter comprises any
subcomponent or combination of one or more of the following forming an
incomplete part of one of the linguistic objects:
an alphabetic letter, numeric digit, symbol, character;
a sub-word component from a non-English language including one or
more strokes, radicals, jamos, kana, punctuation symbols, digits.
14. The system as claimed in claim 1, comprising at least four buttons
independent of said directional selector.
15. The system as claimed in claim 1, comprising one of the following: a
joystick or directional rocker switch.
16. The system as claimed in claim 12, wherein said joystick or omni-
directional rocker switch is a component of a multi-function video game
controller.
17. The system as claimed in claim 2, wherein said system provides auditory
or visual feedback on each movement of said directional selector.
18. The system as claimed in claim 17, wherein said visual feedback is a solid
or gradient-fill pie wedge shape appearing on said on-screen keyboard, said pie
wedge shape being centered on a current selected direction.
19. The system as claimed in claim 1, wherein said linguistic objects are
ordered according to a linguistic model.
20. The system as claimed in claim 19, where said linguistic model includes
one or more of:
frequency of occurrence of a linguistic object in formal or conversational
written text;
frequency of occurrence of a linguistic object when following a preceding
linguistic object or linguistic objects;
proper or common grammar of the surrounding sentence;
application context of current linguistic object entry; and
recency of use or repeated use of the linguistic object by the user or within
an application program.
21. The system as claimed in claim 1, wherein said list of predicted linguistic
objects are ordered by a combination value of a calculated weighted difference
value and a linguistic model.
22. The system as claimed in claim 21, wherein said linguistic model
comprises one or more of:
frequency of occurrence of a linguistic object in formal or conversational
written text;
frequency of occurrence of a linguistic object when following a preceding
linguistic object or linguistic objects;
proper or common grammar of the surrounding sentence;
application context of current linguistic object entry; and
recency of use or repeated use of the linguistic object by the user or within
an application program.
23. The system as claimed in claim 21, wherein the linguistic object with the
highest combination value is selected by default.
24. The system as claimed in claim 1, wherein the linguistic objects longer
than the number of actions of direction selector are included in said list of
predicted linguistic objects.
25. The system as claimed in claim 1, comprising a means for extending a
selected linguistic object with completions.
26. The system as claimed in claim 25, wherein said completions are
displayed in a pop-up list after a button press or directional input.
27. The system as claimed in claim 1, comprising a means for precisely
selecting said letters of said linguistic object.
28. The system as claimed in claim 1, wherein an exact spelling sequence is
displayed in said text display area.
29. The system as claimed in claim 1, wherein the last entered letter is
indicated in said exact spelling sequence.
30. The system as claimed in claim 2, wherein the last entered letter is
indicated in said on-screen keyboard.
31. The system as claimed in claim 1, comprising a means to change the last
entered letter.
32. A text input method using a directional input device, wherein each
direction entered corresponds, directly or indirectly, to one or more linguistic
object subcomponents according to a predetermined mapping, said method
comprising the steps of:
for each user act of pointing the directional input device, preparing an
output of candidate linguistic object subcomponents and associated probability
weightings based upon factors including at least an angular difference between
directions indicated by the directional input device and pre-assigned directions of
said linguistic object subcomponents according to the predetermined mapping;
utilizing the output to construct a list of predicted linguistic objects;
facilitating user selection of a desired linguistic object from said list.
33. The method as claimed in claim 32, the directions indicated by the
directional input device comprising angular direction, wherein the angular
direction is derived from recording the X-Y offset of the directional input device
and converting that offset into an angular notation comprising radians, gradients,
or degrees.
34. The method as claimed in claim 33, wherein the conversion is a variation
on the standard Cartesian to Polar formula of Angle = arctan(Y/X).
35. The method as claimed in claim 32, wherein the candidate linguistic object
subcomponents can be one of any number of adjacent or nearby letters or
symbols.
36. The method as claimed in claim 32, comprising utilizing a linguistic model
to order said list of predicted linguistic objects according to likelihood of intended
selection by the user.
37. The method as claimed in claim 32, wherein the linguistic objects
comprise words and the linguistic object subcomponents comprise letters.
38. The method as claimed in claim 36, wherein the order of said list of
predicted linguistic objects is based on a combination of the weightings and the
linguistic model.
39. The method as claimed in claim 36, wherein the linguistic model
comprises one or more of:
frequency of occurrence of a linguistic object in formal or conversational
written text;
frequency of occurrence of a linguistic object when following a preceding
linguistic object or linguistic objects;
proper or common grammar of the surrounding sentence;
application context of current linguistic object entry; and
recency of use or repeated use of the linguistic object by the user or within
an application program.
40. The method as claimed in claim 32, wherein said directional input device
is associated with an on-screen keyboard.
41. The method as claimed in claim 40, wherein said on-screen keyboard
comprises a ring of letters, numbers or other symbols.
42. The method as claimed in claim 40, wherein said on-screen keyboard is
represented in Polar or Cartesian coordinate system for calculation.
43. The method as claimed in claim 32, wherein construction of said list of
predicted linguistic objects includes retrieving linguistic objects from a vocabulary
database, and wherein a plurality of linguistic objects stored in said vocabulary
database is ordered according to a linguistic model.
44. The method as claimed in claim 43, where said linguistic model comprises
one or more of:
frequency of occurrence of a linguistic object in formal or conversational
written text;
frequency of occurrence of a linguistic object when following a preceding
linguistic object or linguistic objects;
proper or common grammar of the surrounding sentence;
application context of current linguistic object entry; and
recency of use or repeated use of the linguistic object by the user or within
an application program.
45. The method as claimed in claim 43, wherein said plurality of linguistic
objects is stored in a mixed case format in said vocabulary database.
46. The method as claimed in claim 43, wherein said vocabulary database
comprises a user database which stores linguistic objects added by the user.
47. The method as claimed in claim 46, wherein said linguistic objects added
by the user in said user database are ordered by length of linguistic object and
recency of use.
48. The method as claimed in claim 43, wherein said vocabulary database
comprises a recency database to support linguistic object prediction based on
recency of use.
49. The method as claimed in claim 36, where the order of each linguistic
object in the list is based at least in part upon a mathematical function of
probability weightings for all linguistic object subcomponents in the linguistic
object.
50. The method as claimed in claim 32, where the factors additionally include,
for each linguistic object subcomponent, a frequency of use of that linguistic
object subcomponent.
51. The method as claimed in claim 32, wherein the user selects a partial
linguistic object and continues with more directional inputs.
52. The method as claimed in claim 51, wherein said list of predicted linguistic
objects is filtered to only include linguistic objects that begin with said selected
partial linguistic object.
53. The method as claimed in claim 32, wherein the user selects an entry
from said list of predicted linguistic objects and the highest-ranked linguistic
object containing said selected entry remains selected upon the input of
additional linguistic object subcomponents until said entry becomes invalid by
further addition of linguistic object subcomponents.
54. The method as claimed in claim 32, wherein said directional input device
includes a set of buttons.
55. The method as claimed in claim 32, wherein said directional input device
includes a joystick or omni-directional rocker switch.
56. The method as claimed in claim 40, wherein said on-screen keyboard
comprises a smart punctuation symbol, said smart punctuation symbol when
retrieved is automatically interpreted as a punctuation symbol, diacritic mark or
tonal indication at the place in the input sequence where a matching punctuation
symbol, diacritic mark or tonal indication occurs in predicted linguistic objects.
57. The method as claimed in claim 32, wherein a set of buttons or a second
directional input device can be used alone or with said directional input device,
separately or simultaneously, to switch or choose input modes, to change from
input to word selection, or to invoke other functions.
58. The method as claimed in claim 32, comprising the steps of:
invoking an undo means after selecting a linguistic object from said list of
predicted linguistic objects; and
re-displaying said list.
59. The method as claimed in claim 32, comprising the steps of:
selecting a linguistic object from a text message; and
displaying subcomponents of said linguistic object as if said
subcomponents had been entered exactly and constructing a predicted list of
linguistic objects based on the displayed subcomponents.
60. A text entry input module for use with user interface components including
a direction indicator and a output device with a text display area, the text entry
input module comprising:
a database of linguistic objects;
a predetermined set of linguistic object subcomponents;
where a predetermined relationship exists between said linguistic object
subcomponents and different assigned angular directions of the direction
indicator;
a calculation module to apply the predetermined relationship to each user-
submitted direction entered via the direction indicator to provide an output, said
output including: (1) multiple predicted linguistic object subcomponents including
a group of linguistic object subcomponents whose assigned angular directions
are nearest the user-submitted directions, and (2) for each predicted linguistic
object subcomponent, an associated proximity weighting proportional to an
angular difference between the user-submitted direction and the angular
direction assigned to the predicted linguistic object subcomponent;
an object search engine configured to utilize the output to retrieve from
the database a list of predicted linguistic objects potentially representative of the
user-submitted directions;
a linguistic object module programmed to utilize at least one
predetermined linguistic model to order said list of potential linguistic objects
according to likelihood of intended selection by the user;
a selection component to facilitate user selection of a desired linguistic
object from said ordered list of predicted linguistic objects.
61. A text entry input module for use with user interface components including
a direction indicator and an output device with a display, the text entry input
module comprising:
a vocabulary database of linguistic objects;
a mapping between angular directions of the direction indicator and
linguistic object subcomponents;
a calculation module to apply the mapping to each user-submitted
direction entered via the direction indicator to provide an output including:
multiple potentially user-intended linguistic object subcomponents and
associated proximity weightings;
an object search engine configured to retrieve a list of predicted linguistic
objects from the vocabulary database based upon said calculation module
output;
a linguistic object module programmed to utilize a linguistic model to order
said list of predicted linguistic objects according to likelihood of intended
selection by the user; and
a selection component to facilitate user selection of a desired linguistic
object from said ordered list of predicted linguistic objects.
62. A computer programmed to facilitate operations for text entry, the
operations comprising:
by using a joystick having predefined mapping between different actual
radial directions and different text characters, a user sequentially pointing in an
intended radial direction toward intended characters of at least part of an
intended word;
the computer determining angular similarity between each actual pointing
direction and radial directions of different characters in the mapping, and using
the determined angular similarity to compute different possible combinations of
intended characters that could form the intended word and their associated
likelihoods, and presenting a list of potential matching words to the user, where
the presentation favors potential matching words according to factors including
an aggregate angular similarity of constituent characters of a potential matching
word to the actual pointing directions;
the user selecting the intended word from the list;
the computer displaying the selected word in a human-readable message
composition display area.

The technical field concerns data input devices. The technical problem is
developing input devices without inefficiency and slowness of existing products.
To this end, a system (ref. 100, Fig. 1) associated with a text entry application
comprises a representation of a circular keyboard (Figures 2, 3, 5), a list (224,
Fig. 2) of potential linguistic object matches, and a message area (220, Fig. 2) to
enter user selected words. The circular keyboard is manipulated via a hardware
joystick (110, Fig. 1) or other appropriate device. The user points the joystick in
the direction of the desired letter (ref. 604, Fig. 6), then continues pointing
roughly to each letter in the desired word. Once all letters have been roughly
selected, buttons (ref. 606, Fig. 6) are used to select a specific word from the list
of potential matches and send the selected word to the message area.

Documents:

635-kolnp-2004-abstract.pdf

635-kolnp-2004-assignment.pdf

635-kolnp-2004-claims.pdf

635-kolnp-2004-correspondence.pdf

635-kolnp-2004-description (complete).pdf

635-kolnp-2004-drawings.pdf

635-kolnp-2004-examination report.pdf

635-kolnp-2004-form 1.pdf

635-kolnp-2004-form 13.pdf

635-kolnp-2004-form 18.pdf

635-kolnp-2004-form 3.pdf

635-kolnp-2004-form 5.pdf

635-KOLNP-2004-FORM-27.pdf

635-kolnp-2004-gpa.pdf

635-kolnp-2004-reply to examination report.pdf

635-kolnp-2004-specification.pdf


Patent Number 239169
Indian Patent Application Number 635/KOLNP/2004
PG Journal Number 11/2010
Publication Date 12-Mar-2010
Grant Date 09-Mar-2010
Date of Filing 17-May-2004
Name of Patentee AMERICA ONLINE INC.
Applicant Address 22000 AOL WAY, DULLES, VA
Inventors:
# Inventor's Name Inventor's Address
1 HULLFISH KEITH CHARLES 13326 69TH DRIVE SE, SNOHOMISH, WA 98226
2 BRAMS DOUG 4403 NE 195TH PLACE, SEATTLE, WA 98155
3 LONGE MICHAEL R. 8756 13TH AVENUE N.W, SEATTLE, WA 98117
4 PALMER BRIAN 1629 SUMMIT AVENUE, #403, SEATTLE, WA 98122
PCT International Classification Number G06F 3/00
PCT International Application Number PCT/US2004/011343
PCT International Filing date 2004-04-09
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 10/677, 890 2003-10-01 U.S.A.
2 60/461, 735 2003-04-09 U.S.A.