WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Matrix als 3D Bild darstellen?

 

bl4cksheep
Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 22.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.08.2013, 09:16     Titel: Matrix als 3D Bild darstellen?
  Antworten mit Zitat      
Hallo,

ich habe folgendes Problem. Ich habe eine Matrix die ein Bild darstellt (512x1024) In jedem Bildelement ist der Grauwert angegeben.

Diese kann ich auch wunderbar mit
Code:
darstellen.

Ich würde jedoch gerne das Bild in einem 3D-Bild darstellen um die unterschiedlichen Werte als Höhen darstellen zu können für eine bessere Visualisierung.

So ähnlich wie wenn man die Easteregg-Funktion
Code:
aufrufen würde.

Weiß jemand wie ich das schnell und einfach hinkriege?

Mfg bl4cksheep
Private Nachricht senden Benutzer-Profile anzeigen


Hubertus
Forum-Meister

Forum-Meister


Beiträge: 1.034
Anmeldedatum: 08.01.09
Wohnort: Hamburg
Version: ---
     Beitrag Verfasst am: 29.08.2013, 10:11     Titel:
  Antworten mit Zitat      
Moin,

warum änderst du nicht einfach das Bild im Beispiel "penny"?
Wie du aus der Formatierung erkennst, sind imagesc(image) zwei Matlab-Funktionen. Du sollst für image eine andere Bez. wählen. Es geht zwar, könnte aber später Probleme machen.

Viele Grüße - Hubertus
Private Nachricht senden Benutzer-Profile anzeigen
 
bl4cksheep
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 22.07.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.08.2013, 11:06     Titel:
  Antworten mit Zitat      
Das habe ich zwar probiert aber ich schaffe es nur mir die Konturen anzeigen zu lassen.

Beim Debuggen habe ich festgestellt, dass die Funktion pcolor(P) in penny nichts zurückgibt. bzw nichts anzeigt.

Jetzt habe ich es folgendermaßen versucht

Code:


x = 1:1024;
y = 1:512;
z = image; %ja die genaue Bezeichnung des Bildes ist jetzt mal irrelevant wobei image eine Matrix 512x1024 ist.

surf(x,y,z);

 


Er zeichnet mir jedoch nur ein leeres Koordinatensystem ein wobei die Achsen schon stimmen.

Sind es vielleicht bloß zuviele Informationen und er kann keine Fläche zwischen den unterschiedlichen Daten aufspannen? Es müsste ja ziemlich viele spitzen und ähnliches geben oder?


edit: Habe es mehr oder weniger gelöst Smile
Mein Bild hatte das Format
512x1024 uint16

Das habe ich nun mit image_new = double(image); zu einem Format geändert,dass mit surf darstellbar ist.

Danke dennoch Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.