|
|
Region-growing und center of gravity in Graubild |
|
dx_dy |

Forum-Anfänger
|
 |
Beiträge: 18
|
 |
|
 |
Anmeldedatum: 06.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.11.2012, 15:12
Titel: Region-growing und center of gravity in Graubild
|
 |
Hallo,
ich hab ein Grauwertbild mit 3 * 9 weißen "Bobbeln", die "Bobbel" sind fast komplett weiß und der Hintergrund schwarz.
Das Format des Bildes ist *.png
Ich habe die Pixelkoordinaten in xy und die dazugehörigen Grauwerte in eine Cellmatrix geladen.
Jetzt möchte ich mit Matlab irgendwie die weißen Punkte erkennen und die Schwerpunktkoordinaten der einzelnen "Bobbel" ausgeben.
Ich vermute "Bobbel" erkennen irgendwie mit region growing und Schwerpunkt mit irgendeinem Filter.
Da ich sehr wenig erfahrung mit Bildverarbeitung in Matlab habe sind meine Fragen:
1) Richtiger Weg? Oder lieg ich Falsch?
2) Wie funktioniert das ungefähr?
_________________
Mark Twain didn't actually say half the shit the Internet says he did. ~Mark Twain
Zuletzt bearbeitet von dx_dy am 07.11.2012, 15:30, insgesamt einmal bearbeitet
|
|
|
|
|
dx_dy |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 18
|
 |
|
 |
Anmeldedatum: 06.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.11.2012, 15:19
Titel:
|
 |
ich schätze bevor ich irgendwas mit region growing machen kann muss ich erstmal mit edge detection arbeiten?
_________________
Mark Twain didn't actually say half the shit the Internet says he did. ~Mark Twain
|
|
|
Ajax |

Forum-Century
|
 |
Beiträge: 176
|
 |
|
 |
Anmeldedatum: 09.09.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.11.2012, 16:19
Titel:
|
 |
Hallo,
hast du die Image Processing Toolbox? Hier gibt es einige fertige Funktionen, die dir sicher weiter helfen.
mfg
|
|
|
dx_dy |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 18
|
 |
|
 |
Anmeldedatum: 06.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 07.11.2012, 16:41
Titel:
|
 |
Ich glaube nicht. Ehrlich gesagt weiß ich nicht wo ich da in Matlab schauen muss.
Hab bis jetzt nur Ausgleichungsprogramme in Matlab geschrieben.
Ich hab jetzt mal mit Edge-Detection (Canny) die Kanten rausbekommen.
Bin mir aber nicht sicher ob das vorgehen richtig ist um die Schwerpunkte der "Bobbel" rauszubekommen.
_________________
Mark Twain didn't actually say half the shit the Internet says he did. ~Mark Twain
|
|
|
Hubertus |

Forum-Meister
|
 |
Beiträge: 1.034
|
 |
|
 |
Anmeldedatum: 08.01.09
|
 |
|
 |
Wohnort: Hamburg
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.11.2012, 08:25
Titel:
|
 |
Moin dx_dy,
ich habe da so meine Probleme, die Frage zu verstehen, weil einige Angaben dem ersten Anschein nach etwas konfus sind. So:
Was ist eine Cellmatrix, die man mit imread einlesen kann? Meinst du vielleicht eine Matrix mit Indizierung? Die wird in der Regel [x,map]=... eingelesen, sofern x und map noch bearbeitet werden sollen.
Du weist nicht, ob du die IP-Toolbox hast. Wenn du die genannten Funktionen aufrufen kannst, hast du auch die Toolbox. Der Befehl: >> ver gibt die weitere Auskünfte.
Die Berechnung: "G = im2double(im2bw(mat2gray(I)));" liefert in Vergleichsbildern unsaubere Kannten, die auffallend zerrissen sind (ich kenne deine Matrix/ Bild nicht). Die kannst sobel direkt auf die Matrix anwenden.
Zu region growing mit Matlab gibt es viele Funktionen und ist auch gut beschrieben. Siehe z.B.
http://www.uio.no/studier/emner/mat.....smateriale/region_grow1.m
Viele Grüße
Hubertus
|
|
|
dx_dy |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 18
|
 |
|
 |
Anmeldedatum: 06.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.11.2012, 12:50
Titel:
|
 |
|
 |
|
Danke für den Tipp mit "ver".
Ich hab also die "Image Processing Toolbox Version 6.4 (R2009b)".
Du empfindest meine Fragestellung als etwas konfus?
Ok, dann versuch ich es mal besser zu formulieren.
Meine Ausgangslage:
Ich hab ein *.png Graubild. Auf diesem Bild sind 3 * 9 Punkte verteilt (helle Bobbel mit einem Durchmesser von ungefähr 10 Pixeln), der Hintergrund ist schwarz.
Was brauche ich?:
Ich benötige die Schwerpunktkoordinaten von jedem Punkt.
Z.B.: Punkt 1 Schwerpunkt x=10[pixel] y=20[pixel] ausgehend von (0/0) links oben.
(Die Linke obere Ecke ist standardmäßig (0/0) im Bildkoordinatensystem? So kenn ich es zumindest aus der Photogrammetrie.)
Was ich mir überlegt habe:
Da ich kaum Erfahrung mit Bildverarbeitung habe, leider nur theoretisches Wissen. Dachte ich mir, ich "finde" die Punkte (Bobbel) mit "Region-Growing" und rechne dann irgendwie den Schwerpunkt der Region aus.
Verständlicher?
_________________
Mark Twain didn't actually say half the shit the Internet says he did. ~Mark Twain
|
|
|
Hubertus |

Forum-Meister
|
 |
Beiträge: 1.034
|
 |
|
 |
Anmeldedatum: 08.01.09
|
 |
|
 |
Wohnort: Hamburg
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.11.2012, 13:48
Titel:
|
 |
Die Aufgabe habe ich schon verstanden und in meiner Antwort auch nicht hinterfragt. Hinterfragt habe ich andere Einzelheiten!
Wenn du die von mir aufgezeigte Funktion zu region_grow einmal anwendest, erhältst du dann ungefähr das, was du dir vorstellst?? Neben dieser Funktion könnte auch Cell-Funktionen weiterhelfen. Eine einfache Funktion um mehrere Koordinaten auszlesen ist: >> ginput(4) % gibt dir 4 Koordinaten wieder. Dazu kann >> impixelregion einen Überblick über die Anzahl der gesuchten Pixel geben. Oder soll das alles automatisch erfolgen. Das wird bei mehreren Objekten sicherlich ein Problem.
Du kannst auch mit einer anderen Funktion einen Rahmen um die Objekte ziehen und dir die eingerahmten Pixel ausgeben lassen.
Ist irgend etwas dabei, was weiterhelfen könnte?
Es gibt ein Bild, das heißt: coins.png (siehe Google). Entspricht die "Situation" in etwas deiner Aufgabe, wenn ich mir alle Münzen als weiße Flächen vorstelle?
|
|
|
dx_dy |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 18
|
 |
|
 |
Anmeldedatum: 06.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.11.2012, 16:55
Titel:
|
 |
die region_grow fkt habe ich leider nicht zum laufen gebracht.
mir würde aber schon ausreichen wenn ich für jeden punkt extra von hand immer ein pixel raussuche, dann evtl ein region grow starte und von dem gefunden punkt den schwerpunkt irgendwie rausbekommen würde.
hauptsache irgendwie auf den schwerpunkt kommen, automatisierung ist völlig egal.
ich brauch einfach die schwerpunkt koordinaten für eine spätere simulation mit semax.
im anhang ist ein bild das ungefähr dem entspricht um dass es geht, das original kann ich hier nicht zeigen.
Beschreibung: |
|
 Download |
Dateiname: |
punkte.png |
Dateigröße: |
2.27 KB |
Heruntergeladen: |
732 mal |
_________________
Mark Twain didn't actually say half the shit the Internet says he did. ~Mark Twain
|
|
|
Hubertus |

Forum-Meister
|
 |
Beiträge: 1.034
|
 |
|
 |
Anmeldedatum: 08.01.09
|
 |
|
 |
Wohnort: Hamburg
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 08.11.2012, 17:10
Titel:
|
 |
Mit der Funktion gibt es keine Probleme. Welche Fehlermeldung hast du bekommen? Ich habe die Funktion absichtlich ausgewählt, damit du ein Beispiel zu region grow bekommst. Du kannst dann besser abschätzen, ob dir die Funktion nützt oder total nutzlos ist.
Was ist mit den anderen Beispielen, die ich aufgeführt habe. Hast du die angewendet und dir die Daten zurück geben lassen. Was funktioniert da nicht?
|
|
|
dx_dy |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 18
|
 |
|
 |
Anmeldedatum: 06.11.12
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2012, 16:46
Titel:
|
 |
Hat sich erledigt, Danke!
_________________
Mark Twain didn't actually say half the shit the Internet says he did. ~Mark Twain
|
|
|
|
|
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 - 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.
|
|