Vensterfunctie: verschil tussen versies

Uit Wikipedia, de vrije encyclopedie
Verwijderde inhoud Toegevoegde inhoud
ZéroBot (overleg | bijdragen)
k r2.7.1) (Robot: toegevoegd: ca, da, de, es, fr, it, ja, pl, ru, zh
kGeen bewerkingssamenvatting
Regel 1: Regel 1:
Een '''vensterfunctie''', in het engels ''window function'', ''apodization function'' of ''tapering function'', is een wiskundige [[functie_(wiskunde)|functie]] die nul is buiten een bepaald interval. Zo wordt een functie die nul is buiten een interval, en een constante waarde heeft binnen het interval een ''rechthoekige vensterfunctie'' of ''rechthoekig venster'' genoemd, gezien de vorm die dit venster heeft. Wanneer een ander signaal met de vensterfunctie puntsgewijs wordt vermenigvuldigd is het produkt nul buiten het interval van de vensterfunctie. Vandaar de benaming ''venster'': men kijkt naar een ander signaal door een ''venster'', waardoor men als het ware een stuk uit het volledige signaal knipt. Indien de vorm binnen het bereik van de vensterfunctie niet constant is, wordt het uitgeknipte stuk van het oorspronkelijk signaal ook nog eens gewijzigd. Venstersfuncties worden onder meer gebruikt in alle analoge en digitale toepassingsgebieden van [[signaalverwerking]], gevorderde varianten van de [[fouriertransformatie]], [[digitale beeldbewerking|beeldverwerking]] en [[digitale spraakverwerking]]. Ook analoge en digitale filters kunnen op basis van venstersfuncties worden ontworpen.
Een '''vensterfunctie''', in het Engels ''window function'', ''apodization function'' of ''tapering function'', is een wiskundige [[functie_(wiskunde)|functie]] die nul is buiten een bepaald interval. Zo wordt een functie die nul is buiten een interval, en een constante waarde heeft binnen het interval een ''rechthoekige vensterfunctie'' of ''rechthoekig venster'' genoemd, gezien de vorm die dit venster heeft. Wanneer een ander signaal met de vensterfunctie puntsgewijs wordt vermenigvuldigd is het product nul buiten het interval van de vensterfunctie. Vandaar de benaming ''venster'': men kijkt naar een ander signaal door een ''venster'', waardoor men als het ware een stuk uit het volledige signaal knipt. Indien de vorm binnen het bereik van de vensterfunctie niet constant is, wordt het uitgeknipte stuk van het oorspronkelijk signaal ook nog eens gewijzigd.
Venstersfuncties worden onder meer gebruikt in alle analoge en digitale toepassingsgebieden van [[signaalverwerking]], gevorderde varianten van de [[fouriertransformatie]], [[digitale beeldbewerking|beeldverwerking]] en [[digitale spraakverwerking]]. Ook analoge en digitale filters kunnen op basis van venstersfuncties worden ontworpen.


==Effecten van het gebruik==
==Effecten van het gebruik==


[[Bestand:Leakage.jpg|thumb|right|Effecten van windowing van 5 seconden op de Fouriertransformatie van een sinus van 5.26 Hz: groen: werkelijk spectrum op 5.26 Hz. Rood:convolutie van het sinusspectrum en het spectrum van het gebruikte rechthoekig venster. Blauw: uiteindelijk spectrum dat Fouriercoëfficiënten bevat op de veelvouden van 0.2Hz. Omdat de werkelijke frequentie van de sinus hiermee niet samenvalt zal leakage optreden.]]
[[Bestand:Leakage.jpg|thumb|right|Effecten van windowing van 5 seconden op de Fouriertransformatie van een sinus van 5,26 Hz: groen: werkelijk spectrum op 5,26 Hz. Rood:convolutie van het sinusspectrum en het spectrum van het gebruikte rechthoekig venster. Blauw: uiteindelijk spectrum dat Fouriercoëfficiënten bevat op de veelvouden van 0,2Hz. Omdat de werkelijke frequentie van de sinus hiermee niet samenvalt zal leakage optreden.]]


De nevenstaande figuur illustreert de onderstaande uitleg concreet voor een sinus van 5.26 Hz die wordt waargenomen met een rechthoekig venster van 5 seconden.
De nevenstaande figuur illustreert de onderstaande uitleg concreet voor een sinus van 5,26 Hz die wordt waargenomen met een rechthoekig venster van 5 seconden.
De [[fouriertransformatie]] van een oneindig lange sinus bestaat uit één enkele piek op de eigen [[frequentie]]. Een wiskundig perfecte sinus bevat immers enkel zijn eigen frequentie. Deze piek, groen op bijgaande figuur, is wiskundig voor te stellen als een [[Diracfunctie]] op die precieze frequentie. Wanneer echter (bijvoorbeeld) een rechthoekig venster op de sinus wordt toegepast is de fouriertransformatie, wegens de [[convolutiestelling]] de [[convolutie]] van de [[fouriertransformatie]] van de sinus en de [[fouriertransformatie]] van het venster. De convolutie van een [[Diracfunctie]] en een andere functie is op zijn beurt een verschuiving van de andere functie tot op de plaats van de [[Diracfunctie]]. Dit is een eigenschap van de [[Diracfunctie]]. Deze convolutie is de golvende functie in het rood op de figuur.
De [[fouriertransformatie]] van een oneindig lange sinus bestaat uit één enkele piek op de eigen [[frequentie]]. Een wiskundig perfecte sinus bevat immers enkel zijn eigen frequentie. Deze piek, groen op bijgaande figuur, is wiskundig voor te stellen als een [[Diracfunctie]] op die precieze frequentie. Wanneer echter (bijvoorbeeld) een rechthoekig venster op de sinus wordt toegepast is de fouriertransformatie, wegens de [[convolutiestelling]] de [[convolutie]] van de [[fouriertransformatie]] van de sinus en de [[fouriertransformatie]] van het venster. De convolutie van een [[Diracfunctie]] en een andere functie is op zijn beurt een verschuiving van de andere functie tot op de plaats van de [[Diracfunctie]]. Dit is een eigenschap van de [[Diracfunctie]]. Deze convolutie is de golvende functie in het rood op de figuur.
De [[fouriertransformatie]] van een sinus, genomen door een rechthoekig venster, is dus een [[sinc functie]] met haar maximum op de frequentie van de sinus (en een tweede sinc-functie op de negatieve frequentie). De [[fouriertransformatie]] van een rechthoekig tijdsignaal is immers een [[sinc functie]] in frequentie.
De [[fouriertransformatie]] van een sinus, genomen door een rechthoekig venster, is dus een [[sinc-functie]] met haar maximum op de frequentie van de sinus (en een tweede sinc-functie op de negatieve frequentie). De [[fouriertransformatie]] van een rechthoekig tijdsignaal is immers een [[sinc-functie]] in frequentie.


Indien:
Indien:
Regel 30: Regel 32:




Daarboven komt nog het feit dat de [[fouriertransformatie]] in de praktijk wordt berekend door middel van een [[Fast Fourier transform|FFT]], en deze berekent de [[fouriertransformatie]] in een discrete vorm: het resultaat van de FFT bevat enkel informatie op de veelvouden van de grondfrequentie van de meting, en deze is één gedeeld door de duur van de meting. Een meting van 5 seconden levert dus enkel fouriercoëfficiënten op 0.2Hz, 0.4Hz, 0.6Hz... In het algemeen zullen deze ''zichtbare'' frequenties, de blauwe pieken op de figuur, niet samenvallen met de piek van de getransformeerde van het venster, en wordt er dus geen unieke piek gemeten, maar een gans bos van pieken die hun maximum bereiken in de buurt van de werkelijke frequentie van de te meten sinus. De maximale piek zal echter lager zijn dan de werkelijke sterkte van de sinus.
Daarboven komt nog het feit dat de [[fouriertransformatie]] in de praktijk wordt berekend door middel van een [[Fast Fourier transform|FFT]], en deze berekent de [[fouriertransformatie]] in een discrete vorm: het resultaat van de FFT bevat enkel informatie op de veelvouden van de grondfrequentie van de meting, en deze is één gedeeld door de duur van de meting. Een meting van 5 seconden levert dus enkel fouriercoëfficiënten op 0,2Hz, 0,4Hz, 0,6Hz... In het algemeen zullen deze ''zichtbare'' frequenties, de blauwe pieken op de figuur, niet samenvallen met de piek van de getransformeerde van het venster, en wordt er dus geen unieke piek gemeten, maar een gans bos van pieken die hun maximum bereiken in de buurt van de werkelijke frequentie van de te meten sinus. De maximale piek zal echter lager zijn dan de werkelijke sterkte van de sinus.


Alles bij elkaar wordt in het Fourierspectrum een sinus dus vervangen door de [[Fouriertransformatie]] van het gebruikte venster, en wordt dit dan nog eens bemonsterd op de zichtbare frequenties van de Fouriertransformatie. Als de werkelijke frequentie van de sinus niet met een die zichtbare frequenties samenvalt zal de [[fouriertransformatie]] van het gebruikte venster dus niet in zijn maximum worden bemonsterd.
Alles bij elkaar wordt in het Fourierspectrum een sinus dus vervangen door de [[Fouriertransformatie]] van het gebruikte venster, en wordt dit dan nog eens bemonsterd op de zichtbare frequenties van de Fouriertransformatie. Als de werkelijke frequentie van de sinus niet met een die zichtbare frequenties samenvalt zal de [[fouriertransformatie]] van het gebruikte venster dus niet in zijn maximum worden bemonsterd.


Een (rechthoekig venster) gebruiken zal dus aanleiding geven tot de volgende fouten:
Een rechthoekig venster gebruiken zal dus aanleiding geven tot de volgende fouten:
* ''Amplitudefout'': De amplitude wordt als te laag gemeten. Deze fout kan in het slechtste geval oplopen tot 36% te weinig, of dus 3.9dB te laag
* ''Amplitudefout'': De amplitude wordt te laag gemeten. Deze fout kan in het slechtste geval oplopen tot 36% te weinig, of dus 3,9dB te laag
* ''Resolutiefout'': De werkelijke frequentie van de sinus is niet meer naukeurig te meten, maar ligt tussen de twee hoogste pieken. Ook kan het voorkomen dat twee sinussen met lichtjes verschillende frequentie niet meer afzonderlijk te zien zijn, maar één gezamelijke piek in het spectrum creëren.
* ''Resolutiefout'': De werkelijke frequentie van de sinus is niet meer nauwkeurig te meten, maar ligt tussen de twee hoogste pieken. Ook kan het voorkomen dat twee sinussen met lichtjes verschillende frequentie niet meer afzonderlijk te zien zijn, maar één gezamelijke piek in het spectrum creëren.
* ''Leakage'': De nabijgelegen zichtbare frequenties hebben niet-nulle amplitude, die er in realiteit niet is, maar die wel zwakkere sinussen in het signaal kunnen overstemmen. Dit effect wordt aangeduid met de engelse benaming ''leakage'', het weglekken van de energie van de werkelijke niet zichtbare frequentie naar nabijgelegen zichtbare frequenties.
* ''Leakage'': De nabijgelegen zichtbare frequenties hebben niet-nulle amplitude, die er in realiteit niet is, maar die wel zwakkere sinussen in het signaal kunnen overstemmen. Dit effect wordt aangeduid met de Engelse benaming ''leakage'', het weglekken van de energie van de werkelijke niet zichtbare frequentie naar nabijgelegen zichtbare frequenties.


Het gebruik van andere vensters probeert aan deze fouten iets te doen, maar geen enkel venster kan alle fouten samen verminderen. In het algemeen worden de amplitude fout en leakage samen kleiner (of groter) naargelang de resoultiefout groter (of kleiner) wordt.
Het gebruik van andere vensters probeert aan deze fouten iets te doen, maar geen enkel venster kan alle fouten samen verminderen. In het algemeen worden de amplitudefout en leakage samen kleiner (of groter) naargelang de resolutiefout groter (of kleiner) wordt.


==Kwaliteitscriteria==
==Kwaliteitscriteria==
Regel 55: Regel 57:
* ''Side lobe roll off'' : geeft aan met hoeveel db/decade het niveau van de zijlobes zakt. Een decade is een frequentietoename met een factor tien. Samen met het niveau van de hoogtse zijlobe bepaalt dit criterium in welke mate zwakke sinussen mogelijk zullen worden overstemd door de leakage van sterke sinussen die in de buurt liggen. Indien de frequentieas logaritmisch wordt gekozen is de side lobe roll off op de figuur een constant dalende lijn.
* ''Side lobe roll off'' : geeft aan met hoeveel db/decade het niveau van de zijlobes zakt. Een decade is een frequentietoename met een factor tien. Samen met het niveau van de hoogtse zijlobe bepaalt dit criterium in welke mate zwakke sinussen mogelijk zullen worden overstemd door de leakage van sterke sinussen die in de buurt liggen. Indien de frequentieas logaritmisch wordt gekozen is de side lobe roll off op de figuur een constant dalende lijn.
== Types van Vensters ==
== Types van vensters ==


Terminologie''':'''
Terminologie''':'''
*<math>N\,</math> is de breedte in netpunten van de discrete vorm van het venster. Meestal is dat in de praktijk een mach van 2 zodat het [[Fast Fourier Transform]] algoritme in optimale omstandigheden kan worden toegepast.
*<math>N\,</math> is de breedte in netpunten van de discrete vorm van het venster. Meestal is dat in de praktijk een macht van 2 zodat het [[Fast Fourier Transform]]-algoritme in optimale omstandigheden kan worden toegepast.
*<math>n\,</math> is een gehele parameter die loopt van 0 tot N-1. De vensters worden dus beschreven op een internal [0..N-1] zodat het maximum van de vensters ruwweg ligt n = N/2
*<math>n\,</math> is een gehele parameter die loopt van 0 tot N-1. De vensters worden dus beschreven op een internal [0..N-1] zodat het maximum van de vensters ruwweg ligt n = N/2


Regel 68: Regel 70:
Het rechthoekig venster is ook gekend onder de naam [[Dirichlet]]-venster. Het snijdt gewoon een stuk van lengte N uit een digitaal signaal zonder dat de sampelwaarden van het signaal worden gewijzigd. Dit leidt in veel gevallen tot discontinuïteiten aan de randen van het interval waardoor het venster zeer slecht scoort op de criteria betreffende de hoogte zijlobe (slechts 13 onder de centrale lobe). Omdat de side lobe roll off slechts 20 db met decade bedraagt kampt dit venster met ernstige leakage. Qua resolutie scoort dit venster wel heel goed.
Het rechthoekig venster is ook gekend onder de naam [[Dirichlet]]-venster. Het snijdt gewoon een stuk van lengte N uit een digitaal signaal zonder dat de sampelwaarden van het signaal worden gewijzigd. Dit leidt in veel gevallen tot discontinuïteiten aan de randen van het interval waardoor het venster zeer slecht scoort op de criteria betreffende de hoogte zijlobe (slechts 13 onder de centrale lobe). Omdat de side lobe roll off slechts 20 db met decade bedraagt kampt dit venster met ernstige leakage. Qua resolutie scoort dit venster wel heel goed.


==== Hanning-venster ====
[[Bestand:Window function (hann).png|thumb|right|Hann-venster]]
Dit venster is ook gekend onder de benaming ''Hann-venster'' en ''Von Hann-venster''.


:<math>w(n) = 0,5\; \left(1 - \cos \left ( \frac{2 \pi n}{N-1} \right) \right)</math>
==== Hanning venster ====
[[Bestand:Window function (hann).png|thumb|right|Hann venster]]
Dit venster is ook gekend onder de benaming ''Hann venster'' en ''Von Hann venster''.

:<math>w(n) = 0.5\; \left(1 - \cos \left ( \frac{2 \pi n}{N-1} \right) \right)</math>


De vorm is niets anders dan een cosinusvorm die aan beide uiteinden nul wordt. Hierdoor worden discontinuïteiten aan de uiteinden vermeden. De side lobe roll off scoort heel goed met 60 dB/decade.
De vorm is niets anders dan een cosinusvorm die aan beide uiteinden nul wordt. Hierdoor worden discontinuïteiten aan de uiteinden vermeden. De side lobe roll off scoort heel goed met 60 dB/decade.
Het Hanning venster is een eenvoudig en goed compromis dat als algemeen bruikbaar venster wordt beschouwd, zonder uitzonderlijke kwaliteiten maar ook zonder grote gebreken.
Het Hanning-venster is een eenvoudig en goed compromis dat als algemeen bruikbaar venster wordt beschouwd, zonder uitzonderlijke kwaliteiten maar ook zonder grote gebreken.


==== Hamming venster ====
==== Hamming-venster ====
[[Bestand:Window function (hamming).png|thumb|right|Hamming venster]]
[[Bestand:Window function (hamming).png|thumb|right|Hamming-venster]]


:<math>w(n) = 0.54 - 0.46\; \cos \left ( \frac{2\pi n}{N-1} \right)</math>
:<math>w(n) = 0,54 - 0,46\; \cos \left ( \frac{2\pi n}{N-1} \right)</math>


Dit is een optimalisatie van het Hanning venster. De vorm is een kleine constante plus een cosinus vorm. De optimalisatie is zodanig dat de hoogte van de eerste zijlobe gevoelig wordt onderdrukt. De prijs die hiervoor betaald wordt is een minder snelle afname van de zijlobes : de side lobe roll off is 20 dB/decade, net zoals het rechthoekig venster. Omdat de hoogtse zijlobe echter veel lager ligt dan bij het rechthoekig venster en het verval bij beide vensters gelijks is, scoort het Hamming venster beter dan het rechthoekig venster op het gebied van detectie van zwakkere componenten in het signaal.
Dit is een optimalisatie van het Hanning-venster. De vorm is een kleine constante plus een cosinusvorm. De optimalisatie is zodanig dat de hoogte van de eerste zijlobe gevoelig wordt onderdrukt. De prijs die hiervoor betaald wordt is een minder snelle afname van de zijlobes: de side lobe roll off is 20 dB/decade, net zoals het rechthoekig venster. Omdat de hoogtse zijlobe echter veel lager ligt dan bij het rechthoekig venster en het verval bij beide vensters gelijks is, scoort het Hamming-venster beter dan het rechthoekig venster op het gebied van detectie van zwakkere componenten in het signaal.


==== Tukey venster ====
==== Tukey-venster ====
[[BEstand:Window function (Tukey; alpha = 0.5).png|thumb|right|Tukey venster, a=0.5]]
[[BEstand:Window function (Tukey; alpha = 0.5).png|thumb|right|Tukey-venster, a=0.5]]


<math>
<math>
Regel 98: Regel 99:
</math>
</math>


Het Tukey venster kan worden bschouwd als een cosinusvorm met een breedte <math>\tfrac{\alpha N}{2}</math> die wordt [[convolutie|geconvolueerd]] met een rechthoekig venster met een breedte <math>\left(1 -\tfrac{\alpha}{2}\right)N</math>. Voor a=0 wordt het venster rechthoekig, en voor a=1 een Hanning venster.
Het Tukey-venster kan worden bschouwd als een cosinusvorm met een breedte <math>\tfrac{\alpha N}{2}</math> die wordt [[convolutie|geconvolueerd]] met een rechthoekig venster met een breedte <math>\left(1 -\tfrac{\alpha}{2}\right)N</math>. Voor a=0 wordt het venster rechthoekig, en voor a=1 een Hanning-venster.




==== Cosinus window ====
==== Cosinus-venster ====
[[Bestand:Window function (sine).png|thumb|right|Cosinus venster]]
[[Bestand:Window function (sine).png|thumb|right|Cosinus-venster]]


:<math>w(n) = \cos\left(\frac{\pi n}{N-1} - \frac{\pi}{2}\right) = \sin\left(\frac{\pi n}{N-1}\right)</math>
:<math>w(n) = \cos\left(\frac{\pi n}{N-1} - \frac{\pi}{2}\right) = \sin\left(\frac{\pi n}{N-1}\right)</math>




==== Driehoekig venster(Bartlett venster) ====
==== Driehoekig venster (Bartlett-venster) ====
[[Bestand:Window function (bartlett).png|thumb|right|Bartlett venster]]
[[Bestand:Window function (bartlett).png|thumb|right|Bartlett-venster]]
Met eindpunten die nul zijn (Bartlett venster):
Met eindpunten die nul zijn (Bartlett-venster):


:<math>w(n)=\frac{2}{N-1}\cdot\left(\frac{N-1}{2}-\left |n-\frac{N-1}{2}\right |\right)\,</math>
:<math>w(n)=\frac{2}{N-1}\cdot\left(\frac{N-1}{2}-\left |n-\frac{N-1}{2}\right |\right)\,</math>


[[Bestand:Window function (triangular).png|thumb|right|Triangular window]]
[[Bestand:Window function (triangular).png|thumb|right|Driehoekig venster]]
Met eindpunten verschillend van nul:
Met eindpunten verschillend van nul:


Regel 120: Regel 121:
Dit venster heeft een hoofdlobe die tweemaal zo breed is als het rechthoekig venster, en een hoogste zijlobe op -26 dB.
Dit venster heeft een hoofdlobe die tweemaal zo breed is als het rechthoekig venster, en een hoogste zijlobe op -26 dB.


==== Kaiser vensters ====
==== Kaiser-vensters ====
[[Bestand:Window function (Kaiser; alpha = 2).png|thumb|right|Kaiser venster, a =2]]
[[Bestand:Window function (Kaiser; alpha = 2).png|thumb|right|Kaiser-venster, a =2]]
[[Bestand:Window function (Kaiser; alpha = 3).png|thumb|right|Kaiser venster, a =3]]
[[Bestand:Window function (Kaiser; alpha = 3).png|thumb|right|Kaiser-venster, a =3]]


Kaiser vensters zijn gebaseerd op [[Besselfunctie|Besselfunctgie]], en kunnen niet in een expliciete analytische vorm geschreven worden:
Kaiser-vensters zijn gebaseerd op de [[Besselfunctie]], en kunnen niet in een expliciete analytische vorm geschreven worden:


:<math>w(n)=\frac{I_0\Bigg (\pi\alpha \sqrt{1 - (\begin{matrix} \frac{2 n}{N-1} \end{matrix}-1)^2}\Bigg )} {I_0(\pi\alpha)}</math>
:<math>w(n)=\frac{I_0\Bigg (\pi\alpha \sqrt{1 - (\begin{matrix} \frac{2 n}{N-1} \end{matrix}-1)^2}\Bigg )} {I_0(\pi\alpha)}</math>
Regel 133: Regel 134:




==== Blackman–Harris window ====
==== Blackman–Harris-venster ====
[[Bestand:Window function (blackman-harris).png|thumb|right|Blackman–Harris venster]]
[[Bestand:Window function (blackman-harris).png|thumb|right|Blackman–Harris-venster]]
Dit is een veralgemening van een Hanning venster. Er wordt in het venster nog een tweede cosinusgolf toegevoegd met een dubbele frequentie van die van het Hannning venster. De bedoeling is het niveau van de zijlobes te verlagen.
Dit is een veralgemening van een Hanning-venster. Er wordt in het venster nog een tweede cosinusgolf toegevoegd met een dubbele frequentie van die van het Hannning-venster. De bedoeling is het niveau van de zijlobes te verlagen.



:<math>w(n)=a_0 - a_1 \cos \left ( \frac{2 \pi n}{N-1} \right)+ a_2 \cos \left ( \frac{4 \pi n}{N-1} \right)- a_3 \cos \left ( \frac{6 \pi n}{N-1} \right)</math>
:<math>w(n)=a_0 - a_1 \cos \left ( \frac{2 \pi n}{N-1} \right)+ a_2 \cos \left ( \frac{4 \pi n}{N-1} \right)- a_3 \cos \left ( \frac{6 \pi n}{N-1} \right)</math>
Regel 142: Regel 142:
:<math>a_0=0.35875;\quad a_1=0.48829;\quad a_2=0.14128;\quad a_3=0.01168\,</math>
:<math>a_0=0.35875;\quad a_1=0.48829;\quad a_2=0.14128;\quad a_3=0.01168\,</math>


==== Flattopvenster ====

[[Bestand:Window function (flat top).png|thumb|right|Flattopvenster]]

==== Flat top window ====
[[Bestand:Window function (flat top).png|thumb|right|Flat top venster]]


:<math>w(n)=a_0 - a_1 \cos \left ( \frac{2 \pi n}{N-1} \right)+ a_2 \cos \left ( \frac{4 \pi n}{N-1} \right)- a_3 \cos \left ( \frac{6 \pi n}{N-1} \right)+a_4 \cos \left ( \frac{8 \pi n}{N-1} \right)</math>
:<math>w(n)=a_0 - a_1 \cos \left ( \frac{2 \pi n}{N-1} \right)+ a_2 \cos \left ( \frac{4 \pi n}{N-1} \right)- a_3 \cos \left ( \frac{6 \pi n}{N-1} \right)+a_4 \cos \left ( \frac{8 \pi n}{N-1} \right)</math>
Regel 151: Regel 149:
:<math>a_0=1;\quad a_1=1.93;\quad a_2=1.29;\quad a_3=0.388;\quad a_4=0.032\,</math>
:<math>a_0=1;\quad a_1=1.93;\quad a_2=1.29;\quad a_3=0.388;\quad a_4=0.032\,</math>


Het flat top venster is ontworpen om de scallop loss, dus de mogelijke fout bij de amplitudemeting van een sinusvormig signaal, te minimaliseren. Een flat top venster geeft een quasi correcte amplitudemeting. Daar tegenover staat een zeer slechte prestatie op het gebied van resolutie, want de hoofdlobe van een flat top venster is vijf maal zo breed als bij een rechthoekig venster.
Het flattopvenster is ontworpen om de scallop loss, dus de mogelijke fout bij de amplitudemeting van een sinusvormig signaal, te minimaliseren. Een flattopvenster geeft een quasi correcte amplitudemeting. Daar tegenover staat een zeer slechte prestatie op het gebied van resolutie, want de hoofdlobe van een flattopvenster is vijf maal zo breed als bij een rechthoekig venster.



== Vergelijking van enkele vensters ==
== Vergelijking van enkele vensters ==
Regel 158: Regel 155:
[[Bestand:Window function (comparsion).png|thumb|right|Vensterkarakteristieken]]
[[Bestand:Window function (comparsion).png|thumb|right|Vensterkarakteristieken]]


Onderstaande tabel vergelijkt de kwaliteitskarakterstieken van enkele veelgebruikte vensters. De scallop loss verbetert naarmate men lager in de tabel afdaalt, net als het niveau van de hoogste zijlobe. De breedte van de hoofdlobe wordt dan weer slechter. Het flat top venster is een speciaal geval. Signalen waarin sinuscomponenten aanwezig zijn met sterk verschillende amplitude zullen beter bestudeerd worden met vensters die lager in de tabel staan, omdat zwakke componenten kans lopen in het spectrum te worden overstemd door de zijlobes van de sterkere componenten indien een venster van bovenaan de tabel gebruikt wordt. Die vensters zijn dan weer beter geschikt om frequenties nauwkeuriger te meten. In het algemeen is een Hanning venster een goed compromis.
Onderstaande tabel vergelijkt de kwaliteitskarakterstieken van enkele veelgebruikte vensters. De scallop loss verbetert naarmate men lager in de tabel afdaalt, net als het niveau van de hoogste zijlobe. De breedte van de hoofdlobe wordt dan weer slechter. Het flat top venster is een speciaal geval. Signalen waarin sinuscomponenten aanwezig zijn met sterk verschillende amplitude zullen beter bestudeerd worden met vensters die lager in de tabel staan, omdat zwakke componenten kans lopen in het spectrum te worden overstemd door de zijlobes van de sterkere componenten indien een venster van bovenaan de tabel gebruikt wordt. Die vensters zijn dan weer beter geschikt om frequenties nauwkeuriger te meten. In het algemeen is een Hanning-venster een goed compromis.


{| class="wikitable" width="40%"
{| class="wikitable" width="40%"
Regel 184: Regel 181:


== Overlappende vensters ==
== Overlappende vensters ==
Indien een signaal te lang is om in één keer te worden behandeld kan men het opdelen en de stukken afzonderlijk bestuderen. Echter, de meeste vensters gaan aan de uiteinden naar nul. Om toch met alle informatie rekening te houden moeten de vensters daarom elkaar gedeeltelijk overlappen. Indien men bijvoorbeeld Hanning vensters 50% laat overlappen wordt met elk detail in het signaal voor precies 100% rekening gehouden, verdeeld over twee aansluitende vensters.
Indien een signaal te lang is om in één keer te worden behandeld kan men het opdelen en de stukken afzonderlijk bestuderen. Echter, de meeste vensters gaan aan de uiteinden naar nul. Om toch met alle informatie rekening te houden moeten de vensters daarom elkaar gedeeltelijk overlappen. Indien men bijvoorbeeld Hanning-vensters 50% laat overlappen wordt met elk detail in het signaal voor precies 100% rekening gehouden, verdeeld over twee aansluitende vensters.

Dit principe wordt toegepast in de zogenaamde [[Short Time Fourier Transformatie]], kortweg [[STFT]]. Door een venster in overlappende stapjes over een lang signaal te laten schuiven, en steeds een [[Fouriertransformatie]] te berekenen krijg men niet alleen informatie over de frequenties die in het signaal aanwezig zijn, maar ook hoe deze in de tijd doorheen het signaal evolueren. De nauwkeurigheden waarmee die gebeurt in tijd en frequentie zijn echter omgkeerd evenredig met elkaar. Een verbeterde nauwkeurigheid (''resolutie'') in de tijd betekent een verzwakte nauwkeurigheud in frequentie en omgkeerd.
Dit principe wordt toegepast in de zogenaamde [[Short Time Fourier Transformatie]], kortweg [[STFT]]. Door een venster in overlappende stapjes over een lang signaal te laten schuiven, en steeds een [[Fouriertransformatie]] te berekenen krijg men niet alleen informatie over de frequenties die in het signaal aanwezig zijn, maar ook hoe deze in de tijd doorheen het signaal evolueren. De nauwkeurigheden waarmee die gebeurt in tijd en frequentie zijn echter omgkeerd evenredig met elkaar. Een verbeterde nauwkeurigheid (''resolutie'') in de tijd betekent een verzwakte nauwkeurigheud in frequentie en omgkeerd.



Versie van 27 jun 2011 18:38

Een vensterfunctie, in het Engels window function, apodization function of tapering function, is een wiskundige functie die nul is buiten een bepaald interval. Zo wordt een functie die nul is buiten een interval, en een constante waarde heeft binnen het interval een rechthoekige vensterfunctie of rechthoekig venster genoemd, gezien de vorm die dit venster heeft. Wanneer een ander signaal met de vensterfunctie puntsgewijs wordt vermenigvuldigd is het product nul buiten het interval van de vensterfunctie. Vandaar de benaming venster: men kijkt naar een ander signaal door een venster, waardoor men als het ware een stuk uit het volledige signaal knipt. Indien de vorm binnen het bereik van de vensterfunctie niet constant is, wordt het uitgeknipte stuk van het oorspronkelijk signaal ook nog eens gewijzigd.

Venstersfuncties worden onder meer gebruikt in alle analoge en digitale toepassingsgebieden van signaalverwerking, gevorderde varianten van de fouriertransformatie, beeldverwerking en digitale spraakverwerking. Ook analoge en digitale filters kunnen op basis van venstersfuncties worden ontworpen.

Effecten van het gebruik

Effecten van windowing van 5 seconden op de Fouriertransformatie van een sinus van 5,26 Hz: groen: werkelijk spectrum op 5,26 Hz. Rood:convolutie van het sinusspectrum en het spectrum van het gebruikte rechthoekig venster. Blauw: uiteindelijk spectrum dat Fouriercoëfficiënten bevat op de veelvouden van 0,2Hz. Omdat de werkelijke frequentie van de sinus hiermee niet samenvalt zal leakage optreden.

De nevenstaande figuur illustreert de onderstaande uitleg concreet voor een sinus van 5,26 Hz die wordt waargenomen met een rechthoekig venster van 5 seconden. De fouriertransformatie van een oneindig lange sinus bestaat uit één enkele piek op de eigen frequentie. Een wiskundig perfecte sinus bevat immers enkel zijn eigen frequentie. Deze piek, groen op bijgaande figuur, is wiskundig voor te stellen als een Diracfunctie op die precieze frequentie. Wanneer echter (bijvoorbeeld) een rechthoekig venster op de sinus wordt toegepast is de fouriertransformatie, wegens de convolutiestelling de convolutie van de fouriertransformatie van de sinus en de fouriertransformatie van het venster. De convolutie van een Diracfunctie en een andere functie is op zijn beurt een verschuiving van de andere functie tot op de plaats van de Diracfunctie. Dit is een eigenschap van de Diracfunctie. Deze convolutie is de golvende functie in het rood op de figuur. De fouriertransformatie van een sinus, genomen door een rechthoekig venster, is dus een sinc-functie met haar maximum op de frequentie van de sinus (en een tweede sinc-functie op de negatieve frequentie). De fouriertransformatie van een rechthoekig tijdsignaal is immers een sinc-functie in frequentie.

Indien:

op het interval en nul daarbuiten, dan is de fouriertransformatie

De unieke spectrale lijn op de frequentie van de sinus is dus nu vervangen door deze sinc-functie gecentreerd op de frequentie van de sinus.

Indien:

op het interval en nul daarbuiten, dan is de fouriertransformatie


Daarboven komt nog het feit dat de fouriertransformatie in de praktijk wordt berekend door middel van een FFT, en deze berekent de fouriertransformatie in een discrete vorm: het resultaat van de FFT bevat enkel informatie op de veelvouden van de grondfrequentie van de meting, en deze is één gedeeld door de duur van de meting. Een meting van 5 seconden levert dus enkel fouriercoëfficiënten op 0,2Hz, 0,4Hz, 0,6Hz... In het algemeen zullen deze zichtbare frequenties, de blauwe pieken op de figuur, niet samenvallen met de piek van de getransformeerde van het venster, en wordt er dus geen unieke piek gemeten, maar een gans bos van pieken die hun maximum bereiken in de buurt van de werkelijke frequentie van de te meten sinus. De maximale piek zal echter lager zijn dan de werkelijke sterkte van de sinus.

Alles bij elkaar wordt in het Fourierspectrum een sinus dus vervangen door de Fouriertransformatie van het gebruikte venster, en wordt dit dan nog eens bemonsterd op de zichtbare frequenties van de Fouriertransformatie. Als de werkelijke frequentie van de sinus niet met een die zichtbare frequenties samenvalt zal de fouriertransformatie van het gebruikte venster dus niet in zijn maximum worden bemonsterd.

Een rechthoekig venster gebruiken zal dus aanleiding geven tot de volgende fouten:

  • Amplitudefout: De amplitude wordt te laag gemeten. Deze fout kan in het slechtste geval oplopen tot 36% te weinig, of dus 3,9dB te laag
  • Resolutiefout: De werkelijke frequentie van de sinus is niet meer nauwkeurig te meten, maar ligt tussen de twee hoogste pieken. Ook kan het voorkomen dat twee sinussen met lichtjes verschillende frequentie niet meer afzonderlijk te zien zijn, maar één gezamelijke piek in het spectrum creëren.
  • Leakage: De nabijgelegen zichtbare frequenties hebben niet-nulle amplitude, die er in realiteit niet is, maar die wel zwakkere sinussen in het signaal kunnen overstemmen. Dit effect wordt aangeduid met de Engelse benaming leakage, het weglekken van de energie van de werkelijke niet zichtbare frequentie naar nabijgelegen zichtbare frequenties.

Het gebruik van andere vensters probeert aan deze fouten iets te doen, maar geen enkel venster kan alle fouten samen verminderen. In het algemeen worden de amplitudefout en leakage samen kleiner (of groter) naargelang de resolutiefout groter (of kleiner) wordt.

Kwaliteitscriteria

Kwaliteitscriteria van een venster: Side lobe roll off (deze helling is constant indien de frequentieas logaritmisch is), scalloping loss, breedte van de hoofdlobe op -3 dB en hoogte van de hoogste zijlobe

De fouriergetransformeerde van een venster bestaat steeds uit een centrale hoofdlobe (main lobe) en afnemende zijlobes ((side lobes). De vensters kunnen worden beoordeeld volgens volgende criteria:

  • Scallop loss : de maximale fout in dB die kan voorkomen bij een amplitudemeting. Deze fout treedt op indien de top van de hoofdlobe niet samenvalt met een zichtbare frequentie van de Fouriertransformatie. In het slechtse geval ligt de frequentie van een te meten sinus toevallig net tussen de frequenties van twee opeenvolgende fouriercoëfficiënten. In deze situatie wordt de scallop loss bepaald.
  • Main lobe width : de breedte van de hoofdlobe. Hoe breder de hoofdlobe, hoe moeilijker sinussen met bijna gelijke frequentie zullen kunnen onderscheiden worden. Bij vensters met een zeer brede hoofdlobe zullen de twee sinussen als één gezamelijke piek zichtbaar zijn. Deze breedte kan op verschillende wijze worden gegeven, bijvoorbeeld de breedte op -3dB uitgedrukt in bins. Een bin is het verschil in frequentie tussen twee opeenvolgende fouriercoëfficiënten.
  • Highest side lobe level : geeft aan hoeveel dB de hoogste zijlobe onder het niveau van de hoofdlobe ligt.
  • Side lobe roll off : geeft aan met hoeveel db/decade het niveau van de zijlobes zakt. Een decade is een frequentietoename met een factor tien. Samen met het niveau van de hoogtse zijlobe bepaalt dit criterium in welke mate zwakke sinussen mogelijk zullen worden overstemd door de leakage van sterke sinussen die in de buurt liggen. Indien de frequentieas logaritmisch wordt gekozen is de side lobe roll off op de figuur een constant dalende lijn.

Types van vensters

Terminologie:

  • is de breedte in netpunten van de discrete vorm van het venster. Meestal is dat in de praktijk een macht van 2 zodat het Fast Fourier Transform-algoritme in optimale omstandigheden kan worden toegepast.
  • is een gehele parameter die loopt van 0 tot N-1. De vensters worden dus beschreven op een internal [0..N-1] zodat het maximum van de vensters ruwweg ligt n = N/2

Rechthoekig venster

Rechthoekig venster

Het rechthoekig venster is ook gekend onder de naam Dirichlet-venster. Het snijdt gewoon een stuk van lengte N uit een digitaal signaal zonder dat de sampelwaarden van het signaal worden gewijzigd. Dit leidt in veel gevallen tot discontinuïteiten aan de randen van het interval waardoor het venster zeer slecht scoort op de criteria betreffende de hoogte zijlobe (slechts 13 onder de centrale lobe). Omdat de side lobe roll off slechts 20 db met decade bedraagt kampt dit venster met ernstige leakage. Qua resolutie scoort dit venster wel heel goed.

Hanning-venster

Hann-venster

Dit venster is ook gekend onder de benaming Hann-venster en Von Hann-venster.

De vorm is niets anders dan een cosinusvorm die aan beide uiteinden nul wordt. Hierdoor worden discontinuïteiten aan de uiteinden vermeden. De side lobe roll off scoort heel goed met 60 dB/decade. Het Hanning-venster is een eenvoudig en goed compromis dat als algemeen bruikbaar venster wordt beschouwd, zonder uitzonderlijke kwaliteiten maar ook zonder grote gebreken.

Hamming-venster

Hamming-venster

Dit is een optimalisatie van het Hanning-venster. De vorm is een kleine constante plus een cosinusvorm. De optimalisatie is zodanig dat de hoogte van de eerste zijlobe gevoelig wordt onderdrukt. De prijs die hiervoor betaald wordt is een minder snelle afname van de zijlobes: de side lobe roll off is 20 dB/decade, net zoals het rechthoekig venster. Omdat de hoogtse zijlobe echter veel lager ligt dan bij het rechthoekig venster en het verval bij beide vensters gelijks is, scoort het Hamming-venster beter dan het rechthoekig venster op het gebied van detectie van zwakkere componenten in het signaal.

Tukey-venster

Tukey-venster, a=0.5

Het Tukey-venster kan worden bschouwd als een cosinusvorm met een breedte die wordt geconvolueerd met een rechthoekig venster met een breedte . Voor a=0 wordt het venster rechthoekig, en voor a=1 een Hanning-venster.


Cosinus-venster

Cosinus-venster


Driehoekig venster (Bartlett-venster)

Bartlett-venster

Met eindpunten die nul zijn (Bartlett-venster):

Driehoekig venster

Met eindpunten verschillend van nul:

Dit venster heeft een hoofdlobe die tweemaal zo breed is als het rechthoekig venster, en een hoogste zijlobe op -26 dB.

Kaiser-vensters

Kaiser-venster, a =2
Kaiser-venster, a =3

Kaiser-vensters zijn gebaseerd op de Besselfunctie, en kunnen niet in een expliciete analytische vorm geschreven worden:

waarbij de nulde orde gemodifieerde Besselfunctie van de eerste soort is, en een parameter die doorgaans 3 wordt gekozen. Merk op dat


Blackman–Harris-venster

Blackman–Harris-venster

Dit is een veralgemening van een Hanning-venster. Er wordt in het venster nog een tweede cosinusgolf toegevoegd met een dubbele frequentie van die van het Hannning-venster. De bedoeling is het niveau van de zijlobes te verlagen.

Flattopvenster

Flattopvenster

Het flattopvenster is ontworpen om de scallop loss, dus de mogelijke fout bij de amplitudemeting van een sinusvormig signaal, te minimaliseren. Een flattopvenster geeft een quasi correcte amplitudemeting. Daar tegenover staat een zeer slechte prestatie op het gebied van resolutie, want de hoofdlobe van een flattopvenster is vijf maal zo breed als bij een rechthoekig venster.

Vergelijking van enkele vensters

Vensterkarakteristieken

Onderstaande tabel vergelijkt de kwaliteitskarakterstieken van enkele veelgebruikte vensters. De scallop loss verbetert naarmate men lager in de tabel afdaalt, net als het niveau van de hoogste zijlobe. De breedte van de hoofdlobe wordt dan weer slechter. Het flat top venster is een speciaal geval. Signalen waarin sinuscomponenten aanwezig zijn met sterk verschillende amplitude zullen beter bestudeerd worden met vensters die lager in de tabel staan, omdat zwakke componenten kans lopen in het spectrum te worden overstemd door de zijlobes van de sterkere componenten indien een venster van bovenaan de tabel gebruikt wordt. Die vensters zijn dan weer beter geschikt om frequenties nauwkeuriger te meten. In het algemeen is een Hanning-venster een goed compromis.

Venster Scallop Loss main lobe width op -3 db higest side lobe level side lobe roll off
Rechthoekig -3.92 0.89 -13 -20
Driehoekig -1.82 1.28 -26 -40
Hanning -1.42 1.44 -31 -60
Hamming -1.78 1.30 -41 -20
Kaiser(a=3) -1.02 1.71 -69 -20
Blackman Harris (3 sample) -1.13 1.66 -71 -20
Flat top < 0.01 2.94 -44 -20

Overlappende vensters

Indien een signaal te lang is om in één keer te worden behandeld kan men het opdelen en de stukken afzonderlijk bestuderen. Echter, de meeste vensters gaan aan de uiteinden naar nul. Om toch met alle informatie rekening te houden moeten de vensters daarom elkaar gedeeltelijk overlappen. Indien men bijvoorbeeld Hanning-vensters 50% laat overlappen wordt met elk detail in het signaal voor precies 100% rekening gehouden, verdeeld over twee aansluitende vensters.

Dit principe wordt toegepast in de zogenaamde Short Time Fourier Transformatie, kortweg STFT. Door een venster in overlappende stapjes over een lang signaal te laten schuiven, en steeds een Fouriertransformatie te berekenen krijg men niet alleen informatie over de frequenties die in het signaal aanwezig zijn, maar ook hoe deze in de tijd doorheen het signaal evolueren. De nauwkeurigheden waarmee die gebeurt in tijd en frequentie zijn echter omgkeerd evenredig met elkaar. Een verbeterde nauwkeurigheid (resolutie) in de tijd betekent een verzwakte nauwkeurigheud in frequentie en omgkeerd.

Bronnen

  • E.C. Ifeachor, B.W. Jervis "Ditigal Signal Processing, a practical approach" Addison-Wesley Publ.Company ISBN 0-201-54431-X
  • S.K. Mitra "Digital Signal Processing, a computer based approach" McGraw-Hill International Edition ISBN 007-124467-0
  • A.W.M. Van den Enden, N.A.M. Verhoeckx "Discrete Time Signal Processing" Prentice Hall, ISBN 0_13_216755-7

Externe link

Deze link bevat aanwijzingen welk venster te gebruiken naargelang het type signaal.