Открыть сервис

Сжатие данных

Сжатие данных — это процесс преобразования цифровых данных из исходного представления в форму, требующую меньшего объёма памяти для хранения или меньшей пропускной способности канала для передачи. Обратный процесс восстановления исходных данных (или их приближения) называется декомпрессией или распаковкой. Сжатие данных является фундаментальной областью информатики и теории информации, находящей применение во всех сферах, связанных с обработкой, хранением и передачей цифровой информации: от текстовых документов и баз данных до изображений, аудио- и видеопотоков.

Основные принципы

В основе сжатия данных лежит устранение избыточности. Избыточность — это информация, которая либо повторяется, либо может быть предсказана на основе уже известных данных, либо не воспринимается органами чувств человека. Сжатие достигается за счёт использования статистических закономерностей в данных (например, часто повторяющиеся символы или последовательности) и психофизиологических особенностей восприятия (например, ограниченная чувствительность глаза к мелким деталям или уха к определённым частотам).

Теоретической основой сжатия данных является теория информации, разработанная Клодом Шенноном в 1940-х годах. Ключевым понятием здесь является энтропия источника — мера средней информативности (неопределённости) одного символа. Энтропия задаёт теоретический предел сжатия для данного источника без потерь: никакой алгоритм не может сжать данные в среднем меньше, чем на величину, равную энтропии.

Классификация методов сжатия

Все методы сжатия данных делятся на два основных класса: сжатие без потерь и сжатие с потерями.

Сжатие без потерь (Lossless Compression)

При сжатии без потерь восстановленные данные бит в бит совпадают с исходными. Этот тип сжатия обязателен для текстов, программного кода, баз данных и любых других данных, где потеря даже одного бита может сделать файл неработоспособным или исказить информацию. Коэффициент сжатия для таких методов обычно невысок (от 1,5 до 5 раз для типичных текстов), но гарантирует полную точность.

Основные алгоритмы:

Сжатие с потерями (Lossy Compression)

При сжатии с потерями восстановленные данные отличаются от исходных, но эти отличия обычно незаметны для человеческого восприятия или допустимы для конкретного приложения. Этот метод позволяет достичь гораздо более высоких коэффициентов сжатия (от 10 до 100 и более раз) за счёт отбрасывания «неважной» информации. Применяется в основном для мультимедиа: изображений, аудио и видео.

Основные алгоритмы:

Применение

Сжатие данных повсеместно используется в современных технологиях.

Хранение данных

Передача данных

Обработка сигналов

Критерии оценки эффективности

Эффективность алгоритма сжатия оценивается по нескольким параметрам:

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →