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

Bild nivellieren bzw. Untergrund abziehen

 

m4tl4b
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 11.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.03.2012, 11:42     Titel: Bild nivellieren bzw. Untergrund abziehen
  Antworten mit Zitat      
Hallo zusammen!

Bei der Beschreibung der Image Processing Toolbox steht, dass man mit Matlab ein Bild nivellieren kann, siehe hier:



Genau das würde ich auch gerne machen, also ich hab ein Bild wie oben rechts und möchte gerne den Untergrund abziehen um ein Bild wie unten links zu erhalten.
Bisher sieht mein Bild so aus:

.

Ich habe also mit meshgrid Matrizen für die x- und y-Achse erzeugt (Variablen X und Y) und habe die Messwerte via mesh als Farbe aufgetragen (Matrix Z). Hat jemand eine Idee, wie man das Nivellieren bewerkstelligen könnte?

Danke schon mal im Voraus!
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: 22.03.2012, 12:11     Titel:
  Antworten mit Zitat      
Moin,

wenn man deinen Bildinhalt betrachtet gibt es mehrere Möglichkeiten. Z.B.
hier:

http://www.itseite.de/files/cg3/Loesung%209.pdf

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

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 11.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.03.2012, 13:32     Titel:
  Antworten mit Zitat      
Danke für die Antwort! Diese Sache mit den Strukturelementen hatte ich auch schon gefunden, aber das ganze bezieht sich doch - wenn ich das richtig verstehe - auf Bilder?
Im Prinzip will ich ja nur meine Messdaten nivelliert darstellen. Kann ich das ganze also nicht auch auf Datenebene schon machen? Sonst muss ich ja erst mal ein Bild exportieren und dann wieder reinladen?
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: 22.03.2012, 13:52     Titel:
  Antworten mit Zitat      
Mich sollte es wundern, wenn das nicht geht. Kenne mich aber nur in der reinen Bildverarbeitung aus. Zum Hervorheben bestimmter Details gibts es darin jede Menge Lösungsansätze und die Umwandlung deiner figure in ein Bild ist schnell gemacht:

Code:
frame=getframe(gcf);
I=frame2im(frame):;  % I ist jetzt dein Bild


Vielleicht hilft dir das weiter, bis du eine andere Lösung findest.
Private Nachricht senden Benutzer-Profile anzeigen
 
m4tl4b
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 11.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.03.2012, 17:42     Titel:
  Antworten mit Zitat      
Ok, hab das mal ausprobiert, dann wird aber der komplette Plot mit Achsen und Rahmen nivelliert, das sieht nicht sonderlich toll aus.

Hab's nun mit einem Polynom-Fit der Daten probiert, das hat schon mal geklappt (siehe den 3D-Plot unten). Jetzt wäre nur noch die Frage, wie man den Fit von den Daten abziehen kann? Ein Fitobjekt ist ja erst mal keine Matrix? Sad

Private Nachricht senden Benutzer-Profile anzeigen
 
m4tl4b
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 11.04.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 23.03.2012, 09:58     Titel:
  Antworten mit Zitat      
Ok, hab's nun hinbekommen:

Code:

fitobject = fit([a,b],c, 'poly22');  % a, b und c(a,b) sind Spaltenvektoren gleicher Länge, der Fit ist quadratisch in a und b
f=feval(fitobject,a,b);  % schreibt die gefitteten Werte in f
z=c-f;  % zieht den Fit von den Daten in c ab und schreibt sie in Vektor z
 


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.