(57)【要約】【課題】出力用紙上に特定色のマーカーで塗りつぶされた部分のみＯＣＲし、テキスト情報をＵＩで修正して、再出力やオリジナルファイルの修正を行う。【解決手段】プリント出力された用紙に対して出力したファイルを特定するすかし情報を付加する手段と、特定のパターンあるいは特定色のマーカーを読み取ることで得られた位置情報をもとに修正対象部分のみＯＣＲで認識し、得られたテキストデータをユーザインターフェース上で修正し、ファイルに反映させた後、ファイルを再出力するとともにＰＣ等出力元に対して修正後のファイルを送り返すことが可能なマルチファンクションシステム。【選択図】        図１
2006165613.tif 000002
【特許請求の範囲】
【請求項１】
プリント出力される用紙に対して出力したファイルを特定する情報を付加するための情報付加手段と、出力用紙を読み取り、修正すべきテキスト情報の存在する箇所を認識する修正箇所認識手段と前記修正箇所の位置情報に基づいて修正すべき箇所のみＯＣＲで認識して得られたテキストデータをユーザインターフェース上で修正し、修正後のファイルを再度プリント出力することが可能なことを特徴とするデータ自動修正機能を有するマルチファンクションシステム。
【請求項２】
請求項１記載のデータ自動修正機能を有するマルチファンクションシステムにおいて、前記出力したファイルを特定する情報を付加するための情報付加手段とは出力用紙に対して透かし情報を与えることを特徴とするデータ自動修正機能を有するマルチファンクションシステム。
【請求項３】
請求項１記載のデータ自動修正機能を有するマルチファンクションシステムにおいて、前記修正箇所認識手段とは出力用紙に手書きで修正された特定のパターンあるいは特定色のマーカーを読み取ることで、出力ファイル上の修正位置を認識することを意味することを特徴とするデータ自動修正機能を有するマルチファンクションシステム。
【請求項４】
プリント出力された用紙に対してＰＣ等の出力元を特定する情報を付加するための情報付加手段と、出力用紙を読み取り、出力元を特定する情報を認識する出力元情報認識手段と前記出力元情報に基づいて出力元に対して請求項１記載の修正後のファイルを送り返すことが可能なことを特徴とするデータ自動修正機能を有するマルチファンクションシステム。
【請求項５】
請求項４記載のデータ自動修正機能を有するマルチファンクションシステムにおいて、前記出力元を特定する情報を付加するための情報付加手段とは出力用紙に対してＰＣのＩＰアドレスやファイル名、ページ数等を透かし情報で与えることを特徴とするデータ自動修正機能を有するマルチファンクションシステム。
【請求項６】
請求項４記載のデータ自動修正機能を有するマルチファンクションシステムにおいて、前記修正されたファイルを修正元に送り返す手段は請求項５記載のＩＰアドレスやファイル名に基づいて、出力元のデータが保存されている場所にネットワーク経由で修正データを自動転送することを特徴とするデータ自動修正機能を有するマルチファンクションシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワークやスキャナ機能、文字認識手段等を有するマルチファンクションシステム全般に係るデータ自動修正機能を有するマルチファンクションシステムに関する。
【背景技術】
【０００２】
従来より復号機やマルチファンクションシステムにおいて原稿を読み取った後、ＯＣＲ等の手段で電子化された情報をデータベース化するための手法は採用されている。また、近年、ファイルを共有化し、データの閲覧を容易にするための操作性向上を追及した数々のツールが開発されて来ている。
【特許文献１】特許第３４５４２７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし従来は出力された用紙に対して修正箇所を指示し、復号機やマルチファンクションシステム上で原稿を修正して再出力する手段は用いられていないため、出力された用紙に間違いが見つかった場合、ＰＣ等に存在する出力元のファイルを探し、手書き修正した内容をキーボードで入力した後、再度プリントアウトする必要があった。そのため、ファイルを出力した担当者が不在の時などすぐに修正したファイルを出力することが出来なかった。
【０００４】
また、一般的なＯＣＲ手段は文書全体から文字情報の切り出し、文字認識を行うことが多く、処理時間の増大や誤判定が発生する可能性の増大を招くことになる。
【課題を解決するための手段】
【０００５】
そこで本発明では、プリント出力される用紙に対して出力したファイルを特定する情報を付加するための情報付加手段と、出力用紙を読み取り、修正すべきテキスト情報の存在する箇所を認識する修正箇所認識手段と前記修正箇所の位置情報に基づいて修正すべき箇所のみＯＣＲで認識して得られたテキストデータをユーザインターフェース上で修正し、修正後のファイルを再度プリント出力することが可能なデータ自動修正機能を有するマルチファンクションシステムを提供することで、元データを探すことなく、出力用紙を読み取るだけで修正後の出力用紙を得ることが可能となる。
【０００６】
さらに本発明では、プリント出力された用紙に対して出力元のＰＣ及びファイル名等を特定する情報を付加するための情報付加手段と、出力用紙を読み取り、出力元を特定する情報を認識する出力元情報認識手段と前記出力元情報に基づいて出力元に対して修正後のファイルを送り返すことが可能なデータ自動修正機能を有するマルチファンクションシステムを提供することで、元データを自動的にアップデートすることが可能となる。
【発明の効果】
【０００７】
本発明によれば、プリント出力される用紙に対して出力したファイルを特定する情報を付加するための情報付加手段と、出力用紙を読み取り、修正すべきテキスト情報の存在する箇所を認識する修正箇所認識手段と前記修正箇所の位置情報に基づいて修正すべき箇所のみＯＣＲで認識して得られたテキストデータをユーザインターフェース上で修正し、修正後のファイルを再度プリント出力することが可能なデータ自動修正機能を有するマルチファンクションシステムを提供することで、元データを探すことなく、出力用紙を読み取るだけで修正後の出力用紙を得ることが可能となる。
【０００８】
また、プリント出力された用紙に対して出力元のＰＣ及びファイル名等を特定する情報を付加するための情報付加手段と、出力用紙を読み取り、出力元を特定する情報を認識する出力元情報認識手段と前記出力元情報に基づいて出力元に対して修正後のファイルを送り返すことが可能なデータ自動修正機能を有するマルチファンクションシステムを提供することで、元データを自動的にアップデートすることが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下で本発明の実施例について説明する。
【実施例】
【００１０】
［第１の実施例］
図１は第１の実施例のシステム構成を説明する概念模式図である。
【００１１】
図１において、１０１は機器を接続する既知の技術を用いたネットワークであり、本実施例ではＴＣＰ／ＩＰプロトコルを使用した、イーサネット（登録商標）の使用を想定している。
【００１２】
１０２は用紙などに印刷された原稿などを光学的に読み込みを行うネットワークスキャナで、ネットワークインターフェイスを具備し、ている。読み取り画像データはＲＧＢ３色のカラースキャナである。
【００１３】
１０８，１０７，１０６はネットワークインターフェイスを具備し、ネットワークインターフェイスを介して送られる印刷データや画像データを受信し、電子写真技術などの既知の印刷技術を用いて用紙などのメディアに実際に印刷を行うネットワークプリンタである。ネットワークプリンタ１０８，１０７，１０６もまたネットワーク１０１を介して各機器に接続している。ここでは、１０８は白黒デジタル複合機、１０７はカラーレーザープリンタ、１０６は白黒レーザービームプリンタを示している。
【００１４】
１０４はネットワークインターフェイスを具備し、公衆回線１０５を介して画像データの送受信を行うＦａｘである。ネットワーク１０１上のスキャナ１０２で読み取った画像データを送信したり、受信した画像データをプリンタ１０８、１０７、１０６から出力したり、ＰＣ１０３でファイル化する画像データを公衆回線１０５上に入出力するインターフェイスでもある。
【００１５】
以下、本実施例のハードウエア、ソフトウエアの詳細について記述する。
【００１６】
［ハードウエア］
全体構成
全体構成図を図３に示す。Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ  ２０００は画像入力デバイスであるＳｃａｎｎｅｒ２０７０や画像出力デバイスであるＰｒｉｎｔｅｒ２０９５と接続し、一方ではＬＡＮ２０１１や公衆回線（ＷＡＮ）２０５１接続することで、画像情報やデバイス情報の入出力を行う為のコントローラである。
【００１７】
ＣＰＵ２００１はシステム全体を制御するコントローラである。ＲＡＭ２００２はＣＰＵ２００２が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ＲＯＭ２００３はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２００４はハードディスクドライブ及びＩＤＥコントローラからなり、システムソフトウェア、画像データ及びそれらの管理情報を格納する。操作部Ｉ／Ｆ２００６は操作部（ＵＩ）２０１２とインターフェイス部で、操作部２０１２に表示する画像データを操作部２０１２に対して出力する。また、操作部２０１２から本システム使用者が入力した情報を、ＣＰＵ２００１に伝える役割をする。Ｎｅｔｗｏｒｋ２０１０はＬＡＮ２０１１に接続し、情報の入出力を行う。Ｍｏｄｅｍ２０５０は公衆回線２０５１に接続し、情報の入出力を行う。以上のデバイスがシステムバス２００７上に配置される。Ｉｍａｇｅ  Ｂｕｓ  Ｉ／Ｆ２００５はシステムバス２００７と画像データを高速で転送する画像バス２００８を接続し、データ構造を変換するバスブリッジである。画像バス２００８は、ＰＣＩバスまたはＩＥＥＥ１３９４で構成される。画像バス２００８上には以下のデバイスが配置される。ラスターイメージプロセッサ（ＲＩＰ）２０６０はＰＤＬコードをビットマップイメージに展開する。デバイスＩ／Ｆ部２０２０は、画像入出力デバイスであるスキャナ２０７０やプリンタ２０９５とコントローラ２０００を接続し、画像データの同期系／非同期系の変換を行う。スキャナ画像処理部２０８０は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部は、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。画像回転部２０３０は画像データの回転を行う。画像圧縮部２０４０は、多値画像データはＪＰＥＧ、２値画像画像データはＪＢＩＧ、ＭＭＲ、ＭＨの圧縮伸張処理を行う。
【００１８】
画像入出力部
画像入出力デバイスを図４に示す。画像入力デバイスであるスキャナ部２０７０は、原稿となる紙上の画像を照明し、ＣＣＤラインセンサ（図示せず）を走査することで、ラスターイメージデータ２０７１として電気信号に変換する。原稿用紙は原稿フィーダ２０７２のトレイ２０７３にセットし、装置使用者が操作部２０１２から読み取り起動指示することにより、コントローラＣＰＵ２００１がスキャナ２０７０に指示を与え（２０７１）、フィーダ２０７２は原稿用紙を１枚ずつフィードし原稿画像の読み取り動作を行う。
【００１９】
画像出力デバイスであるプリンタ部２０９５は、ラスターイメージデータ２０９６を用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、コントローラＣＰＵ２００１からの指示２０９６によって開始する。プリンタ部２０９５には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセット２１０１、２１０２、２１０３、２１０４がある。また、排紙トレイ２１１１は印字し終わった用紙を受けるものである。
【００２０】
操作部
操作部２０１２の構成を図５に示す。ＬＣＤ表示部２０１３は、ＬＣＤ上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラＣＰＵ２００１に伝える。スタートキー２０１４は原稿画像の読み取り動作を開始する時などに用いる。スタートキー２０１４中央部には、緑と赤の２色ＬＥＤ２０１８があり、その色によってスタートキー２０１４が使える状態にあるかどうかを示す。ストップキー２０１５は稼働中の動作を止める働きをする。ＩＤキー２０１６は、使用者のユーザＩＤを入力する時に用いる。リセットキー２０１７は操作部からの設定を初期化する時に用いる。
【００２１】
スキャナ画像処理部
スキャナ画像処理部２０８０の構成を図６に示す。画像バスＩ／Ｆコントローラ２０８１は、画像バス２００８と接続し、そのバスアクセスシーケンスを制御する働きと、スキャナ画像処理部２０８０内の各デバイスの制御及びタイミングを発生させる。フィルタ処理部２０８２は、空間フィルタでコンボリューション演算を行う。編集部２０８３は、入力画像データから請求項３記載のマーカーペンで塗りつぶされた領域を認識して、領域内の文字データに対して、位置情報抽出を行う。変倍処理部２０８４は、読み取り画像の解像度を変える場合にラスターイメージの主走査方向について補間演算を行い拡大、縮小を行う。副走査方向の変倍については、画像読み取りラインセンサ（図示せず）を走査する速度を変えることで行う。テーブル２０８５は、読み取った輝度データである画像データを濃度データに変換するために、行うテーブル変換である。２値化２０８６は、多値のグレースケール画像データを、誤差拡散処理やスクリーン処理によって２値化する。
【００２２】
処理が終了した画像データは、再び画像バスコントローラ２０８１を介して、画像バス上に転送される。
【００２３】
プリンタ画像処理部
プリンタ画像処理部２０９０の構成を図７に示す。画像バスＩ／Ｆコントローラ２０９１は、画像バス２００８と接続し、そのバスアクセスシーケンスを制御する働きと、スキャナ画像処理部２０９０内の各デバイスの制御及びタイミングを発生させる。解像度変換部２０９２は、Ｎｅｔｗｏｒｋ２０１１あるいは公衆回線２０５１から来た画像データを、プリンタ２０９５の解像度に変換するための解像度変換を行う。スムージング処理部２０９３は、解像度変換後の画像データのジャギー（斜め線等の白黒境界部に現れる画像のがさつき）を滑らかにする処理を行う。
【００２４】
画像圧縮部
画像圧縮部２０４０の構成を図８に示す。画像バスＩ．／Ｆコントローラ２０４１は、画像バス２００８と接続し、そのバスアクセスシーケンスを制御する働き、入力バッファ２０４２・出力バッファ２０４５とのデータのやりとりを行うためのタイミング制御及び、画像圧縮部２０４３に対するモード設定などの制御を行う。以下に画像圧縮処理部の処理手順を示す。
【００２５】
画像バス２００８を介して、ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０４１に画像圧縮制御のための設定を行う。この設定により画像バスＩ／Ｆコントローラ２０４１は画像圧縮部２０４３に対して画像圧縮に必要な設定（たとえばＭＭＲ圧縮・ＪＢＩＧ伸長等の）を行う。必要な設定を行った後に、再度ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０４１に対して画像データ転送の許可を行う。この許可に従い、画像バスＩ／Ｆコントローラ２０４１はＲＡＭ２００２もしくは画像バス２００８上の各デバイスから画像データの転送を開始する。受け取った画像データは入力バッファ２０４２に一時格納され、画像圧縮部２０４３の画像データ要求に応じて一定のスピードで画像を転送する。この際、入力バッファは画像バスＩ／Ｆコントローラ２０４１と、画像圧縮部２０４３両者の間で、画像データを転送できるかどうかを判断し、画像バス２００８からの画像データの読み込み及び、画像圧縮部２０４３への画像の書き込みが不可能である場合は、データの転送を行わないような制御を行う（以後このような制御をハンドシェークと呼称する）。画像圧縮部２０４３は受け取った画像データを、一旦ＲＡＭ２０４４に格納する。これは画像圧縮を行う際には行う画像圧縮処理の種類によって、数ライン分のデータを要するためであり、最初の１ライン分の圧縮を行うためには数ライン分の画像データを用意してからでないと画像圧縮が行えないためである。画像圧縮を施された画像データは直ちに出力バッファ２０４５に送られる。出力バッファ２０４５では、画像バスＩ／Ｆコントローラ２０４１及び画像圧縮部２０４３とのハンドシェークを行い、画像データを画像バスＩ／Ｆコントローラ２０４１に転送する。画像バスＩ／Ｆコントローラ２０４１では転送された圧縮（もしくは伸長）された画像データをＲＡＭ２００２もしくは画像バス２００８上の各デバイスにデータを転送する。こうした一連の処理は、ＣＰＵ２００１からの処理要求が無くなるまで（必要なページ数の処理が終わったとき）、もしくはこの画像圧縮部から停止要求が出るまで（圧縮及び伸長時のエラー発生時等）繰り返される。
【００２６】
画像回転部
画像回転部２０３０の構成を図１０に示す。画像バスＩ／Ｆコントローラ２０３１は、画像バス２００８と接続し、そのバスシーケンスを制御する働き、画像回転部２０３２にモード等を設定する制御及び、画像回転部２０３２に画像データを転送するためのタイミング制御を行う。以下に画像回転部の処理手順を示す。
画像バス２００８を介して、ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０３１に画像回転制御のための設定を行う。この設定により画像バスＩ／Ｆコントローラ２０４１は画像回転部２０３２に対して画像回転に必要な設定（たとえば画像サイズや回転方向・角度等）を行う。必要な設定を行った後に、再度ＣＰＵ２００１から画像バスＩ／Ｆコントローラ２０４１に対して画像データ転送の許可を行う。この許可に従い、画像バスＩ／Ｆコントローラ２０３１はＲＡＭ２００２もしくは画像バス２００８上の各デバイスから画像データの転送を開始する。尚、ここでは３２ｂｉｔをそのサイズとし回転を行う画像サイズを３２×３２（ｂｉｔ）とし、又、画像バス２００８上に画像データを転送させる際に３２ｂｉｔを単位とする画像転送を行うものとする（扱う画像は２値を想定する）。
【００２７】
上述のように、３２×３２（ｂｉｔ）の画像を得るためには、上述の単位データ転送を３２回行う必要があり、且つ不連続なアドレスから画像データを転送する必要がある（図１１参照）。
【００２８】
不連続アドレッシングにより転送された画像データは、読み出し時に所望の角度に回転されているように、ＲＡＭ２０３３に書き込まれる。例えば、９０度反時計方向回転であれば、最初に転送された３２ｂｉｔの画像データを、図１２のようにＹ方向に書き込んでいく。読み出し時にＸ方向に読み出すことで、画像が回転される。
【００２９】
３２×３２（ｂｉｔ）の画像回転（ＲＡＭ２０３３への書き込み）が完了した後、画像回転部２０３２はＲＡＭ２０３３から上述した読み出し方法で画像データを読み出し、画像バスＩ／Ｆコントローラ２０３１に画像を転送する。
【００３０】
回転処理された画像データを受け取った画像バスＩ／Ｆコントローラ２０３１は、連続アドレッシングを以って、ＲＡＭ２００２もしくは画像バス２００８上の各デバイスにデータを転送する。
【００３１】
こうした一連の処理は、ＣＰＵ２００１からの処理要求が無くなるまで（必要なページ数の処理が終わったとき）繰り返される。
【００３２】
デバイスＩ／Ｆ部
デバイスＩ／Ｆ部２０２０の構成を図９に示す。画像バスＩ／Ｆコントローラ２０２１は、画像バス２００８と接続し、そのバスアクセスシーケンスを制御する働きと、デバイスＩ／Ｆ部２０２０内の各デバイスの制御及びタイミングを発生させる。また、外部のスキャナ２０７０及びプリンタ２０９５への制御信号を発生させる。スキャンバッファ２０２２は、スキャナ２０７０から送られてくる画像データを一時保存し、画像バス２００８に同期させて画像データを出力する。シリアルパラレル・パラレルシリアル変換２０２３は、スキャンバッファ２０２２に保存された画像データを順番に並べて、あるいは分解して、画像バス２００８に転送できる画像データのデータ幅に変換する。パラレルシリアル・シリアルパラレル変換２０２４は、画像バス２００８から転送された画像データを分解して、あるいは順番に並べて、プリントバッファ２０２５に保存できる画像データのデータ幅に変換する。プリントバッファ２０２５は、画像バス２００８から送られてくる画像データを一時保存し、プリンタ２０９５に同期させて画像データを出力する。
【００３３】
画像スキャン時の処理手順を以下に示す。スキャナ２０７０から送られてくる画像データをスキャナ２０７０から送られてくるタイミング信号に同期させて、スキャンバッファ２０２２に保存する。そして、画像バス２００８がＰＣＩバスの場合には、バッファ内に画像データが３２ビット以上入ったときに、画像データを先入れ先出しで３２ビット分、バッファからシリアルパラレル・パラレルシリアル変換２０２３に送り、３２ビットの画像データに変換し、画像バスＩ／Ｆコントローラ２０２１を通して画像バス２００８上に転送する。また、画像バス２００８がＩＥＥＥ１３９４の場合には、バッファ内の画像データを先入れ先出しで、バッファからシリアルパラレル・パラレルシリアル変換２０２３に送り、シリアル画像データに変換し、画像バスＩ／Ｆコントローラ２０２１を通して画像バス２００８上に転送する。
【００３４】
画像プリント時の処理手順を以下に示す。画像バス２００８がＰＣＩバスの場合には、画像バスから送られてくる３２ビットの画像データを画像バスＩ／Ｆコントローラで受け取り、パラレルシリアル・シリアルパラレル変換２０２４に送り、プリンタ２０９５の入力データビット数の画像データに分解し、プリントバッファ２０２５に保存する。また、画像バス２００８がＩＥＥＥ１３９４の場合には、画像バスからおくられてくるシリアル画像データを画像バスＩ／Ｆコントローラで受け取り、パラレルシリアル・シリアルパラレル変換２０２４に送り、プリンタ２０９５の入力データビット数の画像データに変換し、プリントバッファ２０２５に保存する。そして、プリンタ２０９５から送られてくるタイミング信号に同期させて、バッファ内の画像データを先入れ先出しで、プリンタ２０９５に送る。
【００３５】
［ソフトウエア］
ソフトウエアブロック全体構成
図２は、本発明を実施した複合機のソフトウエアブロック図である。
【００３６】
１５０１はＵＩ即ちユーザインターフェイスを司るものであり、オペレータが本複合機の各種操作・設定を行う際、機器との仲介を行うモジュールである。本モジュールは、オペレータの操作に従い、後述の各種モジュールに入力情報を転送し処理の依頼、或いはデータの設定等を行う。
【００３７】
１５０２はＡｄｄｒｅｓｓ−Ｂｏｏｋ即ちデータの送付先、通信先等を管理するデータベースモジュールである。Ａｄｄｒｅｓｓ−Ｂｏｏｋの内容は、ＵＩ１５０１からの操作によりデータの追加、削除、取得が行われ、オペレータの操作により後述の各モジュールにデータの送付・通信先情報を与えるものとして使用されるものである。
【００３８】
１５０３はＷｅｂ−Ｓｅｒｖｅｒモジュールであり、図外のＷｅｂクライアントからの要求により、本複合機の管理情報を通知するために使用される。管理情報は、後述のＣｏｎｔｒｏｌｌ−ＡＰＩ１５１８を介して読み取られ、後述のＨＴＴＰ１５１２、ＴＣＰ／ＩＰ１５１６、Ｎｅｔｗｏｒｋ−Ｄｒｉｖｅｒ１５１７を介してＷｅｂクライアントに通知される。
１５０４はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ即ち、データの配信を司るモジュールであり、ＵＩ１５０１によりオペレータに指示されたデータを、同様に指示された通信（出力）先に配布するものである。また、オペレータにより、本機器のスキャナ機能を使用し配布データの生成が指示された場合は、後述のＣｏｎｔｒｏｌｌ−ＡＰＩ１５１８を介して機器を動作させ、データの生成を行う。
【００３９】
１５０５はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で出力先にプリンタが指定された際に実行されるモジュールである。
【００４０】
１５０６はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で通信先にＥ−ｍａｉｌアドレスが指定された際に実行されるモジュールである。
【００４１】
１５０７はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で出力先にデータベースが指定された際に実行されるモジュールである。
【００４２】
１５０８はＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内で出力先に本機器と同様の複合機が指定された際に実行されるモジュールである。
【００４３】
１５０９はＲｅｍｏｔｅ−Ｃｏｐｙ−Ｓｃａｎモジュールであり、本複合機のスキャナ機能を使用し、ネットワーク等で接続された他の複合機を出力先とし、本複合機単体で実現しているＣｏｐｙ機能と同等の処理を行うモジュールである。
【００４４】
１５１０はＲｅｍｏｔｅ−Ｃｏｐｙ−Ｐｒｉｎｔモジュールであり、本複合機のプリンタ機能を使用し、ネットワーク等で接続された他の複合機を入力先とし、本複合機単体で実現しているＣｏｐｙ機能と同等の処理を行うモジュールである。
【００４５】
１５１１はＷｅｂ−Ｐｕｌｌ−Ｐｒｉｎｔ即ちインターネットまたはイントラネット上の各種ホームページの情報を読み出し、印刷するモジュールである。
【００４６】
１５１２は本複合機がＨＴＴＰにより通信する際に使用されるモジュールであり、後述のＴＣＰ／ＩＰ１５１６モジュールにより前述のＷｅｂ−Ｓｅｒｖｅｒ１５０３、Ｗｅｂ−Ｐｕｌｌ−Ｐｒｉｎｔ１５１１モジュールに通信を提供するものである。
【００４７】
１５１３はｌｐｒモジュールであり、後述のＴＣＰ／ＩＰ１５１６モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内のプリンタモジュール１５０５に通信を提供するものである。
【００４８】
１５１４はＳＭＴＰモジュールであり、後述のＴＣＰ／ＩＰ１５１６モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内のＥ−ｍａｉｌモジュール１５０６に通信を提供するものである。
【００４９】
１５１５はＳＬＭ即ちＳａｌｕｔａｔｉｏｎ−Ｍａｎａｇｅｒモジュールであり、後述のＴＣＰ／ＩＰ１５１６モジュールにより前述のＵｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４内のデータベースモジュール１５１７、ＤＰモジュール１５１８、及びＲｅｍｏｔｅ−Ｃｏｐｙ−Ｓｃａｎ１５０９モジュール、Ｒｅｍｏｔｅ−Ｃｏｐｙ−Ｐｒｉｎｔ１５１０モジュールに通信を提供するものである。
【００５０】
１５１６はＴＣＰ／ＩＰ通信モジュールであり、前述の各種モジュールに後述のＮｅｔｗｏｒｋ−Ｄｒｉｖｅｒによりネットワーク通信を提供するものである。
【００５１】
１５１７はネットワークドライバであり、ネットワークに物理的に接続される部分を制御するものである。
【００５２】
１５１８はＣｏｎｔｒｏｌｌ−ＡＰＩであり、Ｕｎｉｖｅｒｓａｌ−Ｓｅｎｄ１５０４等の上流モジュールに対し、後述のＪｏｂ−Ｍａｎａｇｅｒ１５１９等の下流モジュールとのインターフェイスを提供するものであり、上流、及び下流のモジュール間の依存関係を軽減しそれぞれの流用性を高めるものである。
【００５３】
１５１９はＪｏｂ−Ｍａｎａｇｅｒであり、前述の各種モジュールよりＣｏｎｔｒｏｌｌ−ＡＰＩ１５１８を介して指示される処理を解釈し、後述の各モジュールに指示を与えるものである。また、本モジュールは、本複合機内で実行されるハード的な処理を一元管理するものである。
【００５４】
１５２０はＣＯＤＥＣ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５１９が指示する処理の中でデータの各種圧縮・伸長を管理・制御するものである。
【００５５】
１５２１はＦＢＥ−Ｅｎｃｏｄｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５１９、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２４により実行されるスキャン処理により読み込まれたデータをＦＢＥフォーマットにより圧縮するものである。
【００５６】
１５２２はＪＰＥＧ−ＣＯＤＥＣであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５１９、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２４により実行されるスキャン処理、及びＰｒｉｎｔ−Ｍａｎａｇｅｒ１５２６により実行される印刷処理において、読み込まれたデータのＪＰＥＧ圧縮及び印刷データのＪＰＥＧ展開処理を行うものである。
【００５７】
１５２３はＭＭＲ−ＣＯＤＥＣであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５１９、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２４により実行されるスキャン処理、及びＰｒｉｎｔ−Ｍａｎａｇｅｒ１５２６により実行される印刷処理において、読み込まれたデータのＭＭＲ圧縮及び印刷データのＭＭＲ伸長処理を行うものである。
【００５８】
１５２４はＳｃａｎ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５１９が指示するスキャン処理を管理・制御するものである。
【００５９】
１５２５はＳＣＳＩドライバであり、Ｓｃａｎ−Ｍａｎａｇｅｒ１５２４と本複合機が内部的に接続しているスキャナ部との通信を行うものである。
【００６０】
１５２６はＰｒｉｎｔ−Ｍａｎａｇｅｒであり、Ｊｏｂ−Ｍａｎａｇｅｒ１５１９が指示する印刷処理を管理・制御するものである。
【００６１】
１５２７はＥｎｇｉｎｅ−Ｉ／Ｆドライバであり、Ｐｒｉｎｔ−Ｍａｎａｇｅｒ１５２６と印刷部とのＩ／Ｆを提供するものである。
【００６２】
１５２８はパラレルポートドライバであり、Ｗｅｂ−Ｐｕｌｌ−Ｐｒｉｎｔ１５１１がパラレルポートを介して図外の出力機器にデータを出力する際のＩ／Ｆを提供するものである。
【００６３】
アプリケーション
以下、本発明の組み込みアプリケーションの実施の形態について図面を用いて説明する。
【００６４】
図１３は、本発明の配信に関する組み込みアプリケーションブロックを表すものである。
【００６５】
４０５０は、前記３０００で説明した本発明の操作部アプリケーションを示すブロックである。
【００６６】
４１００は、リモートコピーアプリケーションの送信側を示すブロック図である。
【００６７】
４１５０は、同報配信の送信側を示すブロック図である。
【００６８】
４２００は、Ｗｅｂ  Ｐｕｌｌ  Ｐｒｉｎｔモジュールを示すブロック図である。
【００６９】
４２５０は、Ｗｅｂ  Ｓｅｒｖｅｒモジュールを示すブロック図である。
【００７０】
４３００は、リモートコピーの受信側（プリント側）を示すブロック図である。
【００７１】
４３５０は、同報配信で送信されてきたイメージを汎用のプリンタで受信・プリントするブロック図である。
【００７２】
４４００は、リモートプリントの受信側（プリント側）を示すブロック図である。
【００７３】
４４５０は、同報配信で送信されてきたイメージを公知のＮｏｔｅｓ  Ｓｅｒｖｅｒで受信・格納するブロック図である。
【００７４】
４５００は、同報配信で送信されてきたイメージを２値のイメージを受信・格納するブロック図である。
【００７５】
４５５０は、同報配信で送信されてきたイメージを公知のＭａｉｌ  Ｓｅｒｖｅｒで受信・格納するブロック図である。
【００７６】
４６００は、同報配信で送信されてきたイメージを多値のイメージを受信・格納するブロック図である。
【００７７】
４６５０は、情報コンテンツを含んだ、公知のＷｅｂ  Ｓｅｒｖｅｒを示す図である。
【００７８】
４７００は、本発明のＷｅｂ  Ｓｅｒｖｅｒなどにアクセスする公知のＷｅｂ  Ｂｒｏｗｓｅｒを示す図である。
【００７９】
以下、それぞれのブロックに照らし合わせながら、アプリケーション群の説明を詳細に行う。
【００８０】
Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  アプリケーション
４０５０ブロックに示したＵｓｅｒ  Ｉｎｔｅｒｆａｃｅ（以下、ＵＩ）の詳細は、前記したとおりであるが、ここでは、４０５１のＡｄｄｒｅｓｓ  Ｂｏｏｋについて説明する。このＡｄｄｒｅｓｓ  Ｂｏｏｋは、本発明の機器内の不揮発性の記憶装置（不揮発性メモリやハードディスクなど）に保存されており、この中には、ネットワークに接続された機器の特徴が記載されている。例えば、以下に列挙するようなものが含まれている。
【００８１】
機器の正式名やエイリアス名
機器のネットワークアドレス
機器の処理可能なネットワークプロトコル
機器の処理可能なドキュメントフォーマット
機器の処理可能な圧縮タイプ
機器の処理可能なイメージ解像度
プリンタ機器の場合の給紙可能な紙サイズ、給紙段情報
サーバー（コンピューター）機器の場合のドキュメントを格納可能なフォルダ名
【００８２】
以下に説明する各アプリケーションは、上記Ａｄｄｒｅｓｓ  Ｂｏｏｋ４０５１に記載された情報により配信先の特徴を判別することが可能となる。
【００８３】
また、このＡｄｄｒｅｓｓ  Ｂｏｏｋは、編集可能であると共に、ネットワーク内のサーバーコンピュータなどに保存されているものをダウンロードして使用する、または、直接参照することも可能である。
【００８４】
リモートコピーアプリケーション
リモートコピーアプリケーションは、配信先に指定された機器の処理可能な解像度情報を前記Ａｄｄｒｅｓｓ  Ｂｏｏｋ４０５１より判別し、それに従い、スキャナにより読みとった画像２値画像を公知のＭＭＲ圧縮を用いて圧縮し、それを公知のＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）化し、ＳＬＭ４１０３に通して、ネットワーク上のプリンター機器に送信する。ＳＬＭ４１０３とは、詳細には説明しないが、公知のＳａｌｕｔａｔｉｏｎ  Ｍａｎａｇｅｒ（または、Ｓｍａｒｔ  Ｌｉｎｋ  Ｍａｎａｇｅｒ）と呼ばれる機器制御情報などを含んだネットワークプロトコルの一種である。
【００８５】
同報配信アプリケーション
同報配信アプリケーションは、前記リモートコピーアプリケーションと違い、一度の画像走査で複数の配信宛先に画像を送信する事が可能である。また、配信先もプリンタ機器にとどまらず、いわゆるサーバーコンピュータにも直接配信可能である。
【００８６】
以下、配信先に従って純に説明する。
【００８７】
配信先の機器が公知のネットワークプリンタプロトコルであるＬＰＤ（Ｌｉｎｅ  Ｐｒｉｎｔｅｒ  Ｄａｅｍｏｎ）、プリンタ制御コマンドとして公知のＬＩＰＳを処理可能だとＡｄｄｒｅｓｓ  Ｂｏｏｋ４０５１より判別した場合、同様にＡｄｄｒｅｓｓ  Ｂｏｏｋ４０５１より判別した画像解像度に従って画像読み取りを行い、画像自体は、本実施例では、公知のＦＢＥ（Ｆｉｒｓｔ  Ｂｉｎａｒｉ  Ｅｎｃｏｄｉｎｇ）を用いて圧縮し、さらにＬＩＰＳコード化して、公知のネットワークプリンタプロトコルであるＬＰＲで相手機器に送信する。
【００８８】
配信先の機器が前記ＳＬＭで通信可能で、サーバー機器の場合、Ａｄｄｒｅｓｓ  Ｂｏｏｋ４０５１より、サーバーアドレス、サーバー内のフォルダの指定を判別し、リモートコピーアプリケーションと同様に、スキャナにより読みとった画像２値画像を公知のＭＭＲ圧縮を用いて圧縮し、それを公知のＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）化し、ＳＬＭを通して、ネットワーク上のサーバー機器の特定のフォルダに格納する事が可能である。
【００８９】
また、本実施例の機器では、相手機器であるサーバーが公知のＪＰＥＧ圧縮された多値画像を処理可能だと判別した場合、前記の２値画像と同様に多値読み取りした画像を公知のＪＰＥＧ圧縮を用いて、やはり公知のＪＦＩＦ化し、ＳＬＭを通して、ネットワーク上のサーバー機器の特定のフォルダに格納する事が可能である。
【００９０】
配信先の機器が公知のＥ−Ｍａｉｌサーバーである場合、Ａｄｄｒｅｓｓ  Ｂｏｏｋ４０５１に記載されたメールアドレスを判別し、スキャナにより読みとった画像２値画像を公知のＭＭＲ圧縮を用いて圧縮し、それを公知のＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）し、公知のＳＭＴＰ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｃｏｌ）４１５３を使用して、Ｅ−Ｍａｉｌサーバーに送信する。その後の配信は、Ｍａｉｌ  Ｓｅｒｖｅｒ４５５０に従って実行される。
【００９１】
Ｗｅｂ  Ｐｕｌｌ  Ｐｒｉｎｔ  アプリケーション
Ｗｅｂ  Ｐｕｌｌ  Ｐｒｉｎｔアプリケーションは、本実施例と直接関係しないので、説明は省略する。
【００９２】
Ｗｅｂ  Ｓｅｒｖｅｒ  アプリケーション
Ｗｅｂ  Ｓｅｒｖｅｒアプリケーションは、本実施例と直接関係しないので、説明は省略する。
【００９３】
ＤｅｖｉｃｅＩｎｆｏｒｍａｔｉｏｎＳｅｒｖｉｃｅ（ＤＩＳ）
コントローラ内でジョブに対する設定値、デバイス（スキャナ、プリンタなど）の機能、ステータス、課金情報等をＣｏｎｔｒｏｌ  ＡＰＩに準拠したデータ形態で保持するデータベースと、そのデータベースとのＩ／ＦをＤｅｖｉｃｅＩｎｆｏｒｍａｔｉｏｎＳｅｒｖｉｃｅ（以下、ＤＩＳと呼称する）として定義している。図１４にＤＩＳ  ７１０２とＪｏｂＭａｎａｇｅｒ  ７１０１、及びＳｃａｎ、Ｐｒｉｎｔの各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒ７１０３、７１０４とのやり取りを示す。
【００９４】
基本的に、Ｊｏｂの開始命令など動的な情報はＪｏｂＭａｎａｇｅｒ  ７１０１から各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒに直接指示され、デバイスの機能やジョブの内容など静的な情報はＤＩＳ  ７１０２を参照する。各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからの静的、動的情報、イベントはＤＩＳ  ７１０２を介してＪｏｂＭａｎａｇｅｒ  ７１０１に伝えられる。
【００９５】
各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからＤＩＳのデータベースにデータの設定、取得を行う場合、ＤＩＳの内部データ形式がＣｏｎｔｒｏｌ  ＡＰＩ準拠であることから、Ｃｏｎｔｒｏｌ  ＡＰＩに準拠したデータ形式と各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒが理解できるデータ形式との相互の変換処理を行う。例えば、各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからステータスデータの設定を行う場合、デバイス固有のデータを解釈し、Ｃｏｎｔｒｏｌ  ＡＰＩで定義される対応するデータに変換し、ＤＩＳのデータベースへ書き込みを行う。
【００９６】
ＪｏｂＭａｎａｇｅｒからＤＩＳのデータベースにデータの設定、取得を行う場合には、ＪｏｂＭａｎａｇｅｒとＤＩＳの間でデータの変換は生じない。
【００９７】
またＤＩＳには、ＤｏｃｕｍｅｎｔＭａｎａｇｅｒから通知される各種イベント情報に基づき、イベントデータの更新が行われる。
【００９８】
図１５にＤＩＳ内部に保持される各種データベース（以下、ＤＢと呼称する）を示し、それぞれのＤＢについて説明する。図１５中の丸角長方形は個々のＤＢを表している。
【００９９】
７２０１はＳｕｐｅｒｖｉｓｏｒＤＢであり、機器全体についてのステータスやユーザ情報を保持しているＤＢであり、ユーザＩＤやパスワード等、バックアップが必要な情報はＨＤ装置、あるいはバックアップメモリなどの不揮発性の記憶装置に保持される。
【０１００】
７２０２はＳｃａｎＣｏｍｐｏｎｅｎｔＤＢ、７２０３はＰｒｉｎｔＣｏｍｐｏｎｅｎｔＤＢであり、これらＣｏｍｐｏｎｅｎｔＤＢは存在するＣｏｍｐｏｎｅｎｔ毎に対応して保持される。例えば、プリンタのみからなる機器の場合はＰｒｉｎｔＣｏｍｐｏｎｅｎｔＤＢのみが存在し、また例えば、ＦＡＸを備えた機器の場合はＦＡＸＣｏｍｐｏｎｅｎｔＤＢが保持される。各ＣｏｍｐｏｎｅｎｔＤＢには初期化時に、それぞれ対応するＤｏｃｕｍｅｎｔＭａｎａｇｅｒがＣｏｍｐｏｎｅｎｔの機能やステータスを設定する。
【０１０１】
７２０４はＳｃａｎＪｏｂＳｅｒｖｉｃｅＤＢ、７２０５はＰｒｉｎｔＪｏｂＳｅｒｖｉｃｅＤＢであり、これらのＪｏｂＳｅｒｖｉｃｅＤＢもＣｏｍｐｏｎｅｎｔＤＢ同様、初期化時にそれぞれ対応するＤｏｃｕｍｅｎｔＭａｎａｇｅｒが機器で使用できる機能や、それらのサポート状況を設定する。
【０１０２】
次にＪｏｂＤＢ、ＤｏｃｕｍｅｎｔＤＢについて説明する。７２０６はＳｃａｎＪｏｂＤＢ、７２０７はＰｒｉｎｔＪｏｂＤＢの各ＪｏｂＤＢ、７２０８はＳｃａｎＤｏｃｕｍｅｎｔＤＢ、７２０９はＰｒｉｎｔＤｏｃｕｍｅｎｔＤＢである。
【０１０３】
ＪｏｂＤＢ、ＤｏｃｕｍｅｎｔＤＢはＪｏｂとそれに付随するＤｏｃｕｍｅｎｔが生成される度にＪｏｂＭａｎａｇｅｒにより動的に確保、初期化が行われ、必要な項目の設定が行われる。各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒはＪｏｂの処理開始前にＪｏｂＤＢ、およびＤｏｃｕｍｅｎｔＤＢから処理に必要な項目を読み出し、Ｊｏｂを開始する。その後、Ｊｏｂが終了するとこれらのＪｏｂ、及びそれに付随していたＤｏｃｕｍｅｎｔのＤＢは解放される。Ｊｏｂは１つ以上のＤｏｃｕｍｅｎｔを持つので、あるＪｏｂに対して複数のＤｏｃｕｍｅｎｔＤＢが確保される場合がある。
【０１０４】
７２１０は各ＤｏｃｕｍｅｎｔＭａｎａｇｅｒから通知されるイベント情報を保持するデータベース、７２１１は装置のＳｃａｎ回数、Ｐｒｉｎｔ回数を記録するためのカウンタテーブルである。
ＤｏｃｕｍｅｎｔＭａｎａｇｅｒから通知されるイベントには、ＳｃａｎＤｏｃｕｍｅｎｔＭａｎａｇｅｒからのＣｏｍｐｏｎｅｎｔの状態遷移、Ｓｃａｎ処理動作完了や各種のエラー、またＰｒｉｎｔＤｏｃｕｍｅｎｔＭａｎａｇｅｒからのＣｏｍｐｏｎｅｎｔの状態遷移、Ｐｒｉｎｔ処理動作完了、紙詰まり、給紙カセットオープンなどがあり、それぞれのイベントを識別するためのイベントＩＤが予め定められている。
【０１０５】
ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからイベントが発行された場合、ＤＩＳはイベントデータベース７２１１に発行されたイベントＩＤと必要なら該イベントに付随する詳細データを登録する。また、ＤｏｃｕｍｅｎｔＭａｎａｇｅｒからイベントの解除が通知された場合、解除指定されたイベントデータをイベントデータベース７２１１から削除する。
【０１０６】
ＪｏｂＭａｎａｇｅｒよりイベントのポーリングが行われた場合、ＤＩＳはイベントデータベース７２１０を参照し、現在発生しているイベントＩＤと必要ならイベントに付随する詳細データをＪｏｂＭａｎａｇｅｒへ返信し、現在イベントが発生していなければその旨を返信する。
【０１０７】
また、Ｓｃａｎ処理動作完了、Ｐｒｉｎｔ処理動作完了のイベントが通知された場合はＳｃａｎ、Ｐｒｉｎｔを行ったユーザのカウンタ値を更新する。このソフトウエアによるカウンタは不慮の電源遮断などでその値が失われないように、バックアップされたメモリ装置やＨＤ装置の不揮発性記憶装置にその値が更新されるたびに書き戻す。
【０１０８】
スキャン動作
以下にスキャン動作の詳細について説明する。図１６はスキャン動作に関するブロックの概念図である。ＰＣＩバス８１０５にＣＰＵ８１０１とメモリ８１０２、画像の圧縮・伸長ボード８１０４、及びスキャナ８１０７と、このシステムを接続するためのＩ／Ｆを提供するＳＣＳＩ  Ｉ／Ｆ回路８１０３が接続されている。ＳＣＳＩ  Ｉ／Ｆ回路８１０３とスキャナ（または複合機能を有する複写機のスキャナ機能ユニット）８１０７はＳＣＳＩインターフェースケーブル８１０６で接続されている。
【０１０９】
またＰＣＩバス８１０５にはＩＤＥ  Ｃｏｎｔｒｏｌｌｅｒ８１０８が接続されており、ＩＤＥ  Ｃａｂｌｅ８１０９を介してＩＤＥ  Ｈａｒｄ  Ｄｉｓｋ８１１０と接続されている。図１７はスキャン動作に関するソフトウエア構造を示したものである。  ＪｏｂＭａｎａｇｅｒ８２０１はアプリケーションレベルの要求を分類、保存する機能を持つ。
【０１１０】
ＤＩＳ８２０２はアプリケーションレベルからのスキャン動作に必要なパラメータを保存する。アプリケーションからの要求はメモリ８１０２に保存される。スキャン動作管理部８２０３はＪｏｂＭａｎａｇｅｒ８２０１とＤＩＳ８２０２からスキャンを行うのに必要な情報を取得する。スキャン動作管理部８２０３はＪｏｂＭａｎａｇｅｒ８２０１から図１８のジョブ番号、ドキュメント番号のテーブルデータ８３０１を受け取り、ジョブ番号、ドキュメント番号のテーブルデータ８３０１を元に、ＤＩＳ８２０２よりスキャンパラメータ８３０２をうけとる。これによりアプリケーションから要求されているスキャン条件を元にスキャンを行う。
【０１１１】
スキャン動作管理部８２０３はＤＩＳ８２０２から取得したスキャンパラメータ８３０２をドキュメント番号順にスキャンシーケンス制御部８２０４に渡す。スキャンパラメータ８３０２を受け取ったスキャンシーケンス制御部８２０４はスキャン画像属性８３０８の内容に従ってＳＣＳＩ制御部８２０７をコントロールする。これにより図１６のＰＣＩ８１０５に接続されたＳＣＳＩ  Ｃｏｎｔｒｏｌｌｅｒ８１０３を動作させることにより、ＳＣＳＩケーブル８１０６を介してＳｃａｎｎｅｒ８１０７にＳＣＳＩ制御コマンドを送ることによりスキャンが実行される。スキャンした画像はＳＣＳＩ  Ｃａｂｌｅ８１０６を介してＳＣＳＩ  Ｃｏｎｔｒｏｌｌｅｒ８１０３にわたり、さらにＰＣＩ８１０５を介してＭｅｍｏｒｙ８１０２に格納される。スキャンシーケンス制御部８２０４はスキャンが終了し、ＰＣＩ８１０５を介してＭｅｍｏｒｙ８１０２に画像が格納された時点で、スキャンパラメータ８３０２のスキャン画像圧縮形式８３０９の内容にしたがって、Ｍｅｍｏｒｙ８１０２に格納されているスキャン画像を圧縮するために、圧縮・伸長制御部８２０５に対して要求を出す。要求を受け取った圧縮・伸長制御部８２０５はＰＣＩ８１０５に接続されているＣＯＤＥＣ８１０４を用いて、スキャンシーケンス制御部８２０４からのスキャン画像圧縮形式８３０９の指定で圧縮を行う。圧縮・伸長制御部８２０５は圧縮された画像をＰＣＩ８１０５を介してＭｅｍｏｒｙ８１０２に格納する。
【０１１２】
スキャンシーケンス制御部８２０４は圧縮・伸長制御部８２０５がスキャン画像圧縮形式８３０９で指定された形式にスキャン画像を圧縮し、Ｍｅｍｏｒｙ８１０２に格納した時点で、スキャンパラメータ８３０２の画像ファイルタイプ８３０７にしたがってＭｅｍｏｒｙ８１０２に格納されている圧縮されたスキャン画像をファイル化する。スキャンシーケンス制御部８２０４はファイルシステム８２０６に対して、スキャンパラメータ８３０２の画像ファイルタイプ８３０７で指定されたファイル形式でファイル化することを要求する。ファイルシステム８２０６はスキャンシーケンス制御部８２０４からの画像ファイルタイプ８３０７にしたがって、Ｍｅｍｏｒｙ８１０２に格納されている圧縮された画像をファイル化し、ＰＣＩ８１０５を介してＩＤＥ  Ｃｏｎｔｒｏｌｌｅｒ８１０８に転送し、ＩＤＥ  Ｃａｂｌｅ８１０９を介してＩＤＥ  Ｈａｒｄ  Ｄｉｓｋ８１１０に転送することによりスキャンされた圧縮画像をファイル化する。スキャンシーケンス制御部８２０４はファイルシステム８２０６がＩＤＥ  Ｈａｒｄ  Ｄｉｓｋ８１１０にファイル化された画像を格納した時点で、Ｓｃａｎｎｅｒ８１０７上の一枚の現行の処理が終了したとして、スキャン動作管理部８２０３にスキャン終了通知を送り返す。
【０１１３】
この時点でＳｃａｎｎｅｒ８１０７上にまだスキャンが行われていない原稿が存在し、Ｊｏｂ  Ｍａｎａｇｅｒ８２０１からスキャン要求が存在する場合には再度、ＤＩＳ８２０２に格納されているスキャンパラメータ８３０２を用いてスキャンシーケンス制御部にスキャン動作を要求する。
【０１１４】
Ｓｃａｎｎｅｒ８１０７上にスキャンされていない原稿が存在しない場合、またはＪｏｂＭａｎａｇｅｒ８２０１からのスキャン要求が存在しない場合には、スキャン動作が終了したものとしてＪｏｂＭａｎａｇｅｒ８２０１に対してスキャン終了通知を発行する。
【０１１５】
プリント動作
以下でプリント動作について詳細に説明する。
【０１１６】
図１９はプリント動作に関するブロックの概念図である。ＰＣＩバス９００５にＣＰＵ９００１とメモリ９００２、画像の圧縮・伸張ボード９００４、及びプリンタ９００７と、このシステムを接続するためのＩ／Ｆを提供するＥｎｇｉｎｅＩ／Ｆボード９００３が接続されている。ＥｎｇｉｎｅＩ／Ｆボード９００３とプリンタ（または複合機能を有する複写機のプリンタ機能ユニット）９００７はエンジンインターフェースケーブル９００６で接続されている。
【０１１７】
ＥｎｇｉｎｅＩ／Ｆボードは内部にＤＰＲＡＭを持ち、このＤＰＲＡＭを介してプリンタへのパラメータ設定及びプリンタの状態読み出しと、プリントの制御コマンドのやりとりを行う。またこのボードはＶｉｄｅｏコントローラを持ち、プリンタからエンジンインターフェースケーブル経由で与えられるＶＣＬＫ（ＶｉｄｅｏＣｌｏｃｋ）とＨＳＹＮＣに合わせて、ＰＣＩ上に展開されているイメージデータをエンジンインターフェースケーブルを介してプリンタに送信する。この送信のタイミングを図で表すと図２０の様になる。ＶＣＬＫは常に出続け、ＨＳＹＮＣがプリンタの１ラインの開始に同期して与えられる。Ｖｉｄｅｏコントローラは設定された画像幅（ＷＩＤＴＨ）分のデータを、設定されたＰＣＩ上のメモリ（ＳＯＵＲＣＥ）から読み出して、Ｖｉｄｅｏ信号としてエンジンインターフェースケーブルに出力する。これを指定ライン分（ＬＩＮＥＳ）繰り返した後、ＩＭＡＧＥ＿ＥＮＤ割り込みを発生する。
【０１１８】
先に説明したとおり、ＣＰＵ上のアプリケーションプログラムからＣｏｎｔｒｏｌｌＡＰＩにプリントジョブの指示が渡されると、ＣｏｎｔｒｏｌｌＡＰＩはこれをコントローラレベルのＪｏｂＭａｎａｇｅｒにジョブとして渡す。さらにこのＪｏｂＭａｎａｇｅｒはジョブの設定をＤＩＳに格納し、ＰｒｉｎｔＭａｎａｇｅｒにジョブの開始を指示する。ＰｒｉｎｔＭａｎａｇｅｒはジョブを受け付けるとＤＩＳからジョブ実行に必要な情報を読み出し、ＥｎｇｉｎｅＩ／Ｆボード及び、ＤＰＲＡＭを介してプリンタに設定する。
【０１１９】
ＥｎｇｉｎｅＩ／Ｆボードの設定項目を図２１に、プリンタのＤＰＲＡＭを介した設定項目及び制御コマンド、状態コマンドを図２２に示す。
【０１２０】
簡単のためにこのジョブを非圧縮、レター（１１“ｘ８．５”）サイズ２値画像の、２ページ１部プリント、プリンタが６００ｄｐｉの性能を持つものとして、具体的に動作を説明する。
【０１２１】
まず、このジョブを受けるとＰｒｉｎｔＭａｎａｇｅｒはこの画像の幅（この場合“８．５”の側とする）の画像バイト数を算出する。
【０１２２】
ＷＩＤＴＨ＝８．５×６００÷８≒６３０（Ｂｙｔｅｓ）
【０１２３】
次にライン数を演算する。
【０１２４】
ＬＩＮＥＳ＝１１×６００＝６６００（Ｌｉｎｅｓ）
これらの算出した値と、与えられた１ページ目の画像が格納されているＳＯＵＲＣＥアドレスとを図２１に示したＷＩＤＴＨ，ＬＩＮＥＳ，ＳＯＵＲＣＥに設定する。この時点でＥｎｇｉｎｅＩ／Ｆボードは画像出力の用意が完了しているが、プリンタからのＨＳＹＮＣ信号が来ていないため（ＶＣＬＫは来ている）画像データを出力していない。
【０１２５】
次にＰｒｉｎｔＭａｎａｇｅｒは図２２に示したＤＰＲＡＭの所定のアドレス（ＢｏｏｋＮｏ）に出力部数である１を書き込む。その後、１ページ目に対する出力用紙の給紙要求（ＦＥＥＤ＿ＲＥＱ）を出し、プリンタからのＩＭＡＧＥ＿ＲＥＱを待つ。プリンタからＩＭＡＧＥ＿ＲＥＱが来たら、ＩＭＡＧＥ＿ＳＴＡＲＴを出す。これを受けてプリンタはＨＳＹＮＣを出し始め、ＨＳＹＮＣ待ちであったＥｎｇｉｎｅＩ／Ｆボードは画像を出力する。プリンタは出力用紙の後端を検出すると、ＩＭＡＧＥ＿ＥＮＤを出力し、出力用紙が排出されるとＳＨＥＥＴ＿ＯＵＴを出力する。ＰｒｉｎｔＭａｎａｇｅｒは１ページ目のＩＭＡＧＥ＿ＥＮＤを受けて、２ページ目のＷＩＤＴＨ，ＬＩＮＥＳ，ＳＯＵＲＣＥをＥｎｇｉｎｅＩ／Ｆボードに設定し、ＦＥＥＤ＿ＲＥＱを出して、ＩＭＡＧＥ＿ＲＥＱを待つ。２ページ目のＩＭＡＧＥ＿ＲＥＱが来てからの動作は、１ページ目と同様である。
【０１２６】
［データ自動修正手段］
次に本発明の中心となる出力用紙からファイルの自動修正を行う手段について説明する。図２３は出力用紙にユーザがマーカーで修正箇所を指示した例を示す。図中の右上の部分は写真イメージであり、その他はテキスト画像が印字されている。本実施例では図中のテキスト画像に対して手書きの修正情報をファイルにフィードバックし、修正後のデータを出力する流れを説明する。本実施例では図中の“ＡＢＣ”の部分に修正の指示がなされている。
【０１２７】
操作部２０１２上でプリント修正出力のモード設定（非図示）を行った後、出力用紙をスキャナ２０７０で読み取ると、まず、画像データはスキャナ画像処理部２０８０を経由してＲＡＭ２００２に展開される。この課程でスキャナ画像処理部２０８０にある編集部２０８３によってマーカーペンで塗りつぶされた領域を認識して、修正対象の文字データの位置情報抽出が行われる。
【０１２８】
ここでＣＰＵ２００１は編集部２０８３内に格納されているマーカーペンで塗りつぶされた位置情報に相当する部分に該当するＲＡＭ２００２上のビットマップデータに対してＯＣＲソフトウエアを実行する。まず、ＣＰＵ２００１は図２４のようにテキスト部分の文字の切り出しを行う。次にＣＰＵ２００１は切り出した部分の文字認識を行い、テキスト情報を生成するとともに、生成されたテキスト情報を操作部２０１２に対して表示させる。図２５にその画面表示の例を示す。ユーザはこの画面上のキーボードを用いて、テキストデータの編集、修正を行うことができる。“ＯＫ”ボタンを押すことにより、テキスト情報はキーボード入力されたテキストデータに置き換えられる。
【０１２９】
修正すべき内容を認識すると同時にシステムは修正すべきファイルを特定する必要がある。図１４は修正前にプリント出力を行った時にＪＯＢの情報を図形の一部に透かしとして残している状況を示す。透かしの情報はユーザが目視では確認できない程度の微小なパターンであるが、スキャナ２０７０で読み取った場合は読み取り情報を元に出力したＰＣ、ＩＰアドレス、ファイル名及びページ数等が分かるようになっている。透かしのパターンや認識方法は一般に実用化されている電子透かしの手法を用いれば良い。透かしを読み取ることによって情報を得た後は既にプリント出力されたＪＯＢの履歴と照合し、修正すべきファイルを特定する。通常、プリント出力時のスプールデータは一時的にＨＤＤ２００４に格納され、ラスターイメージプロセッサ（ＲＩＰ）２０６０によりビットマップ展開された後は消去されるが、本実施例のようにデータの修正を行う可能性のある場合はＰＣ上での出力時の指定により、ＨＤＤ２００４上にデータをＪＯＢの管理情報とともに残しておく構成をとることとする。
【０１３０】
以上の手段により、ＨＤＤ２００４上の特定のスプールデータの存在するファイルを特定し、前述の修正対象文字に対して手書きの修正内容を特定ファイルに反映する準備を行う。また、これに基づきＣＰＵ２００１は特定ファイルにおけるデータの修正を行う。図２７は透かし情報より決定された特定ファイルにおけるスプールデータのうちテキストデータが格納されている部分を示している（実際にはテキスト情報に該当するコードで形成される）。まず、ＯＣＲにより抽出されたテキストデータと一致しているパターンを図２７の様にデータ列から検索する。検索で該当するパターンが１つの場合は該当部分を図２５の編集画面上で編集されたテキストデータを“ＯＫ”キーを押すタイミングでＲＡＭ２００２に転送した後、あらかじめＲＡＭ２００２上に展開された特定ファイルの該当部分の置き換えを行う。図２８は修正前のテキストデータ“ＡＢＣ“が修正後のテキストデータ“１２”に置き換えられた時のデータ列の様子を示す。以上の様にして修正対象文字に対して操作部２０１２で編集した内容をファイルに反映することにより、修正後のデータを再度プリント出力した場合は図２９時の様になり、ユーザの意図した修正内容を出力に反映することができる。
【０１３１】
また、前述のＯＣＲにより抽出されたテキストデータと一致しているパターンを図２７上のデータ列から検索する過程においてパターンに複数のデータが該当している場合、ＬＣＤ表示部２０１３は図３０の様な表示となり、ユーザがマーカーペンの指定範囲を広げて再度、出力用紙の読み取り行為を行う様な指示をする。
【０１３２】
［第２の実施例］
第１の実施例では修正されたファイルは本システム内に格納されたスプールデータを加工して、再出力する例を示したが、修正した内容はＪＯＢを送信したＰＣ上に存在する元ファイルに反映する手段を用いても良い。操作部２０１２上でプリント修正出力のモード設定を行った後、出力用紙をスキャナ２０７０で読み取ると、まず、画像データはスキャナ画像処理部２０８０を経由してＲＡＭ２００２に展開された後、ＬＣＤ表示部２０１３は図３１のように前述の透かし情報をもとにＪＯＢの情報を表示する。ＪＯＢの情報の中にはプリント出力を行ったＰＣ名、ファイル名及びページ数等が表示される。ユーザは表示された内容に問題がなければ“送信”ボタンを押すことによって、ＬＡＮ２０１１を経由し、ＪＯＢを送信したＰＣ上にある元ファイルの存在するフォルダ等に修正の旨を付け加えられた別ファイル名で保存される。表示された内容に問題がある場合は“修正”ボタンを押すことによって、送信先の設定をマニュアルで変えることが出来る。この機能を有することによって、元データを自動的にアップデートすることが可能となる。ただし、本実施例において、プリントデータを修正する可能性のある場合は通常のプリント時のスプールとは異なり、ＰＣ上での出力時の指定により、アプリケーションで作成したデータそのものを本システムに転送し、ビットマップデータに展開する全ての工程を本システムで行う構成をとることとする。工程中にＰＤＬデータに変換されてからは通常通り、ラスターイメージプロセッサ（ＲＩＰ）２０６０を用いてビットマップ展開を行えばよい。
【図面の簡単な説明】
【０１３３】
【図１】本発明におけるネットワークシステムの全体構成図。
【図２】本システムのソフトウエアの全体構成図。
【図３】本システムの全体ブロック図。
【図４】スキャナ部、プリンタ部、及び操作部の外形図。
【図５】操作部を示す図。
【図６】スキャナ画像処理部のブロック図。
【図７】プリンタ画像処理部のブロック図。
【図８】画像圧縮処理部のブロック図。
【図９】デバイスＩ／Ｆ部のブロック図。
【図１０】画像回転部のブロック図。
【図１１】画像回転処理の説明図。
【図１２】画像回転処理の説明図。
【図１３】組み込みアプリケーション説明のブロック図。
【図１４】ＤＩＳとＪｏｂＭａｎａｇｅｒ、ＰｒｉｎｔＭａｎａｇｅｒ、ＳｃａｎＭａｎａｇｅｒとのやり取りを示す図。
【図１５】ＤＩＳ内部のデータベース、及びカウンタを示す図。
【図１６】スキャンに関するハードウエア制御のブロック図。
【図１７】スキャンにおけるソフトウエア制御のブロック図。
【図１８】スキャンにおけるパラメータテーブルの概略図。
【図１９】プリントに関するブロック図。
【図２０】プリントイメージデータの転送タイミング図。
【図２１】ＥｎｇｉｎｅＩ／Ｆボード内のプリントパラメータレジスタ表。
【図２２】プリンタとＥｎｇｉｎｅＩ／Ｆボードとの通信コマンド表。
【図２３】出力用紙にマーカーで修正箇所を指示した例を示す図。
【図２４】ＯＣＲによって文字部を切り出している例を示す図。
【図２５】ＯＣＲで生成されたテキストデータの編集画面を示す図。
【図２６】出力元のＪＯＢを表すための透かし情報を示す図。
【図２７】修正前のスプールデータのテキスト部の構成例を示す図。
【図２８】修正後のスプールデータのテキスト部の構成例を示す図。
【図２９】修正後のデータを再度プリントした場合の出力用紙を示す図。
【図３０】修正対象のテキストデータ検索が複数該当した場合の警告表示の図。
【図３１】出力元のＰＣ及びファイル名指定画面を示す図。
【符号の説明】
【０１３４】
１０１  ネットワーク
１０２  ネットワークスキャナ
１０３  ＰＣ
１０４  Ｆａｘ
１０５  公衆回線
１０６，１０７，１０８  ネットワークプリンタ
【図２】
2006165613.tif 000003
【図３】
2006165613.tif 000004
【図６】
2006165613.tif 000005
【図７】
2006165613.tif 000006
【図８】
2006165613.tif 000007
【図９】
2006165613.tif 000008
【図１０】
2006165613.tif 000009
【図１１】
2006165613.tif 000010
【図１３】
2006165613.tif 000011
【図１４】
2006165613.tif 000012
【図１５】
2006165613.tif 000013
【図１６】
2006165613.tif 000014
【図１７】
2006165613.tif 000015
【図１８】
2006165613.tif 000016
【図１９】
2006165613.tif 000017
【図２０】
2006165613.tif 000018
【図２１】
2006165613.tif 000019
【図２２】
2006165613.tif 000020
【図１】
2006165613.tif 000021
【図４】
2006165613.tif 000022
【図５】
2006165613.tif 000023
【図１２】
2006165613.tif 000024
【図２３】
2006165613.tif 000025
【図２４】
2006165613.tif 000026
【図２５】
2006165613.tif 000027
【図２６】
2006165613.tif 000028
【図２７】
2006165613.tif 000029
【図２８】
2006165613.tif 000030
【図２９】
2006165613.tif 000031
【図３０】
2006165613.tif 000032
【図３１】
2006165613.tif 000033