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

Vergrößerung einer Matrix mit Interpolation

 

28.12.05
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 04.12.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 10:54     Titel: Vergrößerung einer Matrix mit Interpolation
  Antworten mit Zitat      
Ich möchte aus einer Matrix (handles.Lichtstaerke) mit Interpolation (linear) eine größere Matrix erschaffen. 1/x ist die der Faktor um den ich die Matrix vergößern möchte.

Bis jetzt habe ich das so gemacht:

z=1:size(handles.Lichtstaerke,2);
zi=1:x:size(handles.Lichtstaerke,2);
for i=1:size(handles.Lichtstaerke,1);
A(i,:) = interp1(z,handles.Lichtstaerke(i,:),zi,'linear');
end

zneu=1:size(A,1);
zi2=1:x:size(A,1);
for j=1:size(A,2);
Lichtstaerke(:,j) = interp1(zneu,A(:,j),zi2,'linear');

end


So läuft es auch, aber
sobald ich die Funktion in mein Gui einfügen funktioniert sie nicht mehr,
da Matlab die Variable A nicht mehr kennt.

Gibt es noch andere Möglichkeiten meine Matrix zu interpolieren?
Private Nachricht senden Benutzer-Profile anzeigen


dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 11:19     Titel:
  Antworten mit Zitat      
Hallo,

warum verwendest du nicht
Code:
Das sollte um einiges schneller gehen.

Ansonsten liegt dein Problem glaub ich nicht daran, dass deine Interpolationsroutine nicht funktioniert, sondern eher daran, dass irgendwas falsch oder nicht übergeben wird.
Wie genau lautet die Fehlermeldung?
Hast du versucht, handles.Lichtstärke mal auszugeben?

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
28.12.05
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 04.12.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 11:33     Titel:
  Antworten mit Zitat      
Die Fehlermeldung lautet:


??? Undefined function or variable "A".

Error in ==> Sehobjekt>pushbutton_Erkannt_Callback at 408
zneu=1:size(A,1);


Wie müsste denn die Interpolation mit interp2 aussehen?
Private Nachricht senden Benutzer-Profile anzeigen
 
28.12.05
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 04.12.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 14:03     Titel:
  Antworten mit Zitat      
Sorry, das Problem lag wo anders,
ich hatte vergessen das handles.Lichtstaerke zu übergeben.

Wie funktioniert das denn, dass die Interpolation schneller funktioniert?
Wie sieht der Code mit interp2 aus?
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 14:18     Titel:
  Antworten mit Zitat      
Hallo,
Code:
A = magic(10);
B = interp2(A,0); % nichts wird interpoliert
C = interp2(A,1); % zwischen jedem Wert wird einer interpoliert
D = interp2(A,2); % Interpolation wird zwei mal ausgeführt
[xi yi] = meshgrid(1:0.03:size(A,2),1:0.07:size(A,1));
E = interp2(A,xi,yi); % Interpolation mit Stützstellen


MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
28.12.05
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 04.12.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2008, 15:58     Titel:
  Antworten mit Zitat      
Vielen Dank !!!
Das Programm läuft jetzt viel schneller als vorher.
(von ca. 30sec auf 1sec)
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 - 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.