Вы находитесь на странице: 1из 5

МИНИСТЕРСТВО НАУКИ ВЫСШЕГО ОБРАЗОВАНИЯ

РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего
образования Санкт-Петербургский национальный исследовательский университет
информационных технологий, механики и оптики

Мегафакультет трансляционных информационных технологий


Факультет информационный технологий и программирования

Лабораторная работа №2
По дисциплине «Введение в цифровую культуру и программирование»
Эффективное кодирование

Выполнил студент группы


№M3112
Кононенко Филипп Алексеевич

Проверил
Хлопотов Максим Валерьевич

САНКТ-ПЕТЕРБУРГ

2020
Изначальное изображение

После переделывания в чб

Код

Элементы нашего массива:


0, 0, 20, 20, 20, 40, 40, 60, 60, 40, 20, 20, 20, 20, 60, 120, 120, 120, 120, 120, 160, 200, 200, 180, 180,
180, 180, 200, 180, 160, 160, 160, 180, 160, 160, 160, 140, 140, 140, 140, 160, 140, 140, 140, 140, 140,
120, 140, 140, 140, 140, 140, 140, 100, 120, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 120, 140, 140,
140, 120, 120, 120, 120, 120, 140, 100, 60, 80, 160, 180, 160, 160, 180, 160, 160, 160, 160, 160, 160,
160, 160, 160, 160, 120, 100, 80, 100, 140, 140, 140, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160
Вероятности появления:
№ 0 20 40 60 80 100 120 140 160 180 200 220 240 260

Кол- 16 8 3 4 3 4 14 22 43 8 3 0 0 0
во

Количество различных символов в алфавите:

11

Энтропия:

Алфавит Количество появлений Вероятность появления


0 16 0,125
20 8 0,0625
40 3 0,023
60 4 0,03125
80 3 0,0234
100 4 0.03125
120 14 0.109375
140 22 0.171875
160 43 0.3359375
180 8 0.0625
200 3 0.0234375

Суммарная энтропия = 2.9 бита на символ. Минимальная возможная длина строки = 371 бит.
*0.375+0.25+0.12691494138934792+0.15625+0.12691494138934792+0.15625+0.34919555539994956+0.4366601905467145
+0.528676683967264+0.25+0.12691494138934792= 2,88
Коды Шеннона–Фано.
Бит 0 20 40 60 80 100 120 140 160 180 200

Код 011 01000 010100 010110 0101010 010111 011 00 1 01001 0101011
0 1

Коды Хафмана
Бит 160 140 0 120 180 20 100 60 80 40 200

код 11 00 100 010 1010 0111 10110 01101 101111 101110 01100

Дерево Хаффмана(Оптимальное префиксное кодмирование)

Равномерный код

По формуле Хартли N=2i

Длина одного символа 4 бит

Длина всей последовательности 512 бит

Закодированная кодом Шенона Фано


011000110001000010000100001010100101010010111001011100101010010000100001000010000101110011100111001110
011100111010010100101010010101001010010100101001010010101010101001010101010000000000000100000000000000
000111000000000000000000001011000111001010000011000110001100011000110001100011000110001100011000110001
100011000110001000011100000000000111001110011100111001110000010110001011100101000010010101010010101010
101010101010101001110010110001010000010110000000000010101010101010101010101010101010101010101010

Средняя длинна кодового слова 2,9609

Избыточность 9%

379 бит – длина всей последовательности

Закодированная кодом Хафмана


100010000111001110011101011100101110001101001101010111000111001110011100111001101001000100010001000100
110011000110010100101001010010100011001010011011011010100110110110000000000000110000000000000000010000
000000000000000010110001001011110100010001000100010001000100010001000100010001000100010000111001000000
000000100010001000100010000010110001101010111101101010011011010100110110110110110110110110110110010010
11001011110101100000000000110110110110110110110110110110110110110110110110110110110110110110

Избыточность 5%,

375 бит – длина всей последовательности


Средняя длинна кодового слова 2,9296

по формуле Хартли найдем i:


I=log2(N)=log2(11) = 4 бита
Длина получившейся последовательности:
128*4бита = 512 бит

Оценить