JP2000092315A - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JP2000092315A
JP2000092315A JP10254782A JP25478298A JP2000092315A JP 2000092315 A JP2000092315 A JP 2000092315A JP 10254782 A JP10254782 A JP 10254782A JP 25478298 A JP25478298 A JP 25478298A JP 2000092315 A JP2000092315 A JP 2000092315A
Authority
JP
Japan
Prior art keywords
data
binarization
unit
gradation
stored
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.)
Pending
Application number
JP10254782A
Other languages
English (en)
Inventor
Yuji Onozawa
雄二 小野澤
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP10254782A priority Critical patent/JP2000092315A/ja
Publication of JP2000092315A publication Critical patent/JP2000092315A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Abstract

(57)【要約】 【課題】 閾値データの読み出し回数を少なくすること
によって、ディザ法を使った2値化を高速に処理するこ
とを目的とする。 【解決手段】 2値化手段3bがエッジ計算手段3aで
求めた描画の開始/終了を表す座標値とスキャンライン
データとを使って、閾値記憶手段3cにあらかじめ記憶
された周期データと描画オブジェクトに与えられた階調
データとを比較して2値化を行い、その2値化結果を2
値化結果記憶手段3dにキャッシュしておく。描画オブ
ジェクトの階調データがコンスタントでかつ2値化結果
記憶手段3dにスキャンライン周期分2値化結果が記憶
されている場合、キャッシュされている2値化結果をシ
フト手段3eでシフトしたデータを繰り返し使用し、バ
ンドバッファ手段4へ書き込む。これにより、時間のか
かる閾値記憶手段3cからの読み出しがなくなり、高速
な2値化処理が可能になる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は画像処理装置に関
し、特に文字/図形/画像に対し所定の描画命令で記述
されているデータをビットマップに展開してプリンタ装
置などの2値記録装置へ出力する場合にディザ法を使っ
ての画像処理を高速に行う画像処理装置に関する。
【0002】
【従来の技術】ワープロや図形エディタなどで処理され
た文書は、プリンタ装置あるいはディスプレイ装置に出
力するために、ページ記述言語(PDL:Page D
escription Language)などに変換
される。PDLにおいて、画像はビット列を与えるコマ
ンドによって表現され、文字および図形はベクタデータ
を作成するコマンドによって表現されている。したがっ
て、プリンタなどの出力装置に出力する場合には、PD
Lを受け取ってそれぞれのコマンドを解釈し、出力装置
の解像度および色値に対応したビットマップデータを作
成することが必要になる。
【0003】こうした処理において、近年のカラープリ
ンタでは、高速化および高解像度化が進んできている。
一方、メモリ量の削減をはじめとするハードウェアのコ
ンパクト化も重要になってきている。このような相反す
ることがらを両立させる手法として、出力装置の解像度
相当のページメモリではなく、ページをスキャンライン
によって数十から数百の短冊上に分割したバンドと呼ば
れる単位のメモリ(バンドバッファ)を数個持ち、また
比較的単純な図形データをビットマップに展開生成する
ハードウェアを使って画像を出力することが行われ始め
ている。この場合、画像、文字、図形などは、ディスプ
レイリストなどリアルタイムにビットマップに変換でき
るような比較的単純で統一された中間データにあらかじ
め変換される。そして、ハードウェアがこの中間データ
をプリンタの出力装置に同期してビットマップ化し、バ
ンドバッファへの書き込みを行う。バンドバッファは、
このプリンタ装置に対するデータの同期のために使用さ
れるが、ハードウェアは平均的にプリンタ装置のデータ
消費速度よりも高速に中間データのビットマップデータ
への変換とバンドメモリへの書き込みとを行う必要があ
る。これを今後有望とされる1000dpi以上の高解
像度レーザビームプリンタなど、デジタル2値のプリン
タ装置に適応しようとすると、ハードウェアはさらに2
値化も高速に行わなくてはならない。
【0004】2値化の処理としては、ディザ法、濃度パ
ターン法、誤差拡散法などがよく知られている。ディザ
法は、濃淡画像の1画素をその画素の座標値に対応した
閾値と比較して2値化する手法であり、通常周期性があ
るので、閾値データはM×Mのマトリックスとして記憶
され、座標に応じて読み出して使用される。濃度パター
ン法は、ある1画素がその階調に応じたN×Nの2値パ
ターンデータへ置き換えられるものである。この方式で
は、各階調に対するパターンデータを記憶しておく必要
がある。誤差拡散法は、階調画素を2値化する際に生じ
た誤差に重みを付けて周辺の画素へ分配するもので、こ
れについては、重み係数を記憶しておくこと、および誤
差を計算し、累積することが必要となる。これらの方式
のそれぞれには特徴があるが、1000dpiを超える
ような高解像度のものでは比較的大きなサイズのディザ
法が画質の点で優れているとされている。ただし、この
ような大きなサイズのディザ法を使った2値化の場合に
は、メモリアクセスが必要な閾値データの読み出しに多
くの時間がかかるため、高速化しかつハードウェアの規
模を比較的コンパクトにするためには、ハードウェアの
工夫が必要である。
【0005】従来、ハードウェアを用いてディザ法によ
る2値化を高速にする、またはハードウェアの規模を比
較的コンパクトにする技術として、特開平1−2568
73号公報や特開平7−203204号公報などがあ
る。前者は、ディザパターン全体の記憶には、低速かつ
安価(小規模)なメモリ素子を用い、2値化処理中に必
要となったデータのみを高速(大規模)な書き換え可能
メモリに一時的に転送して、そこから閾値データを読み
出し、2値化処理させようというものである。これは高
速性とハードウェア規模の両立をねらったものである。
また、後者は、Wy×WxのディザマトリックスからN
x×Nyの部分のデータを読み出して、それらのNx×
Nyの部分のドットをハードウェアで並列処理すること
によって、高速にしようとするものであった。
【0006】
【発明が解決しようとする課題】ところで、各ドットに
対応した閾値データは常にメモリから読み出している
が、通常、メモリに対するリードライトはハードウェア
を使った計算処理に比べて1桁遅いとされている。した
がって、特に高速な処理が必要な場合には、高速なメモ
リを使用したとしても高速化と小回路規模化との両立に
は限界がある。これらを両立させるには、如何にメモリ
のリードライトの処理を減らすかが重要となる。
【0007】しかしながら、従来の場合は、中間データ
までの各ドットのビット数/色データが8ビットとする
と各閾値データも8ビット必要であるため、バンドバッ
ファに書き込むビット数の8倍のデータ量を閾値データ
として読み出す必要があった。したがって、閾値として
読み出すデータ量がボトルネックになって高速化できな
かったり、リアルタイム処理系を実現するためには並列
化を必要以上に大きくする必要があり、高速化かつハー
ドウェア規模の削減の改善効果が少なくなっているとい
う問題点があった。
【0008】本発明はこのような点に鑑みてなされたも
のであり、閾値データの読み出し回数を少なくすること
によって、ディザ法を使った2値化を高速に処理する画
像処理装置を提供することを目的とする。
【0009】
【課題を解決するための手段】本発明では上記問題を解
決するために、少なくとも文字/図形/画像のいずれか
の描画オブジェクトを含むページを記述した入力データ
を画像出力する画像処理装置において、前記入力データ
から各描画オブジェクトに対する描画領域を示す情報と
色情報とからなる中間データを生成する中間データ生成
手段と、前記中間データ生成手段で生成されたページ分
の中間データをバンド単位に分割して記憶する中間デー
タ記憶手段と、前記中間データ記憶手段からバンド単位
に受け取った中間データの各描画オブジェクトの描画領
域を示す情報からスキャンラインごとの描画の開始/終
了を表す0個以上の座標値の組み合わせデータを求める
エッジ計算手段と、2値化の際に描画オブジェクトに与
えられた階調と比較するために使用される周期的なデー
タを周期分だけあらかじめ記憶した閾値記憶手段と、前
記エッジ計算手段で求められた座標値の組み合わせデー
タとスキャンラインデータとを使って前記閾値記憶手段
から読み出したデータと描画オブジェクトに与えられた
階調データとの比較で2値化を行う2値化手段と、前記
2値化手段にて2値化された2値化結果を前記閾値記憶
手段の少なくともスキャンライン周期分記憶する2値化
結果記憶手段と、前記2値化結果記憶手段に記憶されて
いる2値化されたビットマップデータを複数バンド分記
憶するバンドバッファ手段と、描画オブジェクトに与え
られた階調データがコンスタントでかつ前記2値化結果
記憶手段にスキャンライン周期分2値化結果が記憶され
ている場合に、前記2値化結果記憶手段に記憶されてい
る2値化結果を繰り返し使用するべくシフト操作を行っ
て前記バンドバッファ手段へ書き込むときの位置合わせ
を行うシフト手段と、前記バンドバッファ手段からビッ
トマップデータを読み出してページ単位にビットマップ
情報を画像として出力する画像出力手段と、を備えてい
ることを特徴とする画像処理装置が提供される。
【0010】このような画像処理装置によれば、描画オ
ブジェクトを含むページを記述した入力データは中間デ
ータ生成部にて中間データに変換され、中間データ記憶
手段に記憶される。中間データの描画オブジェクトの描
画領域を示す情報はエッジ計算手段に渡されて描画の開
始/終了を表す座標値の組み合わせデータが求められ、
階調データは2値化手段に渡される。ここで、描画オブ
ジェクトに与えられた階調データがコンスタントでかつ
2値化結果記憶手段にスキャンライン周期分2値化結果
が記憶されている場合には、閾値記憶手段から読み出し
たデータと描画オブジェクトに与えられた階調データと
を比較してその結果で2値化を行うという2値化手段の
処理を省略して、2値化結果記憶手段にキャッシュされ
ている2値化結果をシフト手段によりシフトしたデータ
を繰り返し使用して、バンドバッファ手段へ書き込むよ
うにしている。これにより、画像領域を示す各エッジの
大きさが閾値のスキャンライン周期よりも大きく、かつ
階調がコンスタントな場合には、2値化処理を行わず
に、キャッシュしておいた2値化結果のデータをシフト
して使用するようにしたため、時間のかかる閾値記憶手
段からの読み出しがなくなり、高速に2値化結果を得る
ことができる。
【0011】また、本発明によれば、少なくとも文字/
図形/画像のいずれかの描画オブジェクトを含むページ
を記述した入力データを画像出力する画像処理装置にお
いて、前記入力データから各描画オブジェクトに対する
描画領域を示す情報と色情報とからなる中間データを生
成する中間データ生成手段と、同じ階調のオブジェクト
数をカウントしてカウント結果を中間データに出力する
オブジェクト数カウント手段と、前記中間データ生成手
段で生成されたページ分の中間データをバンド単位に分
割して記憶する中間データ記憶手段と、前記中間データ
記憶手段からバンド単位に受け取った中間データの各描
画オブジェクトの描画領域を示す情報からスキャンライ
ンごとの描画の開始/終了を表す0個以上の座標値の組
み合わせデータを求めるエッジ計算手段と、2値化の際
に描画オブジェクトに与えられた階調と比較するために
使用される周期的なデータをあらかじめ記憶した閾値記
憶手段と、前記エッジ計算手段で求められた座標値の組
み合わせデータとスキャンラインデータとを使って前記
閾値記憶手段から読み出したデータと描画オブジェクト
に与えられた階調データとの比較で2値化を行う2値化
手段と、前記2値化手段にて2値化された2値化結果を
前記閾値記憶手段の少なくともスキャンライン周期分記
憶するとともに描画オブジェクトに与えられた階調デー
タが2値化キャッシュ手段に記憶されている場合にその
データの対応する部分を記憶する2値化結果記憶手段
と、前記中間データに出力された各階調のオブジェクト
数カウント結果に基づき決められた階調については前記
閾値記憶手段のすべてのデータに対する2値化結果を記
憶する2値化キャッシュ手段と、2値化されたビットマ
ップデータを複数バンド分記憶するバンドバッファ手段
と、描画オブジェクトに与えられた階調データがコンス
タントでかつ前記2値化結果記憶手段にスキャンライン
周期分2値化結果が記憶されている場合に、前記2値化
結果記憶手段に記憶されている2値化結果を繰り返し使
用するべくシフト操作を行って前記バンドバッファ手段
へ書き込むときの位置合わせを行うシフト手段と、前記
バンドバッファ手段からビットマップデータを読み出し
てページ単位に前記ビットマップ情報を画像として出力
する手段と、を備えていることを特徴とする画像処理装
置が提供される。
【0012】このような画像処理装置によれば、描画オ
ブジェクトを含むページを記述した入力データは中間デ
ータ生成部にて中間データに変換され、オブジェクト数
カウント手段により同じ階調のオブジェクト数がカウン
トされ、使用頻度の高い階調データが検出される。その
階調データは、中間データの2値化に先立って、2値化
手段により2値化処理をし、2値化キャッシュ手段にキ
ャッシュしておく。ここで、描画オブジェクトに与えら
れた階調データが2値化キャッシュ手段に記憶されてい
る場合には、比較による2値化をすることなく、そのデ
ータの対応する部分を2値化キャッシュ手段から2値化
結果記憶手段に転送する。また、描画オブジェクトに与
えられた階調データがコンスタントでかつ2値化結果記
憶手段にスキャンライン周期分2値化結果が記憶されて
いる場合には、閾値記憶手段から読み出したデータと描
画オブジェクトに与えられた階調データとを比較してそ
の結果で2値化を行うことを省略して、2値化結果記憶
手段に記憶された2値化結果をシスト手段によりシフト
したデータを繰り返し使用して、バンドバッファ手段へ
書き込むようにする。これにより、画像領域を示す各エ
ッジの大きさが閾値のスキャンライン周期よりも大き
く、かつ階調がコンスタントな場合には、2値化を行わ
ずに、キャッシュしておいた2値化結果のデータをシフ
トして使用するようにしたことに加えて、中間データの
2値化処理の前に、オブジェクト数カウント手段により
検出された同じ階調の階調データについて2値化手段で
2値化処理して2値化キャッシュ手段にキャッシュして
おき、同じ階調のデータは、2値化を行わずに、キャッ
シュしておいたデータを利用するようにしたため、時間
のかかる閾値記憶手段からの読み出しがなくなり、高速
に2値化結果を得ることができる。
【0013】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して詳細に説明する。図1は本発明の画像処理装
置の動作原理を示す説明図である。本発明による画像処
理装置は、中間データ生成手段1と、中間データ記憶手
段2と、中間データ展開手段3と、バンドバッファ手段
4と、画像出力手段5とから構成され、中間データ展開
手段3は、エッジ計算手段3aと、2値化手段3bと、
閾値記憶手段3cと、2値化結果記憶手段3dと、シフ
ト手段3eと、マスク生成手段3fと、バンドバッファ
書き込み手段3gとを有している。
【0014】中間データ生成手段1は、少なくとも文字
/図形/画像のいずれかの描画オブジェクトを含むペー
ジを記述した入力データを受け付けて、各描画オブジェ
クトに対する描画領域を示す情報と色情報とからなる中
間データを生成する。この中間データ生成手段1で生成
されたページ分の中間データは、中間データ記憶手段2
にて、バンド単位に分割して記憶される。中間データ展
開手段3において、閾値記憶手段3cには、2値化の際
に描画オブジェクトに与えられた階調と比較するために
使用される周期的なデータが周期分だけあらかじめ記憶
されている。ここで、エッジ計算手段3aは、中間デー
タ記憶手段2に記憶された中間データをバンド単位に受
け取って、各描画オブジェクトの描画領域を示す情報か
らスキャンラインごとの描画の開始/終了を表す0個以
上の座標値の組み合わせデータを求める。2値化手段3
bは、エッジ計算手段3aで求められた座標値の組み合
わせデータとスキャンラインデータとを使って、閾値記
憶手段3cから読み出したデータと描画オブジェクトに
与えられた階調データとを比較し、その比較結果で2値
化を行う。2値化結果記憶手段3dは、少なくとも閾値
記憶手段3cのスキャンライン周期分記憶する容量を有
し、2値化手段3bにて2値化された2値化結果をキャ
ッシュする。シフト手段3eは、2値化結果記憶手段3
dに対してそのデータをバンドバッファ手段4へ書き込
むときの位置合わせのためのシフト操作を行う。マスク
生成手段3fは、バンドバッファ手段4へ書き込むため
のマスク情報を生成する。バンドバッファ書き込み手段
3gは、2値化結果記憶手段3dに記憶されたデータ
の、または2値化結果記憶手段3dに記憶されたデータ
およびマスク情報と対応するバンドバッファ手段4の位
置に既に書かれているデータとの論理演算結果の、バン
ドバッファ手段4への書き込みを行う。バンドバッファ
手段4は、2値化されたビットマップデータを複数バン
ド分記憶する容量を有し、あるバンドのビットマップデ
ータの書き込みと既に書き込まれたバンドのビットマッ
プデータの出力とが並行して行われ、バンドを切り換え
ることで画像出力手段5にリアルタイムにビットマップ
データを送ることができるようにしている。画像出力手
段5は、バンドバッファ手段4からビットマップデータ
を読み出して、ページ単位にビットマップ情報を画像と
して出力する。
【0015】以上の構成により、描画オブジェクトに与
えられた階調データがコンスタントでかつ2値化結果記
憶手段3dにスキャンライン周期分2値化結果が記憶さ
れている場合には、閾値記憶手段3cから読み出したデ
ータと描画オブジェクトに与えられた階調データとを比
較してその結果で2値化を行うという2値化手段3bの
処理を省略して、2値化結果記憶手段3dにキャッシュ
されている2値化結果をシフト手段3eによりシフトし
たデータを繰り返し使用して、バンドバッファ手段4へ
書き込むようにしている。したがって、画像領域を示す
各エッジの大きさが閾値のスキャンライン周期よりも大
きく、かつ階調がコンスタントな場合には、2値化処理
を行わずに、キャッシュしておいた2値化結果のデータ
をシフトして使用するようにしたため、時間のかかる閾
値記憶手段3cからの読み出しがなくなり、高速に2値
化結果を得ることができる。
【0016】次に、本発明の画像処理装置の概要につい
て説明する。図2は画像処理装置の構成例を示すブロッ
ク図である。図2において、画像処理装置は、中間デー
タ生成部11と、中間データ記憶部12と、中間データ
展開部13と、バンドバッファ部14と、出力部15と
から構成され、さらに中間データ展開部13は、エッジ
計算部131、2値化処理部132、2値化結果レジス
タ兼シフタ1321、および閾値マトリックス記憶部1
33から構成されている。
【0017】中間データ生成部11は、PostScr
ipt(Adobe Systems社商標)やInt
erpress(Xerox社商標)などのページ記述
言語(PDL)を入力し、それから図形、文字、画像の
描画命令を解釈し、それぞれの描画オブジェクトに対し
て、描画領域を表すディスプレイリスト(DL)と階調
情報とからなる中間データを生成する。ディスプレイリ
ストは、描画オブジェクトを表す近似多角形の各辺を、
主走査方向の座標値、傾き、および交わるスキャンライ
ン数で表したディスプレイリストセルデータであって、
これを、開始スキャンライン値でソートしたデータであ
る。ただし、中間データ展開部13以降は、バンド単位
にビットマップ化されることとリアルタイム性が要求さ
れるために、中間データ記憶部12では、ディスプレイ
リストを、バンド単位に分割し、さらに1スキャンライ
ンで同時処理するディスプレイリストセル数をN個以下
にするための分割処理も行う。また階調情報は、文字/
図形の場合は8ビットの階調データに、画像の場合には
8ビットの階調データ配列に変換される。この中間デー
タ生成部11によって生成された中間データは1ページ
分がバンド単位に、中間データ記憶部12において記憶
される。ここでは、出力部15が、1色(モノクロ)の
場合について説明するが、もし、CMYK出力など複数
の色コンポーネントを持つ場合には、階調データは色コ
ンポーネント分存在する。
【0018】中間データ展開部13は、中間データ記憶
部12において記憶された中間データをバンド単位に読
み出し、ディスプレイリスト(DL)をエッジ計算部1
31に、階調データまたは階調配列データを2値化処理
部132に入力する。まず、エッジ計算部131では、
入力されたディスプレイリストを順に読み出して、現在
処理しているスキャンラインと交差するディスプレイリ
ストセルの主走査方向の座標値を求める。この座標値計
算には、DDA(Degital Different
ial Analyzer)などの単純なアルゴリズム
を使い、通常は、ハードウェアで処理する。求められた
座標値は小さい順にソートされ、2座標ずつペアにされ
エッジデータが作られる。エッジデータは塗りつぶし開
始位置と終了位置とを示したデータである。そして、エ
ッジ計算部131からは、エッジデータ、スキャンライ
ン、および階調データが2値化処理部132へ入力され
る。2値化処理部132では、このうちのエッジデータ
およびスキャンラインからページ上の座標値が計算さ
れ、その座標値をもとにして閾値マトリックス記憶部1
33から対応する閾値データを取ってくる。その閾値デ
ータと階調データとを比較することにより2値化が行わ
れる。
【0019】ここで、文字/図形の場合には、エッジ上
の階調データは常に同じであるため、エッジが閾値マト
リックスのスキャンライン周期よりも長い場合には、2
値化結果の再利用が可能になる。そこで、そのような場
合には、2値化結果を一旦2値化結果レジスタ兼シフタ
1321に書き出す。その後は、2値化処理は行わず、
2値化結果レジスタ兼シフタ1321のデータを直接エ
ッジに対応するバンドバッファ部14のビット位置に書
き込むことによって描画処理が行われる。2値化結果レ
ジスタ兼シフタ1321は、最低、閾値マトリックスの
スキャンライン周期分の2値データを保持することがで
き、バレルシフタによって、サイクリックなシフトがで
きるようになっている。これは、バンドバッファ部14
への書き込みビット数Bnと閾値マトリックスの周期M
nとの間に整数倍の関係が成り立たない場合にビットシ
フトが必要だからである。また、文字/図形でもエッジ
が短い場合や画像に対する処理の場合には、同じように
2値化処理を行うが、2値化結果は2値化結果レジスタ
兼シフタ1321に書き出さずに、直接バンドバッファ
部14の対応するビット位置に書き込むことを行う。
【0020】このようにして、中間データ記憶部12の
1バンドに対応するデータが処理され、バンドバッファ
部14に2値化されたデータが蓄えられると、そのバン
ドバッファ部14から出力部15の出力処理に同期して
ビットマップデータが送られる。バンドバッファ部14
は、二つのバンドバッファに分割されて、それぞれ1バ
ンド分のデータを蓄えられるようになっている。一方の
バンドバッファを出力部へのデータ転送で使用している
場合は、他方のバンドバッファには、上述されたような
処理によって、次のバンドのビットマップデータが書き
込まれている。このように次々と最終バンドまで繰り返
すことによって、出力部15から1ページの印刷が行わ
れ、処理を終了する。もし、出力部15の色コンポーネ
ント数が複数の場合には、中間データ展開部13以降の
上述した処理を色コンポーネント数分繰り返すことによ
って、1ページの印刷処理が終了する。
【0021】以上、本発明の画像処理装置の概要につい
て記述した。次に、この画像処理装置の主要部の詳細に
ついて説明する。まず中間データ生成部11でのディス
プレイリストおよび階調データの生成について詳細を説
明する。
【0022】図3は中間データ生成部の構成例を示すブ
ロック図である。中間データ生成部11は、コマンド解
釈部111、図形ベクタ生成部112、文字ベクタ生成
部113、画像処理部114、色変換部115、ディス
プレイリスト生成部116、および中間データ出力部1
17から成っている。
【0023】まず、コマンド解釈部111では、入力さ
れたページ記述言語(PDL)からページを記述したコ
マンド列を解釈して、文字/図形/画像と色に関するパ
ラメータとコマンドとを抽出し、それぞれ図形ベクタ生
成部112、文字ベクタ生成部113、画像処理部11
4、および色変換部115へコマンドを転送する。図形
ベクタ生成部112は、パラメータとして図形の輪郭を
表した座標値列を受け取り、ベクタデータを生成する。
文字ベクタ生成部113は、フォント識別子(ID)、
文字コード、およびサイズを受け取り、文字の輪郭を表
すベクタデータを生成する。画像処理部114は、画像
のラスタデータ、高さ、幅、アフィン変換マトリクス、
ラスタデータの色空間を受け取り、アフィン変換後のラ
スタデータとアフィン変換後のラスタ画像の輪郭を表す
ベクタとを生成する。色変換部115は、文字/図形の
場合には、コマンド解釈部111から直接、空間と色値
を受け取り、出力部15(モノクロ対応で説明する)の
ために8ビットの階調データに変換する。画像の場合に
は、画像処理部114からアフィン変換後のラスタデー
タおよびその色空間を受け取り、出力部15(モノクロ
対応で説明する)のために8ビットの階調データの配列
データに変換する。ディスプレイリスト生成部116
は、図形ベクタ生成部112、文字ベクタ生成部11
3、画像処理部114から受け取ったベクタデータから
ディスプレイリストを生成する。ここで、ディスプレイ
リスト生成部116におけるディスプレイリストの生成
例を図4に示す。
【0024】図4はディスプレイリストの生成例を示す
図である。ディスプレイリスト生成部116は、図形ベ
クタ生成部112、文字ベクタ生成部113、または画
像処理部114からベクタデータを受け取るが、そのベ
クタデータが、たとえば図4に示したように直線で近似
された多角形を表すデータであるとする。各直線ベクタ
の座標値の小さい方の端点(始点)と交差するスキャン
ラインごとに、直線ベクタの情報を表すセルが生成され
る。たとえばY=y1のスキャンラインには2本の直線
ベクタE1,E2の始点が交差しており、スキャンライ
ンy1の座標値に対応するyバケットリストには、各直
線ベクタの情報を表す二つのセルが記憶される。各セル
は、直線ベクタに対する主走査方向のx座標値X、傾き
Dx、および交わるスキャンライン数Ryから成るディ
スプレイリストセルデータを含んでいる。これらのディ
スプレイリストセルデータは、開始スキャンライン値で
ソートされて、ディスプレイリストが生成される。生成
されたディスプレイリストは、中間データ出力部117
へ送られる。
【0025】中間データ出力部117は、ディスプレイ
リスト生成部116から入力されたディスプレイリスト
と色変換部115から入力された階調データまたは階調
配列データとを受け取り、ディスプレイリストのバンド
単位の分割および1スキャンラインごとのディスプレイ
リストの分割を行う。これらのディスプレイリストの分
割の例を図5ないし図7に示す。
【0026】図5はディスプレイリストをバンド単位に
分割する例を示す図である。バンドの境界がたとえばY
=y8のスキャンラインにあるとすれば、このスキャン
ラインと交わる直線ベクタE3,E4が分割の対象とな
る。直線ベクタE3,E4は、バンド境界のスキャンラ
インで分割されてそれぞれ別個の直線ベクタのディスプ
レイリストに直される。図5では、太線で囲ったディス
プレイリストセルデータが変更または追加されたデータ
である。
【0027】このように、バンド単位に分割されたディ
スプレイリストは、さらに1スキャンライン当たりの直
線ベクタ数がN本以下になるよう分割される。これは、
中間データ展開部13のエッジ計算部131がディスプ
レイリストをもとにエッジの計算をN個のハードウェア
によって行うためであり、エッジの計算を行うハードウ
ェアの数に合わせてディスプレイリストが分割される。
たとえば、Y=y2およびy3のスキャンラインを注目
すると、y2のスキャンラインと交差する直線ベクタは
4本であるが、y3のスキャンラインと交差する直線ベ
クタは6本である。ここで、エッジの計算を行うハード
ウェアの数Nが4個である場合、エッジの計算を同時に
処理するためには、各スキャンラインと交差する直線ベ
クタは4本以内でなければならない。そのため、ディス
プレイリストは各スキャンライン当たりの直線ベクタ数
が4本以下になるよう分割される。
【0028】図6および図7はスキャンラインごとのデ
ィスプレイリストの分割の例を示す図である。交差する
直線ベクタの数が5本以上あるスキャンラインy3,y
4では、図6に示したように、直線ベクタの数が4本に
制限されるよう直線ベクタが分割され、それに対応して
ディスプレイリストの修正が行われ、分割された残りの
直線ベクタについては、図7に示したように、ディスプ
レイリストが生成される。これらのディスプレイリスト
は、対応する階調データまたは階調配列データを付加し
て、中間データ記憶部12へ書き出される。この中間デ
ータのフォーマットの例を図8に示す。
【0029】図8は中間データのフォーマットの例を示
す図である。中間データは、オブジェクトごとに、OI
Dと、BBOXと、階調(階調配列)と、ディスプレイ
リストセル数と、この後にディスプレイリストセル数分
続くディスプレイリストとからなっている。OIDは、
オブジェクトIDであり、文字オブジェクトの場合は
0、図形オブジェクトの場合は1、画像オブジェクトの
場合は2の値を持つ。BBOXは、オブジェクトの外接
矩形を示す。階調は、文字/ 図形の場合には8ビットの
値、画像の場合には幅、高さ、および幅×高さ個分の8
ビットの値を持つ。ディスプレイリストセル数は、オブ
ジェクトを表すディスプレイリストセルの数Nであり、
このN個分、スキャンラインYの情報を含むディスプレ
イリストセルDL1〜DLNが後続する。そして、最後
に、バンドの終了を表すEOBが付加される。
【0030】次に、中間データ展開部13について詳細
を説明する。中間データ展開部13は、大きくエッジ計
算部131、2値化処理部132、2値化結果レジスタ
兼シフタ1321、および閾値マトリックス記憶部13
3によって構成される。まず、エッジ計算部131につ
いて説明する。
【0031】図9はエッジ計算部の構成例を示すブロッ
ク図である。エッジ計算部131は、中間データ入力部
1311、座標値計算部1312、比較ソート部131
3、エッジ生成部1314、エッジFIFO部1315
から成る。座標値計算部1312は、N個のディスプレ
イリスト(DL)レジスタを有し、座標値計算にDDA
(Degital Differential Ana
lyzer)を用いている。中間データ入力部1311
は、図8に示すようなバンド単位に分割された中間デー
タを中間データ記憶部12から受け取り、オブジェクト
IDを解釈して、文字/図形オブジェクトの場合には、
オブジェクトIDおよび階調データを、画像オブジェク
トの場合には、オブジェクトIDおよび階調配列データ
を2値化処理部132に送る。また、描画オブジェクト
に対するディスプレイリストセルは、中間データになっ
た時点でY座標でソートされているため、最初のディス
プレイリストセルのYの値を内部のY座標レジスタ13
111にセットするとともに、Y座標レジスタ1311
1と同じ値のYのディスプレイリストセルを座標値計算
部1312のDLレジスタへセットする。座標値計算部
1312のDLレジスタはハードウェアで構成されるた
めに、あらかじめ個数が決まっている。この場合には、
その個数はディスプレイリスト作成時に制限したN個で
ある。座標値計算部1312では、有効なDLレジスタ
数分のXの値を比較ソート部1313へ出力するととも
に、Ryをディクリメントして0になったDLセルはD
Lレジスタから削除する。削除されないDLレジスタに
ついては、X=X−Dxを行っておく。比較ソート部1
313では、入力されたXの値をソートし、小さい方か
ら順番にエッジ生成部1314へ送る。エッジ生成部1
314では、受け取ったXの開始および終了の値を内部
のEdgeレジスタのSX、EXに順番にセットする。
エッジ生成部1314もハードウェアで作成され、レジ
スタ数はあらかじめ制限されている。Edgeレジスタ
の個数は、DLレジスタの個数の半分のN/2個であ
る。実際の描画オブジェクトの塗りつぶし領域は、この
SXからEXまでの間であり、同じスキャンライン中に
N/2以下の塗りつぶし領域まで分割されて存在してい
るものに対応可能である。このEdgeレジスタの値の
うち有効なEdgeレジスタ分、現在のスキャンライン
を表すY座標レジスタの値を付加しながらエッジFIF
O部1315に送られ、蓄えられる。これが1スキャン
ラインの処理であるが、次のスキャンラインの始まり
は、Y座標レジスタ13111のインクリメントから始
める。そして、中間データ入力部1311はY座標レジ
スタ13111と同じ値のYのDLセルがあれば、座標
値計算部1312のDLレジスタへセットする。その後
は上述した処理を繰り返し、DLセル数分のDLセルを
座標値計算部1312へセットして、座標値計算部13
12のDLレジスタがすべて無効になった時点で、一つ
のオブジェクトの処理が終了する。この時点で中間デー
タ入力部1311は、次のオブジェクトIDを読み出
し、新たに階調データ、オブジェクトIDなどをセット
し直して処理を行う。これをEOBが来るまで繰り返し
て行う。エッジFIFO部1315のデータは、2値化
処理部132によって、順番に読み出される。
【0032】次に、本発明の主要なモジュールである2
値化処理部132について詳細に説明する。図10は2
値化処理部の構成例を示すブロック図である。2値化処
理部132は、大きく2値化結果レジスタ兼シフタ13
21、2値化・バンドバッファ書き込み制御部132
2、閾値マトリックスアドレス計算部1323、階調比
較部1324、およびバンドバッファ書き込みレジスタ
1325よって構成される。まず、2値化・バンドバッ
ファ書き込み制御部1322について説明する。
【0033】図11は2値化・バンドバッファ書き込み
制御部の構成例を示すブロック図である。2値化・バン
ドバッファ書き込み制御部1322は、階調レジスタ1
3221、画像メモリ13222、バンドアドレス計算
部13223、シフト量制御部13224、エッジカウ
ンタ13225から構成される。まず、エッジ計算部1
31からオブジェクトIDが入力される。このオブジェ
クトIDに引き続き階調データが入力されるので、オブ
ジェクトIDが文字/図形オブジェクトの場合には、8
ビットの階調データとなるので、階調レジスタ1322
1に8ビットの値をセットする。もし、画像オブジェク
トの場合には、幅と高さ情報と幅x高さ分の8ビットの
データとの階調配列が階調データとなるので、それらを
画像メモリ13222に書き込む。その後、そのオブジ
ェクトのエッジデータが次々に入力される。これは、小
さいスキャンライン順に小さい主走査方向のエッジから
順番にソートされている。エッジデータは、スキャンラ
インデータ(Y)と主走査方向の開始座標(SX)と終
了座標(EX)とからなっている。基本的な処理は、入
力された一つのエッジに対する処理であり、その処理を
エッジがなくなるまで繰り返すだけなので、ここでは、
入力された一つのエッジに対する処理について説明す
る。また、これからの動作は、バンドメモリへ書き込む
ビット幅BNと閾値マトリックスの大きさ(SN×S
N)と2値化結果レジスタ兼シフタ1321のビット幅
RN(少なくてもSNより大きい、標準では同じ)によ
って、動作が多少異なるため、それぞれBN=4、SN
=7、RN=7の場合として説明する。
【0034】まず、エッジカウンタ13225にEX−
SX+1の値をセットする。これはエッジの長さであ
り、塗りつぶすドット数を意味している。次に、バンド
アドレス計算部13223にYとSXとエッジカウンタ
13225の値とを入力して、書き込み先頭アドレス
(addr)、スタートマスクデータ、エンドマスクデ
ータ、書き込みワード数(WW)を求める。バンドアド
レス計算部13223では、次式によって書き込み先頭
アドレスaddrの計算を行う。
【0035】
【数1】addr=Y*BW(バンドの横のワード数)
+SX/BN また、エッジに対する最初と最後のワードを書き込む場
合には、書き込んではいけない(バンドバッファのデー
タをそのまま残す)ビットが存在する可能性があるため
に、スタートマスクデータとエンドマスクデータとを作
成する必要がある。なお、エッジのための書き込みが1
ワードで済んでしまう場合には、スタートマスクデータ
とエンドマスクデータとの論理積を取ったものになる。
スタートマスクデータの作成は、BNビットのレジスタ
のうちsbit(sbit=SX%BN)で始まるビッ
トから最終ビットまでONする。その他はOFFにす
る。エンドマスクデータの作成は、BNビットのレジス
タのうち、最初のビットからebit(ebit=(S
X+エッジカウンタ13225の値−1)%BN)目ま
でのビットまでONする。その他はOFFにする。ま
た、何ワード書き込むかであるが、まず、スタートワー
ドとエンドワードとを書き込むときに、実際に書き込ん
でしまうビット数をエッジカウンタ13225の値から
引き算する。すなわち、
【0036】
【数2】RB=エッジカウンタの値−(BN−sbi
t)−(ebit+1) ここで、もし、RB>0の場合は、WW=RB/BN+
2である。もし、RB=0の場合には、WW=2であ
る。もし、RB<0場合は、WW=1にして、スタート
マスクデータとエンドマスクデータとの論理積をスター
トマスクデータとする。
【0037】このような状態で2エッジに対する2値化
処理が開始される。まずは階調データが一定の文字/図
形オブジェクトについて説明する。2値化・バンドバッ
ファ書き込み制御部1322から閾値マトリックスアド
レス計算部1323にYとエッジに対するバンドバッフ
ァ上での主走査方向の座標値X(SXからEXまで一つ
ずつインクリメントされていく)が入力される。ここで
は、次のようにして、閾値マトリックス記憶部133の
アドレスsmaddrが計算される。
【0038】
【数3】smaddr=SN*(Y%SN)+S このアドレスsmaddrによって、閾値マトリックス
記憶部133を読み出して得られた8ビットの閾値デー
タ(SD)は、階調比較部1324へ入力される。ま
た、階調比較部1324へは、既に階調レジスタ132
21にセットされた値(TD)が入力されている。階調
比較部1324は、ここでもし、SD>TDであれば0
を、そうでなければ1を出力する。
【0039】シフト量制御部13224は、まだ2値化
結果レジスタ兼シフタ1321のすべてのビットに値が
入力されていない場合には、0ビット目から順番に階調
比較部1324の結果を入力していく。したがって、2
値化結果レジスタ兼シフタ1321のすべてのビットに
値が入力されるまでは、上述した閾値マトリックスアド
レス計算部1323に入力する主走査方向の座標値Xを
インクリメントしながら、閾値マトリックス記憶部13
3の読み出し、階調比較部1324での比較、2値化結
果レジスタ兼シフタ1321への比較結果の書き込み
を、位置を1ビットずつずらしながら行っていく。この
階調比較部1324でにおける階調の比較例を図12に
示す。
【0040】図12は階調比較部の動作を説明する図で
あって、(A)は閾値マトリックスの例を示し、(B)
は比較結果を示す図である。たとえば、閾値マトリック
ス記憶部133において、アドレスsmaddrで示さ
れる8ビットの閾値データ(SD)が図12(A)に太
線で囲った部分であるとすると、階調比較部1324で
は、その閾値データ(SD)と階調レジスタ13221
にセットされた値(TD)とが比較され、SD>TDの
場合は0を出力し、SD≦TDの場合は1を出力する。
これらの比較結果は、2値化結果レジスタ兼シフタ13
21に入力される。
【0041】このように、2値化結果レジスタ兼シフタ
1321のすべてのビットに比較結果が入力されると、
バンドバッファ部14への書き込みが開始される。ま
ず、バンドアドレス計算部13223において、スター
トマスクデータ計算時に求められたsbit(sbit
=SX%BN)分、2値化結果レジスタ兼シフタ132
1を右へバレルシフトする。バレルシフトとは、シフト
の外側へ出ていってしまうビットの値が反対側からシフ
トへ入力されるシフトのことである。このように、シフ
トし終わった状態で、バンドバッファ部14の書き込み
を行うワードをスタートマスクデータの否定との論理積
を行った後でバンドバッファ書き込みレジスタ1325
へ読み出しておく。そして、2値化結果レジスタ兼シフ
タ1321の上位BNビット分のデータとスタートマス
クデータとの論理積を取った結果と、バンドバッファ書
き込みレジスタ1325の内容と論理和をとり、バンド
バッファ部14へ書き出す。その次のワードからは、2
値化結果レジスタ兼シフタ1321を左へBNビットシ
フトし、その結果をバンドバッファのアドレスをインク
リメントしながら、直接バンドバッファ部14へ書き出
すことによって描画を行う。そして、最終ワードの場合
には、エンドマスクデータをスタートマスクデータの代
わりにして、開始ワードと同様の論理演算を行い、書き
出すことによって、エッジの描画を終了する。エッジの
長さが十分に長ければ、2値化処理時に閾値マトリック
ス記憶部133へのアクセスが省略できるために、高速
化が可能である。特に、今後解像度が大きくなる傾向に
あるため、よりエッジの長さも長くなり効果が大きくな
る。
【0042】ところで、ページを構成するオブジェクト
が文字中心のデータの場合には、極端に短いエッジが多
くなることが考えられ、上述した方法だけでは効果が少
なくなることも考えられる。次に、このような文字中心
の場合に有効な画像処理装置の第2の実施の形態につい
て説明する。
【0043】図13は第2の実施の形態における中間デ
ータ生成部の構成例を示すブロック図である。中間デー
タ生成部11は、コマンド解釈部111、図形ベクタ生
成部112、文字ベクタ生成部113、画像処理部11
4、色変換部115、ディスプレイリスト生成部11
6、および中間データ出力部117から成っており、色
変換部115は最大オブジェクト階調検出部1151を
有している。
【0044】文字の場合には、通常ページ全体にわたっ
て同じ階調で描かれることが多い。そこで、第2の実施
の形態では、図13に示したように、中間データ生成部
11の色変換部115内に、最大オブジェクト階調検出
部1151を備えている。この最大オブジェクト階調検
出部1151は、オブジェクト数の最も多い階調を検出
する。検出された最も多くのオブジェクトで使用されて
いる階調データは、中間データ出力部117を通して、
中間データ記憶部12の決められた場所に保存される。
【0045】この最も多くのオブジェクトで使用されて
いる階調データは、中間データ展開部13においては、
中間データに先立って、エッジ計算部131を通して2
値化処理部132に伝えられる。この2値化処理部13
2およびその中の2値化・バンドバッファ書き込み制御
部1322の構成を図14および図15に示す。
【0046】図14は第2の実施の形態における2値化
処理部の構成例を示すブロック図、図15は2値化・バ
ンドバッファ書き込み制御部の構成例を示すブロック図
である。2値化処理部132は、図14に示したよう
に、2値化結果レジスタ兼シフタ1321、2値化・バ
ンドバッファ書き込み制御部1322、閾値マトリック
スアドレス計算部1323、階調比較部1324、およ
びバンドバッファ書き込みレジスタ1325に加えて、
新たに2値化結果記憶マトリックス1326および2値
化結果記憶マトリックスアドレス計算部1327を備え
ている。また、2値化・バンドバッファ書き込み制御部
1322は、図15に示したように、階調レジスタ13
221、画像メモリ13222、バンドアドレス計算部
13223、シフト量制御部13224、エッジカウン
タ13225に加えて、新たにキャッシュ階調記憶部1
3226を備えている。
【0047】中間データ記憶部12から与えられた最も
多くのオブジェクトで使用されている階調データは、中
間データの入力に先立って2値化処理部132に入力さ
れると、まず、2値化・バンドバッファ書き込み制御部
1322のキャッシュ階調記憶部13226にキャッシ
ュされる。その階調データは、あらかじめ階調比較部1
324にて閾値マトリックス記憶部133の閾値マトリ
ックスと比較され、その2値化結果を2値化結果記憶マ
トリックス1326に記憶しておく。
【0048】そして、実際の2値化処理に際しては、閾
値マトリックス記憶部133へのアクセスおよび階調比
較部1324での比較を省略して、2値化結果記憶マト
リックスアドレス計算部1327を通して2値化結果記
憶マトリックス1326へのアクセスを行い、2値化結
果レジスタ兼シフタ1321へ値をロードすることで、
2値化を行う。この場合も、同じスキャンラインに対す
るエッジが連続する場合には、2値化結果記憶マトリッ
クスアドレス計算部1327へのアクセスも省略する。
また、最大のオブジェクト数の階調だけではなく、多い
ほうから数種類の階調についてもキャッシュしておくよ
うにすることもできる。
【0049】
【発明の効果】以上説明したように本発明では、文字/
図形/画像に関して中間データを生成して、中間データ
の展開、2値化、出力をリアルタイムで行うハードウェ
ア装置について、文字/図形など同じ階調で塗りつぶさ
れるエッジに対して、2値化結果を少なくとも閾値マト
リックスのサイズ分記憶しておく2値化結果記憶手段
と、それをバレルシフトするシフト手段を設けるように
構成した。これにより、中間データ展開手段のハードウ
ェアの動作の中で最も遅くボトルネックとなっている閾
値マトリックスへのアクセスを減らすことができる。し
たがって、2値化を高速に行うことができることによ
り、高速な中間データ展開、または同じスループットに
対してはメモリバンド幅を小さくできるので、回路規模
を小さく実現できようになる。
【0050】また、最も多く現れる階調に対しては、エ
ッジごとではなく、あらかじめ2値化結果を記憶する手
段を付け加えることによって、閾値マトリックスへのア
クセスをより少なくできるようになるため、さらに高速
な展開処理を可能とする。たとえば、図10を例に採っ
て話をすると、閾値マトリックス記憶部133から閾値
データを一つ読み出すのに2サイクルかかるとする。ま
た、バンドバッファ書き込みレジスタ1325からバン
ドバッファ部14へ書き込むのに2サイクルでその他の
処理は1サイクルで行えるとし、理想的なパイプライン
の動作が行えるものとする。ここで、平均エッジの長さ
が、閾値マトリックスの2倍の長さ(14ドット)とす
ると、もし、2値化結果レジスタ兼シフタ1321がな
く、キャッシュを行わない場合には、一つのエッジを処
理するのに、閾値マトリックス記憶部133へのアクセ
スがボトルネックになるため、14(14回の閾値マト
リックスへのアクセス)×2(クロック)=28クロッ
クかかることになるが、以上の構成にすることにより、
7(14回の閾値マトリックスへのアクセス)×2(ク
ロック)+1(パイプラインから飛び出したバンドバッ
ファ部14へ書き込みの回数)×2=16クロックとな
り、約43%程度高速化が実現できる。
【図面の簡単な説明】
【図1】 本発明の画像処理装置の動作原理を示す説明
図である。
【図2】 画像処理装置の構成例を示すブロック図であ
る。
【図3】 中間データ生成部の構成例を示すブロック図
である。
【図4】 ディスプレイリストの生成例を示す図であ
る。
【図5】 ディスプレイリストをバンド単位に分割する
例を示す図である。
【図6】 スキャンラインごとのディスプレイリストの
分割の例を示す図である。
【図7】 スキャンラインごとのディスプレイリストの
分割の例を示す図である。
【図8】 中間データのフォーマットの例を示す図であ
る。
【図9】 エッジ計算部の構成例を示すブロック図であ
る。
【図10】 2値化処理部の構成例を示すブロック図で
ある。
【図11】 2値化・バンドバッファ書き込み制御部の
構成例を示すブロック図である。
【図12】 階調比較部の動作を説明する図であって、
(A)は閾値マトリックスの例を示し、(B)は比較結
果を示す図である。
【図13】 第2の実施の形態における中間データ生成
部の構成例を示すブロック図である。
【図14】 第2の実施の形態における2値化処理部の
構成例を示すブロック図である。
【図15】 第2の実施の形態における2値化・バンド
バッファ書き込み制御部の構成例を示すブロック図であ
る。
【符号の説明】
1 中間データ生成手段 2 中間データ記憶手段 3 中間データ展開手段 3a エッジ計算手段 3b 2値化手段 3c 閾値記憶手段 3d 2値化結果記憶手段 3e シフト手段 3f マスク生成手段 3g バンドバッファ書き込み手段 4 バンドバッファ手段 5 画像出力手段
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 2C087 AA16 BC02 BC05 BD01 BD24 BD53 5B057 AA11 BA01 CA01 CA08 CB01 CB07 CE13 CH11 DB06 DB08 DB09 DC07 DC16 5C077 LL18 MP08 NN08 PP03 PQ11 PQ22 RR02 5C079 LA15 LA34 LC04 MA01 MA02 MA11 PA03

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 少なくとも文字/図形/画像のいずれか
    の描画オブジェクトを含むページを記述した入力データ
    を画像出力する画像処理装置において、 前記入力データから各描画オブジェクトに対する描画領
    域を示す情報と色情報とからなる中間データを生成する
    中間データ生成手段と、 前記中間データ生成手段で生成されたページ分の中間デ
    ータをバンド単位に分割して記憶する中間データ記憶手
    段と、 前記中間データ記憶手段からバンド単位に受け取った中
    間データの各描画オブジェクトの描画領域を示す情報か
    らスキャンラインごとの描画の開始/終了を表す0個以
    上の座標値の組み合わせデータを求めるエッジ計算手段
    と、 2値化の際に描画オブジェクトに与えられた階調と比較
    するために使用される周期的なデータを周期分だけあら
    かじめ記憶した閾値記憶手段と、 前記エッジ計算手段で求められた座標値の組み合わせデ
    ータとスキャンラインデータとを使って前記閾値記憶手
    段から読み出したデータと描画オブジェクトに与えられ
    た階調データとの比較で2値化を行う2値化手段と、 前記2値化手段にて2値化された2値化結果を前記閾値
    記憶手段の少なくともスキャンライン周期分記憶する2
    値化結果記憶手段と、 前記2値化結果記憶手段に記憶されている2値化された
    ビットマップデータを複数バンド分記憶するバンドバッ
    ファ手段と、 描画オブジェクトに与えられた階調データがコンスタン
    トでかつ前記2値化結果記憶手段にスキャンライン周期
    分2値化結果が記憶されている場合に、前記2値化結果
    記憶手段に記憶されている2値化結果を繰り返し使用す
    るべくシフト操作を行って前記バンドバッファ手段へ書
    き込むときの位置合わせを行うシフト手段と、 前記バンドバッファ手段からビットマップデータを読み
    出してページ単位にビットマップ情報を画像として出力
    する画像出力手段と、 を備えていることを特徴とする画像処理装置。
  2. 【請求項2】 前記シフト手段は、左右両方向にシフト
    可能であることを特徴とする請求項1記載の画像処理装
    置。
  3. 【請求項3】 前記シフト手段は、シフトアウトされた
    データが反対側からシフトインされることを特徴とする
    請求項1記載の画像処理装置。
  4. 【請求項4】 前記バンドバッファ手段へ書き込むため
    のマスク情報を生成するマスク生成手段と、前記2値化
    結果記憶手段に記憶されたデータを、または前記2値化
    結果記憶手段に記憶されたデータと前記マスク情報と前
    記バンドバッファ手段の対応する位置に既に書かれてい
    るデータとの論理演算結果を前記バンドバッファ手段へ
    書き込むバンドバッファ書き込み手段とを備えているこ
    とを特徴とする請求項1記載の画像処理装置。
  5. 【請求項5】 前記バンドバッファ書き込み手段は、前
    記2値化結果記憶手段に記憶されたデータとマスク情報
    との論理積とバンドバッファの対応する位置に既に書か
    れているデータとマスク情報の否定との論理積との論理
    和とした論理演算を行うことを特徴とする請求項4記載
    の画像処理装置。
  6. 【請求項6】 少なくとも文字/図形/画像のいずれか
    の描画オブジェクトを含むページを記述した入力データ
    を画像出力する画像処理装置において、 前記入力データから各描画オブジェクトに対する描画領
    域を示す情報と色情報とからなる中間データを生成する
    中間データ生成手段と、 同じ階調のオブジェクト数をカウントしてカウント結果
    を中間データに出力するオブジェクト数カウント手段
    と、 前記中間データ生成手段で生成されたページ分の中間デ
    ータをバンド単位に分割して記憶する中間データ記憶手
    段と、 前記中間データ記憶手段からバンド単位に受け取った中
    間データの各描画オブジェクトの描画領域を示す情報か
    らスキャンラインごとの描画の開始/終了を表す0個以
    上の座標値の組み合わせデータを求めるエッジ計算手段
    と、 2値化の際に描画オブジェクトに与えられた階調と比較
    するために使用される周期的なデータをあらかじめ記憶
    した閾値記憶手段と、 前記エッジ計算手段で求められた座標値の組み合わせデ
    ータとスキャンラインデータとを使って前記閾値記憶手
    段から読み出したデータと描画オブジェクトに与えられ
    た階調データとの比較で2値化を行う2値化手段と、 前記2値化手段にて2値化された2値化結果を前記閾値
    記憶手段の少なくともスキャンライン周期分記憶すると
    ともに描画オブジェクトに与えられた階調データが2値
    化キャッシュ手段に記憶されている場合にそのデータの
    対応する部分を記憶する2値化結果記憶手段と、 前記中間データに出力された各階調のオブジェクト数カ
    ウント結果に基づき決められた階調については前記閾値
    記憶手段のすべてのデータに対する2値化結果を記憶す
    る2値化キャッシュ手段と、 2値化されたビットマップデータを複数バンド分記憶す
    るバンドバッファ手段と、 描画オブジェクトに与えられた階調データがコンスタン
    トでかつ前記2値化結果記憶手段にスキャンライン周期
    分2値化結果が記憶されている場合に、前記2値化結果
    記憶手段に記憶されている2値化結果を繰り返し使用す
    るべくシフト操作を行って前記バンドバッファ手段へ書
    き込むときの位置合わせを行うシフト手段と、 前記バンドバッファ手段からビットマップデータを読み
    出してページ単位に前記ビットマップ情報を画像として
    出力する手段と、 を備えていることを特徴とする画像処理装置。
  7. 【請求項7】 前記バンドバッファ手段へ書き込むため
    のマスク情報を生成するマスク生成手段と、前記2値化
    結果記憶手段に記憶されたデータを、または前記2値化
    結果記憶手段に記憶されたデータと前記マスク情報と前
    記バンドバッファ手段の対応する位置に既に書かれてい
    るデータとの論理演算結果を前記バンドバッファ手段へ
    書き込むバンドバッファ書き込み手段とを備えているこ
    とを特徴とする請求項6記載の画像処理装置。
  8. 【請求項8】 前記オブジェクト数カウント手段によっ
    て出力されるデータは、オブジェクト数が最大のもので
    あることを特徴とする請求項6記載の画像処理装置。
  9. 【請求項9】 前記オブジェクト数カウント手段によっ
    て出力されるデータは、オブジェクト数が最大のものか
    ら順番に行われることを特徴とする請求項6記載の画像
    処理装置。
  10. 【請求項10】 前記2値化キャッシュ手段に記憶され
    るデータは、前記オブジェクト数カウント手段によって
    出力された階調のうち大きいほうから、記憶可能な分ま
    での階調数に対するものであることを特徴とする請求項
    6記載の画像処理装置。
JP10254782A 1998-09-09 1998-09-09 画像処理装置 Pending JP2000092315A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10254782A JP2000092315A (ja) 1998-09-09 1998-09-09 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10254782A JP2000092315A (ja) 1998-09-09 1998-09-09 画像処理装置

Publications (1)

Publication Number Publication Date
JP2000092315A true JP2000092315A (ja) 2000-03-31

Family

ID=17269814

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10254782A Pending JP2000092315A (ja) 1998-09-09 1998-09-09 画像処理装置

Country Status (1)

Country Link
JP (1) JP2000092315A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7852507B2 (en) 2005-06-03 2010-12-14 Canon Kabushiki Kaisha Method, apparatus, and program for processing image description data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7852507B2 (en) 2005-06-03 2010-12-14 Canon Kabushiki Kaisha Method, apparatus, and program for processing image description data

Similar Documents

Publication Publication Date Title
US5387985A (en) Non-integer image resolution conversion using statistically generated look-up tables
US5016001A (en) Pattern data generating system
JP3582675B2 (ja) 画像データをメモリに蓄積する装置及び方法
US6238105B1 (en) Processor/memory non-intensive rendering for page printers
JPH07322057A (ja) 2進入力画像の解像度の増大方法及びその増大装置、ならびに2進入力画像の外観の改良方法
EP0572956B1 (en) Image output device and image control method for smoothing image or increasing image resolution by use of same
US5526474A (en) Image drawing with improved process for area ratio of pixel
JP3085175B2 (ja) 描画装置
US6504543B1 (en) Polygon drawing method and polygon drawing apparatus
JP2000092315A (ja) 画像処理装置
JP2000013601A (ja) 印刷情報処理装置、中間データ生成装置および方法
JP2000090259A (ja) 画像処理装置
JPH10151815A (ja) 印刷処理装置
JP2000011169A (ja) 画像処理装置および画像処理方法
JP3060569B2 (ja) 印刷装置
JPH05143743A (ja) ベクトル画像描画装置
JPH1110961A (ja) 印刷処理装置および印刷処理方法
JP2000222569A (ja) 描画装置
JPH09154009A (ja) プリンタ装置
JP2871881B2 (ja) 画像処理装置
JPH09325749A (ja) 文字パターン形成装置及び文字パターン形成方法
JPH06175637A (ja) 文字の生成方法
JP2748438B2 (ja) 計算機システム
JPH01100590A (ja) 表示制御方式
JPH09325748A (ja) 文字パターン形成装置及び文字パターン形成方法