кодирующее устройство и способ кодирования
Классы МПК: | G10L19/08 определение или кодирование функций возбуждения; определение или кодирование параметров долгосрочных прогнозов |
Автор(ы): | МОРИИ Тосиюки (JP), ОСИКИРИ Масахиро (JP), ЯМАНАСИ Томофуми (JP) |
Патентообладатель(и): | ПАНАСОНИК КОРПОРЭЙШН (JP) |
Приоритеты: |
подача заявки:
2008-02-29 публикация патента:
10.10.2012 |
Изобретение относятся к кодированию речевых и звуковых сигналов. Техническим результатом является обеспечение достаточно хорошего качества звука, предпочтительного для слухового восприятия, даже если количество информационных разрядов небольшое. Кодирующее устройство включает в себя модуль (111) квантования формы, содержащий модуль (121) поиска участка, который ищет импульс для каждой из полос, на которые разделяется предопределенный участок поиска; и модуль (122) полного поиска, который выполняет поиск импульса по всему участку поиска. Форма входного спектра квантуется по небольшому количеству положений импульсов и полярностям. Модуль (112) квантования усиления вычисляет усиление импульса, который ищется модулем (111) квантования формы, и квантует усиление для каждой из полос. 3 н. и 3 з.п. ф-лы, 8 ил.
Формула изобретения
1. Устройство кодирования, содержащее:
участок квантования формы, который кодирует форму частотного спектра; и участок квантования усиления, который кодирует усиление частотного спектра,
причем участок квантования формы содержит:
участок поиска интервала, который ищет первую постоянную форму сигнала в каждой из множества полос, разделяющих предопределенный интервал поиска; и
участок полного поиска, который ищет вторые постоянные формы сигнала по всему предопределенному интервалу поиска.
2. Устройство кодирования по п.1, в котором участок полного поиска ищет вторые постоянные формы сигнала посредством оценивания искажения кодирования по идеальному усилению на полосу.
3. Устройство кодирования по п.1, в котором участок полного поиска кодирует информацию о положении вторых постоянных форм сигнала на основе количества сочетаний у положений вторых постоянных форм сигнала.
4. Устройство кодирования по п.1, в котором участок квантования усиления вычисляет усиления первой постоянной формы сигнала и вторых постоянных форм сигнала на основе полосы.
5. Устройство кодирования, содержащее: участок квантования формы, который кодирует форму частотного спектра; и участок квантования усиления, который кодирует усиление частотного спектра, причем участок квантования формы ищет постоянные формы сигнала путем оценивания искажения кодирования по идеальному усилению в каждой из множества полос, разделяющих предопределенный интервал поиска.
6. Способ кодирования, содержащий: этап квантования формы, на котором кодируют форму частотного спектра; и этап квантования усиления, на котором кодируют усиление частотного спектра, причем этап квантования формы содержит:
этап поиска интервала, на котором ищут первую постоянную форму сигнала в множестве полос, разделяющих предопределенный интервал поиска; и
этап полного поиска, на котором ищут вторые постоянные формы сигнала по всему предопределенному интервалу поиска.
Описание изобретения к патенту
Область техники
Настоящее изобретение относится к устройству кодирования и способу кодирования для кодирования речевых сигналов и звуковых сигналов.
Предшествующий уровень техники
В мобильной связи необходимо сжимать и кодировать цифровую информацию, например речь и изображения, для эффективного использования пропускной способности радиоканала и носителей информации для радиоволн, и до настоящего времени разработано много схем кодирования и декодирования.
Среди этих схем производительность технологии кодирования речи значительно увеличена посредством основной схемы "CELP (Линейное предсказание с кодовым возбуждением)", которая искусно применяет векторное квантование путем моделирования системы речевого тракта у речи. Более того, производительность технологии кодирования звука, например, звукового кодирования, значительно увеличена с помощью методик кодирования с преобразованием (например, ACC и MP3 стандарта MPEG).
С другой стороны, масштабируемый кодек, стандартизация которого проводится ITU-T (Международный союз электросвязи - Сектор стандартизации телекоммуникаций) и другими, спроектирован для охвата от традиционной полосы речи (от 300 Гц до 3,4 кГц) до широкой полосы (вплоть до 7 кГц), причем его скорость передачи битов установлена вплоть до приблизительно 32 Кбит/с. То есть широкополосному кодеку приходится даже применять некоторую степень кодирования, и поэтому он не может поддерживаться только традиционными способами кодирования речи с низкой скоростью передачи битов на основе модели человеческого голоса, например CELP. Сейчас стандарт G.729.1 ITU-T, заявленный раньше в качестве рекомендации, использует схему кодирования в звуковом кодеке, состоящую в кодировании с преобразованием, чтобы кодировать широкополосную речь и выше.
Патентный документ 1 раскрывает схему кодирования, использующую спектральные параметры и параметры основного тона, при помощи которой ортогональное преобразование и кодирование сигнала, полученного с помощью обратной фильтрации речевого сигнала, выполняются на основе спектральных параметров, и, кроме того, в качестве примера кодирования раскрывает способ кодирования на основе кодовых книг с алгебраическими структурами.
Патентный документ 2 раскрывает схему кодирования, состоящую в разделении сигнала на параметры линейного предсказания и остаточные составляющие, выполнении квадратурного преобразования остаточных составляющих, нормализации остаточной формы сигнала по мощности и затем квантовании усиления и нормализованного остатка. Дополнительно Патентный документ 2 раскрывает векторное квантование в качестве способа квантования для нормализованного остатка.
Непатентный документ 1 раскрывает способ кодирования на основе алгебраической кодовой книги, образованной с помощью улучшенных спектров возбуждения в TCX (то есть основной схемы кодирования, смоделированной с возбуждением, подвергнутым кодированию с преобразованием и фильтрацией спектральных параметров), и этот способ кодирования принят в стандарте G.729.1 ITU-T.
Непатентный документ 2 раскрывает описание схемы стандарта MPEG, "TC-WVQ". Эта схема также используется для преобразования остатка линейного предсказания в спектр и выполнения векторного квантования спектра, используя DCT (дискретное косинусное преобразование) в качестве способа ортогонального преобразования.
Посредством вышеупомянутых четырех способов предшествующего уровня техники можно применять к кодированию квантование спектральных параметров, таких как параметры линейного предсказания, которое является частью полезной методики кодирования речевых сигналов, посредством этого обеспечивая реализацию эффективности и низкой скорости звукового кодирования.
Патентный документ 1: Выложенная публикация заявки на патент Японии № HEI10-260698.
Патентный документ 2: Выложенная публикация заявки на патент Японии № HEI07-261800.
Непатентный документ 1: Минжи Кси (Minjie Xie) и Жан-Пьер Адоль (Jean-Pierre Adoul), "EMBEDDED ALGEBRAIC VECTOR QUANTIZERS (EAVQ) WITH APPLICATION TO WIDEBAND SPEECH CODING", ICASSP'96.
Непатентный документ 2: Мория Т. (Moriya T.), Хонда М. (Honda M.), "Transform Coding of Speech Using a Weighted Vector Quantizer", Журнал IEEE по избранным областям в связи, том 6, № 2, февраль 1988.
Раскрытие изобретения
Проблемы, которые должны быть решены изобретением
Однако количество разрядов, которое должно быть назначено масштабируемым кодеком, является небольшим, в особенности на относительно нижнем уровне, и, следовательно, производительность кодирования с преобразованием и возбуждением не является достаточной. Например, в стандарте G.729.1 ITU-T, хотя скорость передачи битов равна 12 кбит/с во втором или ниже уровне, поддерживающем телефонную полосу (от 300 Гц до 3,4 кГц), только скорость передачи битов в 2 кбит/с отводится следующему третьему уровню, поддерживающему широкую полосу (от 50 Гц до 7 кГц). Таким образом, когда мало информационных разрядов, нельзя добиться достаточной производительности восприятия с использованием способа кодирования спектра, которое получается с помощью ортогонального преобразования с векторным квантованием, использующим кодовую книгу.
Поэтому цель настоящего изобретения - предоставить устройство кодирования и способ кодирования, которые могут достичь хорошего качества восприятия, даже если мало информационных разрядов.
Средство для решения проблемы
Устройство кодирования по настоящему изобретению применяет конфигурацию, включающую участок квантования формы, который кодирует форму частотного спектра; и участок квантования усиления, который кодирует усиление частотного спектра, и в котором участок квантования формы включает в себя участок поиска интервала, который ищет первую постоянную форму сигнала в каждой из множества полос, разделяющих предопределенный интервал поиска; и участок полного поиска, который ищет вторые постоянные формы сигнала по всему предопределенному интервалу поиска.
Способ кодирования по настоящему изобретению включает в себя этапы этап квантования формы, состоящий из кодирования формы частотного спектра; и этап квантования усиления, состоящий из кодирования усиления частотного спектра, и в котором этап квантования формы включает в себя этап поиска интервала, состоящий из поиска первой постоянной формы сигнала во множестве полос, разделяющих предопределенный интервал поиска; и этап полного поиска, состоящий из поиска вторых постоянных форм сигнала по всему предопределенному интервалу поиска.
Полезные результаты изобретения
В соответствии с настоящим изобретением, можно точно кодировать частоты (положения), где присутствует энергия, так что можно повысить качественную производительность, которая уникальна для кодирования спектра, и создать хорошее качество звука даже на низких скоростях передачи битов.
Краткое описание чертежей
Фиг. 1 - блок-схема, показывающая конфигурацию устройства кодирования речи в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 2 - блок-схема, показывающая конфигурацию устройства декодирования речи в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 3 - блок-схема алгоритма, показывающая алгоритм поиска в участке поиска интервала в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 4 - схема, показывающая пример спектра, изображенного импульсами, которые ищут в участке поиска интервала в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 5 - блок-схема алгоритма, показывающая алгоритм поиска в участке полного поиска в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 6 - блок-схема алгоритма, показывающая алгоритм поиска в участке полного поиска в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 7 - схема, показывающая пример спектра, изображенного импульсами, которые ищут в участке поиска интервала и участке полного поиска в соответствии с вариантом осуществления настоящего изобретения;
Фиг. 8 - блок-схема алгоритма, показывающая алгоритм декодирования в участке декодирования спектра в соответствии с вариантом осуществления настоящего изобретения.
Лучший вариант осуществления изобретения
В кодировании речевого сигнала на основе схемы CELP и других речевой сигнал часто представляется фильтром возбуждения и синтезирующим фильтром. Если можно кодировать вектор, имеющий аналогичную форму с сигналом возбуждения, который является векторной последовательностью временной области, то можно создать форму сигнала, аналогичную речи на входе, посредством синтезирующего фильтра и достичь хорошего качества восприятия. Это является качественной характеристикой, которая привела к успеху алгебраическую кодовую книгу, используемую в CELP.
С другой стороны, в случае кодирования частотного спектра (вектора) синтезирующий фильтр обладает спектральными усилениями в виде его составляющих, и поэтому искажение частот (то есть положений) у составляющих с большой мощностью является более значительным, чем искажение этих усилений. То есть посредством поиска положений с высокой энергией и декодирования импульсов в положениях с высокой энергией вместо декодирования вектора, имеющего аналогичную форму с входным спектром, вероятнее всего достичь хорошего качества восприятия.
Авторы изобретения сосредоточились на этом вопросе и пришли к настоящему изобретению. То есть, на основе модели кодирования частотного спектра небольшим количеством импульсов, настоящее изобретение преобразует речевой сигнал для кодирования (то есть векторную последовательность временной области) в сигнал частотной области с помощью ортогонального преобразования, делит интервал частот у объекта кодирования на множество полос и ищет один импульс в каждой полосе, и к тому же ищет несколько импульсов по всему интервалу частот у объекта кодирования.
Более того, настоящее изобретение разделяет квантование формы (вида) и квантование усиления (количества) и в квантовании формы предполагает идеальное усиление и ищет импульсы, имеющие амплитуду "1" и полярность "+" или "-", по разомкнутому циклу. Здесь, в особенности при поиске по всему интервалу частот объекта кодирования, настоящее изобретение не позволяет двум импульсам возникать в одном и том же положении и позволяет сочетаниям положений множества импульсов кодироваться в виде информации передачи о положениях импульсов.
Ниже будет объясняться вариант осуществления настоящего изобретения с использованием прилагаемых чертежей.
Фиг. 1 - блок-схема, показывающая конфигурацию устройства кодирования речи в соответствии с данным вариантом осуществления. Устройство кодирования речи, показанное на фиг. 1, снабжается участком 101 анализа LPC, участком 102 квантования LPC, обратным фильтром 103, участком 104 ортогонального преобразования, участком 105 кодирования спектра и участком 106 мультиплексирования. Участок 105 кодирования спектра снабжается участком 111 квантования формы и участком 112 квантования усиления.
Участок 101 анализа LPC выполняет анализ с линейным предсказанием входного речевого сигнала и выводит параметр огибающей спектра в участок 102 квантования LPC в качестве результата анализа. Участок 102 квантования LPC выполняет квантование параметра огибающей спектра (LPC: Коэффициент линейного предсказания), выведенного из участка 101 анализа LPC, и выводит код, представляющий LPC квантования, в участок 106 мультиплексирования. Дополнительно участок 102 квантования LPC выводит декодированные параметры, полученные путем декодирования кода, представляющего квантованный LPC, в обратный фильтр 103. Здесь квантование параметров может применять векторное квантование ("VQ"), квантование с предсказанием, многоэтапное VQ, раздельное VQ и другие режимы.
Обратный фильтр 103 обратно фильтрует речь на входе с использованием декодированных параметров и выводит результирующую остаточную составляющую в участок 104 ортогонального преобразования.
Участок 104 ортогонального преобразования применяет интервал совпадения, например синусоидальный интервал, к остаточной составляющей, выполняет ортогональное преобразование с использованием MDCT и выводит спектр, преобразованный в спектр частотной области (в дальнейшем "входной спектр"), в участок 105 кодирования спектра. Здесь ортогональное преобразование может применять другие преобразования, такие как FFT, KLT и вейвлет-преобразование, и хотя их использование меняется, можно преобразовать остаточную составляющую во входной спектр с использованием любого из этих преобразований.
Здесь порядок обработки между обратным фильтром 103 и участком 104 ортогонального преобразования может быть обратным. То есть путем разделения речи на входе, подвергнутой ортогональному преобразованию частотным спектром обратного фильтра (то есть вычитанию на логарифмической оси), можно создать такой же входной спектр.
Участок 105 кодирования спектра разделяет входной спектр путем квантования формы и усиления спектра по отдельности и выводит результирующие коды квантования в участок 106 мультиплексирования. Участок 111 квантования формы квантует форму входного спектра, используя небольшое количество положений и полярностей импульсов, а участок 112 квантования усиления вычисляет и квантует усиления импульсов, найденных участком 111 квантования формы, на основе полосы. Участок 111 квантования формы и участок 112 квантования усиления будут подробно описываться позже.
Участок 106 мультиплексирования принимает в качестве входных данных код, представляющий LPC квантования, от участка 102 квантования LPC и код, представляющий квантованный входной спектр, от участка 105 кодирования спектра, мультиплексирует эту информацию и выводит результат в канал передачи в качестве информации кодирования.
Фиг. 2 - блок-схема, показывающая конфигурацию устройства декодирования речи в соответствии с данным вариантом осуществления. Устройство декодирования речи, показанное на фиг. 2, снабжается участком 201 демультиплексирования, участком 202 декодирования параметров, участком 203 декодирования спектра, участком 204 ортогонального преобразования и синтезирующим фильтром 205.
На фиг. 2 информация кодирования демультиплексируется в отдельные коды на участке 201 демультиплексирования. Код, представляющий квантованный LPC, выводится в участок 202 декодирования параметров, а код входного спектра выводится в участок 203 декодирования спектра.
Участок 202 декодирования параметров декодирует параметр огибающей спектра и выводит результирующий декодированный параметр в синтезирующий фильтр 205.
Участок 203 декодирования спектра декодирует вектор формы и усиление по способу, поддерживающему способ кодирования в участке 105 кодирования спектра, показанном на фиг. 1, получает декодированный спектр путем умножения декодированного вектора формы на декодированное усиление и выводит декодированный спектр в участок 204 ортогонального преобразования.
Участок 204 ортогонального преобразования выполняет обратное преобразование декодированного спектра, выведенного из участка 203 декодирования спектра, по сравнению с участком 104 ортогонального преобразования, показанным на фиг. 1, и выводит результирующий последовательно декодированный разностный сигнал в синтезирующий фильтр 205.
Синтезирующий фильтр 205 выводит речь путем применения синтезирующей фильтрации к декодированному разностному сигналу, выведенному из участка 204 ортогонального преобразования, используя декодированный параметр, выведенный из участка 202 декодирования параметров.
Здесь, чтобы изменить порядок обработки между обратным фильтром 103 и участком 104 ортогонального преобразования, показанный на фиг. 1, устройство декодирования речи на фиг. 2 умножает декодированный спектр на частотный спектр декодированного параметра (то есть сложение на логарифмической оси) и выполняет ортогональное преобразование результирующего спектра.
Далее будут подробно описываться участок 111 квантования формы и участок 112 квантования усиления. Участок 111 квантования формы снабжается участком 121 поиска интервала, который ищет импульсы в каждой из множества полос, на которые разделен предопределенный интервал поиска, и участком 122 полного поиска, который ищет импульсы во всем интервале поиска.
Нижеследующее уравнение 1 предоставляет базис для поиска. Здесь, в уравнении 1, E является искажением кодирования, si - входной спектр, g - оптимальное усиление, - дельта-функция, и p - положение импульса.
(Уравнение 1) |
Из уравнения 1 выше положение импульса для минимизации функции стоимости является положением, в котором абсолютное значение |sp| входного спектра в каждой полосе является максимальным, и его полярность является полярностью значения входного спектра в положении того импульса.
Ниже будет объясняться пример, где размерность вектора у входного спектра равна восьми выборкам, количество полос равно пяти, и спектр кодируется с использованием восьми импульсов, по одному импульсу от каждой полосы и три импульса от всей полосы. В этом случае длина каждой полосы составляет шестнадцать выборок. Более того, амплитуда искомых импульсов фиксируется в "1", и их полярность имеет значение "+" или "-".
Участок 121 поиска интервала ищет положение с максимальной энергией и полярностью (+/-) в каждой полосе и позволяет возникать одному импульсу на полосу. В этом примере количество полос равно пяти, и каждая полоса требует четыре разряда для показа положения импульса (входы положений: 16) и один разряд для показа полярности (+/-), требуя в итоге двадцать пять информационных разрядов.
Ход алгоритма поиска в участке 121 поиска интервала показан на фиг. 3. Здесь символы, используемые в блок-схеме алгоритма из фиг. 3, означают следующее содержание.
i: | положение |
b: | номер полосы |
max: | максимальное значение |
с: | счетчик |
pos[b]: | результат поиска (положение) |
pol[b]: | результат поиска (полярность) |
s[i]: | входной спектр |
Как показано на фиг. 3, участок 121 поиска интервала вычисляет входной спектр s[i] каждой выборки (0 с 15) на полосу (0 b 4) и вычисляет максимальное значение "max".
Фиг. 4 иллюстрирует пример спектра, представленного импульсами, найденными участком 121 поиска интервала. Как показано на фиг. 4, один импульс, имеющий амплитуду "1" и полярность "+" или "-", возникает в каждой из пяти полос, имеющих полосу пропускания в шестнадцать выборок.
Участок 122 полного поиска ищет положения увеличивающихся трех импульсов по всему интервалу поиска и кодирует положения и полярности этих импульсов. В участке 122 полного поиска выполняется поиск в соответствии с четырьмя следующими условиями для точного кодирования положений с небольшим количеством информационных разрядов и небольшим объемом вычислений.
(1) Два или более импульсов не должны возникать в одном и том же положении. В этом примере импульсы не должны возникать в положениях, в которых импульс каждой полосы увеличивается в участке 121 поиска интервала. С помощью этого трюка информационные разряды не используются для представления амплитудной составляющей, так что можно эффективно использовать информационные разряды.
(2) Импульсы ищутся по порядку, поодиночке, в разомкнутом цикле. Во время поиска, в соответствии с правилом (1) определенные положения импульсов не подлежат поиску.
(3) В поиске положения положение, в котором не должен возникнуть импульс, также кодируется как одна порция информации (положение).
(4) С учетом того, что усиления кодируются на основе полосы, импульсы находятся путем оценивания искажения кодирования относительно идеального усиления каждой полосы.
Участок 122 полного поиска выполняет следующую двухэтапную оценку стоимости для поиска одиночного импульса по всему входному спектру. Сначала на первом этапе участок 122 полного поиска оценивает стоимость в каждой полосе и находит положение и полярность для минимизации функции стоимости. Затем на втором этапе участок 122 полного поиска оценивает общую стоимость каждый раз, когда вышеупомянутый поиск завершается в полосе, и сохраняет положение и полярность импульса для минимизации стоимости в качестве итогового результата. Это поиск выполняется по каждой полосе по порядку. Более того, этот поиск выполняется, чтобы удовлетворить вышеупомянутые условия (1)-(4). Затем, когда завершается поиск одного импульса, предполагая наличие того импульса в искомом положении, выполняется поиск следующего импульса. Этот поиск выполняется, пока не обнаружено предопределенное количество импульсов (три импульса в этом примере), путем повторения вышеупомянутой обработки.
Ход алгоритма поиска в участке 122 полного поиска показан на фиг. 5. Фиг. 5 - блок-схема алгоритма предварительной обработки поиска, а фиг. 6 - блок-схема алгоритма поиска. Более того, части, соответствующие вышеупомянутым условиям (1), (2) и (4), показаны в блок-схеме алгоритма из фиг. 6.
Символы, используемые в блок-схеме алгоритма из фиг. 5, означают следующее содержание.
c: | счетчик |
pf[*]: | признак наличия/отсутствия импульса |
b: | номер полосы |
pos[*]: | результат поиска (положение) |
n_s[*]: | корреляционное значение |
n_max[*]: | максимальное корреляционное значение |
n2_s[*]: | квадрат корреляционного значения |
n2_max[*]: | максимальный квадрат корреляционного значения |
d_s[*]: | значение мощности |
d_max[*]: | максимальное значение мощности |
s[*]: | входной спектр |
Символы, используемые в блок-схеме алгоритма из фиг. 6, означают следующее содержание.
i: | номер импульса |
i0: | положение импульса |
cmax: | максимальное значение функции стоимости |
pf[*]: | признак наличия/отсутствия импульса (0: отсутствие, 1: наличие) |
ii0: | относительное положение импульса в полосе |
nom: | спектральная амплитуда |
nom2: | числитель (спектральная мощность) |
den: | знаменатель |
n_s[*]: | относительное значение |
d_s[*]: | значение мощности |
s[*]: | входной спектр |
n2_s[*]: | квадрат корреляционного значения |
n_max[*]: | максимальное корреляционное значение |
n2_max[*]: | максимальный квадрат корреляционного значения |
idx_max[*]: | результат поиска каждого импульса (положения) (здесь idx_max[*] от 0 до 4 равносилен pos[b] из фиг. 3) |
fd0, fd1, fd2: | временный буфер хранения (действительные числа) |
id0, id1: | временный буфер хранения (целые числа) |
id0_s, id1_s: | временный буфер хранения (целые числа) |
>>: | сдвиг разрядов (вправо) |
&: | "и" в качестве двоичной последовательности |
Здесь в поиске на фиг. 5 и фиг. 6 случай, где idx_max[*] равен "-1", соответствует вышеупомянутому случаю условия (3), где импульс не должен возникнуть. Подробный пример этого состоит в том, что поскольку спектр достаточно приближен только искомым импульсом на полосу и искомыми импульсами во всем интервале, если к тому же увеличивается импульс такой же амплитуды, вызывается пропорциональное увеличение искажения кодирования.
Полярности искомых импульсов соответствуют полярностям входного спектра в этих положениях, и участок 122 полного поиска кодирует эти полярности с помощью 3 (импульса) × 1 = 3 разряда. Здесь, когда положение равно "-1", то есть когда импульс не возникает, не имеет значения, является ли полярность "+" или "-". Однако полярность может использоваться для обнаружения ошибок в разрядах и обычно фиксируется либо в "+", либо в "-".
Более того, участок 122 полного поиска кодирует информацию о положении импульса на основе количества сочетаний положений импульсов. В этом примере, поскольку входной спектр содержит восемь выборок, и пять импульсов уже обнаружены в пяти отдельных полосах, если также учитываются случаи, где импульсы не увеличиваются, колебания положений могут быть представлены с использованием семнадцати разрядов в соответствии с вычислением следующего уравнения 2.
| (Уравнение 2) |
Здесь в соответствии с правилом, позволяющим двум или более импульсам не возникать в одном и том же положении, можно уменьшить количество сочетаний, чтобы эффект этого правила стал больше, когда увеличивается количество импульсов для поиска во всем интервале.
Ниже будет подробно описываться способ кодирования на основе положений импульсов, которые ищут в участке 122 полного поиска.
(1) Три положения импульсов сортируются на основе их величины и расставляются в порядке от наименьшего численного значения до наибольшего численного значения. Здесь "-1" оставляется как есть.
(2) Номера импульсов выравниваются слева по количеству импульсов, возникающих в отдельных полосах, для уменьшения численных значений номеров импульсов. Вычисленные таким образом численные значения называются "номерами положений". Здесь "-1" оставляется как есть. Например, обращаясь к положению импульса "66", когда один импульс предоставляется между 0 и 15, между 16 и 31, между 32 и 47 и между 48 и 64, номер положения изменяется на "66-4=62".
(3) "-1" присваивается номеру положения, представленному "максимальным значением импульса + 1". В этом случае порядок значений настраивается и определяется из условия, чтобы установленный номер положения не перепутался с номером положения, в котором фактически присутствует импульс. Таким образом, номер импульса у импульса #0 ограничивается диапазоном между 0 и 73, номер положения у импульса #1 ограничивается диапазоном между номером #0 положения импульса и 74, и номер положения у импульса #2 ограничивается диапазоном между номером #1 положения импульса и 75, то есть номер положения нижнего импульса предназначен, чтобы не превышать номер положения у верхнего импульса.
(4) Затем, в соответствии с объединяющей обработкой, показанной в следующем уравнении 3 для вычисления кода сочетания, номера (i0, i1, i2) положений объединяются для создания кода (с). Эта объединяющая обработка является вычислением с интеграцией всех сочетаний, когда имеется порядок величины.
| (Уравнение 3) |
(5) Затем, объединяя 17 разрядов этого кода c и 3 разряда для полярности, создается код из 20 разрядов.
Здесь в приведенных выше номерах положений импульс #0 из "73", импульс #1 из "74" и импульс #2 из "75" являются номерами положений, в которых не возникают импульсы. Например, если есть три номера положений (73, -1, -1) в соответствии с приведенным выше соотношением между одним номером положения и номером положения, в котором не возникает импульс, эти номера положений переупорядочиваются в (-1, 73, -1) и делаются (73, 73, 75).
Таким образом в модели, где входной спектр представляется 8-импульсой последовательностью (пять импульсов в отдельных полосах и три импульса во всем интервале), как показано в этом примере, можно выполнять кодирование 45 информационными разрядами.
Фиг. 7 иллюстрирует пример спектра, представленного импульсами, найденными в участке 121 поиска интервала и участке 122 полного поиска. Также на фиг. 7 импульсы, представленные толстыми линиями, являются импульсами, найденными в участке 122 полного поиска.
Участок 112 квантования усиления квантует усиление каждой полосы. Восемь импульсов распределяются в полосах, и участок 112 квантования усиления вычисляет усиления путем анализа корреляции между этими импульсами и входным спектром.
Если сначала участок 112 квантования усиления вычисляет идеальные усиления и затем выполняет кодирование с помощью скалярного квантования или векторного квантования, то участок 112 квантования усиления вычисляет идеальные усиления в соответствии со следующим уравнением 4. Здесь в уравнении 4 gn - идеальное усиление полосы "n", s(i+16n) - входной спектр полосы "n", vn(i) - вектор, полученный декодированием формы полосы "n".
(Уравнение 4) |
Более того, участок 112 квантования усиления выполняет кодирование путем выполнения скалярного квантования ("SQ") идеальных усилений или выполнения векторного квантования этих пяти усилений вместе. В случае выполнения векторного квантования можно выполнить эффективное кодирование путем квантования с предсказанием, многоэтапного VQ, раздельного VQ и так далее. Здесь усиление может быть чувственно услышано на основе логарифмической шкалы, и, следовательно, путем выполнения SQ или VQ после выполнения логарифмического преобразования усиления можно создать хороший для восприятия синтезированный звук.
Более того, вместо вычисления идеальных усилений имеется способ непосредственного оценивания искажения кодирования. Например, в случае выполнения VQ из пяти усилений искажение кодирования вычисляется для минимизации следующего уравнения 5. Здесь в уравнении 5 Ek - искажение k-го вектора усиления, s(i+16n) - входной спектр полосы "n", gn (k) - n-й элемент k-го вектора усиления, и v n(i) - вектор формы, полученный декодированием формы полосы "n".
(Уравнение 5) |
Далее будет объясняться способ декодирования трех импульсов в участке 203 декодирования спектра, которые найдены с помощью полного поиска.
В участке 122 полного поиска участка 105 кодирования спектра номера положений (i0, i1, i2) объединяются в один код, используя описанное выше уравнение 3. В участке 203 декодирования спектра выполняется обратная обработка. То есть участок 203 декодирования спектра последовательно вычисляет значение объединяющего уравнения наряду с изменением каждого номера положения, фиксирует номер положения, когда номер положения ниже значения интегрирования, и выполняет эту обработку от номера положения нижнего порядка до номера положения верхнего порядка друг за другом, посредством этого выполняя декодирование. Фиг. 8 - блок-схема алгоритма, показывающая алгоритм декодирования в участке 203 декодирования спектра.
Более того, на фиг. 8, когда входной код "k" объединенного положения содержит ошибку из-за ошибки в разряде, процесс переходит к этапу обработки ошибок. Поэтому в этом случае положение должно быть найдено с помощью предопределенной обработки ошибок.
Более того, поскольку декодер содержит циклическую обработку, объем вычислений в декодере больше, чем в кодере. Здесь каждый цикл является разомкнутым циклом, и, следовательно, с позиции общего объема обработки в кодеке объем вычислений в декодере не такой уж большой.
Таким образом, данный вариант осуществления может точно кодировать частоты (положения), в которых присутствует энергия, так что можно повысить качественную производительность, которая уникальна для кодирования спектра, и создать хорошее качество звука даже на низких скоростях передачи битов.
Более того, хотя с помощью данного варианта осуществления описан случай, где кодирование усиления выполняется после кодирования формы, настоящее изобретение может обеспечивать такую же производительность, если кодирование формы выполняется после кодирования усиления. Более того, может быть возможным применить способ выполнения кодирования усиления на основе полосы и затем нормализации спектра с помощью декодированных усилений и выполнения кодирования формы по настоящему изобретению.
Более того, хотя с помощью данного варианта осуществления выше описан пример, где в квантовании формы спектра длина спектра равна восьмидесяти, количество полос равно пяти, количество импульсов для поиска на основе полосы равно одному и количество импульсов для поиска во всем интервале равно трем, настоящее изобретение вообще не зависит от вышеприведенных значений и может давать такие же результаты с разными численными значениями.
Более того, если полоса пропускания достаточно короткая, то может быть кодировано относительно много усилений, и количество информационных разрядов достаточно большое, настоящее изобретение может достичь описанной выше производительности только путем выполнения поиска импульса на основе полосы или выполнения поиска импульса в широком интервале на множестве полос.
Более того, хотя в описанном выше варианте осуществления задается условие неувеличения двух импульсов в одном и том же положении, настоящее изобретение может частично смягчить это условие. Например, если разрешается появление импульса для поиска на основе полосы и импульсов для поиска в широком интервале на множестве полос в одних и тех же положениях, то можно исключить импульсы отдельных полос или позволить возникнуть импульсам с удвоенной амплитудой. Чтобы смягчить это условие, неотъемлемое требование заключается в отказе от сохранения признака pf[*] наличия/отсутствия импульса по отношению к импульсу на каждую полосу. То есть "pf[pos[b]]=1" в последнем этапе на фиг. 5 нужно пропустить. В качестве альтернативы другой способ смягчения этого условия заключается в отказе от сохранения признака наличия/отсутствия импульса при поиске импульса в широком интервале. То есть "pf[idx_max[i+5]]=1" в последнем этапе на фиг. 6 нужно пропустить. В этом случае колебания положений увеличиваются. Сочетания не являются такими простыми, как показано в данном варианте осуществления, и поэтому необходимо систематизировать случаи и кодировать сочетания в соответствии с систематизированными случаями.
Более того, хотя кодирование по импульсам выполняется для спектра, подвергнутого ортогональному преобразованию в данном варианте осуществления, настоящее изобретение этим не ограничивается и также применимо к другим векторам. Например, настоящее изобретение может применяться к вектору комплексного числа в FFT или комплексном DCT и может применяться к векторной последовательности временной области в вейвлет-преобразовании или подобном. Более того, настоящее изобретение также применимо к векторной последовательности временной области, например формам сигнала возбуждения в CELP. Что касается форм сигнала возбуждения в CELP, привлекается синтезирующий фильтр, и поэтому функция стоимости включает в себя вычисление матрицы. Здесь производительность не является достаточной по поиску в разомкнутом цикле, когда привлекается фильтр, и поэтому отчасти нужно выполнять поиск по замкнутому циклу. Когда имеется много импульсов, эффективно использовать лучевой поиск или подобный для уменьшения объема вычислений.
Более того, в соответствии с настоящим изобретением форма сигнала для поиска не ограничивается импульсом, и в равной степени можно искать даже другие постоянные формы сигнала (например, двойной импульс, треугольную волну, ограниченную волну с импульсной характеристикой, коэффициент фильтра и постоянные формы сигнала, которые адаптивно меняют форму), и давать такой же результат.
Более того, хотя с помощью данного варианта осуществления описан случай, где настоящее изобретение применяется к CELP, настоящее изобретение этим не ограничивается, но эффективно и с другими кодеками.
Боле того, не только речевой сигнал, но также и звуковой сигнал может использоваться в качестве сигнала в соответствии с настоящим изобретением. Также можно применять конфигурацию, в которой настоящее изобретение применяется к разностному сигналу из предсказания LPC вместо входного сигнала.
Устройство кодирования и устройство декодирования в соответствии с настоящим изобретением могут устанавливаться на терминале связи и базовой станции в системе мобильной связи, так что можно предоставить терминал связи, базовую станцию и систему мобильной связи, имеющие одинаковую эффективность работы с вышеупомянутыми.
Хотя с помощью вышеупомянутого варианта осуществления в качестве примера описан случай, где настоящее изобретение реализуется с помощью аппаратных средств, настоящее изобретение может быть реализовано с помощью программного обеспечения. Например, с помощью описания алгоритма в соответствии с настоящим изобретением на языке программирования, сохранения этой программы в запоминающем устройстве и приказания участку обработки информации выполнить эту программу, можно реализовать такую же функцию, как в устройстве кодирования в соответствии с настоящим изобретением.
Кроме того, каждый функциональный блок, примененный в описании каждого из вышеупомянутых вариантов осуществления, может быть, как правило, реализован в виде LSI, образованной интегральной схемой. Это могут быть отдельные микросхемы или частично либо полностью заключенные в одну микросхему.
Здесь принята "LSI", но это также может называться "IC", "системной LSI", "супер-LSI" или "ультра-LSI" в зависимости от отличающихся степеней интеграции.
Более того, способ схемной интеграции не ограничен LSI, и также возможна реализация, использующая специализированные схемы или универсальные процессоры. После изготовления LSI также возможно использование FPGA (программируемых пользователем вентильных матриц) или процессора с перестраиваемой конфигурацией, где могут быть переконфигурированы соединения и настройки ячеек схемы в LSI.
Более того, если появляется технология интегральной схемы для замены LSI в результате прогресса полупроводниковой технологии или другой производной технологии, то можно, конечно, выполнять интеграцию функциональных блоков с использованием этой технологии. Также возможно применение биотехнологии.
Раскрытие заявки на патент Японии № 2007-053497, поданной 2 марта 2007 г., включающей описание, чертежи и реферат, полностью включается в этот документ путем отсылки.
Промышленная применимость
Настоящее изобретение применимо к устройству кодирования, которое кодирует речевые сигналы и звуковые сигналы, и к устройству декодирования, которое декодирует эти кодированные сигналы.
Класс G10L19/08 определение или кодирование функций возбуждения; определение или кодирование параметров долгосрочных прогнозов