[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2016095645A1 - 笔画输入方法、装置和系统 - Google Patents

笔画输入方法、装置和系统 Download PDF

Info

Publication number
WO2016095645A1
WO2016095645A1 PCT/CN2015/094840 CN2015094840W WO2016095645A1 WO 2016095645 A1 WO2016095645 A1 WO 2016095645A1 CN 2015094840 W CN2015094840 W CN 2015094840W WO 2016095645 A1 WO2016095645 A1 WO 2016095645A1
Authority
WO
WIPO (PCT)
Prior art keywords
stroke
word
index
group number
words
Prior art date
Application number
PCT/CN2015/094840
Other languages
English (en)
French (fr)
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 北京奇虎科技有限公司
Priority to US15/537,624 priority Critical patent/US20180217674A1/en
Publication of WO2016095645A1 publication Critical patent/WO2016095645A1/zh

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/018Input/output arrangements for oriental characters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • 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/04883Interaction 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 for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/333Preprocessing; Feature extraction
    • G06V30/347Sampling; Contour coding; Stroke extraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/32Digital ink
    • G06V30/36Matching; Classification

Definitions

  • the invention relates to the technical field of input methods, in particular to a stroke input method, a stroke input device and a stroke input system.
  • the default input language is a character in English.
  • English input can be entered by directly selecting a letter.
  • the input of other languages is more troublesome.
  • the Chinese language has tens of thousands of characters. It is completely impossible to input directly through the keys. It is necessary to encode Chinese characters.
  • the Chinese characters are encoded (corresponding to Stroke input method, etc., in order to enter.
  • the stroke structure is encoded to input text.
  • the present invention has been made in order to provide a stroke input device and a corresponding stroke input method that overcome the above problems or at least partially solve the above problems.
  • a stroke input method comprising:
  • the stroke path is compared with each word stored under the index group number in the thesaurus. And matching the words on the matching as the upper screen candidate; wherein each word in the thesaurus calculates an index group number to which the word belongs according to the index code corresponding to the stroke of each word, under the corresponding index group number Store.
  • the invention also discloses a stroke input system, which may specifically include: a cloud server and a client;
  • the client includes:
  • a stroke sequence receiving module configured to receive a stroke sequence input by a user in a stroke input mode
  • a stroke sequence uploading module configured to upload the stroke sequence to a cloud server
  • a candidate generation module adapted to use the received word as a candidate for the upper screen
  • the cloud server includes:
  • the lexicon grouping module is adapted to calculate, according to the index code corresponding to the stroke of each word, the index group number to which the word belongs, and store the index group number under the corresponding index group number;
  • a stroke sequence segmentation module which is adapted to perform various segmentation operations on the stroke sequence to obtain various stroke paths
  • a stroke index grouping calculation module configured to calculate a corresponding index group number of the stroke path according to an index code corresponding to each stroke and a corresponding word order for each stroke path;
  • the stroke path matching module is adapted to match the stroke path with each word stored under the index group number in the thesaurus according to the index group number, and return the matched words to the client.
  • a computer program comprising computer readable code causing the terminal device to perform any of the stroke input methods described above when the computer readable code is run on a terminal device.
  • a computer readable medium storing a computer program for performing any of the stroke input methods described above.
  • each word in the thesaurus is calculated according to the index code corresponding to the stroke of each word, and the index group number to which the word belongs is calculated, and stored under the corresponding index group number; then the stroke sequence input by the user is automatically Into various sorting operations, such as "one by one, one", can be divided into “one” one by one", “one” one by one", “one by one one” one stroke path, for each a stroke path, the index number corresponding to the stroke path is calculated according to the index code corresponding to each stroke and the corresponding word order, so that the stroke path can be matched with each word of the corresponding index group number in the thesaurus, that is, The upper screen candidate can be obtained.
  • the user needs to input the separator or click the segmentation button in the process of inputting the stroke sequence, and the problem is achieved that the accuracy of the user's selection of the word is not greatly reduced.
  • the corresponding words are returned. The user can select, reduce the number of keystrokes of the user, and greatly improve the user's input speed.
  • FIG. 1 is a flow chart showing a stroke input method according to an embodiment of the present invention
  • FIG. 2 is a flow chart showing a stroke input method according to an embodiment of the present invention.
  • FIG. 3 is a flow chart showing a stroke input method according to an embodiment of the present invention.
  • FIG. 4 is a flow chart showing a stroke input method according to an embodiment of the present invention.
  • FIG. 5 is a schematic structural diagram of a stroke input device according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a stroke input device according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a stroke input device according to an embodiment of the present invention.
  • FIG. 8 is a block diagram showing the structure of a stroke input system according to an embodiment of the present invention.
  • Figure 9 shows a block diagram of a terminal device for performing the method according to the invention.
  • Figure 10 shows a storage unit for holding or carrying program code implementing the method according to the invention.
  • One of the core ideas of the present invention is to calculate the index group number to which the word belongs according to the index code corresponding to the stroke of each word in the vocabulary, and store it under the corresponding index group number;
  • the stroke sequence automatically performs various segmentation operations, such as “one by one,” which can be divided into three stroke paths: “one”, one for one, one for one, and one for one.
  • the corresponding index group number of the stroke path is calculated, so that the stroke path and the corresponding index group number in the thesaurus can be used. Matches are made to get the upper screen candidate.
  • the user needs to input the separator or click the segmentation button in the process of inputting the stroke sequence, and the problem is achieved that the accuracy of the user's selection of the word is not greatly reduced.
  • the corresponding words are returned for the user to select, which can greatly improve the user's input speed.
  • FIG. 1 there is shown a flow diagram of a stroke input method of the present invention.
  • the vocabulary can be adjusted in advance, that is, by:
  • Step 100 Calculate the index group number to which the word belongs according to the index corresponding to the stroke of each word in each word in the vocabulary, and store it under the corresponding index group number. After storing the word process in the above manner.
  • each stroke can be index coded, such as horizontal and vertical folds, such as "one ⁇ B", each stroke corresponding to the index code 12345.
  • the index number corresponding to the strokes of each word can be encoded, the index group number of the index is calculated according to the predetermined grouping function, and then the 10000 words are stored in groups. For example, if it is divided into 1000 groups, then each group may be about 10 words on average. Then, the user can enter the quick stroke input process based on the above vocabulary, including:
  • Step 110 Receive a sequence of strokes input by a user in a stroke input mode
  • the user needs to enter the stroke input mode and input the text with the stroke keyboard.
  • a nine-key stroke input method such as a nine-key keyboard as follows: 1 key corresponds to: one, The 2 keys correspond to: ⁇ , 3 keys correspond to: ⁇ , 4 keys correspond: ⁇ , 5 keys correspond: B, 6 keys correspond to: wildcard, 7, 8, 9 keys correspond to other.
  • Step 120 performing various segmentation operations on the sequence of strokes to obtain various stroke paths
  • Step 130 Calculate, for each stroke path, a reference group number corresponding to the stroke path according to an index code corresponding to each stroke and a corresponding word order;
  • the corresponding index code of the above-mentioned “one B” is "12345"
  • the corresponding stroke code of each stroke is not 1211, wherein "one ' Corresponding to the first word, then the first one corresponds to the first word, and the first one corresponds to the second word, then the next "211" corresponds to the second word, then 1211 can be split into “1” "and” 211. Then, the grouping index number of the stroke path "one" one by one can be calculated according to "1" and "211".
  • Step 140 Match the stroke path with each word stored under the index group number in the lexicon according to the index group number, and use the matched word as a screen candidate; wherein the lexicon Each word in the word is calculated according to the index code corresponding to the stroke of each word, and is stored under the corresponding index group number.
  • the index group number can be used to search the lexicon for each word stored under the corresponding index group number, and the stroke path is matched with each word. For example, the above “one” one by one, for each word under the index group number, "one” matches the first word of the word, and " ⁇ " matches the second word of the word. . If both match, then the match can be considered as the upper screen candidate.
  • the stroke sequence can also match the single word, and the matching single word is also used as the upper screen candidate.
  • the respective display positions are adjusted.
  • the words in the lexicon are stored in groups.
  • the index group number to which the word belongs is calculated by the index code corresponding to the stroke of each word, so that the words are grouped in the index. Store under the number.
  • various segmentation operations can be automatically performed to obtain various stroke paths, and then each of the stroke paths can be calculated according to the index code corresponding to each stroke and the corresponding word order.
  • the stroke path corresponds to the index group number, so that the corresponding word is matched in the corresponding group.
  • the corresponding word can be directly returned according to the stroke sequence input by the user without greatly reducing the accuracy of the user's selection of the word.
  • User selection can greatly increase the user's input speed.
  • FIG. 2 it is a schematic flowchart of a stroke input method of the present invention, which may specifically include:
  • Step 210 Extract, for each word in the thesaurus, the first two strokes of each of the first two words to obtain a stroke path;
  • the storage structure of the words of the input method vocabulary is adjusted.
  • adjusting first, extract the first two words of each word, the first two strokes of each word, and get the stroke sequence of four strokes.
  • Step 212 Calculate, according to an index code corresponding to each stroke and a corresponding word order, calculate a stroke group corresponding index group number, thereby determining an index group number to which the word belongs;
  • each stroke corresponds to the index code 12345. Then, for the stroke sequence of the four strokes, the corresponding stroke code can be obtained, so that the index group number corresponding to the stroke path can be calculated according to the stroke code, thereby determining the index group number to which the word belongs.
  • the strokes of the stroke input mode in the embodiment of the present invention may also include other forms.
  • Preferred are horizontal, vertical, ⁇ , ⁇ , and folded. As mentioned above, " ⁇ ".
  • the method further includes:
  • Step 208 selecting successive N non-zero integers to correspond one-to-one with each stroke of the stroke input mode as the stroke coding of each stroke.
  • the index code corresponding to each stroke can be 1, 2, 3, 4, 5 in order, or 5 , 4, 3, 2, 1.
  • the present invention does not limit the one-to-one correspondence between each stroke and consecutive N non-zero integers.
  • the index code is a number corresponding to a button where the stroke is located.
  • the nine-key keyboard is as follows: 1 key corresponds to: one, two keys correspond to: ⁇ , 3 keys correspond to: ⁇ , 4 keys correspond to: ⁇ , 5 keys correspond: B, 6 keys correspond to: wildcard, 7, 8, 9 corresponding other. Then the stroke code of "one” corresponds to 1, the stroke code of " ⁇ ” corresponds to 2, the stroke code of " ⁇ ” corresponds to 3, the stroke code of " ⁇ ” corresponds to 4, and the stroke code of "B" corresponds to 5.
  • each word in the thesaurus is stored according to the corresponding index group number.
  • the words in the thesaurus can then be grouped by index group number.
  • Step 216 in the stroke input mode, receiving a sequence of strokes input by the user
  • the user triggers the startup input method and switches to the stroke input mode, that is, switches to the stroke keyboard.
  • the aforementioned nine-key keyboard is as follows: 1 key corresponding: 1st, 2 keys corresponding: ⁇ 3 keys correspond to: ⁇ , 4 keys correspond: ⁇ , 5 keys correspond: B, 6 keys correspond to: wildcard, 7, 8, 9 keys correspond to other.
  • Step 218 performing the two-segment segmentation operation on the stroke sequence to obtain two corresponding Stroke path of words
  • the sequence of strokes input by the user is divided into two kinds of stroke paths, which are not divided into three segments or more. For example, for the above-mentioned "one by one,” only the various possible two-stage segmentation is performed, and only one "one” one by one, one "one one” one, one "one one one one one” three is obtained.
  • a two-stage stroke path Each of the stroke sequences in each stroke path corresponds to a word in the word, such as "one" one by one, "one” is used in the subsequent step to match the first word of a word stored in the corresponding index group number.
  • the sequence of strokes, " ⁇ " is used in subsequent steps to match the stroke sequence of the second word in a word.
  • Step 220 Calculate, for each stroke path, a reference group number corresponding to the stroke path according to an index code corresponding to each stroke and a corresponding word order;
  • Step 222 Match the stroke path with each word stored under the index group number in the thesaurus according to the index group number, and use the matched word as an upper screen candidate.
  • the "one-one-one-one-one-one” can be matched with each word stored under the index group number in the thesaurus. Among them, the first segment "one” of "one” is matched with the first word of the word, and the subsequent segment "one by one” is matched with the second word of the word. If both match, then the match can be considered as the upper screen candidate.
  • the search and matching process for other stroke paths is similar to the above process, so that each word corresponding to the sequence of strokes input by the user can be obtained.
  • the method further includes:
  • Step 224 For the word on the match, adjust the display weight when the word is used as the upper screen candidate according to the word frequency of the word.
  • multiple words are matched in each index group number, and the display position of the screen is limited, so that the words as the candidate for the upper screen need to be more accurately conformed to the user's habits, so that Users can choose vocabulary more quickly. Therefore, the word weight of each word can be adjusted in advance, and the display weight of the word as the candidate for the upper screen can be adjusted, and the order of the word frequency is displayed in front, and the order with low frequency is displayed later.
  • the method further includes:
  • Step 226 Record the personalized words of the user and adjust the display weights when the words are used as the upper screen candidates according to the records.
  • the embodiment of the present invention records the number of associations between the stroke sequence input by the user and the word as the candidate of the upper screen. For example, the number of times the user selects “open” after inputting “one by one” is greater than the threshold. Then, when the user inputs "one by one", the display weight of "open” is increased, and the order is displayed in front of the order.
  • the stroke sequence can also match the single word, and the matching single word is also used as the upper screen candidate.
  • the respective display positions are adjusted.
  • the number of words required to be entered each time is greatly reduced, which can greatly improve the speed of the program. Assume that 10,000 common words are stored in the thesaurus. If the above-mentioned grouping is not used in accordance with the traditional matching method, the stroke sequence that the user inputs each time will match 10,000 times.
  • FIG. 3 it is a schematic flowchart of a preferred method for inputting strokes according to the present invention, which may specifically include:
  • Step 310 In the stroke input device adopting “horizontal and vertical folding”, extract the first two strokes of each of the first two words for each word in the thesaurus, and obtain a stroke path;
  • the nine-key keyboard is similar to the following: 1 key corresponding: one, two keys correspond: ⁇ , 3 keys correspond: ⁇ , 4 keys correspond: ⁇ , 5 keys Correspondence: B, 6 keys correspond to: wildcard, 7, 8, 9 keys correspond to other.
  • the word “chat” the first two words corresponding to the first two words are “one ⁇ ” and “one by one”
  • the stroke path is "one ⁇ " one by one.
  • Step 312 Obtain an index code of each stroke, and obtain an index coefficient corresponding to each stroke according to a word order corresponding to each stroke;
  • the stroke code of "one” corresponds to 1
  • the stroke code of " ⁇ " corresponds to 2
  • the stroke code of " ⁇ ” corresponds to 3
  • the stroke code of " ⁇ ” corresponds to 4
  • the stroke code of "B” corresponds to 5.
  • x 1 and x 2 correspond to the stroke coding of the first two strokes of the first word
  • the corresponding strokes are coded as “12" and “11", and the index corresponding to the stroke code in "12"
  • the coefficients are 5 0 and 5 1 respectively, and the index coefficients corresponding to the stroke codes in "11” are 5 2 and 5 3 , respectively .
  • Step 314 Calculate an index group number corresponding to the stroke path according to index coding and index coefficients of each stroke;
  • step 316 the words in the thesaurus are stored according to the corresponding index group number.
  • each word can be stored in groups according to its index group number.
  • the following is an example of a group storage table 1 to introduce the stroke input process.
  • Step 318 in the stroke input mode, receiving a stroke sequence input by the user
  • the user switches to the following nine-key keyboard in the input method: 1 key corresponds to: 1st, 2 keys correspond: ⁇ , 3 keys correspond: ⁇ , 4 keys correspond: ⁇ , 5 keys correspond: B, 6 keys correspond: wildcard, 7
  • the stroke input can be performed.
  • the input rule of the present invention can receive a sequence of strokes input thereto.
  • the user has entered four strokes such as "one by one.”
  • Step 320 performing a two-segment segmentation operation on the stroke sequence to obtain a stroke path corresponding to two words
  • a plurality of two-stage splitting operations are performed on the four strokes of “one by one, one by one”, and “one” one by one, one “one one one one”, “one one one one” is obtained.
  • Three stroke paths. The two stroke sequences of each stroke path correspond to the first word and the second word, respectively.
  • Step 322 Obtain an index code of each stroke for each stroke path, and obtain an index coefficient corresponding to each stroke according to a word order corresponding to each stroke;
  • Step 324 Calculate an index group number corresponding to the stroke path according to an index code and an index coefficient of each stroke.
  • Step 326 Match the stroke path with each word stored under the index group number in the thesaurus according to the index group number, and use the matched word as the upper screen candidate.
  • the words “all the same”, “one lifetime” and “eleven o'” can only match the first two words, and cannot completely match all the words, so it may not be used as the upper screen.
  • the method further includes:
  • Step 328 for the word on the match, adjust the display weight when the word is used as the upper screen candidate according to the word frequency of the word.
  • multiple words are matched in each index group number, and the display position of the screen is limited, so that the words as the candidate for the upper screen need to be more accurately conformed to the user's habits, so that Users can choose vocabulary more quickly. Therefore, the word weight of each word can be adjusted in advance, and the display weight of the word as the candidate for the upper screen can be adjusted, and the order of the word frequency is displayed in front, and the order with low frequency is displayed later.
  • the method further includes:
  • Step 330 Record the personalized words of the user and adjust the display weights when the words are used as the upper screen candidates according to the records.
  • the embodiment of the present invention records the number of associations between the stroke sequence input by the user and the word as the candidate of the upper screen. For example, the number of times the user selects “open” after inputting “one by one” is greater than the threshold. Then, when the user inputs "one by one", the display weight of "open” is increased, and the order is displayed in front of the order.
  • the stroke sequence can also match the single word, and the matching single word is also used as the upper screen candidate.
  • the respective display positions are adjusted.
  • the group stored term database may be stored locally on the client or may be stored in the cloud server.
  • the input method can be in this Performing the foregoing segmentation operation and calculation process on the stroke sequence to obtain a corresponding index group number, and then acquiring, from the vocabulary of the cloud server, a word that can be matched with the corresponding stroke path stored in the corresponding index group number, and the word is As the upper screen candidate of the client input method; the input method can also upload the stroke sequence to the cloud server, perform the above-mentioned segmentation operation and calculation process on the stroke sequence in the cloud server, obtain the corresponding index group number, and then the cloud server The word stored in the corresponding index group number that matches the corresponding stroke path is retrieved from the vocabulary and returned to the client, and the client uses the word as the upper screen candidate of the client input method.
  • the most important input method is the input efficiency, which is roughly divided into two points: one is the input speed, and the other is the input accuracy.
  • a large number of analysis of user input found that a small number of high-frequency words in the device vocabulary can cover most of the user's stroke input. Therefore, the candidate words can be given reasonably by freely segmentation, which will not greatly reduce the accuracy of the user's choice of words. Rate, but can greatly improve the user's input speed, in which the low frequency words frequently used by users can be solved by recording the user words.
  • the above process without the user inputting a separator or clicking a split button in the input process of the stroke sequence, can directly return the corresponding word according to the stroke sequence input by the user without greatly reducing the accuracy of the user's selection of the word. For the user to choose, it can greatly improve the user's input speed. Further, by analyzing the user data, the probability that the stroke user inputs 2-4 words is 34.80%, 15.45%, and 8.96%, respectively, assuming that the stroke user inputs 4 strokes per word, because one cut between each two words is saved. The score can reduce the user's input efficiency by 13.33% of the key input for the user.
  • FIG. 4 it is a schematic flowchart of a preferred stroke input method of the present invention, which may specifically include:
  • Step 410 The cloud server calculates, according to the index code corresponding to the stroke of each word, the index group number to which the word belongs in the cloud server, and stores the index group number to which the word belongs.
  • the step is performed on the cloud server, and the created the thesaurus is also stored in the cloud server.
  • Step 420 Receive a stroke sequence input by a user in a stroke input mode of the client.
  • Step 430 the client uploads the stroke sequence to the cloud server
  • Step 440 The cloud server performs various segmentation operations on the sequence of strokes to obtain various stroke paths.
  • Step 450 The cloud server calculates, for each stroke path, the index group number corresponding to the stroke path according to the index code corresponding to each stroke and the corresponding word order;
  • Step 460 the cloud server will match the stroke path with the words stored under the index group number in the thesaurus according to the index group number, and return the matched words to the client;
  • step 470 the client uses the received word as a candidate for the upper screen.
  • the client input method may also locally analyze each index group number corresponding to the stroke sequence, and then upload the index group number and the corresponding stroke path to the cloud server, and the cloud server selects the word according to the index group number. Match the words in the library and then return the words to the client input method.
  • the cloud server is used to store the words in the vocabulary in the cloud server, and when the words are grouped, the index group number to which the word belongs is calculated by the index code corresponding to the stroke of each word, so as to The predicate is stored under the index group number. Then, for the sequence of strokes input by the user input method in the client input method, the cloud server can automatically perform various segmentation operations to obtain various stroke paths, and then according to each stroke path, according to each stroke corresponding to each stroke The index code and the corresponding word order are used to calculate the index group number corresponding to the stroke path, so that the corresponding word is matched in the corresponding group.
  • the corresponding word can be directly returned according to the stroke sequence input by the user without greatly reducing the accuracy of the user's selection of the word.
  • User selection can greatly increase the user's input speed.
  • FIG. 5 it is a schematic structural diagram of a preferred stroke input device of the present invention, which may specifically include:
  • the stroke sequence receiving module 510 is adapted to receive a stroke sequence input by the user in the stroke input mode
  • the stroke sequence segmentation module 520 is adapted to perform various segmentation operations on the stroke sequence to obtain various stroke paths;
  • the stroke index group calculation module 530 is adapted to calculate, for each stroke path, the index group corresponding to the stroke path according to the index code corresponding to each stroke and the corresponding word order;
  • the stroke path matching module 540 is adapted to match the stroke path with each word stored under the index group number in the thesaurus according to the index group number, and use the matched word as a screen candidate;
  • Each word in the vocabulary calculates an index group number to which the word belongs according to an index code corresponding to the stroke of each word, and stores it under the corresponding index group number.
  • FIG. 6 it is a schematic structural diagram of a preferred stroke input device of the present invention, which may specifically include:
  • the lexicon grouping module 610 is adapted to calculate, according to the index code corresponding to the stroke of each word, the index group number to which the word belongs, and store the index group number under the corresponding index group number;
  • the stroke extraction module 612 is adapted to extract, for each word in the lexicon, the first two strokes of each of the first two words to obtain a stroke path;
  • the word index group determining module 614 is adapted to calculate, according to the index code corresponding to each stroke and the corresponding word order, the stroke group corresponding index group number, thereby determining an index group number to which the word belongs;
  • the packet storage module 616 is adapted to store the words in the thesaurus according to the corresponding index group number.
  • the stroke input module 620 includes:
  • the stroke sequence receiving module 622 is adapted to receive a stroke sequence input by the user in the stroke input mode
  • the stroke sequence segmentation module 624 includes:
  • the two-stage segmentation module 6241 is adapted to perform the segmentation operation of the two stroke forms in the stroke sequence to obtain a stroke path corresponding to two words;
  • the stroke index group calculation module 626 is adapted to calculate, for each stroke path, the index group number corresponding to the stroke path according to the index code corresponding to each stroke and the corresponding word order;
  • the stroke path matching module 628 is adapted to match the stroke path with each word stored under the index group number in the lexicon according to the index group number, and use the matched word as an upper screen candidate.
  • the stroke sequence segmentation module comprises:
  • the two-stage segmentation module is adapted to perform the segmentation operation of the two stroke forms in the stroke sequence to obtain a stroke path corresponding to two words.
  • the stroke index group calculation module or the word index group determination module comprises:
  • the parameter extraction module is adapted to obtain an index code of each stroke, and obtain an index coefficient corresponding to each stroke according to a word order corresponding to each stroke;
  • the group number calculation module is adapted to calculate an index group number corresponding to the stroke path according to the index coding and the index coefficient of each stroke.
  • the strokes of the stroke input mode include: horizontal, vertical, ⁇ , ⁇ , and fold.
  • the method further includes: a stroke coding determining module, configured to select one-to-one correspondence of consecutive N non-zero integers and each stroke of the stroke input mode, as the stroke coding of each stroke.
  • a stroke coding determining module configured to select one-to-one correspondence of consecutive N non-zero integers and each stroke of the stroke input mode, as the stroke coding of each stroke.
  • the index code is a number corresponding to a button where the stroke is located.
  • the index coefficient is determined by the number of strokes N of the stroke input mode and the index level set.
  • the method further includes: a word weight adjustment module adapted to adjust the display weight of the word as the upper screen candidate according to the word frequency of the word for the matching word.
  • a word weight adjustment module adapted to adjust the display weight of the word as the upper screen candidate according to the word frequency of the word for the matching word.
  • the method further includes: a personalized word weight adjustment module adapted to record the personalized word of the user and adjust the display weight of the word as the upper screen candidate according to the record.
  • a personalized word weight adjustment module adapted to record the personalized word of the user and adjust the display weight of the word as the upper screen candidate according to the record.
  • FIG. 7 is a schematic structural diagram of a preferred stroke input device of the present invention, which may specifically include:
  • the thesaurus grouping module 710 is adapted to calculate, in the stroke input device adopting “horizontal and vertical folding”, each word in the thesaurus according to an index code corresponding to the stroke of each word, and calculate an index group number to which the word belongs.
  • the storage is performed under the corresponding index group number; specifically:
  • the stroke extraction module 712 is adapted to extract, for each word in the thesaurus, the first two strokes of each of the first two words to obtain a stroke path;
  • the word index group determining module 714 includes:
  • the first parameter extraction module 7141 is adapted to obtain an index code of each stroke, and obtain an index coefficient corresponding to each stroke according to a word order corresponding to each stroke;
  • the first group number calculation module 7142 is adapted to calculate an index group number corresponding to the stroke path according to index coding and index coefficients of each stroke;
  • the packet storage module 716 is adapted to store the words in the thesaurus according to the corresponding index group number.
  • the stroke input module 720 includes:
  • the stroke sequence receiving module 722 is adapted to receive a stroke sequence input by the user in the stroke input mode
  • the stroke sequence segmentation module 724 includes:
  • the two-stage segmentation module 7241 is adapted to perform the segmentation operation of the two stroke forms in the stroke sequence to obtain a stroke path corresponding to two words;
  • the stroke index group calculation module 726 includes:
  • the second parameter extraction module 7261 is adapted to obtain an index code of each stroke, and obtain an index coefficient corresponding to each stroke according to a word order corresponding to each stroke;
  • the second group number calculation module 7262 is adapted to calculate an index group number corresponding to the stroke path according to index coding and index coefficients of each stroke;
  • the stroke path matching module 728 is adapted to match the stroke path with each word stored under the index group number in the thesaurus according to the index group number, and use the matched word as an upper screen candidate.
  • FIG. 8 it is a schematic structural diagram of a preferred stroke input system of the present invention, which may specifically include:
  • Cloud server 820 and client 810 are Cloud server 820 and client 810;
  • the client 810 includes:
  • the stroke sequence receiving module 812 is adapted to receive a stroke sequence input by the user in the stroke input mode
  • the stroke sequence uploading module 814 is adapted to upload the stroke sequence to the cloud server
  • the candidate generating module 816 is adapted to use the received word as an upper screen candidate
  • the cloud server 820 includes:
  • the lexicon grouping module 822 is adapted to calculate, according to the index code corresponding to the stroke of each word, the index group number to which the word belongs, and store the index group number under the corresponding index group number;
  • the stroke sequence segmentation module 824 is adapted to perform various segmentation operations on the stroke sequence to obtain various stroke paths;
  • the stroke index group calculation module 826 is adapted to calculate, for each stroke path, the index group number corresponding to the stroke path according to the index code corresponding to each stroke and the corresponding word order;
  • the stroke path matching module 828 is adapted to match the stroke path with the words stored under the index group number in the thesaurus according to the index group number, and return the matched words to the client.
  • the thesaurus grouping module comprises:
  • the stroke extraction module is adapted to extract the first two strokes of each of the first two words for each word in the thesaurus, and obtain a stroke path;
  • a word index group determining module configured to calculate, according to an index code corresponding to each stroke and a corresponding word order, the corresponding index group number of the stroke path, thereby determining an index group number to which the word belongs;
  • the group storage module is adapted to store each word in the thesaurus according to the corresponding index group number.
  • the stroke sequence segmentation module comprises:
  • the two-stage segmentation module is adapted to perform the segmentation operation of the two stroke forms in the stroke sequence. Go to the stroke path corresponding to two words.
  • the stroke index group calculation module or the word index group determination module comprises:
  • the parameter extraction module is adapted to obtain an index code of each stroke, and obtain an index coefficient corresponding to each stroke according to a word order corresponding to each stroke;
  • the group number calculation module is adapted to calculate an index group number corresponding to the stroke path according to the index coding and the index coefficient of each stroke.
  • the strokes of the stroke input mode include: horizontal, vertical, ⁇ , ⁇ , and fold.
  • the method further includes:
  • the stroke coding determining module is adapted to select one-to-one correspondence of consecutive N non-zero integers and each stroke of the stroke input mode as the stroke coding of each stroke.
  • the index code is a number corresponding to a button where the stroke is located.
  • the index coefficient is determined by the number of strokes N of the stroke input mode and the number of index levels.
  • the method further includes:
  • the word weight adjustment module is adapted to adjust the words according to the word frequency of the words according to the word frequency of the words, and adjust the display weights when the words are used as the upper screen candidates.
  • the method further includes:
  • the personalized word weight adjustment module is adapted to record the personalized words of the user and adjust the display weights of the words as the candidate for the upper screen according to the records.
  • modules in the devices of the embodiments can be adaptively changed and placed in one or more devices different from the embodiment.
  • the modules or units or components of the embodiments may be combined into one module or unit or component, and further they may be divided into a plurality of sub-modules or sub-units or sub-components.
  • any combination of the features disclosed in the specification, including the accompanying claims, the abstract and the drawings, and any methods so disclosed, or All processes or units of the device are combined.
  • Each feature disclosed in this specification (including the accompanying claims, the abstract and the drawings) may be replaced by alternative features that provide the same, equivalent or similar purpose.
  • the various component embodiments of the present invention may be implemented in hardware, or in a software module running on one or more processors, or in a combination thereof.
  • a microprocessor or digital signal processor may be used in practice to implement some or all of the functionality of some or all of the components of the stroke input device in accordance with embodiments of the present invention.
  • the invention can also be implemented as a device or device program (e.g., a computer program and a computer program product) for performing some or all of the methods described herein.
  • a program implementing the invention may be stored on a computer readable medium or may be in the form of one or more signals. Such signals may be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
  • Figure 9 illustrates a terminal device that can implement a stroke input in accordance with the present invention.
  • the terminal device conventionally includes a processor 910 and a computer program product or computer readable medium in the form of a memory 920.
  • Memory 920 can be an electronic memory such as a flash memory, EEPROM (Electrically Erasable Programmable Read Only Memory), EPROM, hard disk, or ROM.
  • Memory 920 has a memory space 930 for program code 931 for performing any of the method steps described above.
  • storage space 930 for program code may include various program code 931 for implementing various steps in the above methods, respectively.
  • the program code can be read from or written to one or more computer program products.
  • Such computer program products include program code carriers such as hard disks, compact disks (CDs), memory cards or floppy disks.
  • Such a computer program product is typically a portable or fixed storage unit as described with reference to FIG.
  • the storage unit may have a storage section, a storage space, and the like arranged similarly to the storage 920 in the terminal device of FIG.
  • the program code can be compressed, for example, in an appropriate form.
  • the storage unit includes computer readable code 931', ie, code that can be read by a processor, such as 910, that when executed by the terminal device causes the terminal device to perform each of the methods described above step.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Document Processing Apparatus (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种笔画输入方法,涉及输入法技术领域。所述方法包括:在笔画输入模式中,接收用户输入的笔画序列;将所述笔画序列进行各种的切分操作,得到各种笔画路径;针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项;其中,所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。由此解决了如果需要在一个笔画序列中输入词组,需要用户主动在输入笔画序列的过程中输入分隔符或者点击切分按钮才能实现的问题。

Description

笔画输入方法、装置和系统 技术领域
本发明涉及输入法技术领域,具体涉及一种笔画输入方法、一种笔画输入装置和一种笔画输入系统。
背景技术
在各种计算机装置中,默认的输入语言是英语中的字符。英语输入可以直接选择字母即可进行输入。而其他语言的输入则较为麻烦,比如中文语言有上万个字符,完全无法简单的通过按键直接进行输入,需要对汉字进行编码,比如按照汉字的字形特性(如笔画)对汉字进行编码(对应笔画输入法)等等,才能进行输入。对于其他类似存在笔画结构的文字,也存在按照笔画结构进行编码,以进行文字输入的情况。
但是,以汉字的笔画输入为例,传统的笔画输入之中,如果在输入笔画序列过程中不输入分隔符或者点击切分按钮,则不能直接输入词语,如输入“丿一丨一”,出现的候选为:“壬牜我先靠特选怎丢告......”,出现的候选中只能有单个字出现。如果需要在一个笔画序列中输入词组,需要用户主动在输入笔画序列的过程中输入分隔符或者点击切分按钮,以实现对笔画序列切分为对多个字进行匹配,如用户输入了“一丿’丶丨”,输入串中多输入了一个切分符号“’”,这时结果中才会出现“一个郁闷”等词语候选,这种方式虽然提高了用户想要出词的准确率,但是却也增加了用户的按键输入次数。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种笔画输入装置和相应的笔画输入方法。
依据本发明的一个方面,提供了一种笔画输入方法,包括:
在笔画输入模式中,接收用户输入的笔画序列;
将所述笔画序列进行各种的切分操作,得到各种笔画路径;
针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹 配,并将匹配上的词作为上屏候选项;其中,所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。
本发明还公开了一种笔画输入系统,具体可以包括:云端服务器和客户端;
所述客户端包括:
笔画序列接收模块,适于在笔画输入模式中,接收用户输入的笔画序列;
笔画序列上传模块,适于将所述笔画序列上传至云端服务器;
候选项生成模块,适于将接收到的词作为上屏候选项;
所述云端服务器包括:
词库分组模块,适于将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;
笔画序列切分模块,适于将所述笔画序列进行各种的切分操作,得到各种笔画路径;
笔画索引分组计算模块,适于针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
笔画路径匹配模块,适于根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词返回客户端。
根据本发明的又一个方面,提供了一种计算机程序,其包括计算机可读代码,当所述计算机可读代码在终端设备上运行时,导致所述终端设备执行上述的任一个笔画输入方法。
根据本发明的再一个方面,提供了一种计算机可读介质,其中存储了执行上述的任一个笔画输入方法的计算机程序。
根据本发明的一种笔画输入方法,可以在用户使用笔画输入模式输入笔画序列时,无需用户输入分隔符或者点击切分按钮,即可实现对直接由用户输入的笔画序列输入词组的过程。在上述过程中,将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;然后对用户输入的笔画序列,自动进各种切分操作,比如“一丨一一”,可切分为“一’丨一一”、“一丨’一一”、“一丨一’一”三种笔画路径,对每一种笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而可将所述笔画路径与词库中对应索引分组号的各个词进行匹配,即可获得上屏候选词。由此解决了如果需要在一个笔画序列中输入词组,需要用户主动在输入笔画序列的过程中输入分隔符或者点击切分按钮才能实现的问题,取得了在不大幅降低用户选择词语的准确率的情况下,直接根据用户输入的笔画序列,返回相应的词供 用户选择,可以,降低用户的按键次数,大大提高用户的输入速度的有益效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种笔画输入方法的流程示意图;
图2示出了根据本发明一个实施例的一种笔画输入方法的流程示意图;
图3示出了根据本发明一个实施例的一种笔画输入方法的流程示意图;
图4示出了根据本发明一个实施例的一种笔画输入方法的流程示意图;
图5示出了根据本发明一个实施例的一种笔画输入装置的结构示意图;
图6示出了根据本发明一个实施例的一种笔画输入装置的结构示意图;
图7示出了根据本发明一个实施例的一种笔画输入装置的结构示意图;
图8示出了根据本发明一个实施例的一种笔画输入系统的结构示意图;
图9示出了用于执行根据本发明的方法的终端设备的框图;
图10示出了用于保持或者携带实现根据本发明的方法的程序代码的存储单元。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术 人员。
本发明的核心思想之一是:将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;然后对用户输入的笔画序列,自动进行各种切分操作,比如“一丨一一”,可切分为“一’丨一一”、“一丨’一一”、“一丨一’一”三种笔画路径,对每一种笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而可将所述笔画路径与词库中对应索引分组号的各个词进行匹配,即可获得上屏候选词。由此解决了如果需要在一个笔画序列中输入词组,需要用户主动在输入笔画序列的过程中输入分隔符或者点击切分按钮才能实现的问题,取得了在不大幅降低用户选择词语的准确率的情况下,直接根据用户输入的笔画序列,返回相应的词供用户选择,可以大大提高用户的输入速度的有益效果。
实施例一
参照图1,其示出了本发明一种笔画输入方法的流程示意图。
在本发明实施例中,可预先对词库进行调整,即通过:
步骤100,将所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。在通过上述方式对词进程存储后。
比如词库中有10000个词,对于笔画输入模式的各个笔画,可以对各个笔画进行索引编码,比如横竖撇捺折,如“一丨丿丶乙”,每个笔画分别对应索引编码12345。那么对于词库中的词,可通过其各个字的笔画对应的索引编码,根据预定的分组函数,计算其所在索引分组号,然后对上述10000个词进行分组存储。比如分成1000个组,那么平均每个组可能就10词左右。然后,用户即可基于上述词库,即可进入快捷的笔画输入过程,具体包括:
步骤110,在笔画输入模式中,接收用户输入的笔画序列;
在本发明实施例中,用户需要进入笔画输入模式,以笔画键盘进行文字输入。比如用户采用九键笔画输入法,其比如九键键盘如下:1键对应:一, 2键对应:丨,3键对应:丿,4键对应:丶,5键对应:乙,6键对应:通配符,7、8、9键对应其他。
那么用户可以通过点击按键,输入笔画序列,比如“一丨一一”。
步骤120,将所述笔画序列进行各种的切分操作,得到各种笔画路径;
在接收到用户输入的笔画序列“一丨一一”之后,可以对该笔画序列进行各种可能的切分操作,得到各种笔画路径,每个笔画路径的各段笔画子序列对应匹配一个字。以切分为两个字的笔画路径为例,前述“一丨一一”可以切分为“一’丨一一”、“一丨’一一”、“一丨一’一”、“一’丨’一一”等几种情况。其中“一’丨一一”中,“一”匹配词中第一个字的笔画序列,“丨一一”匹配词中第二个字的笔画序列。其他情况可以上述例子类推。
步骤130,针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
比如前述的“一丨丿丶乙”各自对应的索引编码为“12345”,那么对于前述例子中的笔画路径“一’丨一一”,每个笔画其对应的笔画编码未1211,其中“一’对应第一个字,那么第一个1对应第一个字,“丨一一”对应第二个字,那么后面的“211”对应第二个字,即可将1211拆分为“1”和“211”。那么即可根据“1”和“211”计算所述笔画路径“一’丨一一”所在的分组索引号。
步骤140,根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项;其中,所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。
计算得到一个笔画路径的索引分组号之后,即可通过索引分组号去词库查找相应索引分组号下存储的各个词,将所述笔画路径与各个词进行匹配。比如前述“一’丨一一”,对于该索引分组号下的每个词,将“一”与该词的第一个字匹配,将“丨一一”与该词的第二个字匹配。如果两者均匹配上,则可认为匹配上,即可将该词作为上屏候选项。
对于其他笔画路径的查找和匹配过程类似上述过程,如此,即可得到对 应于用户输入的笔画序列的各个词。
当然,本发明实施例中,对于用户输入的笔画序列,还可以该笔画序列去匹配单字,将匹配上的单字也作为上屏候选项。
然后根据各个被匹配上的词和字的展示权重(比如词频等参数),调整各自的展示位置。
本发明实施例通过词库中的词进行分组存储,在对词进行分组时,通过各词的笔画对应的索引编码计算所述词所属的索引分组号,以将所述词在所述索引分组号下存储。然后对于用户输入的笔画序列,可以自动的进行各种切分操作,得到各种笔画路径,然后即可针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而去相应的分组中匹配相应的词。上述过程,无需用户在笔画序列的输入过程中输入分隔符或者点击切分按钮,即可在不大幅降低用户选择词语的准确率的情况下,直接根据用户输入的笔画序列,返回相应的词供用户选择,可以大大提高用户的输入速度。
实施例二
参照图2,其示出了本发明一种笔画输入方法的流程示意图,具体可以包括:
步骤210,针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
在本发明实施例中,对于输入法词库的词的存储结构进行调整。调整时,首先,提取每个词的前两个字,每个字的前两个笔画,得到四个笔画的笔画序列。
步骤212,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而确定所述词所属的索引分组号;
比如对于输入法的笔画“横竖撇捺折”,如“一丨丿丶乙”,将每个笔画分别对应索引编码12345。那么对于前述四个笔画的笔画序列,可以得到对应的笔画编码,从而可以根据所述笔画编码计算所述笔画路径对应的索引分组号,从而确定所述词所属的索引分组号。
当然,本发明实施例中的笔画输入模式的笔画还可包括其他形式。优选的为横、竖、撇、捺、折。如前述“一丨丿丶乙”。
优选的,还包括:
步骤208,选择连续N个非0整数与笔画输入模式的各个笔画一一对应,以作为各个笔画的笔画编码。
比如笔画输入模式的笔画有5个,如前述的横、竖、撇、捺、折,那么每个笔画对应的索引编码可按序为1、2、3、4、5,当然也可以为5、4、3、2、1。具体每个笔画与连续N个非0整数之间的一一对应关系,本发明不对其加以限制。
优选的,所述索引编码为笔画所在按键对应的数字编号。
比如对于九键键盘如下:1键对应:一,2键对应:丨,3键对应:丿,4键对应:丶,5键对应:乙,6键对应:通配符,7、8、9键对应其他。那么“一”的笔画编码对应1,“丨”的笔画编码对应2,“丿”的笔画编码对应3,“丶”的笔画编码对应4,“乙”的笔画编码对应5。
步骤214,将词库中的各词按照所对应的索引分组号进行存储。
然后即可将词库中的各词按索引分组号进行分组存储。在本发明中以前述四个笔画进行分组存储后,即相当于采用一个4级的索引分组结构来存储字词,其得到的词语分组总数大致为:51+52+53+54=780。
在通过上述步骤对输入法词库中的词进行分组存储后。即可进入接收用户的笔画输入的流程:
步骤216,在笔画输入模式中,接收用户输入的笔画序列;
用户在操作装置中,比如智能手机的装置中,触发启动输入法,切换到笔画输入模式中,即切换到笔画键盘,比如前述的九键键盘如下:1键对应:一,2键对应:丨,3键对应:丿,4键对应:丶,5键对应:乙,6键对应:通配符,7、8、9键对应其他。
那么用户点击笔画键盘中的按键即可得到笔画序列,如用户输入“一丨一一”。
步骤218,将所述笔画序列进行各种两段形式的切分操作,得到对应两 个字的笔画路径;
即将用户输入的笔画序列切分为各种两段式的笔画路径,不会将其切分为三段或者更多。比如对于前述“一丨一一”,只对其进行各种可能的两段式切分,只得到“一’丨一一”、“一丨’一一”、“一丨一’一”三种两段式的笔画路径。其中每个笔画路径中每段笔画序列对应词中的一个字,比如“一’丨一一”中,“一”用于后续步骤中匹配相应索引分组号中存储的某词第一个字的笔画序列,“丨一一”用于后续步骤匹配某词中第二个字的笔画序列。
步骤220,针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
对于上述得到的各种笔画路径,比如前述“一’丨一一”、“一丨’一一”、“一丨一’一”三种笔画路径,以“一’丨一一”为例,每个笔画其对应的笔画编码未1211,其中“一’对应第一个字,那么第一个1对应第一个字,“丨一一”对应第二个字,那么后面的“211”对应第二个字,即可将1211拆分为“1”和“211”。那么即可根据“1”和“211”带入预定的分组函数,即可计算所述笔画路径“一’丨一一”所在的分组索引号。
步骤222,根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项。
那么对于上述“一’丨一一”,确定其所在的索引分组号之后,即可将所述“一’丨一一”与该词库中该索引分组号下存储的各个词进行匹配。其中,将“一’丨一一”的前面分段“一”与词的第一个字匹配,将后面的分段“丨一一”与词的第二个字匹配。如果两者均匹配上,则可认为匹配上,即可将该词作为上屏候选项。
对于其他笔画路径的查找和匹配过程类似上述过程,如此,即可得到对应于用户输入的笔画序列的各个词。
优选的,还包括:
步骤224,对于匹配上的词,根据所述词的词频,调整所述词作为上屏候选项时的展示权重。
在本发明实施例中,会在各个索引分组号匹配得到多个词,而屏幕的显示位置是有限的,那么对于作为上屏候选项的词,需要让其更精准的符合用户的习惯,使用户可以更快速的选择词汇。因此可以通过预先统计的各词的词频,调整所述词作为上屏候选项时的展示权重,将词频高的排序靠前显示,词频低的排序靠后显示。
优选的,还包括:
步骤226,记录用户的个性化用词并根据所述记录,调整所述词作为上屏候选项时的展示权重。
对于不同的用户来说,其可能会经常使用一些不大众化的词,那么通过统计所有词的点击频率或者说使用频率来说,该用户使用的上述比较偏僻的词就可能属于低频词,如果还按照步骤224的方式调整该词作为上屏候选项时的展示权重时,其就会靠后排序,但是于用户的用词习惯不符。为了克服上述情况,本发明实施例则会记录用户输入的笔画序列与作为上屏候选项的词之间的关联选择次数,比如用户输入“一丨一一”后选择“打开”的次数大于阈值,则在用户输入“一丨一一”时,将“打开”的展示权重提高,让其排序靠前显示。
当然,本发明实施例中,对于用户输入的笔画序列,还可以该笔画序列去匹配单字,将匹配上的单字也作为上屏候选项。
然后根据各个被匹配上的词和字的展示权重(比如词频等参数),调整各自的展示位置。
本发明实施例在本发明中以前述四个笔画进行分组存储后,即相当于采用一个4级的索引分组结构来存储字词,其得到的词语分组总数大致为:51+52+53+54=780。如此对词库内的数据进行分组后,每次输入所需匹配的词的数量会大大降低,可以极大提高程序运行速度。假设词库内存储10000个常用词,如果不使用上述分组按照传统匹配方式,则用户每次输入的笔画序列都会匹配10000次。使用了本发明的分组方案后,平均每个分组下只有10000÷780=12.82个词语,每次输入大概会有10个左右的分组需要搜索,每次输入匹配的词语数量由10000下降到了128.2,由词语匹配带来的时间损耗下降了98.7%,大大缩减了匹配次数, 解决了移动终端的笔画自由切分出词性能问题,提高了运算速度,可以在用户基本上感知不到计算延迟的情况下完成上屏候选项的展示。并且上述过程,无需用户在笔画序列的输入过程中输入分隔符或者点击切分按钮,即可在不大幅降低用户选择词语的准确率的情况下,直接根据用户输入的笔画序列,返回相应的词供用户选择,可以大大提高用户的输入速度。
实施例三
参照图3,其示出了本发明优选的一种笔画输入方法的流程示意图,具体可以包括:
步骤310,在采用“横竖撇捺折”的笔画输入装置中,针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
在本发明实施例中,对于“横竖撇捺折”的笔画,采用九键键盘类似如下:1键对应:一,2键对应:丨,3键对应:丿,4键对应:丶,5键对应:乙,6键对应:通配符,7、8、9键对应其他。
例如“聊天”这个词,前两个字对应的前两笔输入分别为“一丨”和“一一”,得到笔画路径为“一丨’一一”。
步骤312,获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
如前所述,“一”的笔画编码对应1,“丨”的笔画编码对应2,“丿”的笔画编码对应3,“丶”的笔画编码对应4,“乙”的笔画编码对应5。
在本发明实施例中,以词的前两个字,每个字的前两笔构建索引分组的情况下,即以一个4级的索引分组结构来存储字词,其词语分组总数为:51+52+53+54=780。而基于改4级索引分组结构。对于前述4个笔画,用于根据笔画编码计算索引分组号的分组函数为f(x)=x1*50+x2*51+x3*52+x4*53。其中x1和x2对应第一个字的前两个笔画的笔画编码,x3和x4对应第二个字的前两个笔画的笔画编码。如果没有笔画,则xi=0,对于第三个笔画以及之后的笔画,均没有索引系数,不进入计算。
那么对于前述的“聊天”这个词的每个字的前两笔“一丨”和“一一”,对应的笔画编码为“12”和“11”,“12”中的笔画编码对应的索引系数分别 50和51,“11”中的笔画编码对应的索引系数分别为52和53
又比如再例如“一个”,第一个字“一”只有一笔,对应笔画编码为“1”,第二个字“个”前两笔对应的笔画编码对应“34”,那么“1”的笔画编码为50,“34”中的笔画编码对应的索引系数分别为52和53。该种情况f(x)中第二项的x2=0。
步骤314,根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号;
那么对于前述的“聊天”这个词的每个字的前两笔“一丨”和“一一”,对应的笔画编码为“12”和“11”,其带入前述f(x)=1*50+2*51+1*52+1*53,计算得到的索引分组编号为161。以此类推,对于“一个”,的“1”和“34”,带入前述f(x)=1*50+0*51+3*52+4*53得到其索引分组号为576。如此构建,“一会”、“一分钟”的索引分组号也为576。
步骤316,将词库中的各词按照所对应的索引分组号进行存储。
然后,即可将各词按照其索引分组号进行分组存储。
下面以一个分组存储的示例表一,介绍笔画输入过程。
Figure PCTCN2015094840-appb-000001
表一
步骤318,在笔画输入模式中,接收用户输入的笔画序列;
用户在输入法中切换到类似如下九键键盘:1键对应:一,2键对应:丨,3键对应:丿,4键对应:丶,5键对应:乙,6键对应:通配符,7、8、9键对应其他后,即可进行笔画输入。本发明的输入法则可以接收其输入的笔画序列。
比如用户输入了“一丨一一”这样四笔。
步骤320,将所述笔画序列进行各种两段形式的切分操作,得到对应两个字的笔画路径;
本发明实施例首先对“一丨一一”这样四笔进行各种两段形式的切分操作,得到“一’丨一一”、“一丨’一一”、“一丨一’一”三种笔画路径。每种笔画路径的两段笔画序列分别对应第一个字和第二个字。
步骤322,针对每个笔画路径,获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
比如“一’丨一一”其笔画编号为“1”和“211”,对于“211”由于只取前两个笔画,因此最后只取“21”。那么依据“1”对应的第一个字,其在f(x)中的索引系数为50,依据“21”对应索引系数分别为52和53
同理,对于“一丨’一一”,其“一丨”的笔画编码为“12”对应的索引系数为50和51,“一一”的笔画编码为“11”对应索引系数分别为52和53
对于“一丨一’一”,其“一丨一”的笔画编码为“12”对应的索引系数为50和51,“一”的笔画编码为“1”对应索引系数分别为52
步骤324,根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号;
那么对于“一’丨一一”由此前述f(x)=1*50+0*51+2*52+1*53计算其索引分组号f(x)为176。同理,对于“一丨’一一”,f(x)=1*50+2*51+1*52+1*53=161,对于“一丨一’一”f(x)=1*50+2*51+1*52+0*53=36。
步骤326,根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项。
那么对于“一’丨一一”可以去表一的176索引分组号下匹配各词,得到“一点”、“一辈子”等词。“一丨’一一”可以去表一的161索引分组号下匹配各词,得到“聊天”、“下班”、“两天”、“打开”等词。“一丨一’一”可以去表一的36索引分组号下匹配各词,得到“都一样”、“十一”、“十一点”等词。
当然,本发明实施例中,对于“都一样”、“一辈子”“十一点”等词由于仅能匹配前两个字,不能完整的匹配到所有的字,因此可以不将其作为上屏候选项。
优选的,还包括:
步骤328,对于匹配上的词,根据所述词的词频,调整所述词作为上屏候选项时的展示权重。
在本发明实施例中,会在各个索引分组号匹配得到多个词,而屏幕的显示位置是有限的,那么对于作为上屏候选项的词,需要让其更精准的符合用户的习惯,使用户可以更快速的选择词汇。因此可以通过预先统计的各词的词频,调整所述词作为上屏候选项时的展示权重,将词频高的排序靠前显示,词频低的排序靠后显示。
优选的,还包括:
步骤330,记录用户的个性化用词并根据所述记录,调整所述词作为上屏候选项时的展示权重。
对于不同的用户来说,其可能会经常使用一些不大众化的词,那么通过统计所有词的点击频率或者说使用频率来说,该用户使用的上述比较偏僻的词就可能属于低频词,如果还按照步骤224的方式调整该词作为上屏候选项时的展示权重时,其就会靠后排序,但是于用户的用词习惯不符。为了克服上述情况,本发明实施例则会记录用户输入的笔画序列与作为上屏候选项的词之间的关联选择次数,比如用户输入“一丨一一”后选择“打开”的次数大于阈值,则在用户输入“一丨一一”时,将“打开”的展示权重提高,让其排序靠前显示。
当然,本发明实施例中,对于用户输入的笔画序列,还可以该笔画序列去匹配单字,将匹配上的单字也作为上屏候选项。
然后根据各个被匹配上的词和字的展示权重(比如词频等参数),调整各自的展示位置。
在本发明实施例中,所述分组存储的词库可以存储在客户端本地,也可以存储在云端服务器。当所述词库存储在云端服务器时,则输入法可以在本 地进行前述对笔画序列的切分操作和计算过程,得到对应的索引分组号,然后从云端服务器的词库中获取对应索引分组号中存储的可与相应笔画路径匹配的词,将所述词作为客户端输入法的上屏候选项;输入法也可以将笔画序列上传至云端服务器,在云端服务器进行前述对笔画序列的切分操作和计算过程,得到对应的索引分组号,然后云端服务器的从词库获取对应索引分组号中存储的可与相应笔画路径匹配的词返回客户端,客户端将所述词作为客户端输入法的上屏候选项。
对于用户来讲输入法最重要的是输入效率,大致分为两点考虑:一是输入速度,二是输入准确率。对用户输入进行大量分析发现,装置词库内少量的高频词就可以覆盖用户的大部分笔画输入,因此采用自由切分的方式合理的给出候选词语,不会大幅降低用户选择词语的准确率,但可以大大提高用户的输入速度,其中用户经常采用的低频词可以通过记录用户词的方式辅助解决。
但是笔画自动切分输入笔画的最大难点是程序效率问题,因为切分可以是任意的,需要搜索所有可能的笔画路径并用来匹配词语,假设词库中词语最大长度为4,最坏情况下,时间复杂度为O(n)=n^4*C(dict),n为输入长度,C(dict)为词库容量。如果采用这种方式去搜索候选词,在移动终端(比如手机)上由于其硬件的限制,搜索过程的耗时是无法容忍的,会造成界面卡死。如果通过裁剪词库容量来减少搜索时间消耗,会造成出词准确率降低,效果同样理想。而本发明实施例中,以前述四个笔画进行分组存储后,即相当于采用一个4级的索引分组结构来存储字词,每次输入所需匹配的词的数量会大大降低,可以极大提高程序运行速度。假设词库内存储10000个常用词,如果不使用上述分组按照传统匹配方式,则用户每次输入的笔画序列都会匹配10000次。使用了本发明的分组方案后,平均每个分组下只有10000÷780=12.82个词语,每次输入大概会有10个左右的分组需要搜索,每次输入匹配的词语数量由10000下降到了128.2,由词语匹配带来的时间损耗下降了98.7%,大大缩减了匹配次数,解决了移动终端的笔画自由切分出词性能问题,提高了运算速度,可以在用户基本上感知不到计算延迟的情况下 完成上屏候选项的展示。
并且上述过程,无需用户在笔画序列的输入过程中输入分隔符或者点击切分按钮,即可在不大幅降低用户选择词语的准确率的情况下,直接根据用户输入的笔画序列,返回相应的词供用户选择,可以大大提高用户的输入速度。进一步的通过分析用户数据发现笔画用户输入2-4字词的概率分别为34.80%、15.45%、8.96%,假设笔画用户平均每个字输入4笔,因为每两个字之间会节省一个切分符,则本方案可以为用户减少13.23%的按键输入,提升了用户的输入效率。
实施例四
参照图4,其示出了本发明优选的一种笔画输入方法的流程示意图,具体可以包括:
步骤410,在云端服务器将所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。
在本发明实施例中,本步骤在云端服务器执行,创建的词库也存储在云端服务器。
步骤420,在客户端的笔画输入模式中,接收用户输入的笔画序列;
步骤430,客户端将所述笔画序列上传至云端服务器;
步骤440,云端服务器将所述笔画序列进行各种的切分操作,得到各种笔画路径;
步骤450,云端服务器将针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
步骤460,云端服务器将根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词返回客户端;
步骤470,所述客户端将接收到的词作为上屏候选项。
当然,本发明实施例中客户端输入法也可在本地分析笔画序列对应的各个索引分组号,然后将索引分组号和相应的笔画路径上传至云端服务器,云端服务器根据所述索引分组号从词库中匹配词,然后将词返回客户端输入法。
本发明实施例结合云端服务器,在云端服务器对词库中的词进行分组存储,在对词进行分组时,通过各词的笔画对应的索引编码计算所述词所属的索引分组号,以将所述词在所述索引分组号下存储。然后对于客户端输入法中接收到的用户输入的笔画序列,结合云端服务器可以自动的进行各种切分操作,得到各种笔画路径,然后即可针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而去相应的分组中匹配相应的词。上述过程,无需用户在笔画序列的输入过程中输入分隔符或者点击切分按钮,即可在不大幅降低用户选择词语的准确率的情况下,直接根据用户输入的笔画序列,返回相应的词供用户选择,可以大大提高用户的输入速度。
实施例五
参照图5,其示出了本发明优选的一种笔画输入装置的结构示意图,具体可以包括:
笔画序列接收模块510,适于在笔画输入模式中,接收用户输入的笔画序列;
笔画序列切分模块520,适于将所述笔画序列进行各种的切分操作,得到各种笔画路径;
笔画索引分组计算模块530,适于针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
笔画路径匹配模块540,适于根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项;其中,所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。
实施例六
参照图6,其示出了本发明优选的一种笔画输入装置的结构示意图,具体可以包括:
词库分组模块610,适于将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;具体包括:
笔画提取模块612,适于针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
词索引分组确定模块614,适于根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而确定所述词所属的索引分组号;
分组存储模块616,适于将词库中的各词按照所对应的索引分组号进行存储。
笔画输入模块620,包括:
笔画序列接收模块622,适于在笔画输入模式中,接收用户输入的笔画序列;
笔画序列切分模块624,包括:
两段切分模块6241,适于将所述笔画序列进行各种两段形式的切分操作,得到对应两个字的笔画路径;
笔画索引分组计算模块626,适于针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
笔画路径匹配模块628,适于根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项。
优选的,所述笔画序列切分模块包括:
两段切分模块,适于将所述笔画序列进行各种两段形式的切分操作,得到对应两个字的笔画路径。
优选的,所述笔画索引分组计算模块或所述词索引分组确定模块包括:
参数提取模块,适于获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
分组号计算模块,适于根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号。
优选的,笔画输入模式的笔画包括:横、竖、撇、捺、折。
优选的,还包括:笔画编码确定模块,适于选择连续N个非0整数与笔画输入模式的各个笔画一一对应,以作为各个笔画的笔画编码。
优选的,所述索引编码为笔画所在按键对应的数字编号。
优选的,所述索引系数通过笔画输入模式的笔画个数N与索引级数确 定。
优选的,还包括:词权重调整模块,适于对于匹配上的词,根据所述词的词频,调整所述词作为上屏候选项时的展示权重。
优选的,还包括:个性化词权重调整模块,适于记录用户的个性化用词并根据所述记录,调整所述词作为上屏候选项时的展示权重。
实施例七
参照图7,其示出了本发明优选的一种笔画输入装置的结构示意图,具体可以包括:
词库分组模块710,适于在采用“横竖撇捺折”的笔画输入装置中,将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;具体包括:
笔画提取模块712,适于针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
词索引分组确定模块714,包括:
第一参数提取模块7141,适于获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
第一分组号计算模块7142,适于根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号;
分组存储模块716,适于将词库中的各词按照所对应的索引分组号进行存储。
笔画输入模块720,包括:
笔画序列接收模块722,适于在笔画输入模式中,接收用户输入的笔画序列;
笔画序列切分模块724,包括:
两段切分模块7241,适于将所述笔画序列进行各种两段形式的切分操作,得到对应两个字的笔画路径;
笔画索引分组计算模块726,包括:
第二参数提取模块7261,适于获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
第二分组号计算模块7262,适于根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号;
笔画路径匹配模块728,适于根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项。
实施例八
参照图8,其示出了本发明优选的一种笔画输入系统的结构示意图,具体可以包括:
云端服务器820和客户端810;
所述客户端810包括:
笔画序列接收模块812,适于在笔画输入模式中,接收用户输入的笔画序列;
笔画序列上传模块814,适于将所述笔画序列上传至云端服务器;
候选项生成模块816,适于将接收到的词作为上屏候选项;
所述云端服务器820包括:
词库分组模块822,适于将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;
笔画序列切分模块824,适于将所述笔画序列进行各种的切分操作,得到各种笔画路径;
笔画索引分组计算模块826,适于针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
笔画路径匹配模块828,适于根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词返回客户端。
优选的,所述词库分组模块,包括:
笔画提取模块,适于针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
词索引分组确定模块,适于根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而确定所述词所属的索引分组号;
分组存储模块,适于将词库中的各词按照所对应的索引分组号进行存储。
优选的,所述笔画序列切分模块包括:
两段切分模块,适于将所述笔画序列进行各种两段形式的切分操作,得 到对应两个字的笔画路径。
优选的,所述笔画索引分组计算模块或所述词索引分组确定模块包括:
参数提取模块,适于获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
分组号计算模块,适于根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号。
优选的,笔画输入模式的笔画包括:横、竖、撇、捺、折。
优选的,还包括:
笔画编码确定模块,适于选择连续N个非0整数与笔画输入模式的各个笔画一一对应,以作为各个笔画的笔画编码。
优选的,所述索引编码为笔画所在按键对应的数字编号。
优选的,所述索引系数通过笔画输入模式的笔画个数N与索引级数确定。
优选的,还包括:
词权重调整模块,适于对于匹配上的词,根据所述词的词频,调整所述词作为上屏候选项时的展示权重。
优选的,还包括:
个性化词权重调整模块,适于记录用户的个性化用词并根据所述记录,调整所述词作为上屏候选项时的展示权重。
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将 该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的笔画输入设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图9示出了可以实现根据本发明的一种笔画输入的终端设备。该终端设备传统上包括处理器910和以存储器920形式的计算机程序产品或者计算机可读介质。存储器920可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、 EPROM、硬盘或者ROM之类的电子存储器。存储器920具有用于执行上述方法中的任何方法步骤的程序代码931的存储空间930。例如,用于程序代码的存储空间930可以包括分别用于实现上面的方法中的各种步骤的各个程序代码931。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为如参考图10所述的便携式或者固定存储单元。该存储单元可以具有与图9的终端设备中的存储器920类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码931’,即可以由例如诸如910之类的处理器读取的代码,这些代码当由终端设备运行时,导致该终端设备执行上面所描述的方法中的各个步骤。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
此外,还应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (32)

  1. 一种笔画输入方法,包括:
    在笔画输入模式中,接收用户输入的笔画序列;
    将所述笔画序列进行各种的切分操作,得到各种笔画路径;
    针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
    根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项;其中,所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。
  2. 如权利要求1所述的方法,其特征在于,所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储包括:
    针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
    根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而确定所述词所属的索引分组号;
    将词库中的各词按照所对应的索引分组号进行存储。
  3. 如权利要求2所述的方法,其特征在于,将所述笔画序列进行各种的切分操作,得到各种笔画路径包括:
    将所述笔画序列进行各种两段形式的切分操作,得到对应两个字的笔画路径。
  4. 如权利要求1或2所述的方法,其特征在于,所述根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号包括:
    获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
    根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号。
  5. 如权利要求1所述的方法,其特征在于,笔画输入模式的笔画包括: 横、竖、撇、捺、折。
  6. 如权利要求4所述的方法,其特征在于,还包括:
    选择连续N个非0整数与笔画输入模式的各个笔画一一对应,以作为各个笔画的笔画编码。
  7. 如权利要求4所述的方法,其特征在于,所述索引编码为笔画所在按键对应的数字编号。
  8. 如权利要求6或7所述的方法,其特征在于,所述索引系数通过笔画输入模式的笔画个数N与索引级数确定。
  9. 如权利要求1所述的方法,其特征在于,还包括:
    对于匹配上的词,根据所述词的词频,调整所述词作为上屏候选项时的展示权重。
  10. 如权利要求1所述的方法,其特征在于,还包括:
    记录用户的个性化用词并根据所述记录,调整所述词作为上屏候选项时的展示权重。
  11. 一种笔画输入装置,包括:
    笔画序列接收模块,适于在笔画输入模式中,接收用户输入的笔画序列;
    笔画序列切分模块,适于将所述笔画序列进行各种的切分操作,得到各种笔画路径;
    笔画索引分组计算模块,适于针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
    笔画路径匹配模块,适于根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词作为上屏候选项;其中,所述词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储。
  12. 如权利要求11所述的装置,其特征在于,还包括:
    词库分组模块,适于将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;具体包括:
    笔画提取模块,适于针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
    词索引分组确定模块,适于根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而确定所述词所属的索引分组号;
    分组存储模块,适于将词库中的各词按照所对应的索引分组号进行存储。
  13. 如权利要求12所述的装置,其特征在于,所述笔画序列切分模块包括:
    两段切分模块,适于将所述笔画序列进行各种两段形式的切分操作,得到对应两个字的笔画路径。
  14. 如权利要求11或12所述的装置,其特征在于,所述笔画索引分组计算模块或所述词索引分组确定模块包括:
    参数提取模块,适于获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
    分组号计算模块,适于根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号。
  15. 如权利要求11所述的装置,其特征在于,笔画输入模式的笔画包括:横、竖、撇、捺、折。
  16. 如权利要求14所述的装置,其特征在于,还包括:
    笔画编码确定模块,适于选择连续N个非0整数与笔画输入模式的各个笔画一一对应,以作为各个笔画的笔画编码。
  17. 如权利要求14所述的装置,其特征在于,所述索引编码为笔画所在按键对应的数字编号。
  18. 如权利要求16或17所述的装置,其特征在于,所述索引系数通过笔画输入模式的笔画个数N与索引级数确定。
  19. 如权利要求11所述的装置,其特征在于,还包括:
    词权重调整模块,适于对于匹配上的词,根据所述词的词频,调整所述 词作为上屏候选项时的展示权重。
  20. 如权利要求11所述的装置,其特征在于,还包括:
    个性化词权重调整模块,适于记录用户的个性化用词并根据所述记录,调整所述词作为上屏候选项时的展示权重。
  21. 一种笔画输入系统,包括:
    云端服务器和客户端;
    所述客户端包括:
    笔画序列接收模块,适于在笔画输入模式中,接收用户输入的笔画序列;
    笔画序列上传模块,适于将所述笔画序列上传至云端服务器;
    候选项生成模块,适于将接收到的词作为上屏候选项;
    所述云端服务器包括:
    词库分组模块,适于将词库中的各词,根据各词的笔画对应的索引编码计算所述词所属的索引分组号,在对应索引分组号下进行存储;
    笔画序列切分模块,适于将所述笔画序列进行各种的切分操作,得到各种笔画路径;
    笔画索引分组计算模块,适于针对每个笔画路径,根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号;
    笔画路径匹配模块,适于根据所述索引分组号,将所述笔画路径与词库中所述索引分组号下存储的各词进行匹配,并将匹配上的词返回客户端。
  22. 如权利要求21所述的系统,其特征在于,所述词库分组模块,包括:
    笔画提取模块,适于针对词库中的每个词,提取前两个字中每个字的前两个笔画,得到笔画路径;
    词索引分组确定模块,适于根据各笔画各自对应的索引编码以及对应的字序,计算所述笔画路径对应索引分组号,从而确定所述词所属的索引分组号;
    分组存储模块,适于将词库中的各词按照所对应的索引分组号进行存储。
  23. 如权利要求21所述的系统,其特征在于,所述笔画序列切分模块包括:
    两段切分模块,适于将所述笔画序列进行各种两段形式的切分操作,得到对应两个字的笔画路径。
  24. 如权利要求21或22所述的系统,其特征在于,所述笔画索引分组计算模块或所述词索引分组确定模块包括:
    参数提取模块,适于获取各笔画的索引编码,并根据各笔画所对应的字序获取各个笔画对应的索引系数;
    分组号计算模块,适于根据各笔画的索引编码和索引系数,计算所述笔画路径对应的索引分组号。
  25. 如权利要求21所述的系统,其特征在于,笔画输入模式的笔画包括:横、竖、撇、捺、折。
  26. 如权利要求24所述的系统,其特征在于,还包括:
    笔画编码确定模块,适于选择连续N个非0整数与笔画输入模式的各个笔画一一对应,以作为各个笔画的笔画编码。
  27. 如权利要求24所述的系统,其特征在于,所述索引编码为笔画所在按键对应的数字编号。
  28. 如权利要求26或27所述的系统,其特征在于,所述索引系数通过笔画输入模式的笔画个数N与索引级数确定。
  29. 如权利要求21所述的系统,其特征在于,还包括:
    词权重调整模块,适于对于匹配上的词,根据所述词的词频,调整所述词作为上屏候选项时的展示权重。
  30. 如权利要求21所述的系统,其特征在于,还包括:
    个性化词权重调整模块,适于记录用户的个性化用词并根据所述记录,调整所述词作为上屏候选项时的展示权重。
  31. 一种计算机程序,包括计算机可读代码,当所述计算机可读代码在终端设备上运行时,导致所述终端设备执行根据权利要求1-10中的任一个所述的笔画输入方法。
  32. 一种计算机可读介质,其中存储了如权利要求32所述的计算机程序。
PCT/CN2015/094840 2014-12-19 2015-11-17 笔画输入方法、装置和系统 WO2016095645A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/537,624 US20180217674A1 (en) 2014-12-19 2015-11-17 Stroke input method, device and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410802367.5A CN104503597B (zh) 2014-12-19 2014-12-19 笔画输入方法、装置和系统
CN2014108023675 2014-12-19

Publications (1)

Publication Number Publication Date
WO2016095645A1 true WO2016095645A1 (zh) 2016-06-23

Family

ID=52944999

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/094840 WO2016095645A1 (zh) 2014-12-19 2015-11-17 笔画输入方法、装置和系统

Country Status (3)

Country Link
US (1) US20180217674A1 (zh)
CN (1) CN104503597B (zh)
WO (1) WO2016095645A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113805708A (zh) * 2021-09-14 2021-12-17 维沃移动通信有限公司 信息显示方法、装置、电子设备和存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503597B (zh) * 2014-12-19 2017-12-12 北京奇虎科技有限公司 笔画输入方法、装置和系统
JP7031151B2 (ja) * 2017-07-07 2022-03-08 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
CN108279783A (zh) * 2017-12-14 2018-07-13 北京百度网讯科技有限公司 一种候选项上屏的方法、装置、设备和计算机存储介质
CN110297544B (zh) * 2019-06-28 2021-08-17 联想(北京)有限公司 输入信息响应方法及装置、计算机系统和可读存储介质
CN112990176B (zh) * 2021-04-09 2023-07-18 北京有竹居网络技术有限公司 书写质量评价方法、装置和电子设备
CN113220208B (zh) * 2021-04-26 2023-06-13 北京搜狗科技发展有限公司 一种数据处理方法、装置和电子设备
CN113641253B (zh) * 2021-07-09 2024-08-23 北京搜狗科技发展有限公司 筛选候选项的方法、装置和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1379311A (zh) * 2002-05-16 2002-11-13 戴顺天 九宫写字板数码汉字输入法
CN102467319A (zh) * 2010-11-09 2012-05-23 邓桂成 手写汉字输入方法和系统
CN104503597A (zh) * 2014-12-19 2015-04-08 北京奇虎科技有限公司 笔画输入方法、装置和系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6636162B1 (en) * 1998-12-04 2003-10-21 America Online, Incorporated Reduced keyboard text input system for the Japanese language
CN1187677C (zh) * 2002-03-18 2005-02-02 郑方 计算机整句汉字局部笔划输入方法
CN1256650C (zh) * 2004-01-05 2006-05-17 郑方 一种中文整句输入法
CN101408804A (zh) * 2004-07-23 2009-04-15 美国联机股份有限公司 中文短语笔画以及语音化文字输入的使用者界面和数据库结构
CN101419505A (zh) * 2008-10-15 2009-04-29 马昭旭 自由码输入法
CN102236422B (zh) * 2010-04-27 2016-07-06 北京搜狗科技发展有限公司 一种以笔画码进行输入的方法及一种输入法系统
US8463592B2 (en) * 2010-07-27 2013-06-11 International Business Machines Corporation Mode supporting multiple language input for entering text

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1379311A (zh) * 2002-05-16 2002-11-13 戴顺天 九宫写字板数码汉字输入法
CN102467319A (zh) * 2010-11-09 2012-05-23 邓桂成 手写汉字输入方法和系统
CN104503597A (zh) * 2014-12-19 2015-04-08 北京奇虎科技有限公司 笔画输入方法、装置和系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113805708A (zh) * 2021-09-14 2021-12-17 维沃移动通信有限公司 信息显示方法、装置、电子设备和存储介质
CN113805708B (zh) * 2021-09-14 2024-01-23 维沃移动通信有限公司 信息显示方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
US20180217674A1 (en) 2018-08-02
CN104503597A (zh) 2015-04-08
CN104503597B (zh) 2017-12-12

Similar Documents

Publication Publication Date Title
WO2016095645A1 (zh) 笔画输入方法、装置和系统
CN109670163B (zh) 信息识别方法、信息推荐方法、模板构建方法及计算设备
CN108287858B (zh) 自然语言的语义提取方法及装置
US8892420B2 (en) Text segmentation with multiple granularity levels
US8744839B2 (en) Recognition of target words using designated characteristic values
KR101465770B1 (ko) 단어 확률 결정
CN107704102B (zh) 一种文本输入方法及装置
CN110457672B (zh) 关键词确定方法、装置、电子设备及存储介质
CN109918485B (zh) 语音识别菜品的方法及装置、存储介质、电子装置
WO2016107344A1 (zh) 对输入法的上屏候选项进行筛选的方法和装置
CN108804423B (zh) 医疗文本特征提取与自动匹配方法和系统
CN108804642A (zh) 检索方法、装置、计算机设备及存储介质
CN105956053B (zh) 一种基于网络信息的搜索方法及装置
CN112395385B (zh) 基于人工智能的文本生成方法、装置、计算机设备及介质
US8606779B2 (en) Search method, similarity calculation method, similarity calculation, same document matching system, and program thereof
CN103885608A (zh) 一种输入方法及系统
CN104199965A (zh) 一种语义信息检索方法
CN112633000B (zh) 一种文本中实体的关联方法、装置、电子设备及存储介质
CN112784009B (zh) 一种主题词挖掘方法、装置、电子设备及存储介质
CN111506726B (zh) 基于词性编码的短文本聚类方法、装置及计算机设备
CN110532354A (zh) 内容的检索方法及装置
CN108536676A (zh) 数据处理方法、装置、电子设备及存储介质
KR102327418B1 (ko) 텍스트 정보의 입력 방법 및 장치
US8782067B2 (en) Searching method, searching device and recording medium recording a computer program
CN108776705B (zh) 一种文本全文精确查询的方法、装置、设备及可读介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15869154

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 15537624

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 15869154

Country of ref document: EP

Kind code of ref document: A1