(57)【特許請求の範囲】
【請求項１】
画像データの入力を制御する入力制御手段と、
前記画像データを加工処理する加工手段と、
前記画像データの出力を制御する出力制御手段と、
前記入力制御手段と前記加工手段との間で前記画像データの伝達を行う第１伝達手段と、
前記加工手段と前記出力制御手段との間で前記画像データの伝達を行う第２伝達手段と、
を備え、
前記入力制御手段は、入力された前記画像データに固有の識別情報を付与するとともに、前記画像データと前記識別情報とを前記第１伝達手段に書き込み、
前記出力制御手段は、前記画像データの出力要求を受け付けた場合に、前記識別情報と、前記出力要求に含まれる出力される画像データの条件であるデータ生成条件と、を含むデータ読出要求を第２伝達手段に伝達し、
前記第１伝達手段は、前記入力制御手段によって書き込まれた前記画像データのうち、前記データ読出要求に含まれる前記識別情報に対応付けられる前記画像データを前記加工手段に書き込み、
前記第２伝達手段は、前記データ読出要求を前記加工手段に伝達し、
前記加工手段は、前記第１伝達手段によって書き込まれた前記画像データと、前記第２伝達手段から受けた前記データ読出要求に含まれる前記データ生成条件とを比較し、前記画像データを前記データ生成条件に基づいて出力するために必要な処理条件である加工処理条件を決定し、前記加工処理条件に基づき前記画像データを加工処理するとともに、前記出力制御手段に出力すること、を特徴とする画像処理装置。
【請求項２】
前記データ生成条件は、前記画像データの大きさに関する情報を含み、
前記加工手段は、さらに、画像データを拡大する拡大機能を備え、前記画像データと前記データ生成条件とを比較して、前記加工処理条件として拡大倍率を決定し、前記拡大倍率に基づいて前記画像データを拡大処理すること、を特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記データ生成条件は、前記画像データの大きさに関する情報を含み、
前記加工手段は、さらに、画像データを縮小する縮小機能を備え、前記画像データと前記データ生成条件とを比較して、前記加工処理条件として縮小倍率を決定し、前記縮小倍率に基づいて前記画像データを縮小処理すること、を特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記データ生成条件は、前記画像データの方向に関する情報を含み、
前記加工手段は、さらに、画像データを回転させる回転機能を備え、前記画像データと前記データ生成条件とを比較して、前記加工処理条件として回転角度を決定し、前記回転角度に基づいて前記画像データを回転処理すること、を特徴とする請求項１〜３のいずれか一つに記載の画像処理装置。
【請求項５】
前記データ生成条件は、前記画像データの解像度に関する情報を含み、
前記加工手段は、さらに、画像データの解像度を補正する解像度補正機能を備え、前記画像データと前記データ生成条件とを比較して、前記加工処理条件として間引き率を決定し、前記間引き率に基づいて前記画像データに対して間引き処理すること、を特徴とする請求項１〜４のいずれか一つに記載の画像処理装置。
【請求項６】
前記加工手段は、前記画像データと前記データ生成条件とを比較して、前記加工処理条件として補間率を決定し、前記補間率に基づいて前記画像データに対して補間処理すること、を特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記加工手段は、さらに、前記加工処理条件に基づいて加工処理した画像データを前記第２伝達手段に書き込み、
前記第２伝達手段は、さらに、前記加工手段によって書き込まれた前記画像データを前記出力制御手段に伝達し、
前記出力制御手段は、さらに前記第２伝達手段から伝達された前記画像データを記憶するデータリストと、前記データリストを管理するデータ管理手段と、前記出力要求を受け付けた場合に、前記出力要求に含まれる前記識別情報と、前記データ生成条件と、を検索条件として、前記データリストに記憶される前記画像データのうち前記検索条件に合致する前記画像データを検索するデータ検索手段と、を備えたこと、を特徴とする請求項１〜６のいずれか一つに記載の画像処理装置。
【請求項８】
前記データ検索手段は、前記画像データ検索の結果、前記検索条件に合致する前記画像データが存在しない場合には、前記データ読出要求を第２伝達手段に伝達すること、を特徴とする請求項７に記載の画像処理装置。
【請求項９】
前記データ検索手段は、前記画像データ検索の結果、前記検索条件に合致する前記画像データが存在した場合には、前記画像データを前記データリストから取得して出力処理を実行すること、を特徴とする請求項７または８に記載の画像処理装置。
【請求項１０】
前記データ管理手段は、前記データ検索手段による検索の結果、前記検索条件のうち前記識別情報に合致し、且つ、前記データ生成条件に合致しない前記画像データが、前記データリストに存在した場合には、前記識別情報に合致する前記画像データを削除し、前記第２伝達手段から伝達された前記画像データを前記データリストに記憶させること、を特徴とする請求項７に記載の画像処理装置。
【請求項１１】
前記データ管理手段は、前記データ検索手段による検索の結果、前記検索条件のうち前記識別情報に合致し、且つ、前記データ生成条件に合致しない前記画像データが、前記データリストに存在した場合には、前記識別情報に合致する前記画像データと、前記第２伝達手段から伝達された前記画像データと、を前記データリストに記憶させること、を特徴とする請求項７に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理の対象となるデータの入力を制御する入力制御手段と、データの加工処理を行う加工手段と、データの出力を制御する出力制御手段とを備えた画像処理装置に関するものである。
【背景技術】
【０００２】
近年、プリンタ、コピー機、スキャナ、ファクシミリ、又はこれらを一台の筐体で実現することが可能な複合機等の画像処理装置において、汎用コンピュータと同様にＣＰＵを備え、アプリケーションにより各機能を制御するものが提供されている。
【０００３】
特許文献１に記載された画像形成装置は、各アプリケーションから共通して利用される機能をプラットフォームとして備え、このプラットフォームのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を利用してアプリケーションを実装するものである。
【０００４】
特許文献２に開示された複合機は、読取った画像に対してマーキングを行い、マーキングされた閉領域を抽出して、特定の領域を構成するマーキングの色に応じて、領域内外の画像を利用するものである。
【０００５】
特許文献３に開示された画像処理装置は、同報送信されるべき原稿に、複数の色と複数の書法により構成されるマーキングを施し、マーキング毎に処理内容を決定し、同報送信宛名リストの編集が必要な場合にマーキング情報を用いて恒久的に変更するものである。
【０００６】
特許文献１〜３に記載の技術によれば共通して利用される機能がプラットフォームとして備えられていることにより、アプリケーション毎に重複した機能の実装を回避するとともに、カスタマイズを実現し、拡張を簡略化することができる。
【０００７】
【特許文献１】特許第３６７９３４９号公報
【特許文献２】特開２００４−０７２５２７号公報
【特許文献３】特開２００３−２４４４１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、共通して利用されるＡＰＩを備えたプラットフォームについては、このプラットフォームによって提供される機能又はインターフェースの粒度が適切に設計されないと、アプリケーションの開発効率の向上が期待以上にはかれない場合がある。
【０００９】
例えば、この粒度が小さすぎると、単純なサービスを提供するアプリケーションであるにも関わらず、多くのＡＰＩの呼び出しが必要とされ、そのソースコードは複雑なものとなってしまう。
【００１０】
一方、粒度が大きすぎると、ある機能の一部について変更を加えたサービスを提供するアプリケーションを実装したい場合、プラットフォーム内を修正しなければならず、開発工数の増加を招きかねない。特に、プラットフォーム内における各モジュールの依存関係が強い場合は、プラットフォームに新規機能を追加するだけでなく、既存部分の修正も必要とされる場合があり、事態はより複雑となる。
【００１１】
また、既存のアプリケーションによって提供されているサービスの一部（例えば、画像の入力処理）を変更したアプリケーションを実装したい場合、変更部分以外の部分については既存のアプリケーションを呼び出すといったようなことはできない。したがって、改めてソースコードを記述して新たなアプリケーションを実装しなければならない。
【００１２】
本発明は、上記の点を鑑みてなされたものであって、機能のカスタマイズ又は拡張などを簡略化させることのできる画像処理装置を提供することを目的とするものである。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するために、請求項１にかかる発明は、画像処理装置であって、画像データの入力を制御する入力制御手段と、前記画像データを加工処理する加工手段と、前記画像データの出力を制御する出力制御手段と、前記入力制御手段と前記加工手段との間で前記画像データの伝達を行う第１伝達手段と、前記加工手段と前記出力制御手段との間で前記画像データの伝達を行う第２伝達手段と、を備え、前記入力制御手段は、入力された前記画像データに固有の識別情報を付与するとともに、前記画像データと前記識別情報とを前記第１伝達手段に書き込み、前記出力制御手段は、前記画像データの出力要求を受け付けた場合に、前記識別情報と、前記出力要求に含まれる出力される画像データの条件であるデータ生成条件と、を含むデータ読出要求を第２伝達手段に伝達し、前記第１伝達手段は、前記入力手段によって書き込まれた前記画像データのうち、前記データ読出要求に含まれる前記識別情報に対応付けられる前記画像データを前記加工手段に書き込み、前記第２伝達手段は、前記データ読出要求を前記加工手段に伝達し、前記加工手段は、前記第１伝達手段によって書き込まれた前記画像データと、前記第２伝達手段から受けた前記データ読出要求に含まれる前記データ生成条件とを比較し、前記画像データを前記データ生成条件に基づいて出力するために必要な処理条件である加工処理条件を決定し、前記加工処理条件に基づき前記画像データを加工処理するとともに、前記出力制御手段に出力すること、を特徴とする。
【００１４】
また、請求項２にかかる発明は、請求項１に記載の画像処理装置であって、前記データ生成条件は、前記画像データの大きさに関する情報を含み、前記加工手段は、さらに、画像データを拡大する拡大機能を備え、前記画像データと前記データ生成条件とを比較して前記加工処理条件を決定し、前記加工処理条件に基づいて前記画像データを拡大処理することを特徴とする。
【００１５】
また、請求項３にかかる発明は、請求項１に記載の画像処理装置であって、前記データ生成条件は、前記画像データの大きさに関する情報を含み、前記加工手段は、さらに、画像データを縮小する縮小機能を備え、前記画像データと前記データ生成条件とを比較して、前記加工処理条件を決定し、前記加工処理条件に基づいて前記画像データを縮小処理することを特徴とする。
【００１６】
また、請求項４にかかる発明は、請求項１〜３のいずれか一つに記載の画像処理装置であって、前記データ生成条件は、前記画像データの方向に関する情報を含み、前記加工手段は、さらに、画像データを回転させる回転機能を備え、前記画像データと前記データ生成条件とを比較して、前記加工処理条件を決定し、前記加工処理条件に基づいて前記画像データを回転処理することを特徴とする。
【００１７】
また、請求項５にかかる発明は、請求項１〜４のいずれか一つに記載の画像処理装置であって、前記データ生成条件は、前記画像データの解像度に関する情報を含み、前記加工手段は、さらに、画像データの解像度を補正する解像度補正機能を備え、前記画像データと前記データ生成条件とを比較して、前記加工処理条件として間引き率を決定し、前記間引き率に基づいて前記画像データに対して間引き処理すること、を特徴とする。
【００１８】
また、請求項６にかかる発明は、請求項５に記載の画像処理装置であって、前記加工手段は、前記画像データと前記データ生成条件とを比較して、前記加工処理条件として補間率を決定し、前記補間率に基づいて前記画像データに対して補間処理すること、を特徴とする。
【００１９】
また、請求項７にかかる発明は、請求項１〜６のいずれか一つに記載の画像処理装置であって、前記加工手段は、さらに、前記加工処理条件に基づいて加工処理した画像データを前記第２伝達手段に書き込み、前記第２伝達手段は、さらに、前記加工手段によって書き込まれた前記画像データを前記出力制御手段に伝達し、前記出力制御手段は、さらに前記第２伝達手段から伝達された前記画像データを記憶するデータリストと、前記データリストを管理するデータ管理手段と、前記出力要求を受け付けた場合に、前記出力要求に含まれる前記識別情報と、前記データ生成条件と、を検索条件として、前記データリストに記憶される前記画像データのうち前記検索条件に合致する前記画像データを検索するデータ検索手段と、を備えたこと、を特徴とする。
【００２０】
また、請求項８にかかる発明は、請求項７に記載の画像処理装置であって、前記データ検索手段は、前記画像データ検索の結果、前記検索条件に合致する前記画像データが存在しない場合には、前記データ読出要求を第２伝達手段に伝達すること、を特徴とする。
【００２１】
また、請求項９にかかる発明は、請求項７または８に記載の画像処理装置であって、前記データ検索手段は、前記画像データ検索の結果、前記検索条件に合致する前記画像データが存在した場合には、前記画像データを前記データリストから取得して出力処理を実行することを特徴とする。
【００２２】
また、請求項１０にかかる発明は、請求項７に記載の画像処理装置であって、前記データ管理手段は、前記データ検索手段による検索の結果、前記検索条件のうち前記識別情報に合致し、且つ、前記データ生成条件に合致しない前記画像データが、前記データリストに存在した場合には、前記識別情報に合致する前記画像データを削除し、前記第２伝達手段から伝達された前記画像データを前記データリストに記憶させることを特徴とする。
【００２３】
また、請求項１１にかかる発明は、請求項７に記載の画像処理装置であって、前記データ管理手段は、前記データ検索手段による検索の結果、前記検索条件のうち前記識別情報に合致し、且つ、前記データ生成条件に合致しない前記画像データが、前記データリストに存在した場合には、前記識別情報に合致する前記画像データと、前記第２伝達手段から伝達された前記画像データと、を前記データリストに記憶させることを特徴とする。
【発明の効果】
【００２４】
本発明は、パイプ＆フィルタとよばれるソフトェアアーキテクチャを画像処理装置に適用したもので、入力を制御する入力フィルタと、データの加工を行う加工フィルタと、出力を制御する出力フィルタとを備え、各フィルタをパイプによって結合することによりアプリケーションを構築するものである。かかる構成によれば、各フィルタの機能を独立して扱い、機能のカスタマイズ又は拡張の簡略化の実現が可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００２５】
以下に添付図面を参照して、この発明にかかる画像処理装置の最良な実施の形態を詳細に説明する。なお、以下に示す実施の形態では、本発明の画像処理装置をプリンタ機能、コピー機能、スキャナ機能及びファクシミリ機能を一つの筐体に含めた複合機として用いた場合を例示して説明するが、これに限定されるものではない。例えば、本発明の画像処理装置を、スキャナ装置、ファクシミリ装置等の画像形成装置に適用することができる。また、本発明の画像処理装置を一般的なコンピュータ等の情報処理装置に適用することもできる。
【００２６】
本発明は、パイプ＆フィルタと呼ばれる考え方に基づくソフトウェアアーキテクチャを画像処理装置に適用することで、画像処理装置の機能のカスタマイズ又は拡張などを簡略化するものである。本発明では、データに識別子を付与し、出力側から入力側へ識別子とデータ生成条件とを含む読出要求を伝達することにより、出力側が必要とするデータを、出力側で決定する条件に応じた処理を施した形で得ることができるようにする。さらに、本発明では出力フィルタでパイプから読み出したデータを管理し、出力側で決定する条件が途中で変化した場合には再度パイプにデータを要求して異なった処理を施したデータを取得する。
【００２７】
図１は、パイプ＆フィルタの概念を説明する図である。図１に示す「Ｐ」はパイプを示し、「Ｆ」はフィルタを示す。フィルタとは、入力されたデータに対して所定の処理を施して、その処理結果を出力するプログラムである。そしてパイプは、フィルタとフィルタを連結する手段であり、パイプの入力側に結合されたフィルタから出力される処理結果を一時的に保持し、その後パイプの出力側へ結合されたフィルタへデータを伝達する。このように、パイプ＆フィルタの概念によれば、パイプを介在させてフィルタにおける処理を連続したものとすることができる。
【００２８】
本発明の画像処理装置では、フィルタにおいて施される所定の処理を、入力されたデータに対し、所定の変換を施す処理と考える。すなわち、本発明の画像処理装置では、画像処理装置で実現される各機能をドキュメント（入力データ）に対する「変換処理」の連続として捉える。画像処理装置の各機能は、ドキュメントすなわちデータの入力、加工及び出力によって構成されるものと考える。そこで、本発明では「入力処理」、「加工処理」及び「出力処理」のそれぞれを「変換処理」として捉え、一つの変換処理を実現するソフトウェア部品をフィルタとして構成した。
【００２９】
本発明の画像処理装置では、データの入力処理を制御するフィルタを入力フィルタ、データの加工処理を制御するフィルタを加工フィルタ、データの出力処理を制御するフィルタを出力フィルタとした。これらの各フィルタはそれぞれ独立したプログラムであって、各フィルタは、画像処理装置において独立してフィルタ単位で追加（インストール）、削除（アンインストール）することが可能である。
【００３０】
（実施の形態１）
図２は実施の形態１にかかる画像処理装置１００のハードウェア構成図である。画像処理装置１００は、それぞれバスＢで相互に接続されているスキャン装置２１、プロッタ装置２２、ドライブ装置２３、補助記憶装置２４、メモリ装置２５、演算処理装置２６、インターフェース装置２７及び操作パネル２８で構成される。
【００３１】
スキャン装置２１はスキャナエンジンとエンジン制御部などで構成され、紙原稿をスキャンして画像データとする。プロッタ装置２２はプロッタエンジンとエンジン制御部などで構成され、画像データを印刷する。インターフェース装置２７は、モデム、ＬＡＮカードなどで構成されており、ネットワークに接続する為に用いられる。操作パネル２８は、画像処理装置１００の処理に関する操作を行うために用いられる。操作パネル２８は、例えばタッチパネルなどの表示機能を有するものである。
【００３２】
実施の形態１にかかる画像処理プログラムは、画像処理装置１００を制御する各種プログラムの少なくとも一部である。画像処理プログラムは例えば記録媒体２９の配布やネットワークからのダウンロードなどによって提供される。画像処理プログラムを記録した記録媒体２９は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【００３３】
また、画像処理プログラムを記録した記録媒体２９がドライブ装置２３にセットされると、画像処理プログラムは記録媒体２９からドライブ装置２３を介して補助記憶装置２４にインストールされる。ネットワークからダウンロードされた画像処理プログラムは、インターフェース装置２７を介して補助記憶装置２４にインストールされる。
【００３４】
画像処理装置１００は、インストールされた画像処理プログラムを格納すると共に、必要なファイル、データ等を格納する。メモリ装置２５は、コンピュータの起動時に補助記憶装置２４から画像処理プログラムを読み出して格納する。そして、演算処理装置２６はメモリ装置２５に格納された画像処理プログラムに従って、後述するような各部の機能を実現し、各種処理を実現している。
【００３５】
画像処理装置１００では、画像処理装置１００における各種機能を実現させるソフトウェアアーキテクチャに、上記のパイプ＆フィルタの概念が適用されている。図３は、実施の形態１にかかる画像処理装置１００のソフトウェア構成図である。画像処理装置１００は、例えばプリンタ、コピー、スキャナ、又はＦＡＸ等の複数の機能を一台の筐体において実現する複合機である。
【００３６】
画像処理装置１００の機能を実現するソフトウェアは階層構造となっており、ユーザインターフェイス層１０、コントロール層２０、アプリケーションロジック層３０、デバイスサービス層４０及びデバイス制御層５０により構成されている。これらの各層における上下関係は、層間の呼び出し関係に基づいている。すなわち、図中において上位層が下位層を呼び出す。
【００３７】
画像処理装置１００において、ユーザインターフェイス層１０によりユーザから各種機能の実行指示が成されると、ユーザインターフェイス層１０は、コントロール層２０を呼び出しこの実行要求に基づきアプリケーションロジック層３０を制御する。アプリケーションロジック層３０では、コントロール層２０からの指示に基づき要求された機能を実現させるアプリケーションを実行する。そして、この実行結果に基づきデバイスサービス層４０、デバイス制御層５０が画像処理装置１００のハードウェア資源を制御する。画像処理装置１００では、このような動作によりユーザインターフェイス層１０が受け付けた機
能に対応した出力結果を得る。
【００３８】
次に、各層について説明する。ユーザインターフェイス層１０には、例えば通信サーバ部１１及びローカルＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ）部１２が実装されており、画像処理装置１００の各種機能を実現するための実行要求を受け付ける機能を有する。ここで言う各種機能とは、例えばコピー機能、印刷機能、スキャン機能、ＦＡＸ機能などである。ユーザインターフェイス層１０において、例えば通信サーバ部１１は、例えば図示しないクライアントＰＣ（Ｐｒｅｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等からネットワークを介して実行要求を受け付けても良い。ローカルＵＩ部１２は、例えば画像処理装置１００に設けられた操作パネル２８などを介して実行要求を受け付けても良い。操作パネル２８についての詳細は後述する。ユーザインターフェイス層１０において受け付けられた実行要求は、コントロール層２０へ伝達される。
【００３９】
コントロール層２０は、画像処理装置１００の各機能を実現する処理を制御するための機能が実装されている制御手段である。具体的には、例えば、要求された機能に応じてアプリケーションロジック層３０における各フィルタをパイプ４１を用いて結合し、結合されたフィルタを用いて機能の実行を制御する。
【００４０】
また、コントロール層２０は、特許請求の範囲に記載の制御手段に該当するものであり、パイプ４１を制御する。コントロール層２０は、ユーザインターフェイス層１０において受け付けられた実行要求に基づきパイプ４１を制御する。コントロール層２０によるパイプ４１の制御については後述する。
【００４１】
尚、以下の実施の形態において述べる画像処理装置１００の機能とは、画像処理装置１００がユーザに対して提供する一つのまとまった単位（要求が入力されて最終的な出力が得られるまで）のサービスの定義であり、ソフトウェア的には一つのまとまった単位のサービスを提供するアプリケーションと同義である。
【００４２】
アプリケーションロジック層３０には、画像処理装置１００において提供される機能の一部を実現する部品群である各種フィルタが実装されている。アプリケーションロジック層３０では、コントロール層２０の制御により、複数のフィルタを組み合わせて一つの機能が実現される。実施の形態１におけるアプリケーションロジック層３０には、入力フィルタ３００、加工フィルタ３１０、出力フィルタ３２０が実装されている。これら各フィルタは、同一の定義に基づき動作するものであり、この定義に基づきコントロール層２０に制御される。これら各フィルタの詳細は後述する。
【００４３】
デバイスサービス層４０には、アプリケーションロジック層３０に実装された各フィルタが共通して利用される下位の機能が実装されている。画像処理装置１００のデバイスサービス層４０にはパイプ４１、第１データ管理部４２等が実装されている。パイプ４１は上で述べたパイプの機能を実現するものであり、アプリケーションロジック層３０に実装されている各フィルタのうち、一のフィルタからの出力結果を、一のフィルタへ伝達する。
【００４４】
第１データ管理部４２は、画像処理装置１００内のデータベースであって、例えばユーザにより登録されたユーザ情報や、画像処理装置１００において各種の処理が施された文書データや画像データなどが蓄積されて保管されていても良い。
【００４５】
デバイス制御層５０には、ハードウェアを制御するプログラムであるドライバが実装されている。本実施形態の画像処理装置１００のデバイス制御層５０には、例えばスキャナ制御部５１、プロッタ制御部５２、メモリ制御部５３、Ｔｅｌ回線制御部５４及びネットワーク制御部５５等が実装されている。これらの各制御部は、それぞれの名称に付けられたデバイスを制御するものである。
【００４６】
以下に、アプリケーションロジック層３０に実装された各フィルタについてさらに説明する。
【００４７】
画像処理装置１００の入力フィルタ３００は、画像処理装置１００の外部より入力されたデータに対する入力処理を制御する。入力フィルタ３００には、読取フィルタ３０１、保管文書読出フィルタ３０２、メール受信フィルタ３０３、ＦＡＸ受信フィルタ３０４、ＰＣ文書受信フィルタ３０５、レポートフィルタ３０６等が含まれる。
【００４８】
読取フィルタ３０１は、例えばスキャナによる画像データの読取を制御し、読み取られた画像データを出力する。メール受信フィルタ３０３は、画像処理装置１００において電子メールを受信し、受信した電子メールに含まれるデータを出力する。ＦＡＸ受信フィルタ３０４はＦＡＸ受信を制御し、受信されたデータを出力する。ＰＣ文書受信フィルタ３０５は、図示しないクライアントＰＣなどから印刷データを受信し、この印刷データを出力する。レポートフィルタ３０６は、画像処理装置１００の設定情報や履歴情報などを例えば表形式などに整え、この整えられたデータを出力する。尚ここで、保管文書読出フィルタ３０２は、画像処理装置１００の外部からではなく、画像処理装置１００内の例えば第１データ管理部４２や、画像処理装置１００の有する図示しない記憶装置などに蓄積されたデータを読み出し、読み出したデータを出力するものとした。
【００４９】
画像処理装置１００の加工フィルタ３１０は、加工フィルタ３１０の入力側のパイプより入力されたデータに所定の処理を施し、加工フィルタ３１０の出力側にあるフィルタへ処理結果を出力する。加工フィルタ３１０には、文書加工フィルタ３１１、文書変換フィルタ３１２等が含まれる。文書加工フィルタ３１１は、入力されたデータに所定の画像変換処理を施し出力する。この画像変換処理とは、例えば入力されたデータの集約、拡大、縮小処理等であっても良い。文書変換フィルタ３１２は、入力されたデータにレンダリング処理を施し出力する。すなわち、文書変換フィルタ３１２に入力されたＰｏｓｔＳｃｒ
ｉｐｔデータをビットマップデータに変換して出力する。
【００５０】
画像処理装置１００の出力フィルタ３２０は、入力されたデータに対する出力処理を制御し、画像処理装置１００の外部へ出力する。出力フィルタ３２０には、印刷フィルタ３２１、保管文書登録フィルタ３２２、メール送信フィルタ３２３、ＦＡＸ送信フィルタ３２４、ＰＣ文書送信フィルタ３２５、プレビューフィルタ３２６等が含まれる。
【００５１】
印刷フィルタ３２１は、入力されたデータをプロッタに出力（印刷）させる。メール送信フィルタ３２３は、入力されたデータを電子メールに添付して送信する。ＦＡＸ送信フィルタ３２４は、入力されたデータをＦＡＸ送信する。ＰＣ文書送信フィルタ３２５は、入力されたデータを図示しないクライアントＰＣなどに送信する。プレビューフィルタ３２６は、入力されたデータを画像処理装置１００の有する操作パネルなどにプレビュー表示させる。尚ここで、文書登録フィルタ３２２から出力されるデータについては、例外的に画像処理装置１００の外部ではなく画像処理装置１００内の記憶装置やデータ管理部４
２に対してデータが出力されて保存されるものとした。
【００５２】
アプリケーションロジック層３０では、上記各フィルタを組み合わせることにより、画像処理装置１００の各機能を実現している。係る構成によれば、画像処理装置１００では、フィルタとパイプの組み合わせにより各種の機能を実現することができる。具体的には、例えばコピー機能を実現したい場合には、読取フィルタ３０１、文書加工フィルタ３１１、印刷フィルタ３２１を組み合わせれば良い。
【００５３】
次に、このパイプ＆フィルタの概念を適用した画像処理装置について説明する。図４は、実施の形態１にかかる画像処理装置におけるフィルタとパイプの構成を説明する図である。画像処理装置１００において、入力フィルタ３００と加工フィルタ３１０とが第１パイプ４１ａ（第１伝達手段）により連結され、加工フィルタ３１０と出力フィルタ３２０とが第２パイプ４１ｂ（第２伝達手段）によって連結されている。
【００５４】
第１パイプ４１ａは入力フィルタ３００と加工フィルタ３１０とを連結する手段である。第１パイプ４１ａは、入力フィルタ３００から入力されるデータを一時的に保持し、加工フィルタ３１０に書き込みを行うとともに、加工フィルタ３１０からのデータの読出要求に応じてデータを加工フィルタ３１０に伝達する。
【００５５】
第２パイプは４１ｂは、加工フィルタ３１０と出力フィルタ３２０とを連結する手段である。第２パイプ４１ｂは、出力フィルタ３２０からのデータの読出要求に応じてデータを加工パイプ３１０に伝達するとともに、加工されたデータを加工フィルタ３１０より取得して出力フィルタ３２０に伝達する。実施の形態１にかかる画像処理装置においては、入力フィルタ３００、加工フィルタ３１０、出力フィルタ３２０に、第１パイプ４１ａと第２パイプ４１ｂとを介在させることにより、フィルタ３００〜３２０間における連続した処理を実現することができる。
【００５６】
図５はパイプ＆フィルタの概念を適用した画像処理装置において一機能を実現させる動作を説明するフローチャートである。
【００５７】
まず入力フィルタ３００は、入力デバイスよりデータを入力し（ステップＳ１１１）、このデータを、出力側に接続されている第１パイプ４１ａに出力する（ステップＳ１１２）。なお、データが複数回に分けて入力される場合（複数枚の原稿がスキャンされる場合等）は、データの入力とパイプへの出力が繰り返される。全ての入力データについて処理が終了すると（ステップＳ１１３；Ｙｅｓ）、入力フィルタ３００の処理は終了する。全ての入力データについて処理が終了していない場合にはステップＳ１１１に戻る（ステップＳ１１３；Ｎｏ）。
【００５８】
加工フィルタ３１０は、入力側に接続されている第１パイプ４１ａに対するデータの入力を検知すると処理を開始する。まず、当該第１パイプ４１ａからデータを読み込み（ステップＳ１２１）、データに対して画像処理を施す（ステップＳ１２２）。続いて、処理結果としてのデータを出力側に接続されている第２パイプ４１ｂに出力する（ステップＳ１２３）。入力側の第１パイプ４１ａに入力された全てのデータについて処理が終了すると（ステップＳ１２４；Ｙｅｓ）、加工フィルタ３１０の処理は終了する。全てのデータについて処理が終了していない場合には、ステップＳ１２１に戻る（ステップＳ１２４；Ｎｏ）。
【００５９】
出力フィルタ３２０は、入力側に接続されている第２パイプ４１ｂに対するデータの入力を検知すると処理を開始する。まず、当該第２パイプ４１ｂからデータを読み込み（Ｓ１３１）。続いて、読み込まれたデータを出力デバイスを利用して出力する（Ｓ１３２）。入力側の第２パイプ４１ｂに入力された全てのデータについて処理が終了すると（Ｓ１３３；Ｙｅｓ）、出力フィルタ３２０の処理は終了する。全てのデータについて処理が終了していない場合には、ステップＳ１３１に戻る（ステップＳ１３３；Ｎｏ）。
【００６０】
このように、画像処理装置１００では、各フィルタを部品として各機能を構築するため、機能のカスタマイズ又は拡張を簡便に行うことができる。すなわち、各フィルタ間には、機能的な依存関係はなく独立性が保たれているため、フィルタの新たな追加やフィルタの組み合わせの変更によって、新たな機能（アプリケーション）を容易に開発することができる。したがって、新たなアプリケーションの実装が要求された場合、当該アプリケーションの一部の処理について実装されていない場合は、当該一部の処理を実現するフィルタのみを開発し、インストールすればよい。よって、コントロール層２０及びアプリケーションロジック層３０より下位の層について、新たなアプリケーションの実装に応じて発生する修正の頻度を低下させることができ、安定したプラットフォームを提供することができる。
【００６１】
このため、プラットフォームによって提供される機能又はインターフェイスの粒度に影響されることなくアプリケーションの開発効率を向上させることができる。また、既存のアプリケーションによって提供されるサービスの一部を変更したアプリケーションを実装したい場合にも、このサービスを提供するフィルタの一部のみを変更すれば良いので新たにソースコードを記述する必要がなく、開発効率を向上させることができる。
【００６２】
次に、以上のように構成された実施の形態１にかかる画像処理装置の動作について、図６を用いて説明する。図６は、実施の形態１にかかる画像処理装置による読出要求受付から出力実行までの処理手順を示すフローチャートである。実施の形態１にかかる画像処理装置は、用紙指定変倍機能及び応用変倍機能を有する。
【００６３】
入力フィルタ３００において、利用者からデータの入力を受け付けると（ステップＳ６００）、入力フィルタ３００は、受け付けたデータに識別子としてページ番号を付与し、データと識別子とを対応付けて第１パイプ４１ａに書き込みを行う（ステップＳ６０２）。なお、入力されたデータには、用紙サイズや用紙方向等に関する情報も含まれることとしてもよい。ここでは、データと識別子に対応付けて用紙サイズＡ３が書き込まれているものとする。なお、実施の形態１におけるデータの識別子として、ページ番号を例示しているが、入力フィルタ３００がデータを取得した順番に付与されることとしてもよい。例えば、データがスキャン装置２１によって読取られた画像データであった場合には、スキャン装置２１によって読取られた順番にデータ番号を付与し、このデータ番号を識別子としてもよい。尚、この識別子はデータを取得した順番に限定されるものではなく、データを識別することができるものであれば良い。例えば、入力されたデータの用紙サイズ、解像度、画質モード等を識別子として用いてもよい。
【００６４】
次に、出力フィルタ３２０は、利用者からデータの出力処理の実行要求を受け付けたか否かを判断する（ステップＳ６０４）。出力フィルタ３２０において、利用者からデータの出力処理の実行要求を受け付けたと判断した場合には（ステップＳ６０４；Ｙｅｓ）、出力フィルタ３２０は、出力されるデータに対応付けられる識別子とデータ生成条件として用紙サイズＡ４とを含むデータの読出要求を第２パイプ４１ｂに伝達する（ステップＳ６０６）。第２パイプ４１ｂは、識別子とデータ生成条件とを含むデータの読出要求を加工フィルタ３１０に伝達する（ステップＳ６０８）。なお、出力フィルタ３２０において、利用者からデータの出力処理の実行要求を受け付けていないと判断した場合には（ステップＳ６０４；Ｎｏ）、出力処理を受け付けるまで検知を繰り返す。
【００６５】
加工フィルタ３１０は、読出要求に含まれる識別子に対応するデータに対して加工処理を施すために、読出要求を第１パイプ４１ａに伝達する（ステップＳ６１０）。第１パイプには、ステップＳ６０２で前述したとおり、識別子と対応付けられたデータが書き込まれている。第１パイプ４１ａは、加工フィルタ３１０からの読出要求を受けて、読出要求に含まれる識別子に対応するデータを加工フィルタ３１０に書き込む（ステップＳ６１２）。
【００６６】
ここで、第１パイプ４１ａが、加工フィルタから読出要求を受け付けてから、加フィルタに読出要求に含まれる識別子に対応付けられるデータを書き込むまでの処理について説明する。図７は、実施の形態１にかかる画像処理装置における第１伝達手段において読出要求を受け付けてから加工フィルタ３１０へのデータの書き込むまでの手順を示すフローチャートである。ここでは、入力フィルタ３００が、保管文書読出フィルタ３０２等である場合について例示する。データは、識別子を付与されて、画像処理装置１００内の記憶装置（不図示）に予め格納されている。尚、実施の形態１にかかる画像処理装置においては、記憶装置は、メモリ装置２５、ハードディスクドライブ装置（ＨＤＤ）等、補助記憶装置２４等の記憶媒体によって実現されている。
【００６７】
第１パイプ４１ａは、加工フィルタ３１０から受けた読出要求を入力フィルタ３００に
伝達する（ステップＳ７００）。入力フィルタ３００は、読出要求に含まれる識別子に対応する任意のデータを、第１パイプ４１ａに書き込む（ステップＳ７０２）。
【００６８】
次に、加工フィルタ３１０は、第１パイプ４１ａにデータが書き込まれたか否かを判断する（ステップＳ７０４）。加工フィルタ３１０において、第１パイプ４１ａにデータが書き込まれたと判断された場合には（ステップＳ７０４；Ｙｅｓ）、加工フィルタ３１０は、第１パイプ４１ａからデータを読み出して加工フィルタ３１０に書き込みを行う（ステップＳ７０６）。一方、ステップＳ７０４において、加工フィルタ３１０が第１パイプ４１ａにデータが書き込まれたと判断しない場合には（ステップＳ７０４；Ｎｏ）、加工フィルタ３１０は、データの書き込みを検知するまで処理を繰り返す。
【００６９】
図６にもどり、加工フィルタ３１０は、ステップＳ６０２で書き込まれたデータの用紙サイズＡ３と、データ生成条件としての用紙サイズＡ４とを比較して加工処理条件を決定する（ステップＳ６１４）。ここでは、書き込まれた用紙サイズＡ３とデータ生成条件としての用紙サイズＡ４とを比較した結果、加工処理条件として縮小率７１％を決定する。加工フィルタ３１０は、決定した加工処理条件に基づいてデータを縮小する加工処理を行い（ステップＳ６１６）、加工後のデータを第２パイプ４１ｂに書き込む（ステップＳ６１８）。
【００７０】
出力フィルタ３２０は、加工後のデータが第２パイプ４１ｂに書き込まれたか否かを判断する（ステップＳ６２０）。出力フィルタ３２０は、第２パイプ４１ｂへのデータの書き込みを検知した場合には（ステップＳ６２０：Ｙｅｓ）、書き込まれたデータを読み出して出力処理を実行する（ステップＳ６２２）。一方、第２パイプ４１ｂへのデータの書き込みを検知しない場合には（ステップＳ６２０：Ｎｏ）、出力フィルタ３２０はデータの書き込みを検知するまで処理を検知を繰り返す。
【００７１】
実施の形態１においては、加工フィルタ３１０において、出力要求に応じてデータを拡大若しくは縮小する処理を行うこととしているが、入力フィルタ３００において入力時に所定の用紙サイズに変更可能なように読取るように構成してもよい。
【００７２】
次に、実施の形態１にかかる画像処理装置において、上述の処理手順により用紙指定変倍処理を施して出力されたデータの一例を示す。図８は、用紙指定変倍機能の概要を示す図である。図８における左方には、画像処理装置１００に入力され、第１パイプ４１ａに書き込まれた文書や画像等の原稿データを例示する。図８における右方には、出力要求に応じて加工フィルタ３１０によって用紙指定変倍処理を施されたデータを示す。用紙指定変倍には、縮小（２５％、５０％、６１％、７１％、８２％、８７％）、等倍（１００％）、拡大（１１５％、１２２％、１４１％、２００％、４００％）等、予め定められた数値が設定されている。
【００７３】
入力フィルタ３００によって第１パイプ４１ａに書き込まれた、用紙サイズＡ３、Ａ４、Ａ５のデータは、それぞれ決定された加工処理条件に基づいて縮小、等倍、拡大等の加工処理を施され、用紙サイズＡ４のデータとして出力される。実施の形態１においては、指定変倍機能を備えた画像処理装置を例示して説明したが、応用変倍機能をさらに備え、任意の倍率に加工処理が可能な画像処理装置とするように構成してもよい。また、加工処理条件として、文字を鮮明に出力する文字モード、高画質の写真モード、文字と写真が混在した文書に適用される文字写真モード等、画質モードを設定してもよい。
【００７４】
このように、実施の形態１にかかる画像処理装置によれば、入力フィルタ３００と、加工フィルタ３１０と、出力フィルタ３２０とをパイプによって結合することによりアプリケーションを構築することにより、各フィルタの機能を独立させて、機能のカスタマイズ又は拡張の簡略化を実現することが可能となる。
【００７５】
また、実施の形態１にかかる画像処理装置によれば、入力フィルタ３００においてデータに識別子を付与し、出力フィルタ３２０は識別子及びデータ生成条件を含む読出要求を加工フィルタ３１０に伝達することにより、出力フィルタ３２０の要求を入力フィルタ３００に容易に反映することが可能となる。その結果、出力用件に応じて入力フィルタ３００及び加工フィルタ３１０で細やかな処理内容の設定を可能にするとともに、カスタマイズを実現し性能の向上を図ることが可能となる。
【００７６】
さらに、実施の形態１にかかる画像処理装置によれば、用紙指定変倍機能及び応用変倍機能を有し、データ生成条件として用紙サイズを含むデータの読出要求を加工フィルタ３１０に伝達することにより、読出要求に応じた画像の拡大処理、縮小処理が可能である。従って、用紙切れや紙つまり等、所望の用紙サイズによる出力処理が実行できない場合にも、異なる用紙サイズに拡大、等倍、縮小処理することにより、加工後のデータを用紙サイズの異なる他の給紙トレイより迅速に出力することができる。
【００７７】
（応用例１）
応用例１では、用紙指定変倍機能及び応用変倍機能に加えて回転ソート機能を有する画像処理装置１００について説明する。図９は、実施の形態１の応用例１にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。
【００７８】
入力フィルタ３００において、利用者からデータの入力を受け付けると（ステップＳ９００）、入力フィルタ３００は、受け付けたデータに識別子としてページ番号を付与し、データと識別子とを対応付けて第１パイプ４１ａに書き込みを行う（ステップＳ９０２）。なお、入力されたデータには、用紙サイズや用紙方向、用紙方向等に関する情報も含まれることとしてもよい。ここでは、データと識別子に対応付けて、用紙サイズＡ３、用紙方向ヨコが書き込まれているものとする。
【００７９】
次に、出力フィルタ３２０は、利用者からデータの出力処理の実行要求を受け付けたか否かを判断する（ステップＳ９０４）。出力フィルタ３２０において、利用者からデータの出力処理の実行要求を受け付けたと判断した場合には（ステップＳ９０４；Ｙｅｓ）、出力フィルタ３２０は、出力されるデータに対応付けられる識別子とデータ生成条件として用紙サイズＡ４、用紙方向タテとを含むデータの読出要求を第２パイプ４１ｂに伝達する（ステップＳ９０６）。第２パイプ４１ｂは、識別子とデータ生成条件とを含むデータの読出要求を加工フィルタ３１０に伝達する（ステップＳ９０８）。なお、出力フィルタ３２０において、利用者からデータの出力処理の実行要求を受け付けていないと判断した場合には（ステップＳ９０４；Ｎｏ）、出力処理を受け付けるまで検知を繰り返す。
【００８０】
加工フィルタ３１０は、読出要求に含まれる識別子に対応するデータに対して加工処理を施すために、読出要求を第１パイプ４１ａに伝達する（ステップＳ９１０）。第１パイプには、ステップＳ９０２で前述したとおり、識別子と対応付けられたデータが書き込まれている。第１パイプ４１ａは、加工フィルタ３１０からの読出要求を受けて、読出要求に含まれる識別子に対応するデータを加工フィルタ３１０に書き込む（ステップＳ９１２）。第１パイプ４１ａが、加工フィルタ３１０から読出要求を受け付けてから、加工フィルタ３１０に読出要求に含まれる識別子に対応付けられるデータを書き込むまでの処理については、図７の説明と同様であるので省略する。
【００８１】
加工フィルタ３１０は、ステップＳ９０２で書き込まれたデータの用紙サイズＡ３、用紙方向ヨコと、データ生成条件としての用紙サイズＡ４、用紙方向タテとを比較した結果、加工処理条件として縮小率７１％、９０°回転を決定する（ステップＳ９１４）。加工フィルタ３１０は、決定した加工処理条件に基づいてデータを縮小し回転する加工処理を行い（ステップＳ９１６）、加工後のデータを第２パイプ４１ｂに書き込む（ステップＳ９１８）。
【００８２】
出力フィルタ３２０は、加工後のデータが第２パイプ４１ｂに書き込まれたか否かを判断する（ステップＳ９２０）。出力フィルタ３２０は、第２パイプ４１ｂへのデータの書き込みを検知した場合には（ステップＳ９２０：Ｙｅｓ）、書き込まれたデータを読み出して出力処理を実行する（ステップＳ９２２）。一方、第２パイプ４１ｂへのデータの書き込みを検知しない場合には（ステップＳ９２０：Ｎｏ）、出力フィルタ３２０はデータの書き込みを検知するまで処理を検知を繰り返す。
【００８３】
次に、上述の処理手順により用紙指定変倍処理及び回転処理を施して出力されたデータの一例を示す。図１０は、用紙指定変倍機能及び回転ソート機能の概要を示す図である。図１０における左方には、画像処理装置１００に入力され、第１パイプ４１ａに書き込まれた文書や画像等の原稿データを例示する。ここでは、第１パイプ４１ａに書き込まれたデータとして、用紙サイズＡ３及び用紙方向タテ、用紙サイズＡ４及び用紙方向ヨコ、用紙サイズＡ５及び用紙方向タテ、用紙サイズＡ５及び用紙方向ヨコのデータを例示する。図１０における右方には、出力要求に応じて加工フィルタ３１０によって用紙指定変倍処理及び回転処理を施されたデータを例示する。用紙指定変倍機能については、実施の形態１で前述した通りであるので省略する。
【００８４】
回転ソート機能とは、出力する給紙トレイの用紙方向に合わせて適宜用紙方向を回転する機能である。具体的には、データに対応付けられる用紙方向と給紙トレイの用紙方向が等しい場合に回転角度０°、データに対応付けられる用紙方向と給紙トレイの用紙方向が異なる場合に回転角度９０°と設定した回転処理が存在する。回転角度９０°と設定した処理においては、用紙方向ヨコから用紙方向タテへ９０°回転、用紙方向タテから用紙方向ヨコへ９０°回転等が存在する。図１０では、第１パイプ４１ａに書き込まれたデータに対し、拡大、等倍、縮小等の変倍処理が行われた後に、適宜０°回転処理や９０°回転が施され、用紙サイズＡ４及び用紙方向ヨコである出力先のトレイに出力される。
【００８５】
応用例１においては、指定変倍機能、及び回転機能を備えた画像処理装置を例示して説明したが、応用変倍機能をさらに備え、任意の倍率に加工処理が可能な画像処理装置とするように構成してもよい。また、加工処理条件として、文字を鮮明に出力する文字モード、高画質の写真モード、文字と写真が混在した文書に適用される文字写真モード等、画質モードを設定してもよい。
【００８６】
応用例１にかかる画像処理装置によれば、入力フィルタ３００においてデータに識別子を付与し、出力フィルタ３２０は識別子及びデータ生成条件を含む読出要求を加工フィルタ３１０に伝達することにより、出力フィルタ３２０の要求を入力フィルタ３００に容易に反映することが可能となる。その結果、出力用件に応じて入力フィルタ３００及び加工フィルタ３１０で細やかな処理内容の設定を可能にするとともに、カスタマイズを実現し性能の向上を図ることが可能となる。
【００８７】
また、応用例１にかかる画像処理装置によれば、用紙指定変倍機能及び応用変倍機能及び回転機能を有し、データ生成条件として用紙方向を含むデータの読出要求を加工フィルタ３１０に伝達することにより、読出要求に応じた画像の回転処理が可能である。従って、所望の用紙サイズの給紙トレイにおいて用紙切れや紙つまり等が発生し、出力処理が実行できない場合にも、異なる用紙方向に回転処理することにより、加工後のデータを用紙方向の異なる他の給紙トレイより迅速に出力することが可能である。
【００８８】
（応用例２）
応用例では、画像データの解像度補正機能を備えたＦＡＸ送受信機能を有する画像処理装置１００について説明する。ここでは、画像処理装置が備えるＦＡＸ送受信機能を用いて相手先と通信し、相手先に設置されるＦＡＸ機能を有する送受信機に対応する解像度を取得するとともに、取得した解像度で相手先に画像データを送信する処理を例示する。図１１は実施の形態１の応用例２にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。
【００８９】
入力フィルタ３００において、利用者からデータの入力を受け付けると（ステップＳ１１００）、入力フィルタ３００は、受け付けたデータに識別子としてページ番号を付与し、データと識別子とを対応付けて第１パイプ４１ａに書き込みを行う（ステップＳ１１０２）。なお、入力されたデータには、用紙サイズや用紙方向、用紙方向、解像度を表すｄｐｉ（ｄｏｔ  ｐｅｒ  ｉｎｃｈ）等に関する情報も含まれることとしてもよい。ここでは、データと識別子に対応付けて、解像度６００ｄｐｉが書き込まれているものとする。
【００９０】
次に、出力フィルタ３２０は、利用者からデータの出力処理の実行要求を受け付けたか否かを判断する（ステップＳ１１０４）。出力フィルタ３２０において、利用者からデータの出力処理の実行要求を受け付けたと判断した場合には（ステップＳ１１０４；Ｙｅｓ）、出力フィルタ３２０は、受信相手と通信し相手先に設置されるＦＡＸ送受信機に対応する解像度１５０ｄｐｉを取得する（ステップＳ１１０６）。出力フィルタ３２０は、出力されるデータに対応付けられる識別子とデータ生成条件として解像度１５０ｄｉとを含むデータの読出要求を第２パイプ４１ｂに伝達する（ステップＳ１１０８）。第２パイプ４１ｂは、識別子とデータ生成条件とを含むデータの読出要求を加工フィルタ３１０に伝達する（ステップＳ１１１０）。なお、出力フィルタ３２０において、利用者からデータの出力処理の実行要求を受け付けていないと判断した場合には（ステップＳ１１０４；Ｎｏ）、出力処理を受け付けるまで検知を繰り返す。
【００９１】
加工フィルタ３１０は、読出要求に含まれる識別子に対応するデータに対して加工処理を施すために、読出要求を第１パイプ４１ａに伝達する（ステップＳ１１１２）。第１パイプには、ステップＳ１１０２で前述したとおり、識別子と対応付けられたデータが書き込まれている。第１パイプ４１ａは、加工フィルタ３１０からの読出要求を受けて、読出要求に含まれる識別子に対応するデータを加工フィルタ３１０に書き込む（ステップＳ１１１４）。第１パイプ４１ａが、加工フィルタ３１０から読出要求を受け付けてから、加フィルタに読出要求に含まれる識別子に対応付けられるデータを書き込むまでの処理については、図７の説明と同様であるので省略する。
【００９２】
加工フィルタ３１０は、ステップＳ１１０２で書き込まれたデータの解像度６００ｄｐｉと、データ生成条件としての解像度１５０ｄｐｉとを比較した結果、加工処理条件として間引き率２５％を決定する（ステップＳ１１１６）。加工フィルタ３１０は、決定した加工処理条件に基づいてデータを間引きする加工処理を行い（ステップＳ１１１８）、加工後のデータを第２パイプ４１ｂに書き込む（ステップＳ１１２０）。
【００９３】
出力フィルタ３２０は、加工後のデータが第２パイプ４１ｂにデータ書き込まれたか否かを判断する（ステップＳ１１２２）。出力フィルタ３２０は、第２パイプ４１ｂへのデータの書き込みを検知した場合には（ステップＳ１１２２：Ｙｅｓ）、書き込まれたデータを読み出して出力処理を実行する（ステップＳ１１２４）。一方、第２パイプ４１ｂへのデータの書き込みを検知しない場合には（ステップＳ１１２２：Ｎｏ）、出力フィルタ３２０はデータの書き込みを検知するまで処理を検知を繰り返す。
【００９４】
次に、上述の処理手順により画像データの解像度について間引き処理施して出力されたデータの一例を示す。図１２は、解像度補正機能の概要を示す図である。図１２における左方には、入力フィルタ３００によって第１パイプ４１ａに書き込まれた、解像度３００ｄｐｉのデータを例示する。画像処理装置は、相手先と通信を行って、相手先に設置されるＦＡＸ機能を有する送受信機に対応する解像度６００ｄｐｉ、３００ｄｐｉ、１５０ｄｐｉを取得する。出力フィルタ３２０は取得した解像度を出力要求として、第２伝達手段を介して加工フィルタ３１０に伝達する。加工フィルタ３１０は取得した解像度に補間処理、間引き処理等を行って、出力フィルタ３２０に加工データを伝達し、出力フィルタ３２０は相手先の送受信機に対応する解像度により出力処理を行う。
【００９５】
応用例２においては、解像度補正機能を備えた画像処理装置を例示して説明したが、用紙指定変倍機能、応用変倍機能、回転機能をさらに備え、所定の倍率、任意の倍率及び所定の用紙方向に加工処理が可能な画像処理装置とするように構成してもよい。また、加工処理条件として、文字を鮮明に出力する文字モード、高画質の写真モード、文字と写真が混在した文書に適用される文字写真モード等、画質モードを設定してもよい。
【００９６】
応用例２にかかる画像処理装置によれば、入力フィルタ３００においてデータに識別子を付与し、出力フィルタ３２０は識別子及びデータ生成条件を含む読出要求を加工フィルタ３１０に伝達することにより、出力フィルタ３２０の要求を入力フィルタ３００に容易に反映することが可能となる。その結果、出力用件に応じて入力フィルタ３００及び加工フィルタ３１０で細やかな処理内容の設定を可能にするとともに、カスタマイズを実現し性能の向上を図ることが可能となる。
【００９７】
また、応用例２にかかる画像処理装置によれば、データ生成条件として用紙サイズを含むデータの読出要求を加工フィルタ３１０に伝達することにより、読出要求に応じた画像の拡大処理、縮小処理が可能である。従って、例えば、用紙切れ等により所望の用紙サイズの出力ができない場合にも、異なる用紙サイズに拡大処理若しくは縮小処理することにより新たな出力要求に迅速に適応することが可能である。
【００９８】
また、応用例２にかかる画像処理装置によれば、解像度補正機能を有し、出力先である相手方のＦＡＸ送受信機との間において解像度が相違する場合であっても、相手方と通信して相手方機種に対応する解像度を取得し、取得した画像の解像度をデータ生成条件として含むデータの読出要求を加工フィルタ３１０に伝達することにより、入力フィルタ３００や加工フィルタ３１０において画像に対し間引き処理や補間処理等を施すことが可能である。従って、相手方機種の解像度に応じて、適宜解像度補正処理を施すことにより迅速に画像データを送信することが可能である。
【００９９】
（実施の形態２）
上述した実施の形態１においては、加工フィルタ３１０は、読出要求に含まれる識別子に対応するデータを第１伝達手段より取得し、書き込まれたデータと読出要求に含まれるデータ生成条件とを比較することにより、出力要求に応じたデータに加工処理を行うよう構成していた。実施の形態２においては、出力フィルタ３３０はデータを格納するデータリストとデータ検索手段とを備え、出力要求を受けた場合には、出力要求に含まれる識別子に対応付けられるデータをデータリストから検索し、該当データがデータリストに存在する場合に、該当データを出力するものである。
【０１００】
図１３は、実施の形態２にかかる画像処理装置におけるフィルタとパイプの構成を説明する図である。実施の形態２にかかる画像処理装置１００においては、出力フィルタ３３０は、出力処理部３３１を備え、入力側において第２パイプ手段と結合し、出力側において出力装置４００と結合している。出力装置４００は、利用者からの受け付けた出力要求に応じて加工されたデータを画面（不図示）に表示し出力する。入力フィルタ３００、加工フィルタ３１０、第１伝達手段４１ａ、第２伝達手段４１ｂの機能及び構成は実施の形態１と同様である。
【０１０１】
出力処理部３３１は、利用者からの出力要求に応じて、出力処理を実行する。出力処理部３３１は、第２データ管理部３３２とデータ検索部３３３とデータリスト３３４とを主に備えている。データリスト３３４は、加工フィルタ３１０によって加工処理されたデータを保持する。実施の形態２において、データは識別子としてのページ番号と用紙サイズと用紙方向とに対応付けた状態でデータリストに登録されている。データ検索部３３３は、出力要求に応じてデータリストからデータを検索する。データ検索部３３３は、データの読出要求に含まれる識別子に対応するデータを検索する。第２データ管理部３３２は、データリストに登録されるデータの管理やデータリストへの登録処理を行う。第２データ管理部３３２は、加工フィルタ３１０によって加工されたデータを出力処理部３３１から取得し、出力フィルタ３３０若しくはデータリスト３３４に登録する。
【０１０２】
次に、以上のように構成された実施の形態２にかかる画像処理装置の動作について、図１４を用いて説明する。図１４は、実施の形態２にかかる画像処理装置による読出要求受付から出力実行までの処理手順を示すフローチャートである。実施の形態２においては、用紙指定変倍機能及び回転機能を備える画像処理装置を例示して説明する。
【０１０３】
入力フィルタ３００において、利用者からデータの入力を受け付けると（ステップＳ１４００）、入力フィルタ３００は、受け付けたデータに識別子としてページ番号を付与し、データと識別子とを対応付けて第１パイプ４１ａに書き込みを行う（ステップＳ１４０２）。入力されたデータには、用紙サイズや用紙方向等に関する情報も含まれることとしてもよい。ここでは、データと識別子に対応付けて用紙サイズＡ３及び用紙方向ヨコが書き込まれているものとする。なお、実施の形態２におけるデータの識別子として、ページ番号を例示しているが、入力フィルタ３００がデータを取得した順番に付与されることとしてもよい。例えば、データがスキャン装置２１によって読取られた画像データであった場合には、スキャン装置２１によって読取られた順番にデータ番号を付与し、このデータ番号を識別子としてもよい。尚、この識別子はデータを取得した順番に限定されるものではなく、データを識別することができるものであれば良い。例えば、入力されたデータの用紙サイズ、解像度、画質モード等を識別子として用いてもよい。
【０１０４】
次に、出力フィルタ３３０は、出力フィルタ３３０において利用者からデータの出力処理の実行要求を受け付けたか否かを判断する（ステップＳ１４０４）。出力フィルタ３３０において、利用者からデータの出力処理の実行要求を受け付けたと判断した場合には（ステップＳ１４０４；Ｙｅｓ）、データ検索部３３３は、出力要求に含まれるデータの識別子とデータ生成条件として用紙サイズＡ４及び用紙方向ヨコに合致するデータがデータリストに存在するか否かを検索する（ステップＳ１４０６）。一方、ステップ１４０４において、出力フィルタ３３０が利用者からデータの出力処理の実行要求を受付けていないと判断した場合には（ステップＳ１４０４；Ｎｏ）、処理を繰り返す。
【０１０５】
ここでは、図１３に示すように、データリスト３３４の第１行目にデータ生成条件に含まれる識別子であるページ番号１に対応として、ページ番号１、用紙サイズＡ４及び用紙方向ヨコのデータが登録されているものとする。データ検索部３３３において、出力要求に含まれるデータ生成条件に合致するデータがデータリスト３３４に存在すると判断した場合には（ステップＳ１４０８：Ｙｅｓ）、出力処理部３３１は合致するデータをデータリスト３３４より取得して出力処理を実行する（ステップＳ１４１０）。一方、データ検索部３３３において、出力要求に含まれるデータ生成条件に合致するデータがデータリスト３３４に存在しないと判断した場合には、ステップＳ９０６以降と同様の処理を行って、加工後のデータが出力される。
【０１０６】
実施の形態２においては、加工フィルタ３１０によって加工されたデータは、第２データ管理部３３２によって第２パイプ４１ｂに書き込まれる。第２データ管理部３３２は、加工後のデータをデータリストに登録するように構成してもよい。かかる構成については実施の形態２の応用例において後述する。
【０１０７】
また、実施の形態２においては、第２データ管理部３３２は出力フィルタ３３０が有することとしているが、加工フィルタ３１０が有することとしてもよい。また、実施の形態２においては、加工フィルタ３１０において出力要求に応じてデータを拡大若しくは縮小する処理を行うこととしているが、入力フィルタ３００において入力時にデータを所定の用紙サイズに変更することが可能となるように読取る構成としてもよい。
【０１０８】
上述の処理手順により用紙指定変倍処理及び回転処理を施して出力されたデータについては、図１０の上方に示した出力例と同様であるので説明を省略する。実施の形態２においては、用紙指定変倍機能及び回転機能を有する画像処理装置を例示して説明したが、応用変倍機能をさらに備え、任意の倍率に加工処理が可能な画像処理装置とするように構成してもよい。また、加工処理条件として、文字を鮮明に出力する文字モード、高画質の写真モード、文字と写真が混在した文書に適用される文字写真モード等、画質モードを設定してもよい。実施の形態２においては、用紙サイズをデータ生成条件として、加工フィルタ３１０において拡大処理若しくは縮小処理を行う場合を例示して説明したが、実際の画像処理装置においてはこれに限定されるものではない。データ生成条件として用紙方向や画像の解像度を含むデータの読出要求を加工フィルタ３１０に伝達し、加工フィルタ３１０において回転処理、間引き処理、補間処理等を行うように構成してもよい。
【０１０９】
実施の形態２にかかる画像処理装置によれば、データ生成条件に合致するデータが、データリスト３３４に含まれる場合に、出力処理部３３１はデータリストに登録されている、データ生成条件に合致するデータを出力する。従って、エラーや割り込み等により出力処理が実行できない場合にも、入力フィルタ３００にデータの読出要求を行うことなく出力フィルタ３３０において迅速に所望のデータを出力することが可能である。
【０１１０】
（応用例１）
応用例１では、読出要求に含まれる識別子に合致するデータがデータリストに存在した場合で、且つ、データリストに登録されるデータと読出要求に含まれるデータとにおいてデータ生成条件が異なる場合に、データリストに登録されるデータを削除する構成について説明する。
【０１１１】
図１５は、応用例１かかる画像処理装置におけるフィルタとパイプの構成を説明する図である。入力フィルタ３００、加工フィルタ３１０、第１伝達手段４１ａ、第２伝達手段４１ｂ、出力フィルタ３３０、出力装置４００の機能及び構成は実施の形態２と同様である。ここでは、出力要求には識別子であるページ番号１と、データ生成条件としての用紙サイズＡ４、用紙方向ヨコとが含まれるものとする。一方、データリスト３３４には読出要求を受け付けた識別子ページ番号１に対応するデータとして、ページ番号１、用紙サイズＡ４、用紙方向タテとを有するデータが登録されているものとする。
【０１１２】
次に、応用例１にかかる画像処理装置の動作について、図１６を用いて説明する。図１６は、実施の形態２の応用例１にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。応用例１においては、用紙指定変倍機能及び回転機能を備えた画像処理装置を例示する。
【０１１３】
入力フィルタ３００において、利用者からデータの入力を受け付けると（ステップＳ１６００）、入力フィルタ３００は、受け付けたデータに識別子としてページ番号を付与し、データと識別子とを対応付けて第１パイプ４１ａに書き込みを行う（ステップＳ１６０２）。入力されたデータには、用紙サイズや用紙方向等に関する情報も含まれることとしてもよい。ここでは、データと識別子に対応付けて用紙サイズＡ３及び用紙方向ヨコが書き込まれているものとする。なお、実施の形態２の応用例１において、データの識別子としてページ番号を例示しているが、入力フィルタ３００がデータを取得した順番に付与されることとしてもよい。例えば、データがスキャン装置２１によって読取られた画像データであった場合には、スキャン装置２１によって読取られた順番にデータ番号を付与し、このデータ番号を識別子としてもよい。尚、この識別子はデータを取得した順番に限定されるものではなく、データを識別することができるものであれば良い。例えば、入力されたデータの用紙サイズ、解像度、画質モード等を識別子として用いてもよい。
【０１１４】
次に、出力フィルタ３３０は、利用者からデータの出力処理の実行要求を受け付けたか否かを判断する（ステップＳ１６０４）。出力フィルタ３３０において、利用者からデータの出力処理の実行要求を受け付けたと判断した場合には（ステップＳ１６０４；Ｙｅｓ）、データ検索部３３３は、出力要求に含まれるデータの識別子とデータ生成条件として用紙サイズＡ４及び用紙方向ヨコに合致するデータがデータリストに存在するか否かを検索する（ステップＳ１６０６）。ここでは、データ生成条件に合致する識別子ページ番号１に対応するデータは、用紙サイズＡ４と用紙方向タテとしてデータリストに登録されているものとする。
【０１１５】
データ検索部３３３において、出力要求に含まれるデータ生成条件に合致するデータがデータリスト３３４に存在しないと判断した場合には（ステップＳ１６０８：Ｎｏ）、出力フィルタ３３０は、出力されるデータに対応付けられる識別子とデータ生成条件として用紙サイズＡ４及び用紙方向ヨコとを含むデータの読出要求を第２パイプ４１ｂに伝達する（ステップＳ１６１０）。第２パイプ４１ｂは、識別子とデータ生成条件とを含むデータの読出要求を加工フィルタ３１０に伝達する（ステップＳ１６１２）。加工フィルタ３１０は、読出要求に含まれる識別子に対応するデータに対して加工処理を施すために、読出要求を第１パイプ４１ａに伝達する（ステップＳ１６１４）。第１パイプ４１ａは、加工フィルタ３１０からの読出要求を受けて、読出要求に含まれる識別子に対応するデータを加工フィルタ３１０に書き込む（ステップＳ１６１６）。なお、出力フィルタ３３０において、利用者からデータの出力処理の実行要求を受け付けていないと判断した場合には（ステップＳ１６０４；Ｎｏ）、出力処理を受け付けるまで検知を繰り返す。一方、データ検索部３３３において、出力要求に含まれる識別子及びデータ生成条件に合致するデータがデータリスト３３４に存在すると判断した場合には（ステップＳ１６０８：Ｙｅｓ）、出力処理部３３０は合致したデータの出力処理を実行する（ステップＳ１６３０）。
【０１１６】
加工フィルタ３１０は、ステップＳ１６０２で書き込まれたデータの用紙サイズＡ３及び用紙方向タテと、データ生成条件としての用紙サイズＡ４及び用紙方向ヨコとを比較して加工処理条件を決定する（ステップＳ１６１８）。ここでは、書き込まれた用紙サイズＡ３及び用紙方向タテとデータ生成条件としての用紙サイズＡ４及び用紙方向ヨコとを比較した結果、加工処理条件として縮小率７１％、９０°回転を決定する。加工フィルタ３１０は、決定した加工処理条件に基づいてデータを縮小し回転する加工処理を行い（ステップＳ１６２０）、加工後のデータを第２パイプ４１ｂに書き込む（ステップＳ１６２２）。
【０１１７】
出力フィルタ３３０は、加工後のデータが第２パイプ４１ｂに書き込まれたか否かを判断する（ステップＳ１６２４）。出力フィルタ３３０は、第２パイプ４１ｂへのデータの書き込みを検知した場合には（ステップＳ１６２４：Ｙｅｓ）、第２データ管理部３３２は、書き込まれたデータをデータリスト３３４に登録し（ステップＳ１６２６）、既にデータリストに登録されているページ番号１、用紙サイズＡ４、用紙方向タテのデータを削除する（ステップＳ１６２８）。出力処理部３３１は、第２パイプ４１ｂに書き込まれたデータを読み出して出力処理を実行する（ステップＳ１６３０）。一方、出力フィルタ３３０において、第２パイプ４１ｂへのデータの書き込みを検知しない場合には（ステップＳ１６２４：Ｎｏ）、出力フィルタ３３０はデータの書き込みを検知するまで処理を検知を繰り返す。
【０１１８】
応用例１においては、読出要求に含まれる識別子に合致するデータがデータリスト３３４に存在した場合で、且つ、データリスト３３４に登録されるデータと読出要求に含まれるデータとにおいてデータ生成条件が異なる場合に、データリストに登録されるデータを削除するように構成しているが、データ生成条件のうち一つでも合致するデータがデータリストに存在する場合には、該当データをデータリストから削除せず、応用例２で後述するように既存のデータと並存させて登録することとしてもよい。
【０１１９】
また、応用例１においては、加工フィルタ３１０において、出力要求に応じてデータを拡大処理、縮小処理、回転処理等を行うこととしているが、入力フィルタ３００において入力時にデータを所定の用紙サイズ、用紙方向に変更することが可能となるように読取る構成としてもよい。
【０１２０】
上述の処理手順により用紙指定変倍処理及び回転処理を施して出力されたデータについては、図１０の上方に示した出力例と同様であるので説明を省略する。応用例１においては、用紙指定変倍機能及び回転機能を有する画像処理装置を例示して説明したが、応用変倍機能をさらに備え、任意の倍率に加工処理が可能な画像処理装置とするように構成してもよい。また、加工処理条件として、文字を鮮明に出力する文字モード、高画質の写真モード、文字と写真が混在した文書に適用される文字写真モード等、画質モードを設定してもよい。さらに、実施の形態２においては、用紙サイズをデータ生成条件として、加工フィルタ３１０において拡大処理若しくは縮小処理を行う場合を例示して説明したが、実際の画像処理装置においてはこれに限定されるものではない。データ生成条件として用紙方向や画像の解像度を含むデータの読出要求を加工フィルタ３１０に伝達し、加工フィルタ３１０において回転処理、間引き処理、補間処理等を行うように構成してもよい。
【０１２１】
応用例１にかかる画像処理装置によれば、データリストに登録されるデータと読出要求に含まれるデータとにおいてデータ生成条件とが異なる場合に、データリストに登録されているデータを削除する。これにより、エラーや割り込みや用紙切れ等により出力処理が実行できない場合に、再度異なる用紙トレイから出力する際に、識別子及びデータ生成条件に合致するデータがデータリストにあれば利用することができる。従って、不要な読出要求を伝達することなく、異なる給紙トレイより迅速に再出力することが可能である。
【０１２２】
また、エラーや割り込みや用紙切れ等により出力処理が実行できない場合に、再度異なる用紙トレイから出力する際に、識別子及びデータ生成条件に合致するデータがデータリストになければ第２パイプ４１ｂに読出要求を行うことが可能である。従って、不要となったデータを破棄して第２データ管理部３３２の容量が増大することを防止することができる。
【０１２３】
（応用例２）
応用例２では、読出要求に含まれる識別子に合致するデータがデータリストに存在した場合で、且つ、データリストに登録されるデータと読出要求に含まれるデータとにおいてデータ生成条件が異なる場合に、読出要求を受けたデータとデータリストに既に登録されているデータとを並存させてデータリストに登録する構成について説明する。
【０１２４】
図１７は、実施の形態２の応用例２にかかる画像処理装置におけるフィルタとパイプの構成を説明する図である。入力フィルタ３００、加工フィルタ３１０、第１伝達手段４１ａ、第２伝達手段４１ｂ、出力フィルタ３３０、出力装置４００の機能及び構成は実施の形態２と同様である。ここでは、出力要求には識別子であるページ番号１と、データ生成条件としての用紙サイズＡ４、用紙方向ヨコとが含まれるものとする。一方、データリスト３３４には読出要求を受け付けた識別子ページ番号１に対応するデータとして、ページ番号１、用紙サイズＡ４、用紙方向タテとを有するデータが登録されているものとする。
【０１２５】
次に、以上のように構成された応用例２にかかる画像処理装置の動作について、図１８を用いて説明する。図１８は、実施の形態２の応用例２にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。実施の形態２の応用例２にかかる画像処理装置は、用紙指定変倍機能及び回転機能を備えている。
【０１２６】
入力フィルタ３００において、利用者からデータの入力を受け付けると（ステップＳ１８００）、入力フィルタ３００は、受け付けたデータに識別子としてページ番号を付与し、データと識別子とを対応付けて第１パイプ４１ａに書き込みを行う（ステップＳ１８０２）。入力されたデータには、用紙サイズや用紙方向等に関する情報も含まれることとしてもよい。ここでは、データと識別子に対応付けて用紙サイズＡ３及び用紙方向ヨコが書き込まれているものとする。なお、実施の形態２の応用例２において、データの識別子としてページ番号を例示しているが、入力フィルタ３００がデータを取得した順番に付与されることとしてもよい。例えば、データがスキャン装置２１によって読取られた画像データであった場合には、スキャン装置２１によって読取られた順番にデータ番号を付与し、このデータ番号を識別子としてもよい。尚、この識別子はデータを取得した順番に限定されるものではなく、データを識別することができるものであれば良い。例えば、入力されたデータの用紙サイズ、解像度、画質モード等を識別子として用いてもよい。
【０１２７】
次に、出力フィルタ３３０は、出力フィルタ３３０において利用者からデータの出力処理の実行要求を受け付けたか否かを判断する（ステップＳ１８０４）。出力フィルタ３３０において、利用者からデータの出力処理の実行要求を受け付けたと判断した場合には（ステップＳ１８０４；Ｙｅｓ）、データ検索部３３３は、出力要求に含まれるデータの識別子とデータ生成条件として用紙サイズＡ４及び用紙方向ヨコに合致するデータがデータリスト３３４に存在するか否かを検索する（ステップＳ１８０６）。ここでは、データ生成条件に合致する識別子ページ番号１に対応するデータは、用紙サイズＡ４と用紙方向タテとしてデータリストに登録されているものとする。
【０１２８】
データ検索部３３３において、出力要求に含まれるデータ生成条件に合致するデータがデータリスト３３４に存在しないと判断した場合には（ステップＳ１８０８：Ｎｏ）、出力フィルタ３３０は、出力されるデータに対応付けられる識別子とデータ生成条件として用紙サイズＡ４及び用紙方向ヨコとを含むデータの読出要求を第２パイプ４１ｂに伝達する（ステップＳ１８１０）。第２パイプ４１ｂは、識別子とデータ生成条件とを含むデータの読出要求を加工フィルタ３１０に伝達する（ステップＳ１８１２）。加工フィルタ３１０は、読出要求に含まれる識別子に対応するデータに対して加工処理を施すために、読出要求を第１パイプ４１ａに伝達する（ステップＳ１８１４）。第１パイプ４１ａは、加工フィルタ３１０からの読出要求を受けて、読出要求に含まれる識別子に対応するデータを加工フィルタ３１０に書き込む（ステップＳ１８１６）。なお、出力フィルタ３３０において、利用者からデータの出力処理の実行要求を受け付けていないと判断した場合には（ステップＳ１８０４；Ｎｏ）、出力処理を受け付けるまで検知を繰り返す。一方、データ検索部３３３において、出力要求に含まれる識別子及びデータ生成条件に合致するデータがデータリスト３３４に存在すると判断した場合には（ステップＳ１８０８：Ｙｅｓ）、出力処理部３３０は合致したデータの出力処理を実行する（ステップＳ１８２８）。
【０１２９】
加工フィルタ３１０は、ステップＳ１８０２で書き込まれたデータの用紙サイズＡ３及び用紙方向タテと、データ生成条件としての用紙サイズＡ４及び用紙方向ヨコとを比較して加工処理条件を決定する（ステップＳ１８１８）。ここでは、書き込まれた用紙サイズＡ３及び用紙方向タテとデータ生成条件としての用紙サイズＡ４及び用紙方向ヨコとを比較した結果、加工処理条件として縮小率７１％、９０°回転を決定する。加工フィルタ３１０は、決定した加工処理条件に基づいてデータを縮小し回転する加工処理を行い（ステップＳ１８２０）、加工後のデータを第２パイプ４１ｂに書き込む（ステップＳ１８２２）。
【０１３０】
出力フィルタ３３０は、加工後のデータが第２パイプ４１ｂに書き込まれたか否かを判断する（ステップＳ１８２４）。出力フィルタ３３０は、第２パイプ４１ｂへのデータの書き込みを検知した場合には（ステップＳ１８２４：Ｙｅｓ）、第２データ管理部３３２は、書き込まれたデータ、即ち、ページ番号１、用紙サイズＡ４、用紙方向ヨコに対応するデータを、既に登録されているページ番号１、用紙サイズＡ４、用紙方向タテのデータと並存させてデータリスト３３４に登録する（ステップＳ１８２６）。出力処理部３３１は、第２パイプ４１ｂに書き込まれたデータを読み出して出力処理を実行する（ステップＳ１８２８）。一方、出力フィルタ３３０において、第２パイプ４１ｂへのデータの書き込みを検知しない場合には（ステップＳ１８２４：Ｎｏ）、出力フィルタ３３０はデータの書き込みを検知するまで処理を検知を繰り返す。
【０１３１】
応用例２においては、加工フィルタ３１０において、出力要求に応じてデータを拡大処理、縮小処理、回転処理等を行うこととしているが、入力フィルタ３００において入力時にデータを所定の用紙サイズ、用紙方向に変更することが可能となるように読取る構成としてもよい。
【０１３２】
上述の処理手順により用紙指定変倍処理及び回転処理を施して出力されたデータについては、図１０の上方に示した出力例と同様であるので説明を省略する。応用例２においては、用紙指定変倍機能及び回転機能を有する画像処理装置を例示して説明したが、応用変倍機能をさらに備え、任意の倍率に加工処理が可能な画像処理装置とするように構成してもよい。また、加工処理条件として、文字を鮮明に出力する文字モード、高画質の写真モード、文字と写真が混在した文書に適用される文字写真モード等、画質モードを設定してもよい。さらに、実施の形態２においては、用紙サイズをデータ生成条件として、加工フィルタ３１０において拡大処理若しくは縮小処理を行う場合を例示して説明したが、実際の画像処理装置においてはこれに限定されるものではない。データ生成条件として用紙方向や画像の解像度を含むデータの読出要求を加工フィルタ３１０に伝達し、加工フィルタ３１０において回転処理、間引き処理、補間処理等を行うように構成してもよい。
【０１３３】
応用例２にかかる画像処理装置によれば、読出要求に含まれる識別子に合致するデータがデータリストに存在した場合で、且つ、データリストに登録されるデータと読出要求に含まれるデータとにおいてデータ生成条件が異なる場合に、データリストに既に登録されているデータを破棄せずに、読出要求を受けたデータと並存させて登録するように構成している。従って、データリストに登録されるデータを再出力する必要が生じた場合にも、読出要求を伝達することなく、迅速に再出力することが可能である。
【０１３４】
以上、実施の形態１及び２にかかる画像処理装置について説明したが、上述した実施の形態に多様な変更又は改良を加えることができる。
【図面の簡単な説明】
【０１３５】
【図１】パイプ＆フィルタの概念を説明する図である。
【図２】実施の形態１にかかる画像処理装置１００のハードウェア構成図である。
【図３】実施の形態１にかかる画像処理装置１００のソフトウェア構成図である。
【図４】実施の形態１にかかる画像処理装置におけるフィルタとパイプの構成を説明する図である。
【図５】実施の形態１にかかる画像処理装置において一機能を実現させる動作を説明するフローチャートである。
【図６】実施の形態１にかかる画像処理装置による読出要求受付から出力実行までの処理手順を示すフローチャートである。
【図７】実施の形態１にかかる画像処理装置における第１伝達手段において読出要求を受け付けてから加工フィルタへのデータの書き込むまでの手順を示すフローチャートである。
【図８】実施の形態１にかかる画像処理装置における用紙指定変倍機能の概要を示す図である。
【図９】実施の形態１の応用例１にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。
【図１０】実施の形態１の応用例１にかかる画像処理装置における用紙指定変倍機能及び回転ソート機能の概要を示す図である。
【図１１】実施の形態１の応用例２にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。
【図１２】実施の形態１の応用例２にかかる画像処理装置の解像度補正機能の概要を示す図である。
【図１３】実施の形態２にかかる画像処理装置におけるフィルタとパイプの構成を説明する図である。
【図１４】実施の形態２にかかる画像処理装置による読出要求受付から出力実行までの処理手順を示すフローチャートである。
【図１５】実施の形態２の応用例１かかる画像処理装置におけるフィルタとパイプの構成を説明する図である。
【図１６】実施の形態２の応用例１にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。
【図１７】実施の形態２の応用例２にかかる画像処理装置におけるフィルタとパイプの構成を説明する図である。
【図１８】実施の形態２の応用例２にかかる画像処理装置の読出要求受付から出力実行までの処理手順を示すフローチャートである。
【符号の説明】
【０１３６】
１  複合機
１０  ユーザーインターフェイス層
１１  通信サーバ部
１２  ローカルＵＩ部
２０  コントロール層
２１  スキャン装置
２２  プロッタ装置
２３  ドライブ装置
２４  補助記憶装置
２５  メモリ装置
２６  演算処理装置
２７  インターフェース装置
２８  操作パネル
２９  記憶媒体
３０アプリケーションロジック層
４０  デバイスサービス層
４１  パイプ
４１ａ  第１パイプ
４１ｂ  第２パイプ
４２  第１データ管理部
５０  デバイス制御層
５１  スキャナ制御部
５２  プロッタ制御部
５３  メモリ制御部
５４  Ｔｅｌ回線制御部
５５  ネットワーク制御部
１００画像処理装置
３００  入力フィルタ
３０１  読取フィルタ
３０２  保管文書読取フィルタ
３０３  メール受信フィルタ
３０４  ＦＡＸ受信フィルタ
３０５  ＰＣ文書受信フィルタ
３０６  レポートフィルタ
３１０  加工フィルタ
３１１  文書加工フィルタ
３１２  文書変換フィルタ
３２０、３３０  出力フィルタ
３２１  印刷フィルタ
３２２  保管文書登録フィルタ
３２３  メール送信フィルタ
３２４  ＦＡＸ送信フィルタ
３２５  ＰＣ文書送信フィルタ
３２６  プレビューフィルタ
３３１  出力処理部
３３２  第２データ管理部
３３３  データ検索部
３３４  データリスト
４００  出力装置
【図１】
0004907583.tif 000002
【図２】
0004907583.tif 000003
【図３】
0004907583.tif 000004
【図４】
0004907583.tif 000005
【図５】
0004907583.tif 000006
【図６】
0004907583.tif 000007
【図７】
0004907583.tif 000008
【図８】
0004907583.tif 000009
【図９】
0004907583.tif 000010
【図１０】
0004907583.tif 000011
【図１１】
0004907583.tif 000012
【図１２】
0004907583.tif 000013
【図１３】
0004907583.tif 000014
【図１４】
0004907583.tif 000015
【図１５】
0004907583.tif 000016
【図１６】
0004907583.tif 000017
【図１７】
0004907583.tif 000018
【図１８】
0004907583.tif 000019