←предыдущая следующая→
1 2 3 4 5 6 7 8
достаточно для работы очень многих приложений. Несмотря на внешнюю простоту такой системы, с ней связан целый ряд существенных проблем. Для того, чтобы синтезируемое сообщение звучало плавно, без разрывов, подставляемые слова должны быть интонационно встроены в общую фразу, достичь чего не так просто. В русском языке к этой проблеме добавляется еще проблема изменяемости слов - приходится для каждого контекста, где встречается числительное в определенном падеже, делать отдельную запись. Кроме того, в зависимости от числительного меняются и окружающие его слова, например: "триста тридцать один рубль", "триста тридцать три рубля", что еще больше осложняет ситуацию. Тем не менее, существуют стандартные методы подготовки речевых фрагментов для этого метода синтеза сообщений. Данный способ формирования речевых сообщений годится для подавляющего большинства голосовых систем.
Значительно более гибким, хотя и более сложным алгоритмически является прямой синтез речевых сообщений по тексту. Сегодня существуют алгоритмы синтеза речи по текстам на английском, немецком, испанском, японском и ряде других языков. Недавно появились сообщения о том, что разработана и система для русского языка, однако прямого подтверждения этому найти пока не удалось. Лидером в области разработки коммерческих систем текст-речь является сегодня компания Berkeley Speech Technologies (BeST). Основная проблема, до настоящего времени пока не имеющая полного решения, состоит в том, чтобы синтезированная по тексту речь звучала "по-человечески" - пока компьютерная речь практически не имеет интонаций и ударений, а кроме того, имеются трудности с озвучиванием имен собственных и адресов.
Распознавание голоса. Абонент может подавать команды машине не только набирая определенные комбинации цифр на своем телефонном аппарате, но и более обычным способом - проговаривая команды, что предполагает применение технологий распознавания речи. На сегодняшний день это, пожалуй, одна из самых сложных проблем в области интерфейса человека и компьютера. Несмотря на то, что недавно в этой области были достигнуты большие успехи, до полного решения еще далеко. Все алгоритмы распознавания работают на базе словарей, содержащих определенное количество слов; количество и характер слов для разных языков и режимов распознавания речи отличаются друг от друга. Алгоритмы распознавания речи занимаются выделением соответствующих слов в голосовом сигнале и преобразованием их в текст. Существует несколько режимов распознавания речи: с настройкой на голос конкретного пользователя и без настройки. В первом случае объем словаря может достигать нескольких десятков тысяч слов, которые распознаются при слитном произнесении. Данный режим распознавания применяется, когда у системы компьютерной телефонии имеется только один конкретный пользователь, который может по телефону давать команды системе и даже диктовать письма. Для систем общего пользования необходим режим распознавания без настройки на голос конкретного пользователя. Такие системы также работают на основе словаря, который, однако, может содержать гораздо меньшее число слов. Словари для распознавания речи без настройки на конкретного пользователя создаются на основе образцов речи, полученных от многих сотен или даже тысяч носителей языка.
Словари для работы без настройки на голос конкретного пользователя могут обеспечивать распознавание цифр от нуля до девяти и простейших команд типа "да" и "нет" при их раздельном произнесении, либо обеспечивать распознавание цифр и несколько более узкого набора команд при их слитном произнесении, либо обеспечивать распознавание цифр и наименований всех букв алфавита. Словари для распознавания речи без настройки на голос пользователя созданы для нескольких десятков языков и диалектов - для русского языка пока существует лишь простейший словарь, обеспечивающий распознавание цифр и простейших команд, произносимых раздельно.
Осуществление исходящего звонка. Системы компьютерной телефонии должны обеспечивать набор номера и мониторинг линии, который и представляет наибольший интерес. Речь идет о распознавании сигналов, свидетельствующих о состоянии соединения: редкие гудки - осуществление соединения; снятие трубки на противоположном конце; частые гудки - занятость линии; отсутствие гудков - соединение не установилось; гудки, обозначающие ошибку при наборе номера (как правило, это три последовательных гудка с возрастающей высотой тона). Кроме того, многие системы компьютерной телефонии в состоянии отличить, отвечает ли им человек, автоответчик или факсимильный аппарат. Для распознавания сигналов в линии и ответа абонента часто используется так называемая каденция - порядок чередования периодов молчания и наличия звука в линии и их продолжительность. Каденция распознается существенно проще, чем речь, хотя и здесь имеются свои проблемы, связанные с тем, что в разных странах состояние линии обозначается разными сигналами, поэтому системы компьютерной телефонии должны допускать настройку на сигналы, которые принято использовать в данной стране. Распознавание "сущности" отвечающего абонента осуществляется довольно просто. Факсимильный аппарат отвечает длинным сигналом готовности, который легко отличить по каденции от редких гудков и от человеческой речи. Человек, снимая трубку, коротко отвечает "Алло!" или в крайнем случае представляется. Автоответчик же начинает долго рассказывать, куда вы позвонили и что надо сделать, чтобы оставить сообщение.
Генерация факсимильных сообщений. Чтобы обеспечить полную поддержку всех необходимых человеку функций, система компьютерной телефонии должна уметь осуществлять генерацию факсимильных сообщений по текстовым файлам, результатам запросов баз данных и так далее. Данная функция мало чем отличается от работы обычного факс-модема.
Аппаратура или программа?
Реализовать перечисленные функции или хотя бы часть из них можно различными способами. В простейшем случае, для телефонного соединения можно использовать обыкновенный факс-модем, а все функции, связанные с обработкой голоса, осуществлять при помощи платы Sound Blaster. При этом вся интеллектуальная нагрузка, связанная с осуществлением телефонного соединения и голосовой поддержкой, ложится на компьютер. Это, во-первых, означает, что для этой цели можно использовать лишь достаточно мощные машины, а во-вторых, при таком подходе компьютер превращается в интеллектуальный телефонный аппарат, что означает не слишком рациональное использование его вычислительных ресурсов. Впрочем, для решения простых задач такой подход может вполне сгодиться. Его преимущество - идейная простота и относительная дешевизна используемого оборудования.
Более основательный подход предполагает использование простых и относительно дешевых голосовых плат, представляющих собой интегрированные устройства, поддерживающие ряд функций, необходимых для установления телефонного соединения. В частности, такие платы набирают номер (как по системе DTMF, так и импульсом), озвучивают приветствие, задают абоненту вопросы голосового меню, распознают ответы абонента в виде сигналов DTMF, а также оцифровывают речь абонента и готовят соответствующие данные к записи на диск. Такое решение имеет одно несомненное преимущество - все функции поддержки телефонного соединения выполняются автономным процессором DSP (digital signal processor), находящимся на плате.
DSP представляет собой мощный процессор, разработанный специально для работы с аудиосигналами. Сегодня такие процессоры широко доступны на рынке за весьма умеренную плату. Широко распространено также загружаемое программное обеспечение для этих процессоров, которое, собственно, и обеспечивает выполнение всех необходимых функций. Главный недостаток, помимо малой пропускной
←предыдущая следующая→
1 2 3 4 5 6 7 8
|
|