Оператор LBP в FaceRecognizer в OpenCV

Я работаю над гистограммой LBP некоторых матриц изображений, используя OpenCV и C ++, и мне нужно вычислить LBP (1,8) и LBP (2,16) из этих матриц. Последняя версия OpenCV имеет прямую поддержку для вычисления LBP FaceRecognizer с оператором LBP (1,8) по умолчанию, и я могу вычислить LBP (2,16), устанавливая значения при создании экземпляра объекта.

Мой вопрос заключается в том, что в какой матрице хранятся коды LBP данной входной матрицы? Углубившись в реализацию, я узнал, что прогнозирование (InputArray _src) функция первых звонков elbp (src, _radius, _neighbors) а потом spatial_histogram (/Титулы/) рассчитать гистограмму. Но какая матрица в этих функциях хранит коды LBP ??

В основном, что делают эти 2 функции (elbp () иatial_histogram ()) на самом деле рассчитать?

Заранее спасибо.

1

Решение

если вы посмотрите на повышение квалификации и прогнозирование шаг, вы увидите, что рабочий процесс для обоих выглядит следующим образом:

  • собирать функции lbp для всего изображения (elbp)
  • разделить изображение lbp на nxn патчи, собрать гистограмму для каждого патча и объединить их в одну большую гистограмму (пространственная гистограмма)

sidenote: у меня есть некоторые сомнения в полезности оператора с 16 соседями. для каждого патча вам понадобится 64 тыс. ячеек гистограммы, а если ваш img имеет размер только 100×100 и 8×8, у вас будет только 144 пикселя на каждый патч / гистограмму. это будет очень редкий и ваше пространство возможностей взорвется! — меньше может быть больше здесь!

удачи и счастливого взлома!

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]