2013-08-27 4 views
5

Ich habe Probleme beim Trennen von Zellen in Mikroskopbildern. Wenn ich eine Wasserscheide-Transformation anwende, zerschneide ich Zellen in viele Stücke und teile sie nicht nur am Rand/Minimum.Over-Watershedding Bild

Ich verwende den Bpass-Filter von http://physics.georgetown.edu/matlab/code.html.

bp = bpass(image,1,15); 
op = imopen(bp,strel('ball',10,700)); 
bw = im2bw(bp-op,graythresh(bp-op)); 
bw = bwmorph(bw,'majority',10); 
bw = imclearborder(bw); 
D = bwdist(~bw); 
D = -D; 
D(~bw) = -Inf; 
L = watershed(D); 
mask = im2bw(L,1/255); 

Alle Ideen würden sehr geschätzt werden! Sie können sehen, dass meine Zellen in der letzten Maske zu sehr voneinander getrennt sind.

Hier ist die Art von Bild, das ich versuche, Wasserscheide. Es ist ein 16-Bit-Bild, so dass es aussieht, als wäre alles schwarz.

Starting fluorescent image

Endbild Maske:

After filters and masking the cells

Ich trennte die hier manuell Zellen:

Manually segmented image

+1

Für diejenigen von uns, die keine Biologen sind, könnten Sie vielleicht darauf hinweisen, wo die Zellen sind. Ich sehe viele Stücke, aber einige sind nur durch ein Pixel und einige durch mehrere getrennt. Sind sie alle die gleiche Zelle oder gibt es Cluster von Zellen in der Nähe? – paddy

+0

@paddy Ich habe die Zellen rot getrennt. Hilft das? – Ben

Antwort

2

die Zentren der Zellen zu finden, sollte relativ sein geradlinig : ein lokales Maximum der Intensität finden. Wenn Sie diese Punkte als Samen für das Wassereinzugsgebiet verwenden, könnten Sie this tutorial nützlich finden.

Einige morphologcal Operationen, die Sie nützlich finden könnten, sind:
- imimposemin - zwingt einen Startpunkt eine lokale min zu sein, wenn der Wendepunkt-Transformation zu berechnen.
- imregionalmax - Suche nach lokalen Maxima des Intensitätsbildes.

+0

Danke, ich werde es ausprobieren! – Ben