3

私は最近、画像処理の分野で小さな趣味のプログラムに取り組み始めました。私は画像処理の初心者のようなものですが、少なくともそのいくつかの側面を理解しようとしています。

私ができるようにしたいのは、画像内のオブジェクトを色で(できればリアルタイムのビデオフィードで)分離し、次にそれらの色を認識することです。

OpenCVといくつかの異なるアルゴリズムについて少し読みました。キャニーアルゴリズムを少し使って作業を始めましたが、オブジェクトの色に関係なくオブジェクトのエッジを検出するため、これが必要に応じて開始する必要のあるアルゴリズムかどうかはわかりません。

それが私が使用すべきアルゴリズムであるとしても、それが私のためにマークしたオブジェクトの色を認識するための最良の方法は何でしょうか?

私は自分自身を十分に明確にしたことを望みます。

どうもありがとう!

4

3 に答える 3

5

色空間を理解する-RGBは、ほとんどの場合、画像処理を行うための最悪のソースです。

HSLとHSVから始める

于 2011-08-04T16:54:51.610 に答える
4

OpenCVを使用すると、色を分離したり透明にしたり(たとえば、色を削除したり)するのは非常に簡単です...私はあなたを助ける(またはおそらくあなたの問題を解決する)答えを投稿しました(以下のリンクを参照)。

これが私が投稿したコードです

  • さらに、Martin Beckettの答えは絶対に正しいです。RGBは色を評価するのに適した色空間ではありません。HSVを使用できます。色相の値は適切な色を示します(光スペクトルの波長から比較できるもの)。 )SとVは一種の強度をコード化します(私が言うことは、多くの場合、色相を使用してカラー画像をセグメント化することで十分であることを説明するために単純化することです)。

それが私が使用すべきアルゴリズムであるとしても、それが私のためにマークしたオブジェクトの色を認識するための最良の方法は何でしょうか?

画像処理コミュニティへようこそ、

ジュリアン、

于 2011-08-04T17:08:19.453 に答える
0

手始めに、画像配列の操作について学ぶ必要があります。たとえば、OpenCV関数inRangeを使用して、最小から最大の色範囲で色をフィルタリングします。もう1つのオプションは、マルチチャネルアレイ(この場合はR、G、B)を3つの異なるシングルチャネルに分割してさらに調査することです。その助けを願っています

于 2016-04-21T18:11:10.530 に答える