2D соответствие формы в C++

У меня есть набор последовательных точек, который делает 2D-фигуру, и у меня есть другой набор, который может создавать аналогичную форму, но эта форма отличается по масштабу и повороту от последней. Каковы наилучшие подходы / варианты для сопоставления и расчета показателя сходства этих двух фигур.

2 ответа

Решение

Лучшее, что я нашел после нескольких дней исследований, - это распознаватель жестов за 1 доллар, он не зависит от масштаба и поворота, а также имеет реализацию на многих языках, включая C++ .

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

Другие вопросы по тегам