Изображения, полученные в наружных сценах, могут быть высоко ухудшены из-за плохих условий освещения. Эти изображения могут иметь низкие динамические диапазоны с высоким уровнем шума, который влияет на общую производительность алгоритмов компьютерного зрения. Чтобы сделать алгоритмы компьютерного зрения устойчивыми при слабом освещении условия, используйте повышение качества изображения недостаточной освещенности, чтобы улучшить видимость изображения. Гистограмма мудрой пикселем инверсии изображений недостаточной освещенности или изображений HDR очень похожа на гистограмму туманных изображений. Таким образом можно использовать методы удаления тумана, чтобы улучшить изображения недостаточной освещенности.
Используя методы удаления тумана, чтобы улучшить изображения недостаточной освещенности включает три шага:
Шаг 1: Инвертируйте изображение недостаточной освещенности.
Шаг 2: Примените алгоритм удаления тумана к инвертированному изображению недостаточной освещенности.
Шаг 3: Инвертируйте улучшенное изображение.
Импортируйте изображение RGB, полученное при слабом освещении.
A = imread('lowlight_11.jpg');
figure, imshow(A);
Инвертируйте изображение и заметьте, как области недостаточной освещенности в оригинальном изображении кажутся туманными.
AInv = imcomplement(A); figure, imshow(AInv);
Уменьшайте туман с помощью функции imreducehaze
.
BInv = imreducehaze(AInv); figure, imshow(BInv);
Инвертируйте результаты получить улучшенное изображение.
B = imcomplement(BInv);
Отобразите оригинальное изображение и улучшенные изображения, бок о бок.
figure, montage({A, B});
imreducehaze
дополнительные параметрыЧтобы получить лучший результат, вызовите imreducehaze
на перевернутом изображении снова, на этот раз задав некоторые дополнительные параметры.
BInv = imreducehaze(AInv, 'Method','approx','ContrastEnhancement','boost'); BImp = imcomplement(BInv); figure, montage({A, BImp});
Импортируйте изображение RGB, полученное при слабом освещении.
A = imread('lowlight_21.jpg');
Инвертируйте изображение.
AInv = imcomplement(A);
Примените dehazing алгоритм.
BInv = imreducehaze(AInv, 'ContrastEnhancement', 'none');
Инвертируйте результаты.
B = imcomplement(BInv);
Отобразите оригинальное изображение и улучшенные изображения, бок о бок.
figure, montage({A, B});
Преобразуйте входное изображение от цветового пространства RGB до L*a*b* цветовое пространство.
Lab = rgb2lab(A);
Инвертируйте L*a*b* изображение.
LInv = imcomplement(Lab(:,:,1) ./ 100);
Dehaze перевернутое изображение с помощью функции imreducehaze
.
LEnh = imcomplement(imreducehaze(LInv,'ContrastEnhancement','none'));
Увеличьте насыщение.
LabEnh(:,:,1) = LEnh .* 100;
LabEnh(:,:,2:3) = Lab(:,:,2:3) * 2; % Increase saturation
Преобразуйте изображение назад в RGB, отображают и отображают оригинал и улучшенное изображение, бок о бок.
AEnh = lab2rgb(LabEnh); figure, montage({A, AEnh});
Изображения недостаточной освещенности могут иметь высокий уровень шума. Улучшение изображений недостаточной освещенности может увеличить этот уровень шума. Шумоподавление может быть полезным шагом последующей обработки.
Используйте функцию imguidedfilter
, чтобы удалить шум из улучшенного изображения.
B = imguidedfilter(BImp); figure, montage({BImp, B});
Импортируйте изображение RGB, полученное при слабом освещении.
A = imread('lowlight_21.jpg');
Инвертируйте изображение.
AInv = imcomplement(A);
Примените dehazing алгоритм к изображению.
[BInv, TInv] = imreducehaze(AInv, 'Method', 'approxdcp', 'ContrastEnhancement', 'none');
Инвертируйте улучшенное изображение.
T = imcomplement(TInv);
Отобразите оригинальное изображение рядом с предполагаемой картой освещения в фиктивном цвете.
figure, subplot(1,2,1); imshow(A), title('Lowlight Image'); subplot(1,2,2); imshow(T), title('Illumination Map'); colormap(gca, hot(256));
Этот метод может потерять некоторые детали или сверхулучшаться из-за плохой адаптируемости темного канала при слабом освещении условия.
Dong, Сюань, и др. "Быстро эффективный алгоритм для улучшения низкого видео подсветки". Мультимедиа и Экспо (ICME), 2 011 Международных конференций IEEE по вопросам. IEEE, 2011.
[1] Dong, X., Г. Ван, И. Пан, В. Ли, Дж. Вэнь, В. Мэн и И. Лу. "Быстро эффективный алгоритм для улучшения низкого видео подсветки". Продолжения Международной конференции IEEE® по вопросам Мультимедиа и Экспо (ICME). 2011, стр 1–6.
imcomplement
| imguidedfilter
| imreducehaze
| lab2rgb
| rgb2lab