(57)【要約】【課題】  画像がブロック状に分割されているがために画像データ及びマスク情報の読み出し順序が不規則になっている場合であっても、より高速に描画処理を実行することを目的とする。【解決手段】  描画データ制御部１２は、画像データメモリ１１から読み出したラスタデータを描画処理部１３に出力すると共に、マスク情報の読み出し開始アドレスをマスク情報制御部１４に通知する。マスク情報制御部１４は、この読み出し開始アドレスに従ってマスクメモリ１５からマスク情報を読み出しておく。マスク情報が要求されると、マスク情報制御部１４は既に読み出しておいたマスク情報を描画処理部１３に出力する。【選択図】        図４
2005141312.tif 000002
【特許請求の範囲】
【請求項１】
画像を表す画像データを、読み出しアドレスが連続していない複数の記憶領域に分割して記憶した画像データ記憶手段と、
前記画像データ記憶手段における読み出しアドレスと１対１に対応する読み出しアドレスが指定された記憶領域を有し、該記憶領域に、前記画像データによって表される画像において該画像を描画すべき領域ないし描画すべきでない領域を示すマスク情報を記憶したマスク情報記憶手段と、
前記画像データ記憶手段から前記画像データを連続して読み出すことができる読み出し開始アドレスを特定するアドレス特定手段と、
特定された前記読み出し開始アドレスを指定して、前記画像データ記憶手段から前記画像データを読み出す画像データ読出手段と、
読み出された前記画像データを用いて描画データを生成するために必要な前記マスク情報を要求するマスク情報要求手段と、
前記マスク情報要求手段による要求がなされる前に、前記アドレス特定手段によって特定された読み出し開始アドレスに対応する読み出しアドレスを指定して前記マスク情報記憶手段から前記マスク情報を読み出し始め、前記要求がなされたことに応じて、既に読み出していた前記マスク情報を出力するマスク情報読出手段と、
前記画像データ読出手段によって読み出された画像データと、前記マスク情報読出手段によって出力された前記マスク情報との論理積を求めることによって描画データを生成する描画データ生成手段と
を備えた画像処理装置。
【請求項２】
コンピュータ装置を、
画像を表す画像データを、読み出しアドレスが連続していない複数の記憶領域に分割して記憶した画像データ記憶部から、前記画像データを連続して読み出すことができる読み出し開始アドレスを特定するアドレス特定手段と、
特定された前記読み出し開始アドレスを指定して、前記画像データ記憶手段から前記画像データを読み出す画像データ読出手段と、
読み出された前記画像データによって表される画像において該画像を描画すべき領域ないし描画すべきでない領域を示す必要な前記マスク情報を要求するマスク情報要求手段と、
前記マスク情報要求手段による要求がなされる前に、前記アドレス特定手段によって特定された読み出し開始アドレスに対応する読み出しアドレスを指定してマスク情報記憶部から前記マスク情報を読み出し始め、前記要求がなされたことに応じて、既に読み出していた前記マスク情報を出力するマスク情報読出手段と、
前記画像データ読出手段によって読み出された画像データと、前記マスク情報読出手段によって出力された前記マスク情報との論理積を求めることによって描画データを生成する描画データ生成手段と
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データにマスク処理を施して画像を描画する処理を高速に行うための技術に関する。
【背景技術】
【０００２】
画像処理装置においては大量の画像データを高速に処理するために、パイプラインと称せられる手法が利用されている。このパイプラインによれば、１番目のタスクを完了する前に２番目のタスクを開始し、２番目のタスクが完了する前に３番目のタスクを開始し・・・、というように複数のタスクを次々と開始していき、これらを並列的に処理するので、多数のタスクを高速に処理することができる。
【０００３】
以下、パイプラインを用いて画像データを処理する様子をより具体的に説明する。
図５は、矩形の画像を表す画像データと、この矩形画像のうちの描画すべき描画領域（図に示す楕円領域Ｓ）及び描画すべきでない非描画領域（楕円領域Ｓ以外の領域）を指定するマスク情報と、画像データとマスク情報との論理積を求めることによって生成される描画データとの関係を表した模式図である。画像データは、矩形の左上端を読み出し開始アドレスとして、矢印Ｒによって示されるように１ラインずつ読み出されるようになっている。一方、マスク情報についても画像データと同じく、矩形の左上端を読み出し開始アドレスとして、矢印Ｒ’によって示されるように１ラインずつ読み出されるようになっている。このようにして読み出された１ライン目の画像データ及びマスク情報が１番目のタスクとしてパイプラインの１段目の処理ステップに引き渡される。次いで、この１番目のタスクがパイプラインの２段目の処理ステップに移行すると、直ちに２ライン目の画像データ及びマスク情報が２番目のタスクとして１段目の処理ステップに引き渡される。つまり、１ライン分の画像データ及びマスク情報が１つのタスクとして、連続する処理ステップの間で次々と引き渡されるようになっている。このような処理の手法は、図５に示すように最初の読み出しアドレスが指定されると、それ以降は、規則的な順序で画像データ及びマスク情報が読み出されるような場合には都合がよい。
【０００４】
ここで、画像処理装置が、例えば画像を拡大したり縮小したり回転させたりするような各種の編集処理を行う場合には、その画像を幾つかのブロック領域に分割し、このブロック単位で編集処理を行ってから、最後に全てのブロックを組み合わせる、という流れで処理を行うことがある。なぜなら、画像全体を一度に拡大したり縮小したり回転させたりするためには、メモリに相当容量の記憶領域を確保しなければならないのに対し、ブロック単位で編集処理を行うと、比較的小さい容量の記憶領域を確保するだけで済むからである。
このように画像が幾つかのブロックに分割されているような場合は、図６の矢印Ｒ１，Ｒ２によって示すように、画像データ及びマスク情報の読み出し順序が不規則になってしまい、この順序に合わせて矢印Ｒ１’，Ｒ２’に示すように、マスク情報の読み出し順序も変更しなければならない。特に画像を任意の倍率に拡大したような場合には、画像データの読み出しが実際に開始されるときまで、画像を描画する位置座標が確定しない場合がある。よって、画像データが実際に読み出された後に、マスク情報の読み出し処理を開始しなければならず、マスク情報の読み出し処理が完了するまでに相当の時間がかかってしまう。
【０００５】
ところで、近年では更なる高速処理を実現したいとの要請に応えるために、上記パイプライン処理を改善するような様々な提案がなされている。例えば特許文献１においては、あるタスクについて複数の処理ステップを経ていく場合に、後段の処理ステップで必要な情報を前段のステップにおいて予めメモリから読み出して用意しておき、そのタスクが後段の処理ステップにさしかかったときに、用意していた情報をすぐに利用する、といった技術が提案されている。しかし、この特許文献１に記載された技術では、あるタスクがパイプラインの１段目の処理ステップに引き渡されてからは、そのタスクに関してのみ高速に処理することができるが、まだパイプラインの１段目の処理ステップにも引き渡されていないようなタスクに関しては、当然のことながら処理の高速化を図ることができない。図６に示した例では、画像データとマスク情報の双方がメモリから読み出された後に、はじめて１つのタスクとしてパイプラインの処理に引き渡されるが、前述したように、従来ではマスク情報の読み出し処理自体に時間がかかることが問題であるのだから、この問題を特許文献１に記載された技術で解決することはできない。
【０００６】
【特許文献１】特表２０００−５０７０１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、上述した背景に鑑み、例えば画像がブロック状に分割されているがために画像データ及びマスク情報の読み出し順序が不規則になっている場合であっても、より高速に描画処理を実行することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するため、本発明は、画像を表す画像データを、読み出しアドレスが連続していない複数の記憶領域に分割して記憶した画像データ記憶手段と、前記画像データ記憶手段における読み出しアドレスと１対１に対応する読み出しアドレスが指定された記憶領域を有し、該記憶領域に、前記画像データによって表される画像において該画像を描画すべき領域ないし描画すべきでない領域を示すマスク情報を記憶したマスク情報記憶手段と、前記画像データ記憶手段から前記画像データを連続して読み出すことができる読み出し開始アドレスを特定するアドレス特定手段と、特定された前記読み出し開始アドレスを指定して、前記画像データ記憶手段から前記画像データを読み出す画像データ読出手段と、読み出された前記画像データを用いて描画データを生成するために必要な前記マスク情報を要求するマスク情報要求手段と、前記マスク情報要求手段による要求がなされる前に、前記アドレス特定手段によって特定された読み出し開始アドレスに対応する読み出しアドレスを指定して前記マスク情報記憶手段から前記マスク情報を読み出し始め、前記要求がなされたことに応じて、既に読み出していた前記マスク情報を出力するマスク情報読出手段と、前記画像データ読出手段によって読み出された画像データと、前記マスク情報読出手段によって出力された前記マスク情報との論理積を求めることによって描画データを生成する描画データ生成手段とを備えた画像処理装置を提供する。
【０００９】
また、本発明は、コンピュータ装置を、画像を表す画像データを、読み出しアドレスが連続していない複数の記憶領域に分割して記憶した画像データ記憶部から、前記画像データを連続して読み出すことができる読み出し開始アドレスを特定するアドレス特定手段と、
特定された前記読み出し開始アドレスを指定して、前記画像データ記憶手段から前記画像データを読み出す画像データ読出手段と、読み出された前記画像データによって表される画像において該画像を描画すべき領域ないし描画すべきでない領域を示す必要な前記マスク情報を要求するマスク情報要求手段と、前記マスク情報要求手段による要求がなされる前に、前記アドレス特定手段によって特定された読み出し開始アドレスに対応する読み出しアドレスを指定してマスク情報記憶部から前記マスク情報を読み出し始め、前記要求がなされたことに応じて、既に読み出していた前記マスク情報を出力するマスク情報読出手段と、前記画像データ読出手段によって読み出された画像データと、前記マスク情報読出手段によって出力された前記マスク情報との論理積を求めることによって描画データを生成する描画データ生成手段として機能させるためのプログラムを提供する。
【００１０】
このような画像処理装置ないしプログラムによれば、事前にマスク情報の読み出しを開始しておくので、必要とされるときにそのマスク情報を直ちに利用することができるため、描画処理を高速に行うことができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照しながら、本発明の実施の形態について説明する。
図１は、画像処理装置１００の機能構成を示したブロック図である。画像処理装置１００は、ＣＰＵ（Central Processing Unit）のような演算装置や、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）のような各種メモリなどの各種ハードウェアによって構成されるコンピュータ装置であり、ページプリンタのような画像形成装置やパーソナルコンピュータなどに組み込まれる。図１に示すように、画像処理装置１００は、画像データメモリ１１と、描画データ制御部１２と、描画処理部１３と、マスク情報制御部１４と、マスクメモリ１５と、描画メモリ１６とを備えている。例えば描画データ制御部１２と描画処理部１３とマスク情報制御部１４とは、ＣＰＵがＲＯＭなどのメモリに格納されているプログラムを実行することで実現される。また、画像データメモリ１１とマスクメモリ１５と描画メモリ１６とはＲＡＭなどのメモリによって実現される。このような画像処理装置１００によって生成された描画データが印刷エンジン２００に出力されると、印刷エンジン２００はこの描画データに基づいて記録紙に画像を印刷するようになっている。
【００１２】
画像データメモリ１１にはラスタデータが記憶されている。このラスタデータは、主走査方向と副走査方向にそれぞれ所定数の画素分の画像を表すデータである。１画素あたりのラスタデータは例えば３２ビットの色情報などを含んでいる。マスクメモリ１５には、上記の画像データに対応するマスク情報が記憶されている。このマスク情報は、ラスタデータによって表される画像のうち、その画像を描画すべき描画領域ないしその画像を描画すべきでない非描画領域を示している。マスクメモリ１５におけるマスク情報の読み出しアドレスと、画像データメモリ１１におけるラスタデータの読み出しアドレスとは１対１に対応している。マスク情報は、ラスタデータによって表される画像を構成する１つ１つの画素に対応したビットの列であり、その値が「０」の場合にはそれに対応する画素が描画されず、その値が「１」の場合にはそれに対応する画素が描画される。
【００１３】
描画データ制御部１２は、画像データメモリ１１からラスタデータを１ラインずつ読み出し、これを描画処理部１３に順次  出力する。描画処理部１３は、これらのラスタデータを受け取ると、１ラインずつパイプラインの処理ステップに引き渡して描画データを１ライン分ずつ生成し、これを描画メモリ１６に書き込んでいく。このようにして記録紙１ページ分の描画データが描画メモリ１６に書き込まれると、この描画データは印刷エンジン２００へと転送され、所定の画像形成プロセスによって画像が記録紙に印刷される。
【００１４】
このとき、上記ラスタデータによって表される画像の一部領域のみを描画するようなマスク処理が必要な場合、描画処理部１３は、そのラスタデータを描画メモリ１６に書き込んだ後に、マスク情報制御部１４に対して必要なマスク情報を要求する。この要求に応じて、マスク情報制御部１４はマスクメモリ１５から読み出したマスク情報を描画処理部１３に出力する。そして、描画処理部１３は、受け取ったマスク情報と描画メモリ１６に格納されているラスタデータとの論理積を求めるなどの処理を行い、処理後のラスタデータを再び描画メモリ１６に書き込めばよい。
【００１５】
ここで、拡大・回転・縮小伸長等の処理が施されることによって、図２に示すように、ラスタデータが幾つかのブロックに分割されていると、矢印Ｒによって示すように不規則な順序でラスタデータを読み出さなければならない。前述したようにマスクメモリ１５におけるマスク情報の読み出しアドレスと、画像データメモリ１１におけるラスタデータの読み出しアドレスとは１対１に対応しているので、マスク情報の読み出し順序も図３の矢印Ｒ’に示すように不規則になってしまう。
【００１６】
そこで、描画データ制御部１２は、ラスタデータを読み出すために画像データメモリ１１にアクセスしたときにこの画像データメモリ１１の記憶領域を参照して、ラスタデータを連続して読出し可能な読み出し開始アドレス（１）、（２）、（３）・・・を特定し、特定した読み出し開始アドレスをマスク情報制御部１４に通知しておく。通知された読み出し開始アドレス（１）、（２）、（３）・・・は、マスク情報を連続して読み出し可能な開始アドレス（１）’、（２）’、（３）’・・・と同値であるので、マスク情報制御部１４は、描画処理部１３によってマスク情報が要求される前に、上記読み出し開始アドレス（１）’、（２）’、（３）’・・・に従ってマスクメモリ１５からマスク情報を読み出し、一時的に記憶しておく。この後、マスク情報制御部１４は、描画処理部１３によってマスク情報が要求されると、マスクメモリ１５から読み出しておいたマスク情報を描画処理部１３に出力する。
【００１７】
以上の動作について図４を用いて説明すると次のようになる。
まず、描画データ制御部１２は、画像データメモリ１１からラスタデータを読み出す際に、ラスタデータ（つまりマスク情報）を連続して読出し可能な読み出し開始アドレスを特定する（処理ステップＳ１）。描画データ制御部１２は、画像データメモリ１１から読み出したラスタデータを描画処理部１３に出力すると共に（処理ステップＳ２）、処理ステップＳ１において特定した読み出し開始アドレスをマスク情報制御部１４に通知する（処理ステップＳ３）。この通知に応じて直ちに、マスク情報制御部１４は、上記読み出し開始アドレスに従ってマスクメモリ１５からマスク情報を読み出し、一時的に記憶しておく（処理ステップＳ４）。
【００１８】
描画処理部１３は、上記ラスタデータを描画メモリ１６に書き込んだ後に、マスク情報制御部１４に対して必要なマスク情報を要求する（処理ステップＳ５）。この要求に応じて、マスク情報制御部１４はマスクメモリ１５から読み出しておいたマスク情報を描画処理部１３に出力する（処理ステップＳ６）。描画処理部１３は、受け取ったマスク情報と描画メモリ１６に格納されているラスタデータとの論理積を求めるなどの処理をパイプラインの手法に従って実行し、処理後のラスタデータを再び描画メモリ１６に書き込んでいく（処理ステップＳ７）。
このように本実施形態によれば、画像データ及びマスク情報が必要とされる前に、そのマスク情報を先読みして用意しているので、描画処理を高速に行うことができる。
【００１９】
なお、上述した実施形態では、画像処理装置１００の機能を実現させるためのプログラムがＲＯＭに予め記憶されている場合について説明した。しかし、これに限らず、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などのコンピュータ装置読み取り可能な記録媒体に、上記ソフトウェアを記録させておき、このような記録媒体を用いてコンピュータに上記ソフトウェアをインストールして画像処理装置１００を実現するようにしてもよい。また、インターネットなどの通信網を介して上記ソフトウェアを配信し、これをコンピュータにインストールさせて画像処理装置１００を実現するようにしてもよい。
また、上述した実施形態では、画像処理装置１００の機能はＣＰＵがプログラムを実行して実現されるものとして説明したが、その機能の一部が例えばＡＳＩＣ（Application Specific Integrated Circuit）やＡＳＳＰ（Application Specific Standard Product）などのＣＰＵ以外の専用ハードウェアを用いて実現されてもよい。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態に係る画像処理装置の構成を示す図である。
【図２】同実施形態において画像データが読み出される順序を示す図である。
【図３】実施形態においてマスク情報が読み出される順序を示す図である。
【図４】画像処理装置の動作を説明する図である。
【図５】従来において画像データとマスク情報とが読み出されて描画データが生成される様子を説明するための図である。
【図６】従来において、分割された画像データとマスク情報とが読み出されて描画データが生成される様子を説明するための図である。
【符号の説明】
【００２１】
１１…画像データメモリ、１２…描画データ制御部、１３…描画処理部、１４…マスク情報制御部、１５…マスクメモリ、１６…描画メモリ、１００…画像処理装置、２００…印刷エンジン。
【図１】
2005141312.tif 000003
【図２】
2005141312.tif 000004
【図３】
2005141312.tif 000005
【図４】
2005141312.tif 000006
【図５】
2005141312.tif 000007
【図６】
2005141312.tif 000008