JPH0632076B2 - Simple handwritten character recognition device - Google Patents
Simple handwritten character recognition deviceInfo
- Publication number
- JPH0632076B2 JPH0632076B2 JP60219491A JP21949185A JPH0632076B2 JP H0632076 B2 JPH0632076 B2 JP H0632076B2 JP 60219491 A JP60219491 A JP 60219491A JP 21949185 A JP21949185 A JP 21949185A JP H0632076 B2 JPH0632076 B2 JP H0632076B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- character
- line
- run length
- marker
- 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.)
- Expired - Lifetime
Links
Landscapes
- Character Input (AREA)
- Character Discrimination (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は文字認識装置に係り、特に線順次で画情報を読
み取るファクシミリ等の如き装置に好適な簡易手書き文
字認識装置に関する。Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a character recognition device, and more particularly to a simple handwritten character recognition device suitable for a device such as a facsimile which reads image information in a line-sequential manner.
従来のこの種の文字認識装置は、特開昭59−1230
0号公報に記載のように、入力された画像データをビッ
トごとに処理していた。このようなビット処理方式の概
念的構成を第23図に示す。A conventional character recognition device of this type is disclosed in Japanese Patent Laid-Open No. 59-1230.
As described in Japanese Patent No. 0, the input image data is processed bit by bit. A conceptual configuration of such a bit processing system is shown in FIG.
第23図に示す方式では、画像データ201から1バイ
ト(Byte)のデータをレジスタ202に転送し、レジス
タ202のデータを1ビットづつシフトし、そのキャリ
ーフラグ203を参照して黒画素であるか、白画画素で
あるかを判定し、黒画素数をカウントする範囲を指定す
るカウントブロック指定部204の出力と処理している
データのアドレスとから、文字枠内の必要ブロックの黒
画素数をブロック内黒画素数計測部205で計測して各
ブロックに書き込みがあるかどうかを示す認識テーブル
206を作成し、どのブロックに書き込みがありどのブ
ロックに書き込みがないかによって何という文字である
かの認識処理を行っていた。しかしながら、かかるビッ
ト処理方式は、処理するデータ量が多いため処理速度が
遅く、この点についての配慮がなされていなかった。た
とえば、特開昭58−22476号公報には、数字記入
枠を7つのセグメントに分け、各セグメント内の記入線
分長を検出して文字を認識する技術が開示されている
が、線分長の検出には、ドットごとの処理が行われてい
た。In the system shown in FIG. 23, 1-byte (Byte) data is transferred from the image data 201 to the register 202, the data in the register 202 is shifted by 1 bit, and the carry flag 203 is referred to determine whether the pixel is a black pixel. , The number of black pixels of the required block in the character frame is determined from the output of the count block designating unit 204 for designating the range for counting the number of black pixels and the address of the data being processed. A recognition table 206 indicating whether or not there is a write in each block measured by the in-block black pixel number measuring unit 205 is created, and what character is used depending on which block has a write and which block has no write. It was performing recognition processing. However, this bit processing method has a slow processing speed because of the large amount of data to be processed, and no consideration has been given to this point. For example, Japanese Laid-Open Patent Publication No. 58-22476 discloses a technique for dividing a number entry frame into seven segments and detecting the entry line segment length in each segment to recognize a character. For the detection of, dot-by-dot processing was performed.
本発明の目的は、手書き文字を正確に判断すると共に、
これを高速に処理のできる簡易な文字認識装置を提供す
ることにある。An object of the present invention is to accurately judge a handwritten character,
An object of the present invention is to provide a simple character recognition device capable of processing this at high speed.
本発明の概要は、ラン長データに変換するとデータ量が
従来のものに対して約10分の1に削減できる点、及び
このラン長データの加減算によりビット処理と同様の処
理を行えるという点に着目し、黒画素数を計測するのに
ラン長データと計測する範囲とを比較し、高速に黒画素
数を計測できるようにしたものである。The outline of the present invention is that when converted to run length data, the amount of data can be reduced to about 1/10 of that of the conventional one, and that addition / subtraction of this run length data can perform the same processing as bit processing. Focusing attention, the run length data and the range to be measured are compared to measure the number of black pixels, and the number of black pixels can be measured at high speed.
以下、本発明の一実施例を図面により説明する。 An embodiment of the present invention will be described below with reference to the drawings.
第1図は本発明に使用する入力用紙の一例を示す説明図
である。302a及び302bは傾斜検出マーカ、30
5a〜305tは文字記入枠、304a〜304tは文
字記入枠上方の帯である。文字記入枠上方の帯が文字切
り出し用マーカをなしている。傾斜検出マーカ302a
及び302b、帯304a〜304tはファクシミリ読
み取り部で検知される色で印刷されている。FIG. 1 is an explanatory diagram showing an example of an input sheet used in the present invention. 302a and 302b are inclination detection markers, 30
5a to 305t are character entry frames, and 304a to 304t are bands above the character entry frame. The band above the character entry frame forms a character cutting marker. Tilt detection marker 302a
, 302b and bands 304a to 304t are printed in colors detected by the facsimile reading unit.
第2図は帯304a〜304t及び文字枠305a〜3
05tの詳細図である。305は文字枠,401A及び
401Bは文字枠305内の書き込み禁止領域で、40
2が文字記入部である。文字枠305及び、書き込み禁
止領域401A,Bはファクシミリ読み取り部で検知さ
れない色ドロップアウトカラーで印刷されている。FIG. 2 shows bands 304a-304t and character frames 305a-3.
It is a detailed view of 05t. 305 is a character frame, 401A and 401B are write-protected areas in the character frame 305, and
2 is a character entry section. The character frame 305 and the write-protected areas 401A and 401B are printed in a color dropout color that is not detected by the facsimile reading unit.
本実施例は、文字記入部402に記入された文字(8字
型の枠に一字だけ記入される)を認識する装置に関する
ものである。文字認識にあたり、文字記入部402を複
数のブロック、例えば第13図に示されるように150
1〜1515、に分け、書き込みがあるブロックを検出
する。予めどのブロックとどのブロックに書き込みがあ
れば何という文字であるかを規定する認識テーブルが作
成されており、検出された書き込みブロックと認識テー
ブルが対比されて、何という文字であるかが判定され
る。従来、記入された文字を白画素と黒画素からなる画
像データとして読み取り、前記各ブロックに黒画素が何
個あるかを計数し、得られたブロックごとの黒画素の個
数に基づいて当該ブロックへの書き込みの有無が判断さ
れていた。本発明は先に述べたように、各ブロックに黒
画素が何個あるかを計数する際に、読み込まれた画像デ
ータをラン長データに変換し、このラン長データを用い
て前記各ブロックごとの黒素数を計数するようにしたも
のである。The present embodiment relates to a device for recognizing a character (only one character is written in an 8-character frame) written in the character writing unit 402. In character recognition, the character entry unit 402 is divided into a plurality of blocks, for example, 150 as shown in FIG.
Blocks 1 to 1515 are detected, and blocks in which writing is performed are detected. What a are prepared recognition table defining whether the character if there is writing in advance which blocks and in which block, recognition table is compared with the detected write block, something that whether the character is determined It Conventionally, the written characters are read as image data consisting of white pixels and black pixels, the number of black pixels in each block is counted, and the number of black pixels for each block is used to enter the block. It was determined whether or not to write. As described above, according to the present invention, when counting the number of black pixels in each block, the read image data is converted into run length data, and the run length data is used for each block. The number of black primes of is calculated.
第3図は本発明の概略構成を示す図である。501はマ
ーカ検出部、502は帯検出部、503は黒画素数計測
部である。FIG. 3 is a diagram showing a schematic configuration of the present invention. Reference numeral 501 is a marker detection unit, 502 is a band detection unit, and 503 is a black pixel number measurement unit.
上記実施例の作用を以下説明する。The operation of the above embodiment will be described below.
ファクシミリで入力された画像データは、1ラインごと
にラン長データ作成部102へ転送される。The image data input by facsimile is transferred line by line to the run length data creation unit 102.
ラン長データ作成部10では1ライン分のデータをビッ
トごとに処理し黒画素、及び白画素がそれぞれ何ビット
連続しているかを示すラン長データを作成する。The run length data creation unit 10 processes the data for one line bit by bit, and creates run length data indicating how many bits each of black pixels and white pixels are continuous.
マーカ検出部501はラン長データを参照して傾斜検出
マーカ302を検出し、副走査1ラインに対する主走査
側の平均ビットずれを算出する。ここでいう主走査側の
平均ビットずれは、第8図(a)に示すように、入力デ
ータが傾斜している場合、主走査方向の走査ラインとブ
ロック境界線の交点位置が、走査ラインが副走査方向に
変わったとき、1ラインあたり、何ビットずれるかを示
すものである。The marker detection unit 501 detects the tilt detection marker 302 with reference to the run length data, and calculates the average bit shift on the main scanning side with respect to one sub-scanning line. As shown in FIG. 8 (a), the average bit shift on the main scanning side means that when the input data is inclined, the position of the intersection of the scanning line in the main scanning direction and the block boundary line is It shows how many bits are shifted per line when changing to the sub-scanning direction.
帯検出部502は、マーカ検出部501で検出された傾
斜検出マーカ302の位置と、ラン長データとを参照
し、各文字枠305上の帯304を検出し、帯304の
中心点を算出することにより各文字枠305の基準とな
るカウントエリア、及びカウントラインを決定する。カ
ウントエリアは黒画素を計数する領域、カウントライン
は黒画素を計数するときの基準となる線である。The band detection unit 502 refers to the position of the tilt detection marker 302 detected by the marker detection unit 501 and the run length data, detects the band 304 on each character frame 305, and calculates the center point of the band 304. As a result, the count area and the count line which are the reference of each character frame 305 are determined. The count area is an area for counting black pixels, and the count line is a reference line for counting black pixels.
黒画素計測部503は、帯検出部502で決定された基
礎となるカウントエリア、及びマーカ検出部で算出され
た副走査1ラインに対する主走査側の平均ビットずれに
より各ラインのカウントエリアのスタートアドレス、エ
ンドアドレスを決定し、カウントエリアのアドレス及び
黒ラン長のスタートアドレス、エンドアドレスによりカ
ウントエリア内の黒ラン長のスタートアドレスとエンド
アドレスとを決定してエリア内の黒画素数を計測し、カ
ウントラインによる各文字枠305内の各ブロック内の
黒画素数を計測する。The black pixel measuring unit 503 uses the basic count area determined by the band detection unit 502 and the start address of the count area of each line due to the average bit shift on the main scanning side with respect to one sub-scanning line calculated by the marker detection unit. The end address is determined, the start address of the count area and the start address of the black run length, the start address and the end address of the black run length in the count area are determined by the end address, and the number of black pixels in the area is measured The number of black pixels in each block in each character frame 305 by the count line is measured.
認識部109は黒画素計測部503で計測された各ブロ
ック内の黒画素数より各ブロック内の書き込みの有・無
を決定し、その組み合せにより文字コードを出力する。The recognizing unit 109 determines the presence / absence of writing in each block based on the number of black pixels in each block measured by the black pixel measuring unit 503, and outputs a character code according to the combination.
以下、上記第3図に示す実施例の各要素の詳細を説明す
る。The details of each element of the embodiment shown in FIG. 3 will be described below.
第4図はラン長データ作成部102の概念図である。6
01は生データテーブル,602はレジスタ,603は
キャリーフラグ,604はカウンタ,605は変化点検
出部,606はラン長データデーブルである。画像デー
タからラン長データを作成するには、まず、生データテ
ーブル601に格納されている1ライン分のデータのう
ちから1Byteのデータをレジスタ602へ転送する。レ
ジスタ602ではデータを1ビットシフトしキャリーフ
ラグ603を参照することにより、シフトされた1ビッ
トのデータが“1”か“0”かによって黒画素であるか
白画素であるかをカウンタ604、及び変化点検出部6
05へ転送する。変化点検出部605には前ビットのデ
ータが白画素であるか黒画素であるかが格納されており
現ビットのデータと一致しなければ変化点としカウンタ
604にカウントされている値をラン長データとして、
ラン長データテーブル606に格納する。又、ラン長デ
ータテーブル606の最初の行には白画素のラン長デー
タが格納され、以下順次黒画素、白画素の順に格納され
る。FIG. 4 is a conceptual diagram of the run length data creation unit 102. 6
Reference numeral 01 is a raw data table, 602 is a register, 603 is a carry flag, 604 is a counter, 605 is a change point detection unit, and 606 is a run length data table. To create run length data from image data, first, 1-byte data from the data for one line stored in the raw data table 601 is transferred to the register 602. The register 602 shifts the data by 1 bit and refers to the carry flag 603 to determine whether the shifted 1-bit data is a black pixel or a white pixel depending on whether it is "1" or "0". Change point detection unit 6
Transfer to 05. The change point detection unit 605 stores whether the data of the previous bit is a white pixel or a black pixel, and if it does not match the data of the current bit, the value counted as the change point by the counter 604 is used as the run length. As data,
It is stored in the run length data table 606. In addition, run length data of white pixels is stored in the first row of the run length data table 606, and subsequently, black pixels and white pixels are sequentially stored in this order.
上記回路の詳細な動作について第5図に示すフローチャ
ートを参照して説明する。The detailed operation of the circuit will be described with reference to the flowchart shown in FIG.
第5図はラン長データ作成部102の動作のフローチャ
ートである。第5図において701は初期値設定ステッ
プ,702は1Byteのデータ転送指令ステップ,703
はビットシフト指令ステップ,704はキャリーフラグ
参照ステップ,705および706は変化点検出ステッ
プ,707および708,709,710はカウンタ指
示ステップ、711および712はカウントさせるステ
ップ,713はシフト終了判断ステップ,714は1ラ
イン分のデータの処理が終了したかどうかを判断する判
断ステップである。FIG. 5 is a flowchart of the operation of the run length data creation unit 102. In FIG. 5, 701 is an initial value setting step, 702 is a 1-byte data transfer command step, 703.
Is a bit shift command step, 704 is a carry flag reference step, 705 and 706 are change point detection steps, 707 and 708, 709, 710 are counter instruction steps, 711 and 712 are counting steps, 713 is a shift end determination step, 714. Is a judgment step for judging whether or not the processing of the data for one line is completed.
初期値設定ステップ701では、カウンタ604および
ラン長データテーブル606,変化点検出部605の初
期設定を行う。先に述べたように白画素のラン長より作
成していく為、変化点検出部605には“0”が初期値
として格納され、カウンタ604には0が設定される。
ラン長データテーブル606は初期化される。次に、1
Byteデータ転送指令ステップ702によって生データテ
ーブル601中の1Byteの生データ(画像データ)が、
レジスタ602に転送され、ビットシフト指令ステップ
703でビットシフトが行われる。シフトされたデータ
は、キャリーフラグ参照ステップ704でキャリーフラ
グ内のデータが“0”が“1”かを判断され、得られた
結果が白を示す“0”であればステップ705に進み、
黒を示す“1”であればステップ706に進む。ステッ
プ705では変化点検出部605に格納されている値と
“0”が比較され、最初の白かどうか、つまり変化点検
出部605に格納されている値が“1”か“0”かが判
断される。最初の白である場合(つまり現在変化点検出
部605に格納されている値が“1”の場合)は、ステ
ップ707に進み、現在のカウンタ604内の値がラン
長データテーブル606に格納されて次のステップ70
8に進む。ステップ708ではカウンタ604に“1”
がセットされるとともに変化点検出部605に白を示す
“0”がセットされ、ステップ713に進む。また、最
初の白でない場合(つまり現在変化点検出部605に格
納されている値が“0”の場合)は、ステップ711へ
進み、カウンタ604の値に1が加えられたのち、ステ
ップ713に進む。In the initial value setting step 701, the counter 604, the run length data table 606, and the change point detection unit 605 are initialized. Since it is created from the run length of the white pixel as described above, “0” is stored as the initial value in the change point detection unit 605, and 0 is set in the counter 604.
The run length data table 606 is initialized. Then 1
By the Byte data transfer command step 702, 1 Byte of raw data (image data) in the raw data table 601 is
It is transferred to the register 602, and bit shift is performed in the bit shift command step 703. In the carry flag reference step 704, it is determined whether the data in the carry flag is “0” or “1”. If the obtained result is “0” indicating white, the process proceeds to step 705.
If it is “1” indicating black, the process proceeds to step 706. In step 705, the value stored in the change point detection unit 605 is compared with "0" to determine whether it is the first white, that is, whether the value stored in the change point detection unit 605 is "1" or "0". To be judged. If it is the first white (that is, if the value currently stored in the change point detection unit 605 is “1”), the process proceeds to step 707, and the current value in the counter 604 is stored in the run length data table 606. Next step 70
Go to 8. In step 708, the counter 604 is set to "1".
Is set and "0" indicating white is set in the change point detection unit 605, and the process proceeds to step 713. If it is not the first white (that is, if the value currently stored in the change point detection unit 605 is “0”), the process proceeds to step 711, 1 is added to the value of the counter 604, and then the process proceeds to step 713. move on.
ステップ706では、変化点検出部605に格納されて
いる値と“1”が比較され、最初の黒かどうか、つまり
変化点検出部605に格納されている値が“1”か
“0”かが判断される。最初の黒である場合(つまり現
在変化点検出部605に格納されている値が“0”の場
合)は、ステップ709に進み、現在のカウンタ604
内の値がラン長データテーブル606に格納されて次の
ステップ710に進む。ステップ710ではカウンタ6
04に“1”がセットされるとともに変化点検出部60
5に黒を示す“1”がセットされ、ステップ713に進
む。また、最初の黒でない場合(つまり現在変化点検出
部605に格納されている値が“1”の場合)は、ステ
ップ712へ進み、カウンタ604の値に1が加えられ
たのち、ステップ713に進む。In step 706, the value stored in the change point detection unit 605 is compared with "1" to determine whether it is the first black, that is, whether the value stored in the change point detection unit 605 is "1" or "0". Is judged. When it is the first black (that is, when the value currently stored in the change point detection unit 605 is “0”), the process proceeds to step 709, and the current counter 604.
Is stored in the run length data table 606 and the process proceeds to the next step 710. Counter 6 in step 710
"1" is set in 04 and the change point detection unit 60
“1” indicating black is set in 5, and the process proceeds to step 713. If it is not the first black (that is, if the value currently stored in the change point detection unit 605 is “1”), the process proceeds to step 712, 1 is added to the value of the counter 604, and then the process proceeds to step 713. move on.
シフト終了判断ステップ713では、レジスタ602の
データを8回シフトしたかどうかを判断し、シフトが終
了していなければステップ703に戻ってこれまでの手
順が繰り返される。8回のシフトが終わっていれば、ス
テップ714に進み、1ライン分のデータの処理が終了
したかどうかが判断される。1ライン分のデータの処理
が終了していなければ、次の1Byteのデータがレジスタ
602に転送され、1ライン分のデータ処理が終了する
まで上記手順が繰り返される。In the shift end judgment step 713, it is judged whether or not the data in the register 602 has been shifted eight times, and if the shift has not ended, the procedure returns to step 703 and the above procedure is repeated. If eight shifts have been completed, the routine proceeds to step 714, where it is judged whether the processing of the data for one line has been completed. If the processing of the data for one line is not completed, the next 1-byte data is transferred to the register 602, and the above procedure is repeated until the data processing for one line is completed.
第6図はラン長データ作成部102の処理を高速に行う
為のLSIの一つの例を示すブロック図である。FIG. 6 is a block diagram showing an example of an LSI for performing the processing of the run length data creation unit 102 at high speed.
このLSIの概要については、高速なビット処理を必要
とする変化点検出部と画信号復元部をハードウエア化
し、符号表の参照や演算をマイクロプログラムにより柔
軟かつ高速化したものである。このLSIの詳細につい
ては特願昭57−174623号及び特願昭58−10
71号に記載されている。As for the outline of this LSI, the change point detection unit and the image signal restoration unit that require high-speed bit processing are made into hardware, and the reference and calculation of the code table are made flexible and faster by a microprogram. For details of this LSI, see Japanese Patent Application Nos. 57-174623 and 58-10.
No. 71.
次に第3図のマーカ検出部501で行われる傾斜検出方
式について説明する。Next, the tilt detection method performed by the marker detection unit 501 in FIG. 3 will be described.
第7図は傾斜補正の概念を示す図である。FIG. 7 is a diagram showing the concept of tilt correction.
第7図(a)は入力データを示す。このようなデータを
入力した場合に、傾斜補正を行わなければ実際に切出さ
れた文字は第7図(b)のようになり、参照すべきブロ
ック(図では15ブロックに区分されている)がずれて
しまう。そこで副走査方向のみを補正したたとすれば、
第7図(c)のようになり、主走査方向のブロックずれ
がある。また、主走査方向のみを補正したとすれば、第
7図(d)のようになってしまうが、副走査方向にずれ
はあるものの参照ブロック内の黒画素数にそれほど変化
はない。したがって、主走査および副走査方向を補正す
れば、第7図(e)のように、適正なものになる。これ
より主走査および副走査方向を補正するのがよいことが
わかる。コスト,プログラム容量、処理速度等から主走
査方向のみを補正するだけとする。FIG. 7 (a) shows input data. When such data is input, if the inclination is not corrected, the characters actually cut out are as shown in FIG. 7 (b), and the blocks to be referenced (divided into 15 blocks in the drawing). Will be misaligned. Therefore, if only the sub-scanning direction is corrected,
As shown in FIG. 7C, there is a block shift in the main scanning direction. Further, if only the main scanning direction is corrected, the result is as shown in FIG. 7D. However, although there is a shift in the sub scanning direction, the number of black pixels in the reference block does not change so much. Therefore, if the main scanning direction and the sub scanning direction are corrected, it becomes appropriate as shown in FIG. 7 (e). From this, it is understood that it is preferable to correct the main scanning direction and the sub scanning direction. Only the main scanning direction is corrected based on cost, program capacity, processing speed, etc.
次に、マーカ検出について第8図を参照して説明する。Next, marker detection will be described with reference to FIG.
入力用紙の横方向の線が主走査方向に対して平行な状態
で画像データの読み込みが行われた場合は、文字記入枠
305の縦の線は主走査方向に対して垂直であり、先に
第13図を参照して説明した文字認識のためのブロック
分けをしている文字記入枠305の縦の境界線の位置
は、副走査方向に走査ラインが進行しても変わることは
ない。しかし、第8図に示すように、入力用紙の横方向
の線が主走査方向に対して平行でない場合は、副走査方
向に走査ラインが進行するにつれて、境界線の位置が左
もしくは右に動くことになる。第8図の場合、副走査方
向に走査ラインが進行するにつれて、境界線の位置が左
に動く。入力用紙301上の左右の傾斜検出マーカ30
2a及び302bの出現するライン数の差ΔY及び左右
の傾斜検出マーカ302a及び302bのスタートアド
レスの差Lドットより1ライン当たりの主走査側の平均
ビットずれΔXは、 ΔX=ΔY/L となる。When the image data is read in a state where the horizontal line of the input paper is parallel to the main scanning direction, the vertical line of the character entry frame 305 is vertical to the main scanning direction, and The position of the vertical boundary line of the character entry frame 305, which is divided into blocks for character recognition described with reference to FIG. 13, does not change even if the scanning line advances in the sub-scanning direction. However, as shown in FIG. 8, when the horizontal line of the input paper is not parallel to the main scanning direction, the position of the boundary line moves left or right as the scanning line advances in the sub scanning direction. It will be. In the case of FIG. 8, the position of the boundary line moves to the left as the scanning line advances in the sub-scanning direction. Left and right inclination detection markers 30 on the input sheet 301
The average bit shift ΔX on the main scanning side per line from the difference ΔY in the number of lines 2a and 302b that appear and the difference L in the start addresses of the left and right tilt detection markers 302a and 302b is ΔX = ΔY / L.
マーカ検出部501の動作を第9図のフローチャートを
用いて説明する。The operation of the marker detector 501 will be described with reference to the flowchart of FIG.
まず、各ステップの名称を説明すると、1101はライ
ン数カウントステップ,1102はマーカ幅判断ステッ
プ,1103及び1109は位置判断ステップ,110
4及び1110は初マーカ判断ステップ,1105及び
1112はマーカスタート検出ステップ,1106及び
1111はマーカ長さカウントステップ,1107及び
1113はマーカ長さ判断ステップ,1108及び11
14,1115はマーカ判断ステップである。ここでい
うマーカ長さは副走査方向に数えたライン数、マーカ幅
は主走査方向のマーカーの寸法である。First, the name of each step will be described. 1101 is a line number counting step, 1102 is a marker width determining step, 1103 and 1109 are position determining steps, and 110.
4 and 1110 are initial marker determination steps, 1105 and 1112 are marker start detection steps, 1106 and 1111 are marker length counting steps, 1107 and 1113 are marker length determination steps, 1108 and 11
Reference numerals 14 and 1115 are marker determination steps. The marker length here is the number of lines counted in the sub-scanning direction, and the marker width is the dimension of the marker in the main scanning direction.
マーカ幅判断ステップ1102では1ライン分のラン長
データテーブル606のデータを参照し、その中の黒ラ
ン長を読みだしてマーカ幅があったかどうかを判断し、
あった場合は位置判断ステップ1103及び1109で
右のマーカであるか左のマーカであるかノイズであるか
を判断する。シートの右のマーカも左のマーカでもない
場合はノイズと判断してステップ1101に戻る。In the marker width determination step 1102, the data in the run length data table 606 for one line is referred to, the black run length in the data is read to determine whether or not there is a marker width,
If there is, it is determined in position determination steps 1103 and 1109 whether the marker is the right marker, the left marker, or noise. If neither the right marker nor the left marker on the sheet is determined to be noise, the process returns to step 1101.
左側の傾斜検出マーカ302aである場合には初マーカ
判断ステップ1104で最初のマーカ幅かどうかを判断
し、最初のマーカである場合はマーカスタート検出ステ
ップ1105で主走査方向のスタートアドレス及び副走
査側出現ライン数のテーブルを作成し、マーカ長さ(出
現ライン数)を1とし、ステップ1107に進む。最初
のマーカ幅でなかった場合は、マーカ長さカウントステ
ップ1106でマーカ長さをカウント(マーカ長さ=出
現ライン数を1増加)し、ステップ1107に進む。ス
テップ1107では、マーカ長さのデータが規定の値あ
ったかどうかを判断し、規定の値あった場合はマーカ判
断ステップ1108に進んで、左側のマーカをありとす
る。マーカ長さのデータが規定の値なかった場合は、ス
テップ1101に戻ってこれまでの手順を繰り返す。If it is the left tilt detection marker 302a, it is judged in the first marker judgment step 1104 whether it is the first marker width. If it is the first marker, in the marker start detection step 1105 the start address in the main scanning direction and the sub-scanning side. A table of the number of appearance lines is created, the marker length (the number of appearance lines) is set to 1, and the process proceeds to step 1107. If it is not the first marker width, the marker length is counted in the marker length counting step 1106 (marker length = the number of appearance lines is incremented by 1), and the process proceeds to step 1107. In step 1107, it is judged whether or not the marker length data has a specified value, and if it has the specified value, the process proceeds to the marker judgment step 1108, and the marker on the left side is made to exist. If the marker length data does not have the specified value, the process returns to step 1101 to repeat the procedure so far.
ステップ1109で右側のマーカであると判断された場
合も同様の手順がステップ1110〜1114で繰り返
される。ステップ1114で右側のマーカありと判断さ
れたらステップ1115に進み、左右両方のマーカがあ
ったかどうかが判断される。両方のマーカがあった場合
は、1ライン当たりの主走査側の平均ビットずれΔX
を、ステップ1105で作成された左側のマーカの主走
査方向のスタートアドレス及び副走査側出現ライン数の
テーブルとステップ1112で作成された右側のマーカ
の主走査方向のスタートアドレス及び副走査側出現ライ
ン数のテーブルを参照して算出する。左側のマーカの主
走査方向のスタートアドレスと右側のマーカの主走査方
向のスタートアドレスの差をL、左側のマーカの副走査
側出現ライン数と右側のマーカーの副走査側出現ライン
数の差をΔYとして、さきに述べた式を用いて、平均ビ
ットずれΔXを求める。このΔXの算出は、後述するス
テップ1301で実行される。When it is determined in step 1109 that the marker is the right marker, the same procedure is repeated in steps 1110 to 1114. If it is determined in step 1114 that there is a right-side marker, the process proceeds to step 1115, and it is determined whether or not there are both left and right markers. When both markers are present, the average bit shift ΔX on the main scanning side per line
A table of the start address and sub-scanning side appearance line number of the left marker in the main scanning direction created in step 1105, and the start address and sub-scanning line appearance line in the main scanning direction of the right marker created in step 1112 It is calculated by referring to a table of numbers. The difference between the start address of the left marker in the main scanning direction and the start address of the right marker in the main scanning direction is L, and the difference between the number of appearance lines of the left marker on the sub-scanning side and the number of appearance lines of the right marker on the sub-scanning side is As ΔY, the average bit shift ΔX is obtained using the formula described above. This calculation of ΔX is executed in step 1301 described later.
次に、帯検出部の動作について第11図に示すフローチ
ャートを参照して説明する。まず、各ステップの名称を
説明すると、12201は帯長さ判断ステップ,120
2は初帯判断ステップ,1203は初期値設定ステッ
プ,1204及び1205は帯スタート決定ステップ,
1206及び1207は帯エンド決定ステップ,120
8は帯幅カウントステップ,1209は帯幅判断ステッ
プ、1211は帯中心算出ステップ,1210はライン
カウントステップである。ここでいう帯長さは主走査方
向の帯の長さをいい、帯幅は副走査方向に数えた帯部分
のライン数をいう。Next, the operation of the band detector will be described with reference to the flowchart shown in FIG. First, the name of each step will be described.
2 is an initial belt determination step, 1203 is an initial value setting step, 1204 and 1205 are belt start determination steps,
1206 and 1207 are band end determination steps, 120
8 is a band width counting step, 1209 is a band width determining step, 1211 is a band center calculating step, and 1210 is a line counting step. The band length referred to here is the length of the band in the main scanning direction, and the band width is the number of lines in the band portion counted in the sub scanning direction.
帯長さ判断ステップ1201はラン長データテーブル6
06のデータを読み出し、帯長さの有無を判断する。読
みだしたラン長データに、帯長さに相当する黒ラン長が
あった場合には、左の傾斜検出マーカ302aのスター
トアドレスにより文字記入枠305a〜305tのどの
上の帯長さであるかを判断し、初帯判断ステップ120
2により最初の帯かどうかを判断する。最初の帯であっ
た場合には初期値設定ステップ1203に進んで、当該
黒ラン長のスタートアドレスを帯のスタートアドレス
に、当該黒ラン長のエンドアドレスを帯のエンドアドレ
スにそれぞれセットし、当該黒ラン長のライン数に4を
加えて副走査側の帯の中心ライン数のテーブルを作成
し、帯幅を1にセットする。ここでいう帯幅は、副走査
側の帯の出現ライン数である。The band length determination step 1201 is the run length data table 6
The data of No. 06 is read, and the presence or absence of the band length is determined. If the read run length data has a black run length corresponding to the band length, which band length above the character entry frames 305a to 305t is the band length depending on the start address of the left tilt detection marker 302a. The first belt judgment step 120
Judge whether it is the first obi according to 2. If it is the first band, the process proceeds to an initial value setting step 1203, where the start address of the black run length is set to the start address of the band, and the end address of the black run length is set to the end address of the band. 4 is added to the number of lines of the black run length to create a table of the number of central lines of the sub-scan band, and the band width is set to 1. The band width here is the number of appearance lines of the band on the sub-scanning side.
ステップ1202で最初の帯でなかったと判断された場
合は、帯スタート決定ステップ1204で帯のスタート
アドレスのテーブルの値と黒ラン長の値を比較し、小さ
い値をスタートアドレスのテーブルに格納する。また、
帯エンド決定ステップ1206,1207も同様にして
大きい値をエンドアドレスのテーブルに格納する。つま
り、帯を示すいくつかの黒ラン長のなかで一番左側にな
るスタートアドレスを帯のスタートアドレスとし、一番
右側になるエンドアドレスを帯のエンドアドレスとし
て、帯の主走査方向の最大の長さ(範囲)を検出する。If it is determined in step 1202 that the band is not the first band, the band start determination step 1204 compares the value of the band start address table with the value of the black run length, and the smaller value is stored in the start address table. Also,
Similarly, in the band end determination steps 1206 and 1207, a large value is stored in the end address table. In other words, the start address on the leftmost side is the start address of the belt and the end address on the farthest right is the end address of the belt among the several black run lengths indicating the belt. Detect the length (range).
帯幅カウントステップ1208では、帯幅がカウント
(出現ライン数が1プラス)される。帯幅判断ステップ
1209では帯幅カウントステップ1208でカウント
された値によって帯幅が規定の値あるかどうかが判断さ
れ、有りの場合(つまり帯に相当する部分のラインのチ
ェックが終了したと見做される場合)は帯中心算出ステ
ップ1211で帯のスタートアドレス及びエンドアドレ
スのテーブルより主走査側の帯の中心が算出され、無い
場合はステップ1210が実行される。ステップ121
0ではラインカウントが1増加され、このラインカウン
トはラン長データテーブル606から読みだされたデー
タのラインン数を示している。ステップ1210でライ
ンカウントが1増加されたら、再びステップ1201に
戻り、ラン長データテーブル606のデータが読み出さ
れ、上述の手順が繰り返される。In the band width counting step 1208, the band width is counted (the number of appearance lines is incremented by 1). In the band width determination step 1209, it is judged whether or not the band width has a prescribed value based on the value counted in the band width counting step 1208, and if there is (that is, it is considered that the check of the line corresponding to the band is completed). (If performed), the center of the band on the main scanning side is calculated from the band start address and end address tables in the band center calculation step 1211, and if not, step 1210 is executed. Step 121
At 0, the line count is incremented by 1, and this line count indicates the number of lanes of the data read from the run length data table 606. When the line count is incremented by 1 in step 1210, the process returns to step 1201 again, the data in the run length data table 606 is read, and the above procedure is repeated.
次に、傾斜補正の作用について第11図のフローチャー
トを用いて説明する。この傾斜補正は、マーカ検出部5
01で算出される平均ビットずれΔXを用いて、文字記
入枠402の各ブロックの境界線の位置を補正し、入力
用紙の傾斜が各ブロックの黒画素数に影響するのを防ぐ
ものである。Next, the operation of tilt correction will be described with reference to the flowchart of FIG. This inclination correction is performed by the marker detection unit 5
The position of the boundary line of each block of the character entry frame 402 is corrected using the average bit shift ΔX calculated in 01 to prevent the inclination of the input paper from affecting the number of black pixels in each block.
まず、各ステップの名称を説明する。1301は平均ビ
ットずれ算出ステップ、1302はライン数カウントス
テップ、1303はライン送り判断ステップ、1304
はビットずれ算出ステップ、1305はビットずれ判定
ステップ、1306及び1307は補正ステップ、13
08及び1309は後処理ステップ、1310は黒画素
計測ステップ、そして1311は文字枠終了判定ステッ
プである。First, the name of each step will be described. 1301 is an average bit shift calculating step, 1302 is a line number counting step, 1303 is a line feed judging step, 1304.
Is a bit shift calculation step, 1305 is a bit shift determination step, 1306 and 1307 are correction steps, 13
08 and 1309 are post-processing steps, 1310 is a black pixel measurement step, and 1311 is a character box end determination step.
この動作について説明する。平均ビットずれ算出ステッ
プ1301で平均ビットずれΔXが算出され、ライン数
カウントステップ1302で現在走査されているライン
数がカウントされる。ライン送り判断ステップ1303
は帯304を検出後文字記入部402までライン送りを
する為その判断(何ライン分送るかの判断)をする。ビ
ットずれ算出ステップ1304で現在走査されているラ
インのビットずれ量Aが、前記ΔXとステップ1302
でカウントされるライン数をもとに算出される。また、
ビットずれ判定ステップ1305ではビットずれ算出ス
テップ1304で算出された値Aが1以上か−1以下の
場合には1ドット送りを行う指示をする。A≧1であれ
ば補正ステップ1306で右方向に1ドット送り、−1
以下であれば補正ステップ1307で左方向に1ドット
送る。補正を行った後は後処理ステップ1308でビッ
トずれ量を−1し、または後処理ステップ1309で+
1し、黒画素数計測ステップ1310で黒画素数を計測
し、終了判定する(ステップ1311)。This operation will be described. The average bit shift ΔX is calculated in the average bit shift calculation step 1301, and the number of lines currently scanned is counted in the line number counting step 1302. Line feed judgment step 1303
After the band 304 is detected, the line is sent to the character entry section 402, so that judgment is made (the number of lines to be sent). The bit deviation amount A of the line currently scanned in the bit deviation calculation step 1304 is the ΔX and the step 1302.
It is calculated based on the number of lines counted in. Also,
In the bit shift determination step 1305, if the value A calculated in the bit shift calculation step 1304 is 1 or more or -1 or less, an instruction to feed one dot is issued. If A ≧ 1, in the correction step 1306, one dot is moved to the right, −1.
If it is below, one dot is sent to the left in the correction step 1307. After the correction, the bit shift amount is decremented by -1 in the post-processing step 1308 or + in the post-processing step 1309.
1, the number of black pixels is measured in the black pixel number measurement step 1310, and the end is determined (step 1311).
次に、上記フローチャートを用いて実際に補正を行った
例を第12図を参照しながら説明する。Next, an example of actual correction using the above flow chart will be described with reference to FIG.
第12図は傾斜補正方法を実際にラインのビットずれ算
出に適用した例を示したものである。第12図(a)は
1ラインあたりのΔXが0.25の場合の補正例であり、
第13図(b)はΔXが0.3の場合の補正例である。図
中の線1401及び1402はカウントエリアの境界で
ある。FIG. 12 shows an example in which the inclination correction method is actually applied to the calculation of the bit deviation of the line. FIG. 12 (a) is a correction example when ΔX per line is 0.25,
FIG. 13B is an example of correction when ΔX is 0.3. Lines 1401 and 1402 in the figure are boundaries of the count area.
ΔXが0.25の場合は、1ラインの走査ごとに0.25個
のビットずれが生ずるから、4ライン走査ごとにビット
ずれAが0.25×4=1となる。最上列のラインと2番
目の列の間で0.25のビットずれAが生じ、3番目の列
でA=0.5に、4番目の列でA=0.75に、順次累積さ
れ、5番目の列でA=1となる為、境界1401を右に
1ドット分ずらす。このドットのずらしで5番目の列の
ビットずれはA=1−1=0となり、6番目の列のビッ
トずれAは再び1ライン分増えて0.25となる。7番目
の列で0.5、8番目の列で0.75、9番目の列で再びA
=1となり、境界1401を再び右に1ドット分ずら
す。このようにビットずれ累積値Aが1以上になつたラ
インで順次境界1401を1ドット右にずらし、同時に
ビットずれの累積値をAからA−1にする。そして次の
ラインから1ラインごとにΔX(この例では0.25)を
A−1に加えていき、累積値が1以上になったら境界1
401を1ドット右にずらすのである。When ΔX is 0.25, 0.25 bit shifts occur every scanning of one line, so the bit shift A becomes 0.25 × 4 = 1 every four scanning lines. There is a bit shift A of 0.25 between the line of the top row and the second row, A = 0.5 in the third row, A = 0.75 in the fourth row, and sequentially accumulated. Since A = 1 in the column of, the boundary 1401 is shifted to the right by one dot. With this dot shift, the bit shift of the fifth column becomes A = 1−1 = 0, and the bit shift A of the sixth column again increases by one line and becomes 0.25. 0.5 in 7th row, 0.75 in 8th row, A again in 9th row
= 1 and the boundary 1401 is again shifted to the right by one dot. In this way, the boundary 1401 is sequentially shifted to the right by one dot in the line where the accumulated bit deviation value A is 1 or more, and at the same time, the accumulated value of the bit deviation is changed from A to A-1. Then, ΔX (0.25 in this example) is added to A-1 for each line from the next line, and when the accumulated value becomes 1 or more, the boundary 1
That is, 401 is shifted to the right by one dot.
ΔXが0.3の場合は、最初のラインはA=0、2番目の
ラインでA=0.3、3番目のラインでA=0.6、4番目の
ラインでA=0.9、5番目のラインでA=1.2となり、1
以上となる。したがって5番目のラインで境界1402
を1ドット右にずらし、後処理部1308の処理により
Aを1.2−1=0.2とする。6番目のラインで再び0.3を
加えてA=0.5、7番目のラインでA=0.8、8番目のラ
インでA=1.1となって再び右に1ドットずらし、A=
0.1とする。このようにしてカウントエリア補正が行わ
れる。If ΔX is 0.3, A = 0 for the first line, A = 0.3 for the second line, A = 0.6 for the third line, A = 0.9 for the fourth line, A = 1.2 for the fifth line. Becomes 1
That is all. Therefore, at the fifth line, the boundary 1402
Is shifted to the right by one dot, and A is set to 1.2-1 = 0.2 by the processing of the post-processing unit 1308. Add 0.3 again on the 6th line, A = 0.5, A = 0.8 on the 7th line, A = 1.1 on the 8th line and shift 1 dot to the right again, A =
Set to 0.1. In this way, the count area correction is performed.
次に黒画素数計測部503の動作を説明する。Next, the operation of the black pixel number measuring unit 503 will be described.
第13図は黒画素数計測時の文字記入枠305をブロッ
クに分割した一例である。この分割は、読み込んだ画像
データから文字認識のポイントになる部分を抜き出すた
めに行われる。各ブロックの名称を説明する。1501
はメインブロック1,1502はメインブロック2,1
503はメインブロック3,1504はメインブロック
4,1505はメインブロック5,1506はメインブ
ロック6,1507はメインブロック7である。150
8はサブブロック1,1509はサブブロック2,15
10はサブブロック3,1511はサブブロック4,1
512はサブブロック5,1513はサブブロック6,
1514はサブブロック7,1515はサブブロック8
である。1516,1517,1518,1519,1
520,1521はカウントエリアの境界、1522,
1523,1524,1525,1526,1527,
1528,1529はカウントラインの境界である。カ
ウントエリアの境界1516,1517,1518,1
519,1520,1521の位置は傾斜補正が行われ
る。カウントエリアの境界は、主走査方向の前記ブロッ
クの境界を、カウントラインの境界は副走査方向の前記
ブロックの境界を、それぞれ表す。FIG. 13 is an example in which the character entry frame 305 when measuring the number of black pixels is divided into blocks. This division is performed in order to extract the portion that becomes the point of character recognition from the read image data. The name of each block will be described. 1501
Is a main block 1,1502 is a main block 2,1
503 is a main block 3, 1504 is a main block 4, 1505 is a main block 5, 1506 is a main block 6, and 1507 is a main block 7. 150
8 is sub-block 1,1509 is sub-block 2,15
10 is a sub block 3, 1511 is a sub block 4, 1
512 is a sub-block 5, 1513 is a sub-block 6,
1514 is the sub-block 7, and 1515 is the sub-block 8.
Is. 1516, 1517, 1518, 1519, 1
Reference numerals 520 and 1521 denote boundaries of counting areas, and 1522 and 1522.
1523, 1524, 1525, 1526, 1527,
1528 and 1529 are boundaries of the count lines. Count area boundaries 1516, 1517, 1518, 1
Tilt correction is performed on the positions of 519, 1520, and 1521. The boundary of the count area represents the boundary of the block in the main scanning direction, and the boundary of the count line represents the boundary of the block in the sub scanning direction.
傾斜補正後のカウントエリア内の黒画素数の計測方法
を、第14〜17図によって説明する。A method of measuring the number of black pixels in the count area after the inclination correction will be described with reference to FIGS.
第14図は書き込みのある文字記入枠305のブロック
分割の一例である。第14図では、上下方向の線151
6〜1521で区切られた区画(ブロック)のうち、左
から主走査方向のアドレス1〜21の範囲を1,アドレ
ス22〜25の範囲を2,アドレス26〜31の範囲を
3,アドレス32〜35の範囲を4,アドレス36〜5
6の範囲を5と付番し、横方向の線で区切られた横方向
区画を上から、副走査方向のライン数Yが1〜18の範
囲を1,ライン数Yが19〜24の範囲を2,というよ
うに順次7まで付番してある。1601は書き込まれた
黒画素のラン長,1602はブロック基準点である。FIG. 14 is an example of block division of the character entry frame 305 with writing. In FIG. 14, a vertical line 151
Of the sections (blocks) divided by 6 to 1521, the range of addresses 1 to 21 in the main scanning direction from the left is 1, the range of addresses 22 to 25 is 2, the range of addresses 26 to 31 is 3, and the address 32 is 32. 35 ranges 4, addresses 36-5
The range of 6 is numbered as 5, and the horizontal section divided by the horizontal line is from the top, the range of the number of lines Y in the sub-scanning direction is 1 to 18, and the number of lines Y is the range of 19 to 24. Numbers are sequentially numbered up to 7, such as 2. 1601 is the run length of the written black pixel, and 1602 is the block reference point.
黒画素のラン長1601のブロック基準点1602から
の主走査側のスタートアドレスXs及びエンドアドレス
Xeから、第16図に示すアドレス変換テーブルにより
主走査側のスタートブロック番号(Xsがあるブロック
番号、第14図の例では3)Is,及びエンドブロック
番号(Xeがあるブロック番号、14図の例では5)I
Eが算出される。また黒画素のラン長1601のブロッ
ク基準点1602からの副走査側の位置Yと第17図に
示すライン変換テーブルにより副走査側のブロック番号
JJが算出される。From the start address Xs and the end address Xe on the main scanning side from the block reference point 1602 of the run length 1601 of the black pixel, the start block number on the main scanning side (block number with Xs, In the example of FIG. 14, 3) Is and end block number (block number with Xe, 5) I in the example of FIG.
E is calculated. Further, the sub-scanning side block number JJ is calculated from the position Y on the sub-scanning side from the block reference point 1602 of the run length 1601 of the black pixel and the line conversion table shown in FIG.
ラン長1601について、このラン長1601が存在す
るブロック(この例では副走査側のブロックJJが3で
主走査側の番号がIs(3)〜IE(5)のブロック)
をカウントエリアとして、ブロックごとに黒画素の計数
が行われる。計数対象のブロックは符号IIで表現され
る。Regarding the run length 1601, the block in which the run length 1601 exists (in this example, the sub-scanning side block JJ is 3 and the main scanning side number is Is (3) to IE (5))
Is used as a count area, and black pixels are counted for each block. The block to be counted is represented by symbol II.
算出されたIs〜IEのブロックが順次計数対象ブロッ
クとなる。Isがまず計数対象ブロックとなり、このと
き、ブロックII(=Is)の境界1518,1519
のアドレスは、ブロックII(第14図の例ではブロッ
ク3)のスタートアドレスX(II)及びエンドアドレ
スX(II+1)に代入され、黒画素のラン長1601
のスタートアドレスXsおよびエンドアドレスXEと比
較して当該黒ラン長のブロックIIにおける計数範囲が
設定され、カウントエリア内の黒画素数が計測される。The calculated Is to IE blocks are sequentially counted blocks. Is becomes the counting target block first, and at this time, boundaries 1518 and 1519 of block II (= Is)
Is assigned to the start address X (II) and end address X (II + 1) of block II (block 3 in the example of FIG. 14), and the run length 1601 of the black pixel is
Counted range in block II of the black run length as compared with the start address Xs and the end address X E is set, the number of black pixels counted in the area is measured.
第15図は黒画素数計数の詳細図である。1701は白
画画素,1702は黒画素を示す。まずカウントエリア
(ブロックII)のスタートアドレスX(II)と、黒
画素1702のラン長のスタートアドレスXsとを比較
し、大きい方をカウントエリア内の黒画素1702のラ
ン長のスタートアドレスとする。第14図ではXsであ
る。次にカウントエリアのエンドアドレスX(II+
1)と黒画素1702のラン長のエンドアドレスXEと
を比較し、小さい方をカウントエリア内の黒画素170
2のラン長のエンドアドレスとする。第15図ではX
(II+1)である。これよりカウントエリア内の黒画
素数はX(II+1)−Xsとなり、主走査側II,副
走査側JJのブロック内の黒画素数としてカウントされ
る。FIG. 15 is a detailed diagram of counting black pixels. Reference numeral 1701 indicates a white pixel, and 1702 indicates a black pixel. First, the start address X (II) of the count area (block II) is compared with the run length start address Xs of the black pixel 1702, and the larger one is set as the run length start address of the black pixel 1702 in the count area. In FIG. 14, it is Xs. Next, the count area end address X (II +
1) is compared with the end address X E of the run length of the black pixel 1702, and the smaller one is the black pixel 170 in the count area.
The end address has a run length of 2. In Figure 15, X
(II + 1). As a result, the number of black pixels in the count area becomes X (II + 1) -Xs, which is counted as the number of black pixels in the blocks on the main scanning side II and the sub scanning side JJ.
第16図はアドレス変換テーブルである。黒画素170
2のラン長の主走査側のアドレスXsおよびXEを入力
することにより主走査側のブロック番号IsおよびIE
が出力される。FIG. 16 is an address conversion table. 170 black pixels
2 of the main scanning side block numbers by entering the run length of the main scanning side address Xs and X E Is and I E
Is output.
第17図はライン変換テーブルである。黒画素1702
のラン長の副走査側のライン数Yを入力することにより
副走査側のブロック番号JJが出力される。FIG. 17 is a line conversion table. Black pixel 1702
The block number JJ on the sub-scanning side is output by inputting the number of lines Y on the sub-scanning side of the run length.
第18図は黒画素数計測部503のカウントエリア内黒
画素数計測を第15,16図を用いて説明した手順を記
したフローチャートである。各ステップの各称を説明す
ると、2001はブロック番号決定ステップ,2002
は走査ブロック指定ステップ,2003はカウントエリ
ア内スタートアドレス判定ステップ,2004及び20
05はカウントエリア内スタートアドレス指定ステッ
プ,2006はカウントエリア内エンドアドレス判定ス
テップ,2007及び2008はカウントエリア内エン
ドアドレス指定ステップ,2009はエリア内黒画素数
計算ステップ,2010は走査ブロック変化ステップ,
2011は走査ブロック終了判定ステップである。FIG. 18 is a flow chart showing the procedure described with reference to FIGS. 15 and 16 for measuring the number of black pixels in the count area of the black pixel number measuring unit 503. To explain each name of each step, 2001 is a block number determining step, 2002
Is a scan block designation step, 2003 is a count area start address determination step, 2004 and 20
Reference numeral 05 is a count area start address specifying step, 2006 is a count area end address determining step, 2007 and 2008 are count area end address specifying step, 2009 is an area black pixel number calculating step, 2010 is a scanning block changing step,
Reference numeral 2011 denotes a scan block end determination step.
ブロック番号指定ステップ2001では、黒ラン長デー
タの初めブロックIs,黒ラン長データの終わりブロッ
クIe,黒ラン長データのラインのブロックJJをテー
ブルより作成する。次いでブロック指定ステップ200
2では、初めのブロックIsがカウンタIIに与えられ
る。カウントエリア内スタートアドレス判定ステップ2
003では、カウンタIIに与えられたブロックの初め
(スタートアドレスX(II)がラン長データの初めX
sより大きいかどうかが判定され、X(II)>Xsの
ときはカウントエリア内スタートアドレス指定ステップ
2004でブロック内の黒の初めにブロックの初めX
(II)を指定し、これをスタートアドレスZsと指定
する。X(II)<Xsのときはカウントエリア内スタ
ートアドレス指定ステップ2005でブロック内の黒の
初めにラン長データの初めXsを設定してこれをスター
トアドレスZsと指定する。In the block number designation step 2001, a start block Is of black run length data, an end block Ie of black run length data, and a block JJ of a line of black run length data are created from a table. Next, block designation step 200
At 2, the first block Is is given to the counter II. Start address judgment step 2 in the count area
In 003, the beginning of the block given to the counter II (start address X (II) is the beginning X of the run length data).
If X (II)> Xs, it is determined in step 2004 in the count area start address designation that the black in the block is the beginning X of the block.
(II) is designated, and this is designated as the start address Zs. When X (II) <Xs, in the start address designating step 2005 in the count area, the beginning Xs of the run length data is set at the beginning of black in the block and designated as the start address Zs.
次いで、カウントエリア内エンドアドレス判定ステップ
で、ブロックの終わりX(II+1)がラン長データの
終わりXeより大きいか否かを判断し、X(II+1)
>Xeであればカウントエリア内エンドアドレス指定ス
テップ2007でブロック内黒の終わりにラン長データ
の終わりXeを設定してこれをエンドアドレスZeと指
定し、X(II+1)<Xeであればカウントエリア内
エンドアドレス指定ステップ2008でブロック内黒の
終わりにブロックの終わりX(II+1)を設定してこ
れをエンドアドレスZeと指定する。Then, in the end address determination step in the count area, it is determined whether the end X (II + 1) of the block is larger than the end Xe of the run length data, and X (II + 1) is determined.
> Xe, in the count area end address designation step 2007, the end Xe of the run length data is set at the end of black in the block and designated as the end address Ze, and if X (II + 1) <Xe, the count area In the inner end address designation step 2008, the end X of the block is set to the end of the black in the block X (II + 1), and this is designated as the end address Ze.
そして、エリア内黒画素数計数ステップ2009でエリ
ア内黒画素数=Ze−Zsを計算する。次いで、走査ブ
ロック変化ステップ2010でカウンタIIに+1して計
数対象ブロックを右に一つずらし、次いで走査ブロック
終了判定ステップ2011で当該黒ラン長に対し全ブロ
ック終了か(第14図の例で3,4,5)を判定し、終
了でなければステップ2003に戻る。Then, in the area black pixel number counting step 2009, the area black pixel number = Ze−Zs is calculated. Next, in the scan block change step 2010, the counter II is incremented by 1 to shift the count target block to the right by one, and then in the scan block end determination step 2011, whether all blocks have ended for the black run length (3 in the example of FIG. 14). , 4, 5), and if not completed, the process returns to step 2003.
以上のステップを1回くり返すと1ラインの処理が終了
したことになり、これを必要ライン数くり返すことによ
り、文字枠305内の各ブロック内の黒画素数が計測で
きる。また、上記処理を高速化する場合にはハードウエ
ア化すればよい。When the above steps are repeated once, the processing of one line is completed, and by repeating this for the required number of lines, the number of black pixels in each block in the character frame 305 can be measured. Further, in order to speed up the above processing, hardware may be used.
第19図は黒画素数計測部503をハードウエア構成と
した場合の構成例である。2101はラン長データ格納
レジスタ,2102はアドレス発生器,2103は黒ラ
ン長スタートアドレスXsを格納する黒ラン長スタート
アドレス格納レジスタ,2104は黒ラン長エンドアド
レスXeを格納する黒ラン長エンドアドレス格納レジス
タ,2105は第16図に示すアドレス変換テーブル,
2106はスタートブロック番号Isを格納するスター
トブロック番号格納レジスタ,2107はエンドブロッ
ク番号Ieを格納するエンドブロック番号格納レジス
タ,2108は2107の出力と2106の出力を比較
し両者に差があるときに信号出力するコンパレータ,2
109は2108の信号出力を受けて2106の出力を
1増やすインクリメンタ,2110は2106の出力を
受けて該当ブロックのエリアスタートアドレスX(I
I)とエリアエンドアドレスX(II+1)を出力する
分割テーブル,2111はエリアスタートアドレス格納
レジスタ,2112はエリアエンドアドレス格納レジス
タ,2113はZsを出力するエリア内黒画素スタート
アドレス発生器,2114はZeを出力するエリア内黒
画素エンドアドレス発生器,2115はZe−Zsを計
算するエリア内黒画素数計測器,2116はライン番号
を入力として副走査ブロック番号JJを出力する第17
図のライン交換テーブル,2117はライン交換テーブ
ルから出力されるブロック番号JJとカウンタIIから出
力されるブロック番号IIできまるメインブロックもし
くはサブブロックの番号を指定するブロックポインタ,
2118はエリア内黒画素数計測器2115の出力とブ
ロック内黒画素数テーブル2119の出力を加算して再
びブロック内黒画素数テーブル2119の該当位置に格
納するブロック内黒画素数計測器,2119はメインブ
ロック,サブブロックごとの黒画素数を格納し、ブロッ
クポインタで指定されたメインブロックもしくはサブブ
ロックの黒画素数をブロック内黒画素数計測器2118
に出力するブロック内黒画素数テーブルである。FIG. 19 shows a configuration example in which the black pixel number measuring unit 503 has a hardware configuration. 2101 is a run length data storage register, 2102 is an address generator, 2103 is a black run length start address storage register that stores the black run length start address Xs, and 2104 is a black run length end address storage that stores the black run length end address Xe. A register 2105 is an address conversion table shown in FIG.
2106 is a start block number storage register for storing the start block number Is, 2107 is an end block number storage register for storing the end block number Ie, 2108 is a signal when there is a difference between the output of 2107 and the output of 2106. Output comparator, 2
109 receives the signal output of 2108 and increments the output of 2106 by 1, and 2110 receives the output of 2106 to increase the area start address X (I
I) and the division table for outputting the area end address X (II + 1), 2111 for the area start address storage register, 2112 for the area end address storage register, 2113 for the in-area black pixel start address generator, and 2114 for Ze. The black pixel end address generator for outputting the area, 2115 is a black pixel number measuring device for calculating the area Ze-Zs, and 2116 is a 17th for outputting the sub-scanning block number JJ by inputting the line number.
The line exchange table shown in the figure, 2117 is a block pointer for designating the number of the main block or the sub block formed by the block number JJ output from the line exchange table and the block number II output from the counter II,
Reference numeral 2118 denotes an in-block black pixel number measuring device 2119 which adds the output of the in-area black pixel number measuring device 2115 and the output of the in-block black pixel number table 2119 and stores again at the corresponding position of the in-block black pixel number table 2119. The number of black pixels in each main block and sub-block is stored, and the number of black pixels in the main block or sub-block designated by the block pointer is calculated as the number of black pixels in block 2118.
It is a black pixel number table in the block to be output to.
インクリメンタ2109は、計数対象のブロックをIs
から順に右に移して行く役目をする。コンパレータ21
08は、計数対象のブロックがIeになったら、当該黒
ラン長の計数が終了したと判断する役目をする。The incrementer 2109 sets the counting target block to Is.
It plays the role of moving to the right in order. Comparator 21
08 plays a role of determining that the counting of the black run length is completed when the count target block becomes Ie.
認識部109の作用を説明する。The operation of the recognition unit 109 will be described.
第20図は認識部109の概念を説明するために示す図
である。2201はメインブロックレジスタ,2202
はサブブロックレジスタ,2203は認識テーブルであ
る。認識部109は、黒画素数計測部503によって計
測された文字記入枠305内の各ブロック内の黒画素数
と判定値により各ブロック内の書き込みの有無を判定
し、メインブロックレジスタ2201とサブブロックレ
ジスタ2202を作成する。ここでいう判定値は、各ブ
ロックにつき、黒画素数が何個以上あると、当該ブロッ
クに書き込みがあったとするかのしきい値であり、メイ
ンブロックレジスタ2201とサブブロックレジスタ2
202には、それぞれのブロックへの書き込みの有無の
みが記録され、黒画画素数自体は記録されない。認識部
109は、作成したメインブロックレジスタ2201と
サブブロックレジスタ2202及び予め作成されている
認識テーブル2203を参照することによりなんという
文字であるかを判断し文字コードを出力する。認識テー
ブル2203は、ある文字の文字コードとその文字に対
応するサブブロックテーブルとメインブロックテーブル
とからなり、一つの文字に対し、3行分のメモリが与え
られている。FIG. 20 is a diagram shown for explaining the concept of the recognition unit 109. 2201 is a main block register, 2202
Is a sub-block register, and 2203 is a recognition table. The recognition unit 109 determines the presence or absence of writing in each block based on the number of black pixels in each block in the character entry frame 305 measured by the black pixel number measurement unit 503 and the determination value, and the main block register 2201 and the sub block. The register 2202 is created. The determination value referred to here is a threshold value for judging that the number of black pixels in each block is the number of black pixels to be written, and the main block register 2201 and the sub block register 2
In 202, only the presence / absence of writing to each block is recorded, and the black image pixel number itself is not recorded. The recognition unit 109 determines what the character is by referring to the created main block register 2201, the sub block register 2202 and the created recognition table 2203, and outputs the character code. The recognition table 2203 is composed of a character code of a character, a sub block table and a main block table corresponding to the character, and a memory for three lines is given to one character.
第21図は認識テーブル22203の一例を説明するた
めに示す説明図である。各ブロック内の書き込みの有無
によって作成されたメインブロックレジスタ2201
と、サブブロックレジスタ2202と、認識テーブル2
203内の認識用メインブロックテーブル値及び認識用
サブブロックテーブル値とを比較し、両者が一致した場
合に文字コードを出力する。FIG. 21 is an explanatory diagram shown for explaining an example of the recognition table 22203. Main block register 2201 created depending on the presence / absence of writing in each block
, Sub-block register 2202, and recognition table 2
The recognition main block table value and the recognition sub block table value in 203 are compared, and when both match, the character code is output.
認識部109の特作について第22図を用いて詳しく説
明する。第22図は認識部109の動作を説明するため
に示すフローチャートである。各ステップの名称を述べ
ると、2401はテーブル作成ステップ,2402は認
識テーブルサーチオフセット初期設定ステップ,240
3は認識テーブルサーチステップ,2404はリジェク
ト判定ステップ,2405はテーブル比較ステップ,2
406は文字コード出力ステップ,2407はオフセッ
ト変化ステップ,2408はテーブルサーチ終了判定ス
テップである。The special work of the recognition unit 109 will be described in detail with reference to FIG. FIG. 22 is a flowchart shown to explain the operation of the recognition unit 109. To describe the name of each step, 2401 is a table creation step, 2402 is a recognition table search offset initial setting step, 240
3 is a recognition table search step, 2404 is a reject determination step, 2405 is a table comparison step, 2
406 is a character code output step, 2407 is an offset change step, and 2408 is a table search end determination step.
テーブル作成ステップ2401でメインブロックレジス
タ2201(TB(J))及びサブブブロックレジスタ22
02(STB(J))を作成する。認識テーブル2203に
は、メモリ上のあるアドレス(先頭アドレス)から、認
識用メインブロックテーブル値及び認識用サブブロック
テーブル値及びそれら値によって表される文字コードの
組み合せが認識用メインブロックテーブル値の値(第2
1図の16進の欄の値)が小さい順に、予め格納されて
いる。In the table creation step 2401, the main block register 2201 (TB (J)) and the sub block register 22
02 (STB (J)) is created. In the recognition table 2203, a combination of a recognition main block table value, a recognition sub block table value, and a character code represented by these values is calculated from a certain address (start address) on the memory as a value of the recognition main block table value. (Second
The values are stored in ascending order of the value in the hexadecimal column in FIG.
認識テーブルサーチオフセット初期設定ステップ240
2では、認識テーブル2203の先頭アドレスからのオ
フセット値を0にし又、最終アドレスと先頭アドレスの
差を基定値として設定する。認識テーブルサーチステッ
プ2403では、オフセット値で示されるアドレスの認
識用メインブロックテーブル値及び認識用サブブロック
テーブル値をレジスタPTB(J)及びSPTB(J)にセットし、
リジェクト判定ステップ2404ではメインブロックレ
ジスタ2201の値TB(J)と認識用メインブロックテー
ブル値とを比較して認識用メインブロックテーブル値が
大きくなった場合には認識不可能としてリジェクトす
る。Recognition table search offset initial setting step 240
In 2, the offset value from the start address of the recognition table 2203 is set to 0, and the difference between the final address and the start address is set as the reference value. In the recognition table search step 2403, the recognition main block table value and the recognition sub block table value of the address indicated by the offset value are set in the registers PTB (J) and SPTB (J),
At the reject determination step 2404, the value TB (J) of the main block register 2201 is compared with the recognition main block table value, and if the recognition main block table value becomes large, it is rejected as unrecognizable.
テーブル比較ステップ2405ではメインブロックレジ
スタ2201(TB(J))と認識用メインブロックテーブ
ル値PTB(J)及びサブブロックレジスタ2202(STB
(J))と認識用サブブロックテーブル値STB(J)をそれぞ
れ比較し、両者が一致した場合は文字コード出力ステッ
プ2406で文字コードを出力し、一致しなかつた場合
は次の文字のデータと比較対照するために、オフセット
変化ステップ2407でオフセットを+3(一つの文字
のデータが3行分、つまりオフセット3つ分を占めてい
るので、比較対照する文字を変えるごとにオフセットを
3つ分ずらす)し、テーブルサーチ終了判定ステップ2
408でオフセットが基定値を越えていないかどうかが
確認される。オフセットが基定値を越えた場合には、認
識テーブルに該当文字なしとしてリジェクトする。オフ
セットが基定値を越えていない場合は、オフセット値で
示されるアドレスの値をテーブルにセットし直して比較
操作が繰り返される。In table comparison step 2405, main block register 2201 (TB (J)), recognition main block table value PTB (J) and sub block register 2202 (STB).
(J)) and the recognition sub-block table value STB (J) are respectively compared. If they match, the character code is output in the character code output step 2406. If they do not match, the data of the next character is used. In order to compare and contrast, in the offset change step 2407, the offset is +3 (since the data of one character occupies three lines, that is, three offsets, the offset is shifted by three each time the character to be compared and contrasted is changed. ), And then step 2 of determining the end of the table search
At 408, it is confirmed whether the offset does not exceed the standard value. If the offset exceeds the standard value, it is rejected as no corresponding character in the recognition table. If the offset does not exceed the reference value, the value of the address indicated by the offset value is reset in the table and the comparison operation is repeated.
本発明によれば入力用紙上に手書きで記入された文字を
高速にかつ正確に認識できる。According to the present invention, a character handwritten on an input sheet can be recognized quickly and accurately.
本発明によれば、ラン長データを用いて黒画素計数が行
われるので、1ビットずつ処理をする方式に比べ参照す
るデータ量が約10分の1に削減され、処理時間を約1
0分の1に短縮することができる。According to the present invention, since black pixel counting is performed using run length data, the amount of data to be referred to is reduced to about 1/10 as compared with the method of processing bit by bit, and the processing time is reduced to about 1
It can be reduced to 1/0.
第1図は入力用紙の一例を示す説明図、第2図は文字枠
の詳細説明図、第3図は本発明の実施例を示すブロック
図、第4図はラン長データ作成部の概念を説明するため
に示す説明図、第5図はラン長データ作成部の動作の詳
細を示すフローチャート、第6図はラン長データ作成用
LSIの一構成例を示すブロック図、第7図は傾斜補正
の概念を説明するために示す説明図、第8図はマーカ検
出方法を説明するために示す図、第9図はマーカ検出部
の動作を説明するために示すフローチャート、第10図
は帯検出部の動作を説明するために示すフローチャー
ト、第11図傾斜補正の動作を説明するために示すフロ
ーチャート、第12図は傾斜補正例を説明するために示
す図、第13図はブロック分割方式の説明図、第14図
は書き込み例を示す説明図、第15図は書き込み例の詳
細を示す説明図、第16図はアドレス交換テーブルを示
す図、第17図はライン交換テーブルを示す説明図、第
18図は黒画素数計測部の動作を示すフローチャート、
第19図は第18図の動作を実現するためのハードウエ
ア構成例を示すブロック図、第20図は認識部の概念を
示す図、第21図は認識テーブルを示す説明図、第22
図は認識部の動作を示すフローチャート、第23図はビ
ット処理方式の概念を説明するために示す説明図であ
る。 102……ラン長データ作成部、 501……マーカ検出部、 502……帯検出部、 503……黒画素数計測部、 109……認識部。FIG. 1 is an explanatory view showing an example of an input sheet, FIG. 2 is a detailed explanatory view of a character frame, FIG. 3 is a block diagram showing an embodiment of the present invention, and FIG. 4 is a concept of a run length data creating section. FIG. 5 is an explanatory diagram shown for explanation, FIG. 5 is a flow chart showing the details of the operation of the run length data generation unit, FIG. 6 is a block diagram showing an example of the configuration of the run length data generation LSI, and FIG. FIG. 8 is a diagram shown for explaining the concept of FIG. 8, FIG. 8 is a diagram shown for explaining the marker detection method, FIG. 9 is a flowchart shown for explaining the operation of the marker detection unit, and FIG. 10 is a band detection unit. FIG. 11 is a flow chart for explaining the operation of FIG. 11, FIG. 11 is a flow chart for explaining the operation of tilt correction, FIG. 12 is a view for explaining an example of tilt correction, and FIG. , FIG. 14 shows a writing example FIG. 15 is an explanatory diagram showing details of the writing example, FIG. 16 is a diagram showing an address exchange table, FIG. 17 is an explanatory diagram showing a line exchange table, and FIG. 18 is an operation of the black pixel number measuring unit. A flow chart showing
FIG. 19 is a block diagram showing a hardware configuration example for realizing the operation of FIG. 18, FIG. 20 is a diagram showing the concept of a recognition unit, FIG. 21 is an explanatory diagram showing a recognition table, and FIG.
FIG. 23 is a flowchart showing the operation of the recognizing unit, and FIG. 23 is an explanatory diagram shown for explaining the concept of the bit processing method. 102 ... Run length data creation unit, 501 ... Marker detection unit, 502 ... Band detection unit, 503 ... Black pixel number measurement unit, 109 ... Recognition unit.
───────────────────────────────────────────────────── フロントページの続き (72)発明者 多々内 允晴 茨城県日立市久慈町4026番地 株式会社日 立製作所日立研究所内 (72)発明者 黒須 邦晶 神奈川県横浜市戸塚区戸塚町216番地 株 式会社日立製作所戸塚工場内 (56)参考文献 特開 昭58−22476(JP,A) ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Yoshiharu Tatari 4026 Kuji Town, Hitachi City, Hitachi, Ibaraki Hitachi Research Laboratory, Hitachi, Ltd. Ceremony company Hitachi's Totsuka factory (56) Reference JP-A-58-22476 (JP, A)
Claims (1)
に設けられたシート上に手書きで記入された英数字・記
号等の簡易な文字情報をファクシミリを用いて読み取る
読み取り手段と、前記切り出し用マーカで指定される文
字領域を複数のカウントブロックに分割し、該カウント
ブロックごとの黒画素数を計数する計数手段と、各カウ
ントブロックへの書き込みの有無を判断して文字を認識
する認識手段とを含んでなる簡易手書き文字認識装置に
おいて、前記計数手段が、ファクシミリで入力された画
像データを1ライン単位でラン長データに変換するラン
長データ作成部と、前記文字切り出し用マーカを検出す
る帯検出部と、カウントエリアを設定し該カウントエリ
ア内の黒画素数を前記ラン長データを用いて計数する黒
画素数計測部とを含んでなることを特徴とする簡易手書
き文字認識装置。1. A reading means for reading, using a facsimile, simple character information such as alphanumeric characters and symbols written by hand on a sheet on which a character cutting marker is independently provided for each character, and the cutting means. Counting means that divides the character area designated by the marker into a plurality of count blocks and counts the number of black pixels in each count block, and recognition means that recognizes characters by determining whether or not writing is performed in each count block. In a simple handwritten character recognition device including the above, the counting means converts the image data input by facsimile into run length data on a line-by-line basis, and a band for detecting the character cutting marker. A detection unit and a black pixel number measurement unit that sets a count area and counts the number of black pixels in the count area using the run length data. Simple handwriting recognition apparatus characterized by comprising Nde.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60219491A JPH0632076B2 (en) | 1985-10-02 | 1985-10-02 | Simple handwritten character recognition device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60219491A JPH0632076B2 (en) | 1985-10-02 | 1985-10-02 | Simple handwritten character recognition device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6278688A JPS6278688A (en) | 1987-04-10 |
| JPH0632076B2 true JPH0632076B2 (en) | 1994-04-27 |
Family
ID=16736277
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60219491A Expired - Lifetime JPH0632076B2 (en) | 1985-10-02 | 1985-10-02 | Simple handwritten character recognition device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0632076B2 (en) |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5822476A (en) * | 1981-08-03 | 1983-02-09 | Nippon Telegr & Teleph Corp <Ntt> | Number read system using facsimile transmitter |
| JPS6097482A (en) * | 1983-10-31 | 1985-05-31 | Meidensha Electric Mfg Co Ltd | Pattern recognizing device |
-
1985
- 1985-10-02 JP JP60219491A patent/JPH0632076B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6278688A (en) | 1987-04-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0157394B2 (en) | ||
| JPS58103266A (en) | Character image processor | |
| JPS6357831B2 (en) | ||
| US4083034A (en) | Plural tracker character detection and boundary location system | |
| JPH0632076B2 (en) | Simple handwritten character recognition device | |
| JPH02293989A (en) | character recognition device | |
| JPH07230525A (en) | Ruled line recognition method and table processing method | |
| JPS59206987A (en) | Letter recognizing device | |
| JPS61196381A (en) | Character segmenting system | |
| JP2975720B2 (en) | Optical character reader | |
| JP2000224422A (en) | Encoding method and encoder using pattern matching | |
| JPS6394385A (en) | Printed character pitch detection device | |
| JPS6325388B2 (en) | ||
| JPS62279482A (en) | character recognition device | |
| JP2954218B2 (en) | Image processing method and apparatus | |
| JPH0557632B2 (en) | ||
| JPS6343788B2 (en) | ||
| JP2863671B2 (en) | Print format creation device | |
| JPH0433074B2 (en) | ||
| JPS58166867A (en) | Mark reading system | |
| JPS5818773A (en) | Character cutting out system | |
| JP2007249580A (en) | Image processing apparatus, image processing program, and image processing method | |
| JPH0340430B2 (en) | ||
| JPH04239989A (en) | electronic dictionary | |
| JPH01245376A (en) | Character segmenting device for character reader |