Страница 1 из 1

Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 05:54
bolotoved
Проблема: есть множество отсканированных карт распространения биологических видов. На контурной карте точками отображен ареал вида. Нужно автоматизировать процесс распознавания таких точек и эксракцию координат их центров в таблицу.
Есть статья, как подобная задача решается в MathLab: http://blogs.mathworks.com/pick/2008/05 ... -an-image/ на примере распознавания клеток на микрофотографии.
Ранее в R был модуль edci (Edge Detection and Clustering in Images), с помощью которого, вероятно, можно было бы решить данную задачу. Но этот модуль по каким-то причинам был удален из репозитория R, хотя код его остался (на C++).
М.б. есть еще какие-то модули для R позволяющие решать сходные задачи?

Re: Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 07:01
gamm
bolotoved писал(а):Проблема: есть множество отсканированных карт распространения биологических видов. На контурной карте точками отображен ареал вида. Нужно автоматизировать процесс распознавания таких точек и эксракцию координат их центров в таблицу.
это задачка не для R, возьмите пакет ITK (http://www.itk.org/), это открытое ПО. Можете скомпилировать сами под свою машину, и там вроде есть бинарники.

P.S. И из сообщения непонято, что вы хотите распознавать - точки или ареалы (площадные объекты). Если точки (значки), то хватит элементарной корреляции с заданным паттерном. Пакет, который в Матлабе, использует преобразование Хафа и ищет окружности в пространстве образов. Скорее всего, в ITK он тоже есть, по крайней мере есть бинарник с именем HoughTransform2DCirclesImageFilter.exe :mrgreen:

Re: Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 12:44
bolotoved
gamm писал(а):И из сообщения непонято, что вы хотите распознавать - точки или ареалы
Распознавать нужно именно точки.

Да действительно, народ для таких целей не рекомендует использовать R. А чем хорош именно ITK, почему не более широко известный ImageJ?

Нашел инструкцию по детекции окружностей для ImageJ в данном плагине также применяется трансформация Хафа.

Re: Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 17:16
gamm
bolotoved писал(а):А чем хорош именно ITK, почему не более широко известный ImageJ?
ну, хотя бы потому, что ITK - профессиональная система обработки медицинских изображений, написанная на нормальном языке программирования. В остальном - дело вкуса.

Re: Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 18:09
Александр Мурый
А в OTB этого случайно нет?

Re: Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 18:12
gamm
там только "линейный" Хаф, циркулярного я не нашел

P.S. возникло ощущение, что OTB написан (местами) поверх ITK ...

Re: Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 19:49
Максим Дубинин
gamm писал(а):P.S. возникло ощущение, что OTB написан (местами) поверх ITK ...
Так оно так и есть http://orfeo-toolbox.org/otb/

Для выделения таких вещей еще хорош OpenCV

Re: Edge & Circle Detection in Images

Добавлено: 14 янв 2013, 20:18
gamm
Максим Дубинин писал(а):Для выделения таких вещей еще хорош OpenCV
не, там много чего нет. Даже если использовать вместе с платными интеловскими IPP+MKL. К тому же это библиотека, а ITK подобен GDAL, т.е. имеет набор готовых утилит, позволяющих не-программисту собрать цепочку обработки. Там еще вроде даже есть и GUI какой-то.