Wstep

Z Brain-wiki


próbkowanie zmienia ciągłys sygnał
Próbkowane z częstością 1 oscylacje o częstościach f, od góry: 1,3, 1, 0,5 i 0,3. Sinusa o częstości 0,3 można odtworzyć dokładnie z samych wartości dyskretnych (kropki), podobnie dla granicznej częstości 0,5. Natomiast próbkowane z tą samą częstością szybsze oscylacje wprowadzają przekłamania — widoczna na samej górze oscylacja o częstości 1,3 daje w chwilach próbkowania wartości dokładnie takie same jak sygnał na dole. Zjawisko to nosi nazwę aliasingu ( porównaj).



Zapis cyfrowy i korekcja błędów

Aby zrozumieć, dlaczego łatwość korekcji błędów związana jest z zapisem cyfrowym, przyjrzyjmy się bliżej analogowym i cyfrowym zapisom dźwięku. Na płycie analogowej dźwięk kodowany jest w zmiennym wyżłobieniu rowka, w którym przemieszcza się igła gramofonu. W przybliżeniu możemy wyobrazić sobie, że "podskok" igły w większym wgłębieniu rowka odwzorowywany jest jako większe wychylenie membrany głośnika (po zamianie w impuls elektryczny i przejściu przez wzmacniacz). Tak więc wyżłobienie rowka płyty oryginalnie odwzorowuje dokładnie zapisany dźwięk. Jego zarysowanie lub zabrudzenie wprowadzi przy odtwarzaniu zakłócenia (zwykle trzaski). Jednoznaczne rozróżnienie, które z wyżłobień rowka winylowej płyty odzwierciedlają oryginalny zapis muzyki, a które powstały skutkiem uszkodzeń, jest właściwie niemożliwe, dlatego też muzyka ze starych płyt kojarzy nam się z obecnością trzasków i szumu.[1]

W przypadku zapisu cyfrowego możemy w prosty sposób wykryć fakt wystąpienie zakłóceń. Wyobraźmy sobie, że zapisujemy muzykę jako szereg liczb, opisujących amplitudę fali dźwiękowej mierzoną w ustalonych odstępach czasu (rys. Figure 2; dla płyty kompaktowej [math]\Delta t = 1/44 100[/math] sekundy). Ponieważ urządzenie, które będzie zamieniać ten zapis z powrotem na muzykę, i tak musi być swego rodzaju specjalizowanym komputerem (odtwarzaczem CD), to do programu odtwarzającego możemy wprowadzić pewną modyfikację. Umówmy się dla przykładu, że z każdych dziesięciu kolejnych liczb, do zapisu muzyki będziemy wykorzystywać tylko dziewięć, a ostatnią będziemy dobierać tak, żeby suma kolejnych dziesięciu liczb zawsze wynosiła np. milion.

digitalizacja sygnału analogowego
Od góry: ciągły (analogowy) zapis fali dźwiękowej, poniżej próbkowanie, czyli wybór chwil, w których ją mierzymy, dalej zamiana zmierzonych wartości na liczby i liczb na bity. Pasek na dole może być np. fragmentem ścieżki na płycie CD: białe pola (zera) odbijają światło lasera, a czarne (jedynki) nie.

Taki sposób zapisu wprowadza redundancję, czyli nadmiar informacji w zapisie, ponieważ przy prawidłowym odczycie wystarczyłoby znać dziewięć kolejnych liczb, aby wyznaczyć dziesiątą (jako milion minus suma pozostałych dziewięciu). Jednak jeśli wczytamy z takiego zapisu wszystkie liczby, i suma którejś dziesiątki okaże się inna niz milion, to mamy pewność, że w tym miejscu wystąpił błąd.[2] Taka informacja jest bardzo cenna:

  • Jeśli jesteśmy pewni , że nagły skok amplitudy w kilku kolejnych próbkach jest wynikiem błędu zapisu, a nie efektem zamierzonym przez muzyka, to możemy ten skok "przemilczeć", czyli np. zastąpić "popsute" próbki średnią wartością poprzednich.
  • Możemy zwiększyć redundancję i zapisać dwie jednakowe kopie; jeśli uszkodzeniu ulegnie fragment pierwszej kopii, program może automatycznie sięgnąć do odpowiedniego fragmentu drugiej kopii[3].
  • W przypadku transmisji przez modem, program może zażądać powtórnego przesłania uszkodzonego fragmentu.

Niezależnie od tych korzyści, jeśli chcemy analizować sygnały z pomocą komputera (maszyny cyfrowej), i tak jesteśmy "skazani" na pracę z ich dyskretną formą.

Mimo tego, większość ogólnych twierdzeń będziemy rozważać w przestrzeni funkcji ciągłych — o ile nie tyczą się explicite efektów próbkowania. Teoria funkcji ciągłych jest asymptotycznie zgodna z wynikami dla sekwencji dyskretnych — dla odstępu próbkowania dążącego do zera. Jej rezultaty, prostsze pojęciowo i łatwiejsze do wyprowadzenia, są wystarczająco dokładne by wyjaśnić ogólne własności dyskretnych obliczeń.

W uzasadnionych przypadkach będziemy oczywiście dyskutować efekty próbkowania; w takich sytuacjach będziemy rozróżniać sygnał ciągły [math]s(t)[/math] od dyskretnej sekwencji [math]s[n][/math].

Podobne tematy opisuje rozdział "Cyfrowy Świat" z podręcznika Technologii Informacyjnej.

  1. Tak naprawdę sprawa nie jest beznadziejna:
    • część zakłócen pochodzi z zanieczyszczeń; w tym przypadku zwykle pomaga delikatne czyszczenie płyty.
    • Do pozostałych zakłóceń, których nie da się usunąć mechanicznie, stosuje się potężną metodologię analizy sygnałów (będącą przedmiotem następnych rozdziałów), która pomaga zgadnąć, które dźwięki w zapisie mogą pochodzić z zakłóceń. Zwykle jednak nie da się usunąć dokładnie wszystkich zakłóceń bez naruszenia brzmienia oryginału.
  2. Ale poprawna suma nie daje gwarancji, że błędu nie ma. W jednej dziesiątce mogą wystąpić np. dwa jednakowe błędy o przeciwnych znakach i suma pozostanie niezmieniona. Dlatego sumy kontrolne liczy się w bardziej wyrafinowany sposób (np. CRC -- Cyclic Redundancy Check )
  3. Prawdopodobieństwo wystąpienia uszkodzeń w tych samych fragmentach dwóch zapisów jest już bez porównania mniejsze niż pojedynczego uszkodzenia. Sposobem wprowadzania nadmiarowości, który minimalizuje prawdopodobieństwo wystąpienia takich pechowych przypadków, rządzi dość złożona matematyka z pogranicza statystyki, której nie będziemy tu omawiać. W każdym razie, dwie jednakowe kopie umieszczone jedna za drugą zwykle nie okazują się rozwiązaniem otymalnym.