Научная статья на тему 'МЕТОД СЖАТИЯ ТЕЛЕИЗМЕРЕНИЙ С ИСПОЛЬЗОВАНИЕМ БИНАРНОГО АРИФМЕТИЧЕСКОГО КОДИРОВАНИЯ'

МЕТОД СЖАТИЯ ТЕЛЕИЗМЕРЕНИЙ С ИСПОЛЬЗОВАНИЕМ БИНАРНОГО АРИФМЕТИЧЕСКОГО КОДИРОВАНИЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
12
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ТЕЛЕМЕТРИЯ / ИЗМЕРЕНИЯ / СЖАТИЕ ДАННЫХ / БИНАРНОЕ АРИФМЕТИЧЕСКОЕ КОДИРОВАНИЕ / КОНТЕКСТ СЖАТИЯ / АППАРАТУРА КОНТРОЛЯ ВНЕШНЕЙ СРЕДЫ / КОСМИЧЕСКИЙ АППАРАТ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Карпенко Дмитрий Сергеевич, Максимов Игорь Александрович, Иванов Владимир Васильевич

Представлен метод сжатия телеизмерений с использованием бинарного арифметического кодирования, созданный для аппаратуры контроля внешней среды, функционирующей на космических аппаратах ГЛОНАСС-М. На основе характеристик метода предложены перспективы его использования в широком спектре измерительных задач.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «МЕТОД СЖАТИЯ ТЕЛЕИЗМЕРЕНИЙ С ИСПОЛЬЗОВАНИЕМ БИНАРНОГО АРИФМЕТИЧЕСКОГО КОДИРОВАНИЯ»

Электронный журнал «Труды МАИ». Выпуск № 65

www.mai.ru/science/trudy/

УДК 629.78.054:621:398

Метод сжатия телеизмерений с использованием бинарного арифметического кодирования

А йй -к-к-к

Карпенко Д. С. , Максимов И. А. , Иванов В. В.

Информационные спутниковые системы имени академикаМ.Ф. Решетнева, ул. 60лет ВЛКСМ, 78-60, Красноярский край, Железногорск,662980, Россия *e-mail: karpenkods@iss-reshetnev. т **e-mail: maximov@iss-reshetnev.ru ***e-mail: ivanov@iss-reshetnev.ru

Аннотация

Представлен метод сжатия телеизмерений с использованием бинарного арифметического кодирования, созданный для аппаратуры контроля внешней среды, функционирующей на космических аппаратах ГЛОНАСС-М. На основе характеристик метода предложены перспективы его использования в широком спектре измерительных задач.

Ключевые слова

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

Введение

В процессе эксплуатации изделий ракетно-космической техники (РКТ) неизбежно возникают задачи контроля состояния систем и оборудования, контроля расхода ресурсов, мониторинга окружающих условий, проведения экспериментов и др., требующие выполнения телеизмерений. Многообразие видов измерений, необходимых для решения этих задач, ограничения связи и другие причины приводят к вопросу сжатия измерительных данных перед передачей [1]. Однако, с учетом различия между спецификами измерительных задач и технологии сжатия данных, требующей знаний теории информации [2], сами методы сжатия сложны в применении, а также требовательны к ресурсам техники, что, в конечном

итоге, приводит к неполному использованию технологий сжатия в измерительных системах либо, часто, к неоправданному усложнению измерительной аппаратуры. Например, при параллельном использовании нескольких методов сжатия с выбором для передачи данных, сжатых с наилучшим эффектом [3]. Учитывая же, что проведение телеизмерений на изделиях РКТ, обычно, задача вторичная, по отношению к целевой, и поэтому должно обеспечиваться в фоновом режиме, соблюдение баланса между объемом и необходимой точностью телеизмерений дополнительно осложняется, что, кроме прочего, накладывает и ограничения эффективности и ресурсоемкости на применяемые методы сжатия.

Перечисленные проблемы остро стояли при эксплуатации на космических аппаратах (КА) ГЛОНАСС-М аппаратуры контроля внешней среды (АКВС), для которых глобальность группировки, особенности орбиты дополнительно затрудняют получение ТМ данных с витка при используемых аппаратных и программных стандартах передачи ТМ.

Развитие метода сжатия данных АКВС

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

Эффективность, адаптивность

У

5

Универсальность, автоматизация

Рис. 1 - Совершенствование метода сжатия данных АКВС

В стремлении к эффективности и возможности адаптивного сжатия мы использовали вероятностные методы сжатия - кодирование Хаффмана, впоследствии замененное на арифметическое кодирование [4], считающееся на сегодняшний день лучшим вероятностным методом, применяющееся в стандартах сжатия видеоданных [5].

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

Для АКВС мы использовали следующие сочетания модели и алгоритмов: кодирование Хаффмана с однобайтовым алфавитом, впоследствии замененное на арифметическое кодирование с однобайтовым алфавитом и расчетом вероятностей на основе кусочно-линейной функции. Первое из них обеспечило сжатие данных АКВС в ~3,4 раза от исходного размера и возможность непрерывного мониторинга данных АКВС на КА группировки, второе - сжатие в ~10 раз, что позволило расширить передаваемые данные измерениями других подсистем КА, таких как система электропитания, терморегулирования, экспериментальными данными по деградации терморегулирующих покрытий. Это дополнение повысило точность определения состояния КА на витке, расширило возможности экспериментальных исследований, а также позволило более детально

оценивать взаимное влияние подсистем и влияние на подсистемы факторов космического пространства.

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

Представленный метод является методом сжатия измерительных данных в ТМ формате без потерь. Принципы реализации основных требований следующие:

• универсальность метода для сжатия параметров разнородного поведения достигается построением контекстной модели, соответствующей структуре ТМ кадров и позволяющей осуществлять независимое кодирование каждого параметра, в соответствии со свойственной ему энтропией данных. (На способ создания контекста для сжатия измерительных данных и способ проведения измерений с его использованием подана заявка на патент к изобретению Российской федерации, №2012116106 от 20.04.2012, в настоящее время заявка не опубликована);

• эффективность сжатия достигается использованием вероятностных методов кодирования в совокупности с универсальностью и точностью контекстной модели для данных ТМ формата;

• реализуемость на различных платформах (ЭВМ, микроконтроллерах, ПЛИС) обеспечивается использованием в алгоритмах кодирования и декодирования исключительно целочисленных и бинарных операций;

• высокая скорость сжатия достигается использованием однопроходных алгоритмов кодирования/декодирования (требования к ресурсу времени);

• минимизация использования ресурсов памяти обеспечивается ограничением количества ИД контекстной модели;

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

Контекстная модель данных и алгоритм

Рассмотрим общие принципы работы алгоритма, схематически представленные на рисунке 2.

Рис. 2 - Общие принципы работы алгоритма сжатия.

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

В целом, без учета сложностей реализации функции кодирования байтов, осуществляющей сжатие и сохранение кода, алгоритм метода достаточно прост: На основе информационной карты кадров производится их кодирование функцией кодирования кадра, которая передает на кодирование каждый байт кадра, в соответствии с определенным для него индексом. Функция кодирования байтов, кроме, собственно, кодирования осуществляет занесение кода в архив сжатых данных, при этом использует статические и динамические ИД. Динамические ИД переопределяются при кодировании каждого байта, с учетом их предыдущего состояния. Аналогично происходит декодирование. В случае использования нескольких типов кадров для каждого из них предварительно назначается идентификатор типа, который заносится в код перед началом кодирования каждого кадра, а перед декодированием, соответственно, извлекается. При этом, идентификатор типа может быть закодирован побайтово тем же способом, что и параметры.

Арифметическое кодирование с однобайтовым алфавитом

Для демонстрации преимуществ метода бинарного кодирования опишем метод арифметического кодирования с однобайтовым алфавитом и расчетом интервалов вероятностей на основе кусочно-линейной аппроксимации гистограммы разностей между

соседними значениями байтов кадра (см. рисунок 3). Этот метод мы ранее использовали в алгоритмах АКВС.

Смещение, метод

-+- ям = РГ-лО = к-х ■ (х, - + к, ■ (X; - |*Г>

-20 -19 -13 -17-16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -3 -2 -1 9 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

XI Х2 ХЗ

Рисунок 3 - Кусочно-линейная функция для расчета интервалов вероятностей.

ИД для кодирования байтов представлялись набором параметров:

• Ршт - минимальная вероятность, обеспечивающая сжатие данных без потерь, ограничение прироста кода и возможность кодирования без сжатия для байтов непредсказуемого поведения;

• х1, х2, х3 - границы наклонных участков;

• к1, к2 - коэффициенты наклона этих участков;

• смещение используется при расчете ожидаемых значений с постоянными приращениями (например, младший байт представления времени формирования кадра при известной периодичности измерений);

• метод - определяет наличие кусочно-линейных участков слева или справа: 0 -симметричные участки (для большинства параметров); плюс 1 - кусочно-линейные участки только справа (например, для счетчиков), минус 1 - кусочно-линейные участки только слева (например, для расходуемых ресурсов).

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

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

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

• нахождение параметров этой функции оказывается неудобным для пересчета, требуемого в адаптивных процедурах сжатия;

• такая функция требует контроля целостности ИД для исключения отрицательных вероятностей;

• и, наконец, она трудно адаптируется для сжатия сигнальных и составных параметров, количество которых в реальных ТМ кадрах не регламентировано.

Бинарное арифметическое кодирование

Недостатки использования однобайтового алфавита заставили искать решение в бинарном арифметическом кодировании (бит за битом). Для демонстрации этого метода обратимся к представлению ТМ измерений (см. таблицы 1-3 на рисунке 4). Таблица! - Бинарное представление ТМИ

Сигнальвие параметры 0010000?

Составные параметры 01110101

Реальные числа 01011000 00001011

Таблица 2 - Представление целых чисел

Число Стандартное представление Инверсно*! представление

+1 00000001 00000001

А шншшнш оооооооо

1Ш111]- юоооооГ

Таблица 3 - Структура ИЛ для бинарного сжатия байта

Смещение } Гриэнак инверсии Вероятности для кодирования йнтов

0 01 ШШ 00000000 ОкАб СхГЕ ОкБЕ 0х БЕ ОкЕБ ОхЕР 0*55

Рис. 4 - Таблицы для демонстрации метода бинарного арифметического кодирования

В таблице 1 приведены примеры бинарного представления сигнальных и составных ТМ параметров, а также экспоненциального представления вещественных чисел, которое можно рассматривать как частный случай составного параметра. Цветами обособлены биты, зависящие друг от друга.

Ясно, что сжатие информации бит за битом более естественно для сигнальных параметров, где все биты можно считать независимыми. Для параметров же длиной больше одного бита решением стало применение инверсии вероятностей метода, для понимания которой на примере целых чисел приведена таблица 2. В таблице 2 представлено стандартное и инверсное бинарное представление однобайтовых целых чисел от минус 1 до плюс 1. Очевидно, бинарное представление рядом стоящих неотрицательных чисел, также как и отрицательных, практически одинаковое, при переходе же между неотрицательными и отрицательными значениями в стандартном представлении целого числа большинство битов инвертируются. Однако, легко видеть и то, что при движении от старшего бита к младшему происходит инверсия только рядом стоящих битов, поэтому эффект сжатия существенно возрастает при хранении информации о значении бита в процессе его кодирования и, далее, при необходимости, ее использовании для инвертирования интервалов вероятностей при кодировании следующего бита. Необходимость такой инверсии определяется для каждого бита отдельно посредством ИД сжатия байта.

В таблице 3 приведена структура ИД для сжатия байта методом бинарного арифметического кодирования с инверсией интервалов. Первая колонка определяет смещение, вторая содержит байт признаков инверсии для каждого бита (для стандартного и инверсного представлений числа). Остальные представляют собой однобайтовые границы интервалов вероятностей соответствующих битов, по сути, - однобайтовая мантисса вероятности встретить нулевой бит (от 0 до соответствующей границы - вероятность нуля, остаток числа (до 0x100)

- вероятность единицы). При равновероятных значениях байта измерений от -1 до 1 для старшего бита граница составляют 2/3 байта (0хА6), а для младшего 1/3 байта (0x55), где 0х

- префикс для обозначения шестнадцатеричного числа. Эффективность сжатия сгенерированных таким образом случайных данных, при однобайтовых вероятностях и 32-х разрядной точности вычисления кода, составляет ~23,6%, при оптимальном сжатии - 18,8%. Заметим, однако, что коэффициент сжатия для реальных данных зависит больше от точности вероятностной модели, чем от того насколько метод сжатия близок к оптимальному. При этом однобайтовые вероятности существенно экономят ресурс памяти необходимый для хранения ИД сжатия, - для одного байта кадра требуется всего 10 байтов ИД.

Хранение таких структур в массиве статических ИД сжатия не нарушает общей схемы работы алгоритма (см. рисунок 2). При этом значение кодируемого бита дополняет структуру динамических ИД, используемых функцией кодирования байта, а на функцию кодирования кадра возлагается задача определения порядка передачи байтов на кодирование по принципу «от старшего к младшему» с целью повышения эффективности сжатия параметров длиной больше одного байта.

Эффективность бинарного метода кодирования для данных АКВС, состоящих преимущественно из калиброванных целочисленных параметров, оказывается немногим выше, по сравнению с предыдущим вариантом, однако этот метод существенно проще и, кроме большей универсальности, обладает дополнительными преимуществами:

Во-первых, возможности автоматизации расчета вероятностей, о которых говорится ниже, обеспечивают простоту использования адаптивного сжатия, эффект от которого может быть существенным на участках аномального поведения параметров. Для ограничения ресурсов памяти при этом применим метод «мнимого скользящего окна» [6], при котором код арифметического метода используется для генерации случайных чисел в адаптивном расчете вероятностей, причем, количество запоминаемых частот метода сокращается до одной на бит кадра.

Во-вторых, на уровне метода сжатия становится возможным исключение, неиспользуемых или «зашумленных» битов, что представляет собой переход к сжатию данных с потерями и может быть использовано в критических случаях для соблюдения баланса между объёмом данных и точностью измерений.

В-третьих, упрощается схема организации контекстной модели, что повышает и простоту использования метода за счет автоматизации. Для демонстрации этого приведем процедуру организации контекстной модели, осуществляющуюся в два шага:

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

На втором шаге по реальным или сымитированным кадрам производится расчет вероятностей арифметического метода, при этом признаки инверсии также назначаются автоматически, для чего расчет вероятностей выполняется обоими методами (с инверсией и без неё), а в качестве ИД сжатия выбираются дающие больший эффект. Такой подход позволяет

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

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

Выводы и рекомендации

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

2 Продемонстрирована эффективность метода при использовании на КА серии ГЛОНАСС-М.

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

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

Библиографический список

1. Назаров А.В., Козырев Г.И., Шитов И.В., Обрученков В.П., Древин А.В., Краскин В.Б., Кудряков С.Г., Петров А.И., Соколов С.М., Якимов В.Л., Лоскутов А.И. Современная телеметрия в теории и на практике. Учебный курс. - СПб.: Наука и техника, 2007 - 672 с.

2. Ватолин Д., Ратушняк А., Смирнов М., Юкин В. Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео. - М.: ДИАЛОГ-МИФИ, 2003. - 384 с.

3. Способы и системы сжатия данных: пат. 2371741 Рос. Федерация № 2006138607/28; заявл 14.03.2005; опубл. 10.05.2008, Бюл. №30. 47 с.

4. Moffat A., Neal R.M., Witten I.H. Arithmetic Coding Revisited//ACM Transactions on Information Systems. - Vol. 16. - No. 3, July 1998, Pages 256-294.

5. Marpe D., Schwarz H., Wiegand T. Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard//IEEE Transactions on Circuits and Systems for Video Technology. - Vol. 13. - No. 7, July 2003, Pages 620-636.

6. Рябко Б.Я. Сжатие данных с помощью «мнимого скользящего окна»./Шроблемы передачи информации. - Том 32. - Вып. 2, 1996. С. 22-30

i Надоели баннеры? Вы всегда можете отключить рекламу.