JP2014115781A - Character recognition device and method, and character recognition program - Google Patents
Character recognition device and method, and character recognition program Download PDFInfo
- Publication number
- JP2014115781A JP2014115781A JP2012268549A JP2012268549A JP2014115781A JP 2014115781 A JP2014115781 A JP 2014115781A JP 2012268549 A JP2012268549 A JP 2012268549A JP 2012268549 A JP2012268549 A JP 2012268549A JP 2014115781 A JP2014115781 A JP 2014115781A
- Authority
- JP
- Japan
- Prior art keywords
- rejection
- character
- value
- image
- unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 104
- 238000012545 processing Methods 0.000 claims abstract description 104
- 238000004364 calculation method Methods 0.000 claims abstract description 88
- 230000008569 process Effects 0.000 claims description 55
- 238000000605 extraction Methods 0.000 claims description 46
- 238000007781 pre-processing Methods 0.000 claims description 12
- 238000004458 analytical method Methods 0.000 claims description 9
- 238000003384 imaging method Methods 0.000 claims description 6
- 238000012958 reprocessing Methods 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 3
- 230000006870 function Effects 0.000 description 92
- 239000013598 vector Substances 0.000 description 44
- 238000010586 diagram Methods 0.000 description 20
- 238000009826 distribution Methods 0.000 description 18
- 230000000875 corresponding effect Effects 0.000 description 10
- 238000012015 optical character recognition Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000005520 cutting process Methods 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 238000012706 support-vector machine Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000000354 decomposition reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000005484 gravity Effects 0.000 description 3
- 230000012447 hatching Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 238000012887 quadratic function Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Abstract
Description
本発明は、文字認識装置及び方法、文字認識プログラムに係り、特に、複数の棄却値を組み合わせた棄却判定方式を有する光学的文字認識装置及び方法、文字認識プログラムに関する。また、本実施例は、文字認識の技術のうちでも、特に、棄却の技術に関する。
The present invention relates to a character recognition device and method, and a character recognition program, and more particularly, to an optical character recognition device and method and a character recognition program having a rejection determination method in which a plurality of rejection values are combined. In addition, the present embodiment relates to a rejection technique among character recognition techniques.
本技術分野は、光学的文字認識(OCR: Optical Character Recognition)装置に関する。OCR装置は、紙文書をスキャナ等によって読取り、画像中の文字や記号を認識することによって、Unicode等にコード化することで、電子化する。OCR装置は、一般企業、自治体、金融機関、医療機関、教育機関などにおいて、会計伝票、納付済通知書、給与報告書、注文書、総振り、診療報酬明細書、解答用紙、などの電子化に用いられる。また、一般ユーザ向けには、携帯電話による文字認識、メモ等の一般文書中の文字認識などで用いられる。
OCR装置による文書電子化の処理の流れを簡略化して説明する。
図6は、文字認識装置による文書電子化の流れを説明するための図である。まず、スキャナ等による文書の画像化、二値化やノイズ処理等の前処理となる。これにより、例えば、図6の参照番号601のような二値の文書画像が得られる。次に、OCR装置による、図表の位置や文書の段落構造等のレイアウト解析と文字列抽出によって、文字列画像が、例えば、図6の参照番号602のように得られる。その後、OCR装置は、文字列画像から文字切出によって文字単位の画像を切出し、その後、個々の画像中の文字を認識する。文書の画像化から文字列抽出までの処理は、例えば、特許文献1、特許文献2に記載されている。また、文字列画像から個々の文字を認識するまでの処理は、例えば、特許文献3、非特許文献1、非特許文献2に記載されている。
The technical field relates to an optical character recognition (OCR) apparatus. The OCR device reads a paper document with a scanner or the like, recognizes characters or symbols in the image, and encodes them into Unicode or the like, thereby digitizing them. OCR devices are digitized such as accounting slips, paid notices, salary reports, order forms, general payments, medical remuneration statements, answer sheets, etc. in general companies, local governments, financial institutions, medical institutions, educational institutions, etc. Used for. For general users, it is used for character recognition by a mobile phone, character recognition in a general document such as a memo, and the like.
A flow of document digitization processing by the OCR apparatus will be described in a simplified manner.
FIG. 6 is a diagram for explaining the flow of document digitization by the character recognition device. First, preprocessing such as imaging, binarization, and noise processing of a document by a scanner or the like is performed. Thereby, for example, a binary document image such as
本技術は、個々の文字画像の認識技術に関する。以下では、個々の文字画像中に描かれている文字を認識する技術に関して簡単に説明する。
まず、文字画像をベクトル値に変換する特徴抽出処理を行う。ベクトル値の次元数をNとすると、特徴抽出処理によって、1つの文字画像はN次元ベクトルとして表現される。同じ字種の文字画像から抽出されるN次元ベクトルは、N次元空間上の近い位置に分布する。
図9は、その様子を模式図により示したものである。丸、三角、四角がそれぞれ、文字種A,文字種B、文字種Cに対応する各文字画像から抽出されたベクトル値を表している。
次に予め作成しておいた文字識別用辞書を参照し、文字画像から抽出されたベクトル値に基づいて、文字画像中に描かれている文字を識別する。
ここで、まず、文字識別辞書について説明しておく。文字識別用辞書には、例えば、各識別対象文字種kに対して、N次元ベクトルを引数にとり、実数値を値にとる識別関数fk(x)が保存されている。識別関数fk(x)は、文字種kが描かれている文字画像から生成されるN次元ベクトルxに対しては大きい値を、その他の字種が描かれている文字画像から生成されるN次元ベクトルxに対しては小さい値をとるように、予め、学習によって生成しておく。識別関数fk(x)の値は、ベクトルxの字種kに対する類似度、尤度などと呼ばれる。例えば、数字を対象とした認識の場合には、0〜9の10字種に対応して、10個の識別関数f0(x)、f1(x)、…、f9(x)が存在する。
文字の識別では、文字画像から抽出したN次元ベクトルxを用いて、各字種の識別関数fk(x)の値を計算する。識別関数fk(x)の値は、字種kに対する類似度であるため、fk(x)の値が最も大きい字種kが認識結果の第一位候補となる。同じように、二番目に値が大きい識別関数に対する字種kが認識結果の第二候補となる。このようにして第n候補まで認識結果が得られる。
The present technology relates to a technology for recognizing individual character images. Hereinafter, a technique for recognizing characters drawn in individual character images will be briefly described.
First, feature extraction processing for converting a character image into a vector value is performed. If the number of dimensions of the vector value is N, one character image is expressed as an N-dimensional vector by the feature extraction process. N-dimensional vectors extracted from character images of the same character type are distributed at close positions in the N-dimensional space.
FIG. 9 is a schematic diagram showing the situation. Circles, triangles, and squares represent vector values extracted from character images corresponding to character type A, character type B, and character type C, respectively.
Next, with reference to a character identification dictionary created in advance, a character drawn in the character image is identified based on a vector value extracted from the character image.
Here, first, the character identification dictionary will be described. The character identification dictionary stores, for example, an identification function fk (x) that takes an N-dimensional vector as an argument and takes a real value as a value for each character type k to be identified. The identification function fk (x) has a large value for an N-dimensional vector x generated from a character image in which the character type k is drawn, and an N-dimensional value generated from a character image in which other character types are drawn. The vector x is generated by learning in advance so as to take a small value. The value of the discriminant function fk (x) is called the similarity, likelihood, etc., of the vector x to the character type k. For example, in the case of recognition for numbers, there are ten identification functions f0 (x), f1 (x),..., F9 (x) corresponding to 10 character types of 0-9.
In character identification, the value of the identification function fk (x) of each character type is calculated using the N-dimensional vector x extracted from the character image. Since the value of the discriminant function fk (x) is the similarity to the character type k, the character type k having the largest value of fk (x) is the first candidate for the recognition result. Similarly, the character type k for the discriminant function having the second largest value is the second candidate for the recognition result. In this way, recognition results are obtained up to the nth candidate.
図7は、文字識別の結果を説明するための図である。例えば、図6の文字切出(参照番号603)によって切出した文字画像の認識は、図7のようになる。以上により、図6の参照番号604のように認識結果が得られ、計算機が扱える文字コードなどのコードに変換される。
上記で説明した文字識別は、文字画像と各認識対象字種の類似度を計算し、それに基づいて、候補文字を得る処理である。OCR装置の有用性を高めるためには、この文字識別の精度が重要である。しかし、認識結果が疑わしい場合には、それを知らせる認識結果の棄却処理も重要である。
図12は、非文字と曖昧文字の例を示すための図である。棄却の対象となるものには、たとえば、図12の文字例1201に示すような非文字や文字例1202に示すような曖昧文字がある。非文字は、たとえば、文字切出のミスによる文字の一部や複数文字が合わさった画像、汚れなどの外乱要因が混入したものなどがある。曖昧文字は、たとえば、文字例1202の左端の画像のように7と9の区別がつかないものなどがある。
棄却処理が精緻であれば、いくつかの利点がある。ひとつは、もし、誤って文字を認識したまま結果が保存されると、誤ったままにするか、これを修正するためには、全認識結果を人手によって再チェックしなければならない。これに対して、認識結果が疑わしい場合に、これをユーザに知らせることができれば、ユーザはその部分のみ修正すればよい。また、棄却を精度良く行うことができれば、その要因として、前処理、文字行抽出、文字切出など、前の処理に失敗している可能性があると判断して、前のいずれかの処理から処理方法や処理条件などを変えて、再度、処理を試すことができる。これにより、認識精度を高めることができる。
FIG. 7 is a diagram for explaining the result of character identification. For example, the recognition of the character image cut out by the character cutout (reference number 603) in FIG. 6 is as shown in FIG. As described above, a recognition result is obtained as indicated by
The character identification described above is a process of calculating a similarity between a character image and each recognition target character type, and obtaining a candidate character based on the calculated similarity. In order to increase the usefulness of the OCR device, the accuracy of this character identification is important. However, if the recognition result is suspicious, it is also important to reject the recognition result to inform it.
FIG. 12 is a diagram for illustrating examples of non-characters and ambiguous characters. Examples of objects to be rejected include non-characters as shown in a character example 1201 in FIG. 12 and ambiguous characters as shown in a character example 1202. Non-characters include, for example, a part of characters due to a mistake in character extraction, an image in which a plurality of characters are combined, or a mixture of disturbance factors such as dirt. An ambiguous character is, for example, a character that cannot be distinguished from 7 and 9 as in the leftmost image of the character example 1202.
If the rejection process is elaborate, there are several advantages. One is that if the result is saved with erroneously recognized characters, the entire recognized result must be manually rechecked to remain incorrect or to correct this. On the other hand, if the recognition result is suspicious and can be notified to the user, the user only has to correct that portion. Also, if the rejection can be performed with high accuracy, it is determined that there is a possibility that the previous processing may have failed, such as preprocessing, character line extraction, character extraction, etc. You can try the process again by changing the processing method and processing conditions. Thereby, recognition accuracy can be raised.
以下では、正しく文字画像中の文字を認識する率を正読率、誤って認識する率を誤読率、認識結果を棄却する率を棄却率とよぶことにする。正読率、誤読率、棄却率の和は1となる。一般に、棄却を強くしすぎると、誤読していたものを棄却するようになるだけでなく、正しく読めていたもののうちいくつかは棄却してしまうため、正読率、誤読率ともに低くなる。そのため、棄却は、正読率をなるべく落とさないように、かつ、誤読率を減少させることが望ましい。
棄却の方法について説明する。入力画像から抽出されたN次元ベクトルをxとする。また、第一位候補文字k1に対応する識別関数をfk1とする。このとき、fk1(x)は文字種k1に対する類似度である。r1(x)=−fk1(x)とおくと、r1(x)は、文字種k1に対する非類似度とみなすことができる。そのため、閾値h1をあらかじめ定めておき、r1(x)>h1のとき、非類似度が高い(類似度が低い)として棄却の判断をする。これは、入力画像が非文字であったとき、第一位候補の文字に対しても類似度が低いことが想定されるため、非文字の棄却を想定したものである。
さらに、第二位候補文字k2に対応する識別関数をfk2とする。このとき、fk2(x)は文字種k2に対する類似度である。また、fk1(x)≧fk2(x)となる。r2(x)=fk2(x)−fk1(x)とおくと、このr2(x)の値が大きいほど、fk1(x)とfk2(x)の値が近いことになる。このとき、第一位候補文字と第二位候補文字の間で識別が曖昧であることを示している。そのため、閾値h2をあらかじめ定めておき、r2(x)>h2のとき、識別結果が曖昧であるとして棄却する。
図13は、棄却対象となる画像の例を示すための図である。
ほかにも、特許文献4では、図13の文字例1301のような文字のかすれ度合いr3(x)や、文字例1302のような文字のつぶれ度合いr4(x)を算出して、それを基に棄却判定を行う方法が記載されている。あらかじめ閾値h3を定めておいて、r3(x)>h3となったときには、かすれが大きいため棄却する。また、あらかじめ閾値h4を定めておいて、r4(x)>h4となったときには、つぶれが大きいため棄却する。
Hereinafter, the rate of correctly recognizing characters in a character image is referred to as a correct reading rate, the rate of erroneously recognizing is referred to as a misreading rate, and the rate of rejecting recognition results is referred to as a rejection rate. The sum of the correct reading rate, the misreading rate, and the rejection rate is 1. In general, if the rejection is made too strong, not only the misreads are rejected, but also some of the correct readings are rejected, so both the correct reading rate and the misreading rate are lowered. For this reason, it is desirable that the rejection does not decrease the correct reading rate as much as possible and reduces the misreading rate.
The method of rejection will be explained. Let an N-dimensional vector extracted from the input image be x. Also, the identification function corresponding to the first candidate character k1 is assumed to be fk1. At this time, fk1 (x) is the similarity to the character type k1. If r1 (x) = − fk1 (x), r1 (x) can be regarded as a dissimilarity with respect to the character type k1. Therefore, the threshold value h1 is set in advance, and when r1 (x)> h1, it is determined that the dissimilarity is high (similarity is low) and the rejection is determined. In this case, when the input image is non-character, it is assumed that the degree of similarity is low even for the first candidate character, and therefore non-character rejection is assumed.
Further, the discriminant function corresponding to the second candidate character k2 is assumed to be fk2. At this time, fk2 (x) is the similarity to the character type k2. Further, fk1 (x) ≧ fk2 (x). When r2 (x) = fk2 (x) −fk1 (x), the larger the value of r2 (x), the closer the values of fk1 (x) and fk2 (x) are. At this time, the identification is ambiguous between the first candidate character and the second candidate character. Therefore, the threshold value h2 is set in advance, and when r2 (x)> h2, the identification result is rejected as ambiguous.
FIG. 13 is a diagram for illustrating an example of an image to be rejected.
In addition, in
文字を棄却するための指標には、上記の非文字度(非類似度)r1、曖昧度r2、かすれ度r3、つぶれ度r4のように様々な指標が考えられる。しかし、これらの指標の組み合わせ方は明らかでない。従来技術では、いずれかの基準により棄却されたものを棄却とするなど単純な方法をとるか、人手で試行錯誤しながら複数の指標を組み合わせる、などの方法がとられる。
前者の単純な方法では、すべての棄却指標を算出する必要があるため、計算コストがかかる。その上、いずれかの棄却指標で閾値を超えた場合に棄却されるため、一般に棄却が強すぎて正読率が低下する場合が想定され、高い正読率且つ低い誤読率を達成するという棄却の目的からしても、必ずしも適しているとは限らない。また、後者の人手での試行錯誤は、この指標の数が多くなると、相当コストのかかる方法であり、実現が困難である場合が想定される。
本発明は、以上の点に鑑み、高正読率、低誤読率、高速な棄却方法を低い人的コストで提供することを目的とする。
Various indices such as the non-character degree (dissimilarity) r1, the ambiguity r2, the faint degree r3, and the collapse degree r4 can be considered as indices for rejecting characters. However, how to combine these indicators is not clear. In the prior art, a simple method such as rejecting those rejected according to any of the criteria, or a method of combining a plurality of indicators by trial and error manually is employed.
In the former simple method, since it is necessary to calculate all the rejection indexes, the calculation cost is high. In addition, since it is rejected when any of the rejection indicators exceeds the threshold, it is generally assumed that the rejection is too strong and the correct reading rate is lowered, so that a high correct reading rate and a low misreading rate are achieved. Even for this purpose, it is not always suitable. Further, the latter manual trial and error is a method that requires a considerable amount of cost when the number of indicators increases, and it may be difficult to implement.
In view of the above, an object of the present invention is to provide a high correct reading rate, a low misreading rate, and a high-speed rejection method at a low human cost.
本発明の第1の解決手段によると、
入力画像から識別された文字の認識結果に対して、予め設定された棄却関数により棄却値を算出する複数の棄却値算出部と、
複数の前記棄却値算出部のいずれかひとつ又はいずれか複数により算出されたひとつ又は複数の棄却値に基づき、それぞれ、前記認識結果を棄却するかどうか判定するひとつ又は複数の棄却判定部と、
を備え、
複数の前記棄却値算出部の相関性に基づいて組み合わせた複数の前記棄却値算出部を用いて、前記棄却判定部が、複数の棄却値に基づき前記認識結果の棄却判定をして、棄却すると判定された前記認識結果を棄却することにより、棄却すると判定されない前記認識結果を記憶部に保存又は表示部に表示させることを特徴とする文字認識装置が提供される。
According to the first solution of the present invention,
A plurality of rejection value calculation units for calculating a rejection value by a preset rejection function for the recognition result of the character identified from the input image;
One or more rejection determination units for determining whether or not to reject the recognition result based on one or more rejection values calculated by any one or more of the plurality of rejection value calculation units, respectively,
With
Using the plurality of rejection value calculation units combined based on the correlation of the plurality of rejection value calculation units, the rejection determination unit makes a rejection determination of the recognition result based on a plurality of rejection values, and rejects By rejecting the determined recognition result, a character recognition device is provided, wherein the recognition result that is not determined to be rejected is stored in a storage unit or displayed on a display unit.
本発明の第2の解決手段によると、
文字認識方法であって、
入力画像から識別された文字の認識結果に対して、予め設定された棄却関数により棄却値を算出する複数の棄却値算出部を用い、
複数の前記棄却値算出部のいずれかひとつ又はいずれか複数により算出されたひとつ又は複数の棄却値に基づき、それぞれ、前記認識結果を棄却するかどうか判定するひとつ又は複数の棄却判定部を用い、
複数の前記棄却値算出部の相関性に基づいて組み合わせた複数の前記棄却値算出部を用いて、前記棄却判定部が、複数の棄却値に基づき前記認識結果の棄却判定をして、棄却すると判定された前記認識結果を棄却することにより、棄却すると判定されない前記認識結果を記憶部に保存又は表示部に表示させることを特徴とする文字認識方法が提供される。
According to the second solution of the present invention,
A character recognition method,
For a recognition result of characters identified from the input image, using a plurality of rejection value calculation units for calculating a rejection value by a preset rejection function,
Based on one or more rejection values calculated by any one or more of the plurality of rejection value calculation units, respectively, using one or more rejection determination units to determine whether to reject the recognition result,
Using the plurality of rejection value calculation units combined based on the correlation of the plurality of rejection value calculation units, the rejection determination unit makes a rejection determination of the recognition result based on a plurality of rejection values, and rejects By rejecting the determined recognition result, a character recognition method is provided, wherein the recognition result that is not determined to be rejected is stored in a storage unit or displayed on a display unit.
本発明の第3の解決手段によると、
文字認識プログラムであって、
処理部が、複数の棄却値算出部を用い、入力画像から識別された文字の認識結果に対して、予め設定された棄却関数により棄却値を算出する機能と、
処理部が、ひとつ又は複数の棄却判定部を用い、複数の前記棄却値算出部のいずれかひとつ又はいずれか複数により算出されたひとつ又は複数の棄却値に基づき、それぞれ、前記認識結果を棄却するかどうか判定する機能と、
処理部が、複数の前記棄却値算出部の相関性に基づいて組み合わせた複数の前記棄却値算出部を用いて、前記棄却判定部が、複数の棄却値に基づき前記認識結果の棄却判定をして、棄却すると判定された前記認識結果を棄却することにより、棄却すると判定されない前記認識結果を記憶部に保存又は表示部に表示させる機能と
をコンピュータに実行させるための文字認識プログラム。
According to the third solution of the present invention,
A character recognition program,
The processing unit uses a plurality of rejection value calculation units, a function of calculating a rejection value by a preset rejection function for the recognition result of the character identified from the input image,
The processing unit rejects the recognition result based on one or a plurality of rejection values calculated by any one or a plurality of the rejection value calculation units using one or a plurality of rejection determination units. A function to determine whether or not
The processing unit uses the plurality of rejection value calculation units combined based on the correlation of the plurality of rejection value calculation units, and the rejection determination unit performs rejection determination of the recognition result based on the plurality of rejection values. A character recognition program for causing a computer to execute a function of storing the recognition result that is not determined to be rejected in a storage unit or displaying it on a display unit by rejecting the recognition result determined to be rejected.
本実施例によると、高正読率、低誤読率、高速な棄却方法を低い人的コストで提供することができる。
According to the present embodiment, a high correct reading rate, a low misreading rate, and a high-speed rejection method can be provided at a low human cost.
以下、実施例を図面を用いて説明する。
1.概要
本実施形態では、その一例を挙げるならば、
文字認識装置は、
文書を光学的に走査することによって文書画像を取得する文書画像化部と、
前記入力画像からノイズや背景を除去し、二値化して二値画像を生成する手段を有する前処理部と、
前記二値画像の文書構造、図表構造を解析する手段を有するレイアウト解析部と、
前記二値画像から文字列単位の画像を抽出する手段を有する文字列抽出部と、
前記抽出された文字列画像の各々から文字単位の画像を切出す手段を有する文字切出部と、
文字切出部で切りだされた各文字単位の画像中の文字を認識する手段を有する文字識別部と、
複数の棄却値算出手段を備え、棄却能力が高い棄却値算出手段ほど、先に配置し、先の棄却値算出手段によって算出された棄却値に基づいて棄却と判定された場合には、後の棄却値算出処理を省略することで、前記認識結果を棄却するかどうか判定する手段を有する棄却判定部と、
前記認識結果と棄却判定結果に基づいて、前記各文字列画像の認識結果を選定する手段を有する認識結果選定部と、
前記認識結果に基づいて、認識の再処理を行うかどうか判断する手段を有するリトライ判定部と、
認識結果を保存したり表示装置に出力するなどの処理を行う手段を有する認識後処理部と、
を有する。
本実施形態の文字認識装置は、棄却判定部において、棄却能力の強度と棄却値算出コストに基づく棄却効率が高いほど先に配置し、先の棄却値算出手段によって算出された棄却値に基づいて棄却と判定された場合には、後の棄却値算出処理を省略することで、前記認識結果を棄却するかどうか判定することを特徴としていても良い。
本実施形態の文字認識装置は、
上述の棄却判定部において、並列に配置した複数の棄却値算出手段の各々の棄却値に基づいて、新たな棄却値を生成し、その棄却値に基づいて棄却判定を行うことを特徴としていてもよい。
本実施形態の文字認識装置は、
上述の棄却判定部において、複数の棄却値の独立性を判定する手段を有し、独立性の高い棄却値算出手段を直列に処理することを特徴としていてもよい。
本実施形態の文字認識装置は、
上述の棄却判定部において、複数の棄却値の独立性を判定する手段を有し、独立性の低い棄却値算出手段を並列に処理することを特徴としていてもよい。
本実施形態の文字認識装置は、上述の棄却判定部において、複数の棄却値の独立性を判定する手段を有し、前記独立性を判断する手段として、前記棄却値による棄却画像データベースと正読画像データベースを識別する関数を、識別誤差に基づくコスト関数により学習し、前記関数による識別誤差と、棄却値を直列に構成した場合の識別誤差を比較し、両者の誤差の差が予め定めておいた閾値以上であった場合に、独立性が低いと判定し、それ以外の場合に独立性が高いと判定することを特徴としていてもよい。
Hereinafter, examples will be described with reference to the drawings.
1. Overview
In this embodiment, if an example is given,
The character recognition device
A document imaging unit for obtaining a document image by optically scanning the document;
A pre-processing unit having means for removing noise and background from the input image and binarizing to generate a binary image;
A layout analysis unit having means for analyzing the document structure and chart structure of the binary image;
A character string extraction unit having means for extracting an image of a character string unit from the binary image;
A character cutout unit having means for cutting out character-by-character images from each of the extracted character string images;
A character identification unit having means for recognizing characters in the image of each character unit cut out by the character cutout unit;
If a rejection value calculation means having a plurality of rejection value calculation means and having a high rejection capability is arranged earlier and is determined to be rejection based on the rejection value calculated by the previous rejection value calculation means, A rejection determination unit having means for determining whether or not to reject the recognition result by omitting the rejection value calculation process;
A recognition result selection unit having means for selecting a recognition result of each character string image based on the recognition result and the rejection determination result;
A retry determination unit having means for determining whether to perform reprocessing of recognition based on the recognition result;
A post-recognition processing unit having means for storing a recognition result and outputting the result to a display device;
Have
In the character recognition device of this embodiment, in the rejection determination unit, the higher the rejection efficiency based on the strength of the rejection ability and the rejection value calculation cost, the higher the rejection efficiency, and based on the rejection value calculated by the previous rejection value calculation means When it is determined as rejection, it may be characterized by determining whether or not to reject the recognition result by omitting a subsequent rejection value calculation process.
The character recognition device of this embodiment is
In the above-described rejection determination unit, a new rejection value is generated based on each of the rejection values of the plurality of rejection value calculation means arranged in parallel, and the rejection determination is performed based on the rejection value. Good.
The character recognition device of this embodiment is
The above-described rejection determination unit may include means for determining independence of a plurality of rejection values, and the rejection value calculation means having high independence may be processed in series.
The character recognition device of this embodiment is
The rejection determination unit described above may include means for determining the independence of a plurality of rejection values, and the rejection value calculation means having low independence may be processed in parallel.
The character recognition device of the present embodiment has means for determining the independence of a plurality of rejection values in the rejection determination unit described above, and as a means for determining the independence, the rejection image database based on the rejection values and the correct reading A function for identifying the image database is learned by a cost function based on the identification error, and the identification error by the function is compared with the identification error when the rejection value is configured in series, and the difference between the two is determined in advance. It may be characterized that it is determined that the independence is low when the threshold is equal to or greater than the threshold value, and that the independence is high in other cases.
2.実施形態
2. Embodiment
棄却方法を備える文字認識装置の実施例について、図表を参照しながら説明する。本実施例の文字認識装置は、入力文書画像中の文字を検知、認識し、文字をコード化することよって、入力文書を電子化する装置である。入力文書には、一般文書の他に、例えば、帳票、明細書などがある。
図2は、本実施例の文字認識装置の一例を示す構成図である。
本実施例の文字認識装置201は、例えば、押印認識および帳票認識を行うものであり、入力装置202、表示装置203、イメージ取得装置204、通信装置205、演算装置(CPU)206、外部記憶装置207を備える。外部記憶装置207は、正読画像データベース211及び棄却画像データベース212を含む。
入力装置202は、コマンド等を入力するためのキーボードやマウス等である。入力装置202は、演算装置(CPU)206で実行されるプログラムの制御や、その他、接続機器の制御のために実行されるコマンド等を入力するための装置である。
表示装置203は、処理内容を適宜表示するディスプレイ等の装置である。
イメージ取得装置204は、スキャナなどのイメージ取得用の装置である。取得したイメージは、外部記憶装置等に記憶してもよい。
通信装置205は、PCやサーバ等の外部機器からのデータのやりとりを行うために用いる。通信装置205は、外部機器からのユーザによる実行コマンドの取得や、画像やテキストなどの情報の外部機器からの取得等の目的に用いられる。また、通信装置205は、押印認識および帳票認識装置201での処理内容を外部機器に送信する等の目的にも用いられる。
演算装置(CPU)206は、文書画像中の文字認識に用いる認識用辞書の生成などの処理を実行する演算装置である。
外部記憶装置207は、HDD,メモリ等の外部記憶装置である。外部記憶装置207には、帳票画像、押印画像、押印認識用辞書などの各種データが保存されている。また、外部記憶装置には、演算装置(CPU)206によって実行される処理の途中で生成されるデータ等を一時的に記憶しておくためにも用いられる。
入力装置202、表示装置203、イメージ取得装置204、通信装置205はなくてもよい。入力装置202が無い場合には、処理の開始は、通信装置205を用いて外部機器から指示するか、または、時刻指定等により自動的に行う。表示装置203が無い場合には、処理結果は通信装置205を用いて外部機器に送信するか、外部記憶装置207に記憶しておく。
処理を実行するモジュールの出力と入力は、外部記憶装置207を介して行ってもよい。すなわち、処理部1が、処理結果を処理部2に出力し、処理部2は、その処理結果を入力として受け取る場合、実際には、処理部1が処理結果を外部記憶装置207に出力し記憶しておき、処理部2では、外部記憶装置207に記憶されている処理部1の出力結果を入力として取得してもよい。
An embodiment of a character recognition device having a rejection method will be described with reference to a diagram. The character recognition apparatus according to the present embodiment is an apparatus that digitizes an input document by detecting and recognizing characters in an input document image and encoding the characters. In addition to general documents, input documents include, for example, forms and specifications.
FIG. 2 is a configuration diagram illustrating an example of a character recognition apparatus according to the present embodiment.
A
The
The
The
The
An arithmetic unit (CPU) 206 is an arithmetic unit that executes processing such as generation of a recognition dictionary used for character recognition in a document image.
The
The
The output and input of the module that executes processing may be performed via the
次に、本実施例における文字認識装置201によって実施される処理の説明に移る。
以下では、まず、本発明の関連技術による文字認識装置の処理を図5を用いて説明する。なお、その後、本実施例の処理を図1を用いて説明する。
まず、本発明の関連技術による文字認識装置の処理について説明する。
図5に、文字認識装置による文書電子化の流れの典型的な例を示す。
文書の画像化(スキャン)101では、文字認識装置201のCPU206は、スキャナ等により文書を読込み、画像化する。このときに、背景印刷がカラーで印字されている場合などは、CPU206は、特定の色の印字を光学的に除去するカラードロップアウト等の処理を行う場合もある。入力文書は、一般文書、帳票類、また、初めから文字認識装置で処理する目的で作成されているマークシート用紙等がある。
前処理102では、CPU206は、文書画像のカラー画像の二値化(白黒化)やノイズ除去、背景印刷などの不要部分の除去等の処理を行う。前処理後の二値画像は、例えば、図6の帳票画像601のようになる。
レイアウト解析103で、CPU206は、二値画像のレイアウト解析を行い、図表の位置、段落構造、項目とデータの位置などを認識する。項目とデータの位置については、CPU206は、例えば、図6の参照番号602の場合には、表構造の関係から参照番号602の欄の上にある支払金額が項目名で、その下の7,890,123が記載されている枠がデータ枠である、などと解析する。論文や技術報告書の場合などには、文書の構造と位置関係から、タイトル、著者、要旨、ページ番号などが書かれている位置を認識するなどのメタデータ抽出を行う場合もある。
文字列抽出104では、CPU206は、文書画像中から文字列単位の画像を抽出する。CPU206は、一般文書の場合には1行分の画像、表の場合には枠内の画像、など文字列単位の画像を抽出する。例えば、図6の参照番号602のように、表の枠内の画像を抽出する。
文字切出105、文字認識503、認識結果選定114、の一連の処理では、抽出した各文字列画像中の文字を認識する。ここでの処理は、図6の参照番号603のように、文字列画像を文字単位に分割して、各々の文字画像中の文字を認識することにより、最終的に参照番号604のように文字コード等の計算機が扱えるコードに変換する。
上記の文字列抽出104から後の、文字切出105から認識結果選定114までの処理を、例を挙げて説明する。
Next, a description will be given of processing performed by the
Below, the process of the character recognition apparatus by the related technique of this invention is demonstrated using FIG. Thereafter, the processing of this embodiment will be described with reference to FIG.
First, processing of the character recognition device according to the related art of the present invention will be described.
FIG. 5 shows a typical example of the flow of document digitization by the character recognition device.
In document imaging (scanning) 101, the
In the pre-processing 102, the
In the
In the
In a series of processes of
The processing from the
図10は、文字切出処理を説明するための図である。
まず、文字切出105について説明する。例えば、文字列抽出によって、図10の画像1001のような文字列画像が得られたとする。まず、文字切出105の処理では、CPU206は、文字線同士が交差する点や、文字線が途切れた点などを基に、切断候補点を作成する。図10の画像1002が、切断候補点による分割を示す。この例では、4つの画像に分割されている。この各分割画像と、隣接した複数個の画像の合成が、文字画像候補となる。図10の画像1003の例では、左から1つ目と2つ目の画像、左から2つ目と3つ目の画像も、それぞれ文字画像候補として、6つの文字画像候補を得ている。左端の点から右端の点に左から右に至る各ルートが、文字列1001の切出し候補となる。
図7は、文字識別の結果を説明するための図である。
次に、文字認識503では、CPU206は、候補となっている個々の文字画像中の文字を認識する。ここでは、例えば、図7のように各文字画像に対する正解候補文字(1位候補文字種)と、その正解候補文字に対する類似度(尤度、信頼度)を得る。
次に、CPU206は、文字認識503で得た正解候補文字と類似度を基に、認識結果の候補となるネットワークを図11の参照番号1101のように作成する。画像を除いたものが、参照番号1102である。左端の点から右端の点に左から右に至る各ルートが認識結果候補となる。また、ここでは、CPU206は、文字画像の認識結果の信頼性が低いと判断した場合、棄却処理を行い、認識結果に対して棄却フラグを立てるなどして、認識結果の信頼性が低いことを後の処理、またはユーザに知らせる。
この文字認識503の内部の処理について説明する。ここでは、CPU206は、個々の文字画像中に描かれている文字を認識する。また、認識結果の棄却処理も行う。
まず、文字識別106について説明する。ここでは、まず、CPU206は、文字画像をベクトル値に変換する特徴抽出処理を行う。ベクトル値の次元数をNとすると、特徴抽出処理によって、1つの文字画像はN次元ベクトルとして表現される。文字画像をベクトル値として表現することにより、文字画像の分布を統計的に扱うことが可能となる。
FIG. 10 is a diagram for explaining the character cutting process.
First, the
FIG. 7 is a diagram for explaining the result of character identification.
Next, in character recognition 503, the
Next, the
The internal processing of this character recognition 503 will be described. Here, the
First, the
図14は、特徴抽出の処理の例を示すための図である。
特徴抽出について、図14を用いて説明する。まず、CPU206は、文字画像の正規化を行う。一般に入力文字画像は、サイズが異なる。そのため、正規化では、文字画像のサイズを揃えることによって、後の処理で統一的に扱えるようにする。また、入力文字画像は、筆記具、筆記者、フォントなどの違いによって同じ字種の文字であっても字形が大きくことなる場合がある。このことは、認識精度低下の原因となる。そこで、正規化処理では、入力文字画像のサイズの変形と字形の変形によって、サイズの統一や同一字種間での字形のばらつきを低減する。図14の画像1401が入力文字画像の例で、画像1402は64×64のサイズに変形した画像である。正規化処理に関しては、様々な方法があり、例えば、非特許文献1に詳しく記載されている。
次に、正規化により生成された正規化画像をベクトル値に変換する特徴抽出を行う。特徴抽出にも様々な方法があり、例えば、非特許文献1に詳しく記載されている。ここでは、最も簡単な画素特徴抽出の例を用いて説明する。画素特徴抽出では、正規化画像を小領域に分割する。図14の例では、正規化画像1402を64個の小領域に分割している。分割の様子を画像1403に示した。次に、各小領域の黒画素の個数を要素とするベクトル値に変換する。小領域が64個あるため、画像1404のように64次元のベクトル値が生成される。
広く用いられている特徴抽出の方法のもう一つ例として、勾配特徴抽出方法について説明する。
FIG. 14 is a diagram illustrating an example of feature extraction processing.
Feature extraction will be described with reference to FIG. First, the
Next, feature extraction is performed to convert the normalized image generated by normalization into a vector value. There are various methods for feature extraction, which are described in detail in
As another example of a widely used feature extraction method, a gradient feature extraction method will be described.
図19及び図20は、勾配特徴抽出方法についての説明図(1)及び(2)である。
ここでは、正規化により生成される正規化画像には、1画素分の白縁をつけているとする。また、画素点(i、j)の正規化画像の画素値をf(i、j)とおく。このとき、CPU206は、正規化画像の各画素点(i、j)において、勾配ベクトルg=(gx、gy)を以下のように計算する。これは、図19に示すフィルタをかけることに相当する。
gx(i、j)={f(i+1、j+1)+2f(i、j+1)+f(i−1、j+1)−f(i+1、j−1)−2f(i、j−1)−f(i−1、j−1)}/8
gy(i、j)={f(i+1、j+1)+2f(i+1、j)+f(i+1、j−1)−f(i−1、j+1)−2f(i−1、j)−f(i−1、j−1)}/8
ただし、上記の式において、画素点(i、j)が画像の縁にある場合には、その周囲の画素点が画像の領域外となる場合がある。そのときは、画像外の領域におけるfの値は0と考えて、上記の式を計算する。これによって、各画素点(i、j)において、画素値の勾配ベクトルg=(gx、gy)が得られる。
次に、CPU206は、ベクトルg(i、j)を図20の参照番号2001に示す45度間隔の8方向g0(i、j)、g1(i、j)、…、g7(i、j)に分解する。分解は、g(i、j)の方向に近接する2つの方向に分解する。但し、g(i、j)の方向が8方向のいずれかに完全に一致する場合には、分解の必要はなく、仮に方向0に一致した場合には、g0(i、j)=ベクトルg(i、j)の長さ、とし、他の方向については、g1(i、j)=…=g7(i、j)=0とおく。図20の参照番号2002の図によって、分解の方法を説明する。CPU206は、g(i、j)が参照番号2002に示すように、方向0と方向1の間に存在する場合、ベクトルg(i、j)を方向0と方向1の成分に分解する。このとき、方向0の成分の長さをp0、方向1の成分の長さをp1とすると、g0(i、j)=p0、g1(i、j)=p1、p2(i、j)=…=p7(i、j)=0とする。
以上のようにして、8つの方向画像g0(i、j)、…、g7(i、j)が生成される。文字の変形に対する頑健性を高めるために、この画像にガウスフィルタによるぼかしを施す場合もある。その場合には、ぼかしをかけた方向画像をあたらめて、g0(i、j)、…、g7(i、j)とおく。次に、CPU206は、各方向画像gi(x、y)を小領域に分割し、各小領域の画素値の合計値を要素とするベクトルを生成する。いま、各方向画像を64の小領域に分割したとすると、各方向画像から64個の値が得られる。これが、各方向について得られるため、8方向で合計64×8=512個の値が得られる。これをベクトルの成分として、512次元のベクトルが生成される。
以上が、勾配特徴抽出方法の説明である。
19 and 20 are explanatory diagrams (1) and (2) for the gradient feature extraction method.
Here, it is assumed that the normalized image generated by normalization has a white edge for one pixel. Further, the pixel value of the normalized image at the pixel point (i, j) is set to f (i, j). At this time, the
gx (i, j) = {f (i + 1, j + 1) + 2f (i, j + 1) + f (i-1, j + 1) -f (i + 1, j-1) -2f (i, j-1) -f (i -1, j-1)} / 8
gy (i, j) = {f (i + 1, j + 1) + 2f (i + 1, j) + f (i + 1, j-1) -f (i-1, j + 1) -2f (i-1, j) -f (i -1, j-1)} / 8
However, in the above formula, when the pixel point (i, j) is at the edge of the image, the surrounding pixel points may be outside the image area. At that time, the value of f in the area outside the image is considered to be 0, and the above formula is calculated. As a result, a gradient vector g = (gx, gy) of pixel values is obtained at each pixel point (i, j).
Next, the
As described above, eight direction images g0 (i, j),..., G7 (i, j) are generated. In order to improve robustness against deformation of characters, the image may be blurred by a Gaussian filter. In this case, the blurred direction images are collected and set as g0 (i, j),..., G7 (i, j). Next, the
The above is the description of the gradient feature extraction method.
以上のようにして、CPU206は、文字画像をベクトル値に変換する。以下では、特徴抽出によって生成されるベクトル値の次元数をNとする。これによって、1つ1つの文字画像は、N次元空間上の点として表現され、同一文字種は近い領域に分布することになる。その様子を次の図9に模式的に示した。
図9は、文字識別用の方式を説明するための図である。丸、三角、四角がそれぞれ、文字種A,文字種B、文字種Cに対応する各文字画像から抽出されたN次元ベクトル点を表している。例えば、一つ一つの○は、文字種Aの異なる画像から抽出されたベクトルを表している。
As described above, the
FIG. 9 is a diagram for explaining a system for character identification. Circles, triangles, and squares represent N-dimensional vector points extracted from character images corresponding to character type A, character type B, and character type C, respectively. For example, each circle represents a vector extracted from images of different character types A.
次に、CPU206は、予め作成しておいた文字識別用辞書を参照し、文字画像から抽出されたベクトル値に基づいて、文字画像中に描かれている文字を識別する。
ここで、まず、文字識別辞書について説明しておく。文字識別用辞書には、例えば、各識別対象文字種kに対して、N次元ベクトルを引数にとり、実数値を値にとる識別関数fk(x)が保存されている。識別関数fk(x)は、文字種kが描かれている文字画像から生成されるN次元ベクトルxに対しては大きい値を、その他の字種が描かれている文字画像から生成されるN次元ベクトルxに対しては小さい値をとるように、予め、学習によって生成しておく。識別関数fk(x)の値は、ベクトルxの字種kに対する類似度、尤度などと呼ばれる。例えば、数字を対象とした認識の場合には、0〜9の10字種に対応して、10個の識別関数f0(x)、f1(x)、…、f9(x)が存在する。
CPU206は、この識別関数を、例えば、文字画像と文字ラベルから成る学習用文字画像データベースを用いて作成することができる。
図15は、学習用文字画像データベースの例を示すための図である。図示のように、文字ラベルは、文字画像中に描かれている文字を示すコード化されている正解ラベルである。学習用文字画像データベースは、例えば、指定の枠内に指定の文字を人に書いてもらうなどとして、文字画像を収集して作成することができる。CPU206は、この学習用文字画像データベースに含まれている各画像を上記と同様の方法によってN次元ベクトルに変換する。ここで、CPU206は、これらのN次元ベクトルと正解ラベルに基づいて、識別関数fk(x)を字種kに対応するN次元ベクトルに対しては大きな値を、それ以外の字種に対応するN次元ベクトルに対しては小さな値をとるように学習により生成する。識別関数の学習方法には、例えば、SVM(Support Vector Machine),ニューラルネットワーク、ガウスモデル、LVQ(Learning Vector Quantization)等の様々な方法を用いることができる。
文字の識別では、CPU206は、文字画像から抽出したN次元ベクトルxを用いて、各字種の識別関数fk(x)の値を計算する。識別関数fk(x)の値は、字種kに対する類似度であるため、fk(x)の値が最も大きい字種kが認識結果の第一位候補となる。同じように、二番目に値が大きい識別関数に対する字種kが認識結果の第二候補となる。このようにして第n候補まで認識結果が得られる。例えば、図6の文字切出603によって切出した文字画像の認識は、図7のようになる。以上により、図6の参照番号604のように認識結果が得られ、計算機が扱える文字コードなどのコードに変換される。
以上が文字識別106の説明である。
Next, the
Here, first, the character identification dictionary will be described. The character identification dictionary stores, for example, an identification function fk (x) that takes an N-dimensional vector as an argument and takes a real value as a value for each character type k to be identified. The identification function fk (x) has a large value for an N-dimensional vector x generated from a character image in which the character type k is drawn, and an N-dimensional value generated from a character image in which other character types are drawn. The vector x is generated by learning in advance so as to take a small value. The value of the discriminant function fk (x) is called the similarity, likelihood, etc., of the vector x to the character type k. For example, in the case of recognition for numbers, there are ten identification functions f0 (x), f1 (x),..., F9 (x) corresponding to 10 character types of 0-9.
The
FIG. 15 is a diagram illustrating an example of a learning character image database. As shown in the figure, the character label is a coded correct label indicating a character drawn in the character image. The learning character image database can be created by collecting character images, for example, by letting a person write a designated character in a designated frame. The
In character identification, the
The above is the description of the
上記で説明した文字識別は、文字画像と各認識対象字種の類似度を計算し、それに基づいて、候補文字を得る処理である。OCR装置の有用性を高めるためには、この文字識別の精度が重要である。しかし、認識結果が疑わしい場合には、それを知らせる認識結果の棄却処理も重要である。
図12は、非文字と曖昧文字の例を示すための図である。棄却の対象となるものには、たとえば、図12の参照番号1201に示すような非文字や参照番号1202に示すような曖昧文字がある。非文字は、たとえば、文字切出のミスによる文字の一部や複数文字が合わさった画像、汚れなどの外乱要因が混入したものなどがある。曖昧文字は、たとえば、参照番号1202の左端の画像のように7と9の区別がつかないものなどがある。
棄却処理が精緻であれば、いくつかの利点がある。ひとつは、もし、誤って文字を認識したまま結果が保存されると、誤ったままにするか、これを修正するためには、全認識結果を人手によって再チェックしなければならない。これに対して、認識結果が疑わしい場合に、これをユーザに知らせることができれば、ユーザはその部分のみ修正すればよい。また、棄却を精度良く行うことができれば、その要因として、前処理、文字行抽出、文字切出など、前の処理に失敗している可能性があると判断して、前のいずれかの処理から処理方法や処理条件などを変えて、再度、処理を試すことができる。これにより、認識精度を高めることができる。
以下では、正しく文字画像中の文字を認識する率を正読率、誤って認識する率を誤読率、認識結果を棄却する率を棄却率とよぶことにする。一般に、棄却を強くしすぎると、誤読していたものを棄却するようになるだけでなく、正しく読めていたもののうちいくつかは棄却してしまうため、正読率、誤読率ともに低くなる。そのため、棄却は、正読率をなるべく落とさないように、かつ、誤読率を減少させることが望ましい。
以下では棄却判定部の処理である非文字棄却501、曖昧文字棄却502について説明する。
非文字棄却501について説明する。入力文字画像から抽出されたN次元ベクトルをxとする。また、第一位候補文字k1に対応する識別関数をfk1とする。このとき、fk1(x)は文字種k1に対する類似度である。r1(x)=−fk1(x)とおくと、r1(x)は、文字種k1に対する非類似度とみなすことができる。そのため、CPU206は、閾値h1をあらかじめ定めておき、r1(x)>h1のとき、非類似度が高い(類似度が低い)として棄却の判断をする。これは、入力画像が非文字であったとき、第一位候補の文字に対しても類似度が低いことが想定されるため、非文字の棄却を想定したものである。
次に、曖昧文字棄却502について説明する。第二位候補文字k2に対応する識別関数をfk2とする。このとき、fk2(x)は文字種k2に対する類似度である。また、fk1(x)≧fk2(x)となる。r2(x)=fk2(x)−fk1(x)とおくと、このr2(x)の値が大きいほど、fk1(x)とfk2(x)の値が近いことになる。このとき、第一位候補文字と第二位候補文字の間で識別が曖昧であることを示している。そのため、CPU206は、閾値h2をあらかじめ定めておき、r2(x)>h2のとき、識別結果が曖昧であるとして棄却する。この処理は、非文字棄却501において、すでに棄却判定がされている場合には、スキップしてもよい。
The character identification described above is a process of calculating a similarity between a character image and each recognition target character type, and obtaining a candidate character based on the calculated similarity. In order to increase the usefulness of the OCR device, the accuracy of this character identification is important. However, if the recognition result is suspicious, it is also important to reject the recognition result to inform it.
FIG. 12 is a diagram for illustrating examples of non-characters and ambiguous characters. Examples of objects to be rejected include non-characters as indicated by
If the rejection process is elaborate, there are several advantages. One is that if the result is saved with erroneously recognized characters, the entire recognized result must be manually rechecked to remain incorrect or to correct this. On the other hand, if the recognition result is suspicious and can be notified to the user, the user only has to correct that portion. Also, if the rejection can be performed with high accuracy, it is determined that there is a possibility that the previous processing may have failed, such as preprocessing, character line extraction, character extraction, etc. You can try the process again by changing the processing method and processing conditions. Thereby, recognition accuracy can be raised.
Hereinafter, the rate of correctly recognizing characters in a character image is referred to as a correct reading rate, the rate of erroneously recognizing is referred to as a misreading rate, and the rate of rejecting recognition results is referred to as a rejection rate. In general, if the rejection is made too strong, not only the misreads are rejected, but also some of the correct readings are rejected, so both the correct reading rate and the misreading rate are lowered. For this reason, it is desirable that the rejection does not decrease the correct reading rate as much as possible and reduces the misreading rate.
Below, the
The
Next, the
以上が、文字認識503での処理の説明である。この処理を各文字画像に対して行う。
認識結果選定114では、CPU206は、単語辞書等を参照し、各文字に対する認識の類似度(信頼度)を総合的に判断しながら、認識結果候補の中から、最終的な認識結果を選定する。単語辞書は、例えば、住所認識をしている場合には、予め、住所のリストを保存した辞書等とすることができる。一般文書の認識の場合には、単語などとなる。
以上が、文字切出105から認識結果選定114までの処理である。この処理を各文字列画像に対して行う。
The above is the description of the processing in the character recognition 503. This process is performed for each character image.
In the
The above is the processing from
次に、リトライ判定115では、CPU206は、処理を変えて認識の再処理を行うかどうか判断する。再処理は、例えば、文書画像全体を対象とする場合もあるし、文字列画像単位、文字画像単位の場合もある。例えば、文字列認識結果に類似度(尤度、信頼度)が低い文字が存在する場合、単語辞書に合致する結果が得られなかった場合、読みとれなかった文字が存在する場合、などに、CPU206は、再処理を行う。再処理を行う場合には、CPU206は、これ以前のいずれかの処理から処理方式を変える、処理条件を変える、などして、再度認識を試す。例えば、前処理102の二値化やノイズ除去の方式を変えるなどである。最後に、認識後処理116では、CPU206は、認識結果を記憶装置等に保存する、ディスプレイに表示する、などの処理を行う。
以上が本発明の関連技術による文字認識装置の処理の流れである。
Next, in the retry
The above is the processing flow of the character recognition apparatus according to the related art of the present invention.
図13は、棄却対象となる画像の例を示すための図である。棄却指標には、上記のr1、r2のほかにも、CPU206は、図13の参照番号1301のような文字のかすれ度合いr3(x)や、参照番号1302のような文字のつぶれ度合いr4(x)を算出して、それを基に棄却判定を行う方法がある。あらかじめ閾値h3を定めておいて、r3(x)>h3となったときには、かすれが大きいため棄却する。また、あらかじめ閾値h4を定めておいて、r4(x)>h4となったときには、つぶれが大きいため棄却する。また、他にも、文字画像の重心位置や文字線の線幅の平均値なども使うことができる。例えば、重心位置の場合には、文字識別結果が8であるのに重心位置が中心から大きくずれている場合は、棄却する、などの判定を行う。
ここで、かすれ度合いr3(x)、つぶれ度合いr4(x)の例を挙げる。ただし、上記では、xは特徴抽出により抽出されるベクトルとしたが、ここでは、xは正規化画像であるとする。各字種ごとに、学習DBから正規化画像の平均合計画素値mを予め計算しておく。入力画像に対して、r3(x)は、mから入力画像の正規化画像の合計画素値を引いた値、r4(x)は、入力画素の正規化画像の合計画素値からmを引いた値とする。これによって、入力画像の正規化画像の合計画素値がmより小さい場合にはr3が大きく、逆に大きい場合にはr4が小さくなる。
しかし、これらの指標の組み合わせ方は従来明らかでない。従来技術では、いずれかの基準により棄却されたものを棄却とするなど単純な方法をとるか、人手で試行錯誤しながら複数の指標を組み合わせる、などの方法がとられる。
前者の単純な方法では、すべての棄却指標を算出する必要があるため、計算コストがかかる。その上、いずれかの棄却指標で閾値を超えた場合に棄却されるため、一般に棄却が強すぎて正読率が低下する場合が想定され、高い正読率、且つ低い誤読率を達成するという棄却の目的からしても、必ずしも適しているとは限らない。また、後者の人手での試行錯誤は、この指標の数が多くなると、相当コストのかかる方法であり、実現が困難である場合が想定される。
FIG. 13 is a diagram for illustrating an example of an image to be rejected. In addition to the above-described r1 and r2, the
Here, examples of the blurring degree r3 (x) and the squashing degree r4 (x) are given. In the above description, x is a vector extracted by feature extraction. Here, x is a normalized image. For each character type, the average total pixel value m of the normalized image is calculated in advance from the learning DB. For the input image, r3 (x) is a value obtained by subtracting the total pixel value of the normalized image of the input image from m, and r4 (x) is a value obtained by subtracting m from the total pixel value of the normalized image of the input pixel. Value. As a result, r3 is large when the total pixel value of the normalized image of the input image is smaller than m, and r4 is small when it is larger.
However, how to combine these indicators has not been clear so far. In the prior art, a simple method such as rejecting those rejected according to any of the criteria, or a method of combining a plurality of indicators by trial and error manually is employed.
In the former simple method, since it is necessary to calculate all the rejection indexes, the calculation cost is high. In addition, since it is rejected when any of the rejection indicators exceeds the threshold, it is generally assumed that the rejection is too strong and the correct reading rate is lowered, and that a high correct reading rate and a low misreading rate are achieved. Even for the purpose of rejection, it is not always suitable. Further, the latter manual trial and error is a method that requires a considerable amount of cost when the number of indicators increases, and it may be difficult to implement.
3.文字認識
本実施例では、複数の棄却指標を効果的に組み合わせた棄却方式を自動的に構成することができる。これによって、複数の棄却指標を組み合わせるための人的コストを削減できる。また、正読率を高水準に維持したまま、誤読率を削減することができ、精緻かつ高速な棄却方式を構成することができる。
本実施例の文字認識装置の処理を図を用いて説明する。
図17は、本発明の実施例の文字認識装置の処理を説明するフローチャートの例である。
文書の画像化101、前処理102、レイアウト解析103、文字列抽出104、文字切出105、文字識別106、認識結果選定114、リトライ判定115、認識後処理116は図5及びその説明箇所で記載したように、本発明の関連技術文字認識装置の処理と同様である。
3. Character recognition
In the present embodiment, a rejection method that effectively combines a plurality of rejection indexes can be automatically configured. Thereby, the human cost for combining a plurality of rejection indicators can be reduced. Further, the misreading rate can be reduced while maintaining the correct reading rate at a high level, and a precise and high-speed rejection method can be configured.
Processing of the character recognition device of this embodiment will be described with reference to the drawings.
FIG. 17 is an example of a flowchart for explaining processing of the character recognition apparatus according to the embodiment of the present invention.
以下では、文字認識1707の内部の棄却判定部である処理1701から処理1706までの処理について説明する。棄却処理では、CPU206は、文字識別106の結果と、棄却値とを用いて、棄却判断を行う。CPU206は、棄却と判定された場合には、当該文字認識結果に棄却フラグを立てるなどして、後の処理や、ユーザに知らせ、その結果を利用できるようにする。
本実施例の棄却組合せの構成には、予め、棄却したい画像サンプルを集めた棄却画像データベースと正読させたい画像サンプルを集めた正読画像データベースを準備しておく。棄却画像データベースは、文字識別106で誤読してしまうサンプル、非文字画像、曖昧文字画像、かすれ画像、つぶれ画像など、棄却したい画像サンプルを集めたデータベースである。正読画像データベースは、文字識別106の処理で正しく文字識別できるものなど、正読させたい文字画像サンプルを集めたデータベースである。以下では、正読画像データベースのサンプルのうち棄却判定されるものの割合を誤棄却率、棄却画像データベースのサンプルのうち棄却判定されないものの割合を誤受理率とよぶことにする。誤棄却率、誤受理率がともに小さいほど、棄却判定の精度が良いことになる。
以下では、n個の棄却値算出部があるとして、棄却値に棄却値1、棄却値2、…、棄却値nのように、番号を付ける。また、画像xを入力として、棄却値を出力する関数(棄却関数)をr1(x)、r2(x)、…、rn(x)などと書くことにする。
棄却値の性質について簡単に説明しておく。棄却関数ri(x)は、棄却したいサンプルに対しては高い値をとり、棄却したくないサンプルに対しては低い値をとるような性質をもつように構成されたものである。例えば、すでに述べたように、かすれ度、つぶれ度や、識別関数の値を用いて計算される非文字度、曖昧度などである。閾値h1を設けておき、ri(x)>h1のときに棄却する、などとして用いる。このとき、h1が大きすぎると、十分に棄却することができず、誤読率が高くなる。一方で、h1が低すぎると、誤読率は小さくなるが、正読率も落ちてしまう。そのため、ユーザの要求に応じて、正読率をなるべく落とさないように、かつ、誤読率を減少させるように、h1を調整する。
Hereinafter, processing from processing 1701 to processing 1706, which is a rejection determination unit inside the character recognition 1707, will be described. In the rejection process, the
In the configuration of the reject combination of this embodiment, a reject image database in which image samples to be rejected and a correct image database in which image samples to be correct are collected are prepared in advance. The reject image database is a database in which image samples to be rejected, such as samples misread by the
In the following, assuming that there are n rejection value calculation units, the rejection values are numbered such as a
The nature of the rejection value will be briefly described. The rejection function ri (x) is configured to have such a property that it takes a high value for a sample that is desired to be rejected and a low value for a sample that is not desired to be rejected. For example, as described above, the degree of blur, the degree of collapse, the non-character level calculated using the value of the discriminant function, the degree of ambiguity, and the like. A threshold value h1 is provided, and is used as a rejection when ri (x)> h1. At this time, if h1 is too large, it cannot be rejected sufficiently and the misreading rate increases. On the other hand, if h1 is too low, the misreading rate decreases, but the correct reading rate also falls. Therefore, h1 is adjusted according to the user's request so as not to decrease the correct reading rate as much as possible and to reduce the misreading rate.
図16は、二つの棄却値に対して、いずれかの棄却値で閾値を超えたときに棄却と判断する場合に、棄却と判断される値の領域を斜線により示した。棄却値1が閾値1を超えた場合、または、棄却値2が閾値2を超えた場合に棄却されるので、棄却領域は図16の斜線部のようになる。
本実施例では、これらn個の棄却値を棄却強度が強い順に配置する。棄却強度が強いとは、当該棄却値に基づく棄却判定の棄却率が高いことを意味する。棄却強度の定め方の例をいくつか挙げる。
一つ目の例を挙げる。まず、誤棄却率と誤受理率の和eを指定する。各棄却関数riに対して、ri(x)>hiによって棄却判定を行った場合の誤棄却率と誤受理率の和eが最も小さくなるように、hiを設定する。このとき、ri(x)>hiのときに棄却することによる棄却判定を行った場合の学習用文字画像データベースのサンプルの棄却率が高い順に、棄却値を選定する。
二つ目の例を挙げる。各棄却関数riに対して、予めユーザによって閾値hiが指定されているとする。このとき、ri(x)>hiのときに棄却することによる棄却判定を行った場合の学習用文字画像データベースの棄却率が高い順に、棄却値を選定する。
いま、棄却値が3つ存在し、r1、r2、r3の順に棄却率が高い、すなわち、棄却強度が高いとする。このとき、図17の処理1701から処理1706のような順で処理を行う。つまり、棄却値1算出1701で入力画像xに対する棄却値r1(x)を算出し、棄却判定1(1702)で、r1(x)>h1であれば、棄却と判定し、そうでなければ、棄却しない。棄却と判定された場合には、後の棄却処理である処理1703から処理1706までの処理をスキップする。棄却と判定されなかった場合には、次の処理1703に移る。以下、同様にして、棄却判定2の処理、又は、棄却判定2と棄却判定3の処理を続ける。例では、棄却値が3つの場合について説明したが、2個以上のいずれの個数の棄却値がある場合にも同様である。
本実施例では、棄却と判定された時点で処理を終えることができる。さらに、棄却率が高い順番に先に配置されているため、計算コスト上、効率的である。
FIG. 16 shows a region of values determined to be rejected by hatching when it is determined that the reject value is exceeded when the threshold value is exceeded for any of the two reject values. When the
In this embodiment, these n rejection values are arranged in descending order of the rejection strength. A high rejection strength means that the rejection rate of the rejection determination based on the rejection value is high. Here are some examples of how to set the rejection strength.
Take the first example. First, the sum e of the false rejection rate and the false acceptance rate is designated. For each rejection function ri, hi is set so that the sum e of the erroneous rejection rate and the erroneous acceptance rate when the rejection determination is performed by ri (x)> hi is minimized. At this time, the rejection values are selected in descending order of the rejection rate of the learning character image database samples when the rejection determination is performed by rejecting when ri (x)> hi.
Here is a second example. It is assumed that a threshold value hi is designated in advance by the user for each rejection function ri. At this time, rejection values are selected in descending order of the rejection rate of the learning character image database when rejection determination is performed by rejecting when ri (x)> hi.
Now, it is assumed that there are three rejection values and the rejection rates are high in the order of r1, r2, and r3, that is, the rejection strength is high. At this time, processing is performed in the order of
In the present embodiment, the processing can be completed when it is determined to be rejected. Furthermore, since the rejection rate is arranged first in order of high rejection rate, the calculation cost is efficient.
図2は、本実施例の文字認識装置の一例を示す構成図であり、実施例1と同様である。図17に、本実施例の文字認識装置の処理の流れを示す。文書の画像化101、前処理102、レイアウト解析103、文字列抽出104、文字切出105、文字識別106、認識結果選定114、リトライ判定115、認識後処理116の文字認識装置の処理も、実施例1と同様である。また、文字識別106も実施例1と同様である。
本実施例では、棄却判定部の各1701〜1706の処理の流れが異なる。
実施例1では、棄却値算出処理と棄却判定処理を棄却強度が強い順に配置した。棄却値算出の計算コストにあまり差が無い場合にはこの方法で十分であるが、そうでない場合には、非効率である場合がある。例えば、棄却率が高くとも、棄却値算出の計算コストが高い棄却値算出処理が先にあると、常に計算コストが高い棄却値を計算することになる。ここで、計算コストは、例えば、学習用文字画像データベースに含まれる画像を処理する場合の棄却関数の計算にかかる平均処理時間などとして求める。
そのため、本実施例では、各棄却値算出の計算コスト(処理時間)も考慮して、処理の順番を定める。つまり、棄却値の棄却率と計算コスト(処理時間)に基づいて定めた棄却効率をもとに、棄却効率が高い程、先に配置するような構成にしてもよい。棄却効率は、例えば、棄却率×計算コスト(平均処理時間)、で算出できる。
図21は、棄却関数の説明図である。
本実施例の棄却の構成を表で示すと、図21の表2101のようになる。表の各行(横方向)は並列の並びを示し、合成する棄却関数とその合成関数、列方向(縦方向)は直列での並びを示す。本実施例の場合には、いずれの棄却関数も直列につないでいるため、各列は1つの棄却関数である。棄却値1算出1701、棄却値2算出1703、棄却値3算出1705は、それぞれ、f1(r1(x))、f2(r2(x))、f3(r3(x))、を計算して棄却値とするが、本実施例のように、並列方向に1つの棄却関数しかない場合には、f1、f2、f3は恒等関数として、例えば、f1(r1(x))=r1(x)としてよい。
FIG. 2 is a configuration diagram illustrating an example of the character recognition apparatus according to the present exemplary embodiment, which is the same as that of the first exemplary embodiment. FIG. 17 shows a processing flow of the character recognition apparatus of this embodiment.
In a present Example, the flow of a process of each 1701-1706 of a rejection determination part differs.
In Example 1, the rejection value calculation process and the rejection determination process are arranged in descending order of the rejection intensity. This method is sufficient when there is not much difference in the calculation cost for calculating the rejection value, but it may be inefficient otherwise. For example, even if the rejection rate is high, if there is a rejection value calculation process with a high calculation cost for calculating the rejection value, a rejection value with a high calculation cost is always calculated. Here, the calculation cost is obtained as, for example, an average processing time for calculating a rejection function when processing an image included in the learning character image database.
Therefore, in this embodiment, the processing order is determined in consideration of the calculation cost (processing time) for calculating each rejection value. That is, based on the rejection efficiency determined based on the rejection rate of the rejection value and the calculation cost (processing time), the higher the rejection efficiency, the higher the rejection efficiency. The rejection efficiency can be calculated by, for example, rejection rate × calculation cost (average processing time).
FIG. 21 is an explanatory diagram of the rejection function.
When the rejection configuration of this embodiment is shown in a table, it is as shown in Table 2101 of FIG. Each row (horizontal direction) in the table indicates a parallel arrangement, and a rejection function to be combined and its synthesis function, and a column direction (vertical direction) indicates a series arrangement. In this embodiment, since all the rejection functions are connected in series, each column is one rejection function.
図2は、本実施例の文字認識装置の一例を示す構成図であり、実施例1と同様である。図18に、本実施例の文字認識装置の処理の流れを示す。文書の画像化101、前処理102、レイアウト解析103、文字列抽出104、文字切出105、文字識別106、認識結果選定114、リトライ判定115、認識後処理116の文字認識装置の処理も、実施例1と同様である。また、文字識別106も実施例1と同様である。
本実施例では、文字認識1805における棄却判定を行う処理1801〜1804が異なる。本実施例では、処理1801〜1803に示すように、複数の棄却値を平行して算出し、それらの値に基づいて、処理1804において棄却判定処理を行う。
まず、このように棄却値算出を並列につなぐ理由について説明する。
図16は、二つの棄却値に対して、いずれかの棄却値で閾値を超えたときに棄却と判断する場合に、棄却と判断される値の領域を斜線により示した。棄却値1が閾値1を超えた場合、または、棄却値2が閾値2を超えた場合に棄却されるので、棄却領域は図16の斜線部のようになる。これは、実施例1や実施例2のように棄却値算出と棄却判定を順に行い、直列に処理を繋いだ場合に相当する。
図4は、2つの棄却値の値と、棄却したいサンプル、正読したいサンプルの分布を模式的に表したものである。三角が棄却画像データベースのサンプルを表し、丸が正読画像データベースのサンプルを表す。このような分布の場合には、正読画像データベースのサンプルの分布と棄却画像データベースのサンプルの分布の境界が、図4の境界線のようになっており、棄却すべきサンプルは、この境界線よりも右上の側に位置している。一方で、棄却を直列に行った場合には、図16のような棄却領域となり、この例では、多数の棄却すべきサンプルを棄却できなくなってしまう。これらの棄却すべきサンプルが棄却できるように、閾値1と閾値2の値を小さくすると、今度は、正読させたい丸のサンプルを多数棄却してしまうことになる。
このようなことから、本実施例では、棄却値1と棄却値2の両方の値に基づいて棄却判断を行う。つまり、棄却値1の値をx1、棄却値2の値をx2としたとき、これらを引数にとる関数f(x1、x2)により新たな棄却値を定め、f(x1、x2)の値が一定の閾値以上の場合に棄却する。f(x1、x2)としては、例えば、f(x1、x2)=x1+x2を用いることができる。関数f(x1、x2)の定め方について、もうひとつ例を挙げる。
FIG. 2 is a configuration diagram illustrating an example of the character recognition apparatus according to the present exemplary embodiment, which is the same as that of the first exemplary embodiment. FIG. 18 shows the flow of processing of the character recognition apparatus of this embodiment.
In the present embodiment, processes 1801 to 1804 for performing rejection determination in character recognition 1805 are different. In this embodiment, as shown in
First, the reason why the rejection value calculation is connected in parallel will be described.
FIG. 16 shows a region of values determined to be rejected by hatching when it is determined that the reject value is exceeded when the threshold value is exceeded for any of the two reject values. When the
FIG. 4 schematically shows two rejection values, distributions of samples to be rejected, and samples to be correctly read. A triangle represents a sample of the reject image database, and a circle represents a sample of the correct reading image database. In the case of such a distribution, the boundary between the distribution of the sample of the correct reading image database and the distribution of the sample of the rejection image database is as shown in FIG. 4, and the sample to be rejected is the boundary line. It is located on the upper right side. On the other hand, when the rejection is performed in series, a rejection region as shown in FIG. 16 is obtained, and in this example, a large number of samples to be rejected cannot be rejected. If the values of
For this reason, in this embodiment, the rejection determination is performed based on both the
関数f(x1、x2)は、a11、a22、a12、a1、a2、a0をパラメータとしてもつx1、x2の二次関数f(x1、x2)=a11x1x1+a22x2x2+a12x1x2+a1x1+a2x2+a0、として定義する。このパラメータa11、a22、a12、a1、a2、a0を、正読画像データベースのサンプルに対して負の値をとるように、棄却画像データベースのサンプルに対して正の値をとるように、設定する。ただし、全てのサンプルに対してこの条件を満たすようなパラメータを設定することは、一般には不可能な場合が想定されるので、パラメータを引数にとり、条件を満たさない度合いを示すコスト関数(損失関数)(又は、正読画像データベースのサンプルと、棄却画像データベースのサンプルとの識別誤差に基づくコスト関数)c(f)を定義し、この値が小さくなるように、機械学習によって学習する。例えば、棄却画像データベースのサンプルに対してはfが1、正読画像データベースのサンプルに対してはfが−1をとる方向に学習するとして、c(f)をこれらの値からの全サンプルに対する二乗誤差の和とする。c(f)は、例えば、棄却画像データベースのサンプルから計算されるfの値と1との二乗誤差の和をv1=Σ|f−1|^2、正読画像データベースのサンプルから計算されるfの値と−1との二乗誤差の和をv2=Σ|f+1|^2とし、c(f)=v1+v2(二乗誤差の和)などとする。例えば、ニューラルネットワークやSVMなどを用いることができる。このようにして作成したfのf=0となる等高線は、図4の境界線のように、正読画像データベースの分布と棄却画像データベースのサンプルの境界線となる。なお、ここでは、fは二次関数を例として説明したが、より一般の関数、例えば、より高次の関数や、ニューラルネットワーク、動径基底関数の線型結合なども用いることができる。
以上、説明を簡単にするために、2つの棄却値をもつ場合について説明したが、3つ以上の棄却値の場合も同様である。図18には、3つの棄却値が存在する場合に処理の流れを示している。処理1801、処理1802、処理1803では、それぞれ棄却値1、棄却値2、棄却値3、を算出する。それぞれの棄却値をx1、x2、x3とする。棄却判定3(1804)では、上記で説明したようにして作成した新たな棄却値f(x1、x2、x3)に基づいて、f(x1、x2、x3)が予め定めておいた閾値より大きい場合には棄却とし、そうでない場合には、棄却しない。
本実施例の方法は、直列につなぐよりも精度のよい棄却を行うことができる。しかし、全ての棄却値を算出しなければならない上、それらの棄却値に基づいてfの値も計算する必要がある。そのため、棄却にかかる計算コストは大きくなる場合が想定される。
本実施例の棄却の構成を表で示すと図21の表2102のようになる。表の各行(横方向)は並列の並びを示し、合成する棄却関数とその合成関数、列方向(縦方向)は直列での並びを示す。本実施例の場合には、いずれの棄却関数も並列につないでいるため、1行である。合成関数はfで、棄却判定1804で算出される値は、f(r1(x)、r2(x)、r3(x))となる。fは、例えば、上記で説明した方法で作成した関数である。
The function f (x1, x2) is defined as a quadratic function f1 (x1, x2) = a11x1x1 + a22x2x2 + a12x1x2 + a1x1 + a2x2 + a0 of x1, x2 having a11, a22, a12, a1, a2, a0 as parameters. The parameters a11, a22, a12, a1, a2, and a0 are set so as to take a negative value with respect to the sample of the correct image database and to take a positive value with respect to the sample of the reject image database. . However, since it is generally impossible to set a parameter that satisfies this condition for all samples, a cost function (loss function) indicating the degree of not satisfying the condition by taking the parameter as an argument ) (Or a cost function based on the discrimination error between the sample of the correctly read image database and the sample of the reject image database) c (f) is defined, and learning is performed by machine learning so that this value becomes small. For example, assuming that f is 1 for samples in the reject image database and f is -1 for samples in the correct image database, c (f) is applied to all samples from these values. The sum of squared errors. c (f) is, for example, calculated from the sample of the correct reading image database by v1 = Σ | f−1 | ^ 2, which is the sum of the square error between the value of f calculated from the sample of the rejection image database and 1. The sum of square errors between the value of f and −1 is v2 = Σ | f + 1 | ^ 2, and c (f) = v1 + v2 (sum of square errors) or the like. For example, a neural network or SVM can be used. The contour line at which f = 0 created in this way becomes the boundary line between the distribution of the correct reading image database and the sample of the rejection image database, like the boundary line in FIG. Here, f has been described by taking a quadratic function as an example, but a more general function, for example, a higher-order function, a neural network, a linear combination of radial basis functions, or the like can also be used.
As mentioned above, in order to simplify explanation, although the case where it had two rejection values was demonstrated, it is the same also in the case of three or more rejection values. FIG. 18 shows the flow of processing when there are three rejection values. In
The method of the present embodiment can perform rejection with higher accuracy than connecting in series. However, all of the rejection values must be calculated, and the value of f needs to be calculated based on the rejection values. Therefore, the case where the calculation cost concerning rejection becomes large is assumed.
A table of the rejection configuration of this embodiment is shown in Table 2102 of FIG. Each row (horizontal direction) in the table indicates a parallel arrangement, and a rejection function to be combined and its synthesis function, and a column direction (vertical direction) indicates a series arrangement. In the case of this embodiment, since all the rejection functions are connected in parallel, there is one line. The composite function is f, and the values calculated in the
図2は、本実施例の文字認識装置の一例を示す構成図であり、実施例1と同様である。図1に、本実施例の文字認識装置の処理の流れを示す。文書の画像化101、前処理102、レイアウト解析103、文字列抽出104、文字切出105、文字識別106、認識結果選定114、リトライ判定115、認識後処理116の文字認識装置の処理も、実施例1と同様である。また、文字識別106も実施例1と同様である。
本実施例では、文字認識117における棄却判定を行う処理の組み合わせ(107〜113の部分に相当)が異なる。
本実施例の棄却組合せの構成には、予め、棄却したい画像サンプルを集めた棄却画像データベースと正読させたい画像サンプルを集めた正読画像データベースを準備しておく。棄却画像データベースは、文字識別106で誤読してしまうサンプル、非文字画像、曖昧文字画像、かすれ画像、つぶれ画像など、棄却したい画像サンプルを集めたデータベースである。正読画像データベースは、文字識別106の処理で正しく文字識別できるものなど、正読させたい文字画像サンプルを集めたデータベースである。以下では、正読画像データベースのサンプルのうち棄却判定されるものの割合を誤棄却率、棄却画像データベースのサンプルのうち棄却判定されないものの割合を誤受理率とよぶことにする。誤棄却率、誤受理率がともに小さいほど、棄却判定の精度が良いことになる。
以下では、n個の棄却値算出部があるとして、棄却値に棄却値1、棄却値2、…、棄却値nのように、番号を付ける。また、画像xを入力として、棄却値を出力する関数をr1(x)、r2(x)、…、rn(x)などと書くことにする。
FIG. 2 is a configuration diagram illustrating an example of the character recognition apparatus according to the present exemplary embodiment, which is the same as that of the first exemplary embodiment. FIG. 1 shows the flow of processing of the character recognition apparatus of this embodiment.
In the present embodiment, the combination of processes for performing rejection determination in the character recognition 117 (corresponding to the
In the configuration of the reject combination of this embodiment, a reject image database in which image samples to be rejected and a correct image database in which image samples to be correct are collected are prepared in advance. The reject image database is a database in which image samples to be rejected, such as samples misread by the
In the following, assuming that there are n rejection value calculation units, the rejection values are numbered such as a
本実施例では、これらn個の棄却値を棄却値同士の独立性の高さ、独立性の低さ(相関性の高さ)、棄却効率を考慮しながら、組み合わせる。本実施例の棄却値算出器の組み合わせの方針は、棄却値算出器を直列または並列につなぐ。その組み合わせ方は、独立性の高い棄却値算出器同士は直列に組合せ、独立性の低い(相関性の高い)棄却値算出器同士は並列に組合せ、棄却強度が強い棄却値算出器ほど先に配置する。また、並列に組み合わせる場合には、組み合わせた複数の棄却値に基づいて、新たな棄却値を定め、それに基づいて棄却判断を行う。さらに、棄却効率が高い処理ほど先に配置する。
図16は、二つの棄却値に対して、いずれかの棄却値で閾値を超えたときに棄却と判断する場合に、棄却と判断される値の領域を斜線により示した。棄却値1が閾値1を超えた場合、または、棄却値2が閾値2を超えた場合に棄却されるので、棄却領域は図16の斜線部のようになる。
まず、図3を用いて、棄却値同士の独立性について説明する。図3は、2つの棄却値の値と、棄却したいサンプル、正読したいサンプルの分布を模式的に表したものである。三角が棄却画像データベースのサンプルを表し、丸が正読画像データベースのサンプルを表す。このような分布では、正読画像データベースのサンプルの分布と棄却画像データベースのサンプルの分布の境界線が、図3のように、右上方向に大きく凸状になる。このような場合に、2つの棄却値は独立性が高いと呼ぶことにする。このような状況は、2つの棄却値が独立性の高い事象を基に棄却値を算出する場合に起こり得る。例えば、棄却値1は、文字のかすれ度を計算しており、棄却値2は、文字の重心位置の標準的な重心位置からの乖離の大きさを計算している場合などである。
In this embodiment, these n rejection values are combined in consideration of the high independence between the rejection values, the low independence (high correlation), and the rejection efficiency. The policy of combination of the critical value calculators of the present embodiment connects the critical value calculators in series or in parallel. The combination of the independence value calculators with high independence is combined in series, the independence value calculators with low independence (high correlation) are combined in parallel, and the rejection value calculator with strong rejection strength comes first. Deploy. Further, when combining in parallel, a new rejection value is determined based on a plurality of combined rejection values, and a rejection determination is made based on the new rejection value. Furthermore, the processing with higher rejection efficiency is arranged earlier.
FIG. 16 shows a region of values determined to be rejected by hatching when it is determined that the reject value is exceeded when the threshold value is exceeded for any of the two reject values. When the
First, the independence between rejection values will be described with reference to FIG. FIG. 3 schematically shows two rejection values, distributions of samples to be rejected, and samples to be correctly read. A triangle represents a sample of the reject image database, and a circle represents a sample of the correct reading image database. In such a distribution, the boundary line between the distribution of the sample of the correct reading image database and the distribution of the sample of the rejection image database has a large convex shape in the upper right direction as shown in FIG. In such a case, the two rejection values will be called highly independent. Such a situation may occur when a rejection value is calculated based on an event in which two rejection values are highly independent. For example, the
本実施例では、棄却値が独立性が高い場合には、棄却値1算出と棄却値2算出を直列に処理する。つまり、まず、棄却値1を算出した上で、閾値1より値が高い場合には棄却とする判断を行う。棄却と判定されれば、棄却処理を終える。棄却と判定されなかった場合には、棄却値2を算出した上で、閾値2より値が高い場合には棄却と判断する。棄却と判定されれば、棄却処理を終える。棄却と判定されなかった場合には、次の棄却処理に移る。図3のように閾値1、閾値2を定め、棄却値1が閾値1を超えた場合、または、棄却値2が閾値2を超えた場合に棄却と判断することで、効率良く棄却することができる。このような棄却値は直列に処理すれば良い。
次に、図4を用いて、棄却値同士の独立性の低さ(相関性の高さ)について説明する。図4は、2つの棄却値の値と、棄却したいサンプル、正読したいサンプルの分布を模式的に表したものである。三角が棄却画像データベースのサンプルを表し、丸が正読画像データベースのサンプルを表す。このような分布では、正読画像データベースのサンプルの分布と棄却画像データベースのサンプルの分布の境界線が、図4のように、図3の場合ほど凸度が大きく無い場合、直線に近い場合、または、逆に左下方向に凸となる場合、2つの棄却値は独立性が低いと呼ぶことにする。このような状況は、2つの棄却値が相関性の高い事象を基に棄却値を算出する場合に起こり得る。例えば、棄却値1は、すでに説明したような識別関数に基づく非文字度を算出しており、棄却値2は、識別関数に基づく曖昧度を算出しているような場合である。このような場合には、どちらも識別関数を基にして棄却値を計算しているため、互いに関連性をもち、図4のような分布となる。
本実施例では、棄却値の独立性が低い場合には、棄却値1算出と棄却値2算出を並列に処理する。つまり、棄却値1をx1、棄却値2をx2としたとき、これらを引数にとる関数f(x1、x2)により新たに棄却値を定め、f(x1、x2)の値が一定の閾値以上の場合に棄却する。棄却と判定されれば、棄却処理を終える。棄却と判定されなかった場合には、次の棄却処理に移る。関数fの定め方は、実施例3と同様である。図4の分布の場合には、例えば、f(x1、x2)=x1+x2とすれば、左上から右下に斜め方向に閾値境界線を定めることができ、正読画像データベースのサンプルと棄却画像データベースのサンプルを分離することができる。図4のような分布の場合には、棄却値を直列につなぐと、棄却値1が閾値1より大きいか、または、棄却値2が閾値2より大きい領域のみが棄却され、閾値1より左で、かつ、閾値2より下に分布している三角のサンプルが棄却できない。また、これらを棄却するために閾値1や閾値2の値を下げると、今度は、正読させたい丸のサンプルを多数棄却してしまうことになる。そのため、このような棄却値は並列に繋ぐ必要がある。
以上のように、本実施例では、独立性の高い棄却値同士は直列に処理し、並列性の高い棄却値同士は並列に処理する。
In this embodiment, when the rejection value is highly independent, the
Next, the low independence between reject values (high correlation) will be described with reference to FIG. FIG. 4 schematically shows two rejection values, distributions of samples to be rejected, and samples to be correctly read. A triangle represents a sample of the reject image database, and a circle represents a sample of the correct reading image database. In such a distribution, when the boundary between the distribution of the sample of the correct reading image database and the distribution of the sample of the rejection image database is not as large as the case of FIG. Or, conversely, when it becomes convex in the lower left direction, the two rejection values will be referred to as having low independence. Such a situation may occur when a rejection value is calculated based on an event in which two rejection values are highly correlated. For example, the
In this embodiment, when the independence of the rejection value is low, the
As described above, in this embodiment, reject values with high independence are processed in series, and reject values with high parallelism are processed in parallel.
ここで、2つの棄却値の独立性が高いか、独立性が低い(相関性が高い)か、判断するための方法の例を挙げる。2つの棄却値をそれぞれx1、x2とおく。この2個の棄却値を引数とする2つの関数g1(x1、x2)、g2(x1、x2)を定義する。
関数g1(x1、x2)は、実施例3と同様に二次関数で、正読画像データベースのサンプルに対して負の値をとり、棄却画像データベースのサンプルに対して正の値をとるように、コスト関数cに基づいて、機械学習により設定する。g1は、例えば、図3、図4に示すように、g1=0となる等高線が境界線となり、境界線より左下の領域で負、右上の領域で正となるような関数となる。
関数g2(x1、x2)は、2つの値h1、h2をパラメータとしてもち、x1>h1、またはx2>h2となる場合にg2(x1、x2)=1、その他の場合にg2(x1、x2)=−1となるような関数とする。すなわち、g2(x1、x2)>0となる領域が棄却領域である。ただし、全てのサンプルに対してこの条件を満たすようなパラメータを設定することは、一般には不可能であるので、パラメータを引数にとり、条件を満たさない度合いを示すコスト関数c(h1、h2)を定義し、この値が小さくなるように、機械学習によって学習する。c(h1、h2)は、例えば、棄却画像データベースのサンプルでg2=−1となるものの個数をv1、正読画像データベースのサンプルでg2=1となるものの個数をv2とし、c(h1、h2)=v1+v2(条件を満たさないサンプルの個数)などとする。例えば、ニューラルネットワークやSVMなどを用いることができる。このようにして作成したg2のg2=1とg2=−1の境界線は、棄却値1または棄却値2の軸に平行で、正読画像データベースの分布と棄却画像データベースのサンプルを分けるような境界となる。図3、図4の例では、閾値1がh1、閾値2がh2を示す点線であるとすると、g2は閾値1より左側でかつ、閾値2より下側の領域でg2=−1、閾値1より右側か、または閾値2より上側の領域でg2=1となる。
Here, an example of a method for determining whether two rejection values are high independence or low independence (high correlation) will be given. Two rejection values are set as x1 and x2, respectively. Two functions g1 (x1, x2) and g2 (x1, x2) are defined with these two rejection values as arguments.
The function g1 (x1, x2) is a quadratic function as in the third embodiment, and takes a negative value with respect to the sample of the correct image database and takes a positive value with respect to the sample of the reject image database. Based on the cost function c, it is set by machine learning. For example, as shown in FIGS. 3 and 4, g1 is a function in which a contour line where g1 = 0 is a boundary line, is negative in a lower left area from the boundary line, and is positive in an upper right area.
The function g2 (x1, x2) has two values h1 and h2 as parameters, and when x1> h1 or x2> h2, g2 (x1, x2) = 1, otherwise g2 (x1, x2) ) = − 1. That is, a region where g2 (x1, x2)> 0 is a rejection region. However, since it is generally impossible to set a parameter that satisfies this condition for all samples, a cost function c (h1, h2) that indicates the degree of not satisfying the condition by taking the parameter as an argument is used. Define and learn by machine learning so that this value becomes small. c (h1, h2) is, for example, the number of rejected image database samples with g2 = −1 being v1, the number of correctly read image database samples with g2 = 1 being v2, and c (h1, h2). ) = V1 + v2 (number of samples that do not satisfy the condition). For example, a neural network or SVM can be used. The boundary line between g2 = 1 and g2 = −1 of g2 created in this way is parallel to the axis of
上記の関数g2(x1、x2)によるg2=1とg2=−1の境界は、棄却処理を直列に繋いだ場合の棄却領域の境界に相当する。一方、関数g1(x1、x2)によるg1=0の等高線は、実施例3の方法により棄却処理を並列に繋いだ場合の棄却領域の境界に相当する。
ここで、関数g1により生成される棄却領域による精度と関数g2により生成される棄却領域による精度を比較する。棄却画像データベースのサンプルでg2=−1となるサンプルの個数をv1、正読画像データベースのサンプルでg2=1となるサンプルの個数をv2、棄却画像データベースのサンプルでg1<0となるサンプルの個数をw1、正読画像データベースのサンプルでg1≧0となるサンプルの個数をw2とする。v1、w1が誤受理の個数、v2、w2が誤棄却の個数に相当する。誤受理の個数p1、誤棄却の個数p2の場合の損失関数をh(p1、p2)とおく。hは、p1、p2の単調増加関数である。例えば、h(p1、p2)=p1+p2などとする。この場合は、誤受理数と誤棄却数の和である。hの値が小さいほど、棄却の精度が良いとみなすことができる。
次に、h(v1、v2)とh(w1、w2)を比較する。一般に、関数g1による棄却領域のほうが精度が良く、h(v1、v2)はh(w1、w2)より大きくなる。ここで、D=h(v1、v2)−h(w1、w2)は、直列に繋いだ場合と並列に繋いだ場合の損失の差を表している。これが一定以上、大きい場合には、g2による棄却領域では不十分であり、棄却値1と棄却値2の独立性が低いと判断する。逆に、D=h(v1、v2)−h(w1、w2)が一定の値以上、小さい場合には、棄却値1と棄却値2の独立性が高いと判断する。
以上、説明を簡単にするために、2つの棄却値について説明したが、3つ以上の場合にも同様である。
The boundary between g2 = 1 and g2 = −1 by the function g2 (x1, x2) corresponds to the boundary of the rejection area when the rejection processing is connected in series. On the other hand, the contour line of g1 = 0 by the function g1 (x1, x2) corresponds to the boundary of the rejection area when the rejection processing is connected in parallel by the method of the third embodiment.
Here, the accuracy of the rejection region generated by the function g1 is compared with the accuracy of the rejection region generated by the function g2. The number of samples in the reject image database where g2 = −1 is v1, the number of samples in the correct image database where g2 = 1 is v2, and the number of samples in the reject image database where g1 <0. Is w1, and the number of samples in the correctly read image database satisfying g1 ≧ 0 is w2. v1 and w1 correspond to the number of false acceptances, and v2 and w2 correspond to the number of false rejections. The loss function in the case of the number of erroneous acceptance p1 and the number of false rejections p2 is set as h (p1, p2). h is a monotonically increasing function of p1 and p2. For example, h (p1, p2) = p1 + p2. In this case, it is the sum of the number of false acceptances and the number of false rejections. It can be considered that the smaller the value of h, the better the accuracy of rejection.
Next, h (v1, v2) and h (w1, w2) are compared. In general, the rejection region based on the function g1 has better accuracy, and h (v1, v2) is larger than h (w1, w2). Here, D = h (v1, v2) −h (w1, w2) represents a difference in loss between when connected in series and when connected in parallel. If this is greater than or equal to a certain value, it is determined that the rejection region by g2 is insufficient, and the independence between the
In the above, for the sake of simplicity, two rejection values have been described, but the same applies to the case of three or more rejection values.
本実施例では、独立性が高い処理は並列に、独立性が低い処理は直列に配置する。並列に配置した場合の棄却値には、実施例3と同じく上記の関数g1を用いることができる。また、実施例2と同じく、棄却効率が高いものほど先に配置する。
n個の棄却値がある場合に、棄却値の構成法について例を挙げる。
図22に、棄却値の構成処理のフローチャートを示す。この処理は、文字認識装置201のCPU206、又は、文字認識装置201以外の他の処理装置で実行するようにしてもよい。まず、CPU206又は他の処理装置は、n個の棄却値の中から最も独立性が低い(上記のDの値が大きい)ペアを選定する。CPU206又は他の処理装置は、この独立性を判定する値Dが予め定めた値より低い場合には、選定したペアは独立性が高いので、このn個の棄却値は直列に配置する。CPU206又は他の処理装置は、選定したペアの独立性が低いと判定された場合には、選定したペアは並列につなぎ、これらの棄却値に基づく新たな棄却値を実施例3の方法と同様にして定める。この並列に繋がれた棄却値を1つの棄却値とみなすと、n−1個の棄却値が存在する。同様にして、CPU206又は他の処理装置は、n−1個の棄却値の中から最も独立性が低いペアを選定する。選定したペアが独立性が高いと判定された場合には、CPU206又は他の処理装置は、このn−1個の棄却値は直列に配置する。選定したペアの独立性が低いと判定された場合には、CPU206又は他の処理装置は、選定したペアは並列につなぎ、これらの棄却値に基づく新たな棄却値を実施例3の方法と同様にして定める。このとき、もし、選定したペアを構成する棄却値(r1、r2とする)が複数の棄却値の並列から成っている場合には、CPU206又は他の処理装置は、その棄却値を構成する元の棄却値に分解し、それらの棄却値を並列につなぎ、これらの棄却値に基づく新たな棄却値を実施例3の方法と同様にして定める。たとえば、r1は、もともと2つの棄却値s1、s2を並列につなぐことで構成されていた場合、CPU206又は他の処理装置は、r1をもとの棄却値に分解し、s1、s2、r2を並列につなぐ。以上のようにして、CPU206又は他の処理装置は、最終的に、独立性が低いと判定されるペアがなくなるまで続ける。
In this embodiment, processes with high independence are arranged in parallel, and processes with low independence are arranged in series. As in the case of the third embodiment, the above function g1 can be used as the rejection value when arranged in parallel. Moreover, like Example 2, it arrange | positions earlier, so that a rejection efficiency is high.
When there are n rejection values, an example of the method of constructing the rejection values will be given.
FIG. 22 is a flowchart of the reject value configuration process. This processing may be executed by the
図1には、棄却値1と棄却値2が並列に繋がれ、棄却値3、棄却値4、棄却値5が並列に繋がれ、前者のセットと後者のセットが直列に繋がれている構成を示している。
図1の場合の棄却の構成を表で示すと図21の表2103のようになる。表の各行(横方向)は並列の並びを示し、合成する棄却関数とその合成関数、列方向(縦方向)は直列での並びを示す。図1の場合には、まず棄却値1と棄却値2が並列に繋がれ、棄却値3、棄却値4、棄却値5が並列に繋がれているため、最初の行には、棄却関数1と棄却関数2が、次の行には棄却関数1、棄却関数2、棄却関数3が並んでいる。合成関数f1、f2は、例えば、上記で説明したg1を作成した方法により作ることができる。
In FIG. 1, a
The rejection configuration in the case of FIG. 1 is shown as a table 2103 in FIG. Each row (horizontal direction) in the table indicates a parallel arrangement, and a rejection function to be combined and its synthesis function, and a column direction (vertical direction) indicates a series arrangement. In the case of FIG. 1, first, the
上記の実施例2、実施例3、実施例4において、並列演算装置が使える場合には、並列に並んだ棄却関数同士は並列に計算してもよい。また、直列に並んでいる場合であっても、次の棄却関数を計算できる場合には、計算しておいてもよい。その場合には、次の棄却関数の計算結果が不要になった場合にはその結果を捨てればよい。
In the second embodiment, the third embodiment, and the fourth embodiment, when the parallel arithmetic device can be used, the rejection functions arranged in parallel may be calculated in parallel. Moreover, even if they are arranged in series, they may be calculated if the next rejection function can be calculated. In that case, when the calculation result of the next rejection function becomes unnecessary, the result may be discarded.
4.実施例の効果
本実施例によると複数の棄却指標を組み合わせた棄却方式を自動的に構成することができる。これによって、複数の棄却指標を組み合わせるための人的コストを削減できる。また、本実施例によると、正読率を高水準に維持したまま、誤読率を削減することができ、精緻かつ高速な棄却方式を構成することができる。
また、本実施例では、複数の棄却指標を、棄却指標同士の独立性を基準として、独立性の高いもの同士は直列に、独立性の低いもの同士は並列に構成することによって、高正読率、低誤読率、高速な棄却方法を低い人的コストで提供することができる。
4). Effects of the embodiment
According to the present embodiment, a rejection method combining a plurality of rejection indexes can be automatically configured. Thereby, the human cost for combining a plurality of rejection indicators can be reduced. Further, according to the present embodiment, the misreading rate can be reduced while maintaining the correct reading rate at a high level, and a precise and high-speed rejection method can be configured.
Further, in this embodiment, a plurality of rejection indicators are configured in such a way that highly independent ones are configured in series, and those having low independence are configured in parallel on the basis of the independence between the rejection indicators. Rate, low misreading rate, and fast rejection method can be provided at low human cost.
5.付記
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれている。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
本発明の文字認識方法又は文字認識装置・システムは、その各手順をコンピュータに実行させるための文字認識プログラム、文字認識プログラムを記録したコンピュータ読み取り可能な記録媒体、文字認識プログラムを含みコンピュータの内部メモリにロード可能なプログラム製品、そのプログラムを含むサーバ等のコンピュータ、等により提供されることができる。
5. Additional remarks The present invention is not limited to the above-described embodiments, and includes various modifications. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.
Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
Further, the control lines and information lines indicate what is considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. Actually, it may be considered that almost all the components are connected to each other.
The character recognition method or character recognition apparatus / system of the present invention includes a character recognition program for causing a computer to execute each procedure, a computer-readable recording medium storing the character recognition program, and an internal memory of the computer including the character recognition program Can be provided by a program product that can be loaded on the computer, a computer such as a server including the program, and the like.
201 文字認識装置
202 入力装置
203 表示装置
204 イメージ取得装置
205 通信装置
206 演算装置(CPU)
207 外部記憶装置(HDD、メモリ)
201
207 External storage device (HDD, memory)
Claims (15)
複数の前記棄却値算出部のいずれかひとつ又はいずれか複数により算出されたひとつ又は複数の棄却値に基づき、それぞれ、前記認識結果を棄却するかどうか判定するひとつ又は複数の棄却判定部と、
を備え、
複数の前記棄却値算出部の相関性に基づいて組み合わせた複数の前記棄却値算出部を用いて、前記棄却判定部が、複数の棄却値に基づき前記認識結果の棄却判定をして、棄却すると判定された前記認識結果を棄却することにより、棄却すると判定されない前記認識結果を記憶部に保存又は表示部に表示させることを特徴とする文字認識装置。
A plurality of rejection value calculation units for calculating a rejection value by a preset rejection function for the recognition result of the character identified from the input image;
One or more rejection determination units for determining whether or not to reject the recognition result based on one or more rejection values calculated by any one or more of the plurality of rejection value calculation units, respectively,
With
Using the plurality of rejection value calculation units combined based on the correlation of the plurality of rejection value calculation units, the rejection determination unit makes a rejection determination of the recognition result based on a plurality of rejection values, and rejects By rejecting the determined recognition result, the recognition result that is not determined to be rejected is stored in a storage unit or displayed on a display unit.
先の前記棄却値算出部によって算出された棄却値に基づいて棄却と判定された場合には、後の前記棄却値算出部による棄却値の算出をスキップする構成とすることを特徴とする文字認識装置。
The character recognition device according to claim 1,
Character recognition, characterized in that, when it is determined to be rejected based on the rejection value calculated by the previous rejection value calculation unit, the calculation of the rejection value by the subsequent rejection value calculation unit is skipped. apparatus.
棄却能力又は棄却率が高い棄却値を算出する前記棄却値算出部ほど、先に配置して算出処理を行う構成とすることを特徴とする文字認識装置。
The character recognition device according to claim 1,
A character recognition device characterized in that the rejection value calculation unit that calculates a rejection value having a high rejection capability or rejection rate is arranged in advance and performs calculation processing.
複数の棄却値の独立性の高い棄却値を算出する前記棄却値算出部を直列に配置して算出処理を行う構成とすることを特徴とする文字認識装置。
The character recognition device according to claim 1,
A character recognition device, characterized in that a calculation process is performed by arranging in series the rejection value calculation units that calculate a rejection value with high independence of a plurality of rejection values.
複数の棄却値の独立性の低い棄却値を算出する前記棄却値算出部を並列に配置して算出処理を行う構成とすることを特徴とする文字認識装置。
The character recognition device according to claim 1,
A character recognition device characterized in that a calculation process is performed by arranging in parallel the rejection value calculation units for calculating a rejection value having a low independence of a plurality of rejection values.
複数の棄却値の独立性の高い棄却値を算出する前記棄却値算出部を直列に配置し、且つ、独立性の低い棄却値を算出する前記棄却値算出部を並列に配置して算出処理を行う構成とすることを特徴とする文字認識装置。
The character recognition device according to claim 1,
The rejection value calculation unit for calculating a rejection value with high independence of a plurality of rejection values is arranged in series, and the rejection value calculation unit for calculating a rejection value with low independence is arranged in parallel to perform calculation processing. A character recognition device characterized by being configured to perform.
前記棄却関数は、棄却したい前記認識結果に対しては高い値をとり、棄却したくない前記認識結果に対しては低い値をとるような棄却値を算出するための関数であることを特徴とする文字認識装置。
The character recognition device according to claim 1,
The rejection function is a function for calculating a rejection value that takes a high value for the recognition result desired to be rejected and takes a low value for the recognition result not desired to be rejected. Character recognition device.
予め、棄却したい画像サンプルを集めた棄却画像データベースと、
正読させたい画像サンプルを集めた正読画像データベースを
備え、
前記正読画像データベースによる棄却率が比較的小さく、前記棄却画像データベースによる棄却率が比較的大きくなるように、棄却値と比較して棄却判定するためのひとつ又は複数の閾値を定めることを特徴とする文字認識装置。
The character recognition device according to claim 1,
Rejected image database that collects image samples you want to reject in advance,
It has a correct image database that collects image samples you want to read correctly,
One or more threshold values for determining rejection are determined in comparison with a rejection value so that the rejection rate based on the correct image database is relatively small and the rejection rate based on the rejection image database is relatively large. Character recognition device.
棄却能力又は棄却率の高さと棄却値算出コストとに基づく棄却効率が高い前記棄却値算出部ほど先に配置し、前記棄却判定部により先の前記棄却値算出部によって算出された棄却値に基づいて棄却と判定された場合には、後の前記棄却値算出部による棄却値の算出処理を省略することを特徴とする文字認識装置。
The character recognition device according to claim 1,
The higher the rejection efficiency or the rejection value calculation cost based on the rejection value calculation cost, the higher the rejection efficiency calculation unit, the earlier the rejection value calculation unit, and based on the rejection value calculated by the rejection determination unit by the rejection determination unit If it is determined to be rejected, the character recognition device is characterized by omitting the process of calculating the reject value by the subsequent reject value calculating unit.
並列に配置した複数の前記棄却値算出部の各々の棄却値に基づいて、新たな棄却関数を定め、前記新たな棄却関数に基づいて棄却判定を行うことを特徴とする文字認識装置。
The character recognition device according to claim 1,
A character recognition device, wherein a new rejection function is determined based on a rejection value of each of the plurality of rejection value calculation units arranged in parallel, and a rejection determination is performed based on the new rejection function.
予め、棄却したい画像サンプルを集めた棄却画像データベースと、
正読させたい画像サンプルを集めた正読画像データベースを
備え、
複数の棄却値の独立性を判定し、前記独立性の判断として、
前記棄却画像データベースに記憶された画像サンプルと前記正読画像データベースに記憶された画像サンプルとを識別する前記棄却値を引数とする関数を、識別誤差に基づく関数により学習し、前記関数による識別誤差と、棄却値を直列に構成した場合の識別誤差とを比較し、両者の誤差の差が予め定めておいた閾値以上であった場合に、独立性が低いと判定し、それ以外の場合に独立性が高いと判定することを特徴とする文字認識装置。
The character recognition device according to claim 1,
Rejected image database that collects image samples you want to reject in advance,
It has a correct image database that collects image samples you want to read correctly,
Judging the independence of multiple rejection values,
A function having the rejection value as an argument for discriminating between the image sample stored in the reject image database and the image sample stored in the correct image database is learned by a function based on an identification error, and the identification error by the function And the discrimination error when the rejection value is configured in series, and if the difference between the two is greater than or equal to a predetermined threshold, it is determined that the independence is low, otherwise A character recognition device characterized by determining that the independence is high.
並列に配置された複数の前記棄却値算出部により棄却値を並列に計算すること、及び/又は、直列に配置された複数の前記棄却値算出部により棄却値を並行して計算することを特徴とする文字認識装置。
The character recognition device according to claim 1,
A rejection value is calculated in parallel by the plurality of rejection value calculation units arranged in parallel, and / or a rejection value is calculated in parallel by the plurality of rejection value calculation units arranged in series. A character recognition device.
文書を光学的に走査することによって文書画像を取得する文書画像化部と、
前記文書画像からノイズや背景を除去し、二値化して二値画像を生成する前処理部と、
前記二値画像の文書構造、図表構造を解析するレイアウト解析部と、
前記二値画像から文字列単位の画像を抽出する文字列抽出部と、
前記抽出された文字列画像の各々から文字単位の画像を切出する文字切出部と、
前記文字切出部で切りだされた各文字単位の画像中の文字を認識して前記認識結果を出力する文字識別部と、
前記文字識別部による前記認識結果と、前記棄却判定部による棄却判定結果に基づいて、前記各文字列画像の前記認識結果を選定する認識結果選定部と、
前記認識結果に基づいて、認識の再処理を行うかどうか判断するリトライ判定部と、
前記認識結果を保存及び/又は表示装置に出力する認識後処理部と、
を備えたことを特徴とする文字認識装置。
The character recognition device according to claim 1,
A document imaging unit for obtaining a document image by optically scanning the document;
A preprocessing unit that removes noise and background from the document image and binarizes to generate a binary image;
A layout analysis unit for analyzing the document structure and chart structure of the binary image;
A character string extraction unit that extracts an image of a character string unit from the binary image;
A character cutout unit that cuts out character-by-character images from each of the extracted character string images;
A character identification unit for recognizing a character in an image of each character unit cut out by the character cutout unit and outputting the recognition result;
A recognition result selection unit that selects the recognition result of each character string image based on the recognition result by the character identification unit and the rejection determination result by the rejection determination unit;
Based on the recognition result, a retry determination unit that determines whether to perform recognition reprocessing;
A post-recognition processing unit for storing and / or outputting the recognition result to a display device;
A character recognition device comprising:
入力画像から識別された文字の認識結果に対して、予め設定された棄却関数により棄却値を算出する複数の棄却値算出部を用い、
複数の前記棄却値算出部のいずれかひとつ又はいずれか複数により算出されたひとつ又は複数の棄却値に基づき、それぞれ、前記認識結果を棄却するかどうか判定するひとつ又は複数の棄却判定部を用い、
複数の前記棄却値算出部の相関性に基づいて組み合わせた複数の前記棄却値算出部を用いて、前記棄却判定部が、複数の棄却値に基づき前記認識結果の棄却判定をして、棄却すると判定された前記認識結果を棄却することにより、棄却すると判定されない前記認識結果を記憶部に保存又は表示部に表示させることを特徴とする文字認識方法。
A character recognition method,
For a recognition result of characters identified from the input image, using a plurality of rejection value calculation units for calculating a rejection value by a preset rejection function,
Based on one or more rejection values calculated by any one or more of the plurality of rejection value calculation units, respectively, using one or more rejection determination units to determine whether to reject the recognition result,
Using the plurality of rejection value calculation units combined based on the correlation of the plurality of rejection value calculation units, the rejection determination unit makes a rejection determination of the recognition result based on a plurality of rejection values, and rejects A character recognition method comprising: rejecting the determined recognition result, and storing the recognition result that is not determined to be rejected in a storage unit or displaying the recognition result on a display unit.
処理部が、複数の棄却値算出部を用い、入力画像から識別された文字の認識結果に対して、予め設定された棄却関数により棄却値を算出する機能と、
処理部が、ひとつ又は複数の棄却判定部を用い、複数の前記棄却値算出部のいずれかひとつ又はいずれか複数により算出されたひとつ又は複数の棄却値に基づき、それぞれ、前記認識結果を棄却するかどうか判定する機能と、
処理部が、複数の前記棄却値算出部の相関性に基づいて組み合わせた複数の前記棄却値算出部を用いて、前記棄却判定部が、複数の棄却値に基づき前記認識結果の棄却判定をして、棄却すると判定された前記認識結果を棄却することにより、棄却すると判定されない前記認識結果を記憶部に保存又は表示部に表示させる機能と
をコンピュータに実行させるための文字認識プログラム。
A character recognition program,
The processing unit uses a plurality of rejection value calculation units, a function of calculating a rejection value by a preset rejection function for the recognition result of the character identified from the input image,
The processing unit rejects the recognition result based on one or a plurality of rejection values calculated by any one or a plurality of the rejection value calculation units using one or a plurality of rejection determination units. A function to determine whether or not
The processing unit uses the plurality of rejection value calculation units combined based on the correlation of the plurality of rejection value calculation units, and the rejection determination unit performs rejection determination of the recognition result based on the plurality of rejection values. A character recognition program for causing a computer to execute a function of storing the recognition result that is not determined to be rejected in a storage unit or displaying it on a display unit by rejecting the recognition result determined to be rejected.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012268549A JP6055297B2 (en) | 2012-12-07 | 2012-12-07 | Character recognition apparatus and method, and character recognition program |
CN201310661200.7A CN103870823B (en) | 2012-12-07 | 2013-12-06 | Character recognition device and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012268549A JP6055297B2 (en) | 2012-12-07 | 2012-12-07 | Character recognition apparatus and method, and character recognition program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014115781A true JP2014115781A (en) | 2014-06-26 |
JP6055297B2 JP6055297B2 (en) | 2016-12-27 |
Family
ID=50909339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012268549A Active JP6055297B2 (en) | 2012-12-07 | 2012-12-07 | Character recognition apparatus and method, and character recognition program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6055297B2 (en) |
CN (1) | CN103870823B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017011581A (en) * | 2015-06-24 | 2017-01-12 | 株式会社Jストリーム | Moving picture processing device and moving picture processing system |
WO2019203489A1 (en) * | 2018-04-19 | 2019-10-24 | 넷마블 주식회사 | Image preprocessing apparatus and method for character recognition |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104331980A (en) * | 2014-11-04 | 2015-02-04 | 广州御银自动柜员机技术有限公司 | Voucher scanning and recovering device and recovering method thereof |
CN108280389A (en) * | 2017-01-06 | 2018-07-13 | 南通艾思达智能科技有限公司 | Medical bill ICR identifying systems and its medical bank slip recognition method |
CN116030581A (en) * | 2017-11-15 | 2023-04-28 | 天使集团股份有限公司 | Identification system |
JP7247472B2 (en) | 2018-04-19 | 2023-03-29 | 富士フイルムビジネスイノベーション株式会社 | Information processing device and program |
CN111291758B (en) * | 2020-02-17 | 2023-08-04 | 北京百度网讯科技有限公司 | Method and device for recognizing seal characters |
TWI775634B (en) * | 2021-10-07 | 2022-08-21 | 博相科技股份有限公司 | English font image recognition method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5679375A (en) * | 1979-11-30 | 1981-06-29 | Hitachi Ltd | Character read device |
JPS62166483A (en) * | 1986-01-20 | 1987-07-22 | Ricoh Co Ltd | Recognized character selecting method for character recognizing device |
JPH01277983A (en) * | 1988-04-28 | 1989-11-08 | Nec Corp | Character recognition system |
JP2000155803A (en) * | 1998-11-20 | 2000-06-06 | Nec Corp | Character reading method and optical character reader |
JP2012008791A (en) * | 2010-06-24 | 2012-01-12 | Hitachi Computer Peripherals Co Ltd | Form recognition device and form recognition method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3936436B2 (en) * | 1997-07-31 | 2007-06-27 | 株式会社日立製作所 | Table recognition method |
US8315484B2 (en) * | 2006-02-17 | 2012-11-20 | Lumex As | Method and system for verification of uncertainly recognized words in an OCR system |
JP5146190B2 (en) * | 2008-08-11 | 2013-02-20 | オムロン株式会社 | Character recognition device, character recognition program, and character recognition method |
CN102298696B (en) * | 2010-06-28 | 2013-07-24 | 方正国际软件(北京)有限公司 | Character recognition method and system |
-
2012
- 2012-12-07 JP JP2012268549A patent/JP6055297B2/en active Active
-
2013
- 2013-12-06 CN CN201310661200.7A patent/CN103870823B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5679375A (en) * | 1979-11-30 | 1981-06-29 | Hitachi Ltd | Character read device |
JPS62166483A (en) * | 1986-01-20 | 1987-07-22 | Ricoh Co Ltd | Recognized character selecting method for character recognizing device |
JPH01277983A (en) * | 1988-04-28 | 1989-11-08 | Nec Corp | Character recognition system |
JP2000155803A (en) * | 1998-11-20 | 2000-06-06 | Nec Corp | Character reading method and optical character reader |
JP2012008791A (en) * | 2010-06-24 | 2012-01-12 | Hitachi Computer Peripherals Co Ltd | Form recognition device and form recognition method |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017011581A (en) * | 2015-06-24 | 2017-01-12 | 株式会社Jストリーム | Moving picture processing device and moving picture processing system |
WO2019203489A1 (en) * | 2018-04-19 | 2019-10-24 | 넷마블 주식회사 | Image preprocessing apparatus and method for character recognition |
Also Published As
Publication number | Publication date |
---|---|
CN103870823A (en) | 2014-06-18 |
JP6055297B2 (en) | 2016-12-27 |
CN103870823B (en) | 2017-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6055297B2 (en) | Character recognition apparatus and method, and character recognition program | |
US10853638B2 (en) | System and method for extracting structured information from image documents | |
US20210117665A1 (en) | Systems and methods for neuronal visual-linguistic data retrieval from an imaged document | |
US9984471B2 (en) | Label and field identification without optical character recognition (OCR) | |
Choudhary et al. | A new character segmentation approach for off-line cursive handwritten words | |
US7929769B2 (en) | Script recognition for ink notes | |
JP5674615B2 (en) | Character recognition device and character recognition method | |
JP6170860B2 (en) | Character recognition device and identification function generation method | |
CN109389050B (en) | Method for identifying connection relation of flow chart | |
US11295175B1 (en) | Automatic document separation | |
Singh et al. | Statistical comparison of classifiers for script identification from multi-script handwritten documents | |
EP4244761A1 (en) | Fraud detection via automated handwriting clustering | |
Bhattacharya et al. | Understanding contents of filled-in Bangla form images | |
Al Ghamdi | A novel approach to printed Arabic optical character recognition | |
US20220284722A1 (en) | End-to-end system for extracting tabular data present in electronic documents and method thereof | |
Kumar et al. | Line based robust script identification for indianlanguages | |
CN115880702A (en) | Data processing method, device, equipment, program product and storage medium | |
Liu et al. | Investigating coupling preprocessing with shallow and deep convolutional neural networks in document image classification | |
Shivakumara et al. | A connected component-based deep learning model for multi-type struck-out component classification | |
Khan et al. | Evaluation of bengali handwritten mathematical equationusing convolutional neural network | |
Hijam et al. | Zone and rule assisted recognition of Meitei-Mayek handwritten characters | |
Alginahi et al. | An arabic script recognition system | |
ALSalamah et al. | Using Prior Knowledge to Facilitate Computational Reading of Arabic Calligraphy | |
CN111507236B (en) | File processing method, system, device and medium | |
Singh et al. | A Case Study on Handwritten Indic Script Classification: Benchmarking of the Results at Page, Block, Text-line, and Word Levels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150713 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160712 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160829 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161202 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6055297 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |