2

次の画像を参照して、すべての球根(b1、b2、b3、b4、b5)を抽出し、別々の画像(b1.jpg、b2)に入れる方法を教えてもらえますか? jpg、b3.jpg、b4.jpg、b5.jpg)。OpenCVを使用した関心領域

enter image description here

私はテンプレートを使用することができますが、問題は、様々な見ることができるように電球の大きさや形状が変化しているです。 (しかし、電球の全体的な外観はまだ同じです)。

openCVを使用してこれを行うにはどうすればよいですか?

おかげに関して、

Heshshamまあ

+0

タイトルは少し誤解を招くことがあります。 – karlphillip

+0

あなたはあなたがタイトルになるべきことを教えてください。次回は質問を投稿する前にこれを覚えておきますか? – gpuguy

+0

オブジェクト抽出、テンプレートマッチング、イメージセグメンテーション、これらのいずれかがあなたの現在のタイトルよりも適切です。 – karlphillip

答えて

0
  • テンプレートを使用している場合は、なぜ異なるテンプレート?たくさんのテンプレートを保持し、イメージと照合してください。いずれにしてもあなたの候補はあなたに最も適しています。
  • これを行う2番目の方法は、問題を正しく理解していれば、SURF機能を使用することです。 SURFはスキュー、パースペクティブ、ローテーションの変更にかなり堅牢ですので、電球の把握には必ず役立ちます。
  • Hereは、SURFを使用して誇示するためのリンクです。シンプルでエレガント。
+0

テンプレートを使用する場合は、各電球ごとに5つのテンプレートと一致させる必要があります。実際には実際には私は約100の球根を持っているので、テンプレートマッチングは非常に遅くなると思いませんか? SURFはもっと良い解決策になると思いますか? – gpuguy

+0

はい、テンプレートマッチングは間違いなく遅くなります。 SURFははるかに高速ですが。 –

0

背景があなたの例のように常に白い場合は、単純な閾値ベースのセグメンテーションを行い、結果の領域をサイズでフィルタリングして黒いアーティファクトを取り除くことができます。

+0

はい、幸いにも、背景にはほとんどノイズがありません。しかし、もし私がしきい値処理をすると、黒色の電球の底部も騒音と共に失われます。 – gpuguy

0

+1この場合、非常に単純なフィルタで十分です。

データが表示されているものよりも複雑である場合は、正確性を高めるために、各電球について得られる情報について考えてください。

私は輪郭と黄色の底部と言うでしょう。

これらの2つの情報を使用して、すべてのクロム元素を識別し、その上の球を検索し始めます。 地域が成長するのは正しい解決策かもしれませんが、長いです。

+0

ありがとうございます。ノイズに関しては、画像の背景はほとんど白です。しかし、フィルタを使用すると、電球の黒い部分が削除されます。だから、私が新しい画像を異なる画像ファイルに保存したいという私の新しい画像はそれほど正確ではありません。また、実際には約100個の球根を持っています。幸いなことに、すべての球根は垂直または±10度の角度になります。その黄色の部分を検索するあなたの考えは良いようです。 – gpuguy

+0

それは間違いなく私が何をしようとしているかです。コンピュータビジョンに取り組んでいるときは、常にあなたが探しているものに焦点を当てるべきです。あなたの場合、それはクロム部分です – jlengrand

関連する問題