Математическое моделирование. Оптимальное управление Вестник Нижегородского университета им. Н.И. Лобачевского, 2012, № 5 (2), с. 63-66
УДК 534.87
АЛГОРИТМЫ СЖАТИЯ ЗВУКОВЫХ СИГНАЛОВ НА ОСНОВЕ ^-ПРЕОБРАЗОВАНИЯ
© 2012 г. В.Е. Гай, В.А. Утробин
Нижегородский государственный технический университет им. Р.Е. Алексеева
Поступила в редакцию 10.09.2012
Предлагаются методы сжатия звуковых сигналов на основе интегрально-дифференциального преобразования. Эффективность предложенных методов подтверждается результатами вычислительных экспериментов.
Ключевые слова: цифровая обработка сигналов, теория активного восприятия, отношение сигнал/шум.
Постановка задачи
Задача сжатия сигналов является одной из актуальных задач обработки сигналов. В работе предлагается несколько алгоритмов сжатия сигналов, основанных на ^-преобразовании [1].
Под сжатием данных понимается алгоритмическое преобразование данных, выполняемое с целью уменьшения их объёма. Основная характеристика алгоритма сжатия - коэффициент сжатия, определяемый как отношение объёма исходных несжатых данных к объёму сжатых. Таким образом, чем больше коэффициент сжатия, тем эффективнее алгоритм. Эффективность сжатия также оценивается разницей между исходным и сжатым сигналом. Для этого в работе используются два показателя: отношение сигнал / шум, и показатель, вычисляемый на основе интегрально-дифференциального преобразования [2].
^-преобразование
Предлагаемое решение задачи сжатия звуковых сигналов основано на использовании и-преобразования звукового сигнала [1]. и-пре-образование сигнала заключается в формировании многоуровневого (грубо-точного) представления сигнала с помощью фильтров Уолша системы Хармута, причём:
1) для построения каждого уровня разложения используются фильтры одинаковой длины, которые масштабируются до размера анализи-
руемого участка сигнала;
2) сначала фильтры применяются ко всему сигналу, затем - к его частям.
Прямое и-преобразование записывается следующим образом:
п = иц),
где I) = {Д/!. Ау - /-Й спектр, находящийся на г-м уровне разложения, г е [0; У - 1], J — количество уровней разложения, у е [0; Мг - 1], Мг -количество элементов на /-ом уровне разложения. Существует несколько алгоритмов построения и-разложения сигнала:
1) алгоритм формирования Личного дерева разложения сигнала (параметры алгоритма: 3 -количество уровней разложения, К - количество сегментов на / уровне, на которые разбивается сигнал на (/ - 1)-м уровне), в вершине дерева расположено разложение исходного сигнала,
М = К - 1;
2) алгоритм построения разложения сигнала на одном уровне с использованием сегмента произвольной длины (параметр алгоритма: Ь -длина сегмента);
3) алгоритм построения разложения сигнала на одном уровне, при формировании которого сигнал разбивается на заданное количество сегментов (параметр алгоритма: М - количество сегментов, на которое разбивается сигнал).
Обратное и-преобразование записывается следующим образом:
5" = и~1 [П],
где 5' - сигнал, полученный после выполнения
обратного преобразования, и 1 - оператор обратного преобразования.
Предлагаемые алгоритмы
Алгоритм сжатия 1. Разработанный алгоритм основан на обнулении коэффициентов разложения и сигнала и состоит из следующих шагов:
1) построение и-разложения В сигнала £ (формируется один уровень разложения, длина сегмента - Ь, Ь = Ж, Ж - количество используемых фильтров);
2) модификация разложения В: в каждом спектре разложения В обнуляются указанные коэффициенты;
3) выполнение обратного преобразования: генерация сигнала 5'.
Предположим, что разложение сигнала формируется с использованием 4 фильтров, тогда существует 15 вариантов обнуления коэффициентов фильтров (от 0000 до 1110, нумерация коэффициентов фильтров следующая: 0123).
Исследования показали, что обнуление нулевого коэффициента разложения сигнала приведёт к потере информации о форме сигнала (после обнуления сохраняется только высокочастотная составляющая сигнала). Таким образом, для решения задачи сжатия с помощью обнуления коэффициентов нельзя использовать комбинации, в которых обнулён нулевой коэффициент.
При использовании 10, 11 и 12 комбинаций в получаемые сигналы вносятся артефакты. Можно отметить, что чем больше число знако-перемен (переходов через ноль) у фильтра, тем более высокочастотную составляющую он позволяет выделить из сигнала. Таким образом, не рекомендуется обнулять спектральные коэффициенты, полученные с применением нулевого и первого фильтров, в противном случае, это приведёт не только к огрублению формы сигнала и сглаживанию высокочастотной составляющей, но и к внесению в сигнал различных артефактов. Таким образом, при сжатии сигнала будут использованы следующие комбинации спектральных коэффициентов: 1000 (9), 1100 (13), 1101 (14), 1110 (15). Сжатие в предлагаемом алгоритме осуществляется за счёт того, что выполняется хранение только некоторых элементов спектра.
Алгоритм сжатия 2. Разработанный алгоритм основан на огрублении сигнала:
1) построение и-представления В сигнала 5 (формируется один уровень разложения, длина
сегмента - Ь, Ь = Р • Ж, Р - целое число);
2) выполнение обратного преобразования и генерация сигнала 5': меняя длину сегмента Ь, можно генерировать сигнал Б' с различной степенью «огрубления».
3) интерполяция сжатого сигнала до размера исходного сигнала.
При использовании данного алгоритма сжатие выполняется за счёт того, что по сегменту сигнала длиной Ь генерируется Ж коэффициентов (Ж < Ь).
В качестве третьего алгоритма сжатия можно предложить алгоритм, основанный на комбинации первого и второго алгоритмов. В таком алгоритме одновременно будет выполняться обнуление коэффициентов и огрубление сигнала.
Вычислительный эксперимент
Рассмотрим результаты сжатия сигналов, полученные на основе предложенных алгоритмов. Исследование алгоритма проводится на двух тестовых сигналах (см. рис. 1).
а)
0 400 800 1200 1600 2000
б)
Рис. 1. Тестовые сигналы
Разработанные алгоритмы. В табл. 1 приведены результаты экспериментов по сжатию сигналов на основе предложенных алгоритмов. В столбце «Р» указано значение параметра Р второго алгоритма, в столбце «/» - номер используемой комбинации 4 фильтров.
Таблица 1
Результаты сжатия сигналов на основе предложенных алгоритмов
Р I К 1 2
ОСШ и ОСШ и
1 9 4 25.48 0.43 6.83 0.33
1 13 2 32.43 0.65 9.36 0.50
1 14 1.33 47.77 0.85 12.37 0.74
1 15 1.33 32.56 0.80 12.91 0.76
2 9 8 20.39 0.51 5.64 0.37
2 13 4 27.44 0.60 6.65 0.40
2 14 2.67 31.36 0.92 7.17 0.59
2 15 2.67 27.71 0.58 7.64 0.50
2 16 2 32.36 0.98 8.25 0.66
3 9 12 13.23 0.56 4.87 0.39
3 13 6 14.23 0.72 4.96 0.47
3 14 4 14.31 0.89 4.77 0.54
3 15 4 14.24 0.72 4.77 0.48
3 16 3 14.34 0.94 4.59 0.54
4 9 16 15.44 0.54 4.87 0.39
4 13 8 22.46 0.66 5.61 0.44
4 14 5.33 25.64 0.88 5.97 0.52
4 15 5.33 23.98 0.67 6.10 0.50
4 16 4 31.00 0.96 6.49 0.57
Предложенные алгоритмы вносят искажения в сжатый сигнал, в случае, если сигнал содержит быстро изменяющиеся по амплитуде участки (для некоторых значений параметров алгоритмов). Например, на рис. 2а, б показан один из неудачных результатов сжатия: после сжатия была искажена форма сигнала, причём для другого сигнала (см. рис. 2в, г) описанного эффекта не отмечено.
а)
в)
Вейвлет-сжатие. В табл. 2 приведены результаты экспериментов по сжатию сигналов на основе вейвлет-преобразования [3]. В столбце «Сигнал» указан номер тестового сигнала, в столбце «К» -коэффициент сжатия, в столбце «ОСШ» - оценка качества сжатия на основе отношения сигнал / шум, в столбце «и» - расстояние между исходным и сжатым сигналом [2], вычисленное на основе и-преобразования.
Таблица 2
Результаты сжатия на основе вейвлет-преобразования («coif2»)
Сигнал К ОСШ и
1 2 31.65 0.71
2 2 66.72 1.00
3 2 41.56 0.99
4 2 45.96 0.99
5 2 3.42 0.76
6 2 1.01 0.47
Алгоритм сжатия на основе классического преобразования Уолша. В табл. 3 приведены результаты экспериментов по сжатию сигналов на основе классического преобразования Уолша [4].
Таблица 3
Результаты сжатия (классический алгоритм)
Сигнал К ОСШ и Сигнал К ОСШ и
1 4 25.48 0.36 2 4 -1.03 0.33
1 2 32.43 0.61 2 2 2.93 0.50
1 1.3 32.56 0.78 2 1.3 7.23 0.75
0 400 800 1200 1600 2000
б)
г)
Рис. 2. Результат сжатия сигналов: сигнал 1: а) Р = 1,1 = 15; б) Р = 4, I = 9; сигнал 2: в) Р = 1,1 = 15; г) Р = 4, I = 9
Выводы по результатам экспериментов:
1) предложенные алгоритмы сжатия обеспечивают результат сжатия не хуже, чем алгоритм сжатия на основе вейвлет-преобразования, а в ряде случаев - показывают лучшие результаты;
2) при применении первого алгоритма сжатия наилучший результат обеспечивает использование 14 и 15 комбинаций обнуления коэффициентов;
3) при использовании второго алгоритма сжатия увеличение значения параметра Р приводит к снижению качества сигнала после сжатия.
Заключение
В работе описаны разработанные алгоритмы сжатия звуковых сигналов, основанные на и-преобразовании. Предложенные алгоритмы сравниваются с классическим алгоритмом сжатия на основе преобразования Уолша и алгоритмом сжатия на основе вейвлет-преобра-
зования.
Дальнейшие исследования в области применения U-преобразования к сжатию сигналов будут направлены на повышение коэффициента сжатия за счёт предварительной сегментации сигнала и отдельной последующей обработки каждого сегмента.
Список литературы
1. Утробин В.А. Физические интерпретации элементов алгебры изображения II Успехи физических наук. 2004. Т. 174. № 10. С. 1GS9-11G4.
2. Gai V.E. Signal comparison algorithm in terms of a priory uncertainty II Proceedings of Sth Open German-Russian Workshop «Pattern recognition and Image un-derstanding» (OGRW-S-2G11, November 21-26, 2011). - Nizhni Novgorod, 2011. P. 75-78.
3. Donoho D.L., Johnstone I.M. Ideal spatial adaptation by wavelet shrinkage II Biometrika. 1994. V. S1. P. 42З-4ЗЗ.
4. Beer T. Walsh transforms II American Journal of Physics. 19S1. V. 49. Issue З. P. 301-330.
AUDIO SIGNAL COMPRESSION ALGORITHMS BASED ON THE U-TRANSFORM
V.E. Gai, V.A. Utrobin
Audio signal compression methods based on the integral-differential conversion are proposed. The effectiveness of the proposed methods is proved by the results of computing experiments.
Keywords: digital signal processing, theory of active perception, signal-to-noise ratio.