DFT e segnali infiniti: incomprensione sull'Overlap Save
Ciao a tutti 
Volevo gentilmente chiedervi qualche chiarimento sul metodo Overlap Save per eseguire convoluzione tra una risposta all'impulso h(n) lunga M, quindi finita, e un segnale x(n) infinito.
Innanzitutto ho capito che devo suddividere il segnale x(n) in tanti segnali [tex]x_{i}(n)[/tex] di lunghezza L (solitamente mi pare di capire L > M), dopodichè a seconda se scelgo Overlap Add o Overlap Save opero in maniera diversa.
Nel metodo Overlap Save allungo h(n) con L-M zeri ed eseguo la convoluzione, ottenendo una "convoluzione circolare parziale" in cui i primi M-1 campioni sono errati e gli altri giusto, ovvero corrispondono alla convoluzione lineare.
Ora non riesco però a capire perchè i primi M-1 sono errati...se io prendo supponiamo [tex]x_{0}(n)[/tex] e faccio la convoluzione con h(n) allungata, ribalto h(n) e inizio a spostarla, moltiplicare e sommare.
Non riesco a capire però perchè i primi M-1, ovvero in pratica il tempo che la h(n) ribaltata "entra tutta" dentro la [tex]x_{0}(n)[/tex], siano sbagliati...

Volevo gentilmente chiedervi qualche chiarimento sul metodo Overlap Save per eseguire convoluzione tra una risposta all'impulso h(n) lunga M, quindi finita, e un segnale x(n) infinito.
Innanzitutto ho capito che devo suddividere il segnale x(n) in tanti segnali [tex]x_{i}(n)[/tex] di lunghezza L (solitamente mi pare di capire L > M), dopodichè a seconda se scelgo Overlap Add o Overlap Save opero in maniera diversa.
Nel metodo Overlap Save allungo h(n) con L-M zeri ed eseguo la convoluzione, ottenendo una "convoluzione circolare parziale" in cui i primi M-1 campioni sono errati e gli altri giusto, ovvero corrispondono alla convoluzione lineare.
Ora non riesco però a capire perchè i primi M-1 sono errati...se io prendo supponiamo [tex]x_{0}(n)[/tex] e faccio la convoluzione con h(n) allungata, ribalto h(n) e inizio a spostarla, moltiplicare e sommare.
Non riesco a capire però perchè i primi M-1, ovvero in pratica il tempo che la h(n) ribaltata "entra tutta" dentro la [tex]x_{0}(n)[/tex], siano sbagliati...
Risposte
"Dani_88":
Ora non riesco però a capire perchè i primi M-1 sono errati...se io prendo supponiamo [tex]x_{0}(n)[/tex] e faccio la convoluzione con h(n) allungata, ribalto h(n) e inizio a spostarla, moltiplicare e sommare.
Non riesco a capire però perchè i primi M-1, ovvero in pratica il tempo che la h(n) ribaltata "entra tutta" dentro la [tex]x_{0}(n)[/tex], siano sbagliati...
Sono sbagliati perché devi tener conto che la convoluzione è circolare, quindi gli ultimi campioni di [tex]x_{0}(n)[/tex] convoluti con [tex]h(n)[/tex] si fanno sentire sui primi campioni di [tex]x_{0}(n)[/tex], inficiando così la correttezza dei primi [tex]M-1[/tex] campioni della convoluzione.
si dunque mi è chiara il concetto però non riesco diciamo a vederlo...diciamo che considerando [tex]x_{1}(n)[/tex] come un periodo di [tex]\widetilde{x}_{1}(n)[/tex] se io vado a fare la convoluzione tra le sequenze periodiche [tex]\widetilde{x}_{1}(n)[/tex] e [tex]\widetilde{h}(n)[/tex] in pratica ho che i campioni di x(n) sono presenti anche prima di 0 diciamo.
Quindi ribaltando h(n) inizio a moltiplicare e sommare roba che in realtà non dovrebbe esserci, ovvero la h(n) per gli ultimi campioni di x(n) che essendo periodica sono "subito prima di 0", corretto?
Non so quanto posso essere stato chiaro xrò non riesco a spiegarmi meglio xD xD però credo di aver capito...
Quindi ribaltando h(n) inizio a moltiplicare e sommare roba che in realtà non dovrebbe esserci, ovvero la h(n) per gli ultimi campioni di x(n) che essendo periodica sono "subito prima di 0", corretto?
Non so quanto posso essere stato chiaro xrò non riesco a spiegarmi meglio xD xD però credo di aver capito...
Sì, sei stato chiaro, è corretto quello che dici: avviene proprio così.