2

画像に対してコントラスト ストレッチングを実行したいと考えています。画像は次のとおりです (データ ヒントは MATLAB で作成され、画像に関する詳細情報を提供します。タイムスタンプは画像に既に存在します)。

ここに画像の説明を入力

さて、コントラストストレッチを実行する方法は、すでにここで説明されています。しかし、 と であるため、その式はここでは機能しませimgMin=0imgMax=255。だからイメージは変わらない。したがって、私の回避策はローカル コントラスト ストレッチングでした。これを行う方法がわかりません(また、比較的高速です。つまり、ビデオのストレッチフレームをコントラストし、ビデオをリアルタイムで再生できるはずです。ヒストグラムの均等化を試しましたが、OpenCVでリアルタイムの結果が生成されますが、コントラストストレッチはそうではありません印象的)。アルゴリズムが機能しているかどうかを理解するために、私は MATLAB の使用にもオープンです。

また、ピクセル値を確認できるデータヒントも示しました。最初にカラー画像をグレースケールに変換しました。要するに、画像の最も明るい部分の値が 255 (つまり太陽) であっても、白い車線がより明るくなることを目的としています。

4

2 に答える 2

5

大きなフィルター半径を使用して詳細強調フィルターを使用すると、探している結果が得られる場合があります。詳細強調の一般的な例は、Adobe Lightroom の「明瞭度」効果です。これらのアルゴリズムが実際に行うことは、局所的にコントラストを増加させることになります。

Guided Filterは、詳細を強調するために使用でき(リンク先の論文の 10 ページを参照)、よく知られている Bilateral Filter とは対照的に、ビデオには十分に高速である可能性があります。また、少なくともグレースケール画像またはチャネルごとの操作については、実装が比較的簡単です。実験用のMatlabコードはこちらです。正確に思い出せば、詳細な強化の例が含まれています。

理論:大まかに言えば、イメージのハイパス フィルター処理されたバージョンを元のイメージに追加するという考え方です。小さなハイパス カーネルでこれを行うと、シャープ化が行われ、大きなカーネル (より多くの周波数を通過させる) を使用するとディテールが強調されます。ガイド フィルターは、単純なハイパス フィルターを使用して問題にアプローチするときに、明暗の境界で発生するハロー アーティファクトを回避する賢い方法です。

于 2013-03-12T22:39:22.760 に答える
1

全範囲の色がある場合は、いくらかの彩度があるため、「犠牲にする」意思のあるピクセル数を決定することをお勧めします。コントラスト方程式を引き続き使用できます(リンクから)

newValue = 255 * (oldValue - minValue)/(maxValue - minValue)

minValue唯一の違いは、とを手動で決定することですmaxValueminValueそうすれば、以下のすべてが0; 同様に255

アップグレード - 使用するパーセンテージを決定するだけで、境界が自動的に設定されます。

編集-その「ローカル」により、「高度な」バージョンについて考えさせられました。ヒストグラム (256 個のビン) を見て、いくつかの「穴」があるかどうかを確認できます。0 から 50 までと 205 から 255 までの値しかないとします。次に、下限値を 100 に、上限値を 155 に引き伸ばすことができます。唯一の問題は、下限値と上限値のコントラストが悪いことです。

于 2013-03-12T22:31:38.800 に答える