Глава 3. Реализация метода и анализ полученных результатов



 

Реализация метода в программной среде Matlab

В процессе разработки программы, представляющей собой реализацию исследуемогометода, были реализованы все алгоритмы, указанные выше (см. Глава 2). В качестве языка программирования был выбран язык Matlab, использующийся в соответствующей системе. Выбор обусловлен достаточной гибкостью данного языка. Достаточно сказать, что данный язык получил широкое распространение в решении задач, связанных с обработкой сигналов, анализом данных, машинным обучением, распознаванием образов.Для реализации алгоритма сжатия данных RLE был выбран язык Python.

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

Из-за большого объёма написанного программного кодалистинг всей программы был вынесен в раздел Приложения.

В языке Matlab каждая функция содержится в отдельном файле с расширением .m, название которого должно совпадать с названием функции. Каждая функция написанной программы содержит определённую смысловую нагрузку.Вызов всех основных функций метода был осуществлён в файлеmain.m.В качестве формата сжатого исходного wav-файла вводятся следующие расширения:

· Файл, сжатый одним вокодером LPC-10, сохраняется с расширением .lpc;

· Файл, сжатый одним вокодером 9.6 kbpsCELP, сохраняется с расширением .celp96;

· Файл, сжатый одним вокодером 16kbpsCELP, сохраняется с расширением .celp16;

· Файл, сжатый разработанным методом, сохраняется с расширением .cmpr;

· Файл, сжатый дополнительно обоими вариантами алгоритма RLE, сохраняется с расширением .rle.

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

В системе Matlabсчитывание wav-файлов происходит с помощью функции audioread:

[inspeech, Fs]=audioread(Inputsoundfile); % читаем wav-файл

    В переменной Fs будет храниться частота дискретизации, а в переменной inspeech–матрица размера , где –количество отсчётов в исходномwav-файле, –число каналов. При использовании стерео-записи количество каналов будет равно двум.

Будем рассматривать только моноканальные записи. Т. е. переменная inspeechбудет являться матрицей размера , где –количество отсчётов в исходномwav-файле. Частота дискретизации в рассмотренных файлах равна 8000 Гц.

Обозначим первый вариант алгоритма сжатия RLE как RLE1, а второй вариант этого алгоритма – как RLE2.

 


Дата добавления: 2018-06-27; просмотров: 425; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!