|
|
erkennung+segmentierung von 3 kugeln ... |
|
lossi |
Forum-Anfänger
|
|
Beiträge: 12
|
|
|
|
Anmeldedatum: 17.08.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.09.2009, 20:59
Titel: erkennung+segmentierung von 3 kugeln ...
|
|
|
|
|
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ß
Beschreibung: |
|
Download |
Dateiname: |
gomatlab.png |
Dateigröße: |
1.33 MB |
Heruntergeladen: |
1144 mal |
|
|
|
|
|
lossi |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 12
|
|
|
|
Anmeldedatum: 17.08.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.09.2009, 17:57
Titel:
|
|
|
|
|
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
Beschreibung: |
|
Download |
Dateiname: |
gomatlab_groß.png |
Dateigröße: |
15.19 KB |
Heruntergeladen: |
1071 mal |
Beschreibung: |
|
Download |
Dateiname: |
gomatlab_klein.png |
Dateigröße: |
11.2 KB |
Heruntergeladen: |
1069 mal |
|
|
|
steve |
Ehrenmitglied
|
|
Beiträge: 2.029
|
|
|
|
Anmeldedatum: 03.09.07
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: R2024a
|
|
|
|
|
|
Verfasst am: 12.09.2009, 18:10
Titel:
|
|
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
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?
|
|
|
lossi |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 12
|
|
|
|
Anmeldedatum: 17.08.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.09.2009, 18:25
Titel:
|
|
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!!
gruß
lossi
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|