Resampling is het overzetten van een digitaal signaal naar een andere sample rate. Het wordt ook wel Sample Rate Conversie genoemd. Herbemonstering lijkt me goed Nederlands woord (mischien deze pag. hernoemen?).
Allereerst de meest inzichtelijke manier:
Bij downsampling zou je aliasing (kunnen) krijgen als je zomaar samples weggooit dus moet je eerst de hogere frequenties (voorbij fs/2) wegfilteren. Daarna kun je samples weggooien. Als je bv. een factor 2 naar beneden gaat in samplerate dan kun je elk tweede sample weglaten.
Bij upsampling ga je nul-samples toevoegen. Als je een factor 3 omhoog wilt in sample rate dan voeg je na elke sample twee nullen toe. In het spectrale plaatje doet dit niets anders dan de samplerate verhogen en het laat het originele spectrum intact. Omdat het originele spectrum zich boven fs/2 gespiegeld herhaalt, worden als het ware de spiegels je nieuwe spectrale bereik in geschoven met als gevolg aliasing. Daarom moet je lowpass filteren.
Kort samengevat:
Downsampling = lowpass filter gevolgd door samples weggooien
Upsampling = nullen inserten gevolgd door lowpass filter
Met deze methode kun je alleen hele factoren omhoog of omlaag.
Wat nu als je een factor 2.5 in samplerate omhoog wilt ? Dan moet je upsampling en downsampling combineren. Bijvoorbeeld 5 omhoog en dan weer 2 naar beneden.
OK, dit klinkt simpel. Het meeste werk gaat zitten in het ontwerp van een goed filter. Maar het helpt alvast om de principes te begrijpen.
Bovenstaande tekst werd op KMT's SOGM-lijst gepost door Marc Groenewegen. Marc raadt verder het boek Digitale Signaalbewerking aan, van Ir. A.W.M. van den Enden en Ir. N.A.M. Verhoeckx, Delta Press 1987, ISBN 90 6674 722 6.