Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: разрывы контурв  (Прочитано 16508 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Kationchic
Гость
« : 10-05-2008 06:53 » 

Возникла такая проблема - после выделения контура на изображении появляются разрывы. Их нужно устранить. Изображение из себя представляет груду камней. По идее нужно пройтись по замкнутому контуру и понять тенденцию по которой он идет, чтоб можно было его продолжить в месте разрыва... вот не знаю с какого края подходить к проблеме... помогите, пожалуйста...
Записан
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #1 : 10-05-2008 07:43 » 

1. Можно ли увидеть схемку, которая показывает именно этот разрыв. (можно приатачить к сообшению)
2. Как именно ты храниш сведения о контуре?
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Kationchic
Гость
« Ответ #2 : 10-05-2008 13:08 » 

Ну скажем вот изображение... разрывы почти в каждом контуре...

* 1.JPG (74 Кб - загружено 885 раз.)
Записан
marat_
Шеф-повар
Опытный

ru
Offline Offline

« Ответ #3 : 10-05-2008 13:13 » 

как это связано с делфи?
это обработка изображений. ищи алгоритмы, может изображение перед контуризацией обработать нужно
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 10-05-2008 14:31 » 

Делфи здесь понятно, что не причем, Понятно что среда разработки Делфи

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

* ex.jpg (7.73 Кб - загружено 866 раз.)
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Kationchic
Гость
« Ответ #5 : 10-05-2008 14:33 » 

Вооот, а как продолжить? Надо как-то вычислить по какой кривой он идет, чтоб продолжать!
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 10-05-2008 14:40 » 

известным тебе методом попытаться построить (апроксимировать) кривую до момента разрыва.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Kationchic
Гость
« Ответ #7 : 10-05-2008 14:40 » 

в этом и проблема - не совсем понимаю как это сделать
Записан
marat_
Шеф-повар
Опытный

ru
Offline Offline

« Ответ #8 : 10-05-2008 14:44 » 

Sla, аппроксимация гиблое дело. обойти картинку, найти начало контура, пройти по контуру, найти окончание, соединить прямой линией. вот только там кучи пересечений.
Kationchic, ищи алгоритмы. я когда занимался распознаванием отпечатков пальцев кучи видел.
Записан
zubr
Гость
« Ответ #9 : 10-05-2008 14:47 » 

А если попробовать так:
Определить крайние точки разрыва и соединить их кривой безье, дельту выбирать в зависимости от расстояния между точками разрыва и размером (расстоянием по осям через определенный угол) камня.
Записан
marat_
Шеф-повар
Опытный

ru
Offline Offline

« Ответ #10 : 10-05-2008 14:48 » 

zubr, тоже нормуль. или сплайн
но тут ещё бы скелетизация не помешала бы...
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #11 : 10-05-2008 14:49 » 

Искать алгоритмы, когда не понимаешь что искать - глупо.
Распознавание - возможно.
Но, в данном случае не все еще запущенно, и можно открыть учебник по матану, и посмотреть в сторону рядов.

Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
marat_
Шеф-повар
Опытный

ru
Offline Offline

« Ответ #12 : 10-05-2008 14:52 » new

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

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #13 : 10-05-2008 14:57 » 

marat_, вот видишь, ты уже назвал несколько вариантов алгоритмов, а до этого?
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
marat_
Шеф-повар
Опытный

ru
Offline Offline

« Ответ #14 : 10-05-2008 14:59 » 

Sla, в который раз за сегодня тебя не понял
Записан
Kationchic
Гость
« Ответ #15 : 10-05-2008 15:10 » 

спасибо за идеи... правда наверное для начала скелетизирую...
Записан
marat_
Шеф-повар
Опытный

ru
Offline Offline

« Ответ #16 : 10-05-2008 15:21 » 

тогда уж сразу и шумы дави сглаживающим фильтром каким-нибудь.

а что вообще за задача?
Записан
Kationchic
Гость
« Ответ #17 : 10-05-2008 15:53 » 

шумы уже гладила... теперь только при распозновании контуров наверное лишнее отсекать...
а задача - нужно вычислить относительный размер камней
Записан
marat_
Шеф-повар
Опытный

ru
Offline Offline

« Ответ #18 : 10-05-2008 23:42 » 

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

посмотри в инете "определение размеров объекта" в "распознавание образов". такими вещами часто занимаются при аэрофотосъёмке, съёмке со спутника и тд.
« Последнее редактирование: 11-05-2008 00:00 от marat_ » Записан
Kationchic
Гость
« Ответ #19 : 11-05-2008 04:15 » 

Если честно, я уже в фотошопе контуры замкнула и размер вычислила...
просто прошлась по изображению, был счетчик сегментов, переходя к новому камню я его увеличивала... если попадала на границу, то это был 0. Потом просто прошлась по матрице и посчитала количество одинаковых цифор =) Выводила её - вроде все правильно... Главное сейчас контур программно замкнуть граммотно.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines