2010-07-20 3 views
2

Я ищу приложение, которое использует камеру для измерения количества света, присутствующего при съемке. Некоторое условное поведение будет происходить в зависимости от того, сколько света присутствовало, т. Е. Отобразить сообщение «Похоже на сном», если он выглядит темным.Как измерить уровень окружающего света от изображения?

Я понимаю, что это будет довольно плохая мера фактического количества присутствующего света из-за воздействия и подобных вещей, но это не обязательно должно быть очень точным.

У меня нет опыта обработки изображений, поэтому я даже не знаю, что спросить, или что возможно. Это возможно? Существуют ли библиотеки C для выполнения подобных действий?

+0

Что вы подразумеваете под изображениями «окружающего света от изображения», которые не выделяют окружающий свет, как правило, они являются его записью! – Fraser

+1

Вы бы * далеко * лучше смотрели на метаданные для изображения, чтобы узнать, какая экспозиция была использована. По крайней мере, при автоэкспозиции обычная камера будет изменять скорость затвора и диафрагму по мере необходимости, чтобы удерживать общую яркость на почти постоянном уровне. –

+0

@Fraser - право, немного разъяснил это, я надеюсь. Спасибо за помощь в семантике. @ Jerry Coffin - посмотрит на камеру, чтобы увидеть, какие метаданные она хранит. Спасибо за указатель. – jergason

ответ

1

Очень приблизительная оценка может быть выполнена путем преобразования каждого значения цветового канала каждого пикселя в его интенсивность с использованием известного или предполагаемого gamma камеры. Затем просто суммируйте интенсивности по всему изображению.

Если вы хотите, чтобы уровень приблизился к наблюдаемому человеком, вы будете весить интенсивность зеленого канала выше, а синий канал ниже (поскольку наши глаза особенно чувствительны к зеленому и нечувствительны к синим).

1

Первая случайная мысль, что-то вроде фильтра порога для удаления «объектов», берет то, что осталось от исходного изображения, и порождает его снова, подсчитывает белый и черные пиксели, должно дать вам ОЧЕНЬ грубую идею о свете и темном. Thresholding

0

Если это нужно, чтобы быть очень точным, вам следует рассмотреть возможность использования некоторых методов регрессии, таких как наименьшие квадраты (в частности, частичные наименьшие квадраты). С помощью этих методов у вас есть набор данных обучения (ссылки несколько раз), и он сравнивает и интерполирует, чтобы найти приближение времени суток.

Если это не обязательно так, вы можете получить хорошее приближение, просто вычислив среднее расстояние пикселей от белого/черного. Если камера имеет автоэкспозицию, вы можете также учитывать это.

Смежные вопросы