(57)【特許請求の範囲】
【請求項１】
文書画像から抽出された文字の外接矩形のトリグラムモデルにより、所定言語の出現確率を算出し、該出現確率により文書中で使用される言語を識別する言語識別装置において、
外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段と、
固定段階に量子化された外接矩形にシンボルを付与して、外接矩形の系列をシンボルの系列に変換する手段と、
シンボルの系列に基いてシンボルのトリグラムモデルを作成する手段と、
を有することを特徴とする言語識別装置。
【請求項２】
複数国の言語による基準文書から作成されたトリグラムモデルと識別対象言語による検査用文書から作成されたトリグラムモデルとにより所定言語の出現確率を算出し、検査用文書の使用言語を識別する言語識別装置において、
複数国の言語で作成された基準文書、及び識別対象言語の検査用文書の画像から、前記文書ごと且つ文字行ごとに文字の外接矩形を作成する手段と、
外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段と、
固定段階に量子化された外接矩形に、当該外接矩形を一意に識別可能にするシンボルを付与する手段と、
シンボルの付与により外接矩形の系列をシンボルの系列に変換する手段と、
シンボルの系列に基いて基準文書の第１トリグラムモデル及び検査用文書の第２トリグラムモデルを作成する手段と、
第１トリグラムモデルを各国言語ごとに記憶する手段と、
第１トリグラムモデルの所定のシンボルの出現確率から、第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに算出する手段と、
第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに集計する手段と、
集計した各国言語ごとの出現確率により検査用文書の使用言語を決定する手段と、
を有することを特徴とする言語識別装置。
【請求項３】
請求項２記載の言語識別装置において、
複数国の言語で作成された基準文書、及び識別対象言語の検査用文書の画像から、前記文書ごと且つ文字行ごとに文字の外接矩形間の空白部分を外接矩形として作成する手段を有することを特徴とする言語識別装置。
【請求項４】
請求項２又は３記載の言語識別装置において、
前記外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段は、単一又は複数のパラメータにより外接矩形を固定段階に量子化することを特徴とする言語識別装置。
【請求項５】
請求項４記載の言語識別装置において、
前記単一又は複数のパラメータにより外接矩形を固定段階に量子化する手段は、外接矩形の文字行内における始点の高さ、及び外接矩形の高さ、及び外接矩形の幅、及び外接矩形内の黒画素密度、及び隣接する外接矩形間距離、のいずれか１つ又は、任意の複数の外接矩形の配置情報を表すパラメータにより固定段階に量子化することを特徴とする言語識別装置。
【請求項６】
請求項５記載の言語識別装置において、
文字行の高さを所定高さであるとみなす手段を更に有することを特徴とする言語識別装置。
【請求項７】
コンピュータを、
複数国の言語で作成された基準文書、及び識別対象言語の検査用文書の画像から、前記文書ごと且つ文字行ごとに文字の外接矩形を作成する手段、
外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段、
固定段階に量子化された外接矩形に、当該外接矩形を一意に識別可能にするシンボルを付与する手段、
シンボルの付与により外接矩形の系列をシンボルの系列に変換する手段、
シンボルの系列に基いて基準文書の第１トリグラムモデル及び検査用文書の第２トリグラムモデルを作成する手段、
第１トリグラムモデルを各国言語ごとに記憶に記憶させる手段、
第１トリグラムモデルの所定のシンボルの出現確率から、第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに算出する手段、
第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに集計する手段、
集計した各国言語ごとの出現確率により検査用文書の使用言語を決定する手段、
として機能させるためのプログラム。
【請求項８】
請求項７記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、原稿中に使用される言語がアジア系言語と欧米系言語のいずれの言語であるかを識別する装置及びそのためのプログラム並びに記録媒体に関する。
【背景技術】
【０００２】
文書画像に対して文字認識処理を施すとき、文字認識を行おうとする言語に対して最適な文字認識装置が使用されないと、認識率の高い文字認識を行うことができなくなる。このために、従来から、いろいろな言語識別の発明がなされている。その１つとして、言語識別対象の原稿画像を縮小し、縮小した原稿画像の文字行の黒画素連結成分を抽出し、外接矩形を作成する。この外接矩形は、英文画像の場合、単語ごとに融合して連結成分矩形として構成している。
【０００３】
英文の場合は、単語を構成する文字の数がある程度一定であるので、縦横比が２倍から６，７倍程度となる外接矩形が多くなる特徴がある。一方、日本語の場合は、英語の場合では現れにくい長い矩形が生じたり、逆に１文字に対応するような細かい外接矩形が多く生じる特徴がある。
【０００４】
そこで、連結成分矩形を、短、中、長の３種類に分類し、これを各文字領域（文字行）について集計する。即ち、行方向が横の場合、例えば、幅／高さが２以下では短、２〜６では中、それ以上の場合には長とする。そして文字領域ごとに、短、中、長の現れる頻度を所定のしきい値と比較して算出し、前記特徴に徴して判断し、英語或いは日本語の識別を行っている。
【０００５】
また、当該行内矩形が隣接する行内矩形との距離について、日本語の場合、最も距離の短いピークが漢字の偏とつくりの間隔、英語の場合、プロポーショナル英字の同一単語内の文字間隔に現れる傾向にあるという特徴がある。この特徴に徴して、対象矩形の両隣の矩形との距離を測定し、所定のしきい値と比較し、文字ブロックの統合を行い、或いは行うことなくブロックを抽出し、このブロックごとの日英の識別判断を行っている（特許文献１参照）。
【０００６】
【特許文献１】特開平11-191135号公報  （平成10年７月15日付け全文補正明細書  段落(0040)乃至(0045)、及び（0050）乃至(0056)、図３、図２０）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述の発明は、日本語及び英語がそれぞれ有している独自の構成上の特徴を学習、分析し、その特徴に基いて言語識別を行うので、日本語及び英語間では言語識別が正確に行えるが、英語の代わりに欧米系言語の一つである仏語、或いは独語などが入ってくると、日仏、日独の言語識別が日英と同じように正確に行われる保証はない。これが、日本語、中国語、韓国語、英語、仏語、独語、伊語、西語などの多数国語間で、日本語、中国語、韓国語などのアジア系言語と、英語、仏語、独語、伊語、西語などの欧米系言語と、を２分して識別するとなると殆ど不可能になってしまう。また、前記日英言語の識別処理において、処理速度を高速化させることは行っていない。
【０００８】
そこで、本発明の第１の目的は、原稿中に使用される多数国語言語間で、日本語、中国語、韓国語等のアジア系言語と、英語、仏語、独語、伊語、西語などの欧米系言語とを識別することである。第２の目的は、そのとき各国系言語の識別判断を高速に行うことである。
【課題を解決するための手段】
【０００９】
請求項１の発明は、文書画像から抽出された文字の外接矩形のトリグラムモデルにより、所定言語の出現確率を算出し、該出現確率により文書中で使用される言語を識別する言語識別装置において、外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段と、固定段階に量子化された外接矩形にシンボルを付与して、外接矩形の系列をシンボルの系列に変換する手段と、シンボルの系列に基いてシンボルのトリグラムモデルを作成する手段と、を有することを特徴とする言語識別装置である。
請求項２の発明は、複数国の言語による基準文書から作成されたトリグラムモデルと識別対象言語による検査用文書から作成されたトリグラムモデルとにより所定言語の出現確率を算出し、検査用文書の使用言語を識別する言語識別装置において、複数国の言語で作成された基準文書、及び識別対象言語の検査用文書の画像から、前記文書ごと且つ文字行ごとに文字の外接矩形を作成する手段と、外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段と、固定段階に量子化された外接矩形に、当該外接矩形を一意に識別可能にするシンボルを付与する手段と、シンボルの付与により外接矩形の系列をシンボルの系列に変換する手段と、シンボルの系列に基いて基準文書の第１トリグラムモデル及び検査用文書の第２トリグラムモデルを作成する手段と、第１トリグラムモデルを各国言語ごとに記憶する手段と、第１トリグラムモデルの所定のシンボルの出現確率から、第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに算出する手段と、第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに集計する手段と、集計した各国言語ごとの出現確率により検査用文書の使用言語を決定する手段と、を有することを特徴とする言語識別装置である。
請求項３の発明は、請求項２記載の言語識別装置において、複数国の言語で作成された基準文書、及び識別対象言語の検査用文書の画像から、前記文書ごと且つ文字行ごとに文字の外接矩形間の空白部分を外接矩形として作成する手段を有することを特徴とする言語識別装置である。
請求項４の発明は、請求項２又は３記載の言語識別装置において、前記外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段は、単一又は複数のパラメータにより外接矩形を固定段階に量子化することを特徴とする言語識別装置である。
請求項５の発明は、請求項４記載の言語識別装置において、前記単一又は複数のパラメータにより外接矩形を固定段階に量子化する手段は、外接矩形の文字行内における始点の高さ、及び外接矩形の高さ、及び外接矩形の幅、及び外接矩形内の黒画素密度、及び隣接する外接矩形間距離、のいずれか１つ又は、任意の複数の外接矩形の配置情報を表すパラメータにより固定段階に量子化することを特徴とする言語識別装置である。
請求項６の発明は、請求項５記載の言語識別装置において、文字行の高さを所定高さであるとみなす手段を更に有することを特徴とする言語識別装置である。
請求項７の発明は、コンピュータを、複数国の言語で作成された基準文書、及び識別対象言語の検査用文書の画像から、前記文書ごと且つ文字行ごとに文字の外接矩形を作成する手段、外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化する手段、固定段階に量子化された外接矩形に、当該外接矩形を一意に識別可能にするシンボルを付与する手段、シンボルの付与により外接矩形の系列をシンボルの系列に変換する手段、シンボルの系列に基いて基準文書の第１トリグラムモデル及び検査用文書の第２トリグラムモデルを作成する手段、第１トリグラムモデルを各国言語ごとに記憶に記憶させる手段、第１トリグラムモデルの所定のシンボルの出現確率から、第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに算出する手段、第２トリグラムモデルの所定のシンボルの出現確率を各国言語ごとに集計する手段、集計した各国言語ごとの出現確率により検査用文書の使用言語を決定する手段、として機能させるためのプログラムである。
請求項８の発明は、請求項７記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【００１０】
請求項１に対応する効果：文書画像から抽出された文字の外接矩形を、当該外接矩形の配置情報を表すパラメータにより、固定段階に量子化し、量子化された外接矩形にシンボルを付与して外接矩形の系列をシンボルの系列に変換し、シンボルの系列に基いてシンボルのトリグラムモデルを作成するので、言語識別の処理をシンボルの処理のみで行うことが可能になり、高速で言語識別を行うことができる。
請求項２〜６に対応する効果：言語識別の処理をシンボルの処理のみで行うので、言語識別の処理を「文の破片」として処理することが可能になり、多数国の言語が使用される文書において当該言語の識別を高速で行うことができる。
請求項７，８に対応する効果：請求項２乃至６の発明の効果を奏する言語識別処理を任意の画像処理装置等において容易に実施することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態に係る、原稿中の言語をアジア系言語（日本語、中国語、韓国語等）及び欧米系言語（英語、仏語、独語、伊語、西語等）に２分して識別する装置を説明する。
【００１２】
はじめに、言語識別手法の基本的概念について説明する。言語はコミニュケーションの代表的な道具であり、音声言語（聴覚言語）と文字言語（視覚言語）の２種に大別されるが、構成要素として考えると、いずれもコミニュケーションの当事者間で共有される離散的なシンボルによって成り立ち、構成ルールを持った記号系である。従って、言語識別は、音声であれ、文字であれ、その時系列な特徴を言語別にモデル化し、識別対象データの時系列特徴と照合するという認識問題に帰着させることができる。
【００１３】
そこで、本実施形態に係る言語識別装置は、言語モデルとして、情報理論学者クロード・エルウッド・シャノン（Claude Elwood Shannon 1916-2001）が提唱した、確率的言語モデルであるエヌグラム（N-gram）モデルを使用する。エヌグラムモデルは、「ある言語単位の系列の中で、言語単位のＮ個の並びの組み合わせが、どの程度出現するか」を求めるモデルである。
【００１４】
図１３は、エヌグラムモデルを数学的に定義する式を示し、言語単位の系列Ｗ1、Ｗ2、Ｗ3、・・・Ｗnの生起確率Ｐ（Ｗ）の同時確率は、各生起確率の条件付き確率の積に分解される。しかし、全ての言語単位系列の組み合わせに対して、条件付き確率Ｐ（Ｗi｜Ｗ1、Ｗ2、Ｗ・・・Ｗi-2、Ｗi-1）を推定することは現実的には不可能である（なぜなら言語現象は固定ではなく、入れ子構造を持ち、無限に生成不可能である）ので、これをN-1重マルコフ過程（一般に、ある事象の確率が直前のN-1個の事象だけに依存するとき、これをN-1重マルコフ過程と呼んでいる）で近似することが行われる。Ｎの値が大きいほど、広い範囲の系列の特徴を表現できるが、系列の組み合わせのバラエティが指数関数的に増大するので、実用的に扱いにくくなる。そこで実際には、Ｎ＝３を使用することが多く、この場合をトリグラム（trigram）と呼んでいる。トリグラム（Ｎ＝３）とすることにより、図１３の1.1式及び1.2式により生起確率を求めることができる。
【００１５】
モデル化対象の基準言語の訓練データに対しトリグラムモデルの作成を行う、つまり図１３の1.1式Ｐ（Ｗi｜Ｗi-2、Ｗi-1）により、２つの連続する文字列の後に所定の文字が現れる確率を算出する。この確率を３連続の文字と対応させてトリグラムモデルとする。このトリグラムモデルをトリグラム表として記憶する。このトリグラムモデルが各国言語において生起する確率を演算し、出現確率を各国言語ごとに集計し、集計結果から当該言語の最大出現確率を求め、最大出現確率によって言語判断を行う。
【００１６】
次に、本発明の実施形態に係る言語識別装置で実施される言語識別手法を具体的に説明する。
【００１７】
（実施形態１）図１は、本発明の実施形態に係る言語識別装置の要部構成図であり、図中、１は本言語識別装置を制御するＣＰＵ、２は、ＣＰＵ１を起動するためのプログラムが記憶されるＲＯＭ、３は、不図示のスキャナにより読み取られた原稿画像、パソコンで作成された原稿画像又は通信回線を通して送信された原稿画像を記憶するハードディスク形のメモリ、４は、本発明の装置により言語識別処理をするためにハードディスクメモリに記憶された原稿画像を一時的に読み出して展開するＲＡＭ、５は、基準となる言語の訓練データについて求めたトリグラム表を記憶する不揮発性メモリ（NVRAM）、６は、オペレータが各種入力を行うキーボード、７は、入力状況等を表示する表示装置、８は、CD-ROM等に記憶された本発明を実行するためのプログラム等を入力するドライバ、９は、インターネット、ＬＡＮ等の電気通信回線を介して原稿画像を送受信する通信装置である。
【００１８】
図２は、入力された原稿画像の行切出しを説明する図である。
【００１９】
いま、オペレータは、キーボード６から言語識別を行う指示を入力すると、ＣＰＵ１は、不図示のスキャナから入力された検査用文書の原稿画像（図２（Ａ））について、黒画素の連結成分を求め、それと外接する矩形１１、１２、１３・・・を求める（図２（Ｂ））。求めた外接矩形を、近隣同士を連結して文字行２０に成長させる（図２（Ｃ））。そして、この文字行中の外接矩形（以下、行内矩形）に対して言語識別の処理を行う。行内矩形の作成処理及び文字行の切出し処理自体は、公知の手法を使えばよいので詳細説明は省略する。
【００２０】
図３は、文字行内における行内矩形の配置情報の説明図であり、図中、図３（Ａ）は行内矩形の位置を設定するための座標を示す図、図３（Ｂ）は、欧米系言語としての英語文字行の行内矩形を示す図、図３（Ｃ）は、アジア系言語としての日本語文字行の行内矩形を示す図である。
【００２１】
図３（Ａ）において、行内矩形は、矩形の左上端（座標：Ｘs、Ｙs）を始点とし、矩形の右下端（座標：Ｘe、Ｙe）を終点として、行内における矩形の配置位置を規定する。
【００２２】
図３（Ｂ）において、英語文字行は、大文字Ｗと小文字h、y等からなり、欧米系文字は、英語のアポストロフィ、仏語のアクサンテギュ、及び独語のウムラウト等の記号類が存在する場合も大文字及び小文字からなることになるので、行内矩形の始点の高さは、行の上端の位置ａと上端から所定距離下に下りた位置ｂの２ヵ所に集中する。また欧米系文字の場合、行内矩形の矩形サイズは数種類に限られる。
【００２３】
図３（Ｃ）において、日本語は、漢字、カタカナ、ひらがなが混在し、また韓国語の場合はハングルが混在するなど、アジア系文字は、文字構造が欧米系文字に比べて複雑であり、行内矩形の始点の高さは、欧米系文字のように２カ所への明確な集中はない。また行内矩形の矩形サイズは、欧米系文字の場合よりはるかに多くなる。
【００２４】
更に、アジア系文字の構造は、欧米系文字の構造より複雑であるため、その行内矩形の黒画素密度は、欧米系文字の行内矩形の黒画素密度より明らかに高い。
【００２５】
更にまた、アジア系文字行（日本語、中国語）は、単語間に空白が挿入されないが、欧米系文字行は、単語間に空白が挿入される。
【００２６】
以上のような欧米系文字とアジア系文字の特徴の違いにより、欧米系文字とアジア系文字を区別するには、注目行において、ア）行内矩形の始点の高さ、イ）矩形サイズの高さ、ウ）矩形サイズの幅、エ）行内矩形の黒画素密度、オ）行内矩形間空白部の有無、等の配置情報を使用すればアジア系言語と欧米系言語の識別が可能になる。従って、本発明においては、これらの配置情報を利用する。
【００２７】
本発明の言語識別手法では、まず、ＣＰＵ１は、行内矩形の配置情報を表すパラメータを固定段階に量子化し、これにラベル付けして行内矩形をシンボル系列に変換する。
【００２８】
図４は、行内矩形の配置情報のパラメータを固定段階に量子化するための説明図であり、図中、行内矩形２１は、行高さＨの行内に、始点座標（Ｘs、Ｙs）、終点座標（Ｘe、Ye）で設定され、従って行内矩形始点高さＹs、行内矩形の幅W、行内矩形の高さh、の矩形として存在する。この矩形の行内における配置情報は、始点座標、高さ、幅の３成分（パラメータ）で表現でき、３次元ベクトルとみなすことができる。つまり、行内矩形の時系列情報（左から右へ並ぶ順序）は、この３次元ベクトルの系列として扱えるので、各次元の値を固定段階に量子化することにより、ベクトルのバラエティを有限個に制限することができる。
【００２９】
そこで、始点の行内における高さYsを固定段階に量子化するために、原稿を特定しない状況下では、行高さは可変であるので、行高さに依存しないように、YsRate＝Ys／Hのように正規化する。ここで、０<YsRate≦１であるから、YsRateを固定段階に量子化するには、例えば、Ｎ段階に量子化する場合、ＹsYal＝INT（YsRate＊（N-1））、ただしINT（）：小数点以下切捨て、とする。そして、各段階に、０〜（N-1）のＩＤラベルを付与することによりシンボル化する。このＩＤラベルの付与により、行内矩形の時系列情報は、離散的なＩＤの並び、即ちシンボル系列に変換される。
【００３０】
図５は、欧米系文字及びアジア系文字を行内矩形の始点高さに基いてシンボル系列に変換する例を示す図であり、図中、欧米系文字（英語文字）ｗ、ｈ、ｙ、ｔ、ｗ、・・・は、それぞれs021、s124、s032、s048、s012・・・のようなＩＤラベルを付与し、またアジア系文字（日本語文字）ソ、フ、ト、の、「、・・・は、それぞれs243、s086、s045、s189、s211・・・のようなＩＤラベルを付与する。
【００３１】
上記のシンボル系列変換を行うとき、原稿が傾いてスキャンされると、文字行が傾いてしまい、極端な場合は、行切出しを失敗してしまうことになるが、少々の傾きであれば、行間の空白部を利用して行切出しを行うことはできる。しかし、シンボル系列への変換は、行内矩形の始点高さＹsに注目するので、行内矩形の傾きはシンボル化に影響する。そこで、この傾きの影響を受けないようにする。
【００３２】
図６は、文字行の傾きの影響を排除する処理の説明図であり、図中、破線ｅは、切出された文字行３０の元のベースラインを示し、行内矩形３１、３２・・の始点までの距離は、行高さに対して万遍なく分布することになり、欧米系文字行の特徴である始点の高さの２カ所への集中がなくなってしまう。そこで、新ベースライン（破線）ｄを定め、このベースラインｄから行内矩形３１、３２・・の始点までの高さを求める。ベースラインｄを求めるには、行内矩形の終点と文字行（矩形）の終点を結ぶ直線を求めるが、より具体的には、行内矩形の終点座標の分布に基く回帰直線から求める。回帰直線自体は、公知の手法により求めることができる。
【００３３】
このように、行内矩形はシンボル系列に変換されるので、シンボル系列の並び傾向を求めることができれば、行内矩形の配置情報の並び傾向を求めることと等価になる。
【００３４】
次に、トリグラムモデルを作成して行内矩形の配置情報の並び傾向を求める。
【００３５】
このために前処理として、予め定めた基準言語の訓練用データを用い、前記スキャナから入力された検査用文書の原稿画像と同じ形態で、文字行ごとの外接矩形の作成、外接矩形のパラメータによる固定段階への量子化、シンボルの付与、外接矩形のシンボル系列への変換を行う。そして図１３の1.1式により、シンボルの３つ組みの出現頻度を算出し、条件付き確率をトリグラムモデルで求め、トリグラム表としてNVRAM５に記憶しておく。
【００３６】
図７は、訓練用データに基いて求めたトリグラムモデルの例を示す。図７において、トリグラムモデル［s013，s045，s032］では、s013，s045の後ろにs032が出現する確率は、1回中1回（1.00000（1/1））であり、トリグラムモデル［s013，s064，s033］では、s013，s064の後ろにs033が出現する確率は、４回中３回（0.75000（3/4））、以下、当該２つのシンボルの後に所定のシンボルが出現する確率を算出する。そして、出現確率の演算が高速で行えるように、確率値の対数をマイナス１０００（-1000）倍して整数にする。このトリグラムモデルを英語、仏語、独語、伊語、西語、日本語の各訓練データに基いて作成し、トリグラム表として、不揮発性メモリ５に記憶する。
【００３７】
続いて、先の検査用文書のシンボル系列について、文字行ごとに、当該２つのシンボルの後に所定のシンボルが出現する確率を算出する。即ち、記憶したトリグラム表の整数化された確率を読み出し、当該文字行における当該文字の出現確率を算出する。これを記憶した全ての言語のトリグラムモデルについて行う。
【００３８】
一般に文書における使用言語は、原稿ごと或いは領域ごとに１種類である場合が多く、ある範囲において外来語や固有名詞などを除いて、複数の言語が混在して使われることは稀である。よって、最大出現確率の言語の行数を、１枚の原稿全体にわたって、欧米系言語（英語、仏語、独語、伊語、西語）とアジア系言語（日本語）に分けて集計し、欧米系言語の行数の総数とアジア系言語の行数とを比較し、単純多数決により当該原稿の言語を決定する。
【００３９】
なお、多数決により決定する場合、差が設定値以上（僅差なら不明と判断）、長い行の多い方を考慮（短い行は考慮しない）、最頻値の行高さを持つ行のみを考慮（本文行のみを決定対象にする）、などにより決定してもよい。
【００４０】
図８は、本実施形態の言語識別処理の流れを模式的に示す図である。図８の矢印に従って説明すると、原稿画像の行内矩形をシンボルに変換し、シンボル系列s165、s029、s032・・・を作成する。一方、英語、仏語、独語、伊語、西語及び日本語の訓練用データに基いて、英語、仏語、独語、伊語、西語及び日本語のトリグラム表を作成し記憶しておく。原稿画像のシンボル系列と記憶しているトリグラム表により、各国言語ごとに、シンボル系列s165、s029、s032・・・について生起確率演算を行い、当該言語の最大出現確率を、図８の例では独語２３０９８のように求める。文字行ごとの結果を１枚の原稿全体で集計し、英語の行数５、仏語の行数８、独語の行数９８・・・のように集計する。そして、欧米系言語の行数の総数１１４とアジア系言語の行数７を比較し、単純多数決により、本原稿の言語は欧米系言語であると決定する。
【００４１】
本実施形態では、各国言語の出現確率を、英語の行数５、仏語の行数８、独語の行数９８・・・のように集計し、欧米系言語の行数の総数１１４とアジア系言語の行数７の比較により、単純多数決により、欧米系言語とアジア系言語の２系列言語を識別しているが、各国言語の行数から特定の国の言語を、図８では独語ように識別することも可能になる。
【００４２】
図９は、本発明の実施形態の言語識別処理のフロー図である。フロー図を参照して処理の工程を説明する。キーボード４から言語識別を行う指示が入力されると、ＣＰＵ１は、不図示のスキャナから原稿画像を入力させ（S1）、黒画素の連結成分を求め、それと外接する矩形を求め、この外接矩形を、近隣同士を連結して文字行に成長させる（S2）。そして、この文字行を切出し（S3）、文字行について言語判定（識別）の処理を行う（S4）。なお、言語判定工程の詳細は、ステップＳ４１〜４４で述べる。次いで文字行ごとの言語出現結果を1枚の原稿全体で集計し（S5）、多数決により原稿の言語を判定する（S6）。
【００４３】
前記言語判定工程（ステップＳ４）即ち１行ごとの言語識別工程を詳細に説明する。
【００４４】
文字行の切出しが行われると、ＣＰＵ１は、スキュー行であったり、行内矩形が小さなものばかりで構成されているときの対策のため、行内矩形の高さを集計し、その最大高さにより行高さを推定する。このために、それぞれの行内矩形高さｈを所定倍し、実際の行高さＨ（図３）と比較する。算出式で示せば、各行内矩形について、行内矩形高さｈ×Ａ（例えば、1.2） > 実際の行高さＨか否かをチェックし、行内矩形高さの最大高さｈsを1.2倍した値が実際の行高さＨより大であるとき、行内矩形高さの最大高さｈsを行高さＨとみなす（S41）。
【００４５】
続いて、文字行のベースラインを決める。このために、行内矩形の終点高さYeの回帰直線を求める。このとき、終点高さYeの位置は、文字行の半分以下のものに限定する。求めた回帰直線を文字行のベースラインとする（S42）。
【００４６】
そして、行内矩形の始点Ysにより行内矩形を整列する（S43）。整列した行内矩形の配置情報を量子化し行内矩形をシンボル系列に変換する（S44）。シンボル系列から言語別に出現確率を算出する（S45）。
【００４７】
（実施形態２）行内矩形をシンボル系列に変換するとき、前述の行内矩形の始点高さを使用する代りに、行内矩形の高さを使用してもよい。このときは、HeightRate＝ｈ／Ｈ、HeightVal＝INT（（HeightRate＊（N-1））+0.5）、但し、INT（）は小数点以下切捨て、として、０〜(N-1)段階にＩＤ付与（ラベル付け）する。ＩＤ付与後の言語識別処理は、実施形態１と同じであり、また以下の実施形態でも同じである。
【００４８】
（実施形態３）行内矩形のシンボル系列への変換は、また、行内矩形の幅Ｗを使用してもよい。このときは、WidthRate＝ｗ／Ｈ、WidthVal＝INT（（WidthRate＊（N-1））+0.5）、但し、INT（）は小数点以下切捨て、として、０〜(N-1)段階にＩＤ付与（ラベル付け）する。
【００４９】
（実施形態４）更に、黒画素密度を使用してもよい。欧米系文字は、構造が単純であるため、行内矩形の黒画素密度は低く、逆にアジア系文字は、構造が複雑であるので、行内矩形の黒画素密度は高い。このことから、行内矩形の黒画素密度を言語識別の基準として使用することができる。よって、黒画素密度＝行内矩形の黒画素数／行内矩形の総画素数、として、前記と同様０〜(N-1)段階にＩＤ付与（ラベル付け）する。
【００５０】
（実施形態５）欧米系文字行とアジア系文字行における行内矩形の配置状況の違いは、図３からも明らかなように、隣接矩形との距離の差にもある。即ち、欧米系文字行では、隣接矩形との距離は正値である場合が多く、矩形同士が重複することは少ない。一方、アジア系文字行においては、隣接矩形と重複する場合が頻繁に生じる。また、欧米系文字行では、英文字のｉ、ｊのように、矩形の垂直上に１つの点が存在する文字、独文字のウムラウトのように、矩形の上に２つの点が存在する文字、西（スペイン）文字のＮ+（エニェ）のように、矩形上に細長い長方形が存在するもの、など言語ごとに隣接矩形との距離に関して特徴的な文字が存在する。そこで、この隣接矩形との距離を言語識別の基準として使用する。
【００５１】
図１０は、隣接矩形間距離に基いて行内矩形をシンボル系列変換する例を説明する図である。図１０において、行高さＨの文字行４０内に存在する行内矩形４３は、始点（X1s、Y1s）、終点（X1e、Y1e）により規定される矩形であり、行内矩形４５は、始点（X2s、Y2s）、終点（X2e、Y2e）により規定される矩形である。矩形４３と４５とは、距離ｄだけ離れている。つまり、矩形４３と４５は正値の距離ｄを有する。よって、RightDistanceRate＝ｄ／Ｈ、RightDistanceVal＝INT（（RightDistanceRate＊（N-1））+0.5）、但し、INT（）は小数点以下切捨て、として、距離ｄの空白部を０〜(N-1)段階にＩＤ付与（ラベル付け）する。
【００５２】
なお、距離ｄが負値となるときは、矩形４３と４５が水平方向に重複しているので、重複していない場合と明確に区別するために、別のラベルを設定してもよい。
【００５３】
図１１は、矩形間距離によりシンボル化される文字行を示す図であり、図中、４４は、行内矩形４３と４５との間の、距離ｂの空白部４４であり、この空白部４４に対してsSPCというＩＤラベルを付与する。
【００５４】
（実施形態６）以上、行内矩形の始点の高さ（Ｙs／Ｈ）、行内矩形の高さ（ｈ／Ｈ）、行内矩形の幅（Ｗ／Ｈ）、黒画素密度、行内矩形間の空白部、をそれぞれ使用してシンボル系列変換することを述べたが、複数の配置情報のベクトルを独立してシンボル系列変換するよりも、まとめてシンボル系列変換する方が、各ベクトルが関連し合って、言語独特の行内矩形の特性情報を表現するシンボル系列変換が行える。
【００５５】
そこで、行内矩形の始点の高さ（Ｙs／Ｈ）、行内矩形の高さ（ｈ／Ｈ）、行内矩形の幅（Ｗ／Ｈ）の３つをベクトルとして、
行内矩形の始点の高さ（Ｙs／Ｈ）  →１５段階、
行内矩形の高さ（ｈ／Ｈ）    →８段階、
行内矩形の幅（Ｗ／Ｈ）、    →２段階
のようにシンボル系列変換する。そして、
行内矩形の始点の高さ（Ｙs／Ｈ）  １５段階  →４bits、
行内矩形の高さ（ｈ／Ｈ）  ８段階      →３bits、
行内矩形の幅（Ｗ／Ｈ）  ２段階      →１bit
で処理する。４bits＋３bits＋１bit＝８bitsであるから、１byteの各ビットに全情報を格納することができる。
【００５６】
図１２は、行内矩形の配置情報のデータ構造を示す図であり、図中、行内矩形の特性情報は、１配置情報（８ビット）を、４ビットの始点高さエリア及び３ビットの矩形高さエリア及び１ビットの矩形幅エリアで構成する。このような構成にすることにより、３つのベクトルから系列変換されるシンボルは、１５段階×８段階×２段階＝２４０種となる。
【００５７】
行内矩形の始点の高さ等に付加して行内矩形間の空白部をもシンボル系列変換するときは、行内矩形と隣接矩形との距離を行高さと比較することにより空白部の存在を決定する。このとき、行高さに対する矩形間距離の割合にしきい値を設け、しきい値を超える矩形間距離かどうかにより、空白部が存在するか否かを決定する。
【００５８】
再び図１１に戻り、行高さＨの文字行中の行内矩形４１と４２との間には距離ａの空白部があり、行内矩形４３と４５との間には距離ｂの空白部４４、行内矩形４６と４８との間には距離ｃの空白部４７があるとする。ＣＰＵ１は、これらの距離ａ，ｂ，ｃと行高さＨとの比と、所定のしきい値とを比較し、ａ／Ｈ < しきい値（例えば、0.25）のとき空白部なし、ｂ／Ｈ > しきい値（0.25）のとき空白部あり、ｃ/Ｈ> しきい値（0.25）のとき空白部あり、と判断する。空白部４４にラベルsSPCを付与することは既に述べたとおりである。実施形態６の場合、シンボルの種類は２４０種であるが、記憶サイズは1バイトであるので、１６種類（＝256-240）のシンボルを更に設定することができる。空白部用のシンボルsSPCは、この１６種類に付与されることは当然である。
【００５９】
なお、特性情報の種類は、行内矩形の始点の高さ（Ｙs／Ｈ）、行内矩形の高さ（ｈ／Ｈ）、行内矩形の幅（Ｗ／Ｈ）の他に、黒画素密度を含め任意に選択することができ、またデータ格納のためのデータ構造、記憶エリア、記憶サイズも固定でなく任意に決定することができる。
【００６０】
（実施形態７）上述の実施形態６においては、訓練データから行内矩形の始点の高さ（Ｙs／Ｈ）、行内矩形の高さ（ｈ／Ｈ）、行内矩形の幅（Ｗ／Ｈ）という配置情報に関する３次元のベクトルデータを求め、それらを２４０種の代表ベクトルとしている。この代表ベクトル群をコードブックと呼ぶことにする。コードブック中の２４０種のベクトルを区別するためにＩＤ（ラベル）を付与することになる。
【００６１】
行内矩形の特性情報（複数）の各情報を多次元ベクトルの各次元ベクトルとして区別することができれば、行内矩形について、その配置情報から１つの代表ベクトルを作成することができる。シンボル系列変換は、ベクトルデータの多数のバラエティから、それを代表する少数のベクトルデータを求めること、つまり代表ベクトルを求めることであり、求められた代表ベクトルにラベル付けをすれば、多次元のベクトルデータの系列を１次元のシンボルデータの系列に変換することができる。
【００６２】
上記実施形態におけるトリグラム（Ｎ＝３）は、言語識別装置の記憶容量や演算速度を考慮するときのベストモードであるが、Ｎ＝３に限定されないエヌグラムが使用しえることは明らかである。
【００６３】
以上、言語識別の具体的手法について述べたが、更に言語識別装置の実際の使用例について述べる。
（実施形態８）本使用例は、欧米系言語とアジア系言語とを２分識別し、その後で各国語識別を行う使用例である。
図１４は、欧米系言語とアジア系言語とを識別する使用例における処理のフロー図である。図１４において、オペレータは、キーボード６から欧米系言語とアジア系言語とを２分識別する指示を入力すると（S11）、ＣＰＵ１は、不図示のスキャナにより読み取られた欧米系言語又はアジア系言語の原稿画像について、まず、行内矩形の配置情報を３次元ベクトルで表現し、量子化し、シンボル系列に変換し、欧米系言語及びアジア系言語の訓練用データに基いて作成されたトリグラム表から当該シンボル系列の生起確率演算を行い、その生起傾向から欧米系言語か否かの識別を粗く行う（S12）。欧米系言語と判断される場合は（S12,YES）、欧米言語用ＯＣＲを使用し、原稿画像をテキストデータに変換し、変換したテキストデータについて、行内矩形の配置情報を３次元ベクトルで表現し、量子化し、シンボル系列に変換し、欧米系言語の訓練用データに基いて作成されたトリグラム表から当該シンボル系列の生起確率演算を行う。そして最大生起（出現）確率から特定の国の言語を識別する（S13）。なお、欧米言語用ＯＣＲは欧米系言語であればどの国の言語用のＯＣＲであってもよい。
【００６４】
欧米系言語と判断されない場合（S12,NO）、更に当該原稿画像について、行内矩形の配置情報を４次元ベクトルで表現し、量子化し、シンボル系列に変換し、例えば日本語及び中国語の訓練用データに基いて作成されたトリグラム表から当該シンボル系列の生起確率演算を行い、その最大生起（出現）確率から日本語か中国語かの識別を詳細に行う（S14）。
【００６５】
（実施形態９）本使用例は、欧米系言語と日本語と中国語とを３分識別する使用例である。
図１５は、欧米系言語と日本語と中国語とを識別する使用例における処理のフロー図である。図１５において、オペレータは、キーボード６から欧米系言語と日本語と中国語とを識別する指示を入力すると（S21）、ＣＰＵ１は、不図示のスキャナにより読み取られた欧米系言語又は日本語又は中国語の原稿画像について、欧米系言語と日本語と中国語のそれぞれについて行内矩形の配置情報を４次元ベクトルで表現し、量子化し、シンボル系列に変換し、欧米系言語及び日本語及び中国語の各訓練データに基いて作成されたトリグラム表から当該シンボル系列の生起確率演算を行い、まず欧米系言語か否かの判断を行う（S22）。欧米系言語と判断される場合は（S22,YES）、欧米言語用ＯＣＲを使用し原稿画像をテキストデータに変換し、テキストデータベースのトリグラムにより、英語、仏語、独語等の欧米系言語の識別を行う（S23）。欧米系言語と判断されない場合（S22,NO）、ステップ２１で識別した日本語又は中国語の識別結果を使用する。
【００６６】
（実施形態１０）本使用例は、識別したい言語の集合を指定して言語識別を行う使用例である。オペレータは識別したい言語の集合として、欧米系言語又は、アジア系言語又は、欧米系言語とアジア系言語を指定する。
図１６は、識別対象言語の集合を指定して言語識別を行う処理のフロー図である。図１６において、オペレータは、キーボード６から識別する言語の集合を入力すると、入力された言語の集合に基いてＣＰＵ１は、不図示のスキャナにより読み取られた原稿画像について、識別すべき言語の集合を指定する（S31）。そして指定された言語識別がアジア系言語のみの識別か否かを判断する（S32）。アジア系言語のみの識別の指定であると判断すると（S32,YES）、前述した行内矩形の配置特徴を４次元で表現し、トリグラムによって詳細に識別を行う（S33）。
【００６７】
アジア系言語のみの識別指定であると判断しないときは（S32,NO）、更に言語識別が欧米系言語のみの識別か否かを判断する（S34）。欧米系言語のみの識別の指定であると判断すると（S34,YES）、前述したように欧米言語用ＯＣＲを使用し原稿画像をテキストデータに変換し、テキストデータベースのトリグラムにより、英語、仏語、独語等の欧米系言語の識別を行う（S35）。
【００６８】
欧米系言語のみの識別の指定であると判断しないときは（S34,NO）、行内矩形の配置情報を３次元で表現し、矩形トリグラムにより、欧米系言語とアジア系言語との識別を粗く識別し（S36）、更に欧米系言語であるか否かを判断する（S37）。欧米系言語の場合は（S37,YES）、欧米言語用ＯＣＲを使用し原稿画像をテキストデータに変換し、テキストデータベースのトリグラムにより、英語、仏語、独語等の欧米系言語の識別を行う（S38）。欧米系言語でない場合は（S37,NO）、行内矩形の配置情報を４次元で表現し、矩形トリグラムによって日本語か中国語かを詳細に識別する（S39）。
【００６９】
図１７は、欧米系言語の識別に限定されたときの言語識別を行うフローを示す図である。図に従って説明すると、この識別を行うときは識別したい原稿画像について、欧米系言語用ＯＣＲを用いてテキストデータを作成する（S51）。このとき前述したように欧米系言語用ＯＣＲは識別対象に含まれる欧米系言語であるなら何語用のＯＣＲでも構わない。このテキストデータについてトリグラムにより、英語、仏語、独語等の欧米系言語の識別を行う（S52）。
【００７０】
図１８は、アジア系言語の識別に限定されたときの言語識別を行うフローを示す図である。図１８において、この識別を行うときは、識別したい原稿画像について行内矩形の配置情報を４次元ベクトルで表現し、矩形トリグラムによって日本語又は中国語を詳細に識別する（S61）。
【００７１】
実験によれば、欧亜２分識別の精度を向上させることにより、全体の識別精度（正識別率）が９６．９６％から９８．７６％に向上させることができた。このことから全自動言語識別も可能になる。
【００７２】
（実施形態１１）画像処理装置、文字認識装置等のコンピュータを、上述の実施形態で述べた言語識別を行う手段として機能させるために、その手順を汎用のプログラム言語によりコンピュータプログラムとして記述し、かつ、このプログラムをフレキシブルディスク、CD−ROM、DVD-ROM、MO等の任意の記録媒体に記録し、前記コンピュータに読み取らせることで本発明に係る言語識別処理を容易に実施することができる。本プログラムは、記録媒体に記録する以外に、インターネット、イントラネット等の任意のネットワークを介して、文字認識装置等のコンピュータに直接読み取らせることも可能である。
【産業上の利用可能性】
【００７３】
以上のように本発明に係る言語識別装置は、文書処理装置や画像形成装置等が備える言語データベースへの言語データの配信、保存及びＯＣＲの精度向上において有用であり、特に全自動言語識別装置に用いるのに適している。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施形態に係る言語識別装置の要部構成図である。
【図２】入力された原稿画像及びその処理過程画像の一部を示す図である。
【図３】文字行内における行内矩形の配置情報の説明図である。
【図４】行内矩形の配置情報を固定段階に量子化するための説明図である。
【図５】欧米系文字及びアジア系文字を行内矩形の配置情報に基いてシンボル系列に変換する例を示す図である。
【図６】文字行の傾きの影響を排除する処理の説明図である。
【図７】訓練用データに基いて求めたトリグラムモデルの例を示す。
【図８】本実施形態に係る言語識別処理の流れを模式的に示す図である。
【図９】本実施形態に係る言語識別処理のフロー図である。
【図１０】隣接矩形間距離に基いて行内矩形をシンボル系列変換する例を説明する図である
【図１１】矩形間距離によりシンボル化される文字行を示す図である。
【図１２】行内矩形の配置情報のデータ構造を示す図である。
【図１３】公知のエヌグラムモデルを数学的に定義する式を示す。
【図１４】欧米系言語とアジア系言語とを識別する使用例における処理のフロー図である。
【図１５】欧米系言語と日本語と中国語とを識別する使用例における処理のフロー図である。
【図１６】識別対象言語の集合を指定して言語識別を行う使用例における処理のフロー図である。
【図１７】欧米系言語の識別に限定されたときの言語識別を行うフローを示す図である。
【図１８】アジア系言語の識別に限定されたときの言語識別を行うフローを示す図である。
【符号の説明】
【００７５】
１・・・ＣＰＵ、２・・・ＲＯＭ、３・・・ハードディスク形のメモリ、４・・・ＲＡＭ、５・・・不揮発性メモリ６・・・キーボード、７・・・ドライバ、８・・・表示装置、９・・・通信装置。
【図１】
0004678712.tif 000002
【図２】
0004678712.tif 000003
【図３】
0004678712.tif 000004
【図４】
0004678712.tif 000005
【図５】
0004678712.tif 000006
【図６】
0004678712.tif 000007
【図７】
0004678712.tif 000008
【図８】
0004678712.tif 000009
【図９】
0004678712.tif 000010
【図１０】
0004678712.tif 000011
【図１１】
0004678712.tif 000012
【図１２】
0004678712.tif 000013
【図１３】
0004678712.tif 000014
【図１４】
0004678712.tif 000015
【図１５】
0004678712.tif 000016
【図１６】
0004678712.tif 000017
【図１７】
0004678712.tif 000018
【図１８】
0004678712.tif 000019