説明

画像処理装置

【課題】 画像処理装置において、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させる。
【解決手段】 画像形成装置1において、データ生成部22は、複数ページ画像のそれぞれについて、ページ画像内の各画素の色および/または階調を示す画像データとページ画像内の各画素の属性を示す属性データとを、順番に生成しRAM12に記憶する。そして、マッピング設定部23は、複数ページ画像についての属性データが仮想アドレス空間で連続するように、また、複数ページ画像についての画像データが仮想アドレス空間で連続するように、マッピングデータ21aを設定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置に関するものである。
【背景技術】
【0002】
近年、複合機などの画像形成装置には、オペレーティングシステムが実装されており、オペレーティングシステムによる仮想記憶方式のメモリー管理が実現されている(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001−213011号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
画像形成装置などの画像処理装置では、ページ記述言語で記述された印刷データに対してラスタライズ処理を行うことで、色情報および/または階調情報を有する画像データと、属性情報を有する属性データとが順番に生成され、メモリーなどに記憶される。その際、ラスタライズ処理のページ順に沿って画像データおよび属性データが配列されて記憶される。
【0005】
図5は、画像データおよび属性データの記憶状態の一例を示す図である。図5において、属性データ101a,102a,103aは、第1ページから第3ページまでの各ページの属性データであり、画像データ101b,102b,103bは、第1ページから第3ページまでの各ページの画像データである。
【0006】
上述のように属性データ101a〜103aおよび画像データ101b〜103bが配列されて記憶される場合、図5に示すように、属性データ101a〜103aと画像データ101b〜103bが交互に配列される。しかしながら、属性データ101a〜103aと画像データ101b〜103bとで異なる処理を行う場合、その処理を高速に行うために、属性データ101a〜103aと画像データ101b〜103bとを、仮想アドレス空間内でそれぞれ連続させておく必要がある。
【0007】
このため、図5に示すように、memcpyなどのシステムコールを使用して、それぞれが連続するように、属性データ101a〜103aと画像データ101b〜103bとを移動させている。
【0008】
しかしながら、memcpyなどのシステムコールを使用して属性データ101a〜103aおよび画像データ101b〜103bを移動させる場合、そのシステムコールの実行によるプロセッサーやメモリーなどのリソースに対する負荷が大きいため、他の処理が遅延する可能性がある。
【0009】
本発明は、上記の問題に鑑みてなされたものであり、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる画像処理装置を得ることを目的とする。
【課題を解決するための手段】
【0010】
上記の課題を解決するために、本発明では以下のようにした。
【0011】
本発明に係る画像処理装置は、記憶装置と、記憶装置の物理アドレス空間と仮想アドレス空間との対応関係を示すマッピングデータに基づいて、仮想アドレス空間と物理アドレス空間との間のアドレス変換を行うアドレス管理部と、複数ページ画像のそれぞれについて、ページ画像内の各画素の色および/または階調を示す画像データとページ画像内の各画素の属性を示す属性データとを、順番に生成し記憶装置に記憶するデータ生成部と、複数ページ画像についての属性データが仮想アドレス空間で連続するように、また、複数ページ画像についての画像データが仮想アドレス空間で連続するように、マッピングデータを設定するマッピング設定部とを備える。
【0012】
これにより、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。
【0013】
また、本発明に係る画像処理装置は、上記の画像処理装置に加え、次のようにしてもよい。この場合、マッピング設定部は、仮想アドレス空間内において所定サイズの仮想アドレス領域を確保し、画像データがその仮想アドレス領域内の所定の第1の仮想アドレスから連続するように、属性データがその仮想アドレス領域内の所定の第2の仮想アドレスから連続するようにマッピングデータを設定する。
【0014】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、上述の仮想アドレス領域は、データ生成部により生成される画像データおよび属性データに割り当てられる記憶装置の物理アドレス領域より広い。
【0015】
これにより、画像データおよび/または属性データのサイズが既知ではない場合でも、画像データおよび/または属性データが、その仮想アドレス領域から溢れにくくなる。
【0016】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、第1の仮想アドレスおよび第2の仮想アドレスの一方は、画像データのサイズと属性データのサイズとに基づいて設定される。
【0017】
これにより、予め確保された仮想アドレス領域が効率的に使用される。
【0018】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、マッピング設定部は、上述の仮想アドレス領域を確保する際に、その仮想アドレス領域において既に使用されている部分が存在する場合には、マッピングデータを変更して、既に使用されている部分の仮想アドレスを別の仮想アドレスに置き換える。
【0019】
これにより、既存のデータを破壊することなく、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。
【0020】
また、本発明に係る画像処理装置は、上記の画像処理装置のいずれかに加え、次のようにしてもよい。この場合、データ生成部は、ページ記述言語で記述された印刷データからバンドごとに画像データと属性データとを生成し記憶装置に記憶する。
【発明の効果】
【0021】
本発明によれば、画像処理装置において、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。
【図面の簡単な説明】
【0022】
【図1】図1は、本発明の実施の形態に係る画像処理装置の構成を示すブロック図である。
【図2】図2は、図1に示す画像処理装置のマッピング設定部の動作について説明するフローチャートである。
【図3】図3は、図1に示す画像処理装置による仮想アドレスの再マッピングについて説明する図である。
【図4】図4は、図1に示す画像処理装置による仮想アドレスの再マッピング前後の画像データおよび属性データの記憶状態の一例を示す図である。
【図5】図5は、画像データおよび属性データの記憶状態の一例を示す図である。
【発明を実施するための形態】
【0023】
以下、図に基づいて本発明の実施の形態を説明する。
【0024】
図1は、本発明の実施の形態に係る画像処理装置の構成を示すブロック図である。図1に示す画像処理装置1は、プリンター、複合機などの画像形成装置に内蔵され、ネットワークインターフェイス2、印刷装置3などに接続されている。画像処理装置1は、コンピューター、ASIC(Application Specific Integrated Circuit)などで構成されている。ネットワークインターフェイス2は、図示せぬホスト装置などとネットワークを介して通信を行う通信装置である。ネットワークインターフェイス2は、例えば、図示せぬホスト装置から、ページ記述言語で記述された印刷データを受信する。印刷装置3は、画像処理装置1から画像データを供給され、その画像データに対する各種処理(ハーフトーニングなど)を行い、処理後のデータに基づいて印刷を実行する。
【0025】
この画像処理装置1は、演算処理装置11、RAM(Random Access Memory)12、および補助記憶装置13を有する。
【0026】
演算処理装置11は、CPU(Central Processing Unit)、ASICなどで、各種処理を実行する処理部を実現する。RAM12は、演算処理装置11による処理に関連する各種データを一時的に記憶する揮発性の記憶装置である。補助記憶装置13は、演算処理装置11のCPUにより実行されるプログラムや、各種データを記憶している不揮発性の記憶装置である。補助記憶装置13としては、ROM(Read Only Memory)、フラッシュメモリー、ハードディスクドライブなどが使用される。
【0027】
演算処理装置11では、アドレス管理部21、データ生成部22、およびマッピング設定部23が実現される。
【0028】
アドレス管理部21は、RAM12の物理アドレス空間と仮想アドレス空間との対応関係を示すマッピングデータ21aに基づいて、仮想アドレス空間と物理アドレス空間との間のアドレス変換を行う。アドレス管理部21は、例えばメモリー管理ユニット(MMU)などとして実現される。
【0029】
データ生成部22は、複数ページ画像のそれぞれについて、ページ画像内の各画素の色および/または階調を示す画像データとページ画像内の各画素の属性を示す属性データとを、順番に生成しRAM12に記憶する。この実施の形態では、データ生成部22は、ページ記述言語で記述された印刷データからバンドごとに画像データと属性データとを生成しRAM12に記憶する。なお、属性データは、画像処理において色処理、階調処理などの設定に使用される。属性データは、例えば文字に属する画素か否かといった画素ごとの情報を含む。また、データ生成部22は、予め指定されている物理アドレスに画像データおよび属性データを書き込むようにしてもよいし、予め指定されている仮想アドレスに画像データおよび属性データを書き込むようにしてもよい。
【0030】
マッピング設定部23は、複数ページ画像についての属性データが仮想アドレス空間で連続するように、また、複数ページ画像についての画像データが仮想アドレス空間で連続するように、マッピングデータ21aを設定する。
【0031】
この実施の形態では、マッピング設定部23は、仮想アドレス空間内において所定サイズの仮想アドレス領域を確保し、画像データがその仮想アドレス領域内の所定の第1の仮想アドレスから連続するように、属性データがその仮想アドレス領域内の所定の第2の仮想アドレスから連続するようにマッピングデータを設定する。
【0032】
また、この実施の形態では、この仮想アドレス領域は、データ生成部22により生成される画像データおよび属性データに割り当てられる、RAM12の物理アドレス領域より広く確保される。
【0033】
次に、上記画像処理装置1の動作について説明する。
【0034】
まず、データ生成部22は、ネットワークインターフェイス2により受信された印刷データに対してラスタライズ処理を行い、印刷データから画像データと属性データをバンドごとに生成し、印刷画像の1ページごとにRAM12に記憶する。
【0035】
印刷データに基づき全ページの画像データと属性データが生成され、RAM12に記憶されると、マッピング設定部23は、マッピングデータ21aの変更を次にようにして行う。
【0036】
図2は、図1に示す画像処理装置1のマッピング設定部23の動作について説明するフローチャートである。
【0037】
まず、マッピング設定部23は、先頭ページの属性データの先頭物理アドレスおよびデータ長を特定するとともに(ステップS1)、先頭ページの画像データの先頭物理アドレスおよびデータ長を特定する(ステップS2)。
【0038】
次に、マッピング設定部23は、後続のページのデータが存在するか否かを判定し(ステップS3)、後続のページのデータが存在すれば、次のページの属性データの先頭物理アドレスおよびデータ長を特定するとともに(ステップS4)、そのページの画像データの先頭物理アドレスおよびデータ長を特定する(ステップS5)。その後、ステップS3に戻り、最終ページまで、マッピング設定部23は、各ページの、属性データの先頭物理アドレスおよびデータ長、並びに、画像データの先頭物理アドレスおよびデータ長を特定する。特定したアドレスおよびデータ長は、RAM12の所定の領域に記憶される。
【0039】
なお、属性データおよび画像データのデータ長は、それぞれ固定であれば、最初に1度だけ特定すればよい。
【0040】
そして、すべてのページについて、属性データの先頭アドレスおよびデータ長、並びに、画像データの先頭アドレスおよびデータ長を特定すると、マッピング設定部23は、マッピングデータ21aを変更して、先頭ページについての、属性データの仮想アドレスを再マッピングするとともに(ステップS6)、画像データの仮想アドレスを再マッピングする(ステップS7)。
【0041】
図3は、図1に示す画像処理装置1による仮想アドレスの再マッピングについて説明する図である。図3(A)は、物理アドレス空間内の属性データ101a〜103aと画像データ101b〜103bを示す図である。図3(B)は、再マッピング前の、仮想アドレス空間内の属性データ101a〜103aと画像データ101b〜103bを示す図である。図3(C)は、再マッピング後の、仮想アドレス空間内の属性データ101a〜103aと画像データ101b〜103bを示す図である。
【0042】
このとき、図3に示すように、先頭ページの属性データ101aの先頭物理アドレスPA1aから属性データ101aのデータ長L1a分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA1aからデータ長L1a分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA11a(つまり、上述の第2の仮想アドレス)からデータ長L1a分の仮想アドレスの範囲に関連付けられる。なお、先頭ページの属性データ101aの仮想記憶領域を移動しない場合には、先頭ページの属性データ101aについては再マッピングを行わないようにしてもよい(この場合、VA1a=VA11a)。
【0043】
同様に、先頭ページの画像データ101bの先頭物理アドレスPA1bから画像データ101bのデータ長L1b分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA1bからデータ長L1b分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA11b(つまり、上述の第1の仮想アドレス)からデータ長L1b分の仮想アドレスの範囲に関連付けられる。
【0044】
次に、マッピング設定部23は、後続のページのデータが存在するか否かを判定し(ステップS8)、後続のページのデータが存在すれば、マッピング設定部23は、マッピングデータ21aを変更して、次のページについての、属性データの仮想アドレスを再マッピングするとともに(ステップS9)、画像データの仮想アドレスを再マッピングする(ステップS10)。このとき、仮想アドレス空間において、このページの属性データが、1つ前のページの属性データに連続するように、再マッピングが行われる。また、同様に、仮想アドレス空間において、このページの画像データが、1つ前のページの画像データに連続するように、再マッピングが行われる。
【0045】
そして、すべてのページについて再マッピングが行われると、マッピング設定部23は、この処理を終了する。
【0046】
図3(A)および図3(B)に示す場合、第2ページの属性データ102aの先頭物理アドレスPA2aから属性データ102aのデータ長L2a分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA2aからデータ長L2a分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA12aからデータ長L2a分の仮想アドレスの範囲に関連付けられる。再マッピング後の仮想アドレスVA12aは、次式で、1つ前のページの属性データ101aの仮想アドレスVA11aおよびデータ長L1aから特定される。
【0047】
VA12a=VA11a+L1a
【0048】
同様に、第2ページの画像データ102bの先頭物理アドレスPA2bから画像データ102bのデータ長L2b分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA2bからデータ長L2b分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA12bからデータ長L2b分の仮想アドレスの範囲に関連付けられる。再マッピング後の仮想アドレスVA12bは、次式で、1つ前のページの画像データ101bの仮想アドレスVA11bおよびデータ長L1bから特定される。
【0049】
VA12b=VA11b+L1b
【0050】
第3ページ以降の属性データおよび画像データについても同様に再マッピングが行われる。
【0051】
図4は、図1に示す画像処理装置1による仮想アドレスの再マッピング前後の画像データおよび属性データの記憶状態の一例を示す図である。
【0052】
図4に示すように、この実施の形態では、再マッピングは、所定サイズで予め確保された仮想アドレス領域111内で行われる。上述のようにして、マッピングデータを変更することで、物理アドレス空間では属性データ101a〜103aを移動させることなく、仮想アドレス空間において属性データ101a〜103aを連続させている。同様に、マッピングデータを変更することで、物理アドレス空間では画像データ101b〜103bを移動させることなく、仮想アドレス空間において画像データ101b〜103bを連続させている。
【0053】
以上のように、上記実施の形態によれば、マッピング設定部23は、複数ページ画像についての属性データが仮想アドレス空間で連続するように、また、複数ページ画像についての画像データが仮想アドレス空間で連続するように、マッピングデータ21aを設定する。
【0054】
これにより、物理アドレス空間における移動を伴うmemcpyなどのシステムコールを使用しないため、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。
【0055】
したがって、例えば、異なる圧縮方式で画像データおよび属性データを圧縮し次段の処理に渡す場合、特にそれぞれをバンドごとにパイプライン処理を行うときには、画像データおよび属性データをそれぞれ連続的に読み出せるため、高速に処理を行うことができる。
【0056】
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
【0057】
例えば、上記実施の形態において、マッピング設定部23は、画像データおよび属性データに関するマッピングのために仮想アドレス空間を確保する際に、その仮想アドレス空間において既に使用されている部分が存在する場合には、マッピングデータ21aを変更して、既に使用されている部分の仮想アドレスを別の仮想アドレスに置き換えるようにしてもよい。これにより、既存のデータを破壊することなく、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。
【0058】
また、上記実施の形態において、マッピング設定部23は、上述の第1および第2の仮想アドレスの一方を、画像データのサイズと属性データのサイズとに基づいて設定するようにしてもよい。例えば、予め確保された仮想アドレス空間の先頭を第2の仮想アドレスとし、予め確保された仮想アドレス空間のサイズに1ページ分の画像データのサイズと1ページ分の画像データのサイズおよび属性データのサイズの和との比を乗じて得られるサイズだけ先頭からオフセットさせた位置を第1の仮想アドレスとする。これにより、予め確保された仮想アドレス領域に記憶可能な画像データおよび属性データのページ数が最大となる。
【0059】
また、上記実施の形態において、属性データと画像データとを、別々に確保した2つの仮想アドレス領域に記憶するようにしてもよい。
【産業上の利用可能性】
【0060】
本発明は、例えば、画像形成装置に適用可能である。
【符号の説明】
【0061】
1 画像処理装置
12 RAM(記憶装置の一例)
21 アドレス管理部
21a マッピングデータ
22 データ生成部
23 マッピング設定部
101a〜103a 属性データ
101b〜103b 画像データ
111 仮想アドレス領域

【特許請求の範囲】
【請求項1】
記憶装置と、
前記記憶装置の物理アドレス空間と仮想アドレス空間との対応関係を示すマッピングデータに基づいて、前記仮想アドレス空間と前記物理アドレス空間との間のアドレス変換を行うアドレス管理部と、
複数ページ画像のそれぞれについて、前記ページ画像内の各画素の色および/または階調を示す画像データと前記ページ画像内の各画素の属性を示す属性データとを、順番に生成し前記記憶装置に記憶するデータ生成部と、
前記複数ページ画像についての前記属性データが前記仮想アドレス空間で連続するように、また、前記複数ページ画像についての前記画像データが前記仮想アドレス空間で連続するように、前記マッピングデータを設定するマッピング設定部と、
を備えることを特徴とする画像処理装置。
【請求項2】
前記マッピング設定部は、前記仮想アドレス空間内において所定サイズの仮想アドレス領域を確保し、前記画像データが前記仮想アドレス領域内の所定の第1の仮想アドレスから連続するように、前記属性データが前記仮想アドレス領域内の所定の第2の仮想アドレスから連続するように前記マッピングデータを設定することを特徴とする請求項1記載の画像処理装置。
【請求項3】
前記仮想アドレス領域は、前記データ生成部により生成される前記画像データおよび前記属性データに割り当てられる、前記記憶装置の物理アドレス領域より広いことを特徴とする請求項2記載の画像処理装置。
【請求項4】
前記第1の仮想アドレスおよび前記第2の仮想アドレスの一方は、前記画像データのサイズと前記属性データのサイズとに基づいて設定されることを特徴とする請求項2記載の画像処理装置。
【請求項5】
前記マッピング設定部は、前記仮想アドレス領域を確保する際に、その仮想アドレス領域において既に使用されている部分が存在する場合には、前記マッピングデータを変更して、前記既に使用されている部分の仮想アドレスを別の仮想アドレスに置き換えることを特徴とする請求項2記載の画像処理装置。
【請求項6】
前記データ生成部は、ページ記述言語で記述された印刷データからバンドごとに前記画像データと前記属性データとを生成し前記記憶装置に記憶することを特徴とする請求項1から請求項5のうちのいずれか1項記載の画像処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2013−12075(P2013−12075A)
【公開日】平成25年1月17日(2013.1.17)
【国際特許分類】
【出願番号】特願2011−144827(P2011−144827)
【出願日】平成23年6月29日(2011.6.29)
【出願人】(000006150)京セラドキュメントソリューションズ株式会社 (13,173)
【Fターム(参考)】