This application claims priority to Taiwan Application Serial Number 099141804, filed Dec. 1, 2010, which is herein incorporated by reference.
1. Technical Field
The present invention relates to a code recognition method, device and a computer readable storage medium for storing thereof.
2. Description of Related Art
Daily applications require users to type words on pictures or magazines into computer systems. Also, if a user wishes to amend the contents of the DM or contract, they need to retype the words. In the prior art, code recognition software converts the words on pictures into computer readable codes.
Common code recognition software partitions the image for recognition into several single-code-image blocks and then endeavors to recognize the code on each block. However, if the image is not partitioned correctly, code recognition success rates may be reduced.
According to one embodiment of this invention, a code recognition method is provided. In the code recognition method, a code image is partitioned into several code-image blocks to be recognized as the candidate codes on each of the code-image blocks. Then, some of the neighboring code-image blocks are combined to form other code-image blocks, and the combined code-image blocks are recognized as codes, which are selected from a combination of the candidate codes. The code recognition method may take the form of a computer program product stored on a computer-readable storage medium having computer-readable instructions embodied in the medium. The code recognition method includes the following steps: a first code-image block is received. Wherein, several first codes are displayed on the first code-image block. The first code-image block is partitioned into several second code-image blocks. Wherein, each of the second code-image blocks displays a second code respectively. Each of the second codes is one of the first codes. Each of the second code-image blocks is recognized as several third codes corresponding to each of the second codes respectively. Some of the neighboring second code-image blocks are combined to form several third code-image blocks. Wherein, each of the third code-image blocks displays a first code set, which includes some of the second codes. Each of the third code-image blocks is recognized as a second code set corresponding to each of the first code sets respectively. Wherein, each of the second code sets includes the codes selected from the third codes.
According to another embodiment of this invention, a code recognition device is provided. The code recognition device partitions a code image into several code-image blocks to be recognized as the candidate codes on each of code-image blocks. Then, some of the neighboring code-image blocks are combined to form other code-image blocks, and the combined code-image blocks are recognized as codes, which are selected from a combination of the candidate codes. A processing unit of the code recognition device includes a code-image block receiving module, a partitioning module, a code recognition module, a combining module and a code-set recognition module. The code-image block receiving module receives a first code-image block. Wherein, several first codes are displayed on the first code-image block. The partitioning module partitions the first code-image block into several second code-image blocks. Wherein, each of the second code-image blocks displays a second code respectively. Each of the second codes is one of the first codes. The code recognition module recognizes each of the second code-image blocks as several third codes corresponding to each of the second codes respectively. The combining module combines some of the neighboring second code-image blocks to form several third code-image blocks. Wherein, each of the third code-image blocks displays a first code set, which includes some of the second codes. The code-set recognition module recognizes each of the third code-image blocks as a second code set corresponding to each of the first code sets respectively. Wherein, each of the second code sets includes the codes selected from the third codes.
Above all, since the recognized second code set is a combination formed by the codes recognized from the single-code image, which can increase the recognition success rates. Besides, code recognition failure caused by the fault partition can be avoided.
These and other features, aspects, and advantages of the present invention will become better understood with reference to the following description and appended claims. It is to be understood that both the foregoing general description and the following detailed description are by examples, and are intended to provide further explanation of the invention as claimed.
The invention can be more fully understood by reading the following detailed description of the embodiments, with reference made to the accompanying drawings as follows:
Reference will now be made in detail to the present embodiments of the invention, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers are used in the drawings and the description to refer to the same or like parts.
The code recognition method 100 includes the following steps:
Refer to both
When capturing the first code-image block 201 (step 120), the captured first code-image block 201 can be normalized. Wherein, Affine Mapping algorithm, Scale-Invariant Feature Transform (SIFT) algorithm, Speeded Up Robust Features (SURF) algorithm or any other image normalizing algorithm can be utilized to normalize the captured first code-image block 201. Therefore, after being normalized, recognition success rates can be raised.
Refer to
In step 150, each of the second code-image blocks 202, 203, 204, 205 is recognized as several third codes corresponding to each of the second codes 202a, 203a, 204a, 205a respectively. For example, step 150 may recognize the second code 202a on the second code-image block 202 as “1” or “7”; step 150 may recognize the second code 203a on the second code-image block 203 as “6” or “8”; step 150 may recognize both the second codes 204a, 205a on the second code-image blocks 204, 205 as “2” or “3”. Hence, “1” and “7” are taken as the third codes corresponding to the second codes 202a; “6” and “8” are taken as the third codes corresponding to the second codes 203a; “2” and “3” are taken as the third codes corresponding to the second codes 204a; “1” and “7” are taken as the third codes corresponding to the second codes 205a.
Refer to
In step 170, each of the third code-image blocks 206, 207 respectively is recognized as a second code set corresponding to each of the first code sets 206a, 207a respectively. Wherein, each of the second code sets includes the codes selected from the third codes. For example, step 170 may select the third codes corresponding to the second codes 202a, 203a to form “1 6”, “1 8”, “7 6”, “7 8”, which are possible candidates for the second code set corresponding to the first code set 206a; step 170 may select the third codes corresponding to the second codes 204a, 205a to form “2 2”, “2 3”, “3 2”, “3 3”, which are possible candidates for the second code set corresponding to the first code set 207a. Since the second code set is a combination formed by the codes recognized from the single-code image, which can increase the recognition success rates. Also, code recognition failure caused by the fault partition in step 140 can be avoided.
In one embodiment of this invention, the neighboring code-image blocks 206, 207 can be combined for further code recognition. Therefore, further combination for code recognition may increase recognition success rates. In another embodiment of this invention, the recognized can be output directly.
Refer to both
Refer to both
A processing unit 310 of the code recognition device 300 includes a code-image block receiving module 313, a partitioning module 314, a code recognition module 315, a combining module 316 and a code-set recognition module 317.
Refer to both
The image capturing module 312 captures the first code-image block 201 from the image for recognition. Therefore, code recognition may not be affected by non-code blocks, which can increase recognition success rates.
Besides, the image capturing module 312 may normalize the captured first code-image block 201. Wherein, Affine Mapping algorithm, Scale-Invariant Feature Transform (SIFT) algorithm, Speeded Up Robust Features (SURF) algorithm or any other image normalizing algorithm can be utilized to normalize the captured first code-image block 201. Therefore, after being normalized, recognition success rates can be raised.
Refer to
The code recognition module 315 recognizes each of the second code-image blocks 202, 203, 204, 205 as several third codes corresponding to each of the second codes 202a, 203a, 204a, 205a respectively. For example, the code recognition module 315 may recognize the second code 202a on the second code-image block 202 as “1” or “7”; the code recognition module 315 may recognize the second code 203a on the second code-image block 203 as “6” or “8”; the code recognition module 315 may recognize both the second codes 204a, 205a on the second code-image blocks 204, 205 as “2” or “3”. Hence, “1” and “7” are taken as the third codes corresponding to the second codes 202a; “6” and “8” are taken as the third codes corresponding to the second codes 203a; “2” and “3” are taken as the third codes corresponding to the second codes 204a; “1” and “7” are taken as the third codes corresponding to the second codes 205a.
Refer to
The code-set recognition module 317 recognizes each of the third code-image blocks 206, 207 as a second code set corresponding to each of the first code sets 206a, 207a respectively. Wherein, each of the second code sets includes the codes selected from the third codes. For example, the code-set recognition module 317 may select the third codes corresponding to the second codes 202a, 203a to form “1 6”, “1 8”, “7 6”, “7 8”, which are possible candidates for the second code set corresponding to the first code set 206a; the code-set recognition module 317 may select the third codes corresponding to the second codes 204a, 205a to form “2 2”, “2 3”, “3 2”, “3 3”, which are possible candidates for the second code set corresponding to the first code set 207a. Since the second code set is a combination formed by the codes recognized from the single-code image, which can increase the recognition success rates. Besides, code recognition failure caused by the partitioning module 314 can be avoided.
In one embodiment of this invention, the combining module 316 may combine the neighboring code-image blocks 206, 207 for further code recognition. Therefore, further combination for code recognition may increase recognition success rates. In another embodiment of this invention, an output unit 340, which is electrically connected to the processing unit, can output the recognized second code set directly.
Refer to both
Refer to both
Above all, since the recognized second code set is a combination formed by the codes recognized from the single-code image, which can increase the recognition success rates. Besides, code recognition failure caused by the fault partition can be avoided.
Although the present invention has been described in considerable detail with reference to certain embodiments thereof, other embodiments are possible. Therefore, the spirit and scope of the appended claims should not be limited to the description of the embodiments contained herein. It will be apparent to those skilled in the art that various modifications and variations can be made to the structure of the present invention without departing from the scope or spirit of the invention. In view of the foregoing, it is intended that the present invention cover modifications and variations of this invention provided they fall within the scope of the following claims.
Number | Date | Country | Kind |
---|---|---|---|
99141804 A | Dec 2010 | TW | national |
Number | Name | Date | Kind |
---|---|---|---|
4259661 | Todd | Mar 1981 | A |
4499499 | Brickman et al. | Feb 1985 | A |
4654873 | Fujisawa et al. | Mar 1987 | A |
4850025 | Abe | Jul 1989 | A |
5020117 | Ooi et al. | May 1991 | A |
5321768 | Fenrich et al. | Jun 1994 | A |
5497432 | Nishida | Mar 1996 | A |
5644656 | Akra et al. | Jul 1997 | A |
5787194 | Yair | Jul 1998 | A |
5862259 | Bokser et al. | Jan 1999 | A |
5903666 | Guzik et al. | May 1999 | A |
5966464 | Kojima | Oct 1999 | A |
6014460 | Fukushima et al. | Jan 2000 | A |
6219449 | Nagaishi | Apr 2001 | B1 |
6339651 | Tian et al. | Jan 2002 | B1 |
6473517 | Tyan et al. | Oct 2002 | B1 |
6947596 | Kashioka et al. | Sep 2005 | B2 |
7136526 | Hotta et al. | Nov 2006 | B2 |
7139430 | Sparr et al. | Nov 2006 | B2 |
20030044068 | Kagehiro et al. | Mar 2003 | A1 |
20040037470 | Simske | Feb 2004 | A1 |
20040141645 | Lee et al. | Jul 2004 | A1 |
20040146216 | Andel et al. | Jul 2004 | A1 |
20050175242 | Tanaka | Aug 2005 | A1 |
20060039605 | Koga | Feb 2006 | A1 |
20060062466 | Zou et al. | Mar 2006 | A1 |
20060215937 | Snapp | Sep 2006 | A1 |
20080278481 | Aguera y Arcas et al. | Nov 2008 | A1 |
20090226089 | Ozawa et al. | Sep 2009 | A1 |
Number | Date | Country |
---|---|---|
1085456 | Mar 2001 | EP |
2392290 | Feb 2004 | GB |
02083688 | Mar 1990 | JP |
376492 | Dec 1999 | TW |
200847035 | Dec 2008 | TW |
Entry |
---|
English translation of abstract of EP 1085456 (published Mar. 21, 2001). |
English translation of abstract of TW 376492 (published Dec. 11, 1999). |
English translation of abstract of TW 200847035 A (published Dec. 1, 2008). |
Number | Date | Country | |
---|---|---|---|
20120141030 A1 | Jun 2012 | US |