RU2379832C2 - Энтропийное кодирование с помощью компактных кодовых книг - Google Patents

Энтропийное кодирование с помощью компактных кодовых книг Download PDF

Info

Publication number
RU2379832C2
RU2379832C2 RU2007141938/09A RU2007141938A RU2379832C2 RU 2379832 C2 RU2379832 C2 RU 2379832C2 RU 2007141938/09 A RU2007141938/09 A RU 2007141938/09A RU 2007141938 A RU2007141938 A RU 2007141938A RU 2379832 C2 RU2379832 C2 RU 2379832C2
Authority
RU
Russia
Prior art keywords
information
tuple
order
information values
values
Prior art date
Application number
RU2007141938/09A
Other languages
English (en)
Other versions
RU2007141938A (ru
Inventor
Ральф ШПЕРШНАЙДЕР (DE)
Ральф ШПЕРШНАЙДЕР
Юрген ХЕРРЕ (DE)
Юрген ХЕРРЕ
Карстен ЛИНЦМАЙЕР (DE)
Карстен ЛИНЦМАЙЕР
Йоханнес ХИЛЬПЕРТ (DE)
Йоханнес ХИЛЬПЕРТ
Original Assignee
Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. filed Critical Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф.
Publication of RU2007141938A publication Critical patent/RU2007141938A/ru
Application granted granted Critical
Publication of RU2379832C2 publication Critical patent/RU2379832C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

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

Description

Область техники, к которой относится изобретение
Настоящее изобретение относится к кодированию/декодированию информационных величин и, в частности, к энтропийному кодированию с использованием компактных кодовых книг для генерации эффективного кода.
Описание предшествующего уровня техники
В последнее время методика многоканального аудиовоспроизведения становится все более важной. Это может быть вследствие того факта, что способы аудиосжатия/кодирования, такие как хорошо известный способ mp3, предоставили возможность распространения аудиозаписей через Интернет или другие каналы передачи с ограниченной полосой пропускания. Способ кодирования mp3 стал таким востребованным, потому что он предоставляет возможность распространения всех записей в стереоформате, то есть цифровое представление аудиозаписи включает в себя первый или левый стереоканал и второй или правый стереоканал.
Тем не менее, существуют базовые недостатки обычных двухканальных аудиосистем. Так, был разработан способ объемного звучания. В добавление к двум стереоканалам L и R рекомендованное многоканальное объемное представление включает в себя дополнительный центральный канал C и два объемных канала Ls, Rs. На этот формат звука также ссылаются, как на стерео три/два, что означает три фронтальных канала и два объемных канала. Обычно требуется пять каналов передачи. В условиях воспроизведения необходимы, по меньшей мере, пять динамиков в пяти подходящих местоположениях, чтобы получить оптимальную зону наилучшего восприятия на определенном расстоянии от пяти громкоговорителей, расположенных должным образом.
В данной области техники известны несколько методик для уменьшения объема данных, необходимых для передачи сигнала многоканального аудио. Такие методики называются методиками объединенного стерео. Для этого приведена ссылка на фиг.9, которая иллюстрирует устройство 60 объединенного стерео. Это устройство может быть устройством, реализующим, например, кодирование на основе интенсивности стерео (IS) или кодирование бинауральных характеристик (BCC). Такое устройство обычно в качестве ввода принимает, по меньшей мере, два канала (CH1, CH2,... CHn) и выводит, по меньшей мере, один канал несущей и параметрические данные. Параметрические данные задаются так, что в декодере может быть вычислена аппроксимация исходного канала (CH1, CH2,... CHn).
Как правило, канал несущей включает в себя выборки поддиапазонов, спектральные коэффициенты, выборки временной области и т.п., что обеспечивает относительно хорошее представление базового сигнала, тогда как параметрические данные не включают в себя такие выборки спектральных коэффициентов, а включают параметры управления для управления определенным алгоритмом восстановления, таким как взвешивание путем умножения, временная манипуляция, частотная манипуляция, фазовая манипуляция и т.п. Параметрические данные, следовательно, включают в себя только относительно грубое представление сигнала или ассоциированного канала. В количественном выражении объем данных, требуемых каналом несущей, будет в пределах 60-70 кбит/с, тогда как объем данных, требуемых параметрической дополнительной информацией для одного канала, будет в пределах 1,5-2,5 кбит/с. Примером параметрических данных являются хорошо известные масштабные коэффициенты, информация IS или параметры бинауральных характеристик, как описано ниже.
Способ BCC описан, например, в документе 5574 AES (Сообщества Инженеров-Звукотехников) «Binaural Cue Coding Applied to Stereo and Multi-Channel Audio Compression» ("Кодирование бинауральных характеристик, применяемое к сжатию стерео и многоканального аудио"), С.Фаллер, Ф.Бомгарт, май, 2002, Мюнхен, в документе IEEE WASPAA “Efficient representation of spatial audio using perceptual parametrization” ("Эффективное представление пространственного аудио, используя перцепционную параметризацию"), октябрь, 2001, Могонк, Нью-Йорк, в документе 113-го собрания AES препринт 5686 “Binaural cue coding applied to audio compression with flexible rendering” ("Кодирование бинауральных характеристик, применяемое к аудиокодированию с гибким рендерингом"), С.Фаллер и Ф.Бомгарт, Лос-Анджелес, октябрь, 2002, и в документе “Binaural cue coding - Part II: Schemes and applications” ("Кодирование бинауральных характеристик - Часть II: Схемы и приложения"), С. Фаллер и Ф. Бомгарт, Протоколы IEEE об обработке речи и аудио, том 11, № 6, ноябрь, 2003.
При кодировании BCC несколько входных аудиоканалов конвертируются в спектральное представление, используя преобразование, основанное на дискретном преобразовании Фурье (DFT), с перекрывающимися окнами. Результирующий однородный спектр разделяется на неперекрывающиеся разделы. Каждый раздел, примерно, имеет полосу частот, которая пропорциональна эквивалентной прямоугольной полосе частот (ERB). Параметры BCC, тогда, оцениваются между двумя каналами для каждого раздела. Эти параметры BCC, как правило, задаются для каждого канала относительно опорного канала и также квантуются. Передаваемые параметры в конечном итоге вычисляются согласно предписанным формулам (кодируются), что также может зависеть от особых разделов сигнала, который требуется обработать.
Существует ряд параметров BCC. Параметр ICLD, например, описывает разницу (отношение) между энергиями, содержащимися в двух сравниваемых каналах. Параметр ICC (межканальная когерентность/корреляция) описывает корреляцию между двумя каналами, которая может быть описана как схожесть форм волн двух каналов. Параметр ICTD (межканальная разность времени) описывает глобальный сдвиг во времени между 2 каналами, тогда как параметр IPD (межканальная разность фаз) описывает то же относительно фаз сигналов.
Известно, что при покадровой обработке аудиосигнала анализ BCC также выполняется покадровым образом, то есть меняющимся по времени образом, а также почастотным образом. Это означает, что для каждого спектрального диапазона параметры BCC получаются отдельно. Это означает, что в случае, когда блок аудиофильтров разлагает входной сигнал на, например, 32 сигнала полос пропускания, блок анализа BCC получает набор параметров BCC для каждой из 32 полос.
Относящаяся к этому методика, также известная как параметрическое стерео, описана в препринте 6072 “High-Quality Parametric Spatial Audio Coding at Low Bitrates” ("Высококачественное кодирование параметрического пространственного аудио при низких расходах битов"), Дж. Бриибаарт, С. Ван де Пар, А. Колрауш, Е.Шуйерс, 116-е собрание AES, Берлин, май, 2004, и в препринте 6073 “Low Complexity Parametric Stereo Coding” ("Кодирование параметрического стерео малой сложности"), 116-е собрание AES, Берлин, май, 2004.
Резюмируя, последние подходы для параметрического кодирования сигналов многоканального аудио ("Пространственное Аудиокодирование", "Кодирование бинауральных характеристик" (ВСС) и т.п.) представляют сигнал многоканального аудио посредством сигнала понижающего микширования (который может быть монофоническим или содержать несколько каналов) и параметрической дополнительной информации ("пространственных характеристик"), характеризующей воспринимаемый уровень пространственного звука. Желательно поддерживать расход битов (битрейт) для передачи дополнительной информации на наименьшем возможном уровне, чтобы минимизировать служебную информацию и оставить как можно больше доступной пропускной способности для кодирования сигналов понижающего микширования.
Один из вариантов удержания расхода битов дополнительной информации на низком уровне является кодирование без потерь дополнительной информации схемы пространственного аудио путем применения, например, алгоритмов энтропийного кодирования к дополнительной информации.
Кодирование без потерь широко применялось в обычном аудиокодировании, чтобы обеспечить оптимальное компактное представление квантованных спектральных коэффициентов и другой дополнительной информации. Примеры подходящих схем и способов кодирования даны в стандартах ISO/IEC: MPEG1 часть 3, MPEG2 часть 7 и MPEG4 часть 3.
Эти стандарты и, например, также документ IEEE “Noiseless Coding of Quantized Spectral Coefficients in MPEG-2 Advanced Audio Coding” ("Свободное от шумов кодирование квантованных спектральных коэффициентов в кодировании усовершенствованного аудио MPEG-2", С.Р.Куакенбуш, Дж.Д. Джонстон, IEEE WASPAA, Могонк, Нью-Йорк, Октябрь, 1997, описывают современные методики, которые включают в себя следующие меры для кодирования квантованных параметров без потерь.
- Многомерное кодирование Хаффмана квантованных спектральных коэффициентов.
- Использование общей (многомерной) кодовой книги Хаффмана для наборов коэффициентов.
- Кодирование значения либо в целом, либо кодирование информации знака и информации величины по отдельности (то есть, имея в кодовой книге Хаффмана только записи для заданного абсолютного значения, что уменьшает необходимый размер кодовой книги "без учета знака" по сравнению с книгой "с учетом знака").
- Использование альтернативных кодовых книг различных наибольших абсолютных значений, то есть различных максимальных абсолютных значений среди параметров, которые требуется кодировать.
- Использование альтернативных кодовых книг различного статистического распределения для каждой наибольшей абсолютной величины.
- Передача в декодер выбора кодовой книги Хаффмана в качестве дополнительной информации.
- Использование "секций" для определения диапазона применения каждой выбранной кодовой книги Хаффмана.
- Дифференциальное кодирование масштабных коэффициентов по частоте и последующее кодирование результата по алгоритму Хаффмана.
Еще одна методика для кодирования без потерь грубо квантованных величин в единый код импульсно-кодовой манипуляции (ИКМ) предложена в стандарте MPEG 1 аудио (названная группой в рамках стандарта и используемая для уровня 2). Это более подробно описано в стандарте ISO/IEC 11172-3:93.
Публикация “Binaural cue coding - Part II: Schemes and applications” ("Кодирование бинауральных характеристик - Часть II: Схемы и приложения"), С. Фаллер и Ф. Бомгарт, Протоколы IEEE об обработке речи и аудио, том 11, № 6, ноябрь, 2003, дает некоторую информацию о кодировании параметров BCC. Предполагается, что квантованные параметры ICLD дифференциально кодируются:
- по частоте, и результат впоследствии кодируется согласно алгоритму Хаффмана (посредством одномерного кода Хаффмана),
- по времени, и результат впоследствии кодируется согласно алгоритму Хаффмана (посредством одномерного кода Хаффмана),
и что в конечном итоге наиболее эффективный вариант выбирается как представление исходного аудиосигнала.
Как упомянуто выше, было предложено оптимизировать эффективность сжатия путем применения дифференциального кодирования по частоте и, альтернативно, по времени и выбора наиболее эффективного варианта. Тогда, выбранный вариант сигнализируется в декодер посредством некоторой дополнительной информации.
Описанные выше способы полезны для уменьшения объема данных, которые, например, должны быть переданы в аудио- или видеопотоке. Использование вышеописанных способов кодирования без потерь, основанных на схемах энтропийного кодирования, обычно приводит к битовым потокам с переменной битовой скоростью.
В стандарте AAC (Усовершенствованного Аудиокодека) путем использования кодовых книг "без знаков" предлагается уменьшить как размер кодовых слов, так и размер базовой кодовой книги, причем это основывается на предположении, что распределение вероятностей информационных величин, которые требуется кодировать, зависит только от размера величин, а не от их знаков. Тогда, биты знака передаются отдельно, и они могут рассматриваться как постфиксный код, обратно отображающий кодированную информацию размера в действительную величину (знак x абсолютную величину).
Предполагая, например, что используется четырехмерная кодовая книга Хаффмана, этот подход приведет к сокращению размера кодовой книги на множитель 24=16 (при условии, что все величины имеют знаки).
Для уменьшения размера кода при энтропийном кодировании предпринималось достаточно много попыток. Несмотря на это все еще остаются некоторые значительные недостатки способов по предшествующему уровню техники. Например, при использовании многомерных кодовых книг Хаффмана можно достичь уменьшения расхода битов, необходимого для передачи некоторой кодированной информации. Это достигается за счет увеличения размера используемой кодовой книги Хаффмана, поскольку для каждого дополнительного измерения размер кодовой книги Хаффмана увеличивается в два раза. Это особенно неблагоприятно в приложениях, где кодовая книга Хаффмана передается вместе с кодированной информацией, как, например, имеет место в случае некоторых компьютерных программ сжатия. Даже если кодовая книга Хаффмана не должна передаваться вместе с данными, она должна быть сохранена в кодере и в декодере, что требует дорогостоящего объема памяти, который доступен только в ограниченных количествах, в особенности, в мобильных приложениях для потоковой передачи или воспроизведения видео или аудио.
Сущность изобретения
Целью настоящего изобретения является предоставление концепции для генерации и использования более эффективного кода для сжатия информационных величин и уменьшения размера базовой кодовой книги.
Согласно первому аспекту настоящего изобретения эта цель достигнута посредством кодера для кодирования информационных величин, причем кодер содержит: средство группирования (группирователь) для группирования двух или более информационных величин в кортеж согласно порядку кортежа;
средство генерации (генератор) информации кода для генерации информации порядка, указывающей порядок кортежа, и кодового слова для кортежа, используя правило кодирования, причем правило кодирования таково, что одинаковое кодовое слово назначается кортежам, имеющим идентичные информационные величины в различных порядках; и
интерфейс вывода для вывода кодового слова и ассоциированной с ним информации порядка.
Согласно второму аспекту настоящего изобретения эта цель достигнута посредством декодера для декодирования кодового слова, основанного на информационных величинах, причем декодер содержит:
интерфейс ввода, предоставляющий кодовое слово и ассоциированную с ним информацию порядка, указывающую порядок кортежа, причем порядок кортежа представляет собой порядок расположения двух или более информационных величин в кортеже информационных величин;
средство обработки (процессор) кода для получения кортежа, используя правило декодирования, зависящее он правила кодирования, использованного для создания кодового слова, причем правило декодирования таково, что различные кортежи получаются из одного и того же кодового слова, причем эти различные кортежи имеют одинаковые информационные величины, расположенные в различных порядках кортежа, как указывается различной информацией порядка; и
средство разгруппирования (разгруппирователь) для разгруппирования кортежей на две или более информационные величины.
Согласно третьему аспекту настоящего изобретения эта цель достигнута посредством способа кодирования информационных величин, причем способ содержит этапы, на которых:
группируют две или более информационные величины в кортеж согласно порядку кортежа;
генерируют информацию порядка, указывающую порядок кортежа;
генерируют кодовое слово для кортежа, используя правило кодирования, причем правило кодирования таково, что одинаковое кодовое слово назначается кортежам, имеющим идентичные информационные величины, расположенные в различных порядках; и
выводят кодовое слово и ассоциированную с ним информацию порядка.
Согласно четвертому аспекту настоящего изобретения эта цель достигнута посредством компьютерной программы, которая при исполнении на компьютере реализует вышеупомянутый способ.
Согласно пятому аспекту настоящего изобретения эта цель достигнута посредством способа декодирования кодовых слов, основанных на информационных величинах, причем способ содержит этапы, на которых:
предоставляют кодовое слово и ассоциированную с ним информацию порядка, указывающую порядок кортежа, причем порядок кортежа представляет собой порядок расположения двух или более информационных величин в кортеже информационных величин;
получают кортеж, используя правило декодирования, зависящее он правила кодирования, использованного для создания кодового слова, причем правило декодирования таково, что различные кортежи получаются из одного и того же кодового слова, причем эти различные кортежи имеют одинаковые информационные величины, расположенные в различных порядках кортежа, как указывается различной информацией порядка; и
разгруппировывают кортежи на две или более информационные величины.
Согласно шестому аспекту настоящего изобретения эта цель достигнута посредством компьютерной программы, которая при исполнении на компьютере реализует вышеупомянутый способ.
Согласно седьмому аспекту настоящего изобретения эта цель достигнута посредством кодированных данных, основанных на информационных величинах, причем кодированные данные содержат кодовое слово для кортежа из двух или более информационных величин, расположенных в кортеже согласно порядку кортежа, и информацию порядка, указывающую порядок кортежа.
Настоящее изобретение основано на том, что эффективный код для кодирования информационных величин может быть получен, когда две или более информационные величины группируются в кортеж согласно порядку кортежа и когда используется правило кодирования, согласно которому одно и то же кодовое слово назначается кортежам, имеющим одинаковые информационные величины, расположенные в различных порядках, и когда информация порядка, указывающая порядок кортежа, получается и связывается с кодовым словом.
Для энтропийного кодирования с использованием кодов Хаффмана вышеописанная изобретательская концепция может быть использована более эффективно. Размер кодовой книги Хаффмана зависит как от количества возможных величин, которые требуется кодировать, так и от количества совместно кодированных величин (размерность кодовой книги Хаффмана). Для того чтобы уменьшить требуемый объем памяти, необходимый для представления кодовой книги Хаффмана в конкретном приложении, полезно использовать симметрии в распределении вероятностей данных, которые должны быть кодированы так, чтобы одно кодовое слово Хаффмана представляло целый набор групп совместно кодированных величин с равной вероятностью. Тогда, фактическая группа совместно кодированных величин описывается посредством конкретного постфиксного кода.
Поскольку порядок двух или более величин в кортеже не зависит от содержимого, представляемого этими величинами, то, когда величины в некоторой степени некоррелированные, можно допустить, что вероятности различных порядков одних и тех же величин равны (поскольку величины некоррелированные). Предпочтительно, для кода с переменной длиной, то есть для кода, имеющего кодовые слова с различными длинами, эти равные вероятности могут в результате привести к меньшим кодовым книгам и эффективному коду, когда одно кодовое слово назначается кортежам с различными порядками одинаковых величин.
Следовательно, в предпочтительном варианте осуществления настоящего изобретения информационные величины, которые должны быть кодированы посредством двумерного кодера Хаффмана, сначала кодируются дифференциально, что приводит к дифференциальному представлению с определенными симметриями, как описано более подробно ниже. После этого к дифференциальному представлению применяется ряд операций симметрии, что уменьшает количество возможных кортежей, которые должны быть кодированы, таким образом уменьшая размер требуемой кодовой книги.
Дифференциальное кодирование распределения величин, появляющихся с заданным распределением вероятностей, в результате приведет к распределению величин разности, которая центрирована относительно нулевой точки, имея симметричное распределение вероятностей, то есть величины с одинаковой абсолютной величиной, но с различными знаками, появляются с одинаковой вероятностью.
Основной принцип энтропийного кодирования, как, например, кодирования по алгоритму Хаффмана, заключается в том, что используемая кодовая книга представляет заданное распределение вероятностей информационных величин наилучшим возможным образом ввиду назначения самых коротких возможных кодовых слов информационным величинам, появляющимся чаще всего. Многомерное кодирование Хаффмана следует тому же принципу, но в этом случае две или более информационные величины комбинируются в кортеж, причем целый кортеж впоследствии связывается с одним кодовым словом.
Следовательно, комбинирование дифференциального кодирования с двумерным кодированием Хаффмана приводит к двум симметриям, которые могут быть полезны.
Первая симметрия получается из наблюдения, заключающегося в том, что вероятность появления кортежа (a, b) примерно равна вероятности появления для кортежа (-a, -b). Это соответствует точечной симметрии относительно начала координатной системы, причем первая величина кортежа определяет ось X, а вторая величина кортежа определяет ось Y.
Вторая симметрия основана на предположении о том, что изменения порядка, в котором две величины появляются в кортеже, не изменит вероятность появления кортежа, то есть, что (a, b) и (b, a) вероятны в равной степени. В случае вышеописанной координатной системы это соответствует осевой симметрии относительно биссектрис координатной системы, проходящих через первый и третий квадранты.
Эти две симметрии можно использовать, чтобы размер кодовой книги Хаффмана уменьшился в четыре раза, что означает, что симметричным кортежам назначаются одинаковые кодовые слова. Информация симметрии, то есть порядок исходного кортежа и знак исходного кортежа, указывается информацией порядка и информацией знака, которые передаются вместе с кодовым словом, чтобы предоставить возможность декодирования и восстановления исходного кортежа, включая информацию знака и порядка.
Воспринимая вышеизложенное представление кортежей в двумерной координатной системе, обе симметрии совместно могут рассматриваться как двумерное распределение вероятностей с кривыми уровней (кривыми равных вероятностей), напоминающими овалы с главной осью, развернутой на 45 градусов относительно прямоугольной системы координат.
Если использовать эти две симметрии, кодами Хаффмана потребуется покрыть только примерно одну четверть (первый квадрант) возможных элементов в координатной системе. Двухбитный постфиксный код определяет однозначное соответствие между каждой парой величин в одном из четырех квадрантов и ее соответствующими парами величин в остальных трех квадрантах. Следует отметить, что для пар величин, расположенных на какой-либо граничной линии квадранта, постфиксный код состоит только из одного бита или даже может быть опущен в случае, когда пара величин расположена на обеих граничных линиях, то есть в центре распределения.
Изобретательская концепция уменьшит размер кодовой книги Хаффмана для данных, которые не показывают описанных выше симметрий. Если кодируются такие данные, то, с одной стороны, размер кодовой книги Хаффмана будет малым, но, с другой стороны, может оказаться, что кодированное представление не будет идеально сжатым, поскольку величины, появляющиеся с различными вероятностями, представляются одним и тем же кодовым словом, что приводит к неэффективному использованию расхода битов, поскольку кодовая книга Хаффмана не может быть подогнана так, чтобы соответствовать данным оптимальным образом.
Следовательно, предпочтительно, чтобы эти данные дифференциально кодировались до применения операций симметрии, поскольку дифференциальное кодирование автоматически приводит к полезным симметриям. Таким образом, изобретательская концепция может использоваться, обеспечивая компактное представление и малую кодовую книгу Хаффмана для базового набора информационных величин, поскольку недостаток удвоения количества возможных информационных величин, происходящего из-за дифференциального кодирования информационных величин, может быть компенсирован путем использования симметрий.
Перечень фигур чертежей
Предпочтительные варианты осуществления настоящего изобретения описаны ниже со ссылкой на прилагаемые чертежи, на которых:
фиг.1 - структурная схема отвечающего изобретению кодера;
фиг.2 - иллюстрация предпочтительного варианта осуществления отвечающего изобретению кодера;
фиг.3 - иллюстрация еще одного предпочтительного варианта осуществления отвечающего изобретению кодера;
фиг.4а - иллюстрация первой операции симметрии в отношении данных, которые должны быть кодированы;
фиг.4b - иллюстрация второй операции симметрии в отношении данных, которые должны быть кодированы;
фиг.5 - иллюстрация получения симметричного представления данных;
фиг.6 - структурная схема отвечающего изобретению декодера;
фиг.7 - иллюстрация предпочтительного варианта осуществления отвечающего изобретению декодера;
фиг.8 - иллюстрация еще одного предпочтительного варианта осуществления отвечающего изобретению декодера;
фиг.9 - иллюстрация многоканального кодера по предшествующему уровню техники.
Подробное описание предпочтительных вариантов осуществления
Фиг.1 иллюстрирует отвечающий изобретению кодер 100, содержащий группирователь 102 и генератор 104 информации кода, который включает в себя интерфейс вывода.
Информационные величины 106 группируются группирователем в кортежи 108a-108c информационных величин. В показанном на фиг.1 примере изобретательская концепция описана посредством построения кортежей, каждый из которых состоит из двух информационных величин, то есть путем использования двумерных кодов Хаффмана.
Кортежи 108a-108c передаются в генератор 104 информации кода, причем генератор информации кода реализует правило кодирования, согласно которому одно и то же кодовое слово назначается кортежам, имеющим идентичные информационные величины, расположенные в различных порядках. Следовательно, кортежи 108a и 108c кодируются в одинаковые кодовые слова 110a и 110b, тогда как кортеж 108b кодируется в другое кодовое слово 112. Согласно изобретательской концепции различные информации 114а и 114b порядка генерируются так, чтобы сохранить информацию о порядке, в котором информационные величины сгруппированы в кортежах 108а и 108c. Комбинация информации порядка и кодового слова, следовательно, может использоваться, чтобы восстанавливать исходные кортежи 108а и 108с, поэтому информация порядка доставляется интерфейсом вывода совместно с кодовым словом. Как правило, возможны различные схемы формирования порядков, которые приводят к различным битам информации порядка. В показанном на фиг.1 примере кортежи не подвергаются переупорядочению, когда величины в кортеже появляются в порядке возрастания, как имеет место в случае кортежей 108а и 108b. Кроме того, если принимается, что нулевая информация порядка назначается кортежам, которые не были переупорядочены, то это приведет к порядку информационных величин, в котором им были назначены кодовые слова на фиг.1.
Фиг.2 иллюстрирует предпочтительный вариант осуществления настоящего изобретения, в котором генератор 104 информации кода содержит кодер 120 порядка и энтропийный кодер 122, причем кодер 100 содержит интерфейс 124 вывода.
Кодер 120 порядка генерирует информацию 114а-114с порядка кортежей (указывающую порядок кортежа) и передает эту информацию порядка в интерфейс 124 вывода. Одновременно с этим кодер 120 порядка переупорядочивает информационные величины в кортежах 108а-108с, чтобы получить кортежи 126а-126с, изменяя порядок кортежа на предопределенный порядок кортежа, причем предопределенный порядок кортежа определяет порядок кодирования информационных величин для групп кортежей, имеющих идентичные информационные величины.
Переупорядочивание, например, может быть выполнено также для кортежей, имеющих более чем две информационные величины, путем множества последовательных этапов изменения позиции двух информационных величин внутри кортежа. После каждого этапа выполняется проверка на предмет наличия в кодовой книге кодера порядка записи для данного порядка кортежа. Если это так, то переупорядочивание может быть остановлено, и может быть сгенерировано кодовое слово. Если нет, то вышеупомянутая процедура повторяется до тех пор, пока кодовое слово не будет найдено. Тогда, информация порядка может, например, быть получена из количества изменений, необходимых для получения кодового слова. Аналогично, корректный порядок кортежа может быть повторно сформирован на стороне декодера, используя информацию порядка.
Энтропийный кодер кодирует кортежи 126а-126с, чтобы получить кодовые слова 110а, 110b и 112, и передает эти кодовые слова в интерфейс 124 вывода.
Интерфейс вывода выводит кодовые слова 110а, 110b и 112 и ассоциированную с ними информацию 114а-114с порядка.
Фиг.3 иллюстрирует еще один предпочтительный вариант осуществления настоящего изобретения, в котором генератор информации кода, сверх того, содержит кодер 130 знака для получения информации знака, указывающей комбинацию знаков информационных величин в кортеже.
Показанный на фиг.3 отвечающий изобретению кодер также использует вторую симметрию, назначая одинаковые кодовые слова кортежам, имеющим информационные величины одинакового абсолютного значения, расположенные в одинаковом порядке относительно их абсолютных значений. Следовательно, кодер 130 знака получает информацию 132а-132с знака для каждого из кортежей 134а-134с, указывающую знак величин в кортеже. Кодер 130 знака одновременно изменяет знаки информационных величин в кортежах, чтобы получить предопределенную комбинацию знаков, определяющую комбинацию знака кодирования для каждого порядка абсолютных величин в кортеже, то есть для кортежей, отличающихся только знаками информационных величин.
Информация 132а-132с знака дополнительно передается в интерфейс 124 вывода, который также принимает информацию порядка от кодера 120 порядка и кодовые слова от статистического кодера 122. Интерфейс 124 вывода, тогда, предоставляет кодовые слова и ассоциированную с ними информацию порядка и информацию знака.
Фиг.4а иллюстрирует, как информация знака может быть получена посредством кодера 130 знака и как симметрия относительно знаков может быть использована, чтобы уменьшить размер требуемой кодовой книги Хаффмана.
Изображены возможные величины кортежа (a, b), графически представленного матрицей, в которой величины для а показаны по оси X, а возможные величины для b показаны по оси Y. Величины для а и b симметричны относительно нулевой точки (например, вследствие предыдущего дифференциального кодирования), и каждая из них находится в диапазоне от -4 до 4.
Матрица иллюстрирует все 81 возможных комбинаций параметрических величин а и b. Также показана первая ось 150, указывающая те элементы матрицы, где сумма а и b (а+b) равна нулю. Фигура также иллюстрирует вторую ось 152, где разность а и b (a-b) равна нулю. Как можно видеть, две оси 150 и 152 разделяют матрицу на четыре квадранта, обозначенные номерами 1-4.
Предполагая, что комбинация (a, b) и комбинация (-a, -b) в равной степени вероятны, первая симметрия равна точечной симметрии относительно нулевой точки координат, которая явно показана для двух произвольных элементов 154а и 154b матрицы.
Отвечающий изобретению кодер может уменьшить размер требуемой кодовой книги Хаффмана на множитель, равный примерно двум, путем применения операции симметрии, зеркально отображая элементы третьего квадранта в первый квадрант и элементы четвертого квадранта во второй квадрант. Так можно сэкономить на элементах кодовой книги третьего и четвертого квадрантов, когда посредством информации знака кодер 130 знака дополнительно указывает, из какого квадранта выходит кортеж.
Фиг.4b иллюстрирует, как вторая симметрия может быть использована кодером 120 порядка, чтобы уменьшить размер кодовой книги Хаффмана на еще один множитель, примерно равный двум. Вторая симметрия, означающая, что кортежи (a, b) и (b, a) в равной степени вероятны, равна зеркальному отображению остальных элементов матрицы через ось 152. Это, например, показано для двух элементов 156а и 156b матрицы, показывающих зеркальное отображение кортежа (0, 2) к кортежу (2, 0). Следовательно, путем назначения соответствующим элементам второго и четвертого квадрантов одинаковых кодовых слов можно сэкономить в размере кодовой книги еще на один множитель, равный двум. Кодер 120 порядка получает информацию порядка, чтобы сохранить информацию о том, был ли исходный кортеж из первого квадранта или из второго квадранта.
Как проиллюстрировано фиг.4а и 4b, отвечающий изобретению кодер, включающий в себя кодер знака и кодер порядка, предоставляет возможность покрытия кодами Хаффмана только одного из четырех квадрантов. Двухбитный постфиксный код определяет однозначное соответствие между каждой парой величин в одном из четырех квадрантов и ее соответствующими парами величин в остальных трех квадрантах. Следует отметить, что для пар величин, расположенных на какой-либо граничной линии квадранта, постфиксный код состоит только из одного бита или даже может быть опущен в случае, когда пара величин расположена на обеих граничных линиях, то есть в центре матрицы.
С практической точки зрения, после выполнения операций симметрии, показанных на фиг.4а и 4b, может быть полезным переупорядочить (отобразить) пары величин в остающемся квадранте в квадратную матрицу, поскольку выполнение алгоритма в отношении квадратного представления гораздо более удобно.
Стратегия отображения, реализуемая одним вариантом осуществления настоящего изобретения, показана на фиг.5. В левой части показана исходная матрица с первым квадрантом, который должен быть отображен на квадратную матрицу 160. Квадратная матрица 160 также имеет параметрические величины для параметра а по оси X и параметрические величины для параметра b по оси Y. На чертеже показано переупорядочивание согласно алгоритму отображения, где каждый элемент матрицы обозначен уникальным номером. Следует отметить, что кортежи, в которых сумма информационных величин равна четному числу (сумма a+b представляет собой четное число, что верно для всех незаштрихованных элементов матрицы из первого квадранта), переупорядочиваются в нижнюю левую сторону квадратной матрицы 160, тогда как кортежи, в которых сумма информационных величин равна нечетному числу (заштрихованные элементы), переупорядочиваются в верхнюю правую сторону матрицы 160.
После выполнения вышеописанного процесса отображения кортежи, которые должны быть кодированы по алгоритму Хаффмана, задаются в квадратном представлении, и, следовательно, их легко обрабатывать.
Фиг.6 иллюстрирует структурную схему отвечающего изобретению декодера для декодирования кодовых слов, которые основаны на информационных величинах.
Декодер 200 содержит интерфейс 202 ввода, процессор 204 кода и разгруппирователь 206. Интерфейс 202 ввода предоставляет кодовые слова 210а, 210b и 212, а также ассоциированную с ними информацию 214а, 214b и 216 порядка в процессор 204 кода.
Процессор кода получает кортежи информационных величин 218а, 218b и 218с, используя правило декодирования, причем правило декодирования таково, что различные кортежи получаются из одного и того же кодового слова, причем эти различные кортежи имеют одинаковые информационные величины, расположенные в различных порядках кортежа, как указывается различной информацией порядка.
Следовательно, упомянутые различные кортежи 218а и 218с получаются из одинаковых кодовых слов 210а и 210b, поскольку они ассоциированы с различной информацией 214а и 214b порядка. Кортежи информационных величин 218а-218с, тогда, разгруппировываются посредством разгруппирователя 206, чтобы получить информационные величины 220.
Фиг.7 иллюстрирует предпочтительный отвечающий изобретению декодер, в котором процессор 204 кода включает в себя энтропийный декодер 222 и декодер порядка 224.
Используя кодовую книгу Хаффмана, энтропийный декодер 222 назначает каждое из кодовых слов 210а, 210b и 212 одному кортежу 226а-226с. Кортежи 226а-226с передаются в декодер 224 порядка, который также принимает ассоциированную информацию порядка. Декодер 224 порядка получает информационные величины путем модификации кортежей 226а-226с согласно указанию информации порядка. Полученные окончательные кортежи 228а-228с, тогда, передаются в разгруппирователь 206, который разгруппировывает кортежи 228а-228с, чтобы получить информационные величины 220.
Фиг.8 иллюстрирует еще один предпочтительный вариант осуществления отвечающего изобретению декодера 200, в котором процессор 204 кода, сверх того, включает в себя декодер 230 знака.
Интерфейс ввода предоставляет три идентичных кодовых слова 232а-232с, биты 234а-234с информации знака и биты 236а-236с информации порядка.
Энтропийный декодер 222 декодирует три идентичных кодовых слова 232а-232с в три идентичных кортежа 238а-238с, которые после этого передаются в декодер 230 знака.
Декодер 230 знака дополнительно принимает информацию 234а-234с знака и модифицирует кортежи 238а-238с, как указывается информацией 234а-234с знака, чтобы получить кортежи 240а-240с, которые уже имеют информационные величины с правильными знаками.
Кортежи 240а-240с передаются в декодер 224 порядка, который дополнительно принимает информацию 236а-236с порядка и изменяет порядок информационных величин внутри кортежей 240а-240с, чтобы получить кортежи 242а-242с с правильным порядком информационных величин. Кортежи 242а-242с, тогда, передаются в разгруппирователь 206, который получает информационные величины 220 путем разгруппирования кортежей 242а-242с.
Несмотря на то что в предпочтительных вариантах осуществления отвечающих изобретению кодеров, показанных на фиг.2 и 3, предлагается, что кодер 120 порядка и кодер 130 знака извлекают информацию порядка или знака и одновременно изменяют кортеж, в альтернативном варианте представляется возможным, что кодер знака и кодер порядка извлекают информацию порядка и знака без изменения кортежа. Тогда, кодовая книга Хаффмана должна быть построена так, чтобы кортежам с различными информациями знака и порядка назначались одинаковые кодовые слова.
Несмотря на то что в показанных на фигурах предпочтительных вариантах осуществления концепция настоящего изобретения описывается с помощью двумерных кодовых книг Хаффмана, изобретательская идея использования сгруппированных величин и использования их симметрий может быть скомбинирована с другими способами кодирования без потерь, в особенности с кодовыми книгами Хаффмана больших размерностей, то есть путем построения кортежей, имеющих более чем две информационные величины.
Фиг.4а и 4b иллюстрируют способ получения информации симметрии, используемой, чтобы получить возможность использования меньших кодовых книг Хаффмана. На первом этапе третий и четвертый квадранты отображаются в первый и второй квадранты заданной матрицы. Альтернативно, также представляется возможным отображать другие комбинации двух соседних квадрантов в остальные два квадранта, при условии, что при этом сохраняется информация симметрии, так что это отображение может быть обращено. Указанное верно также для второй операции симметрии, показанной на фиг.4b.
Фиг.5 иллюстрирует один способ отображения одного квадранта матрицы в квадратную матрицу, что предоставляет удобство при использовании описания кодовой книги меньшего размера. Эта операция отображения является примером для множества возможных схем отображения, при которых отображения должны быть такими, чтобы они были уникальными и могли быть обращены.
В зависимости от требований конкретной реализации отвечающих изобретению способов, эти отвечающие изобретению способы могут быть реализованы посредством аппаратного обеспечения или программного обеспечения. Реализация может быть выполнена с использованием цифрового носителя информации, в частности диска, DVD или CD, имеющего сохраненные на нем читаемые электронным образом сигналы управления, которые взаимодействуют с программируемой компьютерной системой так, чтобы выполнялись упомянутые отвечающие изобретению способы. В целом, настоящее изобретение, следовательно, представляет собой компьютерный программный продукт с программным кодом, хранимым на машиночитаемом носителе, причем, когда компьютерный программный продукт исполняется на компьютере, программный код действует для выполнения отвечающих изобретению способов. Иначе говоря, отвечающие изобретению способы, следовательно, представляют собой компьютерную программу, имеющую программный код для выполнения, по меньшей мере, одного из отвечающих изобретению способов, когда компьютерная программа исполняется на компьютере.
Несмотря на то что настоящее изобретение было проиллюстрировано и описано со ссылкой на его конкретные варианты осуществления, специалистам в данной области техники будет очевидно, что могут быть выполнены различные изменения в форме и деталях в рамках объема и сущности настоящего изобретения. Следует понимать, что различные изменения могут быть выполнены при адаптации различных вариантов осуществления в рамках более широких концепций, раскрытых здесь и охватываемых нижеследующей формулой изобретения.

Claims (23)

1. Кодер для кодирования информационных величин, содержащий:
дифференциальный кодер для дифференциального кодирования входных величин, чтобы получить дифференциально кодированное представление входных величин в качестве информационных величин;
средство группирования для группирования двух информационных величин в кортеж согласно порядку кортежа;
средство генерации информации кода для генерации информации порядка, указывающей порядок кортежа, и кодового слова для кортежа, используя правило кодирования, причем это правило кодирования таково, что одинаковое кодовое слово назначается разным кортежам, имеющим одинаковые информационные величины, расположенные в разных порядках, и, сверх того, данное правило кодирования таково, что одинаковое кодовое слово назначается только разным кортежам, имеющим информационные величины одинакового абсолютного значения, расположенные в одинаковом порядке и различающиеся знаком каждой информационной величины в кортеже;
кодер знака для получения информации знака, указывающей комбинацию знаков информационных величин в кортеже; и
интерфейс вывода для вывода кодового слова и ассоциированных с ним информации порядка и информации знака.
2. Кодер по п.1, в котором средство генерации информации кода включает в себя кодер порядка для получения информации порядка и энтропийный кодер для получения кодового слова, используя кодовую книгу, которая назначает кортежи, имеющие идентичные информационные величины, расположенные в различных порядках, одинаковому кодовому слову.
3. Кодер по п.2, в котором кодер порядка выполнен с возможностью переупорядочивать информационные величины в кортеже, чтобы изменить порядок кортежа на предопределенный порядок кортежа для этого кортежа, причем упомянутый предопределенный порядок кортежа определяет порядок кодирования информационных величин для групп кортежей, имеющих идентичные информационные величины, при этом кодер порядка выполнен с возможностью детектировать и кодировать отклонение порядка кортежа и порядка кодирования; и
причем энтропийный кодер имеет уменьшенную кодовую книгу, назначающую кодовое слово кортежам, имеющим информационные величины, упорядоченные согласно порядку кодирования.
4. Кодер по п.3, в котором кодер порядка выполнен с возможностью переупорядочивать информационные величины в кортеже путем перестановки первой информационной величины и второй информационной величины.
5. Кодер по п.4, в котором
кодер знака выполнен с возможностью изменять знаки информационных величин в кортеже, чтобы изменять комбинацию знаков на предопределенную комбинацию знаков, причем эта предопределенная комбинация знаков определяет комбинацию знаков кодирования для порядка информационных величин в кортеже, различающихся только отдельными знаками информационных величин;
и
средство генерации информации кода имеет энтропийный кодер, имеющий уменьшенную кодовую книгу, назначающую одинаковое кодовое слово каждому кортежу, имеющему одинаковый порядок абсолютных значений информационных величин.
6. Кодер по п.5, в котором кодер знака действует, чтобы изменять знак первой и второй информационных величин в кортеже.
7. Кодер по п.1, в котором дифференциально кодированное представление является представлением входных величин, дифференциально кодированных по времени или по частоте.
8. Кодер по п,1, в котором информационные величины содержат информационные величины, описывающие кадр видеосигнала или аудиосигнала.
9. Кодер по п.1, в котором информационные величины содержат параметры кодирования бинауральных характеристик (ВСС), описывающие пространственную корреляцию между первым и вторым аудио каналами, причем параметры ВСС выбраны из следующего перечня параметров ВСС:
межканальная когерентность/корреляция (ICC);
межканальная разность уровней (ICLD);
межканальная разность времен (ICTD);
межканальная разность фаз (IPD).
10. Кодер по п.1, в котором правило кодирования таково, что кодирование информационных величин дает в результате последовательность кодовых слов, имеющих различные длины.
11. Декодер для декодирования кодового слова, основанного на информационных величинах, содержащий:
интерфейс ввода для предоставления кодового слова и ассоциированной с ним информации порядка, указывающей порядок кортежа, который представляет собой порядок расположения двух информационных величин в кортеже информационных величин, и, сверх того, ассоциированной с ним информации знака, указывающей комбинацию знаков для информационных величин в этом кортеже;
средство обработки кода для получения кортежа, используя правило декодирования, зависящее от правила кодирования, использованного для создания кодового слова, причем правило декодирования таково, что разные кортежи, имеющие одинаковые информационные величины, расположенные в разных порядках, получаются из одинакового кодового слова, когда с ним ассоциирована различная информация порядка, и таково, что только разные кортежи, имеющие информационные величины одинакового абсолютного значения в одинаковом порядке и различающиеся знаком каждой информационной величины в кортеже, получаются из одинакового кодового слова, когда с ним ассоциирована различная информация знака, и
дифференциальный декодер для дифференциального декодирования информационных величин, чтобы получать дифференциально декодированное представление информационных величин.
12. Декодер по п.11, в котором средство обработки кода включает в себя
энтропийный декодер для получения предварительного кортежа, используя кодовую книгу, назначающую каждое кодовое слово предварительному кортежу; и
декодер порядка для получения кортежа путем переупорядочения информационных величин в предварительном кортеже, согласно указанию информации порядка.
13. Декодер по п.12, в котором декодер порядка выполнен с возможностью переупорядочивать информационные величины в предварительном кортеже путем перестановки первой информационной величины и второй информационной величины.
14. Декодер по п.13, в котором средство обработки кода дополнительно содержит декодер знака, чтобы получать кортеж из предварительного кортежа путем изменения знаков информационных величин в предварительном кортеже, как указывается информацией знака.
15. Декодер по п.14, в котором декодер знака выполнен с возможностью изменять знаки каждой информационной величины в предварительном кортеже.
16. Декодер по п.14, в котором декодер знака выполнен с возможностью изменять знак первой и второй информационных величин в предварительном кортеже.
17. Декодер по п.11, в котором дифференциально декодированное представление информационных величин является дифференциально декодированным по времени или по частоте.
18. Декодер по п.11, в котором информационные величины содержат информационные величины, описывающие кадр видеосигнала или аудиосигнала.
19. Декодер по п.11, в котором информационные величины содержат параметры кодирования бинауральных характеристик (ВСС), описывающие пространственную корреляцию между первым и вторым аудиоканалами, причем параметры ВСС выбраны из следующего перечня параметров ВСС:
межканальная когерентность/корреляция (ICC);
межканальная разность уровней (ICLD);
межканальная разность времен (ICTD);
межканальная разность фаз (IPD).
20. Способ кодирования информационных величин, содержащий этапы, на которых:
дифференциально кодируют входные величины, чтобы получать дифференциально кодированное представление входных величин в качестве информационных величин;
группируют две информационные величины в кортеж согласно порядку кортежа;
генерируют информацию порядка, указывающую порядок кортежа;
генерируют информацию знака, указывающую знак информационных величин в кортеже;
генерируют кодовое слово для кортежа, используя правило кодирования, причем правило кодирования таково, что одинаковое кодовое слово назначается разным кортежам, имеющим одинаковые информационные величины, расположенные в разных порядках, и, сверх того, правило кодирования таково, что одинаковое кодовое слово назначается только разным кортежам, имеющим информационные величины одинакового абсолютного значения, расположенные в одинаковом порядке и различающиеся знаком каждой информационной величины в кортеже; и
выводят кодовое слово и ассоциированные с ним информацию порядка и информацию знака.
21. Способ декодирования кодовых слов, основанных на информационных величинах, содержащий этапы, на которых:
предоставляют кодовое слово и ассоциированную с ним информацию порядка, указывающую порядок кортежа, который представляет собой порядок расположения двух информационных величин в кортеже информационных величин, и, сверх того, ассоциированную с ним информацию знака, указывающую комбинацию знаков для информационных величин в кортеже;
получают кортеж, используя правило декодирования, зависящее от правила кодирования, использованного для создания кодового слова, причем правило декодирования таково, что разные кортежи, имеющие одинаковые информационные величины, расположенные в разных порядках, получаются из одинакового кодового слова, когда с ним ассоциирована различная информация порядка, и таково, что только разные кортежи, имеющие информационные величины одинакового абсолютного значения, расположенные в одинаковом порядке и различающиеся знаком каждой информационной величины в кортеже, получаются из одинакового кодового слова, когда с ним ассоциирована различная информация знака;
разгруппировывают кортежи на две или более информационные величины; и
дифференциально декодируют эти информационные величины, чтобы получать дифференциально декодированное представление информационных величин.
22. Машиночитаемый носитель, на котором сохранена компьютерная программа, имеющая программный код для осуществления способа кодирования информационных величин при ее исполнении на компьютере, причем способ содержит этапы, на которых:
дифференциально кодируют входные величины, чтобы получать дифференциально кодированное представление входных величин в качестве информационных величин;
группируют две информационные величины в кортеж согласно порядку кортежа;
генерируют информацию порядка, указывающую порядок кортежа;
генерируют информацию знака, указывающую знак информационных величин в кортеже;
генерируют кодовое слово для кортежа, используя правило кодирования, причем правило кодирования таково, что одинаковое кодовое слово назначается разным кортежам, имеющим одинаковые информационные величины, расположенные в разных порядках, и, сверх того, правило кодирования таково, что одинаковое кодовое слово назначается только разным кортежам, имеющим информационные величины одинакового абсолютного значения, расположенные в одинаковом порядке и различающиеся знаком каждой информационной величины в кортеже; и
выводят кодовое слово и ассоциированные с ним информацию порядка и информацию знака.
23. Машиночитаемый носитель, на котором сохранена компьютерная программа, имеющая программный код для осуществления способа декодирования кодовых слов при ее исполнении на компьютере, причем способ содержит этапы, на которых:
предоставляют кодовое слово и ассоциированную с ним информацию порядка, указывающую порядок кортежа, который представляет собой порядок расположения двух информационных величин в кортеже информационных величин, и, сверх того, ассоциированную с ним информацию знака, указывающую комбинацию знаков для информационных величин в кортеже;
получают кортеж, используя правило декодирования, зависящее от правила кодирования, использованного для создания кодового слова, причем правило декодирования таково, что разные кортежи, имеющие одинаковые информационные величины, расположенные в разных порядках, получаются из одинакового кодового слова, когда с ним ассоциирована различная информация порядка, и таково, что только разные кортежи, имеющие информационные величины одинакового абсолютного значения, расположенные в одинаковом порядке и различающиеся знаком каждой информационной величины в кортеже, получаются из одинакового кодового слова, когда с ним ассоциирована различная информация знака;
разгруппировывают кортежи на две или более информационные величины; и
дифференциально декодируют эти информационные величины, чтобы получать дифференциально декодированное представление информационных величин.
RU2007141938/09A 2005-04-13 2006-02-13 Энтропийное кодирование с помощью компактных кодовых книг RU2379832C2 (ru)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US67099305P 2005-04-13 2005-04-13
US60/670,993 2005-04-13
US11/251,485 US7788106B2 (en) 2005-04-13 2005-10-14 Entropy coding with compact codebooks
US11/251,485 2005-10-14

Publications (2)

Publication Number Publication Date
RU2007141938A RU2007141938A (ru) 2009-05-20
RU2379832C2 true RU2379832C2 (ru) 2010-01-20

Family

ID=36480915

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2007141938/09A RU2379832C2 (ru) 2005-04-13 2006-02-13 Энтропийное кодирование с помощью компактных кодовых книг

Country Status (18)

Country Link
US (1) US7788106B2 (ru)
EP (1) EP1869775B1 (ru)
JP (1) JP4832507B2 (ru)
KR (1) KR100954182B1 (ru)
CN (1) CN101156320B (ru)
AU (1) AU2006233511B9 (ru)
BR (1) BRPI0612179B1 (ru)
CA (1) CA2605316C (ru)
ES (1) ES2433282T3 (ru)
HK (1) HK1110709A1 (ru)
IL (1) IL186312A0 (ru)
MX (1) MX2007012673A (ru)
MY (1) MY149613A (ru)
NO (1) NO339831B1 (ru)
PL (1) PL1869775T3 (ru)
RU (1) RU2379832C2 (ru)
TW (1) TWI319937B (ru)
WO (1) WO2006108463A1 (ru)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2546590C2 (ru) * 2011-01-24 2015-04-10 Квэлкомм Инкорпорейтед Сигнализация изменений параметра квантования для кодируемых единиц при высокоэффективном видеокодировании(hevc)
RU2575679C2 (ru) * 2010-09-30 2016-02-20 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Энтропийный кодер для сжатия изображения
RU2765300C1 (ru) * 2011-11-07 2022-01-28 Долби Интернэшнл Аб Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы
US11943485B2 (en) 2011-11-07 2024-03-26 Dolby International Ab Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7333032B1 (en) * 2006-01-20 2008-02-19 Calypto Design Systems, Inc. System, method and computer program product for word-level computations and storage
US8515767B2 (en) * 2007-11-04 2013-08-20 Qualcomm Incorporated Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs
BRPI0910796B1 (pt) 2008-07-11 2021-07-13 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E. V. Codificador de áudio e decodificador de áudio
KR101226566B1 (ko) * 2008-07-11 2013-01-28 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 심볼을 인코딩하기 위한 방법, 심볼을 디코딩하기 위한 방법, 송신기로부터 수신기로 심볼을 전송하기 위한 방법, 인코더, 디코더 및 송신기로부터 수신기로 심볼을 전송하기 위한 시스템
KR20100136890A (ko) 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
KR101676477B1 (ko) * 2010-07-21 2016-11-15 삼성전자주식회사 컨텍스트 기반의 무손실 부호화 장치 및 방법, 그리고 복호화 장치 및 방법
US8817882B2 (en) * 2010-07-30 2014-08-26 Qualcomm Incorporated Coding blocks of data using a generalized form of golomb codes
US8400335B2 (en) 2011-07-21 2013-03-19 International Business Machines Corporation Using variable length code tables to compress an input data stream to a compressed output data stream
US8669889B2 (en) 2011-07-21 2014-03-11 International Business Machines Corporation Using variable length code tables to compress an input data stream to a compressed output data stream
KR101842257B1 (ko) * 2011-09-14 2018-05-15 삼성전자주식회사 신호 처리 방법, 그에 따른 엔코딩 장치, 및 그에 따른 디코딩 장치
US8692696B2 (en) * 2012-01-03 2014-04-08 International Business Machines Corporation Generating a code alphabet of symbols to generate codewords for words used with a program
GB2557737B (en) 2015-07-28 2021-05-12 Halliburton Energy Services Inc Sensor data compression for downhole telemetry applications
WO2018020299A1 (en) * 2016-07-29 2018-02-01 Chan Kam Fu Lossless compression and decompression methods
GB2578625A (en) * 2018-11-01 2020-05-20 Nokia Technologies Oy Apparatus, methods and computer programs for encoding spatial metadata

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1711331A1 (ru) 1987-05-28 1992-02-07 Всесоюзный научно-исследовательский институт радиовещательного приема и акустики им.А.С.Попова Устройство кодировани и декодировани сигналов звукового вещани
US5532694A (en) 1989-01-13 1996-07-02 Stac Electronics, Inc. Data compression apparatus and method using matching string searching and Huffman encoding
US5325091A (en) 1992-08-13 1994-06-28 Xerox Corporation Text-compression technique using frequency-ordered array of word-number mappers
US5550540A (en) 1992-11-12 1996-08-27 Internatioal Business Machines Corporation Distributed coding and prediction by use of contexts
US5717394A (en) 1993-02-10 1998-02-10 Ricoh Company Ltd. Method and apparatus for encoding and decoding data
JPH07203441A (ja) * 1993-12-28 1995-08-04 Matsushita Graphic Commun Syst Inc 符号化装置及び復号化装置
US5550541A (en) * 1994-04-01 1996-08-27 Dolby Laboratories Licensing Corporation Compact source coding tables for encoder/decoder system
CA2156889C (en) 1994-09-30 1999-11-02 Edward L. Schwartz Method and apparatus for encoding and decoding data
KR100209877B1 (ko) 1994-11-26 1999-07-15 윤종용 복수개의 허프만부호테이블을 이용한 가변장부호화장치 및 복호화장치
US5721720A (en) 1994-12-28 1998-02-24 Kabushiki Kaisha Toshiba Optical recording medium recording pixel data as a compressed unit data block
US5819215A (en) 1995-10-13 1998-10-06 Dobson; Kurt Method and apparatus for wavelet based data compression having adaptive bit rate control for compression of digital audio or other sensory data
CN1158050A (zh) 1995-12-27 1997-08-27 汤姆森消费电子有限公司 图像数据压缩***和方法
US5870436A (en) 1997-01-02 1999-02-09 Raytheon Company Uniform discrete fourier transform filter parameter encoder
US6237496B1 (en) 1997-02-26 2001-05-29 Northrop Grumman Corporation GPS guided munition
RU2214047C2 (ru) 1997-11-19 2003-10-10 Самсунг Электроникс Ко., Лтд. Способ и устройство для масштабируемого кодирования/декодирования аудиосигналов
US6166664A (en) 1998-08-26 2000-12-26 Intel Corporation Efficient data structure for entropy encoding used in a DWT-based high performance image compression
US6546049B1 (en) 1998-10-05 2003-04-08 Sarnoff Corporation Parameterized quantization matrix adaptation for video encoding
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
JP3323175B2 (ja) 1999-04-20 2002-09-09 松下電器産業株式会社 符号化装置
US6978236B1 (en) 1999-10-01 2005-12-20 Coding Technologies Ab Efficient spectral envelope coding using variable time/frequency resolution and time/frequency switching
RU2159507C1 (ru) 1999-10-29 2000-11-20 Аликов Сергей Владимирович Узел кодирования и/или декодирования информации, система передачи информации с уплотнением каналов, система передачи информации в телекоммуникационной сети
US6813438B1 (en) 2000-09-06 2004-11-02 International Business Machines Corporation Method to customize the playback of compact and digital versatile disks
US20030081685A1 (en) 2001-10-31 2003-05-01 Montgomery Dennis L. Method and apparatus for determining patterns within adjacent blocks of data
CN1312663C (zh) 2001-11-30 2007-04-25 皇家飞利浦电子股份有限公司 一种信号编码、解码的方法和装置
EP2262269B1 (en) * 2001-12-17 2018-01-24 Microsoft Technology Licensing, LLC Skip macroblock coding
US7502743B2 (en) 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
US7433824B2 (en) 2002-09-04 2008-10-07 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
JP4369140B2 (ja) * 2003-02-17 2009-11-18 パナソニック株式会社 オーディオ高能率符号化装置、オーディオ高能率符号化方法、オーディオ高能率符号化プログラム及びその記録媒体
US7426462B2 (en) * 2003-09-29 2008-09-16 Sony Corporation Fast codebook selection method in audio encoding

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2575679C2 (ru) * 2010-09-30 2016-02-20 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Энтропийный кодер для сжатия изображения
RU2546590C2 (ru) * 2011-01-24 2015-04-10 Квэлкомм Инкорпорейтед Сигнализация изменений параметра квантования для кодируемых единиц при высокоэффективном видеокодировании(hevc)
RU2765300C1 (ru) * 2011-11-07 2022-01-28 Долби Интернэшнл Аб Способ кодирования и декодирования изображений, устройство кодирования и декодирования и соответствующие компьютерные программы
US11277630B2 (en) 2011-11-07 2022-03-15 Dolby International Ab Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto
US11889098B2 (en) 2011-11-07 2024-01-30 Dolby International Ab Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto
US11943485B2 (en) 2011-11-07 2024-03-26 Dolby International Ab Method of coding and decoding images, coding and decoding device and computer programs corresponding thereto

Also Published As

Publication number Publication date
CN101156320B (zh) 2012-01-25
NO20075775L (no) 2007-11-09
CN101156320A (zh) 2008-04-02
NO339831B1 (no) 2017-02-06
EP1869775A1 (en) 2007-12-26
EP1869775B1 (en) 2013-09-04
US20060235865A1 (en) 2006-10-19
JP2008536410A (ja) 2008-09-04
AU2006233511B2 (en) 2009-12-03
HK1110709A1 (en) 2008-07-18
CA2605316C (en) 2013-01-29
KR100954182B1 (ko) 2010-04-21
MX2007012673A (es) 2007-12-13
BRPI0612179A2 (pt) 2010-11-03
KR20070110132A (ko) 2007-11-15
ES2433282T3 (es) 2013-12-10
MY149613A (en) 2013-09-13
US7788106B2 (en) 2010-08-31
RU2007141938A (ru) 2009-05-20
TWI319937B (en) 2010-01-21
IL186312A0 (en) 2008-01-20
AU2006233511B9 (en) 2010-09-30
CA2605316A1 (en) 2006-10-19
BRPI0612179B1 (pt) 2018-05-02
TW200644448A (en) 2006-12-16
PL1869775T3 (pl) 2014-01-31
AU2006233511A1 (en) 2006-10-19
JP4832507B2 (ja) 2011-12-07
WO2006108463A1 (en) 2006-10-19

Similar Documents

Publication Publication Date Title
RU2379832C2 (ru) Энтропийное кодирование с помощью компактных кодовых книг
RU2368074C2 (ru) Адаптивная группировка параметров для улучшенной эффективности кодирования
RU2367087C2 (ru) Кодирование информации без потерь с гарантированной максимальной битовой скоростью
CA2601821A1 (en) Planar multiband antenna