Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вопрос реализации метода распознавания фигур (2d) / 11 сообщений из 11, страница 1 из 1
15.06.2009, 12:23:59
    #36041140
Ммихалыч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
Посоветуйте на чем лучше писать данный алгоритм, для себя пока остановился на c++.
Плюс, где можно почитать какой метод предпочтительней, может уже есть, что готовое.
Фигуры возможны различных форм, включая многоугольники, необходимо отделить фигуры от общего фона (это я так понимаю не сложно, у них один цвет постоянный, у фона другой), у каждой узнать свои уникальные координаты, свой id, т.к. каждая фигура будет в дальнейшем использована для определенных действий.
...
Рейтинг: 0 / 0
15.06.2009, 12:45:56
    #36041186
уральский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
МмихалычПосоветуйте на чем лучше писать данный алгоритм, для себя пока остановился на c++.
Сначала лучше выбрать метод, определиться с требованиями к скорости/памяти, а уже потом выбирать, ИМХО конечно, но вроде бы это очевидно :)

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

МмихалычФигуры возможны различных форм, включая многоугольники, необходимо отделить фигуры от общего фона (это я так понимаю не сложно, у них один цвет постоянный, у фона другой), у каждой узнать свои уникальные координаты, свой id, т.к. каждая фигура будет в дальнейшем использована для определенных действий.
Важно: фигуры уже отцентрированы или нет? отмасштабированы или нет? ориентированы (повернуты) одинаково или нет? выравнивание цветов произведено или нет? и т.д.
"отделить фигуры от общего фона" - это задача оконтуривания, из тривиальных алгоритмов градиент цвета или "алгоритм жука", но опять же это даст просто новую бинарную картинку, где вместо предметов будут их контуры, важно что требуется с ней делать дальше, что получить в итоге; возможно, она и даром не сдалась.
Если фигуры только геометрические контурные, то есть очень простой и прикольный способ, но применимый далеко не для любого набора фигур - вычислять отношение периметра к площади ;)
В некоторых случаях может подойти сеть Хемминга, в некоторых - Хопфилда... Короче, способов тьма тьмущая, задача нуждается в конкретизации)))
...
Рейтинг: 0 / 0
15.06.2009, 13:38:06
    #36041348
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
а на входе-то что?
...
Рейтинг: 0 / 0
15.06.2009, 15:02:03
    #36041576
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
Ммихалычраспознавание фигур
Это очень распылённый термин. И в разных приминениях он может нести очень разный смысл. От фильтров фотошопа (самый простой вариант) до поиска новых звёзд на астрономических снимках. Поэтому вопрос к вам, что вам на самом деле нужно? Перекрасить шарик в другой цвет? Или что-то более фундаментальное.
...
Рейтинг: 0 / 0
15.06.2009, 15:03:49
    #36041584
Ммихалыч1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
на входе eps, ну для усложнения задачи возьмем jpg картинку с фигурами.

Фигуры ни хрена не отцентрованы, но подогнанны по цвету, больше пятиста фигур на картинке имхо не будет. Еще раз повторяю нужны координаты фигуры для создания imagemaps. C простыми фигурами вроде все ясно (прямоугольник, круг, квадрат), но вот как получить координаты многоугольников, там ведь берутся координаты точек изломов. Главная проблема задачи имхо, что присутствуют различные типы фигур, т.е. придется их идентифицировать, какая из них какая, плюс то, что все фигуры уникальны и каждый свой id, т.е. они не должны пересекаться.

В общем случае, нужны координаты точек (для задания площади фигур) для каждой конкретно независимой фигуры.

Я так понимаю для начало нужно отобрать круги(эллипсы) от всех остальных фигур, т.к. все остальное входит в так называемую коллекцию polyline. Как это сделать ?
...
Рейтинг: 0 / 0
15.06.2009, 15:06:59
    #36041593
Ммихалыч1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
естественно у всех фигур размер масштаб и форма может быть различной (непредсказуемой)
поэтому тут хотя бы с простыми разобраться бы.
...
Рейтинг: 0 / 0
16.06.2009, 17:59:48
    #36044408
Ммихалыч1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
Можно как-нибудь координаты углов в многоугольниках вычислить ?
...
Рейтинг: 0 / 0
17.06.2009, 10:35:37
    #36045259
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
Ты что пароль забыл?
...
Рейтинг: 0 / 0
17.06.2009, 12:51:13
    #36045779
Ммихалыч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
проверил - нет, вроде :)
...
Рейтинг: 0 / 0
17.06.2009, 13:39:13
    #36045921
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
Проще всего распознать круг. Если проанализируешь суммарную светимость (value) пикселов в строках и столбцах - получишь две гистогриаграммы. Их максимумы будут соотвествтовать координатам центра круга.

Для других фигур - алгоритм будет более сложным. Возможно даже придётся использовать механизмы искусственных нейронных сетей. Хотя возможны и упрощения. Например, если допустить что прямоугольник расположен параллельно осям коориднат, то его можно обнаружить так-же как и круг.
...
Рейтинг: 0 / 0
18.06.2009, 09:09:11
    #36047446
pirovindos
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос реализации метода распознавания фигур (2d)
МмихалычПосоветуйте на чем лучше писать данный алгоритм, для себя пока остановился на c++.
Плюс, где можно почитать какой метод предпочтительней, может уже есть, что готовое.
Фигуры возможны различных форм, включая многоугольники, необходимо отделить фигуры от общего фона (это я так понимаю не сложно, у них один цвет постоянный, у фона другой), у каждой узнать свои уникальные координаты, свой id, т.к. каждая фигура будет в дальнейшем использована для определенных действий.

С++ подойдет. А алгоритм лучше писать на бумажке :).
Прочитав постановку могу дать 2 совета исходя из своего опыта:
1. Прочитать классику чтобы хотя бы владеть терминологией (отделить = сегментация и т.п.):
У. Прэтт. Цифровая обработка изображений.
2. Намного четче поставить задачу в части насколько зашумлена картинка и насколько могут накладываться друг на друга фигуры. От этого принципиально зависит выбор алгоритмов решения.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вопрос реализации метода распознавания фигур (2d) / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]