Критерии точности поиска ключевых точек лица

Экспериментальное исследование алгоритма поиска ключевых точек лица на изображении помимо визуального экспертного контроля качества предполагает расчет численных показателей точности. В начале эксперимента были предложены следующие показатели:

1) ошибка второго рода как показатель неспособности алгоритма выполнить расстановку ключевых точек для некоторых лиц;

2) средняя квадратическая ошибка (СКО) координат точек созданной разметки относительно некоторого эталона.

На текущий момент первый показатель (по крайней мере, в представленной выше формулировке) потерял свою актуальность в силу особенностей реализации алгоритма оценки положения лица в библиотеки dlib. Алгоритм принимает на вход область изображения, и, исходя из гипотезы наличия лица во фронтальном положении и размеров переданной области, устанавливает первоначальную разметку. Далее алгоритм смещает точки согласно локальным особенностям функции ярости и минимизируя функцию ошибки. Задача обнаружения лица при этом полностью делегирована соответствующему алгоритму (реализации на основе HOG и CNN рассмотрены ранее).

Расчет второго показателя можно выполнять двумя способами: вычислить СКО для некоторой установленной точки по (1) ближайшей или (2) соответствующей точке эталонной разметки. Плюсом первого способа является простота реализации и отсутствие необходимости знания порядка следования точек для созданной и эталонной разметки. В минусы следует отнести возможную семантическую некорректность сравнения (например, левого глаза с правым или с носом), что и определяет выбор в пользу второго способа.

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


Разметка dlib

Пример 1 разметки ключевых точек dlibПример 2 разметки ключевых точек dlib

Разметка MF2

Пример 1 разметки ключевых точек MF2Пример 1 разметки ключевых точек MF2

Одного значения СКО не достаточно, для того, чтобы полностью численно охарактеризовать результат работы алгоритма.

Чтобы лучше численно охарактеризовать результаты работы и автоматически выявить значительные ошибки будем использовать разбиение всего набора на группы:

1 овал лица точки 0–16
2 правая бровь точки 17–21
3 левая бровь точки 22–26
4 нос точки 27–35
5 правый глаз точки 36–41
6 левый глаз точки 42–47
7 губы точки 48–67

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

Первые численные результаты эксперимента будут представлены в течение недели.