WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

"Ungenauigkeit" mit poly2mask

 

JJ72
Forum-Anfänger

Forum-Anfänger


Beiträge: 19
Anmeldedatum: 22.06.09
Wohnort: Karlsruhe
Version: R2009b
     Beitrag Verfasst am: 14.04.2010, 13:44     Titel: "Ungenauigkeit" mit poly2mask
  Antworten mit Zitat      
Hallo,

ich möchte folgendes machen:
Ich segmentiere ein Bild (IMG) in n Segmente mittels eines Bildsegmentierungs-Algorithmus (mean-shift).
Jetzt lasse ich mir ein Binärbild BIN1 erstellen, in dem eines der Segmente die 1en sind, die anderen die 0en.
Die Umgrenzung dieses Segmentes (bound) ermittle ich mittels bwboundaries. Ich erhalte die X und Y Koordinaten der Punkte der Umrisslinie.

So, jetzt der Clue: Aus diesen Koordinaten will ich später wiederum eine neue Binär-Maske BIN2 erstellen können, so dass BIN2==BIN1. Ich brauche also eine Komplementärfunktion zu bwboundaries. Versucht habe ich es mit poly2mask. Damit klappt es nicht, weil BIN2 nicht deckungsgleich mit BIN1 ist.

Code:

   
[B,L2] = bwboundaries(BIN1);
bound=B{1};

% dann später im Code
BIN2=poly2mask(bound(:,2),bound(:,1),size(IMG,1),size(IMG,2));

% überprüfe, ob BIN1 und BIN2 überall gleich sind:
numel(find(BIN2~=BIN1))

ans =

    24

 


Hat jemand von euch ne Idee?

Zur Erläuterung: BIN2 enthält weniger 1en als BIN1. Grund: bwboundaries liefert z.B. die Koordinaten von Punkten, die zu einer 1-Pixel breiten Linie des Segments gehören. poly2mask markiert aber nur solche Punkte als 1, die ZWISCHEN den Grenzunkten des Polygons liegen, nicht die Grenzpunkte selbst. [/code]
Private Nachricht senden Benutzer-Profile anzeigen


Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.