Использование гомографии для виртуального монитора

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

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

Для этого мне нужно, чтобы гомография заработала, и мне жаль задавать этот вопрос, потому что я знаю, что есть много разных статей, и я пытался пройти через многие из них, но они не не имеет особого смысла для меня. Проблема, с которой я сталкиваюсь сейчас, заключается в том, что я не знаю, как это сделать.

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

В этом посте я надеюсь, что вы поможете мне в правильном направлении, просто масштабируя формат моего изображения соответствующим образом, что станет для меня серьезным прорывом.

Я использую openframeworks с аддонами openCV и ofxCV в Codeblocks (C ++) на Windows 7.

В аддонах ofxCv есть некоторые функции, которые меня сильно смущают:
Например, я не очень понимаю, как "imitate();" работает и что он делает.
Это ни

  "homography = findHomography(Mat(dstPoints), Mat(srcPoints);"

и "warpPerspective(origImg, warpImg, homography, CV_INTER_LINEAR);"

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

Еще одна вещь, в которой я сомневаюсь, это использование матриц в отношении этой задачи.

Как вы, вероятно, уже поняли, я на самом деле не опытный программист. Любая помощь в правильном направлении будет высоко ценится!

Это вставка всего кода: http://pastebin.com/MFfJqGZ1
Наиболее интересная часть, или где я лично считаю, что я что-то упустил или сделал что-то не так, находится между строк 199-223.
И вот заголовок файла: http://pastebin.com/XfQySAmh

Большое спасибо заранее

С наилучшими пожеланиями
Jesper

2

Решение

Задача ещё не решена.

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

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

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