in vielen Anwendungen von Interpolationsverfahren wird behauptet, dass durch Interpolation neue Daten aus bestehenden Daten hinzugewonnen werden. Dies ist aber falsch. Durch Interpolation kann nur der Verlauf einer kontinuierlichen Funktion zwischen bekannten Abtastpunkten abgeschätzt werden. Diese Abschätzung basiert meist auf der Annahme, dass der Verlauf einigermaßen glatt ist, was in den meisten Fällen zu plausiblen Resultaten führt. Die Annahme muss aber nicht notwendigerweise zutreffen. Höhere Frequenzanteile, die bei der Digitalisierung eines Signals aufgrund des Abtasttheorems verloren gegangen sind, können auch durch anschließende Interpolation nicht wieder rekonstruiert werden.
Interpolation einer Linie
In der Bildbearbeitung verwendet man Interpolationsverfahren, um gerasterte Bilder so zu skalieren dass das Bild ansehnlich bleibt (Bildinterpolation). In gängigen Bildbearbeitungssystemen wird häufig die bilineare oder bikubische Interpolation verwendet. Die Interpolationsverfahren sind meist in Form digitaler Filter implementiert (Gauß-Filter, Lanczos-Filter).
zitat ende
was ich mich aber jetzt frage ist wann man eine spline interpolation und wann eine lineare interpolation verwendet?
"Yes, you can use interp2 for cubic spline interpolation of an image. ... However, cubic spline interpolation is more involved, because the proper kernel weights are data-dependent."
Ich frage mich aber unter welchen bedingungen es günstiger ist linear oder mittels spline (linear, kubisch) zu bilder zu interpolieren.Worin besteht der unterschied wenn ich ein bild.jpg linear oder mit splines interpoliere?
nehmen wir an, wir haben ein einfaches Kreuz.dieses soll jetzt interpoliert werden.nun frag ich mich welche methode da besser ist.spline oder linear und wie sich das jeweilige verfahren auf mein bildergebnis auswirkt?
Meine vermutungen:
Linear Interpolation:
Ich nehme mir zwei geeigntet Punkte aus meinem bild kreuz.jpg.z.B den nördlichste und den südlichsten und oder den westlichsten und den östlichsten und verbinde diese durch eine grade,
Spline:
wähle ich die lineare methode. und teil das kreuz in intervalle auf.
z.B
nördlichster Punkt-Mittelpunkt-südlichster Punkt anlog für westen-osten
nun interpoliere ich diese punkte
mein fazit:
Zugegebn kein treffendes Beispie.vll hätte man einen kreis nehmen solln.
=> linear-methode:
Vorteil:einfacher zu realisiern nur ein Interpolationspolynom
nachteil:nicht das ganze kreuz zu sehen
=>spline
Vorteil:4polynome=> ganzes kreuz zu sehen
Nachteil:schwieriger zu realisiern
was meint ihr?
welche methode würdet ihr wann nutzen?
und wie wirkt sich das jeweils auf das bild aus?
Du hast es schon selber richtig erkannt. Es kommt sehr stark auf den Bildinhalt und auf die zu erzielende Vergrößerung an. Die beste Methode ist, die unterschiedllichen Ergebnisse im Vegleich auszuwerten. Ich habe nur Bildinhalte, die in der Spline-Interpolation bessere Ergebnisse aufzeigen. Kenne daher die Methode sehr gut. Eine Regel aufzustellen ist sehr schwierig. Ich muß jedes Beispiel mit den anderen Verfahren vergleichen.
Jetzt bin ich natürlich neugierig auf die Befehlsfolge in Matlab. Kenne mich aber in der Programmierung nicht sehr gut aus und würde mich darüber freuen, wenn hier ein Beispiel den Weg aufzeigt. Der Link von Andreas ist leider nur ein Auszug. Es gibt zwar Beispiele im Netz, die scheinen mir aber mit zusätzlichen Funktionen befrachtet zu sein.
nachdem ich nun das halbe Netz durchgrast habe, auf der Suche nach einer Funktion für "interp2" habe ich nur Unvollständige gefunden, die mir auch noch fehlerhafte Ergebnisse liefern. Ich möchte ein Graubild 100x100 auf 1000x1000 mit der Funktion 'spline' vergrößern. Eine fehlerhafte Funktion sieht so aus:
Da ich mich in der Programmierung nicht so gut auskenne (nutze in der Regel GUI's) bitte ich euch um Hilfe. Was muß ich ändern (bitte mit Code)
Der Vorteil in Matlab ist, dass das Programm S-Spline keine *.tif Bilder verarbeitet (jedenfalls nicht meine Version). Da ist Matlab mal wieder eine Nase voraus.
Herzlichen Dank für eure Hilfe
Viele Grüße
Hubertus
Dein Code ist wirlklich sehr fehlerhaft. Du hast beispielsweise eine Klammer zuviel geschrieben. Und die Funktion double ist auch nicht zu empfehlen. Du meinst wohl eigentlich im2double?!
Ich hab' aber auch nicht geschafft, jedenfalls nicht mit dieser Methode. Was funktioniert hat, ist:
würde es auf's vierfache vergrößern. Ist ein wenig eigenartig.
Zur Frage von zuvor: Klarerweise nutzt man Interpolation dazu, Bilder zu vergrößern, ohne dass sie pixelig aussehen. Die Vergrößerung mittels splines ist dabei natürlich viel schöner, aber auch aufwendiger und für die meisten Anwendungen wohl zu aufwendig. Erst bei sehr starken Vergrößerungen zeigt es deutliche Unterschiede gegenüber linearer Interpolation.
Was die Funktion betrifft, da bin ich ratlos. Warum funktioniert diese Funktion nicht:
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
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.