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

erkennung+segmentierung von 3 kugeln ...

 

lossi
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 17.08.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.09.2009, 20:59     Titel: erkennung+segmentierung von 3 kugeln ...
  Antworten mit Zitat      
hallo,

ich muß aus einer bmp-datei, auf der 3 kugeln zu sehen sind, die kanten der kreise erkennen, von jeder einzelnen den radius, mittelpunkt und die abstände der mittelpunkte ermitteln - wenn möglich vollautomatisiert.

klingt bis hierhin nicht so schwer, das problem ist allerdings, dass der hintergrund immer verschieden ist (und reichlich störende artefakte/informationen beinhaltet), die position und orientierung der kugeln ebenfalls fast nie gleich ist!

zur veranschaulichung hänge ich mal ein bild an!

ich habe mir natürlich auch schon selbst gedanken gemacht.
hatte mir das so gedacht, dass ich mit roipoly interaktiv ein polygon erstelle, um den störenden hintergrund "wegzuschneiden". dann werden nur innerhalb des übriggebliebenen bildes mit edge und bwboundaries kanten gefunden, wobei ich regionen mit einer zu kleinen pixelanzahl (ein kreis hat ja doch einige pixel) wieder wegfiltere. mit den übrigen pixeln starte ich dann ein kreiseinpassung, um mittelpunkt und radius zu ermitteln!
leider läuft das ganze wie gesagt nicht automatisiert, da ich den entsprechenden bildinhalt ja über roipoly von hand auswähle! und bei roipoly ist auch noch das problem, dass der rand des polygons ebenfalls als rand bei edge und bwboundaries gefunden wird!

hat evtl jemand eine idee, wie ich das ganze noch angehen könnte??

besten dank
gruß

gomatlab.png
 Beschreibung:

Download
 Dateiname:  gomatlab.png
 Dateigröße:  1.33 MB
 Heruntergeladen:  1144 mal
Private Nachricht senden Benutzer-Profile anzeigen


lossi
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 17.08.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2009, 17:57     Titel:
  Antworten mit Zitat      
hallo,

hab jetzt nochmal selber ein wenig probiert und soweit klappt das auch!

habe, wie bereits oben beschrieben, mit roipoly nur die kugel aus dem bild ausgewählt, dann mit edge kanten gefunden ... und schließlich mit einer funktion (fminsearch mit kreisgleichung) den mittelpunkt und radius berechnet - das haut auch wunderbar hin!!

problematisch ist nun, dass ich ja immer manuell das bild filtere, also den bildausschnitt auf die kugel beschränke! wenn ich das nicht tue, wird ein falscher mittelpunkt u radius berechnet!

im anhang einmal das manuell "gefilterte" bild und das gesamtbild, und zwar nach edge u bwboundaries.

hat evtl jemand eine idee, wie ich am besten vorgehe, um auch ohne manuelles filtern den richtigen mittelpunkt und radius der kugel finde??

oder sollte ich das am besten gleich über eine geänderte aufnahme (mit wenig oder gar keinen störenden hintergrund) tun??

vielen dank!

gruß
lossi

gomatlab_groß.png
 Beschreibung:

Download
 Dateiname:  gomatlab_groß.png
 Dateigröße:  15.19 KB
 Heruntergeladen:  1071 mal
gomatlab_klein.png
 Beschreibung:

Download
 Dateiname:  gomatlab_klein.png
 Dateigröße:  11.2 KB
 Heruntergeladen:  1069 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 12.09.2009, 18:10     Titel:
  Antworten mit Zitat      
Moin,

wenn du die Möglichkeit hast, die Beleuchtung und/oder den Hintergrund zu vereinheitlichen, dann hilft das schon ungemein für eine Automatisierung.

Sind die Kugeln immer gleich groß oder unterscheiden sich diese? Wenn sie gleich groß sind, dann könntest du eine Schablone anfertigen und diese über gefundene Bereiche legen und dadurch die Positionen feststellen. Wie genau das dann funktioniert, weiß ich im Moment auch nicht, ich habe nur davon gehört und Bespiele gesehen Sad

Eine weitere Möglichkeit wäre, im FileExchange mal nachzusehen, soweit ich weiß, gibt es dort ein Beispiel für eine Gesichtserkennung mit Hilfe eines Lernalgorithmus. Vllt. kannst du davon auch etwas verwenden...

Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
Private Nachricht senden Benutzer-Profile anzeigen
 
lossi
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 17.08.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.09.2009, 18:25     Titel:
  Antworten mit Zitat      
hallo,

und danke für die antwort!
die kugeln sind alle 3 gleich groß (sind präzisionskugeln von 10mm durchmesser!). der kugeln bilden ein dreieck mit unterschiedlichen kantenlängen, wobei ich über diese kantenlängen die kugeln identifizieren will, um dann später eine eben aufzuspannen und ... position und orientierung festzustellen!! soll heißen, dass die größe der kugeln zwar immer gleich ist, im bild aber sicherlich immer unterschiedlich!

ich hab mir schon gedanken gemacht, wie ich aus schwarzen tonpapier etwas bastele, dass ich so an die kugeln anbaue, dass das papier direkt am unteren ende (also dort wo der schaft aufhört) befestigt wird! denke mal, dadurch kann ich schonmal den schaft "wegfiltern". muß mal am montag schauen, wie gut das funktioniert!

das mit der lernenden gesichtserkennung klingt interessant, werd ich mir mal anschauen - für weitere ideen bin ich natürlich immer dankbar!!

Very Happy

gruß
lossi
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 - 2024 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.