Синтез речи (озвучение речи компьютером)
Постановка задачи.
Задача синтеза речи заключается в том, чтобы текст, представленный в компьютере в виде символов был бы озвучен и превратился в человеческую речь. При этом машина либо уже имеет исходный текст в виде файла, либо составляет его, руководствуясь каким - либо алгоритмом. Как правило, синтезированная речь затем передается по телефонным линиям, имеющим ограниченный сверху и снизу частотный диапазон, поэтому желательно использовать высокий (женский) голос, т.к. он лучше проходит телефонные линии. Речь должна быть максимально разборчивой и членораздельной, а так же должна учитывать изменения интонации в соответствии с правилами языка.
СИНТЕЗ РЕЧИ - speech synthesis - процесс преобразования текста в речь.
Синтез является одной из форм обработки речи, связанной с задачей чтения абонентской системой записанного в ее памяти электронного текста. Существует несколько методов синтеза речи. Первый из них заключается в построении слов путем комбинирования фонем и аллофон. Полученная фонемная последовательность, после выбора высоты тона и интонации, превращается в речь. При таком подходе генерируется вполне понятная речь, но слушающему пользователю ясно, что их произносит робот. Второй метод синтеза речи заключается в ее имитации с использованием модели голосового тракта Человека. Здесь глухие и звонкие согласные в речи представляются источниками периодических и шумовых сигналов соответственно. Затем сигналы проходят через каскад фильтров.
При синтезе для обеспечения высокого качества речи необходимы высокие скорости обработки данных и большая емкость памяти для хранения данных. Поэтому приходится выбирать компромисс за счет определенного ухудшения качества синтезируемой речи.
Обычно синтез речи производится с учетом особенностей языка с автоматической расстановкой ударений.
ОСНОВНЫЕ ФУНКЦИИ КОМПЬЮТЕРНОЙ ТЕЛЕФОНИИ
Аппаратура или программа?
Семейство плат для компьютерной телефонии
Конкретный пример
Литература
Голосовые компьютерные технологии становятся сегодня все более популярными. Задача обучения компьютера навыкам общения с человеком при помощи обычной речи привлекает внимание, как известных гигантов компьютерной индустрии, так и относительно небольших компаний, специализирующихся исключительно на этой области индустрии телекоммуникаций. Компьютеры уже научились понимать команды человека и озвучивать текстовые файлы. Впрочем, голосовые технологии для настольных систем выглядят чем-то вроде забавы удобно, но при необходимости можно обойтись и без них. А вот для развивающейся необычайно быстрыми темпами компьютерной телефонии голосовые технологии - это насущная необходимость.
Основная идея компьютерной телефонии - сочетание мощи компьютерного интеллекта с простотой и доступностью телефонной связи. Благодаря этой технологии, можно связываться с удаленными компьютерами, и, ответив на несколько вопросов голосового меню, выполнить достаточно широкий набор действий: получить телефонное соединение с любым сотрудником компании-пользователя или оставить голосовое сообщение, осуществить доступ к базе данных и получить информацию либо в голосовом виде, либо по факсу. Помимо этого, компьютерная телефония позволяет производить интеллектуальную коммутацию входящего или исходящего звонка, переключать звонок с одного номера телефона на другой, как в пределах организации, так и "наружу" и производить большое количество других действий. Некоторые возможные приложения компьютерной телефонии описаны в работе [1].
ОСНОВНЫЕ ФУНКЦИИ КОМПЬЮТЕРНОЙ ТЕЛЕФОНИИ Сложные приложения компьютерной телефонии формируются из ограниченного числа относительно простых вызовов функций, реализующих достаточно сложные реальные алгоритмы, базирующиеся на ряде следующих аппаратных и программных средств.
Запись и воспроизведение голоса. Чтобы общаться с человеком по телефону, голосовая система должна уметь записывать и воспроизводить человеческую речь. Простейшим примером такой системы является обыкновенный автоответчик, где голос записывается на магнитную ленту, а потом воспроизводится. В современных системах компьютерной телефонии голос записывается в цифровом виде на диск, обычно по методу PCM (Pulse Code Modulation) . Аналоговый электрический сигнал, передающий голос, подвергается цифровому преобразованию через определенные промежутки времени. Согласно известной теореме Найквиста, частота оцифровки или частота выборки должна быть вдвое выше максимальной частоты, присутствующей в спектре оцифровываемого сигнала. Общепринятым стандартом при передаче голоса является сохранение в его спектре частот до 4 кГц - при этом голос, с одной стороны, сохраняет узнаваемость, а с другой - не требует для своей передачи высококачественных линий. Отсюда получается, что частота выборки должна составлять 8 кГц, а общепринятое разрешение аналого-цифрового преобразования составляет 256 уровней. Для кодировки такого преобразования необходимо 8 бит информации. Таким образом, для кодирования голосового сигнала требуется скорость 64 Кбит/с.
Распознавание набранных абонентом цифр. Системы компьютерной телефонии должны воспринимать команды абонента, которые в простейшем случае вводятся путем набора цифры на телефонном аппарате. Отсюда следует, что аппаратура для компьютерной телефонии должна распознавать, какую цифру набрал абонент. Здесь следует отметить, что сегодня существуют две основные принципиально различные системы набора номера - DTMF (Dual-Tone Multifrequency) и импульсный набор. Система DTMF принята в США, Израиле и ряде других стран, импульсный набор - в большинстве европейских стран, России и Японии. В системе DTMF (или тоновом наборе) каждая цифра кодируется звуковым сигналом, представляющим собой сочетание двух частот, отвечающих координатам соответствующей цифры на наборной клавиатуре телефона. Обычно на такой клавиатуре имеется четыре горизонтальных и три вертикальных ряда клавиш, соответственно, в системе DTMF имеется двенадцать сочетаний частот, передаваемых по телефонным линиям в виде обычных звуковых сигналов. Существуют стандартные схемные решения для распознавания этих частот, поэтому обработка тонового набора никаких затруднений не представляет.
С импульсным набором дело обстоит сложнее - каждая цифра кодируется серией разрывов в цепи между телефонным аппаратом и коммутирующим оборудованием на станции. Число разрывов в линии соответствует набранной цифре (ноль кодируется десятью разрывами) ; разрывы, относящиеся к одной и той же цифре, разделены короткими интервалами, более длинные интервалы разделяют разрывы, относящиеся к разным цифрам. Основная проблема состоит в том, что разрывы цепи не передаются дальше по линии, и на другом конце соединения прослушиваются только характерные щелчки. Эти щелчки приходится распознавать, что при наличии помех в линии сделать затруднительно.
Преобразование текст-речь. Любая компьютерно телефонная система должна обладать способностью озвучить для абонента то или иное сообщение. Такое преобразование может выполняться в одном из двух режимов: путем сборки из заранее записанных речевых фрагментов и прямым формированием речевого сообщения по текстовому файлу. Сборка из заранее записанных речевых фрагментов позволяет решать только самые простые задачи, например синтез числительных. Достаточно записать речевые фрагменты, содержащие простейшие элементы, из которых состоят наименования чисел: цифры, десятки, сотни, тысячи и т.д. и из них можно будет набрать любое число. А поскольку работа многих информационных систем связана именно с передачей чисел, то такого синтеза будет вполне достаточно для работы очень многих приложений. Несмотря на внешнюю простоту такой системы, с ней связан целый ряд существенных проблем. Для того, чтобы синтезируемое сообщение звучало плавно, без разрывов, подставляемые слова должны быть интонационно встроены в общую фразу, достичь чего не так просто. В русском языке к этой проблеме добавляется еще проблема изменяемости слов приходится для каждого контекста, где встречается числительное в определенном падеже, делать отдельную запись. Кроме того, в зависимости от числительного меняются и окружающие его слова, например: "триста тридцать один рубль", "триста тридцать три рубля", что еще больше осложняет ситуацию. Тем не менее, существуют стандартные методы подготовки речевых фрагментов для этого метода синтеза сообщений. Данный способ формирования речевых сообщений годится для подавляющего большинства голосовых систем.
Значительно более гибким, хотя и более сложным алгоритмически является прямой синтез речевых сообщений по тексту. Сегодня существуют алгоритмы синтеза речи по текстам на английском, немецком, испанском, японском и ряде других языков. Недавно появились сообщения о том, что разработана и система для русского языка, однако прямого подтверждения этому найти пока не удалось. Лидером в области разработки коммерческих систем текст-речь является сегодня компания Berkeley Speech Technologies (BeST) . Основная проблема, до настоящего времени пока не имеющая