JP4310176B2 - 画像処理装置、画像処理方法およびプログラム - Google Patents

画像処理装置、画像処理方法およびプログラム Download PDF

Info

Publication number
JP4310176B2
JP4310176B2 JP2003397990A JP2003397990A JP4310176B2 JP 4310176 B2 JP4310176 B2 JP 4310176B2 JP 2003397990 A JP2003397990 A JP 2003397990A JP 2003397990 A JP2003397990 A JP 2003397990A JP 4310176 B2 JP4310176 B2 JP 4310176B2
Authority
JP
Japan
Prior art keywords
image
file
data
vectorization
information
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 - Fee Related
Application number
JP2003397990A
Other languages
English (en)
Other versions
JP2005157905A (ja
Inventor
健一 太田
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 JP2003397990A priority Critical patent/JP4310176B2/ja
Publication of JP2005157905A publication Critical patent/JP2005157905A/ja
Application granted granted Critical
Publication of JP4310176B2 publication Critical patent/JP4310176B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、イメージデータを入力する画像処理装置、画像処理方法およびプログラムに関する。
近年、環境問題が叫ばれる中、オフィスにおけるペーパーレス化が急速に進んでいる。従来、バインダ等に蓄積された紙文書をスキャナで読み取り、データベースとして画像記憶装置に蓄積することで、文書管理システムを構築することが行われている(例えば、特許文献1参照)。
また従来、機能が拡張された複写機などの複合機では、予め画像を紙文書として記録する際、画像記憶装置内で、この画像のオリジナル電子ファイルが格納された場所を示す注釈情報を、文書の表紙あるいは文書中の記載情報に付加情報として記録しておき、再度、この文書を複写などに再利用する際、この注釈情報からオリジナル電子ファイルの格納場所を検出し、この電子ファイルの情報を編集や印刷に用いることで、紙文書全体の保存を削減することが行われている(例えば、特許文献2参照)。
特開平11−232155号公報 特開2001−67349号公報
しかしながら、上記従来の画像処理装置では、以下に掲げる問題があり、その改善が要望されていた。即ち、前者の文書管理システムでは、紙文書を保存するファイルがイメージ情報であるので、この文書の一部のオブジェクトを再利用することはできない。したがって、再利用する場合、図、表等を、新たにアプリケーションソフトウェアを用いて再度作成しなければならなかった。
また、後者の複合機では、出力された紙文書に対応するオリジナル電子ファイルに直接アクセスできる場合、容易に再利用することができるが、例えば、オリジナル電子ファイルにアクセスできない場合や、そもそもオリジナル電子ファイルへの注釈情報を持たない文書の場合、それらを再利用することができなかった。
そこで、本発明は、紙文書もしくは再利用が困難なイメージ情報を再利用可能な電子ファイルとして扱えるようにする画像処理装置、画像処理方法およびプログラムを提供することを目的とする。
上記目的を達成するために、本発明の画像処理装置は、イメージデータを入力する入力手段から入力された複数のオブジェクトを含むイメージデータに対して、オブジェクトの種類に応じた複数種のベクトル化処理の少なくとも1つを実行して、ベクトルデータを生成するベクトル化手段と、出力ファイル形式を選択する選択手段と、生成された前記ベクトルデータを選択された前記出力ファイル形式で出力する出力手段と備え、前記ベクトル化手段は、前記複数種のベクトル化処理の中から、選択された前記出力ファイル形式で扱えるベクトルデータを生成するベクトル化処理を実行することを特徴とする。
本発明の画像処理方法は、CPUを備えた画像処理装置における画像処理方法であって、前記CPUが、出力ファイル形式を選択する選択ステップと、前記CPUが、複数のオブジェクトを含むイメージデータを入力する入力ステップと、前記CPUが前記入力されたイメージデータに対して、オブジェクトの種類に応じた複数種のベクトル化処理の中から、選択された前記出力ファイル形式で扱えるベクトルデータを生成するベクトル化処理を実行して、ベクトルデータを生成するベクトル化ステップと、前記CPUが、該生成されたベクトルデータを選択された前記出力ファイル形式で出力する出力ステップとを有する。
本発明のプログラムは、画像処理装置内のCPUによって実行されるプログラムであって、複数のオブジェクトを含むイメージデータを入力する入力ステップと、出力ファイル形式を選択する選択ステップと、前記入力されたイメージデータに対して、オブジェクトの種類に応じた複数種のベクトル化処理の中から、選択された前記出力ファイル形式で扱えるベクトルデータを生成するベクトル化処理を実行して、ベクトルデータを生成するベクトル化ステップと、該生成されたベクトルデータを選択された前記出力ファイル形式で出力する出力ステップとを含むことを特徴とする。
本発明によれば、入力されたイメージデータからベクトルデータを生成し、選択された出力ファイル形式で出力するので、紙文書もしくは再利用が困難なイメージ情報を、再利用可能な電子ファイルとして扱えるようにすることができる。これにより、あたかもオリジナルな電子ファイルを入手したのと同等になる。また、ユーザ所望のアプリケーションに適した出力ファイル形式でベクトルデータを生成することができる。
本発明の画像処理装置、画像処理方法およびプログラムの実施の形態について図面を参照しながら説明する。本実施形態の画像処理装置は画像処理システムに適用される。
[第1の実施形態]
図1は第1の実施形態における画像処理システムの構成を示す図である。本実施形態の画像処理システムは、オフィス10内のネットワーク(LAN)107と、オフィス20内のネットワーク(LAN)108とが、インターネット104を介して接続された環境で実現される。
オフィス10内に構築されたLAN107には、複合機100、この複合機100を制御するマネージメントPC101、クライアントPC102、文書管理サーバ106、データベース105およびプロキシサーバ103が接続されている。一方、オフィス20内に構築されたLAN108には、文書管理サーバ116、データベース115およびプロキシサーバ113が接続されている。また、LAN107およびLAN108は、プロキシサーバ103、113を介してインターネット104に接続される。
複合機100は、紙文書の画像を読み取り、読み取った画像信号に対する画像処理を行い(前処理)、LAN109を通じて画像データをマネージメントPC101に伝送する。マネージメントPC101は、通常のPCからなり、画像記憶部、画像処理部、表示部および入力部を有する。マネージメントPC101の一部は、複合機100と一体に構成されている。
図2は複合機100の電気的構成を示す図である。この複合機100は、画像読み取り部210、記憶部211、記録部212、入力部213、表示部216、データ処理部215およびネットワークインタフェース(I/F)214、217を有する。入力部213には、キー操作部が設けられている。
画像読み取り部210は、オートドキュメントフィーダ(ADF)を有し、搬送された原稿を光源で照射し、原稿からの反射光をレンズで固体撮像素子上に結像し、固体撮像素子からラスタ画像信号を密度600dpiのイメージ情報として取得する。通常の複写を行う場合、データ処理部215は、ラスタ画像信号の画像処理を行い、記録信号(記録データ)とする。そして、複数枚の複写である場合、一旦、1ページ分の記録データを記憶部211に記憶・保持した後、記録部212に順次出力し、用紙上に画像を形成する。
また、クライアントPC102から出力されるプリントデータは、LAN107からネットワークIF214を経由して、データ処理部215に読み込まれると、データ処理部215で記録(印刷)可能なラスタデータに変換された後、記録部212によって用紙上に画像として形成される。また、複合機100に対する操作者の指示は、複合機100に設けられたキー操作部、マネージメントPC101に設けられたキーボードおよびマウスから行われる。また、入力状態の表示および処理中の画像データの表示は、表示部216で行われる。これら一連の動作は、データ処理部215内の制御部(CPU)によって制御される。
また、記憶部211は、マネージメントPC101からも制御される。複合機100およびマネージメントPC101間のデータの授受および制御は、ネットワークIF217および直結したLAN109を用いて行われる。
上記構成を有する画像処理システムの動作を示す。図3および図4は複合機100の動作処理手順を示すフローチャートである。この処理プログラムは、複合機100およびマネージメントPC101内の記憶媒体に格納されており、データ処理部215内のCPUおよびマネージメントPC101内のCPUによって実行される。まず、複合機100の画像読み取り部210を動作させ、1枚の原稿をラスタ方式で走査し、分解能600dpi、8ビットからなる画像データを取得する処理(イメージ情報入力処理)を行う(ステップS1)。このとき、データ処理部215は、取得した画像データの前処理を行い、1ページ分の画像データを記憶部211に保存する。
マネージメントPC101のCPUは、ブロック選択(BS)処理を行い(ステップS2)、記憶部211に保存された画像データに対し、文字/線画部分とハーフトーンの画像部分とに領域を分離する。さらに、文字/線画部分のうち、文字部を段落毎に塊として纏まっているブロック毎に分離し、、線画部を線で構成された表、図形に分離して、それぞれをセグメント化する。また、ハーフトーンで表現される画像部分を、矩形に分離されたブロックの画像部、背景部など、いわゆるブロック毎に独立したオブジェクトに分割する。
このとき、原稿画像中に付加情報として記録された2次元バーコード、あるいはURLに相当するオブジェクトを検出し、2次元バーコードの場合、マークを解読し、URLの場合、OCRで文字を認識する処理(OCR/OMR処理)を行う(ステップS3)。そして、原稿のオリジナル電子ファイルが格納されている記憶装置内のポインタ情報を検出する(ステップS4)。尚 ポインタ情報を付加する方法としては、この他、文字と文字の間隔に情報を埋め込む方法、ハーフトーン画像に埋め込む方法など、直接可視化されない、いわゆる電子透かしによる方法であってもよい。
ポインタ情報が検出されたか否かを判別する(ステップS5)。ポインタ情報が検出された場合、ポインタ情報に含まれるアドレスから元の電子ファイルを検索し(ステップS6A)、電子ファイルの有無を確認する(ステップS6)。ここで、電子ファイルは、クライアントPC102のハードディスク内、あるいはオフィス10、20の各LANに接続された文書管理サーバ106、116によって管理されるデータベース105、115内、あるいは複合機100の記憶部211内のいずれかに格納されており、ステップS3で得られたポインタ情報を基に検索される。
ステップS6で電子ファイルが見つからなかった場合、あるいは電子ファィルは見つかったが、PDF形式あるいはtiff形式に代表されるいわゆるイメージファイルであった場合、ステップS7の処理に移行する。また、ステップS5でポインタ情報が存在しなかった場合、ステップS7に移行する。
そして、文書検索処理を行う(ステップS7)。この文書検索処理では、各文字ブロック毎に行われたOCRの結果を基に単語を抽出する全文検索が行われたり、あるいは各オブジェクトの配列と各オブジェクトの属性を基にレイアウト検索が行われる。
全文あるいはレイアウト検索の結果 類似度の高い電子ファイルが見つかった場合、サムネイル画像等でファィル候補を表示し、複数のファィル候補の中から操作者の選択が必要である場合、操作者の入力操作によってファイルを特定する(ステップS8)。尚、ファイル候補が1つのファイルだけであっても、本実施形態では、そのままステップS8の処理に移行していたが、このような場合、ステップS8の処理を行わず、ステップS9、S10に移行し、ファイル候補のアドレスをユーザに通知するようにしてもよい。
そして、電子ファイルが見つかったか否かを判別し(ステップS9)、見つかった場合、ステップS8で特定された電子ファイルのアドレスをユーザに通知する(ステップS10)。また、ステップS6でポインタ情報を基に電子ファイルが見つかった場合も、その電子ファイルが格納されているアドレスをユーザに通知する。一方、ステップS9で電子ファイルが見つからなかった場合、ステップS13の処理に移行する。
アドレスを基に見つかった電子ファイルを取得(入手)する(ステップS11)。取得した電子ファイルがPDF形式あるいはtiff形式に代表されるいわゆるイメージファイルであるか否かを判別する(ステップS12)。イメージファイルであると判別された場合、ステップS1で入力されたイメージ情報と同等であるので、ベクトル化処理を行う(ステップS13)。このベクトル化処理については後述する。ベクトル化処理を行った後、一般のアプリケーションで編集可能なデータに変換する(ステップS14)。
編集可能なデータに変換した後、電子ファイルの格納場所を新たなポインタ情報として電子ファイルに付加し(ステップS15)、所定の格納領域に格納する(ステップS16)。また、ステップS12でイメージ情報でないと判別された場合も同様、ステップS15で電子ファイルの格納場所を新たなポインタ情報として電子ファイルに付加し、ステップS16で所定の格納領域に格納する。このとき、ステップS15では、電子ファイルの格納場所をポインタ情報として保存される電子ファイルに付加するようにする。これにより、保存された文書が次回以降の検索対象となり、電子ファイルの印刷時にポインタ情報を2次元バーコードなどで印字することができ、印刷文書から保存された文書に容易にアクセスすることができる。この後、本処理を終了する。
ステップS13のベクトル化処理では、イメージデータからベクトルデータへの変換処理が行われる。具体的に、ステップS2で所定のブロック毎に分割されたオブジェクトに対し、ベクトル化処理が行われるが、このベクトル処理には、以下の処理が含まれる。
・ステップS3でOCRによりコード情報に変換された文字ブロックに対し、文字のサイズ、スタイル、字体を認識し、原稿を走査して得られた文字に近くなるように可視的に忠実なフォントデータに変換する。
・ステップS3で処理されていない文字オブジェクトを1文字単位で切り出し、OCRによりコード情報に変換する。
・文字オブジェクトであるが、OCRにより認識不可能な文字の輪郭を追跡(トレース)し、輪郭情報(アウトライン情報)を線分のつながりとして表現する形式に変換する。
・図形オブジェクトの場合、輪郭情報を追跡(トレース)し、線分のつながりとして表現する形式に変換する。
・上記線分形式のアウトライン情報をベジエ関数などの関数によりフィッティングした関数情報に変換する。
・図形オブジェクトの輪郭情報から図形の形状を認識し、円、矩形、多角形などの図形定義情報に変換する。
・表形式のオブジェクトの場合、罫線や枠線を認識し、所定のフォーマットの帳票フォーマット情報に変換する。
これらの処理の他、ラスタ情報を所定のコマンドやコード情報に置き換えるような各種ベクトル化処理であってもよい。そして、これらのベクトル化処理は、各オブジェクト毎に行われ、各オブジェクトのレイアウト情報が保存されると、前述したように、ステップS14で一般のアプリケーションで編集可能なデータに変換された後、ステップS16で電子ファイルとして記憶部211に格納される。
ここで、編集可能なアプリケーションのデータ形式を示す。通常、データ形式は、使用するアプリケーションに依存しており、一般的に知られているものとしては、米国マイクロソフト社のワードプロセッサであるWord(登録商標)や表計算アプリケーションであるExcel(登録商標)などがある。これらのアプリケーションは、それぞれ使用目的が異なっており、目的に応じたファイル形式が定義され、そのファイル形式でファイル(データ)を保存するようにしている。
また、ある程度、汎用的に使用可能なファイル形式としては、米国マイクロソフト社のRTF(Rich Text Format)形式、近年ではSVG(Scalable Vector Graphics)形式、あるいは単純にテキストデータのみを扱うプレーンテキスト形式などが知られており、これらは、対応するアプリケーションである限り、共通に使用可能なファイル形式となっている。
本実施形態では、ベクトル化された情報をどのようなファイル形式で生成するかを選択可能とし、かつ選択されたファイル形式に応じて最適なベクトル化処理を施すことが可能である。また、このベクトル化処理は、単純にイメージデータを直接扱う場合に比べ、ベクトルデータとして編集可能になるだけでなく、情報量を削減でき、蓄積効率を向上でき、伝送時間を短縮できる。また、記録・表示する際、高品位なデータとして扱うことができる。
[ブロック選択(BS)処理]
図5はブロック選択処理によって記憶部211に保存された画像データを、文字/線画部分とハーフトーンの画像部分とに領域を分離する例を示す図である。同図(A)はブロック選択処理を行う前の画像データを示し、同図(B)はブロック選択処理を行って分離された領域を示す。このブロック選択(セレクション)処理は、読み取った1頁分のイメージデータ(同図(A)参照)を、各オブジェクト毎の塊として認識し、文字(TEXT)、写真(Photo)、線(Line)、表(Table)など、各ブロックの属性を判定し、異なる属性を持つ領域に分割する処理である。
具体的に、まず入力した画像を白黒画像に二値化し、輪郭線追跡を行い、黒画素の輪郭で囲まれる画素の塊を抽出する。面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡を行って白画素の塊を抽出し、さらに一定面積以上の白画素の塊の内部から再帰的に黒画素の塊を抽出する。
このようにして得られた黒画素の塊を、大きさおよび形状で分類し、異なる属性を持つ領域に分類する。例えば、縦横比が値1に近く、大きさが一定の範囲のものを文字相当の画素の塊とし、さらに近接する文字が整列良くグループ化可能な部分を文字領域とする。また、扁平な画素の塊を線領域とする。また、一定の大きさ以上でかつ四角形の白画素の塊を整列よく内包する黒画素の塊が占める範囲を表領域とする。また、不定形の画素の塊が散在している領域を写真領域とする。それ以外の任意形状の画素の塊を図画領域とする。
図6はブロック選択処理で得られた各ブロックのブロック情報を示す図である。各ブロック情報は、ベクトル化あるいは検索のための情報として用いられる。ここでは、各ブロック毎に、属性、座標X、座標Y、幅W、高さH、OCR情報の有無がブロック情報として用いられる。属性の値1、2、3、4、5はそれぞれ文字、図形、表、線、写真に相当する。
[ポインタ情報の検出]
つぎに、ステップS3における電子ファイルの格納位置をイメージ情報から抽出するOCR/OMR処理を示す。図7は原稿画像中に付加された2次元バーコードシンボル(QRコード)を復号してデータ文字列を出力する処理手順を示すフローチャートである。図8は2次元バーコードが付加された原稿を示す図である。
まず、データ処理部215内のページメモリに格納された原稿310のイメージ画像をCPUによって走査し、前述したブロック選択処理の結果を基に、2次元バーコードシンボル311の位置を検出する(ステップS21)。ここで、QRコードの位置検出パターンは、シンボル311の4隅のうち、3隅に配置された同一の位置検出要素パターン311aから構成される。
QRコードの位置検出パターンに隣接する形式情報を復元し、シンボル311に適用されている誤り訂正レベルおよびマスクパターンを取得する(ステップS22)。シンボル311の型番を決定し(ステップS23)、形式情報から得られたマスクパターンを使って符号化領域ビットパターンをXOR演算することによって、マスク処理を解除する(ステップS24)。モデルに対応する配置規則に従い、シンボルキャラクタを読み取り、メッセージのデータおよび誤り訂正コード語を復元する(ステップS25)。
復元されたコード上に誤りがあるか否かを検出し(ステップS26)、誤りが検出された場合、これを訂正する(ステップS27)。一方、誤りが検出されない場合、ステップS28の処理に移行する。誤り訂正されたデータから、モード指示子および文字数指示子に基づき、データコード語をセグメントに分割する(ステップS28)。最後に、仕様モードに基づいてデータ文字列を復号化し、その結果を出力する(ステップS29)。この後、本処理を終了する。
尚、2次元バーコード内に組み込まれたデータは、対応する電子ファイルのアドレス情報を表しており、例えば、ファイルサーバ名およびファイル名からなるパス情報から構成される。または、対応する電子ファイルへのURLから構成される。
また、本実施形態では、2次元バーコードを用いてポインタ情報が付与された原稿310を示したが、ポインタ情報が文字列で直接記録される場合、所定のルールに則った文字列のブロックを先のブロック選択処理で検出し、ポインタ情報を示す文字列の各文字を文字認識することで、元の電子ファイルのアドレス情報を直接得ることも可能である。
また、原稿310の文字ブロックあるいは文字列に対し、隣接する文字と文字の間隔などに、視認し難い程度の変調を加え、この文字間隔に情報を埋め込むことでもポインタ情報を付与できる。この透かし情報を基に 後述する文字認識処理を行う際、各文字の間隔を検出することにより、ポインタ情報が得られる。また、自然画の中に、電子透かしとしてポインタ情報を付加することも可能である。
[ポインタ情報によるファイル検索]
図9はステップS6Aにおけるポインタ情報を基に電子ファイルを検索する処理手順を示すフローチャートである。まず、ポインタ情報に含まれるアドレスに基づき、ファイルサーバを特定する(ステップS31)。ここでは、ファイルサーバとして、クライアントPC102、データベース105を管理する文書管理サーバ106、あるいは記憶部211を有する複合機100が特定される。また、アドレスは、URL、あるいはサーバ名およびファイル名からなるパス情報である。
ファイルサーバを特定すると、ファイルサーバにアドレスを転送する(ステップS32)。ファイルサーバはアドレスを受け取ると、該当するファイルを検索する。そして、ファイルサーバからその検索結果を受信する(ステップS33)。ファイルがあるか否かを判別する(ステップS34)。ファイルが存在しない場合、その旨を複合機100に通知し、本処理を終了し、メイン処理に復帰する。一方、ファイルが存在する場合、ファイルのアドレスを通知するとともに、ファイルサーバに対し、該当するファイルの転送を指示する(ステップS35)。この後、本処理を終了し、メインの処理に復帰する。
図3および図4に示すメイン処理では、ステップS33の検索結果を基に、前述したように、ステップS6で該当する電子ファイルが存在するか否かを判別し、該当する電子ファイルが存在しない場合、その旨を通知し、ステップS7の処理に移行する。一方、該当する電子ファイルが存在する場合、ステップS10で電子ファイルのアドレスを通知し、ステップS11でファイルサーバから転送される電子ファイルを受信する。
[ファイル検索処理]
図10および図11はステップS7におけるファイル検索処理手順を示すフローチャートである。ステップS7の処理は、前述したように、ステップS5で入力された原稿のイメージ情報(入力ファイル)にポインタ情報が存在しなかった場合、あるいはステップS6でポインタ情報は存在しても、電子ファイルが見つからなかった場合に実行される。
ここでは、ステップS3の処理結果、抽出された各ブロックおよび入力ファイルが図6に示す情報(ブロック情報、入力ファイル情報)を有する場合を示す。前述したように、図6では、ブロック情報の内容として、属性、座標位置、幅と高さのサイズ、OCR情報の有無が挙げられている。
属性は、文字、線、写真、絵、表その他に分類される。また、ここでは、説明を簡単にするため、各ブロックには、その座標Xの小さい順に(X1<X2<X3<X4<X5<X6)、ブロック1、ブロック2、ブロック3、ブロック4、ブロック5、ブロック6と番号が付けられている。また、ブロック総数Nは、入力ファイル中の全ブロック数である。ここでは、ブロック総数Nは値6である。
そして、これらの情報(ブロック情報、入力ファイル情報)を使用し、データベースの中から、入力ファイルに類似したファイルのレイアウト検索を行う。図10の処理では、入力ファイルとデータベース中のファイルが順次比較される。まず、最初のデータベース内のファイルに対し、類似率などの初期化を行う(ステップS41)。そして、ブロック総数の比較を行う(ステップS42)。このブロック数の比較は、数式(1)にしたがって行われる。ここで、nはデータベース内のファイルのブロック総数である。ΔNは入力ファイルのブロック総数の誤差である。
N−ΔN < n < N+ΔN …… (1)
ステップS42で数式(1)を満足する場合、さらにファイル内のブロック情報を順次比較する。このブロック情報の比較では、属性類似率、サイズ類似率、OCR類似率をそれぞれ算出し、これらの値を基に、総合類似率を算出する。すなわち、入力ファイルとデータベース内のファイルのブロック属性を比較し(ステップS43)、一致する場合、データベース内のファイルの属性類似率を更新する(ステップS44)。さらに、入力ファイルとデータベース内のファイルのサイズが数式(2)を満足するか否かの判別、つまりサイズ比較処理を行う(ステップS45)。ここで、Wは入力ファイルのブロック幅である。Hは入力ファイルのブロック高さである。ΔWは入力ファイルのブロック幅の誤差である。ΔHは入力ファイルのブロック高さである。wはデータベース内のファイルのブロック幅である。hはデータベース内のファイルのブロック高さである。
W−ΔW < w < W+ΔW かつ H−ΔH < h < H+ΔH …… (2)
数式(2)を満足する場合、データベース内のファイルのサイズ類似率を更新する(ステップS46)。さらに、入力ファイルとデータベース内のファイルが共にOCR情報を有するか否かを判別する(ステップS47)。OCR情報を有する場合、OCR情報を比較し(ステップS48)、OCR類似率を更新する(ステップS49)。尚、属性、サイズ、OCR情報の各類似率の算出には、周知の技術が用いられるので、その説明を省略する。
そして、入力ファイルの全てのブロックについて、類似率の比較を行ったか否かを判別する(ステップS50)。全てのブロックについて終わっていない場合、ステップS55の処理を行った後、ステップS43の処理に戻る。ステップS55では、N≦nである場合、つまりデータベース内のファイルのブロック総数nが入力ファイルのブロック総数N以上である場合、入力ファイル内の次のブロックを処理対象とし、一方、N>nである場合、つまりデータベース内のファイルのブロック総数nが入力ファイルのブロック総数Nより少ない場合、データベース内のファイルの次のブロックを処理対象とする。また、ステップS43で入力ファイルとデータベース内のファイルのブロック属性とが不一致である場合、ステップS45で入力ファイルとデータベース内のファイルのサイズが数式(2)を満足しない場合、およびステップS47で入力ファイルとデータベース内のファイルが共にOCR情報を有しない場合、同様にステップS55の処理を行った後、ステップS43の処理に戻る。
そして、ステップS50で入力ファイルの全てのブロックについて、類似率の比較を終えた場合、総合類似率を算出する(ステップS51)。算出された総合類似率が予め設定された閾値Thより高いか否かを判別し(ステップS52)、予め設定された閾値Thより高い場合、そのファイルを類似候補として保存する(ステップS53)。この後、データベース内の全ファイルを終了したか否かを判別する(ステップS54)。データベース内の全ファイルを終了していない場合、次のファイルを処理対象とし(ステップS56)、ステップS41の処理に戻る。また、ステップS52で、総合類似率が予め設定された閾値Th以下である場合、次のファイルを処理対象とし(ステップS56)、ステップS41の処理に戻る。一方、ステップS54でデータベース内の全ファイルを終了した場合、本処理を終了する。尚、ステップS45のサイズ比較処理では、座標X、Yを基に位置情報の比較を行うようにしてもよい。
こうして検索を行った結果 総合類似率(類似度)が閾値Thより高く、ステップS53で類似候補として保存されたデータベース内のファイルは、前述したステップS8でサムネイル画像として表示される。そして、複数の類似候補の中から、必要に応じて操作者の入力操作よりファイルか特定される。
[ベクトル化処理]
つぎに、ステップS13におけるベクトル化処理を示す。この処理は、ステップS9で電子ファイルを特定できなかった場合、イメージ全体をベクトル化するものである。まず、文字ブロック内の各文字に対する文字認識処理を行う。
(文字認識)
文字認識処理では、文字単位で切り出された画像に対し、パターンマッチングの手法を用いて認識処理を行い、対応する文字コードを取得する。この認識処理は、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルと、予め字種毎に求められている辞書特徴ベクトルとを比較し、最も距離の近い字種を認識結果とする処理である。特徴ベクトルの抽出には、種々の方法が知られており、例えば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントする、メッシュ数次元ベクトルを特徴とする方法が知られている。
ステップS2のブロック選択処理で抽出された文字領域に対して文字認識を行う場合、まず、該当する領域に対して横書き/縦書きの判定を行い、各々対応する方向に行を切り出し、その後、文字を切り出して文字画像を得る。ここで、横書き/縦書きの判定は、該当する領域内で画素値に対する水平/垂直の射影を取り、水平射影の分散が大きい場合、横書き領域と判断し、垂直射影の分散が大きい場合、縦書き領域と判断することで行われる。また、文字列および文字への分解は、横書きである場合、水平方向の射影を利用して行を切り出し、さらに切り出された行に対する垂直方向の射影から、文字を切り出すことで行われる。一方、縦書きの文字領域に対する文字列および文字への分解は、水平と垂直を逆にして、横書きの場合と同様に行えばよい。また、このとき、文字のサイズが検出される。
(フォント認識)
文字認識の際に用いられる字種数分の辞書特徴ベクトルを、文字形状種(フォント種)に対して複数用意し、マッチングの際、文字コードとともにフォント種を出力することで、文字のフォントが認識可能である。
(文字のベクトル化)
文字認識およびフォント認識によって得られた、文字コードおよびフォント情報を基に、予め用意されたアウトラインデータを用いて、文字部分の情報をベクトルデータに変換する。元の原稿がカラーである場合、カラー画像から各文字の色を抽出してベクトルデータとともに記録する。これにより、文字ブロックに属するイメージ情報を、形状、大きさおよび色がほぼ忠実に再現されるベクトルデータに変換できる。
(文字以外の部分のベクトル化)
ブロック選択処理において、図形、画像、線、表領域として分離された領域を対象とし、その中で抽出された画素塊の輪郭をベクトルデータに変換する。具体的に、輪郭をなす画素の点列を角とみなされる点で区切り、各区間を部分的な直線あるいは曲線で近似する。図12は角を曲線で近似する様子を示す図である。ここで、角とは、曲率が極大となる点である。曲率が極大となる点は、任意点Piに対し、左右k個の離れた点Pi−k、Pi+kの間に弦を引いた場合、この弦と点Piとの距離が極大となる点として求められる。さらに、点Pi−k、点Pi+k間の弦の長さ/弧の長さをRとし、Rの値が閾値以下である点を角とみなすことができる。角によって分割された後の各区間では、直線を点列に対する最小二乗法などを用いてベクトル化し、曲線を3次スプライン関数などを用いてベクトル化する。また、対象が内輪郭を持つ場合、ブロック選択処理で抽出した白画素輪郭の点列を用いて、同様に部分的に直線あるいは曲線で内輪郭を近似する。
このように、輪郭の区分線近似を用いることにより、任意形状の図形のアウトラインをベクトル化することができる。元の原稿がカラーである場合、カラー画像から図形の色を抽出してベクトルデータとともに記録する。
図13は太さを持った線として表現する様子を示す図である。ある区間で外輪郭と、内輪郭あるいは別の外輪郭とが近接している場合、2つの輪郭線をひとまとめにし、太さを持った線として表現することができる。具体的に、ある輪郭の各点Piから別の輪郭上で最短距離となる点Qiまで線を引き、各距離PQiが平均して一定の長さ以下である場合、注目区間を、線分PQiの中点を点列とする直線あるいは曲線で近似し、その太さを線分PQiの平均値とする。線や線の集合体である表罫線は、このような太さを持つ線の集合として、ベクトルで効率良く表現することができる。
尚、前述したように、文字ブロックにおける文字認識処理を用いてベクトル化する場合、この文字認識処理の結果、辞書からの距離が最も近い文字を認識結果として用いる。この距離が所定値以上である場合、必ずしも本来の文字と一致せず、形状が類似する文字に誤認識されることが多い。そこで、本実施形態では、このような誤認識され易い文字については、一般的な線画と同じように扱って、この文字をアウトライン化する。これにより、従来、文字認識処理で誤認識を起こし易い文字に対しても 誤った文字にベクトル化されず、可視的にイメージデータに忠実なアウトラインによるベクトル化を行うことができる。また、写真と判定されたブロックについては、ベクトル化することができないので、イメージデータのままとする。
(図形認識)
つぎに、任意形状の図形の輪郭(アウトライン)をベクトル化した後、これらベクトル化された区分線を図形オブジェクト毎にグループ化する処理を示す。図14はベクトルデータを図形オブジェクト毎にグループ化する処理手順を示すフローチャートである。まず、各ベクトルデータの始点および終点を算出する(ステップS61)。算出された各ベクトルデータの始点および終点情報を用いて、図形要素を検出する(ステップS62)。ここで、図形要素の検出とは、区分線が構成する閉図形を検出することである。この閉図形を検出する際、閉じた形状(閉図形)を構成する各ベクトルは、その両端にそれぞれ連結されるベクトルを有するという原理を応用する。そして、図形要素内に存在する他の図形要素あるいは区分線をグループ化し、1つの図形オブジェクトとし、一方、図形要素内に他の図形要素あいは区分線が存在しない場合、図形要素を図形オブジェクトとする(ステップS63)。この後、本処理を終了する。
図15は図形要素を検出する処理手順を示すフローチャートである。まず、ベクトルデータを基に、両端に連結されていない不要なベクトルを除去し、閉図形構成ベクトルを抽出する(ステップS71)。閉図形構成ベクトルの中から、このベクトルの始点を開始点とし、時計回りにベクトルを順次追っていく。再び開始点に戻るまで追跡を行い、通過したベクトルを全て1つの図形要素を構成する閉図形としてグループ化する(ステップS72)。このステップS72のグループ処理では、閉図形内部にある閉図形構成ベクトルも全てグループ化する。さらに、まだグループ化されていないベクトルの始点を開始点とし、同様の処理を繰り返す。この後、ステップS71で除去された不要ベクトルのうち、ステップS72で閉図形としてグループ化されたベクトルに接合されているものを検出し、1つの図形要素としてグループ化する(ステップS73)。この後、本処理を終了する。これにより、図形ブロックを個別に再利用可能な個別の図形オブジェクトとして扱うことが可能である。
(アプリデータへの変換処理)
前述したブロック選択処理(ステップS2参照)で、1頁分のイメージデータをブロック化し、ベクトル化処理(ステップS13参照)を行った結果、イメージデータは、中間データ形式のファイルに変換されている。この中間データ形式は、ドキュメント・アナリシス・アウトプット・フォーマット(DAOF)形式と呼ばれる。図16はDAOF形式のデータ構造を示す図である。DAOF形式のデータ構造は、ヘッダ(header)791、レイアウト記述データ部792、文字認識記述データ部793、表記述データ部794および画像記述データ部795からなる。
Header791には、処理対象の文書画像データに関する情報が保持される。レイアウト記述データ部792は、文書画像データ中のTEXT(文字)、TITLE(タイトル)、CAPTION(キャプション)、LINEART(線画)、PICTURE(自然画)、FRAME(枠)、TABLE(表)等の属性毎に認識された各ブロックの属性情報およびその矩形アドレス情報を保持する。文字認識記述データ部793は、TEXT、TITLE、CAPTION等のTEXTブロックを文字認識して得られる文字認識結果を保持する。表記述データ部794は、TABLEブロックの構造の詳細を格納する。画像記述データ部795は、PICTUREやLINEART等のブロックのイメージデータを文書画像データから切り出して保持する。
このようなDAOFは、中間データとしてのみならず、それ自体がファイル化されて保存される場合もあるが、このファイルの状態では、いわゆる一般の文書作成アプリケーションによって個々のオブジェクトを再利用することはできない。そこで、このDAOF形式のデータからアプリケーションデータ(単に、アプリデータという)に変換する処理(ステップS14参照)について示す。
図17はステップS14におけるアプリケーションデータの生成処理手順を示すフローチャートである。まず、DAOFを入力する(ステップS81)。アプリデータの元となる文書構造ツリーを生成する(ステップS82)。文書構造ツリーを基に、DAOFに実データを挿入し、実際のアプリデータを生成する(ステップS83)。この後、本処理を終了する。
図18は文書構造ツリー生成処理手順を示すフローチャートである。図19は文書構造ツリーを示す図である。全体制御の基本ルールとして、ミクロブロック(単一ブロック)からマクロブロック(ブロックの集合体)に移行するように処理が行われる。ここでは、ブロックとは、ミクロブロックおよびマクロブロック全体を指す。
まず、ブロック単位で縦方向の関連性を基に再グループ化する(ステップS91)。スタート直後、ミクロブロック単位で判定が行われる。ここで、関連性とは、距離が近いこと、ブロック幅(横方向の場合、ブロック高さ)がほぼ同一であること等によって、定義される。また、距離、幅、高さなどの情報は、DAOFを参照して抽出される。
図19(A)は実際のページ構成を示し、図19(B)はその文書構造ツリーを示す。ステップS91のグルーピングの結果、ブロックT3、T4、T5が1つのグループとなるブロックV1、およびブロックT6、T7が1つのグループとなるブロックV2が同じ階層のグループとして生成される。
縦方向のセパレータの有無をチェックする(ステップS92)。ここで、セパレータとは、例えば、物理的にDAOF中でライン属性を持つオブジェクトである。また論理的な意味としては、アプリケーション中、明示的にブロックを分割する要素である。セパレータを検出した場合、同じ階層で再分割する。
縦方向のグループ長を利用し、縦方向のグルーピング長がページ高さであるか否か、つまり分割がこれ以上存在し得ないか否かを判定する(ステップS93)。縦方向のグループ長がページ高さとなっている場合、文書構造ツリー生成処理を終了する。
一方、縦方向のグループ長がページ高さとなっていない場合、ステップS94の処理に移行する。図19では、セパレータもなく、グループ高さはページ高さとなっていないので、ステップS94の処理に進む。
そして、ブロック単位で横方向の関連性を基に再グループ化する(ステップS94)。この場合も、スタート直後の第1回目では、ミクロブロック単位で判定を行うことになる。また、関連性およびその判定情報の定義は、縦方向の場合と同じである。図19では、ブロックT1、T2がブロックT1、T2の1つ上の同じ階層のH1グループとして、ブロックV1、V2がブロックV1、V2の1つ上の同じ階層のH2グループとして生成される。
横方向セパレータの有無をチェックする(ステップS95)。図19では、セパレータS1が存在するので、これをツリーに登録し、ブロックH1、S1、H2という階層が生成される。
横方向のグループ長を利用し、横方向のグルーピング長がページ幅であるか否か、つまり分割がこれ以上存在し得ないか否かを判定する(ステップS96)。横方向のグループ長がページ幅となっている場合、文書構造ツリー生成処理を終了する。
一方、横方向のグループ長がページ幅となっていない場合、ステップS91に戻り、再びもう一段上の階層に対し、縦方向の関連性チェックから、同様の処理を繰り返す。図19では、分割幅がページ幅になっているので、ここで処理を終了し、最後にページ全体を表す最上位階層のブロックV0が文書構造ツリーに付加される。
文書構造ツリーが完成した後、その情報を基に、ステップS83でアプリデータの生成が行われる。図19の場合、ブロックH1には、横方向に2つのブロックT1、T2があるので、2カラムとして出力し、ブロックT1の内部情報(DAOFの参照、文字認識結果の文章、画像など)を出力した後、カラムを変え、ブロックT2の内部情報を出力した後、セパレータS1の出力となる。また、ブロックH2には、横方向に2つのブロックV1、V2があるので、2カラムとして出力し、ブロックV1では、ブロックT3、T4、T5の順にその内部情報を出力した後、カラムを変え、ブロックV2のブロックT6、T7の内部情報を出力する。こうしてアプリデータへの変換処理が行われる。
[ポインタ情報の付加]
つぎに、ステップS15におけるポインタ情報の付加処理を示す。処理すべき文書が検索処理で特定された場合、あるいはベクトル化によって元のファイルが再生できた場合、この文書を記録処理する(紙への記録)際、ポインタ情報を付与することで、この印刷文書を用いて再度、各種処理を行う際、簡単に元のファイルデータを取得できる。
図20はステップS15におけるポインタ情報の付加処理手順を示すフローチャートである。このポインタ情報の付加処理では、ポインタ情報としてのデータ文字列を2次元バーコードシンボル(QRコード:JIS X0510)311に符号化し、画像中に付加する。2次元バーコードに組み込まれるデータは、対応する電子ファイルのアドレス情報を表しており、例えばファイルサーバ名およびファイル名からなるパス情報で構成される。あるいは、対応する電子ファイルへのURL、対応する電子ファイルが格納されているデータベース105、115あるいは複合機100内の記憶部211で管理されるファイルID等で構成される。
まず、符号化する種々の異なる文字を識別するため、入力データ列を分析する(ステップS101)。また、誤り検出および誤り訂正レベルを選択し、入力データが収容可能な最小型番を選択する。
入力データ列を所定のビット列に変換し、必要に応じてデータのモード(数字、英数字、8ビットバイト、漢字等)を表す指示子や終端パターンを付加する。さらに所定のビットコード語に変換する(ステップS102)。誤り訂正を行うため、コード語列を型番および誤り訂正レベルに応じて所定のブロック数に分割し、各ブロック毎に誤り訂正コード語を生成し、データコード語列の後に付加する(ステップS103)。
ステップS103で得られた各ブロックのデータコード語を接続し、各ブロックの誤り訂正コード語、必要に応じて剰余コード語を後続させる(ステップS104)。マトリクスに、位置検出パターン、分離パターン、タイミングパターンおよび位置合わせパターン等とともにコード語モジュールを配置する(ステップS105)。
シンボルの符号化領域に対して最適なマスクパターンを選択し、マスク処理パターンをステップS105で得られたモジュールにXOR演算により変換する(ステップS106)。ステップS106で得られたモジュールに形式情報および型番情報を生成し、2次元コードシンボルを完成する(ステップS107)。この後、本処理を終了する。
こうしてアドレス情報が組み込まれた2次元バーコードは、例えばクライアントPC102により、電子ファイルをプリントデータとして、記録部212の用紙上に記録画像として形成される場合、データ処理部215によって記録可能なラスタデータに変換された後、ラスタデータ上の所定の個所に付加され、画像が形成される。ここで、画像が形成された用紙が配布されたユーザは、画像読み取り部210によって画像を読み取ることにより、ステップS4でポインタ情報からオリジナル電子ファイルの格納場所を検出することができる。
尚、付加情報を付与する方法としては、本実施形態で示した2次元バーコードの他、例えば、ポインタ情報を直接文字列で文書に付加する方法、文書内の文字列、特に文字と文字の間隔を変調して情報を埋め込む方法、文書中の中間調画像中に埋め込む方法など、一般に、電子透かしと呼ばれる方法を適用することができる。
[ファイル形式の選択と指定]
上記処理により、オリジナル電子ファイルを特定できなかった場合であっても、あたかも元のアプリケーションで作成したのと同等な電子ファイルを得ることができる。ただし、ここで生成されるベクトル化された電子ファイルのファイル形式は、あくまで予め決められたフォーマットに限られる。実際に想定されるアプリケーションは種々様々であり、どのような形式で電子化するかによって、ユーザの利便性は大きく変わってくることになる。
そこで、本実施形態では、生成されるファイル形式をユーザが選択可能となるような、ユーザインターフェースを提供する。このユーザによる選択処理は、ステップS13のベクトル化処理の開始前や、ステップS1のイメージ情報入力処理の開始前などで行われる。図21は出力ファイル形式を選択する操作画面を示す図である。図21の操作画面には、複合機100もしくはマネージメントPC101のユーザ操作画面に表示されるメッセージが示されている。ここでは、「出力ファイル形式選択画面」となっており、ベクトル化処理された電子データをいずれの形式で書き出すかをユーザが指定できるようになっている。複数のファイル形式の中から選択可能になっており、ONまたはOFFのチェックボックスにより、指定した形式で書き出すように動作が行われる。ここでは、「プレーンテキスト形式」、「ワープロ形式」、「表形式」、「プレゼンテーション形式」、「SVG」あるいは「RTF」の形式に選択可能である。本実施形態では、ワープロ形式としてWORD(登録商標)形式、表形式としてExcel(登録商標)形式、プレゼンテーション形式としてPowerPoint(登録商標)形式を例示するが、その他の形式であってもよいことは勿論である。また、複数の形式を指定した場合、それぞれの形式に則った複数の電子データが出力されることになる。
ここでは、WORD(登録商標)形式とSVG形式を選択しているので、生成されたベクトル化データは、これら2つの形式でデータ格納領域に出力されることになる。また、本実施形態では、選択された各形式毎に最適なベクトル化処理が適用される。
例えば、プレーンテキスト形式だけを選択した場合、この形式で扱えるデータは文字コード情報だけであるので、ベクトル化処理は、最低限のレベルしか適用されず、OCRによる文字画像のコード化処理だけを行うことで、十分である。
また、WORD(登録商標)形式やRTF形式を選択した場合、文字コード情報、表形式の枠/罫線情報、ビットマップ画像情報を混在して扱うことが可能であるので、OCRによる文字コード化、表データの枠と罫線の直線ベクトル化、およびレイアウトされたビットマップ画像の切り出し処理などが実行される。逆に、図形アウトラインの関数近似処理などを行わないようにする。
また、SVG形式を選択した場合、ほとんど全てのベクトル化情報を定義することが可能であるので、前述したベクトル化処理における全ての処理を実行し、ベクトル化したデータをSVG言語に変換して出力するようにする。
また、処理の実行/非実行を制御するだけでなく、処理の優先度を変える場合も、想定することができる。例えば、Excel(登録商標)形式を選択した場合、入力画像が縦の罫線、横の罫線で表現された表形式である場合が多いと予想されるので、ベクトル化処理において、BS処理で分割されたオブジェクト毎に、縦の直線および横の直線を抽出する処理を優先させるようにする。このように処理した結果、表以外の図形部でも、縦/横の直線部が抽出されやすくなり、図形の塊としての抽出精度が若干下がることになるが、表の抽出精度が高くなるので、結果的には好ましい出力が得られることになる。
また、PowerPoint(登録商標)形式を選択した場合、矩形や円などの図形情報が多く含まれていると予想されるので、そのような図形抽出処理を優先的に行うようにすることも可能である。この場合、円や矩形などの図形情報は、それらを定義するコマンド形式のデータ(Circle、Squareなど)として出力されることになる。
図22はベクトル化処理の変更方式を示す図である。この例では、ページ801上に、実線のラインで番号付けされた複数のオブジェクトを含むような文書画像が示されている。ページ801全体は、画像読み取り部210からデジタル的なラスタ画像データとして入力され、BS処理(ステップS2参照)で各オブジェクトに分割された後、各オブジェクトがベクトル化処理対象となるものとする。これらの各オブジェクトが、出力ファイル形式によって、どのようなベクトル化処理を受けるかを示す。
(a)プレーンテキスト形式が指定された場合
この場合、ベクトル化の対象となるのは文字列だけである。図中、符号803、806、809、813で示される各文字列のオブジェクトだけがベクトル化の対象となり、OCR処理により文字コード化される。それ以外のオブジェクトは無視される。
(b)PowerPoint、WORDもしくはRTF形式が指定された場合
文字のコード化と基本図形への置き換え処理を行う。文字列は、上記(a)と同様、OCR処理により文字コードに変換される。楕円形のオブジェクト802、812は、図形のアウトライン情報に基づき、最適な長径/短径を持つ楕円図形に置き換えられる。長方形オブジェクト805およびひし形オブジェクト808も、同様に変換される。矢印804、807、811は、始点および終点の座標に基づき、直線ベクトルに置き換えられ、かつ先端に矢印が付加されていることから、終点に矢印を持つ直線図形として定義される。曲線810は、始点から終点までのアウトラインに基づき、短い直線の集合としてベクトル化され、かつ同様に終点に矢印マークが付与される。
(c)SVG形式が選択された場合
文字列の処理は、上記(a)、(b)と同様であるが、ここではSVG特有の処理としてフォント形状のベクトル化処理が合わせて行われる。すなわち、文字列を1文字単位に分解し、各文字のアウトライン情報に基づき、SVGフォント定義を生成する。このフォント情報がOCRによる文字コード情報と一体として定義されるようにする。このような処理を行うと、文字列に特殊なフォント形式が使われているような文書であっても、その文字形状を保存したまま、ベクトル化処理することが可能になる。
また、各図形オブジェクト802、805、808、812に対しては、図形データに変換せず、アウトラインデータのベジエ関数近似を行うようにすることも可能である。同様に、曲線810に対しても、アウトラインをベジエ関数に近似することで、滑らかな曲線をそのままベクトル化することが可能となる。矢印の処理は、上記(b)と同様である。
このように、指定された出力ファイル形式に応じて、各種ベクトル化処理を適宜施すことが可能となる。また、生成されるベクトルデータに対する、アプリケーションの使用による再利用性がさらに高まることとなる。上記処理方法はあくまで一例であり、その他様々な処理方法が考えられることは勿論である。また、それぞれ選択されたファイル形式は、それぞれ独自の文書構造ツリー情報、ヘッダ情報、データ格納形式を有しているが、選択された形式に応じた形式のアプリデータが生成されることは勿論である。
第1の実施形態の画像処理システムによれば、原稿を読み取り走査することによって得られたイメージ情報から、この原稿の電子ファイルを特定する際、電子ファイルを特定できなかった場合、イメージ情報からベクトルデータを生成してアプリケーションファイルに変換することができる。したがって、あたかもオリジナルの電子ファイルを入手した場合と同様の効果を得ることができる。また、ユーザがアプリケーションファイルの形式を指定することにより、ユーザが希望する任意のアプリケーションファイルを生成できる。しかも、このとき行われるベクトル化処理は、指定されたアプリケーションで最適となるように設定されるので、ユーザにとっては望ましい変換結果を得ることができる。
[第2の実施形態]
扱われる文書ファイルの中には、第三者による再利用を制限すべきものがある。前記第1の実施形態では、ファイルサーバに蓄積されたファイルは、全て自由にアクセス可能であり、ファイル全体あるいはその一部のオブジェクトが全て再利用可能であることを前提とした。そこで、第2の実施形態では、ポインタ情報からファイルを検索した際、検索の結果、特定したファイルにアクセス権の制限が有る場合を示す。図23は第2の実施形態のステップS6Aにおけるポインタ情報を基に電子ファイルを検索する処理手順を示すフローチャートである。ステップS121〜S124までの処理は、前記第1の実施形態の図9におけるステップS31〜S34までの処理と同様であるので、その説明を省略する。
ステップS124でファイルが特定された場合、ファイルサーバに、そのファイルのアクセス権情報の有無を調べさせる(ステップS125)。アクセス制限がある場合、パスワードの送信要求を受けると(ステップS126)、複合機は、操作者に対してパスワードの入力を促し、入力されたパスワードをファイルサーバに送信する(ステップS127)。
ファイルサーバによる、送信されたパスワードの照合結果を判別する(ステップS128)。照合の結果、パスワード不一致で認証失敗である場合、ステップS126の処理に戻る。一方、パスワード一致で認証成功である場合、ファイルのアドレスを通知すると共に、ユーザ希望の処理が画像ファイルデータの取得である場合、ファイルサーバに対し、該当するファイルの転送を指示する(ステップS129)。この後、本処理を終了し、メインの処理に復帰する。
尚、アクセス権を制御する際の認証の方法は、ステップS126、S127で示したパスワードによる方法に限定されず、例えば 指紋認証など、一般に広く用いられている生体認証、カードによる認証など、全ての認証手段を用いることが可能である。また、第2の実施形態では、紙文書に付与されたポインタ情報により、ファイルを特定した場合の実施形態を示したが、ステップS7、S8に示すように、ファイル検索処理でファイルを特定した場合においても、同様に適用可能である。
一方 ファイルサーバによるファイルの特定ができなかった場合、ステップS13のベクトル化処理に対しても、制限を加えることが可能である。すなわち、紙文書を走査して得られたイメージ情報から、この紙文書に対するアクセス権の制限の存在を検出した場合、認証確認が取れた場合だけ、ベクトル化処理を行うことで、機密性の高い文書の使用に制限を加えることができる。
[第3の実施形態]
前記第1の実施形態では、ファイル検索処理で、元の電子ファイルを特定できなかった場合、イメージ画像全体に対してベクトル化処理を行うが、例えば、一般の文書の場合、文書中のオブジェクト全てが新規に作成されたものでなく、一部のオブジェクトは他のファイルから流用して作成されたものである場合がある。
例えば、背景オブジェクト(壁紙)として、文書作成アプリケーションで、いくつかのパターンが予め用意されており、その中から選択して用いることが通常である。このようなオブジェクトは、文書ファイルデータベースの中の他の文書ファイル中に存在している可能性が高く、また再利用可能なベクトルデータとして存在する可能性が高い。
したがってこのような背景から、ステップS13におけるベクトル化処理として、ブロック選択処理で、個別のオブジェクトに分割された各オブジェクトに対し、このオブジェクト単位でデータベースの中から、一致するオブジェクトを一部に含むファイルを検索し、一致したオブジェクトに対し、個別にファイルからオブジェクト単位でベクトルデータを取得する。これにより、文書全体をベクトル化する必要が無くなり、より高速にベクトル化処理を行うことができ、さらにベクトル化による画質劣化を防止できる。
また、第3の実施形態では、出力ファイル形式を図21に示すように指定した場合、検索処理の対象を選択した形式のファイルに限定することも可能である。例えば、PowerPoin(登録商標)形式を選択した場合、ファイルサーバ上のPowerPoint(登録商標)ファイルだけを対象として、オブジェクト単位のベクトルデータの検索および取得を行うようにすることで、処理を簡略化することができる。
一方、ステップS7におけるファイル検索処理では、元のファイルがPDFファイルとして特定された場合、このPDFファイルがその文書の文字オブジェクトに対して、既に文字認識された文字コードを付加ファイルとして有している場合がある。このようなPDFファイルをベクトル化する場合、この文字コードファイルを用いることにより、ステップS13以降のベクトル化処理の中の文字認識処理を省くことができる。すなわち、ベクトル化処理をより高速に処理することが可能となる。
以上が本発明の実施の形態の説明であるが、本発明は、これら実施の形態の構成に限られるものではなく、特許請求の範囲で示した機能、または実施の形態の構成が持つ機能が達成できる構成であればどのようなものであっても適用可能である。
また、本発明の目的は、実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
また、プログラムコードを供給するための記憶媒体としては、例えば、ROM、フロッピー(登録商標)ディスク、PCMCIAカードやコンパクトフラッシュ(登録商標)等のメモリカード、ハードディスク、マイクロDAT、光磁気ディスク、CD−RやCD−RW等の光ディスク、DVD等の相変化型光ディスク等で構成されてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
第1の実施形態における画像処理システムの構成を示す図である。 複合機100の電気的構成を示す図である。 複合機100の動作処理手順を示すフローチャートである。 図3につづく複合機100の動作処理手順を示すフローチャートである。 ブロック選択処理によって記憶部211に保存された画像データを、文字/線画部分とハーフトーンの画像部分とに領域を分離する例を示す図である。 ブロック選択処理で得られた各ブロックのブロック情報を示す図である。 原稿画像中に付加された2次元バーコードシンボル(QRコード)を復号してデータ文字列を出力する処理手順を示すフローチャートである。 2次元バーコードが付加された原稿を示す図である。 ステップS6Aにおけるポインタ情報を基に電子ファイルを検索する処理手順を示すフローチャートである。 ステップS7におけるファイル検索処理手順を示すフローチャートである。 図10につづくステップS7におけるファイル検索処理手順を示すフローチャートである。 角を曲線で近似する様子を示す図である。 太さを持った線として表現する様子を示す図である。 ベクトルデータを図形オブジェクト毎にグループ化する処理手順を示すフローチャートである。 図形要素を検出する処理手順を示すフローチャートである。 DAOF形式のデータ構造を示す図である。 ステップS14におけるアプリケーションデータの生成処理手順を示すフローチャートである。 文書構造ツリー生成処理手順を示すフローチャートである。 文書構造ツリーを示す図である。 ステップS15におけるポインタ情報の付加処理手順を示すフローチャートである。 出力ファイル形式を選択する操作画面を示す図である。 ベクトル化処理の変更方式を示す図である。 第2の実施形態のステップS6Aにおけるポインタ情報を基に電子ファイルを検索する処理手順を示すフローチャートである。
符号の説明
100 複合機
101 マネジメントPC
102 クライアントPC
105、115 データベース
106、116 文書管理サーバ
210 画像読み取り部
211 記憶部
212 記録部
213 入力部
215 データ処理部
216 表示部
311 二次元バーコードシンボル(QRコード)

Claims (7)

  1. イメージデータを入力する入力手段から入力された複数のオブジェクトを含むイメージデータに対して、オブジェクトの種類に応じた複数種のベクトル化処理の少なくとも1つを実行して、ベクトルデータを生成するベクトル化手段と、
    出力ファイル形式を選択する選択手段と、
    生成された前記ベクトルデータを選択された前記出力ファイル形式で出力する出力手段と備え、
    前記ベクトル化手段は、前記複数種のベクトル化処理の中から、選択された前記出力ファイル形式で扱えるベクトルデータを生成するベクトル化処理を実行することを特徴とする画像処理装置。
  2. 前記入力手段は、原稿の画像を光学的に読み取って画像信号を生成し、該生成された画像信号をイメージデータに変換することを特徴とする請求項1記載の画像処理装置。
  3. 前記変換されたイメージデータに記述され、前記原稿元の電子ファイルの格納場所を示すポインタ情報を読み取る読取手段を備え、
    該読み取られたポインタ情報を基に取得した電子ファイルがイメージデータである場合、前記ベクトル化手段は、前記変換されたイメージデータから前記ベクトルデータを生成することを特徴とする請求項2記載の画像処理装置。
  4. 前記入力手段は、前記イメージデータとして、2次元のデジタル画素データの配列を入力することを特徴とする請求項1記載の画像処理装置。
  5. 前記複数種のベクトル化処理は、文字を認識して文字コードに変換する第1のベクトル化処理と、図形の輪郭をベクトルデータに変換する第2のベクトル化処理と、文字のフォント形状をベクトル化する第3のベクトル化処理とを含むことを特徴とする請求項1記載の画像処理装置。
  6. CPUを備えた画像処理装置における画像処理方法であって、
    前記CPUが、出力ファイル形式を選択する選択ステップと、
    前記CPUが、複数のオブジェクトを含むイメージデータを入力する入力ステップと、
    前記CPUが前記入力されたイメージデータに対して、オブジェクトの種類に応じた複数種のベクトル化処理の中から、選択された前記出力ファイル形式で扱えるベクトルデータを生成するベクトル化処理を実行して、ベクトルデータを生成するベクトル化ステップと、
    前記CPUが、該生成されたベクトルデータを選択された前記出力ファイル形式で出力する出力ステップとを有する画像処理方法。
  7. 画像処理装置内のCPUによって実行されるプログラムであって、
    複数のオブジェクトを含むイメージデータを入力する入力ステップと、
    出力ファイル形式を選択する選択ステップと、
    前記入力されたイメージデータに対して、オブジェクトの種類に応じた複数種のベクトル化処理の中から、選択された前記出力ファイル形式で扱えるベクトルデータを生成するベクトル化処理を実行して、ベクトルデータを生成するベクトル化ステップと、
    該生成されたベクトルデータを選択された前記出力ファイル形式で出力する出力ステップとを含むことを特徴とするプログラム。
JP2003397990A 2003-11-27 2003-11-27 画像処理装置、画像処理方法およびプログラム Expired - Fee Related JP4310176B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003397990A JP4310176B2 (ja) 2003-11-27 2003-11-27 画像処理装置、画像処理方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003397990A JP4310176B2 (ja) 2003-11-27 2003-11-27 画像処理装置、画像処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2005157905A JP2005157905A (ja) 2005-06-16
JP4310176B2 true JP4310176B2 (ja) 2009-08-05

Family

ID=34722985

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003397990A Expired - Fee Related JP4310176B2 (ja) 2003-11-27 2003-11-27 画像処理装置、画像処理方法およびプログラム

Country Status (1)

Country Link
JP (1) JP4310176B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008065573A (ja) * 2006-09-07 2008-03-21 Asuka Corporation:Kk 注文カードのocr読み取り結果自動訂正システム
CN104113656B (zh) * 2010-10-25 2017-09-26 柯尼卡美能达商用科技株式会社 数据处理装置及数据处理方法
JP2013130997A (ja) * 2011-12-21 2013-07-04 Kyocera Document Solutions Inc 画像形成装置
JP5578188B2 (ja) 2012-02-17 2014-08-27 コニカミノルタ株式会社 画像処理装置、画像処理装置の制御方法、および、プログラム

Also Published As

Publication number Publication date
JP2005157905A (ja) 2005-06-16

Similar Documents

Publication Publication Date Title
US7681121B2 (en) Image processing apparatus, control method therefor, and program
JP4251629B2 (ja) 画像処理システム及び情報処理装置、並びに制御方法及びコンピュータプログラム及びコンピュータ可読記憶媒体
US7391917B2 (en) Image processing method
US8339619B2 (en) System and image processing method and apparatus for re-using and re-editing images
US8520006B2 (en) Image processing apparatus and method, and program
EP1455284B1 (en) Image processing method and image processing system
US7542605B2 (en) Image processing apparatus, control method therefor, and program
JP4393161B2 (ja) 画像処理装置及び画像処理方法
JP3862694B2 (ja) 画像処理装置及びその制御方法、プログラム
US20060010116A1 (en) Image processing system and image processing method
JP4227432B2 (ja) 画像処理方法
JP4338189B2 (ja) 画像処理システム及び画像処理方法
JP2007129557A (ja) 画像処理システム
JP4310176B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP2005149097A (ja) 画像処理システム及び画像処理方法
JP2006134042A (ja) 画像処理システム
JP2006146486A (ja) 画像処理装置
JP2005208872A (ja) 画像処理システム
JP2008084127A (ja) 画像形成装置
JP2005136729A (ja) 画像処理装置、画像処理方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
JP2006195886A (ja) 画像処理システム
JP2006148663A (ja) 画像処理システム
JP2005165674A (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP2006146500A (ja) 画像処理装置及びその制御方法、画像処理システム、並びにプログラム
JP2006134231A (ja) 画像処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051209

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20051209

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20070626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090406

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090428

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090511

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4310176

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140515

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees