Алгоритмы сжатия данных

Энтропия и количество информации. Комбинаторная, вероятностная и алгоритмическая оценка количества информации. Моделирование и кодирование. Некоторые алгоритмы сжатия данных. Алгоритм арифметического кодирования. Приращаемая передача и получение.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 28.07.2009
Размер файла 325,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

for (;;)

{

// Расширение нижней половины

if (high < half)

{

}

// Расширение верхней половины

else if (low >= half)

{

value -= half;

low -= half;

high -= half;

}

// Расширение середины

else if (low >= first_qtr && high < third_qtr)

{

value -= first_qtr;

low -= first_qtr;

high -= first_qtr;

}

else

break;

// Увеличение масштаба интервала

low = 2 * low;

high = 2 * high + 1;

// Добавить новый бит

a = input_bit();

value = 2 * value + a;

}

return symbol;

}

//--------------------------------------------------------------

// Собственно адаптивное арифметическое кодирование

public void encode(string infile, string outfile)

{

int ch, symbol;

try

{

dataout = new FileStream(outfile, FileMode.Create);

}

catch (IOException exc)

{

return;

}

try

{

datain = new FileStream(infile, FileMode.Open);

}

catch (FileNotFoundException exc)

{

return;

}

start_model();

start_outputing_bits();

start_encoding();

// Цикл обработки символов

for ( ; ; )

{

try

{

// Чтение исходного символа

ch = datain.ReadByte();

}

catch (Exception exc)

{

return;

}

// Выход при достижении конца файла

if (ch == -1)

break;

// Найти рабочий символ

symbol = char_to_index[ch];

// Закодировать символ

encode_symbol(symbol);

// Обновить модель

update_model(symbol);

}

// Закодировать символ конца файла

encode_symbol(eof_symbol);

// Завершение кодирования

done_encoding();

done_outputing_bits();

dataout.Close();

datain.Close();

}

//------------------------------------------------------------

// Собственно адаптивное арифметическое декодирование

void decode(string infile, string outfile)

{

int ch, symbol;

try

{

dataout = new FileStream(outfile, FileMode.Create);

}

catch (IOException exc)

{

return;

}

try

{

datain = new FileStream(infile, FileMode.Open);

}

catch (FileNotFoundException exc)

{

return;

}

start_model ();

start_inputing_bits ();

start_decoding ();

// Цикл обработки сиволов

for (;;)

{

// Получаем индекс символа

symbol = decode_symbol ();

if (symbol == eof_symbol)

break;

// Получаем декодированный символ

ch = index_to_char [symbol];

// Записываем в выходной файл

dataout.WriteByte((byte)ch);

// Обновляем модель

update_model (symbol);

}

dataout.Close();

datain.Close();

}

Приложение 2. Интерфейс программы

Примечание. Для работы программы необходим Microsoft .NET Framework 2.0.


Подобные документы

  • Методы арифметического кодирования. Основные функции программ, реализующие алгоритмы кодирования по методам Хаффмана, Голомба, Фибоначчи и Элиаса. Разработка программно-аппаратных средств оптимального арифметического кодирования и их экономический расчет.

    дипломная работа [1,1 M], добавлен 26.05.2012

  • Методы компрессии информации. Обзор и характеристика существующих методов сжатия информации, основанных на процедуре кодирования Хаффмена. Алгоритмы динамического кодирования методом FGK и Виттера. Программная реализация и руководство пользователя.

    курсовая работа [33,2 K], добавлен 09.03.2009

  • Аналоговое и цифровое представление информации. Понятие, классификация и характеристика методов сжатия данных: алгоритмы одно- и двухпараметрической адаптации, линейной экстра- и интерполяции. Кодирование информации и вычисление циклического кода.

    курсовая работа [157,4 K], добавлен 07.12.2012

  • Классификация и основные характеристики метода сжатия данных. Вычисление коэффициентов сжатия и оценка их эффективности. Алгоритмы полиноминальных, экстраполяционных и интерполяционных методов сжатия и их сравнение. Оптимальное линейное предсказание.

    курсовая работа [1,1 M], добавлен 17.03.2011

  • Сущность универсального метода упаковки, его преимущества и недостатки. Кодирование путем учета числа повторений. Примеры схем распаковки последовательности байтов. Алгоритмы сжатия звуковой, графической и видеоинформации. Разновидности формата МРЕG.

    презентация [96,2 K], добавлен 19.05.2014

  • Способ улучшения сжатия файлов формата DjVu. Общая схема алгоритма классификации букв. Основной алгоритм сравнения пары букв. Быстрый отказ для пары разных букв. Дерево разрезов. Получение монохромных изображений. Алгоритм для устранения мусора.

    курсовая работа [64,7 K], добавлен 28.10.2008

  • Краткий обзор основных теорий сжатия. Концепции идей и их реализация. Сжатие данных с использованием преобразования Барроуза-Вилера. Статический алгоритм Хафмана. Локально адаптивный алгоритм сжатия. Алгоритм Зива-Лемпеля (Welch) и метод Шеннона-Фано.

    практическая работа [188,5 K], добавлен 24.04.2014

  • Сущность языка программирования, идентификатора, структуры данных. Хранение информации, алгоритмы их обработки и особенности запоминающих устройств. Классификация структур данных и алгоритмов. Операции над структурами данных и технология программирования.

    контрольная работа [19,6 K], добавлен 11.12.2011

  • Архивация и компрессия как методы сжатия изображений. Алгоритмы сжатия данных. Вспомогательные средства, которые используются для понижения объемов файлов: изменение цветовой модели изображения, изменение разрешения растрового файла, ресемплирование.

    презентация [45,3 K], добавлен 06.01.2014

  • Задачи обработки и хранения информации при помощи ЭВМ. Сжатие и кодирование информации в информационно-вычислительных комплексах. Метод Лавинского как простейший метод сжатия информации (числовых массивов) путем уменьшения разрядности исходного числа.

    курсовая работа [66,0 K], добавлен 09.03.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.