Знакомьтесь, новый диктор!

Мы рады представить вам нашего нового диктора! Сергей Матаков свободен от эффекта дежавю – ранее не звучал в коммерческих роликах. По результатам фокус-групп среди женской аудитории – один из самых высоких баллов выбора.

 

НОВОСТИ
2012.04.12
Демо запись, голосовой кастинг для последующей озвучки видео презентации.

2012.04.11
Запись голосового меню. Выполнено озвучивание сообщений IVR, в записи приняли участие профессиональные дикторы.

2012.04.10
Запись диктора клиента.

Методы программного исключения фрагментов дыхания из цифровых фонограмм записи речи

Кузнецов Дмитрий
Опубликовано: 11 октября 2007

Аннотация

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

Введение

При работе с фонограммами записи речи наиболее важной задачей для звукоинженера является сделать звук как можно более комфортным и приятным для прослушивания. Конечно, при использовании профессионального оборудования для записи фонограммы, звук «от пульта» будет качественным с точки зрения технических параметров, таких как частота дискретизации (sample rate), количество бит на выборку (bit depth) и т.д. Однако, все эти технические параметры отвечают лишь за точность передачи исходного, «живого» звучания. При этом нельзя забывать, что вне зависимости от качества звукозаписывающего оборудования, существуют определенные факторы, влияющие на присутствующий в записанной фонограмме звук. Такими факторами являются: собственный электрический шум звукозаписывающего оборудования, электрический шум коммутационных устройств, шум окружения и т.д. Также необходимо учитывать особенности микрофонов, с помощью которых производится запись, поскольку не все микрофоны обладают одинаковой амплитудно-частотной характеристикой (АЧХ), т.е. некоторые могут передавать низкочастотные (0-300 Гц) или высокочастотные (3-20 кГц) звуки с меньшей громкостью, чем звуки в средней полосе частот или наоборот – передавать звуки в средней полосе частот с меньшей громкостью, чем высокочастотный и низкочастотные. Еще одним существенным фактором является громкость записи, которая зависит от собственной чувствительности микрофона, а также от настроек звукозаписывающего оборудования.

Все перечисленные факторы достаточно сильно влияют на звучание фонограммы. Поэтому, для получения приятного для прослушивания звука используется постобработка, которая обычно включает шумоподавление, частотную обработку и обработку уровня сигнала.

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

Существуют программные средства, позволяющие выполнить этот процесс в автоматизированном режиме, когда пользователь (звукоинженер) задает определенные параметры, по которым будет исключаться дыхание. Одним из таких средств является инструмент Noise Gate, реализованный в различных программных комплексах обработки цифровых фонограмм. Данный инструмент представляет собой программный шлюз, способный пропускать сигнал, имеющий амплитуду больше заданного пользователем значения и обращать в тишину (нулевой сигнал) все звуки, громкость которых меньше заданного значения. Необходимо заметить, что этот инструмент разрабатывался для общих целей исключения шумового фона в паузах полезного сигнала, поэтому при использовании его для исключения дыхания конечный результат может значительно отличаться от ожидаемого: некоторые фрагменты дыхания могут остаться не исключенными, а некоторые фрагменты полезного сигнала – обращенными в тишину. Но основным недостатком работы программного шлюза является то, что даже полезный сигнал, громкость которого ниже заданного порогового значения будет обращен в тишину. Такая ситуация может возникнуть, когда в тексте встречаются фрагменты, прочитанные тише, чем основной текст (шепотом).

Для того, чтобы избежать подобного рода дефектов обработки необходимо разработать методы исключения дыхания, на базе которых можно создать алгоритмы и построить программные средства.

Методы исключения дыхания

Можно выделить три основных метода исключения дыхания, которые обладают различной степень сложности и эффективности. Однако, все способы базируются именно на принципе работы программного шлюза, т.е. на основании амплитудного критерия выделяются фрагменты сигнала, которые можно считать паузой. Все методы ориентированы на работу с сигналом, представленным с помощью импульсно-кодовой модуляции (pulse-code modulation, PCM).

Первый способ использует разделение паузы на три основных блока: затухающий сигнал – это фрагмент окончания полезного сигнала, обладающий амплитудой меньше порогового значения, возрастающий сигнал – это фрагмент начала полезного сигнала, обладающий амплитудой меньше порогового значения и непосредственно сигнал в паузе. Этого можно достигается путем нахождения минимального значения амплитуды между фрагментами затухания и возрастания сигнала, как показано на рисунке 1.

Рисунок 1. Разделение  фрагмента паузы на области

Рисунок 1. Разделение фрагмента паузы на области

При этом каждый раз пороговое значение амплитудного критерия необходимо уменьшать, пока не будет принято такое значение, при котором нельзя найти ни одного фрагмента сигнала, амплитуда которого меньше заданного порогового значения. Тогда границей, разделяющей две области, будет «середина» фрагмента, найденного на предыдущей итерации. Также, нельзя забывать о том, что необходимо задавать критерий длительности для фрагментов, иначе каждый переход сигнала через ось времени будет считаться паузой (рисунок 2).

Рисунок 2. Переход сигнала через ось времени

Рисунок 2. Переход сигнала через ось времени

Далее весь анализ необходимо вести с сигналом в паузе, не затрагивая фрагменты затухания и возрастания полезного сигнала.

В данном способе анализ представляет собой сбор информации об экстремумах сигнала или о точках изменения направления, т.е. таких точках, до которых сигнал возрастал (убывал), а после которых стал убывать (возрастать). Значения амплитуды в найденных таким образом точках записываются и анализируются. Анализ уже полученных значений заключается в получении формы огибающей по этим значениям. В самом простом случае огибающая линия возрастает примерно до середины фрагмента паузы, а затем убывает. Однако, это не всегда так (рисунок 3), поэтому необходимо вводить дополнительные параметры, такие как допустимое отклонение, необходимо отслеживать резкие увеличения амплитуды, которые могут присутствовать и т.д. Наиболее простым способом, как в плане расчетов, так и в плане программной реализации, является разбиение паузы на равные части (минимум три), на которых значения в точках смены направления усредняются и сравниваются с соседними. В этом случае можно повысить скорость обработки фонограммы, но будет потеряна точность, что может привести к неверному результату.

Рисунок 3. Предполагаемая форма огибающей линии

Рисунок 3. Предполагаемая форма огибающей линии

Второй способ практически повторяет изложенные в первом способе принципе, с той лишь разницей, что здесь для анализа сигнала в паузе используется образец дыхания, а для анализа сигнала в паузе используется метод расчета взаимной корреляции сигналов.

Рассмотрим данный способ более подробно.

Поскольку задается образец дыхания, то весь анализ можно строить на определении «похожего» сигнала. Другими словами, можно узнать насколько похожими являются сигнал в анализируемой паузе и сигнал-образец. При этом поиск пауз происходит с помощью обычного амплитудного критерия. Здесь, также, накладываются достаточно жесткие требования на выделение фрагмента дыхания в качестве образца, поскольку неточное выделение может привести к включению в сигнал-образец частей полезного сигнала, что существенно повлияет на форму сигнала и, в частности, на определение взаимосвязи, т.е. могут быть исключены фрагменты полезного сигнала. Чем точнее задан сигнал-образец, тем точнее будет результат работы по исключению.

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

На рисунке 4 изображены два разных фрагмента дыхания, взятые из одной фонограммы. Как можно заметить, они очень похожи по форме. Поэтому можно использовать сигнал образец для определения дыхания в найденной паузе.

Метод поиска заключается в том, чтобы взять фрагмент сигнала в паузе той же длительности, что и сигнал-образец и найти взаимную корреляцию этих сигналов. При этом предполагается, что сигнал в паузе по длительности больше сигнала-образца. Исходя из этого предположения, в паузе может быть взято несколько фрагментов сигнала, для каждого из которых определяется взаимная корреляция с сигналом-образцом.

Рисунок 4. Фрагменты  дыхания, взятые из одной фонограммы

Рисунок 4. Фрагменты дыхания, взятые из одной фонограммы

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

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

При применении такого способа удобнее использовать выражение для расчета взаимной корреляции сигналов в фиксированном масштабе величин.

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

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

На рисунке 5 представлены амплитудные спектры сигналов, взятых из различных частей одной и той же фонограммы: амплитудный спектр полезного сигнала (речи), амплитудный спектр дыхания и амплитудный спектр тихой речи. Как можно заметить, амплитудные спектры этих сигналов значительно различаются, т.е. содержат одни и те же частоты, но с различной громкостью. При этом фрагменты фонограммы, содержащие дыхание имеют очень похожие амплитудные спектры (рисунок 6), поэтому для определения является ли анализируемый сигнал дыханием можно использовать амплитудный спектр.

Рисунок 5. Амплитудные  спектры сигналов голоса, дыхания и тихого голоса

Рисунок 5. Амплитудные спектры сигналов голоса, дыхания и тихого голоса

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

Рисунок 6. Взаимосвязь  амплитудных спектров дыхания в одной фонограмме

Рисунок 6. Взаимосвязь амплитудных спектров дыхания в одной фонограмме

Первый подход отличается высокой скорость обработки последовательностей данных, поскольку существует математический алгоритм быстрого расчета взаимной корреляции сигналов через расчет быстрого преобразования Фурье (БПФ). Но результат работы программной реализации такого алгоритма может оказаться недостаточно точным.

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

К недостаткам данного способа можно отнести то, что данный способ не предусматривает анализ сигнала по форме, скорее, данный способ ориентирован на анализ «содержания» сигнала, т.е. при включении во фрагмент паузы частей полезного сигнала, они будут удалены вместе с дыханием. Основным же плюсом такого способа является то, что есть возможность отличить речь от дыхания.

Заключение

Как видно, все рассмотренные способы обладают достоинствами и недостатками. Поэтому наиболее эффективным подходом является комбинация рассмотренных способов. Наиболее интересным при этом является способ разделения области найдено паузы на три фрагмента, получение амплитудного спектра сигнала в паузе и сравнение его с амплитудным спектром сигнала образца методом расчета взаимной корреляции.

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

На данный момент в программном виде реализован третий способ выделения и исключения дыхания из пауз речевых фонограмм.

Литература
  1. Афичер, Эммануил С., Джервис, Барри У. / Цифровая обработка сигналов: практический подход, 2-е издание. : Пер с англ. – М.: Идательский дом “Вильямс”, 2004;
  2. Алексей Лукин / Введение в цифровую обработку сигналов (математические основы) : Лаборатория компьютерной графики и мультимедиа, МГУ, 2002;
  3. Основы цифровой обработки сигналов: Курс лекций / Авторы: А.И. Солонина, Д.А. Улахович, С.М. Арбузов, Е.Б. Соловева / Изд. 2-е испр. и перераб. – СПб.: БХВ-Петербург, 2005;
  4. 4. Гарригус Скотт Р. / Sound Forge. Музыкальные композиции и эффекты: Пер. с англ. – СПб.: БХВ-Петербург, 2003.

Статья опубликована в журнале "Студенческая Аудитория". Выходные данные:

Кузнецов Д.С. Методы программного исключения фрагментов дыхания из цифровых фонограмм записи речи // Журн. студенческая аудитория. – 2007. – №2. – С. 26–29.



 

 





Яндекс.Метрика


Находится в каталоге Апорт
Анализ аудитории сайта

Производство рекламы
Промосервер
Каталог рекламных сайтов

 

Наш адрес: 109028 Москва,
Б. Трехсвятительский пер., 3
Тел.:  (495) 782-7544, 755 2812, 917-2337
Факс: (495) 917 3755
E-mail: order@audio-studio.ru

Спасибо