1

プロジェクトのバイナリ イメージで最大の BLOB を検出したいと考えています。どうすればこれを行うことができますか?

ありがとう

4

3 に答える 3

5

findContours画像内のすべてのブロブを見つけるために使用し、contourAreaブロブの面積を計算できます。したがって、最大の面積を持つ輪郭(ブロブ)を見つけてください。

于 2012-08-28T11:19:21.580 に答える
2

良い出発点はCVBloblibです。過去に使用しましたが、問題なく動作します。

次に、必要に応じて、ブロブの面積または周囲を計算するだけの問題です:)

于 2012-08-28T11:19:36.977 に答える
0

ここでのベストプラクティスはわかりませんが、次のようにします。

  • 最初にすべてのブロブを見つけます。cvBlobslib または cvBlob または findContours などを使用できます。
  • 次に、すべてのブロブをベクターに保存します。ベクトルをブロブの面積で並べ替えます。そして、最後のブロブを取得します。

    bool sortBlobsASC(CBlob first, CBlob second) { return first.Area() < second.Area(); }

    std::sort(myvec.begin(), myvec.end(), sortBlobsASC);

于 2012-08-28T11:22:44.577 に答える