JPH0371377A - 画像処理方法 - Google Patents
画像処理方法Info
- Publication number
- JPH0371377A JPH0371377A JP1208630A JP20863089A JPH0371377A JP H0371377 A JPH0371377 A JP H0371377A JP 1208630 A JP1208630 A JP 1208630A JP 20863089 A JP20863089 A JP 20863089A JP H0371377 A JPH0371377 A JP H0371377A
- Authority
- JP
- Japan
- Prior art keywords
- outline
- vector
- filling
- axis direction
- outline vector
- 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 description 18
- 239000013598 vector Substances 0.000 claims abstract description 60
- 230000009467 reduction Effects 0.000 claims abstract description 7
- 230000008859 change Effects 0.000 claims description 12
- 238000010422 painting Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 9
- 238000007781 pre-processing Methods 0.000 description 7
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 238000000034 method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- UGFAIRIUMAVXCW-UHFFFAOYSA-N Carbon monoxide Chemical compound [O+]#[C-] UGFAIRIUMAVXCW-UHFFFAOYSA-N 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
Landscapes
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〈産業上の利用分野〉
この発明は、図形の輪郭をアウトラインベクトルで表わ
し、このアウトラインベクトルからアウトラインを作成
して、このアウトラインの内部を塗りつぶすようにした
画像処理装置に関する。
し、このアウトラインベクトルからアウトラインを作成
して、このアウトラインの内部を塗りつぶすようにした
画像処理装置に関する。
〈従来の技術〉
図形の任意領域を塗りつぶす方法としては従来からシー
ドフィルやスキャンフィルが知られており、シードフィ
ルは多くの画像処理プロセッサーに採用されているが、
スキャンフィルと比べて処理速度が遅いという欠点があ
る。
ドフィルやスキャンフィルが知られており、シードフィ
ルは多くの画像処理プロセッサーに採用されているが、
スキャンフィルと比べて処理速度が遅いという欠点があ
る。
スキャンフィルは第5図に示すように、塗りつぶしたい
図形の輪郭をアウトラインベクトルで示し、このアウト
ラインベクトルの向きを、その左側を塗りつぶすと図形
が塗りつぶされるように設定する。例えば、第6図(a
)に示す元データから第6図(b)に示すアウトライン
ベクトルを作成する。そして、このアウトラインベクト
ルから第7図(a)に示すようなアウトラインを作成し
、X方向へスキャニングして、水平走査線と、このアウ
トラインとの奇数回目の交差で塗りつぶしを開始し、偶
数回目の交差で塗りつぶしを中止して、第7図(b)に
示すような図形を得るようになっている。
図形の輪郭をアウトラインベクトルで示し、このアウト
ラインベクトルの向きを、その左側を塗りつぶすと図形
が塗りつぶされるように設定する。例えば、第6図(a
)に示す元データから第6図(b)に示すアウトライン
ベクトルを作成する。そして、このアウトラインベクト
ルから第7図(a)に示すようなアウトラインを作成し
、X方向へスキャニングして、水平走査線と、このアウ
トラインとの奇数回目の交差で塗りつぶしを開始し、偶
数回目の交差で塗りつぶしを中止して、第7図(b)に
示すような図形を得るようになっている。
このようなスキャンフィルにより図形を塗りつぶすよう
にした画像処理方法としては、従来、特公昭53−41
017号公報に示すようなものがある。この画像処理方
法はアウトラインベクトルから周知のブレーゼンハムの
アルゴリズムに従ってアウトラインを作成し、例えば第
8図(a)、第9図(a)および第10図(a)に示す
ようなアウトラインを得るようにしている。
にした画像処理方法としては、従来、特公昭53−41
017号公報に示すようなものがある。この画像処理方
法はアウトラインベクトルから周知のブレーゼンハムの
アルゴリズムに従ってアウトラインを作成し、例えば第
8図(a)、第9図(a)および第10図(a)に示す
ようなアウトラインを得るようにしている。
そして、X方向へスキャニングして、水平走査線どこれ
らのアウトラインとの奇数回目の交差の際に塗りつぶし
を開始し、交差した画素も含めて塗りつぶし、偶数回目
の交差の際に塗りつぶしを中止し、交差した画素まで塗
りつぶすようにしている。
らのアウトラインとの奇数回目の交差の際に塗りつぶし
を開始し、交差した画素も含めて塗りつぶし、偶数回目
の交差の際に塗りつぶしを中止し、交差した画素まで塗
りつぶすようにしている。
ところで、上記従来の画像処理方法では、アウトライン
を作成する場合、第8図(a)における頂部や第9図(
a)における中央部のようにアウトラインベクトルが同
一画素上に重なった場合には、その画素の位置がアウト
ラインとなる。このため、水平走査線がこのアウトライ
ンと交差すると、その画素を含めてその右側の画素をす
べて塗りつぶすことになり、第8図(b)や第9図(b
)に示すような塗りつぶしの誤りが生じる。また、第1
O図(a)のようにスキャン方向と平行なアウトライン
が作成された場合、そのアウトラインが、走査線が交差
する最初の画素から数えて奇数番目の画素で終りている
場合には、その奇数番目の画素の右側の画素も塗りつぶ
されるため第1O図(b)に示すような塗りつぶしの誤
りが生じる。
を作成する場合、第8図(a)における頂部や第9図(
a)における中央部のようにアウトラインベクトルが同
一画素上に重なった場合には、その画素の位置がアウト
ラインとなる。このため、水平走査線がこのアウトライ
ンと交差すると、その画素を含めてその右側の画素をす
べて塗りつぶすことになり、第8図(b)や第9図(b
)に示すような塗りつぶしの誤りが生じる。また、第1
O図(a)のようにスキャン方向と平行なアウトライン
が作成された場合、そのアウトラインが、走査線が交差
する最初の画素から数えて奇数番目の画素で終りている
場合には、その奇数番目の画素の右側の画素も塗りつぶ
されるため第1O図(b)に示すような塗りつぶしの誤
りが生じる。
このような誤りを発生しないようにするため、従来は、
例えば、第7図(a)に示すように、頂部のアウトライ
ンからX軸方向に!ドツトずれた画素の位置をもアウト
ラインとするような処理をしていた。また、スキャン方
向と平行なアウトラインにあっては長さが偶数ドツトと
なるようにするか始点と終点だけをプロットする処理を
していた。
例えば、第7図(a)に示すように、頂部のアウトライ
ンからX軸方向に!ドツトずれた画素の位置をもアウト
ラインとするような処理をしていた。また、スキャン方
向と平行なアウトラインにあっては長さが偶数ドツトと
なるようにするか始点と終点だけをプロットする処理を
していた。
しかしながら、このようにした場合には、この処理を行
うホストの処理速度が遅くなりホストの負荷も大きくな
る。また、ベクトルフォントに上記処理を施して得られ
たアウトラインをマスクROMなどのメモリに入れてお
き、そのアウトラインを縮小したり回転した場合、例え
ば、第11図(a)に示すアウトラインを第1!図(b
)に示すように縮小した場合に、上述したような塗りつ
ぶしの誤りが発生することがある。また、例えば第12
図(a)に示すアウトラインに上記処理を施すと第12
図(b)のようなアウトラインとなるが、これを塗りつ
ぶすと第12図(c)のようになり、第12図(a)で
示す図形から形状の異なる図形ができてしまう。
うホストの処理速度が遅くなりホストの負荷も大きくな
る。また、ベクトルフォントに上記処理を施して得られ
たアウトラインをマスクROMなどのメモリに入れてお
き、そのアウトラインを縮小したり回転した場合、例え
ば、第11図(a)に示すアウトラインを第1!図(b
)に示すように縮小した場合に、上述したような塗りつ
ぶしの誤りが発生することがある。また、例えば第12
図(a)に示すアウトラインに上記処理を施すと第12
図(b)のようなアウトラインとなるが、これを塗りつ
ぶすと第12図(c)のようになり、第12図(a)で
示す図形から形状の異なる図形ができてしまう。
このように塗りつぶしを行なった場合に誤りが発生した
り、形状が異なったりするアウトラインとしては第13
図に示すものが典型的な例としてあげられる。第13図
(a) 、 (b)に示すアウトラインは第8図(a)
や第1O図(a)に示したアウトラインと同種のアウト
ラインであり、第13図(c)は同一画素を2つの境界
が共有する場合、第13図(d)は第13図(c)の極
限として2つの境界が全く一致する場合を示している。
り、形状が異なったりするアウトラインとしては第13
図に示すものが典型的な例としてあげられる。第13図
(a) 、 (b)に示すアウトラインは第8図(a)
や第1O図(a)に示したアウトラインと同種のアウト
ラインであり、第13図(c)は同一画素を2つの境界
が共有する場合、第13図(d)は第13図(c)の極
限として2つの境界が全く一致する場合を示している。
そして、丸印で囲ったアウトラインが誤りの原因となる
アウトラインを示している。
アウトラインを示している。
このように、上記従来の画像処理方法では、アウトライ
ン作成時に第13図に示すようなアウトラインを作成す
るため、このアウトラインに、図形塗りつぶしの際に誤
りを発生しないようにするための処理を施す必要が生じ
、処理速度が遅くなるという問題があった。また、上記
処理を施すために、塗りつぶしたあとの図形の形状が元
の図形の形状と大きく異なってしまい、ドツトフォント
よりも変倍、回転が容易でフォントが美しいベクトルフ
ォントの特徴を十分生かすことができないという問題が
あった。
ン作成時に第13図に示すようなアウトラインを作成す
るため、このアウトラインに、図形塗りつぶしの際に誤
りを発生しないようにするための処理を施す必要が生じ
、処理速度が遅くなるという問題があった。また、上記
処理を施すために、塗りつぶしたあとの図形の形状が元
の図形の形状と大きく異なってしまい、ドツトフォント
よりも変倍、回転が容易でフォントが美しいベクトルフ
ォントの特徴を十分生かすことができないという問題が
あった。
そこで、本発明者は、このような問題をなくすために、
かって、第14図から第18図に示す画像処理方法を提
案した。
かって、第14図から第18図に示す画像処理方法を提
案した。
第14図(a)および第15図(a) 、 (b) 、
(c) 、 (d)はこの画像処理方法により作成さ
れたアウトラインの例であり、それぞれ、上記従来例に
おける第8図(a)および第13図(a) 、 (b)
、 (c) 、 (d)に対応したものである。
(c) 、 (d)はこの画像処理方法により作成さ
れたアウトラインの例であり、それぞれ、上記従来例に
おける第8図(a)および第13図(a) 、 (b)
、 (c) 、 (d)に対応したものである。
これらのアウトラインに示すようにこの画像処理方法は
、アウトラインベクトルのY軸方向の変化量が負であれ
ば上記従来例と同様ブレーゼンハムのアルゴリズムに従
ってアウトラインを作成し、アウトラインベクトルのY
軸方向の変化量が零であれば、すなわちX軸に対して平
行であれば、アウトラインを作成せず、アウトラインベ
クトルのY軸方向の変化量が正であればブレーゼンハム
のアルゴリズムで決定される位置からX軸方向に1ドツ
トシフトした位置にアウトラインを作成するようになっ
ている。
、アウトラインベクトルのY軸方向の変化量が負であれ
ば上記従来例と同様ブレーゼンハムのアルゴリズムに従
ってアウトラインを作成し、アウトラインベクトルのY
軸方向の変化量が零であれば、すなわちX軸に対して平
行であれば、アウトラインを作成せず、アウトラインベ
クトルのY軸方向の変化量が正であればブレーゼンハム
のアルゴリズムで決定される位置からX軸方向に1ドツ
トシフトした位置にアウトラインを作成するようになっ
ている。
そして、X軸方向にスキャニングして、アウトラインと
水平走査線との奇数回目の交差の際に塗りつぶしを開始
し、交差した画素も含めて塗りつぶし、偶数回目の交差
の際に塗りつぶしを中止して、偶数回目に交差した画素
の直前の画素までを塗りつぶすようになっている。この
ように塗りつぶすことにより上記アウトラインで示され
る図形はそれぞれ第14図(b)および第16図(a)
、 (b) 、 (c) 。
水平走査線との奇数回目の交差の際に塗りつぶしを開始
し、交差した画素も含めて塗りつぶし、偶数回目の交差
の際に塗りつぶしを中止して、偶数回目に交差した画素
の直前の画素までを塗りつぶすようになっている。この
ように塗りつぶすことにより上記アウトラインで示され
る図形はそれぞれ第14図(b)および第16図(a)
、 (b) 、 (c) 。
(d)に示すように塗りつぶされる。
従って、従来例における第8図(b)、第9図(b)、
第10図(b)に示すような塗りつぶしにおける誤りが
生じることがなく、第12図に示すような図形の変形が
生じることもない。
第10図(b)に示すような塗りつぶしにおける誤りが
生じることがなく、第12図に示すような図形の変形が
生じることもない。
第17図はアウトラインベクトルデータから上記アウト
ライン(ラスターデータ)を作成するための回路の構成
を示すブロック図であり、第18図はこの回路の動作を
示すフローチャートである。
ライン(ラスターデータ)を作成するための回路の構成
を示すブロック図であり、第18図はこの回路の動作を
示すフローチャートである。
第17.18図において、まずマスクROMなどにスト
アされたアウトラインベクトルデータとsjnθ、co
sθ、 S x(x方向変倍率)、5yCy方向変倍率
)などのアフィン変換パラメータがDDA(ディジタル
微分解析機)の前処理部41に入力される。
アされたアウトラインベクトルデータとsjnθ、co
sθ、 S x(x方向変倍率)、5yCy方向変倍率
)などのアフィン変換パラメータがDDA(ディジタル
微分解析機)の前処理部41に入力される。
このDDAの前処理部41は内蔵した乗算器と加算器に
よって、上記アフィン変換パラメータにもとづいてアウ
トラインベクトルデータの回転、変倍、傾斜などのアフ
ィン変換処理を行なう。そして、アフィン変換処理が済
んだアウトラインベクトルデータをx、y絶対アドレス
に変換したのち、ブレーゼンハムのアルゴリズムの前処
理を行う。
よって、上記アフィン変換パラメータにもとづいてアウ
トラインベクトルデータの回転、変倍、傾斜などのアフ
ィン変換処理を行なう。そして、アフィン変換処理が済
んだアウトラインベクトルデータをx、y絶対アドレス
に変換したのち、ブレーゼンハムのアルゴリズムの前処
理を行う。
このブレーゼンハムのアルゴリズムの前処理において、
△yが正であればカレントポインタを1ドツトx方向に
シフトし、Δyが零であれば描画せず、△yが負であれ
ばブレーゼンハムのアルゴリズムの前処理をするだけで
カレントポインタはシフトしない。次に、この処理した
データをブレーゼンハムの描画部42に出力する。
△yが正であればカレントポインタを1ドツトx方向に
シフトし、Δyが零であれば描画せず、△yが負であれ
ばブレーゼンハムのアルゴリズムの前処理をするだけで
カレントポインタはシフトしない。次に、この処理した
データをブレーゼンハムの描画部42に出力する。
このブレーゼンハムの描画部42は上記DDAの前処理
部41から出力されたデータを内部出力バッファにブレ
ーゼンハムのアルゴリズムに従って書き込む。この場合
、△yによる処理はDDAノ前処前処連部41われてい
るのでブレーゼンハムの描画部42では意識しなくても
よい。
部41から出力されたデータを内部出力バッファにブレ
ーゼンハムのアルゴリズムに従って書き込む。この場合
、△yによる処理はDDAノ前処前処連部41われてい
るのでブレーゼンハムの描画部42では意識しなくても
よい。
上記ブレーゼンハムの描画部42の内部出力バッファに
書き込まれたデータは出力バッファ43に移される。そ
して、この出力バッファ43からアウトライン(ラスタ
ーデータ)が出力される。
書き込まれたデータは出力バッファ43に移される。そ
して、この出力バッファ43からアウトライン(ラスタ
ーデータ)が出力される。
〈発明が解決しようとする課題〉
ところで、上記従来の画像処理方法において、例えば第
2図(a)に示す図形からアウトラインベクトルを作成
し、そのアウトラインベクトルをアフィン変換により縮
小し、縮小したアウトラインベクトルからアウトライン
を作成すると第3図(a)のようになる。すなわち、第
2図(a)に示す図形Aおよび図形Bの輪郭は第2図(
b)に示すようにそれぞれ1つの起点と4つのベクトル
で表される。
2図(a)に示す図形からアウトラインベクトルを作成
し、そのアウトラインベクトルをアフィン変換により縮
小し、縮小したアウトラインベクトルからアウトライン
を作成すると第3図(a)のようになる。すなわち、第
2図(a)に示す図形Aおよび図形Bの輪郭は第2図(
b)に示すようにそれぞれ1つの起点と4つのベクトル
で表される。
そして、これを4分のlに縮小すると、上記起点とベク
トルはそれぞれ、第3図(b)に示すようになる。この
縮小されたベクトルから第3図(a)のアウトラインが
得られる。そして、このアウトラインをもとに塗りつぶ
しを行うと第4図のようになる。この図形かられかるよ
うに、y= 5 、x= 4 。
トルはそれぞれ、第3図(b)に示すようになる。この
縮小されたベクトルから第3図(a)のアウトラインが
得られる。そして、このアウトラインをもとに塗りつぶ
しを行うと第4図のようになる。この図形かられかるよ
うに、y= 5 、x= 4 。
5.6.7の画素か塗りつぶされないまま残っている。
これは、第3図(a)に示す2つの図形のアウトライン
のそれぞれによって表される領域の水平方向の一辺がY
=5の行で互いに重なっているために、重なった画素の
塗りつぶしが行われないためである。
のそれぞれによって表される領域の水平方向の一辺がY
=5の行で互いに重なっているために、重なった画素の
塗りつぶしが行われないためである。
このように、上記従来の画像処理方法では、つの図形の
アウトラインによって表される領域の水平方向の一辺が
、他の図形のアウトラインによって表される領域の水平
方向の一辺と重なっている場合に、重なった画素の塗り
つぶしが行われないという問題がある。
アウトラインによって表される領域の水平方向の一辺が
、他の図形のアウトラインによって表される領域の水平
方向の一辺と重なっている場合に、重なった画素の塗り
つぶしが行われないという問題がある。
そこで、この発明の目的は、上記のような重なりが生じ
た場合でも図形の塗りつぶしの誤りが生しない画像処理
方法を提供することにある。
た場合でも図形の塗りつぶしの誤りが生しない画像処理
方法を提供することにある。
く課題を解決するための手段〉
上記目的を達成するため、この発明は、図形の輪郭をア
ウトラインベクトルで表わし、かつ上記アウトラインベ
クトルの向きを、そのアウトラインベクトルの左側を塗
りつぶすと上記図形か塗りつぶされるように設定する一
方、上記図形を縮小する場合には上記アウトラインベク
トルを縮小して新たなアウトラインベクトルを作成し、
上記アウトラインベクトルのY軸方向の変化量が負か零
か正かを判別し、上記アウトラインベクトルのY軸方向
の変化量が負であればブレーゼンハムのアルゴリズムに
従ってアウトラインを作成し、上記アウトラインベクト
ルのY軸方向の変化量が零であればアウトラインを作成
せず、上記アウトラインベクトルのY軸方向の変化量が
正であればブレーゼンハムのアルゴリズムで決定される
位置からX軸方向にlドツトシフトした位置にアウトラ
インを作成し、上記作成したアウトラインと水平走査線
との奇数回目の交差の際に塗りつぶしを開始し、交差し
た画素も含めて塗りつぶし、偶数回目の交差の際に塗り
つぶしを中止して、偶数回目に交差した画素の直前の画
素までを塗りつぶすようにした画像処理方法において、
図形を縮小した場合は、」二記塗りつぶしを行う一方、
縮小して得られるアウトラインベクトルの始点と終点を
結ぶ線分上の画素を塗りつぶすようにしたことを特徴と
している。
ウトラインベクトルで表わし、かつ上記アウトラインベ
クトルの向きを、そのアウトラインベクトルの左側を塗
りつぶすと上記図形か塗りつぶされるように設定する一
方、上記図形を縮小する場合には上記アウトラインベク
トルを縮小して新たなアウトラインベクトルを作成し、
上記アウトラインベクトルのY軸方向の変化量が負か零
か正かを判別し、上記アウトラインベクトルのY軸方向
の変化量が負であればブレーゼンハムのアルゴリズムに
従ってアウトラインを作成し、上記アウトラインベクト
ルのY軸方向の変化量が零であればアウトラインを作成
せず、上記アウトラインベクトルのY軸方向の変化量が
正であればブレーゼンハムのアルゴリズムで決定される
位置からX軸方向にlドツトシフトした位置にアウトラ
インを作成し、上記作成したアウトラインと水平走査線
との奇数回目の交差の際に塗りつぶしを開始し、交差し
た画素も含めて塗りつぶし、偶数回目の交差の際に塗り
つぶしを中止して、偶数回目に交差した画素の直前の画
素までを塗りつぶすようにした画像処理方法において、
図形を縮小した場合は、」二記塗りつぶしを行う一方、
縮小して得られるアウトラインベクトルの始点と終点を
結ぶ線分上の画素を塗りつぶすようにしたことを特徴と
している。
〈実施例〉
以下、この発明を図示の実施例により詳細に説明する。
本実施例の画像処理方法は、第14図から第18図に示
す従来の画像処理方法と同様の方法でアウトラインベク
トルの作成、アウトラインの作成および作成したアウト
ラインにもとづく画素の塗りつぶしを行う。そして、図
形を縮小した場合は、上記塗りつぶしを行う一方、縮小
して得られるアウトラインベクトルの始点と終点を結ぶ
線分上の画素を塗りつぶす。このアウトラインベクトル
の始点と終点の座標は、縮小される前の図形に関するア
ウトラインベクトルの始点と終点の座標を求めた後、こ
の座標を縮小して求める。縮小して得られた座標の値が
小数点以下の端数を有する場合は小数点以下を切り捨て
る。
す従来の画像処理方法と同様の方法でアウトラインベク
トルの作成、アウトラインの作成および作成したアウト
ラインにもとづく画素の塗りつぶしを行う。そして、図
形を縮小した場合は、上記塗りつぶしを行う一方、縮小
して得られるアウトラインベクトルの始点と終点を結ぶ
線分上の画素を塗りつぶす。このアウトラインベクトル
の始点と終点の座標は、縮小される前の図形に関するア
ウトラインベクトルの始点と終点の座標を求めた後、こ
の座標を縮小して求める。縮小して得られた座標の値が
小数点以下の端数を有する場合は小数点以下を切り捨て
る。
例えば、第2図(a)に示す図形について、従来例と同
様に第3図(a)に示すアウトラインを作成し、第4図
に示すように塗りつぶしを行う。次に、第2図に示す図
形Aと図形Bの起点とベクトルよりそのベクトルの始点
と終点の座標を求める。図形Aについてその座標点をA
I、、A2.A3.A4とし、図形Bについてその座標
点をBl、B2.B3、B4とすると、各座標点は次ぎ
のようになる。
様に第3図(a)に示すアウトラインを作成し、第4図
に示すように塗りつぶしを行う。次に、第2図に示す図
形Aと図形Bの起点とベクトルよりそのベクトルの始点
と終点の座標を求める。図形Aについてその座標点をA
I、、A2.A3.A4とし、図形Bについてその座標
点をBl、B2.B3、B4とすると、各座標点は次ぎ
のようになる。
図形A
Al=起点=(16,22)
A2=AI+(20,0)=(36,22)A3−A2
+(0,8)−(36,30)A4=A3+(−20,
0)=(16,30)態脛旦 Bl=起点−(8,8) B2=B1+(20,0)=(28,8)B3=82+
(0,12)=(28,20)B4=83+(−20,
0)=(8,20)次ぎに、この座標点を1/4倍して
、小数点以下を切り捨てると次の座標点が得られる。
+(0,8)−(36,30)A4=A3+(−20,
0)=(16,30)態脛旦 Bl=起点−(8,8) B2=B1+(20,0)=(28,8)B3=82+
(0,12)=(28,20)B4=83+(−20,
0)=(8,20)次ぎに、この座標点を1/4倍して
、小数点以下を切り捨てると次の座標点が得られる。
K道N
へ!′=起点=(4,5)
A2°=(9,5)
A3’=(9,7)
A4°=(4,7)
殴程圧
B1°=起点−(2,2)
B2°=(7,2)
B3°=(7,5)
B4″=(2,5)
そして、図形Aに関しては、座標点AI’とA2°、A
2°とA3’、A3°とA4°、A4’とへ1を結ぶ線
分上の画素を塗りつぶし、図形Bに関しては、座標点B
1’とB2°、B2°とB3°、B3°とB4°、B4
°とBl’を結ぶ線分上の画素を塗りつぶす。この結果
、第1図の○印を付した画素が塗りつぶされ、第4図に
示す塗りつぶしの行なわれなかった画素の塗りつぶしも
行うことができる。
2°とA3’、A3°とA4°、A4’とへ1を結ぶ線
分上の画素を塗りつぶし、図形Bに関しては、座標点B
1’とB2°、B2°とB3°、B3°とB4°、B4
°とBl’を結ぶ線分上の画素を塗りつぶす。この結果
、第1図の○印を付した画素が塗りつぶされ、第4図に
示す塗りつぶしの行なわれなかった画素の塗りつぶしも
行うことができる。
このことにより、図形を縮小した結果、一つの図形のア
ウトラインによって表される領域の水平方向の一辺が、
他の図形のアウトラインによって表される領域の水平方
向の一辺と重なる場合でも、図形の塗りつぶしの誤りが
生じることがない。
ウトラインによって表される領域の水平方向の一辺が、
他の図形のアウトラインによって表される領域の水平方
向の一辺と重なる場合でも、図形の塗りつぶしの誤りが
生じることがない。
〈発明の効果〉
以上より明らかなように、この発明の画像処理方法は、
図形を縮小した場合に、縮小して得られたアウトライン
に基づいて塗りつぶしを行う一方、縮小して得られたア
ウトラインベクトルの始点と終点を求め、その始点と終
点を結ぶ線分上の画素を塗りつぶすようにしているので
、図形を縮小した結果、一つの図形のアウトラインによ
って表される領域の水平方向の一辺が、他の図形のアウ
トラインによって表される領域の水平方向の一辺と重な
る場合でも、図形の塗りつぶしの誤りが生じることがな
い。
図形を縮小した場合に、縮小して得られたアウトライン
に基づいて塗りつぶしを行う一方、縮小して得られたア
ウトラインベクトルの始点と終点を求め、その始点と終
点を結ぶ線分上の画素を塗りつぶすようにしているので
、図形を縮小した結果、一つの図形のアウトラインによ
って表される領域の水平方向の一辺が、他の図形のアウ
トラインによって表される領域の水平方向の一辺と重な
る場合でも、図形の塗りつぶしの誤りが生じることがな
い。
第1図はこの発明の画像処理方法の一実施例による塗り
つぶしを説明する図、第2図は従来の画像処理方法にお
いて縮小画像を得る場合に塗りつぶしの誤りが生じる図
形の一例を示す図、第3図は第2図に示す図形から得ら
れるアウトラインベクトルを縮小した後に得られるアウ
トラインを示す図、第4図は第3図に示すアウトライン
にもとづいて塗りつぶしが行われた状態を示す図、第5
図はアウトラインベクトルを説明する図、第6゜7図は
スキャンフィルによる図形の塗りつぶしを説明する図、
第8.9.10図は従来の画像処理装置によって作成さ
れたアウトラインと塗りつぶしの誤りが生じた図形を示
す図、第11図は上記従来例における縮小されたアウト
ラインが塗りつぶしの誤りを生じるアウトラインとなる
場合を示す図、第12図は上記従来例における図形の変
形を説明する図、第13図は上記従来例における塗りつ
ぶしの誤りが生じるアウトラインの典型例を示す図、第
14.15.16図は改善された従来例によって作成さ
れたアウトラインと塗りつぶされた図形を示す図、第1
7図は上記改善された従来例におけるアウトラインベク
トルからアウトラインを作成する回路のブロック図、第
18図は上記回路の動作を示すフローチャートである。 41・・・DDAの前処理部、 42・・・ブレーゼンハムの描画部、 43・・・出力バッファ。 特 許 出 願 人 シャープ株式会社代 理 人
弁理士 青い 葆 はか1名X 82図 (b) 図刑A 図升参B 起莫 (16,22) べ外ル(20,O) ベクトル(0,8> ベクトル(−20,O) ベクトルTo、−8) 剋、J(s、a) ベクトル(20,0) べ゛クトル(0,12) ベクトル(−20,O) ベクトル(0,−12) 第5図 第6図 (a) 第7°図 (a) 第11 図 112図 (a) 第13図 (d) ■Φつ■■■■ +111 H1lll雪 ΦΦΦ 第8図 (a) (b) (a) 第9図 (b) 第10図 (a) 第14図 (b) (a) tootooo。 100(NOOO 10000100 10000010 10000001 (b) 01100 001100 10010 100001 00010 (C) 1 00000(H 10000001 1008)011 10010011 10010000 (d) 10010 +10011 110011 110(N1 otoot。 (a) 11100000 1 1 110000 11 1 1 1000 11111100 11111110 第16図 (b) 01000 ooloo。 11100 +11110 111100 (C) 11111110 11100010 1 1 100010 11100010 11 100000 (d) 11100 toool。 00010 00010 11100
つぶしを説明する図、第2図は従来の画像処理方法にお
いて縮小画像を得る場合に塗りつぶしの誤りが生じる図
形の一例を示す図、第3図は第2図に示す図形から得ら
れるアウトラインベクトルを縮小した後に得られるアウ
トラインを示す図、第4図は第3図に示すアウトライン
にもとづいて塗りつぶしが行われた状態を示す図、第5
図はアウトラインベクトルを説明する図、第6゜7図は
スキャンフィルによる図形の塗りつぶしを説明する図、
第8.9.10図は従来の画像処理装置によって作成さ
れたアウトラインと塗りつぶしの誤りが生じた図形を示
す図、第11図は上記従来例における縮小されたアウト
ラインが塗りつぶしの誤りを生じるアウトラインとなる
場合を示す図、第12図は上記従来例における図形の変
形を説明する図、第13図は上記従来例における塗りつ
ぶしの誤りが生じるアウトラインの典型例を示す図、第
14.15.16図は改善された従来例によって作成さ
れたアウトラインと塗りつぶされた図形を示す図、第1
7図は上記改善された従来例におけるアウトラインベク
トルからアウトラインを作成する回路のブロック図、第
18図は上記回路の動作を示すフローチャートである。 41・・・DDAの前処理部、 42・・・ブレーゼンハムの描画部、 43・・・出力バッファ。 特 許 出 願 人 シャープ株式会社代 理 人
弁理士 青い 葆 はか1名X 82図 (b) 図刑A 図升参B 起莫 (16,22) べ外ル(20,O) ベクトル(0,8> ベクトル(−20,O) ベクトルTo、−8) 剋、J(s、a) ベクトル(20,0) べ゛クトル(0,12) ベクトル(−20,O) ベクトル(0,−12) 第5図 第6図 (a) 第7°図 (a) 第11 図 112図 (a) 第13図 (d) ■Φつ■■■■ +111 H1lll雪 ΦΦΦ 第8図 (a) (b) (a) 第9図 (b) 第10図 (a) 第14図 (b) (a) tootooo。 100(NOOO 10000100 10000010 10000001 (b) 01100 001100 10010 100001 00010 (C) 1 00000(H 10000001 1008)011 10010011 10010000 (d) 10010 +10011 110011 110(N1 otoot。 (a) 11100000 1 1 110000 11 1 1 1000 11111100 11111110 第16図 (b) 01000 ooloo。 11100 +11110 111100 (C) 11111110 11100010 1 1 100010 11100010 11 100000 (d) 11100 toool。 00010 00010 11100
Claims (1)
- (1)図形の輪郭をアウトラインベクトルで表わし、か
つ上記アウトラインベクトルの向きを、そのアウトライ
ンベクトルの左側を塗りつぶすと上記図形が塗りつぶさ
れるように設定する一方、上記図形を縮小する場合には
上記アウトラインベクトルを縮小して新たなアウトライ
ンベクトルを作成し、上記アウトラインベクトルのY軸
方向の変化量が負か零か正かを判別し、上記アウトライ
ンベクトルのY軸方向の変化量が負であればブレーゼン
ハムのアルゴリズムに従ってアウトラインを作成し、上
記アウトラインベクトルのY軸方向の変化量が零であれ
ばアウトラインを作成せず、上記アウトラインベクトル
のY軸方向の変化量が正であればブレーゼンハムのアル
ゴリズムで決定される位置からX軸方向に1ドットシフ
トした位置にアウトラインを作成し、上記作成したアウ
トラインと水平走査線との奇数回目の交差の際に塗りつ
ぶしを開始し、交差した画素も含めて塗りつぶし、偶数
回目の交差の際に塗りつぶしを中止して、偶数回目に交
差した画素の直前の画素までを塗りつぶすようにした画
像処理方法において、図形を縮小した場合は、上記塗り
つぶしを行う一方、縮小して得られるアウトラインベク
トルの始点と終点を結ぶ線分上の画素を塗りつぶすよう
にしたことを特徴とする画像処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1208630A JPH087794B2 (ja) | 1989-08-11 | 1989-08-11 | 画像処理方法 |
US07/524,428 US5073960A (en) | 1989-05-18 | 1990-05-17 | Image processing method using improved Bresenham algorithm in creating an outline of a figure to be painted and apparatus adopting the method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1208630A JPH087794B2 (ja) | 1989-08-11 | 1989-08-11 | 画像処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0371377A true JPH0371377A (ja) | 1991-03-27 |
JPH087794B2 JPH087794B2 (ja) | 1996-01-29 |
Family
ID=16559409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1208630A Expired - Fee Related JPH087794B2 (ja) | 1989-05-18 | 1989-08-11 | 画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH087794B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7280120B2 (en) | 2003-06-26 | 2007-10-09 | Canon Kabushiki Kaisha | Compositing with a sub-pixel mask in graphic object rendering |
-
1989
- 1989-08-11 JP JP1208630A patent/JPH087794B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7280120B2 (en) | 2003-06-26 | 2007-10-09 | Canon Kabushiki Kaisha | Compositing with a sub-pixel mask in graphic object rendering |
Also Published As
Publication number | Publication date |
---|---|
JPH087794B2 (ja) | 1996-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3433828B2 (ja) | ピクセル画像のエッジ改良のための方法と装置 | |
US5463723A (en) | Method and apparatus for filling polygons | |
JP2634851B2 (ja) | 画像処理装置 | |
JPH0371377A (ja) | 画像処理方法 | |
JPH09325750A (ja) | 画像処理装置および方法 | |
JPS63305478A (ja) | パタ−ン情報復元装置 | |
Gupta | Architectures and algorithms for parallel updates of raster scan displays | |
KR100705188B1 (ko) | 문자 폰트 표시 방법 | |
KR20000057716A (ko) | 다각형 묘화 방법, 및 다각형 묘화 장치 | |
JP2782904B2 (ja) | 多角形塗りつぶし方式 | |
JPH0350686A (ja) | 図形処理方式 | |
JP2634906B2 (ja) | 画像処理方法 | |
JP3338484B2 (ja) | アウトラインフォント変形装置 | |
JPS60179877A (ja) | パターン太め装置及び方法 | |
JPS6326773A (ja) | 図形情報の表示処理方法 | |
JPH06150015A (ja) | フィルポリゴンの作成方法 | |
JP3139805B2 (ja) | 画像処理方法及びその装置 | |
JPH0520466A (ja) | 画像処理方法及びその装置 | |
JPH0250778A (ja) | 画像処理方法 | |
JP2787497B2 (ja) | 図形描画方法及び装置 | |
JPH0322187A (ja) | 画像処理装置 | |
JPH0259871A (ja) | 画像処理装置および画像処理方法 | |
JPS60100266A (ja) | シエ−デイング処理方式 | |
JPH0261062B2 (ja) | ||
JPS6282476A (ja) | 図形処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080129 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090129 Year of fee payment: 13 |
|
LAPS | Cancellation because of no payment of annual fees |