|
|
Interpolation zwischen zwei Werten |
|
.seb |

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 05.05.11
|
 |
|
 |
Wohnort: Neubrandenburg
|
 |
|
 |
Version: 7.7.0 (R2008b)
|
 |
|
|
 |
|
Verfasst am: 06.05.2011, 12:11
Titel: Interpolation zwischen zwei Werten
|
 |
Hallo,
habe folgendes Problem:
Ich habe 2 Datensätze, die als 73x73 Matrizen gespeichert sind. Wir nennen sie data1 und data2.
Nun soll zwischen den Werten interpoliert werden, gespeichert in mehreren Datensätzen (als Annäherung könnte man jetzt erstmal 2 Datensätze nehmen).
Da man nur eindimensionale Daten hat, nämlich die Daten aus data1 und data2, tue mich mit der Interpolation ein bisschen schwer.
Die Interpolation genau in der Mitte wäre 1.1070e10. Das wäre ein Wert eines Beispieldatensatzes.
Wie stelle ich es an, dass ich diese interpolierten Datensätze erhalte ?
Grüße
Sebastian
|
|
|
|
|
Ajax |

Forum-Century
|
 |
Beiträge: 176
|
 |
|
 |
Anmeldedatum: 09.09.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 06.05.2011, 12:37
Titel:
|
 |
Der Begriff "Interpolation" lässt hier ein bißchen Spielraum. Willst du einfach nur den Punkt zwischen deinen gegebenen Datenpunkten ermitteln, also einfach nur den Mittelwert oder soll eine lineare Interpolation stattfinden und du möchtest mehrere Werte berechnen? Für "richtige" Interpolationen z.B. kubisch oder mit Splines bräuchtest du mehr als nur zwei Werte...
|
|
|
.seb |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 05.05.11
|
 |
|
 |
Wohnort: Neubrandenburg
|
 |
|
 |
Version: 7.7.0 (R2008b)
|
 |
|
|
 |
|
Verfasst am: 06.05.2011, 13:13
Titel:
|
 |
Ajax hat Folgendes geschrieben: |
Der Begriff "Interpolation" lässt hier ein bißchen Spielraum. Willst du einfach nur den Punkt zwischen deinen gegebenen Datenpunkten ermitteln, also einfach nur den Mittelwert oder soll eine lineare Interpolation stattfinden und du möchtest mehrere Werte berechnen? Für "richtige" Interpolationen z.B. kubisch oder mit Splines bräuchtest du mehr als nur zwei Werte... |
Nun ich habe jetzt folgendes hingebekommen:
Das wäre im einfachsten Fall der Mittelwert dieser Datensätze. Möchte mehr Zwischenwerte muss ich den Wert bei linspace erhöhen.
Wie bekomme ich es hin, dass er mir meinetwegen 3 Datensätze ermittelt aus der linearen Interpolation?
|
|
|
.seb |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 05.05.11
|
 |
|
 |
Wohnort: Neubrandenburg
|
 |
|
 |
Version: 7.7.0 (R2008b)
|
 |
|
|
 |
|
Verfasst am: 06.05.2011, 16:14
Titel:
|
 |
Hallo,
habe die Interpolation soweit hingekriegt. Hier die einfache Lösung:
Das ist jetzt aus dem Kontext heraus schwierig nachzuvollziehen. Nr_of_layers sind quasi die Anzahl der Datensätze und temp die dreidimensionalen Schichten.
Grüße
Sebastian
|
|
|
.seb |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 05.05.11
|
 |
|
 |
Wohnort: Neubrandenburg
|
 |
|
 |
Version: 7.7.0 (R2008b)
|
 |
|
|
 |
|
Verfasst am: 07.05.2011, 23:03
Titel:
|
 |
Hallo,
damit ich die Interpolation möglichst weich hinbekomme, möchte ich auf die lineare Interpolation verzichten und kubisch u.ä. interpolieren.
Habt ihr Hinweise, wie man eine andere Interpolation zwischen zwei Werten realisieren kann ?
Danke.
Grüße
Sebastian
|
|
|
.seb |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 05.05.11
|
 |
|
 |
Wohnort: Neubrandenburg
|
 |
|
 |
Version: 7.7.0 (R2008b)
|
 |
|
|
 |
|
Verfasst am: 08.05.2011, 19:08
Titel: als Ergänzung
|
 |
Also ich beschreibe mal den technischen Hintergrund dieses ganzen Vorhabens:
Ich habe meinetwegen zwei Bildern A und B, mit jeweils Farbwerten einer Matrix A und B.
Als erste Vereinfachung nehmen wir an, dass wir gerne das Bild haben möchten, was genau der Mitte der Farbwerte der Bildmatrizen entspricht. Das wäre die lineare Interpolation zwischen den Farbwerten eines Pixel der beiden Matrizen (und dann später auf die ganze Matrix bzw. Pixeln bezogen...).
Nun erhalte ich als drittes Bild C, eine Matrix mit den gemittelten Farbwerten von A und B. Soweit ganz gut.
Jetzt habe ich vor, dass ich genau dieses 3. Bild "smoothe", also weichere Farbwerte mathematisch modelliere. Somit würden ich den Eindruck der Interpolation verstärken. Bisher fehlt mir die Idee bzw. der Algorithmus für dieses Vorhaben.
|
|
|
.seb |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 05.05.11
|
 |
|
 |
Wohnort: Neubrandenburg
|
 |
|
 |
Version: 7.7.0 (R2008b)
|
 |
|
|
 |
|
Verfasst am: 08.05.2011, 21:24
Titel:
|
 |
Gut, also ich habe jetzt herausgefunden, dass man mit der filter2-Funktion (in der Image Processing Toolbox) mittels gaussian-Filter die Bildmatrix C glätten kann.
Das Ergebnis ist ein leicht weichgezeichnetes Bild. Da die Auflösung sehr gering ist (72x72) bleiben die einzelnen Pixel trotzdem sichtbar, da man das kleine Bild auf größerer Fläche darstellt.
Wenn jemand noch etwas besseres kennt, gerne hier posten!
Grüße
Sebastian[/code]
|
|
|
.seb |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 31
|
 |
|
 |
Anmeldedatum: 05.05.11
|
 |
|
 |
Wohnort: Neubrandenburg
|
 |
|
 |
Version: 7.7.0 (R2008b)
|
 |
|
|
 |
|
Verfasst am: 08.05.2011, 22:45
Titel:
|
 |
So Leute,
ich habe eine Resampling-Funktion gefunden, die mir die Bilder hochskaliert.
Sie nennt sich imresample und funktioniert wunderbar.
Dadurch erhalte ich geglättete Bilder ohne zusätzliche Toolbox oder Ähnlichen.
[/code]
|
|
|
|
|
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.
|
|