Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Распознование бликов на изображении, Алгоритм распознования окружностей 
V
    Опции темы
zaksys
Дата 7.10.2010, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Здраствуйте, поситители данного форума.
Для решения данной предлагается использовать такой алгоритм.
1. Бинаризуем изображение.
2. Находим пиксель белого цвета, что будет соответсвовать предположительному блику.
3. Двигаемся вправо, влево, вниз и вверх относительно этого пиксела.
4. Определяем границы области.
5. Используем алгоритм Хафа, при неизвестном радиусе.
Проблема с 3 пунктом данного алгоритма. Если даже двигаться, таким образом как я написал, ничего хорошего не получается, и после 1 прохода не понятно куда двигаться. Подскажите как решить данную проблему.

Это сообщение отредактировал(а) zaksys - 7.10.2010, 16:44
PM MAIL Skype   Вверх
Pavia
Дата 7.10.2010, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



zaksys
А с чего вы взяли что блики имеют вид окружности?

Не понимаю почему все любят Хафа?
PM MAIL   Вверх
maxim1000
Дата 8.10.2010, 00:03 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

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



думаю, для обсуждения решения этой задачи неплохо бы иметь какой-то рисунок


--------------------
qqq
PM WWW   Вверх
Earnest
Дата 8.10.2010, 06:35 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Найти все белые пикселы, связанные с данным, не вопрос - просто обходим соседей каждого белого пиксела, и собираем все белые. Немного усилий, чтобы не ходить кругами и все. Только имеет ли это белое пятно какое-то отношение к блику? Это зависит от исходного изображения, от метода (порога) бинаризации и т.д.


--------------------
...
PM   Вверх
zaksys
Дата 8.10.2010, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Pavia @ 7.10.2010,  21:57)
zaksys
А с чего вы взяли что блики имеют вид окружности?

Не понимаю почему все любят Хафа?

Нет просто для меня стоит такая первоначальная задача, конечно блики могут иметь любую форму.

Добавлено @ 09:10
Цитата(Earnest @ 8.10.2010,  06:35)
Найти все белые пикселы, связанные с данным, не вопрос - просто обходим соседей каждого белого пиксела, и собираем все белые. Немного усилий, чтобы не ходить кругами и все. Только имеет ли это белое пятно какое-то отношение к блику? Это зависит от исходного изображения, от метода (порога) бинаризации и т.д.

Ну собирем мы их, а что потом то с ними делать не совсем понятно. В это вся и загвоздка, я тут даже себе рисунок нарисовал с пикселями. Пример, вот такой, проходим мы изображение по строчно, в первой строке нету белых пикселей, во второй нету, в третьей тоже нету, четвертую проходим нашли белый пиксель, потом просматриваем сверху, он черный собственно, значит это граница. Потом просматриваем пиксели снизу, тоже для обнаружения черного пикселя, или просматриваем только ближаиший пиксель на расстоянии 1.(Это мой главный вопрос). Ну собственно таким же образом просматриваем пиксели слева и справа, от найденного. Собственно это все загоняется в массив, потом только не понятно, что с ним делать. Не понятно также как провести выделение белых областей, чтобы у нас показывались только границы. Также могу добавить, что кроме Хафа я допустим ничего не нашел. Собственно бинаризация уже работает, порог выбран равным 127.user posted image
Подразумевается, что на этом изображении мы будем тестировать свою программу.
Собственно изображение подрузумевается как блик, правда он далеко не круглый после бинаризации.

Это сообщение отредактировал(а) zaksys - 8.10.2010, 09:12
PM MAIL Skype   Вверх
Earnest
Дата 8.10.2010, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Ну, оконтурить обнаруженное белое пятно можно методом жука, довольно простой алгоритм, кажется в форуме были упоминания.
А уж что делать с контуром - дело твое. Хочешь, окружностью его аппроксимируй.


--------------------
...
PM   Вверх
zaksys
Дата 8.10.2010, 23:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Earnest @ 8.10.2010,  19:19)
Ну, оконтурить обнаруженное белое пятно можно методом жука, довольно простой алгоритм, кажется в форуме были упоминания.
А уж что делать с контуром - дело твое. Хочешь, окружностью его аппроксимируй.

И что за метод такой жука? Ну да можно попробывать и аппроксимировать.
Можно по подробнее в чем он вообще заключается, я ничего путнего не нашел. И на форуме тоже. Если вам не трудно киньте ссылучку пожалуйста.

Это сообщение отредактировал(а) zaksys - 9.10.2010, 19:21
PM MAIL Skype   Вверх
Earnest
Дата 11.10.2010, 08:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



http://forum.vingrad.ru/forum/topic-261385...1%83%D1%80.html

http://forum.vingrad.ru/forum/topic-166483...y1229145/0.html

И.т.д - ищи по слову "контур"
Принцип очень простой - находим один из крайних пикселов и идем так, чтобы пятно было всегда слева (или справа). Вот и все.


--------------------
...
PM   Вверх
zaksys
Дата 12.10.2010, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Цитата(Earnest @ 11.10.2010,  08:28)
http://forum.vingrad.ru/forum/topic-261385...1%83%D1%80.html

http://forum.vingrad.ru/forum/topic-166483...y1229145/0.html

И.т.д - ищи по слову "контур"
Принцип очень простой - находим один из крайних пикселов и идем так, чтобы пятно было всегда слева (или справа). Вот и все.

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

maxim1000

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


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

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


 




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


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

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