少数 (1 ~ 3 個) のブロブを含むしきい値処理された画像が与えられた場合、中心に最も近いブロブを選択したいと思います。これは数字であると予想されます。
赤い四角形を別のマットとして抽出したいと思います。これは、中心 (緑の点) に最も近いためです。私の最初の考えは、画像内のすべてのブロブを繰り返し処理し、その重心から画像の中心までの距離がピクセル単位で最小のものを取得することです。しかし、私は OpenCV 関数の大部分に精通していません (そして、それらはたくさんあります!) ので、より良い方法があるかどうか疑問に思っています。
ただし、これにはすでにいくつかの問題があります。
- 外側のボックスが 3 つまたは 4 つの側面を覆っている場合、ボックス自体が中心に近くなくても、重心は中心に近い可能性があります。高次のモーメントを使用して、中心から離れたポイントにより多くの重みを与えるべきでしょうか?
- OpenCV には、私が知っている統合されたブロブ検索 (または接続コンポーネントのラベル付け) ライブラリはありません。等高線の検索を使用できますが、これは内部部分のある 6、8、9 などの数字では不正確になる可能性があります。