- •Що таке економне кодування інформації? з якою метою воно здійснюється? Які існують способи задання кодів?
- •Що таке рівномірні й нерівномірні коди? з якою метою використовуються оптимальні нерівномірні коди?
- •Що таке надлишковість коду? Як вона визначається?
- •4. Учомуполягає принцип кодування з перевіркою на парність? Яка надлишковість коду? у чомупереваги та недолікикодування?
- •5. Щотакетвірнаматрицялінійногоблокового коду? Якіїївластивості? Яка структура твірноїматриці?
- •6. Щотакеоптимальнекодуванняінформації? Якийкритерійоптимальностістатистичнихкодів?
- •7. Які існують класи завадостійких кодів? Які коди належать до блокових завадостійких кодів? в яких випадках їх доцільно використовувати?
- •8. Які коди належать до завадостійких? Якими загальними властивостями вони характеризуються? Для чого в завадостійкі коди вводиться надлишковість?
- •9. Які коди називаються префіксними? Що таке вектор Крафта? Як записується нерівність Крафта? у чому полягає умова оптимальності префіксних кодів?
- •11.У чомуполягає алгоритм побудовиоптимального коду Шеннона-Фано?
- •12. У чому полягає алгоритм побудови оптимального коду Хаффмена?
- •13 Які необхідна і достатня умови існування завадостійкого коду?
- •14 Які існують способи задання лінійних блокових кодів? Які основні частини мають кодові слова лінійного блокового коду?
- •15 Які коди належать до лінійних блокових кодів? Які коди мають властивість систематичності?
- •16 Що таке система перевірних рівнянь лінійного блокового коду?
- •17 Що таке перевірна матриця лінійного блокового коду? Які її властивості? Яка структура перевірної матриці?
- •18 Як, скориставшись перевірною матрицею, побудувати систему перевірних рівнянь лінійного блокового коду?
- •19. Що таке кодовий синдром лінійного коду? Як він визначається?
- •20. У чому полягає алгоритм кодування циклічним кодом? Що таке перевірний поліном циклічного коду? Які його властивості?
- •21. Яким чином виявляються помилки поліноміальним кодом? в яких випадках помилки залишаються не знайденими?
- •22 Як побудувати твірну матрицю лінійного блокового коду із заданими характеристиками?
- •23 Які коди називаються блоковими? Що таке порядок блокового коду?
- •24 Які коди називаються поліноміальними?
- •25. Які поліноміальні коди називаються циклічними? Які їх властивості?
- •26. У чому полягає відмінність блокових і згорткових кодів?
- •27. У чому полягає метод блокування повідомлень? Як будується блоковий код Хаффмена?
- •Адаптивний алгоритм хаффмена з упорядкованим деревом
- •28.Які лінійні блокові коди називаються кодом Хеммінга? Як знаходиться кількість інформаційних і перевірних символів для коду Хеммінга? Як утворюються кодові слова коду Хеммінга?
- •29.Як складається перевірна та твірна матриці коду Хеммінга?
- •30.Як виконується декодування коду Хеммінга?
- •31. Як визначаються основні арифметичні операції над поліномами в полі двійкових символів gf(2)?
- •32. Як визначається поліном синдрому для циклічних кодів?
- •33. Як виявляються і виправляються помилки циклічним кодом?
- •34. Як визначаєтьсядовжинакомбінації у двійковихкодах бчх?
- •35. Як побудувати твірну матрицю коду бчх
- •36. Як визначаєтьсямінімальнакількістьперевірнихсимволів для лінійногоблокового коду іззаданими характеристиками?
- •37 Як побудувати твірну та перевірну матриці циклічного коду?
- •38 Яким чином за допомогою кодового синдрому виявляються та виправляються помилки лінійним блоковим кодом?
- •39 Як записуються необхідна і достатня умови виявлення лінійним блоковим кодом помилок заданої кратності?
- •40. Як побудувати твірну матрицю поліноміального коду?
- •41. Як записуються необхідна і достатня умови виправлення лінійним блоковим кодом помилок заданої кратності?
- •42. Який канал передачі інформації описується моделлю двійкового симетричного каналу?
- •43 Як визначається вектор помилок у двійковому каналі зв'язку? у чому полягає задача декодування переданого кодового слова?
- •44 Яку властивість має кодовий синдром прийнятої кодованої послідовності? у яких випадках синдром не дозволяє знайти помилки у переданій послідовності?
- •45 Яке кодування інформації називається статистичним? Які алгоритми стиснення даних відносять до статистичних?
- •46. За якими ознаками класифікують системи й методи стиснення даних?
- •47. Чим визначається верхня границя стиснення інформації? Які існують границі стиснення при використанні оптимального кодування Шеннона-Фано і Хаффмена?
- •48. Які переваги та недоліки використання оптимального кодування Шеннона-Фано і Хаффмена?
- •49 Які системи характеризуються стисненням без втрат інформації? Які основні елементи вони включають?
- •50 У чому полягає арифметичний алгоритм кодування інформації? Які його переваги в порівнянні з іншими статистичними методами стиснення інформації?
- •51 Як здійснюється декодування даних за арифметичним алгоритмом?
- •.У чому полягає основна ідея словникових методів стиснення інформації? у чому переваги використання словникових методів у порівнянні із статистичними? (ст.104)
- •Які основні елементи включає система стиснення інформації? Які функції вони виконують?
- •На які основні групи поділяються словникові алгоритми стиснення? Які їх характерні риси? (ст.104)
- •55 .У чому полягають словникові методи стиснення з використанням «ковзного» вікна lz77, lzss? Чим визначається довжина кодів цих алгоритмів?
- •56 Які переваги модифікованого алгоритму lzss у порівнянні з lz77?
- •57 У чому полягають словникові методи стиснення lz78, lzw? Чим визначається довжина кодів для цих алгоритмів? Які переваги модифікації lzw?
- •58 У чому полягає метод стиснення інформації способом кодування серій (алгоритм rle)
- •59 ЯкінедолікисловниковихалгоритмівLz77, lzss?
- •60 ЯкіперевагиалгоритмівLz78, lzw у порівнянні з lz77, lzss?
- •61 Якісистемихарактеризуютьсястисненнямізвтратамиінформації? у чомурізниця систем ізвтратами й без втратінформації?
- •62 У чому суть дискретного косинус-перетворення у стисканні зображень?
- •63 Яку функцію покладено на етап квантування у алгоритмі jpeg?
55 .У чому полягають словникові методи стиснення з використанням «ковзного» вікна lz77, lzss? Чим визначається довжина кодів цих алгоритмів?
Основна ідея алгоритму LZ77 полягає в тому, що друге і подальші входження деякого підрядка символів у повідомленні замінюються покажчиками на його перше або попереднє входження. Алгоритм використовує частину повідомлення, що вже проглянуто, як словник. Щоб добитися стиснення, він намагається замінити наступну фразу повідомлення покажчиком на вміст словника.
Позначимо через N розмір «ковзного» вікна; F - розмір буфера. Тоді перші N-F символів - це вже закодовані символи, що містить словник, а останні F символів – вміст випереджуючого буфера.
При кодуванні вмісту буфера серед попередніх N-F символів, тобто у словнику, шукається найдовший підрядок, що збігається з початком буфера. Знайдений найбільший збіг кодується тріадою <i, j, a>, де i - зсув у словнику підрядка, що збігається із початком буфера; j - довжина підрядка, що збігається; а - перший символ, що йде за підрядком, що збігається. Далі алгоритм зсовує увесь вміст вікна на j+1 символів і водночас зчитує стільки ж символів вхідного потоку у буфер.
Об'єм пам'яті, що потребує алгоритм-кодер
або декодер, визначається розміром
вікна N. Довжина коду обчислюється
так: довжина підрядка, що співпав із
вмістом словника, не може бути більше
розміру буфера F, а зсув цього
підрядка у словнику не може бути більше
розміру словника мінус 1. Отже, довжина
двійкового коду зсуву i
буде округлений до більшого цілого
,
а довжина коду довжини підрядка j
буде округлений у більшу сторону
,
а символ а
кодується 8 бітами за таблицею
ASCII+.
При декодуванні виконується той же самий порядок роботи з вікном, що й при кодуванні, але на відміну від пошуку підрядків, що збігаються, вони, навпаки, копіюються декодером з вікна згідно з черговою тріадою коду.
Алгоритм LZSS є модифікацією алгоритму LZ77. Код алгоритму починається однобітовим префіксом, що відділяє код підрядка, що збігається, від незакодованого символу. Код складається з пари <i, j> - зсуву i у словнику підрядка, що збігається з початком буфера, і довжини j цього підрядка, як і для LZ77. Вікно зсовується рівно на довжину знайденого підрядка або на 1, якщо входження підрядка буфера у словнику не знайдено.
Довжина підрядка у алгоритмі LZSS
завжди більше 0 і не може перевищувати
розмір буфера F, тому довжина
двійкового коду довжини підрядка, що
збігається, j -
це округлений до більшого цілого
,
а довжина коду зсуву i
– округлений до більшого цілого
.
56 Які переваги модифікованого алгоритму lzss у порівнянні з lz77?
Базовий алгоритм був поліпшений за трьома напрямками: (1) попереджуючий буфер зберігався в циклічній черги, (2) буфер пошуку (словник) зберігався у вигляді дерева двійкового пошуку і (3) мітки мали два поля, а не три. Двійкове дерево пошуку - це двійкове дерево, в якому ліве піддерево кожного вузла А містить вузли, менші ніж Л, а вузли правого піддерева все більше А.
57 У чому полягають словникові методи стиснення lz78, lzw? Чим визначається довжина кодів для цих алгоритмів? Які переваги модифікації lzw?
LZ77іLZ78- алгоритмистисненнябезвтрат, опубліковані встаттяхАбрахамаЛемпеля(англ. AbrahamLempel) і ЯкобаЗіва(англ. JacobZiv) в 1977 і 1978роках.Ціалгоритминайбільшвідомі варіантивсімействіLZ*,яке включаєвсебе такожLZW,LZSS, LZMAта іншіалгоритми. Обидва алгоритмивідносятьсядословниковимметодам,на відмінувід іншихметодів зменшеннянадлишковості, таких якRLEі арифметичнестиснення.LZ77єалгоритмомзі «ковзним вікном»,щоеквівалентнонеявномувикористаннісловниковогопідходу,впершезапропонованого вLZ78.
Принципковзаючоговікна Методкодуваннязгідно з принципомковзаючоговікнавраховуєвже ранішезустрічалосяінформацію, тобто інформацію, якавже відомадлякодувальникаідекодувальник(другеі наступнівходженнядеякою рядкисимволіввповідомленнізамінюютьсяпосиланняминаїї першевходження).
У стандартномуалгоритміLZ77збігикодуютьсяпарою: довжиназбігу (matchlength) зміщення (offset) або дистанція (distance)
недоліки неможливість кодування підрядків, віддалених один від одного на відстані, більшій довжини словника довжина підрядка, яку можна закодувати, обмежена розміром буфера мала ефективність при кодуванні незначного обсягу даних
На відмінувідLZ77, що працює з вже отриманимиданими,LZ78орієнтуєтьсяна дані,які тількибудуть отримані(LZ78 не використовує «ковзне» вікно, він зберігаєсловникзвже переглянутихфраз).Алгоритмзчитуєсимволиповідомленнядотихпір,покинакопичуєтьсяпідрядоквходитьцілком воднуз фразсловника.Як тількицей рядокперестаневідповідати хочабодній фразісловника, алгоритм генеруєкод, що складається з індексурядкивсловнику,яка доостанньоговведеногосимволумістилавхіднірядок, ісимволу, що порушив збіг.Потімдо словникадодаєтьсявведенапідрядок.Якщословник вжезаповнений,тоз ньогопопередньовидаляютьменш всіхвикористовуванувпорівнянняхфразу.
Lzw
+ Невимагає обчисленняймовірностейзустрічальностісимволів абокодів. +Длядекомпресіїне требазберігатитаблицюрядків уфайлдлярозпакування.Алгоритмпобудованийтакимчином, що мивзмозі відновититаблицюрядків,користуючись тількипотокомкодів. +Данийтипкомпресіїне вноситьспотвореньу вихіднийграфічнийфайл, і підходить длястисненнярастровихданих будь-якоготипу. - Алгоритмне проводитьаналізвхіднихданихтому неоптимальний.
