以下の実施の形態では、同一の部品には同一の参照番号を付してある。それらの機能及び名称も同一である。したがって、それらについての詳細な説明は繰返さない。
(第1の実施の形態)
図1を参照して、本実施の形態に係る画像処理装置100は、例えば、コピーモード、スキャナモード、及びスキャン送信モード等の複数の動作モードを備える複合機(MFP)である。この画像処理装置100は、レーザー光を露光に利用する、所謂レーザー方式(電子写真方式)の印刷機能を備える。しかし、他の形式の印刷機能を備えたものであってもよい。
画像処理装置100は、原稿の画像を原稿画像データとして読取る画像読取機能を持つ。コピーモードでは、画像処理装置100は、読取った原稿画像データに基づいて記録用紙に多色又は単色の画像を形成する。スキャナモードでは、画像処理装置100は、読取った原稿画像データをファイルとして内部の記憶装置に記憶させる。スキャン送信モードでは、画像処理装置100は、読取った原稿画像データをファイルとして情報処理装置等の外部機器(図示せず。)に送信する。ファイルとして記憶される原稿画像データ、又はファイルとして送信される原稿画像データには、ファイル名が付される。原稿画像データに付される(設定される)ファイル名は、画像処理装置100によって自動で生成される。
画像処理装置100はさらに、読取った原稿画像データに対してOCRによる文字認識処理(以下「OCR処理」と呼ぶ場合がある。)を実行するOCR機能を持つ。画像処理装置100は、OCR処理により得られた情報(文字群)からファイル名の候補となる文字列を認識し、認識した文字列に基づいてファイル名を自動で生成する。
本実施の形態では、画像処理装置100は、上記OCR機能により、原稿画像データのうち、原稿画像の一部の領域に対応する画像データに対してOCR処理を実行する。OCR処理により得られた情報からファイル名の候補となる文字列が認識されると、画像処理装置100は、認識された文字列に基づいてファイル名を生成する。ファイル名の候補となる文字列が認識されなかった場合、画像処理装置100は、当該原稿画像の他の一部の領域に対応する画像データに対してOCR処理を実行する。
画像処理装置100は、1枚(1枚目)の原稿からファイル名の候補となる文字列が認識(抽出)されるまで、上記OCR処理を繰返す。複数枚の原稿の画像が読取られた場合、1枚目の原稿の画像データに対してOCR処理が行なわれる。ただし、1枚目の原稿が白紙の原稿の場合、OCR処理は行なわれない。この場合、画像読取り時の日時と画像処理装置100の固有情報(例えば機種名等)とを組合わせたファイル名が自動で生成される。本実施の形態では、1枚の原稿からファイル名の候補となる文字列が認識されなかった場合も、1枚目の原稿が白紙の原稿の場合と同様、画像読取り時の日時と画像処理装置100の固有情報(例えば機種名等)とを組合わせたファイル名が自動で生成される。なお、ファイル名の生成処理の詳細については後述する。
[ハードウェア構成]
画像処理装置100は、制御部110、操作ユニット120、原稿読取部130、画像処理部140、画像形成部150、給紙部160、及びNIC(Network Interface Card)170を含む。
制御部110は、実質的にコンピュータであって、画像処理装置100全体を制御するCPU(Central Processing Unit)112、プログラム等を記憶するためのROM(Read−Only Memory)114、揮発性の記憶装置であるRAM(Random Access Memory)116、及び記憶装置118を含む。記憶装置118は、通電が遮断された場合にもデータを保持する不揮発性記憶装置であり、例えばハードディスクドライブ(HDD)又はフラッシュメモリ等である。CPU112には、BUSライン180が接続されており、このBUSライン180には、ROM114、RAM116及び記憶装置118が電気的に接続される。
CPU112は、操作ユニット120等からの指示に応じて各種コンピュータプログラムを実行することによって、画像処理装置100の各部の動作及びパーソナルコンピュータ(PC)等の外部機器との通信等の所望の処理を実行する。上記の各種コンピュータプログラムは、予めROM114又は記憶装置118に記憶されており、所望の処理の実行時において、当該ROM114又は記憶装置118から読出されてRAM116に転送される。CPU112は、CPU112内の図示しないプログラムカウンタと呼ばれるレジスタに格納された値によって指定される、RAM116内のアドレスからプログラムの命令を読出し、解釈する。CPU112はまた、読出された命令によって指定されるアドレスから演算に必要なデータを読出し、そのデータに対し命令に対応する演算を実行する。実行の結果も、RAM116、記憶装置118及びCPU112内のレジスタ等の、命令によって指定されるアドレスに格納される。
ROM114又は記憶装置118には、画像処理装置100の一般的な動作等を実現するためのコンピュータプログラムとともに、読取った原稿画像データに対してOCR処理を行ない、当該原稿画像データのファイル名を生成する処理を実現するためのコンピュータプログラムが記憶される。このコンピュータプログラムは、画像処理装置100の製造時にROM114又は記憶装置118に書込まれる。なお、このコンピュータプログラムは、NIC170を介して、外部機器等から提供されてもよい。さらにこのコンピュータプログラムは、そのコンピュータプログラムが記録された、例えばDVD等の記憶媒体によって提供されてもよい。すなわち、例えばコンピュータプログラムの記録媒体としてのDVDが、画像処理装置100内に内蔵されるDVDドライブ(図示せず。)に装着され、そのDVDからコンピュータプログラムが読出されて記憶装置118にインストールされてもよい。記憶装置118は、他に、原稿読取部130で読取った原稿画像データ等の各種データを記憶する。
BUSライン180には、さらに、操作ユニット120、原稿読取部130、画像処理部140、画像形成部150、給紙部160、及びNIC170が電気的に接続される。
操作ユニット120はユーザによる操作を受付ける。操作ユニット120は、入出力インターフェイス(図示せず。)を介して、CPU112と通信を行なう。この操作ユニット120は、操作パネル122を含む。操作パネル122は、液晶パネル等で構成された表示パネルと、表示パネルの上に配置され、タッチされた位置を検出するタッチパネルとを含む。表示パネルは、画像処理装置100の状態及び各種処理の状態に関する情報等の各種情報をユーザに提供する。この操作パネル122は、ユーザに対して対話的な操作インターフェイス(UI)を提供する。この対話的な操作インターフェイスは、タッチパネルから画像処理装置100全体の動作に対するユーザの指示を受付け、その指示の内容を表示パネルに表示するとともに、その指示に応じた制御信号を制御部110等に対して出力する。
原稿読取部130は、光源を含む原稿走査ユニット、反射ミラー、光学レンズ及びCCD(Charge−Coupled Device)ラインセンサ(以上いずれも図示せず。)を含む。原稿走査ユニットは、原稿載置台(図示せず。)上に載置された原稿の画像表面に対し光源から光を照射することによって反射光像を得る。反射ミラー及び光学レンズは、得られる反射光像をCCDラインセンサ上に結像させる。CCDラインセンサは、結像した反射光像を順次光電変換して画像データとして画像処理部140に対して出力する。すなわち、原稿読取部130は、原稿のコピー時又はスキャン時に、原稿載置台に載置される原稿から画像情報を読取り、読取った画像情報を電気信号に変換して原稿画像データとして画像処理部140に対して出力する。
画像処理部140は、MPU(Micro Processing Unit、図示せず。)を含む。画像処理部140は、原稿読取部130、又は、外部機器等から受信した画像データに対して、例えば、ラスタライズ処理等の各種処理を施して所定の階調の印刷データを作成する。印刷処理時には、画像処理部140は、作成した印刷データを画像形成部150に対して出力する。
画像形成部150は、画像データによって示される画像をカラー又は単色で記録用紙に印刷するものであって、例えば、感光体ドラム、帯電装置、レーザースキャンユニット(LSU)、現像装置、転写装置、クリーニング装置、定着装置、及び除電装置等を備えている。画像形成部150には、例えば、搬送路が設けられており、給紙部160から給紙されてきた記録用紙が搬送路に沿って搬送される。
給紙部160は、記録用紙を収納する給紙トレイ(図示せず。)を含む。給紙部160は、給紙トレイに収納された記録用紙を1枚ずつ引出して記録用紙を画像形成部150の搬送路へと送り出す。画像形成部150の搬送路に沿って記録用紙が搬送されている途中で、記録用紙が感光体ドラムと転写装置との間を通過し、さらに定着装置を通過して、記録用紙に対する印刷が行なわれる。
感光体ドラムは、一方向に回転し、その表面は、クリーニング装置と除電装置によりクリーニングされた後、帯電装置により均一に帯電される。レーザースキャンユニットは、印刷対象の画像データに基づいてレーザー光を変調し、このレーザー光によって感光体ドラムの表面を主走査方向に繰返し走査して、静電潜像を感光体ドラムの表面に形成する。現像装置は、トナーを感光体ドラムの表面に供給して静電潜像を現像し、トナー像を感光体ドラムの表面に形成する。転写装置は、転写装置と感光体ドラムとの間を通過していく記録用紙に感光体ドラムの表面のトナー像を転写する。
定着装置は、記録用紙を加熱するための加熱ローラと、記録用紙を加圧するための加圧ローラとを含む。記録用紙が加熱ローラによって加熱され、且つ、加圧ローラによって加圧されることによって、記録用紙上に転写されたトナー像が記録用紙に定着される。定着装置から排出された(印刷された)記録用紙は排紙トレイに排出される。
NIC170は、ネットワーク50とのインターフェイスをとる。画像処理装置100は、このNIC170を介して、ネットワーク50上の外部機器等と、所定の通信プロトコルにしたがったデータ通信を行なうことができる。画像処理装置100は、NIC170を介して、PC等から印刷ジョブ等の各種処理の実行を命令する命令信号を受信できる。
[ファイル名の自動生成処理]
操作パネル122に表示されるシステム設定画面200(図2参照)において、ファイル名を自動で生成するよう設定されると、スキャナモード、又はスキャン送信モードにおける原稿画像の読取り時(スキャン時)にOCR処理が行なわれる。
図2を参照して、システム設定画面200は、スキャン時にファイル名候補を自動で生成するよう設定する場合にチェックが入れられるチェックボックス210、ファイル名候補が複数ある場合の動作を選択するためのラジオボタン220、及びファイル名候補の精度を高める場合にチェックが入れられるチェックボックス230を含む。チェックボックス210にチェックが入れられていると、原稿画像の読取り時(スキャン時)にOCR処理が実行される。OCR処理は、読取った原稿画像データのうち、原稿画像の一部の領域に対応する画像データを制御部110が読込むことによって、読込んだ画像データに対して行なわれる。OCR処理が行なわれると、当該OCR処理により得られた情報(文字群)からファイル名の候補となる文字列が認識されて抽出される。
具体的には、OCR処理により得られた文字群から所定の空白領域によって挟まれた文字群が一つの文字列として認識される。文字列が横書きの場合は、左右(前後)に所定の空白領域のある文字群が一つの文字列として認識され、文字列が縦書きの場合は、上下(前後)に所定の空白領域のある文字群が一つの文字列として認識される。横書きか縦書きかの判定には、例えば特開2009−98777号公報に記載の技術(文字認識の記述方向の判定技術)を用いることができる。所定の空白領域は、OCR処理により得られた文字群のなかから一つの文字列を認識することが可能な大きさであればよく、例えば1文字以上の大きさの領域であるのが好ましく、3文字以上の大きさの領域であればより好ましい。こうした文字列が認識されると、認識された文字列から一般的な文字列及び予め定められた文字数(以下「一定の文字数」と呼ぶ。)以上の文字列が候補の対象から除外される。一般的な文字列は、日付、部署名、又は「社外秘」等の定型的な文字列を含む。こうした文字列は、予め画像処理装置100に登録されている。一定の文字数以上の文字列とは、例えばファイル名に適用可能な文字数(例えば30文字)を超える文字列である。一般的な文字列及び一定の文字数以上の文字列が認識された文字列から除外されることにより、例えば、原稿の内容を示す件名、表題、又は見出し等の文字列がファイル名の候補として抽出される。
ファイル名の候補は複数抽出されることがあり得る。こうした場合に、自動でファイル名を選択するのか、手動でファイル名を選択するのかがラジオボタン220によって予め設定される。自動でファイル名を選択するよう設定されていると、ファイルの最も先頭側に位置する文字列がファイル名として選択される。手動でファイル名を選択するよう設定されていると、ファイル名とする文字列をユーザに選択させるための後述する選択画面が操作パネル122に表示される。
チェックボックス230にチェックが入れられていると、認識された文字列から一般的な文字列及び一定の文字数以上の文字列が除外されることによってファイル名の候補となる文字列が抽出されない場合、ファイル名候補の精度を高めるために、当該原稿画像の他の一部の領域に対応する画像データに対してOCR処理が行なわれる。チェックボックス230にチェックが入れられていないと、認識された文字列から一般的な文字列及び一定の文字数以上の文字列が除外されることによってファイル名の候補となる文字列が抽出されない場合、除外された文字列がファイル名の候補として抽出(設定)される。
図3を参照して、読取った原稿画像データに対するOCR処理は、まず、原稿画像の先頭の領域250に対応する画像データに対して行なわれる。先頭の領域250は、原稿画像の先頭から例えば10%の領域(原稿画像の大きさ(L1)に対する領域250の大きさ(L2)の割合が10%の領域)である。領域250の大きさは、原稿画像に対して10%以上50%以下であるのが好ましい。先頭の領域250においてファイル名の候補となる文字列が抽出されると、それ以上、OCR処理は行なわれない。なお、領域250の境界線上の文字列は、OCR処理によって認識されない。
図4を参照して、先頭の領域252において文字列が認識されなかった場合(図4(A)参照)、原稿画像の他の一部の領域254に対応する画像データに対してOCR処理が実行される(図4(B)参照)。領域254は、先頭の領域252の次の領域である。この領域254の大きさは、先頭の領域252の大きさと同じである。次の領域254においてファイル名の候補となる文字列が抽出されると、それ以上、OCR処理は行なわれない。一方、次の領域254においても文字列が抽出されない場合は、さらにその次の領域に対応する画像データに対してOCR処理が実行される。このように、原稿画像の先頭から後尾(矢印Y方向)に向かって所定の大きさの領域単位で順に、各領域に対応する画像データに対してOCR処理が実行される。この処理は、上記のように、1枚の原稿からファイル名の候補となる文字列が抽出されるまで繰返される。ただし、上記したOCR処理は、白紙の原稿に対しては実行されない。読取った原稿が白紙の原稿か否かは、原稿画像データのデータサイズに基づいて判定される。
なお、OCR処理を行なう領域の境界線上に文字列が存在する場合、当該OCR処理によって境界線上に文字列が存在することが認識される。この場合、さらにOCR処理が実行されると、次の領域は、前の領域の境界線上の文字列を含むように設定される。例えば、先頭の領域252の境界線上に文字列が存在すると、次の領域254は、先頭の領域252の境界線上の文字列が認識されるように先頭の領域252と一部重複するように設定される。
[ソフトウェア構成]
図5及び図6を参照して、読取った原稿画像データに設定するファイル名を自動で生成する処理を行なうために、画像処理装置100で実行されるコンピュータプログラムの制御構造について説明する。このプログラムは、図2に示されるシステム設定画面200のチェックボックス210にチェックが入れられた状態で、原稿読取部130による原稿画像データの読取処理が開始(スキャン開始)されたことに応じて開始する。
図5を参照して、このプログラムは、読取った原稿画像データのデータサイズに基づいて、1枚目の原稿が白紙か否かを判定し、判定結果に応じて制御の流れを分岐させるステップS1000と、ステップS1000において、1枚目の原稿が白紙ではないと判定された場合に実行され、1枚目の原稿の先頭領域に対応する画像データを読込み、当該画像データに対してOCR処理を実行するステップS1010と、ステップS1010の後に実行され、OCR処理によって文字列が認識されたか否かを判定し、判定結果に応じて制御の流れを分岐させるステップS1020と、ステップS1020において、文字列が認識されたと判定された場合に実行され、認識された文字列から、一般的な文字列及び一定の文字数以上の文字列をファイル名の候補から除外するステップS1030と、ステップS1030の後に実行され、除外した後にファイル名の候補となる文字列があるか否かを判定し、判定結果に応じて制御の流れ分岐させるステップS1040とを含む。
このプログラムはさらに、ステップS1040において、ファイル名の候補があると判定された場合に実行され、ファイル名の候補が複数存在するか否かを判定し、判定結果に応じて制御の流れを分岐させるステップS1050と、ステップS1050において、ファイル名の候補が複数存在すると判定された場合に実行され、システム設定画面200において、「手動でファイル名を選択する」設定がONにされているか(選択されているか)否かを判定し、判定結果に応じて制御の流れを分岐させるステップS1060と、ステップS1060において、「手動でファイル名を選択する」設定がONにされていると判定された場合に実行され、操作パネル122に選択画面を表示して、ユーザによるファイル名の選択操作を受付けるステップS1070と、ステップS1050において、ファイル名の候補が複数存在しないと判定された場合、ステップS1060において、「手動でファイル名を選択する」設定がONにされていない、すなわち「自動でファイル名を選択する」設定がONにされていると判定された場合、又はステップS1070の後に実行され、認識された文字列、又はユーザによって選択された文字列をファイル名に決定するステップS1080とを含む。
図6を参照して、このプログラムはさらに、ステップS1040(図5参照)において、ファイル名の候補がないと判定された場合に実行され、システム設定画面200において、「ファイル名候補の精度を高める」設定がONにされているか否か、すなわち、チェックボックス230にチェックが入れられているか否かを判定し、判定結果に応じて制御の流れを分岐させるステップS1090と、ステップS1090において、「ファイル名候補の精度を高める」設定がONにされていないと判定された場合に実行され、除外した一般的な文字列及び一定の文字数以上の文字列をファイル名の候補に設定するステップS1100と、ステップS1090において、「ファイル名候補の精度を高める」設定がONにされていると判定された場合に実行され、除外した一般的な文字列及び一定の文字数以上の文字列をファイル名のサブ候補に追加するステップS1110と、ステップS1110の後、又はステップS1020(図5参照)において、OCR処理によって文字列が認識されなかったと判定された場合に実行され、1枚目の原稿画像データの読込みが完了したか否か、すなわち1枚目の原稿画像の全領域に対してOCR処理が完了したか否かを判定し、判定結果に応じて制御の流れを分岐させるステップS1120とを含む。
このプログラムはさらに、ステップS1120において、1枚目の原稿画像データの読込みが完了していないと判定された場合に実行され、1枚目の原稿画像の次の領域に対応する画像データを読込み、当該画像データに対してOCR処理を実行するステップS1130と、ステップS1120において、1枚目の原稿画像データの読込みが完了したと判定された場合に実行され、ファイル名のサブ候補として追加された文字列があるか否かを判定し、判定結果に応じて制御の流れを分岐させるステップS1140と、ステップS1140において、サブ候補があると判定された場合に実行され、そのサブ候補をファイル名の候補に設定するステップS1150と、ステップS1140において、サブ候補がないと判定された場合、又は、ステップS1000(図5参照)において、1枚目の原稿が白紙であると判定された場合に実行され、画像読取り時の日時と画像処理装置100の固有情報とを組合わせた文字列(「日時+マシン固有情報」)をファイル名として作成するステップS1160とを含む。ステップS1130の処理が終了すると、制御は図5に示すステップS1020に戻る。ステップS1100又はステップS1150の処理が終了すると、制御は図5に示すステップS1050に戻る。
再び図5を参照して、ステップS1080又は図6に示すステップS1160の処理が終了すると、このプログラムは終了する。
[動作]
本実施の形態に係る画像処理装置100は以下のように動作する。以下の説明では、画像処理装置100の動作の内、本発明に関連する部分のみを説明する。他の動作は従来の画像処理装置の動作と同じである。
画像処理装置100のユーザは、図7に示される原稿の画像を原稿読取部130で読取り、読取った原稿画像データを記憶装置118に保存するものとする。ユーザは、システム設定画面200のチェックボックス210及びチェックボックス230にチェックを入れ、スキャナモードにて原稿の画像を読取る。複数枚の原稿の画像を読取る場合、画像処理装置100は、画像を読取る処理と並行して、ファイル名の生成処理を実行する。
画像処理装置100の制御部110は、読取った原稿画像データのデータサイズに基づいて、1枚目の原稿が白紙か否かを判定する。図7に示される原稿の1枚目の原稿260は、白紙の原稿ではないため、制御部110は、1枚目の原稿260は白紙ではないと判定する(図5に示すステップS1000においてNO)。制御部110は、1枚目の原稿260の先頭の領域270に対応する画像データを読込み、当該画像データに対してOCR処理を行なう(ステップS1010)。制御部110は、OCR処理によって文字列が認識されたか否かを判定する。先頭の領域270には、所定の空白領域によって挟まれた文字列262及び文字列264が存在するため、制御部110は文字列が認識されたと判定する(ステップS1020においてYES)。なお、文字列266は、先頭の領域270の境界線上に位置するため、OCR処理によって認識されない。制御部110は、認識された文字列から一般的な文字列及び一定の文字数以上の文字列をファイル名の候補から除外する(ステップS1030)。文字列262は日付であり、文字列264は部署名である。これらは一般的な文字列として予め登録されているものとする。文字列262及び文字列264は、ファイル名の候補から除外される。
制御部110は、文字列262及び文字列264を除外した後にファイル名の候補となる文字列があるか否かを判定する。先頭の領域270には、除外した後にファイル名の候補となる文字列がないため、制御部110は、ファイル名の候補となる文字列が存在しないと判定する(ステップS1040においてNO)。システム設定画面200のチェックボックス230にチェックが入れられているため、制御部110は、「ファイル名候補の精度を高める」設定がONにされていると判定する(図6に示すステップS1090においてYES)。制御部110は、除外した文字列262及び文字列264をファイル名のサブ候補に追加し(ステップS1110)、1枚目の原稿画像データの読込みが完了したか否かを判定する。1枚目の原稿画像データの読込みは完了していないため(ステップS1120においてNO)。制御部110は、1枚目の原稿260の次の領域272に対応する画像データを読込み、当該画像データに対してOCR処理を行なう(ステップS1130)。なお、先頭の領域270の境界線上に文字列266が存在するため、次の領域272は、この文字列266が認識されるように先頭の領域270と一部重複するように設定される。制御部110は、OCR処理によって文字列が認識されたか否かを判定する。次の領域272には、所定の空白領域によって挟まれた文字列266及び文字列268が存在するため、制御部110は文字列が認識されたと判定する(図5に示すステップS1020においてYES)。
制御部110は、認識された文字列から一般的な文字列及び一定の文字数以上の文字列をファイル名の候補から除外する(ステップS1030)。文字列266は、定型的なものであるため、一般的な文字列として予め登録されているものとする。文字列266は、ファイル名の候補から除外される。制御部110は、文字列266を除外した後にファイル名の候補となる文字列があるか否かを判定する。次の領域272には、除外した後にファイル名の候補となる文字列268があるため、制御部110は、ファイル名の候補となる文字列が存在すると判定する(ステップS1040においてYES)。ファイル名の候補となる文字列は文字列268の1つだけであるため(ステップS1050においてNO)、この文字列268がファイル名として決定される(ステップS1080)。
制御部110は、このようにして生成したファイル名を、読取った原稿画像データのファイル名に設定して、当該原稿画像データを記憶装置118に記憶させる。文字列268(「△□○に関して」)は、1枚目の原稿の件名であり、読取った原稿画像データの内容を示すものである。文字列268に基づいて生成されたファイル名を、原稿画像データのファイル名とすることにより、ファイル名から原稿画像データの内容を把握することが容易になる。
一方、システム設定画面200のチェックボックス230にチェックが入れられていない場合、制御部110は、「ファイル名候補の精度を高める」設定がONにされていないと判定する(図6に示すステップS1090においてNO)。制御部110は、先頭の領域270において除外した文字列262及び文字列264をファイル名の候補に設定する(ステップS1100)。制御部110は、ファイル名の候補が複数存在すると判定し(ステップS1050においてYES)、「手動でファイル名を選択する」設定がONにされているか否かを判定する。「手動でファイル名を選択する」設定がONにされている場合、制御部110は、操作パネル122に選択画面を表示して、複数のファイル名の候補のなかからファイル名に用いる文字列をユーザに選択させる(ステップS1070)。すなわち、文字列262及び文字列264のどちらをファイル名にするかをユーザに選択させる。制御部110は、ユーザによって選択された文字列を原稿画像データのファイル名に決定し(ステップS1080)、そのファイル名で原稿画像データを記憶装置118に保存する。
「手動でファイル名を選択する」設定がONにされていない場合(ステップS1060においてNO)、すなわち、「自動でファイル名を選択する」設定がONにされている場合、制御部110は、文字列262及び文字列264のうち、ファイルの最も先頭側(原稿画像の先頭側)に位置する文字列(この場合、文字列262)を原稿画像データのファイル名に決定する(ステップS1080)。除外された文字列が一定の文字数以上の文字列の場合、当該文字列がファイル名の候補に設定される。この文字列は、ファイル名に適用可能な文字数を超えているため、この文字列がファイル名とされる場合、文字列の先頭文字からファイル名に適用可能な文字数分がファイル名とされる。
このように、システム設定画面200のチェックボックス230にチェックが入れられているか否かに応じて、生成されるファイル名が異なる場合がある。チェックボックス230にチェックを入れることによって、原稿画像データの内容をより把握し易いファイル名が生成される。チェックボックス230にチェックが入れられていない場合、チェックボックス230にチェックが入れられている場合に比べて、OCR処理にかかる時間がより短縮される。
なお、1枚目の原稿が白紙の場合(ステップS1000においてYES)、制御部110は、OCR処理を実行せずに、「日時+マシン固有情報」からなるファイル名を生成する(ステップS1160)。読取った原稿画像データは、生成されたファイル名で記憶装置118に保存される。
さらに、1枚目の原稿の全領域に対するOCR処理が完了するまでに、ファイル名の候補となる文字列が抽出されなかった場合(ステップS1120においてYES)、制御部110は、ファイル名のサブ候補となる文字列が追加されているか否かを判定する。サブ候補がない場合(ステップS1140においてNO)、制御部110は、「日時+マシン固有情報」からなるファイル名を生成して、生成したファイル名で読取った原稿画像データを記憶装置118に保存する。一方、サブ候補がある場合(ステップS1140においてYES)、制御部110は、そのサブ候補をファイル名の候補に設定する(ステップS1150)。ファイル名の候補となる文字列が1つの場合(図5に示すステップS1050においてNO)、その文字列が原稿画像データのファイル名に決定される(ステップS1080)。ファイル名の候補となる文字列が複数ある場合(ステップS1050においてYES)、自動又は手動で選択された文字列が原稿画像データのファイル名に決定される(ステップS1080)。
原稿読取部130で読取られる原稿が図8に示される原稿であった場合、1枚目の原稿280における次の領域282には、一般的な文字列である文字列266を除外した後にファイル名の候補となる文字列(文字列284及び文字列286)が複数存在する。制御部110は、ファイル名の候補となる文字列が複数存在すると判定する(ステップS1040においてYES、且つ、ステップS1050においてYES)。「手動でファイル名を選択する」設定がONにされている場合、制御部110は、操作パネル122に選択画面300(図9参照)を表示して、複数のファイル名の候補のなかからファイル名に用いる文字列をユーザに選択させる(ステップS1070)。
図9を参照して、選択画面300は、文字列284を選択するための選択キー310、文字列286を選択するための選択キー320、及びファイル名を手動で入力する場合に操作されるキー330を含む。キー330が操作されると、ファイル名の入力画面に画面表示が遷移する。ユーザによって選択キー310又は選択キー320が操作されると、キー操作に応じて文字列が選択され、選択された文字列が原稿画像データのファイル名に決定される(ステップS1080)。
スキャン送信モードでは、上記のようにして生成されたファイル名が読取った原稿画像データのファイル名として設定されて記憶装置118に一旦記憶される。記憶されたファイル(原稿画像データ)は、NIC170及びネットワーク50を介して、外部機器に送信される。
[本実施の形態の効果]
以上の説明から明らかなように、本実施の形態に係る画像処理装置100を利用することにより、以下に述べる効果を奏する。
画像処理装置100は、原稿画像の一部の領域に対応する画像データに対してOCR処理を行なうことにより、一度に原稿画像の全領域に対してOCR処理を行なう場合に比べて、OCR処理にかかる時間を短縮できる。そのため、生成したファイル名を用いて原稿画像データを記憶する場合であっても、当該原稿画像データが記憶されるまでの時間を短縮できる。これにより、ユーザの使い勝手が低下するのを抑制できる。読取った原稿画像データに付されるファイル名は自動で生成されるため、ファイル名を手動で入力する手間を省くことができる。さらに、ファイル名は原稿画像内の文字列に基づいて生成されるため、原稿画像データに付されるファイル名から当該原稿画像データ(ファイル)の内容が把握し易くなる。ファイルの内容を把握するためにファイルを開く、といった操作を行なう必要性が低減されるため、これによっても、ユーザの手間を省くことができる。
画像処理装置100はさらに、ファイル名の候補となる文字列として、所定の空白領域によって挟まれた文字群からなる文字列を認識する。こうした文字列が認識されない場合、画像処理装置100は、原稿画像の他の一部の領域に対応する画像データに対して文字認識処理を行なう。こうした文字列が認識された場合、画像処理装置100は、認識された文字列に基づいて原稿画像データのファイル名を生成する。さらに、OCR処理は、原稿画像の先頭から後尾に向かって所定の大きさの領域単位で順に、各領域に対応する画像データに対して行なわれる。これにより、原稿画像データの内容を考慮したファイル名を生成し易くなる。したがって、原稿画像データに付されるファイル名から当該原稿画像データ(ファイル)の内容を一層把握し易くなる。
さらに、予め設定された一般的な文字列、及び予め定められた文字数以上の文字列をファイル名の候補から除外することにより、原稿の内容を示す件名、表題、又は見出し等の文字列をファイル名の候補として抽出し易くなる。これにより、原稿画像データの内容を考慮したファイル名をより一層生成し易くなる。原稿の内容を示す件名、表題、又は見出し等の文字列は、原稿の比較的上側(先頭側)に記載されるのが一般的である。そのため、こうした文字列は、原稿画像の全領域に対してOCR処理を行なうことなく抽出することができるので、OCR処理にかかる時間を効果的に短縮できる。
(第2の実施の形態)
本実施の形態に係る画像処理装置は、複数枚の原稿の画像を連続して読取る場合に、ファイル名の候補となる文字列が抽出されるまで、2枚目以降の原稿の画像データに対してもOCR処理を行なう点において、第1の実施の形態に係る画像処理装置100とは異なる。その他の点では、各画像処理装置は同一の構成である。
[ソフトウェア構成]
本実施の形態に係る画像処理装置では、図5及び図6に示されるプログラムに代えて、図10及び図11に示されるプログラムが実行される。図10及び図11のプログラムは、図5及び図6のステップS1000、ステップS1010、ステップS1120及びステップS1130に代えて、ステップS2000〜ステップS2060を含む。図10及び図11のステップS1020〜ステップS1110、及びステップS1140〜ステップS1160における処理は、図5及び図6に示される各ステップにおける処理と同じである。以下、異なる部分について説明する。
図10を参照して、このプログラムは、読取った原稿が何枚目の原稿であるかを示す変数nに「1」を代入するステップS2000と、ステップS2000の後に実行され、読取った原稿画像データのデータサイズに基づいて、n枚目の原稿が白紙か否かを判定し、判定結果に応じて制御の流れを分岐させるステップS2010と、ステップS2010において、n枚目の原稿が白紙ではないと判定された場合に実行され、n枚目の原稿の先頭領域に対応する画像データを読込み、当該画像データに対してOCR処理を実行するステップS2020とを含む。ステップS2020の処理が終了すると、制御はステップS1020に進む。
図11を参照して、このプログラムはさらに、ステップS1110の後に実行され、n枚目の原稿画像データの読込みが完了したか否か、すなわち、n枚目の原稿画像の全領域に対してOCR処理が完了したか否かを判定し、判定結果に応じて制御の流れを分岐させるステップS2030と、ステップS2030において、n枚目の原稿画像データの読込みが完了していないと判定された場合に実行され、n枚目の原稿画像の次の領域に対応する画像データを読込み、当該画像データに対してOCR処理を実行するステップS2040とを含む。ステップS2030において、n枚目の原稿画像データの読込みが完了したと判定された場合は、制御はステップS1140に進む。ステップS2040の処理が終了すると、制御は、図10に示すステップS1020に戻る。
このプログラムはさらに、ステップS1140において、サブ候補がないと判定された場合、又は、ステップS2010(図10参照)において、n枚目の原稿が白紙であると判定された場合に実行され、n枚目の原稿は最終ページの原稿か否かを判定し、判定結果に応じて制御の流れを分岐させるステップS2050と、ステップS2050において、n枚目の原稿は最終ページの原稿ではないと判定された場合に実行され、変数nの値を1だけ増加させるステップS2060とを含む。ステップS2050において、n枚目の原稿は最終ページの原稿であると判定された場合は、制御はステップS1160に進む。ステップS2060の処理が終了すると、制御は、図10に示すステップS2010に戻る。
[動作]
本実施の形態に係る画像処理装置は以下のように動作する。なお、2枚目以降の原稿の画像データに対してもOCR処理を行なう動作を除いた動作は、上記第1の実施の形態と同様である。したがって、同様の動作についての詳細な説明は繰返さない。
画像処理装置は、1枚又は複数枚の原稿の画像を読取り、読取った原稿画像データのファイル名を自動で生成する。複数枚の原稿の画像を読取る場合、画像処理装置は、画像を読取る処理と並行して、ファイル名の生成処理を実行する。
画像処理装置は、読取った原稿画像データのデータサイズに基づいて、1枚目の原稿が白紙か否かを判定する。1枚目の原稿が白紙の場合(ステップS2010においてYES)、1枚目の原稿が最終ページの原稿か否かが判定される。1枚目の原稿が最終ページの原稿ではない場合(図11に示すステップS2050においてNO)、画像処理装置は、2枚目の原稿が白紙か否かを判定する(ステップS2060、及び図10に示すステップS2010)。このように、読取った原稿に白紙の原稿が含まれる場合、画像処理装置は、白紙の原稿をスキップする。n枚目の原稿が白紙ではないと判定されると(ステップS2010においてNO)、画像処理装置は、n枚目の原稿の先頭の領域に対応する画像データを読込み、当該画像データに対してOCR処理を行なう(ステップS2020)。OCR処理によって文字列が認識されると(ステップS1020においてYES)、画像処理装置は、認識された文字列から一般的な文字列及び一定の文字数以上の文字列をファイル名の候補から除外する(ステップS1030)。一般的な文字列及び一定の文字数以上の文字列を除外した後にファイル名の候補となる文字列がある場合(ステップS1040においてYES)、画像処理装置は、ファイル名の候補となる文字列に基づいてファイル名を決定(生成)する(ステップS1080)。
一方、一般的な文字列及び一定の文字数以上の文字列を除外した後にファイル名の候補となる文字列がない場合(ステップS1040においてNO)、画像処理装置は、「ファイル名候補の精度を高める」設定がONにされているか否かを判定する。ONにされている場合、画像処理装置は、除外した文字列をファイル名のサブ候補に追加して、n枚目の原稿画像データの読込みが完了したか否かを判定する。なお、OCR処理によって文字列が認識されなかった場合(ステップS1020においてNO)も、画像処理装置は、n枚目の原稿画像データの読込みが完了したか否かを判定する。n枚目の原稿画像データの読込みが完了していない場合(ステップS2030においてNO)、画像処理装置は、n枚目の原稿の次の領域に対応する画像データを読込み、当該画像データに対してOCR処理を行なう(ステップS2040)。
n枚目の原稿画像データの読込みが完了している場合(ステップS2030においてYES)、すなわち、n枚目の原稿の全領域に対するOCR処理が完了するまでに、ファイル名の候補となる文字列が抽出されなかった場合、画像処理装置は、ファイル名のサブ候補となる文字列が追加されているか否かを判定する。サブ候補がある場合(ステップS1140においてYES)、画像処理装置は、そのサブ候補をファイル名の候補に設定する(ステップS1150)。サブ候補がない場合(ステップS1140においてNO)、画像処理装置は、n枚目の原稿が最終ページの原稿であるか否かを判定する。n枚目の原稿が最終ページの原稿ではない場合(ステップS2050においてNO)、次の原稿(n+1枚目の原稿)に対して上記した処理を繰返す。n枚目の原稿が最終ページの原稿である場合(ステップS2050においてYES)、画像処理装置は、「日時+マシン固有情報」からなるファイル名を生成して(ステップS1160)、生成したファイル名で読取った原稿画像データを記憶装置118に保存する。
このように、本実施の形態に係る画像処理装置は、白紙の原稿を除き、ファイル名の候補となる文字列が抽出されるまで、原稿画像の先頭領域から所定の領域単位で順に各領域に対応する画像データに対してOCR処理を行なう。そのため、例えば1枚目の原稿からファイル名の候補となる文字列が抽出されなかった場合でも、2枚目以降の原稿からファイル名の候補となる文字列を抽出することが可能となる。これにより、読取った原稿画像データの内容を考慮したファイル名を効果的に生成できる。
(第3の実施の形態)
本実施の形態に係る画像処理装置は、原稿のセット方向を変更するよう促す通知画面を操作パネルに表示する点において、第1の実施の形態に係る画像処理装置100とは異なる。その他の点では、各画像処理装置は同一の構成である。
本実施の形態では、画像処理装置は、操作パネルに原稿選択画面400(図12参照)を表示して、原稿読取部で読取る原稿がどういった原稿であるかを予めユーザに選択させる。ユーザは、原稿選択画面400を介して、スキャンする原稿が横書きの原稿か縦書きの原稿かを入力する。図12を参照して、原稿選択画面400は、スキャンする原稿の種類を選択するための複数の選択キーを含む。複数の選択キーは、横書きの原稿を選択するための「横書(1)」キー410、2ページを1枚に集約した横書きの原稿を選択するための「横書(2)」キー412、縦書きの原稿を選択するための「縦書(1)」キー414、及び2ページを1枚に集約した縦書きの原稿を選択するための「縦書(2)」キー416を含む。
画像処理装置は、読取る原稿がセットされたときに、原稿のセット方向を検出するセンサ(図示せず。)を含む。画像処理装置は、検出したセット方向に基づいて原稿のスキャン方向を決定する。画像処理装置はさらに、原稿選択画面400を介して選択された原稿の種類、及びセットされた原稿のスキャン方向に基づいて、OCR処理を行なうタイミングを決定する。
図13を参照して、原稿選択画面400(図12参照)において「横書(1)」キー410が操作され、長手方向にスキャンするよう原稿がセットされている場合(a1の場合)、又は「横書(2)」キー412が操作され、短手方向にスキャンするよう原稿がセットされている場合(d1の場合)、1枚分の原稿画像データの読取りが完了する前に領域420又は領域426に対してOCR処理を行なうことが可能である。したがって、これらの場合は、1枚分の原稿画像データの読取りが完了する前にOCR処理を行なうよう設定される。
一方、原稿選択画面400(図12参照)において「横書(1)」キー410が操作され、短手方向にスキャンするよう原稿がセットされている場合(b1の場合)、又は「横書(2)」キー412が操作され、長手方向にスキャンするよう原稿がセットされている場合(c1の場合)、1枚分の原稿画像データの読取りが完了する前に領域422又は領域424に対してOCR処理を行なうと文字列の認識が困難になる。したがって、これらの場合は、1枚分の原稿画像データの読取りが完了した後にOCR処理を行なうよう設定される。
原稿選択画面400において「縦書(1)」キー414、又は「縦書(2)」キー416が操作された場合も、上記と同様である。図14を参照して、原稿選択画面400において「縦書(1)」キー414が操作され、長手方向にスキャンするよう原稿がセットされている場合(a2の場合)、又は「縦書(2)」キー416が操作され、短手方向にスキャンするよう原稿がセットされている場合(d2の場合)、1枚分の原稿画像データの読取りが完了する前に領域430又は領域432に対してOCR処理を行なうことが可能である。したがって、これらの場合は、1枚分の原稿画像データの読取りが完了する前にOCR処理を行なうよう設定される。
原稿選択画面400において「縦書(1)」キー414が操作され、短手方向にスキャンするよう原稿がセットされている場合(b2の場合)、又は「縦書(2)」キー416が操作され、長手方向にスキャンするよう原稿がセットされている場合(c2の場合)、1枚分の原稿画像データの読取りが完了する前に領域432又は領域434に対してOCR処理を行なうと文字列の認識が困難になる。したがって、これらの場合は、1枚分の原稿画像データの読取りが完了した後にOCR処理を行なうよう設定される。
1枚分の原稿画像データの読取りが完了する前にOCR処理を行なうことにより、ファイル名の生成処理をより迅速に行なうことが可能となる。画像処理装置は、1枚分の原稿画像データの読取りが完了した後にOCR処理を行なうよう設定した場合、操作パネルに通知画面500(図15参照)を表示して、ユーザに対して、原稿のセット方向を変更するよう促す。図15を参照して、通知画面500は、例えば「原稿のセット方向を90°回転させることにより、ファイル名の自動生成処理が速くなります。」とのメッセージを表示する表示領域510、このまま処理を続ける場合に操作される「YES」キー520、及び原稿のセット方向を変更する場合に操作される「NO」キー530を含む。
「YES」キー520が操作されると、画像処理装置は、1枚分の原稿画像データの読取りが完了した後にOCR処理を行なう設定を維持する。一方、「NO」キー530が操作されると、画像処理装置は原稿のセット方向が変更されたか否かを判定する。原稿のセット方向が変更されると、画像処理装置は、1枚分の原稿画像データの読取りが完了する前にOCR処理を行なう設定に設定を変更する。
ユーザによって原稿画像の読取開始の指示が行なわれると、画像処理装置は、原稿読取部を制御して、セットされている原稿から原稿画像データを読取る。1枚分の原稿画像データの読取りが完了する前にOCR処理を行なうよう設定されている場合、画像処理装置は、原稿画像の先頭の領域の画像データを読取ると、その画像データに対してOCR処理を行なう。1枚分の原稿画像データの読取りが完了した後にOCR処理を行なうよう設定されている場合、画像処理装置は、読取った原稿画像データから原稿画像の先頭の領域に対応する画像データを抽出し、その画像データに対してOCR処理を行なう。
このように、本実施の形態では、ユーザに対して、原稿のセット方向を変更するように促すことによって、ファイル名の生成処理をより迅速に行なうことが可能となる。
(変形例)
上記実施の形態では、画像処理装置の1種である複合機に本発明を適用した例について示したが、本発明はそのような実施の形態には限定されない。原稿の画像を原稿画像データとして読取る画像読取機能を有していれば、画像処理装置は複合機以外の例えばスキャナ装置等であってもよい。
上記実施の形態では、画像データに対するOCR処理を制御部で行なう例について示したが、本発明はそのような実施の形態には限定されない。例えば画像処理部にOCR処理部を設け、OCR処理部でOCR処理を行なうようにしてもよい。
上記実施の形態では、読取った原稿画像データを内部の記憶装置に記憶させる例について示したが、本発明はそのような実施の形態には限定されない。例えば、USB(Universal Serial Bus)メモリのような着脱可能な外部記憶媒体を画像処理装置に装着し、装着された外部記憶媒体に読取った原稿画像データを記憶させるようにしてもよい。
上記実施の形態では、ファイル名の候補から除外される一定文字数の文字列として、ファイル名に適用可能な文字数を超える文字列の例について示したが、本発明はそのような実施の形態には限定されない。一定文字数の文字列は、ファイル名に適用可能な文字数の文字列であってもよい。当該文字列の文字数は、任意に設定可能とすることもできる。
上記第1の実施の形態では、1枚目の原稿が白紙の場合に、「日時+マシン固有情報」からなるファイル名を生成する例について示したが、本発明はそのような実施の形態には限定されない。複数枚の原稿を連続して読取った場合に、1枚目の原稿が白紙であっても、2枚目以降の白紙でない原稿に対してOCR処理を行なうことでファイル名を生成するようにしてもよい。すなわち、白紙の原稿を除く1枚の原稿に対してOCR処理によるファイル名の生成処理を行なうようにしてもよい。
上記で開示された技術を適宜組合せて得られる実施の形態についても、本発明の技術的範囲に含まれる。
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに限定されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。