以下、本発明に関する好ましい実施形態について図面を参照しつつ詳細に説明する。尚、以下に説明する実施形態において互いに共通する部材には同一符号を付しており、それらについての重複する説明は省略する。
図1は、本実施形態における文書処理システムの一構成例を示す図である。この文書処理システムは、MFPなどの画像処理装置1と、一般的なパーソナルコンピュータなどで構成されるコンピュータ3と、メールサーバやデータサーバなどのサーバ機能を備えたサーバ装置4とを備え、これらがLANなどのネットワーク9を介して相互にデータ通信可能に接続された構成である。ネットワーク9には、インターネットなどの外部ネットワークが接続されていても良い。
本実施形態では、画像処理装置1が文書処理装置としての機能を搭載している場合について説明する。ただし、本発明にかかる文書処理装置は、画像処理装置1に限らず、コンピュータ3やサーバ装置4、或いはその他の装置に対しても適用可能である。
図1に示す画像処理装置1は、スキャン機能、BOX機能、プリント機能、コピー機能などの複数の機能を有している。スキャン機能は、原稿を読み取って画像データを生成し、その画像データを画像処理装置1の内部に設けられた記憶装置36(図2参照)に保存したり、或いはネットワーク9を介してコンピュータ3やサーバ装置4などに送信したりする機能である。BOX機能は、画像処理装置1のBOXに保存されている文書データに対する処理を行う機能であり、例えばBOXに保存されている文書データを読み出し、ネットワーク9を介してコンピュータ3やサーバ装置4などに送信する機能である。ここで、BOXとは、記憶装置36に設けられている文書データ格納用の記憶領域38(図2参照)である。プリント機能は、ネットワーク9を介してコンピュータ3などから入力される文書データや、BOXに保存されている文書データを読み出してプリント出力を行う機能である。またコピー機能は、原稿を読み取ってコピー出力を行う機能である。
この画像処理装置1は、図1に示すように、装置本体1aの上部に、原稿を読み取るスキャナ部13が設けられている。スキャナ部13は、原稿の画像を1枚ずつ読み取る画像読取部11と、1枚又は複数枚の原稿を1枚ずつ画像読取部11に搬送する自動原稿搬送装置(ADF)12とを備えており、例えば複数枚の原稿の連続自動読み取りが行えるようになっている。また装置本体1aの中央部には、紙などの出力媒体に対して画像形成を行う画像形成部14が設けられており、プリント出力やコピー出力を行う。スキャナ部13の正面側にはユーザが操作可能な操作パネル17が設けられている。操作パネル17は、ユーザに対して各種情報を表示する表示部15と、ユーザが操作する操作キー16とを備えている。操作キー16には、表示部15の周囲に配置された押しボタンキーと、表示部15の画面上に配置されたタッチパネルキーとが含まれる。
また画像処理装置1は、装置本体1aの背面側から上方に延びる支持部によって支持された表示装置20と、装置本体1aの側面側に取り付けられたワーキングテーブル19上に設けられるマウス21とを備えている。表示装置20は、操作パネル17の表示部15よりも高解像度で画像を表示可能な表示手段である。マウス21は、操作パネル17の操作キー16と共に、画像処理装置1に対する入力操作を行うための操作入力手段である。本実施形態においてマウス21は、表示装置20に表示されるマウスポインタを操作するために使用される。
上記構成の画像処理装置1は、スキャン機能又はBOX機能において文書データを取得し、ユーザからしおり抽出の指示があった場合には、その取得した文書データに基づいて見出しなどの文字列を抽出してしおりデータを生成し、そのしおりデータを文書データに付加するように構成される。以下、このような画像処理装置1についてさらに詳しく説明する。
図2は、画像処理装置1のハードウェア構成の一例を示すブロック図である。図2に示すように画像処理装置1は、上述した構成の他、各部を制御する制御部30と、表示装置20およびマウス21が接続される外部インタフェース33と、ネットワーク9が接続されるネットワークインタフェース34と、スキャナ部13が原稿から読み取った画像データなどを一時的に記憶する画像メモリ35と、ハードディスク装置などの不揮発性記憶手段で構成される記憶装置36とを備えている。
制御部30はCPU31とメモリ32とを備えている。CPU31は記憶装置36に記憶されているプログラム37を読み出して実行することにより、各部を制御する。またメモリ32は、CPU31がプログラム37を実行する際、一時的なデータなどを記憶するためのものである。制御部30は、CPU31がプログラム37を実行することにより各種処理を行う。特に本実施形態において制御部30は、文書処理装置としての主たる処理を行う。すなわち、制御部30は、文書データを取得し、その取得した文書データから文字列を抽出するための所定の条件(文字列抽出条件)に適合する文字列をしおりとして抽出する。そして抽出された各文字列が有する特徴を抽出し、その特徴をデータ化したフォーマット39を生成する。尚、フォーマット39については後に説明する。そして制御部30は、文書データから抽出した文字列を表示装置20に表示する。これにより、ユーザは、しおりとして抽出された文字列が所望の抽出結果となっているか否かを確認することができる。また制御部30は、抽出した各文字列が有する特徴をデータ化したフォーマット39を表示装置20に表示する。ユーザは、文字列の抽出結果を確認した結果、所望する抽出結果となっていない場合には、マウス21や操作キー16などを操作することで表示装置20に表示されたフォーマット39に対する修正操作を行う。制御部30は、そのような修正操作を受け付けてフォーマット39を修正する。そして修正されたフォーマット39に適合するように、文書データからの文字列の再抽出を行う。
記憶装置36には、上記プログラム37が記憶される他、上述したBOXに対応する記憶領域38が例えば複数のユーザごとに設定され、各記憶領域38には文書データ40が保存される。尚、記憶領域38に保存される文書データ40は、スキャナ部13が原稿画像を読み取って生成された文書データであっても良いし、またネットワーク9を介してコンピュータ3などから入力した文書データであっても良い。
また図2に示すように、記憶装置36には、フォーマット39と、フォーマット管理テーブル39aとが記憶される。フォーマット39は、上述したように、文書データから抽出される各文字列の特徴を表したデータであり、例えばユーザがフォーマット39を画像処理装置1に登録しておくことを指定した場合に記憶装置36に記憶される。尚、フォーマット39の詳細については後にさらに詳しく説明する。また記憶装置36には、複数のフォーマット39を記憶しておくことができる。フォーマット管理テーブル39aは、記憶装置36に記憶されるフォーマット39を管理するためのテーブルデータである。フォーマット管理テーブル39aには、それぞれのフォーマット39ごとに、例えばフォーマットを登録しておくことを指定したユーザの情報や、文書データの属性(例えばファイル名など)の情報などが対応付けられて記録されている。
図3は、画像処理装置1が文書処理装置として機能する場合の制御部30における機能ブロックを示す図である。この場合、制御部30は、文書データ取得部41、文書データ処理部42、表示処理部43および出力処理部44として機能し、文書データからしおり抽出を行う。ここで「しおり」とは、例えば文書に付された見出しやタイトル、サブタイトルなどの文字列の集合体であり、例えば文書が章、節、項などの複数の構成から成る場合、それら複数の構成のそれぞれに付された代表的な文字列(例えば、章タイトル、節タイトル、項タイトルなど)を抽出して文書中での出現順序に従って順位付けしたものである。
文書データ取得部41は、しおり抽出の対象となる文書データを取得する処理部である。例えば、画像処理装置1のスキャン機能が使用される場合、文書データ取得部41は、スキャナ部13が原稿画像を読み取って画像メモリ35に格納した文書データを取得する。また画像処理装置1のBOX機能が使用される場合、文書データ取得部41は、ユーザによって指定された記憶領域38に格納されている文書データ40を読み出して取得する。この文書データ取得部41は、OCR(Optical Character Reader)などのような文字認識部41aを備えており、例えば文書データがテキストデータ化されていない画像データである場合、文字認識部41aが機能して画像データに含まれる全ての文字を抽出する。
文書データ処理部42は、文書データ取得部41が取得した文書データに対し、しおり抽出を行う処理部である。文書データ処理部42は、操作キー16又はマウス21から入力されるユーザの指示に基づいて文書データからしおりとなる文字列抽出処理を行う。この文字列抽出処理は、ユーザからの指示に基づき、何度でも繰り返し実行することができる。そして文書データ処理部42は、ユーザからの指示に基づき、しおり抽出処理で抽出された文字列に基づいてしおりデータを生成し、そのしおりデータを文書データに付加し、その文書データを出力処理部44に出力する。
また表示処理部43は、文書データ処理部42において行われる文字列抽出処理の結果およびそれに対応するフォーマット39を表示装置20に表示する処理部である。さらに出力処理部44は、文書データ処理部42で生成されたしおりデータの付加された文書データを、ネットワークインタフェース34を介してコンピュータ3に出力したり、或いは記憶装置36の記憶領域38に保存したりする処理部である。
図4は、文書データ処理部42の詳細な構成例を示すブロック図である。文書データ処理部42は、文字列抽出部45、フォーマット生成部46、フォーマット修正部47、フォーマット適用部48およびフォーマット記録部49として機能する。
文字列抽出部45は、文書データ取得部41から入力される文書データ40に基づいてしおりとなりうる文字列(しおり候補文字列)を抽出する処理部である。しおり候補文字列とは、文書データに含まれる全ての文字列のうちから抽出される、見出しやタイトル、サブタイトルなどに相当する文字列であって、ユーザの意図するしおりになっているか否かが未確定の状態の文字列である。文字列抽出部45がしおり候補文字列を抽出する方法としては次の2つの方法がある。
第1の方法は、プログラム37に予め設定された所定の文字列抽出条件に基づいて、その文字列抽出条件に適合する文字列を抽出する方法であり、例えば特開2008−305088号公報に開示された方法である。この第1の方法では、所定の文字列抽出条件に基づいて文書データからしおり候補文字列の抽出が行われる。
第2の方法は、上述したフォーマット39を適用して行う方法であり、文書データ40に含まれる全ての文字列のうちから、フォーマット39に規定された特徴に適合する文字列をしおり候補文字列として抽出する方法である。
フォーマット生成部46は、文字列抽出部45において上記第1の方法による文字列抽出が行われた場合、それによって抽出された各文字列が有する特徴を抽出し、該特徴をデータ化したフォーマットを生成する処理部である。このフォーマット生成部46によりフォーマットを生成する処理の詳細については後に説明する。尚、文字列抽出部45において上記第2の方法による文字列抽出が行われた場合は既にフォーマットが存在しているため、フォーマット生成部46によるフォーマットの生成は行わない。
図5は、フォーマット39の概念を示す図である。図5に示すように、フォーマット39は、文字列抽出部45により抽出されたしおり候補文字列の特徴を示す情報である。またフォーマット39は、共通位置条件情報、共通キーワード情報、共通数値情報、および、共通属性情報の4つの特徴に関する情報を含む。また、フォーマット39は、複数の階層を含み、それぞれの階層ごとに、共通位置条件情報、共通キーワード情報、共通数値情報、および、共通属性情報を持つ。図例の場合、フォーマット39が第1階層から第3階層までの3階層である場合を示しているが、必ずしもこれに限られない。これら階層構造は、文書に含まれる大項目の見出し、中項目の見出し、小項目の見出し、…というように、しおり候補文字列の階層的な見出し構造に対応している。例えば、第1階層は大項目の見出しに対応しており、この第1階層には大項目の見出しに共通した特徴に関する情報が、共通位置条件情報、共通キーワード情報、共通数値情報、および、共通属性情報のそれぞれに記録されている。また第2階層は中項目の見出しに対応しており、この第2階層には中項目の見出しに共通した特徴に関する情報が、共通位置条件情報、共通キーワード情報、共通数値情報、および、共通属性情報のそれぞれに記録されている。さらに第3階層は小項目の見出しに対応しており、この第3階層には小項目の見出しに共通した特徴に関する情報が、共通位置条件情報、共通キーワード情報、共通数値情報、および、共通属性情報のそれぞれに記録されている。
共通位置条件情報は、各階層に対応するしおり候補文字列の文書の基準位置(例えば横書き文書の場合は用紙の左端部)からの距離情報を含み、文書における当該文字列が文書中に含まれている領域を示す情報である。例えば大項目の見出しの場合、第1階層の共通位置条件情報には、大項目の見出しとなるしおり候補文字列が含まれている領域を特定する情報が記録される。例えば、大項目、中項目、小項目の間で異なるインデント(字下げ設定)が付与されている場合、そのインデント量は、この共通位置条件情報に反映される。
共通キーワード情報は、各階層に対応するしおり候補文字列に共通して含まれる文字や文字列などを示す情報である。例えば、大項目の見出しにおいて、「1章」や「2章」などの文字列が含まれる場合、第1階層の共通キーワード情報は「章」となる。
共通数値情報は、各階層に対応するしおり候補文字列に共通する、しおり候補文字列における数字の配置位置を示す情報である。例えば、大項目の見出しが、「1章.…(大テーマ名)…」、「2章.…(大テーマ名)…」、…となっている場合、文字列の先頭文字が各章の番号を示す数値であるため、第1階層の共通数値情報には、文字列の先頭に大項目を規定する数値情報が含まれることが記録される。また中項目の見出しが、「1.1.…(中テーマ名)…」、「1.2.…(中テーマ名)…」、…となっている場合、文字列の先頭3文字(2文字目のドットを含む)が中項目の番号を示す数値であるため、第2階層の共通数値情報には、文字列の先頭3文字に中項目を規定する数値情報が含まれることが記録される。また第3階層以下の共通数値情報についてもこれと同様である。尚、この共通数値情報によっても、抽出された文字列を階層構造に設定することができる。
共通属性情報は、各階層に対応する文字列に共通する属性情報を規定した情報である。例えば、文字列のフォントや文字サイズ、アンダーラインやイタリック体などの文字装飾などが共通している場合、その共通した属性が記録される。
フォーマット生成部46は、文字列抽出部45において上記第1の方法による文字列抽出が行われた場合、しおり候補文字列として抽出された各文字列の特徴に基づいてしおり候補文字列を階層構造化し、それぞれの階層に共通した特徴を示す情報として、上述した共通位置条件情報、共通キーワード情報、共通数値情報および共通属性情報のそれぞれを生成してフォーマット39を生成する。
例えば、上述したように大項目、中項目および小項目のそれぞれでインデント量が異なる場合、しおり候補文字列として抽出された各文字列が位置する領域は、そのインデント量に応じて異なっている。そのため、フォーマット生成部46は、各しおり候補文字列の位置に関する特徴として、各しおり候補文字列の位置を示す位置情報を抽出する。そして複数のしおり候補文字列から同じ位置情報が抽出された場合、それら複数のしおり候補文字列をひとつのグループにグループ化する。これにより、位置に関する特徴が互いに共通している複数のしおり候補文字列が同じグループに分類される。尚、いずれのグループにも分類されないしおり候補文字列は、他の特徴が別のしおり候補文字列と共通しない限り、しおり候補から除外される。
また、フォーマット生成部46は、各しおり候補文字列に含まれるキーワードに関する特徴として、各しおり候補文字列に含まれるキーワード情報を抽出する。例えば、しおり候補文字列に「章」、「節」、「項」といったキーワードが含まれる場合、それらがキーワード情報として抽出される。そして複数のしおり候補文字列から同じキーワード情報が抽出された場合、それら複数のしおり候補文字列をひとつのグループにグループ化する。これにより、キーワードに関する特徴が互いに共通している複数のしおり候補文字列が同じグループに分類される。尚、いずれのグループにも分類されないしおり候補文字列は、他の特徴が別のしおり候補文字列と共通しない限り、しおり候補から除外される。
また、フォーマット生成部46は、各しおり候補文字列に含まれる数値に関する特徴として、各しおり候補文字列に含まれる数値情報を抽出する。例えば、しおり候補文字列の先頭部分に数値が含まれる場合、その数値が記載された先頭部分が数値情報として抽出される。そして複数のしおり候補文字列から同じ数値情報が抽出された場合、それら複数のしおり候補文字列をひとつのグループにグループ化する。これにより、数値に関する特徴が互いに共通している複数のしおり候補文字列が同じグループに分類される。尚、いずれのグループにも分類されないしおり候補文字列は、他の特徴が別のしおり候補文字列と共通しない限り、しおり候補から除外される。
さらにフォーマット生成部46は、各しおり候補文字列の属性に関する特徴として、各しおり候補文字列の属性情報を抽出する。例えば、しおり候補文字列に設定されているフォントや文字サイズ、アンダーラインなどの文字装飾などが属性情報として抽出される。そして複数のしおり候補文字列から同じ属性情報が抽出された場合、それら複数のしおり候補文字列をひとつのグループにグループ化する。これにより、属性に関する特徴が互いに共通している複数のしおり候補文字列が同じグループに分類される。尚、いずれのグループにも分類されないしおり候補文字列は、他の特徴が別のしおり候補文字列と共通しない限り、しおり候補から除外される。
このようにフォーマット生成部46は、しおり候補文字列から4つの特徴を抽出し、それら4つの特徴毎に、しおり候補文字列のグループ化を行う。したがって、4つの特徴のそれぞれから、4つのグループ群が得られることになる。
そしてフォーマット生成部46は、4つのグループ群のうちから少なくとも1つのグループ群を選択し、その選択したグループ群に含まれる複数のグループを階層構造化する。ここでは、例えば、位置に関する特徴が共通しているしおり候補文字列をグループ化して得られた複数のグループを、インデント量などに応じて階層構造化する。そして、フォーマット生成部46は、その階層構造に、しおり候補文字列を対応付ける。これにより、文書データ40から抽出されたしおり候補文字列が階層構造化されることになる。またフォーマット生成部46は、他のグループ群に含まれる複数のグループを、その階層構造に対応付ける。
そしてフォーマット生成部46は、階層構造に対応付けた各グループの情報に基づいて、各階層のしおり候補文字列が共通した特徴を有することを示す情報を生成する。つまり、フォーマット生成部46は、上述した共通位置条件情報、共通キーワード情報、共通数値情報および共通属性情報のそれぞれを階層毎に生成してフォーマット39を生成する。
このような処理により、共通位置条件情報、共通キーワード情報、共通数値情報および共通属性情報のそれぞれが、しおり候補文字列の階層構造に対応した構造となる。そして、その結果、図5に示したようなフォーマット39が生成される。
上記のように、文字列抽出部45が機能して例えば上述した第1の方法で文書データ40からしおり候補文字列を抽出し、フォーマット生成部46がそのしおり候補文字列に基づいてフォーマット39を生成した場合、文書データ処理部42は、しおり候補文字列を表示処理部43に出力すると共に、生成されたフォーマット39を表示処理部43に出力する。これにより、表示装置20には、しおり候補文字列と、それに対応するフォーマット39が表示されるので、ユーザは所望のしおり抽出結果が得られているか否かを確認することができる。
図4に戻り、フォーマット修正部47は、ユーザからの指示に基づいてフォーマット39を修正する処理部である。このフォーマット修正部47は、図5に示した各階層の共通位置条件情報、共通キーワード情報、共通数値情報および共通属性情報を、ユーザによって行われる修正操作に基づいて修正する。
フォーマット適用部48は、フォーマット修正部47によって修正されたフォーマット39を文字列抽出部45に適用することにより、文字列抽出部45で文字列の再抽出を行わせる処理部である。この再抽出では、文字列抽出部45は、上述した第2の方法による文字列抽出を行う。つまり、フォーマット修正部47によって修正されたフォーマット39に規定された特徴に適合する文字列を抽出することにより、文書データ40からしおり候補文字列の再抽出が行われる。そして再抽出の結果に基づいて、表示装置20の表示画面が更新される。尚、前述したように、第2の方法による文字列抽出を行った場合には、フォーマット生成部46によるフォーマットの生成は行わない。
フォーマット記録部49は、フォーマット生成部46によって生成されたフォーマット39又はフォーマット修正部47によって修正されたフォーマット39を記憶装置36に保存する処理部である。例えば、ユーザが表示装置20の表示画面を見て所望のしおり抽出結果となっていることを確認し、そのしおりを付加して文書出力を行うことを指示した場合、フォーマット記録部49は、その時点でのフォーマット39を記憶装置36に保存する。
このとき、フォーマット記録部49は、記憶装置36に保存するフォーマット39と、操作を行ったログインユーザ又は文書データ40の属性とを対応付けるための情報をフォーマット管理テーブル39aに登録しておく。これにより、例えば、同じユーザが画像処理装置1にログインしたとき、過去に使用したフォーマット39を自動的に読み出すことができるようになる。また過去にしおり抽出を行った文書データと同じ属性の文書データに対してしおり抽出を行う際にも、過去に使用したフォーマット39を自動的に読み出すことができるようになる。そのため、画像処理装置1の利便性が向上する。尚、文書データ40の属性とは、例えば、文書データ40のファイル名に含まれている文字列などである。
次に、しおり抽出の処理過程において表示装置20で表示される画面の一例について説明する。図6乃至図10は、それぞれ表示装置20に表示されるしおり抽出画面の一例を示す図である。これら各図に示すように、しおり抽出画面には、上述したフォーマット39の内容を表示するためのしおりフォーマット表示欄51と、しおり候補として抽出された文字列を階層構造で表示するためのしおりプレビュー欄52と、しおり抽出対象となる文書データ40の内容をプレビュー表示するための文書プレビュー欄53とが設定されている。
まず、図6は、文書データ処理部42にしおり抽出対象となる文書データ40が入力された状態の画面を示している。この状態では、未だしおり候補となる文字列抽出は行われていない。そのため、図6の画面では、文書プレビュー欄53において文書データ40の内容がプレビュー表示される。この例では、文書プレビュー欄53において大項目、中項目および小項目を含む文書がプレビュー表示されている。そして、上述した第1の方法により、しおり候補となる文字列が抽出され、それに対応するフォーマット39が生成されると、表示装置20における画面は、図7に示す画面に変更される。
図7に示すように、しおり抽出が行われると、しおりフォーマット表示欄51には、しおり候補として抽出された文字列に対応するフォーマット39の内容が表示される。図例では、「しおり(文字列)」の欄に大項目、中項目および小項目の3階層に対応した文字列が表示される。また「しおり(文字列)」の欄の右側には、各階層の文字列に共通する特徴として、共通位置条件、共通キーワード、共通数値情報および属性情報のそれぞれが階層構造に対応して表示されている。またしおりプレビュー欄52には、しおり候補として抽出された文字列が階層構造で表示される。さらに、文書プレビュー欄53には、しおり候補として抽出された文字列が矩形枠などで装飾表示され、しおり候補として抽出された部分を確認し易い表示態様となっている。
ここで、しおりフォーマット表示欄51およびしおりプレビュー欄52に表示されるしおり候補として抽出された文字列は、文書データ40に対してリンク形成が行われている。そのため、しおりフォーマット表示欄51およびしおりプレビュー欄52に表示される各文字列と、文書プレビュー欄53に表示されるプレビュー画像に含まれる各文字列とが相互に対応付けたリンク状態として表示され、例えば抽出された複数の文字列のうちのひとつがユーザによって選択されると、その選択された文字列に対応する画像領域が文書プレビュー欄53の所定の表示位置(例えば、左上端)に表示されるようになる。
以下に、フォーマット39の修正操作について説明する。例えばユーザが図7の画面が表示されている状態でしおり候補として抽出された文字列を確認した結果、所望のしおり抽出結果となっていない場合、マウス21などを操作することによってしおりフォーマット表示欄51に表示されている各種情報を修正することにより、しおりとしての文字列を修正することができる。
図8は、ユーザが図7の表示画面に対して修正操作を行うことによって第3階層の文字列をしおり候補から除外した状態の画面を示す図である。例えば図8に示すように、ユーザはマウス21を操作することにより、マウスポインタ54をしおりフォーマット表示欄51の左端に表示されている第3階層のチェックボタンに移動させ、第3階層のチェックボタンをクリック操作して第3階層として抽出された全ての文字列をしおり候補から外すことにより、図7の画面から図8の画面に切り替わる。つまり、この操作により、フォーマット39に含まれる第3階層の各種情報が削除され、フォーマット39が第1階層と第2階層から成るフォーマットに修正される。そして、その修正されたフォーマット39に基づいてしおり候補となる文字列の再抽出が行われ、図8の画面では、その再抽出の結果が反映された画面となっている。
図8に示すように、しおりプレビュー欄52には、しおり候補として再抽出された文字列が階層構造で表示される。つまり、この例では、第3階層に対応していた文字列が削除された状態となっている。また文書プレビュー欄53には、しおり候補として抽出された文字列が矩形枠で装飾表示されるが、図7の画面と比較すると、小項目(第3階層)に対応する文字列の矩形枠が消えている。
次に、図9は、ユーザが図7の表示画面に対して修正操作を行うことによって第3階層の共通キーワードを第3階層の共通した特徴から除外した状態の画面を示す図である。例えば図9に示すように、ユーザがマウス21を操作することにより、マウスポインタ54を第3階層の共通キーワードに対応するチェックボタンに移動させ、そのチェックボタンをクリック操作して第3階層の共通キーワードを第3階層の共通した特徴から外すことにより、表示装置20における画面は、図7の画面から図9の画面に切り替わる。図例では、第3階層の共通キーワードとして、「小」という文字が共通した特徴となっており、上記操作により、第3階層の共通キーワードの設定が解除されることになる。この操作により、フォーマット39に含まれる第3階層の共通キーワードがフォーマット39から削除され、フォーマットの修正が行われる。そして、その修正されたフォーマット39に基づいてしおり候補となる文字列の再抽出が行われ、図9の画面では、その再抽出の結果が反映された画面となっている。
図9に示すように、しおりプレビュー欄52には、「小」の文字を含まない小項目「1.1.4.Small theme」が新たにしおり候補として追加された状態となっている。また文書プレビュー欄53には、しおり候補として追加された小項目の文字列が矩形枠で装飾表示されている。
次に、図10は、ユーザが図7の表示画面に対して修正操作を行うことによって第2階層の共通位置条件を修正した状態の画面を示す図である。例えば図10に示すように、ユーザはマウス21を操作することにより、マウスポインタ54を文書プレビュー欄53の第2階層(中項目)に対応する矩形枠に移動させ、その矩形枠の右端部をドラッグして移動させることにより、第2階層の共通位置条件を修正することができる。ただし、共通位置条件に対する修正操作は必ずしもこれに限られず、例えばしおりフォーマット表示欄51に表示される文書の基準位置からの距離の値(距離表示欄51aの値)をテンキーで入力し、修正することによって行うこともできる。尚、図例の場合、第2階層の共通位置条件は、矩形枠の右端部の位置が図7における位置よりも左側に移動しており、中項目に対応する文字列の存在する領域が狭くなるように修正されている。上記のような操作が行われると、フォーマット39の第2階層における共通位置条件が修正され、フォーマットの修正が行われる。そして、その修正されたフォーマット39に基づいてしおり候補となる文字列の再抽出が行われ、図10の画面では、その再抽出の結果が反映された画面となっている。
図10に示すように、しおりプレビュー欄52は、当初第3階層のしおり候補に含まれていた中項目「1.3.中ABCDEF…」がしおり候補から削除された状態となっている。また文書プレビュー欄53においても、中項目「1.3.中ABCDEF…」がしおり候補から除外された状態となっている。
このように本実施形態では、しおり候補として抽出された文字列がユーザの所望する抽出結果になっていない場合、表示装置20に表示されるフォーマット39に対してユーザが修正操作を行うことにより、画像処理装置1がその修正されたフォーマット39に基づいてしおり候補となる文字列の再抽出を行うように構成されている。ここでユーザが行う修正操作は、しおり候補として抽出された各階層の文字列に共通する特徴(例えば、共通位置条件、共通キーワード、共通数値情報又は属性情報)を修正する操作であるので、操作が簡単である上、効率的に修正操作を行えるという利点がある。
次に、画像処理装置1における動作について説明する。図11乃至図14は、画像処理装置1における動作の一例を示すフローチャートである。尚、これらフローチャートに基づく処理は、主として画像処理装置1の制御部30によって実行される。また図15乃至図19は、画像処理装置1における操作パネル17の表示部15に表示される表示画面の一例を示す図である。
図11に示すように、画像処理装置1は、初期状態においてユーザがログインするのを待機する状態となっている(ステップS10)。図15は、このとき操作パネル17の表示部15に表示される表示画面を示している。図15に示すように、ログイン待機状態では、表示部15にID入力欄61と、パスワード入力欄62とが表示されている。ユーザは、例えば操作パネル17の操作キー16を操作することにより、これら入力欄に必要な情報を入力し、OKキー63を操作すると、画像処理装置1はユーザ認証を行う。そしてユーザ認証に成功すると、ユーザが特定されるので、画像処理装置1はユーザログイン状態となる(ステップS10でYES)。尚、図15に示すキャンセルキー64は、ID入力欄61又はパスワード入力欄62に入力した情報をキャンセルための操作キーである。
画像処理装置1がログイン状態に移行すると(ステップS10でYES)、ユーザは自身に対して予め設定された機能が使用できるようになる。そして画像処理装置1は、操作パネル17に対するユーザの操作を受け付ける(ステップS11)。
ここでユーザがスキャン機能を選択して原稿スキャンを指示した場合(ステップS12でYES)、画像処理装置1は、スキャナ部13を動作させて原稿の読み取りを行う(ステップS13)。そして、ユーザによってしおり抽出の指定が行われたか否かを判断し(ステップS14)、しおり抽出指定がある場合(ステップS14でYES)、しおり処理を実行する(ステップS15)。このしおり処理では、文書データ40に、しおりデータが付加される。一方、しおり抽出指定がない場合(ステップS14でNO)、しおり処理は行わない。そして原稿から読み取った文書データを出力して処理を終了する(ステップS16)。尚、しおり処理の詳細については後述する。
図16は、ユーザがスキャン機能を選択した場合の表示画面の一例を示している。例えばユーザがスキャンキー65を選択操作した後、さらにファイルキー67を操作すると、図16に示すような画面が表示される。この画面では、原稿から読み取った画像データをPDF、JPEGおよびTIFFのうちのいずれのファイル形式で出力するかを選択するようになっており、図例ではPDFキー68が選択された状態となっている。そしてユーザがOKキー69を操作することにより、出力ファイル形式が確定する。本実施形態では、例えばユーザがPDFキー68を選択した場合に、しおり抽出キー70が操作できるようになる。そしてユーザがしおり抽出キー70を操作することにより、画像処理装置1に対するしおり抽出指定が行われる。
図11に戻り、ユーザログイン後、ユーザがBOX機能を選択してBOX操作を指示した場合(ステップS12でNO、且つ、ステップS17でYES)、画像処理装置1は、ユーザによって指定されたBOX(記憶領域38)から文書データ40を読み込む(ステップS18)。そして、ユーザによってしおり抽出の指定が行われたか否かを判断し(ステップS19)、しおり抽出指定がある場合(ステップS19でYES)、しおり処理を実行する(ステップS20)。一方、しおり抽出指定がない場合(ステップS19でNO)、しおり処理は行わない。そしてBOX(記憶領域38)から読み出した文書データを出力して処理を終了する(ステップS21)。尚、この場合のしおり処理(ステップS20)は、ステップS15と同様であり、その詳細については後述する。
図17は、ユーザがBOX機能を選択した場合の表示画面の一例を示している。例えばユーザがBOXキー66を選択操作した後、さらにファイルキー67を操作すると、図17に示すような画面が表示される。この画面では、ユーザによって選択されたBOXに保存されている文書データの一覧表示が行われ、ユーザは所望する文書データ40を選択することができる。図例では、「Report07.pdf」というファイル名の文書データが選択された状態となっている。そしてユーザがOKキー74を操作することにより、BOXから読み出す文書データが確定する。本実施形態では、例えばユーザがPDFファイルを選択した場合に、しおり抽出キー70が操作できるようになる。そしてユーザがしおり抽出キー70を操作することにより、画像処理装置1に対するしおり抽出指定が行われる。
尚、ユーザログイン後、ユーザが、上記以外の処理を指示した場合(ステップS12でNO、且つ、ステップS17でNO)、画像処理装置1は、その他の処理(例えばコピー機能など)を行って処理を終了する(ステップS22)。
次に、図12は、しおり処理(ステップS15,S20)の詳細な処理手順の一例を示すフローチャートである。画像処理装置1は、しおり処理(ステップS15,S20)を開始すると、しおり抽出対象の文書データを取得する(ステップS100)。例えば原稿スキャン後にしおり抽出を行う場合は画像メモリ35から文書データ40を取得し、BOX操作によってしおり抽出を行う場合はユーザによって指定された記憶領域38から文書データ40を取得する。
そして画像処理装置1は、取得した文書データ40に対する文字認識処理が必要であるか否かを判断する(ステップS101)。ここでは、文書データ40が、文書に含まれる文字を文字コードによって表現しているテキスト化されたデータであるか否かに基づいて判断され、テキスト化されていないデータである場合に文字認識処理が必要と判断される。その結果、文字認識処理が必要な場合(ステップS101でYES)、画像処理装置1は、文字認識処理を実行して文書データ40に含まれる文字を1文字ずつ文字コードで表すことにより文書データ40をテキスト化する(ステップS102)。これに対し、文字認識処理が必要でない場合(ステップS101でNO)、文字認識処理は行わない。
続いて画像処理装置1は、テキスト化された文書データ40に基づいてその文書に含まれる全ての文字列の切り出しを行う(ステップS103)。これにより、文書データ40に含まれる全ての文字列が抽出されると共に、その文書における各文字列の大きさや位置などが特定される。
そして画像処理装置1は、ログインユーザに関連付けられたフォーマット39、或いは、文書データ40の属性に関連付けられたフォーマット39が記憶装置36に記憶されているか否かをフォーマット管理テーブル39aに基づいて判断する(ステップS104)。フォーマット管理テーブル39aにログインユーザに関連付けられたフォーマット、或いは、文書データ40の属性に関連付けられたフォーマットが記録されている場合(ステップS104でYES)、画像処理装置1は、その関連付けられたフォーマット39を記憶装置36から読み出し、フォーマット39の設定を行う(ステップS105)。これに対し、関連付けられたフォーマット39が存在しない場合には、フォーマット39の設定は行わない。そして画像処理装置1は、操作パネル17の表示部15に対し、しおり抽出に関する設定画面を表示し、ユーザによるフォーマットの設定操作を受け付ける(ステップS106)。
図18は、スキャン機能においてユーザがしおり抽出指定を行った場合の設定画面の一例を示している。この画面では、図18(a),(b)に示すように、しおり抽出方法の指定欄71と、フォーマットの設定欄72とが表示される。ここで図18(a)はしおり抽出方法としてオートマチックが選択された状態を示している。オートマチックとは、上述した第1の方法によってしおり候補となる文字列を抽出することを指定するものである。例えば、画像処理装置1の記憶装置36にログインユーザ「A」に関連づけされたフォーマット39が記憶されていない場合、このオートマチックがデフォルト値として設定された状態となり、表示部15に表示される。そしてユーザがOKキー73を操作すると、第1の方法による文字列抽出が指定される。
一方、図18(b)はしおり抽出方法として上述した第2の方法であるフォーマットを適用したしおり抽出方法が選択された状態を示している。また適用するフォーマット39としてユーザ「A」に関連付けされた「Format_A」が設定された状態を示している。例えば、画像処理装置1の記憶装置36に記憶されている複数のフォーマット39のうち、ログインユーザ「A」に関連づけされたフォーマット39として、「Format_A」が記憶されている場合、画像処理装置1は、しおり抽出方法として「フォーマット」をデフォルト値として設定し、さらにフォーマット設定として「Format_A」をデフォルト値として設定する。そしてユーザがOKキー73を操作すると、「Format_A」に対応するフォーマット39を適用して上述した第2の方法による文字列抽出が指定される。尚、ユーザが、文字列抽出時に適用するフォーマットを変更したい場合には、フォーマットの設定欄72の右端に設けられたプルダウンボタン72aを押すと、記憶装置36に記憶された全てのフォーマット39がプルダウン表示され、その中から所望のフォーマット39を選択することができる。また、しおり抽出方法を「オートマチック」に変更した場合には、しおり抽出方法の指定欄71の右端に設けられたプルダウンボタンを押すと、オートマチックの選択項目がプルダウン表示されるので、その選択項目を選択することにより、変更することが可能である。
また図19は、BOX機能においてユーザがしおり抽出指定を行った場合の設定画面の一例を示している。スキャン機能の場合と同様に、この画面でも、図19(a),(b)に示すように、しおり抽出方法の指定欄71と、フォーマットの設定欄72とが表示される。ここで図19(a)はしおり抽出方法としてオートマチックが選択された状態を示している。例えば、画像処理装置1の記憶装置36にログインユーザ「A」に関連づけされたフォーマット39が記憶されておらず、且つ、画像処理装置1の記憶装置36に文書データの属性のひとつであるファイル名「Report07.pdf」に関連づけされたフォーマット39が記憶されていない場合、このオートマチックがデフォルト値として設定された状態になる。そしてユーザがOKキー73を操作すると、第1の方法による文字列抽出が指定される。
一方、図19(b)はしおり抽出方法として上述した第2の方法であるフォーマットを適用したしおり抽出方法が選択された状態を示している。また適用するフォーマット39として文書データの属性のひとつであるファイル名「Report07.pdf」に関連付けされた「Format_Report」が設定された状態を示している。例えば、しおり抽出対象として選択された文書データ40のファイル名に「Report」が含まれる場合、画像処理装置1の記憶装置36に記憶されている複数のフォーマット39のうちからその「Report」を含むファイル名に関連付けされたフォーマット39として「Format_Report」がデフォルト値として設定される。そしてユーザがOKキー73を操作すると、「Format_Report」に対応するフォーマット39を適用して上述した第2の方法による文字列抽出が指定される。尚、ユーザが適用するフォーマットを変更したい場合、或いは、しおり抽出方法を「オートマチック」に変更した場合には、上記と同様に、この画面に対する変更操作を行うことによって変更することが可能である。
上記のようにしてユーザが文字列抽出方法を指定すると、次に画像処理装置1は文字列抽出処理を実行する(ステップS107)。図13は、この文字列抽出処理の詳細な処理手順の一例を示すフローチャートである。画像処理装置1は、しおり抽出方法を判定し、フォーマットの設定が行われているか否かを判断する(ステップS200)。ここでフォーマットの設定が行われていない場合は(ステップS200でNO)、ステップS201に進む。これに対し、フォーマットの設定が行われている場合は(ステップS200でYES)、ステップS221に進む。
ステップS201〜S210は、上述した第1の方法による文字列抽出処理である。まず、この第1の方法による文字列抽出処理について説明する。画像処理装置1は、取得した文書データ40に対して所定の文字列抽出条件に基づいてしおり候補となる文字列を全て抽出する(ステップS201)。ここでは、プログラム37に予め設定された文字列抽出条件に適合する文字列が全て抽出される。
そして画像処理装置1は、ステップS201で抽出した各しおり候補文字列の位置に基づいてしおり候補文字列をグループ化する(ステップS202)。ここでは、しおり候補として抽出された各文字列が文書中において存在している位置が特定される。そして複数の文字列が互いに共通する位置に存在していれば、それらが一つのグループに纏められる。
次に画像処理装置1は、ステップS201で抽出した各しおり候補文字列からキーワードとなる文字列を抽出し、その抽出したキーワードに基づいてしおり候補文字列をグループ化する(ステップS203)。ここでは、例えば予め設定された「章」や「節」などのキーワードを抽出するようにしても良い。また、しおり候補文字列に含まれる1文字以上の文字列を自動抽出し、その抽出した文字列がキーワードとなり得るか否かを評価し、その評価値が所定値以上となるものをキーワードとして抽出するようにしても良い。そして各しおり候補文字列からキーワードを抽出した後、互いに共通するキーワードで各しおり候補文字列をグループ化する。
次に画像処理装置1は、ステップS201で抽出した各しおり候補文字列に含まれる数値情報を抽出し、その数値情報に基づいてしおり候補文字列をグループ化する(ステップS204)。ここでは、例えば各しおり候補文字列の先頭数文字が数値情報抽出対象となり、その数値情報抽出対象から数値情報が抽出される。そして抽出した数値情報において、数字と数字の間にドットなどが存在する場合、そのドットの数が互いに共通するもの同士で各しおり候補文字列をグループ化する。
次に画像処理装置1は、ステップS201で抽出した各しおり候補文字列の属性に基づいてしおり候補文字列をグループ化する(ステップS205)。ここでは、各しおり候補文字列のフォントなどの属性が判断され、互いに共通する属性同士で各しおり候補文字列をグループ化する。
上記ステップS202〜S205により、ステップS201で抽出した各しおり候補文字列から4つの特徴のそれぞれについてグループ群が生成される。画像処理装置1は、それら4つの特徴のうち、グループ化した少なくとも1つの特徴に基づいてしおり候補文字列を階層構造化する(ステップS206)。例えば、位置に関する特徴によってグループ化されたしおり候補文字列は、グループ毎にインデント量が異なるため、そのインデント量に応じて複数のグループを階層構造化する。そして、しおり候補文字列をその階層構造に対応付けることにより、しおり候補文字列を階層構造化する。
そして画像処理装置1は、グループ化した各特徴を階層構造に対応付けることにより、4つの特徴のそれぞれから生成される複数のグループを階層構造化する(ステップS207)。
そして画像処理装置1は、階層構造化した各グループの特徴をデータ化したフォーマット39を生成する(ステップS209)。このとき、フォーマット生成部46は、階層構造に対応付けた各グループで共通した特徴に基づいて、各階層毎に、上述した共通位置条件情報、共通キーワード情報、共通数値情報および共通属性情報のそれぞれを生成し、フォーマット39を生成する。
そして最後に、しおり候補として抽出した文字列を文書データにリンク形成する(ステップS210)。このリンク形成では、しおり候補となる各文字列に対し、その文字列が文書データのどの位置に存在しているかを示す位置情報が付加される。
次にステップS221〜S228は、上述した第2の方法による文字列抽出処理である。この第2の方法による文字列抽出処理について説明する。画像処理装置1は、設定されたフォーマット39を記憶装置36から読み出す(ステップS221)。そしてその読み出したフォーマット39の共通位置条件に基づいて文字列を抽出する(ステップS222)。ここでは、文書データ40からフォーマット39の階層ごとに設定された各共通位置条件情報に適合する全ての文字列が抽出される。
そして次に、画像処理装置1は、フォーマット39の共通キーワードに基づいて文字列を抽出する(ステップS223)。ここでは、文書データ40からフォーマット39の階層ごとに設定された各共通キーワード情報に適合する全ての文字列が抽出される。
次に画像処理装置1は、フォーマット39の共通数値情報に基づいて文字列を抽出する(ステップS224)。ここでは、文書データ40からフォーマット39の階層ごとに設定された各共通数値情報に適合する全ての文字列が抽出される。
さらに画像処理装置1は、フォーマット39の共通属性に基づいて文字列を抽出する(ステップS225)。ここでは、文書データ40からフォーマット39の階層ごとに設定された各共通属性情報に適合する全ての文字列が抽出される。
上記ステップS222〜S225により、ステップS221で読み出したフォーマット39に設定された、共通位置条件情報、共通キーワード情報、共通数値情報、および、共通属性情報の少なくとも1つに適合する文字列が全て抽出される。画像処理装置1は、それら抽出した文字列の中から、さらにしおり候補としての絞り込みを行うため、フォーマット39に規定される全ての特徴を有する文字列をしおり候補として抽出する(ステップS226)。つまり、ここでは、ステップS221で読み出したフォーマット39に設定されている共通位置条件情報、共通キーワード情報、共通数値情報、および、共通属性情報の全てに適合する文字列のみが階層毎に抽出される。そしてここで抽出された文字列のみがしおり候補となる。
そして画像処理装置1は、しおり候補として抽出した文字列のそれぞれを、フォーマット39の階層構造に対応付ける(ステップS227)。これにより、しおり候補として抽出された文字列の階層構造化が行われる。そして画像処理装置1は、最後に、しおり候補として抽出した文字列を文書データにリンク形成する(ステップS228)。尚、リンク形成は、ステップS210と同様である。
図12に戻り、文字列抽出処理(ステップS107)によってしおり候補となる文字列が抽出されると、画像処理装置1は、文字列抽出結果を表示装置20に表示する(ステップS108)。このとき、表示装置20には例えば図7に示した画面が表示され、しおりフォーマット表示欄51には文字列抽出処理に対応したフォーマット39の内容が表示される。つまり、第1の方法による文字列抽出が行われた場合には、図13のステップS209で生成されるフォーマット39の内容が表示され、第2の方法による文字列抽出が行われた場合には、図13のステップS221で読み出されたフォーマット39の内容が表示される。
ユーザは、文字列抽出結果の表示を確認し、所望の文字列抽出結果となっていない場合には、マウス21などを操作することにより、フォーマット39を修正するための編集操作を行う。これに対し、所望の文字列抽出結果となっていれば、ユーザは、フォーマット39の編集操作は行わない。
画像処理装置1は、文字列抽出結果を表示した後、ユーザがフォーマット39の編集操作を行ったか否かを判断する(ステップS109)。そして編集操作が行われた場合(ステップS109でYES)、画像処理装置1はフォーマット編集処理を実行する(ステップS110)。
図14は、フォーマット編集処理(ステップS110)の詳細な処理手順の一例を示すフローチャートである。画像処理装置1は、まず、ユーザによって行われた編集操作を解析する(ステップS300)。
編集操作がフォーマット39の共通位置条件を修正する編集であった場合(ステップS301でYES)、ユーザの操作内容に基づいてフォーマット39の共通位置条件情報を修正する(ステップS302)。一方、編集操作がフォーマット39の共通位置条件を修正する編集でなかった場合(ステップS301でNO)、ステップS302はスキップする。
また編集操作がフォーマット39の共通キーワードを修正する編集であった場合(ステップS303でYES)、ユーザの操作内容に基づいてフォーマット39の共通キーワード情報を修正する(ステップS304)。一方、編集操作がフォーマット39の共通キーワードを修正する編集でなかった場合(ステップS303でNO)、ステップS304はスキップする。
また編集操作がフォーマット39の共通数値情報を修正する編集であった場合(ステップS305でYES)、ユーザの操作内容に基づいてフォーマット39の共通数値情報を修正する(ステップS306)。一方、編集操作がフォーマット39の共通数値情報を修正する編集でなかった場合(ステップS305でNO)、ステップS306はスキップする。
さらに編集操作がフォーマット39の共通属性を修正する編集であった場合(ステップS307でYES)、ユーザの操作内容に基づいてフォーマット39の共通属性情報を修正する(ステップS308)。一方、編集操作がフォーマット39の共通属性を修正する編集でなかった場合(ステップS307でNO)、ステップS308はスキップする。
そして画像処理装置1は、上記のようにしてユーザの編集操作に基づきフォーマット39を修正した後、その修正したフォーマット39を次回の文字列抽出処理に適用させるべく、フォーマットの設定を行う(ステップS309)。
そして図12に示すように、文字列抽出処理(ステップS107)に戻り、修正されたフォーマット39に基づいて再度しおり候補となる文字列の抽出処理が行われる。この場合の文字列抽出処理(ステップS107)では、図13のステップS221〜S228に示した第2の方法による文字列抽出処理が行われる。そして文字列の再抽出が行われると、表示装置20の表示画面が更新される(ステップS108)。
そしてユーザがフォーマット39の編集操作を行わなかった場合(ステップS109でNO)、画像処理装置1は、文字列抽出処理(ステップS107)で抽出した文字列に基づいて階層構造のしおりデータを生成し、そのしおりデータを文書データ40に付加する(ステップS111)。これにより、文書データ40を利用する際には、しおりデータを参照することができるようになるので、文書データ利用時の利便性が向上する。
そして画像処理装置1は、最終的に確定したフォーマット39を、記憶装置36に保存する(ステップS112)。このとき、画像処理装置1は、フォーマット管理テーブル39aに対し、ログインユーザとフォーマット39とを関連付けた情報と、文書データ40の属性とフォーマット39とを関連付けた情報とを登録する。
以上のように、本実施形態では画像処理装置1が文書処理装置として機能することにより、しおり抽出対象となる文書データ40から、見出しなどの文字列がしおり候補として抽出される。このとき、画像処理装置1は、しおり候補として抽出された各文字列が有する共通の特徴を抽出し、該共通の特徴をデータ化したフォーマットを生成する。そしてしおり候補として抽出された文字列を表示装置20に一覧表示すると共に、データ化したフォーマットを表示し、ユーザによるフォーマット39の修正操作を受け付ける。そして画像処理装置1は、ユーザの修正操作に基づいてフォーマット39の修正を行い、修正後のフォーマット39に適合するように文字列の再抽出を行うように構成されている。
そのため、ユーザが意図しない文字列がしおり候補として抽出された場合であっても、ユーザは表示装置20に表示されたフォーマット39の内容を見ながら、各階層の共通位置条件、共通キーワード、共通数値情報または共通属性を修正する操作を行えば、その修正に基づいてしおり候補となる文字列の再抽出が行われ、表示装置20における文字列抽出結果の表示が更新される。それ故、文字列抽出結果を修正するためのユーザによる操作は従来よりも簡単なものになり、効率良くユーザの意図する文字列をしおりとして抽出することが可能になる。
また本実施形態では、文字列抽出処理に伴って生成されるフォーマット39が記憶装置36に保存されるため、例えばユーザが異なる文書を選択してしおり抽出を繰り返し行う場合には、前回使用したフォーマット39を設定して第2の方法による文字列抽出処理を行うことにより、ユーザによる修正操作の回数を減少させることができるようになる。
以上、本発明に関する一実施形態について説明したが、本発明は上述した内容のものに限定されるものではなく、上述した他にも本発明には種々の変形例が適用可能である。
例えば、上述した本実施形態は、第1の方法によって抽出されたしおり候補文字列において、互いに共通している特徴を抽出することにより、フォーマット39を生成し、それ以降は、そのフォーマット39を用いて第2の方法によるしおり候補文字列の抽出を可能にすることを特徴としている。言い換えると、第1の方法では、文書データ40からしおり候補文字列を抽出することができればよい。そのため、第1の方法は、必ずしも上述した方法に限られない。
例えば、上述した画像処理装置1は、操作パネル17とは別に、文字列抽出結果などを表示するための表示装置20を備えている。これは、操作パネル17に設けられる表示部15の表示解像度が低く、文書データに基づく文書プレビュー画像や、フォーマット39の詳細な内容などを表示するのに適さないと考えられるためであるが、操作パネル17の表示部15が十分な表示解像度を備えている場合には、表示装置20を設けることなく、表示部15に対して文書データに基づく文書プレビュー画像や、フォーマット39の詳細な内容などを表示するように構成しても良い。
また上述した実施形態では、しおり候補として抽出された文字列から共通した特徴を抽出する際、一例として、共通位置条件、共通キーワード、共通数値情報および共通属性のそれぞれに関する特徴を抽出することを例示したが、これら以外の特徴を抽出するものであっても構わない。
また上述した実施形態では、主として画像処理装置1が文書処理装置として機能する場合を例示したが、コンピュータ3を文書処理装置として機能させる場合には、上述した図12のフローチャートに基づく処理を実行させるためのプログラム37がコンピュータ3にインストールされ、コンピュータ3において図12に基づく処理手順が実行されるように構成すれば良い。