Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Определение границ радужки 
:(
    Опции темы
deniska
Дата 10.8.2011, 08:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



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

Что испробовано: из библиотеки OpenCV алгоритм Кэнни (Canny) выделения краев на картинке - cvCanny(). Дает различные результаты на разных снимках (зависит от резкости картинки). Но выделяет максимум внутреннюю границу. Внешнюю - никогда. Задавать входные параметры для  cvCanny() исходя из какогото предварительного анализа изображения (например каким то образом определять уровень резкости) не знаю как. Далее даже если этим алгоритмом удастся выделить внутренний край, помимо него будут определны и другие края, ресницы веки, какие то фрагменты самой радужки - все это нужно отфильтровывать, опять не понятно как.

Еще пытался использовать радиальные производные из центра изображения. можно считать что точка центра изображения всегда попадает в зрачок, и что максимальная производная  будет на внутренней границе радужки... но тоже есть вопросы: нужно предварительно грамотно убрать блики для того чтобы на них не было ложных макс. производных.

Сейчас уже в каком-то тупике нахожусь, нужны какието свежие мысли, идеи.

Только пожалуйста не кидайтесь сильными математическими терминами ))

Присоединённый файл ( Кол-во скачиваний: 45 )
Присоединённый файл  1971_MS.JPG 18,40 Kb
PM MAIL ICQ   Вверх
Earnest
Дата 10.8.2011, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



А что это за яркие точки в зрачке; это уже какая-то обработка?

Я бы попробовала так:
- размытие, чтобы убрать мелкие детали (ресницы и небольшие блики)
- сегментация на 3-4 уровня яркости (снимок ведь серый?)
- детектор краев; можно попробовать и попроще чем Canny - любой дифференциальный фильтр

Возможно, между размытием и сегментацией нужно выполнить усиление резкости (UnsharpMask).


--------------------
...
PM   Вверх
deniska
Дата 10.8.2011, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата

А что это за яркие точки в зрачке; это уже какая-то обработка?


блики от ИК подсветки
PM MAIL ICQ   Вверх
Earnest
Дата 10.8.2011, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



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


--------------------
...
PM   Вверх
deniska
Дата 10.8.2011, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



это первое о чем я подумал когда увидел снимки. но как оказалось позже их расположение зависит от настройки прибора и полагаться на них нельзя. их может быть разное количество и расположение.

Цитата

Наверняка такие исследования уже проводились, нужно только поискать


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

Это сообщение отредактировал(а) deniska - 10.8.2011, 10:35
PM MAIL ICQ   Вверх
VictorTsaregorodtsev
Дата 10.8.2011, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



deniska
Кластерный анализ (яркостей или цветов точек) либо, если хочется чего-то покруче для анализа не просто яркостей, а текстур на изображении - двумерная HMM (скрытая марковская модель). Плюс набор эмпирик для выяснения, что же брать в качестве найденного кластера - простейшие эмпирики, например, будут на основе расчета и сравнения центров масс и дисперсий координат пикселов кластеров (кластер-радужка должна иметь центр, близкий к центру зрачка, но дисперсия кластера-радужки должна быть больше дисперсии кластера-зрачка, центры масс левого и правого кластеров для белка глаза должны быть, соответственно, слева и справа от радужки, кластера для век - сверху и снизу, соответственно).
PM MAIL WWW   Вверх
deniska
Дата 10.8.2011, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



кхе, кхе....

а можно объяснить както немного менее "эмпирично" выражаясь Вашими терминами. Если честно, вообще ничего не понял из поста.

Что означает в Вашем понимании кластерный анализ?

нуда, знаем мы что сверху и снизу МОГУТ быть веки, справа и слева белок... 

в общем  smile 


PM MAIL ICQ   Вверх
Earnest
Дата 10.8.2011, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(deniska @  10.8.2011,  17:06 Найти цитируемый пост)
Что означает в Вашем понимании кластерный анализ?

Полагаю, то, что я обозвала "сегментацией" - разделение точек изображения  по яркости на несколько классов.
Цитата(deniska @  10.8.2011,  11:30 Найти цитируемый пост)
и даже пробовал бесплатные программы,

Тоже мне "даже" smile  бесплатно вообще редко бывает хорошо.
Не могу поверить, что в сети нет статей на соответствующие темы... только лучше английские источники искать...



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


Опытный
**


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

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



Цитата

Тоже мне "даже"


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

Для начала мне бы зрачок выкинуть(по крайней мере это должно оказаться легче, чем определить внешнюю границу радужки), думаю это позволит разбить оставшуюся картинку на более  точные "кластеры"  smile, поскольку диапазон яркости сузится
PM MAIL ICQ   Вверх
maxim1000
Дата 11.8.2011, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(deniska @  11.8.2011,  08:24 Найти цитируемый пост)
Для начала мне бы зрачок выкинуть(по крайней мере это должно оказаться легче

если предположить, что центр радужки там же, где и центр зрачка, то можно построить гистограмму "яркость в зависимости от удалённости", думаю, на ней работать будет проще...

Это сообщение отредактировал(а) maxim1000 - 11.8.2011, 10:39


--------------------
qqq
PM WWW   Вверх
deniska
Дата 11.8.2011, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата

если предположить, что центр радужки там же, где и центр зрачка


почти совпадают, ну то есть рядом))) будут. тоже попробую
PM MAIL ICQ   Вверх
mrgloom
Дата 11.8.2011, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



google -> iris detection
PM MAIL   Вверх
deniska
Дата 18.8.2011, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Думаете я отстал от вас? не дождетесь))

Определение внутренней границы радужки ( выделение зрачка ) на данном этапе, с точностью ПОКА достаточной сделал. В общих словах так:

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

теперь перехожу к самому сложному - внешней границе радужки, тн "лимб" или лимбус...
PM MAIL ICQ   Вверх
mrgloom
Дата 19.8.2011, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



user posted image

можно попробовать local threshold (Bernsen)

и можно попробовать еще active countours
http://imagejdocu.tudor.lu/doku.php?id=plu...e_contour:start
PM MAIL   Вверх
deniska
Дата 19.8.2011, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



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

maxim1000

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


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

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


 




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


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

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