Системы, способы и устройства для обнаружения изменения сигналов
Иллюстрации
Показать всеИзобретение относится к обработке речевых сигналов. Раскрытые конфигурации включают в себя системы, способы и устройства, выполненные с возможностью формировать последовательность значений спектрального наклона, которая основана на неактивных кадрах речевого сигнала. Для каждого из множества неактивных кадров речевого сигнала решение по передаче принимается согласно изменению, вычисленному, по меньшей мере, между двумя соответствующими значениями последовательности. Результат решения по передаче решает, передается ли описание молчания для соответствующего неактивного кадра. Технический результат - обеспечение снижения вероятности ошибочных положительных решений посредством этапа принятия решения. 5 н. и 41 з.п. ф-лы, 34 ил.
Реферат
Родственные заявки
Данная заявка притязает на приоритет Предварительной патентной заявки США № 60/834689, озаглавленной "SPECTRAL TILT BASED DTX SCHEME", зарегистрированной 31 июля 2006 года.
Область техники, к которой относится изобретение
Данное изобретение относится к обработке сигналов.
Уровень техники
Передача речи посредством цифровых методик стала повсеместной, в частности в междугородной и международной телефонной связи, телефонной связи с коммутацией пакетов, такой как "речь-по-IP" (VoIP), и цифровой телефонной радиосвязи, такой как сотовая телефонная связь. Такое распространение вызвало интерес к уменьшению объема информации, используемой для того, чтобы передавать речевые данные по каналу передачи при сохранении воспринимаемого качества восстановленной речи.
Устройства, которые выполнены с возможностью сжимать речь за счет извлечения параметров, которые относятся к модели формирования человеческой речи, называют "речевыми кодерами". Речевой кодер, в общем, включает в себя кодер и декодер. Кодер в типичном варианте делит входящий речевой сигнал (цифровой сигнал, представляющий аудиоинформацию) на сегменты времени, называемые "кадрами", анализирует каждый кадр для того, чтобы извлекать определенные значимые параметры, и квантует параметры в двоичное представление, к примеру в набор битов или пакет двоичных данных. Пакеты данных передаются по каналу передачи (т.е. проводному или беспроводному сетевому подключению) в приемное устройство, которое включает в себя декодер. Декодер принимает и обрабатывает пакеты данных, деквантует их, чтобы сформировать параметры, и воссоздает речевые кадры, используя деквантованные параметры.
В типичном разговоре каждый говорящий молчит примерно шестьдесят процентов времени. Речевые кодеры обычно выполнены с возможностью отличать кадры речевого сигнала, которые содержат речь ("активные кадры"), от кадров речевого сигнала, которые содержат только молчание или фоновый шум ("неактивных кадров"). Этот кодер может быть выполнен с возможностью использовать различные режимы и/или скорости кодирования для того, чтобы кодировать активные и неактивные кадры. Например, речевые кодеры в типичном варианте выполнены с возможностью передавать кодированные неактивные кадры (также называемые "дескрипторами молчания", "описаниями молчания" или SID) на меньшей скорости передачи битов, чем кодированные активные кадры.
В любое время в течение полнодуплексной телефонной связи можно ожидать, что вводом, по меньшей мере, в один из речевых кодеров будет неактивный кадр. Может быть желательным для кодера передавать SID не для всех неактивных кадров. Эта операция также называется прерывистой передачей (DTX). В одном примере речевой кодер выполняет DTX посредством передачи одного SID для каждой строки из 32 следующих друг за другом неактивных кадров. Соответствующий декодер применяет информацию в SID для того, чтобы обновлять модель формирования шума, которая используется посредством алгоритма формирования комфортного шума, чтобы синтезировать неактивные кадры.
Сущность изобретения
Способ обработки речевого сигнала согласно конфигурации включает в себя формирование последовательности значений спектрального наклона, которая основана на множестве неактивных кадров речевого сигнала. Это способ включает в себя вычисление изменения, по меньшей мере, между двумя значениями последовательности значений спектрального наклона и, для неактивного кадра из множества неактивных кадров, решение, следует ли передавать описание для кадра. В этом способе решение, следует ли передавать описание для кадра, основано на вычисленном изменении.
Компьютерный программный продукт согласно другой конфигурации включает в себя машиночитаемый носитель. Этот носитель включает в себя код для инструктирования, по меньшей мере, одному компьютеру формировать последовательность значений спектрального наклона, которая основана на множестве неактивных кадров речевого сигнала. Этот носитель включает в себя код для инструктирования, по меньшей мере, одному компьютеру вычислять изменение, по меньшей мере, между двумя значениями последовательности значений спектрального наклона; и носитель включает в себя код для инструктирования, по меньшей мере, одному компьютеру решать, для неактивного кадра из множества неактивных кадров и на основе вычисленного изменения, следует ли передавать описание для кадра.
Устройство обработки речевого сигнала согласно другой конфигурации включает в себя формирователь последовательностей, выполненный с возможностью формировать последовательность значений спектрального наклона, которая основана на множестве неактивных кадров речевого сигнала. Это устройство включает в себя вычислитель, выполненный с возможностью вычислять изменение, по меньшей мере, между двумя значениями последовательности значений спектрального наклона; и компаратор, выполненный с возможностью решать, для неактивного кадра из множества неактивных кадров и на основе вычисленного изменения, следует ли передавать описание для кадра.
Устройство обработки речевого сигнала согласно другой конфигурации включает в себя средство формирования последовательности значений спектрального наклона, которая основана на множестве неактивных кадров речевого сигнала. Это устройство включает в себя средство вычисления изменения, по меньшей мере, между двумя значениями последовательности значений спектрального наклона; и средство решения, для неактивного кадра из множества неактивных кадров и на основе вычисленного изменения, следует ли передавать описание для кадра.
Краткое описание чертежей
Фиг.1A иллюстрирует блок-схему последовательности операций способа M100 согласно конфигурации.
Фиг.1B иллюстрирует блок-схему устройства A100 согласно конфигурации.
Фиг.1C иллюстрирует блок-схему последовательности операций для реализации M101 способа M100.
Фиг.1D иллюстрирует блок-схему реализации A101 устройства A100.
Фиг.2 иллюстрирует блок-схему реализации 132 сглаживателя 130.
Фиг.3 показывает иллюстративный пример, в котором каждый круг представляет один из серии следующих друг за другом кадров речевого сигнала во времени.
Фиг.4 иллюстрирует блок-схему реализации 142 вычислителя 140.
Фиг.5 иллюстрирует блок-схему реализации 152 компаратора 150.
Фиг.6 иллюстрирует блок-схему реализации 154 компаратора 150.
Фиг.7A иллюстрирует блок-схему реализации A102 устройства A100.
Фиг.7B иллюстрирует пример, в котором несколько различных индикаторов передачи объединены в составной индикатор передачи.
Фиг.8A иллюстрирует распечатку исходного кода для набора инструкций, которые могут быть приведены в исполнение для того, чтобы осуществить реализацию способа M100.
Фиг.8B иллюстрирует распечатку исходного кода для набора инструкций, которые могут быть приведены в исполнение для того, чтобы осуществить другую реализацию способа M100.
Фиг.9 иллюстрирует блок-схему последовательности операций способа, который содержит комбинацию способа M101 и способа кодирования речи.
Фиг.10 иллюстрирует блок-схему устройства, которое содержит комбинацию устройства A101 и речевого кодера.
Фиг.11A иллюстрирует блок-схему последовательности операций для реализации M200 способа M100.
Фиг.11B иллюстрирует блок-схему последовательности операций для реализации A200 устройства A100.
Фиг.12A иллюстрирует блок-схему последовательности операций для реализации M110 способа M101.
Фиг.12B иллюстрирует блок-схему последовательности операций для реализации M210 способа M200.
Фиг.12C иллюстрирует блок-схему последовательности операций для реализации M120 способа M101.
Фиг.12D иллюстрирует блок-схему последовательности операций для реализации M220 способа M200.
Фиг.13A и 13B иллюстрируют примеры сглаженного контура спектрального наклона без и с применением "последействия", соответственно.
Фиг.14 иллюстрирует распечатку исходного кода для набора инструкций, которые могут быть приведены в исполнение для того, чтобы осуществить дополнительную реализацию способа M100.
Фиг.15 иллюстрирует блок-схему примера логической схемы последействия.
Фиг.16A иллюстрирует блок-схему реализации 134 сглаживателя 132.
Фиг.16B иллюстрирует блок-схему реализации 136 сглаживателя 132.
Фиг.17A иллюстрирует блок-схему одного примера 62 формирователя 60 сигналов управления, выполненного с возможностью формировать сигнал управления обновлением на основе прогнозного усиления.
Фиг.17B иллюстрирует блок-схему одного примера 64 формирователя 62 сигналов управления, который выполнен с возможностью применять последействие.
Фиг.18 иллюстрирует блок-схему реализации 66 формирователя 64 сигналов управления, который также включает в себя логическую схему 52 последействия.
Фиг.19A иллюстрирует блок-схему одного примера 72 схемы 70 управления индикаторами передачи.
Фиг.19B иллюстрирует блок-схему реализации 156 компаратора 152.
Фиг.20 иллюстрирует блок-схему одного примера 82 схемы 80 управления, выполненной с возможностью формировать сигнал управления обновлением и пропускать индикатор передачи SID.
Фиг.21 иллюстрирует распечатку исходного кода для набора инструкций, которые могут быть приведены в исполнение для того, чтобы осуществить дополнительную реализацию способа M100.
Подробное описание изобретения
Конфигурации, описанные в данном документе, включают в себя системы, способы и устройства для обнаружения изменения речевого сигнала. Например, раскрыты конфигурации для обнаружения изменения в ходе неактивного периода сигнала и, на основе этого обнаружения, инициирования обновления в описание сигнала. Эти конфигурации в типичном варианте предназначены для использования в сетях с коммутацией пакетов (например, проводных и/или беспроводных сетях, выполненных с возможностью переносить передачу речи согласно таким протоколам, как "речь-по-IP", или VoIP), хотя использование в сетях с коммутацией каналов также явно предполагается и в силу этого раскрывается.
Если не ограничен в явной форме контекстом, термин "вычисление" используется в данном документе, чтобы обозначать любое из своих обычных значений, например расчет, оценку, сглаживание и выбор из множества значений. Если термин "содержащий" используется в настоящем описании и формуле изобретения, он не исключает других элементов или операций. Термин "A основан на B" используется для того, чтобы обозначать любое из своих обычных значений, в том числе случаи (i) "A основан, по меньшей мере, на B" и (ii) "A равен B" (если применимо в конкретном контексте).
Кодер, осуществляющий на практике DTX, может быть выполнен с возможностью отбрасывать (или "гасить") большинство неактивных кадров согласно схеме гашения. Один пример схемы гашения выдает обновления в описание молчания с регулярными интервалами (например, каждый 16-й или 32-й последовательный неактивный кадр). Другие схемы гашения (также называемые схемами "гашения со встроенной логикой") выполнены с возможностью выдавать обновления в описание молчания при обнаружении колебаний в энергии и/или спектральных характеристиках, которые могут указывать изменения в фоновом шуме.
Схема гашения, которая базируется только на колебаниях энергии, иногда может не иметь возможности обнаруживать перцепционно значимые изменения в фоновом шуме. В некоторых случаях неактивные кадры, которые имеют перцепционные отличия, имеют похожие энергетические характеристики (в типичном варианте закодированные как значения усиления). Хотя фоновый шум на улице ("уличный шум") может иметь распределение энергии во времени, которое аналогично распределению энергии фонового шума в людном месте ("совокупный перекрестный шум"), например, эти два типа шума обычно воспринимаются очень по-разному. Схема гашения, которая не может различать между перцепционно различными типами шума, может приводить к слышимым помехам в декодере. Поскольку активные кадры также включают в себя фоновый шум, например, слышимая разрывность может возникать, когда декодер переключается с декодированного активного кадра на комфортный шум, который формируется из некорректного SID.
Желательно, чтобы схема гашения обнаруживала изменения в фоновом шуме, которые могут быть перцепционно значимыми. Например, желательно, чтобы схема гашения обнаруживала внезапное изменение в одной или более спектральных характеристик фонового шума (к примеру, в спектральном наклоне). Способ или устройство, описанные в данном документе, могут быть использованы для того, чтобы реализовать эту схему гашения. Альтернативно, способ или устройство, описанные в данном документе, могут быть использованы для того, чтобы дополнить другую схему гашения. Например, речевой кодер или способ речевого кодирования могут комбинировать способ или устройство, описанные в данном документе, со схемой гашения, описанной в Патентной публикации США № 2006/0171419 (Spindola и др., опубликованной 3 августа 2006 года), или с другой схемой гашения, которая выполнена с возможностью обнаруживать изменение в энергии кадра и/или изменение в спектральной характеристике речевого сигнала, такой как разность между векторами пар спектральных линий.
Фиг.1A иллюстрирует блок-схему последовательности операций способа M100 согласно общей конфигурации. На основе множества неактивных кадров речевого сигнала этап T200 формирует последовательность значений спектрального наклона. Этап T400 вычисляет изменение в последовательности значений спектрального наклона (к примеру, изменение, по меньшей мере, среди двух значений последовательности). Для неактивного кадра речевого сигнала этап T500 решает, следует ли передавать описание кадра, при этом решение базируется на вычисленном изменении. Например, решение в отношении того, следует ли передавать описание, может быть основано на взаимосвязи между (A) абсолютной величиной вычисленного изменения и (B) пороговым значением.
В типичной реализации способа M100 каждое из последовательности значений спектрального наклона базируется на спектральном наклоне соответствующего неактивного кадра. Спектральный наклон кадра речевого сигнала - это значение, которое описывает распределение энергии в кадре по частотному диапазону. В типичном варианте спектральный наклон указывает крутизну спектра сигнала по соответствующему кадру и может быть положительным или отрицательным. Действие формирования следующего значения в последовательности значений спектрального наклона также называется "обновлением" последовательности.
Значения в последовательности значений спектрального наклона в типичном варианте выполнены с возможностью быть последовательными во времени с тем, чтобы последовательные значения последовательности соответствовали сегментам сигнала, которые являются последовательными во времени. Последовательность значений спектрального наклона, расположенных таким образом, как считается, может представлять контур, который описывает изменения крутизны энергетического спектра речевого сигнала во времени (т.е. контур спектрального наклона).
Этап T200 может быть реализован так, чтобы формировать последовательность значений наклона любым из нескольких различных способов. Например, этап T200 может быть выполнен так, чтобы принимать эту последовательность из запоминающего элемента или матрицы (к примеру, полупроводниковой памяти или матрицы), из другого этапа более крупного процесса, такого как способ речевого кодирования, или из элемента устройства, такого как речевой кодер. Альтернативно, этап T200 может быть выполнен так, чтобы вычислять такую последовательность, как описано в данном документе.
Этап T200 может быть выполнен так, чтобы выводить принимаемую или вычисляемую последовательность (также обозначаемую в данном документе как x) в качестве сформированной последовательности значений спектрального наклона. Альтернативно, этап T200 может быть выполнен так, чтобы формировать последовательность значений спектрального наклона y посредством выполнения одной или более других операций с этой последовательностью x. Эти другие операции могут включать в себя выбор другой последовательности из значений последовательности x: например, выбор каждого n-го значения, где n - это целое число больше единицы, и/или выбор только тех значений, которые соответствуют неактивным кадрам. Эти другие операции также могут включать в себя сглаживание принимаемой, вычисляемой или выбираемой последовательности, как описано в данном документе.
Продолжительность каждого сегмента во времени (также называемая "сегментом" или "кадром") речевого сигнала в типичном варианте выбирается так, чтобы быть достаточно короткой для того, чтобы спектральная огибающая сигнала могла предполагаемо оставаться относительно стационарной. Например, длина одного типичного кадра составляет двадцать миллисекунд, что соответствует 160 выборкам при частоте дискретизации в восемь килогерц (кГц), хотя любая длина кадра или частота дискретизации, считающаяся подходящей для конкретного варианта применения, может быть использована. В некоторых вариантах применения кадры являются неперекрывающимися, тогда как в других вариантах применения используется схема перекрывающихся кадров. Например, в речевых кодерах широко используется схема перекрывающихся кадров в кодере и схема неперекрывающихся кадров в декодере.
В типичном варианте применения матрица логических вентилей выполнена с возможностью осуществлять один или даже все из различных этапов способа M100. Например, такой этап или этапы могут быть реализованы как машиноисполняемый код, который должен приводиться в исполнение посредством программируемой матрицы, такой как процессор. Этапы способа M100 также могут выполняться посредством нескольких таких матриц. В этих и других реализациях этапы могут выполняться в рамках устройства для беспроводной связи, такого как сотовый телефон или другое устройство, имеющее такие возможности связи. Это устройство может быть выполнено с возможностью обмениваться данными с сетями с коммутацией каналов и/или коммутацией пакетов (к примеру, с помощью одного или более протоколов, таких как VoIP). Например, это устройство может включать в себя RF-схему, выполненную с возможностью передавать кодированные активные кадры и SID. Способ M100 также может быть реализован как машиночитаемый код, осуществленный в компьютерном программном продукте (к примеру, одном или более носителей хранения данных, таких как диски, флэш-память или другие энергонезависимые карты памяти, микросхемы полупроводниковой памяти и т.д.).
В типичном варианте применения способа M100 этап T400 итеративно проходит по последовательности значений спектрального наклона, сформированной посредством этапа T200, чтобы вычислить серию изменений на основе последовательных пар значений спектрального наклона, а этап T500 итеративно проходит по серии изменений, чтобы принять серию решений по передаче. Как правило, этап T200 приводится в исполнение как текущий процесс, а этапы T400 и T500 выполняются итеративно последовательно или параллельно так, чтобы значение спектрального наклона и соответствующий вычисленный индикатор изменений и передачи формировались для каждого неактивного кадра речевого сигнала (к примеру, возможно, после периода инициализации одного или более неактивных кадров). Также возможно реализовать способ M100 таким образом, что этап T200 формирует значения спектрального наклона менее часто, чем каждый неактивный кадр (к примеру, для каждого второго или третьего кадра), таким образом, что этап T400 выполняется так же часто или менее часто, чем этап T200 (к примеру, для каждой второй или третьей итерации этапа T200), и/или таким образом, что этап T500 выполняется так же часто или менее часто, чем этап T400 (к примеру, для каждой второй или третьей итерации этапа T400).
Фиг.1B иллюстрирует блок-схему устройства A100 согласно общей конфигурации. Формирователь 120 последовательностей выполнен с возможностью формировать последовательность значений спектрального наклона, которая основана на множестве неактивных кадров речевого сигнала. Например, формирователь 120 последовательностей может быть выполнен с возможностью осуществлять реализацию этапа T200, раскрытого в данном документе. Вычислитель 140 выполнен с возможностью вычислять изменение, по меньшей мере, между двумя значениями в последовательности значений спектрального наклона. Например, вычислитель 140 может быть выполнен с возможностью осуществлять реализацию этапа T400, раскрытого в данном документе. Компаратор 150 выполнен с возможностью решать, следует ли передавать описание для неактивного сегмента речевого сигнала, при этом решение основано на вычисленном изменении (к примеру, на взаимосвязи между (A) абсолютной величиной вычисленного изменения и (B) пороговым значением). Например, компаратор 150 может быть выполнен с возможностью осуществлять реализацию этапа T500, раскрытого в данном документе. В типичном варианте применения реализация устройства A100 выполнена с возможностью обрабатывать последовательность значений спектрального наклона и формировать серию решений по передаче на основе последовательности.
Различные элементы устройства A100 могут быть реализованы в любой комбинации аппаратных средств, программного обеспечения и/или микропрограммного обеспечения, которая считается подходящей для целевого варианта применения. Например, любые из этих элементов могут быть реализованы как одна или более матриц логических вентилей. Любые два или более или даже все из этих элементов могут быть реализованы в рамках одной матрицы или матриц. Такая матрица или матрицы могут быть реализованы в рамках одной или более микросхем (например, в рамках набора микросхем, включающего в себя две или более микросхемы). Любые из различных элементов устройства A100 также могут быть реализованы как один или более компьютеров (к примеру, матриц, запрограммированных так, чтобы приводить в исполнение один или более наборов или последовательностей инструкций, также называемых "процессорами"), и любые два или более или даже все из этих элементов могут быть реализованы в рамках одного такого компьютера или компьютеров. Различные элементы устройства A100 могут быть включены в устройство для беспроводной связи, такое как сотовый телефон или другое устройство, имеющее такие возможности связи. Это устройство может быть выполнено с возможностью обмениваться данными с сетями с коммутацией каналов и/или коммутацией пакетов (к примеру, с помощью одного или более протоколов, таких как VoIP). Например, такое устройство может включать в себя речевой кодер, выполненный с возможностью передавать SID согласно результатам соответствующих решений по передаче, и/или RF-схему, выполненную с возможностью передавать кодированные активные кадры и SID.
Один пример параметра, значение которого может быть использовано для того, чтобы указывать спектральный наклон кадра, - это первый коэффициент k 0 отражения, а другие такие параметры описываются ниже. Этап T200 может быть выполнен с возможностью принимать последовательность значений спектрального наклона из другого этапа более крупной процедуры, такой как из способа речевого кодирования. Альтернативно, этап T200 может быть реализован так, чтобы включать в себя этап T210, который выполнен с возможностью вычислять такие значения, как описаны ниже. Аналогично, формирователь 120 последовательностей может быть выполнен с возможностью принимать последовательность значений спектрального наклона из другого элемента более крупного устройства, такого как речевой кодер или устройство связи. Альтернативно, формирователь 120 последовательностей может быть реализован так, чтобы включать в себя вычислитель 128, который выполнен с возможностью вычислять такие значения, как описаны ниже.
Этап T200 может быть реализован так, чтобы включать в себя этап T300, который сглаживает последовательность значений спектрального наклона. Типичная реализация этапа T300 выполнена с возможностью фильтровать последовательность значений спектрального наклона согласно авторегрессивной модели, такой как фильтр с бесконечной импульсной характеристикой (IIR). Конкретный пример этапа T300 выполняет следующую операцию IIR-фильтрации первого порядка, чтобы вычислять каждое значение сглаженной последовательности y как взвешенное среднее текущего значения входной последовательности значений x спектрального наклона и предыдущего значения сглаженной последовательности y:
y[n]=ax[n]+(1-a)y[n-1], (1)
где n обозначает последовательный индекс. В зависимости от требуемой степени сглаживания коэффициент a усиления может иметь любое значение от 0 до 1. В общем, коэффициент a усиления имеет значение, не большее 0,6. Например, коэффициент a усиления может иметь значение в диапазоне от 0,1 (или от 0,15) до 0,4 (или до 0,5). В одном конкретном примере последовательность x - это серия значений первого коэффициента k 0 отражения, и коэффициент a усиления имеет значение 0,2 (ноль запятая два). Фиг.1C иллюстрирует блок-схему последовательности операций одной реализации M101 способа M100, в которой этап T200 реализован как этап T300. Фиг.1D иллюстрирует блок-схему реализации A101 устройства A100, в которой формирователь 120 последовательностей реализован как сглаживатель 130, который выполнен с возможностью осуществлять реализацию этапа T300.
Фиг.2 иллюстрирует блок-схему одного примера реализации 132 сглаживателя 130. Сглаживатель 132 включает в себя первый умножитель, выполненный с возможностью применять коэффициент G10 усиления к текущему значению x[n] входной последовательности значений спектрального наклона; второй умножитель, выполненный с возможностью применять коэффициент G20 усиления к предыдущему значению y[n-1] сглаженной последовательности значений спектрального наклона, полученной из элемента D задержки; и сумматор, выполненный с возможностью выводить y[n] как сумму двух произведений. Может быть желательным (к примеру, для стабильности), чтобы коэффициент G10 усиления имел значение a, как описано выше со ссылкой на этап T300, а коэффициент G20 усиления имел значение (1-a). В одном конкретном примере последовательность x - это серия значений первого коэффициента k 0 отражения, коэффициент G10 усиления имеет значение 0,2 (ноль запятая два), а коэффициент G20 усиления имеет значение 0,8 (ноль запятая восемь). Как отмечалось выше, сглаживатель 132 может быть реализован в любой комбинации аппаратных средств, программного обеспечения и/или микропрограммного обеспечения, которая считается подходящей для целевого варианта применения.
Альтернативно или дополнительно, этап T300 может быть выполнен с возможностью вычислять значение сглаженной последовательности значений y спектрального наклона посредством выполнения еще одной или более операций сглаживания, интегрирования и/или фильтрации нижних частот для последовательности значений x спектрального наклона (или для результата выполнения операции сглаживания для последовательности x). В альтернативной реализации способа M100, например, этап T300 выполнен с возможностью фильтровать последовательность x согласно модели скользящего среднего, такой как фильтр с конечной импульсной характеристикой (FIR). В дополнительной альтернативной реализации способа M100 этап T300 выполнен с возможностью фильтровать последовательность x согласно модели авторегрессивного скользящего среднего (ARMA). Аналогично, сглаживатель 130 может быть реализован как интегратор или другой фильтр нижних частот (такой как фильтр FIR или ARMA), выполненный с возможностью формировать сглаженное значение на основе двух или более входных значений.
Способ M100 в типичном варианте реализуется таким образом, то каждое значение последовательности значений x спектрального наклона, которое сглажено на этапе T300, соответствует одному или более из множества последовательных кадров речевого сигнала. Аналогично, устройство A100 в типичном варианте реализуется таким образом, что каждое значение последовательности значений x спектрального наклона, которое сглажено посредством сглаживателя 130, соответствует одному или более из множества последовательных кадров речевого сигнала. Следует отметить, что эти последовательные кадры не должны обязательно следовать друг за другом, как подробнее описано ниже.
Речевой сигнал должен в типичном варианте содержать активные кадры, а также неактивные кадры. Тем не менее, распределение энергии в течение активного кадра с большой вероятностью обусловлено главным образом факторами, отличными от фонового шума, с тем, чтобы было маловероятно то, что значения распределения энергии из активных кадров предоставляли надежную информацию об изменениях в фоновом шуме. Следовательно, может быть желательным, чтобы последовательность значений x спектрального наклона включала в себя только значения, которые соответствуют неактивным кадрам. В этом случае значения последовательности x могут соответствовать последовательным (неактивным) кадрам, которые не следуют друг за другом в речевом сигнале.
Чтобы проиллюстрировать этот принцип, фиг.3 показывает пример, в котором каждый круг представляет один из серии следующих друг за другом кадров речевого сигнала во времени. Круги, которые представляют неактивные кадры, все помечены номером индекса соответствующего значения в последовательности значений x спектрального наклона. В этом примере значения 74 и 75 следуют друг за другом в последовательности. Хотя неактивные кадры, которые соответствуют значениям 74 и 75, являются последовательными в речевом сигнале, они разделены посредством блока активных кадров и поэтому не следуют друг за другом.
Способ M100 может быть выполнен с такой возможностью, что этап T300 принимает только значения спектрального наклона последовательности x, которые соответствуют неактивным кадрам. Альтернативно, этап T300 может быть реализован так, чтобы выбирать, из последовательности значений спектрального наклона, соответствующих следующим друг за другом кадрам, только те значения, которые соответствуют неактивным кадрам. Например, такая реализация этапа T300 может быть выполнена с возможностью выбирать значения спектрального наклона, соответствующие неактивным кадрам (и/или отклонять значения, соответствующие активным кадрам), на основе индикатора речевой активности, принимаемого от речевого кодера, способа речевого кодирования или этапа T100 обнаружения речевой активности, описанного ниже.
Аналогично, устройство A100 может быть выполнено с такой возможностью, что сглаживатель 130 принимает только значения спектрального наклона последовательности x, которые соответствуют неактивным кадрам. Альтернативно, сглаживатель 130 может быть реализован так, чтобы выбирать, из последовательности значений спектрального наклона, соответствующих следующим друг за другом кадрам, только те значения, которые соответствуют неактивным кадрам. Например, такая реализация сглаживателя 130 может быть выполнена с возможностью выбирать значения спектрального наклона, соответствующие неактивным кадрам (и/или отклонять значения, соответствующие активным кадрам), на основе индикатора речевой активности, принимаемого от речевого кодера, способа речевого кодирования или детектора 110 речевой активности, описанного ниже.
Этап T400 вычисляет изменение, по меньшей мере, между двумя значениями последовательности значений спектрального наклона, сформированных посредством этапа T200. Например, этап T400 может быть выполнен с возможностью вычислять разность (также называемую "дельтой") между следующими друг за другом значениями сглаженной последовательности y согласно следующему выражению:
z[n]=y[n]-by[n-1], (2)
где z обозначает вывод, а b обозначает коэффициент усиления. Фиг.4 иллюстрирует реализацию 142 вычислителя 140, который может быть использован для того, чтобы выполнять конкретный случай этого примера этапа T400, в котором b равно одному (т.е. согласно операции FIR-фильтрации верхних частот первого порядка z[n]=y[n]-y[n-1]). Другие реализации вычислителя 140 и/или этапа T400 могут быть выполнены с возможностью применять такую операцию фильтрации с использованием другого значения b. Например, значение b может выбираться согласно требуемой частотной характеристике. Для случая, в котором этап T200 реализован так, чтобы формировать последовательность x, такая реализация этапа T400 или вычислителя 142 может быть выполнена с возможностью вычислять разность согласно такому выражению, как z[n]=x[n]-x[n-1]. Как отмечалось выше, вычислитель 142 может быть реализован в любой комбинации аппаратных средств, программного обеспечения и/или микропрограммного обеспечения, которая считается подходящей для целевого варианта применения.
Альтернативно или дополнительно, этап T400 может быть выполнен с возможностью выполнять одну или более операций дифференцирования для сформированной последовательности значений спектрального наклона, к примеру другую операцию фильтрации верхних частот (к примеру, применение IIR-фильтра верхних частот первого порядка к сформированной последовательности) или иного вычисления расстояния, либо другого изменения в значениях сформированной последовательности. Аналогично, вычислитель 140 может быть реализован как модуль дифференцирования, вычислитель разностей или другой IIR- или FIR-фильтр верхних частот, выполненный с возможностью вычислять разность, либо другое расстояние или изменение в двух или более входных значениях.
Изменение, вычисленное посредством этапа T400, может быть использовано для того, чтобы указать частоту изменений сформированной последовательности значений спектрального наклона. Например, абсолютная величина z[n], как описано выше, может быть использована для того, чтобы указать, насколько сильно контур спектрального наклона фонового шума изменился от одного неактивного кадра до следующего. Этап T400 в типичном варианте выполнен с возможностью итеративно вычислять серию расстояний, абсолютные величины которых представляют частоту изменений сглаженного контура в соответствующие периоды кадров.
Этап T500 решает, следует ли передавать описание неактивного сегмента речевого сигнала, при этом решение основано на соответствующем изменении, вычисленном посредством этапа T400. Например, этап T500 может быть выполнен с возможностью решать, следует ли передавать описание, посредством сравнения абсолютной величины вычисленного изменения с пороговым значением T. Эта реализация этапа T500 может быть выполнена с возможностью устанавливать двоичный флаг согласно результату этого сравнения:
,(3)
где значение флага p[n] указывает результат решения по передаче. В этом случае значение p[n], равное единице или логическому TRUE, является положительным индикатором передачи (т.е. индикатором передачи, имеющим положительное состояние, индикатором разрешения передачи, индикатором решения передавать), указывающим то, что обновление описания молчания должно быть передано для текущего кадра; а значение p[n], равное нулю или логическому FALSE, является отрицательным индикатором передачи (т.е. индикатором передачи, имеющим отрицательное состояние, индикатором запрета передачи, индикатором решения не передавать), указывающим то, что обновление описания молчания не должно быть передано для текущего кадра. В одном примере порог T имеет значение в 0,2. Нижнее пороговое значение может быть использовано для того, чтобы предоставлять большую чувствительность к изменениям в сформированной последовательности значений спектрального наклона, при этом более высокое пороговое значение может быть использовано для того, чтобы предоставлять большее отклонение переходов в сформированной последовательности значений спектрального наклона.
Специалисты в данн