JP4323618B2 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP4323618B2
JP4323618B2 JP15281299A JP15281299A JP4323618B2 JP 4323618 B2 JP4323618 B2 JP 4323618B2 JP 15281299 A JP15281299 A JP 15281299A JP 15281299 A JP15281299 A JP 15281299A JP 4323618 B2 JP4323618 B2 JP 4323618B2
Authority
JP
Japan
Prior art keywords
encoding
band
raster
decoding
data
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.)
Expired - Fee Related
Application number
JP15281299A
Other languages
English (en)
Other versions
JP2000335021A (ja
Inventor
徹 若菜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP15281299A priority Critical patent/JP4323618B2/ja
Priority to US09/579,502 priority patent/US7271923B1/en
Publication of JP2000335021A publication Critical patent/JP2000335021A/ja
Priority to US11/168,508 priority patent/US7599079B2/en
Application granted granted Critical
Publication of JP4323618B2 publication Critical patent/JP4323618B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/12Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by photographic printing, e.g. by laser printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • G06K15/1861Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • G06K15/1861Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time
    • G06K15/1863Generation of the printable image characterized by its workflow taking account of a limited available memory space or rasterization time by rasterizing in sub-page segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Optics & Photonics (AREA)
  • Record Information Processing For Printing (AREA)
  • Storing Facsimile Image Data (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、バンド単位にラスタライズ機能をもち描画を行なう画像処理装置及び画像処理方法に関するものである。
【0002】
【従来の技術】
従来、この種の画像処理装置としては、例えば、レーザービームプリンタなどの、いわゆるページプリンタと呼ばれる装置がある。これらの装置では、1ページ分のラスタデータをラスタメモリ上に保持して画像処理を行なっていた。このような画像処理装置としてのラスタデータは、テキストだけでなく、単なる図形から写真のような画像まであらゆる画像を扱うものである。
【0003】
また、これらの画像処理装置は、近年解像度が向上し、例えば600dpiの解像度で、A4サイズ1ページ分生成するためには4MByteものメモリを必要とする。そして現在も解像度はますます増大する傾向にあり、さらに従来1画素2階調(1ビット)で表現されていた階調も、16階調(4ビット)〜256階調(8ビット)へと向上しつつあり、ますます膨大なラスタメモリを必要とするようになってきている。なおかつ最近ではカラーを扱う場合も多くなりモノクロに比ベYMCK空間の場合は4プレーン分さらに必要となりますますメモリサイズが膨大になってきた。
【0004】
このようなメモリの増大によるコストアップを抑えるため、様々な省メモリ技術が提案されている。例えば1ページ分のラスタデータをラスタメモリ上にもつのではなく、ラスタメモリ上にバンド毎にラスタデータを符号化してもちラスタメモリ量を抑える方法がとられてきている。
【0005】
【発明が解決しようとする課題】
しかしながら、上記方法をとる場合に、復号方式によっては、プリンタエンジンに対しビデオ転送を行う前に、復号されたデータを一旦バッファに格納する必要のあるものがある。データアンダーフローを起こすことなくエンジンに出力するため、この復号方式では、一つのバンドをバッファからプリンタエンジンに対してビデオ転送している間に、次のバンドを他のバッファに復号するという並列処理を行なう必要がある。つまりワークバッファが2つ分必要となり、ワークバッファを全く必要としない復号方式をとる場合に比べ、余分なメモリが必要となってしまい、符号化データを格納するメモリ領域が減少してしまうという問題点があった。
【0006】
本発明は上記の従来技術の課題を解決するためになされたもので、その目的とするところは、復号方式が異なっても一定のワークバッファで画像転送処理を行なうことができ、メモリを物理的に増加させることなく高品質の画像処理装置及び画像処理方法を提供することにある。
【0007】
【課題を解決するための手段】
上記目的を達成するため本発明に係る画像形成装置にあっては、
所定高さのバンド単位で画像データの符号化を行なう第1符号化手段(例えば図15、図16の1401)と、
前記第1符号化手段によって生成された符号化データを復号する第1復号手段(例えば図15、図16の1404)と、
前記第1復号手段によって復号された1バンド分のラスタデータを格納するバンドラスタ記憶領域(例えば図15、図16の1403)を含む記憶手段と、
前記バンドラスタ記憶領域に格納されたラスタデータを、印刷モードに応じて選択された1つの符号化方式で符号化する第2符号化手段(例えば図15、図16の1501)と、
前記第2符号化手段で符号化されたデータを、復号後のラスタ画像データをリアルタイムにプリンタエンジンに転送するリアルタイム復号方式、又は、復号後のラスタ画像データをプリンタエンジンに転送する前に一旦前記バンドラスタ領域に展開する非リアルタイム復号方式で復号する第2復号手段(例えば図15、図16の1201)と、
を有し、
前記第1符号化手段での符号化を行なう前に、前記第2符号化手段で採用する符号化方式を選択し、前記非リアルタイム復号方式に対応した符号化方式が選択された場合には、前記リアルタイム復号方式に対応した符号化方式が選択された場合に比し、前記第1符号化手段で符号化を行なう1単位としてのバンド高さを半分にすることを特徴とする。
また、本発明にかかる画像処理方法にあっては、
入力画像データをバンド毎に符号化して1頁分の符号化データを格納した後、該符号化データを復号しつつプリンタエンジンに転送する画像処理方法であって、
所定高さのバンド単位で画像データの符号化を行なう第1符号化工程と、
前記第1符号化工程によって生成された符号化データをバンド単位で復号し、1バンド分のラスタデータをバンドラスタ記憶領域に格納する第1復号工程と、
前記バンドラスタ記憶領域に格納されたラスタデータを、印刷モードに応じて選択された1つの符号化方式で符号化する第2符号化工程と、
前記第2符号化工程で符号化されたデータを、復号後のラスタ画像データをリアルタイムにプリンタエンジンに転送するリアルタイム復号方式、又は、復号後のラスタ画像データをプリンタエンジンに転送する前に一旦前記バンドラスタ領域に展開する非リアルタイム復号方式で復号する第2復号工程と、
を有し、
前記第1符号化工程での符号化を行なう前に、前記第2符号化工程で採用する符号化方式を選択し、前記非リアルタイム復号方式に対応した符号化方式が選択された場合には、復号後のラスタ画像データを前記記憶工程に展開せずリアルタイムにプリンタエンジンに転送するリアルタイム復号方式に対応した符号化方式が選択された場合に比し、前記第1符号化工程で符号化を行なう1単位としてのバンド高さを半分にすることを特徴とする。
上記目的を達成するため、本発明に係る記憶媒体は、コンピュータが読込み実行することで、上記画像処理方法を実現するプログラムを格納した。
【0008】
【発明の実施の形態】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素の相対配置、数式、数値等は、特に特定的な記載がない限りは、この発明の範囲をそれらのみに限定する趣旨のものではない。
(一実施の形態)

[構成]
図1は、本発明の一実施の形態としてのレーザビームプリンタ(以下、LBPと略す)の内部構造を示す断面図である。このLBPは不図示のデータ源から文字パターンの登録や定型書式(フォームデータ)などの登録が行える。図において、1000はLBP本体であり、外部に接続されているホストコンピュータから供給される文字情報(文字コード)やフォーム情報あるいはマクロ命令などを入力して記憶するとともに、それらの情報に従って対応する文字パターンやフォームパターンなどを生成し、記録媒体である記録紙上に像を形成する。1012は操作のためのスイッチおよびLED表示器などが配されている操作パネル、1001はLBP1000全体の制御およびホストコンピュータから供給される文字情報などを解析するプリンタ制御ユニットである。この制御ユニット1001は、主に文字情報を対応する文字パターンのビデオ信号に変換してレーザドライバ1002に出力する。レーザドライバ1002は半導体レーザ1003を駆動するための回路であり、入力されたビデオ信号に応じて半導体レーザ1003から発射されるレーザ光1004をオンオフ切り替えする。レーザ1004は回転多面鏡1005で左右方向に振られ静電ドラム1006上を走査する。これにより、静電ドラム1006上には文字パターンの静電潜像が形成される。この潜像は、静電ドラム1006周囲の現像ユニット1007により現像された後、記録紙に転送される。この記録紙にはカットシートを用い、カットシート記録紙はLBP1000に装着した用紙カセット1008に収納され、給紙ローラ1009および搬送ローラ1010と1011とにより装置内に取り込まれて、静電ドラム1006に供給される。
【0009】
図2は、LBP1000に備えられた制御ユニット1001の内部構成を示すブロック図である。
【0010】
2001はホストコンピュータなどの外部機器を示し、2003はアドレスデータバスを示し、2004はバッファ部を含むホストI/F、2005は制御ユニットを制御するCPU、2006はコントローラ制御などを行なうプログラムの格納されているROM、2007はCPUにより制御されるDMA、2008はパネル部、2009は2011のエンジンに送るためのデータを格納しておくための出力バッファ部を含むI/F回路、2010はRAMを示している。
【0011】
[前提処理技術]
図14のブロック図を用いて本発明の前提となる画像処理技術の説明を行う。
【0012】
まず始めに、プリンタ1000の制御部1001は、ホストI/F2004に外部機器2001によって生成されたページ記述言語(PDL)で記述された画像データを入力する。
【0013】
つぎに、ROM2006に格納されたバンド符号化処理プログラムにより、CPU2005がバンド符号化表現生成部1401として機能し、外部機器2001から入力されたページ記述言語をバンド単位に分割されたバンド符号化表現情報に変換し、RAM2010に確保されているバンド符号化領域1402に格納する。ここでバンド符号化表現情報とは、バンド単位に分割された「ビットマップ」、「ランレングス」、「台形」、「ボックス」、「高速境界符号化されたビットマップ」などの描画オブジェクトと背景パターン、および、それらをラスタメモリに描画する際の描画論理の総称である。なお、このバンド符号化表現情報の詳細については、特開平6−87251号公報に開示されている。
【0014】
つぎに、バンド符号化表現情報をレンダー1404を用いてバンド単位にレンダリングし、バンドラスタ領域1403に格納する。
【0015】
レンダリングしたラスタデータをバンドラスタ領域に展開したら、始めのバンドを転送部1405を介してエンジン2011に送り、出力する。そのバンドのラスタデータを出力している間に、次のバンドのラスタデータをもう一つのバンドラスタ領域1403に展開する。このように交互にバンドラスタ領域に展開、転送を行うことによりプリンタエンジンからデータアンダーフローを起こすことなく出力できる。さらに、転送(印刷)動作を行なうと同時に、次のページのバンド符号化表現を生成する。
【0016】
しかし、画像データに複雑な描画オブジェクトが多く、バンド符号化領域1402が一杯となり、バンド符号化表現情報として全ての描画オブジェクトを格納できない場合がある。例えば、バンド符号化領域中の1つのバンドエリアをとってみても、そのバンドに描画されるべきオブジェクトのすべてが、格納されていない場合があり得る。この場合は、バンド符号化領域1402に全ての描画オブジェクトが存在しないので、前述のようにバンドラスタ領域1403にラスタ展開をすると出力できない描画オブジェクトができてしまう。
【0017】
[特徴のある処理技術]
上記問題を解決する為、符号化表現を一旦レンダリングし、再度、圧縮率の高い符号化方式で符号化し、全ての画像情報がバンド符号化領域に収まるようにする。このとき制御ユニット1001により以下のようなページ生成処理が行なわれる。
【0018】
図3は、ページ生成処理全体について示すフローチャートである。
【0019】
ステップS301において、ホストコンピュータなどの外部機器2001からホストI/F部2004に画像データが入力される。ここで、ホストI/F部2004から入力される画像データは、印刷画像のフルラスタ画像形式ではなく、ページ上のオブジェクトやオブジェクトの位置のみを指定するページ記述言語(PDL)のようなコンパクトなデータ形式であることが好ましいが、これ以外の画像データ形式であっても良い。
【0020】
ステップS302において、入力されたデータの印刷モードを解析し符号化方式の選択を行う。次にステップS303で符号化に対応する復号方式の調査を行い、更にステップS304において復号方式に応じたバンド高さ(幅)の設定を行う。ここでは、復号方式が非リアルタイム復号方式である場合に、バンド高さをリアルタイム復号方式の場合の半分にする。
【0021】
ここでリアルタイム復号方式とは、復号後にプリンタエンジンに対してビデオ転送を行う場合に、一旦復号データをワークバッファに格納するということなくビデオ転送できる方式と定義するものとする。また、バンドとは1ページ分のデータをいくつかの同じ大きさの短冊状に分割したものの総称とし、それぞれの分割された短冊状の高さをバンド高さと定義する。
【0022】
ステップS305〜S307については、ステップS304で設定されたバンド高さに基づいてページ生成・転送処理が行なわれる。
【0023】
ステップS303で調査の結果、リアルタイム復号方式で復号処理が行なわれる場合のページ生成・転送処理について図15に示す。
【0024】
入力されたPDLは、バンド符号化表現生成部1401においてバンド符号化表現に変換されバンド符号化領域1402に格納される。予め確保されたバンド符号化領域に全ての画像情報が記憶できない場合には、次にレンダー1404でバンド毎にレンダリングされバンドラスタ領域1403に格納される。バンドラスタ領域は、1バンド分のビットマップデータを格納できる領域となっている。ここでは、バンドラスタ領域1403とバンド符号化領域1401とを別々に表しているが、どちらも、RAM2010上の領域であり、バンドラスタ領域1403が大きければバンド符号化領域1401を圧迫することになる。この点は次の図16においても同様である。
【0025】
バンドラスタ領域1403に格納されたビットマップデータは、符号化部1501として機能するCPU2005において、S302で選択された方式で符号化される。符号化データは圧縮バンド領域1503に格納される。この圧縮バンド領域1503に格納したバンドについてのバンド符号化領域1402は順次解放される。圧縮バンド領域1503に1ページ分の符号化データが格納されると、次に復号部1502でバンド毎に復号し、復号後のビットマップデータを転送部1405を介して順次プリンタエンジンに転送する。
【0026】
ステップS303で調査の結果、非リアルタイム復号方式で復号処理が行なわれる場合のページ生成・転送処理について図16に示す。
【0027】
入力されたPDLは、バンド符号化表現生成部1401においてバンド符号化表現に変換されバンド符号化領域1402に格納される。この際、バンド高さをステップS303で設定された高さ、即ち、リアルタイム復号方式の半分の高さとする。
【0028】
予め確保されたバンド符号化領域に全ての画像情報が記憶できない場合には、次にレンダー1404でバンド毎にレンダリングされバンドラスタ領域1403に格納される。バンドラスタ領域は、1バンド分のビットマップデータを格納できる領域となっている。
【0029】
バンドラスタ領域1403に格納されたビットマップデータは、符号化部1501として機能するCPU2005において、S302で選択された方式で符号化される。符号化データは圧縮バンド領域1503に格納される。
【0030】
圧縮バンド領域1503に1ページ分の符号化データが格納されると、次に復号部1502でバンド毎に復号し、バンドラスタ1403に展開する。途中で途切れることなくプリンタエンジンにビットマップデータを転送するためには、バンドラスタは2バンド分必要であり、1バンド分のバンドラスタにビットマップデータを展開しながら、もう1バンド分のバンドラスタからビットマップデータを順次プリンタエンジンに転送する。つまり、2つのバンドラスタをダブルバッファとして用いて並列処理するが、予めバンド高さを半分に設定しているので、リアルタイム復号方式を用いて復号処理を行なう場合に比して、必要なバンドラスタ領域が増えることはなく、他のメモリ領域を圧迫しない。
【0031】
以下に、ステップS302〜S304、S306〜S307の各処理について説明する。
【0032】
[符号化方式の選択]
図4は符号化方式の選択処理を詳細に示すフローチャートである。
【0033】
ステップS401においてモードの調査を行う。この場合のモードとは、これから印刷するデータがカラーモード、モノクロモード、イメージモードなどのモードに分けられているものとする。もちろんカラーモードはカラープリンタの場合のみ選択可能である。ステップS401でのモードの調査でモードがイメージならばステップS402において符号化方式1を選択し、ステップS405において符号化方式を符号化方式1に決定する。
【0034】
同様にステップS401でのモード調査でモードがカラーならステップS403において符号化方式2を選択し、ステップS405において符号化方式を符号化方式2に決定する。さらにステップS401でのモード調査でモードがモノクロならステップS404において符号化方式を符号化方式3を選択し、ステップS405において符号化方式を符号化方式3に決定する。
【0035】
ただしイメージモードとカラーモード又はモノクロモードの条件が重なった場合は、イメージモードが他のモードよりもモード選択の優先度をもっているものとする。そしてモードごとの符号化方式決定が終了したら、ステップS406において符号化方式の選択の処理を終了する。
【0036】
[復号方式の調査]
図5は復号方式の調査処理を詳細に示すフローチャートである。
【0037】
ステップS501において図3のステップS302において選択した符号化方式の獲得を行う。ステップS502においてステップS501で獲得した符号化方式に対しての復号方式としてリアルタイム復号方式が存在するかどうかを調査する。
【0038】
ステップS502でリアルタイム復号方式が存在すると判断されたなら、ステップS503において復号方式をリアルタイム復号に設定する。これとは逆にステップS502でリアルタイム復号が存在しないと判断されたなら、復号方式を非リアルタイム復号方式に設定する。復号方式が設定されると処理が終了する。
【0039】
[バンド高さの設定]
図6はバンド高さの設定処理を詳細に示すフローチャートである。
【0040】
通常、バンド高さは1ページ分のデータを格納する領域に対しての相対関係で決まるものであり、高さが大きい方がバンド同士の境界ラスタが少なく、重複するデータが少なくなる為、メモリ効率が高いものとして知られている。ここではバンド高さは“H”と決定されたものとする。
【0041】
ステップS601において決定されているバンド高さ(H)を獲得する。
【0042】
ステップS602において、図3のステップS303で調査した復号方式を獲得する。
【0043】
ステップS603において、ステップS602で獲得した復号方式が、非リアルタイム復号なら、ステップS604に進みバンド高さを半分(1/2H)に設定する。逆にステップS602で獲得した復号方式がリアルタイム復号なら、ステップS605に進みバンド高さをそのままの値(H)で設定する。
【0044】
そしてバンド高さの設定の処理系は終了する。
【0045】
[符号化処理]
バンド符号化表現ではバンド符号化領域に画像情報が格納しきれない場合、図7のような処理を行なうことにより符号化ページの生成を行なう。
【0046】
図7は、符号化ページの生成処理を詳細に示すフローチャートである。
【0047】
ステップS701においてワークメモリのアロケートを行う。ここでいうワークメモリとは復号されたビットマップデータを格納するバンドラスタ領域のことであり、図3のステップS304において決定したバンド高さに比例して生成されたバンドと同じ大きさのメモリ量である。ステップS702において、バンド数を示す“n”を0に初期化する。なお“n”は、
0<=n<=n_max
※ただし、n_maxは最大バンド番号で整数とする。
を満たす整数とする。ステップS703においてカレントバンド番号を示す“n”が“n_max”を越えているかどうか調査する。もしも“n_max”を越えているなら全バンドの処理が終了したものと判断し、ステップS708においてこの処理系を終了する。ステップS703において、カレントバンド番号“n”が“n_max”を越えていないなら、ステップS704に進む。
【0048】
ステップS704において、図3のステップS305のバンド符号化表現をステップS701で獲得したワークメモリへレンダリングする。
【0049】
次にステップS705において、図3のステップS302で選択された符号化方式を用いてステップS701で獲得したワークメモリにステップS704でレンダリングされたビットマップデータを符号化する。
【0050】
ステップS706において、符号化されたデータを圧縮バンド領域1503へ格納する。
【0051】
ステップS707において、カレントバンド番号“n”を次のバンドへ(n=n+1)進める。
【0052】
再びステップS603に戻り上述の処理を繰り返して最終バンドまで行い、符号化ページの生成処理を終了する。
【0053】
[復号・転送処理]
図8は、復号・転送処理について詳細に示すフローチャートである。
【0054】
ステップS801において、図3のステップS303の復号方式の調査で選択された符号化方式がリアルタイム復号方式か、非リアルタイム復号方式か調べる。もしリアルタイム復号方式ならステップS803に進みリアルタイム復号処理を行い、バンド復号方式ならステップS802に進みバンド復号処理を行う。
【0055】
図9は、リアルタイム復号処理を詳細に説明するフローチャートである。
【0056】
ステップS901において復号方式をリアルタイム復号方式の選択をする。ステップS802においてカレントバンド番号“n”を0に初期化する。なお“n”は、
0<=n<=n_max
※ただし、n_maxは最大バンド番号で整数とする。
を満たす整数とする。ステップS903において、カレントバンド番号“n”が“n_max”を越えているかどうかを調査する。もし越えているなら、全バンド分の復号が終了したものと判断しステップS906に進み、リアルタイム符号化処理を終了する。逆にステップS903でカレントバンド番号“n”が”“n_max”を越えていないならステップS904に進む。
【0057】
ステップS904において、“n”バンド目の符号化データを復号しながら、ビデオ信号に変換しプリンタエンジンに転送し、当該バンドの復号・転送を行う。
【0058】
ステップS905において、カレントバンド番号“n”を次のバンド“n=n+1”に進める。
【0059】
そしてステップS903に戻り、上記処理同様に最終バンドまで処理を行い、リアルタイム復号処理が終了し、復号・転送処理が終了する。
【0060】
一方図8のステップS801で復号方式が非リアルタイム復号方式ならステップS802において、非リアルタイム復号処理を行う。非リアルタイム復号処理の詳細については、図10のフローチャートを用いて説明する。
【0061】
ステップS1001において、復号方式を非リアルタイム復号方式の選択を行う。次にステップS1002においてバンド処理を行う。バンド処理の詳細な説明は図11のフローチャートを用いて行う。
【0062】
ステップS1101において、2バンド分のワークメモリを獲得する。これは図7のステップS701で獲得したワークメモリの2倍の大きさであるが、リアルタイム復号時に獲得したワークメモリのサイズと同じサイズである(1/2H×2)。つまりバンド高さを半分にしたため、ワークメモリ自体の大きさはリアルタイム復号、非リアルタイム復号のいずれの場合も差はなくなっている。そして、それぞれのワークメモリを、ワークメモリ1、ワークメモリ2と呼ぶことにする。
【0063】
まずステップS1102において、0バンド目の符号化データを復号しワークメモリ1に格納する。
【0064】
ステップS1103において、カレント番号“n”を1に初期化する。
【0065】
なお“n”は、
1<=n<=n_max
※ただし、n_maxは最大バンド番号で整数とする。
を満たす整数とする。
【0066】
ステップS1104において、カレントバンド番号“n”が最終バンド“n_max”を越えていないかどうか調査する。もしも越えていなければ、ステップS1105に進む。
【0067】
ステップS1105において、“n−1”バンド目をワークメモリ1よりビデオ信号に変換し、プリンタエンジンに転送し“n−1”バンド目の復号・転送処理を行う。最初は、ステップS1102で復号した0バンド目がこれに該当する。この処理と並列して“n”バンド目を復号してワークメモリ1に復号データを格納する。最初は、1バンド目の符号化データを復号し格納する。
【0068】
ステップS1106に進み、カレントバンド番号“n”を次のバンド番号(n=n+1)に進める。
【0069】
これらの処理を図式化したものが図12及び図13である。
【0070】
まず図12のワークメモリ1に既に復号されている“n”バンド目の復号データをビデオ信号に変換しプリンタエンジンに転送する。その間に“n+1”バンド目の符号化データ復号しワークメモリ2に格納する。
【0071】
次に図13に進み、図12でワークメモリ1に復号されたデータを同様にビデオ信号化に変換しプリンタエンジンに転送する。その間に既にビデオ信号化して“n”バンド目のデータは不要になったのでワークメモリ1に“n+2”バンド目の復号を行う。
【0072】
この図12、図13の処理を最終バンドまで続ける。
【0073】
なおこの処理において、片方のワークメモリからプリンタエンジンにビデオ転送が終了するまでに、別のワークメモリへの復号は必ず終了するものとする。
【0074】
次にステップS1104に戻り上記処理を最終バンドまで続ける。
【0075】
ステップS1104で最終バンドまで終了したら復号・転送処理を終了する。
【0076】
(他の実施の形態)
上記実施の形態は、モードの選択にイメージ、カラー、モノクロの3種類のみの場合を扱ったが、それ以外の場合であっても構わない。
【0077】
上記実施の形態は、3種類の符号化方式を用いた場合を扱ったが、符号化方式が何種類あっても構わない。
【0078】
上記実施の形態は、バンド処理において2バンド分で処理を行う場合を扱ったが、2バンド以上あった場合でも構わない。
【0079】
上記実施の形態は、符号化時、復号時にワークメモリをアロケートする場合扱ったが一定の領域が用意されている場合でも構わない。
【0080】
上記実施の形態は、バンド数は2バンド以上の場合を扱ったが2バンド未満の場合であっても構わない。
【0081】
上記実施の形態では、モード選択において、イメージモードとカラーモード又はモノクロモードの条件が重なった場合、イメージモードを優先的にモード選択の項目として扱ったが、もちろんこれ以外の場合であってもよい。
【0082】
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0083】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0084】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0085】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した(特に図3、図6に示す)フローチャートに対応するプログラムコードが格納されることになる。
【0086】
【発明の効果】
本発明により、復号方式が異なっても一定のワークバッファで画像転送処理を行なうことができ、メモリを物理的に増加させることなく高品質の画像処理装置及び画像処理方法を提供することが可能となった。
【図面の簡単な説明】
【図1】本発明の一実施の形態としての画像処理装置の内部構造を示す概略図である。
【図2】画像処理装置のプリンタ制御ユニットの内部構成を示すブロック図である。
【図3】画像処理装置におけるページ生成処理全体の流れを示すフローチャートである。
【図4】画像処理装置における符号化方式選択処理の流れを示すフローチャートである。
【図5】画像処理装置における復号方式の調査処理の流れを示すフローチャートである。
【図6】画像処理装置におけるバンド高さ設定処理の流れを示すフローチャートである。
【図7】画像処理装置における符号化ページの生成処理の流れを示すフローチャートである。
【図8】画像処理装置における復号・転送処理の流れを示すフローチャートである。
【図9】画像処理装置におけるリアルタイム復号処理の流れを示すフローチャートである。
【図10】画像処理装置における非リアルタイム復号処理の流れを示すフローチャートである。
【図11】画像処理装置における2バンド並列処理の流れを示すフローチャートである。
【図12】画像処理装置における2バンド並列処理を説明するブロック図である。
【図13】画像処理装置における2バンド並列処理を説明するブロック図である。
【図14】本発明の前提となる画像処理技術を説明するブロック図である。
【図15】本発明の実施の形態としての画像処理技術を説明するブロック図である。
【図16】本発明の実施の形態としての画像処理技術を説明するブロック図である。
【符号の説明】
1000 LBP本体
1001 プリンタ制御ユニット
1002 レーザドライバ
1003 半導体レーザ
1004 レーザ光
1005 回転多面鏡
1006 静電ドラム
1007 現像ユニット
1008 用紙カセット
1009 給紙ローラ
1010 搬送ローラ
2001 外部装置
2003 アドレス・データバス
2004 ホストI/F
2005 CPU
2006 ROM
2007 DMA
2008 パネル部
2009 I/F回路部
2010 RAM
2011 プリンタエンジン

Claims (5)

  1. 所定高さのバンド単位で画像データの符号化を行なう第1符号化手段と、
    前記第1符号化手段によって生成された符号化データを復号する第1復号手段と、
    前記第1復号手段によって復号された1バンド分のラスタデータを格納するバンドラスタ記憶領域を含む記憶手段と、
    前記バンドラスタ記憶領域に格納されたラスタデータを、印刷モードに応じて選択された1つの符号化方式で符号化する第2符号化手段と、
    前記第2符号化手段で符号化されたデータを、復号後のラスタ画像データをリアルタイムにプリンタエンジンに転送するリアルタイム復号方式、又は、復号後のラスタ画像データをプリンタエンジンに転送する前に一旦前記バンドラスタ領域に展開する非リアルタイム復号方式で復号する第2復号手段と、
    を有し、
    前記第1符号化手段での符号化を行なう前に、前記第2符号化手段で採用する符号化方式を選択し、前記非リアルタイム復号方式に対応した符号化方式が選択された場合には、前記リアルタイム復号方式に対応した符号化方式が選択された場合に比し、前記第1符号化手段で符号化を行なう1単位としてのバンド高さを半分にすることを特徴とする画像処理装置。
  2. 画像データをページ記述言語で入力する入力手段を更に備えることを特徴とする請求項に記載の画像処理装置。
  3. 前記符号化表現生成手段は、前記ページ記述言語を、ビットマップオブジェクト、ランレングスオブジェクト、台形オブジェクト、ボックスオブジェクト、固定境界符号オブジェクトの少なくとも1つを含む符号化表現に変換することを特徴とする請求項に記載の画像処理装置。
  4. 入力画像データをバンド毎に符号化して1頁分の符号化データを格納した後、該符号化データを復号しつつプリンタエンジンに転送する画像処理方法であって、
    所定高さのバンド単位で画像データの符号化を行なう第1符号化工程と、
    前記第1符号化工程によって生成された符号化データをバンド単位で復号し、1バンド分のラスタデータをバンドラスタ記憶領域に格納する第1復号工程と、
    前記バンドラスタ記憶領域に格納されたラスタデータを、印刷モードに応じて選択された1つの符号化方式で符号化する第2符号化工程と、
    前記第2符号化工程で符号化されたデータを、復号後のラスタ画像データをリアルタイムにプリンタエンジンに転送するリアルタイム復号方式、又は、復号後のラスタ画像データをプリンタエンジンに転送する前に一旦前記バンドラスタ領域に展開する非リアルタイム復号方式で復号する第2復号工程と、
    を有し、
    前記第1符号化工程での符号化を行なう前に、前記第2符号化工程で採用する符号化方式を選択し、前記非リアルタイム復号方式に対応した符号化方式が選択された場合には、復号後のラスタ画像データを前記記憶工程に展開せずリアルタイムにプリンタエンジンに転送するリアルタイム復号方式に対応した符号化方式が選択された場合に比し、前記第1符号化工程で符号化を行なう1単位としてのバンド高さを半分にすることを特徴とする画像処理方法。
  5. コンピュータが読込み実行することで、請求項4に記載の画像処理方法を実現するプログラムを格納した記憶媒体。
JP15281299A 1999-05-31 1999-05-31 画像処理装置及び画像処理方法 Expired - Fee Related JP4323618B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP15281299A JP4323618B2 (ja) 1999-05-31 1999-05-31 画像処理装置及び画像処理方法
US09/579,502 US7271923B1 (en) 1999-05-31 2000-05-30 Image processing using processing by bands and fixed-size work buffer
US11/168,508 US7599079B2 (en) 1999-05-31 2005-06-29 Image processing using processing by bands and fixed-size work buffer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15281299A JP4323618B2 (ja) 1999-05-31 1999-05-31 画像処理装置及び画像処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2009097383A Division JP4474487B2 (ja) 2009-04-13 2009-04-13 画像処理装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JP2000335021A JP2000335021A (ja) 2000-12-05
JP4323618B2 true JP4323618B2 (ja) 2009-09-02

Family

ID=15548704

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15281299A Expired - Fee Related JP4323618B2 (ja) 1999-05-31 1999-05-31 画像処理装置及び画像処理方法

Country Status (2)

Country Link
US (2) US7271923B1 (ja)
JP (1) JP4323618B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4134659B2 (ja) * 2002-09-30 2008-08-20 ブラザー工業株式会社 画像形成装置及び画像形成方法
JP4396670B2 (ja) * 2006-07-24 2010-01-13 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、画像形成方法及びプログラム
JP4337885B2 (ja) * 2007-02-15 2009-09-30 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置及び画像形成方法
JP4501959B2 (ja) * 2007-05-10 2010-07-14 セイコーエプソン株式会社 画像処理装置および画像処理方法
JP5194952B2 (ja) * 2008-03-31 2013-05-08 ブラザー工業株式会社 データ処理装置
EP2474938B1 (en) * 2011-01-05 2018-12-26 Ricoh Company, Ltd. Image forming apparatus and image forming system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69230053T2 (de) * 1991-07-09 2000-03-30 Canon K.K., Tokio/Tokyo Verfahren und Vorrichtung für die Verarbeitung von Bildern
JP2911650B2 (ja) * 1991-07-09 1999-06-23 キヤノン株式会社 画像処理方法及び装置
EP0575134B1 (en) 1992-06-15 2000-02-23 Canon Kabushiki Kaisha Method and apparatus for printing according to a graphic language
US5471563A (en) * 1992-07-10 1995-11-28 Microsoft Corporation System and method for automatic resolution reduction
JP3554034B2 (ja) * 1994-09-02 2004-08-11 キヤノン株式会社 カラー印刷装置及びその方法
JPH10147017A (ja) * 1996-11-18 1998-06-02 Canon Inc 印刷装置及びデータ制御方法

Also Published As

Publication number Publication date
JP2000335021A (ja) 2000-12-05
US20050254713A1 (en) 2005-11-17
US7599079B2 (en) 2009-10-06
US7271923B1 (en) 2007-09-18

Similar Documents

Publication Publication Date Title
JP3809209B2 (ja) 印刷装置及びデータ制御方法
JP4323618B2 (ja) 画像処理装置及び画像処理方法
JP3902907B2 (ja) 画像処理装置及び方法と画像形成装置
EP0575134B1 (en) Method and apparatus for printing according to a graphic language
JPH1166327A (ja) 画像処理方法および画像処理装置および記録媒体
JP4474487B2 (ja) 画像処理装置及び画像処理方法
JP4461361B2 (ja) 描画処理方法およびプログラム並びに描画命令出力装置および画像形成装置
JP3728183B2 (ja) 印刷制御装置および描画制御装置およびデータ処理方法および記憶媒体
JP4336470B2 (ja) 描画制御装置および描画制御方法およびプログラム
JP3203660B2 (ja) 画像記録装置
JPH11235849A (ja) 画像処理装置および画像処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP3727962B2 (ja) 印刷装置及び印刷方法
JP3204136B2 (ja) 画像処理装置及び圧縮処理方法
JP3792881B2 (ja) 画像処理装置および画像処理装置のデータ処理方法およびコンピュータが読み出し可能なプログラムを格納した記憶媒体
JP3683667B2 (ja) プリンタコントローラ
JPH10151815A (ja) 印刷処理装置
JPH10147016A (ja) 画像処理装置及び方法
JP2006159458A (ja) 画像出力装置
JP2006235932A (ja) 画像処理システム
JPH08216462A (ja) 印刷装置およびその制御方法
JP2737880B2 (ja) 文字処理装置および方法
JP2000225735A (ja) 画像印刷装置
JP2005041066A (ja) 印刷装置
JP2000339128A (ja) プリンタコントロール装置
JP2002237952A (ja) 画像形成装置、画像形成システム、符号化制御方法及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041213

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20041213

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20041213

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080729

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081114

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090113

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090331

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090427

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: 20090518

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090605

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: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130612

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees