Dzisiejszy cyfrowy świat łączy wszystkich za pomocą urządzeń przenośnych, takich jak telefony komórkowe i tablety. Doprowadziło to również do wzrostu udostępniania danych, które dodatkowo wymaga skutecznego zarządzania pamięcią dysków. Ponadto szybkie i skuteczne udostępnianie danych w Internecie wymaga, aby rozmiary plików były jak najbardziej małe. Formaty plików kompresji oferują algorytmy sprężania stratnych i bezstratnych do kompresji danych. Pomagają one w zmniejszeniu wykorzystania przechowywania dysku i szybkiego przesyłania danych przez Internet. W tym artykule spróbujmy uzyskać wiedzę na temat najczęściej używanych algorytmów kompresji i ich typów.
Bezstratne algorytmy kompresji
Jak sama nazwa wskazuje, bezstratne algorytmy kompresji należą do kategorii algorytmów kompresji danych, które kompresują pliki bez utraty żadnej z ich treści. Oznacza to, że bezstratne algorytmy kompresji mogą dokładnie zrekonstruować oryginalne dane ze skompresowanych danych. Wiele różnych algorytmów jest zaprojektowanych z myślą o typowym rodzaju danych wejściowych, albo przy założeniu, jakie rodzaje nadmiarowości prawdopodobnie nie są zawierane. Poniżej znajduje się krótkie wyjaśnienie niektórych z najczęściej stosowanych algorytmów kompresji bezstratów:
BZIP2
Ten algorytm wykorzystuje algorytm Burrows-Wheeler z kodowaniem RLE i Huffmana do kompresji danych. Służy do kompresji plików tylko bez ich archiwizacji. Pliki skompresowane są zwykle zapisywane z rozszerzeniem .BZ2.
Huffman kodowanie
Algorytm ten oparty jest na określonej metodzie wyboru tożsamości dla każdego symbolu, co daje kod prefiksu. Kodowanie Huffmana jest tak powszechną metodą tworzenia kodów prefiksów. Pliki kompresji z rozszerzeniami, takimi jak. MPQ ,. Ace ,. JPEG ,. Png ,. Zip są obsługiwane przez Huffmana kodowanie.
Kompresja Lempel-Ziv
Ten algorytm kompresji jest również znany jako LZ77 i LZ78 to dwa bezstronne algorytmy kompresji danych. Połączenie tych algorytmów opiera się na wielu wariantach, w tym LZW, LZSS, LZMA i innych. Obaj są teoretycznie koderami słownikowymi. Podczas kompresji LZ77 utrzymuje przesuwane okno. Później lub później wykazano, że jest to równoważne wyraźnie słownika skonstruowanego przez LZ78. Dlatego stają się równoważne w dekompresji całych danych. Pliki z. LZMA ,. LZO ,. LZ ,. LZH Rozszerzenia są obsługiwane przez kompresję Lempel-Ziv.
Prognozy przez częściowe dopasowanie (PPM)
** Prognozy przez częściowe dopasowanie**, które jest również znane jako PPM, jest algorytmem kompresji opartym na prognozowaniu i modelowaniu kontekstu. Aby przewidzieć następny symbol w strumieniu, modele PPM używają zestawu wcześniejszych symboli w strumieniu nieskompresowanego symbolu. Algorytm PPM obsługuje pliki ZIP i 7z.
Kodowanie długości (RLE)
Algorytm ten jest również znany jako algorytm kompresji bezstratej RLE oparty na sekwencjach zawierających tę samą wartość danych, która występuje w wielu sąsiednich elementach danych. Te sekwencje nazywane są biegami. RLE przechowywał każdy uruchomienie jako pojedyncza wartość danych i liczba. Jest to korzystne dla danych zawierających wiele przebiegów, takich jak proste obrazy graficzne, np. rysunki, ikony, linie i animacje. Pliki z. PSD ,. PSB ,. TGA Rozszerzenia są obsługiwane przez RLE
Stratne algorytmy kompresji
Stratne algorytmy kompresji są o krok do przodu w celu zmniejszenia wielkości przechowywania plików. Podczas gdy utrata niektórych informacji jest akceptowana jako upuszczenie nieistotnych szczegółów. Badania dotyczące tego, w jaki sposób ludzie rozumieją dane. Większość stratnych algorytmów kompresji opiera się na kodowanie transformacji. Niektóre z słynnych algorytmów kompresji stratnych zostały krótko wyjaśnione poniżej:
Dyskretna transformacja cosinusowa (DCT)
Dyskretna transformacja cosinusowa (DCT) jest ograniczoną sekwencją punktów danych pod względem suma funkcji cosinusowych zmieniających się przy różnych częstotliwościach. Jest używany w większości mediów cyfrowych, w tym obrazy cyfrowe, takie jak JPEG, HEIF, J2K, EXIF i DNG.
Kompresja falkowa
Kompresja falkowa jest stratnym algorytmem kompresji, który jest najczęściej używany w kompresji obrazu. Algorytm ten wykorzystuje zasadę o nazwie kodowanie transformacji, w której początkowo stosuje się transformaat falkowy. Stwarza to tyle współczynników, ile jest pikseli na obrazie. Ponieważ informacje są statystycznie skoncentrowane w zaledwie kilku współczynnikach, te współczynniki można łatwiej ścisnąć. Godne uwagi implementacje to JPEG 2000, DJVU i ECW dla zdjęć.
Kartezjański kompresja percepcyjna (CPC)
Ta stratna kompresja jest również znana jako CPC w celu wysokiej kompresji czarno-białej obrazowania rastrowego na podstawie skanów archiwalnych. Algorytm jest powszechnie używany w dystrybucji internetowej dokumentów prawnych, map działek geograficznych i planów projektowych.
Kompresja fraktalna
Kompresja fraktalna jest stratnym algorytmem kompresji dla obrazów cyfrowych opartych na fraktalach. Algorytm nadaje się do naturalnych obrazów i tekstur, polegając na częściach obrazu podobnego do innych części tego samego obrazu. Algorytmy fraktalne przekształcają te części na kody fraktalne, które są używane do odtworzenia zakodowanego obrazu.
Wniosek
W tym artykule dowiedziałeś się o algorytmach kompresji, ich głównych typach i powszechnie używanych algorytmach kompresji. Nie jest konieczne zachowanie wiedzy na temat wszystkich algorytmów kompresji. Ale jeśli chcesz stworzyć inteligentną prezentację na temat różnych utraty lub bezstratów, możesz uzyskać pomoc. Stąd dodaj tę stronę blogu jako odniesienie.