説明

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

【課題】Webサービスにおける共通処理の中でもサービス毎の個別処理を提供する。
【解決手段】個々のサービスをプラグイン可能な画像処理装置であって、プラグイン対象となる各サービスを管理するサービス管理手段107と、各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段104と、各サービスの共通処理を処理する共通処理手段105と、共通処理における、プラグインとしての個別処理を処理する処理手段108と、を備え、共通処理手段は、共通処理における個別処理を、サービスと関連付けて管理する個別処理管理手段106を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
従来、Webサービスを利用する画像処理装置では、異なるツールを実装した場合、異なるプロトコル・IFをそれぞれ利用していた。図1は、従来技術を説明する図である。図1に示すように、MFPは、ツールA用のIFとツールA用の処理、ツールB用のIFとツールB用の処理とを実装していた。理由は、それぞれが異なる認証処理を行っていたり、やり取りするデータに差異があったりするからである。
【0003】
しかし、画像処理装置側およびクライアント側では、それぞれのプロトコル・IFに対応する必要があり、同じような処理を行っている部分は重複開発しており、時間的にもコスト的にも無駄があった。
【0004】
上記問題に対し、インタフェースを一元化する目的で様々なサービス提供システムが開発されている。例えば、特開2006−127222号公報(特許文献1)には、クライアントからのサービス利用要求であるメッセージを解析し、サービス利用要求に対する共通処理を行って、各サービスを実行するオンデマンドサービス提供システムが開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来技術では、Webサービスにおける共通処理は各サービス共通であり、共通処理の中でもサービス毎の個別処理を提供することができないという問題点があった。
【0006】
そこで本発明は、上記問題に鑑みてなされたものであり、Webサービスにおける共通処理の中でもサービス毎の個別処理を提供することができる画像処理装置、情報処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様の画像処理装置は、個々のサービスをプラグイン可能な画像処理装置であって、プラグイン対象となる各サービスを管理するサービス管理手段と、前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段と、前記各サービスの共通処理を処理する共通処理手段と、前記共通処理における、プラグインとしての個別処理を処理する処理手段と、を備え、前記共通処理手段は、前記共通処理における個別処理を、前記サービスと関連付けて管理する個別処理管理手段を備える。
【0008】
また、本発明の他の態様の情報処理方法は、個々のサービスをプラグイン可能であり、プラグイン対象となる各サービスを管理するサービス管理手段と、各サービスの共通処理における個別処理を、前記サービスと関連付けて管理する個別管理手段を備える画像処理装置における情報処理方法であって、前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御ステップと、制御された前記共通処理を処理する際、前記個別管理手段から個別処理がないかを検索する検索ステップと、検索された個別処理を行って前記共通処理を処理する共通処理ステップと、前記サービスを処理するサービス処理ステップとを有する。
【0009】
また、本発明は、本発明のプログラムを記録した記録媒体をコンピュータに読み取らせて実現することも可能である。
【発明の効果】
【0010】
本発明によれば、Webサービスにおける共通処理の中でもサービス毎の個別処理を提供することができる画像処理装置、情報処理方法、及びプログラムを提供することができる。
【図面の簡単な説明】
【0011】
【図1】従来技術を説明する図。
【図2】本発明に係るシステム構成を説明する図。
【図3】本発明に係る画像処理装置のハードウェア構成の一例を示すブロック図。
【図4】本発明に係る画像処理装置の基本機能構成の一例を示すブロック図。
【図5】実施例1に係る画像処理装置の機能構成の一例を示すブロック図。
【図6】実施例1における個別処理管理データの一例を示す図。
【図7】実施例1におけるサービスの登録処理の一例を示すシーケンス図。
【図8】実施例1におけるサービスA処理の一例を示すシーケンス図。
【図9】実施例2に係る画像処理装置の機能構成の一例を示すブロック図。
【図10】実施例2における個別処理管理データの一例を示す図。
【図11】実施例2におけるサービスA処理の一例を示すシーケンス図。
【図12】実施例2におけるサービスC処理の一例を示すシーケンス図。
【図13】実施例3に係る画像処理装置の機能構成の一例を示すブロック図。
【図14】実施例4に係る画像処理装置90の機能構成の一例を示すブロック図。
【図15】マーキングサービスの概要を説明する図。
【図16】実施例4におけるプラグインの例を示す図。
【図17】読取方法による個別処理の例を示す図。
【図18】マーキングサービス実行時の処理の一例を示すシーケンス図。
【図19】共通処理のうちの個別処理を判別する処理の一例を示すフローチャート。
【図20】マーキングサービスの処理の一例を示すフローチャート。
【発明を実施するための形態】
【0012】
以下、本発明の実施例を図面に基づいて説明する。
[実施例1]
<システム構成及びハードウェア構成>
図2は、本発明に係るシステム構成を説明する図である。図2に示すシステムは、MFP(ここでは、画像処理装置ともいう)10、20とPC(パーソナルコンピュータ)30、40とがLAN(Local Area Network)で接続され、クライアントPC(以下、単にクライアントともいう)50、60がネットワークを介して接続されている。
【0013】
これにより、各PCや各クライアントが、それぞれのMFPに対してサービスのリクエストを出力し、また各MFPからのレスポンスを受信する。なお、本発明に係るシステムは、図1に示す例に限られず、それぞれ任意数の装置が任意のネットワークを介して接続されていればよい。
【0014】
次に、画像処理装置10のハードウェア構成について説明する。図3は、本発明に係る画像処理装置10のハードウェア構成の一例を示す図である。図3に示すように、画像処理装置10は、制御部11、主記憶部12、補助記憶部13、外部記憶装置I/F部14、ネットワークI/F部16、操作部17、表示部18、エンジン部19を含む。
【0015】
制御部11は、コンピュータの中で、各装置の制御やデータの演算、加工を行うCPUである。また、制御部11は、主記憶部12に記憶されたプログラムを実行する演算装置であり、入力装置や記憶装置からデータを受け取り、演算、加工した上で、出力装置や記憶装置に出力する。
【0016】
主記憶部12は、ROM(Read Only Memory)やRAM(Random Access Memory)などであり、制御部11が実行する基本ソフトウェアであるOSやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
【0017】
補助記憶部13は、HDD(Hard Disk Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
【0018】
外部記憶装置I/F部14は、USB(Universal Serial Bus)などのデータ伝送路を介して接続された記憶媒体15(例えば、フラッシュメモリ、SDカードなど)と画像処理装置10とのインタフェースである。
【0019】
また、記憶媒体15に、所定のプログラムを格納し、この記憶媒体15に格納されたプログラムは外部記憶装置I/F部14を介して画像処理装置10にインストールされ、インストールされた所定のプログラムは画像処理装置10により実行可能となる。
【0020】
ネットワークI/F部16は、有線及び/又は無線回線などのデータ伝送路により構築されたLAN(Local Area Network)、WAN(Wide Area Network)などのネットワークを介して接続された通信機能を有する周辺機器と画像処理装置10とのインタフェースである。
【0021】
操作部17や表示部18は、キースイッチ(ハードキー)とタッチパネル機能(GUIのソフトウェアキーを含む:Graphical User Interface)を備えたLCD(Liquid Crystal Display)とから構成され、画像処理装置10が有する機能を利用する際のUI(User Interface)として機能する表示及び/又は入力装置である。
【0022】
エンジン部19は、実際に画像形成に係る処理を行うプロッタ、スキャナ等の機構部分である。
【0023】
<機能構成>
図4は、本発明に係る画像処理装置10の基本機能構成の一例を示すブロック図である。図4に示すように、画像処理装置10は、ネットワークIF(IF:インタフェース)101、サービスフレームワーク102、サービスA110、サービスB111、サービスC112、プラットフォーム113を含む。なお、図4に示す例では、画像処理装置10が有するコピーやFAX、印刷などの基本機能については図示していない。
【0024】
なお、ネットワークIF101は、例えば、ネットワークI/F部16により実現され、サービスフレームワーク102、各サービス、プラットフォーム113は、例えば、補助記憶部13や主記憶部12に記憶されたプログラムを制御部11が実行することで実現されうる。以下の実施例においても同様である。
【0025】
ネットワークIF101は、画像処理装置10とLANとを接続するためのインタフェースである。サービスフレームワーク102は、共通IF103、共通制御部104、共通処理部105、サービス管理部107、サービスA共通処理部108、サービスB共通処理部109を含む。
【0026】
サービスフレームワーク102は、各サービスを実現するプラグインを管理する仕組みを提供する。プラグインをサービスフレームワーク102に登録することで、そのサービスが利用できるようになる。サービスフレームワーク102では、各プラグインの管理、サービス全体の共通処理、個別処理の呼び出しの制御などを行う。
【0027】
共通IF103は、各サービス共通のインタフェースである。ネットワークIF101から、サービスの実行依頼(リクエスト)を受けると、共通制御部104にサービスの実行依頼を通知する。
【0028】
共通制御部104は、共通IF103からサービスの実行依頼を受けると、サービス管理部107に対し、サービスを提供できるかどうかを調べるためサービスの検索を行う。また、共通制御部104は、サービスが検索された場合、共通処理部105に対し、共通処理の実行を要求する。
【0029】
また、共通制御部104は、サービス毎に共通処理がまとめられた処理部があると、サービス毎の処理部に共通処理の実行を要求する。
【0030】
共通処理部105は、共通制御部104から共通処理の実行が要求されると、共通処理を行って、個別処理管理部106に個別処理がないか問い合わせる。共通処理部105は、個別処理がある場合、個別処理を実行する。なお、個別処理は、1つのプラグインとして実装可能である。また、共通処理部105は、個別処理のプラグインを処理するための口を設け、個別処理をプラグインできる仕組みを提供する。
【0031】
個別処理管理部106は、サービス毎に共通処理の個別処理を管理する。個別処理管理部106は、具体的には、後述する個別処理管理データを保持する。
【0032】
サービス管理部107は、画像処理装置10にプラグインされたサービスを管理する。具体的には、サービス管理部107は、装置内にプラグインされたサービスの識別子などを保持して管理する。
【0033】
サービスA共通処理部108は、共通処理部105を継承して、サービスAの共通処理又は個別処理をまとめた処理部である。サービスB共通処理部109は、共通処理部を継承して、サービスBの共通処理をまとめた処理部である。このように、複数のサービスで共通して実施する個別処理などがあるのであれば、それらを事前に各サービスの共通処理としてまとめておくことが可能である。よって、サービスA共通処理部108などは、他のサービスでも利用可能である。なお、個別処理は、かならずしもサービス毎にまとめる必要はなく、データベースなどに単に記憶されるようにしてもよい。
【0034】
各サービス110、111、112は、プラグイン可能に実装されており、機能の拡張、追加、削除などが容易にできる。プラットフォーム113は、プラグイン化された各サービスやアプリケーションソフトを動作させる際の基盤となるOSである。
【0035】
なお、サービスとしては、装置の設定情報を取得する操作(サービス)や、アドレス帳の操作や、コピー、FAX、プリントなどの各プラグインの操作などがある。また、装置の設定情報を取得する操作のリクエストとしては、以下の例がある。
//ws/machineA/get/id/pas
「get」は、設定情報の取得を意味し、「id」「pas」は認証処理に用いられるパラメータである。
【0036】
次に、共通処理として認証処理を例に説明する。図5は、実施例1に係る画像処理装置10の機能構成の一例を示すブロック図である。図5に示す機能において、図4に示す機能と同様の機能のものは同じ符号を付し、その説明を省略する。
【0037】
図5では、共通処理部120は、共通処理としての認証部121を含む。認証部121は、各サービスで認証処理を行う場合に、共通して処理される部分が実装されている。例えば、リクエストを受ける処理や、ディスパッチ処理、認証に必要なデータがない場合のエラー処理などが認証部121で行われる。具体的な認証手段については、個別処理としてプラグイン化されている。
【0038】
サービスA共通処理部122は、サービスA124の認証処理における個別処理が行われる。例えば、サービスA124の個別処理は、IDとパスワードを用いて認証を行なうベーシック認証とする。サービスB共通処理部123は、サービスB125の認証処理における個別処理が行われる。例えば、サービスB125の個別処理は、外部の認証サーバで認証を行なうケルベロス認証とする。
【0039】
なお、個別処理管理部106は、どのサービスがどの認証手段(個別処理)を用いるかを管理する。図6は、実施例1における個別処理管理データの一例を示す図である。個別処理管理データは、サービス毎に個別処理を関連付けるデータである。図6に示す例では、各サービスには、各サービスの識別子(例えばURI(Uniform Resource Identifier))と、認証手段とが関連付けられる。サービスA124とサービスC126とは、同じ認証手段のベーシック認証を行なう。
【0040】
共通処理部120は、個別処理管理部106に管理される個別処理管理データを参照することで、どのサービスには、どの個別処理の認証手段を行うかを把握することができる。共通処理部120により認証処理の共通処理が行われて、プラグイン化された個別の認証手段を行なうことで、サービス毎の認証処理を実現することができる。
【0041】
これより、例えば、認証処理において、各サービス共通の処理は共通処理部120で処理し、具体的な認証手段はプラグイン化した個別処理として実装することができる。他の共通処理の例としては、暗号化処理や、暗号化の復号化処理などが考えられる。暗号化にも複数の具体的な暗号化手段があるため、これを個別処理としてプラグイン化すればよい。
【0042】
<動作>
次に、実施例1における画像処理装置10の動作について説明する。まず、サービス管理部107へのサービスの登録処理について説明する。図7は、実施例1におけるサービスの登録処理の一例を示すシーケンス図である。
【0043】
図7に示すステップS101において、サービスA124は、装置にプラグインされたときに、サービス管理部107に対し、サービス登録要求を行う。
【0044】
ステップS102において、サービスA124は、共通処理における個別処理がある場合は、個別処理管理部106に対し、個別処理の登録要求を行う。ステップS102は、個別処理の数だけ繰り返し行われる。これにより、新しくプラグインされたサービスはサービス管理部124で管理され、共通処理における個別処理は個別処理管理部106で管理されることになる。
【0045】
次に、実施例1におけるサービス処理について説明する。図8は、実施例1におけるサービス処理の一例を示すシーケンス図である。ステップS201において、ネットワークIF101は、共通IF103にサービスAの実行依頼を行う。このとき、実行依頼とともに、認証用のパラメータも付与されている。
【0046】
ステップS202において、共通IF103は、ネットワークIF101からサービスAの実行依頼を受けると、共通制御部104にサービスAの実行依頼を行う。
【0047】
ステップS203において、共通制御部104は、共通IF103からサービスAの実行依頼を受けると、サービス管理部107に対してサービスAの検索を行う。サービス管理部107において、サービスAが管理され、さらに、サービスA共通処理部122がある場合にはこのサービスA共通処理部122もサービスAに対応付けて管理されている。
【0048】
ステップS204において、共通制御部104は、サービスA共通処理部122に対し、サービスA共通処理の実行依頼を行う。ステップS205において、サービスA共通処理部122は、認証処理を行うに際し、まず、共通処理部の認証部121による認証処理を行う。
【0049】
ステップS206において、認証部121は、認証処理の共通処理を終えると、個別処理管理部106を参照し、どの個別処理を行うかを特定する。サービスA共通処理部122は、具体的な認証手段を行なう。具体的な認証手段は、装置が有する認証に必要な情報を呼び出し、認証を行なう。
【0050】
ステップS207において、サービスA共通処理部122は、認証が成功した後、サービスAの実行をサービスA124に依頼し、サービスAが実行される。
【0051】
以上、実施例1によれば、各サービスにおける共通処理を共通処理部に構成することができ、さらに、共通処理においてもサービス毎に個別処理を行うことができる。また、実施例1によれば、サービスにおける個別処理をまとめてサービス共通処理を設けることもでき、このサービス共通処理は他のサービスにおいて利用可能とすることができる。
【0052】
[実施例2]
次に、実施例2に係る画像処理装置について説明する。実施例2では、サービスにおける共通処理として、前処理部と後処理部とを設けることができ、所定の処理のタイミングを規定することができる。
【0053】
図9は、実施例2に係る画像処理装置70の機能構成の一例を示すブロック図である。図9に示す機能において、図4、5に示す機能と同様の機能のものは同じ符号を付し、その説明を省略する。
【0054】
図9に示す共通処理部130は、個別処理管理部131、認証部121、前処理部132、後処理部133を含む。前処理部132は、各サービスにおいて必要な前処理が実装される。後処理部133は、各サービスにおいて必要な後処理が実装される。
【0055】
個別処理管理部131は、サービスに対応する個別の認証手段に加え、前処理部と後処理部とを関連付けて管理する。図10は、実施例2における個別処理管理データの一例を示す図である。図10に示すように、サービス毎に、識別子(例えばURI)、認証手段、前処理、後処理が関連付けられている。サービスAは、認証手段としてベーシック認証を行ない、サービスAの処理の前に処理aを行ない、サービスAの処理の後に処理bを行なうことを示す。
【0056】
サービスCは、認証手段と後処理は関連付けられておらず、前処理として処理c、処理d、処理eが関連付けられている。前処理としては、認証処理とは別に、実行依頼とともに送られてきたパラメータと、機器内のデータとで照合を行う処理や、インスタンスの呼び出し処理などがある。
【0057】
図9に戻り、サービスA共通処理部134は、サービスAにおける共通処理の個別処理をまとめたものであり、認証手段と前処理と後処理とがある。また、サービスB共通処理部135もサービスA共通処理部134と同様である。
【0058】
サービスA136、サービスB137の場合、認証処理の後、前処理、サービスが実行された後、後処理が行われる。サービスC138の場合、認証処理が個別処理管理部131に管理されていない(図10参照)ので、デフォルトの認証処理が行われ、前処理として順序付けられた3つの処理後にサービスC138が実行される。
【0059】
<動作>
次に、実施例2に係る情報処理装置70の動作について説明する。図11は、実施例2におけるサービスA処理の一例を示すシーケンス図である。図11に示す処理において、図8に示す処理と同様の処理を行うものは同じ符号を付し、その説明を省略する。
【0060】
ステップS301において、サービスA共通処理部134は、共通処理部の前処理部132に対して、前処理の実行を依頼する。前処理部132は、個別処理管理部133に対し、どの前処理を行うかを問合せ、前処理を行う。ステップS302において前処理が行われると、サービスA136が実行される。
【0061】
ステップS303において、サービスA136が実行終了すると、サービスA共通処理部134は、後処理部133に対し、後処理の実行を要求する。ステップS304において、後処理部133は、個別処理管理部131に対し、サービスA136の後処理を問合せ、後処理を実行する。
【0062】
以上の処理により、サービスの前後に行う処理を共通処理として実装することも可能である。
【0063】
図12は、実施例2におけるサービスC処理の一例を示すシーケンス図である。図12に示すステップS401からステップS405は、図8や図11に示すステップS201からステップS205と同様であるため、説明を省略する。なお、ステップS404において、共通制御部104は、サービスC共通処理部が存在しないため、共通処理部130に共通処理の実行を要求する。
【0064】
ステップS406において、認証部121は、個別処理管理部131に対し、サービスCの認証の個別処理を問合せる。ここでは、サービスCには、認証の個別処理は関連付けられていないため、デフォルトの認証処理を行う。なお、デフォルトの認証処理の代わりに認証処理を行わない設定にしておいてもよい。
【0065】
ステップS407において、認証部121は、デフォルトの認証処理を行う。デフォルトの認証処理は予め設定しておく。
【0066】
ステップS408において、共通処理部130は、前処理の実行を前処理部132に要求する。ステップS409において、前処理部132は、サービスCの前処理を個別処理管理部132に問合せて、どの前処理を行うかを特定する。
【0067】
ステップS410〜S412において、前処理部132は、個別処理管理データに登録されている順序に従って前処理を行う。
【0068】
ステップS413において、前処理が終了すると、共通処理部130は、サービスC138に対してサービスCの実行を要求し、サービスCが実行される。
【0069】
以上、実施例2によれば、共通処理の個別処理をプラグインとして実装する以外にも、サービスの前後で行う処理を共通処理として実装することができる。
【0070】
[実施例3]
次に、実施例3に係る画像処理装置80について説明する。実施例3では、各共通処理においてさらに共通処理を抜き出して、各サービスで利用できるようにしている。
【0071】
図13は、実施例3に係る画像処理装置80の機能構成の一例を示すブロック図である。図13に示す機能において、図5に示す機能と同様の機能を示すものは同じ符号を付し、その説明を省略する。
【0072】
共通処理部140は、個別処理管理部141、認証部121、復号部142、共通部143を含む。復号部142は、暗号化されたデータを復号する処理の共通処理を行う。復号部142は、例えば、復号に伴うディスパッチ処理や必要最低限のエラー処理を行う。
【0073】
共通部143は、例えば認証部121と復号部142の処理において、共通の処理があれば、別個に独立して処理を規定する。例えば、必要なパラメータがない場合のエラー処理は、認証部121においても復号部142においても同様であると考えられる。このような処理を共通部143として実装しておく。
【0074】
個別処理管理部141は、サービス毎に、識別子、認証手段、復号手段、第2共通処理を関連付ける。第2共通処理とは、共通処理の各処理、例えば認証処理と復号処理の共通処理を示し、共通部143に実装される。また、第2共通処理はプラグインとして実装されてもよい。なお、認証手段、復号手段、第2共通処理は処理順序を規定して個別処理管理データに登録できる。
【0075】
サービスA共通処理部144、サービスB共通処理部145は、実施例1などで説明したとおり、サービス毎に共通処理をまとめたものである。共通部143の処理は、各サービス共通処理部に含まれてもよい。
【0076】
サービス146〜147は、各プラグインとして実装され、実施例1や実施例2の各サービスと同様である。
【0077】
以上、実施例3によれば、共通処理の各処理における共通の処理を新たに共通処理とし、各サービスで利用することができる。
【0078】
[実施例4]
次に、実施例4に係る画像処理装置について説明する。実施例4では、クライアントから受信したマーキングされた画像に対し、マーキング部分を解析して、解析結果により後処理を決定する。
【0079】
図14は、実施例4に係る画像処理装置90の機能構成の一例を示すブロック図である。図14に示す機能において、図5に示す機能と同様の機能を示すものは同じ符号を付し、その説明を省略する。
【0080】
共通処理部150は、各サービスにおいて、標準的なパターンの機能を実現する処理を行う。共通処理部150は、個別処理管理部151、読取共通処理部152を有する。
【0081】
個別処理管理部151は、マーキング画像の種別毎に、読取方法を関連付けて管理する。例えば、マーキング画像「バーコード型」に対し、読取方法「バーコード」の読取処理が対応付けられる。
【0082】
読取共通処理部152は、処理をリクエストされた文書に対し、マーキング画像の種別を判別する。読取共通処理部152は、判別したマーキング画像に対応する読取方法の個別処理に読取処理を行わせる。読取共通処理部150は、個別処理の読み取り結果に基づいて、次の処理を決定する。この処理の流れを規定したのが共通処理となる。
【0083】
読取方法X153と読取方法Y154は、読取方法の個別処理を表す。個別処理とは、共通処理の中の一部の処理内容を変えたい場合に、新しく追加する処理をいう。
【0084】
マーキングサービス155は、読取方法の読み取り結果に基づいて、文書に対するマーキングサービスを実行する機能を有する。例えば、マーキングサービス155は、文書と紐付けたい情報があり、この情報を画像に変換し、合成等の手段を用いてマーキング画像が埋め込まれた文書などを生成する。
【0085】
これにより、利用者がこの文書をMFPで読み取らせると、MFPが文書に埋め込まれたマーキング画像を検知して、元の情報に復元したりできる。よって、システムは、復元された情報を利用することができるようになる。読取方法とは、マーキングされた文書からマーキング画像を読み取る手段のことをいう。読取方法は、マーキング画像の形状や内容により、様々な方法が考えられる。例えば、読取方法には、バーコード処理、QRコード処理などがある。
【0086】
リフレッシュコピー156は、手書きメモなどが書かれたマーキングされた文書のマーキング画像を読み取り、元文書を特定し、手書きメモを消去した文書を印刷する機能を有する。
【0087】
すかし印刷157は、マーキング画像を、出力文書の背景にすかしとして埋め込む機能を有する。
【0088】
以上の機能を有することで、マーキングサービス155は、マーキングサービス155の中の処理のうち、読取の個別処理となっている読取方法の結果に基づきどれを選択するかを決定することができる。マーキングサービス155は、このサービス自体がプラグインであり、画像処理装置90に対して後から機能追加できるようになっている。また、読取共通処理部152は、個別処理用のAPIを有する。よって、読取方法は、このAPIに対してプラグインとして後から追加することができる。
【0089】
図15は、マーキングサービスの概要を説明する図である。まず、マーキング画像の読取方法がプラグインによって異なる。どの読取方法を選択するかは、文書中のマーキング画像をみて、読取共通処理部152が決定する。マーキング画像の種別により、どの読取方法を選択すればよいかは個別処理管理部151を参照すればよい。
【0090】
各読取方法はプラグインで実現される。読取共通処理部152は、決定した読取方法により読み取った結果と、リクエスト情報とに基づいて、どのマーキングサービスを行うか判定し、各処理部に振り分ける。読み取った結果には次の処理を示すサービス名やサービスに関するパラメータなどが含まれており、このサービス名などにより、どの処理(例えば、リフレッシュコピー、すかし印刷)を行うかを判定できる。
【0091】
次に、本実施例で用いるプラグインについて説明する。図16は、実施例4におけるプラグインの例を示す図である。図16に示すように、実施例4では、個別処理のプラグイン153、154、及びサービスのプラグイン155のプラグインが用いられる。
【0092】
まず、サービスのプラグイン155について説明する。このプラグイン155でプラグインされる各サービスは、サービスフレームワーク102の中の共通IF103で定義されているIF(API166)を継承して各サービスの処理165(例えば、マーキングサービス処理)を実装する。図16に示す例では、マーキングサービスをプラグインにした例である。
【0093】
次に、個別処理のプラグイン153、154について説明する。個別処理のプラグインは、共通処理の中で定義されている個別処理用のAPI160を継承して各プラグインにおいて個別処理を実装する。図16に示す例であれば、共通処理の中の読取共通処理部152でAPIが設けられており、読取方法毎の個別処理を追加できる。図16に示すAPI160を設けることで、次のような処理が可能になる。
【0094】
図17は、読取方法による個別処理の例を示す図である。図17(A)は、読取方法Xの例を示す図である。図17(A)に示すマーキング画像1702には、サービス名「リフレッシュコピー」が埋め込まれているとする。図17(A)に示す読取方法Xは、バーコードの読取処理を行う。
【0095】
マーキングされた文書1701に対し、共通処理部150が、マーキング画像1702はバーコードであると判別し、読取方法Xにより、マーキング画像1702を読み取って、「リフレッシュコピー」のサービス名を読み取る。これにより、マーキングサービス155は、リフレッシュコピーを行って元文書1703を印刷することができる。
【0096】
図17(B)に示すマーキング画像1712には、サービス名「すかし印刷」、パラメータ「社外持出厳禁」が埋め込まれているとする。図17(B)に示す読取方法Yは、QRコードの処理を行う。
【0097】
マーキング画像1712に対し、共通処理部150が、マーキング画像1712がQRコードであると判別し、読取方法Yにより、マーキング画像1712を読み取って、「すかし印刷」のサービス名、「社外持出厳禁」のパラメータを読み取る。これにより、マーキングサービス155は、読み取ったパラメータ「社外持出厳禁」をすかしとして埋め込むすかし印刷を行うことができる。
【0098】
<動作>
次に、実施例4におけるシステムの動作について説明する。図18は、マーキングサービス実行時の処理の一例を示すシーケンス図である。図18に示すステップS501において、ネットワークI/F101は、クライアント装置などからマーキング画像が埋め込まれた文書をネットワークから取得した場合、共通IF103に対し、取得した文書を出力するとともにマーキングサービスの実行依頼を行う。
【0099】
ステップS502において、共通IF103は、ネットワークIF101からマーキングサービスの実行依頼を受けると、共通制御部104に対し、文書とともにマーキングサービスの実行依頼を行う。
【0100】
ステップS503において、共通制御部104は、共通IF103からマーキングサービスの実行依頼を受けると、サービス管理部107に対してマーキングサービスの検索を行う。サービス管理部107は、マーキングサービスを管理しており、読取共通処理部152もマーキングサービスに関連付けて管理しておく。
【0101】
ステップS504において、共通制御部104は、読取共通処理部152に対し、マーキングされた文書を出力するとともに読取共通処理の実行を依頼する。
【0102】
ステップS505において、読取共通処理部152は、マーキング画像の判別を行う。読取共通処理部152は、マーキング画像の画像形状、サイズなどからどの種類のマーキング画像かを判別する。ステップS506において、読取共通処理部152は、判別したマーキング画像の種別を認識する。ステップS507において、読取共通処理部152は、個別処理管理部151から、認識したマーキング画像の種別に対応する読取方法Xを検索する。
【0103】
ステップS508において、読取共通処理部152は、マーキング画像の種別に対応する読取方法(ここでは読取方法X)により読み取らせたサービス名及び/又はパラメータを取得する。読取共通処理部152は、取得したサービス名及び/又はパラメータを共通制御部104に出力する。
【0104】
ステップS509において、共通制御部104は、マーキングサービス155に対し、マーキングサービスの実行依頼を行う際に、読取共通処理部152から取得したサービス名及び/又はパラメータを出力する。
【0105】
ステップS510において、マーキングサービス155は、取得したサービス名及び/又はパラメータの内容に基づき、マーキング処理を判別する。ここで、読取方法X(バーコード読取処理)により読み取ったサービス名は、リフレッシュコピーであるとする。
【0106】
ステップS511において、マーキングサービス155は、取得したサービス名に基づいてリフレッシュコピーの処理を実行する。
【0107】
ステップS512において、リフレッシュされた文書を印刷するためプラットフォーム113に印刷指示する。
【0108】
図19は、共通処理のうちの個別処理を判別する処理の一例を示すフローチャートである。図19に示すステップS601において、読取共通処理部152は、マーキングされた文書データを入力する。
【0109】
ステップS602において、読取共通処理部152は、マーキングされた文書データの中のマーキング画像を判別する。ステップS603において、読取共通処理部152は、読み取ったマーキング画像の種別を認識する。例えば、読取共通処理部152は、マーキング画像がバーコードなのか、QRコードなのかを認識する。
【0110】
ステップS604において、読取共通処理部152は、読み取ったマーキング画像の種別に対応する読取方法が個別処理管理部151に登録されているか判断する。個別処理管理部151に、対応する読取方法があればステップS605に進み、対応する読取方法がなければステップS607に進む。なお、対応する読取方法があるということは、共通処理の中に個別処理があるということを意味する。
【0111】
ステップS605において、読取共通処理部152は、個別処理のAPI160を用いて、対応する読取方法で定義された読取処理を行う。ここでの読み取り結果のサービス名及び/又はパラメータは、共通制御部104に出力される。
【0112】
ステップS606において、読取共通処理部152は、個別処理がなければ、共通処理部150に予め登録されているデフォルト処理があるか否かを判定する。デフォルト処理があればステップS607に進み、デフォルト処理がなければステップS608に進む。
【0113】
ステップS607において、読取共通処理部152は、デフォルト処理のサービス名を取得する。ここで取得したサービス名は、共通制御部104に出力される。
【0114】
ステップS608において、共通制御部104は、マーキングサービス155に対し、マーキングされた文書と、取得したサービス名及び/又はパラメータを出力する。
【0115】
図20は、マーキングサービスの処理の一例を示すフローチャートである。図20に示すステップS701において、マーキングサービス155は、共通制御部104からマーキングされた画像と読取処理の結果のサービス名とを取得する。なお、読取処理の結果のサービス名及び/又はパラメータは、共通制御部104から出力されない場合もある。
【0116】
ステップS702において、マーキングサービス155は、読取処理結果のサービス名があるかないかを判別する。サービス名があればステップS704に進み、サービス名がなければステップS703に進む。
【0117】
ステップS703において、マーキングサービス155に予め定義されているマーキングサービスを行う。
【0118】
ステップS704において、マーキングサービス155は、サービス名の内容を判別する。例えば、マーキングサービス155は、サービス名が「リフレッシュコピー」なのか、「すかし印刷」なのかを判別する。また、マーキングサービス155は、パラメータから「リフレッシュコピー」用のパラメータなのか、「すかし印刷」用のパラメータなのかを判別してもよい。サービス名が「リフレッシュコピー」であればステップS705に進み、サービス名が「すかし印刷」であればステップS706に進む。
【0119】
ステップS705において、マーキングサービス155は、リフレッシュコピー156を実行する。
【0120】
ステップS706において、マーキングサービス155は、すかし印刷157を実行する。このとき、マーキングサービス155は、読取方法Y(QRコード読取処理)で読み取られたパラメータをすかしとして埋め込んでもよい。
【0121】
なお、マーキングサービス155は、リフレッシュコピー156、すかし印刷157以外にもマーキングサービスを備えてもよい。また、実施例4におけるマーキングサービス155は、必ずしもマーキングサービスである必要はなく、具体的な各サービスをまとめることができるサービスであればよい。
【0122】
以上、実施例4によれば、新しいマーキング画像への対応を追加したり、また、マーキング画像を読み取った後の処理を変えるなどの新規条件を追加したりする場合、共通処理部のAPIに新規読取方法を追加することができる。これにより、共通処理部に変更を加えなくても、上記追加に対応することができる。
【0123】
また、マーキング画像に次の処理内容やパラメータなどを埋め込み、このマーキング画像を読み取る読取処理を個別処理とすることができる。
【0124】
また、マーキング処理自体を新たに追加したい場合、共通処理部のAPIに新しいマーキングサービス処理を追加することができる。新しいマーキング処理とは、例えば、不正コピーガード検知サービスなどである。
【0125】
ここで、不正コピーガード検知サービスとは、マーキング画像が埋め込まれた文書を読み取り、読み取ったマーキング画像を元に、その文書に対して行える操作を制限するサービスである。
【0126】
なお、従来技術では、共通処理を実施した後のマーキングサービスの処理内容は固定であった。そのため、処理内容のフローを変えようとすると新たにサービスを追加する必要がある。マーキングサービス内の処理内容を変えるためには、図19で説明した処理をマーキングサービス内で実施する必要がある。よって、今後追加しようとする各サービス内でも同じような判別処理が行われることになり、無駄となってしまう。これに対し、実施例4では、各サービスで共通する処理を共通処理部150に設けることで、無駄をなくし、また、共通処理における個別処理はプラグインにおいて実装可能であるため、より柔軟な処理フローを実現することができる。
【0127】
なお、各実施例において説明した処理内容をプログラムとし、プログラムをコンピュータに実行させて前述した処理を画像処理装置に実行させることも可能である。また、プログラムを記録媒体に記録し、プログラムが記録された記録媒体をコンピュータに読み取らせて、前述した処理を画像処理装置に実行させることも可能である。
【0128】
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。
【符号の説明】
【0129】
10、20、70、80、90 MFP
30、40 PC
50、60 クライアント
101 ネットワークIF
102 サービスフレームワーク
103 共通IF
104 共通制御部
105、120、130、140、150 共通処理部
106、131、141、151 個別処理管理部
107 サービス管理部
108、122、134、144 サービスA共通処理部
109、123、135、145 サービスB共通処理部
110、124、136、146 サービスA
111、125、137、147 サービスB
112、126、138、148 サービスC
121 認証部
132 前処理部
133 後処理部
142 復号部
143 共通部
152 読取共通処理部
155 マーキングサービス
160 個別処理用API
166 サービス処理用API
【先行技術文献】
【特許文献】
【0130】
【特許文献1】特開2006−127222号公報

【特許請求の範囲】
【請求項1】
個々のサービスをプラグイン可能な画像処理装置であって、
プラグイン対象となる各サービスを管理するサービス管理手段と、
前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段と、
前記各サービスの共通処理を処理する共通処理手段と、
前記共通処理における、プラグインとしての個別処理を処理する処理手段と、を備え、
前記共通処理手段は、
前記共通処理における個別処理を、前記サービスと関連付けて管理する個別処理管理手段を備える画像処理装置。
【請求項2】
前記共通処理として認証処理を行う認証処理手段をさらに備え、
前記認証処理手段は、前記個別処理のプラグインがない場合、既定の認証処理を行う請求項1記載の画像処理装置。
【請求項3】
前記個別処理管理手段は、
前記サービスの実行前に処理する前処理、及び/又は実行後に処理する後処理をさらに、前記サービスに関連付けて管理する請求項1又は2記載の画像処理装置。
【請求項4】
前記個別処理管理手段は、
前記前処理、又は前記後処理として、順序付けされた複数の処理をさらに管理する請求項3記載の画像処理装置。
【請求項5】
前記共通処理の処理結果を取得し、前記処理結果に対応するサービスを判別するサービス処理手段をさらに備える請求項1記載の画像処理装置。
【請求項6】
前記共通処理の処理結果は、サービス名とサービスに関するパラメータであり、
前記サービス処理手段は、
前記パラメータに基づき、前記サービス名が示すサービスを実行する請求項5記載の画像処理装置。
【請求項7】
前記サービスのプラグインを追加するためのAPIを備える各サービス共通のインタフェース部をさらに備え、
前記共通処理部は、
前記個別処理のプラグインを追加するためのAPIを備える請求項5又は6記載の画像処理装置。
【請求項8】
個々のサービスをプラグイン可能であり、プラグイン対象となる各サービスを管理するサービス管理手段と、各サービスの共通処理における個別処理を、前記サービスと関連付けて管理する個別管理手段を備える画像処理装置における情報処理方法であって、
前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御ステップと、
制御された前記共通処理を処理する際、前記個別管理手段から個別処理がないかを検索する検索ステップと、
検索された個別処理を行って前記共通処理を処理する共通処理ステップと、
前記サービスを処理するサービス処理ステップと
を有する情報処理方法。
【請求項9】
個々のサービスをプラグイン可能な画像処理装置を、
プラグイン対象となる各サービスを管理するサービス管理手段と、
前記各サービスに対する実行依頼に基づいて、依頼されたサービスの共通処理を制御する共通制御手段と、
前記各サービスの共通処理を処理する共通処理手段と、
前記共通処理における、プラグインとしての個別処理を処理する処理手段として機能させるためのプログラムであって、
前記共通処理手段は、
前記共通処理における個別処理を、前記サービスと関連付けて管理する個別処理管理手段を有するプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate


【公開番号】特開2011−81768(P2011−81768A)
【公開日】平成23年4月21日(2011.4.21)
【国際特許分類】
【出願番号】特願2010−114672(P2010−114672)
【出願日】平成22年5月18日(2010.5.18)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】