p lr dsp a&v

44
НАЦИОНАЛЬНО ИССЛЕДОВАТЕЛЬССКИЙ УНИВЕРСИТЕТ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ КАЗАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ им. А.Н.ТУПОЛЕВА О.Г.МОРОЗОВ, Р.Р.САМИГУЛЛИН, Н.В.ДОРОГОВ, А.Р.НАСЫБУЛЛИН ЦИФРОВАЯ ОБРАБОТКА АУДИО И ВИДЕОСИГНАЛОВ Методические указания в лабораторным работам 731-734 Методические указания предназначены для бакалавров ИРЭТ, обучающихся по бакалаврской программе направления 210400 «Радиотехника», профиль «Аудиовизуальная техника» КАЗАНЬ 2010

Upload: studentkai

Post on 17-Jan-2015

212 views

Category:

Education


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: P lr dsp a&v

НАЦИОНАЛЬНО ИССЛЕДОВАТЕЛЬССКИЙ УНИВЕРСИТЕТ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯКАЗАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТим. А.Н.ТУПОЛЕВА

О.Г.МОРОЗОВ, Р.Р.САМИГУЛЛИН,

Н.В.ДОРОГОВ, А.Р.НАСЫБУЛЛИН

ЦИФРОВАЯ ОБРАБОТКА АУДИО И ВИДЕОСИГНАЛОВ

Методические указания в лабораторным работам

731-734Методические указания предназначены для бакалавров ИРЭТ, обучающихся по бакалаврской программе направления 210400

«Радиотехника», профиль «Аудиовизуальная техника»

КАЗАНЬ

2010

Page 2: P lr dsp a&v

2

Лабораторная работа №731Сравнительный анализ аудиофайлов

записанных с внешних источников звука

Цель работы • изучение возможностей редактирования звуковых

файлов в программном пакете Sound Forge;• изучение возможностей анализа звуковых файлов в

программном пакете Sound Forge;• изучение влияния частоты дискретизации и

разрядности квантования на качественные характеристики аудиофайлов.

Page 3: P lr dsp a&v

3

Sound Forge •Звуковой редактор Sound Forge компании Sonic Foundry считается

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

звуковой карты встроенной в процессорный блок или с CD, монтировать записанные фрагменты и обрабатывать их самыми разнообразными способами.

Рабочее окно программы

Окно данных

Каждый аудиофайл, открытый в Sound Forge, выводится в своем окне данных

Page 4: P lr dsp a&v

4

Меню программы

Диалоговое окно Record

Page 5: P lr dsp a&v

5

Создание новых аудиофайлов

• Для создание нового аудиофайла с помощью программы Sound Forge необходимо открыть пункт меню File -> New и определите атрибуты нового файла.

Порядок выполнение записи аудиосигнала

1. Выберите пункт меню File -> New для открытия диалогового

окна New Window, показанного на рис.

2. Выберите в раскрывающемся списке Sample rate (2.000 to

192.000 Hz) частоту сэмплирования для нового файла.

3. Выберите в группе Sample size разрядность для нового файла.

4. Определите в группе Channels, будет ли файл

монофоническим или стереофоническим.

5. Щелкните на кнопке ОК.

Page 6: P lr dsp a&v

6

Сохранение аудиофайлов

• 1. Выберите пункт меню File -> Save As для вывода диалогового окна Save As, показанного на рис. Обратите внимание, что это диалоговое окно имеет большую функциональность, чем стандартное диалоговое окно сохранения файлов операционной системы Windows.

Page 7: P lr dsp a&v

7

• 2. В раскрывающемся списке Save in найдите папку, в которой вы хотите сохранить файл, или в раскрывающемся списке Recent выберите одну из недавно использовавшихся папок.

• 3. Введите имя аудиофайла (если оно еще отсутствует) в поле File name.

• 4. Выберите в раскрывающемся списке Save as type тип сохраняемого аудиофайла.

• 5. В раскрывающемся списке Format выберите формат (РСМ, ADPCM и т. п.) сохранения аудиоданных.

• 6. Выберите в раскрывающемся списке Attributes те атрибуты (частоту сэмплирования, разрядность, моно или стерео), которые вы хотели бы использовать при сохранении аудиоданных.

• 7. Если вы уже создали области или список воспроизведения для вашего аудиофайла, вы можете сохранить эту информацию несколькими способами с помощью списка Rgns/Playlist. Если вы не хотите сохранять эту информацию, выберите из списка пункт Do Not Save Regions or Playlist. Если вы хотите оставить эти данные внедренными в файл (что возможно только для типов файлов Wave и AVI), выберите пункт Save Regions and Playlist in .WAV/.AVI files. Вы можете также сохранить информацию в отдельном файле в специальном формате внешнего списка воспроизведения (файл с расширением sfl) программы Sound Forge, в формате Session 8 (файл с расширением prm — для использования с продуктом Digidesign Session 8) или в формате Windows Media Script (файл с расширением txt — для использования с файлами Windows Media).

Page 8: P lr dsp a&v

8

8. Если вы сохраняете ваш файл как Microsoft Wave (расширение wav), Windows Media (расширение asf), Video For Windows (расширение avi), RealMedia (расширение rm), RealNetworks G2 (также расширение rm) или MPEG Audio (расширение трЗ), вы можете внедрить в файл итоговую информацию. Для этого установите флажок Save Summary Information in file (.WAV, .AVI, .ASF, .RM). 9. Чтобы отредактировать или просмотреть итоговую информацию для файла, щелкните на кнопке Summary, после чего откроется диалоговое окно Properties. 10. Отредактируйте поля Title, Subject, Engineer, Copyright и Comments. 11. Вы можете также присоединить к файлу рисунок, щелкнув на кнопке Picture. В диалоговом окне Open Picture просто выберите файл в формате Windows Bitmap (bmp), Windows Cursor (cur) или Windows Icon (ico) для присоединения, а затем щелкните на кнопке Open. 12. Если вы хотите включить в файл еще больше информации, щелкните на кнопке Extended для открытия диалогового окна Extended Summary. 13. В поле Fields располагается вся дополнительная информация, которую вы можете включить в файл. Чтобы включить в файл конкретную часть информации, установите соответствующий флажок. После этого введите текст с информацией в поле Contents. Чтобы увидеть описание каждого элемента, указанного в поле Fields, просто выделите элемент и прочтите описание в нижней части диалогового окна. 14. Щелкните на кнопке OK в диалоговом окне Extended Summary - Running water with very low frequencies. 15. Нажмите на кнопку OK в диалоговом окне Properties. 16. Если вы сохраняете файл как Microsoft Wave (wav) и включили в файл информацию сэмплерной петли, вы можете сохранить эту информацию, установив флажок Save Sampler Information in file. 17. Щелкните на кнопке Save для сохранения файла.

Page 9: P lr dsp a&v

9

Окно данных

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

Спектральный анализ

• Для проведения спектрального анализа аудиосигнала необходимо во вкладке Tools выбрать команду Spectrum analysis .

Page 10: P lr dsp a&v

10

• В результате выполнения данной команды, будет построен график

спектральных составляющих выбранного аудиофайла

Page 11: P lr dsp a&v

11

Практическая часть 1. Соединить внешний звуковой источник с компьютером. На компьютере

соединять с линейным входом (синий).2. Запустить программу Sound Forge. В программе создать новый файл. Меню

File → New.3. Нажать на кнопку «Record» в меню. В появившемся окне установить

параметры записи: 8000 Hz, 8-bit, Mono. Включить пункт меню «Монитор».4. Включить внешний звуковой источник.5. Включить проигрывание музыкальной композиции предложенной для

исследования.6. Убедиться в наличии сигнала в окне «Record». Нажать на кнопку записи,

записать один трек. Время записи одного фрагмента 1 мин.7. Сохранить записанный трек.8. Провести спектральный анализ полученной записи.9. Зарисовать полученный график.10. Нажать на кнопку «Record» в меню. В появившемся окне установить

параметры записи: 8000 Hz, 16-bit, Mono. Включить пункт меню «Монитор».11. Повторите пункты 4-9.12. Повторите пункты 4-11 для частоты 44100 Hz.13. Повторите пункты 4-12 для режима Stereo/14. Сделайте выводы.

Page 12: P lr dsp a&v

12

КОНТРОЛЬНЫЕ ВОПРОСЫ

• Какие возможности редактирования звуковых файлов предоставляет Sound Forge?

• Какие возможности анализа звуковых файлов предоставляет Sound Forge?

• Какими параметрами записи можно оперировать в Sound Forge?• Какую дополнительную информацию можно добавлять к сохраненным

файлам?• Как влияет частота дискретизации на спектральные характеристики

полученного цифрового аудиофайла?• Как влияет разрядность квантования на спектральные характеристики

полученного цифрового аудиофайла?• Какое влияние оказывает частота дискретизации и разрядность

квантования на субъективное восприятие аудиофайла.

Page 13: P lr dsp a&v

13

Лабораторная работа №732РАСЧЕТ ЦИФРОВЫХ ФИЛЬТРОВ В ПАКЕТЕ

MATLAB С УЧЕТОМ КВАНТОВАНИЯ

Целью работы является:•изучение возможностей проектирования

цифровых фильтров с помощью пакета fdatool из библиотеке Filter Desing;

•получение навыков проектирования цифровых фильтров;

•изучение характеристик цифровых фильтров, у которых все операции над данными выполняются с машинной точностью;

•изучение характеристик цифровых фильтров с учетом квантования по уровню.

Page 14: P lr dsp a&v

14

•Проектирование цифровых фильтров с помощью пакета Filter Desing

Главное окно программы fdatool

Page 15: P lr dsp a&v

15

- Low pass (нижних частот);*High pass (высоких частот);*Band pass (полосовой фильтр);*Band stop (режекторный фильтр);Область Filter type имеет еще

ниспадающее меню, в котором расположены специализированные цифровые цепи:

*Differentiator (диффенциатор);*Hilbert Transformer (преобразователи

Гильберта);*Multiband (многополосный фильтр) и т.д.

Программа fdatool предлагает следующие типы фильтров:

Page 16: P lr dsp a&v

16

В поле Filter Specifications заданы контуры АЧХ проектируемого фильтра, а в поле Freguency Speccifications и Magnutide Specifications требования к фильтру принимают конкретный вид, заданный соответствующими цифрами. Например, из полей Freguency Speccifications и Magnutide Specifications следует, что первая полоса задерживания простирается от 0 до 7200 Гц. при ослаблении - 80 Дб., а вторая полоса задерживания простирается от 12800 Гц. до 24000 Гц. при ослаблении - 80 Дб.

Параметр проектирующего фильтра, заданные в полях окна программы fdatool

Page 17: P lr dsp a&v

17

АЧХ проектируемого фильтра

Рис. Область Current Filter Information Рис. Меню Edit, подменю Convert Structure

Page 18: P lr dsp a&v

18

Меню Analysis делает доступным команды, позволяющие всесторонне охарактеризовать проектирующий фильтр:•Filter Specifications (спецификация фильтра);•Magnitude Response (амплитудно-частотная характеристика);•Phase Response (фазо-частотная характеристика);•Magnitude and Phase Response (АЧХ, ФЧХ);•Group Delay (групповое время задержки);•Impulse Response (импульсная характеристика);•Step Response (переходная характеристика);•Pole/Zero Plot (полюса и нули);•Filter Coefficients (коэффициенты фильтра);

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

Page 19: P lr dsp a&v

19

Программа fdatool имеет команду "Реализация модели" (Realize model) создающая mdl файлы, проектируемых фильтров.

В левой части окна имеются кнопки, управляющие разделом Quantization. Установим параметры квантования (Set Quantization Parameters).

В главном окне появиться новое поле, содержащее 3 пункта выбора: Double-precision floating-point, Single-precision floating-point, Fixed-point.

Page 20: P lr dsp a&v

20

АЧХ фильтра-прототипа и квантованного фильтра с конечной импульсной характеристикой

Параметры квантователя коэффициентов КИХ-фильтра

Page 21: P lr dsp a&v

21

АЧХ БИХ-фильтра

Параметры квантователя коэффициентов БИХ-фильтра

Page 22: P lr dsp a&v

22

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

определяются числовые характеристики, задающие параметры АЧХ.•Изучить разделы, в которых используются фильтры с конечной и

бесконечной импульсными характеристиками.•Изучить АЧХ характеристики наиболее распространенных типов фильтров.•Определить параметры проектируемого фильтра и способы их задания.

•Порядок выполнения работы•Для заданного варианта (табл.1) заполнить поля, определяющие параметры

АЧХ проектируемого фильтра.•Для фильтра с конечной импульсной характеристикой найти:•АЧХ.•ФЧХ.•Импульсную переходную характеристику.•Переходную характеристику.•Расположение нулей и полюсов.•Структурную схему фильтра и его коэффициентыДля определения вышеперечисленных характеристик следует войти в меню

Analysis или воспользоваться соответствующими кнопками, расположенными ниже главного меню.

Для определения структуры следует воспользоваться кнопкой Realize Model, расположенной снизу - слева. После нажатия этой кнопки становится активной вторая кнопка Realize Model, распложенная внизу главного окна программы fdatool. Воспользовавшись второй кнопкой Realize Model (предварительно поставив галочку на против «Bulid model»), получим mdl файл, определяющий структурную схему проектируемого фильтра (раскрывается двойным щелчком мыши).

Page 23: P lr dsp a&v

23

•Перенести структурную схему в отсчет.•Определить параметры фильтра с бесконечной импульсной характеристикой•АЧХ.•ФЧХ.•Импульсную переходную характеристику.•Переходную характеристику.•Расположение нулей и полюсов.•Структурную схему фильтра и его коэффициенты5. Определим характеристику FIR фильтра с учетом квантования. Для этого

воспользуемся кнопкой Set Quatization Parametrs. После выполнения этой команды открывается поле для построения характеристик фильтра с учетом квантования. Введем команду Fixed-point, делающую активными поля, в которых задаются требования к форме представления коэффициентов. В окне, представляющим АЧХ фильтров появится два графика. Один - определяет АЧХ, в которой коэффициенты передаточной функции заданы с машинной точностью, а второй график АЧХ - в коэффициентах которого учтены квантования по уровню.

•Вычислим АЧХ фильтра с учетом квантования при разрядности коэффициентов передаточной характеристики равном 8.

•Вычислим АЧХ фильтра с учетом квантования при разрядности коэффициентов передаточной характеристики равном 8 и применении функции Best-precision fraction lenth.

•Сравним характеристики цифровых FIR фильтров для трех вариантов расчета.Приступаем к проектированию IIR фильтров.

9. Выполняем пункты 5-8 применительно к IIR. фильтрам.10. Сравним характеристики FIR и IIR. фильтров и сделаем выводы.

Page 24: P lr dsp a&v

24

№ Fs F stopl F passl F pass2 F stop2 A stopl A pass A stop2

1 50000 8000 10000 12000 14000 60 1 802 60000 10000 12000 16000 20000 80 1 803 60000 8000 12000 16000 22000 80 1 604 60000 4000 12000 16000 26000 60 1 605 70000 10000 12000 16000 18000 60 1 606 80000 8000 9000 10000 11000 80 1 807 80000 10000 15000 25000 30000 40 1 408 100000 50000 60000 70000 80000 60 1 609 40000 10000 11000 15000 16000 80 1 8010 50000 12000 15000 20000 23000 40 1 4011 50000 13000 15000 20000 22000 40 1 4012 50000 14000 15000 20000 21000 40 1 4013 50000 14000 15000 20000 21000 80 1 8014 70000 18000 20000 30000 32000 80 1 8015 70000 18000 21000 29000 32000 80 1 8016 70000 18000 22000 28000 32000 80 1 8017 200000 40000 50000 60000 70000 60 1 6018 200000 45000 50000 60000 65000 60 1 6019 200000 46000 50000 60000 66000 60 1 6020 200000 47000 50000 60000 63000 60 1 6021 200000 47000 50000 60000 65000 60 1 60

Исходные данные для выполнения лабораторной работы

Page 25: P lr dsp a&v

25

Контрольные вопросы• Какой фильтр называется фильтром с конечной импульсной характеристикой

(КИХ-фильтр)?

•Какой фильтр называется фильтром с бесконечной импульсной характеристикой (БИХ-фильтр)?

•Какие типы КИХ и БИХ-фильтров присутствуют в пакета fdatool?

•Какими характеристиками описываются фильтры?

•Как сказывается на характеристиках КИХ-фильтра применение арифметики расчета фильтра с фиксированной точкой (fixed-point) и почему?

•Как сказывается на характеристиках КИХ-фильтра уменьшение разрядности коэффициентов квантования и почему?

•Как сказывается на характеристиках БИХ-фильтра применение арифметики расчета фильтра с фиксированной точкой (fixed-point) и почему?

•Как сказывается на характеристиках БИХ-фильтра уменьшение разрядности коэффициентов квантования и почему?

•Какой смысл функции Best-precision fraction lenth, и как ее применение сказывается на характеристиках КИХ и БИХ-фильтров?

Page 26: P lr dsp a&v

26

ЛАБОРАТОРНАЯ РАБОТА № 733ЦИФРОВАЯ ФИЛЬТРАЦИЯ РЕЧЕВЫХ

СИГНАЛОВ В ПАКЕТЕ MATLAB

Цель работы:

- освоение приемов фильтрации речевых сигналов с помощью пакета Matlab;

- освоение приемов НЧ фильтрации речевого сигнала, маскируемого белым шумом;

- освоение способов синтеза цифровых винеровских фильтров.

Page 27: P lr dsp a&v

27

100 300 1000 5000 Гц

Спектр речевого сигнала

Формантные области

Спектр белого шума воспринимается ухом человека в области частот 20-20000 Гц, его приближенно можно считать существующим в области частот 0-20000 Гц. Если осуществить фильтрацию аддитивной смеси речевого сигнала и шума с помощью НЧ фильтра, частота среза которого fc=3500 Гц, тогда мощность

помехи понизится в 20000/3500 = 5,7 раза (рис.3) или в 10log5,7=7,6 дБ.Рис. НЧ фильтрация речевого

сигнала

Page 28: P lr dsp a&v

28

Диалоговое окно Workspace

Фильтрация речевых сигналов с помощью пакета SPTool.

Импортируем речевой сигнал формата WAVE в программный пакет Matlab, для этого в меню File выберите вкладку Import Data… и откройте файл Speech.wav.

Прослушать загруженный речевой сигнал можно с помощью команды:wavplay(rech,44100);Ознакомление с фильтрацией звуковых сигналов начнем с программы SPTool.

Для активизации пакета SPTool нужно в командном окне программы Matlab набрать команду sptool.

Для импорта массива rech из среды Matlab необходимо:- в появившемся окне SPTool активизировать позицию меню «File– Import»;- в появившемся окне Import to SPTool выделите имя переменной rech и

перенесите переменную в строку Data, нажав на кнопку со стрелкой вправо;- укажите частоту дискретизации 44100;- введите имя сигнала rech;- нажмите кнопку OK.

После этого в диалоговом окне Workspace должен появится массив данных data и fs (рис.4), соответствующие исходному звуковому сигналу. Переименуйте data в rech для удобства дальнейшей работы. В окне Workspace отображается основная информация о звуковом файле: частота дискретизации Fs=44100 Гц; количество отсчетов

сигнала n=306940; моно; «double» – опция, указывающая на запись в формате 16 бит/отсчет.

Page 29: P lr dsp a&v

29

В результате в окне SPTool в разделе Signals появится вектор rech.Для просмотра формы сигнала нажмите кнопку View в разделе Signals – в

результате появится окно Signal Browser с графиком сигнала.Для прослушивания сигнала укажите вертикальными маркерами границы

прослушиваемого участка и нажмите пиктограмму с громкоговорителем.Вычислим спектр речевого сигнала, для этого в разделе Spectra окна SPTool

нажмите кнопку Create и в появившемся окне Spectrum Viewer задайте параметры спектрального анализа: Method – FFT (быстрое преобразование Фурье); Nfft - 50000.

После нажатия кнопки Apply появится график амплитудного спектра сигнала rech (рис.).

Спектр речевого сигнала

Page 30: P lr dsp a&v

30

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

Сформируем средствами SPTool КИХ-фильтр низких частот синтезированный методом окон Кайзера с граничной частотой 500 Гц, для этого в окне SPTool в разделе Filters нажмите кнопку New.

В появившемся окне Filter Designer:- задайте частоту дискретизации 44100;- выберите Algoritm - Kaiser Window FIR;- отключите флажок Minimum Order;- задайте Type - lowpass;- задайте частоту среза Fc = 500;- задайте Beta - 5;-нажмите кнопку Apply.

В результате будет сформирован нужный фильтр filt1 – его АЧХ будет показана в окне Filter Designer (рис.4), а его имя появится в окне SPTool в разделе Filters.

АЧХ фильтра НЧ Кайзера.

Page 31: P lr dsp a&v

31

Моделирование процесса фильтрации речевого сигнала сформированным фильтром производится следующим образом:

- в окне SPTool в разделе Signals выделите имя фильтруемого сигнала rech , а в разделе Filters – имя фильтра filt1.

- нажмите в разделе Filter кнопку Apply – в результате появится окно Apply Filter, в котором оставьте имя выходного сигнала таким, каким его предлагают, т.е. sig1, и нажмите кнопку OK.

В результате в окне SPTool появится имя вектора sig1 – это и есть результат фильтрации. Просмотреть форму сигнала sig1 и его спектр можно точно так же, как это делалось для исходного сигнала rech.

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

Повторите проделанные действия для высокочастотного (ФВЧ) фильтра с частотой среза 500 Гц и для полосового фильтра (ПФ) с частотами среза 500 Гц и 3000 Гц. Метод синтезирования фильтра используйте прежний - Kaiser Window FIR. Определите какой из использованных фильтров дал наилучшую разборчивость речевого сигнала, сделайте выводы.

Page 32: P lr dsp a&v

32

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

Располагая массивом rech, далее проделаем следующие действия:- оценим стандартное отклонение речевого сигнала (среднее на интервале

существования сигнала);- сгенерируем отрезок дискретного белого гауссовского шума с утроенным

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

полученной смеси будет равно 1/9 (-10 дБ).Команды Matlab для реализации таких действий:std_rech=std(rech); % измерение станд.откл. речевого сигналаstd_noise=3*std_rech; % станд.откл. шумаn=std_noise*randn(length(rech),1); % генерирование шумаrech_noise = rech+n; % аддитивн.смесьПрослушаем полученную смесь:wavplay(rech_noise,44100);НЧ фильтрацию этой смеси удобно реализовать с помощью программы

sptool, которая вызывается из командного окна командой:sptoolДля того, чтобы такая обработка сигналов стала возможной, сигнал

rech_noise следует импортировать в среду программы sptool. Просмотрите форму и спектр сигнала. Сформируйте НЧ фильтр (КИХ фильтр с окном Кайзера, частота среза 4000 Гц, частота дискретизации 44100 Гц,

=3, порядок фильтра 34) и примените его для фильтрации сигнала rech_noise .

Page 33: P lr dsp a&v

33

Синтез оптимального цифрового Винеровского КИХ фильтра методом обратного преобразования Фурье.

( )zG f ( )nG f

Синтез винеровского фильтра в среде Matlab осуществим с помощью функции fir2, позволяющей синтезировать цифровые КИХ фильтры с АЧХ значительно более сложной формы. При этом, в сущности, требуемая АЧХ задается массивами значений частоты и соответствующих значений АЧХ.Для измерения спектров смеси

используем оценку Уэлча (Welch) с параметрами: длина сегментов и длина весового окна Хэннинга Nfft=Nwin=1024; сегменты перекрываются на 512 отсчетов. Таким образом, разрешающая способность спектрального анализа равна 44100/1024=43 Гц (что близко к минимальной ширине критической полосы слуха).

и помехи

Fs=44100; nfft = 1024; window = hanning(nfft); noverlap = 512; % параметры окна Хэннинга

[Gz,fz] = pwelch(rech_noise,window,noverlap,nfft,Fs); % оценка спектра смесиplot(fz(1:128),Gz(1:128));title('Спектр мощности смеси, Gz');xlabel('Частота, Гц');ylabel('Уровень');figure; [Gn,fn] = pwelch(n,window,noverlap,nfft,Fs); % оценка спектра помехиplot(fn(1:128),Gn(1:128));title('Спектр мощности помехи, Gn');xlabel('Частота, Гц');ylabel('Уровень');Примерный вид графиков оценок спектров смеси

Page 34: P lr dsp a&v

34

Оценка спектра помехи

Оценка спектра смеси

Page 35: P lr dsp a&v

35

Оценка требуемой АЧХ винеровского фильтра

( )H ffigure; H=abs(1-Gn./Gz);plot(fz(1:128),H(1:128));title('Оценка АЧХ винеровского фильтра, H');xlabel('Частота, Гц');ylabel('Уровень');Синтез винеровского фильтра 34-го порядка осуществим с помощью функции

fir2:f=fz/22050; m=H;a=fir2(250,f,m); % 34 – порядок фильтра[h,w]=freqz(a,1); % АЧХ синтезированного фильтраfigure; plot(w(1:180)*22050/pi,abs(h(1:180)));title('АЧХ синтезированного винеровского фильтра, H');xlabel('Частота, Гц');ylabel('Уровень');

Оценка требуемой АЧХ винеровского фильтра Синтезированная

АЧХ (34 порядок)

Page 36: P lr dsp a&v

36

Синтезированная АЧХ (250 порядок)

Произведем теперь цифровую фильтрацию смеси сигнала с шумом, используя коэффициенты синтезированного винеровского КИХ фильтра 250-го порядка.

rech2_denoise_10dB_wien250_spec=filter(a,1,rech_noise);

Page 37: P lr dsp a&v

37

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

Контрольные вопросы•Что такое форманты речи?•Как сказывается на разборчивость речи применение ФНЧ (частоты среза

500 и 3000 Гц) и почему?•Как сказывается на разборчивость речи применение ФВЧ (частота среза

500 Гц) и почему?•Как сказывается на разборчивость речи применение ПФ (частоты среза 500

и 3000 Гц) и почему?•Насколько эффективно использование ФНЧ для фильтрации аддитивного

шума и почему?•Что такое Винеровский КИХ-фильтр?•Насколько эффективно использование Винеровского КИХ-фильтра для

фильтрации аддитивного шума и почему?•Как сказывается на разборчивость речи применение Винеровского КИХ-

фильтра и почему?

Page 38: P lr dsp a&v

38

ЛАБОРАТОРНАЯ РАБОТА № 734 ЦИФРОВАЯ ФИЛЬТРАЦИЯ В ЗАДАЧАХ УЛУЧШЕНИЯ

ИЗОБРАЖЕНИЙ

Целью работы является:

•изучение методов фильтрации изображений от шумов в пакете Matlab;

•изучение генераторов шума в пакете Matlab;

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

Page 39: P lr dsp a&v

39

Существует несколько основных причин появления шума, которые зависят также от способа формирования изображений. Например:

- если изображение получено путем сканирования фотографической пленки, то зерна пленки являются источником шума. Появление шума может объяснятся также повреждением самой пленки или вносится сканирующим устройством.

- если изображение захвачено в цифровом формате, то механизм формирования данных (CCD-детектор, квантирование) является источником шума.

- электронная передача данных изображения также может быть источником шума.

Matlab обеспечивает несколько путей полного или частичного устранения шума на изображениях. Для устранения различных видов шума разработаны различные методы. Среди них:

•Использование медианной фильтрации; •Использование адаптивной фильтрации.

Page 40: P lr dsp a&v

40

Моделирование шума в Matlab. Добавить шум к изображению можно с помощью команды:

J = imnoise(I,type)J = imnoise(I,type,parameters)Строковая переменная type может принимать одно из значений: •'gaussian' - для гауссового белого шума;•'localvar' - для гауссового белого шума с нулевым математическим ожиданием

и мощностью, зависящей от яркости;•'poisson' – пуассоновский шум;•'salt & pepper' – для шума в виде черных и белых пикселов («соль и перец»);•'speckle' – для мультипликативного шума.Строковая переменная parameters дополнительно задает параметры

соответствующего типа шума.

Например: J = imnoise(I,'gaussian',m,v) – добавление к изображению I гауссового БШ со

средним m и дисперсией v. По умолчанию задается m=0, v=0.01. J = imnoise(I,'localvar',V) - добавление к изображению I гауссового БШ с

нулевым m и локальной дисперсией V (должен являться массивом того же размера, что и I).

J = imnoise(I,'localvar',image_intensity,var) - добавление к изображению I гауссового БШ с нулевым m и локальной дисперсией var, где var является функцией интенсивности I. image_intensity и var – векторы одинакового размера, так что график plot(image_intensity,var) изображает функциональную зависимость между дисперсией шума и интенсивностью изображения.

Page 41: P lr dsp a&v

41

Вектор image_intensity должен содержать нормализованные интенсивности в диапазоне от 0 до 1.

J = imnoise(I,'poisson') – генерирует пуассоновский шум из данных, вместо того чтобы добавлять к данным искусственный шум.

J = imnoise(I,'salt & pepper',d) – параметр d есть плотность шума. В результате генерируется примерно d*prod(size(I)) пикселей шума. По умолчанию d=0.05.

J = imnoise(I,'speckle',v) – к изображению I добавляется мультипликативный шум, в соответствии с выражением J = I+n*I, где n – равномерно распределенный случайный шум с нулевым средним и дисперсией v. По умолчанию v=0.04.

I может принадлежать классу uint8, uint16, или double. Результирующее изображение J принадлежит тому же классу, что и I.

Пример:I = imread('eight.tif');J = imnoise(I,'salt & pepper',0.02);imshow(I);title('Исходное изображение');figure, imshow(J) ; title('Зашумленное изображение');

Page 42: P lr dsp a&v

42

Применительно к помехе «соль и перец», пример с которой рассмотрен выше, весьма эффективны медианные фильтры.

Команда выполнения медианной фильтрации:B = medfilt2(A,[m n])B = medfilt2(A)B = medfilt2(A,'indexed',...)Простейшая команда B = medfilt2(A) означает применение к изображению

двумерного медианного фильтра в виде размером 3х3.Команда B = medfilt2(A,[m n]) означает применение к изображению двумерного

медианного фильтра в виде размером mхn.Команда B = medfilt2(A,'indexed',...) применяется к индексному изображению.Пример:K_med = medfilt2(J);imshow(J)figure, imshow(K_med)title('Фильтрованное изображение');Результат медианной фильтрации показан на рис.

Page 43: P lr dsp a&v

43

Функция wiener2 лучше работает с "белым" шумом, например гауссовским. Команды:K_gaus = wiener2(J_g,[m n],noise)[K_gaus,noise] = wiener2(J_g,[m n])Команда [K_gaus,noise] = wiener2(J_g,[m n]) позволяет вычислить мощность

noise гауссового шума в окрестности матрицы mхn пикселов.Команда K_gaus = wiener2(J_g,[m n],noise) реализует винеровскую

фильтрацию.Пример:J_g = imnoise(I,'gaussian',0,0.005);K_gaus = wiener2(J_g,[5 5]);figure, imshow(J_g)title('Зашумленное изображение (гаус.помеха)');figure, imshow(K_gaus)title('Фильтрованное изображение (гаус.помеха)');Результат зашумления и последующей фильтрации гауссового шума показан

на рис.

Page 44: P lr dsp a&v

44

Порядок выполнения работы1. Переместить в рабочее пространство пакета Matlab тестовое изображение “lena”. Для этого требуется ввести I = imread('lena.tif').2. Добавить к изображению гауссовый белый шум (изображение I_gwn), пуассоновский шум (изображение I_pn), шум «соль и перец» (изображение I_snp) и мультипликативный шум (изображение I_mn).3. Применить ко всем зашумленным изображениям медианный и адаптивный фильтр.4. Выявить для каждого вида шума наиболее оптимальный метод фильтрации.

Контрольные вопросы•Причины возникновения шумов в изображении.•Типы шумов, доступные для генерирования в пакете Matlab.•Дополнительные параметры генерирования для каждого типа шума.•Что такое медианная фильтрация?•Что такое адаптивная (винеровская) фильтрация?•Какой тип фильтрации предпочтителен для устранения гауссового белого шума?•Какой тип фильтрации предпочтителен для устранения пуассоновского шума и почему?•Какой тип фильтрации предпочтителен для устранения шума «соль и перец» и почему?•Какой тип фильтрации предпочтителен для устранения мультипликативного шума и почему?