JPH04323779A - 図形輪郭線抽出方法 - Google Patents

図形輪郭線抽出方法

Info

Publication number
JPH04323779A
JPH04323779A JP3122237A JP12223791A JPH04323779A JP H04323779 A JPH04323779 A JP H04323779A JP 3122237 A JP3122237 A JP 3122237A JP 12223791 A JP12223791 A JP 12223791A JP H04323779 A JPH04323779 A JP H04323779A
Authority
JP
Japan
Prior art keywords
contour
point
vector data
contour line
data
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
JP3122237A
Other languages
English (en)
Inventor
Jun Komaki
小牧 順
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.)
Dainippon Screen Manufacturing Co Ltd
Original Assignee
Dainippon Screen Manufacturing 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 Dainippon Screen Manufacturing Co Ltd filed Critical Dainippon Screen Manufacturing Co Ltd
Priority to JP3122237A priority Critical patent/JPH04323779A/ja
Publication of JPH04323779A publication Critical patent/JPH04323779A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、図形成分を含む2値画
像のラスタデータからその図形成分の輪郭線を追跡して
抽出する図形輪郭線抽出方法に関する。
【0002】
【従来の技術】通常、画像処理の技術分野においては、
ラスタデータで示される2値画像の中から図形成分の輪
郭線を抽出する作業がよく行なわれており、その抽出し
た輪郭線で定まる図形を色付けしたり、あるいは、その
図形を予め用意した標準パターンと比較するパターンマ
ッチング等を行なっていた。
【0003】こうした図形成分の輪郭線を抽出する方法
を、図30の(a)に示す図形を例に挙げて説明する。 ここで、斜線で示した部分がラスタデータの値1の部分
(黒点の部分)である。図30の(b)に示すように、
まず、図形成分の外側の輪郭線上における一点Aを指示
する作業を行なう。この作業は、オペレータが、画像が
表示されたディスプレイを見つつ、ディジタイザやマウ
ス等を操作することによりなされる。次いで、その指示
された点Aを追跡開始点として、ラスタデータの黒点を
右側に見ながら順次連結部分の境界を追跡して、ベクト
ルデータB,C,D,Eを生成していく。そうして、再
び追跡開始点に戻れば追跡を完了する。
【0004】続いて、図形成分の内側の輪郭線上におけ
る一点Fを指示する作業を行なう。この作業は、前記点
Aを指示する作業と同様に、オペレータによりなされる
、次いで、前記ベクトルデータB,C,D,Eを生成す
る場合と同様にして、内側の輪郭線を追跡して、ベクト
ルデータG,H,I,Jを生成する。こうして、ラスタ
データにおける図形成分の外側および内側の両輪郭線が
抽出される。
【0005】
【発明が解決しようとする課題】こうした従来の図形輪
郭線抽出方法では、ラスタデータで表わされる2値画像
内に含まれる図形成分が、図31の(a)に示すように
、複数の図形部品A1,A2,A3を連結したものであ
る場合、図31の(b)に示すように、連結した図形成
分全体の輪郭線が抽出されることになる。
【0006】ところで、画像処理の技術分野では、連結
した図形成分の一部の輪郭線(例えば、一の図形部品に
おける他の図形部品に連結する分岐点までの部分がそれ
であり、図32に示すような部分)を抽出して、その部
分にだけ色付けを行なうといったことが通常なされるが
、こうした作業を行なう場合、前記図形輪郭線抽出方法
では、一旦、連結した図形成分全体の輪郭線を抽出した
後に、必要な部分だけ切り出す必要があった。このため
、作業に要する処理時間や使用メモリの点で効率が悪い
という問題があった。
【0007】本発明の図形輪郭線抽出方法は、こうした
問題点に鑑みてなされたもので、連結した図形成分の一
部の輪郭線を抽出する際に、その作業に要する処理時間
や使用メモリの無駄を省き、効率を高めることを目的と
する。
【0008】
【課題を解決するための手段】このような目的を達成す
べく、前記課題を解決するための手段として、以下に示
す構成を取った。
【0009】即ち、本発明の図形輪郭線抽出方法は、図
1に示すように、図形成分を含む2値画像のラスタデー
タから該図形成分の輪郭線を追跡して抽出する図形輪郭
線抽出方法であって、前記ラスタデータにおける図形成
分上または図形成分の近傍に任意の点を指示する点指示
工程ST1と、該点指示工程ST1で指示された点に基
づいて、前記図形成分の輪郭線上における一点を選択す
る第1点選択工程ST2と、該第1点選択工程ST2で
選択された一点を始点として、前記輪郭線上の一線分を
ベクトル形式で示す第1輪郭線ベクトルデータを算出す
る第1輪郭線ベクトルデータ算出工程ST3と、前記第
1輪郭線ベクトルデータの始点に基づいて、前記図形成
分の前記第1輪郭線ベクトルデータで示される輪郭線と
対をなす他方側の輪郭線上における一点を選択する第2
点選択工程ST4と、該第2点選択工程ST4で選択さ
れた一点を始点として、前記他方側の輪郭線上の一線分
をベクトル形式で示す第2輪郭線ベクトルデータを算出
する第2輪郭線ベクトルデータ算出工程ST5と、前記
第1輪郭線ベクトルデータおよび第2輪郭線ベクトルデ
ータで示される両ベクトルをそれぞれ追跡開始ベクトル
として、2方の追跡ベクトルにより前記両輪郭線を並行
して追跡することにより、両輪郭線をベクトル形式で示
す輪郭線ベクトルデータを算出する追跡・輪郭線ベクト
ルデータ算出工程ST6とを備えたことを、その要旨と
している。
【0010】
【作用】以上のように構成された本発明の図形輪郭線抽
出方法は、ラスタデータにおける図形成分上または図形
成分の近傍に任意の点を、点指示工程ST1により指示
し、その指示された点に基づいて、前記図形成分の輪郭
線上における一点を第1点選択工程ST2により選択す
る。そして、第1点選択工程ST2で選択された一点を
始点として、前記輪郭線上の一線分をベクトル形式で示
す第1輪郭線ベクトルデータを、第1輪郭線ベクトルデ
ータ算出工程ST3により算出する。
【0011】次いで、第1輪郭線ベクトルデータの始点
に基づいて、図形成分の第1輪郭線ベクトルデータで示
される第1の輪郭線と対をなす他方側の輪郭線上におけ
る一点を、第2点選択工程ST4により選択し、その選
択された一点を始点として、前記他方側の輪郭線上の一
線分をベクトル形式で示す第2輪郭線ベクトルデータを
、第2輪郭線ベクトルデータ算出工程ST5により算出
する。
【0012】その後、第1輪郭線ベクトルデータおよび
第2輪郭線ベクトルデータで示される両ベクトルをそれ
ぞれ追跡開始ベクトルとして、追跡・輪郭線ベクトルデ
ータ算出工程ST6により、2方の追跡ベクトルを用い
て前記両輪郭線を並行して追跡する。こうして、両輪郭
線をベクトル形式で示す輪郭線ベクトルデータを算出す
る。
【0013】即ち、ラスタデータにおける図形成分の対
向する両側の輪郭線上には、まず、第1輪郭線ベクトル
データおよび第2輪郭線ベクトルデータで示される2つ
の追跡開始ベクトルが形成され、続いて、2方の追跡ベ
クトルにより、両輪郭線が並行して追跡されることにな
る。このため、連結した図形成分の一部の輪郭線を抽出
したい場合に、その必要な部分だけを2方の追跡ベクト
ルにより追跡するように作用する。
【0014】
【実施例】以上説明した本発明の構成・作用を一層明ら
かにするために、以下本発明の図形輪郭線抽出方法を適
用する好適な一実施例について説明する。
【0015】図2は本発明の一実施例としての図形輪郭
線抽出方法を適用した画像処理装置の概略構成を示すブ
ロック図である。同図に示すように、この画像処理装置
は、周知のCPU1,ROM3,RAM5を備えた処理
ユニット10と、原稿上の画像をラスタデータとして読
み込むイメージスキャナ12と、輪郭線抽出の指示やラ
スタデータの画面表示を行なう対話端末機14と、各種
データを格納する外部記憶装置としての磁気ディスク装
置16とから構成されている。
【0016】処理ユニット10は、算術論理演算回路と
して構成されており、ROM3に格納されたプログラム
に従って処理を行なうCPU1は、コモンバス17を介
して、イメージスキャナ12に直結された画像入力ポー
ト20、対話端末機14に直結された端末制御部22お
よび磁気ディスク装置16に直結されたディスク制御部
24に接続されている。
【0017】イメージスキャナ12は、原稿上の画像を
光学的にスキャンし白黒の2値情報として画像データを
読み取り、その2値情報をランレングス形式で表現して
出力するものである。原稿上の画像は、文字,記号を含
む線画からなる図形を含むものである。対話端末機14
は、各種処理を指示するキーボード14aおよびマウス
14bと、その処理結果を表示するCRTディスプレイ
14cとを備えている。
【0018】CPU1は、対話端末機14からの指示に
より、イメージスキャナ12が読み取った2値画像のラ
スタデータを磁気ディスク装置16に格納すると共に、
輪郭線追跡部26を動作させてそのラスタデータから図
形成分の輪郭線を追跡することにより、輪郭線を抽出し
、磁気ディスク装置16、あるいは対話端末機14のC
RTディスプレイ14cに出力する。対話端末機14は
、こうした一連の輪郭線抽出作業を処理ユニット10に
指示すると共に、その輪郭線抽出作業で必要となる指示
点を入力する。
【0019】次に、処理ユニット10が行なう輪郭線抽
出処理ルーチンの詳細について、図3ないし図5のフロ
ーチャートに従って説明する。図3に示すように、処理
ユニット10は、処理を開始すると、まず画像を入力す
る処理を行なう(ステップ100)。この画像入力は、
イメージスキャナ12から読み取ったランレングス表現
された2値画像のラスタデータを画像入力ポート20を
介して取り込んで、RAM5の所定の領域に展開するこ
とより行なわれる。次いで、この画像データを磁気ディ
スク装置16の所定領域へ格納し、また、CRTディス
プレイ14cに出力し表示する処理を行なう(ステップ
110,120)。
【0020】続いて、ステップ100〜120でRAM
5に展開されたラスタデータ上において、そのラスタデ
ータに含まれる図形成分の近傍に、一画素分の任意の指
示点P1を入力する処理を行なう(ステップ130)。 この入力処理は、オペレータにより、ステップ120で
画像が表示されたCRTディスプレイ14cを参照しつ
つ、マウス14bを操作することにより行なわれる。そ
の後、その入力された指示点P1を基にラスタデータに
おける図形成分の一方の側の輪郭線をベクトル形式で示
す第1輪郭線ベクトルデータV1 を算出する処理を行
なう(ステップ140)。この算出処理について以下に
詳しく説明する。
【0021】まず、ステップ130で入力された指示点
P1から図形成分の最初の黒点までの距離を、図6に示
すように、水平、垂直、斜め45度の8方向について求
める。次いで、それら8方向の距離を比較して、8方向
の内で最短距離にある黒点を選択し、この黒点を第1輪
郭線ベクトルデータV1 の始点P2として記憶する。 続いて、その始点P2から第1輪郭線ベクトルデータV
1 の終点P3を算出する。この始点P2から終点P3
を算出する方法は、以下に示す輪郭線追跡方法およびベ
クトルデータへの近似方法を用いる。
【0022】輪郭線追跡方法について次に説明する。 ■  右手に黒点を見て追跡する方法 ラスタデータ上の図形の一例を図7に示す。図7におい
て、まず、始点y0を中心に、その近傍の8要素を含む
3 × 3の追跡領域S0を設定する。この追跡領域S
0を図8に示すが、同図に示すように、その8要素中か
らどれか一つの白点(値0の点)z0を選択し、その白
点z0から始点y0を中心に時計回りに黒点を捜し、最
初に見つかった黒点y1を選択する。次いで、黒点y1
を中心に、前記と同様な3 × 3の追跡領域S1を設
定する。この追跡領域S1を図9に示すが、同図に示す
ように、その8要素中からどれか一つの白点(値0の点
)z1を選択し、その白点z1から始点y1を中心に時
計回りに黒点を捜し、最初に見つかった黒点y2を選択
する。さらに、同様な処理を繰り返して、黒点y1,y
2に連なる黒点y3,y4,…を順に追跡する。図10
に示すように、こうして時計回りに追跡した黒点y0,
y1,y2,…,ynが図形部品の輪郭データとなる。
【0023】■  左手に黒点を見て追跡する方法図7
に示すラスタデータにおいて、まず、始点y0を中心に
、その近傍の8要素を含む3 × 3の追跡領域S0を
設定する。この追跡領域S0を図11に示すが、同図に
示すように、その8要素中からどれか一つの白点(値0
の点)z0を選択し、その白点z0から始点y0を中心
に反時計回りに黒点を捜し、最初に見つかった黒点y1
を選択する。次いで、黒点y1を中心に、前記と同様な
3 × 3の追跡領域S1を設定する。この追跡領域S
1を図12に示すが、同図に示すように、その8要素中
からどれか一つの白点(値0の点)z1を選択し、その
白点z1から始点y1を中心に反時計回りに黒点を捜し
、最初に見つかった黒点y2を選択する。さらに、同様
な処理を繰り返して、黒点y1,y2に連なる黒点y3
,y4を順に追跡する。図13に示すように、こうして
反時計回りに追跡した黒点y0,y1,y2,…,yn
が図形部品の輪郭データとなる。
【0024】以上詳述したいずれかの輪郭線追跡方法で
作成した輪郭データから、次いで、ベクトルデータへの
近似方法を用いてベクトルデータを生成する。ベクトル
データへの近似方法は、ミニマックス近似法,最小2乗
近似法等の周知の方法なので、ここでは詳しい説明を省
略する。こうして生成したベクトルデータを、図14に
示すように、第1輪郭線ベクトルデータV1 とし、そ
の第1輪郭線ベクトルデータV1 の終点P3を算出す
る。 ステップ140で第1輪郭線ベクトルデータV1 が算
出されると、続いて、第2輪郭線ベクトルデータV2 
を算出する処理を行なう(ステップ150)。この算出
処理について以下に詳しく説明する。
【0025】まず、第1輪郭線ベクトルデータV1 が
、その追跡方向の右手に黒点を見ながら算出されたもの
であれば、ステップ140で算出された第1輪郭ベクト
ルデータV1 の始点P2から、その第1輪郭ベクトル
データV1 に対して−90度の方向(図中、破線の方
向で黒点を左手に見た場合は、+90度の方向)に、白
点が見つかるまで追跡する(図14参照)。そうして、
白点が見つかったら、図15に示すように、その白点の
一つ前の黒点を第2輪郭線ベクトルデータV2 の始点
P4として記憶し、続いて、その始点P4から第2輪郭
線ベクトルデータV2 の終点P5を算出する。この終
点P5は、前記第1輪郭線ベクトルデータV1 の終点
P3を算出した場合と同様な方法で算出され、第1輪郭
線ベクトルデータV1が右手(左手)に黒点を見た輪郭
線追跡方法により算出されたのであれば、左手(右手)
に黒点を見た輪郭線追跡方法により算出される。
【0026】こうして第1および第2輪郭線ベクトルデ
ータV1 ,V2が算出されると、続いて、両ベクトル
データV1 ,V2 を追跡開始輪郭ベクトルデータと
して、輪郭線の追跡を行なう追跡処理ルーチンを実行す
る(ステップ160)。以下、追跡処理ルーチンの詳細
ついて、図4および図5のフローチャートに従って説明
する。なお、本追跡処理ルーチンの実行が開始される前
に、本ルーチンで使用される後述する数々のフラグは予
め値0に全てリセットされているものとする。
【0027】本追跡処理ルーチンにおいて、処理が開始
されると、まず、これまでに追跡済みの最新の輪郭線ベ
クトルデータVn−1 に続く輪郭線ベクトルデータV
n を算出する処理をステップ161ないし165にて
行なう。詳しくは、ステップ140および150で第1
および第2輪郭線ベクトルデータV1 ,V2 が既に
算出されていることから、輪郭線ベクトルデータの順位
を示す変数nに初期値2を設定し(ステップ161)、
次いで、変数nを値1だけインクリメントし(ステップ
163)、その後、第3番目以降のn番目の輪郭線ベク
トルデータVn を算出する処理を行なう(ステップ1
65)。
【0028】この算出処理について、詳しく次に説明す
る。まず、輪郭線ベクトルデータVn を第1輪郭線ベ
クトルデータV1 側の輪郭線(以下、第1輪郭線と呼
ぶ)上に形成するか、または第2輪郭線ベクトルデータ
V2 側の輪郭線(以下、第2輪郭線と呼ぶ)上に形成
するかの判定を行ない、前述した輪郭線追跡方法および
ベクトルデータへの近似方法を用いて、その判定した側
の輪郭線上に輪郭線ベクトルデータVn を形成する。
【0029】前記形成する側の判定は、以下のようにし
て行なう。第1輪郭線側のこれまでに追跡済みの最新の
輪郭線ベクトルデータをVn−2 とし、その始点座標
,終点座標をそれぞれ(x1,y1),(x2,y2)
とする。また、第2輪郭線側のこれまでに追跡済みの最
新の輪郭線ベクトルデータをVn−1 とし、その始点
座標,終点座標をそれぞれ(x3,y3),(x4,y
4)とする。まず、図16に示すように、輪郭線ベクト
ルデータVn−1 の終点(x4,y4)から輪郭線ベ
クトルデータVn−2 上またはそのVn−2 の延長
線上に垂線Lをおろす。
【0030】この垂線Lは以下の一次式により表わされ
るが、   ・y1≠y2の場合       y=(x1−x2)/(y2−y1)・(
x−x4)+y4・y1=y2の場合 x=x4 この垂線Lに対して、Vn−2 の終点(x2,y2)
およびVn−1 の始点(x3,y3)が同じ側にある
か否かで、前記判定を行なう。即ち、以下の条件1を満
足する場合、垂線Lに対して両点が同じ側にあると判定
し、図17に示すように、輪郭線ベクトルデータVn 
は、Vn−2 側、即ち、第1輪郭線側を追跡して形成
される。
【0031】[条件1]   ・y1≠y2の場合       y2≧(x1−x2)/(y2−y1)・
(x2−x4)+y4  かつ      y3≧(x
1−x2)/(y2−y1)・(x3−x4)+y4 
 または、       y2<(x1−x2)/(y2−y1)・
(x2−x4)+y4  かつ      y3<(x
1−x2)/(y2−y1)・(x3−x4)+y4・
y1=y2の場合 x2≧x4  かつ  x3≧x4 または、 x2<x4  かつ  x3<x4
【0032】一方、条件1を満足しない場合、図18に
示すように、垂線Lに対してVn−2の終点(x2,y
2)およびVn−1 の始点(x3,y3)が、異なる
側にあると判定し、図19に示すように、輪郭線ベクト
ルデータVn は、Vn−1 側、即ち、第2輪郭線側
を追跡して形成される。
【0033】こうして、ステップ165により輪郭線ベ
クトルデータVn の算出がなされるが、その輪郭線ベ
クトルデータVn の終点を追跡している途中で、第1
輪郭線ベクトルデータV1 の始点または第2輪郭線ベ
クトルデータV2 の始点に達した場合は、閉ループを
検出したものとして、ステップ167で肯定判定されて
、以下の閉ループ処理を行なう(ステップ169)。
【0034】閉ループ処理として以下の■および■の作
業を行なう。■  図20に示すように、輪郭線ベクト
ルデータVn の終点が第1輪郭線ベクトルデータV1
 の始点に達した場合は、第2輪郭線ベクトルデータV
2 側の最終輪郭線ベクトルデータVm の終点から、
第2輪郭線ベクトルデータV2 の始点に達するまで図
中破線に示すように輪郭追跡を行なう。一方、図21に
示すように、輪郭線ベクトルデータVn の終点が第2
輪郭線ベクトルデータV2 の始点に達した場合は、第
1輪郭線ベクトルデータV1側の最終輪郭線ベクトルデ
ータVmの終点から、第1輪郭線ベクトルデータV1 
の始点に達するまで図中破線に示すように輪郭追跡を行
なう。
【0035】■  予め設けられた追跡終了フラグに値
1をセットする。ステップ169の実行後、追跡終了フ
ラグに値1がセットされているか否かの判定を行なう(
ステップ171:図5)。ここで、追跡終了フラグは値
1にセットされていることから、肯定判定され、追跡が
終了したとして、「EXIT」に抜けて本追跡処理ルー
チンを終了する。
【0036】一方、ステップ167で、閉ループを検出
していないと判定された場合には、続いて、ステップ1
65により輪郭線ベクトルデータVn の終点を追跡し
ている途中で、端点を検出したか否かの判定を行なう(
ステップ173)。この判定処理は、輪郭線ベクトルデ
ータVn の終点を追跡している途中で、図22に示す
ように、既に追跡済みの最新の輪郭線ベクトルデータV
P の終点もしくはその近傍に達したか否かから判定す
るものである。ここで、端点を検出したと判定されると
、以下の端点処理■または■を行なう(ステップ175
)。
【0037】■  予め設けられた端点フラグが値0の
場合、端点フラグに値1をセットする。■  端点フラ
グに既に値1がセットされている場合、または、後述す
る分岐点フラグに値1がセットされている場合、追跡終
了フラグに値1をセットする。ステップ175の実行後
、ステップ171に進み、追跡終了フラグに値1がセッ
トされているか否かの判定を行ない、値1がセットされ
ていると判定された場合、追跡が終了したとして、「E
XIT」に抜けて本追跡処理ルーチンを終了する。
【0038】一方、ステップ173で、端点を検出して
いないと判定された場合には、続いて、ステップ165
で算出された輪郭線ベクトルデータVn と、そのVn
 と対になる追跡済みの最終の輪郭線ベクトルデータV
m とのなす角度θ(図23参照)の余弦cosθを算
出する(ステップ177)。この算出処理は、Vn の
始点,終点の座標をそれぞれ(x11,y11),(x
12,y12)、Vm の始点,終点の座標をそれぞれ
(x13,y13),(x14,y14)とすると、次
式を用いて算出するものである。
【数1】
【0039】続いて、この算出されたcosθの絶対値
が、所定値α(0<α<1)より小さいか否かの判定を
行なう(ステップ179)。ここで、所定値αより小さ
いと判定された場合には、輪郭線ベクトルデータVn 
,Vm のなす角度θが所定角度より大きく、両ベクト
ルVn ,Vm がかけ離れた方向に向かっているとし
て、以下の処理(図5に示す処理)を行なう。
【0040】まず、両輪郭線ベクトルデータVn ,V
m の終点間の中点Cを算出し、その中点Cを中心とし
て一辺の長さがaの正方形領域を設定し、その後、この
正方形領域に含まれるラスタデータを抽出する処理を行
なう(ステップ181)。こうしたラスタデータの画像
の代表的なパターンを図24ないし図26に示すが、こ
れらの図に示すように、輪郭線ベクトルデータVn ,
Vm の先の図形が複数本に分岐しているもの(図24
)、Vn ,Vm の先が端点となっているもの(図2
5)、および輪郭線ベクトルデータVn ,Vm の先
の図形が1本の帯状に連続しているもの(図26)があ
る。
【0041】次に、その抽出したラスタデータの輪郭線
を追跡する処理を行なう(ステップ183)。この輪郭
線追跡処理は、前述した輪郭線追跡方法を用いて行なわ
れる。図27は輪郭線追跡後のラスタデータの一部を拡
大した図である。同図において、一点鎖線による斜線の
領域が正方形の境界画素を表し、T1,T2,T3が境
界上で外部に連続した輪郭画素領域である。ここで、輪
郭画素領域T1は、輪郭追跡中の画素が境界値と同じx
座標値を持つかどうかを調べることにより得られ、また
、輪郭画素領域T2,T3は、輪郭追跡中の画素が境界
値と同じy座標値を持つかどうかを調べることにより得
られる。こうして得られる輪郭画素領域T1,T2,T
3の数NCを算出する(ステップ185)。
【0042】続いて、ステップ185で算出された輪郭
画素領域T1,T2,T3の数NCが値0か、または値
1か、またはそれら以外かを判定する(ステップ187
,189)。ここで、数NCが値0と判定された場合、
図25に示すように、輪郭線ベクトルデータVn ,V
m の先が端点となっていると判別することができ、次
いで、ステップ175と同じ端点処理を実行する(ステ
ップ191)。その後、ステップ171に進み、ここで
は、ステップ191で追跡終了フラグは値1にセットさ
れていることから、肯定判定され、追跡が終了したとし
て、「EXIT」に抜けて本追跡処理ルーチンを終了す
る。
【0043】一方、輪郭画素領域T1,T2,T3の数
NCが値1と判定された場合、図26に示すように、輪
郭線ベクトルデータVn ,Vm の先の図形が1本の
帯状に連続していると判別することができる。この場合
、処理をステップ163に戻し、輪郭ベクトルデータの
追跡処理を継続する。他方、輪郭画素領域T1,T2,
T3の数NCが値0でも値1でもない、値2以上と判定
された場合、図24に示すように、輪郭線ベクトルデー
タVn ,Vmの先の図形が複数本に分岐していると判
別することができ、以下の分岐点処理■または■を行な
う(ステップ193)。■  予め設けられた分岐点フ
ラグが値0の場合、分岐点フラグに値1をセットする。 ■  分岐点フラグに既に値1がセットされている場合
、または、端点フラグに値1がセットされている場合、
追跡終了フラグに値1をセットする。
【0044】ステップ193の実行後、ステップ171
に進み、追跡終了フラグに値1がセットされているか否
かの判定を行ない、値1がセットされていると判定され
た場合、追跡が終了したとして、「EXIT」に抜けて
本追跡処理ルーチンを終了する。
【0045】一方、ステップ171で追跡終了フラグが
値1でないと判定された場合には、ステップ140およ
び150で算出された第1および第2輪郭線ベクトルデ
ータV1 ,V2 を、始点と終点を入れ換えることで
、逆方向にセットし、その後、処理をステップ163に
戻す。ステップ163では、両輪郭線ベクトルデータV
1,V2 を追跡開始輪郭ベクトルデータとして、前回
ステップ163を実行したときとは逆の方向、即ち、第
1輪郭線ベクトルデータV1 側の輪郭線を左手に黒点
を見て追跡し、第2輪郭線ベクトルデータV2 側の輪
郭線を右手に黒点を見て追跡する方法にて、輪郭線の追
跡を行なう。
【0046】追跡処理ルーチンの終了後、図3のステッ
プ200に進み、追跡処理ルーチンで算出された輪郭線
ベクトルデータV1 ,V2 ,…,Vn を磁気ディ
スク装置16の所定領域へ格納し、また、CRTディス
プレイ14cに出力し表示する出力処理を行なう。
【0047】即ち、輪郭線抽出処理ルーチンによれば、
2値画像のラスタデータにおける図形成分の一方の側の
輪郭線上に、まず、第1輪郭線ベクトルデータV1 を
形成し、次いで、その一方の側の輪郭線と対向する側の
輪郭線上に、第2輪郭線ベクトルデータV2 を形成す
る。 続いて、両輪郭線ベクトルデータV1 ,V2 を追跡
開始ベクトルとして、両輪郭線ベクトルデータV1 ,
V2 の方向(順方向)に両輪郭線上を追跡して輪郭線
ベクトルデータVn を形成する。これら輪郭線ベクト
ルデータが閉ループを形成すると、処理を終える。また
、追跡中の輪郭線ベクトルデータVn が図形の端点ま
たは分岐点に達すると、前記順方向の追跡を中止して、
第1および第2輪郭線ベクトルデータV1 ,V2 か
ら逆方向に両輪郭線上を追跡して輪郭線ベクトルデータ
Vn を形成し、その後、処理を終える。
【0048】したがって、本実施例の輪郭線抽出方法を
適用した画像処理装置では、図31の(a)に示すよう
な複数の図形部品A1,A2,A3を連結した図形から
図32に示す図形部品A1の一部の輪郭線を抽出したい
場合に、その必要な部分だけを即座に抽出することがで
きる。このため、従来のように、連結した図形成分全体
の輪郭線を一旦抽出する必要がなく、その結果、作業に
要する処理時間や処理ユニット10が必要とする使用メ
モリを削減することができる。
【0049】次に、本実施例の輪郭線抽出方法の利用例
を、図28を用いて簡単に説明する。図28に示すよう
に、2値画像のラスタデータ内に図形部品G1,G2を
連結した図形Gが含まれるような場合、まず、第1回目
の輪郭線抽出処理600により、図形部品G1に対して
図形部品G2との連結部分より外側近傍に座標点PAを
指示して、図形部品G1の連結点までの部分の輪郭線R
1をベクトル形式で第1の輪郭線データとして抽出する
。次いで、第2回目の輪郭線抽出処理610により、図
形部品G1の連結部分内側近傍に座標点PBを指示して
、図形部品G1の残りの部分の輪郭線R2をベクトル形
式で第2の輪郭線データとして抽出する。
【0050】続いて、こうして抽出された第1および第
2の輪郭線データを合成処理620により合成する。合
成された輪郭線データは図形部品G1の輪郭線を表わし
、例えば、色付け処理630によりその輪郭線の内部を
色付けしたり、あるいは、予め用意した標準パターンと
比較するパターンマッチング640等を行なう。
【0051】なお、前記実施例では、点指示工程ST1
として、ラスタデータ上の図形成分の近傍に指示点P1
を入力する処理を行なっていたが、これに替えて、図2
9に示すように、図形成分の内部(黒点の部分)に指示
点P1を入力するように構成してもよい。こうした場合
、その後の工程で第1輪郭線ベクトルデータV1 の始
点p2を算出するに際し、図29に示すように、水平、
垂直、斜め45度の8方向について指示点P1から最初
の白点までの距離を求め、それら8方向の距離を比較し
て、8方向の内で最短距離にある白点を選択し、この選
択された白点の方向で白点に変わる一つ手前の黒点を第
1輪郭線ベクトルデータV1 の始点P2として記憶す
る。
【0052】以上本発明の一実施例について説明したが
、本発明はこうした実施例に何等限定されるものではな
く、本発明の要旨を逸脱しない範囲において、種々なる
態様で実施し得ることは勿論である。
【0053】
【発明の効果】以上詳述した本発明の図形輪郭線抽出方
法によれば、複数の図形部品を連結した図形から図形部
品の一部の輪郭線を抽出したい場合に、その必要な部分
だけを即座に抽出することができる。このため、従来の
ように、連結した図形成分全体の輪郭線を一旦抽出する
必要がなく、その結果、作業に要する処理時間や画像処
理装置で必要とする使用メモリを削減することができる
【図面の簡単な説明】
【図1】本発明の基本的構成を例示するフローチャート
である。
【図2】本発明の一実施例としての図形輪郭線抽出方法
を適用した画像処理装置の概略構成を示すブロック図で
ある。
【図3】画像処理装置の処理ユニット10にて実行され
る輪郭線抽出処理ルーチンを示すフローチャートである
【図4】その輪郭線抽出処理ルーチンの1ステップであ
る追跡処理ルーチンの前半部分を示すフローチャートで
ある。
【図5】その追跡処理ルーチンの後半部分を示すフロー
チャートである。
【図6】その輪郭線抽出処理ルーチンで指示点P1から
第1輪郭線ベクトルデータV1の始点P2を定める手順
を示す説明図である。
【図7】ラスタデータ上の図形の一例を示す説明図であ
る。
【図8】右手に黒点を見て追跡する輪郭線追跡方法を説
明するためのもので、始点y0を中心とする追跡領域S
0を示す説明図である。
【図9】始点y1を中心とする追跡領域S1を示す説明
図である。
【図10】ラスタデータ上の図形の輪郭データを示す説
明図である。
【図11】左手に黒点を見て追跡する輪郭線追跡方法を
説明するためのもので、始点y0を中心とする追跡領域
S0を示す説明図である。
【図12】始点y1を中心とする追跡領域S1を示す説
明図である。
【図13】ラスタデータ上の図形の輪郭データを示す説
明図である。
【図14】第1輪郭線ベクトルデータV1 を示す説明
図である。
【図15】第2輪郭線ベクトルデータV2 を示す説明
図である。
【図16】輪郭線ベクトルデータVn を形成する一手
順を示す説明図である。
【図17】その手順で形成された輪郭線ベクトルデータ
Vn を示す説明図である。
【図18】輪郭線ベクトルデータVn を形成する他の
手順を示す説明図である。
【図19】その手順で形成された輪郭線ベクトルデータ
Vn を示す説明図である。
【図20】輪郭線ベクトルデータVn を閉ループに形
成する一手順を示す説明図である。
【図21】輪郭線ベクトルデータVn を閉ループに形
成する他の手順を示す説明図である。
【図22】輪郭線ベクトルデータVn を端点に形成す
る手順を示す説明図である。
【図23】輪郭線ベクトルデータVn ,Vm のなす
角度θを示す説明図である。
【図24】正方形領域に含まれるラスタデータの画像の
第1のパターンを示す説明図である。
【図25】同じく第2のパターンを示す説明図である。
【図26】同じく第3のパターンを示す説明図である。
【図27】輪郭線追跡後のラスタデータの一部を拡大し
た説明図である。
【図28】本実施例の輪郭線抽出方法の利用例を示す説
明図である。
【図29】指示点P1から第1輪郭線ベクトルデータV
1 の始点P2を定める別の手順を示す説明図である。
【図30】従来の輪郭線抽出方法を示す説明図である。
【図31】発明が解決しようとする課題を説明するため
に用いた説明図である。
【図32】本発明で抽出したい図形成分の一部の一例を
示す説明図である。
【符号の説明】
ST1  点指示工程 ST2  第1点選択工程 ST3  第1輪郭線ベクトルデータ算出工程ST4 
 第2点選択工程 ST5  第2輪郭線ベクトルデータ算出工程ST6 
 追跡・輪郭線ベクトルデータ算出工程1  CPU 10  処理ユニット 12  イメージスキャナ 14  対話端末機 14b  マウス 16  磁気ディスク装置 26  輪郭線追跡部 P1  指示点 P2  始点 P3  終点 P4  始点 P5  終点 V1   第1輪郭線ベクトルデータ V2   第2輪郭線ベクトルデータ Vn   輪郭線ベクトルデータ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  図形成分を含む2値画像のラスタデー
    タから該図形成分の輪郭線を追跡して抽出する図形輪郭
    線抽出方法であって、前記ラスタデータにおける図形成
    分上または図形成分の近傍に任意の点を指示する点指示
    工程と、該点指示工程で指示された点に基づいて、前記
    図形成分の輪郭線上における一点を選択する第1点選択
    工程と、該第1点選択工程で選択された一点を始点とし
    て、前記輪郭線上の一線分をベクトル形式で示す第1輪
    郭線ベクトルデータを算出する第1輪郭線ベクトルデー
    タ算出工程と、前記第1輪郭線ベクトルデータの始点に
    基づいて、前記図形成分の前記第1輪郭線ベクトルデー
    タで示される輪郭線と対をなす他方側の輪郭線上におけ
    る一点を選択する第2点選択工程と、該第2点選択工程
    で選択された一点を始点として、前記他方側の輪郭線上
    の一線分をベクトル形式で示す第2輪郭線ベクトルデー
    タを算出する第2輪郭線ベクトルデータ算出工程と、前
    記第1輪郭線ベクトルデータおよび第2輪郭線ベクトル
    データで示される両ベクトルをそれぞれ追跡開始ベクト
    ルとして、2方の追跡ベクトルにより前記両輪郭線を並
    行して追跡することにより、両輪郭線をベクトル形式で
    示す輪郭線ベクトルデータを算出する追跡・輪郭線ベク
    トルデータ算出工程とを備えたことを特徴とする図形輪
    郭線抽出方法。
JP3122237A 1991-04-23 1991-04-23 図形輪郭線抽出方法 Pending JPH04323779A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3122237A JPH04323779A (ja) 1991-04-23 1991-04-23 図形輪郭線抽出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3122237A JPH04323779A (ja) 1991-04-23 1991-04-23 図形輪郭線抽出方法

Publications (1)

Publication Number Publication Date
JPH04323779A true JPH04323779A (ja) 1992-11-12

Family

ID=14830980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3122237A Pending JPH04323779A (ja) 1991-04-23 1991-04-23 図形輪郭線抽出方法

Country Status (1)

Country Link
JP (1) JPH04323779A (ja)

Similar Documents

Publication Publication Date Title
US4779081A (en) Graphics in display unit
JP3124999B1 (ja) レンダリング方法及び装置、ゲーム装置、並びに仮想空間内のオブジェクトの陰影に関するデータを計算するためのプログラムを格納するコンピュータ読み取り可能な記録媒体
US6844876B2 (en) Apparatus and method for generating 3D graphics
KR100227585B1 (ko) 문자 생성 장치
JPH04323779A (ja) 図形輪郭線抽出方法
JP2003162728A (ja) 画像処理装置及び画像出力装置
US5185596A (en) Electronic image modification
JPH03295587A (ja) 刺繍機縫目データ作成方法及び装置
JP3065364B2 (ja) 切抜きマスク作成方法及び装置
JP3444726B2 (ja) 文字処理装置
JP2003099770A (ja) データ変換装置およびその方法、並びに当該方法を用いたプログラム
KR100871825B1 (ko) 아웃라인 폰트 정보에 의거한 문자 처리 방법 및 그방법을 컴퓨터 시스템에 실행시키기 위한 컴퓨터소프트 웨어 프로그램 제품
JP2002351451A (ja) アウトラインフォント情報に基づく文字処理方法及びその方法をコンピュータシステムに実行させるためのコンピュータソフトウエアプログラム製品
JP2779522B2 (ja) 多角形の入力方法
JPH0493992A (ja) 文字・図形描画装置
JPH0785123A (ja) 画像処理対象領域の指定方法
JP3531582B2 (ja) 画像処理方法および画像処理装置
JPH07121723A (ja) 縞紋様の方向データの修正方法及びこれを実行するため の情報処理装置並びに縞紋様のピッチデータの修正方法 及びこれを実行するための情報処理装置
JP2582298B2 (ja) 図形処理装置における図形情報作成方法
JP2792102B2 (ja) 文字フォント描画方法
JPH06195437A (ja) 三次元アニメーション処理システム
JPH03248276A (ja) 図形処理装置
JPH07230482A (ja) Cad図面の作図方法
JPS63247868A (ja) 三次元図形表示装置
JPH0413182A (ja) 文字・図形発生方法及び装置