Как решить пересегментированный цельный лейкоцит по водоразделу в MATLAB или других

Как показано на рисунке, я хотел бы разделить соседние ячейки по алгоритму водораздела, но результат показывает пересегментацию. Как я могу использовать imimposemin() для решения этой проблемы. Спасибо!

WATESHED CODE in MATLAB:
D = -bwdist(~BW);
D(~BW)  =-Inf;
L = watershed(D,8);
BW(L==0)=0;

Результат

Введите BW


person Hsiao Ai Lee    schedule 16.04.2016    source источник
comment
RGB входного BW i.stack.imgur.com/nex5R.png   -  person Hsiao Ai Lee    schedule 16.04.2016


Ответы (1)


Вы должны:

  1. вычислить карту расстояний или окончательную эродированную (более стабильную)
  2. Расширьте результат, чтобы объединить близкие шаблоны
  3. использовать результат в качестве внутренних семян.

Вы получите этот результат.

[EDIT] Вот результат, когда я использую градиент, вычисленный для исходного изображения. Но будьте осторожны, чтобы сохранить глобальную форму, мне пришлось объединить градиент и контур бинарной маски, см. здесь.

person FiReTiTi    schedule 16.04.2016
comment
Спасибо за ваш ответ! - person Hsiao Ai Lee; 18.04.2016