×
20.10.2015
216.013.8658

КОДИРУЮЩЕЕ И ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ДЛЯ НИЗКОСКОРОСТНЫХ СИГНАЛОВ

Вид РИД

Изобретение

Юридическая информация Свернуть Развернуть
№ охранного документа
0002565995
Дата охранного документа
20.10.2015
Краткое описание РИД Свернуть Развернуть
Аннотация: Изобретение относится к технике связи и предназначено для моделирования цифровых сигналов и данных, кодирования-декодирования данных. Технический результат - повышение точности воспроизведения. Для этого усовершенствуется смешанная модель осциллятора и внешнего возбуждения, а также усовершенствуется проведение оценки параметров модели, для анализа качества и для комбинирования ее с известными в данной области техники способами. Усовершенствование существующих осцилляторов позволяет модели получать в качестве входного сигнала все точки за исключением самой последней точки в поступивших данных. Устойчивость модели достигается за счет процесса, включающего восстановление недоступных для декодера данных из оптимальных параметров модели и путем использования метрик для выбора стабильного восстановленного выхода модели. Настоящее изобретение является эффективным для исключительно низких скоростей кодирования/сжатия и декодирования/разуплотнения цифровых сигналов, включая оцифрованные речевые сигналы, аудио- и видеоданные, а также для анализа, обнаружения и классификации сигналов. 2 н. и 7 з.п. ф-лы, 6 ил.
Реферат Свернуть Развернуть

ПЕРЕКРЕСТНАЯ ССЫЛКА НА РОДСТВЕННЫЕ ЗАЯВКИ

[0001] Настоящей патентной заявкой PCT заявляется приоритет заявки на патент США, порядковый №12/915,989, поданной 29 октября 2010 года под названием «Сверхнизкоскоростной кодер и декодер сигналов». Содержание указанной родственной заявки на патент инкорпорировано в настоящую заявку путем отсылки в той части, в какой предмет изобретения противоречит содержанию заявки и не ограничивает ее.

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

[0002] Один или несколько примеров осуществления настоящего изобретения в целом относятся к моделированию цифровых сигналов и данных, сжатию-разуплотнению (без потерь и с потерями) и кодированию-декодированию. В частности, один или несколько примеров осуществления настоящего изобретения относятся к новой модели возбуждения и основаны на ней, к системам для получения новых моделей сигналов, а также для создания синтезированных сигналов из указанных моделей.

ПРЕДПОСЫЛКИ К СОЗДАНИЮ ИЗОБРЕТЕНИЯ

[0003] В нижеприведенной справочной информации могут содержаться примеры специфических аспектов известного уровня техники (например, без ограничения, подходы, факты, или здравый смысл), которые, предположительно, помогут читателю получить дальнейшие разъяснения в отношении дополнительных аспектов известного уровня техники и вместе с тем не истолковываются как ограничивающие настоящее изобретение или любой из его примеров осуществления в отношении всего, что указано или подразумевается в данной заявке, либо на основании которой делаются выводы.

[0004] В порядке разъяснения аспект известного уровня техники, о котором, в целом, целесообразно знать, заключается в том, что при проведении анализа и моделировании сигналов цель состоит в максимально эффективном представлении информации при минимальном количестве параметров. Это является полезным, например, при обнаружении и классификации сигналов. Кодирование сигналов, которое также может называться как сжатие, имеет аналогичную цель, заключающуюся в сокращении до минимума количества параметров, обычно представленных хранящимися или передаваемыми битами, тем самым повышая эффективность хранения, распространения и передачи информации. Процесс преобразования последовательности исходных данных в набор параметров модели называется кодированием, в то время как восстановление последовательности называется декодированием. Таким образом, одни и те же способы могут быть применены либо к моделированию, либо к кодированию сигналов. Тем не менее, предусматривается, что кодер используется в сочетании со вторым процессом, т.е. с декодером, который восстанавливает сигнал из его кодированных параметров. Следовательно, в методологических целях кодирование может рассматриваться в качестве способа, охватывающего моделирование как часть процесса кодирования.

[0005] Обычно при кодировании входной сигнал разделяется на интервалы, зачастую называемыми кадрами (фреймами), секциями или событиями. Каждый кадр может быть преобразован путем кадрирования и (или) фильтрования, а также за счет использования, возможно, других операций с целью получения кадрированного/фильтрованного/преобразованного кадра. В порядке разъяснения аспект известного уровня техники, о котором, в целом, целесообразно знать, заключается в том, что стандартные осцилляторные модели, которые в ряде практических областей могут также называться моделями с самовозбуждением, одним специфическим примером которых является модель самовозбуждающегося вокодера, используемая в области кодирования речи, преобразуют текущий кадр данных в небольшой набор параметров, состоящий из задержек или указателей и связанных с ними весовых коэффициентов. Указатели дают ссылку на блоки данных фиксированной длины в буферной памяти, содержащей восстановленный вариант ранее полученных кадров данных. Восстановление кадра происходит после проведения оценки параметров его модели, и восстановленный кадр хранится в памяти, создавая при этом последовательность сохраненных данных, представляющую собой восстановленный вариант входной последовательности. Блоки указанных сохраненных данных выбираются таким образом, чтобы их взвешенная сумма обеспечивала «оптимальное совпадение» с текущим кадром данных, при этом «оптимальное совпадение» может быть определено во многих областях стандартного применения как совпадение, минимизирующее среднеквадратичную ошибку между текущим кадром и его моделью. Таким образом, входной сигнал заменяется набором целочисленных адресных кодов, указывающих на области совпадения и множительные коэффициенты, связанные с весами блоков данных совпадений.

[0006] В порядке разъяснения другой аспект известного уровня техники, о котором, в целом, целесообразно знать, заключается в том, что одно ограничение классических осцилляторов заключается в создаваемом ими разграничении между ранее смоделированными кадрами данных и моделируемым текущим кадром в том плане, что данные в текущем кадре не участвуют в выделении параметров модели для данного кадра. Указанный подход является оптимальным для моделирования исходных шаблонов, которые повторяются на временной шкале, превышающей, по меньшей мере, длину одного кадра. Таким образом, традиционные осцилляторы могут рассматриваться как способы для моделирования полномасштабных структур в данных.

[0007] В порядке разъяснения другой аспект известного уровня техники заключается в том, что в типовых современных кодерах может использоваться несколько моделей для кодирования различных масштабов в исходных шаблонах. Конкретным примером, выбранным в данном описании, является адаптивное многоскоростное семейство кодеков, которые являются фактически кодеками стандарта 4G следующего поколения для мобильной коммуникации и, следовательно, представляют существующий уровень техники в области кодирования речевых и звуковых сигналов. В адаптивных многоскоростных кодеках обычно используются три последовательно расположенные модели, первая - линейный предиктор (LP), предназначенный для моделирования маломасштабных шаблонов, затем следует "адаптивная кодовая книга" (AC), являющаяся усовершенствованной моделью, подобной модели самовозбуждающегося вокодера и позволяющей шифровать средне- и полномасштабные структуры, и, наконец, третья модель, обеспечивающая шифрование невязки, остающейся после применения первых двух моделей. Модель адаптивной кодовой книги в адаптивных многоскоростных кодеках позволяет усовершенствовать традиционную модель самовозбуждающегося вокодера за счет использования определенной ограниченной секции данных из текущего входного кадра для моделирования указанных данных. Это позволяет увеличить диапазон структур, моделирование которых обеспечивается с помощью адаптивной кодовой книги до структур среднего и полного масштаба. Тем не менее, указанное усовершенствование до сих пор не позволяет моделировать все исходные масштабы, именно поэтому модель линейного предиктора используется до модели адаптивной кодовой книги в адаптивной многоскоростной модели.

[0008] В порядке разъяснения другой аспект известного уровня техники, о котором, в целом, целесообразно знать, заключается в том, что модели сигналов обычно разделяют данные на различные масштабы или компоненты и по отдельности моделируют указанные компоненты. Входной сигнал может быть разделен на диапазоны частот, вейвлеты или иные типы колебаний волны таким образом, чтобы обеспечивалось отдельное кодирование указанных компонентов и генерирование нескольких наборов параметров для каждого кадра. Обращаясь вновь к речевому кодированию, другим примером такого кодирования является семейство кодеров, называемых кодерами с многодиапазонным возбуждением (MBE), улучшенным многодиапазонным возбуждением (IMBE) и усовершенствованным многодиапазонным возбуждением (AMBE), которые разделяют на диапазоны частот с учетом вокализированных/невокализированных характеристик каждого диапазона и шифруют раздельно отдельные диапазоны частот.

[0009] Кодирование единичного кадра в форме нескольких моделей или компонентов означает, что кадр представлен соответствующими несколькими наборами кодирующих параметров, при этом каждому обычно присвоен фиксированный кодирующий бюджет. Кодирование сигналов с использованием нескольких наборов параметров может быть неэффективным, если сравнимое качество моделирования может быть достигнуто с помощью меньшего единичного набора параметров.

[0010] С учетом изложенного выше очевидно, что указанные традиционные способы не являются совершенными и создают возможности для поиска более оптимальных подходов. Необходимость эффективного представления сигналов в небольшом наборе параметров с целью извлечения ценной информации, максимального повышения скорости передачи и сокращения до минимума объема памяти в системах запоминающих устройств - все это создает стимулы для развития более эффективной технологии, раскрытой в настоящем изобретении.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0011] Настоящее изобретение проиллюстрировано на примере и без ограничения на фигурах прилагаемых рисунков, на которых одинаковые детали обозначены одними и теми же позициями и на которых:

[0012] Фиг.1 - иллюстративная блок-схема, на которых приведены три основных компонента системы анализа/кодирования на основе COMPLETE в соответствии с примером осуществления настоящего изобретения;

[0013] Фиг.2 - иллюстративная блок-схема основных компонентов анализа для оценки параметров уравнения (2) модели COMPLETE, на которой более детально проиллюстрированы основные блоки модуля 170 генерации кодов;

[0014] Фиг.3 - иллюстративная блок-схема синтезатора/декодера COMPLETE, который восстанавливает сигнал из полученных параметров COMPLETE в соответствии с примером осуществления настоящего изобретения;

[0015] Фиг.4 - иллюстративная блок-схема, на которой представлены компоненты общей мультимодальной системы COMPLETE/KAM в соответствии с примером осуществления настоящего изобретения;

[0016] Фиг.5 - иллюстративная блок-схема, на которой приведен пример системы речевого анализа (шифрования), в которой используется мультимодальная реализация COMPLETE/PACT в соответствии с примером осуществления настоящего изобретения; и

[0017] Фиг.6 - стандартная компьютерная система, которая при надлежащей конфигурации или конструкции может служить в качестве компьютерной системы, в которой может быть осуществлено настоящее изобретение.

[0018] Если не указано иное, иллюстрации на фигурах не обязательно выполнены в масштабе.

ПОДРОБНОЕ ОПИСАНИЕ РЯДА ПРИМЕРОВ ОСУЩЕСТВЛЕНИЯ НАСТОЯЩЕГО ИЗОБРЕТЕНИЯ

[0019] Ниже приведено описание настоящего изобретения со ссылками на его примеры осуществления, проиллюстрированные на прилагаемых рисунках. Тем не менее, специалистам в данной области техники должно быть очевидно, что подробное описание конкретных примеров осуществления, приведенных в настоящем документе, не ограничивает настоящее изобретение конкретными раскрытыми формами, и настоящее изобретение выходит за пределы указанных ограниченных примеров осуществления. Таким образом, все признаки, раскрытые в настоящем описании изобретения, в том числе любые прилагаемые реферат и рисунки, могут быть заменены альтернативными признаками, служащими той же самой, эквивалентной или аналогичной цели. Если в прямой форме не установлено иное, каждый раскрытый признак является лишь одним примером основного ряда эквивалентных или аналогичных признаков, и иные эквивалентные или альтернативные способы в соответствии с настоящим изобретением должны быть очевидны специалистам в данной области техники. Такие эквивалентные или альтернативные способы могут предусматривать эквивалентные или иные признаки, уже известные в данной области техники, и которые могут быть использованы вместо признаков, уже описанных в настоящем документе, или дополнительно к ним.

[0020] Если не указано иное, все технические или научные термины, используемые в настоящем контексте, имеют те же самые значения, обычно понимаемые специалистами в данной области техники, к которой относится настоящее изобретение. В данном контексте приведено описание предпочтительных способов, методов, устройств и материалов, хотя на практике или при тестировании настоящего изобретения могут быть использованы любые способы, методы, устройства или материалы, аналогичные или эквивалентные тем, что описаны в настоящем документе. Также следует понимать, что любые описанные этапы и (или) системные модули могут быть приемлемым образом заменены, переупорядочены, удалены, и могут быть включены дополнительные этапы и (или) системные модули в зависимости от требований конкретного применения, и что системы в приводимых примерах осуществления настоящего изобретения могут быть реализованы с использованием широкого разнообразия приемлемых процессов и системных модулей, и что они не ограничены любым конкретным компьютерным аппаратным обеспечением, программным обеспечением, межплатформенным программным обеспечением, встроенным программным обеспечением, микрокодом и т.д. Также следует понимать, что приведенная в настоящем контексте терминология используется исключительно для целей описания только конкретных примеров осуществления, и терминология не ограничивает объем настоящего изобретения. Следует отметить, что в соответствии со значением, используемым в настоящем контексте и в прилагаемой формуле изобретения формы единственного числа "a," "an," и "the" включают ссылку на множественное число, если в контексте однозначно не указано иное. Таким образом, например, ссылка на "элемент" является ссылкой на один или несколько элементов и включает его эквиваленты, известные специалистам в данной области техники. Аналогичным образом, в отношении другого примера ссылка на "этап" или "средство" является ссылкой на один или несколько этапов или средств и может включать подэтапы и вспомогательные средства. Все используемые союзы следует понимать в максимально возможном широком смысле. Таким образом, слово "или" следует понимать как имеющего определение логического "или", а не определение логического "исключающее или", если в контексте однозначно не требуется иное. Описанные в настоящем контексте структуры также следует понимать как относящиеся к функциональным эквивалентам таких структур. Язык, который может толковаться для выражения приближения, должен таким и пониматься, если в контексте однозначно не указано иное.

[0021] Несмотря на то, что формула изобретения была составлена в настоящей заявке в отношении конкретных сочетаний признаков, необходимо понимать, что объем раскрытия настоящего изобретения также включает любой новый признак или любое новое сочетание признаков, раскрытых в настоящем описании либо явно либо неявно, или любое их обобщение, независимо от того, относятся ли они к тому же самому изобретению, заявляемому в настоящий момент в любом пункте формулы и независимо от того, позволяют ли они частично решить любую или все из аналогичных технических проблем, как позволяет это сделать настоящее изобретение.

[0022] Признаки, описание которых приведено в контексте отдельных примеров осуществления настоящего изобретения, также могут быть представлены в сочетании в одном примере осуществления настоящего изобретения. И наоборот, различные признаки, описание которых для краткости приведено в контексте одного примера осуществления настоящего изобретения, также могут быть представлено отдельно либо в любом приемлемом подсочетании. Настоящим Заявители обращают внимание на то, что новая формула изобретения может быть составлена в отношении таких признаков и (или) сочетании таких признаков в процессе рассмотрения настоящей заявки, либо любой дополнительной заявки, вытекающей из настоящей заявки.

[0023] Ссылки на "один пример осуществления", "пример осуществления", "иллюстративный пример осуществления", "различные примеры осуществления" и т.д. могут указывать на то, что описанные таким образом пример(-ы) осуществления настоящего изобретения могут включать конкретный признак, структуру или характеристику, однако не каждый пример осуществления в обязательном порядке включает конкретный признак, структуру или характеристику. Кроме того, многократное использование фразы "в одном примере осуществления" или "в иллюстративном примере осуществления" не обязательно относится к одному и тому же примеру осуществления.

[0024] Последующие примеры осуществления изобретения могут быть реализованы с использованием любого из широкого разнообразия приемлемых процессов и системных модулей и не ограничены любым конкретным компьютерным аппаратным обеспечением, программным обеспечением, межплатформенным программным обеспечением, встроенным программным обеспечением, микрокодом и т.д. Как должно быть хорошо известно специалистам в данной области техники, необходимо принять большое количество взвешенных решений и согласований при определении оптимального промышленного производства любой системы. Коммерческая реализация в соответствии с сутью и идеями настоящего изобретения может быть рассчитана в соответствии с требованиями конкретного применения, в результате чего любой(-ая, -ые) аспект(-ы), признак(-и), функция(-и), результат(-ы), компонент(-ы), подход(-ы) или этап(-ы) идей, относящихся к любому описанному примеру осуществления настоящего изобретения, могут быть приемлемым образом опущены, включены, адаптированы, скомбинированы и согласованы или усовершенствованы и (или) оптимизированы специалистами в данной области техники, используя свои средние способности и известные методы, с целью достижения требуемой реализации, позволяющей удовлетворить требования конкретного применения. В отношении любых этапов способа, описанных в настоящей заявке, которые могут быть осуществлены с использованием вычислительной машины, стандартная компьютерная система, имеющая соответствующую конфигурацию и конструкцию, может быть использована в качестве компьютерной системы, в которой могут быть реализованы указанные аспекты настоящего изобретения.

[0025] В целях оптимизации описания ряд примеров осуществления настоящего изобретения в данном случае называется кодер/декодер, при этом следует понимать, что кодирующая часть в равной степени применима к моделированию и анализу сигнала и данных. Кроме того, термин «сжатие» зачастую ассоциируется с кодирующими дискретными источниками без памяти, - в которых любой существующий шаблон в развитии источника рассматривается статистически, а не в форме модели. Ряд примеров осуществления настоящего изобретения, по меньшей мере, является полезным в отношении типа кодирования, при котором последовательность данных развивается в соответствии с определенным, количественно определяемым правилом, и, в частности, являются полезными в целях получения модели - представление указанного правила в конечном виде.

[0026] Примеры осуществления в соответствии с настоящим изобретением основаны на главной идее, позволяющей моделировать маломасштабные структуры в плане блоков предшествующих данных, аналогично тому, как существующие осцилляторы данных моделируют полномасштабные структуры. Настоящее изобретение включает несколько раскрытых в данном контексте новшеств, позволяющих воплотить на практике подобное моделирование маломасштабных структуры в плане блоков предшествующих данных, и что более важно, и обеспечивающих точное восстановление входного сигнала, исходя из полученной модели. Основная идея настоящего изобретения воплощена на практике путем эффективного интегрирования инновационного моделирования маломасштабных структур с моделированием полномасштабных структур, а также с моделированием неструктурированной информации. Созданный в результате этого способ моделирования, называемый полный осциллятор плюс внешнее возбуждение (COMPLETE), позволяет усовершенствовать существующие модели в том плане, что он способен учитывать одновременно все масштабы в исходном шаблоне, а также произвольные характеристики в данных, тем самым позволяя пользователям во многих случаях применять одну исключительно эффективную модель вместо нескольких моделей, используемых в известном уровне техники. Основная проблема, подлежащая решению при использовании текущего входного кадра в модели, заключается в том, что указанные данные являются недоступными для восстановления кадра на декодере. Обычно в известном уровне техники, включающем адаптивную кодовую книгу в адаптивном многоскоростном кодировании, описание которой приведено выше, декодеры заменяют указанные недоступные данные данными из предыдущих кадров. Такое решение, возможно, не является оптимальным, так как расхождение данных между смежными кадрами может быть существенным во многих типах сигналов, в том числе в речевых сигналах. Многие практические примеры осуществления настоящего изобретения включают несколько этапов, которые позволяют найти наиболее оптимальные решения указанной выше основной проблемы. Один этап обеспечивает оптимизацию за счет последовательного восстановления недоступных данных на декодере, исходя из полученных параметров модели. Восстановление данных вместо их замены из предыдущих кадров позволяет повысить точность декодированного сигнала по сравнению с сигналами в существующем уровне техники, что, в свою очередь, позволяет повысить стабильность осциллятора, что, в свою очередь, позволяет в рамках изобретения использовать новый максимальный диапазон данных из текущего кадра. Тем не менее, даже при повышении точности в оценке недоступных данных, что предусматривается настоящим изобретением, восстановленный кадр может быть не равен смоделированному сигналу. Расхождение между восстановленным и смоделированным входным сигналом может накапливаться с каждым последующим моделируемым кадром и, в конечном счете, может привести к нестабильности модели. В том случае, когда предусматривается использование максимального количества точек данных из текущего входного сигнала для моделирования этого входного сигнала, и весь контент входного сигнала может быть кодирован с помощью такой модели, как предусматривается настоящим изобретением, расхождение, ведущее к нестабильности модели, может увеличиться быстрыми темпами, что, в свою очередь, в минимально короткий период времени может привести к нестабильности модели. Таким образом, другой этап, используемый во многих практических примерах осуществления настоящего изобретения, заключается в обеспечении стабильности модели путем оценки нескольких подходящих восстановленных кадров в процессе оценки модели. Стандартные способы подгонки модели расширены в примерах осуществления и включают несколько оценочных метрик, которые наряду с другими функциями обеспечивают стабильность модели. Кроме того, использование таких способов в данном примере осуществления настоящего изобретения, позволяющих проводить оценку стабильных моделей, также обеспечивают включение в примеры осуществления, которые расширяют структуру «самовозбуждаемой» модели возбуждений, отличающихся от ранее смоделированных кадров. Включение указанных возбуждений, называемых внешними возбуждениями, позволяет моделировать непериодические характеристики в данных, и это позволяет дополнительно расширить возможности моделирования примеров осуществления настоящего изобретения.

[0027] Следует учесть, что модель COMPLETE не эквивалента сочетанию различных существующих мало- и полномасштабных моделей. Скорее, результирующие представления модели COMPLETE отличаются от любых в настоящее время известных моделей. Кроме того, использование модели COMPLETE для комплексной одномоментной записи всей структуры сигнала приводит к созданию исключительно экономной модели, содержащей намного меньше параметров по сравнению с общим количеством параметров, необходимых для отдельных мало- и полномасштабных моделей в существующей области техники. С учетом указанной оптимизации может быть смоделирован с высокой точностью широкий диапазон сигналов различных классов в соответствии с настоящим изобретением всего лишь с двумя параметрами моделей. Многие практические примеры осуществления модели COMPLETE относятся к кодированию сигналов, которые могут содержать шумы и нестационарные характеристики, с потерями. Кроме того, ряд примеров осуществления настоящего изобретения может предусматривать кодирование без потерь в отношении полностью детерминированных источников, возникающих в соответствии с постоянно определенным динамическим правилом. Ниже приведено описание дополнительных инновационных компонентов и полезных свойств настоящего изобретения. По определению в осцилляторах используется избыточность в структуре полученных данных для создания модели. Таким образом, в целом считается, что осцилляторы в недостаточной степени приемлемы для моделирования переходных характеристик, таких как изолированные события, разрывности и шумоподобные характеристики, которые нечетко определены в полученных комбинациях данных. Речевой сигнал является примером быстроизменяющегося сигнала, в котором может иметь место внезапное изменение соотношения между полуколебательной и шумоподобной энергией. Во многих практических примерах осуществления изобретения модель COMPLETE может быть робастной в отношении ряда таких условий, рассматриваемых как неблагоприятные для типовых осцилляторов, например, в присутствии цветного шума и определенных импульсных помех, при этом степень робастности модели COMPLETE определяется сложностью конкретной выбранной функциональной формы модели COMPLETE и конкретным примером осуществления векторов внешнего возбуждения. Тем не менее, характеристики модели COMPLETE могут снизиться при отчетливом проявлении таких неблагоприятных условий. Потенциальное снижение характеристик не является желательным в областях применения, в которых необходимо соблюдать определенный уровень характеристик. Многие практические примеры осуществления настоящего изобретения образуют системы, сочетающие COMPLETE с известными в данной области техники способами (KAM), в целях достижения требуемого уровня характеристик кодера на основе COMPLETE и повышения эффективности известных в данной области техники способов кодирования. Другим полезным свойством таких мультимодальных систем COMPLETE/KAM в соответствии с данным примером осуществления настоящего изобретения является обеспечение инициализации COMPLETE.

[0028] Во многих практических примерах осуществления новшества, предусматривающие применение вышеуказанных принципов, включают следующее: усовершенствованную модель возбуждения, позволяющую расширить диапазон эталонных моделей и включить совокупность информации, полученную из архива данных, максимальный каузальный диапазон данных, полученных из текущего входного сигнала, дополнительную информацию, полученную системой из источников кроме архива данных, и словарь предварительно определенных форм сигнала; инновационные способы оценки таких моделей, в которых могут быть использованы несколько метрик и ряд различных типов выходов моделей в целях выбора оптимальной модели и обеспечения стабильности модели, усовершенствованные способы декодирования сигналов, позволяющие восстанавливать недоступные эталонные данные с использованием параметров модели, полученных исходя из указанных данных; способы и системы для комбинирования, по меньшей мере, ряда примеров осуществления настоящего изобретения со способами, известными в данной области техники, которые могут быть использованы для инициализации COMPLETE и повышения эффективности COMPLETE, и (или) существующими способами кодирования/сжатия; и кодер/декодер речевого сигнала, реализованный исходя из указанных новшеств, о чем более подробно речь пойдет ниже.

[0029] Во многих практических примерах осуществления изобретения в способах моделирования и кодирования входного кадра используется усовершенствованный диапазон эталонных моделей. Дополнительно к стандартному использованию восстановленных ранее смоделированных кадров в ряде случаев используется часть данных из текущего кадра, все данные из текущего входного кадра за исключением самой последней точки, в качестве входного сигнала внутреннего возбуждения. Благодаря этому обеспечивается кодирование мало- и полномасштабных шаблонов в источнике с помощью одной комплексной модели источника. Кроме того, дополнительно к внутреннему возбуждению, обычно используемому в модели осциллятора, внешнее возбуждение, не являющееся частью ранее полученных кадров, включено в качестве возможных эталонных моделей. Векторы внешнего возбуждения позволяют смоделировать неструктурированные характеристики в данных, а также недавно возникшие структуры. Внешнее возбуждение также может быть использовано для инициализации модели COMPLETE. Сочетание внутренних и внешних эталон ок позволяет моделировать с использованием одного простого кода сложные сигналы, содержащие многомасштабные шаблоны, а также неструктурированные характеристики.

[0030] Во многих практических примерах осуществления изобретения обычно предусматриваются способы оценки параметров таких полных моделей осциллятора и восстановления (декодирования) сигналов из таких параметров, при этом используется инновационный процесс последовательного восстановления недостающих эталонных моделей как во время оценки модели (стадия оценки), так и во время декодирования.

[0031] Во многих практических примерах осуществления настоящего изобретения инновационные способы оценки качества модели COMPLETE позволяют расширить диапазон вариантов метрик, которые могут быть использованы для оценки наиболее оптимальной модели, созданной специально для конкретного применения. Кроме этого, предусматривается многоступенчатый процесс для оценки одной модели с помощью нескольких метрик. При этом расширенный диапазон метрик применим в отношении различных выходов моделей, в том числе выхода, восстановленного из параметров модели без использования данных из текущего входного кадра. Основной аспект указанного усовершенствования объясняется тем, что такой восстановленный кадр может быть не равен модели кадра, используемой для оценки его параметров. Восстановленный выход модели, используемый при оценке, позволяет обеспечить стабильность модели COMPLETE по всем кадрам.

[0032] Во многих практических примерах осуществления настоящего изобретения, предусматриваются способы для использования известных в данной области техники способов для инициализации операций COMPLETE.

[0033] Во многих практических примерах осуществления настоящего изобретения предусматриваются способы и системы для выбора между COMPLETE и известными в данной области техники способами и (или) для сочетания COMPLETE с одной или несколькими моделями KAM для целей кодирования отдельного кадра. Разрабатываются различные системы для реализации такого выбора путем расширения диапазона способов, используемых для оценки характеристик моделей-кандидатов COMPLETE.

[0034] По меньшей мере, в одном примере осуществления предусматриваются способ и система для речевого кодирования/декодирования, основанные на мультимодальной системе COMPLETE/KAM.

Система кодера/декодера COMPLETE

[0035] На Фиг.1 показана иллюстративная блок-схема, в которой приведены три основных компонента системы анализа/кодирования на основе COMPLETE в соответствии с примером осуществления настоящего изобретения. На Фиг.1 показана схема основных блоков системы кодирования 10, основанной на Complete Oscillator Plus External Excitation (COMPLETE) 10. Система кодирования 10 на основе COMPLETE может содержать процессор 120, создающий L-дискретный входной кадр, которая позволяет трансформировать входной сигнал, например, путем кадрирования и фильтрования. Операции предварительной обработки также могут включать дополнительное преобразование аналоговых данных в дискретную форму, выполняемое в блоке 90, который способен преобразовать аналоговый входной сигнал в цифровой сигнал. Система кодирования 10 на основе COMPLETE может дополнительно включать модуль генератора COMPLETE 170, являющийся основным модулем генерации кодов COMPLETE; и постпроцессор 160, который способен систематизировать, хранить и отсылать полученные параметры кодов, и который также способен анализировать/преобразовывать указанные параметры. Входным сигналом может являться сигнал, развивающийся во времени, или пространственный вектор, такой как последовательность данных, извлеченная из 2-D изображения. Цифровой или аналоговый входной сигнал может быть подан на модуль предварительной обработки, показанный на Фиг.1. Сначала аналоговые входные сигналы могут быть дискретизированы в блоке 90 до их подачи на предпроцессор 120, в то время как цифровые входные сигналы могут быть непосредственно получены предпроцессором 120.

[0036] Предпроцессор 120 может вывести кадр Xk, содержащий L-дискреты входного сигнала в соответствии с уравнением Xk=[x(n-L+1), …, x(n)], где x(n-L+1) относится к первой точке данных в кадре, x(n) относится к последней точке данных в кадре. Нижний индекс 'k' относится к порядку, в котором был получен кадр. По всему описанию нижний индекс 'k' указывает на текущий моделируемый кадр Xk, и нижний индекс 'k-s', где 's' - целое число, относится к кадру, полученному за 's' кадров до получения текущего кадра. Предпроцессор 120 также способен фильтровать, кадрировать или иным образом преобразовывать входной кадр с использованием известных способов, которые являются приемлемыми для применения. Кроме того, могут быть созданы совмещающиеся кадры Xk, в которых определенная часть данных из предшествующего кадра Xk-1 удерживается в предпроцессоре 120 и используется для создания части текущего кадра Xk.

[0037] На Фиг.2 показана иллюстративная блок-схема основных компонентов анализа для оценки параметров модели COMPLETE (уравнение (1)), на которой более подробно приведены основные блоки модуля генерации кодов 170. Как показано на Фиг.2, модуль генератора COMPLETE 170 может включать блок памяти 110, буфер для хранения ссылок (эталонов) 130, блок оценки/анализа 140 и синтезатор (декодер) сигналов 150. Блок 140 моделирует входной кадр Xk в виде функции базисных векторов в соответствии с подробным описанием указанного способа. Базисные векторы подают на блок 140 с буфера для хранения ссылок 130, который, как таковой, получает и упорядочивает входные сигналы, поступающие из блока памяти 110 и предпроцессора 120. Блок памяти 110 может хранить определенную форму архива полученного сигнала и в ряде примеров осуществления изобретения - внешние базисные векторы, определение которых приведено ниже.

1. Память и буфер для хранения ссылок, блоки 110 и 130

[0038] В блоке памяти 110 на Фиг.2 хранится справочная информация, которая может быть использована для моделирования текущего кадра. Тип информации, которая может храниться в блоке памяти 110, является архивом данных, поступивших из входного сигнала, полученного до текущего кадра Xk. Подобные ранее зафиксированные значения позволяют создать часть справочной информации для COMPLETE. В предпочтительном примере осуществления настоящего изобретения, показанном на Фиг.2, в блоке памяти 110 накапливаются восстановленные ранее входные кадры [Yk-p, …, Yk-1], где Yk-s, с s=(1, …, p), обозначает восстановленные значения входного кадра Xk-s, и, как и ранее, нижний индекс 'k-s' указывает на порядок, в котором был получен кадр. Каждый хранящийся Yk-s в блоке памяти 110 был синтезирован из полученных параметров COMPLETE для соответствующего кадра 'k-s' с помощью декодера 150 и с использованием способов, более подробное описание которых приведено ниже. Кроме того, блок памяти 110 может хранить преобразованные варианты указанных векторов, которые, например, согласуются с преобразованиями, выполненными на текущем кадре Xk. В других примерах осуществления настоящего изобретения в блоке памяти 110 может храниться определенная форма фактических ранее полученных входных сигналов, дополнительно преобразованных, как описывалось выше, в предпроцессоре 120. При использовании совмещающихся кадров должным образом взвешенные фактические/восстановленные совмещающиеся кадры могут быть скомбинированы в блоке памяти 110 для воспроизведения последовательности фактических/восстановленных входных сигналов в пределах совмещения.

[0039] Другой тип ссылок (эталонов), который может храниться в блоке памяти 110, называется «внешними ссылками» или «внешними возбуждениями» для их отличия от «внутренних» возбуждений, поступивших из ранее полученных кадров. В ряде примеров осуществления настоящего изобретения внешние ссылки [E1, …, Eh] могут представлять собой набор предварительно определенных форм сигнала, при этом в качестве основного примера можно было бы привести набор синусоид единичной амплитуды различных частот, и указанные формы сигнала или параметры, из которых они могут быть синтезированы, могут быть сохранены в блоке памяти 110 до начала работы системы. Выбор и количество подобных форм сигнала обычно обусловлены имеющимися в распоряжении прикладными программами и ограничениями аппаратного обеспечения. В других примерах осуществления настоящего изобретения внешние ссылки могут предполагаться в ряде блоков системы 10 в процессе ее функционирования в соответствии с нижеприведенным описанием. Основной функцией таких внешних возбуждений является предварительная оценка информации во входных данных, которая может быть не оптимально смоделирована с использованием архива данных, и обеспечение доступности указанной информации для модели в форме дополнительных ссылок. Предполагаемые возбуждения кодируются системой 10 в виде набора параметров, которые могут быть использованы декодером для восстановления форм сигналов предполагаемых возбуждений. Например, предпроцессор 120 обеспечивает оценку параметров, позволяющих измерить шумоподобную энергию в текущем кадре Xk, и использование указанных параметров для генерирования внешнего возбуждения. Такую оценку можно провести с использованием известных в данной области техники способов. Например, в некоторых речевых кодерах используются способы на основе преобразования Фурье для оценки параметров шумоподобной энергии во входном сигнале. В другом примере блок 140 или 150 может рассчитать невязку, Rk=Xk-Yk, между входным сигналом Xk и его восстановленным вариантом Yk и генерировать внешнее возбуждение на основе указанной невязки. В том случае, если внешние возбуждения предполагаются в блоке 140 или 150 с использованием выходного сигнала оцененной модели, в ряде примеров осуществления настоящего изобретения может быть использовано предполагаемое внешнее возбуждение дополнительно к существующим эталонным векторам для оценки новой модели в отношении текущего кадра данных. Кроме того, в некоторых вариантах примеров осуществления настоящего изобретения могут быть использованы оба типа внешних возбуждений, определенных априори, и предполагаемые внешние ссылки.

[0040] При необходимости восстановления, по меньшей мере, некоторого контента кадра с использованием внешних ссылок подобное восстановление может быть связано с тем, что кадр содержит случайные события, такие как импульс или шумоподобную энергию. В альтернативном случае это может быть обусловлено тем, что имеющаяся архив сигналов не содержит достаточно информации об исходном шаблоне COMPLEX, например, в процессе инициализации работы системы COMPLETE. Еще одна причина может заключаться в изменении самой структуры источника, и в этом случае в сохраненных данных могут не содержаться все новые характеристики источника. В последних двух случаях контент, смоделированный с помощью внешних ссылок, является частью структуры источника, и в предпочтительном примере осуществления настоящего изобретения контент включен в архив данных. В этом случае в блоке памяти 110 может храниться кадр Yk, восстановленных из всех использованных ссылок - внутренних и внешних. Возможны другие примеры осуществления настоящего изобретения, в которых в блоке памяти 110 может храниться вариант входного сигнала, восстановленного только из внутренних ссылок, включенных в его модель, которая соответствовала бы модели источника, основанной исключительно на предыдущих исходных шаблонах. В других примерах осуществления настоящего изобретения в блоке памяти 110 может храниться вариант входного сигнала, восстановленного из внутренних ссылок, включенных в его модель, и только из ряда включенных внешних ссылок. Например, могут быть использованы только определенные априори внешние ссылки, а не предполагаемые ссылки. Выбор из указанных вариантов зависит от конкретного практического применения, и, исходя из основных принципов, могут быть разработаны многочисленные варианты реализации вышеуказанных примеров осуществления настоящего изобретения.

[0041] Обычно блок памяти 110 имеет емкость фиксированной длины. Зачастую один цикл исходного шаблона необходим для моделирования всего исходного шаблона с COMPLETE, однако использование большего количества циклов обеспечивает робастность при работе в неидеальной среде. Таким образом, выбранная емкость блока памяти 110 зависит от конкретного практического применения, однако, она может быть также ограничена иными соображениями, такими как ограничения аппаратного обеспечения. Емкость блока памяти 110 может поддерживаться на заданном уровне за счет удаления самых старых кадров внутренней ссылки каждый раз при сохранении в блоке памяти 110 нового кадра Yk. Аналогичная стратегия может быть использована для обновления векторов внешних ссылок в ряде примеров осуществления настоящего изобретения.

[0042] В блоке буфера 130 комбинируется и упорядочивается справочная информация из блока памяти 110 и все, за исключением самой последней точки текущего кадра Xk, т.е. L-1 точки Xk(n-1)=[x(n-L+1), …, x(n-1)], которые получены из предпроцессора 120, как показано на Фиг.2. Информация упорядочивается в буфере для хранения ссылок, обозначенном аббревиатурой RB - буфер для хранения ссылок на Фиг.2, и доступ к буферу осуществляется в помощью блоков 140 и 150. В примере осуществления настоящего изобретения, показанном на Фиг.2, векторы в буфере для хранения ссылок расположены последовательно, начиная с форм сигнала внешних ссылок [E1, …, Eh], которые могут быть направлены блоком памяти 110 или которые могут быть синтезированы из своих соответствующих параметров в блоке памяти 110, при необходимости, до того, как будут направлены в блок 130; далее идет последовательность [Yk-p, Yk-1], полученная из архива данных, как описывалось выше; и, наконец, следуют самые последние точки Xk(n-1) данных L-1. Для буфера для хранения ссылок может быть использовано неограниченное число других конфигураций буфера, т.к. различные части буфера для хранения ссылок последовательно индексированы различными позициями системы 10. Включение точек [x(n-L+1), …, x(n-1)] в буфер для хранения ссылок позволяет получить структуры наименьшего масштаба для моделирования входного кадра. Это один из аспектов, отличающих COMPLETE от существующих осцилляторов. Включение внешних ссылок [E1, …, Eh] позволяет моделировать части данных, не содержащихся в архиве. Использование усовершенствованного управляемого данными осциллятора в сочетании с внешними ссылками является дополнительным новым аспектом, обеспечивающим моделирование всех данных - структурированных и неструктурированных с использованием одного простого набора кода.

[0043] В ряде примеров осуществления настоящего изобретения блок памяти 110 не содержит кадры сохраненных данных, когда система начинает функционировать, и такие данные также могут быть удалены в ряде примеров осуществления настоящего изобретения в любой момент при существенном изменении исходного шаблона. В подобных случаях система COMPLETE 10 может приступить к генерированию архива данных в блоке памяти 110 с использованием созданных предварительно внешних ссылок и (или) точек данных L-1 [x(n-L+1), …, x(n-1)] из текущего входного сигнала Xk с использованием всех точек, за исключением самой последней точки. В этом случае может быть создан полный блок ссылок L-точки из текущего входного сигнала путем увеличения входных точек L-1 с помощью дополнительной точки, которая может быть создана в блоке 130, либо путем повторения одной из существующих точек, например, путем создания [x(n-L+1), x(n-L+1), …, x(n-1)], либо путем экстраполирования дополнительной точки из нескольких существующих точек с использованием известных методов экстраполяции. Альтернативные примеры осуществления настоящего изобретения позволяют моделировать L-1 точки [x(n-L+2), …, x(n)] входного сигнала с использованием в качестве ссылки L-1 точки [x(n-L+1), …, x(n-1)] и векторы внешних ссылок, имеющие соответствующим образом заданные размеры. Далее может быть создан полный блок ссылок L-точки из входного сигнала точки L-1 такой модели, либо путем повторения определенной точки данных в восстановленном кадре либо путем экстраполирования точки данных из некоторых точек в восстановленном кадре. После создания такого блока ссылок L-точки он может быть сохранен в блоке памяти 110 и использован в качестве ссылки для моделирования последующих кадров. С этого момента система способна генерировать архив данных с использованием своих обычных примеров осуществления настоящего изобретения, описание которых приведено ниже. Другой вариант генерирования архива данных заключается в использовании известных в данной области техники способов (KAM) для создания, по меньшей мере, части или всех необходимых ссылок архива данных в блоке памяти 110. Ниже будет представлено более подробное описание систем, реализующих такие средства, со ссылкой на Фиг.4 и 5.

[0044] Следует учесть, что отсутствует необходимость в выполнении блока памяти 110, предпроцессора 120 и буфера 130 в виде физически отдельных элементов, но они могут быть реализованы в одном программном или аппаратном компоненте, либо произвольно разделены и включены в состав нескольких компонентов, поскольку доступ ко всей информации может быть осуществлен с помощью соответствующего программного и аппаратного обеспечения для оценки приведенных выше операций.

[0045] Следует учесть, что последовательности данных в блоках 110, 120 и 130 могут относиться ко всем типам преобразованных, отфильтрованных, кадрированных или аппроксимированных входных данных. Более того, последовательности в блоке памяти 110, предпроцессоре 120 и буфере 130 могут относиться к определенному компоненту, такому как компонент вейвлет или к некоторому исходному/преобразованному/приближенному варианту входного сигнала.

2. Блок оценки/анализа 140 COMPLETE

[0046] Блок оценки/анализа 140 выполняет функцию оценки модели COMPLETE. Нижеприведенное описание относится к примеру осуществления настоящего изобретения, приведенному на Фиг.2, в котором ссылки расположены в последовательности в буфере для хранения ссылок. Процесс оценки модели позволяет идентифицировать множество N блоков {Bd(i), i=1, …, N} длиной - L в буфере для хранения ссылок 130 таким образом, чтобы входной кадр Xk был смоделирован как некоторая заданная функция {Bd(i)}:

,

где

G означает форму заданной функции - линейную или нелинейную;

N - число Bd(i) блоков, используемых в уравнении (1);

i - индекс, определяющий i-ый блок данных Bd(i);

Bd(i) - i-ый блок, называемый i-ый 'отвод', который выведен из буфера для хранения ссылок 130, начиная с ввода d(i) буфера для хранения ссылок; где

d(i) означает i-ую задержку (указанное значение может также быть записано для удобства как di) и является указателем ввода в буфер для хранения ссылок 130, который является первым элементом в блоке Bd(i). Диапазон возможных значений задержки представляет множество целых чисел 1≤di≤maxd, maxd,=m-L+1, где m означает общее число точек в буфере для хранения ссылок.

[0047] Модель COMPLETE, определенная уравнением (1), учитывает одновременно мало- и полномасштабные шаблоны, а также неструктурированные компоненты во входном сигнале. Набор задержек {di} позволяет определить соответствующие блоки {Bd(i)} в буфере для хранения ссылок 130. Оценка модели представляет собой оценку значений задержек {di} и любых переменных, которые являются специфическими в отношении функции G. Форма функции, представленная G, обычно специально разработана для определенного рассматриваемого применения и может быть нелинейной. Тем не менее, во многих областях практического применения линейная модель COMPLETE, содержащая несколько отводов, является достаточной для моделирования многих типов сигналов с высокой точностью. Ввиду указанной причины, для обеспечения описания более релевантных признаков данного примера осуществления настоящего изобретения, в последующем описании настоящего способа основное внимание будет уделено линейной модели COMPLETE, при этом нелинейная модель COMPLETE предусматривается в ряде примеров осуществления настоящего изобретения.

[0048] В линейной модели COMPLETE Xk выражается как линейная комбинация блоков {Bd(i)}:

,

где

N, di, Bd(i) определены, как указано выше, в уравнении (1); и

ai - относительный масштаб (вес) соответствующего блока Bd(i).

Параметры, которые необходимо оценить в уравнении (2), включают множества {ai} и {di} для i=1, …, N, и число членов N. Следует отметить, что ввиду эффективности модели COMPLETE, многие классы сигналов могут быть точно кодированы с помощью N=2 линейной модели COMPLETE. Даже в отношении высокосложных сигналов N=4 может быть достаточным. Кроме того, выбор N зачастую известен для данного практического применения. В подобном случае оценка модели в уравнении (2) сводится к оценке только набора параметров {ai, di}. Ниже приведено описание нескольких способов оценки параметров {ai, di}. Если также существует необходимость в оценке числа членов модели N, могут быть использованы те же самые нижеприведенные способы для оценки набора параметров {ai, di} для различных значений N и известные в данной области техники способы, например, информационный критерий Акаике может быть использован для выбора оптимального числа членов N. Адаптация описанных способов к нелинейной модели COMPLETE уравнения (1) будет представлена в конце раздела 2.

2a. Оценка параметров COMPLETE

[0049] Параметры {ai, di} могут быть оценены в блоке оценки/анализа COMPLETE 140 путем адаптирования одного из нескольких известных способов для подгонки параметрических моделей под данные. В примерах осуществления настоящего изобретения, описание которых приведено в настоящем контексте, обычно выполняют две основные процедуры. Первая процедура позволяет генерировать множество моделей-кандидатов. Далее результаты передаются для выполнения второй процедуры, которая позволяет провести оценку качества функционирования оцененных моделей-кандидатов с использованием заданных метрик для определения «наиболее оптимально функционирующей» модели. «Наиболее оптимально функционирующая» модель определена как модель, обеспечивающая наилучший результат, определенный на основе предварительно заданных критериев. Ниже приведено описание нескольких примеров осуществления настоящего изобретения в отношении каждой процедуры. Следует учесть, что в приведенном описании содержатся примеры, и оно не является исчерпывающим для оценки модели COMPLETE и ее параметров. Использование других способов, основанных на базовых принципах, не должно никоим образом уменьшать объем формулы, приведенной в настоящем изобретении.

Первая процедура - генерирование нескольких моделей-кандидатов

[0050] Способы, приведенные в настоящем описании, для генерирования моделей-кандидатов, предусматривают выполнение трех основных этапов: на первом этапе выбирают одну или несколько задержек-кандидатов , где t=1, …, D, D≤N и верхний индекс используется для указания того, что это значение является рассматриваемым значением-кандидатом, и производят поиск соответствующих отводов задержки из буфера для хранения ссылок 130. На втором этапе рассчитывают коэффициенты , соответствующие . Указанный расчет может быть осуществлен путем решения алгебраической задачи наименьших квадратов с помощью известных средств:

,

где

- матрица, столбцы которой являются блоками , выбранными из буфера для хранения ссылок 130;

- псевдоинверсия матрицы , рассчитанной с помощью известных способов, например, с помощью метода сингулярного разложения;

- вектор столбцов, состоящий из коэффициентов ; и

- вектор столбцов, состоящий из элементов входного кадра Xk.

Два вышеуказанных этапа повторяют для создания множества наборов-кандидатов параметров , где нижний индекс j=1, …, J используют для индексирования конкретного набора-кандидата, при этом каждый такой набор получен для конкретного выбора , выбранного на первом этапе. В качестве дополнительного этапа, если таковой необходим для данного практического применения, параметры COMPLETE могут быть квантованы с использованием нижеуказанных способов. На третьем этапе производится расчет выхода модели COMPLETE для каждого набора-кандидата , как подробно изложено ниже.

[0051] В отношении этапов 1 и 3, в частности, существует ряд вариантов реализации. Далее описывается ряд вариантов реализации для этапа 1 (и соответствующие корректировки этапа 2). Далее в разделе оценки модели приведено описание вариантов измерения 'выхода модели', используемой на этапе 3.

Методологии для генерирования наборов-кандидатов параметров

[0052] Ниже приведено описание трех способов генерирования наборов-кандидатов параметров, которые позволяют соответственно использовать исчерпывающий поиск, последовательный поиск и ограниченный поиск для генерирования наборов-кандидатов задержек. При всех трех способах обеспечивается получение значений задержки из целочисленного множества D, которое само по себе построено из диапазона [1 maxd]. Ряд значений в наборе [1 maxd] не обеспечивает значимые задержки, и в связи с этим нет необходимость включать его в качестве части D. В частности, все точки в последовательности, состоящей из [Yk-p, …, Yk-1], обычно создают значимые ссылки, в результате чего задержки, индексирующие блоки Bd(i) указанных точек, обычно будут включены в D. С другой стороны, блоки Bd(i), соединяющие две внешние ссылки, например, Ei и Ei+1, или внешние ссылки Eh и k-p, обычно не создают значимые ссылки, в результате чего задержки, индексирующие указанные блоки, не будут включены в D.

[0053] При использовании способа исчерпывающего поиска производится выбор комбинаций N задержек из D, и затем производится расчет соответствующих коэффициентов {a1^, a2^, …, aN^} для каждой комбинации путем решения вышеприведенного уравнения 3. Способ исчерпывающего поиска позволяет сначала генерировать все возможные наборы задержки и соответствующие значения коэффициентов и затем провести оценку результатов из всех результирующих моделей-кандидатов для определения оптимального набора параметров, позволяющего достичь наилучший результат модели. В альтернативном случае генерирование и оценку возможных наборов параметров можно осуществить в наборах групп. Один из многих существующих способов интеллектуального поиска, такой как эволюционное программирование, может быть использован для реализации исчерпывающего поиска. Способ исчерпывающего поиска может создать модель, в наибольшей степени приближенную к оптимальной модели из трех способов поиска, однако, в вычислительном отношении он может быть дорогостоящим при оценке моделей COMPLETE, содержащих более двух задержек.

[0054] Другим способом является способ последующего поиска, в котором используется итеративный процесс, в рамках которого на каждом этапе обеспечивается нахождение подмножества значений параметров, например, последовательный поиск, при котором рассматривается одна задержка в каждый момент времени, реализуется следующим образом. Сначала находят оптимальное значение задержки d1* для модели COMPLETE в одну задержку уравнения (2), т.е., Xk=a1 Bd1^, путем оценки результатов модели-кандидата для всех возможных значений d1^, выбранных из набора D, и их соответствующих коэффициентов a1^, найденных путем решения уравнения 3. В следующей итерации находят оптимальное значение d2* путем оценки всех моделей-кандидатов COMPLETE в две задержки, в которых значение d1* сохраняется постоянным до оптимального значения, найденного в первой итерации, и значения-кандидаты d2^ выбирают из D. Коэффициенты {a1^, a2^}, соответствующие набору-кандидату задержек {d1*, d2^}, рассчитывают путем решения уравнения 3, как и выше. Следует отметить, что в то время как значение d1* является постоянным после первой итерации, значение коэффициента a1 не является таковым и должно быть пересчитано при каждой последующей итерации. Процесс повторяется до тех пор, пока не будут получены оптимальные значения для всех параметров COMPLETE. Способ последовательного поиска позволяет получить близкие к оптимальным результаты при существенно более низком уровне сложности по сравнению со способом исчерпывающего поиска.

[0055] Третий способ является способом ограниченного поиска, который может сочетать в себе определенные аспекты предшествующих двух способов. Во-первых, как описывалось выше, последовательный поиск выполняется для получения «исходной» оценки {d1^, d2^, …, dN^}. Далее указанная оценка служит в качестве базовой оценки для выбора задержек-кандидатов путем их ограничения диапазоном вокруг исходной оценки: di^-µ≤di^≤di^+µ, i=1, …, N, где µ означает количество точек вокруг каждой di^, и ее значение устанавливается в зависимости от сложности требуемого поиска. Вышеописанная процедура исчерпывающего поиска используется в рамках указанного ограниченного диапазона задержек-кандидатов для генерирования новых наборов параметров-кандидатов и оценки соответствующих результатов модели для определения значений параметров, позволяющих получить наилучший результат модели. Эффективность указанного способа обычно находится между эффективностью первых двух способов.

[0056] В вышеприведенном описании способов генерирования параметров в равной степени рассматриваются все типы ссылок, включенных в буфер для хранения ссылок 130. Альтернативные примеры осуществления настоящего изобретения могут быть использованы в тех случаях, когда может быть предпочтительно выбрано подмножество эталонных форм сигналов в буфере для хранения ссылок перед другими при моделировании Xk. Например, в некоторых примерах осуществления настоящего изобретения самому последнему архиву данных может быть отдано предпочтение перед ранее полученным архивом. В другом примере может быть отдано предпочтение «внутренним» ссылкам [Yk-p, …, Yk-1] перед внешними ссылками [E1, …, Eh]. Предпочтительная обработка конкретных ссылок может быть реализована как часть процесса оценки и отбора модели, описание которого приведено ниже. Вышеописанные способы генерирования параметров также могут быть изменены для указанной цели, и данные изменения могут быть обычно реализованы дополнительно к любой предпочтительной обработке, которая может быть использована в процессе оценки и отбора модели. Например, вышеуказанные способы могут быть изменены в тех случаях, когда производится сортировка наборов-кандидатов для отражения требуемого предпочтения. Например, в том случае, когда модели, зависящие от наиболее последнего архива данных, являются предпочтительными, наборы-кандидаты параметров могут быть отсортированы в порядке снижения значений наименьшей задержки в каждом наборе таким образом, чтобы сначала обеспечивалась оценка моделей, дающих ссылку на самый последний архива данных (индексированный максимальными задержками) во время процесса оценки отбора модели-кандидата. Далее процесс оценки/отбора модели-кандидата может завершиться в том случае, когда будет найдена первая модель, отвечающая требуемым критериям качества. Другая стратегия, которая может быть использована отдельно либо в сочетании с предыдущей стратегией, предназначена для генерирования только поднабора наборов-кандидатов параметров, которые соответствуют наиболее предпочтительным ссылкам и позволяют вначале провести оценку указанного поднабора. Как и в случае с первой стратегией, процесс оценки/отбора модели-кандидата может быть завершен при обнаружении из первого поднабора модели, отвечающей требуемым критериям качества. В противоположном случае следующими могут быть созданы и оценены наборы-кандидаты, включающие менее предпочтительные ссылки. Более усовершенствованные примеры осуществления настоящего изобретения могут включать сложные компромиссные критерии, которые позволяют пользователям отдавать предпочтение специфическим ссылкам в моделях, даже в том случае, когда выбор приводит к неудовлетворительным результатам. Например, в некоторых примерах осуществления настоящего изобретения заранее определенное снижение качества может быть допустимо для моделей, зависящих исключительно от «внутренних» ссылок [Yk-p, …, Yk-1], если такие модели являются предпочтительными. В целом, многие варианты осуществления изобретения, в которых предпочтение отдается определенным ссылкам в буфере для хранения ссылок 130 перед другими ссылками, могут быть созданы с использованием основных принципов, и применение таких созданных вариантов никоим образом не должно сокращать объем формулы изобретения, приведенной в настоящем изобретении.

Вторая процедура - Проведение оценки моделей- кандидатов

[0057] В соответствии с первой вышеописанной процедурой обеспечивается вывод набора параметризированных моделей-кандидатов, полученных в соответствии с уравнением (2). Описание адаптации различных способов, которые могут быть использованы блоком оценки/анализа 140 с целью оценки качества указанных моделей-кандидатов, приведено ниже. Обычно, в том случае, когда модель определена уравнением, ее выход вычисляется с использованием указанного уравнения. В частности, в случае с уравнением (2), стандартный выход модели определяется как , приведенный в данном случае для примера j-го набора-кандидата параметров при t=1, …, D, D≤N в то время как остальная система обозначений является той же самой, как определено выше. Обычно, такой стандартный выход используется для оценки качества модели. В этом отношении общим критерием является среднеквадратическая ошибка (MSE), приведенная для случая j-го набора-кандидатов параметров в виде уравнения:

[0058] Наиболее оптимальная модель-кандидат определяется в данном случае как модель, обеспечивающая сокращение до минимума среднеквадратической ошибки. В целом, большое количеством метрик может быть заменено вместо среднеквадратической ошибки для анализа статистических временных и частотных свойств домена выхода модели. Выбор метрики или метрик может быть определен необходимостью конкретного практического применения. Настоящее изобретение без ограничения охватывает использование любой метрики, либо существующей в данной области техники, либо разработанной на основе базовых известных принципов, отдельно или в сочетании с другими известными метриками, для целей оценки качества моделей-кандидатов COMPLETE. В данном разделе ниже приведено описание нескольких подобных метрик.

[0059] Кроме использования ряда вариантов метрик для оценки качества моделей-кандидатов, далее приведено описание нескольких примеров осуществления настоящего изобретения, в которых используются выходы моделей, кроме вышеописанного стандартного выхода . В некоторых примерах осуществления настоящего изобретения, включая пример осуществления, проиллюстрированный на Фиг.2, второй выход модели, представляющий собой , синтезированный в синтезаторе 150 из параметров, направленных блоком 140, используется как часть процесса оценки/отбора модели, и он также используется при создании ссылок архива данных в блоке памяти 110. Основное наблюдение заключается в том, что синтезированный может быть не равным оцененному для данного набора параметров в случае COMPLETE, т.к. может быть извлечен из восстановленных данных во входном кадре, в то время как дает ссылку на фактический входной кадр Xk. Кроме того, обе оценки, и , могут быть рассчитаны с использованием скорее приблизительных, а не точных параметров модели, например, квантованных параметров, и в этом случае квантование осуществляется с помощью способов, описание которых приведено ниже. Таким образом, в представленных примерах осуществления настоящего изобретения существующие метрики, используемые для оценки моделей в замкнутой форме, таких как среднеквадратическая ошибка в уравнении (4), могут быть изменены в тех случаях, когда все примеры оценки модели заменены оценкой , рассчитанной с помощью уравнения (2), с приблизительными, например, квантованными параметрами, или, в альтернативном случае, заменены оценкой , синтезированной либо из точных, либо из приблизительных параметров модели. На практике, более целесообразно использовать определенные метрики с синтезированным и иные метрики с , и выбор будет определяться рассматриваемым практическим применением. Например, в областях практического применения, предусматривающих использование речи, зачастую желательно оптимизировать перцептуальные характеристики синтезированного выхода , а неперцептуальные характеристики . Следует отметить, что оценки модели на основе , могут рассматриваться как относящиеся к способу анализа через синтез, при котором системные выводы, синтезируемые из различных входных сигналов, сравниваются для выбора наиболее оптимального выхода. Тем не менее, метрика, основанная на синтезированном выходе, используемом в процессе отбора модели COMPLETE во многих примерах осуществления настоящего изобретения, может быть связана с другими метриками, обычно включающими или , таким образом, чтобы вся процедура оценки модели COMPLETE включала многоступенчатый процесс оценки. В неограничивающем примере предусматривается, чтобы пример осуществления настоящего изобретения, в котором используются последовательно две метрики, позволял сначала генерировать наиболее оптимальные модели-кандидаты q в соответствии с критерием минимальной среднеквадратической ошибки, приведенной в уравнении (4), затем синтезировать в синтезаторе (декодере) 150 q выходы из квантованных параметров указанных наиболее оптимальных моделей-кандидатов q и передавать q-синтезированные выходы на блок оценки/анализа 140, где далее проводится их оценка с использованием второй метрики, например, перцептуальной метрики широтно-импульсного кодирующего устройства, представленной в уравнении (7) ниже. Пример, представленный в конце данного примера осуществления настоящего изобретения, представляет собой конкретный случай речевого кодера, в котором используется несколько оценочных метрик. Схема процедур оценки, основанных на нескольких метриках, является частью COMPLETE, что не только позволяет адаптировать ее к практическому применению, но и использовать для обеспечения стабильности модели COMPLETE для расширенного диапазона ссылок, которые она использует. Ниже приведены неограничивающие примеры некоторых метрик, написанные для случая оценки , однако, как упомянуто выше, указанные и иные метрики могут, как вариант, использоваться с или , если это оправдано данным практическим применением.

[0060] ОТНОШЕНИЕ СИГНАЛ-ПОМЕХА: Минимальное отношение сигнал-помеха (SNR) является общим критерием для выбора оптимальной модели. Для отношение сигнал-помеха может быть рассчитано по нижеприведенной формуле:

,

где j - индекс набора-кандидата параметров .

[0061] LOG-СПЕКТРАЛЬНОЕ РАССТОЯНИЕ: Log-спектральное расстояние может представлять собой другую общую метрику для оценки спектральных свойств результата модели. Log-спектральное расстояние может быть рассчитано по нижеприведенной формуле:

,

где

fs - частота дискретизации;

F - преобразование Фурье;

f - элемент разрешения по частоте в диапазоне от [0, fs]; и

j - индекс набора-кандидата параметров

[0062] Общая метрика для оценки перцептуального качества речи является перцептуально взвешенная ошибка. Перцептуальное качество оптимизируется путем минимизации перцептуально взвешенной ошибки:

,

где

fs, F[.], и j - определены выше в уравнении (6);

|.| - амплитудный спектр;

W(z) - взвешивающий фильтр, представленный

где Z означает Z-преобразование, и коэффициенты b вычислены путем минимизации ошибки несовпадения модели линейного прогнозирования:

,

где Xk(u)=[x(n-u-L+1), …, x(n-u-1)] означает последовательность данных длиной L, которая имеет ожидание u-1 по отношению к последней точке текущего кадра.

[0063] Описанные в настоящем патенте способы не следует толковать как комплексные или исчерпывающие способы для проведения оценки модели. Использование иных способов оценки на основе базовых принципов не должно никоим образом сокращать объем формулы изобретения, приведенный в настоящем изобретении.

[0064] Параметры модели могут быть квантованы в процессе их оценки в блоке оценки/анализа 140 или в синтезаторе 150 либо на более позднем этапе во время их последующей обработки в постпроцессоре 160. Квантование может быть реализовано с использованием любого количества способов из существующей области техники, включая без ограничения векторное квантование для коэффициентов {ai}, скалярное квантование для задержек {di} и всех их производных.

[0065] Результат оценок, выполненных в блоке оценки/анализа 140, является набором параметров , обеспечивающих наилучший результат модели. При использовании в оптимальной модели предполагаемых внешних ссылок параметры, необходимые для восстановления указанных ссылок, также становятся частью кода выхода из блока оценки/анализа 140. Таким образом, код COMPLETE для входного кадра может включать параметры модели, и, при необходимости, параметры для внешних ссылок. Окончательный код может быть выведен из блока оценки/анализа 140 на синтезатор 150, а также на постпроцессор 160 для хранения и/или передачи. В соответствии с примером осуществления настоящего изобретения, представленным на Фиг.2, в том случае, если требуемая форма оптимального восстановленного кадра Yk не была сохранена в процессе оценки модели, ее синтезируют в синтезаторе 150 из поданных параметров и выводят в блок памяти 110. Далее постпроцессор 160 обрабатывает или преобразует код COMPLETE до его хранения/передачи с помощью способов, приемлемых для рассматриваемого практического применения. Например, если параметры не были квантованы в блоке оценки/анализа 140, они могут быть квантованы в постпроцессоре 160 с использованием способов известного уровня техники, как указывалось выше.

[0066] Вышеописанные этапы анализа могут быть непосредственно перенесены на любую нелинейную модель, состоящую из взвешенной суммы линейных и нелинейных функций Bd(i). Далее, общая нелинейная функция может быть аппроксимирована разложением усеченного многочлена, который состоит из взвешенной суммы блоков Bd(i) как таковых, а также элементов блоков Bd(i), возведенных в определенную степень. Вышеописанные способы анализа могут быть адаптированы для оценки таких полиномиальных разложений нелинейных моделей, как изложено ниже. Задержки di позволяют индексировать блоки данных в буфере для хранения ссылок 130, как указывалось выше. Блоки данных извлекают из выбранных значений задержек, как указывалось выше, и используют для расчета наборов новых блоков , где каждый соответствует c-му члену полиномиального разложения. После вычисления блоков их соответствующие веса в полиномиальном разложении вычисляются аналогично коэффициентам в линейном случае COMPLETE путем замены члена членами в уравнении 3. Остальная часть анализа может быть далее выполнена в соответствии с вышеприведенным описанием линейной модели COMPLETE.

3. Декодирование сигнала в синтезаторе 150 и декодере 250

[0067] На Фиг.3 приведена иллюстративная блок-схема синтезатора/декодера COMPLETE, позволяющих восстанавливать сигнал из полученных параметров COMPLETE в соответствии с примером осуществления настоящего изобретения. Декодирование относится к операции, выполняемой в синтезаторе 150 на Фиг.2, а также в декодере 250 на Фиг.3. Синтезатор (декодер) 150/250 восстанавливает исходный входной кадр до определенного уровня точности из переданных параметров. В случае с синтезатором 150 на Фиг.2 параметры синтеза вводят из блоки оценки/анализа модели 140, и в случае с автономной системой декодирования на Фиг.3 параметры получают из переданного/сохраненного кода.

[0068] В примере осуществления декодера, приведенного на Фиг.3, сигнал восстанавливают в декодере 250 аналогично тому, как он синтезируется в синтезаторе 150. В примере осуществления настоящего изобретения, проиллюстрированном на Фиг.3, блок памяти 210 сохраняет и систематизирует восстановленный «архив сигналов» [Yk-p, …, Yk-1], также любые предварительно определенные внешние ссылки либо их фактические формы сигнала, либо параметры, необходимые для их генерирования. Систематизация в блоке памяти 210 отражает систематизацию указанных ссылок в блоке для хранения 130, проиллюстрированном на Фиг.2. Параметры, необходимые для генерирования предполагаемых внешних ссылок, если таковые имеются, также вводятся как часть переданных/сохраненных данных в декодер на Фиг.3 и используются для генерирования указанных форм сигнала внешних ссылок. В том случае, если ни одна из задержек {di} в коде, введенном в блоки 150/250, не индексирует любые из точек в текущем кадре данных, текущий кадр Yk восстанавливают из введенного набора параметров аналогично вычислению оценки модели, приведенному в соответствии с уравнением (2) выше для кадров Xk, то есть:

.

В противоположном случае, если, по меньшей мере, одна задержка индексирует данные в текущем входном кадре, синтезатор/декодер 150/250 поточечно синтезирует записи Yk, начиная с наиболее ранней точки текущего кадра и переходя к концу кадра, оценивая каждую точку в виде следующего уравнения:

,

где s=[1, …, L] - индекс записи в Yk, начиная с начала кадра, таким образом, чтобы b(d(i)+s-1) относилось либо к точке в существующей ссылке, если (d(i)+s-1)≤maxd, либо в противоположном случае к элементу текущего кадра, который был синтезирован до текущего y(s) и хранится в соответствующих буферах, к которым блоки 150/250 имеют доступ.

Комбинирование COMPLETE со способами, известными в данной области техники

[0069] На Фиг.4 приведена иллюстративная блок-схема, иллюстрирующая компоненты общей мультимодальной системы COMPLETE/KAM в соответствии с примером осуществления настоящего изобретения. На Фиг.4 проиллюстрирована общая структура гибридной мультимодальной системы COMPLETE/KAM 400, кодирующей входной кадр, путем выбора из различных форм блоков 10a, 10b, 10n COMPLETE и различных известных в данной области техники способов (KAMs) 405a, 405b, … 405n и их сочетаний различных блоков и единиц, которые могут быть реализованы в аппаратном обеспечении, программном обеспечении или их сочетаниях. Примеры осуществления системы 400 могут предусматривать две практические функции: 1) инициализацию COMPLETE; и 2) повышение эффективности известных в данной области техники способов или в альтернативном случае повышение характеристик COMPLETE в областях практического применения, в которых COMPLETE сам по себе не обеспечивает требуемого уровня эффективности. В соответствии с информацией, приведенной в кратком изложении сущности изобретения, «разрушающие структуру» события во входном сигнале, такие как существенное повышение неструктурированной энергии, разрывы непрерывности и переходные состояния, возникающие в течение короткого промежутка времени относительно периода времени, в течение которого в сигнале образуются текущие шаблоны, могут оказать негативное влияние на характеристики COMPLETE. В таких случаях известные в данной области техники способы (KAM) 405 могут быть использованы для кодирования определенных частей сигнала, в то время как COMPLETE может быть использован для кодирования других частей с целью повышения общих характеристик по сравнению с теми, которые могут быть обеспечены по отдельности известными в данной области техники способами (KAM) или COMPLETE.

[0070] Система COMPLETE/KAM 400 на Фиг.4 может включать преселектор 410, который может анализировать входной сигнал Xk и выбирать, какую систему кодирования 10 на основе COMPLETE, KAM 405, или сочетание системы кодирования 10 на основе COMPLETE/KAM 405, следует использовать для моделирования Xk; модуль кодирования COMPLETE/KAM 415, который может содержать банк различных COMPLETE 10 и KAM 405 блоков оценки/анализа, которые могут быть активизированы преселектором 410 и/или постселектором 430; блок хранения ссылок/блок памяти 420, сочетающий в себе функции блоков 110 и 130, описание которых приведено выше и которые проиллюстрированы на Фиг.2. Блок 420 может содержать внутренние, а также внешние возбуждения, описанные выше, к которым имеет доступ COMPLETE 10, и, при необходимости, блок(-и) KAM 405 модуля COMPLETE/KAM 415; постселектор 430, который маршрутизирует соответствующий выходной сигнал из в конечном счете выбранной «наилучшей» модели в блок памяти 420 и постпроцессор 440, и дополнительно он способен провести оценку выходных сигналов моделей-кандидатов, поступивших из модуля COMPLETE/KAM M 415; и постпроцессор 440.

[0071] Функции обработки данных в преселекторе 410, создающем входные кадры для мультимодальной системы COMPLETE/KAM, могут быть аналогичны функциям обработки данных в предпроцессоре 120 на Фиг.1, описание которого было приведено выше, и в этой связи описание указанного компонента и связанных с ним этапов обработки не повторяется в данном разделе. Аналогичным образом, функции в блоке постпроцессора 440 на Фиг.4 могут быть реализованы аналогично функциям в постпроцессоре 160 (см. Фиг.1), за тем исключением, что постпроцессор 440 способен выполнять дополнительную функцию, заключающуюся в пакетировании параметров окончательной модели вместе с их кодом идентификации модели. Код идентификации модели поступает на блок постпроцессора 440 с постселектора 430 вместе с параметрами модели и состоит из минимального количества битов, необходимых для данной системы, с целью определения того, какая модель или сочетание моделей были использованы для кодирования текущего кадра.

[0072] Преселектор 410, постселектор 430 и модуль 415 COMPLETE/KAM на Фиг.4 образуют основные блоки для различных примеров осуществления системы COMPLETE/KAM. Описание примеров осуществления трех основных практических реализаций системы COMPLETE/KAM будет приведено ниже после описания функций, выполняемых блоками 410, 430 и модулем COMPLETE/KAM 415.

[0073] В рамках своих функций преселектор 410 может осуществлять выбор набора с COMPLETE 10 и/или KAM 405 в модуле COMPLETE/KAM 415. В некоторых примерах осуществления настоящего изобретения реализация преселектора 410 может представлять собой простой демультиплексор, обеспечивающий выбор между всего лишь двумя моделями, одной моделью 10 COMPLETE и одной реализованной моделью KAM 405, а также дополнительно обеспечивающий выбор сочетания двух моделей. В альтернативном случае преселектор 410 может осуществить технически сложные процессы выбора способов в модуле COMPLETE/KAM 415 с учетом характера входного сигнала Xk. Такие процессы выбора могут предусматривать вычисление параметров для входного сигнала Xk, что отражает статистические и/или детерминистские свойства сигнала, анализ указанных свойств, а затем использование результатов для выбора сочетаний нескольких COMPLETE 10a-10n и KAM 405a-405n для моделирования Xk. В зависимости от того, что является приемлемым для данного практического применения, вычисленные параметры для входного сигнала Xk могут отражать любое количество статистических, временных, частотных и частотно-временных свойств сигнала, которые могут быть получены с использованием способов известного уровня техники. Вычисленные значения параметров могут быть проанализированы в отношении предварительно заданных базовых/пороговых значений или иных предварительно определенных метрик.

[0074] Одна функция, для которой может быть использован преселектор 410, заключается в обнаружении «разрушающих структуру» событий. Для указанных примеров осуществления настоящего изобретения преселектор 410 может анализировать стабильность определенных параметров по всем текущим и предшествующим кадрам Xk с помощью известных способов. Например, преселектор 410 может сравнивать распределение детерминированной энергии в кадрах Xk по отношению к детерминированной энергии в ряде предшествующих входных кадров [Xk-p…Xk-1]. Распределение может быть определено, например, путем вычисления фундаментальной частоты (называемой периодом основного тона в кодировании речевых сигналов) и иных параметров, которые позволяют обнаружить в кадрах отношение квази-периодической энергии (V) и шумоподобной энергии (U). Оценка указанных параметров может быть проведена с использованием известных в данной области техники способов. Например, некоторые речевые кодеры обеспечивают вычисление параметров U и V с помощью методов на основе преобразования Фурье, таких как Быстрые преобразования Фурье, с целью определения вокализированных/невокализированных звуков для каждого кадра. Вычисленные параметры V(t, w) для квазипериодической энергии и U(t, w) для шумоподобной энергии являются функциями времени (t) и частоты (w). Также могут быть использованы другие известные способы для вычисления указанных параметров. В указанном примере вычисленное распределение квазипериодической и шумоподобной энергии во времени и по частоте в данном кадре относительно распределения указанных количеств в предшествующих кадрах позволило бы контролировать, могли ли быть выбраны и сколько могло бы быть выбрано COMPLETE 10 и KAM 405 преселектором 410. Такой процесс контроля также может быть осуществлен с помощью ряда известных способов с учетом требуемого качества выходного сигнала. Например, при распределении квази-периодической энергии V и шумоподобной энергии U могут быть выделены диапазоны, или буферы, и каждому буферу может быть присвоен конкретный вариант COMPLETE и/или KAM.

[0075] Преселектор 410 также может получить управляющие команды из внешних источников, которые могут изменить установки в преселекторе 410 либо, в альтернативном случае, команды могут быть интегрированы в преселектор 410 как часть логики решений. Например, информация о том, когда могут возникнуть события, «разрушающие структуру», может быть доступна за пределами системы COMPLETE/KAM, и в этом случае внешняя команда может передать указанную информацию на преселектор 410, в результате чего преселектор 410 освобождается от проведения такого анализа.

[0076] Как указывалось выше, модуль COMPLETE/KAM 415 на Фиг.4 содержит банк одного или нескольких блоков оценки COMPLETE 10 и KAM 405. Каждый COMPLETE 10 в модуле COMPLETE/KAM 415 проводит оценку другой функциональной формы COMPLETE. Например, модуль COMPLETE/KAM 415 может содержать банк 4-х блоков COMPLETE, при этом каждый отдельный блок проводит оценку линейного COMPLETE с конкретным количеством задержек в диапазоне от 1 до 4. Допускается, что COMPLETE 10 или KAM 405 остаются неактивными до «включения» с помощью входного сигнала, поступившего либо с преселектора 410, постселектора 430 или с другого COMPLETE 10 или KAM 405 в рамках модуля COMPLETE/KAM 415. Таким образом, блоки COMPLETE и KAM могут быть «включены» и применимы к поданному входному сигналу по отдельности или в различных комбинациях, т.е. последовательно, параллельно, либо в сочетаниях последовательных и параллельных комбинаций. В «последовательной» комбинации первый выбранный блок кодирует кадр Xk, следующий блок кодирует остаточный выходной сигнал первого блока и т.д., при этом конечный результат представляет собой последовательную модель, например, (COMPLETE 10a+KAM 405a+…KAM 405e). В «параллельной» комбинации первый выбранный блок кодирует часть Xk, следующий блок кодирует другую часть Xk и так далее. Кроме того, указанные описанные способы могут быть использованы в сочетании друг с другом для создания любой комбинации COM и KAM.

[0077] В блоках KAM 405 могут быть использованы известные способы для оценки их соответствующих моделей. Для блоков COMPLETE 10 на Фиг.4 могут быть использованы аналогичные реализации, как и для блока оценки/анализа COMPLETE 140 и синтезатора 150 COMPLETE 10, описанных выше (см. Фиг.2), с нижеприведенным исключением. Оценка качества модели-кандидата, описание которой было приведено для блока оценки/анализа COMPLETE 140 выше, может быть разбита в COMPLETE/KAM между блоками оценки моделей модуля 415 и постселектором 430. Способ, в соответствии с которым указанная часть процесса может быть разбита, зависит от варианта конкретной реализации системы COMPLETE/KAM, при этом описание ряда вариантов более подробно приведено ниже. Тем не менее, независимо от того, каким образом функция оценки модели может быть разделена между модулем COMPLETE/KAM 415 и постселектором 430, общий процесс и метрики, используемые для оценки моделей-кандидатов с целью выбора оптимальной модели для данного способа, являются аналогичными процессам и метрикам, описанным в отношении блока 140. Кроме того, следует отметить, что в нескольких примерах осуществления настоящего изобретения выходные сигналы моделей-кандидатов синтезируются в соответствующем блоке оценки COMPLETE или KAM. В альтернативном примере осуществления настоящего изобретения могут быть использованы другие компоненты в модуле COMPLETE/KAM 415 и вне его для синтезирования выходных сигналов модели для ряда примеров осуществления настоящего изобретения.

[0078] Следует учесть, что отдельные COMPLETE 10 и KAM 405 в модуле COMPLETE/KAM 415, показанные на Фиг.4, используются для представления различных форм COMPLETE 10 и KAM строго в целях ясности описания. Оценка нескольких типов моделей может быть выполнена внутри одного блока или оценку производят с использованием определенного способа в нескольких блоках, и в этом случае программное и аппаратное обеспечение используется для выбора специфических параметров, приемлемых для требуемой модели. Например, вместо использования четырех отдельных блоков для оценки четырех линейных COMPLETE, при этом каждый имеет различное число задержек в интервале от 1 до 4, модуль COMPLETE/KAM 415 может иметь один блок COMPLETE, допускающий до четырех задержек, и требуемое количество задержек будет выбрано в процессе оценки модели.

[0079] После завершения процесса оценки модели в модуле COMPLETE/KAM 415 результаты моделирования могут быть направлены на постселектор 430 для дальнейшей обработки. Как показано на Фиг.4, постселектор 430 может получить результаты с модуля COMPLETE/KAM 415 и провести оценку направленных результатов. Выбор конкретной логической структуры системы COMPLETE/KAM 400 (ниже приведено описание ряда имеющихся логических структур) позволяет контролировать объем выполняемой обработки в постселекторе 430. Ниже приведено описание полного набора функций, которые может выполнить постселектор 430, при этом следует учесть, что специфическая реализация может включать все описанные этапы процесса, их часть или даже ни одного описанного этапа процесса.

[0080] Одна функция, которая выполняется в постселекторе 430, заключается в оценке результатов анализа, полученных из модуля COMPLETE/KAM 415. Могут быть выполнены два типа оценок. В рамках первого типа проводится оценка качества модели, и процесс оценки может быть использован для выбора модели из различных моделей-кандидатов, полученных с помощью одного способа моделирования. Второй тип оценки может быть использован для выбора результата из результатов, полученных от различных COMPLETE 10 и/или KAM 405 в модуле COMPLETE/KAM 415. Первый тип оценки может быть реализован в постселекторе 430 с помощью способов для оценки качества модели, описание которых было приведено выше в отношении блок оценки/анализа COMPLETE 140. Второй тип оценки может быть реализован с помощью тех же самых методов для оценки качества модели, как и в блоке оценки/анализа COMPLETE 140, но он также может включать критерии эффективности, кроме критериев, относящихся к качеству модели. Примеры включают эффективность кодирования в плане количества битов, необходимых для кодирования данного набора параметров, вычислительную сложность, робастность модели в отношении окружающего шума, робастность квантования и иные метрики эффективности, известные в данной области техники и приемлемые для конкретного рассматриваемого практического применения. Все указанные известные критерии могут быть вычислены с использованием способов известного уровня техники. Кроме того, несколько метрик эффективности могут быть использованы в сочетании друг с другом и с критериями, относящимися к качеству модели, и в этом случае оценка обычно предусматривает компромисс характеристик на основе нескольких метрик. Одним примером является выбор критерия, предусматривающего компромисс между качеством модели и эффективностью кодирования.

[0081] Результаты оценки позволяют контролировать процесс принятия решений, осуществляемый в постселекторе 430. Один вариант реализации заключается в том, чтобы постселектор 30 во всех случаях обеспечивал выбор наилучшей модели в соответствии с определенными заданными критериями и чтобы указанная модель принималась в качестве окончательного результата анализа, и в этом случае постселектор 430 выдает параметры выбранной модели вместе с кодом идентификации модели на постпроцессор 440, и, при наличии, подает на блок памяти 420 окончательный кадр Yk, восстановленный из параметров выбранной оптимальной модели. Если окончательный кадр Yk отсутствует, постселектор 430 подает команду на модуль COMPLETE/KAM 415 для синтезирования указанного кадра Yk и его вывода на блок 420. В альтернативном случае в ряде вариантов реализации постселектор 430 может выбрать продолжение процесса оценки модели в модуле COMPLETE/KAM 415. Для инициирования новой итерации процесса оценки модели постселектор 430 включает блоки оценки выбранной модели в модуле COMPLETE/KAM 415 и подает на них любой необходимый входной сигнал. Кадры данных, направленные на блоки в модуле 415 через постселектор 430, могут содержать определенную форму данных, извлеченных из Xk, или, в альтернативном случае указанный входной сигнал может быть получен из предыдущей итерации, например, если остаточная ошибка была получена из предыдущей итерации. Указанные этапы оценки модели могут итеративно повторяться до тех пор, пока постселектор 430 не выберет окончательную модель и не завершит процесс оценки модели путем вывода и подачи параметров выбранной модели вместе с кодом идентификации модели на блок 440, а также путем вывода и подачи на блок 420 кадра Yk, восстановленного выбранной моделью, как непосредственно было описано выше.

[0082] Существуют три базовые логические структуры для системы COMPLETE/KAM 400, которые могут сочетать в различных логических последовательностях различные функции, выполняемые в преселекторе 410, модуле COMPLETE/KAM 415 и постпроцессоре 430. Указанные примеры осуществления настоящего изобретения могут называться как примеры осуществления Первого решения (DF), Последующего решения (DL) и Смешанного решения (MD). Конкретный пример Смешанного решения примера осуществления настоящего изобретения для речевого кодера представлен в конце описания настоящего изобретения.

[0083] Первое решение (DF): Пример осуществления Первого решения предусматривает принятие всех решений в отношении выбора модели в преселекторе 410 на Фиг.4 и выбор одного конкретного способа, который может представлять собой COMPLETE, KAM или сочетание COMPLETE и/или KAM для кодирования данного кадра Xk. Основным примером примера осуществления Первого решения является система для инициализации COMPLETE, в которой основная система COMPLETE/KAM состоит из одного COMPLETE и одного KAM. В этом случае блок 410 является простым переключателем для выбора KAM на начальном этапе работы системы (и после событий, требующих реинициализации), пока не будет создан достаточный архив сигналов [Yk-p, …, Yk-1] в блоке 420 для активизирования работы COMPLETE. После этого преселектор 410 может быть установлен для выбора COMPLETE. Могут быть получены более сложные реализации Первого решения, которые обеспечивают выбор из нескольких вариантов COMPLETE 10a-10n и KAM 405a-405 и в которых производится анализ входного сигнала Xk в соответствии с вышеприведенным описанием преселектора 410.

[0084] Последующее решение (DL): Пример осуществления Последующего решения обеспечивает принятие всех решений в отношении выбора модели или моделей в постселекторе 430 вместо выбора в преселекторе 410: Стратегия Последующего решения позволяет создать ряд возможных примеров осуществления настоящего изобретения. В рамках самой базовой стратегии Последующего решения обеспечивается вычисление моделей-кандидатов в отношении всех имеющихся вариантов способов в модуле COMPLETE/KAM 415, и затем постселектор 430 производит выбор из всех вариантов способов путем сравнения результатов, полученных из их соответствующих наилучших моделей, используя при этом одну или несколько оценочных метрик для оценка качества модели и иных критериев эффективности, которые были приведены выше при описании постселектора 430. Указанная стратегия может быть использована, например, в том случае, когда цель заключается в выборе модели с наилучшими общими характеристиками функционирования в соответствии с рядом предварительного заданного набора критериев. Более сложные стратегии Последующего решения могут состоять из нескольких итеративных этапов, при этом каждый этап предусматривает генерирование нескольких моделей-кандидатов в модуле COMPLETE/KAM 415 и оценку результатов из указанных моделей в постселекторе 430 до тех пор, пока не будет достигнуты требуемые характеристики. Указанная стратегия Последующего решения может использоваться, например, в том случае, когда критерии оценки предусматривают компромиссы, например, критерий поиска модели COMPLETE/KAM, обеспечивающей минимальную скорость, при этом отвечая заданным требованиям к качеству модели или превосходя их. В данном примере модель, обеспечивающая минимальную скорость, может быть сначала обнаружена с помощью вышеуказанных способов, и в том случае если ее выходные качества не соответствуют необходимым требованиям, процесс повторяется в отношении следующей модели, обеспечивающей минимальную скорость до тех пор, пока не будет достигнута модель требуемого качества.

[0085] Пример осуществления итеративного Последующего решения позволяет включать более сложную логику, основанную на известных протоколах принятия решений. Например, конечный результат, полученный на одном итеративном этапе, может быть оценен, и с учетом результатов множество совершенно отличных COMPLETE 10 или KAM 405 из использованного на предыдущем этапе множества может быть выбрано для следующей итерации с помощью постселектора 30. Например, постселектор 430 может переключить используемую методологию с COMPLETE 10 на KAM 405 на основе конечного результата оценки исходя из данной итерации. Кроме того, постселектор 430 может направить такую новую модель для оценки на наличие сигнала, полученного из исходного входного кадра Xk, или, в альтернативном случае, для оценки на наличие остаточной ошибки, полученной из модели, оценка которой проводилась при одной из предыдущих итераций. Итеративный процесс может закончиться после того, как будет завершено заданное количество итераций. В альтернативном случае постселектор 430 может принять решение завершить итерации после того, как он обнаружит модель, удовлетворяющую заданным критериям.

[0086] Комбинированное решение (MD): Пример осуществления комбинированного решения может предусматривать использование как преселектора 410, так и постселектора 430 для сочетания преимуществ стратегий Первого решения и Последующего решения. В примере осуществления Комбинированного решения преселектор 410 может выбрать набор оцениваемых потенциальных способов в отношении каждого кадра вместо определения одного способа, как это имеет место в примере осуществления Первого решения. Блок 430 может выполнить дальнейший выбор из выбранных моделей после проведения их оценки. Таким образом, преселектор 410 может быть использован для сужения выбора COMPLETE 10 и KAM 405 в модуле COMPLETE/KAM 415, который необходимо рассмотреть в отношении данного кадра. При этом, когда это целесообразно, постселектор 430 может изменить указанное решение после проведения оценки выбранных моделей и выбрать другую модель, первоначально не выбранную преселектором 410.

[0087] Следует учесть, что вышеописанные стратегии представляют собой несколько основных вариантов реализации базовой системы, исходя из которой может быть разработано бесконечно множество возможных примеров осуществления настоящего изобретения, сочетающих в различных вариациях COMPLETE и KAM.

Декодирование

[0088] Во всех примерах осуществления COMPLETE/KAM декодер обеспечивает оценку полученного кода идентификации модели и, соответствующим образом, восстанавливает выходной сигнал Yk с помощью способа, соответствующего способу, используемому для кодирования Xk. Такой используемый кодером способ может представлять собой COMPLETE или KAM, или сочетание COMPLETE и/или КАМ. Каждая часть сигнала, закодированная KAM, декодируется с помощью известного способа декодирования в отношении указанного KAM. Каждая часть сигнала, закодированная COMPLETE, декодируется с помощью соответствующего способа декодирования COMPLETE, описанного выше. Восстановленные кадры накапливаются в блоке памяти декодера таким образом, чтобы обеспечивалось отражение накопления восстановленных кадров в блоке памяти 420 на стороне кодера, и кадры используются для восстановления будущих кадров при необходимости.

Пример: Кодер/декодер речевых сигналов

[0089] Конкретный пример ряда вышеописанных примеров осуществления настоящего изобретения проиллюстрирован на Фиг.5. На Фиг.5 приведена иллюстративная блок-схема, представляющая собой пример системы анализа (кодирования) речевых сигналов с использованием мультимодальной реализации COMPLETE/PACT в соответствии с примером осуществления настоящего изобретения. На Фиг.5 приведена блок-схема основной части кодера речевых сигналов 50, способного производить речь "разговорного" качества при скоростях, сравнимых со скоростями современных кодеков, и которая реализуется с использованием вышеописанной смешанной стратегии COMPLETE/KAM. В целях упрощения иллюстрации ряда основных моментов, в примере на Фиг.5 используется часть Complete Oscillator (COM) модели COMPLETE. В части COM модели используются ссылки, извлеченные только их архива данных и текущего кадра, и в ней не используются внешние ссылки. В целях упрощения описания, используемая в настоящем примере модель называется моделью COM. Кодер речевых сигналов на Фиг.5 включает модуль предпроцессора 500; блок преселектора 510, контролирующий процесс инициализации; и модуль кодирования COM/PACT 515, который содержит один блок оценки СОМ 525 и один блок оценки KAM 535, и в котором реализуется способ Импульсного авторегрессивного компенсатора (PACT), описание которого более подробно приведено ниже. Кодер речевых сигналов 50 может дополнительно включать блок памяти 520, содержащий ранее восстановленные входные сигналы [Yk-p, …, Yk-1], доступ к которым может быть обеспечен COM 525; и постселектор 530, обеспечивающий контроль за процессом выбора моделей в штатном режиме (неинициализации) и инициирующий процесс вывода после обнаружения «наилучшей» модели путем направления соответствующей нижеописанной информации на блок 520 и постпроцессор 540. Постпроцессор 540 функционирует аналогичным образом, как и постпроцессор 440 на Фиг.4, описание которого было приведено выше, вследствие чего описание процессора 540 опускается.

[0090] Предпроцессор 500 на Фиг.5 обеспечивает обработку входных данных с использованием той же самой общей методологии, описанной для модуля предварительной обработки 120, описание которого приведено выше (см. Фиг.1), но адаптированной для практического применения в области кодирования речевых сигналов. Входные данные квантуются, если они являются аналоговыми, и кадрируются для создания кадра с использование одного из окон в существующей области техники, при этом широко распространенными вариантами являются окна Хемминга, Ханна или Кайзера. Операция кадрирования может быть использована для создания кадров входных данных, которые перекрывают свои предшествующие входные кадры определенным постоянным количеством точек данных. Обычно кадры также фильтруются для удаления помех с помощью одного из многих известных способов. Окна, имеющие интервал от 5 миллисекунд (мс) до 40 мс, являются общеприменимыми в области кодирования речевых сигналов. В целях настоящего примера используют 20 мс треугольные окна и 50% перекрытие кадров. Каждый созданный кадр может быть выведен предпроцессором 530 на преселектор 510.

[0091] Преселектор 510 подает текущий входной кадр либо на COM 525, либо на PACT 535, и благодаря этому обеспечивается контроль за тем, какая модель первоначально используется в модуле COM/PACT 515. Операции в преселекторе 510 соответствуют общему описанию, представленному для инициализации процесса в преселекторе 410, однако с некоторыми отличиями. В частности, преселектор 510 переключается на режим «инициализации» в начале работы, и после этого он детектирует разрыв во входном сигнале. В данной реализации блок 510 остается в режиме «инициализации» до тех пор, пока не будет накоплено достаточное количество данных в блоке 520 для записи того, что, как предполагается, является максимальным временным интервалом периода основного тона. Например, при кодировании произносимых на стандартном американском английском языке звуков речи обычно достаточно записать 32 мс слитной речи в кадрах в блоке памяти 520. Другие факторы, описание которых было приведено выше в примерах осуществления настоящего изобретения, относящихся к Фиг.1 и 2, также могут оказать влияние на количество кадров, накапливаемых в блоке памяти 520. После завершения накопления кадров преселектор 510 может переключиться на «штатный» режим. Находясь в режиме «инициализации», преселектор 510 может активизировать блок PACT 535 в модуле 515 путем ввода в него текущего входного кадра для инициализации моделирования указанного кадра. Находясь в «штатном» режиме, преселектор 510 активизирует блок COM 525 в модуле COM/PACT 515 путем ввода полученных кадров в блок COM 525.

[0092] В целях осуществления настоящего примера модуль COM/PACT 515 на Фиг.5 содержит блок COM 525, который обеспечивает оценку линейного COM, содержащего 4 задержки, в форме, приведенной в уравнении (2), и PACT 535, который обеспечивает оценку описанной ниже авторегрессионной линейной предикторной модели. В представленном примере осуществления настоящего изобретения используется авторегрессионная линейная предикторная модель 8-го порядка. В альтернативных примерах осуществления настоящего изобретения может использоваться блок COM 525 с другим количеством задержек и формами нелинейной функции COM, а также другие порядки PACT 535 и другие KAM вместо PACT. Оценка COM выполняется в блоке COM 525 с использованием следующего примера осуществления общей процедуры оценки COMLETE, описанной в примерах осуществления настоящего изобретения, приведенных выше на Фиг.1 и 2. В первую очередь, производится вычисление набора выходных сигналов модели-кандидата для всех возможных наборов параметров, квантованных, как описано ниже. Как и в приведенном выше описании верхний индекс используется для обозначения значения-кандидата, обозначение [] означает используемый способ для вычисления данной переменной, и нижний индекс j является индексом, используемом для обозначения отдельных наборов-кандидатов параметров. Качество каждой модели-кандидата может быть оценено затем, используя метрику перцептуально взвешенной ошибки (PWE) приведенного выше уравнения (7), и значения параметров, позволяющие получить минимальную перцептуально взвешенную ошибку, определяются как параметры, позволяющие создать оптимальную модель, и указанные параметры подают на постселектор 530 вместе с соответствующим выходным сигналом Yk[COM].

[0093] Оценка модели PACT может быть выполнена в PACT 535 следующим образом. В ряде примеров осуществления настоящего изобретения авторегрессионная линейная предикторная модель 8-го порядка оценивается по нижеприведенной формуле:

где Xk, как и ранее, обозначает входную последовательность определенной длины L, Xu(z) - длину L-блока данных с временем задержки z, которое означает, что блок начинается за z дискретов до последней точки в Xk, Ek - ошибку моделирования, известную как ошибка предсказания, и bu обозначает коэффициенты, находимые путем минимизации Ek, с использованием, например, алгоритма Левинсона-Дурбина или иного способа в соответствии с известным уровнем техники. Входной сигнал регенерируется из оцененных параметров в соответствии с уравнением (9), в котором Ek обычно аппроксимировано, как показано в уравнении (10). Аппроксимация, обозначенная Rk, вычисляется в виде комбинации масштабированных, сдвинутых во времени импульсов, представленных дельта-функцией Дирака в виде уравнения:

где: δp(v) обозначает дельта-функцию Дирака с амплитудой 1 в точке p(v) в текущем кадре и 0 в ином случае;

p(v) обозначает положение импульса v в текущем кадре;

cv обозначает усиление для импульса v; и

p - количество импульсов, используемых в аппроксимации при p=8 в данном примере осуществления настоящего изобретения.

[0094] Наборы-кандидаты параметров для модели PACT состоят из позиций импульсов {pv} и коэффициентов {cv}, которые могут быть генерированы с использованием ряда способов. Один вариант заключается в адаптировании одного и того же способа, используемого для генерирования параметров COM в настоящем примере. В этом случае положения импульсов {pv} могут быть выбраны аналогичным образом, как и задержки {di}, в то время как коэффициенты {cv} могут быть вычислены аналогичным образом, как и {ai} в уравнении (3). Другие основные способы генерирования параметров также могут быть использованы без сокращения объема формулы настоящего изобретения. Параметры модели PACT также могут быть квантованы, например, как описывается ниже, и качество моделей-кандидатов PACT может быть оценено с использованием аналогичной метрики, как и при оценке описанных выше COM-кандидатов. В частности, , представляющее синтезированные результаты из моделей-кандидатов PACT, находят и используют для вычисления перцептуально взвешенной ошибки. Значения параметров, позволяющие получить минимальную перцептуально взвешенную ошибку, выбраны в качестве значений, обеспечивающих создание оптимальной модели.

[0095] Параметры моделей COM и PACT могут быть квантованы в их соответствующих блоках в модуле COM/PACT 515. В нижеприведенных примерах осуществления настоящего изобретения допускается узкополосный кодер речевых сигналов, при этом входной сигнал дискретизируется с частотой 8 кГц. В этом случае 20 мс входные кадры, используемые в настоящем примере, содержат 160 точек данных (L=160), которые преобразуются в 256 значений возможных задержек для COM и 160 положений импульса для модели PACT, при этом оба множества значений являются положительными целыми числами. Оба множества могут быть квантованы непосредственно с использованием 8 битов. Для сокращения количества используемых битов в настоящем примере осуществления изобретения могут быть использованы нижеприведенный известный способ разделения задержек и положений импульса на чередующиеся подмножества.

[0096] Задержки могут быть разбиты на подмножества, содержащие 64 записи, и отдельные позиции в каждом подмножестве представлены 6-ю битами. Местоположения импульс PACT разбивают на подмножества, содержащие 32 записи, и отдельные позиции в каждой группе представлены 5 битами. Коэффициенты COM {ai} квантуют до 12 битов с использованием одного из известных способов векторного квантования. Таким образом, общее количество битов, используемых в коде COM в настоящем примере осуществления изобретения, составляет (6*4)+12=36 битов на кадр. Коэффициенты линейной предикторной модели PACT могут быть преобразованы в линейные спектральные частоты, что является стандартом для данной области техники, и могут быть квантованы с помощью известных способов разделенного векторного квантования. Затем результаты разделяются на два подвектора каждый по 4 частоты, и 11 битов используется для кодирования каждого подвектора, что в результате дает в целом 11+11=22 бита для представления коэффициентов. Веса импульсов в модели PACT квантуются до 13 битов с использованием одного из известных способов векторного квантования, который может представлять собой тот же самый способ, который используется для квантования коэффициентов СОМ. Общее количество битов, используемое для представления PACT в данном примере, составляет 22+(5*8)+13=75 битов на кадр.

[0097] Кодер в рабочем режиме обеспечивает контроль последовательности функций, выполняемых в постселекторе 530. В режиме «инициализации» постселектор 530 получает набор квантованных параметров для оптимальной модели PACT и инициирует процесс вывода кода, о чем речь пойдет ниже, в то время как система 50 перемещается для обработки следующего кадра. В «штатном» режиме постселектор 530 получает из модуля 515 синтезированный выходной сигнал Yk[COM*], полученный из наилучшей модели-кандидата COM, вместе с соответствующим ей набором квантованных параметров, и вычисляет метрику отношения сигнал-помеха (SNR), приведенную в формуле (5), используя при этом Yk[COM*]. Верхний индекс * обозначает оптимальную модель, для которой получена данная переменная. Если SNR[COM*] менее некоторого предварительно определенного количества (например, 1 dB используют в данном примере осуществления изобретения), это отношение принимается как указание на то, что имеется недостаточная избыточность в сигнале, и должна быть использована модель PACT для кодирования кадра. В этом случае постселектор 530 дает подсказку преселектору 510 ввести Xk в блок PACT в модуле COM/PACT 515, который инициирует оценку PACT. В противоположном случае постселектор 530 подает остаточную ошибку Ek=Xk-Yk[COM*] на блок PACT в модуле COM/PACT 515, который инициирует оценку PACT.

[0098] После получения блоком PACT 535 кадра, содержащего либо входной сигнал Xk либо записи остаточной ошибки Ek, выполняется оценка второй модели, во время которой производится оценка модели PACT аналогичным образом, как уже описывалось выше, в каждом случае рассматривая полученный кадр как подлежащий моделированию входной сигнал. После обнаружения оптимального PACT в текущей итерации соответствующий синтезированный выходной сигнал Yk[PACT*], в том случае если входной сигнал Xk был смоделирован, либо сигнал Yk [COM*+PACT*], если была смоделирована остаточная ошибка Ek, вместе с соответствующими наборами квантованных параметров, подаются блоком PACT 535 на постселектор 530 и используются для вычисления метрики Log-спектрального расстояния (LSD) заданным уравнением (6). В случае, когда входной сигнал Xk был смоделирован во второй итерации, постселектор 530 инициирует процесс вывода кода, о чем речь пойдет ниже, в то время как система перемещается для обработки следующего кадра. В противоположном случае метрика Log-спектрального расстояния вычисляется как для синтезированных выходных сигналов Yk[COM*], так и для Yk[COM*+PACT*]. Если разность между двумя выходными сигналами менее некоторого порогового значения, например, LSD[COM*]-LSD[COM**+PACT*]<0.5 dB, используемого в настоящем примере осуществления, в качестве окончательной модели выбирают COM 525, в противоположном случае выбирают PACT 535. В обоих случаях постселектор 530 инициирует процесс вывода кода, как описано ниже, в то время как система перемещается для обработки следующего кадра Xk+1.

[0099] Процесс вывода кода в постселекторе 530 состоит из подачи выбранных параметров и кода идентификации модели на постпроцессор 540. Далее, в рамках выходного процесса постселектор 530 подает в блок памяти 520 сигнал, синтезированный из выбранных параметров, который обычно высчитывали в процессе идентификации модели, либо, если сигнал не вычисляется, постселектор 530 может инициировать указанное вычисление.

Восстановление речевого сигнала на декодере

[00100] Речевые кадры в настоящем примере восстанавливаются в декодере с помощью способа декодирования для системы COMPLETE/KAM, описанной выше, при этом в настоящем примере используется СОМ в качестве конкретного основного примера осуществления способа COMPLETE системы COMPLETE/KAM.

[00101] Описанный основной пример осуществления изобретения предусматривает создание речи «разговорного» качества при тестировании без помех при средней скорости 9,77 килобит в секунду (кбит/с). Общая эффективность указанного кодера в плане как скорости, так и воспринимаемого качества, находится между текущим состоянием (рекомендации G.729) и адаптивными многоскоростными кодерами (AMR), работающими при режиме наивысшего качества кодирования. Следует учесть, что описанный основной пример осуществления изобретения предусматривает пример, выбранный в целях упрощения и повышения степени ясности излагаемого материала. Изменения параметров, указанных выше, также без ограничения охватываются настоящим изобретением. Кроме того, характеристики кодера могут быть повышены с основного уровня, приведенного в данном описании, путем реализации различных вариантов оптимизации на основе принципов, излагаемых по всему описанию изобретения.

[00102] На Фиг.6 проиллюстрирована типовая компьютерная система, которая при создании ее надлежащей конфигурации или конструкции может служить в качестве компьютерной системы, в которой может быть реализовано настоящее изобретение. Компьютерная система 600 включает любое количество процессоров 602 (также называемые центральные процессоры, или ЦП), соединенных с запоминающим устройством, включающим первичное запоминающее устройство 606 (обычно ЗУ с произвольной выборкой, или RAM), первичное запоминающее устройство 604 (обычно постоянное запоминающее устройство, или ROM). ЦП 602 могут представлять собой устройства различного типа, включая микроконтроллеры (например, со встроенным RAM/ROM) и микропроцессоры, такие как программируемые устройства (например, на основе компьютера с сокращенным набором команд (RISC) или компьютера с рациональным набором команд (SISC), или сложные программируемые логические интегральные схемы (CPLD) и программируемые пользователем вентильные матрицы (FPGA)) и непрограммируемые устройства, такие как вентильные матрицы, изготовленные по технологии ASIC (специализированные интегральные схемы), или микропроцессоры общего назначения. Как хорошо известно в данной области техники, первичное запоминающее устройство 604 предназначено для однонаправленной передачи данных и команд на ЦП, и первичное запоминающее устройство 606 обычно используют для двунаправленной передачи данных и команд. Оба первичных запоминающих устройства могут включать любые приемлемые нетранзиторные машиночитаемые носители, такие как носители, описанные выше. Запоминающее устройство большой емкости 608 также может быть двунаправлено соединено с ЦП 602 и может обеспечивать дополнительную емкость запоминающего устройства, а также может включать любые вышеописанные нетранзиторные машиночитаемые носители. Запоминающее устройство большой емкости 608 может быть использовано для хранения программ, данных и т.д. и обычно является вторичным носителем информации, таким как жесткий диск. Следует учесть, что информация, хранящаяся в запоминающим устройстве большой емкости 608, в соответствующих случаях может быть стандартно включена в качестве части первичного запоминающего устройства 606 и представлять собой виртуальную память. Специфическое запоминающее устройство большой емкости, такое как CD-ROM 614, также может двунаправленно передавать данные на ЦП.

[00103] ЦП 602 также может быть соединено с интерфейсом 610, соединенным с одним или несколькими устройствами ввода/вывода, такими как видео мониторы, трекболы, мыши, клавишные панели, микрофоны, сенсорные дисплеи, преобразователи для картосчитывателей, считыватели с магнитной или бумажной ленты, планшеты, сенсорные перья, устройства распознавания речи и рукописного ввода или иные хорошо известные устройства ввода, такие как, безусловно, другие компьютеры. Наконец, ЦП 602 может быть дополнительно соединен с внешним устройством, таким как база данных, либо компьютер, либо телекоммуникационная сеть или сеть Интернет с помощью внешних соединений, показанных в целом позицией 612, которые могут быть реализованы в виде проводных или беспроводных линий связи с использованием приемлемых известных технологий. При таком соединении подразумевается, что ЦП может получать информацию из сети, либо может выдавать информацию и направлять ее в сеть в процессе выполнения этапов способа, описанных в принципах настоящего изобретения.

[00104] Заявляемые элементы и этапы в настоящем описании были пронумерованы и/или обозначены буквами исключительно для облегчения читаемости и понимания. Любое такое обозначение цифрами или буквами само по себе не предназначено и не должно приниматься как указание на упорядочивание элементов и/или этапов в формуле изобретения.


КОДИРУЮЩЕЕ И ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ДЛЯ НИЗКОСКОРОСТНЫХ СИГНАЛОВ
КОДИРУЮЩЕЕ И ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ДЛЯ НИЗКОСКОРОСТНЫХ СИГНАЛОВ
КОДИРУЮЩЕЕ И ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ДЛЯ НИЗКОСКОРОСТНЫХ СИГНАЛОВ
КОДИРУЮЩЕЕ И ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ДЛЯ НИЗКОСКОРОСТНЫХ СИГНАЛОВ
КОДИРУЮЩЕЕ И ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ДЛЯ НИЗКОСКОРОСТНЫХ СИГНАЛОВ
КОДИРУЮЩЕЕ И ДЕКОДИРУЮЩЕЕ УСТРОЙСТВО ДЛЯ НИЗКОСКОРОСТНЫХ СИГНАЛОВ
Источник поступления информации: Роспатент
+ добавить свой РИД