勾配が緩やかな背景と検出したい鮮明な前景色の画像があります。私はイメージ内に緑色の弧を見つけることを望みます。ただし、緑色の円弧は背景に対して緑色で表示されます(半透明です)。緑色の円弧も1〜2ピクセル幅です。OpenCVで画像からローカル平均色を削除するには
結果として、画像の各ピクセルについて、周囲のピクセルの平均色を差し引きたいと思います。周辺の5x5または10x10ピクセルで十分です。これは、フォアグラウンドの機能を比較的手つかずにしておく必要がありますが、柔らかい背景を削除する必要があります。
これを効率的に行う方法はありますか?それは特に正確である必要はありませんが、1080pイメージで30Hzで実行したいと思います。
伝統的な方法は、ぼかしてから引くことです。正確さがそれほど重要ではない場合は、画像を元のサイズの1/4以下に効率的に縮小し、次に小さい画像に比べて小さいぼかし/平均半径を使用します(より速くなります)。減算する前に元のサイズにスケールバックしてください。 –
私はそれをベンチマークしたり実装したりしていませんが、** Scale2xアルゴリズム** http://www.scale2x.it/algorithmは興味深く見え、** CImg **ライブラリに含めることができるほど重要であると考えられました。 –
あなたが気付いているかどうかわかりませんが、各ピクセルから周囲の9x9領域の平均を差し引くと、色の歪みがあります... http://thesetchells.com/a.png –