Идентификация кругов помимо использования функции imfindcircle

У меня есть изображение частиц, из которых я пытаюсь определить, связаны ли они на изображении или нет, по тому, соприкасаются они или нет. Я уже использовал функцию imfindcircles, но заметил, что она всегда появляется с некоторыми ложными срабатываниями или не может подобрать все правильные связанные частицы.

Поэтому я пытаюсь придумать другой способ определения кругов и сравнить его с предыдущей функцией imfindcircles. Я хочу иметь возможность графически отображать интенсивность изображения, а затем брать интеграл каждого пика, чтобы найти площадь каждого круга. Затем, если площадь круга находится в пределах определенного диапазона (площадь двух связанных частиц), то он будет идентифицирован как связанная частица.

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

Ниже изображение, с которым я работаю. Частицы, о которых мне нужно сказать, являются более мелкими:

изображение


person Isaiahhack22    schedule 19.02.2017    source источник
comment
Может быть, вы могли бы предоставить дополнительное размеченное изображение, показывающее, что вы пытаетесь найти, и чем оно отличается...   -  person Mark Setchell    schedule 20.02.2017


Ответы (2)


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

Найдите связанные компоненты. (Bwкомпонент)

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

person Amitay Nachmani    schedule 20.02.2017

Попробуйте взглянуть на это:

http://uk.mathworks.com/matlabcentral/fileexchange/9168-detect-circles-with-various-radii-in-grayscale-image-via-hough-transform

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

person roadRunner    schedule 20.02.2017