УЛУЧШЕНИЕ РЕЧИ С ПОМОЩЬЮ НЕСКОЛЬКИХ ДАТЧИКОВ С ИСПОЛЬЗОВАНИЕМ ПРЕДШЕСТВУЮЩЕЙ ЧИСТОЙ РЕЧИ
SPEECH ENHANCEMENT WITH MULTIPLE SENSORS USING PRECEDING CLEAR SPEECH

УРОВЕНЬ ТЕХНИКИ
Общая проблема в распознавании речи и передаче речи состоит в искажении речевого сигнала аддитивным шумом. В частности, искажение, вызванное речью другого говорящего, оказывается трудно обнаружить и/или исправить.
Недавно была разработана система, которая пытается удалить шум с использованием комбинации альтернативного датчика, такого как микрофон костной проводимости, и микрофона воздушной проводимости. Эта система «обучается» с использованием трех каналов обучения: искаженный обучающий сигнал альтернативного датчика, искаженный обучающий сигнал микрофона воздушной проводимости и чистый обучающий сигнал микрофона воздушной проводимости. Каждый из сигналов преобразуется в область признаков. Признаки искаженного сигнала альтернативного датчика и искаженного сигнала микрофона воздушной проводимости объединяются в один вектор, представляющий искаженный сигнал. Признаки чистого сигнала микрофона воздушной проводимости формируют один чистый вектор. Затем эти векторы используются для «обучения» преобразованию между искаженными векторами и чистыми векторами. После «обучения» преобразование применяется к искаженному вектору, сформированному из комбинации искаженного испытательного сигнала альтернативного датчика и искаженного испытательного сигнала микрофона воздушной проводимости. Это преобразование производит вектор чистого сигнала.
Эта система менее чем оптимальна, когда условия искажений испытательных сигналов не соответствуют условиям искажений обучающих сигналов, поскольку преобразования построены для условий искажений обучающих сигналов.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Способ и устройство определяют характеристику канала для альтернативного датчика с использованием сигнала альтернативного датчика, сигнала микрофона воздушной проводимости. Характеристика канала и распределение априорной вероятности для значений чистой речи затем используются для оценки значения чистой речи.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 - блок-схема вычислительной среды, в которой могут быть осуществлены варианты воплощения настоящего изобретения.
Фиг.2 - блок-схема альтернативной вычислительной среды, в которой могут быть осуществлены варианты воплощения настоящего изобретения.
Фиг.3 - блок-схема общей системы обработки речи одного варианта воплощения настоящего изобретения.
Фиг.4 - блок-схема системы для улучшения речи в одном варианте воплощения настоящего изобретения.
Фиг.5 - блок-схема последовательности операций для улучшения речи в одном варианте воплощения настоящего изобретения.
Фиг.6 - блок-схема последовательности операций для улучшения речи в другом варианте воплощения настоящего изобретения.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Фиг.1 иллюстрирует пример подходящей вычислительной среды 100, в которой могут быть осуществлены варианты воплощения изобретения. Вычислительная среда 100 представляет собой только один пример подходящей вычислительной среды и не предназначена для наложения каких-либо ограничений относительно объема использования или функциональных возможностей изобретения. Вычислительная среда 100 также не должна интерпретироваться как имеющая какую-либо зависимость или требование по отношению к любому компоненту или комбинации компонентов, изображенных в иллюстративной среде 100.
Изобретение может работать с многими другими вычислительными средами и конфигурациями общего назначения или специального назначения. Примеры известных вычислительных систем, сред и/или конфигураций, которые могут являться подходящими для использования с изобретением, включают в себя, но без ограничения, персональные компьютеры, серверные компьютеры, карманные или переносные устройства, многопроцессорные системы, системы на основе микропроцессора, телеприставки, программируемую бытовую электронику, сетевые персональные компьютеры, миникомпьютеры, универсальные вычислительные системы, системы телефонии, распределенные вычислительные среды, которые включают в себя любые из упомянутых выше систем или устройств, и т.п.
Изобретение может быть описано в общем контексте исполняемых на компьютере команд, таких как программные модули, исполняемые компьютером. В общем случае программные модули включают в себя подпрограммы, программы, объекты, компоненты, структуры данных и т.д., которые выполняют специфические задачи или реализуют специфические абстрактные типы данных. Изобретение выполнено с возможностью быть осуществленным в распределенных вычислительных средах, в которых задачи выполняются отдаленными устройствами обработки, которые связаны через сеть связи. В распределенной вычислительной среде программные модули расположены и на локальных, и на удаленных компьютерных носителях данных, в том числе запоминающих устройствах.
На фиг.1 показано, что иллюстративная система для реализации вариантов воплощения изобретения включает в себя универсальное вычислительное устройство в виде компьютера 110. Компоненты компьютера 110 могут включать в себя, но без ограничения, процессор 120, системную память 130 и системную шину 121, которая соединяет различные компоненты системы, в том числе системную память, с процессором 120. Системная шина 121 может представлять собой любой из нескольких типов шинных структур, в том числе шину памяти или контроллер памяти, периферийную шину и локальную шину, с использованием любой из разнообразных шинных архитектур. В качестве примера, но не ограничения, такие архитектуры включают в себя шину промышленной стандартной архитектуры (ISA), шину микроканальной архитектуры (MCA), шину расширенной промышленной стандартной архитектуры (EISA), локальную шину Ассоциации по стандартам в области видеоэлектроники (VESA) и шину соединения периферийных компонентов (PCI), также известную как шина второго уровня.
Компьютер 110 обычно включает в себя разные машиночитаемые носители. Машиночитаемые носители могут представлять собой любые имеющиеся носители, к которым можно получить доступ с помощью компьютера 110, и включают в себя как энергозависимые, так и энергонезависимые носители, сменные и несменные носители. В качестве примера, но не ограничения, машиночитаемые носители могут содержать компьютерные носители данных и коммуникационные носители. Компьютерные носители данных включают в себя энергозависимые и энергонезависимые, сменные и несменные носители, реализованные любым способом или по любой технологии для хранения информации, такой как машиночитаемые команды, структуры данных, программные модули или другие данные. Компьютерные носители данных включают в себя, но без ограничения, оперативное запоминающее устройство (RAM; ОЗУ), постоянное запоминающее устройство (ROM; ПЗУ), электрически стираемое программируемое постоянное запоминающее устройство (EEPROM; ЭСППЗУ), флэш-память или другую технологию памяти, компакт-диск, предназначенный только для чтения (CD-ROM), цифровые универсальные диски (DVD) или другую память на оптическом диске, магнитные кассеты, магнитную ленту, память на магнитном диске или другие магнитные запоминающие устройства или любой другой носитель, который может быть использован для хранения желаемой информации и к которому можно получить доступ с помощью компьютера 110. Коммуникационные носители обычно воплощают машиночитаемые команды, структуры данных, программные модули или другие данные в модулированном сигнале данных, таком как несущая волна или другой транспортный механизм, и включают в себя любые носители для доставки информации. Термин "модулированный сигнал данных" обозначает сигнал, у которого одна или более из его характеристик установлена или изменена таким образом, чтобы закодировать информацию в сигнале. В качестве примера, но не ограничения, коммуникационные носители включают в себя проводные носители, такие как проводная сеть или прямое проводное соединение, и беспроводные носители, такие как акустические, радиоволновые, инфракрасные и другие беспроводные носители. Комбинации любых упомянутых выше элементов также должны быть включены в объем понятия машиночитаемых носителей.
Системная память 130 включает в себя компьютерные носители данных в виде энергозависимой и/или энергонезависимой памяти, такой как постоянное запоминающее устройство (ROM; ПЗУ) 131 и оперативное запоминающее устройство (RAM; ОЗУ) 132. Базовая система 133 ввода-вывода (BIOS), содержащая базовые подпрограммы, которые помогают перемещать информацию между элементами в компьютере 110, например, во время запуска, обычно хранится в постоянном запоминающем устройстве (ROM; ПЗУ) 131. Оперативное запоминающее устройство (RAM; ОЗУ) 132 обычно содержит данные и/или программные модули, которые являются моментально доступными для процессора 120 и/или которые в данный момент обрабатываются процессором 120. В качестве примера, но не ограничения, фиг.1 иллюстрирует операционную систему 134, прикладные программы 135, другие программные модули 136 и программные данные 137.
Компьютер 110 может также включать в себя другие сменные/несменные, энергозависимые/энергонезависимые компьютерные носители данных. Только в качестве примера фиг.1 иллюстрирует накопитель 141 на жестких дисках, который считывает или записывает на несменный энергонезависимый магнитный носитель, магнитный дисковод 151, который считывает или записывает на сменный энергонезависимый магнитный диск 152, и оптический дисковод 155, который считывает или записывает на сменный энергонезависимый оптический диск 156, такой как постоянное запоминающее устройство на компакт-диске (CD ROM) или другой оптический носитель. Другие сменные/несменные, энергозависимые/энергонезависимые компьютерные носители данных, которые могут использоваться в иллюстративной операционной среде, включают в себя, но без ограничения, кассеты магнитной ленты, карты флэш-памяти, цифровые универсальные диски, цифровую видеоленту, полупроводниковое ОЗУ, полупроводниковое ПЗУ и т.п. Накопитель 141 на жестких дисках обычно соединен с системной шиной 121 через интерфейс несменной памяти, такой как интерфейс 140, и магнитный дисковод 151 и оптический дисковод 155 обычно соединяются с системной шиной 121 посредством интерфейса сменной памяти, такого как интерфейс 150.
Дисковые накопители и связанные с ними компьютерные носители данных, обсуждаемые выше и проиллюстрированные на фиг.1, обеспечивают хранение машиночитаемых команд, структур данных, программных модулей и других данных для компьютера 110. На фиг.1, например, накопитель 141 на жестких дисках проиллюстрирован как содержащий операционную систему 144, прикладные программы 145, другие программные модули 146 и программные данные 147. Следует отметить, что эти компоненты могут либо быть теми же самыми, либо отличными от операционной системы 134, прикладных программ 135, других программных модулей 136 и программных данных 137. Операционной системе 144, прикладным программам 145, другим программным модулям 146 и программным данным 147 здесь даны другие номера, чтобы проиллюстрировать, что они как минимум являются другими копиями.
Пользователь может вводить команды и информацию в компьютер 110 через устройства ввода данных, такие как клавиатура 162, микрофон 163 и координатно-указательное устройство 161, такое как мышь, шаровой манипулятор или сенсорная клавиатура. Другие устройства ввода данных (не показаны) могут включать в себя джойстик, игровую клавиатуру, спутниковую антенну, сканер и т.п. Эти и другие устройства ввода данных часто соединены с процессором 120 через интерфейс 160 пользовательского ввода, который присоединен к системной шине, но может быть соединен другими интерфейсными и шинными структурами, такими как параллельный порт, игровой порт или универсальная последовательная шина (USB). Монитор 191 или другой тип устройства отображения также соединен с системной шиной 121 через интерфейс, такой как видеоинтерфейс 190. В дополнение к монитору компьютеры могут также включать в себя другие внешние устройства вывода, такие как динамики 197 и принтер 196, которые могут быть соединены через интерфейс 195 периферийных устройств вывода.
Компьютер 110 работает в сетевом окружении, используя логические соединения с одним или более удаленными компьютерами, такими как удаленный компьютер 180. Удаленный компьютер 180 может являться персональным компьютером, переносным компьютером, сервером, маршрутизатором, сетевым персональным компьютером, одноранговым устройством или другим общим сетевым узлом и обычно включает в себя многие или все элементы, описанные выше относительно компьютера 110. Логические соединения, изображенные на фиг.1, включают в себя локальную сеть (LAN) 171 и глобальную сеть (WAN) 173, но могут также включать в себя другие сети. Такие сетевые среды являются обычным явлением в офисах, компьютерных сетях масштаба предприятия, интрасетях и Интернете.
При использовании в среде локальной сети компьютер 110 соединен с локальной сетью 171 через сетевой интерфейс или адаптер 170. При использовании в среде глобальной сети компьютер 110 обычно включает в себя модем 172 или другое средство для установления связи по глобальной сети 173, такой как Интернет. Модем 172, который может быть внутренним или внешним, может быть соединен с системной шиной 121 через интерфейс 160 пользовательского ввода или другой соответствующий механизм. В сетевом окружении программные модули, изображенные относительно компьютера 110, или их части могут храниться в удаленном запоминающем устройстве. В качестве примера, но не ограничения, фиг.1 иллюстрирует удаленные прикладные программы 185 как находящиеся в удаленном компьютере 180. Следует понимать, что показанные сетевые соединения являются иллюстративными и могут быть использованы другие средства установления линии связи между компьютерами.
Фиг.2 является блок-схемой мобильного устройства 200, которое является иллюстративной вычислительной средой. Мобильное устройство 200 включает в себя микропроцессор 202, память 204, компоненты 206 ввода-вывода и интерфейс 208 связи для связи с удаленными компьютерами или другими мобильными устройствами. В одном варианте воплощения упомянутые выше компоненты соединены для связи друг с другом через подходящую шину 210.
Память 204 реализована как энергонезависимая электронная память, такая как оперативное запоминающее устройство (RAM; ОЗУ) с резервным модулем батарей (не показан), с тем чтобы информация, сохраненная в памяти 204, не была потеряна, когда отключается общее энергопитание мобильного устройства 200. Часть памяти 204 предпочтительно распределена как адресуемая память для исполнения программ, в то время как другая часть памяти 204 предпочтительно используется для хранения, с тем чтобы симулировать хранение на дисковом накопителе.
Память 204 включает в себя операционную систему 212, прикладные программы 214, а также хранилище 216 объектов. Во время работы операционная система 212 предпочтительно исполняется процессором 202 из памяти 204. Операционная система 212 в одном предпочтительном варианте воплощения является операционной системой WINDOWS CE, которую можно приобрести у Microsoft Corporation. Операционная система 212 предпочтительно является разработанной для мобильных устройств и реализует возможности базы данных, которые могут использоваться приложениями 214 через набор доступных прикладных программных интерфейсов и методов. Объекты в хранилище 216 объектов поддерживаются приложениями 214 и операционной системой 212, по меньшей мере, частично в ответ на вызовы доступных прикладных программных интерфейсов и методов.
Интерфейс 208 связи представляет многочисленные устройства и технологии, которые позволяют мобильному устройству 200 отправлять и принимать информацию. Устройства включают в себя проводные и беспроводные модемы, спутниковые приемники и приемники вещания и многие другие устройства. Мобильное устройство 200 также может быть непосредственно соединено с компьютером для обмена данными с ним. В таких случаях интерфейс 208 связи может являться инфракрасным приемопередатчиком или последовательным или параллельным соединением связи, из которых все могут передавать потоковую информацию.
Компоненты 206 ввода-вывода включают в себя различные устройства ввода данных, такие как сенсорный экран, кнопки, ролики и микрофон, а также различные устройства вывода, включающие в себя генератор звука, устройство вибрации и дисплей. Перечисленные выше устройства даны в качестве примера и необязательно должны все присутствовать в мобильном устройстве 200. Кроме того, другие устройства ввода-вывода могут быть присоединены к мобильному устройству 200 или находиться в нем в рамках объема настоящего изобретения.
Фиг.3 представляет основную блок-схему вариантов воплощения настоящего изобретения. На фиг.3 диктор 300 формирует речевой сигнал 302 (X), который обнаруживается посредством микрофона 304 воздушной проводимости и альтернативного датчика 306. Примеры альтернативных датчиков включают в себя ларингофон, который измеряет колебания гортани пользователя, датчик костной проводимости, который расположен на лицевой или черепной кости пользователя (например, кости челюсти) или прилегает к ней или в ухе пользователя и который воспринимает колебания черепа и челюсти, которые соответствуют речи, формируемой пользователем. Микрофон 304 воздушной проводимости является типом микрофона, который обычно используется для преобразования звуковых волн в электрические сигналы.
Микрофон 304 воздушной проводимости также принимает окружающий шум 308 (Z), формируемый одним или более источниками 310 шума. В зависимости от типа окружающего шума и уровня окружающего шума окружающий шум 308 также может быть обнаружен посредством альтернативного датчика 306. Однако в вариантах воплощения настоящего изобретения альтернативный датчик 306 обычно менее чувствителен к окружающему шуму, чем микрофон 304 воздушной проводимости. Таким образом, сигнал 316 (B) альтернативного датчика, формируемый альтернативным датчиком 306, в общем случае включает в себя меньше шума, чем сигнал 318 (Y) микрофона воздушной проводимости, формируемый микрофоном 304 воздушной проводимости. Хотя альтернативный датчик 306 менее чувствителен к окружающему шуму, он формирует некоторый шум 320 (W) датчика.
Путь от диктора 300 до сигнала 316 альтернативного датчика может быть смоделирован как канал, имеющий характеристику H канала. Путь от окружающего шума 308 до сигнала 316 альтернативного датчика может быть смоделирован как канал, имеющий характеристику G канала.
Сигнал 316 (B) альтернативного датчика и сигнал 318 (Y) микрофона воздушной проводимости выдаются на блок 322 оценки чистого сигнала, который оценивает чистый сигнал 324. Оценка 324 чистого сигнала выдается на обработку 328 речи. Оценка 324 чистого сигнала может являться либо отфильтрованным сигналом в области времени, либо вектором преобразования Фурье. Если оценка 324 чистого сигнала является сигналом в области времени, обработка 328 речи может принимать вид слушателя, системы кодирования речи или системы распознавания речи. Если оценка 324 чистого сигнала является вектором преобразования Фурье, обработка 328 речи обычно будет являться системой распознавания речи или содержать обратное преобразование Фурье, чтобы преобразовать вектор преобразования Фурье в форму сигнала.
При прямой фильтрации 322 сигнал 316 альтернативного датчика и сигнал 318 микрофона преобразуются в область частот, используемую для оценки чистой речи. Как показано на фиг.4, сигнал 316 альтернативного датчика и сигнал 318 микрофона воздушной проводимости подаются на аналого-цифровые конвертеры 404 и 414 соответственно для формирования последовательности цифровых значений, которые группируются в кадры значений посредством конструкторов 406 и 416 кадров соответственно. В одном варианте воплощения аналого-цифровые конвертеры 404 и 414 преобразовывают аналоговые сигналы на частоте 16 кГц и 16 битов на отсчет, таким образом создавая 32 килобайта речевых данных на каждую секунду, и конструкторы 406 и 416 кадров создают новый соответствующий кадр каждые 10 миллисекунд, что включает в себя 20 миллисекунд данных.
Каждый соответствующий кадр данных, выданный конструкторами 406 и 416 кадров, преобразуется в область частот с использованием быстрых преобразований 408 и 418 Фурье (FFT) соответственно.
Значения в области частот для сигнала альтернативного датчика и сигнала микрофона воздушной проводимости подаются на блок 420 оценки чистого сигнала, который использует значения в области частот для оценки чистого речевого сигнала 324.
В некоторых вариантах воплощения чистый речевой сигнал 324 преобразовывается обратно в область времени с использованием обратных быстрых преобразований 422 Фурье. Они создают версию чистого речевого сигнала 324 в области времени.
Варианты воплощения настоящего изобретения обеспечивают методики прямой фильтрации для оценки чистого речевого сигнала 324. При прямой фильтрации максимально правдоподобная оценка характеристики канала (характеристик каналов) для альтернативного датчика 306 определяется посредством минимизации функции относительно характеристики канала (характеристик каналов). Эти оценки затем используются для определения максимально правдоподобной оценки чистого речевого сигнала посредством минимизации функции относительно чистого речевого сигнала.
В одном варианте воплощения настоящего изобретения характеристика G канала, соответствующая фоновой речи, обнаруживаемой альтернативным датчиком, считается равной нулю. Это приводит к такой модели между чистым речевым сигналом и сигналом микрофона воздушной проводимости и сигналом альтернативного датчика:
Уравнение 1
Уравнение 2
где y(t) - сигнал микрофона воздушной проводимости, b(t) - сигнал альтернативного датчика, x(t) - чистый речевой сигнал, z(t) - окружающий шум, w(t) - шум альтернативного датчика, и h(t) - характеристика канала для чистого речевого сигнала, относящаяся к альтернативному датчику. Таким образом, в уравнении 2 сигнал альтернативного датчика смоделирован как отфильтрованная версия чистой речи, где фильтр имеет импульсную характеристику h(t).
В области частот уравнения 1 и 2 могут быть выражены как:
Уравнение 3
Уравнение 4
t
t
t
t
t
t
где обозначение Y(k) представляет компоненту частоты с порядковым номером k кадра сигнала, сосредоточенного вокруг времени t. Это обозначение применяется к X(k), Z(k), H(k), W(k) и B(k). В описании ниже ссылка на компоненту частоты k опускается для краткости. Однако специалисты в области техники поймут, что выполненные ниже вычисления выполняются для каждого компонента частоты.
t
t
В этом варианте воплощения действительные и мнимые части шума Z и W смоделированы как независимые Гауссианы с нулевым математическим ожиданием:
Уравнение 5
Уравнение 6
t
t
где  - дисперсия для шума Z, и  - дисперсия для шума W.
t
H также моделируется как Гауссиан:
Уравнение 7
0
где H - математическое ожидание характеристики канала, и  - дисперсия характеристики канала.
t
t
Учитывая эти параметры модели, вероятность значения X чистой речи и значения H характеристики канала описывается условной вероятностью:
Уравнение 8
которая является пропорциональной вероятности:
Уравнение 9
которая равна:
Уравнение 10
t
В одном варианте воплощения априорная вероятность  для характеристики канала игнорируется, и каждая из оставшихся вероятностей рассматривается как распределение Гаусса с априорной вероятностью p(X) чистой речи, рассматриваемое как Гауссиан с нулевым математическим ожиданием и дисперсией :
Уравнение 11
t
С использованием этого упрощения и уравнения 10 максимально правдоподобная оценка X для кадра в момент t определяется посредством минимизации выражения:
Уравнение 12
t
t
t
Поскольку уравнение 12 минимизируется относительно X, для определения значения X, которое минимизирует функцию, может быть взята частная производная по X. В частности,  дает:
Уравнение 13
t
t
t
где  представляет комплексно сопряженное значение для H, и |H| представляет модуль комплексного значения H.
t
Характеристика H канала оценивается из целого фрагмента речи посредством минимизации выражения:
Уравнение 14
t
Подстановка в уравнение 14 выражения X, вычисленного в уравнении 13, приравнивание частной производной нулю  и затем предположение, что H имеет постоянное значение по всем временным кадрам T, дает решение для H:
Уравнение 15
В уравнении 15 оценка H требует вычисления нескольких сумм по последним T кадрам в виде:
Уравнение 16
t
где s равно  или .
В такой формулировке первый кадр (t=1) столь же важен, как и последний кадр (t=T). Однако в других вариантах воплощения предпочтительно, чтобы последние кадры вносили больший вклад в оценку H, чем более старые кадры. Одна методика для достижения этого представляет собой "экспоненциальное старение", в котором сумма, представленная в уравнении 16, заменяется суммой:
Уравнение 17
T-1
99
где c≤1. Если с=1, то уравнение 17 эквивалентно уравнению 16. Если с<1, то последний кадр имеет весовой коэффициент 1, предпоследний кадр имеет весовой коэффициент c (то есть вносит меньший вклад, чем последний кадр) и первый кадр имеет весовой коэффициент c(то есть вносит значительно меньший вклад, чем последний кадр). Возьмем пример. Пусть c=0,99 и T=100, тогда весовой коэффициент для первого кадра равен лишь 0,99=0,37.
В одном варианте воплощения уравнение 17 оценивается рекурсивно как
Уравнение 18
Поскольку уравнение 18 автоматически применяет меньшие весовые коэффициенты к старым данным, не нужно использовать фиксированную длину окна, и данные последних T кадров не нужно хранить в памяти. Вместо этого должно быть сохранено только значение для S(T-1) в предыдущем кадре.
С использованием уравнения 18 уравнение 15 становится таким:
Уравнение 19
где:
Уравнение 20
Уравнение 21
Значение параметра с в уравнениях 20 и 21 обеспечивает эффективную длину для количества прошлых кадров, которые используются для вычисления текущего значения J(T) и K(T). В частности, эффективная длина задается следующим образом:
Уравнение 22
Асимптотическая эффективная длина задается следующим образом:
Уравнение 23
или эквивалентно
Уравнение 24
Таким образом, с использованием уравнения 24 параметр с может быть установлен для достижения различных эффективных длин в уравнении 19. Например, для достижения эффективной длины в 200 кадров параметр с устанавливается следующим образом:
Уравнение 25
t
t
t
t
t
Как только значение H оценено с использованием уравнения 15, оно может быть использовано вместо всех значений H в уравнении 13, чтобы определить отдельное значение X в каждом временном кадре t. В качестве альтернативы уравнение 19 может использоваться для оценки H в каждом временном кадре t. Значение H в каждом кадре затем используется в уравнении 13, чтобы определить X.
Фиг.5 представляет блок-схему последовательности операций способа настоящего изобретения, который использует уравнения 13 и 15 для оценки значения чистой речи для фрагмента речи.
На этапе 500 фиксируют частотные компоненты кадров сигнала микрофона воздушной проводимости и сигнала альтернативного датчика по всему фрагменту речи.
На этапе 502 определяют дисперсию  для окружающего шума и дисперсию  для шума альтернативного датчика из кадров сигнала микрофона воздушной проводимости и сигнала альтернативного датчика соответственно, которые зафиксированы ранее во фрагменте речи в течение периодов, когда диктор не говорит.
t
Способ определяет, когда диктор не говорит, посредством идентификации частей сигнала альтернативного датчика с низкой энергией, поскольку энергия шума альтернативного датчика намного меньше, чем речевой сигнал, зафиксированный посредством сигнала альтернативного датчика. В других вариантах воплощения известные методики обнаружения речи могут быть применены к речевому сигналу воздушной проводимости, чтобы определить, когда диктор говорит. В течение периодов, когда диктор, как полагают, не говорит, предполагается, что значение X равно нулю и любой сигнал от микрофона воздушной проводимости или альтернативного датчика считается шумом. Образцы этих значений для шума собирают из кадров, в которых отсутствует речь, и используют для оценки дисперсии шума в сигнале воздушной проводимости и сигнале альтернативного датчика.
На этапе 504 определяют дисперсию  распределения априорной вероятности для чистой речи. В одном варианте воплощения эту дисперсию вычисляют следующим образом:
Уравнение 26
d
2
где |Y| - энергия сигнала микрофона воздушной проводимости, и суммирование выполнено по набору речевых кадров, который включает в себя k речевых кадров перед текущим речевым кадром и m речевых кадров после текущего речевого кадра. Чтобы избежать отрицательного или нулевого значения для дисперсии , некоторые варианты воплощения настоящего изобретения используют (0,01·) в качестве наименьшего возможного значения для .
В альтернативном варианте воплощения реализовано выполнение в реальном времени с использованием методики сглаживания, которая полагается только на дисперсию чистого речевого сигнала в предыдущем кадре речи:
Уравнение 27
где  - дисперсия распределения априорной вероятности для чистой речи из последнего кадра, который содержал речь, p - сглаживающий коэффициент с диапазоном между 0 и 1, α - маленькая константа и  указывает, что выбирается большее из значений  и , чтобы обеспечить положительные значения для . В одном специфическом варианте воплощения сглаживающий коэффициент имеет значение 0,08 и α=0,01.
На этапе 506 значения для сигнала альтернативного датчика и сигнала микрофона воздушной проводимости по всем кадрам фрагмента речи используют для определения значения H с использованием уравнения 15, приведенного выше. На этапе 508 это значение H используют вместе с отдельными значениями сигнала микрофона воздушной проводимости и сигнала альтернативного датчика в каждом временном кадре, чтобы определить улучшенное значение или значение с уменьшенным шумом для речи для каждого временного кадра с использованием уравнения 13, приведенного выше.
t
t
t
В других вариантах воплощения вместо использования всех кадров фрагмента речи для определения одного значения H с использованием уравнения 15 определяют H для каждого кадра с использованием уравнения 19. Значение H затем используют для вычисления X для кадра с использованием уравнения 13, приведенного выше.
Во втором варианте воплощения настоящего изобретения характеристика канала альтернативного датчика для окружающего шума считается не равной нулю. В этом варианте воплощения сигнал микрофона воздушной проводимости и сигнал альтернативного датчика смоделированы следующим образом:
Уравнение 28
Уравнение 29
t
где характеристика канала альтернативных датчиков для окружающего шума является ненулевым значением G (k).
t
Максимальное правдоподобие X для чистой речи может быть найдено посредством минимизации целевой функции, приводя к уравнению для чистой речи:
Уравнение 30
Чтобы решить уравнение 30, должны быть известны дисперсии ,  и , а также значения H и G характеристики канала. Фиг.6 представляет блок-схему последовательности операций для определения этих значений и для определения улучшенных значений речи для каждого кадра.
На этапе 600 идентифицируют кадры фрагмента речи, в которых пользователь не говорит. Эти кадры затем используются для определения дисперсии  и  для альтернативного датчика и окружающего шума соответственно.
Чтобы идентифицировать кадры, в которых пользователь не говорит, может быть исследован сигнал альтернативного датчика. Поскольку сигнал альтернативного датчика произведет намного меньшие значения сигнала для фоновой речи, чем для шума, если энергия сигнала альтернативного датчика будет низкой, можно предположить, что диктор не говорит.
После того как были определены дисперсии для окружающего шума и шума альтернативного датчика, способ на фиг.6 переходит на этап 602, на котором определяют дисперсию  априорной вероятности для чистой речи с использованием уравнений 26 или 27, приведенных выше. Как было рассмотрено выше, для определения дисперсии априорной вероятности для чистой речи используются только кадры, содержащие речь.
На этапе 604 идентифицированные кадры, в которых пользователь не говорит, используются для оценки характеристики G канала альтернативного датчика для окружающего шума. В частности, G определяется следующим образом:
Уравнение 31
где D - количество кадров, в которых пользователь не говорит. В уравнении 31 предполагается, что значение G остается постоянным во всех кадрах фрагмента речи и, таким образом, больше не зависит от временного кадра t. В уравнении 31 суммирование по t может быть заменено вычислением экспоненциального затухания, рассмотренного выше в связи с уравнениями 16-25.
На этапе 606 значение G характеристики канала альтернативного датчика для фоновой речи используется для определения характеристики канала альтернативного датчика для чистого речевого сигнала. А именно, H вычисляется следующим образом:
Уравнение 32
В уравнении 32 суммирование по T может быть заменено рекурсивным вычислением экспоненциального затухания, рассмотренным выше в связи с уравнениями 16-25.
t
t
После того как значение H было определено на этапе 606, уравнение 30 может быть использовано для определения значения чистой речи для всех кадров. При использовании уравнения 30 в некоторых вариантах воплощения член B-GY заменяется на , поскольку оказалось трудным точно определить разность фаз между фоновой речью и ее проникновением в альтернативный датчик.
t
Если в уравнении 32 вместо суммирования используется рекурсивное вычисление экспоненциального затухания, отдельное значение H может быть определено для каждого временного кадра и может использоваться в качестве H в уравнении 30.
Хотя настоящее изобретение было описано со ссылкой на специфические варианты воплощения, специалисты в области техники поймут, что могут быть сделаны изменения в форме и деталях без отступления от сущности и объема изобретения.