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

Классы МПК:H03M7/00 Преобразование кода, в котором информация представлена заданной последовательностью цифр или числом, в код, где та же информация представлена последовательностью цифр или числом, отличными от заданных
Патентообладатель(и):Хузин Максим Радикович (RU)
Приоритеты:
подача заявки:
2008-09-29
публикация патента:

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

способ кодирования информации, патент № 2423785 способ кодирования информации, патент № 2423785 способ кодирования информации, патент № 2423785 способ кодирования информации, патент № 2423785

Формула изобретения

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

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

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

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

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

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

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

Описание изобретения к патенту

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

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

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

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

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

На Фиг.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.

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

Класс H03M7/00 Преобразование кода, в котором информация представлена заданной последовательностью цифр или числом, в код, где та же информация представлена последовательностью цифр или числом, отличными от заданных

система и способ сжатия мультитипотокового видео с использованием множества форматов кодирования -  патент 2524845 (10.08.2014)
способ манипуляционного кодирования -  патент 2522300 (10.07.2014)
способы, устройства и системы для параллельного кодирования и декодирования видеоинформации -  патент 2514091 (27.04.2014)
устройство для преобразования из полиномиальной системы классов вычетов в позиционный код -  патент 2513915 (20.04.2014)
способ восстановления искаженных сжатых файлов -  патент 2510957 (10.04.2014)
способ передачи и приема информации -  патент 2510942 (10.04.2014)
система передачи и приема информации -  патент 2510941 (10.04.2014)
система передачи и приема информации -  патент 2510940 (10.04.2014)
способ для кодирования последовательности целых чисел, устройство хранения и сигнал, переносящий кодированную последовательность целых чисел, а также способ декодирования последовательности целых чисел -  патент 2510573 (27.03.2014)
способ обработки цифрового файла, в частности, типа изображения, видео и/или аудио -  патент 2510150 (20.03.2014)
Наверх