形状

2011-02-07 15 views
5

の国境のは、私はこのような形状を有しているとしましょう上の点の座標を見つける:形状

enter image description here

豆を描きたい私のすべてのジョークが枯渇した後に、私はポイントを見つけたいです形状の境界線にある。私は多くがあることを知っているので、それらの間の公正な距離が受け入れられます。

このようなニーズに対応するアルゴリズムはありますか?またはソフトウェアですか?私が思いついた解決策は、手作業がたくさんあります。特に、少し違った形を描いてみたいと思っています。

知恵袋、助けてください。

答えて

6

あなたは単にあなたが、より洗練され、一般的な解決をしたい場合、あなたは例えばエッジを検出するgradient methodを使用することができ、色のフロンティアを見つけるために、水平方向と垂直方向のピクセルをスキャン、または可能性があります

enter image description here

編集

コメントは、ピクセル値を含む単なる2次元配列です。各ピクセルをテストし、特定の色を持つピクセルを選択できます。このように:

enter image description here

、その結果、あなたのエッジ画素である:

{{35, 107}, {35, 108}, {35, 109}, {35, 110}, {35, 111}, 
{35, 112}, {35, 113}, {35, 114}, {35, 115}, {35, 116}, 
{35, 117}, {35, 118}, {35, 119}, {35, 120}, {35, 121}, 
{36, 103}, {36, 104}, {36, 105}, {36, 106}, {36, 107}, etc.... 
+0

わからないあなたがいることが、明確にした方法:私は、ない結果の画像を座標のリストを必要としています。 – Tudorizer

+1

@ Tudorizer画像はマトリックスです。座標のリストは、ピクセルが白い(行、列)上のリストです! –

+0

どのようにイメージを生成しましたか? – Tudorizer

2

それはあなたが「ベクトル」を探しているように聞こえる、またはより正確には、「ビットマップベクトル化」。あなたのビットマップをベクトル化すると、すべての境界座標を与える、あなたの図形のベクトルバージョンを取得します。

ので、自動トレースを含む利用可能なソリューションの数は、存在する場合:http://autotrace.sourceforge.net/

+0

これは面白そうです。明確にするために、私はポイントの座標が必要です。それらのリスト/配列。 – Tudorizer