Biorę klasę systemów multimedialnych na mgr informatyki i mam problem ze zrozumieniem formuły częstotliwości aliasu - może to wynikać z mojego niezrozumienia sygnału aliasu.
Rozumiem, że sygnał aliasowy jest taki, że jeśli zaniżymy próbkę sygnału wejściowego (tj. Próbkowanie z częstotliwością mniejszą niż dwukrotność maksymalnej częstotliwości), wówczas możemy uzyskać aliasing, ponieważ nie próbujemy wystarczająco często, aby uchwycić szczegóły wysokich częstotliwości. Sygnał aliasingu jest wynikiem pobrania tych wartości próbek i połączenia ich za pomocą gładkiej krzywej.
Dlatego wynikowy sygnał ma częstotliwość równą połowie częstotliwości próbkowania, ponieważ czysty sinusoid będzie wymagał dwóch próbek na oscylację (1 dla każdego punktu zwrotnego) - oznaczałoby to, że częstotliwość aliasowa powinna być po prostu funkcją częstotliwości próbkowania.
Wzór na częstotliwość aliasu stanowi absolutną różnicę częstotliwości sygnału i najbliższą całkowitą wielokrotność częstotliwości próbkowania - czy ktoś może mi to wyjaśnić? Z góry dziękuję!
źródło
Odpowiedzi:
Załóżmy, że próbkowanie odbywa się z częstotliwością Hz, jedna próbka co milisekundę. Załóżmy również, że próbkowany sygnał ma częstotliwość Hz, pierwsza próbka znajduje się na szczycie sinusoidy. Następna próbka zostanie pobrana o jedną milisekundę później, w tym czasie sinusoida przejdzie przez okresy, a zatem następna próbka będzie miała taką samą wartość, jakby sinusoida przeszła przez okresu, a nie okresu. Następny będzie odległy o okresu od szczytu i tak dalej. Jest to dokładnie ten sam zestaw próbek, który otrzymalibyśmy, gdybyśmy próbkowali sinusoidę Hz.1000 3200 3.2 0.2 3.2 0.4 200 W ciągu jednej milisekundy postępowałby przez okresu milisekund i tak dalej. Innymi słowy, po prostu patrząc na same próbki nie możemy stwierdzić, czy próbki pochodziły z sygnału HZ, czy z sygnału Hz.0.2 5 3200 200
Gdyby próbkowany sygnał miał częstotliwość Hz, otrzymalibyśmy próbki odpowiadające , okresu, okresu i tak dalej. Ale ponieważ sinusoidy wyglądają tak samo w obu kierunkach w czasie, próbki te również wyglądają, jakby były wynikiem próbkowania sygnału Hz. To jest powód, dla którego otrzymałeś wzór, mianowicie.2800 0 −0.2 −0.4 200
działa, aby dać właściwą odpowiedź.
źródło
Jeśli próbkujesz sygnał ze zbyt niską częstotliwością próbkowania, niekoniecznie otrzymujesz naprzemienne próbki. Możesz skończyć próbkowanie tylko w pobliżu szczytów (przez jakiś czas) lub tylko dna lub tylko zero przejść itp., Które wyglądałyby jak próbki „gładkiego” przebiegu o znacznie niższej częstotliwości niż przy pewnej stałej wartości, takiej jak połowa częstotliwość próbkowania.
źródło
Być może ta animacja (ostrzeżenie: plik 100 MB!) Może pomóc. Zrobiłam to, by mój przyjaciel wyjaśnił, czym jest aliasing. Ustawiłem częstotliwość próbkowania . Następnie uruchamiam sygnał od do . Koncepcja, którą Dilip Sarwate wyjaśnia w powyższej odpowiedzi, wydaje mi się widoczna w tej animacji (przynajmniej mam nadzieję, że tak :)).fs=10Hz 0 30Hz
Na przykład, jeśli sygnał ma wartość i jest próbkowany z , to wynikowa (aliasowana) częstotliwość wynosiłaby . W animacji jest to jak pełny 1 cykl funkcji (w animacji), dokładnie tak, jakby sygnał miał wartość . Dokładnie taki sam efekt występuje, gdy częstotliwość wynosi np .: 9 Hz, 11 Hz, 19 Hz i 29 Hz itp.f=21Hz fs=10Hz |n∗fs−f|=|2∗10−21|=1Hz cos f=1Hz f
W animacji zielona linia reprezentuje oryginalny sygnał, natomiast czerwona linia przerywana jest wynikiem aliasingu. Istnieje również funkcja przerywana cos przy 5 Hz. Po prostu reprezentuje przy maksymalnej częstotliwości 5 Hz. Czerwone punkty oznaczają próbkowanie. Wybrałem ale może też działać dla funkcji . Jedyna różnica polega na tym, że gdy jest aliasowany, sygnał jest przesunięty fazowo o ponieważ jest nieparzysty, podczas gdy jest funkcją parzystą.cos cos sin sin 180∘ sin cos
Mam nadzieję, że pomoże to zrozumieć formuły.
PS. Jeśli nie możesz otworzyć animacji , spróbuj pobrać ten skrypt MATLAB . W folderze powstanie wiele ramek w formacie TIFF -
./animation
myślę, że ten folder musi istnieć. Korzysta z funkcji imwrite na wypadek, gdyby ktoś chciał wprowadzić jakieś zmiany.PS2. Chciałem umieścić więcej linków, ale nie mogłem. Chciałem podać link do skryptu MATLAB i funkcji nadpisywania, z której korzystałem podczas tworzenia tej animacji, ale SE nie pozwala mi tego zrobić. Zmienię tę odpowiedź, kiedy będę mógł :)
źródło