説明

画像処理システム

【課題】例外処理の発生、及び転送処理回数の増加を抑止することができる画像処理システムを提供する。
【解決手段】ネットワーク等を介してデータを入力し、そのデータから画像データを生成する第1の画像処理装置と、Mラスタの入力ラインバッファと、Nラスタの出力ラインバッファと(M≧N>1)、Nラスタのハーフトーンデータバッファと演算装置を備えた、ハーフトーン処理を行う第2の画像処理装置とを備え、第1の画像処理装置は、生成されたMラスタの画像データと、水平方向X画素、垂直方向Yラスタからなるハーフトーンマトリクスの対応する位置のNラスタのハーフトーンデータを、第2の画像処理装置に転送して、Nラスタのハーフトーン処理済みデータを得る。第1の画像処理装置は、指定されたマトリクスを、垂直方向について、先頭からN−1ラスタ分のデータを最後のラスタに加えて、垂直方向Y+N−1ラスタのマトリクスに拡張して保持する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プリンタ等の印刷用ビットマップデータを生成する画像処理システムに関する。
【背景技術】
【0002】
プリンタ等の印刷用ビットマップデータを生成する画像処理システムは、ソフトウェアによりPostscript(登録商標)等のPDLのRIP処理を行って画像を生成する方式が一般的である。このソフトウェアによるRIP処理の課程において、実際にプリンタ等の印刷装置が扱えるデータに変換するためのハーフトーン処理を行う場合と行わない場合がある。このRIP処理の過程において行わない場合は、1画素について8bit等の階調データとして画像を作成し、別途ハーフトーン処理を行う。ハーフトーン処理を別のシステムで行い、RIP処理と分けることにより、RIP処理の負担が減るため、トータルではパフォーマンスが向上する。
【0003】
このような、RIP処理とハーフトーン処理を別のシステムで行う場合、特にハーフトーン処理をハードウェアによって行う場合には、ハーフトーンデータを保持するメモリを用意する必要があるが、ハーフトーンデータは場合によっては非常に大きなものとなり、最大のサイズの場合を考慮すると、全てのデータを保持するのではなく、必要なデータのみその都度用意する方法が望ましい。
【発明の概要】
【発明が解決しようとする課題】
【0004】
ソフトウェアシステムによるRIP処理で生成した画像データを、別のハードウェアシステムによってハーフトーン処理を行う場合には、ハードウェア側でイメージデータ全体のバッファを持つと物量が大きすぎるため、一部のラスタ分のバッファメモリを用意し、一度に数ラスタずつ行う。
【0005】
このため、ソフトウェアシステムからハードウェアシステムでの処理に必要なラスタのイメージデータとハーフトーンデータを転送する。この際、使用するハーフトーンは水平方向X画素、垂直方向Yラスタのマトリクスとなっており、ハーフトーン処理に必要なラスタの分だけ画像データとともにハードウェアシステムに転送する必要がある。
【0006】
このとき、ハーフトーンマトリクスの垂直方向サイズYが一度にハーフトーン処理を行うラスタ数Nの公倍数になっていない場合は、Nラスタ分のハーフトーンマトリクスのデータを転送する際に、マトリクスの上端と下端のデータを転送する必要が発生する場合があり、ソフトウェアシステム上の記憶領域の連続した領域のデータではないため、例外処理として、転送処理を2回行う必要が生じてしまう。
【0007】
本発明の目的は、このような例外処理の発生、及び転送処理回数の増加を抑止することができる画像処理システムを提供することにある。
【課題を解決するための手段】
【0008】
前記目的を達成するため、本発明は、ネットワーク等を介してデータを入力し、そのデータから画像データを生成する第1の画像処理装置と、Mラスタの入力ラインバッファと、Nラスタの出力ラインバッファと(M≧N>1)、Nラスタのハーフトーンデータバッファと演算装置を備えた、プリンタ等の印刷画像生成のためにハーフトーン処理を行う第2の画像処理装置とを備え、第1の画像処理装置は、生成されたMラスタの画像データと、水平方向X画素、垂直方向Yラスタからなるハーフトーンマトリクスの対応する位置のNラスタのハーフトーンデータを、第2の画像処理装置に転送して、Nラスタのハーフトーン処理済みデータを出力する画像処理システムにおいて、
前記第1の画像処理装置は、指定された水平方向X画素、垂直方向Yラスタのマトリクスを、垂直方向について、先頭からN−1ラスタ分のデータを最後のラスタに加えて、垂直方向Y+N−1ラスタのマトリクスに拡張して保持することを特徴とするものである。
【発明の効果】
【0009】
本発明は前述のような構成になっており、例外処理の発生、及び転送処理回数の増加を抑止しつつ、必要なラスタのイメージデータとハーフトーンデータを連続してハードウェアシステムに転送することが可能となる。
【図面の簡単な説明】
【0010】
【図1】本発明が適用される組込み式システムを用いた例としてプリンタ装置のシステム構成を示す図である。
【図2】本発明の実施例に係るプリンタコントローラの構成を示す図である。
【図3】本発明の実施例に係るハーフトーンに関するメインメモリの模式図である。
【図4】本発明の実施例に係るハーフトーン処理を説明するための図である。
【図5】本発明の実施例に係る転送される拡張ハーフトーン領域のデータに関するメインメモリ上の模式図である。
【図6】本発明の実施例に係るエンジンI/F回路Cの構成を示す図である。
【図7】本発明の実施例に係るイメージデータバッファの構成を示す図である。
【図8】本発明の実施例に係るハーフトーンデータバッファの構成を示す図である。
【図9】本発明の実施例に係る画像処理回路の構成を示す図である。
【発明を実施するための形態】
【0011】
図1は、本発明が適用される組込み式システムを用いた例として、プリンタ装置のシステム構成図を示している。
【0012】
プリンタ0100は、実際に印刷を行うプリンタエンジン0101とネットワーク経由で印刷ジョブデータを受信して、プリンタエンジン0101で印刷可能な印刷画像データに変換してから転送するプリンタコントローラ0102及び、操作パネル0103から構成されている。
【0013】
図2にプリンタコントローラ0102の構成を示す。プリンタコントローラ0102は、CPU0201、メモリ0202がそれぞれCPUバス0211、メモリバス0212を介してバスブリッジ0203に接続され、バスブリッジ0203は、汎用バス0213に接続されている。汎用バス0213には、データ蓄積に用いるHDD0204、外部とのインターフェース(以下、I/Fという)であるネットワークに接続するネットワークI/F回路0205、操作パネルと接続するパネルI/F回路0206、プリンタエンジンとのI/Fとなり、ハーフトーン処理等の画像処理を行うエンジンI/F回路C 0207、エンジンI/F回路M 0208、エンジンI/F回路Y 0209、エンジンI/F回路K 0210、が接続されている。
【0014】
プリンタコントローラ0101は、ネットワークI/F回路0205を介して外部より印刷データを受信し、印刷データの内容に従ってCPU0201によりRIP処理が行われ、メモリ0202上に内部イメージデータを、シアン、マゼンダ、イエロー、ブラック(以下それぞれC,M、Y,Kとする)4色の各プレーンについて各画素8bitのイメージデータ、およびCMYK共通で、画素の属性(以下Sとする)を示す各画素2bitのイメージデータを生成する。生成されたCMYKSのイメージデータは、メインメモリに保持されるか、必要に応じてHDD 0204に転送・蓄積される。生成されるイメージデータの垂直方向のラスタ数は8の倍数とし、印刷ジョブの指示する画像サイズのラスタ数が8の倍数でない場合は、空白データを付加する。
【0015】
図3にハーフトーンに関するメインメモリの模式図を示す。ハーフトーンデータはt個のデータ(tは自然数)がメインメモリ上に配置されている。この数tは設定により変更可能である。また、これらのデータ領域のサイズは、ハーフトーンマトリクスのサイズに応じて変化する。プリンタコントローラ0102は、外部より受信した印刷データに含まれる使用するハーフトーンの情報に基づいて、ページ毎に必要に応じて該当するハーフトーンデータを格納するのに必要な拡張ハーフトーン領域A及び拡張ハーフトーン領域Bを確保し、それぞれのハーフトーンデータを7ラスタ拡張した、拡張ハーフトーンデータとして格納する。それぞれの領域は、CMYK各プレーンのハーフトーンデータに分かれており、各プレーンのハーフトーンデータのサイズは同じである必要はない。
【0016】
印刷の際には、エンジンI/F回路C 0207〜K 0210から各色毎にデータ転送要求が発行され、それに従って、CMYK各色のエンジンI/F回路にそれぞれ、各色のイメージデータ(1画素8it)、各色共通の属性データ(1画素2it)、拡張ハーフトーンデータA、Bが、メインメモリまたはHDD 0204から転送される。
【0017】
以下、エンジンI/F回路C 0207への転送処理について説明するが、M/Y/Kの処理も同様である。
【0018】
一度に転送されるデータは、図4に示すように、ハーフトーン処理を行う8ラスタに対応するラスタのハーフトーンACおよびハーフトーンBCのデータと、その8ラスタを垂直下方向4ラスタずらした8ラスタのC各プレーンのイメージデータ及びSとなり、8ラスタ毎に転送要求を発行してDMA転送を行い、ページ終了まで繰り返す。但し、ページ先頭の処理の際には、ページ上端の4ラスタのC+SのイメージデータのみエンジンI/F回路C 0207に転送する。ページ最後の処理の際には、ページ下端の4ラスタのデータC+Sと、対応するハーフトーンデータAC、ABをエンジンI/F回路C 0207に転送する。ページ先頭の処理の際には、ハーフトーンデータは転送しない。
【0019】
図5に、転送される拡張ハーフトーン領域のデータに関するメインメモリ上の模式図を示す。ハーフトーンデータは、図に示すように、先頭から順に8ラスタずつ転送される。ハーフトーンマトリクスのサイズYが8の倍数の場合は、Yラスタの最後の8ラスタのデータを転送した後、先頭の8ラスタに戻る。ハーフトーンマトリクスのサイズYが8の倍数でない場合は、Yラスタの下端から7ラスタの拡張領域に跨る領域から8ラスタのデータを転送し、先頭に戻る。このようにすることにより、ハーフトーンマトリクスの境界を跨ってハーフトーンデータの転送を行う際にも、データが連続アドレスに存在するので、1回のDMA転送で行うことが可能となる。ここで、転送処理を行うイメージデータの8ラスタの最初のラスタをVi、マトリクスデータの8ラスタの最初のラスタをVmとすると、Vmは以下の式で簡単に求められる。
【0020】
Vm = Vi mod Y
図6にエンジンI/F回路C 0207の構成を示す。M 0208、Y 0209、K 0210もC 0207と同じものである。図7にイメージデータバッファ0302、図8にハーフトーンデータバッファ0303、図9に画像処理回路0304の構成を示す。
【0021】
エンジンI/F回路C 0207は、バスI/F回路0301、イメージバッファ0302、ハーフトーンバッファ0303、画像処理回路0304、プリントI/F回路0305から構成される。バスI/F回路0301は、汎用バス0213から受け取ったイメージデータC+Sと拡張ハーフトーンデータA/Bをそれぞれ、イメージバッファ0302とハーフトーンバッファ0303に振り分けて転送する。
【0022】
イメージバッファ0302は、図7に示すように、8ラスタのイメージバッファF 0401、G 0402、H 0403とセレクタU 0404、L 0405から構成され、8ラスタ毎に送られてくるイメージデータを、F 0401、G 0402、H 0403、F 0401、・・・というように順番に格納し、セレクタU 0404、L 0405はそれぞれ、F/G、G/H、H/F、F/G、・・・という組み合わせで順番に読み出すバッファを2つ選択して合計16ラスタのイメージバッファとし、それぞれ8ラスタのイメージデータとして出力する。残った一つのバッファは、他の2つのバッファがデータを出力している間に、次の8ラスタのデータを受信する。
【0023】
ハーフトーンバッファ0303は、図8に示すように、8ラスタのハーフトーンバッファP 0501、Q 0502とセレクタ0503から構成され、8ラスタ毎に送られてくる拡張ハーフトーンデータを、P 0501、Q 0502、P 0501、・・・というように順番に格納し、セレクタ503はそれぞれ、P、Q、P、・・・というように順番に出力するバッファを選択し、合計8ラスタのハーフトーンデータとして出力する。出力に使用しないもう片方のバッファは、次の8ラスタのデータを受信する。
【0024】
画像処理回路0304は、イメージデータバッファ0601、ハーフトーンデータバッファ0602、像域分離回路0603、スムージング処理回路0604、ハーフトーン処理回路A 0605、ハーフトーン処理回路B 0606、属性データバッファ0607、印刷データ処理回路0608から構成されている。
【0025】
イメージデータバッファ0601はイメージバッファ0302から転送される上側8ラスタのイメージデータと下側8ラスタのイメージデータを併せて16ラスタの各画素8bitのイメージデータCと各画素2bitの属性データSに分離して出力する。
【0026】
ハーフトーンデータバッファ0602は、それぞれ8ラスタのハーフトーンデータA/Bを、それぞれハーフトーン処理回路A 0605/B 0606に転送する。
【0027】
像域分離回路0603は、イメージデータバッファ0601が出力する16ラスタのイメージデータのCのみを、中央の8ラスタ+上下2ラスタの合計12ラスタ受け取り、中央の8ラスタの各画素に対して5×5画素のデータから像域分離処理を行い、他の処理とタイミングを合わせて結果をセレクタ0608に出力する。
【0028】
スムージング処理回路0604は、イメージデータバッファ0601が出力する16ラスタのイメージデータのCのみを16ラスタ全て受け取り、中央の8ラスタの各画素に対して9x9画素のデータからスムージング処理を行い、他の処理とタイミングを合わせて結果をセレクタ0608に出力する。
【0029】
ハーフトーン処理回路A 0605/B 0606は、イメージデータバッファ0601が出力する16ラスタのイメージデータのCを中央の8ラスタのみと、ハーフトーンバッファ0303が出力する8ラスタのハーフトーンデータA/Bを受け取って、ハーフトーン処理を行い、他の処理とタイミングを合わせて結果をセレクタ0608に出力する。
【0030】
属性データバッファ0607は、イメージデータバッファ0601が出力する16ラスタのイメージデータのSを中央の8ラスタのみ受け取り、他の処理とタイミングを合わせてセレクタ0608に出力する。
【0031】
印刷データ回路0608は、各回路0603〜0607の出力結果に基づいて印刷データを生成し、プリントI/F回路0305に出力する。
【0032】
プリントI/F回路0305は、受け取った印刷データを、内部のプリントデータバッファに一旦格納し、プリンタエンジン0101の指示に基づいて印刷データを転送する。
【0033】
上記したように、本発明では、任意のマトリクスサイズのハーフトーン使用可能である、Nラスタずつ処理を行う画像処理装置に対してNラスタのハーフトーンデータを転送するシステムにおいて、ハーフトーン処理に必要なラスタの分だけ画像データとハーフトーンデータの転送を行う。使用するハーフトーンは水平方向X画素、垂直方向Yラスタのマトリクスとすると、ハーフトーンマトリクスの垂直方向サイズYが一度にハーフトーン処理を行うラスタ数Nの公約数になっていない場合は、Nラスタ分のハーフトーンマトリクスのデータを転送する際に、マトリクスの上端と下端のデータを転送する必要が発生する。
【0034】
この際に、ハーフトーンマトリクスを垂直方向にマトリクスの先頭のN−1ラスタのデータを付加して、垂直方向をY+N−1のサイズのマトリクスの拡張することにより、連続したデータとして転送することができる。
【符号の説明】
【0035】
0100:プリンタ、0101:プリンタエンジン、0102:プリンタコントローラ、0103:操作パネル、0201:CPU、0202:メモリ、0203:バスブリッジ、0204:HDD、0205:操作パネル、0206:I/F回路、0207:エンジンI/F回路C、0208:エンジンI/F回路M、0209:エンジンI/F回路Y、0210:エンジンI/F回路K、0211:CPUバス、0212:メモリバス、0213:汎用バス。
【先行技術文献】
【特許文献】
【0036】
【特許文献1】特開平06−180758号公報

【特許請求の範囲】
【請求項1】
ネットワーク等を介してデータを入力し、そのデータから画像データを生成する第1の画像処理装置と、Mラスタの入力ラインバッファと、Nラスタの出力ラインバッファと(M≧N>1)、Nラスタのハーフトーンデータバッファと演算装置を備えた、プリンタ等の印刷画像生成のためにハーフトーン処理を行う第2の画像処理装置とを備え、第1の画像処理装置は、生成されたMラスタの画像データと、水平方向X画素、垂直方向Yラスタからなるハーフトーンマトリクスの対応する位置のNラスタのハーフトーンデータを、第2の画像処理装置に転送して、Nラスタのハーフトーン処理済みデータを出力する画像処理システムにおいて、
前記第1の画像処理装置は、指定された水平方向X画素、垂直方向Yラスタのマトリクスを、垂直方向について、先頭からN−1ラスタ分のデータを最後のラスタに加えて、垂直方向Y+N−1ラスタのマトリクスに拡張して保持することを特徴とする画像処理システム。

【図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


【公開番号】特開2010−191836(P2010−191836A)
【公開日】平成22年9月2日(2010.9.2)
【国際特許分類】
【出願番号】特願2009−37424(P2009−37424)
【出願日】平成21年2月20日(2009.2.20)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】