Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сегментация линий, Разделение линий на изображении 
:(
    Опции темы
Newbe
Дата 18.4.2011, 19:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 18.4.2011

Репутация: нет
Всего: нет



Стоит следующая задача: есть изображение со сножеством линий(от 2 и более). Необходимо сегментировать это изображение, и выделить все линии на нем. Для примера приведу картинку.
user posted image

В результате сегментации у нас должно получится 2 отдельных линии, как на нижнем рисунке(представлены они могут быть как угодно - как лист координат точек например). При этом, линий может быть больше и одна линия на своем протяжении может пересекать другие линии >0 раз(т.е. пересечений может и не быть), в том числе и одну линию несколько раз. Даже не знаю с какой стороны копать. Волновой алгоритм мог бы подойди для этого, но только в случае пересечений только строго =1. Если линия будет пересекать другие 2 раза и более то на втором пересечении произойдет "конфликт" волн, и одна из них просто оборвется. Я уже не знаю что делать smile 

Это сообщение отредактировал(а) Newbe - 18.4.2011, 19:25
PM MAIL   Вверх
_Y_
Дата 18.4.2011, 22:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1651
Регистрация: 27.11.2006

Репутация: 8
Всего: 34



Из чисто детского любопытства мне тоже интересно. 

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


--------------------
Я вот в этом поучаствовал: http://sbor-nik.appspot.com/kick.jsp?id=sbor5737960678883328 (на правах саморекламы:)
PM MAIL WWW   Вверх
Earnest
Дата 19.4.2011, 11:15 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 7
Всего: 183



Цитата(Newbe @  18.4.2011,  20:23 Найти цитируемый пост)
Волновой алгоритм мог бы подойди для этого, но только в случае пересечений только строго =1

Почему же? Если волновой алгоритм рассматривать как обход графа (чем он по сути и является), проблема решается пометкой пройденных фрагментов. Что касается пересечений-касаний, то проблему нужно решат на след. этапе. Т.е. сначала из растра получить граф с узлами в точках схождения, а затем уже анализировать граф, объединяя ребра в линии по геометрическим признакам.
Плюс дополнение: линии вроде бы имеют не единичную толщину. Поэтому полезно изначальный растр утоньшить, это сильно облегчит анализ.


--------------------
...
PM   Вверх
Newbe
Дата 19.4.2011, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 18.4.2011

Репутация: нет
Всего: нет



user posted image

На 2 и 3 пересечениях будут встречаться два контура одной волны, и один из них будет прерываться. Как с этим быть?
PM MAIL   Вверх
Earnest
Дата 20.4.2011, 07:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 7
Всего: 183



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


--------------------
...
PM   Вверх
ksnk
Дата 20.4.2011, 08:09 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 7
Всего: 386



Я что-то путаю, или тут явный критерий "линии" - она "гладкая". То есть две рядомстоящие точки линии лежат практически на той-же прямой, что и две предыдущие. Пересечение линий - "негладкое". Может от этого плясать в волновом алгоритме?


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
gustavomarginale
Дата 24.4.2011, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 49
Регистрация: 2.7.2008

Репутация: нет
Всего: нет



Я тоже, булок мне век не видать, подумал о гладкости и негладкости.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0490 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.