Abstract:
A combined predictive speech and text recognition system. The present invention combines the functionality of text input programs with speech input and recognition systems. With the present invention, a user can both manually enter text and speak desired letters, words or phrases. The system receives and analyzes the provided information and provides one or more proposals for the completion of words or phrases. This process can be repeated until an adequate match is found.

Description:
FIELD OF THE INVENTION  
       [0001]     The present invention relates generally to predictive text input programs. More particularly, the present invention relates to the relationship between text input programs and speech recognition programs in devices such as mobile telephones.  
       BACKGROUND OF THE INVENTION  
       [0002]     In recent years, mobile telephones and other mobile electronic devices have become capable of possessing more and more features which were simply not possible only a few years ago. Many such features that are now commonly found on such mobile devices involve the ability to input text into the devices for purposes such as messaging, appointment and schedule making, and even document creation and editing. As users have become increasingly accustomed to text input capabilities on mobile devices, they have also begun to expect and demand improved text input features.  
         [0003]     There are text input software programs for devices such as mobile electronic devices which, upon a user beginning to type a word, automatically attempts to complete the word based upon predetermined criteria. These programs are pre-populated with words such as proper names, slang, and abbreviations. Such programs often exist for a variety of languages and also are often capable of adapting in response to a user&#39;s behavior or other considerations. Such programs alleviate a user&#39;s typing burden and can be particularly helpful on small, mobile devices where the input keys tend to be quite small.  
         [0004]     Although these programs are beneficial to users, however, they still require a significant amount of typing on the user&#39;s part. Even in more advanced systems that are capable of completing sentences, the user must still enter several words before the program can predict the remainder of the sentences. In the case of small, mobile devices, this can be cumbersome. This problem is exacerbated even more with devices where a single key can denote multiple characters. For example, on a mobile telephone, a single key can be used to enter both a single number and up to four different letters. In such a situation, users may have to input a relatively large number of characters before a program is capable of completing the word or phrase.  
         [0005]     United States Application Publication No. 2002/069058 discloses a multimodal data input device where a user can provide a voice input of a first phonetic component of a word and a mechanical component of the word, such as a stroke or character, with which the system can attempt to determine the word that was being input. Although potentially useful, such a system is extremely limited in its usefulness, as the system requires that a user only speak a phonetic component of the word. Many individuals tend to consider such an action unnatural and cumbersome.  
         [0006]     It would therefore be desirable to provide a system and method that enables a user to create materials such as messages, notes, and other text items in a simpler and more efficient manner on devices such as mobile electronic devices.  
       SUMMARY OF THE INVENTION  
       [0007]     The present invention provides a system and method for combining the functionality of text input programs with speech input and recognition systems. According to the present invention, a user can both manually enter text and speak desired words or phrases. The system of the present invention receives and analyzes the provided information, and then provides one or more proposal for the completion of words or phrases. This process can then be repeated until an adequate match is found.  
         [0008]     With the present invention, users are capable of creating documents in an easier and more efficient manner than in conventional systems. In particular, with the present invention, users do not have to type as many character words as is currently necessary. This is particularly beneficial in mobile devices such as mobile telephones, where the number and size of input keys and buttons is often limited.  
         [0009]     These and other objects, advantages and features of the invention, together with the organization and manner of operation thereof, will become apparent from the following detailed description when taken in conjunction with the accompanying drawings, wherein like elements have like numerals throughout the several drawings described below. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0010]      FIG. 1  is a perspective view of a mobile telephone that can be used in the implementation of the present invention;  
         [0011]      FIG. 2  is a schematic representation of the telephone circuitry of the mobile telephone of  FIG. 1 ;  
         [0012]      FIG. 3  is a diagram showing various hardware and/or software components that are used in conjunction with various embodiments of the present invention; and  
         [0013]      FIG. 4  is a flow chart showing the implementation of various embodiments of the present invention. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0014]      FIGS. 1 and 2  show one representative mobile telephone  12  within which the present invention may be implemented. It should be understood, however, that the present invention is not intended to be limited to one particular type of mobile telephone  12  or other electronic device. Instead, the present invention can be incorporated into devices such as laptop and desktop computers, personal digital assistants, integrated messaging devices, as well as other devices.  
         [0015]     The mobile telephone  12  of  FIGS. 1 and 2  includes a housing  30 , a display  32  in the form of a liquid crystal display, a keypad  34 , a microphone  36 , an ear-piece  38 , a battery  40 , an infrared port  42 , an antenna  44 , a smart card  46  in the form of a UICC according to one embodiment of the invention, a card reader  48 , radio interface circuitry  52 , codec circuitry  54 , a controller  56  and a memory  58 . The mobile telephone, in one embodiment of the invention, includes a voice key  60  for enabling voice input capabilities. The voice key  60  or a similar key can also be located on a related accessory, such as a headset  62  for the mobile telephone  12 . Individual circuits and elements are all of a type well known in the art, for example in the Nokia range of mobile telephones.  
         [0016]     The voice key  60  can be used in a variety of ways. In one embodiment of the invention, the voice key  60  is pressed or otherwise actuated to initiate speech input. The same key is pressed or otherwise actuated a second time to end speech input. In another embodiment, the voice key  60  is pressed and held throughout the duration of the speech input. In yet another embodiment, if the user keeps the voice key  60  pressed while also inputting text from a keypad simultaneously, the voice system can produce the sound for the actual word or phrase when the voice key is released or pressed a second time. An electronic dictionary may be used to obtain the correct pronunciation. The phonetic text may also be produced.  
         [0017]     The present invention provides an improved combined predictive text and speech recognition system that can be used on a wide variety of electronic devices. According to the present invention, a user can speak a word into the device, as well as add a portion of a word or a series of words. A predictive engine then provides a proposal for the word or a phrase that is to be input. In the event that the proposed word or phrase does not match what was intended by the user, the user can input more information, and the process can be repeated until the correct word or phrase is proposed.  
         [0018]      FIG. 3  is a representation of the software and/or hardware that is involved in the implementation of various embodiments of the present invention. These components include an editor  100 , a predictive text and speech engine  110 , and speech recognition hardware and/or software  120 . The editor  100  is a software tool for text input. The editor  100  also accepts spoken input after it has been interpreted by the speech recognition hardware and/or software  120 . The system can also include a dictionary or database  130  of words or phrases that can be used by the predictive text and speech engine  110 . It should be noted that many or all of these components can be combined into single entities as necessary or desired. All of these items, when in software form, can be stored in the memory  58  or inside other components known in the art.  
         [0019]     The predictive text and speech engine  110  can comprise hardware, software or a combination of both hardware and software. The predictive text and speech engine  110  takes the text and speech input and uses this information, as well as potentially other information, to produce a list of alternative interpretations of the input information. The other information that can be used by the predictive text and speech engine  110  can include, but is not limited to, a reference database of words or phrases that can be used to help in the production of a list of alternative interpretations. When a number of different proposed interpretations are provided, the user may toggle among the different interpretations to find the correct interpretation.  
         [0020]     The predictive text and speech engine  110  may match its results to a dictionary of words, or it may use grammatical rules in its inferences. Additionally, the predictive text and speech engine  110  may alternatively base its output purely upon the text input and the spoken input. For example, the predictive text and speech engine  110  can automatically limit its candidates to only those words or phrases that contain the same characters and in the same order as those characters from the text input. The predictive text and speech engine  110  can use this subset of information to more accurately decipher the word or phrase which was apparently being spoken by the user.  
         [0021]     In the case of text input, many devices, and mobile telephones in particular, require that individual keys each denote multiple letters. For example, the “5” key on a telephone often is used to input the letters “j”, “k” and “l”. In such a situation, the predictive text and speech engine  110 , in one embodiment of the invention, infers the resulting text based upon the text input, the speech input, and other available sources as discussed herein.  
         [0022]      FIG. 4  is a flow chart showing the implementation of various embodiments of the present invention. At step  400 , a user activates the voice key  60 , enabling the system to receive voice input. At step  410 , the user speaks one or more words into the device. At step  415 , the voice key  60  is deactivated, indicating that the user has entered all of the speech input that is desired. The speech input is processed by the speech recognition hardware and/or software  120 , as well as the editor  100 , for subsequent use by the predictive text and speech engine  110 . At the same time as the word(s) are being spoken, or shortly thereafter or before, the user manually inputs text into the device using keys or buttons on the device at step  420 . Alternatively, the user can highlight or otherwise mark text already in the system for use by the predictive text and speech engine  110 . The text information is processed by the editor  100  for subsequent use by the predictive text and speech engine  110 . At step  430 , the predictive text and speech engine  110  uses the processed information from the text and speech input to produce one or more candidate character strings, usually in the form of words or phrases, that match the input information and are determined to be most likely to match the word or phrase intended by the user. The predictive text and speech engine  110  can also use the associated dictionary or database  130  for determining candidate character strings. The accessing of the dictionary or database  130  is represented at step  440 .  
         [0023]     At step  450 , the one or more candidate character strings are exhibited to the user. In one particular embodiment of the invention, the character strings can be ranked and identified in order of their respective probabilities of being correct. In a simple example, the most likely character string can be located at the top of the list. In more complex examples, the system can exhibit the character strings in different colors or fonts. More particularly, the most likely strings could be depicted in bold, italics, in a certain color, etc., while less likely strings could be depicted differently.  
         [0024]     At step  460 , if one of the candidate character strings matches the character string which was intended by the user, then the user selects the correct character string, which is then formally entered into the document by the system. The selecting of a character string can be accomplished using a variety of conventionally-known mechanisms, such as the input keys on the device, a stylus against a touch-sensitive display, or other mechanisms. On the other hand, if none of the candidate character strings matches what was intended by the user, then the user inputs more information at step  470 . The input of additional information can be via manual input or by additional speech. The system then returns to step  430  for additional processing.  
         [0025]     In various embodiments of the invention, the additional input of step  470  can comprise a variety of forms. For example, the user could simply type in additional letters of the word or phrase, or could alternatively shorten the word in certain situations (such as to eliminate trailing characters that the user believes may be accidentally misspelled). In another example, the user may be capable of identifying whether a word is a noun, a verb, an adjective, etc. If the system is capable of processing multiple languages, then the user may also be capable of identifying the intended language of the word.  
         [0026]     The following are a number of different particular use scenarios for the system and process of the present invention. In a first scenario, a cursor is at the beginning of a document or is separated by a space or other separator from the previous and following words. In this situation, the user starts the voice input, says a new word or phrase that is to be input into the document, and then stops the voice input. The predictive text and speech engine  110  processes this information and then exhibits the most probable candidate or candidates.  
         [0027]     In a second scenario, the user marks text that is to be used in conjunction with the speech input. The text can be “marked” in a variety of ways. For example, a user could highlight the particular text, underline the text, surround the text with certain markers that can be manually input, or by designating the text by using a speech code. Other marking methods known in the art may also be used. After the text is marked, the user starts the voice input, says a word or phrase that is to be input into the document, and then stops the voice input. The predictive text and speech engine  110  processes both the marked text and the input speech, determines the most probable candidate words or phrases, and then exhibits the candidate(s).  
         [0028]     In a third use scenario, the cursor is at the beginning, middle or at the end of a word, and the word is not marked in any way. The user then starts the voice input, says a word or phrase that is to be input into the document, and then stops the voice input. In this case, the predictive text and speech engine  110  may choose to use the surrounding text as additional information to complement the words that were spoken. The text produced from the spoken info is added to the information generated via the speech recognition hardware and/or software  120 . The predictive text and speech engine  110  processes the information, determines the most probable candidate words or phrases, and then exhibits the candidate(s).  
         [0029]     In a fourth use scenario, the cursor is located within a word being typed in, and the word is marked in some form. After the text is marked, the user starts the voice input, says a word or phrase that is to be input into the document, and then stops the voice input. The speech input is then combined with the previous text input to produce the complete word (or the most likely candidates for the complete word). Alternatively, the word text information alone can be used by the predictive text and speech engine  110  to produce the most probable result.  
         [0030]     In a fifth use scenario, the user starts the voice input, says an individual letter of the alphabet, a number, or the name of a punctuation mark or symbol, and then stops the voice input. After being processed by the speech recognition hardware and/or software  120 , the predictive text and speech engine  110  is capable of recognizing the spoken input. In this case, for example, the predictive text and speech engine  110  recognizes the individual alphabet/number/punctuation/symbol that was spoken. The predictive text and speech engine  110  does not try to combine this information with the whole word being typed, instead simply adding the letter/number/punctuation/symbol to the space marked by the cursor. If there is more than one candidate letter/number/punctuation/symbol, the system displays the different candidates for selection by the user.  
         [0031]     In one particular embodiment of the invention, a single key, such as the “star” or “*” key on a telephone, can be used to implement various features of the invention. For example, this key can be used for toggling the various alternatives produced by the predictive text and speech engine  110  (both based upon pure speech recognition and a combination of speech recognition and text input.) The “*” key or some other key also may be used for toggling to a marked portion of text or to individual letter(s) in a word. Still further, such a key may be used for toggling between a letter/number/punctuation/symbol and the spelled-out interpretation of the same item.  
         [0032]     In another embodiment of the present invention, when the voice key  60  is activated, an indication can be shown on the display  32 . For example, such an indication may comprise a particular icon or picture that appears on the display  32 . Alternatively, the selected text may be highlighted with a different color, background color, font or another mechanism for identifying the text for which the present invention is being implemented apart from the rest of the text in the document. Similar “highlighting” features can include underlining the text or placing the text in bold or italics. Still further, if no text is selected by the user, the character string that is being processed may be highlighted using one of these mechanisms when the voice key is activated. Such information would indicate (1) that voice input is being accepted and (2) the precise text/character string for which the voice input would be accepted as additional information.  
         [0033]     In yet another embodiment of the invention, a user can provide additional voice input regarding the “best guess” of the system. For example, a user can say “yes” to indicate that the best guess was correct, “next” in order to ask the system to provide the next most likely candidate as an option, or the user may decide to stop toggling through candidate words or strings by saying “stop.” 
         [0034]     In still another embodiment of the present invention, the user may speak the name of a character or symbol which is to be inserted to the text as a single character/symbol. For example, if the user wants the character “&gt;” to be inserted, he or she could say “greater than.” The user could also say “exclamation mark” if a “!” is to be inserted, or “dollar sign” for “$.” The same process can be used for a wide variety of other symbols as well. Similarly, the user can say a number and have the numerical value entered into the document (i.e., a user could say “one hundred twenty-three” and have “123” entered.)  
         [0035]     The present invention is described in the general context of method steps, which may be implemented in one embodiment by a program product including computer-executable instructions, such as program code, executed by computers in networked environments.  
         [0036]     Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of program code for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps.  
         [0037]     Software and web implementations of the present invention could be accomplished with standard programming techniques with rule-based logic and other logic to accomplish the various database searching steps, correlation steps, comparison steps and decision steps. It should also be noted that the words “component” and “module” as used herein, and in the claims, is intended to encompass implementations using one or more lines of software code, and/or hardware implementations, and/or equipment for receiving manual inputs.  
         [0038]     The foregoing description of embodiments of the present invention have been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the present invention to the precise form disclosed, and modifications and variations are possible in light of the above teachings or may be acquired from practice of the present invention. The embodiments were chosen and described in order to explain the principles of the present invention and its practical application to enable one skilled in the art to utilize the present invention in various embodiments and with various modifications as are suited to the particular use contemplated.