Как нормализовать цвет изображения?

В их статье, описывающей структуру обнаружения объектов Viola-Jones (надежное обнаружение лиц в реальном времени Viola and Jones), говорится:

Все примерные подокна, используемые для обучения, были нормализованы по дисперсии, чтобы минимизировать влияние различных условий освещения.

Мой вопрос: "Какой инструмент они использовали для нормализации изображений?"

Я НЕ ищу конкретный инструмент, который использовал Viola & Jones, но похожий инструмент, который дает почти такой же результат. Я следил за многими уроками обучения хаару (пытаясь определить руку), но пока не смог вывести хороший детектор (xml).

Я пытался связаться с авторами, но до сих пор нет ответа.

1 ответ

Решение

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

Сначала найдите среднее (Mu) и стандартное отклонение (S):

Mu = 1/N * Sum(a[i][j]) for each i,j 
S  =  sqrt(1/(N-1) *  Sum((a[i][j] - Mu)^2)) for each i,j
       (in here N is the number of pixels, 20*20 in the viola jones case)

Исходя из этого, мы можем нормализовать значение каждого пикселя, используя стандартную формулу нормального распределения (путем стандартизации всех значений):

a'[i][j] = (a[i][j] - Mu) / S

Другой метод - векторная нормализация, которая в основном гласит:

  • Найдите длину вектора: |a| = sqrt(sum (a[i][j]*a[i][j])) for each i,j
  • Назначение: a'[i][j] = a[i][j] / |a|
Другие вопросы по тегам