JP2625612B2 - 画像処理方法および画像処理装置 - Google Patents

画像処理方法および画像処理装置

Info

Publication number
JP2625612B2
JP2625612B2 JP4192009A JP19200992A JP2625612B2 JP 2625612 B2 JP2625612 B2 JP 2625612B2 JP 4192009 A JP4192009 A JP 4192009A JP 19200992 A JP19200992 A JP 19200992A JP 2625612 B2 JP2625612 B2 JP 2625612B2
Authority
JP
Japan
Prior art keywords
axis
line segment
value
line
image processing
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 - Lifetime
Application number
JP4192009A
Other languages
English (en)
Other versions
JPH0668270A (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP4192009A priority Critical patent/JP2625612B2/ja
Priority to US08/094,825 priority patent/US5493640A/en
Publication of JPH0668270A publication Critical patent/JPH0668270A/ja
Application granted granted Critical
Publication of JP2625612B2 publication Critical patent/JP2625612B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、画像の中の特定の閉区
画を特定色のドットもしくは図形で埋め込む(フィルと
称す)ための画像処理方法および画像処理装置に関す
る。
【0002】
【従来の技術】従来、閉区画画像領域をフィルする場
合、画像処理装置の表示画面上に閉区画画像を表示させ
て、操作者が座標入力装置によりフィル対象の領域内の
1点を指示する。画像処理装置は画像データを記憶した
メモリ上で指示された点を含む閉区画を検出し、検出し
た閉区画内の画像データを全て同一の画像データに変換
することでフィル処理を実現していた。このようなフィ
ル処理ではフィル対象の領域を操作者が指示しなければ
ならないので複数の閉区画が多数重複するような場合、
その指示操作が煩雑となるという欠点があった。
【0003】そこで、最近では、予め定めた条件に基づ
いて特定の閉区画領域を自動的にフィルする画像処理方
法がいくつか提案されている。これらの方法の中でフィ
ル対象の閉区画形成する輪郭線(図18参照)を1筆書
きの要領で操作者が指示するようにした画像処理方法が
知られている。この画像処理方法はワインディングルー
ル フィル(Winding Rule Fill)方
法と呼ばれ、輪郭線の入力が容易という利点がある。ワ
インディング ルール フィル方法では次のような画像
処理手順で閉区画領域のフィルが行われる。
【0004】図18において、ある閉区画領域(点A,
B,C,Dを結ぶ区画)内の任意の点O、たとえば中心
位置から特定方向に向って半直線Aを画像処理装置内の
メモリ上で作成する。次に半直線Aと交叉する輪郭線
の、1筆書きの進行方向を画像処理装置により分析す
る。この分析結果に基づき、時計回りの交叉輪郭線およ
び反時計回りの交叉輪郭線の数が計数される。時計回り
の交叉輪郭線の数と反時計回りの交叉輪郭線の数が等し
い場合にのみ、この点Oを含む閉区画(点A,B,C,
Dを結ぶ区画)はフィルを行う領域と判定し、画像処理
装置内のメモリ上でこの領域内をフィルする。
【0005】このようにして、他の閉区画領域について
も画像処理装置によりフィルを行うか否かの判定を行っ
て、操作者から与えられた閉区画領域の中のフィル条件
に合致した領域をフィルしている。
【0006】
【発明が解決しようとする課題】上述のワインディング
ルール フィル方法により画像処理装置がフィル処理
を行う場合、次のような不利益点があった。
【0007】(1)フィル判別に用いる中心位置を決定
する処理、輪郭線と半直線の交点を算出する処理、その
交点を含む輪郭線の向きを調べる処理等多数の処理でフ
ィル処理が構成されているので、フィル処理に時間がか
かる。
【0008】(2)上述の多数の処理を実行するために
画像処理装置は、画像データ、演算関連データを格納す
るための大容量のメモリを必要とする。
【0009】そこで、上述の点に鑑みて、本発明は、よ
り高速でフィル処理を実行し、また、フィル処理に要す
るメモリの容量を小さくすることの可能な画像処理方法
および画像処理装置を提供することを目的とする。
【0010】
【課題を解決するための手段】このような目的を達成す
るために、第1の発明は、1筆書きの要領で描かれた輪
郭線により1以上の閉区画を形成し、当該形成された1
以上の閉区画の中の特定の閉区画をフィルする画像処理
方法において、前記輪郭線を構成する線分要素毎に、該
線分要素の1筆書きの進行方向が第1の直線方向である
か該第1の直線方向とは反対の第2の直線方向であるか
を分析し、該分析結果を前記線分要素の画素位置に対応
させて記憶媒体上に展開して記憶し、当該展開された分
析結果について前記第1の直線方向とは直交する第3の
直線方向に向って走査を実行し、走査線と交叉する前記
分析結果を検出する毎に、走査開始位置から現走査位置
までの、前記第1の直線方向を示す第1の分析結果の総
数と前記第2の直線方向を示す第2の分析結果の総数と
の差を算出し、記憶しておき、各走査位置において前記
差が数値“0”を示すか否かの判定を行い、該判定結果
として肯定判定が得られた場合は判定対象となった走査
位置はフィルしない画素位置と識別し、否定判定が得ら
れた場合は前記判定対象となった走査位置はフィルする
画素位置であると識別することを特徴とする。
【0011】第2の発明は、第1の発明に加えて、2値
のビット値で前記第1の直線方向か否かを示す第1の情
報と、前記分析の対象となった線分要素が前記第1の直
線方向に並行であるか否かを2値のビット値で表わした
第2の情報とで前記分析結果を構成し、前記走査線と交
叉する分析結果を検出する際には前記第2の情報を使用
し、前記分析結果が前記第1の分析結果であるか前記第
2の分析結果であるかを前記第1の情報に基づき識別す
ることを特徴とする.第3の発明は、第1の発明に加え
て、前記差を算出するために、アップダウンの可能なカ
ウンタを使用し、前記走査線と交叉する前記分析結果を
検出する毎に当該分析結果が前記第1の分析の結果であ
るか前記第2の分析結果であるかを識別し、該識別の結
果が前記第1の分析結果となった場合は前記カウンタを
数値1だけアップさせ、前記識別の結果が前記第2の分
析結果となった場合は前記カウンタを数値1だけダウン
させることにより前記差を算出すると共に記憶しておく
ことを特徴とする。
【0012】第4の発明は、第1の発明に加えて、前記
輪郭線を構成する線分の進行方向が前記第3の直線方向
に並行であるか否かをさらに分析し、当該線分の進行
が、前記第1方向、前記第2の直線方向および前記第3
の直線方向のいずれかを示す多値のビット情報で前記分
析結果を表したことを特徴とする。
【0013】第5の発明は、1筆書きの要領で描かれた
輪郭線により1以上の閉区画を形成し、当該形成された
1以上の閉区画の中の特定の区画をフィルする画像処理
装置において、前記輪郭線を構成する線分要素毎に、該
線分要素の1筆書きの進行方向が第1の直線方向である
か該第1の直線方向とは反対の第2の直線方向であるか
を分析する分析手段と、該分析結果を前記線分要素の画
素位置に対応させて記憶媒体上に展開して記憶する画像
処理手段と、当該展開された分析結果について前記第1
の直線方向とは直交する第3の直線方向に向って走査を
実行し、走査線と交叉する前記分析結果を検出する毎
に、走査開始位置から現走査位置までの、前記第1の直
線方向を示す第1の分析結果の総数と前記第2の直線方
向を示す第2の分析結果の総数との差を算出し、記憶す
る演算処理手段と、各走査位置において前記差が数値"
0"を示すか否かの判定を行い、該判定結果として肯定
判定が得られた場合は判定対象となった走査位置はフィ
ルしない画素位置と識別し、否定判定が得られた場合は
前記判定対象となった走査位置はフィルする画素位置で
あると識別する識別手段とを具えたことを特徴とする。
【0014】
【作用】本願出願人は、1筆書きで描かれる輪郭線は描
画開始点に戻るという特徴から、特定の第1方向、たと
えばY軸方向と直交する線で輪郭線画像を交叉すると、
時計回り、反時計回りの方向だけでなく交叉位置の輪郭
線のY軸プラス方向の線分の総数とY軸マイナス方向の
線分の総数とについても等しくなるという性質を発見
し、この性質を用いてフィルを行う画像処理方法および
画像処理装置を提案した。第1の発明および第5の発明
では、Y軸方向のプラス方向、マイナス方向の輪郭線の
各線分要素をY軸方向と直交するX軸方向に向って総数
を計数する。Y軸プラス方向の総数とY軸マイナス方向
の総数の差が0となるケースはいくつかあるので、この
差が0となる閉区画領域をフィルしない領域に割当て差
が0とならない閉区画領域をフィルする領域に割当てる
ことにより自動的なフィル処理が実現される。
【0015】第2の発明は分析結果を構成する第1情報
および第2情報をそれぞれ2値のビット情報で表すこと
で、フィルする領域を識別するための画像処理が簡素化
される。また、情報容量も小容量となる。
【0016】第3の発明は、フィルする領域を識別する
ために、使用する差分の計算にアップダウンカウンタを
使用することで、演算処理が簡素化される。
【0017】第4の発明では、輪郭線の進行方向を示す
情報を、多値化して複数の進行方向を示すようにしたの
で、輪郭線で形成される閉区画の境界線の位置情報と、
フィル領域の識別に用いる輪郭線との進行方向を示す情
報の両方を同一の記憶領域に格納することができる。
【0018】
【実施例】以下、図面を参照して、本発明の実施例を詳
細に説明する。
【0019】<第1実施例>図1は本発明第1実施例の
基本構成を示す。
【0020】図1において、この画像処理装置は、1筆
書きの要領で描かれた輪郭線により1以上の閉区画を形
成し、当該形成された1以上の閉区画の中の特定の区画
をフィルする画像処理装置であって、1000は前記輪
郭線を構成する線分要素毎に、該線分要素の1筆書きの
進行方向が第1の直線方向であるか該第1の直線方向と
は反対の第2の直線方向であるかを分析する分析手段で
ある。
【0021】1100は該分析結果を前記線分要素の画
素位置に対応させて記憶媒体1200に記憶する画像処
理手段である。
【0022】1300は当該展開された分析結果につい
て前記第1の直線方向とは直交する第3の直線方向に向
って走査を実行し、走査線と交叉する前記分析結果を検
出する毎に、走査開始位置から現走査位置までの、前記
第1の直線方向を示す第1の分析結果の総数と前記第2
の直線方向を示す第2の分析結果の総数との差を算出
し、記憶する演算処理手段である。
【0023】1400は各走査位置において前記差が数
値"0"を示すか否かの判定を行い、該判定結果として肯
定判定が得られた場合は判定対象となった走査位置はフ
ィルしない画素位置と識別し、否定判定が得られた場合
は前記判定対象となった走査位置はフィルする画素位置
であると識別する識別手段である。
【0024】図2は本発明を適用した画像処理装置の具
体的な回路構成を示す。
【0025】図2において、以下の回路が共通バス17
に接続されている。中央演算処理装置(CPU)10は
システムメモリ11に格納されたシステムプログラムに
従って、システム全体の制御処理および本発明に関わる
画像処理を実行する。システムメモリ11はCPU10
が実行すべきプログラムを格納し、図10〜図12に示
す制御手順を記載したプログラムもシステムメモリ11
に格納されている。イメージメモリ12は表示器13に
表示する画像情報をドット形態で格納する。イメージメ
モリ12の画像情報が表示器13により一定周期で読出
され、表示画面上に可視表示される。
【0026】ワークメモリ14はCPU10の演算処理
に用いるデータを一時記憶する。ワークメモリ14内に
は本発明に関わる図形ビットデータおよびY方向ビット
データをそれぞれ専用的に記憶する記憶領域が設けられ
ている。図形ビットデータおよびY方向ビットデータに
ついては後で詳細に説明する。座標入力装置15はマウ
スと呼ばれる装置を用いることができ、表示器13の表
示画面上の位置指定に用いられる。キーボード16から
はCPU10に対する指示情報およびCPU10の演算
に用いる各種データが入力される。
【0027】このような回路構成の画像処理装置におい
て実行されるフィル処理について説明する。
【0028】なお、フィル処理の対象の一例としては図
3に示すような輪郭線画像を用いる。
【0029】a)フィル処理の原理およびフィル条件 図3において、X軸方向に向って走査しながら走査開始
位置から走査位置までの間の2種の線分の本数の差を算
出する。算出の対象となる線分は図3においてY軸方向
に沿ってプラス方向およびマイナス方向の2種の線分で
ある。これら2種の線分の走査位置までの総数の差が0
でないときは、現在の走査位置に対応の画素をフィルす
る。上記総数の差が0であるときは現在の走査位置に対
応の画素位置はフィルしない。
【0030】図4に示すような斜線画像はX軸またはY
軸に近い方の軸に平行な部分線分画像を斜線方向に沿っ
て連結する。このような斜線画像の作成方法は表示画素
の少ない表示装置において斜線を表示する場合によく用
いられている。
【0031】また、同一の端点に接続する2つの線分が
Y軸に対して同一の進行方向を持つ場合は、その端点は
フィルの対象とする。上記2つの線分が同一の進行方向
を持たない場合、その端点(図5〜図6の(b)の図形
において○記号でその端点を示す)はフィルの対象とし
ない。
【0032】また、図7の(a)に示すように複数の線
分が交叉する場合、複数の線分のY軸に対する進行方向
が同一でないときはその交点はフィルしない。図7の図
形(a)に対応させて図7の図形(b)に○記号でフィ
ルしない交点を示している。
【0033】b)回路動作 b−1:輪郭線画像作成処理 図2の回路動作を次に説明する。フィル処理を行う画像
を作成する場合、CPU10は図10の制御手順に従っ
て画像の形状を表わす画像データを作成し、ワークメモ
リ14上に記憶する。より詳しくは、CPU10は座標
入力装置15から輪郭線画像上の端点位置座標の入力を
受け付ける(ステップS10)。図3に示す1筆書きの
輪郭線画像を操作者が入力する場合、端点位置をP0→
P1→P2…P9→P0の順で入力する。
【0034】CPU10は、入力順に端点位置をワーク
メモリ14に一時記憶する。次にCPU10はワークメ
モリ14上の隣接する2つの端点位置の中のY軸座標値
の大小関係を調べることにより上記2つの端点位置を結
ぶ線分の進行方向を決定する(S11)。第1の点から
第2の点へ移行する線分が図3のY軸マイナス方向へ進
む場合は第1の点のY軸座標値>第2の点のY軸座標値
の関係がある。線分がY軸プラス方向へ進む場合は逆の
関係となる。線分がY軸と直交する場合は2つのY軸座
標値は等しくなる。
【0035】このような方法で、図3の各端点を結ぶ線
分の進行方向を分析すると、CPU10は分析結果をワ
ークメモリ14に記憶する。このときのCPU10が第
5の本発明の分析手段、画像処理手段として動作する。
本実施例では分析結果を2種のデータに分けている。第
1のデータを図形ビットデータと呼ぶことにする。図形
ビットデータ(第2の発明の第2の情報)は、Y軸に平
行な、すなわち、上記Y軸に対してプラス方向およびマ
イナス方向を持つ線分のドット位置を表わすデータであ
り、ワークメモリ14の第1の専用領域に画素位置に対
応させて展開記憶される(ステップS12)。図3の図
形に対応した図形ビットデータの内容を図8に示す。図
中、●印記号がビット"1"で、×印記号がビット"0"で
ワークメモリ14上に格納される。なお、Y軸に直交す
る線分や、輪郭線以外のバックグラウンド画像はビッ
ト"0"が割当てられる。
【0036】分析結果を示す2種のデータの中の第2の
データをY方向ビットデータと呼ぶことにする。Y方向
ビットデータはY軸マイナス方向に沿う線分およびY軸
に直交する線分(すなわちX軸に平行な線分)を表わす
データであり、ワークメモリ14の第2の専用領域に画
素位置に対応させて展開記憶される(ステップS1
3)。図3の図形に対応したY方向ビットデータの内容
を図9に示す。図中、●印記号がビット"1"で、×印記
号がビット"0"でワークメモリ14上に格納される。
軸マイナス方向の線分及びY軸に直交する線分以外の画
像は全てビット"0"が割当てられる。
【0037】図形ビットデータは、フィルを行う領域と
フィルを行わない領域の境界線の位置を表わす。また、
Y方向ビットデータは、フィルを行う画素位置の検出に
用いられる。
【0038】b−2:フィル処理 輪郭線画像に関わる図形ビットデータおよびY方向ビッ
トデータを作成後、CPU10は図11に従ってワーク
メモリ14の第3の専用領域上でフィル画像を作成す
る。より詳しくは、CPU10は第1の専用領域および
第2の専用領域の読取り走査開始位置を設定する(ステ
ップS20)。本実施例ではY軸座標値が最小値となる
端点を通過する走査線の位置が走査開始のライン位置と
して設定される。図8,図9の例では端点P1,P2を
通過する走査線の位置が初期走査ライン位置として選択
される。また、X軸方向の走査開始位置としてはX軸座
標値が最小値となる端点が選択される。図8,図9の例
では端点P1の画素位置が選択される。
【0039】CPU10は初期設定された画素位置から
X軸方向に沿って図形ビットデータおよびY方向ビット
データをワークメモリ14から読出して行く。CPU1
0は順次に読出される図形ビットデータおよびY方向ビ
ットデータに基づきフィルを行うか否かの判定を行う。
これら一連の処理を行うときのCPU10が第5の発明
の演算処理手段、識別手段として動作する。この判定処
理の詳細については図12を用いて後述する。
【0040】フィルを行うとの判定結果が得られた場合
は、CPU10は読取り画素位置に対応する、第3の専
用領域の画素位置にビット“1”を格納することにより
フィル処理を行う(ステップS24)。1組の図形ビッ
トデータおよびY方向ビットデータが読出され、フィル
処理が行われるとCPU10は読出し位置を更新し、次
の画素位置の上記両データを読出す(ステップS25→
S27→S22)。
【0041】以下、上述の処理手順(ステップS22〜
S25→S27のループ処理)が繰り返し実行され、フ
ィル画像がワークメモリ14の第3の領域に作成されて
行く。走査位置が図8,図9の端点位置P2に到達した
ことがCPU10において検出されると、読取り走査ラ
インは次のラインに更新されて、上述の手順が繰り返さ
れる。なお、本実施例では走査終了の判定のために走査
時にY方向に並行な線分を計数し、計数結果が、予め定
めた値に到達したときに走査終了と判定している。この
ため、上記線分を計数するAカウンタを用意している。
Aカウンタはダウンカウンタである。図11のステップ
S20の初期処理において、各ライン毎の上記線分の本
数がCPU10により計数される。より具体的には各ラ
イン毎に存する“1”の図形ビットデータが計数され、
Aカウンタに設定すべき初期値データとしてワークメモ
リ14上に格納される。また、全走査(スキャン)の終
了判定について、輪郭線画像の両端に挾まれるライン数
を用いることは言うまでもない。Aカウンタの計数処理
は図12の制御手順内で行われる。また、フィル処理を
終了したスキャンラインの計数にはCカウンタが用いら
れ、Cカウンタの計数処理は1ライン走査の終了検出時
に行われる(ステップS26→S28)。
【0042】次に図11のステップS23およびステッ
プS24の詳細について図12を参照して説明する。
【0043】図12において、CPU10は図形ビット
データおよびY方向ビットデータの読取り対象となった
画素位置がY方向に並行な輪郭線上の画素位置であるか
否かの判定を行う。この判定処理はY方向に並行な線分
を検出するための処理であり、読取りの図形ビットデー
タがビット“1”の場合に肯定判定が得られる。このと
き、Aカウンタが“1”減算される(ステップS30→
S31)。
【0044】次に線分の進行方向がY軸マイナス方向
はX軸に平行な方向であるか、Y軸プラス方向かの識別
がY方向ビットデータに基づき行われる。Y方向ビット
データが"1"の場合にY軸マイナス方向又はX軸に平行
という識別結果が得られる(ステップS32のYES判
定)。ここでY軸マイナス方向又はX軸に平行な方向の
線分に係るドットの総数とY軸プラス方向の線分に係る
ドットの総数との差を計数するためのBカウンタが1だ
け加算される。逆にY軸プラス方向の線分が検出された
場合、Bカウンタが1減算される。また、読取り画素位
置がY軸方向に平行な輪郭線上にない場合は、Aカウン
タ,Bカウンタの計数処理は行われずCPU10の実行
手順はステップS30→S35に移行する。
【0045】CPU10は上述のフィルの実行するか否
かの判定のためにBカウンタの現在の計数値が0か否か
を調べる。肯定判定が得られた場合、CPU10は現在
の読取り画素位置はフィルを行う領域内に有ると判定
し、読取り画素位置に対応するワークメモリの第3の領
域の画素位置にビット“1”を書き込む(ステップS3
5→S37)。
【0046】ステップS35において肯定判定が得られ
なくても、Y方向ビットデータが“1”である場合に
は、CPU10は読取り画素位置はY軸方向に直交する
線分上にあると判断し、フィル処理を行う(ステップS
36→S37)。ステップS35,S36で共に肯定判
定が得られた場合は、読取り画素位置はフィルを行う領
域外と判断され、ステップS37のフィル処理はバイパ
スされる。
【0047】具体的なラインフィル処理について図1
1,図12の制御手順の実行順序を示すことにする。図
8,図9に示すようなラインに沿って図形ビットデータ
およびY方向ビットデータを読取る場合を例とする。
【0048】まず、P0とP1の端点を結ぶ線分上の画
素位置の図形ビットデータおよびY方向ビットデータが
読出され(図11のステップS21→S22)。図12
の制御手順に移行する。ここで、現在の読取り画素位置
はY軸に並行で、マイナス方向の線分上にあること(図
3参照)が確認される(図12のステップS30,S3
2)。このため、Aカウンタは初期設定値“4”から
“1”が減算され計数値は“3”となる(図12のステ
ップS31)。またBカウンタは初期設定値“0”に
“1”が加算され、計数値は“1”となる。Bカウンタ
の計数値は“0”ではないので、P0−P1線分上の画
素位置はフィルすると判定され、第3の専用領域上の対
応画素位置にビット“1”が書き込まれる(図12のス
テップS35→S37)。
【0049】CPU10の実行手順は図11に戻り、1
読取り走査が終了していないことが確認され、次の画素
位置の図形ビットデータおよびY方向ビットデータが読
出さ次のフィル処理(図11のステップS23)内の輪
郭線検出処理(図12のステップS30)で現在の読取
り画素位置は輪郭線(Y軸に並行な線分)上にないこと
が確認される。またBカウンタの現在の計数値は“1”
であるので、この画素位置はフィルすると判定され、フ
ィル処理が実行される(図12のステップS30→S3
5→S37)。
【0050】図8,図9の線分P0−P1および線分P
9−P8の間に挾まれるPPライン方向の画素群は、B
カウンタの値が更新されないので、上述の手順が繰り返
され、全てフィル処理が実行される。
【0051】読取り画素位置が、図8,図9の線分P9
−P8の位置に到達したときに、読取り画素位置がれる
(ステップS25→S27→S22)。Y軸プラス方向
の線分に位置したことが確認され、Bカウンタの計数値
が−1される(図12のステップS32→S34)。こ
こでBカウンタの計数値は“0”となる。また、読取り
画素位置がY軸マイナス方向線分およびX軸並行線分上
に位置していないことが確認される。その結果、この画
素位置のフィル処理は行われない(図12のステップS
35→S36→リターン)。
【0052】以下、読取り画素が線分P6−P7上に位
置するまではBカウンタの計数値は“0”のまま更新さ
れず、また、フィル処理も行われない(図12のステッ
プS30→S35→S36→リターンの繰り返し)。
【0053】PPラインに沿った読取り画素位置が図
8,図9の線分P6−P7上に位置したときに、画素位
置がY軸マイナス方向線分(図3参照)に到達したこと
が確認され、Bカウンタの計数値は“0”から“1”に
更新され、フィル処理が行われる(図12のステップS
32→S33,S35→S37)。以後、読取り画素位
置が図8,図9の線分P3,P2線分に到達するまでは
Bカウンタの計数値が更新されないので、この間の画素
位置群ではフィル処理が行われる(図12のステップS
30→S35→S37の繰り返し)。
【0054】読取り画素位置が図8,図9の線分P3−
P2上に位置したとき、Bカウンタの計数値は“0”に
更新され、これまでのフィル処理が終了する(図12の
ステップS35→S36→リターン)。また、Aカウン
タの計数値が“4”に到達したことで読取り走査の終了
が確認される(図11のステップS25)。
【0055】以上のような処理を、輪郭線で形成される
閉区画について実行すると、図13に斜線で示す領域が
フィルされる。フィル処理終了後、ワークメモリ14上
の第3の専用領域に形成されたフィル画像はCPU10
によりイメージメモリ12に転送され、フィルされた画
像が表示器13の表示画面上に表示される。
【0056】本発明の利点はフィル対象の図形が同一で
も1筆書きの進行順を変化させると、フィルする領域を
変えられる点にある。図3に示す1筆書きの進行順を図
14に示すように変更すると、図14にフィル実行部を
斜線で示す画像が得られる。
【0057】第1実施例の他の実施態様として以下を実
現できる。
【0058】(1)第1実施例では図形ビットデータお
よびY方向ビットデータをそれぞれ別個のメモリ領域に
格納しているが、二つのデータを組み合わせ2ビットで
構成し、1つのメモリ領域に格納することもできる。
【0059】(2)第1実施例では1筆書きで形成され
た図形データのみを走査対象とするようにしているが、
1画面分の画像データを走査しても第1実施例と同様の
結果が得られる。この場合は走査開始位置、走査終了位
置が固定化されるので、本発明をハードウエアで実現す
ることが容易となる。
【0060】(3)第1実施例では2値画像についての
フィル処理を説明したが、予め、ビット1で形成されて
いる画像領域を消去する場合も第1実施例と同様の画像
処理で実現できる。また、画像は2値画像に限らずカラ
ー画像について本発明のフィル処理を実現できることは
言うまでもない。
【0061】<第2実施例>第1実施例は端点を結ぶ線
分の進行方向を2値のベクトル情報で表わす例であった
が、線分の進行方向を多値のベクトル情報で表わすよう
にした第2実施例について説明する。なお、第2実施例
の回路構成は図2の第1実施例とほぼ同様の回路構成を
用いることができる。そのため、第1実施例と異なる点
について説明する。
【0062】図15は、ワークメモリ14上に図形の端
点座標データと共に格納されたベクトル情報の内容を示
す。ここではベクトル情報は10進数で表記している
が、実際には2進数を用いる。数値“1”のベクトル情
報は線分の進行方向がY軸マイナス方向に向っているこ
とを表わす。線分の進行方向はY軸に並行である必要は
ない。
【0063】数値“2”のベクトル情報は線分の進行方
向がY軸プラス方向に向っていることを表わす。数値
“3”のベクトル情報は線分がY軸に直交、すなわちX
軸に並行であることを表わす。数値“0”のベクトル情
報はフィル対象の図形以外の画像データに用いる。第1
実施例でも説明したように、線分の進行方向については
隣接の端点間のY軸座標値の比較により分析できるの
で、図形作成時にこの分析結果に対応させて、上述のベ
クトル情報をCPU10によりワークメモリ14に格納
しておく。図15の端点位置情報およびベクトル情報に
基づき、ワークメモリ上にフィル対象の図形画像を作成
した例を図16に示す。この例では図形の線分を構成す
る画素位置に数値“1”〜“3”のいずれかのベクトル
情報を予め割当て、それ以外の画素位置には数値“0”
ベクトル情報を予め割当てる。また、X軸方向に図16
のベクトル情報を走査して、Y軸プラス,Y軸マイナス
方向に向う線分を検出することによってカウンタを加減
算し、カウンタの計数値が“0”以外となる画素位置を
フィルする点は第1実施例と同様である。
【0064】このようなベクトル情報を用いるフィル処
理手順を図17に示す。座標入力装置から図形の端点位
置が入力されると、CPU10はワークメモリ14上に
入力順に記憶する(図15参照、ステップS200)。
次にCPU10は図16に示すように、端点位置の分析
を行ってベクトル情報を図15のように取得する(ステ
ップS201)。CPU10は次にベクトル情報を図形
線分の画素位置に対応させてワークメモリ14に展開
し、図形画像を作成する(ステップS202)。
【0065】CPU10はワークメモリ14上の画面原
点から走査を開始し、“1”のベクトル情報を検出する
と(D)カウンタを+1し(ステップS212→S21
A)、“2”のベクトル情報を検出するとカウンタを−
1する(ステップS213→S213A)。
【0066】また、カウンタが“0”を示していない画
素位置は全てフィル処理の対象となる(ステップS21
5→S216)。
【0067】第2の実施例では第1実施例のように斜線
画像をY軸方向成分に分割する必要がないという利点が
あるが、ベクトル情報に多値データを用いるので、第1
実施例よりもワークメモリ14の容量が大きくなる。
【0068】第1実施例および第2実施例の他、次のよ
うな実施例を実現できる。
【0069】(1)図形の形状データを端点データだけ
ではなく、作描命令に関連させて入力すると、円などの
曲線図形をもフィル対象とすることができる。この場
合、作描命令はキーボード16から入力する。
【0070】(2)第1実施例の図形ビットデータ、お
よびY方向ビットデータを図形画像データとしてフロッ
ピーディスク等の記憶媒体に保存しておくと、操作者は
座標入力装置15から画像データの入力を行わなくとも
フィル画像の作成が可能となる。この場合は、CPU1
0がフロッピーディスクドライブを介してフロッピーデ
ィスクからワークメモリ14に図形ビットデータおよび
Y方向ビットデータを読出した後、図10のステップS
11以降の処理手順を実行する。
【0071】(3)第1実施例および第2実施例共にフ
ィル対象の画像の中のY軸方向の線分要素を検出してい
るが、Y軸方向に限らずX軸方向を検出対象としてもよ
い。
【0072】(4)第1,第2実施例では閉区画内をフ
ィルするために(B)カウンタ=0のときフィルすると
対応付けているが、閉区画外をフィルする場合はカウン
タ=1の判別条件となる。
【0073】
【発明の効果】以上、説明したように、輪郭線の1筆書
きの進行方向を時計回りか反時計回りかを判別すること
によってフィル領域を決定する従来例と異なり、本発明
では単に、Y軸方向のような単一直線方向に対する向き
を調べるだけでよい。このため、フィルタ処理が簡素化
され、処理時間が短縮されると共に、所要のメモリ容量
も小さくてよい。
【図面の簡単な説明】
【図1】本発明を適用した第1実施例の基本構成を示す
ブロック図である。
【図2】第1実施例の具体的な回路構成を示すブロック
図である。
【図3】1筆書きの描写順を示す説明図である。
【図4】斜線の表記内容を示す説明図である。
【図5】輪郭線画像上のフィルしない点を示す説明図で
ある。
【図6】輪郭線画像上のフィルしない点を示す説明図で
ある。
【図7】輪郭線画像上のフィルしない点を示す説明図で
ある。
【図8】図形ビットデータの内容を示す説明図である。
【図9】Y方向ビットデータの内容を示す説明図であ
る。
【図10】図2のCPU10が実行する制御手順を示す
フローチャートである。
【図11】図2のCPU10が実行する制御手順を示す
フローチャートである。
【図12】図2のCPU10が実行する制御手順を示す
フローチャートである。
【図13】図3の図形から得られるフィル処理結果を示
す説明図である。
【図14】図3の図形に対して他の1筆書きの順序およ
びそのフィル結果を示す説明図である。
【図15】第2実施例のベクトル情報を示す説明図であ
る。
【図16】ベクトル情報のメモリ展開内容を示す説明図
である。
【図17】第2実施例におけるCPU10の実行する制
御手順を示すフローチャートである。
【図18】従来例のフィル処理手順を示す説明図であ
る。
【符号の説明】
10 CPU 14 ワークメモリ 15 座標入力装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 森 昌也 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 大和事業所 内 (72)発明者 友永 泰正 神奈川県大和市下鶴間1623番地14 日本 アイ・ビー・エム株式会社 大和事業所 内 (56)参考文献 特開 平2−161574(JP,A)

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】ドット表示式の画面(但し、画面はXY直
    交座標系で表現されるものとする)上で1筆書きの要領
    で描かれた輪郭線により形成された1以上の閉区画をフ
    ィルする画像処理方法において、 前記輪郭線を構成する各線分要素毎に、X軸と平行か否
    かを分析して、X軸と平行な線分要素に対応するドット
    位置にのみその旨を示す第1の値を与えて第1の画像情
    報として記憶する第1の分析段階と、 前記輪郭線を構成する各線分要素毎に、該線分要素の前
    記1筆書きの進行方向がX軸の増分方向と異なる(すな
    わちX軸の減分方向か又はY軸と平行な方向)か否かを
    分析して、分析結果が肯定的な線分要素に対応するドッ
    ト位置にのみその旨を示す第2の値を与えて第2の画像
    情報として記憶する第2の分析段階と、Y軸方向 に前記第1及び第2の画面情報上の各ドットを
    順次読み出して、第2の値が存在する場合には第1のカ
    ウンタに1を加算し、第1の値が存在するが第2の値
    存在しない場合には第1のカウンタから1を減算する演
    算処理段階と、 該第1のカウンタが0でないドット位置はフィルを行な
    う領域内にあると判断する識別段階と、 を含むことを特徴とする画像処理方法
  2. 【請求項2】ドット表示式の画面(但し、画面はXY直
    交座標系で表現されるものとする)上で1筆書きの要領
    で描かれた輪郭線により形成された1以上の閉区画をフ
    ィルする画像処理装置において、 記憶媒体と、 前記輪郭線を構成する各線分要素毎にX軸と平行か否か
    を分析して、X軸と平行な線分要素に対応するドット位
    置にのみその旨を示す第1の値を与える第1の分析手段
    と、第1の値 をドット位置に対応させて前記記憶媒体上に展
    開して第1の画像情報として記憶するための第1の画像
    処理手段と、 前記輪郭線を構成する各線分要素毎に該線分要素の前記
    1筆書きの進行方向がX軸の増分方向と異なる(すなわ
    ちX軸の減分方向か又はY軸と平行な方向)か否かを分
    析して、分析結果が肯定的な線分要素に対応するドット
    位置にのみその旨を示す第2の値を与える第2の分析手
    段と、第2の値 をドット位置に対応させて前記記憶媒体上に展
    開して第2の画像情報として記憶するための第2の画像
    処理手段と、Y軸方向 に前記第1及び第2の画面情報上の各ドットを
    順次読み出して、第2の値が存在する場合には第1のカ
    ウンタに1を加算し、第1の値が存在するが第2の値
    存在しない場合には第1のカウンタから1を減算する演
    算処理手段と、 該第1のカウンタが0でないドット位置はフィルを行な
    う領域内にあると判断する識別手段と、 を含むことを特徴とする画像処理装置
JP4192009A 1992-07-20 1992-07-20 画像処理方法および画像処理装置 Expired - Lifetime JP2625612B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP4192009A JP2625612B2 (ja) 1992-07-20 1992-07-20 画像処理方法および画像処理装置
US08/094,825 US5493640A (en) 1992-07-20 1993-07-20 Method and apparatus for image filling of a continuous contour figure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4192009A JP2625612B2 (ja) 1992-07-20 1992-07-20 画像処理方法および画像処理装置

Publications (2)

Publication Number Publication Date
JPH0668270A JPH0668270A (ja) 1994-03-11
JP2625612B2 true JP2625612B2 (ja) 1997-07-02

Family

ID=16284091

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4192009A Expired - Lifetime JP2625612B2 (ja) 1992-07-20 1992-07-20 画像処理方法および画像処理装置

Country Status (2)

Country Link
US (1) US5493640A (ja)
JP (1) JP2625612B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU695019B2 (en) * 1994-09-12 1998-08-06 Canon Kabushiki Kaisha Rendering of overlapping objects
AUPM806694A0 (en) * 1994-09-12 1994-10-06 Canon Inc. Rendering of overlapping objects
JP3563891B2 (ja) * 1996-10-24 2004-09-08 キヤノン株式会社 文字生成方法及び装置
AU2002239703A1 (en) * 2000-12-20 2002-07-01 Pulsent Corporation Method of filling exposed areas in digital images
SE528807C2 (sv) * 2004-12-23 2007-02-20 Siemens Ag Komponent av en superlegering innehållande palladium för användning i en högtemperaturomgivning samt användning av palladium för motstånd mot väteförsprödning
TWI410880B (zh) * 2010-03-29 2013-10-01 Anmo Electronics Corp 與數位影像分析相關的電腦程式產品

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61249175A (ja) * 1985-04-24 1986-11-06 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 図形処理装置
US4815009A (en) * 1987-04-21 1989-03-21 Xerox Corporation Algorithm for filling an image outline
JPH01181173A (ja) * 1988-01-14 1989-07-19 Toshiba Corp ベクトルフォント輪郭描画方式
JPH0277889A (ja) * 1988-09-14 1990-03-16 Ricoh Co Ltd 図形塗りつぶし方式
JPH0754552B2 (ja) * 1988-12-15 1995-06-07 日本情報科学株式会社 エレメント別に文字を構成したアウトラインフォントの塗りつぶし方法および装置
US5073960A (en) * 1989-05-18 1991-12-17 Sharp Kabushiki Kaisha Image processing method using improved Bresenham algorithm in creating an outline of a figure to be painted and apparatus adopting the method
US5043711A (en) * 1989-06-09 1991-08-27 Xerox Corporation Representation of polygons defined by non-zero winding numbers
US5371843A (en) * 1992-10-16 1994-12-06 International Business Machines Corporation Method and system for filling non-complex polygons using vertical spans

Also Published As

Publication number Publication date
JPH0668270A (ja) 1994-03-11
US5493640A (en) 1996-02-20

Similar Documents

Publication Publication Date Title
JP2541539B2 (ja) 図形処理装置
JP3066599B2 (ja) コンピュータ出力表示装置で表示するための多角形をクリップする方法
JP2625612B2 (ja) 画像処理方法および画像処理装置
US6266444B1 (en) Character processing apparatus and method therefor
US5020002A (en) Method and apparatus for decomposing a quadrilateral figure for display and manipulation by a computer system
US5014331A (en) Method of detecting an internal point within a closed area
JP2000331156A (ja) 輪郭に沿うトラッカを自動的に決定するための方法、及び該方法を実施するプログラムを記憶した記憶媒体
US5640499A (en) Method of editing a drawing displayed on a display unit of a computer by simultaneously moving plural elements included in an editing area
US5920324A (en) Character pattern producing apparatus capable of producing character pattern having connected character elements
US4718105A (en) Graphic vectorization system
EP0476627B1 (en) Method of and apparatus for processing image data
US5384905A (en) Method for tracing a line image by monitoring the distance between two trace base points
JP4240543B2 (ja) 表示装置
US4656468A (en) Pattern data processing apparatus
JPH11265422A (ja) マーク認識方法及び装置並びに記録媒体
JPH09106460A (ja) 画像部品の隣接関係判定方法
JPH0364909B2 (ja)
JP3305395B2 (ja) 図形分割装置
JP2773127B2 (ja) 画像編集方法
JP3521606B2 (ja) 文字読取り装置
JP2634905B2 (ja) 図形ぬりつぶし方法
JP3679619B2 (ja) 画像の輪郭抽出方法、装置、および記録媒体
JP2614111B2 (ja) 直線表示要素と矩形ウインドウの相互関係の検出方法
JP3377394B2 (ja) 物体の形状識別装置及び方法
JPH0319991B2 (ja)