
- •Оптимальне кодування
- •Основні властивості оптимальних кодів
- •Методика Шенона і Фано
- •Методика Хаффмана
- •Оптимальні нерівномірні коди (онк)
- •Завадостійке кодування
- •Роздільні і не роздільні коди
- •Лінійні групові коди
- •Спосіб формування кодів.
- •Лінійні блокові коди
- •Загальні особливості стиснення інформації.
- •Розглянемо деякі способи стиснення
- •Стиск інформації
- •Метод стиску Лемпеля-Зіва (Lempela-Ziva)
- •Алгоритм lzss
- •Алгоритм lz78
- •Алгоритм lzw
- •Стиск інформації із втратами
- •Загальні теоретичні основи цифрових комунікацій
- •Особливості та алгоритми кодування голосу.
- •Огляд каналів та систем передачі інформації
- •Мережі типу Wi-Fi
- •Мережі типуBluetooth
- •Мережі типу Wi-max
- •Cтандарт іеее 80216
- •Загальні особливості оптичних каналів зв’яку
- •Вірогідність передачі колових повідомлень
- •Деякі способи стиснення при передачі інформації
- •Зонне стиснення інформації
- •Стиснення інформації використанням адаптивного кодування
- •Стиснення інформації збільшення основи коду
- •Ефективність кодуванні при збільшення основи коду
- •Вплив зворотнього зв'язку на ефективність передачі інформації
- •Код Ріда-Соломона
Алгоритм lzss
В 1982 році Сторер і Шеманський на базі коду LZ77 розробили код LZSS, який є дещо відмінним від базового коду виробленими сформованими кодами. Код, який виробляється LZSS – починається з однобітного префікса, який розрізняє власне код від незакодованого символу. Код має таку ж довжину як і LZ77 і включає першу пару кодів LZ77, а саме зміщення і довжину підрядка. В LZSS вікно зміщується рівно на довжину знайденого підрядка, або на один крок, якщо не знайдено введення підрядка із буфера до довідника. Довжина підрядка LZSS завжди >0 і тому довжина двійкового коду для підрядка – це закруглений до найближчого більшого цілого числа логарифм від довжини буфера.
LZSS має наступні недоліки:
Неможливо кодувати підрядки, які знаходяться один відносно іншого на відстані, яка більша довжини довідника
Довжина підрядка, який потрібно закодувати, обмежена розміром буфера. Якщо ж значно збільшувати розміри довідника і буфера то це веде до значного збільшення часу роботи алгоритму кодера
Алгоритм lz78
Основними авторами був покращений алгоритм LZ77 і запропонований алгоритм LZ78, який має наступні особливості :
Він не використовує біжуче вікно, а формує довідник із уже розглянутих фраз. При старті алгоритму цей довідник має тільки один порожній рядок.
Алгоритм читає символи повідомлення до тих пір, поки цей рядок входить повністю в одну із фраз довідника. Як тільки цей рядок перестане відповідати хоча б одній із фраз довідника, алгоритм генерує код, який складається із індексу рядку в довіднику, який до останнього введеного символу мав вхідний рядок, і символу, який порушив спів падання, потім в довідник додається введений підрядок. Якщо довідник повністю заповнений, то з нього попередньо викидають фразу, яка мала найменше порівнянь. Основним для розміру отриманих кодів являється розмір довідника у фразах, тому що кожен код при кодуванні за методом LZ78 має номер фрази у довіднику. Із цього виходить,що ці коди мають постійну довжину, яка відповідає двійковому логарифму розміру словника і це є «8», яка відповідає кількості біт в розширеній таблиці кодувань ASCII.
Алгоритм lzw
В 1984 році цей код модифікований Уелчем і цей код отримав код LZW. І цей метод базується на покроковому виконанні алгоритму кодера.
Крок 1 Ініціалізація довідника усіма можливими одно-символьними фразами. Як правило – це 256 символів розширеного ASCII. Ініціалізація вхідної фрази W першим символом повідомлення.
Крок 2 Прочитати черговий символ k із повідомлення, яке кодується.
Крок 3 Якщо кінець повідомлення – видати код для W. Якщо фраза Wk уже є в довіднику – присвоїти вхідній фраз значення Wk – перейти до кроку 2. Інакше – видати код W – додати Wk в довідник. Присвоїти вхідній фразі значення k – перейти до кроку 2.
Для LZW ключовим для розміру отриманих кодів є розмір довідника у фразах. LZW коди мають постійну довжину, яка рівна заокругленому в більшу сторону двійковому логарифму розміра довідника.
Стиск інформації із втратами
В багатьох випадках, для забезпечення ефективної роботи можні стискати дані із втратами без погіршення конфі-денційності та важливості інформації. Така технологія переважно використовується для стиску звуків, зображень, графіків. В таких випадках для підвищення коефіцієнту стиску (міри стиску) можна відкидувати частину первинної інформації, однак чітко потрібно визначити ці задачі та сфери, де стиск із втратами недопустимий. Стиск із втратами переважно відбувається за 2 етапи.
На 1-ому реалізовується задача зменшення початкової інформації за рахунок відкидання цієї частини інформації, якою можна знехтувати
На 2-ому етапі переважно реалізовується стиск за алгоритмами без втрат.
Для стиску інформації із втратами переважно використовуються прийняті стандарти. Одним із таких є стандарт GPack, в якому можна регулювати міру стиску, встановлюючи рівень втрати якості.
Особливості стиску можна розглянути на відео інформації. Стиск базується на тому, що кадри на екрані змінюються із певною частотою і при переході від даного кадру до наступного інформація змінюється невеликими порціями, а в деяких випадках і залишається незмінною на протязі декількох кадрів. Алгоритм стиску такої інформації базується на запам’ятовуванні деяких базових кадрів і послідовних невеликих змін до нього.
Стиск інформації може бути реалізований і іншими алгоритмами, так званою дельта - модуляцією і іншими. При ефективному використанні алгоритмів стиску відеоінформацію можна зменшити в 100 і більше разів, що розширює можливість зберігання великої кількості відеоінформації на носіях, наприклад на ком пакт чи відео дисках.