Способ кодирования информации

Изобретение относится к способам сжатия информации без потерь, в частности, к кодированию данных. Техническим результатом является повышение степени сжатия и обеспечение возможности регулирования времени сжатия. Указанный технический результат достигается тем, что из массива начальных данных считывают участок битов, представляют считанный участок битов в виде числа, задают вид функции, кодируют число в виде аргументов функции, в массив конечных данных записывают вид функции, длину считанного участка, аргументы функции, номер старшего разряда числа. При невозможности кодирования числа записывают определенное значение вида функции, длину считанного участка и участок считанных битов. Затем считывают последующий участок битов и аналогично его кодируют. Процесс кодирования проводят, пока не будет достигнут конец массива начальных данных. 6 з.п. ф-лы, 2 ил.

 

Изобретение относится к представлению кода последовательностью цифр и может быть использовано для сжатия информации без потерь.

Задачей заявляемого изобретения является создание способа кодирования информации, повышающего степень сжатия и обеспечивающего регулирование времени сжатия.

Указанный технический результат достигается тем, что способ кодирования информации заключается в считывании из массива начальных данных участка битов, представлении считанного участка битов в виде числа, кодировании числа в виде аргументов математической функции, при этом значения аргументов функции задают таблично или вычисляют. Записывают в массив конечных данных вид функции, длину считанного участка, аргументы функции. Затем считывают последующий участок битов и аналогичным образом его кодируют, пока не будет достигнут конец массива начальных данных. Процесс кодирования проводят повторно над массивом конечных данных.

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

При невозможности кодирования в массив конечных данных записывают определенное значение вида функции, длину считанного участка и участок считанных битов.

На Фиг.1 представлена схема кодирования с использованием математической функции ху, включающая массив начальных данных 1, считанный участок битов 2, представленный в виде числа, кодированный участок 3, содержащий вид функции f, длину считанного участка s, аргументы функции х и у, номер n старшего разряда в считанном участке 2, массив конечных данных 4.

На Фиг.2 представлен алгоритм кодирования, где НД - массив начальных данных, D(НД) - длина массива начальных данных, D0 - начальная длина, НЧ - начальное число, КД - массив конечных данных, D(КД) - длина массива конечных данных. После завершения одного этапа сжатия Р конечные данные (КД) превращаются в начальные данные (НД) следующего этапа. Если счетчик сжимаемости i=0, данные не сжимаются.

Способ кодирования информации осуществляется следующим образом.

Определяют виды функций f и их количество. Задают максимальное max(s) и минимальное min(s) значение длины s считываемого участка битов 2, а также длину соответствующих виду функции аргументов. Вычисляют или задают таблицы значений аргументов для соответствующих функций f.

Считывают из массива начальных данных 1 участок 2 длиной max(s) бит и представляют его в виде числа.

Кодируют число в виде аргументов х и у математической функции f, например степенной f=xy.

При невозможности кодирования числа в виде аргументов первого вида функции f1 производят циклический сдвиг, например, влево считанного участка битов 2 и производят повторное кодирование, при этом в кодированный участок 3 записывают номер n старшего разряда в считанном участке 2.

При отсутствии возможности кодирования числа в виде заданной функции с применением циклического сдвига уменьшают длину считанного участка битов 2 и определяют возможность кодирования, при этом длина считанного участка 2 битов при его уменьшении не может быть менее длины кодированного участка 3.

При невозможности кодирования числа при уменьшении длины считанного участка изменяют вид математической функции и пробуют повторно закодировать число с применением циклического сдвига и уменьшении его длины.

В случае успешного кодирования в массив конечных данных 4 записывают кодированный участок 3, содержащий вид функции f, длину считанного участка s, аргументы функции х и у, номер n старшего разряда, при этом длина каждого параметра, например, 8 бит.

В случае невозможности кодирования числа в массив конечных данных 4 записывают вид функции f, равный 0, длину s участка и весь участок 2 первоначально считанных битов.

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

Затем массив конечных данных 4 представляют в виде нового массива начальных данных и процесс кодирования проводят повторно по заданному количеству этапов сжатия Р, что позволяет регулировать время кодирования информации и определять объем конечных данных.

При декодировании массива конечных данных 4 считывают первый параметр - вид функции f из кодированного участка 3. В случае, если он не равен 0, считывают значение длины s ранее считанного участка 2, аргументы функции х и у, номер n старшего разряда. Определяют значение закодированного числа и записывают его в массив длиной s.

В случае, если вид функции f равен 0, переписывают весь участок длиной s.

Далее считывают следующий кодированный участок битов и аналогичным образом его декодируют, пока не будет достигнут конец массива конечных данных 4.

Таким образом, применение в способе кодирования циклического сдвига участка данных, уменьшение его длины, использование различных функций, а также повторное кодирование конечного массива позволило повысить вероятность представления числа в виде аргументов функций, тем самым увеличить степень сжатия.

1. Способ кодирования информации, заключающийся в том, что из массива начальных данных считывают участок битов, представляют считанный участок битов в виде числа, характеризующийся тем, что задают вид функции, кодируют число в виде аргументов функции, в массив конечных данных записывают вид функции, длину считанного участка, аргументы функции, номер старшего разряда числа, при невозможности кодирования числа записывают определенное значение вида функции, длину считанного участка и участок считанных битов, считывают последующий участок битов и аналогично его кодируют, процесс кодирования проводят, пока не будет достигнут конец массива начальных данных.

2. Способ по п.1, отличающийся тем, что считанный участок битов представляют в виде аргументов математической функции.

3. Способ по п.1, отличающийся тем, что значения аргументов функций задают таблично или вычисляют.

4. Способ по п.1, отличающийся тем, что при невозможности кодирования числа производят циклический сдвиг считанного участка битов.

5. Способ по п.1, отличающийся тем, что при невозможности кодирования числа изменяют длину считанного участка.

6. Способ по п.1, отличающийся тем, что при невозможности кодирования числа изменяют вид функции.

7. Способ по п.1, отличающийся тем, что процесс кодирования проводят повторно над массивом конечных данных.



 

Похожие патенты:

Изобретение относится к способу обработки движущегося изображения и может быть применено, например, в устройстве кодирования и декодирования движущихся изображений.

Изобретение относится к способам кодирования и декодирования многоканального звука. .

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах для формирования кодовых последовательностей. .

Изобретение относится к способу и устройству определения объема кода в кодировании видеосигнала, в котором видеоизображение подвергается ортогональному преобразованию и кодированию с использованием кода переменной длины.

Изобретение относится к вычислительной технике и может быть использовано при построении арифметических устройств и выполнении арифметических операций суммирования и вычитания.

Изобретение относится к вычислительной технике и может быть использовано при построении арифметических устройств и выполнении арифметических операций суммирования и вычитания в позиционно-знаковых кодах.

Изобретение относится к обработке видеоданных и, в частности, к способу сжатия видеопоследовательностей. .

Изобретение относится к цифровому кодированию видео и, в частности, к кодированию с переменной длиной (VLC) коэффициентов преобразования в расширенных уровнях схемы масштабируемого кодирования видео (SVC).

Изобретение относится к цифровой мультимедийной технологии, которая преобразует защищенное цифровое мультимедийное содержимое (контент). .

Изобретение относится к методам кодирования/декодирования цифрового мультимедиа, в частности к основанному на блочном преобразовании цифровому мультимедийному кодеку.

Изобретение относится к вычислительной технике и может быть использовано при построении арифметических устройств для выполнения арифметических процедур суммирования позиционных аргументов [ni]f(2n) и [mi]f(2n )

Изобретение относится к вычислительной технике и может быть использовано при построении арифметических устройств и выполнения арифметических процедур суммирования позиционных аргументов «-»[ni]f(2 ) и «+»[mi]f(2 ) с разными знаками

Изобретение относится к области информационных технологий, информационной техники, телемеханики

Изобретение относится к устройствам масштабируемого декодирования и масштабируемого кодирования

Изобретение относится к области цифровой связи, а именно к методам быстрого поиска в кодовой книге при векторном квантовании данных

Изобретение относится к средствам кодирования/декодирования спектра модифицированного дискретного косинусного преобразования

Изобретение относится к кодированию/декодированию цифровых сигналов, использующих, в частности, перестановочные коды, сопровождающиеся вычислением комбинаторных выражений
Наверх