JPH0492993A - 文字認識装置 - Google Patents

文字認識装置

Info

Publication number
JPH0492993A
JPH0492993A JP2206619A JP20661990A JPH0492993A JP H0492993 A JPH0492993 A JP H0492993A JP 2206619 A JP2206619 A JP 2206619A JP 20661990 A JP20661990 A JP 20661990A JP H0492993 A JPH0492993 A JP H0492993A
Authority
JP
Japan
Prior art keywords
character
cpu
latch
memory
section
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.)
Pending
Application number
JP2206619A
Other languages
English (en)
Inventor
Tetsuomi Tanaka
哲臣 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2206619A priority Critical patent/JPH0492993A/ja
Priority to DE69132019T priority patent/DE69132019T2/de
Priority to EP91307006A priority patent/EP0471473B1/en
Publication of JPH0492993A publication Critical patent/JPH0492993A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/19007Matching; Proximity measures
    • G06V30/19013Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/20Combination of acquisition, preprocessing or recognition functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/248Character recognition characterised by the processing or recognition method involving plural approaches, e.g. verification by template match; Resolving confusion among similar patterns, e.g. "O" versus "Q"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Character Discrimination (AREA)
  • Character Input (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は文書画像を入力して、文字画像部分を文字コー
ド化する処理を高速に行う文字認識装置に関するもので
ある。
〔従来の技術〕
第8図に従来の技術を示す。1はCPU、2はCPUI
のプログラムを格納したROM、3はCPUIのデータ
を格納するRAM、4は詳細識別用の辞書メモリ、5は
大分類部で、6は大分類用辞書メモリ、8は文字・通信
メモリ、9は文字切出し用CPU、10はROMであり
CPU9のプログラムを格納する。11はCPUQ用の
データRAM、12は文書画像入力用のスキャナである
まずスキャナにより文書画像を入力してRAM11に格
納する。CPU9はRAMIIに格納した文書画像に対
して文字切出し処理をして、文字通信メモリ8に格納し
、CPUIに認識処理を依頼する。CPUIは文字通信
メモリ8内の文字画像をNXN (N=62)のサイズ
に正規化する(9図(a))。次にスムージング処理で
62 X 62の各画素のまわり8画素の計9画素でフ
ィルタ処理して各画素の値を決めて、正規化時の画像の
ひずみをとる(9図(b))。次に、まわりに1画素白
画素をって64 X 64の画像を7×7のブロックに
分割して各ブロック単位に第9図(C)の方向1〜4の
パターンがいくつあるかヒストグラムをとる。このとき
、方向2と4に関してはlパターンで+2のヒストグラ
ムをとる場合がある。これで計196次元のベクトルが
求まったが、第10図にあるように丸数字のブロックを
中心にフィルタ処理して4X4.X4=64次元のベク
トルに次元縮小する。
この64次元ベクトルが特徴ベクトルである。以上文字
画像の正規化から64次元ベクトルを求めるまでが特徴
抽出処理である。
次に大分類処理であるが大分類部5は第11図(1)式
により、上記特徴ベクトルと辞書メモリ6内の全文字に
ついてマツチングをして候補文字を1/lO程度までし
ぼりこむ。
最後にCPUIが大分類部で得られた候補文字について
(2)式により距離計算をして上位数文字を識別結果と
して、文字・通信メモリ8を通じてCPU9へ返す。
このように従来は文字画像の正規化から方向指数の抽出
までの特徴抽出処理をCPU1が全て行うものであった
〔発明が解決しようとしている課題〕
しかしながら上記従来例では対象となる文字画像の特徴
量(方向指数)抽出を全てCPUが行ってい為に非常に
時間がかかり全体の認識時間にも悪影響を与えていた。
また特徴抽出処理専用にCPUを設けた場合でも処理時
間の短縮に比べてコスト上昇の問題の方が太き(なって
しまう欠点があった。
〔課題を解決する為の手段〕
上記課題を解決する為に本発明は画像データから切出し
た文字画像の特徴を抽出し、文字を認識する文字認識装
置において、文字の第一の情報から第二の情報を演出す
る手段と、該第二の情報から方向情報を抽出する抽出手
段と、該方向情報を計数する計数手段と、前記演算手段
と前記抽出手段と前記計数手段を平行して行うよう制御
する制御手段を有することを特徴とする文字認識装置を
提供する。
〔実施例1〕 第1図(a)は本発明の特徴を最も良(表わす図である
。まず大きく分けると点線より左側がスキャナより文書
画像を入力し、文字の切出しをする画像入力・文字切出
し部であり、右側が切出された文字画像より各文字の特
徴を特徴ベクトルとして描出し、得られた特徴ベクトル
と辞書メモリとのマツチングをとって最も距離値の近い
ものを候補文字として出力する文字認識部である。次に
各部であるが、Iは認識部全体を制御するCPUであり
、2はCPUIのプログラムを格納したROM。
3はCPUIのデータと特徴ベクトルを格納するRAM
4は後述の大分類部5から得られた候補文字よりCPU
Iがさらに詳細な識別距離計算をするための特徴ベクト
ルとのマツチング用データを格納する詳細辞書メモリ、
5は特徴ベクトクと全文字との簡略な距離計算をして、
候補文字をしぼりこむ大分類部、6は大分類部5のマツ
チング用データを格納する大分類辞書メモリである。7
は同図(b)に示す方向指数抽出部、8は文字切出し部
より切出された文字画像を格納し、文字切出し部と認識
部との通信をするための文字・通信メモリ、9は画像入
力・文字切出し郡全体を制御するCPU、10はCPU
9のプログラムを格納したROM、11は文書画像を格
納しCPU9が文字の切出しをするためのデータRAM
12は文書画像を入力するためのスキャナである。
第1図(b)は、同図(a) −7の方向指数抽出部の
構成図である。13は方向指数抽出部7の内部の制御を
する制御部であり14〜17はラッチ、18はアダー、
19〜21はマルチプレクサ、22は白画素マスク部、
23は3×3シフトレジスタ部、24はスムージング部
、25は2×2シフトレジスタ部、26は方向指数デコ
ード部、27は方向指数カウンタ部である。
まず全体の処理の流れであるがスキャナにより対象とな
る文書画像をRAMIIに格納する。格納された文書画
像に対してCPU9が文字の切出しをする。次に切出し
た画像と文字位置をCPU9が文字・通信メモリ8に転
送する。文字・通信メモリ8は第2図(a)のように下
位アドレスより文字画像エリア、文字位置格納エリア、
識別結果比カニリアとなっていて、文字画像エリアには
同図(b)のように、文字切出しされた文書画像の一部
が格納される。文字位置格納エリアには同図(C)のよ
うに、文字画像エリアに格納されている矩形領域の大き
さの情報(W、H)と矩形領域中にある文字の外接矩形
の位置を示すための2点のXIY座標の情報(a++ 
b1+ CI+ a+)が格納される。ここで文字画像
エリアに格納される矩形画像であるが、矩形画像の横方
向バイト数Wと縦方向ドツト数Hの積WXHが文字画像
エリアのサイズを越えない限り、何文字ふくまれても良
い。逆に文字画像エリアのサイズによってRAMIIか
ら文字・通信メモリ8への転送単位が決まる。例えば文
字画像エリアが非常に小さい場合は、1文字車位に転送
しなければならないし、大きい場合は1行単位または半
ページ単位、極端な場合1ペ一ジ全部転送することも可
能となる。複数文字転送する場合は、2文字目は、第2
図(C)のalをC2に、blをb2に、C1をC2に
、dlをd2に変えるだけでよい。識別結果出カニリア
であり同図(d)のようにCPU9より指定された文字
画像に対して、辞書パターンに近い上位8文字コードと
辞書内の標準パターンとの距離値がCPU1から返され
る。文字・通信メモリ8に文字画像と文字位置がCPU
9によってセットされるとCPUIにより識別処理が行
われる。識別処理は大きく3段階から成り、1段目は特
徴抽出処理であり、与えられた画像の指定された文字位
置に対して特徴抽出を行い特徴ベクトルを抽出する。
2段目は大分類処理であり、特徴抽出で得られた特徴ベ
クトルと大分類辞書メモリ6内の全文字の標準パターン
とマツチングをして候補となる文字を全体の文字数の1
/10程度に絞り込む(例えば3000文字に対して5
0文字候補)。3段目は詳細識別であり特徴抽出で得ら
れた特徴ベクトルと大分類で得られた候補文字に該当す
る詳細辞書メモリ4の内容をさらにマツチングして1/
10程度に絞り込まれた候補文字を数文字に絞り込む(
図2では8文字)。
そしてその結果を文字・通信エリア8の識別結果出カニ
リアに出力する。
次に特徴抽出処理の実際の処理を説明する。文字・通信
メモリ8の容量を具体的に128kByte。
16bitバスよしてCPUIのデータバス幅を32b
itとして、全てのアドレスをバイト単位で教えること
として説明する。第1図(b)のマルチプレクサ19と
20は2tolのセレクタであり、制御部13からの信
号Bにより、出力を選択する。通常はCPUからのアド
レスバス(マルチプレクサ19)とCPUからの文字・
通信メモリ8へのread/writeの制御信号(マ
ルチプレクサ20)からセレクトされていて、CPUI
から直接読み書きが可能となっていて、マルチプレクサ
19のビット数はメモリ8の構成から16ビツト必要と
なる。CPUIより文字・通信メモリ8は方向指数抽出
部7とは別個のアドレスにマツピングされているデバイ
スとして認知され、方向指数抽出部7は、I10デバイ
スとして第3図のようなアドレスマツプとなっている。
CPUIの1ワードは4バイト(32bit)であるが
、4ワードにわたってラッチ15がマツプされる。この
ときのラッチ信号が信号Fであり、ラッチ15だけでは
なくラッチ16. 17、シフトレジスタ23. 25
、カウンタ部27にも接続されている。ラッチ15には
、CPUIからのデータがそのままラッチされるのでは
なく、ラッチ14の出力とCPUIのデータバスからの
データの加算結果がアダー18を通してラッチされる。
ラッチ15の出力は文字・通信メモリ8の1ビツトデー
タの位置を示すもので、第2図(b)でW=IOバイト
とすると座標(1,2)のビットアドレス(メモリ8内
の1ビツトの位置)は1ox8+2=82として示され
る。文字・通信メモリ8 (128kByte)の全て
のビットアドレスを示すためにラッチ14. 15は2
0bit必要となり、ラッチ15の上位16bitはマ
ルチプレクサ19に接続され、下位4bitはラッチ1
7の入力に接続される。ラッチ14も第3図に示すよう
にマツピングされCPUIからそのアドレスへの書き込
み動作により制御部13より信号Aが出力されCPUI
のデータバスからのデータをラッチする。方向指数抽出
部7のオフセット20バイトのアドレスは信号Bのセッ
ト/リセットのコントロールをする部分であり、通常は
リセットされていてセットすると、マルチプレクサ19
の出力は、ラッチ15の上位16bitが出力され文字
Φ通信メモリ8のアドレスとなる。
同時にメモリ8の制御信号は制御部の信号Cがマルチプ
レクサ20より出力され、この時、CPUIからのメモ
リ8へのアクセスは禁止され、ラッチ15にデータを書
き込むときに逆に文字・通信メモリ8からデータを読み
出し、ラッチ15と同一タイミングでラッチ16にラッ
チする。ラッチ16は、メモリ8のデータバスと同じ(
16bit幅である。ここまでがCPUIからの書き込
み動作の場合であるが、読み出し動作時は、ラッチ15
0部分はカウンタ部27の1〜4のカウンタの値が読み
出される。カウンタ1〜4はそれぞれ方向指数1〜4に
対応する。オフセット20バイトのアドレスを読み出し
動作する(ダミーリード)と信号り、 Hのパルスが発
生する。信号りはシフトレジスタ部23.25の内容を
クリアする信号で、信号Bがセットされているときは、
マスクされ発生しない。信号Hはカウンタ部のカウンタ
をクリアする信号である。シフトレジスタ部23と24
は第4図(a)に示すようにシフトレジスタ23は12
bit、 3列であり、同24は12bitZ列のシフ
トレジスタである。12bitである理由であるが正規
化サイズを62としてまわりに1画素をつけた場合には
64 X 64画素となる。この64 X 64画素よ
り2X2の方向指数のマスクをとった場合に63 X 
63個のマスクとなる。これを7×7のブロックに配分
すると2×2のマスクは9×9個ずつ分けられる。9×
9個の2×2のマスクは、10×10画素からなり、こ
のloXIO画素をスムージング処理をするためには各
画素のまわりに1画素必要であるから、12×12画素
あれば1ブロック分の方向指数が得られる。よって、1
2bitX3列のシフトレジスタが用意して12X12
画素の内容を同図(b)の順にシフトレジスタに入力し
てやり、同図(a)のように9bit出力ととれば10
×10画素分の画素に対する3×3のスムージングのた
めの入力値が得られる。この9bit出力をスムージン
グ部24によりスムージング処理をして、その出力を同
様に12bitX2列のシフトレジスタに入力してやり
、同図(a)の4bit出力をとることによって、9×
9個分の2×2の方向指数を得るためのマスクが得られ
る。方向指数デコーダ部は、この2×2のマスクから各
4方向のカウンタのカウント制御信号に変換する。しか
し、2×2のマスクの内容は第4図(b)の順番でシフ
トレジスタ画素の内容をシフトさせていった場合に、目
的である9×9個の内容とは、異なる内容を示している
場合があり、このときは、方向指数をカウントしてはな
らない。正規化画像のまわり2画素には、白画素が必要
であり、白画素をシフトレジスタ部23に入力させる必
要がある(トータルで66X66画素が必要で、これは
64X64画素に対してスムージング処理するため)。
この制御をするのが制御部13の信号EとGである。ラ
ッチ15は、第3図に示すように4ワードにまたがって
いる。CPUIのアドレスバスの下位2bitをCPU
−AO,CPU−Alとすると、この2bitのアドレ
ス信号がどのような値であってもラッチ15にデータが
ラッチされる。ラッチ15の出力は前に説明したように
、メモリ8内の1bitを示すが、この2bitのアド
レス信号により、ラッチ15が示す1bitのデータの
属性を表わすのである。具体的にはCPU−AOが0の
場合は、メモリ8内1 bitデータが外ワク用に白画
素であることを示し、CPU−Alが1の場合はその1
bitデータがシフトレジスタ部23に入力されスムー
ジング、方向指数デコードと処理されていってデコード
された値によって方向指数をカウントすることを示すも
のとする。実際の信号E、 Gは第5図のように構成さ
れ、シフトレジスタ部と同様に信号りでレジスタがクリ
アされ信号Fによって、1ビツトシフトする。信号Eは
信号Fに対して2サイクルお(れて出力される。すなわ
ち、第4図(b)のNo、1の画素が白ワクの白画素と
いう属性(CPU−AO=O)をつけて、No、1のメ
モリ8内のビットアドレスをラッチ15ヘデータラツチ
をすると、そのNo、1の属性はNo、3のビットアド
レスのラッチサイクル中に信号Eとして出力される。こ
のときラッチ16の内容は目的とするNo、1のビット
データを含むメモリ8の1ワードデータがラッチされて
いてマルチプレクサ2工とラッチ17によって目的とす
る1ビツトを選択して、白ワクマスク部22へ出力して
いる状態である。すなわち、白ワクの属性がこの時点で
処理されるのである。また、方向指数カウント可、不可
の属性は正規化画素データ読出し時に4×4のマスクが
そろっているかどうかのしるしである(3×3と2×2
のマスクをあわせると4×4のマスクとなる)。説明す
ると、第4図(b)で画素27から4×4のマスクを考
えると12x12画素からはみだすのでカウント不可と
なり、画素144から4×4のマスクを考えると、12
x12画素にふくまれるので、カウント可である。カウ
ンタ部27はこのカウント属性信号である信号Gと方向
指数デコード部26の出力を受けて、カウント動作をす
る。ただし、カウンタ27−2.27−4は、+1カウ
ントと+2カウントが選択可能なカウンタである。
ラッチ14とアダー18の働きであるが、第6図のよう
に文字・通信メモリ8内の文字位置パラメータをCPU
Iが受けて、RAM3内1,1.X (x)、 Y (
y)のテーブルを図のように作成する。これにより正規
化された文字画像の座標(x、  y)に対応する文字
・通信メモリ8内のビット位置はx (x) +Y (
y)で示される。よってラッチ14にX(1)のデータ
をラッチして、ラッチ15にY(1)のデータをラッチ
しようとすると、ラッチ15には正規化文字画像の座標
(1,1)に対応する文字メモリ8内のビット位置がラ
ッチされる。以下ラッチ14をそのままにしてY (2
)、 Y (3)・・・をラッチ15にラッチしようと
していくと座標(1,2)、  (1,3)・・・のビ
ット位置がラッチ15から出力されていく。
ラッチ15へのYテーブルのデータラッチ時に先に述べ
た属性をつけてラッチさせれば、必要な処理は方向指数
抽出部7がやってくれる。すなわち、CPUIはX、 
 Yのテーブルを作成することと、そのデータをラッチ
14および属性をつけてラッチ15への転送するだけで
ある。1ブロツクの転送がおわったら、カウンタ部27
の1〜4のカウンタの値を読み出してRAM3へ格納し
、カウンタを信号Hによ7てクリアしてから次のブロッ
クの転送をすればよいのである。これにり、正規化画像
の1画素に対する処理時間はRAM3からラッチ3への
転送時間とほぼ等しくなる。
ところで、第4図(b)に示すように、画素データを縦
方向に転送しているが、これは、7×7のブロックの順
番が第7図(a)であると仮定した場合である。(a)
のような並びであると仮定した場合、ブロック1の次は
、2. 3.4・・・という順に処理するのが自然であ
る。ところが先に述べたように9×9個の方向指数を求
めるのに12x12個の画素がいる。つまり余分な処理
が必要なのである。しかし、縦方向に画素を転送した場
合ブロック2はブロック1の続きであるため、12x9
個分の画素でよい。
よってブロック1のみ12x12画素でブロック2〜7
は12x9画素となる(ブロック1の処理前にシフトレ
ジスタ部をクリアするため、外ワク2画素の白ワク処理
がいらない。よって10x9画素分の処理でよい)。よ
って(12x12−12x9) x6x7=1512画
素分の転送時間が節約できる。また、第7図(b)のよ
うなブロック並びであれば横方向に転送する。
すなわちラッチ14にY (1)をラッチしたら、ラッ
チ15にX (1)、 X (2)・・・と転送してい
(のである。そして方向指数を読み出すときには、カウ
ンタ部27のカウンタ3.4. 1. 2の順に読みだ
せば方向指数1.2. 3.4の順に読み出せる。この
ように画像スキャン方向(画素転送方向)を目的とする
出力フォーマット(7X7ブロツクの順番)によって選
ぶことによって高速かつ方向指数の並びかえが必要ない
方向指数の抽出が可能となる。第7図(b)を(a)の
スキャン方向で方向指数の抽出したときに、あとで19
6次元ベクトルを(b)に合うように並びかえるか、カ
ウンタ部27を読み出すときに、(b)の並びに合うよ
うにして第1図RAM3へ格納 しなければならないため処理が複雑化する。
ところで第1図(b)は4段のバイブライン構造になっ
ている。説明すると、ラッチ15にラッチされたデータ
に対する文字通信メモリ8内のデータがカンウタ部27
で処理されるためには、3回別のデータをラッチ15に
ラッチした後である。第4図(b)において、9×9個
分の方向指数を得るため、画素1〜36までカウント不
可属性で転送した後はlラインに対して3画素(12−
9= 3)カウント不可、9画素カウント可属性で転送
していく。画素144まできたら、次のブロックの画素
145.146.147に対して、カウント不可属性で
転送し、その後カウンタ部27のカウンタ1〜4を読み
出して、カウントクリアする。その後は画素148以降
9画素をカウント可属性で転送する。すなわち、■ブロ
ック12X12画素に対して、4×4のマスクを考えて
、各ブロックを処理するのであるが、4×4マスクに対
して4段パイプライン処理とするとカウント不可属性か
らカウント可属性にするタイミングと、方向指数カウン
タを読み出してクリアするタイミングが同じとなり、C
PUIの制御が楽になる。もし、スムージングが、3×
3のマスクではな(5X5のマスクとすると14X14
画素の各ブロックに対して6×6のマスクを考えるので
パイプライン段数は6段とするのがよい。
〔他の実施例〕
実施例1ではRAMa内のX、  Yテーブルからラッ
チ14. 15へのデータ転送と、カウンタ27からR
AM3へのデータ転送はCPU1が処理したが、処理は
データ転送のみであるためDMAコントローラが処理し
てもよい。
ここで第18図のタイミングチャートを用いて、以上の
処理のタイミングについて説明する。
まず、ラッチ14にXテーブルの配列のX (a)のデ
ータがラッチされている。次にラッチ15へCPUIが
y (b)のデータの書き込み(データ転送)をすると
、アダー18には正規化座標(a、  b)に対応する
メモリ8内の画素のアドレスが出力されラッチ15へ出
力される。次のY (b+1)の転送時に座標(a、 
 b)に対応したメモリ8内の1ワードデータがラッチ
16へラッチされる。Y (b+2)の転送時に座標(
a、 b)の画素データがラッチ17の出力とマルチプ
レクサ21によってセレクトされ座標(a、  b)に
対する白ワク属性を示す信号Eによってマスクされる。
このマスク出力と3×3シフトレジスタ部23にすでに
保持されている8画素データと計9画素に対するスムー
ジング処理をスムージング部24で演算し、座標(a−
1,b−1)の画素に対するスムージング結果を2×2
シフトレジスタ部25へ入力させる(シフト入力)。
次のY (b+3)のデータ転送時に、第19図に示す
ように矩形座標(a−3,b−3) −(a、  b)
の4×4のマスクに対する2×2のマスクの出力がシフ
トレジスタ部25より出力されていて、方向指数デコー
ド部26によって各方向の加算データに変換される。カ
ウント属性信号Gには同じく座標(a、 b)を4×4
のマスクの下端座標とした。2×2のマスクに対するカ
ウント可Or不可のデータが出力されており、この26
の出力と、信号Gの出力によってカウンタ部27を制御
する。
次のY (b+4)のデータ転送時にはカウンタ部27
には前サイクルのY (b+3)データ転送時に比較し
て、矩形(a−2,b−2) −(a−1,b−1)の
方向指数に対する加算データが加算される。
y (b)のデータ転送時には、第6図CPU−AOに
は座標(a、  b)が白ワクであるかという属性が出
力され、CPU−Alには矩形座標(a−2,b−2)
−(a−1,b−1)のマスクの方向指数カウントの可
、不可の属性が出力される。
実施例2 第1図(b)の3×3及び2×2シフトレジスタ部とス
ムージング部と方向指数抽出部を第12図の構成とする
12bitX4列のシフトレジスタにより4×4のマス
クを出力し、スムージング方向指数抽出部により4×4
のマスクから3×3のスムージング処理と2×2の方向
指数抽出を同時に行う。第12図のようにしてもCPU
1の処理には全く影響を与えない。
実施例3 第1図(b)よりラッチ14とアダー18をとりのぞ<
、CPUIは、第3図にあるB (x、 y) =X 
(x)十Y (y)の演算をして、属性と共にそのデー
タをラッチ15にラッチする。この場合のCPUIの処
理は加算とデータ転送となる実施例1に比べて加算演算
の処理時間がふえるが、CPUIの処理能力が高く、処
理の増加が全体の処理時間に影響がない場合にハードウ
ェア量が例1に比べて少ないメリットがある。
また、文字・通信メモリの特定アドレスに、白画素を格
納して、白ワク処理時にそのアドレスをアクセスするよ
うにすれば、白ワクマスク用のハードウェアは必要なく
なる。
実施例4 実施例1では文字の正規化サイズが52 X 62、分
割ブロックは7×7、特徴ベクトルは64次元として説
明した。しかし、これらの値は認識対象の文字種によっ
て異なる。説明すると、識別対象が「0」〜「9」の数
字のみとした場合は正規化サイズ、分割ブロック数、特
徴ベクトル数はそれぞれ上記の値は、これより小さい値
でじゅうぶんである。反対に、手書き漢字文字を対象と
した場合は各次元数を大きくしなければ、うまく識別出
来ない。
そこで第13図に示すように第1図(b)の3×3シフ
トレジスタ部及び2×2シフトレジスタ部にブロックサ
イズ設定レジスタとマルチプレクサを加える。実施例1
ではブロックサイズは12X12固定であってか、ブロ
ックサイズ設定レジスタにO〜7の値を入れることによ
り、ブロックサイズは9から16に変更される。各ブロ
ックの方向指数(2×2のマスク)の数は(ブロックサ
イズ−3)2となる。正規化サイズをNとすると N=(ブロック分割数)×(ブロックサイズ−3)−1
で表わされる。実施例1ではブロック分割数は7で、ブ
ロックサイズは12であるから正規化サイズは62とな
る。
そこで、この正規化サイズNより、第6図のX。
Yのテーブルを というように作成してやることによって、ブロック分割
数=1.2.3.・・・ ブロックサイズ=9〜16 の組合せの正規化サイズが選択出来る。
いいかえると、方向指数抽出部7は、lブロック単位で
処理するハードウェアであり、どのブロックをどの順番
で、その数だけ処理するかはCPUIの制御しだいだか
らである。
実施例5 第14図は第1図(b)の方向指数デコード部26の内
部構成図である。カウンタ部24のカウンタ(24−5
)を1個ふやして第14図点線内の方向指数5力ウント
イネーブル信号に接続すると、各ブロック内の黒画素数
がカウンタ5ヘカウントされる。
CPUIの処理で変更する部分はカウンタ部24からR
AM3ヘデータを読み出すときに4データを読み出すと
ころ5データ読み出すだけで処理時間にはほとんど変わ
らない。
このように方向指数デコード部とカウンタ部の構成によ
り、方向特徴だけでなく黒/白画素密度といった特徴の
抽出が可能となる。
実施例6 実施例1では7×7ブロツクの1ブロック単位で処理す
る方式であったが、第15図のように、12bit X
 3列シフトレジスタを64bit X 3列シフトレ
ジスタへ、12bitX2列シフトレジスタを64bi
t X 2列シフトレジスタに変更し、方向指数抽出部
とカウンタ部を7セツト設ける。これにより7ブロツク
単位で処理するのである。実施例1の処理時間は1ブロ
ツクあたり12X9X (データ転送時間)であったが
、この実施例では9X9X (データ転送時間)となり
、最も高速化される。
正規化サイズが62で、まわり2画素白画素をとると、
66bitであるが、両端2画素が白画素なため、2画
素省略出来るので64bitである。
また、この実施例では、正規化サイズ、分割数が固定と
なる。
実施例7 実施例1では白ワク処理をCPUIのアドレス信号で処
理したが、これだと白ワクを含むブロックと含まないブ
ロックでCPUIの処理方法をかえなければならない。
正規化サイズにまわりの白ワクをつけると66 X 6
6のサイズになる。そこで第6図のX、 Yのテーブル
をX(−1)〜X (64)、Y(−1)〜X (64
)として、X (−1)、 X (0)、 X (63
)。
X (64)、Y (−1)、Y (0)、Y (63
)、Y (64)のデータに白画素情報を入れる。説明
すると文字・通信メモリ8は、最大容量が決まっている
。そこでXとYの加算結果が、その最大容量を越えたと
きに白ワクとするのである。例えば、CPUIのデータ
バスは32bitであるから、その最上位ビットを1と
して0x80000000の値をx (−1)、 x 
(0)。
X (63)、 X (64)、 Y (−1)、 Y
 (0)、 Y (63)。
Y (64)に格納する。そして第5図の白ワクマスク
信号Eの発生部分を第16図のようにする。これにより
X(−1)〜・・・X (64)、 Y (−1)・・
・Y (64)のデータによって自動的に白ワク処理が
可能となり、CPUIの全ブロックの処理が統一される
実施例8 実施例1では画素の属性をCPU1のアドレス信号で処
理しているが第1図(b)内の制御部13内部に第1図
に示す属性設定レジスタを設けて、属性を変更する毎に
、属性をレジスタに書きこんで処理する。
実施例9 構成は第1図と同じ、スキャナ12からの画像は、RA
MIIではなく文字・通信メモリ8へ格納し、CPU9
はメモリ8内の文書画像に対して文字の切出しをする。
スキャナがA4サイズ、解像度400dbiとすると約
2 M B y t eになる。2 M B y t 
eは224ビツトであるから第1図(b)のラッチ14
. 15とアダー18のビット幅が24bit以上あれ
ば問題な(処理可能である。認識部側からメモリ8をア
クセスする時間はCPU9は文字切出し処理不能である
が、認識部がメモリ8をアクセスするのはRAM3への
X、 Yテーブルの作成と各ブロックの方向指数抽出処
理と、識別結果出力時であり、196次元方向指数から
、64次元特徴ベクトル作成と大分類詳細識別処理の間
はアクセスしない。
実施例1でも画像をRAM3からメモリ8へ転送する時
間があるから、識別部のメモリ8へのアクセス時間が先
の転送時間以下であれば問題とならない。
〔発明の効果〕
以上説明したように、本発明によれば、CPUにおいて
ソフトで行われていた非常に複雑な特微量抽出処理を、
ハードを用いて行うことにより、以下のような効果があ
る。
(1)特微量抽出処理をハードで行い、CPUからの制
御信号により上記処理を平行して行うことが可能となり
、処理時間が非常に短縮できる。
(2)CPUではなくハードを用いる為、コストが小さ
(てすむ。
(3)CPUの負担を非常に軽くすることができる為、
その公地の処理、例えば特徴抽出が終った後の詳細分類
等の処理を行うことが可能となり、認識率を上げること
ができる。
【図面の簡単な説明】
第1図は実施例1を示す図、 第2図は文字・通信メモリを説明する図、第3図はCP
UIのメモリマツプ例を示す図、第4図はシフトレジス
タ部を示す図、 第5図は制御信号発生部を示す図、 第6図はX、Yテーブルの説明する図、第7図は正規化
方向を示す図、 第8図は従来例図を示す、 第9図、第1O図は特徴抽出アルゴリズムを示す図、 第11図は識別関数を示す図、 第12図は実施例2を示す図、 第13図は実施例4を示す図、 第14図は方向指数デコード部を示す図、第15図は実
施例6を示す図、 第16図は実施例7を示す図、 第17図は実施例8を示す図、 第18図は実施例1を示すタイミングチャート図、第1
9図はブロックを示す図。 ■・・・認識部CPU 2・・・認識部ROM 3・・・認識部RAM 4・・・詳細識別辞書メモリ 5・・・大分類部 6・・・大分類部辞書メモリ 7・・・方向指数抽出部(特徴量抽出部)8・・・文字
・通信メモリ 9・・・文字切出部CPU 10・・・文字切出部ROM 11・・・文字切出部RAM 12・・・スキャナ 13・・・制御部 14〜17・・・ラッチ 18・・・アダー 19、20・・・メモリ8アクセス切換マルチプレクサ
21・・・画素セレクト用マルチプレクサ22・・・白
ワクマスク部 23・・・3×3シフトレジスタ部 24・・・スムージング部 25・・・2×2シフトレジスタ部 26・・・方向指数デコード部 27・・・方向指数カウンタ部 六方@纜別藺収 Aa (T) WD〜W砂 犬舎類辞書 Xイ・−・ 々竺ト責己こべと7トIL 群細搬別関先 X: !tAS%L L ・ 7〜gり 4=/〜7 メl之 K。 、 Vij 、 B、A 枦鋼囲辞去内升り 第1図(b)−22虻 ((1−3,6−,9) 2′Xどマス/

Claims (1)

  1. 【特許請求の範囲】 画像データから切り出した文字画像の特徴を描出し、文
    字を認識する文字認識装置において、文字の第一の情報
    から第二の情報を演算する手段と、 該第二の情報から方向情報を抽出する抽出手段と、 該方向情報を計数する計数手段と、 前記演算手段と前記抽出手段と前記計数手段を平行して
    行うよう制御する制御手段を有することを特徴とする文
    字認識装置。
JP2206619A 1990-08-03 1990-08-03 文字認識装置 Pending JPH0492993A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2206619A JPH0492993A (ja) 1990-08-03 1990-08-03 文字認識装置
DE69132019T DE69132019T2 (de) 1990-08-03 1991-07-31 Bilderkennungsgerät und -methode
EP91307006A EP0471473B1 (en) 1990-08-03 1991-07-31 Image recognition apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2206619A JPH0492993A (ja) 1990-08-03 1990-08-03 文字認識装置

Publications (1)

Publication Number Publication Date
JPH0492993A true JPH0492993A (ja) 1992-03-25

Family

ID=16526377

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2206619A Pending JPH0492993A (ja) 1990-08-03 1990-08-03 文字認識装置

Country Status (3)

Country Link
EP (1) EP0471473B1 (ja)
JP (1) JPH0492993A (ja)
DE (1) DE69132019T2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6289122B1 (en) * 1999-04-15 2001-09-11 Electronics For Imaging, Inc. Intelligent detection of text on a page

Also Published As

Publication number Publication date
DE69132019T2 (de) 2000-08-31
EP0471473B1 (en) 2000-03-08
EP0471473A2 (en) 1992-02-19
EP0471473A3 (en) 1993-11-03
DE69132019D1 (de) 2000-04-13

Similar Documents

Publication Publication Date Title
US5129014A (en) Image registration
EP0431961B1 (en) Image reduction/enlargement technique
JPH0488489A (ja) 一般化ハフ変換を用いた文字認識装置および方法
JPH0315793B2 (ja)
CN115147511B (zh) 一种边缘构件详图生成方法、装置、设备及可读介质
JPH0492993A (ja) 文字認識装置
JPS59123084A (ja) 2次元像の標準化方法
JP3072126B2 (ja) 書体を識別する方法及び装置
JPH03268181A (ja) 文書読み取り装置
JP2505402B2 (ja) 画像処理装置
JPH07160824A (ja) 文字認識装置
JP2917396B2 (ja) 文字認識方式
JP2562498B2 (ja) 指定図形の座標検出方式
JPS6252911B2 (ja)
JP2853167B2 (ja) パターン認識用辞書作成装置
RU2198429C2 (ru) Способ кодирования элементов бинарного изображения и устройство для его осуществления
JP3090928B2 (ja) 文字認識装置
JPH03214285A (ja) データ変換方式
JP2954218B2 (ja) 画像処理方法及び装置
JPH03214282A (ja) シストリックアレイによる正規化方式
JPH05174150A (ja) 円グラフ認識装置
JPH0146913B2 (ja)
JP2868533B2 (ja) 図面読み取り装置
CN111597375A (zh) 基于相似图片组代表特征向量的图片检索方法及相关设备
JPH0896140A (ja) 画像データの圧縮方法