2010-11-21 1 views
2

Мне нужно определить, находится ли изображение выше определенной яркости. Используя шкалу от 0 до 255, я хочу создать значение в этом диапазоне, чтобы отразить яркость изображения.Создайте значение, чтобы отразить среднюю яркость изображения

т.е. белое изображение 255 и черное изображение 0.

Все это должно происходить через Баш скрипт я наращивая в данный момент. Я понятия не имею, какое изображение lib может сделать это для меня.

Ваши мысли интернет?

Спасибо за любой ввод.

Denford

ответ

4

Попробуйте ImageMagick gray stats или histogram

convert rose: -colorspace gray -format "%[fx:100*mean]%%" info: 
+1

Я смотрю на повторную выборку изображения на монохромное изображение 1x1 px, чтобы получить среднее значение, которое мне нужно сравнить с другими изображениями, поэтому это, вероятно, самое близкое предложение тому, что я считаю правильным ответом. – dibs

5

Как правило, это одна из классических задач обработки сигналов и существует несколько подходов, основанных на том, как вы определяете «яркость». Это в целом то же самое для «яркости» образа «громкость» звукового сигнала и т.д.

Некоторые идеи о том, что вы можете использовать в качестве родового «яркость» является:

  • Среднее значение все пиксели (т.е. суммируйте все яркости всех пикселей, затем разделите их на общее количество пикселей, то есть ширину * высоту).
  • Создайте гистограмму распределения яркости, затем выберите такую ​​точку x в этой гистограмме, что 98% (95%, 90%, 70% - это число может меняться) всех пикселей на вашем изображении будет менее ярким чем этот x. Это называется процентили.
  • Подсчитайте "root mean square" (RMS) для всех пикселей (суммируйте квадраты всех пикселей, разделите их на общее количество пикселей, извлеките из этого квадратного корня).

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