JP2004038844A - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP2004038844A JP2004038844A JP2002198437A JP2002198437A JP2004038844A JP 2004038844 A JP2004038844 A JP 2004038844A JP 2002198437 A JP2002198437 A JP 2002198437A JP 2002198437 A JP2002198437 A JP 2002198437A JP 2004038844 A JP2004038844 A JP 2004038844A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- module
- termination
- request
- modules
- 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.)
- Granted
Links
Images
Landscapes
- Image Processing (AREA)
- Stored Programmes (AREA)
- Facsimiles In General (AREA)
Abstract
【解決手段】制御部11が、それぞれ所定の画像処理を行う複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行うにあたり、少なくともモジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行するようプログラムされており、モジュールの各々について、その終了処理の可否に関する終了可否設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、終了可否設定を参照し、特定されたモジュールについて、その終了処理が可能でないときには、終了処理の実行を留保する。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、複合機等において画像処理機能を実装するために用いられる画像処理装置に関する。
【0002】
【従来の技術】
複合機を含め、画像データを処理する多くの機器において、その内部で行われる画像処理が高度になってきている。例えばDTP(デスクトップパブリッシング)システム等においても、拡大・縮小、回転、アフィン変換、色変換、フィルタ、画像合成等の各種の画像処理が行われている。これらの処理を行うにあたり、処理の対象となる画像の性状や処理の内容等が固定的である場合は、専用に設計したハードウエアを用いて処理を行うこともある。しかし、処理の対象となる画像の性状が必ずしも同じでなく、処理の内容も頻繁に変更される場合、これらの変更に応じて柔軟に対応できるような構成が要求される。
【0003】
従来、これらの要求を満たすための構成として、特開平5−260373号公報(特許文献1)や特開平7−105020号公報(特許文献2)に開示されているものがある。これらは、プログラマブルなモジュールをいわゆるパイプライン状に接続したり、DAG(Directed Acyclic Graph;有向非循環グラフ)の形態に接続して、所望の処理を行うためのソフトウエアを形成する技術が開示されている。
【0004】
また、特開平5−260373号公報(特許文献3)には、複数のプログラマブル演算処理部での演算処理内容と、これらプログラマブル演算処理部の接続形態とを、外部から設定可能にすることで、高速かつ高度な演算処理を可能にするデジタル映像信号処理装置が開示されている。これら特許文献1から3に開示の技術は、モジュールを連接して所望の機能を実現させる構成の一般的な背景技術を示したものである。
【0005】
なお、特許文献2に開示された技術は、例えばUNIX(登録商標)等のオペレーティングシステムで用いられている、単一プロセッサによる多重処理パイプラインのシミュレーション方法を画像処理等の分野に応用したものである。この技術においては、各モジュールは、それより前段側に接続されているモジュールと、後段側に接続されているモジュールとに対してそれぞれ要求を送信可能な状態に(いわば、双方向にリンクされている状態に)なっている。
【0006】
具体的に、特許文献2に開示された技術によると、所望の機能を達成するために必要となる複数のモジュールが選択され、これらが互いに接続される。ここで接続というのは、要求を送信できるようにすることであり、例えば、接続の相手先となるモジュールのオブジェクトに対するポインタを取得することが接続に相当する。なお、ここ及び以下の説明では、ポインタだけでなく、広義にモジュールに処理を要求したり、パラメータを伝達したりする場合に必要となる、いわば宛先を特定する情報を含むものを「接続情報」と呼ぶこととする。
【0007】
各モジュールの接続が終了すると、これら互いに接続されたモジュール群を利用するアプリケーション・プログラムから、最後段のモジュールに対して、ヘッダの取得が要求される。各モジュールは、この要求を接続順を遡って、最前段のモジュール(通常画像データファイルを読み込む画像入力モジュール)に順次伝達する。そして最前段のモジュールが、処理対象となる画像の性状を表す情報(例えばヘッダ情報)を次の段のモジュールに出力する。
【0008】
すると、各モジュールが自分自身で変更する部分の情報を書き換えて後段のモジュールに出力するという処理を行う。例えば画像データを1/2サイズに縮小する処理を行うモジュールでは、入力画像のサイズが1000×1000画素であると、500×500画素への縮小処理が行われることとなる。そこで、このモジュールでは前段のモジュールから入力されたヘッダ情報のうち、サイズを表す情報を1000×1000から500×500にするといった変更を施して、後段のモジュールに出力する。このような処理を順次繰り返して、最後段のモジュールはこれらモジュール群(画像処理パイプライン)によって出力される画像のヘッダ情報をアプリケーション・プログラムに出力する。
【0009】
アプリケーション・プログラムは、こうして得られたヘッダ情報などをもとにデータの処理の要求を行う。データの処理の要求もヘッダの処理に対するのと同様に、最後段のモジュールに対して一定量のデータ出力を要求し、最後段のモジュールから、順次最前段のモジュールまで必要な画像データの入力の要求を出力する。最前段のモジュールでは、必要な画像データがファイルから読み込まれて後段に出力される。そして、接続されたモジュール群によって順次、画像処理が施されて、最終的に最後段の処理モジュールから、処理後の画像データが出力される。
【0010】
この処理が画像データの最後まで、または必要な部分に対して行われると、処理パイプラインは不要となるので、アプリケーション・プログラムは、最後段のモジュールに対して終了処理を要求する。この終了要求も既に述べたヘッダ情報に対する処理と同様に、モジュールの接続順を遡って最前段のモジュールに達し、最前段のモジュールが処理に用いたリソースを解放するとともに自身を解放して後段に制御を渡していき、それぞれ制御が渡されたモジュールがリソースや自身を解放する処理を行ってさらに後段に制御を渡すという処理を繰り返し、最後段のモジュールのリソース/自身の解放が終了した段階で、全体的な処理が完結する。
【0011】
このような処理を行うことで、特許文献2に開示された技術では、1回の処理単位を画像の1ラインに制限するなど、必要なメモリ上での記憶領域サイズを低減でき、特にページングによる仮想記憶処理を行うオペレーティングシステムでのスワップアウトが最小限に抑えられて、処理の高速化にも貢献する。
【0012】
さらに回転処理等、1ラインの処理結果を得るにも画像全体のデータの入力を必要とするような処理を実行するモジュールがパイプラインに含まれているときにも、メモリの記憶領域サイズを低減可能となる技術が、特開平8−272981号公報(特許文献4)に開示されている。
【0013】
特許文献4に開示された技術では、ページバッファ(画像全体を保持するに十分なサイズのバッファ)を用いるか否か等、所定の条件を満足するモジュール(注目モジュール)がパイプラインに含まれている場合、その注目モジュールへの画像データのバッファリングが完了したときに、注目モジュールより前段側に接続されているモジュールに対して終了処理を実行し、その資源を開放させる。この特許文献4に開示された技術は、パイプラインとして互いに接続されたモジュールのうち、そのパイプライン全体としての処理が完了していないときでも、パイプラインに含まれるモジュールに対する終了処理が行われるという背景技術を開示したものである。
【0014】
【発明が解決しようとする課題】
このように複数のモジュールを相互に接続して、一連の画像処理を行わせ、ある機能を実現するというソフトウエアを一般に広く用いられているC++(シー・プラス・プラス)やJava(登録商標)といったオブジェクト指向言語によって記述する場合、例えば図7に模式的に示すように、try/catch(トライ/キャッチ)といった構文を用いて例外発生に備えた記述となるのが一般的である。
【0015】
また、各モジュール間の接続を行わせる接続関数をインプリメントしておき、この接続関数が、モジュールの生成(メモリへのロード等のインスタンス化処理等)を行い、生成したモジュールへの接続情報を前段のモジュールへ通知するように設計する。
【0016】
従ってトライ(try)の構造内を実行するプロセスにおいては、次のような処理が行われることとなる。まず、最前段のモジュールがロード(準備)される(Step1)。既に述べたように、最前段のモジュールは、一般的には画像データをファイルから読み込むモジュールAである。
【0017】
次に二段目のモジュールBの接続関数をコールする。この接続関数が正常に動作すると、モジュールBが生成されて、モジュールBがモジュールAに接続される(Step2)。これらの処理が例外なく実行されると、トライの構造内でもモジュールA,Bへの接続情報が取得可能となる。
【0018】
次に三段目のモジュールCの接続関数をコールする(Step3)。ここで、モジュールCの接続関数で例外が発生すると、例えばモジュールCが生成され、モジュールBへの接続は行われるものの、接続関数内で例外が投げられる(throwされる)場合がある。この段階では接続関数の処理が完了していないので、トライの構造内ではモジュールCへの接続情報を取得できない。
【0019】
ここで特許文献4に開示されている技術を利用する場合、例えばモジュールCが90度回転を行うモジュールである場合など、その前段のモジュールに対する終了処理を要求すべきものとして設定されたものであると、モジュールCの接続関数で例外が発生するか否かに関わらず、モジュールCへの画像データのバッファが完了した段階でモジュールBに対する終了処理が行われてしまうので、トライの構造内でモジュールCへの接続情報を取得できない状態で、キャッチ(catch)の構造(例外処理)に処理が移される。通常、例外が発生すると処理の続行は困難になるため、各モジュールに対して終了処理を実行させ、各モジュールで確保した資源(メモリ領域等)を開放させる手続が採られるはずである。
【0020】
ところが、このキャッチの処理では、モジュールBに対しては既に終了処理が完了しているので、終了処理の要求はできない。また、モジュールCへの接続情報は得られていないので終了処理の要求ができない。すなわち、モジュールCについては生成も完了しており、当該モジュールCでの資源確保は行われた状態であるのに、モジュールCに対しての終了処理の要求を行うことができなくなってしまう。
【0021】
さらに、例えば図8に示すように、複数のプリミティブなモジュール、例えば多値化モジュール41と、補間付き任意角回転モジュール42と、2値化モジュール43とを組み合わせて2値画像の補間処理付き任意角回転処理を行う複合的モジュールを生成する場合、このように要素機能的な、プリミティブモジュールを接続して複合的モジュールを生成、接続するサービス関数(「複合モジュール関数」と呼ぶ)を用いる場合に特許文献4に開示されている技術を適用すると、次のようになる。
【0022】
すなわち、これら組み合わせられたプリミティブモジュールの中に、例えば上述の補間付き任意角回転モジュール42のように、画像全体のバッファリング後、前段のモジュールに対する終了処理を実行するようなモジュール(注目モジュール)があると、接続関数において例外が発生したとしても、前段である多値化モジュール41を含むモジュール群に対する終了処理が行われてしまう。
【0023】
従って、注目モジュールへの接続中に例外が発生したときには、例外を捕獲したブロック内(上述のトライ構造内)においては補間付き任意角回転モジュール42と2値化モジュール43とに対する終了処理を行うことができないこととなり、これらのモジュールが確保した資源を開放させることができなくなる。
【0024】
本発明は上記実情に鑑みて為されたもので、多段接続されるモジュールを用いて画像処理を行う場合に、例外捕獲処理によって、少なくとも各モジュールの接続処理において発生する例外を捕獲して処理の安定を実現しつつ、簡便な実装形態にて、資源の効率的利用及び処理速度の向上を図ることのできる、画像処理装置を提供することをその目的の一つとする。
【0025】
【課題を解決するための手段】
上記従来例の問題点を解決するための本発明は、画像処理装置であって、それぞれが所定の画像処理を行う複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる手段と、少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する手段と、前記モジュールの各々について、その終了処理の可否に関する終了可否設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記終了可否設定を参照し、前記特定されたモジュールについて、その終了処理が可能でないときには、終了処理の実行を留保する終了制御手段と、を含むことを特徴としている。ここで前記終了制御手段は、終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせることとするのも好ましい。
【0026】
すなわち、多段接続されるモジュールを用いて一連の画像処理を実行するにあたり、その実行中に一部のモジュールを終了処理するようにプログラムされているとき、ある条件の下でその終了処理を一時的に留保し、後続のモジュールにおいて例外が発生した場合に、当該例外を捕獲して、上記終了処理を留保したモジュールを起点に、全モジュールの終了処理を可能としている。
【0027】
これにより、少なくとも一つのモジュールを、終了処理要求を受け付け可能な状態で維持でき、終了処理を円滑に行って、簡便な実装により資源の効率的利用及び処理速度の向上が図られる。また、各モジュールの接続を双方向に行うとともに、不用意に前段の終了処理が連鎖的に行われない様にするための機構を、接続関数および複合接続モジュール関数の入り口に設けることで、例外が発生した場合において、各モジュールの実装状態を変更することなく、簡便な実装により資源の効率的利用及び処理速度の向上が図られる。
【0028】
また、本発明のある態様によれば、画像処理装置であって、それぞれが所定の画像処理を行うとともに、終了処理の要求を受けて、その前段及び後段側に接続されたモジュールに対して終了処理の要求を順次伝達する複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる手段と、少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する手段と、前記モジュールの各々について、その終了処理の実行可否に関する設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記管理されている設定を参照し、当該特定されたモジュールについて、その終了処理の実行が可能と設定されていないときには、終了処理の要求の出力を留保する終了制御手段と、を含むこととした。ここで、前記終了制御手段は、終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせるものであってもよい。
【0029】
また、本発明の別の態様によれば、画像処理方法であって、それぞれが所定の画像処理を行うとともに、終了処理の要求を受けて、その前段及び後段側に接続されたモジュールに対して終了処理の要求を順次伝達する複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる工程と、少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する工程と、前記モジュールの各々について、その終了処理の実行可否に関する設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記管理されている設定を参照し、当該特定されたモジュールについて、その終了処理の実行が可能と設定されていないときには、終了処理の要求の出力を留保する工程と、を含むこととした。ここで、前記終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせる工程をさらに含むことも好ましい。
【0030】
また、本発明のさらに別の態様によると、画像処理プログラムであって、それぞれが所定の画像処理を行うとともに、終了処理の要求を受けて、その前段及び後段側に接続されたモジュールに対して終了処理の要求を順次伝達する複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる手順と、少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する手順と、前記モジュールの各々について、その終了処理の実行可否に関する設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記管理されている設定を参照し、当該特定されたモジュールについて、その終了処理の実行が可能と設定されていないときには、終了処理の要求の出力を留保する手順と、をコンピュータに実行させることとした。ここでさらに、前記終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせる手順、を実行させることとするのも好ましい。
【0031】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら説明する。本実施の形態に係る画像処理装置は、例えば図1に示すような一般的なコンピュータを用いて実現される。具体的に、本実施の形態の画像処理装置は、図1に示すように、制御部11と、記憶部12と、操作部13と、出力部14とを含んで構成される。ここで記憶部12は、制御部11が各種処理を行うために必要な処理領域や各種の演算途中結果、処理パラメータなどを保持するワークメモリとして動作するRAM(Random Access Memory、以下、単に「メモリ」と呼ぶ)と、制御部11によって実行される画像処理プログラムを格納したコンピュータ読取可能な記録媒体であるハードディスクやCD−ROM等と、処理対象となる画像データを格納する画像メモリとを含む。
【0032】
制御部11は、記憶部12に格納されている画像処理プログラムを実行する。この画像処理の具体的内容については、後に詳しく述べる。操作部13は、利用者から入力される操作の内容を制御部11に伝達する。出力部14は、制御部11から入力される指示に従って、処理した結果等を外部の機器に出力し、又は図示しないディスプレイ等の表示部に出力する。
【0033】
なお、ここでは画像処理装置として、コンピュータを用いてソフトウエア的に実現する場合を例として示すが、その一部又は全体が専用のハードウエアによって構成されてもよい。
【0034】
記憶部12に格納されている画像処理プログラムは、図2に示すように、接続処理部21と、モジュール管理部22と、終了処理部23とを含む。接続処理部21は、モジュール管理部22にて管理されている画像処理用モジュール(組み合わせ可能な画像処理プログラム、以下単に「モジュール」と略称する)ごとに設けられた接続関数を保持しており、指示された接続関数を起動し、当該起動した接続関数に対応するモジュールを起動させ(生成処理)、モジュール間でのデータの受け渡しを可能にさせる(接続処理)。この接続関数の具体的内容については、後に詳しく述べる。
【0035】
モジュール管理部22は、複数のモジュールを管理している。これらモジュールの各々は予め定められた画像処理を実行する。このモジュールの具体的内容についても後に詳しく述べる。終了処理部23は、起動された画像処理モジュールに対してメモリ空間の開放等を行わせる、いわゆる終了処理の要求を行う。本実施の形態において特徴的なことは、この終了処理部23が、所定の条件下でのときに、終了処理の要求の出力を留保することである。この終了処理部23の具体的動作についても、後に詳しく述べる。
【0036】
[モジュール]
各モジュールは、その一般的な構造として、図3に示すように、入力バッファ31と、画像処理要素32とを含んで構成される。入力バッファ31は、前段のモジュールから入力される画像データを保持する。実際の処理においては、入力バッファ31の接続情報が前段のモジュールに渡され、前段のモジュールでは、その処理結果をこの入力バッファ31に書き込むことになる。
【0037】
画像処理要素32は、従来のモジュールと同様の動作を行うものであり、入力バッファ31に保持されている画像データに対して予め定められた処理を実行し、その結果を後段の画像処理要素から提供されるバッファ(後段のモジュールの入力バッファ31)に格納する。なお、最後段の画像処理要素32は、予め確保した出力バッファ(不図示)に対して処理の結果を格納する。
【0038】
また、この画像処理要素32は、前段に接続されているモジュールへの接続情報と、後段に接続されているモジュールへの接続情報とを保持しており、終了処理部23から終了処理の要求を受け入れると、終了処理を実行する。ここで終了処理は、入力バッファ31のメモリ領域を含め、確保している資源を解放するなどの処理をいう。
【0039】
さらに、この画像処理要素32は、終了処理部23から終了処理の要求とともに、その要求を前後段に接続されたモジュールへ伝達するように指示されたときには、前段と後段とに接続されているモジュールのそれぞれに対して終了処理の要求を伝達する。この伝達は、終了処理部23を介して行われる。なお、最前段や最後段のモジュールでは、それぞれ後段側及び前段側に接続されたモジュールに対して終了処理の要求を伝達することとなる。さらに画像処理要素32は、前段側に接続されたモジュールから終了処理の要求を受け入れると、後段に接続されているモジュールに対して終了処理の要求を伝達し、自らも終了処理を実行する。同様に、後段側に接続されたモジュールから終了処理の要求を受け入れると、前段に接続されているモジュールに対して終了処理の要求を伝達し、自らも終了処理を実行する。これらの場合も、終了処理の要求の伝達は、終了処理部23を介して行われる。
【0040】
さらに各モジュールには、これらの処理以外に、それまでの処理を破棄して画像の先頭から処理をやり直すリセット動作や、不要なデータの処理を省略するために処理を行わずに内部状態のみ変更するスキップ動作などの処理を行う機能が備わっていてもよい。
【0041】
[接続関数]
接続関数は、対応するモジュールを起動させる生成処理と、モジュール間でのデータの受け渡しを可能にさせる接続処理とを基本的に実行している。ここで生成処理では、モジュールをメモリに読み込み、処理に必要なパラメータを伝達する。また接続処理では、読み込んだモジュールへの接続情報を前段に接続されるべきモジュールへ伝達する処理を行う。また、接続関数は、正常に処理が終了したときには、接続関数をコールした関数(呼出元)に対して読み込んだモジュールへの接続情報を通知する。
【0042】
具体的に制御部11は、接続関数の処理として図4に示す処理を開始し、まず、終了処理部23に対して、前段のモジュールの終了処理を留保するよう要求する(S1)。このように接続関数の入口で終了処理の留保を行い、前段のモジュールに対して終了処理の要求があっても、当該終了処理を留保させる。制御部11は、接続関数に対応するモジュールを生成して、前段のモジュールへの接続情報と、処理パラメータとを通知する(S2)。このとき当該生成されたモジュールの入力バッファ31には、前段のモジュールから画像データが格納される。またこのとき、前段のモジュールに対する終了処理を行うよう終了処理部23に要求がされても、終了処理部23は、その終了処理を留保するので、実際には終了処理は行われない。
【0043】
次に制御部11は、接続関数の処理が成功したか(生成・接続などの処理が成功しているか)否かを判断し(S3)、成功していれば(Yesならば)、終了処理部23に対して前段のモジュールの終了処理の留保を解除するよう要求する(S4)。後に説明するが、終了処理部23は、このときまでに前段のモジュールに対する終了処理の要求を受けていれば、この留保の解除の要求を受けて、前段のモジュールに対して実際に終了処理を要求し、前段のモジュールの資源が解放されることとなる。そして制御部11は、処理S2で生成したモジュールへの接続情報を呼出元に通知して(S5)、接続関数の処理を終了する。
【0044】
一方、処理S3において、接続関数の処理が成功していなければ(Noならば)、制御部11は、終了処理部23に対してエラーが発生したことを伝達し(S6)、例外を投げて(throwして)、処理を終了する。ここで投げられた例外は、呼出元で捕獲され、呼出元での例外処理が開始されることとなる。
【0045】
なお、前段までの処理を終了させないようなモジュール、例えば画像全体をバッファする必要がないようなモジュールに対応する接続関数は、従来のものと同様の(処理S1の留保の要求や処理S4の留保の解除の処理を行わない)ものとしてもよい。
【0046】
[終了処理部]
終了処理部23は、図5に模式的に示すように、接続されている各モジュールごとに、その終了処理の可否を示す情報(終了可否情報)を保持している。初期化時には、この終了可否情報は、終了処理が可能である旨を表すものに設定されている。
【0047】
そして終了処理部23は、特定のモジュールについての終了処理の留保の要求を受けて、当該モジュールについての終了可否情報を終了処理が可能でない旨を表すものに設定する。また、終了処理部23は、特定のモジュールについて、その終了処理の留保を解除する要求を受けて、当該モジュールについての終了可否情報を終了処理が可能である旨を表すものに設定する。
【0048】
終了処理部23は、さらに、特定のモジュールについて終了処理を行うべき要求を受けると、当該モジュールについての終了可否情報を参照し、それが終了可能である旨の設定となっていれば、当該モジュールに対して終了処理の要求を出力する。また、終了可能でない旨の設定となっていれば、当該モジュールに対して終了処理の要求があったことを記憶する。この場合、当該モジュールについての終了処理の留保が解除されてから、当該モジュールに対して終了処理の要求を出力することとなる。
【0049】
なお、この終了処理部23は、これらの処理のほかに、特定のモジュールおよびそれに接続された全てのモジュールを終了するべき要求を受けて、当該要求に応じた処理を実行するようにしてもよい。さらに、あるモジュールについて終了処理を留保するよう設定されている間に、そのモジュールへの終了処理が要求されなかった場合ににおいては、留保の解除時にそのモジュールの終了処理は要求しない。
【0050】
[モジュールと接続関数との動作例]
ここで動作を分かりやすくするために、モジュールと接続関数とがどのように動作するかを簡単に説明する。なお以下の例に挙げるモジュールは、その前段に接続されたモジュールを終了させないモジュール(例えば拡大縮小の処理を行う拡縮処理モジュール)と、前段に接続されたモジュールを終了させてもよいモジュール(すなわち、画像全体の画像データをバッファする等、それより前段での処理結果に改めてアクセスする必要のないもの、例えば90度回転処理を行う90度回転処理モジュールのようなもの)と、があるので、これらを分けて説明する。
【0051】
[前段を終了させないモジュール]
まず、拡大縮小の処理を行う拡縮処理モジュールなど、その前段に接続されたモジュールを終了させないモジュールである場合について説明する。図7に示したような関数(呼出元関数)から接続関数がコールされると、接続関数は、モジュール管理部22から対応するモジュールを読出して生成し、呼出元関数から予め取得した縮拡の倍率と前段のモジュールへの接続情報とをモジュールに伝達する。また接続関数は、拡縮処理モジュールへの接続情報を前段のモジュールに対して通知する。
【0052】
縮拡処理モジュールは、前段のモジュールへの接続情報を利用して、前段のモジュールに対し、入力される画像情報の取得要求を出して画像データのサイズやビット数などの情報を取得し、メモリ上に処理に必要なサイズの入力バッファ31を生成する。
【0053】
なお、縮拡処理モジュールが最後段のモジュールであれば、与えられた倍率の情報から出力画像データに関する情報を計算し、メモリ上に拡縮後の画像を格納するために必要となるバッファのサイズを計算し、そのサイズのバッファを出力バッファとして確保する。具体的に入力画像が1000×1000画素で、1画素当り8ビットの深さを有する画像であり、拡縮倍率が(0.6,1.0)(横方向に0.6倍、縦方向に1.0倍)であり、1回に出力される画像データの単位が1ラインである場合を想定すると、拡縮処理モジュールはメモリ上に1000バイト分の入力バッファ31と、1000×0.6×1.0=600バイト分の出力バッファを生成することになる。
【0054】
そして縮拡処理モジュールは、後段側のモジュールから(自己が最後段であれば外部から)画像データの出力処理の要求を受けて、前段のモジュールへ出力要求を伝達する。そして、前段のモジュールから1ライン分、すなわち1000バイト分の画像データが入力バッファ31に書き込まれ、制御が渡されると、縮拡処理モジュールの画像処理要素32は、与えられた拡縮倍率に従って、後段のモジュールの入力バッファ(自己が最後段であれば出力バッファ)に、横方向に0.6倍した縮小画像データを書き込む。そして後段のモジュールがあれば、後段のモジュールへ処理を渡す。尚、縮小処理の詳細については、一般的な画像処理関係の書籍などに詳しいので、ここでは説明を省略する。このような処理を画像のライン数回(上の例では1000回)繰り返すことで、所望の画像処理が多段接続された一連のモジュールにより実現される。
【0055】
また、接続関数における接続等の処理の過程でエラーが発生すると、接続関数は例外を投げて、処理を終了する。そして呼出元では、この例外を捕獲して例外処理を開始し、縮拡モジュールの前段のモジュール(正常に生成された最後のモジュール)に対して終了処理を行うよう終了処理部23に要求する。
【0056】
終了処理部23は、前段のモジュールについての終了可否情報を参照し、この場合は終了可否情報が初期化された状態(終了処理可能の状態)のままであるので、前段のモジュールに対して終了処理を要求し、また、当該前段のモジュールに対して前後段の双方に接続されたモジュールに対して順次終了処理を行うよう指示する。
【0057】
すると、当該前段のモジュールを中心に、その前後段に接続されたモジュールに対して順次終了処理の要求が、終了処理部23を介して出力され、相互に接続されたすべてのモジュールで、確保されていた資源が解放されるなどの処理が実行される。
【0058】
[前段を終了させるモジュール]
次に、90度回転処理モジュールを例として前段を終了させるべきモジュールについてモジュールと接続関数とがどのように動作するかを簡単に説明する。図7に示したような関数(呼出元関数)から接続関数がコールされると、接続関数は、まず、終了処理部23に対して前段のモジュールへの終了処理を留保するよう要求する。終了処理部23は、この要求を受けて、90度回転処理モジュールの前段に接続されるモジュールについての終了可否情報を終了処理可能でない旨のものに設定する。
【0059】
次に接続関数は、モジュール管理部22から対応するモジュールを読出して生成し、呼出元関数から予め取得した前段のモジュールへの接続情報とをモジュールに伝達する。ここでは、90度の回転処理が行われるだけなので、回転角度などのパラメータは伝達されないが、任意角回転処理であれば、回転角度などのパラメータがモジュールに伝達される。また、接続関数は、90度回転処理モジュールへの接続情報を前段のモジュールに対して通知する。
【0060】
90度回転処理モジュールは、前段のモジュールへの接続情報を利用して、前段のモジュールに対し、入力される画像情報の取得要求を出して画像データのサイズやビット数などの情報を取得し、メモリ上に処理に必要なサイズの入力バッファ31を生成する。
【0061】
そして90度回転処理処理モジュールは、後段側のモジュールから(自己が最後段であれば外部から)画像データの出力処理の要求を受けて、前段のモジュールへ出力要求を伝達する。すると前段のモジュールから画像全体の画像データが入力バッファ31に書き込まれ、制御が渡される。この時点で、前段側のモジュールに終了処理を行わせるべく、終了処理部23に、当該前段のモジュールに対して終了処理の要求を出力するよう指示がされる。終了処理部23は、当該前段のモジュールについての終了可否情報を参照し、それが終了処理可能でない旨に設定されているので、終了処理の要求があったことを記憶し、終了処理の要求を出力せずに留保する。
【0062】
接続関数は、自己の処理が支障なく完了したか否かを判断し、支障なく完了していれば、終了処理部23に対して前段のモジュールについての終了可否情報を終了可能である旨に設定するよう要求し、自己の呼出元に90度回転処理モジュールへの接続情報を伝達する。終了処理部23は、前段のモジュールについての終了可否情報が終了可能である旨を示すものになったことを受けて、既に終了処理の要求が行われているので、前段のモジュールに対して終了処理を行うよう要求する。このとき、当該前段のモジュールに対し、さらに先行する(90度回転処理モジュールからみて2段階以前の)各モジュールへと終了処理を伝達するよう指示する。
【0063】
この伝達は、終了処理部23自身を介して行われ、終了処理部23は、当該先行する各モジュールについて、それぞれの終了可否情報を参照して、終了可能と設定されているものについては終了処理を要求し、終了可能でないと設定されているものについては終了処理の要求を行わないで留保する。これにより、90度回転処理モジュールに先行するモジュールであって、かつ終了処理の留保が要求されているモジュールまでの各モジュールがその資源を解放して処理を完了することとなる。すなわち、この場合、終了処理が連鎖的に行われることになるが、連鎖の途中に終了処理の留保が設定されたモジュールが存在する場合には、そのモジュールとそれより前に接続されたモジュールの終了処理は実行されない。
【0064】
そして、90度回転処理モジュールの画像処理要素32は、後段のモジュールの入力バッファ(自己が最後段であれば出力バッファ)に、90度回転した画像データを書き込む。そして後段のモジュールがあれば、後段のモジュールへ処理を渡す。なお、画像データの回転処理の詳細については、一般的な画像処理関係の書籍などに詳しいので、ここでは説明を省略する。
【0065】
また、接続関数における接続等の処理の過程でエラーが発生した場合、接続関数は例外を投げて、処理を終了する。そして呼出元では、この例外を捕獲して例外処理を開始する。この時点では、90度回転処理モジュールの前段のモジュール(正常に生成された最後のモジュール)について終了処理が留保されているため、呼出元では、その接続情報を利用して当該前段のモジュールに対する終了可否情報を終了可能に設定するよう終了処理部23に要求するとともに、当該前段のモジュールに対して終了処理を行うよう終了処理部23に要求することができる。
【0066】
終了処理部23は、終了可否情報が終了可能に設定されたことを受けて、前段のモジュールに対して終了処理を要求し、また、当該前段のモジュールに対して、その前後段の双方に接続されたモジュールに対して順次終了処理を伝達するよう指示する。
【0067】
すると、当該前段のモジュールを中心に、その前後段に接続されたモジュールに対して順次終了処理の要求が、終了処理部23を介して出力され、相互に接続されたすべてのモジュールで、確保されていた資源が解放されるなどの処理が実行される。
【0068】
なお、これら2つの例ではいずれも、モジュールが入力バッファ31を生成し、処理結果を保持するバッファについては、後段のモジュールの入力バッファ31を用いることとして説明したが、各モジュールが独自の出力バッファを確保し、処理結果をそれぞれの出力バッファに書き込んだ上で、後段のモジュールに出力するときには、当該出力バッファに書き込まれたデータを後段のモジュールの入力バッファに複写する等の処理を行ってもよい。
【0069】
すなわち本実施の形態の画像処理装置によると、例えば画像入力モジュール(画像データをファイルから読出すモジュール)と、色変換処理を行うモジュールと、90度回転処理モジュールと、縮拡モジュールとがこの順に接続され、全体として色調整を行って90度回転し、縮小を行うという画像処理を行うべく、その処理のメインルーチン(呼出元)のトライ構造内でまず画像入力モジュールが起動される。さらに同じトライ構造内で上記の各モジュールの接続関数が順次コールされる。
【0070】
ここで90度回転処理モジュールの接続関数では、その入り口部分で、前段のモジュールである色変換処理モジュールへの終了処理を留保するよう終了処理部23に要求する。これにより色変換処理モジュールの入力バッファに画像データが読み込まれ、ここでLUT(ルック・アップ・テーブル)や色変換マトリクスを用いた色変換処理を行い、これを90度回転処理モジュールの入力バッファに格納したところで、色変換処理モジュールに対する終了処理の要求が終了処理部23に出力されても、終了処理部23は実際には終了処理の要求を行わない。
【0071】
そして90度回転処理モジュールの接続関数において例外が発生し、その例外が投げられると、呼出元のキャッチ構造内に処理が移り、ここで例外処理が行われる。この例外処理では、終了処理部23に対して色変換処理モジュールについての終了処理の留保を解除させて、色変換処理モジュールに対して終了処理の要求を出力させる。このとき、色変換処理モジュールからその前後段に接続された各モジュールへ終了処理の要求を伝達させる。これによりすべてのモジュールに対して終了処理の要求が伝達でき、各モジュールで確保された資源が解放される。
【0072】
なお、本実施の形態の画像処理装置は、複合的モジュールの生成においても同様の動作を行うので、以下、2値画像の補間付き任意角回転処理の動作の例について説明する。図8に示したように、2値画像の補間付き任意角回転処理では、多値化モジュール41、任意角回転モジュール42、および、2値化モジュール43というプリミティブな画像処理を行うモジュールを順に、生成して接続することとなる。
【0073】
この場合、制御部11は、まず例外を監視しながら多値化モジュール41を生成する。そして、任意角回転モジュール42の接続関数の処理を開始し、多値化モジュール41の前段のモジュール(つまり、この複合的モジュールの前段のモジュール)に対する終了処理を留保するよう設定し、任意角回転モジュール42を生成して、多値化モジュール41に接続する。そして任意角回転モジュール42がその入力バッファに前段のモジュールである多値化モジュール41から画像全体のデータのバッファリングを受けた後、当該多値化モジュール41の終了処理要求を発行する。しかし制御部11は終了処理部23の動作として、多値化モジュール41に対しては終了処理の要求を出力するが、その前段のモジュール、すなわち、複合的モジュールの前段のモジュールは終了処理が留保されているため、終了処理の要求は行われない。
【0074】
各モジュールの生成および接続が成功したときは、前段のモジュールについての終了処理の留保が解除される。一方、生成または接続に失敗した場合は、前段のモジュールに対して不正状態をセットするとともに終了処理の留保を解除し、処理を終える。この場合、前段のモジュールの終了処理は行われないので、呼出元の例外処理で終了処理を行うこととなる。
【0075】
具体的に、この場合の制御部11の動作を図示すると、次の図6に示すようになる。すなわち、ある関数あるいはモジュールなどから接続要求を受けると、まず、終了処理部の処理として、前段のモジュールの終了処理を留保するように設定し(S11)、処理の途中で前段のモジュールの終了処理が指示されても実際には終了させないようにする。そして、前段モジュールを基に多値化モジュール41を生成する(S12)。ここで、多値化モジュール41の生成が問題なく終了しか否かを判断し(S13)、問題なく終了したならば(Yesならば)、前段のモジュールを基に任意角回転モジュール42を生成する(S14)。このとき、多値化モジュールは多値化モジュール41から画像全体のデータを読込んでバッファリングし、その後、前段のモジュールに対して終了処理を行うよう、終了処理部23に指示する。
【0076】
しかし、処理S11において前段のモジュールの終了処理が留保されているため、処理S12で作成した多値化モジュール41の終了処理だけが行われ、前段のモジュールの終了処理は実際には行われない。
【0077】
制御部11は、さらに任意角回転モジュール42の生成が問題なく終了したか否かを判断し(S15)、問題なく終了したならば(Yesならば)、前段のモジュールを基に2値化モジュール43を生成する(S16)。ここで、制御部11は2値化モジュール43の生成が問題なく終了したか否かを判断し(S17)、問題なく終了したならば(Yesならば)、終了処理部23に前段のモジュールの終了処理の留保を解除するよう指示する(S18)。
【0078】
このときには、任意角転処理モジュール42から既に前段のモジュールに対する終了処理の指示を受けているため、終了処理部23は前段のモジュールに対して終了処理を要求する。そして終了処理部23は当該前段のモジュールに先行して接続された各処理モジュールの終了処理も行う。こうして、複合的モジュールの前段に接続されたモジュールを含め、それより前方に接続された全てのモジュールの終了処理が行われる。ただし、途中に終了処理の留保が設定されたモジュールが存在する場合には、そのモジュールとそれより前方に接続されたモジュールの終了処理は実行されない。
【0079】
制御部11は、処理S18に続いて、作成した複合的モジュールの接続情報を呼出元に返して(S19)、処理を終了する。なお、処理S13、S15、S17において、モジュールの生成が問題なく終了しなかったときには(Noのときには)、終了処理部23に対して、エラーが発生したことを伝達する(S20)。このとき、エラー状態であることが記録され、前段の終了処理を行うことなく、複合的モジュールの接続処理が終了される。
【0080】
呼出元では、この接続処理が正常に終了した場合には生成された複合的モジュールへの接続情報を受け取り、その後の処理を行う。また、例外が捕獲された場合(エラーが発生した場合)には、複合的モジュールの前段に接続されたモジュールに対して終了処理を要求する。すると、当該モジュールの前後段の各モジュールに連鎖的に終了処理の要求が出力され、すべてのモジュールについて終了処理が行われることとなる。
【図面の簡単な説明】
【図1】本発明の実施の形態に係る画像処理装置の一例を表す構成ブロック図である。
【図2】本発明の実施の形態に係る画像処理プログラムの一例を表す機能ブロック図である。
【図3】モジュールの構造の一例を表す機能ブロック図である。
【図4】接続関数の処理の一例を表すフローチャート図である。
【図5】終了可否情報の一例を表す模式図である。
【図6】複合モジュール関数の一例を表すフローチャート図である。
【図7】呼出元のプログラムの一記述例を表す説明図である。
【図8】複合モジュールの一例を表す構成ブロック図である。
【符号の説明】
11 制御部、12 記憶部、13 操作部、14 出力部、21 接続処理部、22 モジュール管理部、23 終了処理部、31 入力バッファ、32 画像処理要素、41 多値化モジュール、42 補間付き任意角回転モジュール、43 2値化モジュール。
Claims (8)
- それぞれが所定の画像処理を行う複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる手段と、
少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する手段と、
前記モジュールの各々について、その終了処理の可否に関する終了可否設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記終了可否設定を参照し、前記特定されたモジュールについて、その終了処理が可能でないときには、終了処理の実行を留保する終了制御手段と、
を含むことを特徴とする画像処理装置。 - 請求項1に記載の画像処理装置において、
前記終了制御手段は、終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせることを特徴とする画像処理装置。 - それぞれが所定の画像処理を行うとともに、終了処理の要求を受けて、その前段及び後段側に接続されたモジュールに対して終了処理の要求を順次伝達する複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる手段と、
少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する手段と、
前記モジュールの各々について、その終了処理の実行可否に関する設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記管理されている設定を参照し、当該特定されたモジュールについて、その終了処理の実行が可能と設定されていないときには、終了処理の要求の出力を留保する終了制御手段と、
を含むことを特徴とする画像処理装置。 - 請求項3に記載の画像処理装置において、
前記終了制御手段は、終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせることを特徴とする画像処理装置。 - それぞれが所定の画像処理を行うとともに、終了処理の要求を受けて、その前段及び後段側に接続されたモジュールに対して終了処理の要求を順次伝達する複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる工程と、
少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する工程と、
前記モジュールの各々について、その終了処理の実行可否に関する設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記管理されている設定を参照し、当該特定されたモジュールについて、その終了処理の実行が可能と設定されていないときには、終了処理の要求の出力を留保する工程と、
を含むことを特徴とする画像処理方法。 - 請求項5に記載の画像処理方法において、
前記終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせる工程、
をさらに含むことを特徴とする画像処理方法。 - コンピュータに、
それぞれが所定の画像処理を行うとともに、終了処理の要求を受けて、その前段及び後段側に接続されたモジュールに対して終了処理の要求を順次伝達する複数のモジュールを多段接続し、当該多段接続したモジュールによって一連の画像処理を行わせる手順と、
少なくとも前記モジュールを接続する際の処理との関係において発生する例外を捕獲し、例外処理を実行する手順と、
前記モジュールの各々について、その終了処理の実行可否に関する設定を管理し、終了処理の対象となるモジュールを特定する情報とともに、当該特定されたモジュールに対する終了処理の要求を受けて、前記管理されている設定を参照し、当該特定されたモジュールについて、その終了処理の実行が可能と設定されていないときには、終了処理の要求の出力を留保する手順と、
を実行させることを特徴とする画像処理プログラム。 - 請求項7に記載の画像処理プログラムにおいて、コンピュータに、さらに、
前記終了処理の実行が留保されたモジュールに対し、当該モジュールに対する終了処理が可能となったときには、当該モジュールに終了処理を行わせる手順、
を実行させることを特徴とする画像処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002198437A JP4062995B2 (ja) | 2002-07-08 | 2002-07-08 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002198437A JP4062995B2 (ja) | 2002-07-08 | 2002-07-08 | 画像処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004038844A true JP2004038844A (ja) | 2004-02-05 |
JP4062995B2 JP4062995B2 (ja) | 2008-03-19 |
Family
ID=31705886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002198437A Expired - Fee Related JP4062995B2 (ja) | 2002-07-08 | 2002-07-08 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4062995B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006146678A (ja) * | 2004-11-22 | 2006-06-08 | Hitachi Ltd | 情報処理装置におけるプログラム制御方法、情報処理装置、及びプログラム |
JP2006338500A (ja) * | 2005-06-03 | 2006-12-14 | Fuji Xerox Co Ltd | 画像処理装置、方法及びプログラム |
JP2008021249A (ja) * | 2006-07-14 | 2008-01-31 | Fuji Xerox Co Ltd | 画像処理装置及びプログラム |
JP2009087144A (ja) * | 2007-10-01 | 2009-04-23 | Omron Corp | 開発支援装置および開発支援プログラム |
JP2012120115A (ja) * | 2010-12-03 | 2012-06-21 | Fuji Xerox Co Ltd | 画像処理装置及び画像処理プログラム |
-
2002
- 2002-07-08 JP JP2002198437A patent/JP4062995B2/ja not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006146678A (ja) * | 2004-11-22 | 2006-06-08 | Hitachi Ltd | 情報処理装置におけるプログラム制御方法、情報処理装置、及びプログラム |
JP2006338500A (ja) * | 2005-06-03 | 2006-12-14 | Fuji Xerox Co Ltd | 画像処理装置、方法及びプログラム |
JP4694266B2 (ja) * | 2005-06-03 | 2011-06-08 | 富士ゼロックス株式会社 | 画像処理装置、方法及びプログラム |
JP2008021249A (ja) * | 2006-07-14 | 2008-01-31 | Fuji Xerox Co Ltd | 画像処理装置及びプログラム |
JP2009087144A (ja) * | 2007-10-01 | 2009-04-23 | Omron Corp | 開発支援装置および開発支援プログラム |
JP2012120115A (ja) * | 2010-12-03 | 2012-06-21 | Fuji Xerox Co Ltd | 画像処理装置及び画像処理プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP4062995B2 (ja) | 2008-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE42779E1 (en) | Apparatus and method for handling digital image data | |
JP3169779B2 (ja) | マルチスレッドプロセッサ | |
JP2950432B2 (ja) | 複数データ・ストリームおよび実時間タスクの同期およびスケジューリングの方法および装置 | |
US7602394B2 (en) | Image processing device, method, and storage medium which stores a program | |
US20060274967A1 (en) | Image processing device, method, and storage medium which stores a program | |
US7602391B2 (en) | Image processing device, method, and storage medium which stores a program | |
US7595803B2 (en) | Image processing device, method, and storage medium which stores a program | |
US20070248288A1 (en) | Image processing device, and recording medium | |
US20060265534A1 (en) | Data transfer device which executes DMA transfer, semiconductor integrated circuit device and data transfer method | |
US7598957B2 (en) | Image processing device, method, and storage medium which stores a program | |
US7602393B2 (en) | Image processing device, method, and storage medium which stores a program | |
JPH0474229A (ja) | 情報処理装置 | |
JP2007034392A (ja) | 情報処理装置及びデータ処理方法 | |
JP2008022373A (ja) | 改竄検知情報生成装置、撮像装置、改竄検知情報生成方法、プログラムおよび記憶媒体 | |
JP4051974B2 (ja) | 画像処理装置および画像処理方法 | |
JP2007188196A (ja) | 画像処理装置及び画像処理制御方法 | |
JP2004038844A (ja) | 画像処理装置 | |
US20060259657A1 (en) | Direct memory access (DMA) method and apparatus and DMA for video processing | |
US8928927B2 (en) | Image forming apparatus that buffers data in a storage device and reduces delays in process | |
JP4045823B2 (ja) | 画像処理装置および画像処理方法 | |
JP3821198B2 (ja) | 信号処理装置 | |
JP4259062B2 (ja) | 画像処理装置 | |
JP2011070564A (ja) | 画像処理装置 | |
JP2006172244A (ja) | 画像処理装置 | |
JP2008054005A (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050614 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070601 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070612 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070726 |
|
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: 20071211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071224 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110111 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120111 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120111 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130111 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130111 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140111 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |