6

MATLAB を使用してビデオで特徴検出を実行しています。ビデオのさまざまな部分で照明条件が異なるため、RGB イメージをバイナリ イメージに変換する際に一部の部分が無視されます。

ビデオの特定の部分の照明条件も、ビデオの途中で変化します。

フレームとビデオ全体の照明のバランスをとるための MATLAB での最良の方法を提案できますか?

4

3 に答える 3

8

検出したい特徴とビデオで何をしたいかによって、2 つのオプションがあります。

  1. (結論として)これには、機能検出にとって役に立たない、または誤解を招くような情報が含まれているため、画像の照明を無視してください。
  2. 照度ムラ(ご要望)の修正をお試しください。

1) 非常に簡単です: HSV (V チャンネルを無視) Lab (L を無視) YUV (Y を無視) のような別のチャンネルでイルミネーションを分離する色空間に画像を変換し、2 つの特徴検出を実行します。残りのチャンネル。これらのうち、HSV が最高です (コメントで Yves Daoust が指摘したように) YUV と Lab は、UV/ab チャネルにいくつかの照明情報を残します。私の経験では、状況によっては最後の 2 つも機能しますが、HSV が最適です。

2) 難しい。まず、画像を HSV に変換します。次に、V チャネルのみで修復を行います。

  • sigma の値が非常に大きい V チャネル イメージにガウス ブラーを適用します。これにより、イルミネーションのローカル平均が得られます。この画像のグローバル平均 V 値を計算します (これは 1 つの数値です)。次に、各ピクセルの実際の V 値からローカル平均値を引き、グローバル平均値を加算します。これで、非常に大まかな照度のイコライゼーションが完了しました。sigma の値を少しいじって、最適な値を見つけることができます。
  • これが失敗した場合は、zenopy が回答で提供するオプションを調べてください。

どちらの方法を選択する場合でも、やりたいこと (つまり、特徴の検出) に集中し、必要に応じてこのような中間ステップを選択することをお勧めします。すぐに何かを試して、これが特徴の検出にどのように役立つかを確認してください。

于 2012-02-16T10:29:56.690 に答える
5

それは簡単な作業ではありませんが、それを克服するための多くの方法があります。retinexアルゴリズムの実装から始めるか、他の実装を使用することをお勧めします:http : //www.cs.sfu.ca/~colour/publications/IST-2000/

基本的な考え方は、輝度(観測された画像の強度)=照明(入射光)x反射率(反射率):

L(x,y) = I(x,y) x R(x,y) 

そして、あなたはRの部分に興味があります。

各フレームのカラー画像を処理するには、最初にhsv色空間に移動し、v(値)部分でレチネックスを操作します。

それが理にかなっていることを願っています。

于 2012-02-15T14:15:54.083 に答える
5

Retinex またはハイパス フィルタリングによって対処される個々の画像間の照明のむらとは別に、ビデオ全体の自動ゲイン補正を考えることができます。

アイデアは、結合された 3 つのチャネルすべての平均と標準偏差が事前定義された値 (平均 -> 128、標準偏差 -> 64) になるように、色成分に線形変換を適用することによって画像強度を正規化することです。

ヒストグラムの均等化には、強度レベルを「標準化」するという同様の効果があります。

残念ながら、大規模なシーンの変更はこのプロセスに影響を与え、背景の強度が期待どおりに一定に保たれないようにします。

于 2012-02-15T21:58:54.807 に答える