Ich versuche ein Programm zu erstellen, das die Anzahl der Kerne in einem solchen Bild zählen kann:
Was ich bereits getan habe, ist Schritt für Schritt Folgendes:
- Wenden Sie einen alternierenden sequentiellen Filter an (Schließen und Öffnen des Bildes mit allmählich größeren Strukturierungselementen)
- Wenden Sie eine Entfernungstransformation an
- Wenden Sie eine Wasserscheidensegmentierung mit dem entfernungstransformierten Bild an, um Minima zu erkennen
Dies ergibt das folgende Ergebnis (wobei jede Farbe einen neuen gezählten Kern darstellt):
Wie wir sehen können, gibt es viele Unvollkommenheiten, insbesondere überzählte Kerne. Ich würde sagen, dass der Grund für dieses Problem die Art und Weise ist, wie ich Minima für die Wasserscheidetransformation (unter Verwendung der Entfernungstransformation) auferlegt habe, aber ich habe wirklich keine anderen Ideen, um in diesem Fall Minima aufzuerlegen.
Da die Entfernungstransformation Minima basierend auf der Rundheit von Objekten erzeugt, würde ich gerne eine bessere Alternative zum Aufrunden der Kerne als den alternierenden sequentiellen Filter kennen (wenn wir uns das Bild oben ansehen, können wir schließen, dass die meisten "Überzählungen" von stammen die weniger gerundeten Kerne). Ich würde auch gerne bessere Möglichkeiten kennen, um Minima für die Wasserscheidetransformation aufzuerlegen.