Описание тега lz77
LZ77 - это алгоритм сжатия данных без потерь, опубликованный Абрахамом Лемпелем и Джейкобом Зивом в 1977 году.
1
ответ
Сопоставляет перекрывающиеся взгляды на LZ77/LZSS с суффиксными деревьями
Предыстория: у меня есть реализация универсального бэкэнда LZSS на C++ (доступно здесь. Алгоритм сопоставления, который я использую в этой версии, чрезвычайно прост, потому что он изначально предназначался для сжатия относительно небольших файлов (м…
10 июл '15 в 18:13
1
ответ
Как получить пары <расстояние, длина> из компрессора ZLIB
Я сжимаю несколько длинных строк, используя ZLIB, который использует LZ77 представления повторяющихся подстрок до кодирования этих представлений с использованием дерева Хаффмана. Я заинтересован в изучении последовательности представлений целочислен…
27 июл '16 в 21:20
0
ответов
Понимание этого алгоритма декомпрессии на основе LZSS
Я хочу понять этот алгоритм на основе LZSS, чтобы написать компрессор (и, возможно, лучший декомпрессор), я изучаю LZ77 и LZSS, но есть несколько строк, которые я до сих пор не понимаю. Я прокомментировал следующий код столько, сколько смогу, первый…
22 дек '16 в 10:22
1
ответ
zlib lz77 раздвижное окно и максимальная длина соответствия
Я пытаюсь найти два параметра (размер скользящего окна и максимальная длина соответствия) в алгоритме LZ77 (исходный код: http://www.zlib.net/) для анализа различных уровней сжатия. Сначала я обнаружил, что значение CHUNK в zpipe.c является параметр…
02 янв '15 в 15:56
2
ответа
Рассуждение метода DEFLATE
Почему LZ77 DEFLATE использует кодировку Хаффмана для второго прохода вместо LZW? Есть ли в их комбинации что-то оптимальное? Если да, то каков характер вывода LZ77, который делает его более подходящим для сжатия Хаффмана, чем LZW или какой-либо дру…
28 сен '16 в 23:36
1
ответ
Разница: LZ77 против LZ4 против LZ4HC (алгоритмы сжатия)?
Я понимаю алгоритмы LZ77 и LZ78. Я читал о LZ4 здесь и здесь и нашел код для него. Эти ссылки описывают формат блока LZ4. Но было бы замечательно, если бы кто-то мог объяснить (или направить меня к какому-нибудь источнику объяснения): Чем LZ4 отлича…
20 фев '15 в 18:09
0
ответов
Производительность сжатия lz77 на большом случайном массиве
У меня есть большой массив необработанных байтов. Массив байтов не следует за шаблоном, а значения байтов могут быть любыми (случайными). Размер массива составляет 45000x5x400 байт. И у меня есть 1 секунда для кодирования. Будет ли осуществимо lz77?…
30 май '16 в 13:16
1
ответ
DEFLATE: обратная ссылка действительно лучше?
Я делаю свой собственный компрессор DEFLATE, который почти каждый раз превосходит библиотеку ZLIB. В формате DEFLATE (LZ77) поток данных содержит либо байтовый литерал, либо обратную ссылку, говорящую о том, что мы должны скопировать последовательно…
19 май '18 в 13:34
0
ответов
Метаданные декомпрессии MS-XCA указывают вне сжатого байтового массива
Мне нужно распаковать файл модели данных, встроенный в файл xlsx. Предполагается, что файл использует формат файла MS-XLDM и должен состоять из 3 разделов (заголовок модели данных электронной таблицы, файлы и виртуальный каталог), и сжат только сред…
24 сен '18 в 13:02
2
ответа
Не могли бы вы объяснить, как конвертировать из lz77 в Хаффмана?
Не могли бы вы объяснить, как конвертировать из lz77 в Хаффмана на примере на картинке ниже?
24 сен '17 в 20:07
1
ответ
Коэффициент сжатия LZW, LZ77 и других простых в реализации алгоритмов
Я хочу сжать .txt файлы, которые содержат даты в yyyy-mm-dd hh:mm:ss формат и английские слова, которые иногда имеют тенденцию повторяться в разных строках.Я прочитал несколько статей об алгоритме сжатия и обнаружил, что в моем случае кодирование на…
10 фев '19 в 23:34
1
ответ
LZ 77, 78 алгоритм сжатия ЭКГ
Я заинтересован в реализации алгоритмов LZ для сжатия сигнала ЭКГ и хочу оптимизировать код с учетом микроконтроллера. Таким образом, энтропия будет эффективной и займет меньше времени для сжатия и распаковки сигнала ЭКГ. Я полностью застрял, как я …
21 июн '15 в 02:07
1
ответ
Как я могу оптимизировать мой компрессор сдвижного окна Lz77?
Я написал Java-компрессор для очень непонятного формата сжатия. (В основном он использовался на Amiga Computers в 1990-х годах). Существует довольно много документации о том, как распаковать формат файла, но не о том, как на самом деле сжать его. Ит…
01 окт '18 в 03:25
2
ответа
Используется ли DEFLATE в сжатии gzip и png одинаково?
Я читал о gzip-сжатии и png-сжатии изображений, и они оба используют алгоритм DEFLATE, но я не уверен, что реализация этого алгоритма одинакова. Кроме того, если это тот же алгоритм, то в чем разница между этими компрессиями, кроме того факта, что p…
23 янв '18 в 23:06
0
ответов
Зачем сочетать Хаффмана и lz77?
Я занимаюсь реверс-инжинирингом в игре Gameboy Advance, и я заметил, что разработчики оригиналов написали код, который имеет два системных вызова для распаковки уровня, используя Huffman и lz77 (в этом порядке). Но зачем использовать Huffman + lzZ7?…
06 апр '19 в 08:09
0
ответов
Как считать смещение в LZ77?
Я пытаюсь изучить алгоритм LZ77. В примерах, предоставленных моим профессором, говорится, что вы посчитываете смещение для токена от начала скользящего окна до соответствующего символа. Например: search buffer | lookahead buffer I: 1 2 3 4 5<- th…
14 авг '19 в 21:24
2
ответа
Расшифровка строки Z64 (ZB64)
Я работаю над разбивкой определений этикеток ZPL, созданных программным обеспечением для создания этикеток NiceLabel. По большей части мне не нужно беспокоиться о декодировании Z64, потому что это просто закодированная графика, и мне не нужно изменя…
16 окт '19 в 19:24
2
ответа
Как правильно использовать std::string для хранения байтов (беззнаковых символов)?
Я кодирую алгоритм сжатия LZ77, и у меня проблемы с сохранением беззнаковых символов в строке. Чтобы сжать любой файл, я использую его двоичное представление, а затем читаю его какchars (поскольку 1 символ равен 1 байту, afaik) до std::string. Все о…
30 ноя '19 в 19:13
1
ответ
Как декодировать двоичный код в кодировке Base64 (закодированный с использованием алгоритма LZX) обратно в исходную строку
Я пытаюсь декодировать строку, которая закодирована с использованием алгоритма LZX с размером окна LZX 2 мегабайта (двоичный), а затем преобразована в base64. Я получаю эту строку в ответ от Microsoft Update API (GetUpdateData). Согласно документаци…
10 фев '20 в 17:08
0
ответов
Какие шестнадцатеричные значения опкода у Lempel-Ziv?
Я делаю программу, которая делает zip quines, и я не знаю шестнадцатеричных значений для кодов операций печати и повтора Lempel-Ziv. Кто-нибудь знает ценности?
03 сен '20 в 22:53