Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

低光量イメージの強調

この例では、イメージ内の暗い領域を明るくしつつ、明るい領域の過飽和を防ぐ方法を示します。

イメージは、ライティング条件が十分ではないために画質が著しく悪くなる場合があります。これらのイメージはノイズ レベルが高く、ダイナミック レンジが低くなることがあります。これはコンピューター ビジョン アルゴリズムの全体のパフォーマンスに影響します。光量が少ない条件でコンピューター ビジョン アルゴリズムをロバストにするには、低光量イメージ強調を使用して、イメージの可視化状態を改良します。

低光量の下で撮影した RGB イメージを読み取り、表示します。

A = imread("lowlight_1.jpg");
imshow(A)
title("Original Image")

局在的に明るくする

低光量のイメージを、局所領域の暗さに比例して明るくし、その明るくしたイメージを表示します。暗い領域は、大幅に明るくなります。明るい領域も明るさが少し上昇し、これが過飽和を引き起こします。イメージはやや不自然に見え、おそらく、過度に明るくなっています。

B = imlocalbrighten(A);
imshow(B)

元のイメージと明るくしたイメージについて、ピクセル値のヒストグラムを表示します。元のイメージでは、ヒストグラムが暗いピクセル値に偏っています。明るくしたイメージでは、ピクセル値が、より均等にピクセル値の範囲全体に分散されています。

figure
subplot(1,2,1)
imhist(A)
title("Original Image")
subplot(1,2,2)
imhist(B)
title("Brightened Image")

元の低光量イメージを、明るくする量を小さくしてもう一度明るくします。

amt = 0.5;
B2 = imlocalbrighten(A,amt);

明るくしたイメージを表示します。このイメージの方が、より自然に見えます。イメージの暗い領域は強調されていますが、窓による明るい領域は依然として過飽和の状態です。

figure
imshow(B2)
title("Image with Less Brightening")

明るい領域の過飽和を抑えるには、イメージを明るくするときにアルファ ブレンディングを適用します。暗い領域は明るくなる一方で、明るいピクセルは元のピクセル値を維持します。

B3 = imlocalbrighten(A,amt,AlphaBlend=true);
imshow(B3)
title("Image with Alpha Blending")

比較のために、強調された 3 個のイメージをモンタージュに表示します。

figure
montage({B,B2,B3},Size=[1 3],BorderSize=5,BackgroundColor="w")

参照

[1] Dong, X., G. Wang, Y. Pang, W. Li, J. Wen, W. Meng, and Y. Lu. "Fast efficient algorithm for enhancement of low lighting video." Proceedings of IEEE® International Conference on Multimedia and Expo (ICME). 2011, pp. 1–6.

参考