JP4151290B2 - 分断ベクトル連結プログラムおよび方法 - Google Patents
分断ベクトル連結プログラムおよび方法 Download PDFInfo
- Publication number
- JP4151290B2 JP4151290B2 JP2002076803A JP2002076803A JP4151290B2 JP 4151290 B2 JP4151290 B2 JP 4151290B2 JP 2002076803 A JP2002076803 A JP 2002076803A JP 2002076803 A JP2002076803 A JP 2002076803A JP 4151290 B2 JP4151290 B2 JP 4151290B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- connection
- vectors
- distance
- 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 - Fee Related
Links
Images
Landscapes
- Image Processing (AREA)
Description
【発明の属する技術分野】
本発明は、カラー画像など濃淡が不鮮明な画像から抽出したベクトルを接続するための改良されたプログラムおよび方法に関する。
【0002】
【従来の技術】
画像から線分などをベクトルデータとして抽出する場合、通常は画像を2値化後、細線化、チェインコード変換を経てベクトルデータ化する方法が使われている。
また、特開平2−105265号公報には、このような画像からのベクトルデータの抽出方法について1方法が提案されている。
【0003】
すなわち、前記従来のベクトル化の方法では、2値化したデータの細線化処理、すなわち、画像のどんな太さの線でも1画素分の太さの線にする処理の後、チェインコード変換で、黒画素がどの方向に連続しているかを調べる黒画素のつながりの始点と終点から黒画素の連続部を1つのベクトルデータとするが、問題点としては、細線化処理の際、画像の小突起やノイズにより、誤ベクトルを生成しやすいということが指摘され、その改良が示されている。
【0004】
すなわち、2値画像を縦方向に各画素毎に走査する縦走査を横方向に所定画素間隔で行うとともに、前記2値画像を横方向に各画素ごとに走査する横走査を縦方向に所定画素間隔で行う走査手段と、前記縦走査および横走査の各走査ごとに連続する黒画素の重心を抽出する黒画素重心抽出手段と、前記縦走査および横走査において前記黒画素重心抽出手段が抽出した該走査の黒画素重心と該走査に隣接する走査において抽出された黒画素重心とが所定距離内にある場合に両黒画素重心を連結するベクトルを形成する黒画素重心連結手段と、この黒画素重心連結手段が生成した複数のベクトルを一つのベクトルに結合する処理または離間した複数のベクトルを接触させる処理をするベクトル整形手段とを備えるものとしている。
【0005】
ベクトルの整形は、短ベクトルの削除をベクトルの長さがある閾値以下であるとき、重心の抽出に誤りがあり、それによって形成された誤ベクトルであると判断して削除するようにしている。
そして、ベクトルの結合を、2つのベクトルの端点間の距離が所定距離より小であり、且つ2つのベクトルの成す角度が所定角度より小である時、前記2つのベクトルを、それらの互いに離れている端点を結ぶ1つのベクトルで代表させるようにしている。
【0006】
さらに、ベクトルの接触処理を一方のベクトルのどちらかの端点から他方のベクトルまでの距離が、所定距離より小である時、該端点を他方のベクトルに接触するよう整形するようにしている。
これにより、従来の画像データのベクトル変換で行っていたような細線化処理は採用しないので、画像の小突起やノイズに基づく誤ベクトルが生成されにくくなったとされている。
【0007】
【発明が解決しようとする課題】
しかしながら、前記公知例のように細線化によるベクトル抽出時のベクトルの途切れの発生が少なくなる効果を奏する方法であっても、元となる画像によっては、抽出されたベクトル群に途切れの多く、抽出後のベクトルの接続の方法に改良が必要な場合も考えられる。
【0008】
特に、写真などのカラー画像では、二値化した段階で画像内の線分の連続性が失われやすい。これは、二値化処理が、特定画素と周辺画素との色の違いを元に処理しているためであり、カラー画像内の線分のように色が微妙に変化するようなケースでは完全に二値化することはできない。
このような画像をベクトルデータ化する場合、二値化された画像をもとに処理するので、画像内の線分は途中で分断されたベクトルデータになってしまう。ノイズと考えられる短いベクトルデータを削除しようとすると、本来なら線分と認識すべきベクトルデータまでも削除してしまう恐れがあり、ノイズ除去としては、ごく短いベクトルデータの削除にとどまっていた。
【0009】
そこで、本発明は、カラー画像など濃淡が不鮮明な画像から抽出した分断されたベクトル群に対して、適切な連結処理とノイズの除去を行って原画像に近いベクトルデータを抽出する手段を提供することを課題とする。
【0010】
【課題を解決するための手段】
図1には本発明の構成図を示す。図は画像等から得られて、ベクトルテーブル7に格納された分断されたベクトルに対して、連結処理基準選択ステップ2によって順次選択される連結処理基準1に基づいてベクトル群連結ステップ3を動作させて、その結果を反映させたベクトルテーブルに対して、すべての連結処理基準を設定された順序で適用し、最後にノイズ除去ステップ4を動作させることにより連結されたベクトルデータがベクトルテーブルに格納されて得られる仕組みを示している。
【0011】
ベクトル連結処理基準(a〜x)1には、連結処理の対象とするベクトルの最短の長さを示す最短ベクトル長と、連結する2つのベクトルの組合せを選択する最長の端点間距離を示す最長端点間距離と、第1の着目ベクトルの延長線と第2ベクトルとの連結可能性を判定する最長のベクトル間距離を示す最長ベクトル間距離と、を含み、複数のベクトル連結処理基準(a〜x)1のそれぞれに対してこれらの値の組が設定されている。
【0012】
特に、ベクトル群連結ステップ3は着目ベクトル選択ステップ5、連結可能性判定ステップ6、ベクトル連結ステップ8および短ベクトル除去ステップ9で構成されていることを示している。
すなわち、着目ベクトル選択ステップ5は、分断ベクトル群中の未処理で最長のベクトルを着目ベクトルとして選択し、未処理のベクトルがないときには短ベクトル除去ステップ9に移行してその連結処理基準についての終了処理に移る。
【0013】
そして、連結可能性判定ステップ6は、着目ベクトルの端点から最長端点間距離以内に端点を持ち、かつ、最長ベクトル間距離以内のベクトルが存在すれば連結可能性ありと判定してベクトル連結ステップ8に移り、ベクトルを連結するようにし、また、存在しなければ着目ベクトル選択ステップ5に移行する。
ベクトル連結ステップ8は、連結可能性を判定されたベクトルを着目ベクトルと連結して新たな着目ベクトルとしてベクトルテーブル7に格納し、連結可能性判定ステップ6に移行して連結処理を繰り返す。
【0014】
着目ベクトル選択ステップ5において、未処理のベクトル、すなわち、着目ベクトルと連結されたベクトルあるいは着目ベクトルとして選択されて他のベクトルとの連結可能性がなしとされたベクトル以外のベクトルがなくなったとき、動作する短ベクトル除去ステップ9は、選択された連結処理基準1に設定された最短ベクトル長未満のベクトルを除去して、選択されたベクトル連結基準1に基づいた分断ベクトル群連結処理を終了する。
【0015】
また、このようにして順次選択される複数のベクトル連結処理基準1において、最長ベクトル間距離はベクトル連結処理基準1が選択される毎に単純増加するように設定され、同じ値の最長ベクトル間距離と組み合わせられる最長端点間距離はベクトル連結処理基準1が選択される毎に単純増加するように設定されている。
【0016】
このようにすることにより、短いベクトルも段階的に他のベクトルと連結を繰り返し成長させながら、離れた距離にあるベクトルも連結することができるので、接続されないノイズベクトルも効率よく選択して除去できることになり、カラー画像など濃淡が不鮮明な画像から抽出した分断されたベクトル群に対しても、適切な接続処理とノイズの除去を行って原画像に近いベクトルデータを抽出することが可能となる。
【0017】
【発明の実施の形態】
本実施の形態においては、パーソナルコンピューター、ワークステーション等の汎用的な目的で使用される計算機上で実行するコンピュータプログラムにより実現する形態を示す。
本発明の分断ベクトル連結プログラムは、処理装置、主記憶装置、入出力装置などから構成される計算機上で、コンピュータプログラムとして実行して実現される。また、コンピュータプログラムは、フロッピーディスクやCD−ROM等の可搬型媒体やネットワーク接続された他の計算機の主記憶装置や補助記憶装置等に格納されて提供される。
【0018】
本発明のコンピュータプログラムは、可搬型媒体から直接計算機の主記憶装置にロードされ、または、補助記憶装置を備えた計算機においては可搬型媒体から一旦補助記憶装置にコピーまたはインストール後に、主記憶装置にロードされて実行する。また、ネットワーク接続された他の装置に格納されて提供された場合も、他の装置からネットワークを経由して受信後に、主記憶装置にロードされ、あるいは補助記憶装置を備える計算機においては補助記憶装置にコピー後に、主記憶装置にロードされて実行するものである。
【0019】
図2に本発明の実施の形態の構成図を示す。本実施の形態は、写真で撮影した建物の画像からその立体構造を測定したり、壁面の模様を正確に記録して背景色を変えた図面をつくり出したりするための装置に本発明を応用した例を示すこととする。
図2において、20は本発明の分断ベクトル連結プログラム27を動作させるコンピュータである。26は提供された分断ベクトル連結プログラムを格納した媒体でありコンピュータはこの媒体からプログラムを読み込み、動作可能とすることで分断ベクトル連結装置として機能することになる。
【0020】
22は分断されたベクトル群のデータを格納した媒体でありその対応する画像を21に示している。この画像はカメラなどで撮影した画像であり本装置の入力となるベクトルデータは従来技術により、画像を2値化、細線化などの処理によって分断されたベクトルデータの形式とされたものである。
操作部23はディスプレイ、キーボード、マウスなどの入出力機能を備え、利用者が本装置の各機能を制御するための操作を行うものである。操作部23による指示により分断されたベクトル群22のデータは読み込まれてベクトルデータ域28に格納される。このベクトルデータ域28に格納されたベクトルデータは、予め設定された連結処理基準29に格納された複数の連結処理基準に基づいて分断ベクトル連結プログラム27が連結処理して各連結処理基準に対応した処理毎にベクトルデータ域に段階的に連結されたベクトルデータで置き換えて格納することにより、設定されたすべての連結処理基準29に基づいた処理が終了したときには連結されたベクトル群24として媒体に出力することになり、この連結されたベクトルは表示すると25のような連結されたベクトルになる。
【0021】
ベクトル連結処理の詳細な説明に入る前に、ベクトル連結の過程を処理途中の画像で説明しておく。図3には本実施の形態のベクトル連結の処理対象の写真画像を示す。すなわち図2における分断されたベクトル画像21に対応するものであり、建物の壁面部分の写真(元はカラー写真)である。この写真に見られる壁面の縞模様などをベクトルデータとして抽出することを行っていく。
【0022】
図4は従来技術によるベクトル連結処理結果の画像を示す。図5は図3の写真画像を2値化、細線化、チェインコード化して得られた状態のベクトル連結前のベクトルデータであり図2の分断されたベクトル群22に対応するデータを可視化したものである。
以下、図6から図11までは本発明の特徴である段階的、繰り返し行う連結処理の中間結果を可視化したものを示す。図12は最終的に得られた、本発明によるベクトル連結最終結果を示すものである。
【0023】
これらの図を比較してわかるように分断されたベクトルが徐々に段階を経て接続され、最終結果を得る段階においてはある程度長さのあるノイズであるベクトルも除去できるので目的とする原画像に近いベクトルデータが得られた。
特に図4に示した従来技術によるベクトル連結処理結果と図12の本発明によるベクトル連結最終結果とを比較するとその効果が明白である。以下にベクトル連結処理の仕組みと動作を詳細に説明する。
【0024】
図13にベクトルの連結処理基準を示す。図5のベクトル連結前のベクトルデータに対して7回の連結処理を行うときの連結処理基準をまとめて表形式で示している。
すなわち、基準番号1から7までの連結処理基準であり、基準番号1から4はベクトル間距離を1として、端点間距離を順次2、4、6、10と変化させている。距離の単位はここでは相対的な大きさの変化を説明するので最小の長さを1としている。例えば、ドット、ピクセル、あるいはそのn倍を単位としても本発明の仕組みを説明する場合に違いは生じない。
【0025】
ベクトル間距離は基準とするベクトル、これを着目ベクトルというが、この着目ベクトルとの隣接の度合、平行の度合を確認するための目安であり、着目ベクトルあるいはその延長線と対象のベクトルの端点との距離範囲の限界を示す。すなわち、対象のベクトルの両端点が着目ベクトルあるいはその延長線から、この限界内にある場合は連結する候補とすることができることになる。
【0026】
そして、その候補の中で、着目ベクトルの端点と候補ベクトルの端点の距離が基準に示される端点間距離以内であるときには連結可能と判断する。ただし、端点も近く、平行した近い距離にある場合でも、着目ベクトルの延長方向に伸びるベクトルでない場合は接続できないので、接続する端点から伸びる方向を判定する必要がある。
【0027】
このようにして、すぐ近くの分断されたベクトルと思われるものから、端点間距離が順次増加するような連結基準によって、順々により離れたベクトルを連結することになり、これにしたがい、分断されたベクトルの長さが長くなっていく。
基準番号5から7はベクトル間距離を2として、端点間距離を5、10、15と変化させている。ベクトルが連結されて行き長くなって行くとより遠く離れたベクトルとの接続を試みるが同じ平行度でもベクトル間距離を大きくして対象のベクトルを探すことができる。
【0028】
ベクトル長は基準番号1から3まで、2、4、6としているがその他は0、すなわち、基準番号1から3までは端点間距離が小さいベクトルを対象に連結して行くので接続対象とするベクトルの長さも順次長いものに限定して行くようにしている。これにより明らかに処理不要のベクトルを除去して処理対象を減らして処理に必要な時間を短縮する効果が得られる。
【0029】
しかし、基準番号4以降はこのベクトル長は0としてあり、中間的に短いベクトルの除去を行わなくしている。これは、ベクトル間距離の拡大に伴い中間的な長さのベクトルも連結対象となる可能性があるから残している。そして、基準番号7に示すように、ノイズ長が30として連結が進んだ状態で一挙に中間の長さのベクトルをノイズとして除去するようにしている。これは、基準番号1から7まで、段階的にベクトルの連結を行ってベクトル長を成長させていく方式を採ったため可能となった効果の一つである。
【0030】
図14には連結処理基準の各パラメータなど用語の説明図を示す。すなわち、前記図13の連結処理基準について図で説明するものである。
図14(a)は着目ベクトルと端点間距離について図示している。ここには、ベクトルAとして、端点aとbを持つベクトルを示し、端点c、dを持つベクトルC、同様に、ベクトルEを示している。ここで、ベクトルAは着目ベクトルであり、ベクトルの長さD(ab)が連結処理がなされていないベクトルの中で最も長いものとして選ばれる。
【0031】
着目ベクトルの端点bからの連結処理基準距離範囲を示す端点間距離をLD1で示し、これを半径とする円の範囲内に存在する端点をもつベクトルが連結の候補となる。ここでは、端点bの近傍に端点c、eがあり、ベクトルC、ベクトルEがその候補となることを示している。
図14(b)は着目ベクトルとベクトル間距離の説明図である。着目ベクトルAおよびその延長線から直角に測った距離についての連結処理基準をベクトル間距離LD2で表している。連結可能性を判定するとき、ベクトルCの端点cおよびdは両方ともその範囲に入っていることが分かる。もう一つのベクトルEの端点eの着目ベクトルAとのベクトル間距離はD(e)で示されLD2以下であることが分かるが、端点fのベクトルAとの距離はD(f)で示されるようにLD2を超えていることを示している。
【0032】
すなわち、ベクトルCは端点cがベクトルAの端点bと端点間距離がLD1以内で、かつ、両端点c、dともにベクトル間距離もLD2以内である。一方、ベクトルEは端点eは端点間距離、ベクトル間距離も基準に入っているが端点fがベクトルAの延長線からの距離が基準を超えている。
このようにして、連結可能性のあるベクトルを判定して、図14(c)着目ベクトルとベクトル連結に示すように端点bと端点cをつなぎ、着目ベクトルAとベクトルCとを連結する。このようにして連結されたベクトルを新しい着目ベクトルとして、前記したと同様に連結処理基準の端点間距離、ベクトル間距離によって連結処理を進めることになる。
【0033】
なお、図14(c)に示すように着目ベクトルAとなす角度についても連結処理を行うとき確認を行うようにしている。すなわち、連結するベクトルの長さが長いときはベクトル間距離の基準によりほぼ平行なベクトルが選択されるが、ベクトルの長さが短いとき、および、ベクトル間距離が長くなってきたときに角度の規制も行う。図でLAは連結処理に加えられるベクトル間角度の範囲を示している。また、この角度の確認は、端点が近く、ベクトル間距離も基準内であってもベクトルの向きが逆向き、すなわち、接続する端点で折り返すような方向のベクトルを連結しないように排除するためにも必要な処理である。
【0034】
次に、図15に示すベクトルテーブルに例示して格納されたベクトルデータの連結処理の動作について、図16から図18に示すベクトル連結のフローチャートを用いて説明する。
図15(a)は連結対象ベクトルデータテーブルであり、連結処理の対象の各ベクトルをその長さの順に並べている。テーブルの構成は、ベクトルのそれぞれを区別するために付したベクトル番号をV1からVnとして示し、ベクトルの端点の座標、端点1座標、端点2座標をそれぞれ(x1,y1)、(x2,y2)で示すが、各ベクトルの座標はV1xy1でベクトル番号V1の第1端点の座標(x,y)を意味するように略記している。
【0035】
ベクトル長さはV1Lによりベクトル番号V1のベクトルの長さを示している。このベクトル長さはふたつの端点の座標から算出した値を示す。同様に、各ベクトルの角度も端点の座標から算出することができるが表には示していない。ふたつのベクトルの角度を検証するときはそのつど算出してもよい。
また、フラグは処理済ベクトルを表すフラグとして「※」、処理中ベクトルを示すものとして「○」を用いて例示している。処理中とは、そのベクトルを着目ベクトルとして連結処理をしていることを示している。連結対象として接続されたベクトル、および、着目ベクトルとして他のベクトルとの連結を試みた結果連結する相手がないと判明したベクトルは処理済ベクトルのフラグが付けられるようにして一連の連結処理は未処理のベクトルがなくなるまで行われる。
【0036】
図15(b)は作業用ベクトルデータテーブルを示している。図15(a)は連結処理対象のベクトルデータを格納するものであり、各連結処理基準に対応する連結処理ごとに対象となるベクトルデータを示し、連結処理中にはフラグが設定されることおよび処理対象のベクトルを選択するための不図示のポインタが変化する以外は固定されているものであるが、図15(b)の連結処理作業用ベクトルデータは連結処理のために変化する途中段階のベクトルデータを格納するものである。
【0037】
すなわち、連結ベクトル番号列はV1−V3のように、ベクトル番号V1とV3が連結されたベクトルデータを示し、端点座標、ベクトル長さは前記連結対象ベクトルデータテーブルと同様である。このテーブルのフラグは「◎」で着目ベクトルを示す。連結対象ベクトルデータテーブルのベクトル中で処理中のベクトルデータを作業用ベクトルデータテーブルにコピーして処理を進め、連結されたベクトルができると連結ベクトル番号列として表示するとともに端点座標、ベクトル長さを更新するようにしている。端点座標の表示は連結されたベクトルの端点座標を示すように先頭に「L」を付け、ベクトル番号はベクトル番号列の先頭のベクトル番号を用いている。同様にベクトル長さも表示している。
【0038】
図15を参照しながら、図16ベクトル連結のフローチャート(その1)から図18ベクトル連結のフローチャート(その3)のフローチャートに沿ってベクトル連結処理の動作を説明する。
まず、ステップS161において、写真などから採取され2値化、細線化され、チェインコード変換されて、ベクトル化されてはいるが分断された状態のベクトルデータを入力して、本来の原画像に近いベクトルとするために連結処理対象ベクトルデータテーブルに設定する。
【0039】
ステップS162では、連結対象ベクトルデータテーブルのベクトルデータを各ベクトルの長さの順に並べ替える。これは、長いベクトルを着目ベクトルとしてそれに他のベクトルを連結して成長させていくようにするために行うものである。
ステップS163で連結処理基準の基準番号を順次進めて連結処理を行う条件を設定する。ひとつの連結処理基準により連結対象のベクトル群を連結処理し、連結が進んだベクトル群をあらためて連結対象として新しい連結処理基準を使って連結処理を繰り返すことになる。ステップS164であらかじめ用意された連結処理基準により連結処理がすべて終わったか、すなわち、図13に示した基準番号の1から7まで7回の連結処理を繰り返し行ったことが確認されると図18のステップS184に移行して最後の処理として、連結対象ベクトルデータテーブルの中で連結処理基準に設定されたノイズ長以下のベクトルデータを削除する。これにより分断されたベクトルの連結処理は段階を経て徐々に連結を進め、ノイズの少ない原画像に近いベクトル群として得られることになる。
【0040】
ステップS165では新たに選択された連結処理基準による連結処理を行うために、作業用ベクトルデータテーブルを初期状態とする。
ステップS166において、連結対象ベクトルデータテーブルのベクトルデータの中で順番にフラグを調べ処理済のフラグがないベクトルを検出したらそれを処理中ベクトルとしてフラグを設定する。長さの順にソートされているので未処理のベクトルの内で最長のものが採用されることになる。
【0041】
図15は連結処理が進んだ状態を表しているが、ここに表示されている連結対象ベクトルデータテーブルにはベクトル番号1から大きさの順にベクトル番号Vnまで設定されていて、V1、V2、V3そしてV6が処理済、すなわち、いずれかの他のベクトルと連結され作業用ベクトルデータテーブルに格納されたことを示している。なお、この例にはないが、連結する相手がなく単独で作業用ベクトルデータテーブルに転記されて処理済となるものもある。
【0042】
作業用ベクトルデータテーブルを見ると、連結ベクトル番号列としてV1−V3、V2−V6として前記処理済フラグが付いたベクトルが連結して示されている。
ステップS167では、連結対象ベクトルデータテーブルのフラグが処理中とされたベクトルデータを作業用ベクトルデータテーブルに追加してコピーする。そして、これに着目ベクトルのフラグを設定する。図15においては、V4およびV4−Vp−Vqが処理中ベクトルデータ、着目ベクトルデータの例であるが、作業用ベクトルデータテーブルにコピーされた後、処理が進み、ベクトルVp、Vqが連結された状態を示している。
【0043】
図17のステップS171では、連結対象ベクトルデータテーブルのフラグが処理中、処理済以外の(未処理の)ベクトルデータがあるかを調べる。ここで、未処理のベクトルデータがないときには、処理中であった連結処理基準に基づく連結処理は終了することになるので、次の連結処理基準の選択に移る前にステップS181に移行し、この段階で作業中ベクトルデータテーブルに格納された連結されたベクトルデータをハフ変換しそれぞれ連続した1本のベクトルとする。
【0044】
そして、ステップS182で次の段階の連結処理基準による処理を行うために、連結対象ベクトルデータテーブルをクリアして、作業中ベクトルデータテーブルのベクトルデータをコピーする。これにより次のステップのためのベクトルデータの設定ができたのでステップS162に戻るようにする。
ステップS171でまだ未処理のベクトルデータがあるときにはステップS172にステップを進める。ここでは、連結対象ベクトルデータテーブルのフラグが処理中および処理済以外のベクトルについて、着目ベクトルの端点と一方の端点との間の端点間距離が連結処理基準範囲内で、かつ、ベクトル間距離が連結基準内で、かつ、着目ベクトルとの角度が限度内のベクトルを抽出する。
【0045】
ステップS173で、これらの条件をみたす抽出されたベクトルがなかったときには、ステップS183に移動し、処理中ベクトルデータのフラグを処理済に変える。すなわち、連結する相手のベクトルが見つからなかったときにはそこまでの連結で処理中のベクトルは連結処理を終了し、新たな連結処理を行うベクトルデータを探すためにステップS166に移行する。
【0046】
ステップS173で抽出されたベクトルが見つかったときにはステップS174以降において、着目ベクトルとここに見つかったベクトルを連結する処理に入る。ステップS174では、もし抽出したベクトルが複数あるときは両端点の着目ベクトルとの距離の合計の小さいベクトルを選択するようにしている。
ステップS175では、連結対象ベクトルデータテーブルの選択したベクトルデータのフラグを処理済とする。
【0047】
ステップS176では、着目ベクトルと選択したベクトルを接続して作業用ベクトルデータテーブルの着目ベクトルを更新して置き換える。これにより、着目ベクトルにひとつのベクトルが新たに連結されたことになり、次の未処理のベクトルについて現在処理中の着目ベクトルに連結するものがあるかどうかを探すところから繰り返し処理するためにステップS171に移行する。
【0048】
以上のように、ベクトルの連結処理の動作がなされることが説明されたが、図13に示した連結処理基準の例に基づき、図3に示した写真画像から取り出されたベクトル連結前の図5に示す分断されたベクトルが、図6から図12にわたる7段階の連結処理で着実に連結が進み、かつ、図11から図12に移る最終段階でのノイズ除去が有効に働き、図4に示した従来技術によるベクトル連結処理結果と較べると、ノイズの少ない図3の写真の原画像に写されているベクトルに近いベクトルデータとなったことが分かる。
【0049】
(付記1) コンピュータに、
あらかじめ設定された複数のベクトル連結処理基準を順次選択する連結処理基準選択ステップと、
前記選択されたベクトル連結処理基準に基づいて分断ベクトル群の連結を行うベクトル群連結ステップと、
前記ベクトル群連結ステップが前記あらかじめ設定されたすべてのベクトル連結処理基準について実行されたとき、あらかじめ設定されたノイズ長以下のベクトルを除去するノイズ除去ステップと、
を動作させることを特徴とする分断ベクトル連結プログラム。
(付記2) 前記ベクトル連結処理基準には、連結処理の対象とするベクトルの最短の長さを示す最短ベクトル長と、連結する2つのベクトルの組合せを選択する最長の端点間距離を示す最長端点間距離と、第1の着目ベクトルの延長線と第2ベクトルとの連結可能性を判定する最長のベクトル間距離を示す最長ベクトル間距離と、を含むことを特徴とする付記1記載の分断ベクトル連結プログラム。
(付記3) 前記ベクトル群連結ステップには前記選択されたベクトル連結処理基準に基づきコンピュータに動作させる、着目ベクトル選択ステップと、連結可能性判定ステップと、ベクトル連結ステップと、短ベクトル除去ステップと、を含み、
前記着目ベクトル選択ステップは、分断ベクトル群中の未処理で最長のベクトルを着目ベクトルとして選択し、未処理のベクトルがないときには短ベクトル除去ステップに移行し、
前記連結可能性判定ステップは、前記着目ベクトルの端点から前記最長端点間距離以内に端点を持ち、かつ、前記最長ベクトル間距離以内のベクトルが存在すれば連結可能性ありと判定し、存在しなければ前記着目ベクトル選択ステップに移行し、
ベクトル連結ステップは、前記連結可能性を判定されたベクトルを前記着目ベクトルと連結して新たな着目ベクトルとして前記連結可能性判定ステップに移行し、
前記短ベクトル除去ステップは、前記最短ベクトル長未満のベクトルを除去して、前記選択されたベクトル連結基準に基づいた分断ベクトル群連結処理を終了することを特徴とする付記2記載の分断ベクトル連結プログラム。
(付記4) 前記順次選択される複数のベクトル連結処理基準において、前記最長ベクトル間距離は選択される毎に単純増加するように設定され、同じ値の前記最長ベクトル間距離と組み合わせられる前記最長端点間距離は選択される毎に単純増加するように設定されることを特徴とする付記2から付記3のいずれかに記載の分断ベクトル連結プログラム。
(付記5) 前記連結可能性判定ステップにおいて、複数のベクトルが連結可能性ありと判断されたときは、前記第2のベクトルの二つの端点と第1のベクトルとの距離の合計が小さい方のベクトルを連結の対象とすることを特徴とする付記3から付記4のいずれかに記載の分断ベクトル連結プログラム。
【0050】
(付記6) 分断されたベクトル群を連結する分断ベクトル連結方法であって、
連結処理の対象とするベクトルの最短ベクトル長と、連結する2つのベクトルの組合せを選択する最長の端点間距離を示す最長端点間距離と、第1のベクトルの延長線と第2のベクトルとの連結可能性を判定する最長のベクトル間距離を示す最長ベクトル間距離と、を含むあらかじめ設定された複数のベクトル連結処理基準を順次選択する連結処理基準選択ステップと、
前記選択されたベクトル連結処理基準に基づいて分断ベクトル群の連結を行うベクトル群連結ステップと、
前記ベクトル群連結ステップが前記あらかじめ設定されたすべてのベクトル連結処理基準について実行されたとき、あらかじめ設定されたノイズ長以下のベクトルを除去するノイズ除去ステップと、
を有する分断ベクトル連結方法であって、
前記ベクトル群連結ステップには、着目ベクトル選択ステップと、連結可能性判定ステップと、ベクトル連結ステップと、短ベクトル除去ステップと、を含み、
前記着目ベクトル選択ステップは、分断ベクトル群中の未処理で最長のベクトルを着目ベクトルとして選択し、未処理のベクトルがないときには短ベクトル除去ステップに移行し、
前記連結可能性判定ステップは、前記着目ベクトルの端点から前記最長端点間距離以内に端点を持ち、かつ、前記最長ベクトル間距離以内のベクトルが存在すれば連結可能性ありと判定し、存在しなければ前記着目ベクトル選択ステップに移行し、
ベクトル連結ステップは、前記連結可能性を判定されたベクトルを前記着目ベクトルと連結して新たな着目ベクトルとして前記連結可能性判定ステップに移行し、
前記短ベクトル除去ステップは、前記最短ベクトル長未満のベクトルを除去して、前記選択されたベクトル連結基準に基づいた分断ベクトル群連結処理を終了することを特徴とする分断ベクトル連結方法。
(付記7) 分断されたベクトル群を連結する分断ベクトル連結装置であって、
あらかじめ分断されたベクトル群のデータを記憶する分断ベクトルデータ記憶手段と、
連結する2つのベクトルの組合せを選択する最長の端点間距離を示す最長端点間距離と、第1のベクトルの延長線と第2のベクトルとの連結可能性を判定する最長のベクトル間距離を示す最長ベクトル間距離と、連結処理の対象とするベクトルの最短ベクトル長と、を含むあらかじめ設定された複数のベクトル連結処理基準を記憶する連結処理基準記憶手段と、
前記記憶された複数のベクトル連結処理基準を順次選択する連結処理基準選択手段と、
選択された連結処理基準に基づいたベクトル連結処理が未処理のベクトルが存在するときは、該未処理のベクトルの中で最長のベクトルを着目ベクトルとして選択する着目ベクトル選択手段と、
前記選択された着目ベクトルの端点から前記最長端点間距離以内に端点を持ち、かつ、前記最長ベクトル間距離以内のベクトルが存在するとき連結可能性ありと判定する連結可能性判定手段と、
前記連結可能性がないと判定されたときには、該着目ベクトルを処理済ベクトルとして前記分断ベクトルデータ記憶手段に記憶して前記着目ベクトル選択手段を起動し、前記連結可能性がありと判定されたときには、該ベクトルを前記着目ベクトルと連結して新たな着目ベクトルとして前記分断ベクトルデータ記憶手段に記憶するベクトル連結手段と、
前記分断ベクトルデータ記憶手段に記憶されたすべてのベクトルが前記選択された連結処理基準に基づいて処理済となったとき該処理済のベクトルについて前記最短ベクトル長未満のベクトルを除去する短ベクトル除去手段と、
前記あらかじめ設定されたすべてのベクトル連結処理基準について実行されたとき、あらかじめ設定されたノイズ長以下のベクトルを除去するノイズ除去手段と、
を有することを特徴とする分断ベクトル連結装置。
【0051】
(付記8) コンピュータに、
あらかじめ設定された複数のベクトル連結処理基準を順次選択する連結処理基準選択ステップと、
前記選択されたベクトル連結処理基準に基づいて分断ベクトル群の連結を行うベクトル群連結ステップと、
前記ベクトル群連結ステップが前記あらかじめ設定されたすべてのベクトル連結処理基準について実行されたとき、あらかじめ設定されたノイズ長以下のベクトルを除去するノイズ除去ステップと、
を動作させるためのプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【0052】
【発明の効果】
以上の説明から明らかなように、本発明によれば、カラー画像など濃淡が不鮮明な画像から抽出した分断されたベクトル群に対しても、従来難しかったいろいろな長さのノイズを含んでいても、有効なベクトルを連結し、適切なノイズ除去を行って原画像に近いベクトルデータを抽出することが可能となり、撮影された画像から物体の形状解析、特徴解析の正確化、立体物の形状の計測の正確化が図れるなど工業的効果がある。
【図面の簡単な説明】
【図1】 本発明の構成図
【図2】 本発明の実施の形態の構成図
【図3】 処理対象の写真画像
【図4】 従来技術によるベクトル連結処理結果
【図5】 ベクトル連結前
【図6】 1回目のベクトル連結結果
【図7】 2回目のベクトル連結結果
【図8】 3回目のベクトル連結結果
【図9】 4回目のベクトル連結結果
【図10】5回目のベクトル連結結果
【図11】6回目のベクトル連結結果
【図12】本発明によるベクトル連結最終結果
【図13】連結処理基準
【図14】連結処理基準の各パラメータなど用語の説明図
【図15】ベクトルデータテーブル
【図16】ベクトル連結のフローチャート(その1)
【図17】ベクトル連結のフローチャート(その2)
【図18】ベクトル連結のフローチャート(その3)
【符号の説明】
1 連結処理基準
2 連結処理基準選択ステップ
3 ベクトル群連結ステップ
4 ノイズ除去ステップ
5 着目ベクトル選択ステップ
6 連結可能性判定ステップ
7 ベクトルテーブル
8 ベクトル連結ステップ
9 短ベクトル除去ステップ
Claims (5)
- コンピュータに、
画像から抽出した分断ベクトルの中から着目べクトルを選択する着目べクトル選択ステップと、
あらかじめ設定された複数のベクトル連結処理基準を順次選択する連結処理基準選択ステップと、
選択された前記ベクトル連結処理基準に基づきべクトル間の連結可能性を判定する連結可能性判定ステップと、
選択された前記ベクトル連結処理基準に基づいてべクトル間の連結を行う判定がなされた分断ベクトルの連結を行うベクトル連結ステップと、
前記ベクトル連結ステップにおいて連結処理の行われていない未処理ベクトルがなくなったとき、あらかじめ設定されたノイズ長以下のベクトルを除去するノイズ除去ステップとを動作させ、
前記ベクトル連結処理基準は、前記着目べクトルの一端点と連結処理の対象とする他のベクトルの一端点との端点間距離LD1と、前記着目べクトルあるいは前記着目べクトルの延長線から直角に測った前記他のベクトルとの距離LD2とが所定値内の基準を有し、前記LD1と前記LD2は前記ベクトル連結ステップにおいて可変であることを特徴とする分断ベクトル連結プログラム。 - 前記着目ベクトル選択ステップは、分断ベクトルにおける未処理べクトルのうち最長のベクトルを前記着目ベクトルとして選択することを特徴とする請求項1記載の分断ベクトル連結プログラム。
- 前記連結可能性判定ステップは、連結可能と判定するベクトルが存在しないとき、前記着目ベクトル選択ステップに移行することを特徴とする請求項1および請求項2記載の分断ベクトル連結プログラム。
- 前記ベクトル連結処理基準において、前記着目べクトルが他のべクトルと連結されて長くなるに伴い、前記LD1と前記LD2とは必要に応じて順次増加することを特徴とする請求項1乃至請求項3のいずれかに記載の分断ベクトル連結プログラム。
- 分断されたベクトルを連結する分断ベクトル連結方法であって、
画像から抽出した分断ベクトルの中から着目べクトルを選択する着目べクトル選択ステップと、
あらかじめ設定された複数のベクトル連結処理基準を順次選択する連結処理基準選択ステップと、
選択された前記ベクトル連結処理基準に基づきべクトル間の連結可能性を判定する連結可能性判定ステップと、
選択された前記ベクトル連結処理基準に基づいてべクトル間の連結を行う判定がなされた前記分断ベクトルの連結を行うベクトル連結ステップと、
前記ベクトル連結ステップにおいて連結処理の行われていない未処理のベクトルがなくなったときに、あらかじめ設定されたノイズ長以下のベクトルを除去するノイズ除去ステップとを有し、
前記ベクトル連結処理基準は、前記着目べクトルの一端点と連結処理の対象とする他のベクトルの一端点との端点間距離LD1と、前記着目べクトルあるいは前記着目べクトルの延長線から直角に測った前記他のベクトルとの距離LD2とが所定値内の基準を有し、前記LD1と前記LD2は前記ベクトル群連結ステップにおいて可変であることを特徴とする分断ベクトル連結方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002076803A JP4151290B2 (ja) | 2002-03-19 | 2002-03-19 | 分断ベクトル連結プログラムおよび方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002076803A JP4151290B2 (ja) | 2002-03-19 | 2002-03-19 | 分断ベクトル連結プログラムおよび方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003281553A JP2003281553A (ja) | 2003-10-03 |
JP4151290B2 true JP4151290B2 (ja) | 2008-09-17 |
Family
ID=29227830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002076803A Expired - Fee Related JP4151290B2 (ja) | 2002-03-19 | 2002-03-19 | 分断ベクトル連結プログラムおよび方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4151290B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006139366A (ja) * | 2004-11-10 | 2006-06-01 | Namco Ltd | プログラム、情報記憶媒体及び近似線判定処理装置 |
JP2010164349A (ja) * | 2009-01-13 | 2010-07-29 | Equos Research Co Ltd | 制御装置 |
-
2002
- 2002-03-19 JP JP2002076803A patent/JP4151290B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003281553A (ja) | 2003-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4926116B2 (ja) | 画像検査装置 | |
JPH08293001A (ja) | 画像処理装置及び光学的文字認識装置及びそれらの方法 | |
JP2608571B2 (ja) | 入力走査画像データのベクトル化のための装置及び方法 | |
JPH06195504A (ja) | 文書の走査イメージからのフィールド摘出方法及びデータ処理システム | |
JP4300098B2 (ja) | オブジェクト識別方法とその装置、プログラム及び記録媒体 | |
JP2011237296A (ja) | 3次元形状計測方法、3次元形状計測装置、及びプログラム | |
JP2007041730A (ja) | 電線異常検出方法および装置およびプログラム | |
JP2008011484A (ja) | 文字図形列抽出装置,文字図形列抽出方法,その方法を実行するプログラム,そのプログラムを記録した記録媒体 | |
JP4151290B2 (ja) | 分断ベクトル連結プログラムおよび方法 | |
JP4928325B2 (ja) | 画像処理方法、画像処理装置、プログラムおよび記憶媒体 | |
JP4734176B2 (ja) | 電線異常検出方法、電線異常検出装置及び電線異常検出プログラム | |
JPH0981740A (ja) | 線図形入力装置 | |
US20030123730A1 (en) | Document recognition system and method using vertical line adjacency graphs | |
JP2004038530A (ja) | 画像処理方法、同方法の実行に用いるプログラム及び画像処理装置 | |
JP2003022446A (ja) | 署名照合装置、署名照合方法およびその方法をコンピュータに実行させるプログラム | |
JP6055952B1 (ja) | 画像検査装置、画像検査方法、およびプログラム | |
JP2007295210A (ja) | 画像処理装置、画像処理方法、画像処理プログラム、およびこれを記録した記録媒体 | |
JP2003208568A (ja) | 画像処理装置、画像処理方法、及び同方法に用いるプログラム | |
JP2000020693A (ja) | 指紋画像処理装置、指紋画像処理方法、および記録媒体 | |
JP6062825B2 (ja) | 特徴点抽出装置、特徴点抽出方法、及び特徴点抽出プログラム | |
JP5067182B2 (ja) | 画像処理装置及び画像処理プログラム | |
KR102395599B1 (ko) | 딥러닝 기반 이미지 도면 내 선 객체 인식 시스템 및 그 방법 | |
JPWO2013154062A1 (ja) | 画像識別システム、画像識別方法、およびプログラム | |
JP4471202B2 (ja) | 画像処理装置、画像処理方法及び同方法に用いるプログラム | |
JP2006323511A (ja) | 記号認識方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20040610 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040610 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041006 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080306 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080318 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080509 |
|
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: 20080610 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080623 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4151290 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110711 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110711 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120711 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120711 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130711 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |