|
|
Bild einlesen, horizontal Spiegeln und ausgeben ! |
|
kurbimitbart |
Forum-Newbie
|
|
Beiträge: 2
|
|
|
|
Anmeldedatum: 01.02.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.02.2016, 15:21
Titel: Bild einlesen, horizontal Spiegeln und ausgeben !
|
|
Hi,
im Studium beschäftigen wir uns grade mit MATLab und haben eine Aufgabe gestellt bekommen, bei der wir eine PNG Datei einlesen sollen, dann über eine doppelte for-Schleife über die Größe der Bild-Matrix spiegeln und anschließend ausgeben.
An für sich nicht so schwer, nur will das bei mir einfach nicht funktionieren.
Jedes mal, wenn das gespiegelte Bild ausgeben werden soll, kommt einfach nur ein schwarzes Bild der selben Größe heraus.
Hier der Code:
Vielen Dank schon mal für die Hilfe !
PS: Ich bin noch relativ neu im MATLab Business, also entschuldigt bitte mein mögliches Unwissen/Unvermögen !
PPS: Ja, wir sollen das über eine leere Matrix machen.
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 01.02.2016, 16:44
Titel: Re: Bild einlesen, horizontal Spiegeln und ausgeben !
|
|
Hallo kurbimitbart,
Du kannst den debugger verwenden um zu beobachten was passiert.
Welchen Type hat die Vraible "original_bild"? Ist das ein Double mit Werten zwischen 0 und 1? Ist es ein 3D-Array? Denn in diesem Fall hast Du ein RGB-Image eingelesen.
Wenn das Bild nur eine 2D-Matrix ist, wie sollen dann die Farben definiert sein?
Siehe:
Die Ausgabe ist eine UINT8 Matrix. Wenn Du Doubles mit den Werten 0 bis 1 in ein UINT8 verwandeltst, sind alle Ergebnisse 0, bis auf die, bei denen der Input exakt 1.0 ist. Und dann wird bei der Ausgabe das Bild schwarz.
Gruß, Jan
|
|
|
kurbimitbart |
Themenstarter
Forum-Newbie
|
|
Beiträge: 2
|
|
|
|
Anmeldedatum: 01.02.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.02.2016, 17:06
Titel:
|
|
Hallo Jan,
im Anhang pack ich dir das "besagte" Bild mal rein.
Hab jetzt zumindest mal verstanden, was im Prinzip passiert und das ich das Bild mit UINT8 auf die gleiche Form bringen muss !
Wenn ich das Bild mit Befehl "Class" überprüfe, kommt auch ohne den Befehl UINT8 der Typ UINT8 raus !
Wenn ich die Matrix des Bildes ausgebe, bekomme ich Zahlen im Bereich von 0-3, obwohl doch nur 0 oder 1 ausgeben werden sollte (wg. UINT8) ?
LG
Beschreibung: |
|
Download |
Dateiname: |
flip.png |
Dateigröße: |
283 Bytes |
Heruntergeladen: |
332 mal |
|
|
|
|
|
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.
|
|