5

私は次のことを必要とするプロジェクトに取り組んでいます。

比較的明確に定義されたオブジェクトを含む画像を見てください。

ここに画像の説明を入力

そして、いくつかの空間(RGB、HSVなど)で最もn番目(一般的で、1、2、3など)の顕著なオブジェクトの色を選択して返します。

このような画像を独立したオブジェクトに分割する方法を検討しています。それが完了すると、セグメントの輪郭を見つけて平均色や重心色などを分析することは特に難しくないという印象を受けます...

私は Watershed アルゴリズムを簡単に調べましたが、うまくいくように見えましたが、不確定な数のブロブのマーカー イメージを生成する方法がわかりませんでした。

そのような画像をセグメント化する最良の方法は何ですか?また、Watershed を使用している場合、対応する整数のマーカー画像を生成する最良の方法は何ですか?

4

2 に答える 2

8

この可能なアプローチを確認してください:
効率的なグラフベースの画像セグメンテーション Pedro F. Felzenszwalb と Daniel P. Huttenlocher

画像では次のようになります。
ここに画像の説明を入力

于 2013-05-23T18:18:20.640 に答える
1

私は専門家ではありませんが、Watershed アルゴリズムがセグメンテーションの問題にどのように役立つかはわかりません。

私の限られた経験/この種の問題への暴露から、セグメンテーションへのスライディングウィンドウアプローチを試すことが道だと思います。基本的に、これには、設定されたサイズのウィンドウを使用して画像をウォークし、ウィンドウが背景とオブジェクトを含むかどうかを判断しようとすることが必要です。さまざまなウィンドウ サイズとステップを試してみてください。

これを行うと、画像に比較的明確に定義されたオブジェクトが含まれていると仮定して、画像内のオブジェクトを検出できるはずです。また、背景とオブジェクトを適切に分離する特定のしきい値で画像を白黒に変換した後、セグメンテーションを実行しようとする場合もあります。

スライディング ウィンドウを介してオブジェクトを特定したら、言及した方法のいずれかを使用して、最も目立つ色を決定することができます。

アップデート

あなたのコメントに基づいて、あなたのために働くかもしれない別の潜在的なアプローチがあります:

オブジェクトの色がほぼ均一であると思われる場合は、画像を次のように処理してみてください。

  1. ノイズを除去します。
  2. 元の画像を縮小された色空間 (つまり、256 またはイベント 16 色) にマップします。
  3. ピクセルの色に基づいて連結成分を検出し、どれが十分に大きいかを判断します

アルゴリズムを高速化するために、画像をより低い解像度に再サンプリングすること (つまり、画像が 1024 x 768 の場合は 256 x 192 に縮小すること) も有効です。

残された唯一のことは、どのコンポーネントが背景であるかを判断することです。これは、特定のしきい値で黒/白に変換することにより、背景の除去も行うことが理にかなっている場合があります。

于 2013-03-04T16:24:38.593 に答える