E N D
Пикториальные ебаная мама структуры Тело человека представляется в виде неориентированного графа (V, E) где V – множество частей, а E – множество связей. При этом целиком структура задаётся конфигурацией L = {l1 … ln} где li информация о расположении части vi. В нашем случае в li входит расположение части тела, ориентация и угол фронтального наклона. (фронтальное укорачивание хуёв) Задача сопоставления такой структуры и изображением выражается в терминах минимизации функции энергии Здесь функция mi - характеризует расхождение между картинкой и тем что мы кладем часть vi в позицию li (тут хз как сказать) Функция dijхарактеризует деформацию модели при нахождении частей vi, vjв положениях li ljсоотвественно Важно то что минимизация происходит сразу по всем частям а не отдельности.
ХУЙ Идея использования такой структуры заключается в том что при наложении некоторых ограничений на стуктуруG, и вид функций можно эффективно решать задачу минимизации несмотря на то что вообще говоря кол-во значений который может принимать искомый L = {li} огромно. Предположения: G – ацикличен т.е. дерево функции dijимеют особый ебаный вид Кинематическое ограничение
Идея того почему в таком случае алгоритм будет работать быстро Рассматриваем любую вершину G пусть это будет Vr(root) считаем глубину остальных вершин относительно корня. Вначале рассмотрим лист дерева ljс родителем li: В общую энергию она даёт вклад mi(lj) + dij(li, lj), поэтому можно записать функцию Bjзависимости качества положения ljот li и тогда формула для наилучшего положения будет: Чтобы найти наилучшее положение достаточно заменить в формуле min на argmin. Таким образом вычислив функции для вседетей узла Сj можно записать функцию для любого узла кроме корня
Для корня в конце концов будем иметь следующее выражение (он не имеет родительского узла) Данные рассуждения говорят нам о том что можно начинать вычисления функции Bj(лучшее качество положения)и B’j(наилучшее положение) для всех узлов начиная с самых глубоких. Когда мы доберемся до корня то сможем вычислить lr* в явном виде, а затем вычислить l для всех узлов на обратном проходе, т.к. мы теперь знаем родителя.