roboforum.ru

Технический форум по робототехнике.
Текущее время: 07 май 2025, 08:18

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Оценка точности сканирования и определения контура
СообщениеДобавлено: 12 июн 2012, 21:17 
Не в сети
Аватара пользователя

Зарегистрирован: 08 фев 2009, 10:13
Сообщения: 700
Откуда: Воротынск
прог. языки: C,C++,C#,Java
ФИО: Дмитрий
Всем привет, помогите советом в решений следующей задачи:
Есть множество точек сканирования, есть несколько методов по выделению контуров из результатов сканирования, есть идеальный контур, представленный множеством точек. Нужно придумать числовую оценку 'близости' найденных контуров и идеального.
Как вариант пустить сканирующий луч, найти точки пересечения с идеальным контуром и найденым, найти длину отрезка между этими точками и просуммировать найденные значения. Но есть проблемы: как определить само пересечение, ведь фактически контур - это множество отрезков переменной длины, какой из них брать не очевидно, да и таких пересечении получается каждый раз более двух ожидаемых :sorry:

_________________
Язык Ада - официально был признан министерством обороны США для создания ПО военной техники


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 12 июн 2012, 21:33 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
Для позиционирования робота в комнате? :)
А если полученный контур повёрнут относительно идеального?
необходимо преобразовать "растр" в "вектор". Т.е. Представить множество точек в виде прямых (X1,Y1,X2,Y2).
А подобие полученного контура с идеальным вычислять геометрически (открыть учебник по геометрии, вспомнить теорию и т.д.).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 13 июн 2012, 09:17 
Не в сети
Аватара пользователя

Зарегистрирован: 08 фев 2009, 10:13
Сообщения: 700
Откуда: Воротынск
прог. языки: C,C++,C#,Java
ФИО: Дмитрий
На кождом этапе сканирования всегда есть идеальный контур ориентированный под тем же углом что и сравниваемый. Данные сканирования векторизованы, я об этом писал в первом посту. Вопрос в том как выбрать отрезки для сравнения из идеальных данных и полученных? Фактически контуры - это списки, елементом которого является отрезок.

_________________
Язык Ада - официально был признан министерством обороны США для создания ПО военной техники


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 13 июн 2012, 18:59 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
Можно рассматривать контур не только как список линий, но и учитывать связи между линиями. Т.е. хранить угол между линиями и длину каждого отрезка.
Т.о. мы отвязываемся от декартовых координат.

Сравнивать так:
1. Берём первый и второй отрезок идеального контура, узнаём длины и угол между ними.
2. Берём первый и второй отрезок полученного контура, узнаём длины и угол между ними.
3. Сравниваем эти величины, и если они в поле допуска повторяем п.1. для последующих отрезков.
4. Если все отрезки совпали, то вычисляем разницу между координатами первых точек (т.е. определяем, на сколько один контур смещён относительно другого).
5. Если величины не совпали, то перемещаемся по полученному контуру (берём следующий отрезок и переходим к п.2).
И так по кругу.

Думаю алгоритм понятен. Но это так, навскидку.


Вложения:
1.JPG
1.JPG [ 11.19 КиБ | Просмотров: 3402 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 13 июн 2012, 19:22 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
возможны случаи, когда нужно будет ещё и маштабировать. :) я не очень понял, что именно вы в итоге хотите сделать, но это направление так и называется "контурный анализ".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 13 июн 2012, 19:35 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
не могу придумать таких случаев.
Расписать по-подробнее или пофиг? :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 13 июн 2012, 19:55 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
посмотри на что-нибудь, а потом отойди немного. сразу проявится разница между векторами и отрезками. но это к вашему алгоритму, а к данной теме уже писал - "контурный анализ". :oops: тема же обширная, а куда думу думать непонятно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 13 июн 2012, 23:18 
Не в сети
Аватара пользователя

Зарегистрирован: 08 фев 2009, 10:13
Сообщения: 700
Откуда: Воротынск
прог. языки: C,C++,C#,Java
ФИО: Дмитрий
2Romeo, все бы было хорошо если бы число отрезков в контурах было одинаково :) У меня есть три контура
1) Идеальный описан 5400 отрезками
2) Найденный контур по результатам сканирования:
2.1 Метод1 - 12 отрезков
2.2 Метод2 - 36 отрезков
2.3 Метод3 - 186 отрезков
2.4 Метод4 - 97 отрезков
Все данные получены путем моделирования, никаких конкретных дальномеров и данных с них пока нет.
Для наглядности нужна числовая оценка красного и синего контуров на рисунках.


Вложения:
untitled.jpg
untitled.jpg [ 31.7 КиБ | Просмотров: 3217 ]
1.jpg
1.jpg [ 36.21 КиБ | Просмотров: 3354 ]

_________________
Язык Ада - официально был признан министерством обороны США для создания ПО военной техники
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 14 июн 2012, 00:04 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Контур замкнутый?
Идеальный контур представлен множеством точек? Или отрезков? Может ли одна и та же точка принадлежать к разным отрезкам (как у вас на рисунке - линия вдруг раздваивается)?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Оценка точности сканирования и определения контура
СообщениеДобавлено: 14 июн 2012, 00:28 
Не в сети
Аватара пользователя

Зарегистрирован: 08 фев 2009, 10:13
Сообщения: 700
Откуда: Воротынск
прог. языки: C,C++,C#,Java
ФИО: Дмитрий
Контур рассматривается как не замкнутый. Одна точка принадлежит как минимум 2 отрезкам. Идеальный контур - множество точек.
2Angel71 спасибо за наводку :) , пошел курить контурный анализ.

_________________
Язык Ада - официально был признан министерством обороны США для создания ПО военной техники


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO