|
Версия курса на 30.03.2026
Слайды лекций.
Лекция 1. Историческая справка. Структура курса. Измерение информации. Энтропия:
01-introduction.pdf
Лекция 2. Условная энтропия. Марковские источники:
02-condentropy.pdf
Лекция 3. Энтропия на сообщение. Побуквенные коды:
03-prefixcodes.pdf
Лекция 4. Арифметические кодирование. Ассиметричные системы исчисления:
04-arithmeticcoding.pdf
Лекция 5. Кодирование дискретных источников при неизвестной статистике:
05-codingwithunknownprob.pdf
Лекция 6. Алгоритмы сжатия, используемые в архиваторах.
06-archivators.pdf
Лекция 7. Кодирование с заданным критерием скажения. Скалярное и векторное квантование.
Лекция 8. Сжатие изображений. Стандарт JPEG.
Лекция 9. Сжатие изображений. Стандарт JPEG 2000. Стандарт JPEG AI.
Лекция 10. Сжатие видеоинформации.
Лекция 11. Модели каналов. Информационная ёмкость каналов связи.
Лекция 12. Коды, исправляющие ошибки.
Видеозаписи лекций.
Лекция 1
[download]
Лекция 2, Часть 1
[download].
Лекция 2, Часть 2
[download]
Лекция 3, Часть 1
[download].
Лекция 3, Часть 2 + Практика, Часть 1
[download].
Практика, Часть 2
[download]
Лекция 4, Часть 1
[download].
Лекция 4, Часть 2
[download]
Лекция 4, Часть 3
[download]
Лекция 5, Часть 1
[download]
Лекция 5, Часть 2
[download]
Лекция 6, Часть 1
[download]
Лекция 6, Часть 2
[download]
Лабораторная работа №1
Тестовый датасет:
[download].
Дедлайн сдачи: 23 апреля 2026 13:00.
| № |
Алгоритм |
Параметры |
Баллы |
| 1 | Код Хаффмана | Двухпроходный | 10 |
| 2 | Код Хаффмана | Двухпроходный, блоками по 2 символа | 15 |
| 3 | Код Хаффмана | Двухпроходный, с учетом предыдущего символа | 15 |
| 4 | Нумерационное кодирование | На основе арифметического кодирования | 20 |
| 5 | Арифметическое кодирование | Оценка вероятности A | 15 |
| 6 | Арифметическое кодирование | Оценка вероятности D | 15 |
| 7 | "Стопка книг" | Кодирование монотонным кодом | 10 |
| 8 | LZ77 | vlc(x) - монотонный код | 10 |
| 9 | LZ77 | vlc(x) - код Хаффмана | 15 |
| 10 | LZW | | 10 |
| 11 | PPMA | | 20 |
| 12 | PPMD | | 20 |
| 13 | Барроуза-Уиллера | Сжатие методом "стопки книг" | 20 |
Требования к программе
- Написать кодер и декодер, которые работают как отдельные программы и запускаются с командной строки:
- В качестве параметра на вход кодера подаётся имя сжимаемого файла. На выходе программа выдаёт файл со сжатыми данными:
encoder infile zipfile.
- На вход декодера подаётся файл со сжатыми данными и имя декодированного файла:
decoder zipfile decfile. На выходе декодер выдаёт файл decfile, который идентичен исходному infile (бит в бит).
- Алгоритмы, относящиеся непосредственно к кодированию и декодированию должны быть реализованы без использования сторонних библиотек.
На почту eabelyaev@itmo.ru прислать:
- Отчет в pdf формате, который включает в себя:
- ФИО студента, номер группы и задания.
- Описание алгоритма кодирования и декодирования.
- Для каждого из 14 файлов Calgary corpus вычислить оценки H(X), H(X|X), H(X|XX), а также указать значения средних затрат на символ для реализованного алгоритма (в битах) и суммарный размер сжатого файла в байтах. Данные представить в виде таблицы.
- Суммарное значение сжатого размера всех файлов в байтах.
- Исходный код кодера и декодера.
- Исполняемые программы кодера и декодера, готовыми к запуску на Windows 10.
|