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
Application number
JP1208630A
Other languages
English (en)
Other versions
JPH087794B2 (ja
Inventor
Yoshiyuki Nakai
嘉之 中井
Seido Kawanaka
川中 誠道
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP1208630A priority Critical patent/JPH087794B2/ja
Priority to US07/524,428 priority patent/US5073960A/en
Publication of JPH0371377A publication Critical patent/JPH0371377A/ja
Publication of JPH087794B2 publication Critical patent/JPH087794B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〈産業上の利用分野〉 この発明は、図形の輪郭をアウトラインベクトルで表わ
し、このアウトラインベクトルからアウトラインを作成
して、このアウトラインの内部を塗りつぶすようにした
画像処理装置に関する。
〈従来の技術〉 図形の任意領域を塗りつぶす方法としては従来からシー
ドフィルやスキャンフィルが知られており、シードフィ
ルは多くの画像処理プロセッサーに採用されているが、
スキャンフィルと比べて処理速度が遅いという欠点があ
る。
スキャンフィルは第5図に示すように、塗りつぶしたい
図形の輪郭をアウトラインベクトルで示し、このアウト
ラインベクトルの向きを、その左側を塗りつぶすと図形
が塗りつぶされるように設定する。例えば、第6図(a
)に示す元データから第6図(b)に示すアウトライン
ベクトルを作成する。そして、このアウトラインベクト
ルから第7図(a)に示すようなアウトラインを作成し
、X方向へスキャニングして、水平走査線と、このアウ
トラインとの奇数回目の交差で塗りつぶしを開始し、偶
数回目の交差で塗りつぶしを中止して、第7図(b)に
示すような図形を得るようになっている。
このようなスキャンフィルにより図形を塗りつぶすよう
にした画像処理方法としては、従来、特公昭53−41
017号公報に示すようなものがある。この画像処理方
法はアウトラインベクトルから周知のブレーゼンハムの
アルゴリズムに従ってアウトラインを作成し、例えば第
8図(a)、第9図(a)および第10図(a)に示す
ようなアウトラインを得るようにしている。
そして、X方向へスキャニングして、水平走査線どこれ
らのアウトラインとの奇数回目の交差の際に塗りつぶし
を開始し、交差した画素も含めて塗りつぶし、偶数回目
の交差の際に塗りつぶしを中止し、交差した画素まで塗
りつぶすようにしている。
ところで、上記従来の画像処理方法では、アウトライン
を作成する場合、第8図(a)における頂部や第9図(
a)における中央部のようにアウトラインベクトルが同
一画素上に重なった場合には、その画素の位置がアウト
ラインとなる。このため、水平走査線がこのアウトライ
ンと交差すると、その画素を含めてその右側の画素をす
べて塗りつぶすことになり、第8図(b)や第9図(b
)に示すような塗りつぶしの誤りが生じる。また、第1
O図(a)のようにスキャン方向と平行なアウトライン
が作成された場合、そのアウトラインが、走査線が交差
する最初の画素から数えて奇数番目の画素で終りている
場合には、その奇数番目の画素の右側の画素も塗りつぶ
されるため第1O図(b)に示すような塗りつぶしの誤
りが生じる。
このような誤りを発生しないようにするため、従来は、
例えば、第7図(a)に示すように、頂部のアウトライ
ンからX軸方向に!ドツトずれた画素の位置をもアウト
ラインとするような処理をしていた。また、スキャン方
向と平行なアウトラインにあっては長さが偶数ドツトと
なるようにするか始点と終点だけをプロットする処理を
していた。
しかしながら、このようにした場合には、この処理を行
うホストの処理速度が遅くなりホストの負荷も大きくな
る。また、ベクトルフォントに上記処理を施して得られ
たアウトラインをマスク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図に示すようなアウトラインを作成す
るため、このアウトラインに、図形塗りつぶしの際に誤
りを発生しないようにするための処理を施す必要が生じ
、処理速度が遅くなるという問題があった。また、上記
処理を施すために、塗りつぶしたあとの図形の形状が元
の図形の形状と大きく異なってしまい、ドツトフォント
よりも変倍、回転が容易でフォントが美しいベクトルフ
ォントの特徴を十分生かすことができないという問題が
あった。
そこで、本発明者は、このような問題をなくすために、
かって、第14図から第18図に示す画像処理方法を提
案した。
第14図(a)および第15図(a) 、 (b) 、
 (c) 、 (d)はこの画像処理方法により作成さ
れたアウトラインの例であり、それぞれ、上記従来例に
おける第8図(a)および第13図(a) 、 (b)
 、 (c) 、 (d)に対応したものである。
これらのアウトラインに示すようにこの画像処理方法は
、アウトラインベクトルのY軸方向の変化量が負であれ
ば上記従来例と同様ブレーゼンハムのアルゴリズムに従
ってアウトラインを作成し、アウトラインベクトルのY
軸方向の変化量が零であれば、すなわちX軸に対して平
行であれば、アウトラインを作成せず、アウトラインベ
クトルのY軸方向の変化量が正であればブレーゼンハム
のアルゴリズムで決定される位置からX軸方向に1ドツ
トシフトした位置にアウトラインを作成するようになっ
ている。
そして、X軸方向にスキャニングして、アウトラインと
水平走査線との奇数回目の交差の際に塗りつぶしを開始
し、交差した画素も含めて塗りつぶし、偶数回目の交差
の際に塗りつぶしを中止して、偶数回目に交差した画素
の直前の画素までを塗りつぶすようになっている。この
ように塗りつぶすことにより上記アウトラインで示され
る図形はそれぞれ第14図(b)および第16図(a)
 、 (b) 、 (c) 。
(d)に示すように塗りつぶされる。
従って、従来例における第8図(b)、第9図(b)、
第10図(b)に示すような塗りつぶしにおける誤りが
生じることがなく、第12図に示すような図形の変形が
生じることもない。
第17図はアウトラインベクトルデータから上記アウト
ライン(ラスターデータ)を作成するための回路の構成
を示すブロック図であり、第18図はこの回路の動作を
示すフローチャートである。
第17.18図において、まずマスクROMなどにスト
アされたアウトラインベクトルデータとsjnθ、co
sθ、 S x(x方向変倍率)、5yCy方向変倍率
)などのアフィン変換パラメータがDDA(ディジタル
微分解析機)の前処理部41に入力される。
このDDAの前処理部41は内蔵した乗算器と加算器に
よって、上記アフィン変換パラメータにもとづいてアウ
トラインベクトルデータの回転、変倍、傾斜などのアフ
ィン変換処理を行なう。そして、アフィン変換処理が済
んだアウトラインベクトルデータをx、y絶対アドレス
に変換したのち、ブレーゼンハムのアルゴリズムの前処
理を行う。
このブレーゼンハムのアルゴリズムの前処理において、
△yが正であればカレントポインタを1ドツトx方向に
シフトし、Δyが零であれば描画せず、△yが負であれ
ばブレーゼンハムのアルゴリズムの前処理をするだけで
カレントポインタはシフトしない。次に、この処理した
データをブレーゼンハムの描画部42に出力する。
このブレーゼンハムの描画部42は上記DDAの前処理
部41から出力されたデータを内部出力バッファにブレ
ーゼンハムのアルゴリズムに従って書き込む。この場合
、△yによる処理はDDAノ前処前処連部41われてい
るのでブレーゼンハムの描画部42では意識しなくても
よい。
上記ブレーゼンハムの描画部42の内部出力バッファに
書き込まれたデータは出力バッファ43に移される。そ
して、この出力バッファ43からアウトライン(ラスタ
ーデータ)が出力される。
〈発明が解決しようとする課題〉 ところで、上記従来の画像処理方法において、例えば第
2図(a)に示す図形からアウトラインベクトルを作成
し、そのアウトラインベクトルをアフィン変換により縮
小し、縮小したアウトラインベクトルからアウトライン
を作成すると第3図(a)のようになる。すなわち、第
2図(a)に示す図形Aおよび図形Bの輪郭は第2図(
b)に示すようにそれぞれ1つの起点と4つのベクトル
で表される。
そして、これを4分のlに縮小すると、上記起点とベク
トルはそれぞれ、第3図(b)に示すようになる。この
縮小されたベクトルから第3図(a)のアウトラインが
得られる。そして、このアウトラインをもとに塗りつぶ
しを行うと第4図のようになる。この図形かられかるよ
うに、y= 5 、x= 4 。
5.6.7の画素か塗りつぶされないまま残っている。
これは、第3図(a)に示す2つの図形のアウトライン
のそれぞれによって表される領域の水平方向の一辺がY
=5の行で互いに重なっているために、重なった画素の
塗りつぶしが行われないためである。
このように、上記従来の画像処理方法では、つの図形の
アウトラインによって表される領域の水平方向の一辺が
、他の図形のアウトラインによって表される領域の水平
方向の一辺と重なっている場合に、重なった画素の塗り
つぶしが行われないという問題がある。
そこで、この発明の目的は、上記のような重なりが生じ
た場合でも図形の塗りつぶしの誤りが生しない画像処理
方法を提供することにある。
く課題を解決するための手段〉 上記目的を達成するため、この発明は、図形の輪郭をア
ウトラインベクトルで表わし、かつ上記アウトラインベ
クトルの向きを、そのアウトラインベクトルの左側を塗
りつぶすと上記図形か塗りつぶされるように設定する一
方、上記図形を縮小する場合には上記アウトラインベク
トルを縮小して新たなアウトラインベクトルを作成し、
上記アウトラインベクトルの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とすると、各座標点は次ぎ
のようになる。
図形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倍して
、小数点以下を切り捨てると次の座標点が得られる。
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図に
示す塗りつぶしの行なわれなかった画素の塗りつぶしも
行うことができる。
このことにより、図形を縮小した結果、一つの図形のア
ウトラインによって表される領域の水平方向の一辺が、
他の図形のアウトラインによって表される領域の水平方
向の一辺と重なる場合でも、図形の塗りつぶしの誤りが
生じることがない。
〈発明の効果〉 以上より明らかなように、この発明の画像処理方法は、
図形を縮小した場合に、縮小して得られたアウトライン
に基づいて塗りつぶしを行う一方、縮小して得られたア
ウトラインベクトルの始点と終点を求め、その始点と終
点を結ぶ線分上の画素を塗りつぶすようにしているので
、図形を縮小した結果、一つの図形のアウトラインによ
って表される領域の水平方向の一辺が、他の図形のアウ
トラインによって表される領域の水平方向の一辺と重な
る場合でも、図形の塗りつぶしの誤りが生じることがな
い。
【図面の簡単な説明】
第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

Claims (1)

    【特許請求の範囲】
  1. (1)図形の輪郭をアウトラインベクトルで表わし、か
    つ上記アウトラインベクトルの向きを、そのアウトライ
    ンベクトルの左側を塗りつぶすと上記図形が塗りつぶさ
    れるように設定する一方、上記図形を縮小する場合には
    上記アウトラインベクトルを縮小して新たなアウトライ
    ンベクトルを作成し、上記アウトラインベクトルのY軸
    方向の変化量が負か零か正かを判別し、上記アウトライ
    ンベクトルのY軸方向の変化量が負であればブレーゼン
    ハムのアルゴリズムに従ってアウトラインを作成し、上
    記アウトラインベクトルのY軸方向の変化量が零であれ
    ばアウトラインを作成せず、上記アウトラインベクトル
    のY軸方向の変化量が正であればブレーゼンハムのアル
    ゴリズムで決定される位置からX軸方向に1ドットシフ
    トした位置にアウトラインを作成し、上記作成したアウ
    トラインと水平走査線との奇数回目の交差の際に塗りつ
    ぶしを開始し、交差した画素も含めて塗りつぶし、偶数
    回目の交差の際に塗りつぶしを中止して、偶数回目に交
    差した画素の直前の画素までを塗りつぶすようにした画
    像処理方法において、図形を縮小した場合は、上記塗り
    つぶしを行う一方、縮小して得られるアウトラインベク
    トルの始点と終点を結ぶ線分上の画素を塗りつぶすよう
    にしたことを特徴とする画像処理方法。
JP1208630A 1989-05-18 1989-08-11 画像処理方法 Expired - Fee Related JPH087794B2 (ja)

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)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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