|
benja |
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 30.09.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 30.09.2010, 09:53
Titel: Sehr großes Bild laden
|
|
Hallo zusammen,
ich bin neu in diesem Forum und auch in Matlab und habe ein Problem - wer hätte es gedacht.
Ich arbeite mit sehr großen Satellitenbildern und möchte diese gerne in Matlab einladen. Das Bild, das ich gerade nicht eingeladen bekomme hat die dimensionen
zeilen = 5378
spalten = 1053
bänder/kanäle = 125
also 707879250 integer werte.
Das versuche ich folgendermaßen einzulesen:
im=multibandread('...datei...',[5378 1053 125],'uint8', 0, 'bsq', 'ieee-le');
Leider kommt die Fehlermeldung:
??? Error using ==> double
Out of memory. Type HELP MEMORY for your options.
Ich habe den Morgen damit verbracht herauszufinden, wie man so große Bilder einläd, habe aber nichts gefunden. )-:
Über Hilfe wäre ich sehr Dankbar!!!
Gruß,
Benja
|
|
|
|
|
aj.geissler |
Forum-Guru
|
|
Beiträge: 251
|
|
|
|
Anmeldedatum: 26.11.07
|
|
|
|
Wohnort: Seeheim-Jugenheim
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 30.09.2010, 10:40
Titel:
|
|
Hallo Benja,
die ca. 707 Millionen Integer-Werte entsprechen in deinem Fall ca. 675 MByte.
Sicherlich könnte man aus Hard- und Software (Einstellungen RAM-Nutzung, etc.) noch mehr herausholen, dennoch wirst Du - beim heutigen Stand der PC-Technik im kommerziellen Bereich - immer grenzwertig arbeiten.
Mit den Bildern möchtest Du höchstwahrscheinlich irgendwelche Auswertungen durchführen. Daher würde ich Dir empfehlen, die Bilder partiell, d.h. regionenweise einzulesen (nur einige Zeilen und Spalten, vielleicht auch nicht alle Kanäle ?).
Falls Nachbarschaftsbeziehungen zwischen Zeilen und Spalten benötigt werden, muss halt überlappend eingelesen werden (z.B. Zeile 1-100, 98- 202, 198-402 etc.)
Grüße
Andreas
_________________
Andreas Geißler
|
|
|
benja |
Themenstarter
Forum-Newbie
|
|
Beiträge: 4
|
|
|
|
Anmeldedatum: 30.09.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 30.09.2010, 11:16
Titel:
|
|
Hallo Andreas,
danke für deine Antwort. Ich habe das auch schon in Betracht gezogen. Allerdings weiß ich nicht, wie ich das Bild gestückelt einladen kann. Hast du da einen Tip? Geht das mit im multibandread, oder brauche ich da eine andere Funktion?
Danke schonmal!
Ben
|
|
|
aj.geissler |
Forum-Guru
|
|
Beiträge: 251
|
|
|
|
Anmeldedatum: 26.11.07
|
|
|
|
Wohnort: Seeheim-Jugenheim
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 30.09.2010, 14:41
Titel:
|
|
Hi,
wenn man das Datenformat der Bilder kennt, kann man relativ leicht mit Hilfe von fread, fseek und fopen diese Aufgaben erledigen.
Ist das Format der Satellitenbilder offen gelegt bzw. Dir bekannt ?
Grüße
Andreas
_________________
Andreas Geißler
|
|
|
|
|
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.
|
|