|
|
Selektives Auslesen von Werten einer Bild-Matrix |
|
Matlab Voll Nobe |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.03.2015, 11:01
Titel: Selektives Auslesen von Werten einer Bild-Matrix
|
|
Hallo,
ich bin nur ab und zu mal mit Matlab in Kontakt gekommen und nun stehe ich vor folgendem Problem:
Ich habe hunderte (n) Bilder einer Infrarot-Kamera (Bildsequenz)
Meine über Matlab eingelesenen Daten (in Kelvin) erhalte ich am Ende in (n) Matrices.
640x480 Pixel/Matrix. Nun möchte ich symetrisch angeordnet aber nur bestimmte ausschnitte des Bildes verwenden (am Besten Kreise), in der Bildsequenz kommt es zu keiner Verschiebung, sprich die Kreisausschnitte würde für alle n Bilder an gleichen Position sein.
Mir fehlen da die Schlagwörter um ähnliche Skripte zu finden, hat jemand eine Idee wie man soetwas am geschicktesten angeht ? Oder einen Code vorschlag ?
Vielen Dank für eure Vorschläge
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 25.03.2015, 16:05
Titel: Re: Selektives Auslesen von Werten einer Bild-Matrix
|
|
Hallo Matlab Voll Nobe,
In welchem Format liegen die Bilder in Matlab vor? Ein 3D-Array, oder ein CELL mit Matritzen?
Zitat: |
Nun möchte ich symetrisch angeordnet aber nur bestimmte ausschnitte des Bildes verwenden (am Besten Kreise), |
Was heißt genau "verwenden"? Was ist "symmetrisch angeordnet"?
Ein mögliches Stichwort ist "MASK".
Gruß, Jan
|
|
|
Matlab Voll Nobe |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 26.03.2015, 11:34
Titel:
|
|
Hallo,
schon mal Danke für die schnelle Antwort.
Also die Daten kommen als Array raus.
Also die symmetische Anordnung bedeutet, das ich eine viereckige Platte habe und über diese Platte 96 Messfelder liegen, die alle gleich groß und gleichweit von einander entfernt sind. Die Messfelder sind alle Kreisförmig (bzw. ein Vieleck), den Durchmesser kann ich in Pixel bestimmen, sowie den Abstand zu einander zueinander.
Jetzt hätte ich gerne, dass mir für jedes "Bild" Matlab mir diese 96-Felder extrahiert, den Mittelwert je Messfeld zurück gibt. Und das ganze dann für jedes Aufgenommene Bild. Am Ende sollen die Mittelwerte pro Feld eine Zeitreihe ergeben.
Beschreibung: |
|
Download |
Dateiname: |
Unbenannt.JPG |
Dateigröße: |
162.06 KB |
Heruntergeladen: |
471 mal |
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 26.03.2015, 13:23
Titel:
|
|
Hallo Matlab Voll Nobe,
Zitat: |
Also die Daten kommen als Array raus. |
Alle Matlab-Daten-Typen werden als "Array" bezeichnet. Welche Class und welche Size haben die Daten?
Bist Du mit der Suche nach "Matlab mask image" schon weiter gekommen?
Gruß, Jan
|
|
|
Matlab Voll Nobe |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 26.03.2015, 14:48
Titel:
|
|
Mit der Suche bin ich noch nicht viel weiter gekommen.
Bin nur über die Funktion gestolpert poly2mask
(http://matlab.izmiran.ru/help/toolbox/images/poly2mask.html)
bzw. roipoly (http://de.mathworks.com/help/images/ref/roipoly.html)
Wobei roipoly danach aussieht als würde man per Hand definieren wo die polygonale region liegt.
Also therm ist meine Variable wo alles drinn ist.
Meinst du mit Array typ das, oder wie der Array Aufgebaut ist: ?
>> ischar therm
ans = 1
--> character array ?
size sollte die Anzahl der Pixel sein ? 640*480 ?
Beschreibung: |
|
Download |
Dateiname: |
Werte Pro Pixel.JPG |
Dateigröße: |
211.89 KB |
Heruntergeladen: |
488 mal |
Beschreibung: |
Beispiel Bild zu Beispiel Matrix |
|
Download |
Dateiname: |
Unbenannt.PNG |
Dateigröße: |
204.9 KB |
Heruntergeladen: |
560 mal |
|
|
|
Hubertus |
Forum-Meister
|
|
Beiträge: 1.034
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: Hamburg
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 26.03.2015, 16:01
Titel:
|
|
Moin,
die einfachste Version wäre doch, das Array in gleichgroße Ausschnitte aufzuteilen, Beginnend oben links, wie z.B.
Oder was passt daran nicht?
Grüße - Hubertus
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 26.03.2015, 23:33
Titel:
|
|
Hallo Matlab Voll Nobe,
Ich meine diesen Satz:
Zitat: |
Meine über Matlab eingelesenen Daten (in Kelvin) erhalte ich am Ende in (n) Matrices. |
Das Format, in dem die Input-Daten vorliegen, ist der Ausgangspunkt für eine Problem-Lösung. Diese n Matritzen müssen ja irgendwie in Matlab vorliegen, vielleicht in einem CELL-Array, oder in einem 3D-Array vom Typ UINT8. Dass es ein CHAR ist, halt ich für unwahrscheinlich.
Gruß, Jan
|
|
|
Matlab Voll Nobe |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.03.2015, 11:10
Titel:
|
|
Hallo,
prinzipiell kann ich doch aber schon mit -ischar feststellen ob mein Array ein CHAR ist ? und ob es ein CELL Aray ist kann ich doch testen mit -iscellstr ?
Dann kommt aber raus ans=0 für iscellstr und für ischar ans=1
Viele Grüße
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 27.03.2015, 21:58
Titel:
|
|
|
|
|
Hallo Matlab Voll Nobe,
Mit ISCELL stellt man fest, ob eine Variable den Type CELL hat. ISCELLSTR bedeutet darüber hinaus, dass die Elemente des CELLs Strings (also CHAR-Vektoren) sind.
"therm" ist also ein CHAR, aber welchen Inhalt hat diese Variable denn? Das könnte der File-Name sein, aber ich kann mir kaum vorstellen, dass der Inhalt der Bilder darin gespeichert ist. Es wäre zumindest sehr unpraktisch, Bilder als CHAR-Vektoren zu speichern.
Verstehst Du das Problem? Es ist noch nicht klar beschrieben, was diese Sätze bedeuten:
Zitat: |
Ich habe hunderte (n) Bilder einer Infrarot-Kamera (Bildsequenz)
Meine über Matlab eingelesenen Daten (in Kelvin) erhalte ich am Ende in (n) Matrices. |
Du hast n Matrizen - aber in welcher Form? Stehen die wirklich in "therm" drin?
Bisher muss man noch zu viel erraten für ein hilfreiche Antwort. Versuche nochmal das Problem zu beschreiben. Die Bedeutung der Zahlen, z.B. ob das Kelvin oder Dollar sind, spielt keine Rolle.
Gruß, Jan
|
|
|
|
|
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.
|
|