(57)【要約】【課題】  いかなる紙文書に対しても再利用可能な電子ファイルとして扱える画像処理システムはなかった。【解決手段】  原稿を読み取り走査する手段と、該手段で得られたイメージ情報を複数の属性を認識し分割する手段と、前記分割された属性の画像毎にアウトライン化する手段を有し、前記アウトライン化手段が、前記認識した属性に応じて適応的にアウトライン化処理する手段を有する事を特徴とする。【選択図】  図１２
2007129557.tif 000002
【特許請求の範囲】
【請求項１】
原稿を読み取り走査する手段と、該手段で得られたイメージ情報を複数の属性を認識し分割する手段と、前記分割された属性の画像毎にアウトライン化する手段を有し、前記アウトライン化手段が、前記認識した属性に応じて適応的にアウトライン化処理する手段を有する事を特徴とする画像処理システム。
【請求項２】
前記複数の属性は少なくとも、文字と表を含む事を特徴とする請求項１記載の画像処理システム。
【請求項３】
前記アウトライン化手段は画像の輪郭点群を直線で結ぶ事を特徴とする請求項１記載の画像処理システム。
【請求項４】
前記アウトライン化手段は画像の輪郭点群を関数近似する事を特徴とする請求項１記載の画像処理システム。
【請求項５】
前記アウトライン化手段は画像の輪郭点の中から所定のルールに従って任意の輪郭点を削除し、残った輪郭点をアウトライン化する手段を有する事を特徴とする請求項１記載の画像処理システム。
【請求項６】
前記適応的アウトライン化手段は画像の属性に応じて輪郭点を削除する程度を変える事を特徴とする請求項５記載の画像処理システム。
【請求項７】
前記適応的アウトライン化手段は画像の属性に応じて輪郭点を削除する程度を設定する手段を有する事を特徴とする請求項５記載の画像処理システム。
【請求項８】
前記属性は文字のサイズ、字体、色のいずれかを含む事を特徴とする請求項１記載の画像処理システム。
【請求項９】
前記属性は分離された画像の大きさを含む事を特徴とする請求項１記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明は、複写機などの画像処理装置で読み取った画像データを、Word等  所謂文書作成アプリケーションソフトで再利用可能なベクトルデータに変換する画像処理システムに関する。
【背景技術】
【０００２】
近年、環境問題が叫ばれる中、オフィスでのペーパーレス化が急速に進んでいる。即ち  従来からバインダー等で蓄積された紙文書をスキャナーで読み取りポータブルドキュメントフォーマット（以降PDFと記す）に変換して画像記憶装置にデータベースとして蓄積し、文書管理システムを構築出来る。一方、能が拡張されたMFPでは、予め画像を記録する際に、該画像ファイルが存在する画像記憶装置内のポインター情報を該文書の表紙或いは記載情報中に付加情報として記録して置き、再度、文書を複写等、利用する際に、このポインター情報からオリジナル電子ファイルの格納場所を検出し、該電子ファイルの元情報を直接用いる事で、紙文書全体の保存を削減する。
【０００３】
従来技術として特開平05-046144では文字をアウトライン化する際の輪郭点の削除法の開示が有り、特開2001-246795では文字のサイズ、字体に応じて輪郭点の数を予め設定してアウトライン化する技術を開示しているが、文字以外、スキャナーで読み取った画像全体をアウトライン化する際の課題は開示されていない。
【特許文献１】特開平５−４６１４４号公報
【特許文献２】特開２００１−２４６７９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、前者は紙文書がコンパクトな情報量のPDFファイルとして文書の保存が可能であるが、ファイル自体がイメージ情報であるので、該文書の一部のオブジェクトを再利用する事は出来ない。従って再利用する場合は、図、表等は新たにアプリケーションソフトを用いて再度  作成しなければ成らない。又、後者は自部門で作成した電子ファイルは直接元ファイルをアクセスできる為、容易に再利用出来るが、外部から入手した文書、あるいはオリジナルファイルの所在が不明な古い紙文書には対応が出来ない。
【０００５】
従って、本発明は、上記、来例の欠点を解決して、即ち、いかなる紙文書に対しても再利用可能な電子ファイルとして扱える画像処理システムを提供する事を目的とする。
【０００６】
特に直接スキャナーで読み取ったイメージデータをアウトライン処理にてベクトル化する際に画像の属性に応じてより少ないデータ量で実質的に原画像に忠実なベクトル画像データに変換する画像処理装置に関する。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、
請求項1記載の発明は、原稿を読み取り走査する手段と、該手段で得られたイメージ情報を複数の属性を認識して該属性毎に画像を分割する手段と、前記分割された属性の画像をアウトライン化する手段を有し、前記アウトライン化手段が、前記認識した属性に応じて適応的にアウトライン化処理する手段を有する事によって属性の特徴を生かして原稿に忠実なベクトル画像データにより小さなデータ量で変換する。
【０００８】
また、請求項2記載の発明は、請求項1記載の画像処理システムにおいて、前記複数の属性は少なく共文字と表を適応的にアウトライン化する。
【０００９】
又請求項3によれば、前記アウトライン化手段は画像の輪郭点群を直線で結ぶ事により表や線画をより原画に忠実にアウトライン化する。また請求項4によれば、前記アウトライン化手段は画像の輪郭点群を関数近似する事を特徴とする事で所謂グラフィックス画像をより原画に忠実にアウトライン化する。また請求項5によれば、前記アウトライン化手段は画像の輪郭点の中から所定のルールに従って任意の輪郭点を削除する手段を有する事でアウトライン化後のデータを削減する。また請求項6によれば、前記適応的アウトライン化手段は画像の属性に応じて輪郭点を削除する程度を変える事によって属性毎に原画に忠実なアウトライン化データにより小さなデータ量で変換する。また請求項7によれば、前記適応的アウトライン化手段は画像の属性に応じて輪郭点を削除する程度を設定する手段を有する事によりユーザ毎により的確に属性毎に原画に忠実なアウトライン化データにより小さなデータ量で変換する。また請求項8によれば、前記属性は文字のサイズ、字体、色のいずれかを含む事によって夫々の文字に対して実質的な画質を維持して効率的なアウトラインデータに変換する。また請求項9によれば、前記属性は分離された画像の大きさを含む事によって図画画像を実質的な画質を維持して効率の良いアウトラインデータに変換する。
【発明の効果】
【００１０】
請求項1記載の発明は、原稿を読み取り走査する手段と、該手段で得られたイメージ情報を複数の属性を認識して該属性毎に画像を分割する手段と、前記分割された属性の画像をアウトライン化する手段を有し、前記アウトライン化手段が、前記認識した属性に応じて適応的にアウトライン化処理する手段を有する事によって属性の特徴を生かして原稿に忠実なベクトル画像データにより小さなデータ量で変換出来る。
【００１１】
また、請求項2記載の発明は、請求項1記載の画像処理システムにおいて、前記複数の属性は少なく共文字と表を含む事によって文字を原画像に忠実にアウトライン化出来る。
【００１２】
又請求項3によれば、前記アウトライン化手段は画像の輪郭点群を直線で結ぶ事を特徴とする事で直線画像をより原画に忠実にアウトライン化出来る。また請求項4によれば、前記アウトライン化手段は画像の輪郭点群を関数近似する事を特徴とする事で所謂グラフィックス画像をより原画に忠実にアウトライン化出来る。また請求項5によれば、前記アウトライン化手段は画像の輪郭点の中から所定のルールに従って任意の輪郭点を削除する手段を有する事でアウトライン化後のデータを削減出来る。また請求項6によれば、前記適応的アウトライン化手段は画像の属性に応じて輪郭点を削除する程度を変える事によって属性毎に原画に忠実なアウトライン化データにより小さなデータ量で変換出来る。また請求項7によれば、前記適応的アウトライン化手段は画像の属性に応じて輪郭点を削除する程度を設定する手段を有する事によりより的確に属性毎に原画に忠実なアウトライン化データにより小さなデータ量で変換出来る。また請求項8によれば、前記属性は文字のサイズ、字体、色のいずれかを含む事によって夫々の文字に対して実質的な画質を維持して効率的なアウトラインデータに変換出来る。また請求項9によれば、前記属性は分離された画像の大きさを含む事によって図画画像を実質的な画質を維持して効率の良いアウトラインデータに変換出来る。
【発明を実施するための最良の形態】
【００１３】
（実施例１）
本願発明の実施の形態について説明する。図10は本願発明にかかる画像処理システム構成例を示すブロック図である。この画像処理システムは、オフィス10とオフィース20とをインターネット104で接続された環境で実現する。オフィス10内に構築されたLAN107には、MFP100、MFP100を制御するマネージメントPC101、クライアントPC（外部記憶手段）102  文書管理サーバ106、そのデータベース105  およびプロキシサーバ103が接続されている。LAN107及びオフィース20内のLAN108はプロキシサーバ13を介してインターネット104に接続される。MFP100は本発明において紙文書の画像読み取り部と読み取った画像信号に対する画像処理の1部を担当し、画像信号はLAN109を用いてマネージメントPC101に入力する。マネージメントPCは通常のPCであり、内部に画像記憶手段、画像処理手段、表示手段、入力手段を有するが、その一部をMFP100に一体化して構成されている。
【００１４】
図11はMFP100の構成図である。図11においてオートドキュメントフィーダー（以降ADFと記す）を含む画像読み取り部110は束状の或いは1枚の原稿画像を図示しない光源で照射し、原稿反射像をレンズで固体撮像素子上に結像し、固体撮像素子からラスター状の画像読み取り信号を600DPIの密度のイメージ情報として得る。通常の複写機能はこの画像信号をデータ処理部115で記録信号へ画像処理し、複数毎複写の場合は記録装置111に一旦1ページ分の記録データを記憶保持した後、記録装置112に順次出力して紙上に画像を形成する。
【００１５】
一方クライアントPC102から出力されるプリントデータはLAN107からネットワークIF114を経てデータ処理装置115で記録可能なラスターデータに変換した後、前記記録装置で紙上に記録画像として形成される。
【００１６】
MFP100への操作者の指示はMFPに装備されたキー操作部とマネージメントPCに入力されるキーボード、及び、マウスからなる入力装置113から行われ、これら一連の動作はデータ処理装置115内の図示しない制御部で制御される。
【００１７】
一方  操作入力の状態表示及び処理中の画像データの表示は表示装置116で行われる。尚記憶装置111はマネージメントPCからも制御され、これらMFPとマネージメントPCとのデータの授受及び制御はネットワークIF117および直結したLAN109を用いて行われる。
【００１８】
（処理概要）
次に本発明による画像処理全体の概要を図12を用いて説明する。
【００１９】
図12においてまず、MFP100の画像読み取り部110を動作させ1枚の原稿をラスター状に走査し、イメージ情報入力処理120で600DPI-8ビットの画像信号を得る。該画像信号をデータ処理部115で前処理を施し記憶装置111に1ページ分の画像データとして保存する。マネージメントPC101のCPUは該格納された画像信号から先ず、文字/線画部分とハーフトーンの画像部分とに領域を分離し、文字部は更に段落で塊として纏まっているブロック毎に、  或いは、線で構成された表、図形に分離し各々セグメント化する。一方ハーフトーンで表現される画像部分は、矩形に分離されたブロックの画像部分、背景部等、所謂、ブロック毎に独立したオブジェクトに分割する（ステップ121）。
【００２０】
このとき原稿画像中に付加情報として記録された2次元バーコード、或いはURLに該当するオブジェクトを検出しURLはOCRで文字認識し、或いは2次元バーコードなら該マークを解読して（ステップ122）該原稿のオリジナル電子ファイルが格納されている記憶装置内のポインター情報を検出する（ステップ123）。尚、ポインター情報を付加する手段は他に文字と文字の間隔に情報を埋め込む方法、ハーフトーンの画像に埋め込む方法等直接可視化されない所謂電子透かしによる方法も有る。
【００２１】
ポインター情報が検出された場合、ステップ125に分岐し、ポインターで示されたアドレスから元の電子ファイルを検索する。電子ファイルは図10においてクライアントPC内のハードディスク内、或いはオフィース10或いは20のLANに接続された文書管理サーバ105内のデータベース105内、或いはMFP100自体が有する記憶装置111のいずれかに格納されており、ステップ123で得られたアドレス情報に従ってこれらの記憶装置内を検索する。  ステップ125で電子ファイルが見つからなかった場合、見つかったがPDFあるいはtiffに代表される所謂イメージファイルであった場合、或いはポインター情報自体が存在しなかった場合はステップ126に分岐する。
【００２２】
ステップ126は所謂文書検索処理ルーチンである。
【００２３】
まずステップ122で各文字ブロックに対して行ったOCRの結果から単語を抽出して全文検索、或いは各オブジェクトの配列と各オブジェクトの属性から所謂レイアウト検索を行う。検索の結果  類似度の高い電子ファイルが見つかった場合、サムネイル等を表示（ステップ127）し、複数の中から操作者の選択が必要なら操作者の入力操作よってファイルの特定を行う。尚  候補が1ファイルの場合、自動的にステップ128からステップ134に分岐し  格納アドレスを通知する。ステップ126の検索処理で電子ファイルが見つからなかった場合、或いは、見つかったがPDFあるいはtiffに代表される所謂イメージファイルであった場合、ステップ129に分岐する。
【００２４】
ステップ129はイメージデータからベクトルデータへの変換処理部であり、オリジナル電子ファイルに可視的に忠実な電子ファイルに変換する。先ず、ステップ122でOCRされた文字ブロックに対しては、各文字をアウトライン化しアウトラインフォントデータに変換する。一方線で構成される表、図画ブロックに対してはアウトライン化する。本発明の特徴はこれら異なる属性の画像を各属性毎により少ないデータ量でより原画像に忠実な画像として適応的にアウトライン化する事にある。画像ブロックに対してはイメージデータとして個別のJPEGファイルとして処理する。これらのベクトル化処理は各オブジェクト毎に行い、更に各オブジェクトのレイアウト情報を保存して例えば、rtfに変換（ステップ130）して電子ファイルとして記憶装置111に格納(ステップ131)する。
【００２５】
今ベクトル化した原稿画像は以降同様の処理を行う際に直接電子ファイルとして検索出来るように、先ずステップ132において検索の為のインデックス情報を生成して検索用インデックスファイルに追加する。更に、ステップ136で今、操作者が行いたい処理が記録であると判断されれば、ステップ133に分岐し、ポインター情報をイメージデータとしてファイルに付加する。検索処理で電子ファイルが特定できた場合も同様に以降からは直接電子ファイルを特定する為にステップ128からステップ134に分岐し、格納アドレスを操作者に通知すると共に、今紙に記録する場合は、同様にポインター情報を電子ファイルに付加する。尚、ステップ125でポインター情報から電子ファイルが特定できた場合、検索処理で電子ファイルが特定出来た場合、ベクトル化により電子ファイルに変換した場合、ステップ134において、該電子ファイルの格納アドレスを操作者に通知する。
【００２６】
尚  以上本発明によって得られた電子ファイル自体を用いて、例えば文書の加工、蓄積、伝送、記録をステップ135で行う事が可能になる。これらの処理はイメージデータを用いる場合に比べて、情報量が削減され、蓄積効率が高まり、伝送時間が短縮され、又記録表示する際には高品位なデータとして非常に優位となる。
【００２７】
以下  各処理ブロックに対して詳細に説明する。
【００２８】
先ずステップ121で示すブロックセレクション処理について説明する。
【００２９】
（ブロックセレクション処理）
ブロックセレクション処理とは、図20の右に示すステップ120で読み取った一頁のイメージデータを左に示す様に、各オブジェクト毎の塊として認識し、該ブロック各々を文字/図画/写真/線/表等の属性に判定し、異なる属性を持つ領域をブロックに分割する処理である。
【００３０】
ブロックセレクション処理の実施例を以下に説明する。
【００３１】
先ず、入力画像を白黒に二値化し、輪郭線追跡をおこなって黒画素輪郭で囲まれる画素の塊を抽出する。面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡をおこない白画素の塊を抽出、さらに一定面積以上の白画素の塊の内部からは再帰的に黒画素の塊を抽出する。
【００３２】
このようにして得られた黒画素の塊を、大きさおよび形状で分類し、異なる属性を持つ領域へ分類していく。たとえば、縦横比が1に近く、大きさが一定の範囲のものを文字相当の画素塊とし、さらに近接する文字が整列良くグループ化可能な部分を文字領域、扁平な画素塊を線領域、一定大きさ以上でかつ四角系の白画素塊を整列よく内包する黒画素塊の占める範囲を表領域、不定形の画素塊が散在している領域を写真領域、それ以外の任意形状の画素塊を図画領域、などとする。
【００３３】
ブロックセレクション処理で得られた各ブロックに対するブロック情報を図21に示す。
【００３４】
これらのブロック毎の情報は以降に説明するベクトル化、或いは検索の為の情報として用いる。
【００３５】
（ポインター情報の検出）
次に、ステップ122で示すファイルの格納位置をイメージ情報から抽出する為のOCR/OMR処理について説明する。
【００３６】
図１は原稿画像中に付加された2次元バーコード(QRコードシンボル)を復号して、データ文字列を出力する過程を示すフローチャートである。2次元バーコードの付加された原稿310の一例を図２に示す。
【００３７】
まず、データ処理装置115内のページメモリに格納された原稿310を表すイメージ画像をCPU(不図示)で走査して、先に説明したブロックセレクション処理の結果から所定の2次元バーコードシンボル311の位置を検出する。QRコードの位置検出パターンは、シンボルの4隅のうちの3済みに配置される同一の位置検出要素パターンから構成される(ステップ300)。
【００３８】
次に、位置検出パターンに隣接する形式情報を復元し、シンボルに適用されている誤り訂正レベルおよびマスクパターンを得る(ステップ301)。
【００３９】
シンボルの型番を決定した(ステップ302)後、形式情報で得られたマスクパターンを使って符号化領域ビットパターンをXOR演算することによってマスク処理を解除する(ステップ303)。
【００４０】
尚、モデルに対応する配置規則に従い、シンボルキャラクタを読取り、メッセージのデータ及び誤り訂正コード語を復元する(ステップ304)。
【００４１】
復元されたコード上に、誤りがあるかどうかの検出を行い(ステップ305)、誤りが検出された場合、ステップ306に分岐し、これを訂正する。
【００４２】
誤り訂正されたデータより、モード指示子および文字数指示子に基づいて、データコード語をセグメントに分割する(ステップ307)。
【００４３】
最後に、仕様モードに基づいてデータ文字を復号し、結果を出力する(ステップ308)。
【００４４】
尚、2次元バーコード内に組み込まれたデータは、対応するファイルのアドレス情報を表しており、例えばファイルサーバー名およびファイル名からなるパス情報で構成される。或いは、対応するファイルへのURLで構成される。
【００４５】
本実施例ではポインター情報が2次元バーコードを用いて付与された原稿310について説明したが、直接文字列でポインター情報が記録される場合は所定のルールに従った文字列のブロックを先のブロックセレクション処理で検出し、該、ポインター情報を示す文字列の各文字を文字認識する事で、直接、元ファイルのアドレス情報を得る事が可能である。
【００４６】
又、或いは、図２の文書310の文字ブロック312、或いは313の文字列に対して隣接する文字と文字の間隔等に視認し難い程度の変調を加え、該文字間隔に情報を埋め込むことでもポインター情報を付与できる。該、所謂透かし情報は、後述する文字認識処理を行う際に各文字の間隔を検出すれば、ポインター情報が得られる。又、自然画314の中に電子透かしとしてポインター情報を付加する事も可能である。
【００４７】
（ポインター情報によるファイル検索）
次に、図12で先に説明したステップ125およびステップ128で示す、ポインター情報からの電子ファイルの検索について図３のフローチャートを使用して説明する。
【００４８】
まず、ポインタ情報に含まれるアドレスに基づいて、ファイル・サーバーを特定する。(ステップ400)
ここでファイルサーバとは、クライアントＰＣ102や、データベース105を内蔵する文書管理サーバ106や、記憶装置111を内蔵するMFP100自身を指す。
【００４９】
ここでアドレスとは、URL や、サーバ名とファイル名からなるパス情報である。
【００５０】
ファイルサーバが特定できたら、ファイルサーバに対してアドレスを転送する。(ステップ401)  ファイル・サーバーは、アドレスを受信すると、該当するファイルを検索する。(ステップ402)  ファイルが存在しない場合(ステップ403-N)には、MFPに対してその旨通知する。
【００５１】
ファイルが存在した場合(ステップ403-Y)には、図12で説明した様に、ファイルのアドレスを通知（ステップ134）すると共に、ユーザの希望する処理が画像ファイルデータの取得であれば、MFPに対してファイルを転送する。(ステップ408)
（ファイル検索処理）
次に、図12のステップ126で示すファイル検索処理の詳細について図21、図４を使用して説明を行う。
【００５２】
ステップ126の処理は、前述したように、ステップ124で入力原稿（入力ファイル）にポインタ情報が存在しなかった場合、または、ポインタ情報は在るが電子ファイルが見つからなかった場合、或いは電子ファイルがイメージファイルであった場合に行われる。
【００５３】
ここでは、ステップ122の結果、抽出された各ブロック及び入力ファイルが、図21に示す情報（ブロック情報、入力ファイル情報）を備えるものとする。情報内容として、属性、座標位置、幅と高さのサイズ、OCR情報有無を例としてあげる。属性は、文字、線、写真、絵、表その他に分類する。また簡単に説明を行うため、ブロックは座標Xの小さい順、即ち（例、X1 < X2 < X3 < X4< X5< X6） にブロック1、ブロック2、ブロック3、ブロック4、ブロック5、ブロック6と名前をつけている。ブロック総数は、入力ファイル中の全ブロック数であり、図４の場合は、ブロック総数は6である。以下、これらの情報を使用して、データベース内から、入力ファイルに類似したファイルのレイアウト検索を行うフローチャートを図４に示す。ここで、データベースファイルは、図21と同様の情報を備えることを前提とする。
【００５４】
フローチャートの流れは、入力ファイルとデータベース中のファイルを順次比較するものである。まず、ステップ510にて、後述する類似率などの初期化を行う。次に、ステップ511にてブロック総数の比較を行い、ここで、真の場合、さらにファイル内のブロックの情報を順次比較する。ブロックの情報比較では、ステップ513,515,518にて、属性類似率、サイズ類似率、OCR類似率をそれぞれ算出し、ステップ522にてそれらをもとに総合類似率を算出する。各類似率の算出方法については、公知の技術が用いれるので説明を省略する。ステップ523にて総合類似率が、予め設定された閾値Thより高ければステップ524にてそのファイルを類似候補としてあげる。但し、図中のN、W、Hは、入力ファイルのブロック総数、各ブロック幅、各ブロック高さとし、ΔN、ΔW、ΔHは、入力ファイルのブロック情報を基準として誤差を考慮したものである。n、w、hは、データベースファイルのブロック総数、各ブロック幅、各ブロック高さとする。また、不図示ではあるが、ステップ514にてサイズ比較時に、位置情報XYの比較などを行ってもよい。
【００５５】
以上、検索の結果  類似度が閾値Thより高く、候補として保存されたデータベースファイル（ステップ524）をサムネイル等で表示（ステップ127）する。複数の中から操作者の選択が必要なら操作者の入力操作よってファイルの特定を行う。
【００５６】
（ベクトル化処理）
ファイルサーバーに元ファイルが存在しない場合は、図20に示すイメージデータを各ブロック毎にベクトル化する。次に、ステップ129で示されるベクトル化について詳説する。まず  文字ブロックに対しては各文字に対して文字認識処理を行う。
【００５７】
『文字認識』
文字認識部では、文字単位で切り出された画像に対し、パターンマッチの一手法を用いて認識を行い、対応する文字コードを得る。この認識処理は、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルと、あらかじめ字種毎に求められている辞書特徴ベクトルと比較し、最も距離の近い字種を認識結果とする処理である。特徴ベクトルの抽出には種々の公知手法があり、たとえば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴とする方法がある。
【００５８】
ブロックセレクション（ステップ121）で抽出された文字領域に対して文字認識を行う場合は、まず該当領域に対し横書き、縦書きの判定をおこない、各々対応する方向に行を切り出し、その後文字を切り出して文字画像を得る。横書き、縦書きの判定は、該当領域内で画素値に対する水平/垂直の射影を取り、水平射影の分散が大きい場合は横書き領域、垂直射影の分散が大きい場合は縦書き領域と判断すればよい。文字列および文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、さらに切り出された行に対する垂直方向の射影から、文字を切り出すことでおこなう。縦書きの文字領域に対しては、水平と垂直を逆にすればよい。尚、この時文字のサイズが検出出来る。
【００５９】
『アウトライン化処理』
次に本発明が特徴とするオブジェクト毎に適応的に施されるアウトライン処理について詳説する。
【００６０】
ブロックセレクション処理（ステップ121）で、文字あるいは線、表領域とされた領域を対象に、中で抽出された画素塊の輪郭をベクトルデータに変換する。具体的には、輪郭をなす画素の点列を角と看倣される点で区切って、各区間を部分的な直線あるいは曲線で近似する。角とは曲率が極大となる点であり、曲率が極大となる点は、図５に図示するように、任意点Piに対し左右k個の離れた点Pi-k,Pi+kの間に弦を引いたとき、この弦とPiの距離が極大となる点として求められる。さらに、Pi-k,Pi+k間の弦の長さ/弧の長さをRとし、Rの値が閾値以下である点を角とみなすことができる。角によって分割された後の各区間は、直線は点列に対する最小二乗法など、曲線は3次スプライン関数などを用いてベクトル化することができる。
【００６１】
また、対象が内輪郭を持つ場合、ブロックセレクションで抽出した白画素輪郭の点列を用いて、同様に部分的直線あるいは曲線で近似する。
【００６２】
以上のように、輪郭の区分線近似を用いれば、任意形状の文字や線画、表、図形のアウトラインをベクトル化することができる。元原稿がカラーの場合は、カラー画像から図形の色を抽出してベクトルデータとともに記録する。
【００６３】
さらに、図６に示す様に、ある区間で外輪郭と、内輪郭あるいは別の外輪郭が近接している場合、2つの輪郭線をひとまとめにし、太さを持った線として表現することができる。具体的には、ある輪郭の各点Piから別輪郭上で最短距離となる点Qiまで線を引き、各距離PQiが平均的に一定長以下の場合、注目区間はPQi中点を点列として直線あるいは曲線で近似し、その太さはPQiの平均値とする。線や線の集合体である表罫線は、前記のような太さを持つ線の集合として効率よくベクトル表現することができる。
【００６４】
次に、以上述べたアウトライン化処理を文字、線画、表、図形等に対して適応的に実施する例を図７を用いて説明する。図７はアウトライン化する際に削除する輪郭上の点を説明する図であり、ある所定のルールに従って削減点を多くとれば、得られるアウトラインのデータ量は小さく、表現されるアウトラインはその輪郭線からの誤差が大きくなる。本実施例ではこの削減処理を属性に応じて適応的に適用する事で、各属性の画像ブロックのベクトル化後のデータ量と画質を両立出来る。
【００６５】
まず  輪郭点の削減ルールについて図７を用いて説明する。ここで述べるベクトルデータは、文字などの画像の輪郭上で削除して残った点を結んで得られるアウトライン文字のベクトルデータである。図７（ａ）における補正前の輪郭点データPiから連続する４点Pi,Pi+1,Pi+2,Pi+3に着目し、１点目Piと２点目Pi+1の距離Ｌ１および２点目Pi+1と３点目Pi+2の距離Ｌ２がともに指定した距離Ｌcよりも小さいとき、削減条件１とし、２点目Pi+1と３点目Pi+2とを結ぶ直線Aを求め、この直線をもとに１点目Piと４点目Pi+3とが反対の領域にあるときおよび１点目Piが直線上にあるときに２点目を補正対象とするものである。これを削減条件2とする。
【００６６】
但し、削減条件3として、補正対象の２点目Pi+1について、１点目Piと２点目Pi+1と３点目Pi+2とを結んだ交差角度θが指定角度θc範囲内のときにキーポイントと設定してこれを削除対象から外す。
【００６７】
ここで点Pi+1を削除する条件を示す定数Lcは大きくすれば、削除の可能性は高くなり、より対象画像を長い直線群でアウトライン化出来、情報量は小さくなるが、細かく変化する輪郭部はアウトライン化後に消滅し易くなる。
【００６８】
同様に指定交差角度θcは小さくとればとるほど、削除の可能性が高くなり、より滑らかにアウトライン化出来  情報量は小さくなるが、小さいサイズの文字等では文字の特徴を欠落する事になる。
【００６９】
又、これら削除条件を評価し、順次輪郭点を削除した結果に対し、再度、残された輪郭点に対して上述の削除処理を繰り返し行う事で、より輪郭点を削除出来る。図８は条件2のみを用いて繰り返し輪郭点を削除する様子を示した物で、図中（A）で示す17個の輪郭点P0-P16の内、P1,P3、P5,P7,P9,P11,P13,P15で示される8点は1回の削除処理で削除され図（B）となる。
【００７０】
図(B)で残った点に対し再度P0から順次削除処理を行えば、輪郭点P2,P6,P10,P14が削除でき図（C）となる。同様に再度図（C）で示す残された輪郭点に削除処理を行えば輪郭点P4が削除でき同図（D）となる。
【００７１】
つまり、上述の削除処理を繰り返せば繰り返す程、輪郭点を削除出来、より滑らかなアウトライン処理が出来、情報量は小さくなる。
【００７２】
以上  述べたように、本発明はこれら輪郭点の削除処理を属性に依ってブロック毎に分割した画像ブロックの画像をアウトライン化する際にそのパラメータを適応的に設定して輪郭点を削除する事を特徴とする。
【００７３】
本実施例で用いる削除処理では、そのパラメータは隣接2点を結ぶ直線の長さL1,L2を規定する定数Lcとその2辺が作る頂角を規定する角度θc、及び削除処理回数Nである。
【００７４】
図９に本実施例で分離した文字領域、図画領域、表領域に対して行う輪郭点の削除処理のパラメータを示す。一般的に、これら3領域の空間周波数は文字領域が最も高く表領域が最も低い、すなわち、文字領域に含まれる文字の輪郭をアウトライン化する際はより小さな変化も削除することなく忠実にアウトライン化する必要があるが、表領域はそれに対して殆どが長い直線で構成されている為、よりその輪郭点を削除して直線化する事で原画に忠実でかつデータ量を削減出来る。尚、画領域は略その中間として扱う。従って各領域毎に設定したパラメータは文字領域が最も輪郭点の削除数が少なく、逆に表領域が最も削除数が多くなるように設定されている。
【００７５】
次に図１３を用いて本実施例の適応的輪郭点削除の処理ルーチンを詳説する。
【００７６】
まず  処理すべきブロックの属性を入力し（ステップ560）、該ブロックの属性に従い図９の表から予め設定されたパラメータLc,θc,及びNの値を設定する。（ステップ561）
ブロック内の輪郭点の先頭点P0から連続する3点を読み込み(ステップ562)  設定されたパラメータを用いて先に説明した3つの削除条件を評価し（ステップ563）、削除点と判断されれば、ステップ564で該輪郭点を削除し、評価する輪郭点を次の位置に移動させ（ステップ565）ブロック内の輪郭点全てに対して削除処理が終わるまで（ステップ566）ステップ562からステップ566までを繰り返す。一連の処理が1回終わるたびに該属性で設定された回数Nの終了を確認し、設定回数の処理が繰り返されて該ブロックの画像に対する輪郭点の削除処理が終了する。
【００７７】
尚  削除されて残った輪郭点に対するアウトライン処理は直線ベクトルで行っても良いし、ベジェ関数等を用いて関数近似を行っても良い。
【００７８】
又  本実施例ではN回の削除処理を行う際に同じパラメータLc及びθcを用いているが、回数毎に異なる値を使う事でより大きな繰り返し処理による輪郭点の削除効果が得られる。
【００７９】
（図形認識）
上述したように任意形状の図形や文字をアウトライン化した後、これらアウトライン化された区分線を図形や文字オブジェクト毎にグループ化する処理について説明する。
【００８０】
図１７は、ベクトルデータを図形オブジェクト毎にグループ化するまでのフローチャートを示している。まず、各ベクトルデータの始点、終点を算出する（700）。次に各ベクトルの始点、終点情報を用いて、図形や文字要素を検出する（701）。各要素の検出とは、区分線が構成している閉図形を検出することである。検出に際しては、閉形状を構成する各ベクトルはその両端にそれぞれ連結するベクトルを有しているという原理を応用し、検出を行う。次に各要素内に存在する他の要素、もしくは区分線をグループ化し、一つの図形や文字オブジェクトとする（702）。また、各要素内に他の要素、区分線が存在しない場合は図各要素を図形や文字オブジェクトとする。
【００８１】
図１８は、各要素を検出するフローチャートを示している。先ず、ベクトルデータより両端に連結していない不要なベクトルを除去し、閉構成ベクトルを抽出する（710）。次に閉構成ベクトルの中から該ベクトルの始点を開始点とし、時計回りに順にベクトルを追っていく。開始点に戻るまで行い、通過したベクトルを全て一つの要素を構成する閉要素としてグループ化する（711）。また、閉要素内部にある閉要素構成ベクトルも全てグループ化する。さらにまだグループ化されていないベクトルの始点を開始点とし、同様の処理を繰り返す。最後に、710で除去された不要ベクトルのうち、711で閉要素としてグループ化されたベクトルに接合しているものを検出し一つの要素としてグループ化する（712）。
【００８２】
以上によって図形や文字ブロックを個別に再利用可能な個別の図形や文字オブジェクトとして扱う事が可能になる。
【００８３】
尚、字ブロックの各文字に対してアウトライン化し1文字要素として結合されたベクトルデータは先に説明した文字認識でえられた文字コードに対応する、謂アウトラインフォントデータとして扱う事が出来る。すなわち、アウトラインフォントデータはOCRで得られる文字コードに加えてその文字の字体情報を含んでいる為、原画に可視的に忠実で編集可能な文字ベクトルデータと言える。
【００８４】
（アプリデータへの変換処理）
ところで、一頁分のイメージデータをブロックセレクション処理(121)し、ベクトル化処理(129)した結果は図１９に示す様な中間データ形式のファイルとして変換されているが、このようなデータ形式はドキュメント・アナリシス・アウトプット・フォーマット（DAOF）と呼ばれる。
【００８５】
図１９はDAOFのデータ構造を示す図である。
【００８６】
図１９において、791はHeaderであり、処理対象の文書画像データに関する情報が保持される。レイアウト記述データ部792では、文書画像データ中のTEXT（文字）、TITLE（タイトル）、 CAPTION（キャプション）、LINEART（線画）、ＥPICTURE（自然画）、FRAME（枠）、TABLE（表）等の属性毎に認識された各ブロックの属性情報とその矩形アドレス情報を保持する。文字認識記述データ部793では、TEXT、TITLE、CAPTION等のTEXTブロックを文字認識して得られる文字認識結果を保持する。表記述データ部794では、TABLEブロックの構造の詳細を格納する。画像記述データ部795は、PICTUREやLINEART等のブロックのイメージデータを文書画像データから切り出して保持する。
【００８７】
このようなDAOFは、中間データとしてのみならず、それ自体がファイル化されて保存される場合もあるが、このファイルの状態では、所謂一般の文書作成アプリケーションで個々のオブジェクトを再利用する事は出来ない。そこで、次に、のDAOFからアプリデータに変換する処理130について詳説する。
【００８８】
図２２は、全体の概略フローである。
【００８９】
8000は、DAOFデータの入力を行う。
【００９０】
8002は、アプリデータの元となる文書構造ツリー生成を行う。
【００９１】
8004は、文書構造ツリーを元に、DAOF内の実データを流し込み、実際のアプリデータを生成する。
【００９２】
図２３は、8002文書構造ツリー生成部の詳細フロー、図２４は、文書構造ツリーの説明図である。全体制御の基本ルールとして、処理の流れはミクロブロック（単一ブロック）からマクロブロック（ブロックの集合体）へ移行する。
【００９３】
以後ブロックとは、ミクロブロック、及びマクロブロック全体を指す。
8100は、ブロック単位で縦方向の関連性を元に再グループ化する。スタート直後はミクロブロック単位での判定となる。
【００９４】
ここで、関連性とは、距離が近い、ブロック幅（横方向の場合は高さ）がほぼ同一であることなどで定義することができる。
【００９５】
また、距離、幅、高さなどの情報はGAOFを参照し、抽出する。
【００９６】
図２４(a)は実際のページ構成、(b)はその文書構造ツリーである。8100の結果、T3,T4,T5が一つのグループV1、T6,T7が一つのグループV2が同じ階層のグループとしてまず生成される。
【００９７】
8102は、縦方向のセパレータの有無をチェックする。セパレータは、例えば物理的にはDAOF中でライン属性を持つオブジェクトである。また論理的な意味としては、アプリ中で明示的にブロックを分割する要素である。ここでセパレータを検出した場合は、同じ階層で再分割する。
【００９８】
8104は、分割がこれ以上存在し得ないか否かをグループ長を利用して判定する。
【００９９】
ここで、縦方向のグループ長がページ高さとなっている場合は、文書構造ツリー生成は終了する。
【０１００】
図２４の場合は、セパレータもなく、グループ高さはページ高さではないので、8106に進む。
【０１０１】
8106は、ブロック単位で横方向の関連性を元に再グループ化する。ここもスタート直後の第一回目はミクロブロック単位で判定を行うことになる。
【０１０２】
関連性、及びその判定情報の定義は、縦方向の場合と同じである。
【０１０３】
図２４の場合は、T1,T2でH1、V1,V2でH2、がV1,V2の1つ上の同じ階層のグループとして生成される。
【０１０４】
8108は、横方向セパレータの有無をチェックする。
【０１０５】
図２４では、Ｓ1があるので、これをツリーに登録し、H1,S1,H2という階層が生成される。
【０１０６】
8110は、分割がこれ以上存在し得ないか否かをグループ長を利用して判定する。
【０１０７】
ここで、横方向のグループ長がページ幅となっている場合は、文書構造ツリー生成は終了する。
【０１０８】
そうでない場合は、8102に戻り、再びもう一段上の階層で、縦方向の関連性チェックから繰り返す。
【０１０９】
図２４の場合は、分割幅がページ幅になっているので、ここで終了し、最後にページ全体を表す最上位階層のＶ0が文書構造ツリーに付加される。
【０１１０】
文書構造ツリーが完成した後、その情報を元に8006においてアプリデータの生成を行う。
【０１１１】
図２４の場合は、具体的には、以下のようになる。
【０１１２】
すなわち、H1は横方向に2つのブロックT1とT2があるので、2カラムとし、T1の内部情報（DAOFを参照、文字認識結果の文章、画像など）を出力後、カラムを変え、T2の内部情報出力、その後S1を出力となる。
【０１１３】
H2は横方向に2つのブロックV1とV2があるので、2カラムとして出力、V1はT3,T4,T5の順にその内部情報を出力、その後カラムを変え、V2のT6,T7の内部情報を出力する。
【０１１４】
以上によりアプリデータへの変換処理が行える。
【０１１５】
（ポインター情報の付加）
次に、ステップ133で示す、ポインター情報付加処理について説明する。
【０１１６】
今  処理すべき文書が検索処理で特定された場合、あるいはベクトル化によって元ファイルが再生できた場合において、該文書を記録処理する場合においては、紙への記録の際にポインター情報を付与する事で、この文書を用いて再度各種処理を行う場合に簡単に元ファイルデータを取得できる。
【０１１７】
図２５はポインター情報としてのデータ文字列を2次元バーコード(QRコードシンボル：JIS X0510)311にて符号化して画像中に付加する過程を示すフローチャートである。
【０１１８】
2次元バーコード内に組み込むデータは、対応するファイルのアドレス情報を表しており、例えばファイルサーバー名およびファイル名からなるパス情報で構成される。或いは、対応するファイルへのURLや、対応するファイルの格納されているデータベース105内あるいはMFP100自体が有する記憶装置内で管理されるファイルID等で構成される。
【０１１９】
まず、符号化する種種の異なる文字を識別するため、入力データ列を分析する。また、誤り検出及び誤り訂正レベルを選択し、入力データが収容できる最小型番を選択する。(ステップ900)。
【０１２０】
次に、入力データ列を所定のビット列に変換し、必要に応じてデータのモード(数字、英数字、8ビットバイト、漢字等)を表す指示子や、終端パターンを付加する。さらに所定のビットコード語に変換する。(ステップ901)。
【０１２１】
この時、誤り訂正を行うため、コード語列を型番および誤り訂正レベルに応じて所定のブロック数に分割し、各ブロック毎に誤り訂正コード語を生成し、データコード語列の後に付加する(ステップ902)。
【０１２２】
該ステップ902で得られた各ブロックのデータコード語を接続し、各ブロックの誤り訂正コード語、必要に応じて剰余コード語を後続する。(ステップ903)。
【０１２３】
次に、マトリクスに位置検出パターン、分離パターン、タイミングパターンおよび位置合わせパターン等とともにコード語モジュールを配置する。 (ステップ904)。
【０１２４】
更に、シンボルの符号化領域に対して最適なマスクパターンを選択して、マスク処理パターンをステップ904で得られたモジュールにXOR演算により変換する。(ステップ905)。
【０１２５】
最後に、ステップ905で得られたモジュールに形式情報および型番情報を生成して、2次元コードシンボルを完成する。(ステップ906)。
【０１２６】
上記に説明した、アドレス情報の組み込まれた2次元バーコードは、例えば、クライアントPC102から電子ファイルをプリントデータとして記録装置112に紙上に記録画像として形成する場合に、データ処理装置115内で記録可能なラスターデータに変換された後にラスターデータ上の所定の個所に付加されて画像形成される。ここで画像形成された紙を配布されたユーザーは、画像読取り部110で読み取ることにより、前述したステップ123にてポインター情報からオリジナル電子ファイルの格納場所を検出することができる。
【０１２７】
尚  同様の目的で付加情報を付与する手段は、本実施例で説明した2次元バーコードの他に、例えば、ポインター情報を直接文字列で文書に付加する方法、文書内の文字列、特に文字と文字の間隔を変調して情報を埋め込む方法、文書中の中間調画像中に埋め込む方法等、一般に電子透かしと呼ばれる方法が適用出来る。
【０１２８】
（実施例２）
先の実施例ではブロックセレクション処理で分離した属性毎に輪郭点の削除処理を行う例を述べたが、属性が文字ブロックと判断された画像に対して一律に削除処理を行うのでは無く、ブロック内の文字のサイズに応じて適応化処理を施せば、より大サイズの文字をより少ないデータ量でベクトル化出来る。図１４（A）は文字のサイズを１０ポイント以下、１０-３０ポイント、３０ポイント以上の３種に分類し夫々文字サイズに応じて輪郭点の削除数が多くなるように各パラメータを設定する。
【０１２９】
尚文字のサイズは先に述べた文字認識の際に行単位で検出する事が出来る。
又  各文字ブロック内の文字の字体が認識できれば字体に応じて適応化することも可能である。つまり  図１４（B）に示すように  一般に明朝体は他のゴシック体等の字体に対してより高い空間周波数成分を有する為に、それ以外の字体の文字に対しては明朝体の文字より輪郭点をより削除出来る様に処理する。
【０１３０】
同様に図１４（C）は文字の色に対する適応化処理例である。通常文字色は黒を用いる場合視覚的に高い空間周波数成分まで視認出来るのでより原画の輪郭点を保存してアウトライン化する必要があるが、他の色を用いる場合、字サイズが大きい場合が多く、又サイズが小さい場合は黒色の文字に比べて人の目には細かい部分は視認しずらい。従って黒以外の文字に対してはより輪郭点を削除してアウトライン化する事で、実質的に画質を低下させずデータ量を削減出来る。
【０１３１】
（実施例３）
属性が図画と判断された場合、謂グラフィックで表現される画像を意味するが、その中には高い周波数を含むロゴマークから矩形や→で構成される所謂図形を含む。従ってブロックの面積を目安に適応化処理を施す事に依って効率的なアウトライン化が可能である。
【０１３２】
図１５は図画とブロックセレクションされた独立なブロックの面積に応じて適応化処理を行う別実施例で、  より小さなブロックは高い空間周波数成分を有する可能性が高い為  この面積に応じて大きなブロックはより輪郭点を削除しやすくパラメータを設定すれば、他の実施例同様に効率的にデータ量を削減出来る。
【０１３３】
（実施例４）
先の実施例では各属性に応じて予め輪郭点を削除する為のパラメータを設定しておきそれに従って削除処理を行っているが、これらパラメータはユーザが任意に設定出来ればより的確なアウトライン化が実現出来る。図１６（A）は表示装置116の液晶操作画面で説明しない各種設定モードの中のアウトライン化処理のパラメータを設定する画面である。
【０１３４】
画面中  文字、図画、表/線の３種の属性毎にアウトライン化をより原画の輪郭点に忠実に細かく行うか逆に削除点を多くとり荒く近似するかをレバー590を操作する事で簡単に設定が行える。各メモリには先に説明した３種のパラメータが夫々対応しており大まかにアウトライン化の程度が設定出来る。尚  更に詳細に設定する場合は各属性毎に設けられた詳細設定ボタン591を押下すれば、画面は図１６（B）に推移し、これら３種のパラメータを直接数字で設定出来る。
【０１３５】
尚  本発明実施例で適用した輪郭点を削除する条件は本実施例に限定されるものでは無く他の公知の方式が適用出来ることは述べるまでも無い
【図面の簡単な説明】
【０１３６】
【図１】本実施形態における画像処理手順の一例を示すフローチャートである。
【図２】2次元バーコードの付加された原稿の一例を示す図である。
【図３】本実施形態における処理手順の一例を示すフローチャートである。
【図４】本実施形態における処理手順の一例を示すフローチャートである。
【図５】ブロックセレクション処理の一例を説明する図である。
【図６】ある区間で外輪郭と、内輪郭あるいは別の外輪郭が近接している場合についての説明図である。
【図７】アウトライン化する際に削除する輪郭上の点を説明する図である。
【図８】繰り返し輪郭点を削除する様子を説明する図である。
【図９】本実施例で分離した文字領域、図画領域、表領域に対して行う輪郭点の削除処理のパラメータを示す図である。
【図１０】本願発明にかかる画像処理システム構成例を示すブロック図である。
【図１１】MFP100の構成図である。
【図１２】画像処理全体の概要を説明するフローチャートである。
【図１３】本実施例の適応的輪郭点削除の処理ルーチンの詳説を説明する図である。
【図１４】ブロック内の文字のサイズに応じて適応化処理を行なうための各パラメータを設定する説明図である。
【図１５】図画とブロックセレクションされた独立なブロックの面積に応じて適応化処理を説明する図である。
【図１６】各種設定モードの中のアウトライン化処理のパラメータを設定する画面である。
【図１７】ベクトルデータを図形オブジェクト毎にグループ化するまでのフローチャートである。
【図１８】各要素を検出するフローチャートである。
【図１９】DAOFのデータ構造を示す図である。
【図２０】ブロックセレクション処理を説明する図である。
【図２１】ブロック情報を説明する図である。
【図２２】全体の概略フローチャートである。
【図２３】文書構造ツリー生成部の詳細フローチャートである。
【図２４】文書構造ツリーの説明図である。
【図２５】本実施形態における処理手順の一例を示すフローチャートである。
【図１】
2007129557.tif 000003
【図２】
2007129557.tif 000004
【図３】
2007129557.tif 000005
【図４】
2007129557.tif 000006
【図５】
2007129557.tif 000007
【図６】
2007129557.tif 000008
【図７】
2007129557.tif 000009
【図８】
2007129557.tif 000010
【図９】
2007129557.tif 000011
【図１０】
2007129557.tif 000012
【図１１】
2007129557.tif 000013
【図１２】
2007129557.tif 000014
【図１３】
2007129557.tif 000015
【図１４】
2007129557.tif 000016
【図１５】
2007129557.tif 000017
【図１６】
2007129557.tif 000018
【図１７】
2007129557.tif 000019
【図１８】
2007129557.tif 000020
【図１９】
2007129557.tif 000021
【図２０】
2007129557.tif 000022
【図２１】
2007129557.tif 000023
【図２２】
2007129557.tif 000024
【図２３】
2007129557.tif 000025
【図２４】
2007129557.tif 000026
【図２５】
2007129557.tif 000027