Информация и информационные процессы Практические работы Алгоритм rle
Скачать 188 Kb.
|
И нформатика, 11 класс К.Ю. Поляков, Е.А. Еремин |
| .0 | .1 | .2 | .3 | .4 | .5 | .6 | .7 | .8 | .9 | .A | .B | .C | .D | .E | .F |
0. | NUL | SOH | STX | ETX | EOT | ENQ | ACK | BEL | BS | TAB | LF | VT | FF | CR | SO | SI |
1. | DLE | DC1 | DC2 | DC3 | DC4 | NAK | SYN | ETB | CAN | EM | SUB | ESC | FS | GS | RS | US |
2. | | ! | " | # | $ | % | & | ' | ( | ) | * | + | , | — | . | / |
3. | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4. | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
5. | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ^ | _ |
6. | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
7. | p | q | r | s | t | u | v | w | x | y | z | { | | | } | | DEL |
Ответ:
Определите количество байтов в исходной и распакованной последовательности (см. предыдущее задание) и вычислите коэффициент сжатия:
Сжатая последовательность | Несжатая последовательность | Коэффициент сжатия |
| | |
Проверьте результат, полученный в предыдущем пункте, с помощью программы RLE. Предложите два способа проверки.
Постройте последовательности, которые сжимаются алгоритмом RLE ровно в 2 раза, в 4 раза, в 5 раз. Проверьте свои ответы с помощью программы RLE.
Несжатая последовательность | Сжатая последовательность | Коэффициент сжатия |
| | 2 |
| | 4 |
| | 5 |
Придумайте три последовательности, которые невозможно сжать с помощью алгоритма RLE:
Несжатая последовательность | «Сжатая» последовательность | Коэффициент сжатия |
| | |
| | |
| | |
Используя программу RLE, примените RLE-сжатие к следующим файлам и найдите для каждого из них коэффициент сжатия:
Файл | Размер без сжатия | Размер после сжатия | Коэффициент сжатия |
grad_vert.bmp | | | |
grad_horz.bmp | | | |
grad_diag.jpg | | | |
Объясните результаты, полученные в предыдущем пункте:
почему не удается сжать рисунки в формате JPEG?
Ответ:
почему для двух рисунков в формате BMP одинакового размера коэффициенты сжатия по алгоритму RLE так сильно отличаются? Подсказка: откройте эти рисунки в любой программе просмотра.
Ответ:
Оцените максимально достижимый коэффициент сжатия с помощью рассмотренного в учебнике варианта RLE-алгоритма. В каком случае его удастся достичь?
Ответ:
Оцените коэффициент сжатия с помощью RLE-алгоритма в худшем случае. Опишите этот худший случай.
Ответ:
Сравнение алгоритмов сжатия
При выполнении этой работы используются программы RLE (алгоритм сжатия RLE) и Huffman (кодирование Хаффмана и Шеннона-Фано).
Запустите программу Huffman.exe и закодируйте строку «ЕНОТ НЕ ТОНЕТ», используя методы Шеннона-Фано и Хаффмана. Запишите результаты в таблицу:
| Шеннон и Фано | Хаффман |
Длина основного кода | | |
Длина кодовой таблицы (дерева) | | |
Коэффициент сжатия (по основным кодам) | | |
Коэффициент сжатия (с учетом дерева кодов) | | |
Сделайте выводы.
Ответ:
Как, по вашему мнению, будет изменяться коэффициент сжатия при увеличении длины текста, при условии, что набор символов и частота их встречаемости останутся неизменной? Проверьте ваш вывод с помощью программы (например, можно несколько раз скопировать ту же фразу).
Ответ:
Используя кнопку Анализ файла в программе Huffman, определите предельный теоретический коэффициент сжатия для файла a.txt1 при побайтном кодировании.
Ответ:
С помощью программ RLE и Huffman выполните сжатие файла a.txt разными способами. Запишите результаты в таблицу:
| RLE | Шеннон и Фано | Хаффман |
Размер сжатого файла | | | |
Коэффициент сжатия | | | |
Объясните результат, полученный с помощью алгоритма RLE.
Ответ:
Используя кнопку Анализ файла в программе Huffman, определите предельный теоретический коэффициент сжатия для файла a.txt.huf при побайтном кодировании. Объясните результат.
Ответ:
Примените несколько раз повторное сжатие этого файла с помощью алгоритма Хаффмана (новые файлы получат имена a.txt.huf2, a.txt.huf3 и т.д.) и заполните таблицу, каждый раз выполняя анализ полученного файла.
| Размер файла | Предельный коэффициент сжатия |
a.txt | | |
a.txt.huf | | |
a.txt.huf2 | | |
a.txt.huf3 | | |
a.txt.huf4 | | |
a.txt.huf5 | | |
a.txt.huf6 | | |
Объясните, почему с некоторого момента при повторном сжатии файла его размер увеличивается.
Ответ:
Выполните те же действия, используя метод Шеннона-Фано.
| Размер файла | Предельный коэффициент сжатия |
a.txt | | |
a.txt.shf | | |
a.txt.shf2 | | |
a.txt.shf3 | | |
a.txt.shf4 | | |
a.txt.shf5 | | |
a.txt.shf6 | | |
Объясните, почему с некоторого момента при повторном сжатии файла его размер увеличивается.
Ответ:
Сравните результаты сжатия этого файла с помощью алгоритма RLE, лучшие результаты, полученные методами Шеннона-Фано и Хаффмана, а также результат сжатия этого файла каким-нибудь архиватором.
| Размер файла | Предельный коэффициент сжатия |
RLE | | |
Хаффман | | |
Шеннон и Фано | | |
ZIP | | |
RAR | | |
7Z | | |
Объясните результаты и сделайте выводы.
Ответ:
Использование архиватора
Изучите возможности архиватора, который установлен на вашем компьютере (Ark, 7-Zip, WinRAR или др.).
Откройте каталог, указанный учителем. Он должен содержать все файлы, которые используются далее.
Распакуйте архив secret.zip, который упакован с паролем secretLatin. В подкаталогах, получившихся после распаковки, вы должны найти 3 файла, содержащие части высказывания на латинском языке, которое означает «договоры следует выполнять».
Создайте новый текстовый файл latin.txt и запишите в него это высказывание на латыни. После этого удалите архив secret.zip.
Выполните сжатие отдельно для каждого из перечисленных в таблице файлов, используя формат архива, указанный учителем. Вычислите коэффициент сжатия (для этого удобно использовать табличный процессор):
-
Имя файла
Описание
Объем до
сжатия, Кб
Объем после сжатия, Кб
Коэффициент сжатия
random.dat
случайные данные
391
morning.zip
сжатый файл
244
sunset.jpg
рисунок в формате JPEG
730
prog.exe
программа для Windows
163
signal.mp3
звук в формате MP3
137
forest.wav
звук в формате WAV
609
ladoga.bmp
рисунок в формате BMP
9217
tolstoy.txt
текст
5379
Сделайте выводы о том, какие файлы обычно сжимаются лучше, а какие – хуже:
Ответ:
Если ваш архиватор позволяет создавать самораспаковывающиеся архивы, сравните размеры обычного архива и SFX-архива для файла tolstoy.txt:
-
Имя архива
Описание
Объем до
сжатия, Кб
Объем после сжатия, Кб
tolstoy.7z
обычный архив
5379
tolstoy.exe
SFX-архив
5379
Объясните, почему размеры двух архивов получились разные. После этого удалите оба созданных архива.
Переместите рисунки в отдельный каталог Pictures, а звуковые файлы – в каталог Sounds.
Упакуйте рисунки и звуки в архив Media с паролем media123.
Упакуйте все остальные файлы и папки в архив Data (без пароля).
Удалите все файлы, кроме архивов Media и Data, и покажите работу учителю.
Сжатие с потерями
Скопируйте в свою папку файл valaam.bmp.
Используя растровый графический редактор (GIMP, Photoshop), сохраните несколько копий этого рисунка с разным качеством, от 0% до 100%.
В редакторе GIMP нужно выбрать пункт меню Файл – Экспортировать, ввести имя файла с расширением JPG (например, для файла с качеством 50% можно использовать имя valaam50.jpg) и в появившемся окне установить нужное качество:
В редакторе Photoshop нужно выбрать пункт меню Файл – Сохранить как…, далее в окне сохранения файла выбрать формат JPEG, ввести имя файла с расширением JPG (например, для файла с качеством 50% можно использовать имя valaam50.jpg) и в появившемся окне установить нужное качество (от 0 до 12):
Для GIMP:
-
Качество, %
0
10
20
30
40
50
60
70
80
90
100
Объем файла, Кбайт
Для Photoshop:
-
Качество, %
0
1
2
3
4
5
6
7
8
9
10
11
12
Объем файла, Кбайт
С помощью табличного процессора постройте график по этим данным.
График:
Сделайте выводы.
Ответ:
Просмотрите файлы, полученные при разных степенях сжатия. Выберите оптимальный на ваш взгляд вариант, когда при небольшом размере файла сохраняется приемлемое качество рисунка.
Ответ:
Скопируйте в свою папку звуковой файл bears.mp3.
Используя звуковой редактор (например, Audacity), сохраните несколько копий этого звукового файла с разным качеством. Для формата Ogg Vorbis используйте качество от 0 до 10, для формата MP3 – битрейт от 8 до 128 Кбит/с.
В табличном процессоре заполните таблицу
Для формата Ogg Vorbis:
-
Качество
1
2
3
4
5
6
7
8
9
10
Объем файла, Кбайт
Для формата MP3:
-
Битрейт, Кбит/с
8
16
32
48
64
96
128
Объем файла, Кбайт
Постройте график по этим данным.
График:
Объясните, почему получилась именно такая зависимость.
Ответ:
Прослушайте файлы, полученные при разных степенях сжатия. Выберите оптимальный на ваш взгляд вариант, когда при небольшом размере файла сохраняется приемлемое качество звука.
Ответ:
1 Этот файл имеет объем 1 Мбайт и состоит из одних символов «А».
http://kpolyakov.spb.ru