RU2319222C1 - Способ кодирования и декодирования речевого сигнала методом линейного предсказания - Google Patents

Способ кодирования и декодирования речевого сигнала методом линейного предсказания Download PDF

Info

Publication number
RU2319222C1
RU2319222C1 RU2006131189/09A RU2006131189A RU2319222C1 RU 2319222 C1 RU2319222 C1 RU 2319222C1 RU 2006131189/09 A RU2006131189/09 A RU 2006131189/09A RU 2006131189 A RU2006131189 A RU 2006131189A RU 2319222 C1 RU2319222 C1 RU 2319222C1
Authority
RU
Russia
Prior art keywords
values
speech signal
digital
samples
signal
Prior art date
Application number
RU2006131189/09A
Other languages
English (en)
Inventor
Валерий Юрьевич Тарасов
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 Валерий Юрьевич Тарасов
Priority to RU2006131189/09A priority Critical patent/RU2319222C1/ru
Application granted granted Critical
Publication of RU2319222C1 publication Critical patent/RU2319222C1/ru

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

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

Description

Предлагаемое изобретение относится к области цифровой обработки сигналов и применяется для кодирования и декодирования речевого сигнала.
Известны способы кодирования и декодирования речевого сигнала с использованием метода линейного предсказания (см., например, Маркел Дж.Д., Грей Ф.Х., Линейное предсказание речи, М., Связь, 1980, стр.18; Рекомендация G.723.1 утверждена ITU-T в ноябре 1995 года; Рекомендация G.729a утверждена ITU-T в ноябре 1996 года; «Voice coding/decoding method and apparatus», Chan Woo Kim, US 2006/0015330 A1, Pub. Date: Jan 19, 2006). В этих способах при кодировании и декодировании речевого сигнала, аналоговый голосовой сигнал преобразуют в цифровые отсчеты (сегмент, подкадр, sample, subframe) с определенной частотой дискретизации, на участке линейного преобразования сигнала используют формулы, основанные на принципах наименьших квадратов для вычисления коэффициентов линейного предсказания следующего отсчета. Основными недостатками подобных методов является необходимость обращения матриц большой размерности при вычислении коэффициентов линейного предсказания, что требует значительных вычислительных ресурсов.
Наиболее близким по технической сути к предложенному является способ кодирования и декодирования речевого сигнала по алгоритму CELP (Code Excited Linear Prediction) с использованием метода линейного предсказания («Apparatus and method for speech coding», Kazutoshi Yasunaga, Toshiyuki Morii, US 2005/0197833 A1, Pub. Date: Sep 8, 2005), при котором аналоговый голосовой сигнал преобразуют в цифровые отсчеты с определенной частотой дискретизации, из отсчетов формируют один кадр (фрейм, блок данных, frame) голосового сигнала, для кадра вычисляют значения коэффициентов линейного предсказания (КЛП) и сигналов возбуждения (СВ), полученные данные упаковывают в битовый поток и передают через канал связи на приемную сторону, при декодировании речевого сигнала кадр восстанавливают на основе данных, полученных от передающей стороны.
Основным недостатком этого способа является вычислительная сложность, связанная с процедурами поиска оптимальных СВ по двум кодовым книгам (КК) и вычислением КЛП на основе автокорреляционных функций, приводящих к необходимости обращения матриц большой размерности.
Решаемая предлагаемым изобретением задача - повышение скорости и экономической эффективности цифровой обработки речевого сигнала.
Технический результат, который может быть достигнут при осуществлении способа, - снижение капитальных и эксплуатационных затрат на единицу обрабатываемого объема речевой информации при кодирования и декодировании сигнала без потери данных. Дополнительными техническими эффектами являются: уменьшение энтропии передаваемого сигнала за счет кодирования кадров входного потока кодом Хаффмана (либо близким к нему по эффективности), а также сжатие динамического диапазона за счет автоматической регулировки уровня сигнала.
Для решения поставленной задачи с достижением технического результата, в известном способе кодирования и декодирования речевого сигнала, при котором речевой сигнал преобразуют в цифровые отсчеты с определенной частотой дискретизации, из цифровых отсчетов формируют кадр речевого сигнала, для кадра речевого сигнала вычисляют значения КЛП и СВ, полученные данные кодируют в битовый поток и передают через канал связи на приемную сторону, на приемной стороне кадр речевого сигнала декодируют на основе информации, полученной от передающей стороны, согласно предлагаемому изобретению, преобразование осуществляют над каждым цифровым отсчетом речевого сигнала, на передающей стороне выделяют и кодируют цифровые отсчеты, соответствующие паузам в речи, при поступлении цифрового отсчета вычисляют значение СВ, для чего используют значение текущего цифрового отсчета и хранящиеся в КК предыдущие значения КЛП и цифровых отсчетов, вычисляют значения КЛП для текущего цифрового отсчета, полученные и предыдущие значения КЛП и цифровых отсчетов сохраняют в КК для вычислений со следующими отсчетами, в буфере передающей стороны накапливают определенное количество значений СВ и суммируют их с кодом паузы, формируют кадр, кадр кодируют оптимальным кодом и передают на приемную сторону, на приемной стороне кадр декодируют, восстанавливают значения СВ и выделяют код паузы, вычисляют значение цифрового отсчета на основе поступившего значения СВ и хранящихся в КК приемной стороны значений предыдущих КЛП и цифровых отсчетов, вычисляют значения КЛП для текущего цифрового отсчета, полученные и предыдущие значения КЛП и цифровых отсчетов сохраняют в КК приемной стороны для вычислений со следующими отсчетами, в соответствии с кодом паузы микшируют цифровые отсчеты с сигналом комфортного шума и восстанавливают речевой сигнал.
Возможен дополнительный вариант осуществления способа, в котором целесообразно, чтобы:
- на передающей стороне перед кодированием преобразованный речевой сигнал подвергали сжатию динамического диапазона, уменьшали по амплитуде и округляли значения цифровых отсчетов до целого, на приемной стороне восстанавливали динамический диапазон декодированного речевого сигнала.
Суть предлагаемого изобретения и его дополнительных вариантов поясняется чертежами, на которых схематично представлены схемы преобразования речевого сигнала в соответствии с предложенным способом.
На фиг.1 изображена возможная схема преобразований, которым подвергается голосовой сигнал при кодировании и декодировании по предложенному способу.
На фиг.2 изображена возможная последовательность действий, выполняемых при компрессии отсчетов голосового сигнала по предложенному способу.
На фиг.1 схематично изображены: 101 - модуль ввода/вывода аналогового голосового сигнала. 102 - дифференциальная система, разделяющая приемную и передающую части голосового канала. Элементы 103 - 110 - осуществляют преобразование сигнала в процессе кодирования. 103 - 8-битное аналогово-цифровое преобразование (АЦП) с частотой дискретизации 8 кГц. 104 - выделение отсчетов, соответствующих паузам в речи. 105 - автоматическая регулировка усиления сигнала с ослаблением сильных звуков без заметного ухудшения качества речи. 106 - сжатие отсчетов речевого сигнала с вычислением КЛП. 107 - кодовая книга (КК), хранящая результаты обработки отсчетов. 108 - накопление отсчетов компрессированного сигнала с последующим формированием кадра и его кодированием. 109 - формирование из кадров сетевых пакетов. 110 - кодирование отсчетов голосового сигнала, соответствующих паузам в речи. Элементы 111-118 осуществляют преобразование сигнала в процессе декодирования. 111 - модуль преобразования принятых пакетов в последовательность байт.112 - декодирование полученных кадров с преобразованием их в отсчеты компрессированного сигнала и выделением кода паузы. 113 - декомпрессия полученных отсчетов на основе значений КЛП и предыдущих отсчетов, хранящихся в КК (114). 114 - кодовая книга (КК), хранящая результаты обработки отсчетов. 115 - автоматическая регулировка усиления сигнала. 116 - генератор сигнала комфортного шума. 117 - микширование отсчетов основного сигнала и комфортного шума. 118 - 8- битное цифроаналоговое преобразование (ЦАП) с частотой дискретизации 8 кГц. 119 - управление приемом и передачей пакетов через сеть передачи данных. 120 - сеть передачи данных.
Поясним процесс преобразований (Фиг.1) голосового сигнала при кодировании и декодировании по предложенному способу. Известно множество высокоэффективных методов сжатия голосового сигнала, приведенных в качестве аналогов и прототипа к предлагаемому изобретению и применяемых в сети передачи данных (СПД) для голосовой связи. Такие кодеры на участке компрессии сигнала 106 вычисляют КЛП. Формулы для вычисления коэффициентов получаются на основе принципа наименьших квадратов и приводят к необходимости обращения матриц большой размерности. Однако, применение принципа наименьших квадратов оправдано только для нормально распределенных величин, что не свойственно в общем виде для компонент речевого сигнала. Обращение же матриц большой размерности требует значительных вычислительных ресурсов. Предлагаемое изобретение описывает способ скоростного кодирования и декодирования речи без необходимости вычисления автокорреляционных функций высокого порядка.
Ввод аналогового голосового сигнала осуществляется АЦП 103 со скоростью 8000 отсчетов в секунду. После цифровой обработки голосовой информации, из сигнала выделяются отсчеты, соответствующие паузам в речи 104. Далее отсчеты, не несущие речевой информации, кодируются отдельно от основного сигнала 110, после чего в сеть передачи данных поступает только код наличия паузы. После выделения пауз (на пути 104-105), средняя энтропия оцифрованного сигнала при практически максимально допустимой громкости составляет около 5 бит на один отсчет. Впоследствии сигнал подвергают автоматической регулировке усиления 105 с ослаблением сильных звуков и переходом к разности соседних отсчетов. Такая обработка позволяет без заметного ухудшения качества речи снизить энтропию (на пути 105-106) до 2 бит на отсчет, а с незначительным ухудшением качества до 1,7 бит на отсчет.
Суть предлагаемого способа заключается в обработке сигнала на этапе компрессии (106, 107) и декомпрессии (113,114), при вычислении КЛП и позволяет без потери информации снизить энтропию в среднем для речи на 0,9 бита, существенно уменьшить амплитуду звуков, имеющих основную частоту и ее обертоны. После компрессии сигнал суммируется с кодом паузы, кодируется в кадры оптимальным кодом Хаффмана (108), либо близким к нему по эффективности, упаковывается в пакеты (109) и передается в СПД. Целью кодирования является преобразование входного потока в поток бит минимальной длины, что достигается уменьшением энтропии входного потока. В итоге, после кодирования результата скорость передачи информации составляет примерно 0,8 бита на отсчет (на пути 108-109), т.е. 6,4 кбит/с. Такое сжатие несколько хуже, чем в кодеках - аналогах и прототипе, однако преимущество предложенного способа в том, что алгоритм практически не требует вычислительных ресурсов процессора. Восстановление (111-118) сигнала проводится в обратном порядке.
Обозначим целочисленные значения отсчетов речевого сигнала после АРУ символом хi, где i - индекс отсчета, увеличивающийся на единицу для каждого нового отсчета. Пусть
Figure 00000002
, где ai,k - КЛП, не целочисленные в общем случае величины, n - количество предыдущих отсчетов и КЛП, хранимых в КК, на основе которых выполняется линейное предсказание. Речевой сигнал xi должен хорошо удовлетворять некоторому дифференциальному уравнению, коэффициенты которого определяются состоянием речевого тракта. Потому они не могут изменяться во времени слишком быстро, а сигнал yi должен быть существенно меньше исходного сигнала, т.к. речевой тракт усиливает возбуждающий сигнал за счет резонансов на частотах, соответствующих первой, второй и следующим формантам. Таким образом, величина yi должна принимать по возможности значения, близкие к нулю, а КЛП аi,k медленно изменяться как функция i. Введем константу L, положительное целое число N и обозначим:
Figure 00000003
Выбирая аi,k так, чтобы минимизировать si, взяв производную si по ai,k и приравняв ее к нулю, получим уравнение:
Figure 00000004
поделив уравнение (2) на L и возведя результат в степень λ=1/(2N-1), найдем для аi,k условие:
Figure 00000005
умножив (3) на хi-k и просуммировав по k, получим выражение:
Figure 00000006
Обозначив величину сигнала возбуждения:
Figure 00000007
и
Figure 00000008
получим уравнение:
Figure 00000009
подставив (7) в (3), найдем:
Figure 00000010
Переходя к скалярным вычислениям, будем считать N вещественным и устремим 2N к 1 с положительной стороны. Тогда формула (8) будет выглядеть так:
Figure 00000011
Figure 00000012
Figure 00000013
Таким образом, на каждом шаге, при увеличении i на единицу, коэффициенты аi,k либо не изменяются, либо изменяется только один из коэффициентов (по формуле 9б).
На фиг.2 схематично изображены: 201 - поступление очередного отсчета, 202 - получение значения отсчета хi и индекса i, 203 - вычисление значения СВ по формуле (5), 204 - кодовая книга, хранящая значения отсчетов и КЛП, 205 - вычисление значений КЛП по формулам (9), 206 - передача значения СВ для кодирования (Фиг.1, 108), 207 - увеличение на 1 значения индекса отсчетов, 208 - окончание процесса.
Поясним последовательность действий, изображенную на фиг.2. Кодер при получении нового отсчета хi (шаг 202) вычисляет величину zi (шаг 203) по формуле (5) и после кодирования передает ее через канал связи декодеру. При этом как кодер, так и декодер используют уже известные на предыдущем шаге и хранящиеся в КК (шаг 204) коэффициенты аi-1,k, затем по формулам (9) подсчитываются коэффициенты аi,k (шаг 205) для текущего отсчета. Полученные значения аi,k и хi сохраняются в КК для вычислений при поступлении следующего отсчета. Декодер, используя формулу (5), восстанавливает исходное значение сигнала хi. Кодирование и декодирование сигнала начинается с участка сигнала, имеющего нулевое значение, и коэффициенты аi,k, равные нулю.
Так как при изменении целочисленного значения хi на единицу zi изменяется также на единицу, то, округлив zi до целочисленного значения Zi, возможно восстановить ряд значений хi по известному ряду значений Zi, представляющему собой сжатый без потери информации речевой сигнал. Поскольку ai,k является медленно изменяющейся функцией i, то тогда zi мало отличается от yi, а потому Zi практически представляет собой малую правую часть дифференциального уравнения, которому удовлетворяет хi - речевой сигнал. При слишком больших значениях константы L коэффициенты аi,k не могут меняться слишком быстро, поэтому настройка их на конкретный сегмент речевого сигнала не будет происходить достаточно быстро и точно, а потому Zi не будет слишком малой величиной. Если же L наоборот слишком мала, то в этом случае yi может быть сделана сколь угодно малой за счет быстрой настройки аi,k, но величина zi при этом не стремится к нулю, а напротив, снова возрастет. Минимальное значение сигнал zi принимает при некоторой величине L (порядка L=30 при n=4), зависящей от неких средних параметров самого речевого сигнала. Сигнал Zi при (L около 30) на любых звуках речи меньше по абсолютной величине, чем исходный сигнал хi.
От формул (9), устремляя L к нулю и одновременно обеспечивая устойчивость решения, легко перейти к:
Figure 00000014
Figure 00000015
где α (0<α<1) - постоянный коэффициент.
Формулы (10) выглядят более естественно по сравнению с (9), т.к. не имеют кажущегося «искусственным» порога срабатывания.
Таким образом, преобразование хi в Zi осуществляет компрессию речевого сигнала и является взаимно однозначным. То есть для него существует обратное преобразование Zi в хi, верно восстанавливающее исходный сигнал хi. Преобразование эффективно работает как на гласных, так и на шипящих звуках и уменьшает энтропию исходного сигнала примерно на 0.9 бита без потери информации. Если исходный сигнал предварительно подвергнут сжатию динамического диапазона (АРУ), уменьшен по амплитуде и округлен до целых чисел так, что его энтропия имеет величину порядка двух бит на временной отсчет, дополнительное сжатие на 0.9 бита является существенным. Приняв в формуле (8) показатель степени N равным единице (метод наименьших квадратов), получим уменьшение энтропии только 0.5 бита на отсчет. Таким образом, в предложенном способе, полезный эффект сжатия оказывается вдвое больше, чем при использовании метода наименьших квадратов.
В отличие от способа - прототипа и аналогов, использование предложенного способа вычисления КЛП в сочетании с обращением к единственной кодовой книге при преобразовании голосового сигнала позволяет обеспечить вдвое большую эффективность использования вычислительных ресурсов без потери данных. При этом соответственно снижаются капитальные и эксплуатационные затраты на единицу обрабатываемого объема речевой информации.
Таким образом, использование предложенного способа (и его дополнительных вариантов) позволяет обеспечить решение поставленной задачи с достижением ожидаемого технического результата.

Claims (2)

1. Способ кодирования и декодирования речевого сигнала методом линейного предсказания, при котором речевой сигнал преобразуют в цифровые отсчеты с определенной частотой дискретизации, из цифровых отсчетов формируют кадр речевого сигнала, для кадра речевого сигнала вычисляют значения коэффициентов линейного предсказания (КЛП) и сигналов возбуждения (СВ), полученные данные кодируют в битовый поток и передают через канал связи на приемную сторону, на приемной стороне кадр речевого сигнала декодируют на основе информации, полученной от передающей стороны, отличающийся тем, что преобразование осуществляют над каждым цифровым отсчетом речевого сигнала, на передающей стороне выделяют и кодируют цифровые отсчеты, соответствующие паузам в речи, при поступлении цифрового отсчета вычисляют значение СВ, для чего используют значение текущего цифрового отсчета и хранящиеся в кодовой книге (КК) предыдущие значения КЛП и цифровых отсчетов, вычисляют значения КЛП для текущего цифрового отсчета, полученные и предыдущие значения КЛП и цифровых отсчетов сохраняют в КК для вычислений со следующими отсчетами, в буфере передающей стороны накапливают определенное количество значений СВ и суммируют их с кодом паузы, формируют кадр, кадр кодируют оптимальным кодом и передают на приемную сторону, на приемной стороне кадр декодируют, восстанавливают значения СВ и выделяют код паузы, вычисляют значение цифрового отсчета на основе поступившего значения СВ и хранящихся в КК приемной стороны значений предыдущих КЛП и цифровых отсчетов, вычисляют значения КЛП для текущего цифрового отсчета, полученные и предыдущие значения КЛП и цифровых отсчетов сохраняют в КК приемной стороны для вычислений со следующими отсчетами, в соответствии с кодом паузы микшируют цифровые отсчеты с сигналом комфортного шума и восстанавливают речевой сигнал.
2. Способ по п.1, отличающийся тем, что на передающей стороне перед кодированием преобразованный речевой сигнал подвергают сжатию динамического диапазона, уменьшают по амплитуде и округляют значения цифровых отсчетов до целого, на приемной стороне восстанавливают динамический диапазон декодированного речевого сигнала.
RU2006131189/09A 2006-08-30 2006-08-30 Способ кодирования и декодирования речевого сигнала методом линейного предсказания RU2319222C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2006131189/09A RU2319222C1 (ru) 2006-08-30 2006-08-30 Способ кодирования и декодирования речевого сигнала методом линейного предсказания

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2006131189/09A RU2319222C1 (ru) 2006-08-30 2006-08-30 Способ кодирования и декодирования речевого сигнала методом линейного предсказания

Publications (1)

Publication Number Publication Date
RU2319222C1 true RU2319222C1 (ru) 2008-03-10

Family

ID=39281078

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2006131189/09A RU2319222C1 (ru) 2006-08-30 2006-08-30 Способ кодирования и декодирования речевого сигнала методом линейного предсказания

Country Status (1)

Country Link
RU (1) RU2319222C1 (ru)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2486610C2 (ru) * 2008-12-31 2013-06-27 Хуавэй Текнолоджиз Ко., Лтд. Способ кодирования сигнала и способ декодирования сигнала
RU2596584C2 (ru) * 2010-10-25 2016-09-10 Войсэйдж Корпорейшн Кодирование обобщенных аудиосигналов на низких скоростях передачи битов и с низкой задержкой
RU2665236C1 (ru) * 2013-05-30 2018-08-28 Хуавэй Текнолоджиз Ко., Лтд. Устройство и способ кодирования сигналов

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2486610C2 (ru) * 2008-12-31 2013-06-27 Хуавэй Текнолоджиз Ко., Лтд. Способ кодирования сигнала и способ декодирования сигнала
US8515744B2 (en) 2008-12-31 2013-08-20 Huawei Technologies Co., Ltd. Method for encoding signal, and method for decoding signal
US8712763B2 (en) 2008-12-31 2014-04-29 Huawei Technologies Co., Ltd Method for encoding signal, and method for decoding signal
RU2596584C2 (ru) * 2010-10-25 2016-09-10 Войсэйдж Корпорейшн Кодирование обобщенных аудиосигналов на низких скоростях передачи битов и с низкой задержкой
RU2665236C1 (ru) * 2013-05-30 2018-08-28 Хуавэй Текнолоджиз Ко., Лтд. Устройство и способ кодирования сигналов
US10692509B2 (en) 2013-05-30 2020-06-23 Huawei Technologies Co., Ltd. Signal encoding of comfort noise according to deviation degree of silence signal

Similar Documents

Publication Publication Date Title
US7016831B2 (en) Voice code conversion apparatus
AU733156B2 (en) Audio coding method and apparatus
JP6872597B2 (ja) 音声符号化装置および音声符号化方法
JP5277350B2 (ja) 圧縮符号化および復号の方法、符号器、復号器、ならびに符号化装置
KR101437127B1 (ko) 가중 윈도우들을 사용한 저-지연 변환 코딩
WO2005112005A1 (ja) スケーラブル符号化装置、スケーラブル復号化装置、およびこれらの方法
RU2005137320A (ru) Способ и устройство для квантования усиления в широкополосном речевом кодировании с переменной битовой скоростью передачи
JP2002330075A (ja) サブバンドadpcm符号化方法、復号方法、サブバンドadpcm符号化装置、復号装置およびワイヤレスマイクロホン送信システム、受信システム
US20050278174A1 (en) Audio coder
RU2319222C1 (ru) Способ кодирования и декодирования речевого сигнала методом линейного предсказания
CA2293165A1 (en) Method for transmitting data in wireless speech channels
JPH1020897A (ja) 適応変換符号化方式および適応変換復号方式
US20130268268A1 (en) Encoding of an improvement stage in a hierarchical encoder
JP3453116B2 (ja) 音声符号化方法及び装置
KR100341398B1 (ko) 씨이엘피형 보코더의 코드북 검색 방법
RU2792658C1 (ru) Устройство кодирования аудио, способ кодирования аудио, программа кодирования аудио, устройство декодирования аудио, способ декодирования аудио и программа декодирования аудио
JP4638895B2 (ja) 復号方法、復号器、復号装置、プログラムおよび記録媒体
JP2000020099A (ja) 線形予測分析器,コード励振線形予測符号器及びコード励振線形予測復号器
RU2343564C2 (ru) Способ адаптивного кодирования речевых сигналов на основе системы с переменной структурой
JP2005301002A (ja) 音声符号化情報処理装置および音声符号化情報処理プログラム
JPH02148926A (ja) 予測符号化方式
JPH04114516A (ja) 音声符号化装置
KR20020071138A (ko) Celp 보코더의 처리 지연시간을 감소하기 위한 인코딩및 디코딩 블럭 구조 및 그 구조를 이용한 인코딩 및디코딩 방법
JPH05341800A (ja) 音声符号化装置

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20170831