У меня есть следующая картинка, которая представляет собой фотографию клеток поджелудочной железы
Что я хотел бы сделать, так это иметь возможность получить мембрану каждой клетки (красная нить), а затем выполнить тесселяцию, чтобы получить представление о длине нити. До сих пор я пытался использовать пример, приведенный на веб-сайте Matlab, но результат не очень хорош...
I = imread('picture.tiff');
I_gray = rgb2gray(I);
[~, threshold] = edge(I_gray, 'sobel');
fudgeFactor = .5;
BWs = edge(I_gray,'sobel', threshold * fudgeFactor);
se90 = strel('line', 3, 90);
se0 = strel('line', 3, 0);
BWsdil = imdilate(BWs, [se90 se0]);
Я часами искал другой способ сделать это, но без какого-либо удовлетворительного результата... Есть ли способ сделать это? Возможно, другое программное обеспечение, кроме Matlab, может быть более эффективным. Заранее спасибо!
rgb2hsv
. Канал оттенка не зависит от освещения, поэтому красная нить должна быть практически однородной. - person UJIN   schedule 06.03.2017