JP4791915B2 - 画像処理装置、画像処理方法及び画像処理プログラム - Google Patents

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

Info

Publication number
JP4791915B2
JP4791915B2 JP2006240751A JP2006240751A JP4791915B2 JP 4791915 B2 JP4791915 B2 JP 4791915B2 JP 2006240751 A JP2006240751 A JP 2006240751A JP 2006240751 A JP2006240751 A JP 2006240751A JP 4791915 B2 JP4791915 B2 JP 4791915B2
Authority
JP
Japan
Prior art keywords
filter
processing
input
output
image processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006240751A
Other languages
English (en)
Other versions
JP2008066889A (ja
Inventor
雄三 大島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2006240751A priority Critical patent/JP4791915B2/ja
Priority to US11/895,467 priority patent/US8406549B2/en
Publication of JP2008066889A publication Critical patent/JP2008066889A/ja
Application granted granted Critical
Publication of JP4791915B2 publication Critical patent/JP4791915B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00915Assigning priority to, or interrupting, a particular operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00954Scheduling operations or managing resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0091Digital copier; digital 'photocopier'

Description

本発明は、画像処理装置、画像処理方法及び画像処理プログラムに関する。
近年において、プリンタ、コピー機、スキャナ、ファクシミリ、又はこれらの機能を一台の筐体で実現する複合機等の画像処理装置では、汎用的にコンピュータと同様にCPUを備え、各機能はアプリケーションの制御によって実現されるようになっている。
例えば特許第3679349号公報(特許文献1)に記載された画像形成装置では、各アプリケーションから共通して利用される機能をプラットフォームとして備えており、このプラットフォームのAPI(Application Programming Interface)を利用してアプリケーションを実装することができる。係る画像形成装置によれば、共通して利用される機能がプラットフォームとして備えられていることにより、アプリケーションごとに重複した機能の実装が回避され、アプリケーション全体の開発効率を向上させることができる。
特許第3679349号公報
しかしながら、共通して利用されるAPIを備えたプラットフォームについては、このプラットフォームによって提供される機能又はインターフェースの粒度が適切に設計されないと、アプリケーションの開発効率の向上が期待以上にはかれない場合がある。
例えば、この粒度が小さすぎると、単純なサービスを提供するアプリケーションであるにも関わらず、多くのAPIの呼び出しが必要とされ、そのソースコードは複雑なものとなってしまう。
一方、粒度が大きすぎると、ある機能の一部について変更を加えたサービスを提供するアプリケーションを実装したい場合、プラットフォーム内を修正しなければならず、開発工数の増加を招きかねない。特に、プラットフォーム内における各モジュールの依存関係が強い場合は、プラットフォームに新規機能を追加するだけでなく、既存部分の修正も必要とされる場合があり、事態はより複雑となる。
また、既存のアプリケーションによって提供されているサービスの一部(例えば、画像の入力処理)を変更したアプリケーションを実装したい場合、変更部分以外の部分については既存のアプリケーションを呼び出すといったようなことはできない。したがって、改めてソースコードを記述して新たなアプリケーションを実装しなければならない。
本発明は、上記の点を鑑みてなされたものであって、機能のカスタマイズ又は拡張などを簡略化させることのできる画像処理装置、画像処理方法及び画像処理プログラムを提供することを目的とするものである。
本発明の画像処理装置、画像処理方法及び画像処理プログラムは、上記目的を達成するために、以下の如き構成を採用した。
本発明の画像処理装置は、力部により入力されるデータの入力処理を制御する入力フィルタと、前記入力フィルタから出力された前記データに所定の処理を施す加工フィルタと、前記加工フィルタにより前記所定の処理が施された前記データを出力する出力部による出力処理を制御する出力フィルタと、前記入力フィルタと、前記加工フィルタと、前記出力フィルタと、を用いて処理の実行を制御する制御手段と、を有し、前記制御手段は、当該画像処理装置において実行中の処理の中断処理又は終了処理を、出力側から入力側に向かって順次実行するように制御する構成とすることができる。
係る構成によれば、機能のカスタマイズ又は拡張などを簡略化させることのでき、且つ前記画像処理の中断処理及び終了処理を適切なタイミングで行うことができる。
また、前記入力フィルタ、前記出力フィルタ及び前記加工フィルタは、同一の動作定義に基づき制御される構成とすることができる。
係る構成によれば、前記各フィルタの制御を容易にする。また、前記各フィルタ自体の生成を容易にする。
た、前記出力フィルタ及び前記加工フィルタは、中断処理の場合に、供給されたデータに対する所定の処理を終了した後、該フィルタの入力側にあるフィルタに対して中断処理を開始させる構成とすることができる。
係る構成によれば、所定のデータまで出力処理が終了したのちに前記画像処理が中断または終了されるので、前記画像処理装置の安全性を損なうことなく適切なタイミングで前記画像処理の中断処理または終了処理を行うことができる。
た、前記入力フィルタ、前記出力フィルタ及び前記加工フィルタは、前記制御手段により前記出力フィルタへ画像処理の実行指示が出された場合、それぞれにおける所定の処理を独立して実行する構成とすることができる。
係る構成によれば、前記各フィルタにおいて任意のタイミングでそれぞれの処理を実行することができる。
本発明の画像処理方法は、入力部により入力されるデータの入力処理を制御する入力手順と、前記入力手順において入力された前記データに所定の処理を施す加工手順と、前記加工手順において前記所定の処理が施された前記データを出力する出力部によるデータの出力処理を制御する出力手順と、前記入力手順と、前記加工手順と、前記出力手順と、を用いて処理の実行を制御する制御手順と、を有し、前記制御手順は、当該画像処理装置において実行中の処理の中断処理又は終了処理を、出力側から入力側に向かって順次実行するように制御する画像処理方法とすることができる。
係る方法によれば、機能のカスタマイズ又は拡張などを簡略化させることのでき、且つ前記画像処理の中断処理及び終了処理を適切なタイミングで行うことができる。
本発明の画像処理プログラムは、コンピュータに、力部により入力されるデータの入力処理を制御する入力手順と、前記入力手順において入力された前記データに所定の処理を施す加工手順と、前記加工手順において前記所定の処理が施された前記データを出力する出力部によるデータの出力処理を制御する出力手順と、前記入力手順と、前記加工手順と、前記出力手順と、を用いて処理の実行を制御する制御手順と、を実行させ、前記制御手順は、当該画像処理装置において実行中の処理の中断処理又は終了処理を、出力側から入力側に向かって順次実行するように制御するプログラムであっても良い。
係るプログラムによれば、機能のカスタマイズ又は拡張などを簡略化させることのでき、且つ前記画像処理の中断処理及び終了処理を適切なタイミングで行うことができる。
本発明によれば、機能のカスタマイズ又は拡張などを簡略化させることのでき、且つ前記画像処理の中断処理及び終了処理を適切なタイミングで行うことができる。
本発明は、パイプ&フィルタと呼ばれる考え方に基づくソフトウェアアーキテクチャを画像処理装置に適用することで、機能のカスタマイズ又は拡張などを簡略化する。さらに、本発明では、画像処理を中断又は終了する際に、出力側のフィルタから順次中断処理又は終了処理を実行することにより、画像処理の中断処理又は終了処理を適切に行う。
以下に図1を参照して上記のパイプ&フィルタの概念について説明する。図1は、パイプ&フィルタの概念を説明する図である。図1に示す「P」はパイプを示し、「F」はフィルタを示す。
フィルタとは、入力されたデータに対して所定の処理を施して、その処理結果を出力するプログラムである。そしてパイプは、フィルタとフィルタを連結する手段であり、パイプの入力側に連結されたフィルタから出力される処理結果を一時的に保持し、その後パイプの出力側へ連結されたフィルタへデータを伝達する。このように、パイプ&フィルタの概念によれば、パイプを介在させてフィルタにおける処理を連続したものとすることができる。
本実施例では、フィルタにおいて施される所定の処理を、入力されたデータに対し、所定の変換を施す処理と考える。すなわち、本実施例の画像処理装置では、画像処理装置で実現される各機能をドキュメント(入力データ)に対する「変換処理」の連続として捉える。画像処理装置の各機能は、ドキュメントすなわちデータの入力、加工及び出力によって構成されるものと考える。そこで、本実施例では「入力処理」、「加工処理」及び「出力処理」のそれぞれを「変換処理」として捉え、一つの変換処理を実現するソフトウェア部品をフィルタとして構成した。
本実施例では、データの入力処理を制御するフィルタを入力フィルタ、データの加工処理を制御するフィルタを加工フィルタ、データの出力処理を制御するフィルタを出力フィルタとした。これらの各フィルタはそれぞれ独立したプログラムであって、フィルタ間の依存関係は存在しない。よって、各フィルタは、画像処理装置において独立してフィルタ単位で追加(インストール)、削除(アンインストール)することが可能である。
以下に、本実施例の画像処理装置100について図面を参照して説明する。
画像処理装置100では、画像処理装置100における各種機能を実現させるソフトウェアアーキテクチャに、上記のパイプ&フィルタの概念が適用されている。図2は、本実施例の画像処理装置100のソフトウェア構成を示す構成図の例である。画像処理装置100は、例えばプリンタ、コピー、スキャナ、又はFAX等の複数の機能を一台の筐体において実現する複合機である。
画像処理装置100の機能を実現するソフトウェアは階層構造となっており、ユーザインターフェイス層10、コントロール層20、アプリケーションロジック層30、デバイスサービス層40及びデバイス制御層50により構成されている。これらの各層における上下関係は、層間の呼び出し関係に基づいている。すなわち、図中において上位層が下位層を呼び出す。
画像処理装置100において、ユーザインターフェイス層10によりユーザから各種機能の実行指示が成されると、ユーザインターフェイス層10は、コントロール層20を呼び出しこの実行要求に基づきアプリケーションロジック層30を制御する。アプリケーションロジック層30では、コントロール層20からの指示に基づき要求された機能を実現させるアプリケーションを実行する。そして、この実行結果に基づきデバイスサービス層40、デバイス制御層50が画像処理装置100のハードウェア資源を制御する。画像処理装置100では、このような動作によりユーザインターフェイス層10が受け付けた機能に対応した出力結果を得る。
以下に各層について説明する。
ユーザインターフェイス層10には、例えば通信サーバ部11及びローカルUI(user interface)部12が実装されており、画像処理装置100の各種機能を実現するための実行要求を受け付ける機能を有する。ここで言う各種機能とは、例えばコピー機能、印刷機能、スキャン機能、FAX機能などである。ユーザインターフェイス層10において、例えば通信サーバ部11は、例えば図示しないクライアントPC(Personal Computer)等からネットワークを介して実行要求を受け付けても良い。ローカルUI部12は、例えば画像処理装置100に設けられた図示しないオペレーションパネルなどを介して実行要求を受け付けても良い。ユーザインターフェイス層10において受け付けられた実行要求は、コントロール層20へ伝達される。
コントロール層20では、画像処理装置100の各機能を実現する処理を制御するための機能が実装されている。具体的には、例えば、要求された機能に応じてアプリケーションロジック層30における各フィルタを接続し、接続されたフィルタを用いて機能の実行を制御する。尚、以下の本実施例において述べる画像処理装置100の機能とは、画像処理装置100がユーザに対して提供する一つのまとまった単位(要求が入力されて最終的な出力が得られるまで)のサービスの定義であり、ソフトウェア的には一つのまとまった単位のサービスを提供するアプリケーションと同義である。
アプリケーションロジック層30には、画像処理装置100において提供される機能の一部を実現する部品群である各種フィルタが実装されている。アプリケーションロジック層30では、コントロール層20の制御により、複数のフィルタを組み合わせて一つの機能が実現される。本実施例におけるアプリケーションロジック層30には、入力フィルタ300、加工フィルタ310、出力フィルタ320が実装されている。これら各フィルタは、同一の定義に基づき動作するものであり、この定義に基づきコントロール層20に制御される。これら各フィルタの詳細は後述する。
デバイスサービス層40には、アプリケーションロジック層30に実装された各フィルタが共通して利用される下位の機能が実装されている。本実施例のデバイスサービス層40には画像パイプ41、データ管理部42等が実装されている。画像パイプ41は上で述べたパイプの機能を実現するものであり、アプリケーションロジック層30に実装されている各フィルタのうち、一のフィルタからの出力結果を、一のフィルタへ伝達する。ここで画像パイプ41は、例えば入力フィルタ300と加工フィルタ310とを連結しても良いし、加工フィルタ310と出力フィルタ320とを連結するものであっても良い。データ管理部42は、画像処理装置100内のデータベースであって、例えばユーザにより登録されたユーザ情報や、画像処理装置100において各種の処理が施された文書データや画像データなどが蓄積されて保管されていても良い。
デバイス制御層50には、ハードウェアを制御するプログラムであるドライバが実装されている。本実施例のデバイス制御層50には、例えばスキャナ制御部51、プロッタ制御部52、メモリ制御部53、電話回線制御部54及びネットワーク制御部55等が実装されている。これらの各制御部は、それぞれの名称に付けられたデバイスを制御するものである。
以下に、アプリケーションロジック層30に実装された各フィルタについてさらに説明する。
本実施例の入力フィルタ300は、画像処理装置100の外部より入力されたデータに対する入力処理を制御する。入力フィルタ300には、読取フィルタ301、文書保管読出フィルタ302、メール受信フィルタ303、FAX受信フィルタ304、PC文書受信フィルタ305、レポートフィルタ306等が含まれる。
読取フィルタ301は、例えばスキャナによる画像データの読取を制御し、読み取られた画像データを出力する。メール受信フィルタ303は、画像処理装置100において電子メールを受信し、受信した電子メールに含まれるデータを出力する。FAX受信フィルタ304はFAX受信を制御し、受信されたデータを出力する。PC文書受信フィルタ305は、図示しないクライアントPCなどから印刷データを受信し、この印刷データを出力する。レポートフィルタ306は、画像処理装置100の設定情報や履歴情報などを例えば表形式などに整え、この整えられたデータを出力する。尚ここで、保管文書読出フィルタ302は、画像処理装置100の外部からではなく、画像処理装置100内の例えばデータ管理部42や、画像処理装置100の有する図示しない記憶装置などに蓄積されたデータを読み出し、読み出したデータを出力するものとした。
本実施例の加工フィルタ310は、加工フィルタ310の入力側のフィルタより入力されたデータに所定の処理を施し、加工フィルタ310の出力側にあるフィルタへ処理結果を出力する。加工フィルタ310には、文書加工フィルタ311、文書変換フィルタ312等が含まれる。文書加工フィルタ311は、入力されたデータに所定の画像変換処理を施し出力する。この画像変換処理とは、例えば入力されたデータの集約、拡大、縮小処理等であっても良い。文書変換フィルタ312は、入力されたデータにレンダリング処理を施し出力する。すなわち、文書変換フィルタ312に入力されたPostScriptデータをビットマップデータに変換して出力する。
本実施例の出力フィルタ320は、入力されたデータ対する出力処理を制御し、画像処理装置100の外部へ出力する。出力フィルタ320には、印刷フィルタ321、保管文書登録フィルタ322、メール送信フィルタ323、FAX送信フィルタ324、PC文書送信フィルタ325、プレビューフィルタ326等が含まれる。
印刷フィルタ321は、入力されたデータをプロッタに出力(印刷)させる。メール送信フィルタ323は、入力されたデータを電子メールに添付して送信する。FAX送信フィルタ324は、入力されたデータをFAX送信する。PC文書送信フィルタ325は、入力されたデータを図示しないクライアントPCなどに送信する。プレビューフィルタ326は、入力されたデータを画像処理装置100の有する図示しないオペレーションパネルにプレビュー表示させる。尚ここで、文書登録フィルタ322から出力されるデータについては、例外的に画像処理装置100の外部ではなく画像処理装置100内の記憶装置やデータ管理部42に対してデータが出力されて保存されるものとした。
アプリケーションロジック層30では、上記各フィルタを組み合わせることにより、画像処理装置100の各機能を実現している。係る構成によれば、画像処理装置100では、フィルタとパイプの組み合わせにより各種の機能を実現することができる。具体的には、例えばコピー機能を実現したい場合には、読取フィルタ301、文書加工フィルタ、印刷フィルタ321を組み合わせれば良い。
以下に、本実施例の画像処理装置100の動作について説明する。図3は、本実施例の画像処理装置100において一機能を実現させる動作を説明するフローチャートの例である。
まず、入力フィルタは、入力デバイスよりデータを入力し(S111)、このデータを、出力側に接続されているパイプに出力する(S112)。なお、データが複数回に分けて入力される場合(複数枚の原稿がスキャンされる場合等)は、データの入力とパイプへの出力が繰り返される。全ての入力データについて処理が終了すると(S113でYES)、入力フィルタの処理は終了する。
変換フィルタは、入力側に接続されているパイプに対するデータの入力を検知すると処理を開始する。まず、当該パイプからデータを読み込み(S121)、データに対して画像処理を施す(S122)。続いて、処理結果としてのデータを出力側に接続されているパイプに出力する(S123)。入力側のパイプに入力された全てのデータについて処理が終了すると(S124でYES)、変換フィルタの処理は終了する。
出力フィルタは、入力側に接続されているパイプに対するデータの入力を検知すると処理を開始する。まず、当該パイプからデータを読み込み(S131)。続いて、読み込まれたデータを出力デバイスを利用して出力する(S132)。入力側のパイプに入力された全てのデータについて処理が終了すると(S133でYES)、出力フィルタの処理は終了する。
このように、画像処理装置100では、各フィルタを部品として各機能を構築するため、機能のカスタマイズ又は拡張を簡便に行うことができる。すなわち、各フィルタ間には、機能的な依存関係はなく独立性が保たれているため、フィルタの新たな追加やフィルタの組み合わせの変更によって、新たな機能(アプリケーション)を容易に開発することができる。したがって、新たなアプリケーションの実装が要求された場合、当該アプリケーションの一部の処理について実装されていない場合は、当該一部の処理を実現するフィルタのみを開発し、インストールすればよい。よって、コントロール層20及びアプリケーションロジック層30より下位の層について、新たなアプリケーションの実装に応じて発生する修正の頻度を低下させることができ、安定したプラットフォームを提供することができる。
このため、プラットフォームによって提供される機能又はインターフェイスの粒度に影響されることなくアプリケーションの開発効率を向上させることができる。また、既存のアプリケーションによって提供されるサービスの一部を変更したアプリケーションを実装したい場合にも、このサービスを提供するフィルタの一部のみを変更すれば良いので新たにソースコードを記述する必要がなく、開発効率を向上させることができる。
さらに、本実施例の画像処理装置100では、各機能を実現する処理シーケンスにおいて、出力フィルタ320側から順次処理を行うように構成した。すなわち、コントロール層20は、各機能の実行要求を出力フィルタ320へ伝達し、出力フィルタ320から順に入力フィルタ300へ向かってこの実行要求を伝達する構成とした。
係る構成によれば、例えば画像処理装置100において実行中の処理を中断する場合やキャンセルする場合においても適切なタイミングで、かつ装置の安全性を損なわずに処理を中断または終了することができる。
また、本実施例では、処理の指示を受け付けたとき、各フィルタが同一のふるまい(動作)をするものとした。この場合の各フィルタにおける同一のふるまいとは、処理の指示を受け付けると、予め決められた所定の処理を実行した後、該フィルタの入力側にあるフィルタへ処理の指示を伝達するものである。このふるまいは、各フィルタの動作定義であり、各フィルタはこの動作定義に基づき制御されるものとした。すなわち、入力フィルタ310、加工フィルタ320、出力フィルタ330は、同一の動作定義に基づき制御されるものとした。係る構成によれば、各フィルタが同一の動作をするため、各フィルタの制御が容易になる。
以下に、具体例を上げて画像処理装置100内における処理シーケンスを説明する。
図4は、コピー機能の処理を実行する際の処理手順を説明するための図である。
画像処理装置100において図示しないオペレーションパネルなどにより、コピー機能が選択されると、ユーザインターフェイス層10はこのコピー機能の実行要求を受け付ける。この実行要求は、ユーザインターフェイス層10からコントロール層20へ伝達され、コントロール層20からアプリケーションロジック層30へ伝達される。
ここで、本実施例の画像処理装置100では、コントロール層20から、出力フィルタ320へ実行要求が伝達されるので、この場合は実行要求が印刷フィルタ321へ伝達される(S411)。印刷フィルタ321は、この実行要求を受けると画像パイプ41を介して印刷フィルタ321の入力側にある文書加工フィルタ311へ実行要求を伝達する(S412、S413)。文書加工フィルタ311は、さらにこの実行要求を、文書加工フィルタ311に入力側にある読取フィルタ301へ画像パイプ41を介して伝達する(S414、S415)。尚この処理では、各フィルタにおいて、上記動作定義における処理の指示を受け付け後の所定の処理が設定されていないものとし、各フィルタは処理の指示を受け付けた後は該フィルタの入力側のフィルタに指示を伝達するものとした。
読取フィルタ301は、この実行要求を受けると、画像処理を施す対象となるデータを読み取るためにスキャナ51Aへ読取指示を出し、データを読み取るページ入力処理を開始する(S416)。尚ここでは1ページの紙原稿をコピーするものとした。この1ページ分のページ入力処理が終了すると(S417)、読取フィルタ301は、この入力されたデータを画像パイプ41へ書き込む(S418)。
画像パイプ41にデータが書き込まれると、文書加工フィルタ311はこれを検知し、画像パイプ41からこのデータを読み込む(S419)。そして文書加工フィルタ311は、画像処理部(以下、IPU)57においてデータに加工処理を施す(S420)。ここで施される加工処理とは、例えばデータの集約、拡大、縮小処理等であっても良い。IPU57においてデータ加工が終了すると(S421)、この加工済みのデータを画像パイプ41へ書き込む(S422)。
画像パイプ41にデータが書き込まれると、印刷フィルタ321はこれを検知し、画像パイプ41よりデータを読み出し(S423)、プロッタ52Aにおいてデータの出力処理を実行する(S424)。そして、プロッタ52Aにおいて出力処理が終了すると、コピー機能の実行処理を終了する(S425)。
尚ここで、スキャナ51A、プロッタ52Aは図2において図示していないが、スキャナ51Aは入力デバイスであり、プロッタ52Aは出力デバイスである。スキャン51Aはスキャナ制御部51により制御され、プロッタ52Aはプロッタ制御部52により制御されるものである。
また、図4の説明では各フィルタにおいて実行される処理をデータの流れを追って説明したが、各フィルタは、各フィルタにおける処理の実行指示を受けた後は、データの流れとは無関係に任意のタイミングで処理を開始しても良い。この場合、各フィルタは、各フィルタの入力側のパイプへデータが書き込まれるまで待機し、入力側のパイプへデータが書き込まれると、各フィルタにおける処理を開始しても良い。尚、入力フィルタには入力側のパイプが存在しないため、実行指示を受けたタイミングで処理を開始しても良い。
次に、画像処理装置100内において実行中の処理の中断について具体例をあげて説明する。
画像処理装置100では、実行中の処理の中断においても出力フィルタ320から順次行っていく。このように出力フィルタ320における処理から順次中断して行くことにより、中断処理において、所望のデータが出力された後に実行中の処理を中断するように制御することができる。以下にコピー機能の処理を実行中の画像処理装置の例について説明する。
例えばコピー機能の処理を実行中の画像処理装置において、コピー機能の処理の中断指示が出されたとする。この場合に画像処理装置において、中断指示を受け付けた時点で各フィルタの処理を同時に中断すると、この時点で処理途中であったページが出力されず、コピー用紙が画像処理装置内に残される可能性がある。この場合、発火の危険性などを伴い画像処理装置の安全性が損なわれる。
このような事態を回避するためには、中断指示を受け付けた時点で画像処理装置内に処理途中のページがあった場合にこれを出力した後に処理を中断すれば良い。
また、例えば画像処理装置100においてコピー機能の利用に対して課金する場合がある。このような場合には、例えばコピー機能においてはコピー用紙が1枚出力される毎に課金される設定となっている。このような設定の画像処理装置において、例えばコピー機能の処理の実行中に処理の中断指示を受け付けた場合には、現在処理途中のページに対しても課金する必要がある。よって、画像処理装置では、現在処理途中のページまで出力し、課金対象とした後に処理をコピー機能の処理の中断をすることが望ましい。このためには、出力フィルタ320において、中断指示を受け付けた時点で処理途中であるページを出力した後にその他のフィルタにおける処理を中断すれば良い。
このように中断処理を行えば、例えば画像処理装置においてコピー機能の処理を再開する場合には次のページから通常の処理を開始すれば良く、処理の再開にあたり特別な回復処理等を必要とせず、速やかに処理を再開することができる。
そこで、本実施例の画像処理装置100では、出力フィルタ320より中断処理を開始する構成とした。さらに画像処理装置100では、上記の動作定義に基づく動作を行う。すなわち、画像処理装置100では、出力フィルタ320を含む各フィルタの動作を、各フィルタにおいて中断処理を受け付けたとき、その時点で処理途中のデータを出力した後、該フィルタよりも入力側にあるフィルタに対し中断処理を伝達する動作とする構成とした。係る構成とすることにより、画像処理装置100では上記の課題を解決している。尚ここでは、中断指示を受け付けたとき、その時点で処理途中のデータを出力する処理が、動作定義における所定の処理に該当する。
以下に図5を参照して本実施例の画像処理装置100におけるコピー機能の処理の中断について説明する。図5は、コピー機能の処理を中断する際の処理手順を説明するための図である。
画像処理装置100において、印刷フィルタ321によりプロッタからの印刷処理が実行されているとき(S511)、ユーザインターフェイス層10が印刷処理の中断指示を受け付けると、この中断指示はコントロール層20に伝達される。そして、コントロール層20は、この中断指示に基づき印刷フィルタ321へ処理の中断指示を出す(S512)。印刷フィルタ321では、この中断指示を受け付けると、プロッタ52Aにおける印刷処理の中断処理を開始する。
ここで、印刷フィルタ321は、印刷処理を中断する際に、所定のデータまで出力し、その後に印刷処理を中断する。ここで言う、所定のデータとは、中断指示を受け付けた時点で処理途中であったデータである。この所定のデータとは、具体的には例えば印刷処理において両面印刷において片面のみの印刷処理が済んでいた場合には、裏面のページのデータまでを所定のデータとし、裏面のページが印刷出力された後に印刷処理を中断しても良い。また、印刷フィルタ321は、印刷処理が片面印刷であった場合には、現在印刷処理中のページのデータを所定のデータであっても良い。また、どのデータまでを所定のデータとするか否かについては、画像処理装置100において予め設定されていても良い。
印刷フィルタ321は、プロッタ52Aにおいて所定のデータまで印刷出力を行うと、印刷処理を中断する(S513)。そして、印刷フィルタ321において中断処理が終了したことを画像パイプ41へ伝達する(S514)。文書加工フィルタ311は、画像パイプ41より中断指示を受けると、この時点で所定のデータに対して加工処理を施した後に加工処理を中断する(S515)。すなわち、文書加工フィルタ311は、画像パイプ41より中断指示を受けた時点で加工処理途中であったデータに対する加工処理を実行し、この加工処理が終了した後に中断処理を開始する。そして、文書加工フィルタ311は、加工処理を中断した後、画像パイプ41を介して読取フィルタ301へ中断指示を伝達する(S516)。
読取フィルタ301は、画像パイプ41より中断指示を受けると、スキャナ51Aにおける読取処理の中断処理を開始する。読取フィルタ301は、読取処理を中断する際に、他のフィルタと同様に、所定のデータまで読取処理を実行した後に読取処理を中断する(S517)。すなわち、読取フィルタ311は、画像パイプ41より中断指示を受けた時点で読取途中であったデータに対する読取処理を実行し、この読取処理が終了した後、中断処理を開始する。そして、読取フィルタ301において中断処理が完了すると、画像処理装置100の中断処理が完了し(S518)、画像処理装置100は中断状態へ遷移する。
尚ここで、画像処理装置100が中断状態に遷移したときに、全ページに対しての処理が終了していた場合には、画像処理装置100は出力デバイスを解放し、処理完了後の状態へ遷移しても良い。
次に、コピー機能の処理を実行中の画像処理装置における終了処理、すなわちキャンセル処理について説明する。
画像処理装置のキャンセル時における処理手順では、キャンセル指示を受けた時点でプロッタ52Aを最初に停止させる。これは、画像処理装置100においてキャンセル指示を受け付けたとき、逸早く印刷処理を停止させるためである。
例えば上述したように、コピー用紙が1枚出力される毎に課金される設定の画像処理装置では、キャンセルした後に処理途中であったページが出力されると、このページに対しても課金されるため、利用者にとって望ましくない。そこで、本実施例の画像処理装置100では、キャンセル指示を受け付けた場合には、処理途中のページを出力する前に、プロッタ52Aの動作を停止させることにより、このような課題を解決している。また、本実施例の画像処理装置100では、上記の動作定義に基づく動作を行う。すなわち、画像処理装置100では、出力フィルタ320を含む各フィルタの動作を、キャンセル指示を受け付けた場合、該フィルタのキャンセル処理を行い、該フィルタのキャンセル処理が終了した後、該フィルタの入力側のフィルタへキャンセル指示を伝達する構成とした。尚ここでは、キャンセル指示を受け付けたとき、その時点で該フィルタのキャンセル処理を行う処理が、動作定義における所定の処理に該当する。
図6は、コピー機能の処理をキャンセルする際の処理手順を説明するための図である。
画像処理装置100において、印刷フィルタ321によりプロッタからの印刷処理が実行されているとき(S611)、ユーザインターフェイス層10が印刷処理のキャンセル指示を受け付けると、このキャンセル指示はコントロール層20に伝達される。そして、コントロール層20は、このキャンセル指示に基づき印刷フィルタ321へ印刷処理のキャンセル指示を出す(S612)。印刷フィルタ321では、まず最初にプロッタ52Aの動作を停止させる(S613)。そして印刷フィルタ321は、プロッタ52Aを停止させた後、次の新たな処理を実行するための回復処理などを行いキャンセル処理を終了する。
印刷フィルタ321は、キャンセル処理が終了した後、このキャンセル指示を画像パイプ41へ伝達する(S614)。画像パイプ41は、これを文書加工フィルタ321へ伝達する(S615)。尚、ここでキャンセル処理が実行できなかった場合には、印刷フィルタ321は、現在処理途中のページが出力された後にキャンセル指示を画像パイプ41へ伝達しても良い。
また画像処理装置100は、キャンセル処理が終了した後、装置内に残されたコピー用紙を排紙しても良い。また、画像処理装置100が、例えば両面印刷処理の途中にキャンセル指示を受け付けた場合などには、片面のみの処理が終了した状態であっても他の片面の処理をキャンセルして排紙しても良い。
文書加工フィルタ311は、画像パイプ41よりキャンセル指示を受けると、加工処理をキャンセルする(S616)。そして、文書加工フィルタ311は、加工処理のキャンセル処理を終了すると、このキャンセル指示を画像パイプ41へ伝達する(S617)。
読取フィルタ301は、画像パイプ41よりキャンセル指示を受けると、読取処理をキャンセルする(S618)。このとき、読取フィルタ301は、キャンセル指示を受けてスキャナ51Aの動作を停止させ、スキャナ51A内に原稿が残っていた場合にはこれを排紙しても良い。読取フィルタ301においてキャンセル処理が終了すると、画像処理装置100におけるキャンセル処理が終了し(S619)、出力デバイスであるプロッタ52Aが解放される。
画像処理装置100では、以上のようにキャンセル処理を実行するため、逸早く、かつ適切なタイミングで出力処理を停止させることができる。
以上に説明したように、本実施例の画像処理装置100では、各処理シーケンスにおいて出力フィルタ320の動作を基準にして制御を行っている。このため、各処理における中断処理やキャンセル処理においても、フィルタの制御系を変更することなく適切に実行中の各処理の中断、キャンセルを行うことができる。また、本実施例の画像処理装置100では、各フィルタが、各処理において同一の動作定義にしたがって制御されるため、コントロール層20におけるフィルタの制御を容易にし、かつ各フィルタの生成を容易にすることができる。
次に、図7を参照して上記実施例で説明した各機能を実現させる画像処理プログラムが記録された記憶媒体を説明する。記憶媒体410に記録された画像処理プログラムが、コンピュータ500に読み込まれて実行されることにより、本実施例で説明した各機能を実現することができる。
例えばコンピュータ500は、CPU510、ハードディスク520、メモリ530、表示部540、入力部550、通信部560、記憶媒体読み込み部570を備えている。CPU510は演算処理装置であって、コンピュータ500において実行される演算や処理を実行する。ハードディスク520は、データを格納する記憶手段であって、コンピュータ500上で動作するアプリケーションや、このアプリケーションにより作成されたデータなどが格納されている。メモリ530には、コンピュータ500に係る各種の設定値や、CPU510での演算結果などが格納される。
表示部540はディスプレイなどであり、コンピュータ500において作成されたデータなどをユーザに閲覧可能に表示する。入力部550は例えばキーボードやマウスであって、ユーザの操作により各種データが入力される。通信部560は例えばネットワークコントロールユニットなどであり、コンピュータ500が外部の装置と通信を行うためのものである。記憶媒体読み込み部570は、各種記憶媒体に記録されたデータやプログラムなどを読み込むものであり、例えばフロッピー(登録商標)ディスクドライバなどである。
記憶媒体410は、本実施例の各機能を実現させる画像処理プログラム400が記録されている。この画像処理プログラム400は、記憶媒体読み込み部570により読み込まれてCPU510において実行される。記憶媒体410は、例えばフロッピー(登録商標)ディスクやCD−ROM(Compact Disk Read Only Memory)等であっても良く、コンピュータ70において読み取り可能なに媒体であれば良い。また、画像処理プログラム400はネットワークを介して通信部560により受信されて、ハードディスク520等に格納されても良い。
以上、各実施例に基づき本発明の説明を行ってきたが、上記実施例にあげた構成、その他の要素との組み合わせなど、ここで示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
本発明は、パイプ&フィルタの概念を適用した画像処理装置、画像処理方法、画像処理プログラムに利用可能である。
パイプ&フィルタの概念を説明する図である。 本実施例の画像処理装置100のソフトウェア構成を示す構成図の例である。 本実施例の画像処理装置100において一機能を実現させる動作を説明するフローチャートである。 コピー機能の処理を実行する際の処理手順を説明するための図である。 コピー機能の処理を中断する際の処理手順を説明するための図である。 コピー機能の処理をキャンセルする際の処理手順を説明するための図である。 実施例で説明した各機能を実現させる画像処理プログラムが記録された記憶媒体を説明する図である。
符号の説明
100 画像処理装置
300 入力フィルタ
301 読取フィルタ
310 加工フィルタ
311 文書加工フィルタ
320 出力フィルタ
321 印刷フィルタ
400 画像処理プログラム

Claims (6)

  1. 力部により入力されるデータの入力処理を制御する入力フィルタと、
    前記入力フィルタから出力された前記データに所定の処理を施す加工フィルタと、
    前記加工フィルタにより前記所定の処理が施された前記データを出力する出力部による出力処理を制御する出力フィルタと、
    前記入力フィルタと、前記加工フィルタと、前記出力フィルタと、を用いて処理の実行を制御する制御手段と、を有し、
    前記制御手段は、当該画像処理装置において実行中の処理の中断処理又は終了処理を、出力側から入力側に向かって順次実行するように制御することを特徴とする画像処理装置。
  2. 前記入力フィルタ、前記出力フィルタ及び前記加工フィルタは、同一の動作定義に基づき制御されることを特徴とする請求項1に記載の画像処理装置。
  3. 記出力フィルタ及び前記加工フィルタは、中断処理の場合に、供給されたデータに対する所定の処理を終了した後、該フィルタの入力側にあるフィルタに対して中断処理を開始させることを特徴とする請求項1または2に記載の画像処理装置。
  4. 記入力フィルタ、前記出力フィルタ及び前記加工フィルタは、前記制御手段により前記出力フィルタへ画像処理の実行指示が出された場合、それぞれにおける所定の処理を独立して実行することを特徴とする請求項1ないし3のいずれか一項に記載の画像処理装置。
  5. 入力部により入力されるデータの入力処理を制御する入力手順と、
    前記入力手順において入力された前記データに所定の処理を施す加工手順と、
    前記加工手順において前記所定の処理が施された前記データを出力する出力部によるデータの出力処理を制御する出力手順と
    前記入力手順と、前記加工手順と、前記出力手順と、を用いて処理の実行を制御する制御手順と、を有し、
    前記制御手順は、当該画像処理装置において実行中の処理の中断処理又は終了処理を、出力側から入力側に向かって順次実行するように制御することを特徴とする画像処理方法。
  6. コンピュータに、
    力部により入力されるデータの入力処理を制御する入力手順と、
    前記入力手順において入力された前記データに所定の処理を施す加工手順と、
    前記加工手順において前記所定の処理が施された前記データを出力する出力部によるデータの出力処理を制御する出力手順と
    前記入力手順と、前記加工手順と、前記出力手順と、を用いて処理の実行を制御する制御手順と、を実行させ、
    前記制御手順は、当該画像処理装置において実行中の処理の中断処理又は終了処理を、出力側から入力側に向かって順次実行するように制御することを特徴とする画像処理プロ
    グラム。
JP2006240751A 2006-09-05 2006-09-05 画像処理装置、画像処理方法及び画像処理プログラム Expired - Fee Related JP4791915B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006240751A JP4791915B2 (ja) 2006-09-05 2006-09-05 画像処理装置、画像処理方法及び画像処理プログラム
US11/895,467 US8406549B2 (en) 2006-09-05 2007-08-24 Image processing apparatus, image processing method, and image processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006240751A JP4791915B2 (ja) 2006-09-05 2006-09-05 画像処理装置、画像処理方法及び画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2008066889A JP2008066889A (ja) 2008-03-21
JP4791915B2 true JP4791915B2 (ja) 2011-10-12

Family

ID=39153290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006240751A Expired - Fee Related JP4791915B2 (ja) 2006-09-05 2006-09-05 画像処理装置、画像処理方法及び画像処理プログラム

Country Status (2)

Country Link
US (1) US8406549B2 (ja)
JP (1) JP4791915B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008287363A (ja) * 2007-05-15 2008-11-27 Ricoh Co Ltd 画像処理装置、画像処理方法及び画像処理プログラム
JP5132260B2 (ja) * 2007-10-31 2013-01-30 株式会社リコー 画像処理装置、画像処理方法、画像処理プログラム
JP5169150B2 (ja) * 2007-10-31 2013-03-27 株式会社リコー 情報処理装置及び情報処理方法
JP4907583B2 (ja) * 2008-03-26 2012-03-28 株式会社リコー 画像処理装置
JP5935777B2 (ja) * 2013-09-17 2016-06-15 コニカミノルタ株式会社 画像処理装置、画像処理方法、画像処理システムおよびプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3679349B2 (ja) 2000-07-05 2005-08-03 株式会社リコー 画像形成装置、画像形成方法、画像形成プログラムおよびアプリケーションプログラム
JP3964297B2 (ja) * 2002-09-19 2007-08-22 株式会社リコー 画像処理装置、画像処理方法、およびコンピュータが実行するためのプログラム
JP4694268B2 (ja) * 2005-06-03 2011-06-08 富士ゼロックス株式会社 画像処理装置、方法及びプログラム

Also Published As

Publication number Publication date
US20080059548A1 (en) 2008-03-06
JP2008066889A (ja) 2008-03-21
US8406549B2 (en) 2013-03-26

Similar Documents

Publication Publication Date Title
JP4861883B2 (ja) 画像形成装置及びアプリケーション実行方法
JP6015429B2 (ja) 情報処理装置、プログラム、情報処理システム
JP5100788B2 (ja) 画像形成システム、データ処理装置、画像形成装置及びコンピュータプログラム
JP2007042023A (ja) 印刷管理方法、プログラム及び印刷管理装置
JP4791915B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP6022508B2 (ja) 画像形成装置、画像形成方法及び画像形成プログラム
JP2008271520A (ja) 動作制御プログラム、動作制御方法、及び画像形成装置
JP2014085749A (ja) ドライバインストーラ、画像処理装置、画像形成システム及び画像形成装置
JP2008305004A (ja) 画像形成装置、アプリケーション実行方法及びアプリケーション実行プログラム
JP2008236609A (ja) 画像形成装置、画像形成方法及びアプリケーションプログラム
JP4787791B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム
JP2006229582A (ja) 文書処理装置、画像形成装置及び文書処理プログラム
JP2007053556A (ja) 複合機
US20080062464A1 (en) Image processing device and image processing method
JP2011164789A (ja) 情報処理装置、ディアクティベーション処理制御方法、プログラム及び記憶媒体
JP2020027358A (ja) デバイス制御プログラムと、前記デバイス制御プログラムをインストールするインストーラプログラム、及び記憶媒体
JP4906673B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
US20090103828A1 (en) Image Processing Apparatus, Image Processing Method, and Computer-Readable Recording Medium Having Image Processing Program
US20140233057A1 (en) Control system for forming and outputting image, control apparatus for forming and outputting image, and recording medium storing a control program for forming and outputting image
JP2009043153A (ja) 電子機器、サービス提供方法及びプログラム
JP6287880B2 (ja) 画像形成装置、画像形成方法、及び画像形成プログラム
JP4021289B2 (ja) 画像形成装置、記憶領域確保方法
US20180364957A1 (en) Image forming apparatus and control method of image forming apparatus
JP4534903B2 (ja) 複合機
JP2007274143A (ja) 画像処理装置、画像処理方法、画像処理プログラム、及び、情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110405

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110603

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110628

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110722

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

Free format text: PAYMENT UNTIL: 20140729

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees