2015-05-08 2 views
-4

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

+0

В чем логика? затем-> поместите его в Matlab. –

+1

Что у вас есть? Вам нужна помощь в поиске правильного значения вращения или подтверждение факта, как только вы получили право поворота? – Cat

+0

Тег [tag: processing] должен использоваться только для вопросов о языке обработки. –

ответ

0

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

(это случайный интернет образ, а не результат MATLAB) enter image description here

, если у вас есть координаты A, B, C вы можете найти длину AB BC CA. Используя триггер, вы можете найти углы на вершинах. Затем просто сравните эти свойства между двумя треугольниками. Вам нужно будет попробовать все комбинации, например AB треугольника, который может соответствовать AB, BC или CA треугольника два.

Если вы хотите найти похожие треугольники (только углы), просто игнорируйте длину и используйте только найденные углы. Если вы хотите, чтобы точное совпадение использовало длину и углы.

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

+1

Здесь объяснено правило Косинус ... http://mathcentral.uregina.ca/QQ/database/QQ.09.07/ h/lucy1.html –

+0

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

+0

Я предложил свой подход, потому что ваш гораздо сложнее. Сначала вам нужно повернуть треугольник (скажем, 5 градусов на итерацию), а затем ** корреляция ** для каждого значения x, y вашего изображения. Это одна полная итерация, поверните еще на 5 градусов и повторите. После этого вы должны найти максимальную корреляцию для всех x, y и всех углов. Это скажет вам ближайший матч. Это не означает, что они являются одним и тем же треугольником, это просто означает, что они наиболее похожи. Эта проблема становится еще сложнее, если вам нужно масштабировать треугольники. – andrew

Смежные вопросы