Newsgroup: it.comp.programmare.win32
Titolo: Interpolazione

Devo ricostruire un segnale campionato, ma non so in che modo posso fare l'
interpolazione dei 256 punti che ho a disposizione.
Ovviamente non mi basta unire i punti con delle rette, ma devo utilizzare
un' approssimazione pių precisa rispetto all' interpolazione lineare.
Penso che si possano usare le spline di Bezier ma non so come calcolarne i
punti di controllo.
Qualcuno mi potrebbe dare una mano?
Ciao Grazie.


Vai qua, c'e' anche il codice in C:
http://astronomy.swin.edu.au/~pbourke/curves/bezier/
Maurus

 un' approssimazione più precisa rispetto all' interpolazione lineare.
Occorrerebbe sapere lo scopo della ricostruzione, e di che segnale si
tratta.
Supponiamo per visualizzare il segnale e che questo sia audio.
Devi allora ottenere un campione per ogni pixel orizzontale.
Quindi devi aumentare il numero di campioni.
I nuovi campioni che ci metti possono anche essere degli zeri, anzi
spesso
si mettono proprio degli zeri.
Quello che comunque dopo devi fare è filtrare passa basso
con una frequenza pari a metà della frequenza di campionamento
originale.
Quindi ti servono algoritmi FIR o IIR. Roba da DSP, ma che ti
assicuro si possono benissimo fare anche in VB, in C++ e meglio ancora
in assembler.
Buon lavoro.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Buon lavoro.
anche a te se vuoi passare dispositivi numerici per l'elaborazione dei
segnali

La cosa più deducibile dal tuo messaggio è 
che hai passato male la notte. Non disperarti.
Auguri.


 Auguri.
Questo e'uno spazio in cui la gente cerca di darsi una mano. Se permetti il
fatto che arrivi un Pinco Pallo e si metta a parlare di cose che non
conosce o che ha sentito dire al bar fa alterare l' utenza
hai il diritto all' ultima parola, se lo consideri necessario, da parte mia
considero chiusa la questine

 considero chiusa la questine
Paura. E poi?
Rilassati e rifletti. Stai sbagliando qualcosa.
Ciao.


Rilassati e rifletti. Stai sbagliando qualcosa.
forse a prendere sul serio la domanda di una persona
Ciao
Ermando

 Ciao
Ciao


 mando)
Grazie per la "dritta".
  Di free non ho trovato nulla, ma sembra che valga la pena di comprare il
libro.
Ciao.

 Ciao Grazie.
Ho dei dubbi su quello che vuoi fare,
in generale le splines ti permetto di creare curve in uno spazio a
partire
da una serie di punti sparsi, ma:
- tu non hai dei punti sparsi hai semplicemente dei punti dove i valori
  delle x sono intervallati regolarmente (se campioni uniformemente),
quindi
  interpolare diventa piu' semplice.
- le spline di Bezier tracciano una curva che 'non' passa per i punti 
  dati in input, ma questi sono solo punti di controllo. Invece tu devi
  tracciare un segnale dove gli unici punti che conosci, e dove deve
passare
  la curva sono proprio i punti in input.
- Che segnale devi "ricostruire"? qual'e' il motivo per cui devi
interpolare?
  Mi ricordo dai tempi delle scuole che un campionamento finiva con
  l'applicazione di un filtro (un primo filtro lo devi mettere per colpa
  di Shannon) e quindi il segnale di uscita dipendera' da quest'ultimo.
Se ho detto delle cazzate fai finta di nulla.


 passare   la curva sono proprio i punti in input.
Hai ragione Giovanni, le spline di bezier sono curve di approssimazione, le
spline cubiche sono di interpolazione.
Il problema č che non conosco altre api per il disegno di spline, e non so
neppure se ne esistono delle altre.
Quello che cerco di fare č di unire i punti estremi delle spline B. ai punti
conosciuti e di calcolarmi gli altri due punti di controllo in modo da
deformare correttamente la mia spline ed adattarla a quello che dovrebbe
essere il risultato dell' interpolazione dei campioni.
Probabilmente fare ciň č come voler passare da S. Francisco per andare a
Roma, potrei fare la DFT e filtrare come hai detto tu e pinco pallo ma credo
che esistano delle strade ancora  piů brevi.
Mi sembra strano che un algoritmo cosi importante non sia facilmente
reperibile.
ciao.


 mando)
Penso che sia qua, ma non sono certo:
http://www.ulib.org/webRoot/Books/Numerical_Recipes/
Ad ogni buon conto, non entro nel merito della discussione ma ricordo
che per ricostruire un segnale PCM in maniera corretta non si puo` usare
un'interpolazione. E` necessario correlarlo con un impulso a energia
finita con forma particolare, ad esempio sinc(); non ho idea di dove si
potrebbe trovare un algoritmo del genere (probabilmente in posti tipo
www.dspguru.com
 o giu` di li`), ma di certo non c'entra con nessun tipo
di spline.
Poi ovviamente tutto dipende da cio` che te ne farai del segnale
ricostruito; se lo devi solo visualizzare va bene lo stesso, se devi
farci qualsiasi cosa piu` complessa no.
--
Lorenzo