Мне нужно найти края радужной оболочки, входные изображения, которые я использую, не имеют полностью закругленной радужной оболочки, иногда она может быть закрыта веком. Я нашел краткое изложение журнальной статьи, чтобы найти радужную оболочку даже прикрытой веком. Однако я застрял на одном из шагов. Опять же, потому что это только резюме, и я не могу найти полный текст этой статьи.
Вот где я застрял, у меня есть изображение, и оно уже подразумевается вертикальным обнаружением края Собеля. У меня есть ввод изображения, вот картинка:
А это изображение после применения обнаружения вертикального края:
Мне нужно удалить все края, кроме края радужной оболочки (красный край).
Мой ожидаемый результат должен быть таким:
Примечание. Некоторые изображения могут иметь только левый или правый край зрачка, как на изображении выше, но некоторые изображения могут иметь левый и правый края зрачка.
На мой взгляд, есть два способа получить края.
Удалите горизонтальные края, так как края зрачка вертикальны. Но я не знаю, как удалить горизонтальные края, и это не совсем горизонтальные линии, а извилистые горизонтальные линии.
Найдите самые длинные ребра на картинке (я также не знаю, каков алгоритм нахождения самых длинных ребер).
Какой из них является правильным способом решения моей проблемы? или не оба варианта выше?
Если вы знаете метод поиска не полностью округленных объектов, особенно для радужной оболочки, скажите, пожалуйста, это облегчит мой проект.