JPH11282448A - 画像処理方法および装置 - Google Patents
画像処理方法および装置Info
- Publication number
- JPH11282448A JPH11282448A JP10079346A JP7934698A JPH11282448A JP H11282448 A JPH11282448 A JP H11282448A JP 10079346 A JP10079346 A JP 10079346A JP 7934698 A JP7934698 A JP 7934698A JP H11282448 A JPH11282448 A JP H11282448A
- Authority
- JP
- Japan
- Prior art keywords
- edge
- registered
- coordinate value
- dropout
- tree structure
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000012545 processing Methods 0.000 claims description 46
- 238000000034 method Methods 0.000 claims description 31
- 238000000547 structure data Methods 0.000 claims description 13
- 230000001174 ascending effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 18
- 238000006243 chemical reaction Methods 0.000 description 13
- 238000001514 detection method Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005429 filling process Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Landscapes
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
リの容量を少なくすることのできる画像処理方法および
装置を提供する。 【解決手段】走査により選択したエッジをエッジ登録手
段(2a)が2分探索木に登録するとともに、ドロップ
アウト判定手段(2b)が検出されたドロップアウトを
も前記2分探索木に登録し、エッジリスト作成手段(2
c)が前記2分探索木からエッジを昇順または降順で取
得してエッジリストを作成する。
Description
よび装置に関し、特に、文字デザイン情報をアウトライ
ン情報で格納し、小サイズの文字出力時にドロップアウ
トを補正する画像処理方法および装置に関する。
マップスクリーンをベースとする出力装置では、画素が
細かくなる、つまり、高解像度になるにしたがって、同
じサイズの文字や図形を表示するために多くのデータが
必要となる。特に、決まった輪郭をもつ文字情報におい
ても、サイズ毎にビットマップデータを持つ必要があり
効率が悪いものとなる、そのため、文字情報においては
サイズ毎にビットマップデータを持つのではなく、アウ
トライン情報を拡大または縮小してから文字の輪郭線の
内部を塗り潰すことで文字を表示する方法が有利とな
る。
サイズの文字を出力(表示)する場合には、輪郭線の間
隔が狭くなりすぎて塗り潰しに抜け(ドロップアウト)
が発生することがある。このドロップアウトが生じる現
象を回避するためには、大きく分けてアウトライン情報
自体に小サイズ出力時の輪郭線変更情報を持たせる方法
と、処理系にドロップアウト発生場所を検知させ修正を
行う方法の2つがある。前者は一般に処理が速く文字の
デザインの崩れもデータ作成段階で補正できるが、文字
数が増えた場合にデータサイズが増大し、データ作成時
の手間も増える。後者ではデータの変更の必要はない
が、処理が遅くなり、前者の場合と比較して文字のデザ
インが崩れる場合もある。したがって、現在では前者と
後者を組み合わせてしようするのが主流となっている。
ち後者の方法に関するものであるため、後者の方法につ
いてさらに説明する。
られるビットマップを示す。同図に示すように文字を出
力(表示)する場合には、出力しようとする文字の輪郭
線の内側の画素を他の画素と反転させたビットマップを
出力する。また、各画素は、図15に示すように高さ
1、幅1の正方形をしており、その4隅に整数座標値が
くる。画素の座標は左下隅の座標値で表現し、これをピ
クセル座標と呼ぶことにする。また、図16に示すよう
に輪郭線の内側に画素の中心点がある場合、その画素は
輪郭線の内側であると判断される。
す。この例においては、輪郭線の方向を考慮しないEV
EN−ODDルールと呼ばれる条件で輪郭線の内外を判
定している。
素の中心点を結んだ線を走査線または主走査線、y軸方
向に画素の中心点を結んだ線を副走査線と呼ぶことにす
る。輪郭線の内側を求める際には、図18(a)に示す
ように輪郭線と走査線の交点を求め、交点とy座標が等
しく、交点の右側にある画素(画素の中心点)のうち最
も近い画素を選択する。この画素をエッジと呼ぶが、エ
ッジは、例えば上記交点のx座標値の小数点第1位を四
捨五入することで求めることができる。
したら、図18(b)に示すように各走査線についてエ
ッジに挟まれた画素を反転する。このとき、反転する画
素の始点または終点となるエッジのうち、始点となる画
素は反転させるが、終点となる画素は反転させない。
なった場合、その重なりが偶数個であるあればそのエッ
ジを削除する。この操作を実施しないと塗り潰しが正確
に行われない。なお、スキャンコンバージョンはドロッ
プアウトが発生しない限り副走査線方向から実施しても
同様の画像が得られる。
単純に行うには図19(a)に示すように実際のビット
マップで画素を反転させればよい。しかし、文字のサイ
ズが大きくなった場合や高解像度の場合には塗り潰しの
段階で全ての画素を調べなければならないので、速度的
に不利であり、単純な構造のために複雑なペイントルー
ルが利用しにくく、輪郭線の方向等のエッジの情報をつ
けるとメモリ効率が悪くなるといった欠点がある。
査線をリストで管理する方法がある。これは、選択した
エッジをリストに登録していき、全てのエッジが登録さ
れたところで各リストをソートし、塗り潰し過程ではこ
のリストからエッジを2つずつ取り出してこれを始点お
よび終点とする。なお、このリストはエッジリストと呼
ばれる。
を示す。図20(a)に示すように2つの輪郭線が隣接
する画素の中心点の間を通った場合には、反転する画素
が存在しないため、ドロップアウトが発生する。これは
図20(b)に示すように2つの輪郭線の走査線との各
交点から選択されるエッジが重なるために生じるもの
で、両輪郭線の間が輪郭線の外側であれば問題はない
が、エッジの選択の段階では通常内側か外側かは判らな
い。このような画素はスキャンコンバージョンの際に削
除することでドロップアウトを防止できる。他だし、こ
のような画素はエッジとは別のビットマップまたはエッ
ジリストに登録する必要がある。また、図20(c)
は、輪郭線と走査線の交点から求めたエッジでは発見で
きないドロップアウトの例を示しており、この場合には
副走査線方向からエッジを選択することでドロップアウ
トを発見できる。この例から判るように全てのドロップ
アウトを発見するには、走査線方向と副走査線方向の両
方から実施する必要がある。
する技術としては、特開平8−87602号公報で開示
されている「アウトラインフォント描画装置」や特開平
8−95545号公報で開示されている「アウトライン
フォント描画装置」等がある。
トラインフォント描画装置」では、走査線方向と副走査
線方向で各々スキャンコンバージョンを行い、別々のビ
ットマップを作成し、両者を合成することでドロップア
ウトの無いビットマップ画像を得ている。しかし、この
アウトラインフォント描画装置では、常に走査線方向と
副走査線方向の両方向からスキャンコンバージョンを行
っており、ドロップアウトの検出に要する時間が長くな
るとともに、ドロップアウトが発生する可能性の低い文
字または文字の一部分をスキャンコンバージョンする際
には無駄な処理を行っていることになる。
「アウトラインフォント描画装置」では、通常は各画素
の中心部に設定されるスキャンラインをずらしてスキャ
ンコンバージョンを行い、これによりドロップアウトの
発生を抑制している。ところが、スキャンラインをずら
すことでドロップアウトの発生を抑制しているために、
本来作成したい画像とは異なる画像ができる可能性があ
るとともに、スキャンラインの移動方向を輪郭線の方向
から判断しているので塗り潰しのルールによっては適用
できないものもある。
検出の例を示しており、図21(a)は走査線方向から
のスキャンコンバージョンでドロップアウトが発生した
例を、図21(b)は走査線方向からのドロップアウト
の検出結果を、図21(c)は副走査線方向からのドロ
ップアウトの検出結果を示している。このような場合に
は、図21(a)、(b)、(c)の各画像を合成する
ことで、図21(d)に示すような画素の抜け(ドロッ
プアウト)の無い画像を得ることができる。
きく、ドロップアウトが発生しなければ輪郭線からのエ
ッジの選択は走査線または副走査線方向のどちらか一方
から実施すればよいが、文字のサイズが小さくドロップ
アウトを処理する必要がある場合は、両方向からエッジ
の選択を実施しなければならい。
画像処理装置では、一般に水平(主走査)方向および垂
直(副走査)方向の両方向からスキャンコンバージョン
を行い、エッジリストへエッジを登録している。ドロッ
プアウトの補正を行う場合には、エッジリストに登録さ
れているエッジを水平および垂直の両方向でソートが必
要となり時間が掛かるうえ、両方向から得られた各エッ
ジをエッジリストのまま合成するとさらに時間が掛かる
ため、ビットマップを使用して合成を行っていた。その
ため、エッジリストを使用できる(エッジリストを直接
入力して使用できる)出力装置を高速に使用できず、ま
た、ビットマップの使用のために大量のメモリが必要で
あった。
を作成でき、使用するメモリの容量を少なくすることの
できる画像処理方法および装置を提供することを目的と
する。
ため、請求項1の発明では、描画する文字の輪郭線を走
査し、該走査を行う走査線と前記輪郭線との交点からエ
ッジを順次選択してエッジリストに登録し、該エッジリ
ストに基づいて前記エッジのうち所定のエッジ間の画素
を反転することで文字を表現してビットマップ上に展開
する画像処理方法において、走査を行う走査線と前記輪
郭線との交点から選択したエッジを2進木構造のデータ
として順次登録し、該2進木構造のデータに基づいてエ
ッジリストを作成することを特徴とする。
明において、前記2進木構造のデータへのエッジの登録
は、該2進木構造の根または節点に現に登録されている
エッジの座標値と前記登録する座標値との大小関係に基
づいて決定される節点に登録することを特徴とする。
明において、前記2進木構造のデータへのエッジの登録
は、該2進木構造のデータに前記登録するエッジの座標
値と同一の座標値のエッジが既に登録されている場合に
は、該同一の座標値のエッジを無効にするとともに、前
記登録するエッジをドロップアウトエッジとして登録す
ることを特徴とする。
明において、前記2進木構造のデータへのエッジの登録
は、該2進木構造のデータに前記登録するエッジの座標
値と同一の座標値のドロップアウトエッジが既に登録さ
れている場合には、該ドロップアウトエッジの座標値が
前記登録するエッジの座標値よりも大きいと見做して前
記大小関係に基づいて決定される節点に登録することを
特徴とする。
明において、前記ドロップアウトエッジの登録は、前記
2進木構造のデータに前記ドロップアウトエッジの座標
値と同一の座標値のエッジが登録されていない場合には
前記大小関係に基づいて決定される節点に登録し、前記
ドロップアウトエッジの座標値と同一の座標値のエッジ
が既に登録されてる場合には該ドロップアウトエッジの
座標値が前記登録するエッジの座標値よりも大きいと見
做して前記大小関係に基づいて決定される節点に登録す
ることを特徴とする。
5のいずれかの発明において、前記エッジリストの作成
は、前記2進木構造の根および節点に登録されているエ
ッジの座標値を所定の順序で読み出すことで行うことを
特徴とする。
6のいずれかの発明において、前記走査は、主走査方向
と該主走査方向に直交する副走査方向から行い、前記主
走査方向の走査から選択されたエッジを第1の2進木構
造のデータに登録し、前記副走査方向の走査から選択さ
れたエッジを第2の2進木構造のデータに登録するとと
もに、前記副走査方向の走査から選択されたエッジがド
ロップアウトエッジとして登録される場合には、該ドロ
ップアウトエッジを前記第1の2進木構造のデータに登
録することを特徴とする。
の輪郭線を走査し、該走査を行う走査線と前記輪郭線と
の交点からエッジを順次選択してエッジリストに登録
し、該エッジリストに基づいて前記エッジのうち所定の
エッジ間の画素を反転することで文字を表現してビット
マップ上に展開する画像処理装置において、走査を行う
走査線と前記輪郭線との交点から選択したエッジを2進
木構造のデータとして順次登録するエッジ登録手段と、
前記エッジ登録手段により前記2進木構造のデータに登
録されたエッジに基づいてエッジリストを生成するエッ
ジリスト作成手段とを具備することを特徴とする。
明において、前記エッジ登録手段は、登録するエッジ
を、該登録するエッジの座標値と前記2進木構造の根ま
たは節点に現に登録されているエッジの座標値との大小
関係に基づいて決定される節点に登録することを特徴と
する。
発明において、前記エッジ登録手段は、前記2進木構造
のデータに登録するエッジの座標値と同一の座標値のエ
ッジが既に登録されている場合には、該同一の座標値の
エッジを無効にするとともに、前記登録するエッジをド
ロップアウトエッジとして登録することを特徴とする。
発明において、前記エッジ登録手段は、前記2進木構造
のデータに登録するエッジの座標値と同一の座標値のド
ロップアウトエッジが既に登録されている場合には、該
ドロップアウトエッジの座標値が前記登録するエッジの
座標値よりも大きいと見做して前記大小関係に基づいて
決定される節点に登録することを特徴とする。
の発明において、前記エッジ登録手段は、前記2進木構
造のデータに登録するドロップアウトエッジの座標値と
同一の座標値のエッジが登録されていない場合には前記
大小関係に基づいて決定される節点に登録し、前記ドロ
ップアウトエッジの座標値と同一の座標値のエッジが既
に登録されてる場合には該ドロップアウトエッジの座標
値が前記登録するエッジの座標値よりも大きいと見做し
て前記大小関係に基づいて決定される節点に登録するこ
とを特徴とする。
至12のいずれかの発明において、前記エッジリスト作
成手段は、前記2進木構造の根および節点に登録されて
いるエッジの座標値を所定の順序で読み出してエッジリ
ストを作成することを特徴とする。
乃至13のいずれかの発明において、ドロップアウト判
定手段をさらに具備するとともに、主走査方向と該主走
査方向に直交する副走査方向から前記走査を行い、前記
エッジ登録手段は、前記主走査方向の走査から選択され
たエッジを第1の2進木構造のデータに登録し、前記副
走査方向の走査から選択されたエッジを第2の2進木構
造のデータに登録し、前記ドロップアウト判定手段は、
前記副走査方向の走査から選択されたエッジが前記第2
の2進木構造に既に登録されていた場合に、該選択され
たエッジをドロップアウトエッジと判定して前記第1の
2進木構造のデータに登録することを特徴とする。
方法および装置の一実施例を添付図面を参照して詳細に
説明する。
構成を示すブロック図である。画像処理装置10は、ア
ウトライン情報の拡大縮小等の座標変換と曲線(輪郭線
情報)を画素に応じて滑らかに見える大きさの直線に分
割(複数の直線による近似)を行う座標変換手段1と、
走査線および副走査線と輪郭線の交点を検出してエッジ
リストの作成およびドロップアウトの検出を行う交点・
ドロップアウト検出手段2、エッジリストからビットマ
ップを生成するビットマップ展開手段3を具備して構成
される。また、交点・ドロップアウト検出手段2は、走
査線と輪郭線の交点からエッジを選択して後述する2分
探索木に登録するエッジ登録手段2aと副走査線方向か
ら選択されたエッジに基づいてドロップアウトを検出す
るドロップアウト検出手段2b、エッジを登録した2分
探索木に基づいてエッジリストを作成するエッジリスト
作成手段2cを具備して構成される。
示すようにCPU11と、RAM12、ROM13、外
部記憶装置14、ビデオI/F(インタフェイス)1
5、フレームバッファ16、プリンタI/F(インタフ
ェイス)17を具備して構成される。
ップアウト検出手段2、ビットマップ展開手段3は、R
AM12またはROM13に収められたプログラムによ
りCPU11上で構成される。また、RAM12には上
述のエッジリスト等が構成され、ROM13および外部
記憶装置14にはアウトラインフォントデータが格納さ
れている。フレームバッファ16は、ビットマップ展開
手段3が展開したビットマップ画像を一時的に記憶し、
この画像をビデオI/F15に接続されたディスプレイ
(不図示)またはプリンタI/F17に接続されたペー
ジプリンタ(不図示)等の外部出力装置へ出力する。
明する。画像処理装置10では、エッジリストの作成に
先立って、走査により選択されたエッジを2分探索木
(2進木構造のデータ)に登録する。この2分探索木は
エッジリスト1つに相当し、走査線方向と副走査線方向
で各々走査線(副走査線)毎に2分探索木を用意する。
ールを説明する。図3は、2分探索木の概念図である。
同図に示すように、根50には節点51−1、51−2
が接続され、根50の左側の節点51−1には根50に
登録されている値(10)よりも小さい値(5)が登録
されており、根50の右側の節点51−2には根50に
登録されている値よりも大きい値(12)が登録されて
いる。
さい値(3)が登録された節点52−1、右側に大きい
値(7)が登録された節点52−2が接続され、節点5
1−2(値12)には右側に大きい値(20)が登録さ
れた節点52−4が接続されている。同様に、節点52
−1には節点53−1が、節点52−4には節点53−
7と節点53−8が接続されている。
8に登録されている値は、走査線方向から選択されたエ
ッジを登録する2分探索木ではエッジのx座標値であ
り、副走査線方向から選択されたエッジを登録する2分
探索木ではエッジのy座標値である。
新たな値(8)を登録するときは、図4(a)に示すよ
うに、まず登録する値(8)と根50の値(10)を比
較し、登録する値の方が小さければ、次に左側の節点5
1−1の値(5)と比較する。この場合、登録する値
(8)の方が大きいので、次に右側の節点52−2の値
(7)との比較を行う。この場合にも登録する値(8)
の方が大きいので右側の節点との値を比較しようとする
が、節点が存在しないため、ここに新たな節点53−4
を設定して値(8)を登録する。
合には、同様の方法で図4(b)に示すように、根50
と節点51−2、52−4、53−7との比較を行っ
て、新たな節点54−14に値(18)を登録する。
ている場合、つまり、登録しようとするエッジと同一座
標のエッジが既に登録されている場合、例えば、図5
(a)に示すような2分探索木に値(12)を登録しよ
うとする場合には、節点51−2に同じ値(12)が登
録されているので、これを図5(b)に示すように無効
な節点61−2に設定し、さらにこの値をドロップアウ
トとして(走査線方向の)2分探索木に登録する。な
お、登録しようとする値が無効な節点として登録されて
いた場合には、これを有効な節点に登録し直す。
登録およびドロップアウトが登録されている2分探索木
へのエッジの登録のルールを示した図である。2分探索
木へのドロップアウトの登録とドロップアウトが登録さ
れている2分探索木へのエッジの登録は、どちらの場合
も同じ座標値のドロップアウト、エッジが登録されてい
ない状態では、通常のエッジの登録と同様に行う。例え
ば、図6(a)に示す2分探索木にドロップアウト(値
13)を登録する場合には、図6(b)に示すように節
点51−2の左側にドロップアウトを示す節点72−3
を設定して登録する。
同じ座標のエッジが既に登録されている場合は、エッジ
の値よりもドロップアウトの値の方が大きいものと見做
して登録を行う。例えば、図6(c)に示す2分探索木
にドロップアウト(値12)を登録する場合には、節点
61−2に無効なエッジ(値12)が登録されているた
め、ドロップアウト(値12)は、図6(d)に示すよ
うにエッジ(値12)よりも大きい値と見做され、節点
53−7の左側にドロップアウトを示す節点74−13
を設定して登録される。同様に図6(e)に示す2分探
索木にドロップアウト(値3)を登録する場合には、節
点52−1にエッジ(値3)が登録されているため、ド
ロップアウト(値3)は、図6(f)に示すようにエッ
ジ(値3)よりも大きい値と見做され、節点52−1の
右側にドロップアウトを示す節点73−2を設定して登
録される。
に、同じ座標値のドロップアウトが既に登録されている
場合は、エッジの値よりもドロップアウトの値の方が大
きいものと見做して登録を行う。例えば、図6(g)に
示す2分探索木にエッジ(値7)を登録する場合には、
節点72−2にドロップアウト(値7)が登録されてい
るため、エッジ(値7)は、図6(h)に示すようにド
ロップアウト(値7)よりも小さい値と見做され、節点
72−2の左側にエッジを示す節点53−3を設定して
登録される。
同一であった場合に、エッジの値よりもドロップアウト
の値の方が大きいものと見做すのは、後述する方法で2
分探索木からエッジリストを作成すると値の小さい節点
が先に処理されることに関係する。これは、ドロップア
ウトに対する処理が輪郭線の内側か外側かで異なるた
め、エッジリストにはドロップアウトよりも先にエッジ
が登録されると都合がよく、そのためにエッジの値をド
ロップアウトの値よりも小さい値と見做すことになる。
置10の動作を説明する。図7乃至11は、夫々画像処
理装置10の動作の流れを示すフローチャートである。
ないインタフェース等を通じて図示しないRAM(また
はRAM12)上に貯えられた画像情報等を読み込む。
画像情報が文字コードであればROM13または外部記
憶装置14からアウトラインフォントデータを読みだし
て画像生成プログラムの実行を開始する(図7、ステッ
プ101)。
線方向の2分探索木と副走査線方向の2分探索木、エッ
ジリスト等を作成し、これらリストを初期化する(ステ
ップ102)。続いて、CPU11は画像変換手段1を
実行して、輪郭線(アウトライン)を出力したい大きさ
に座標変換し(ステップ103)、この輪郭線を短い複
数の直線に分割する(曲線部は直線近似、ステップ10
4)。
は、交点・ドロップアウト検出手段2を実行して、エッ
ジの選択と2分探索木への登録およびドロップアウトの
検出を行い(ステップ105)、2分探索木からエッジ
リストの作成を行う(ステップ106)。なお、ステッ
プ105および106の動作の詳細は後述する。
段3を実行して、エッジリストからビットマップを生成
し(ステップ107)、フレームバッファ16へ出力す
る(ステップ108)。
イやページプリンタ等)が、一定時間間隔またはCPU
11からの終了信号に応じてフレームバッファ16を調
べ、登録されているビットマップを出力することで画像
処理装置10は動作を終了する(ステップ109)。
ジの選択と2分探索木への登録およびドロップアウトの
検出処理の詳細について説明する。交点・ドロップアウ
ト検出手段2は、まず、直線に分割された最初(予め設
定した順序の最初であり、どのような順序でも良い)の
輪郭線をセットし(図8、ステップ201)、走査線と
の交点(複数)を検出する(ステップ202)。続い
て、検出された交点のy座標値の小数点以下を切り捨
て、x座標値の小数点以下を四捨五入してピクセル座標
を取得する(ステップ203)。このピクセル座標は、
交点とy座標が等しく、交点の右側にある画素(画素の
中心点)のうち最も近い画素であるので、これをエッジ
として走査線方向の2分探索木に順次登録する(ステッ
プ204)。走査線方向の2分探索木への登録は、エッ
ジ登録手段2aを実行し、まず、最初のエッジをセット
し(図9、ステップ301)、その座標値のy座標値か
ら登録する2分探索木を選択する。次に、エッジを2分
探索木へ上述のルールに従って登録する(ステップ30
2)。ここで、登録したエッジがドロップアウトであれ
ば(ステップ303でYES)、そのドロップアウト
(の座標を)セットし(ステップ304)、2分探索木
へ登録する(ステップ302)。
ば(ステップ303でNO)、これらの処理を最後のエ
ッジを登録するまで(ステップ305でNO)、次のエ
ッジをセットして繰り返し(ステップ306)、最後の
エッジを登録すると(ステップ305でYES)、ステ
ップ205(図8)へ進む。
の交点を検出し(ステップ205)、検出された交点の
x座標値の小数点以下を切り捨て、y座標値の小数点以
下を四捨五入してピクセル座標を取得し(ステップ20
6)、これをエッジとして副走査方向の2分探索木に順
次登録する(ステップ207)。副走査線方向の2分探
索木への登録は、走査線エッジリストへの登録は、ドロ
ップアウト検出手段2bを実行し、まず、最初のエッジ
をセットし(図10、ステップ401)、その座標値の
x座標値から登録する2分探索木を選択する。次に、エ
ッジを2分探索木へ上述のルールに従って登録する(ス
テップ402)。ここで、登録したエッジがドロップア
ウトであれば(ステップ403でYES)、そのドロッ
プアウトを走査線方向の2分探索木に登録する(ステッ
プ404)。この登録はエッジ登録手段2aが行い、登
録の方法は上述した方法と同じであるので説明は省略す
る。
に登録するか(ステップ404)、登録したエッジがド
ロップアウトでなければ(ステップ403でNO)、こ
れらの処理を最後のエッジを登録するまで(ステップ4
05でNO)、次のエッジをセットして繰り返し(ステ
ップ406)、最後のエッジを登録すると(ステップ4
05でYES)、ステップ208(図8)へ進む。
7)は、最後の輪郭線に対する処理が終了するまでは
(ステップ208でNO)、次の輪郭線をセットして
(ステップ209)、繰り返し、最後の輪郭線に対する
処理が終了すると(ステップ208でYES)、ステッ
プ105(図7)の処理を終了して、ステップ106へ
進む。
探索木からエッジリストの作成処理の詳細について説明
する。交点・ドロップアウト検出手段2は、エッジリス
ト作成手段2cを実行し、まず、走査線方向の2分探索
木の最初のエッジ(根に登録されているエッジまたはド
ロップアウト)をセットする(図11、ステップ50
1)。ここで、根の左側に節点があればステップ502
以下の処理を再帰呼び出しして行い(ステップ50
2)、再帰呼び出しを終了した場合や行わなかった場合
には、現にセットされているものがドロップアウトであ
れば(ステップ503でYES)、そのドロップアウト
が輪郭線の外側であった場合に(図12(a)に示すよ
うにドロップアウトが輪郭線の内側であれば登録する必
要がなく、図12(b)に示すようにドロップアウトが
輪郭線の外側であれば登録の必要がある)、1画素分の
始点および終点をエッジリストに登録し(ステップ50
4)、現にセットされているものがエッジであれば(ス
テップ503でNO)、そのエッジが有効な場合にエッ
ジリストに登録する(ステップ505)。次に、現在処
理している根または節点の右側に節点があればステップ
502以下の処理を再帰呼び出しして行い(ステップ5
06)、全ての再帰呼び出しを終了した場合や行わなか
った場合には、エッジリストの作成処理を終了してステ
ップ107(図7)に進む。
木で図11に示したエッジリストの作成を行った場合の
一例を説明する。まず、根50をセットすると(ステッ
プ501)、根50の左側には節点51−1が存在する
ので再帰呼び出しを行う(ステップ502−0、−nは
再帰呼び出しを行っている回数を示し、0は再帰呼び出
しを行っていない状態のステップを示す)。
側には節点52−1が存在するため再び再帰呼び出しを
行う(ステップ502−1)。このように再帰呼び出し
により処理を行うと、節点53−1に対してはステップ
502−2で再帰呼び出しされたステップ504−3の
処理が行われ、節点52−1に対しては、ステップ50
4−3の処理の後でステップ502−2に戻り、ステッ
プ504−2の処理が行われる。また、節点52−2に
対しては、ステップ504−2の処理の後でステップ5
02−1に戻り節点51−1に対する処理(ステップ5
04−1)が行われた後で、ステップ506−1で呼び
出されたステップ504−2の処理が行われる。
1)から節点52−1(値3)、節点51−1(値
5)、節点52−2(値7)、根50(値10)、節点
51−2(値12)、節点53−7(値15)、節点5
2−4(値20)、節点53−8(値22)の順に行わ
れ、ソートを行わなくとも昇順にエッジリストへの登録
を行うことができる。
走査線方向の2分探索木から作成した場合を示したが、
当然のことながら上述の実施例の走査線方向と副走査線
方向を入れ替えても同様の処理が可能である。
および2分探索木からのエッジリストの作成のルール
は、上述の実施例のものに限らず、他のルールを適用で
きることを付記しておく。
ば、走査により選択したエッジを2分探索木に登録する
とともに、検出されたドロップアウトをもその2分探索
木に登録し、2分探索木からエッジリストを作成するよ
うに構成したので、エッジリストのソートが必要無く、
2方向のビットマップを合成することによるドロップア
ウトの補正も行う必要がないので、使用するメモリ容量
を低減し、高速に処理を行うことができる。
ロック図。
図。
のルールを示した図。
ロップアウトが登録されている2分探索木へのエッジの
登録のルールを示した図。
ャート(1)。
ャート(2)。
ャート(3)。
チャート(4)。
チャート(5)。
図。
作成を行った場合の作成順序を示した図。
トマップを示した図。
る方法を示した図。
図。
Claims (14)
- 【請求項1】 描画する文字の輪郭線を走査し、該走査
を行う走査線と前記輪郭線との交点からエッジを順次選
択してエッジリストに登録し、該エッジリストに基づい
て前記エッジのうち所定のエッジ間の画素を反転するこ
とで文字を表現してビットマップ上に展開する画像処理
方法において、 走査を行う走査線と前記輪郭線との交点から選択したエ
ッジを2進木構造のデータとして順次登録し、該2進木
構造のデータに基づいてエッジリストを作成することを
特徴とする画像処理方法。 - 【請求項2】 前記2進木構造のデータへのエッジの登
録は、 該2進木構造の根または節点に現に登録されているエッ
ジの座標値と前記登録する座標値との大小関係に基づい
て決定される節点に登録することを特徴とする請求項1
記載の画像処理方法。 - 【請求項3】 前記2進木構造のデータへのエッジの登
録は、 該2進木構造のデータに前記登録するエッジの座標値と
同一の座標値のエッジが既に登録されている場合には、
該同一の座標値のエッジを無効にするとともに、前記登
録するエッジをドロップアウトエッジとして登録するこ
とを特徴とする請求項1記載の画像処理方法。 - 【請求項4】 前記2進木構造のデータへのエッジの登
録は、 該2進木構造のデータに前記登録するエッジの座標値と
同一の座標値のドロップアウトエッジが既に登録されて
いる場合には、該ドロップアウトエッジの座標値が前記
登録するエッジの座標値よりも大きいと見做して前記大
小関係に基づいて決定される節点に登録することを特徴
とする請求項2記載の画像処理方法。 - 【請求項5】 前記ドロップアウトエッジの登録は、 前記2進木構造のデータに前記ドロップアウトエッジの
座標値と同一の座標値のエッジが登録されていない場合
には前記大小関係に基づいて決定される節点に登録し、
前記ドロップアウトエッジの座標値と同一の座標値のエ
ッジが既に登録されてる場合には該ドロップアウトエッ
ジの座標値が前記登録するエッジの座標値よりも大きい
と見做して前記大小関係に基づいて決定される節点に登
録することを特徴とする請求項3記載の画像処理方法。 - 【請求項6】 前記エッジリストの作成は、 前記2進木構造の根および節点に登録されているエッジ
の座標値を所定の順序で読み出すことで行うことを特徴
とする請求項1乃至5のいずれかに記載の画像処理方
法。 - 【請求項7】 前記走査は、 主走査方向と該主走査方向に直交する副走査方向から行
い、前記主走査方向の走査から選択されたエッジを第1
の2進木構造のデータに登録し、前記副走査方向の走査
から選択されたエッジを第2の2進木構造のデータに登
録するとともに、前記副走査方向の走査から選択された
エッジがドロップアウトエッジとして登録される場合に
は、該ドロップアウトエッジを前記第1の2進木構造の
データに登録することを特徴とする請求項3乃至6のい
ずれかに記載の画像処理方法。 - 【請求項8】 描画する文字の輪郭線を走査し、該走査
を行う走査線と前記輪郭線との交点からエッジを順次選
択してエッジリストに登録し、該エッジリストに基づい
て前記エッジのうち所定のエッジ間の画素を反転するこ
とで文字を表現してビットマップ上に展開する画像処理
装置において、 走査を行う走査線と前記輪郭線との交点から選択したエ
ッジを2進木構造のデータとして順次登録するエッジ登
録手段と、 前記エッジ登録手段により前記2進木構造のデータに登
録されたエッジに基づいてエッジリストを生成するエッ
ジリスト作成手段とを具備することを特徴とする画像処
理装置。 - 【請求項9】 前記エッジ登録手段は、 登録するエッジを、該登録するエッジの座標値と前記2
進木構造の根または節点に現に登録されているエッジの
座標値との大小関係に基づいて決定される節点に登録す
ることを特徴とする請求項8記載の画像処理装置。 - 【請求項10】 前記エッジ登録手段は、 前記2進木構造のデータに登録するエッジの座標値と同
一の座標値のエッジが既に登録されている場合には、該
同一の座標値のエッジを無効にするとともに、前記登録
するエッジをドロップアウトエッジとして登録すること
を特徴とする請求項8記載の画像処理装置。 - 【請求項11】 前記エッジ登録手段は、 前記2進木構造のデータに登録するエッジの座標値と同
一の座標値のドロップアウトエッジが既に登録されてい
る場合には、該ドロップアウトエッジの座標値が前記登
録するエッジの座標値よりも大きいと見做して前記大小
関係に基づいて決定される節点に登録することを特徴と
する請求項9記載の画像処理装置。 - 【請求項12】 前記エッジ登録手段は、 前記2進木構造のデータに登録するドロップアウトエッ
ジの座標値と同一の座標値のエッジが登録されていない
場合には前記大小関係に基づいて決定される節点に登録
し、前記ドロップアウトエッジの座標値と同一の座標値
のエッジが既に登録されてる場合には該ドロップアウト
エッジの座標値が前記登録するエッジの座標値よりも大
きいと見做して前記大小関係に基づいて決定される節点
に登録することを特徴とする請求項10記載の画像処理
装置。 - 【請求項13】 前記エッジリスト作成手段は、 前記2進木構造の根および節点に登録されているエッジ
の座標値を所定の順序で読み出してエッジリストを作成
することを特徴とする請求項8乃至12のいずれかに記
載の画像処理方法。 - 【請求項14】 ドロップアウト判定手段をさらに具備
するとともに、 主走査方向と該主走査方向に直交する副走査方向から前
記走査を行い、 前記エッジ登録手段は、前記主走査方向の走査から選択
されたエッジを第1の2進木構造のデータに登録し、前
記副走査方向の走査から選択されたエッジを第2の2進
木構造のデータに登録し、 前記ドロップアウト判定手段は、前記副走査方向の走査
から選択されたエッジが前記第2の2進木構造に既に登
録されていた場合に、該選択されたエッジをドロップア
ウトエッジと判定して前記第1の2進木構造のデータに
登録することを特徴とする請求項10乃至13のいずれ
かに記載の画像処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP07934698A JP3603589B2 (ja) | 1998-03-26 | 1998-03-26 | 画像処理方法および装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP07934698A JP3603589B2 (ja) | 1998-03-26 | 1998-03-26 | 画像処理方法および装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11282448A true JPH11282448A (ja) | 1999-10-15 |
| JP3603589B2 JP3603589B2 (ja) | 2004-12-22 |
Family
ID=13687350
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP07934698A Expired - Fee Related JP3603589B2 (ja) | 1998-03-26 | 1998-03-26 | 画像処理方法および装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3603589B2 (ja) |
-
1998
- 1998-03-26 JP JP07934698A patent/JP3603589B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP3603589B2 (ja) | 2004-12-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8212815B2 (en) | Drawing apparatus, drawing program, and drawing method | |
| JP4180043B2 (ja) | 3次元図形描画処理装置、画像表示装置、3次元図形描画処理方法、これをコンピュータに実行させるための制御プログラムおよび、これを記録したコンピュータ読み取り可能な可読記録媒体 | |
| JP4492082B2 (ja) | 画像出力制御方法および装置並びにプログラム | |
| JP3603589B2 (ja) | 画像処理方法および装置 | |
| US20060119897A1 (en) | Output apparatus and program thereof | |
| JP2770582B2 (ja) | 図形塗潰し装置 | |
| JPH10312407A (ja) | 図面表示装置 | |
| JP3567727B2 (ja) | 画像処理方法および装置 | |
| JP3567728B2 (ja) | 画像処理方法および装置 | |
| JP3146771B2 (ja) | フォントラスタライズ装置およびその方法 | |
| JPH05242213A (ja) | 線図作成装置 | |
| US9953249B2 (en) | Method and system for generating a drawing order list for multiple drawing objects based on scanlines | |
| JP3139805B2 (ja) | 画像処理方法及びその装置 | |
| JPH1185428A (ja) | 画像形成方法及び画像形成装置 | |
| JP2002208017A (ja) | 描画処理装置 | |
| JP3835287B2 (ja) | ビットマップデータ処理方式、ビットマップデータ処理方法およびビットマップデータ処理用プログラム | |
| JP2634905B2 (ja) | 図形ぬりつぶし方法 | |
| JP3350324B2 (ja) | キャラクタ出力装置 | |
| JPH10198333A (ja) | アウトライン文字描画装置 | |
| JPH10124025A (ja) | クリッピング方法およびクリッピング装置 | |
| JP2006031160A (ja) | グラフィックオブジェクト処理方法 | |
| JP4536852B2 (ja) | 文字の表示方法および装置 | |
| JP2001307115A (ja) | 画像処理装置および画像処理方法 | |
| JPH07160811A (ja) | 文字認識装置 | |
| JP2000322586A (ja) | 輪郭情報生成装置、輪郭情報展開装置、輪郭情報生成プログラム記憶媒体、輪郭情報展開プログラム記憶媒体、輪郭情報生成方法及び輪郭情報展開方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040113 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040210 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040412 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040525 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040716 |
|
| 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: 20040907 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040920 |
|
| 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: 20071008 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081008 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091008 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101008 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111008 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121008 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121008 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131008 Year of fee payment: 9 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| S802 | Written request for registration of partial abandonment of right |
Free format text: JAPANESE INTERMEDIATE CODE: R311802 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |