|
|
Sehr Große Bilder speichern |
|
Liddokun |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.09.2010, 19:08
Titel: Sehr Große Bilder speichern
|
|
Hallo
habe mal wieder ein Problem.
Ich habe eine Matrix der Ausmaße 2500 x 128. Diese möchte ich gerne als .jpg oder .png speichern. Jedoch erhalte ich bei den funktionen imshow bzw. imwrite die Fehlermeldung:
Warning: Image is too big to fit on screen; displaying
at 17%
> In imuitools\private\initSize at 73
In imshow at 265
mit imagesc kann ich das Bild zwar Darstellen, es ist jedoch durch die Tatsache das es viel höher als Breiter ist verzerrt dargestellt.
gibt es eine möglichkeit, trotzdem dieses Bild irgendwie darzustellen/ zu speichern ?
hoffe einer hat eine Lösung
|
|
|
|
|
Hubertus |
Forum-Meister
|
|
Beiträge: 1.034
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: Hamburg
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.09.2010, 04:23
Titel:
|
|
Moin Liddokun,
das Bild ist nicht zu groß zum Speichern. Deine Fehlermeldung besagt nur, dass Matlab nur 17 % vom Gesamtbild darstellt, da die Auflösung irgendwas um die 75 dpi ist, dadurch wird das Bild unnatürlich groß aufgebläht. Da Drucker mit in der Regel mit 300 dpi drucken, kannst Du auch das Bild mit 300 dpi speichern, indem Du nach der Variable in imwrite die Größen ....'Resolution',300); einträgst. Dann muß das Bild gespeichert werden. Solltest Du immer noch Probleme haben, liegt ein Problem mit imwrite vor, etwa eine doppelte Funktion irgendwo im Pfad, die Probleme bereitet.
Eine schöne Woche
Hubertus
|
|
|
Liddokun |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.09.2010, 07:23
Titel:
|
|
ok, danke schonmal für die Antwort.
aber irgendwas haut nicht ganz hin, das Bild besteht nur als weißen pixeln, da sollte aber ein bischen mehr drin sein
Die Matrix besteht aus 16bit double zahlen. Muss man das vorher ändern bevor man speichert oder muss man was anderes machen ?
|
|
|
Hubertus |
Forum-Meister
|
|
Beiträge: 1.034
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: Hamburg
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.09.2010, 07:34
Titel:
|
|
Du mußt das Format entweder mit uint8 auf Werte zwischen 0 und 255
wandeln oder wie folgt verfahren: imshow(I,[]).
|
|
|
Liddokun |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.09.2010, 07:36
Titel:
|
|
ok hat sich gerade erledigt ^^
war genau was ich gerade geschrieben habe, musste erst die Daten bei imwrite mit uint8 zu int werten machen. Scheinbar geht double nicht.
vielen Dank für die Hilfe
|
|
|
|
|
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.
|
|