МІНІСТЕРСТВО ОСВІТИ УКРАЇНИДЕРЖАВНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА"
М Е Т О Д И Ч Н І В К А З І В К И
до практичних та лабораторних робіт з курсу
"Комп'ютерні засоби обробки сигналів та зображень"
для студентів спеціальностей
7.091501 - "Комп'ютерні та інтелектуальні системи і мережі",
7.091502 - "Технологія проблемного та системного програмування",
7.091505 - "Комп'ютерні системи медичної та технічної діагностики",
7.091506 - "Спеціалізовані комп'ютерні системи"
Затверджено на засіданні кафедри електронно-обчислювальних машин.
Протокол №15 від 22.04.1996р.
Львів 1996
Методичні вказівки до практичних та лабораторних робіт з курсу "Комп'ютерні засоби обробки сигналів та зображень" для студентів спеціальностей 7.091501 - "Комп'ютерні та інтелектуальні системи і мережі", 7.091502 - "Технологія проблемного та системного програмування", 7.091503 - "Комп'ютерні системи медичної та технічної діагностики", 7.091506 - "Спеціалізовані комп'ютерні системи" /Упор. А.О.Мельник, М.М.Яцимірський. - Львів: Державний Університет "Львівська Політехніка", 1996. - 12с.
Упорядники: А.О.Мельник, д.т.н., проф.,М.М.Яцимірський, к.т.н., доц.
Відповідальний за випуск А.О.Мельник, д.т.н., проф.,
Рецензент В.В.Троценко , к.т.н., доц.
1. В С Т У П
Ці методичні вказівки охоплюють весь цикл практичних і лабораторних робіт з курсу "Комп'ютерні засоби обробки сигналів та зображень".
Мета циклу - глибше ознайомити студентів з основними методами побудови швидких алгоритмів цифрової обробки сигналів та зображень(ЦОСЗ), на конретних прикладах показати їх переваги, на прикладі програмованих процесорів продемонструвати комплексність підходу при розробці засобів ЦОСЗ, що передбачає взаємно пов'язану оптимізацію структури алгоритмів та архітектури комп'ютера, за узагальненим критерієм "точність-швидкодія".
2. ПОПЕРЕДНІ ВІДОМОСТІ
Виділення ЦОСЗ як окремої області науки обумовила поява швидкодіючих комп'ютерів, а також зростаюча потреба застосування її методів в багатьох галузях техніки і при наукових дослідженнях. В даний час ЦОСЗ застосовується в біомедицині, акустиці, звуковій локації, радіолокації, сейсмології, системах передачі даних, технічній і медичній діагностиці, ядерних технологіях, робототехніці, системах мультимедіа тощо.
Суть ЦОСЗ як області науки пролягає у розв'язку на обчислювальній машині чотирьох основних задач: перетворення сигналів за деякою математичною фунцією до вигляду, що зручніший за наперед визначеним критерієм, наприклад, фільтрація сигналу; виділення певного набору параметрів сигналу, наприклад, ознак в системах медичної і технічної діагностики; внесення в сигнали та зображення корисної інформації; формування сигналів та зображень із заданими параметрами, наприклад при побудові цифрових генераторів сигналів.
Основні переваги ЦОСЗ полягають в: можливості реалізації складних методів та алгоритмів ЦОСЗ, недоступних для аналогових пристроїв; забезпеченні високої точності обробки; гнучкості і універсальності засобів, розвиненому користувацькому інтерфейсові тощо.
Головна проблема ЦОСЗ полягає у підвищенні швидкодії при реалізації певного набору математичних операцій над сигналами та зображеннями.
3. БАЗОВІ АЛГОРИТМИ ЦОСЗ
Характерна особливість ЦОСЗ полягає в її стуктурованості.
1). Математичні методи ЦОСЗ можна подати у вигляді скінченного набору узагальнених алгоритмів верхнього рівня - базових процедур ЦОСЗ. Наприклад, процедури фільтрації, спектрального аналізу, інтерполяції, апроксимації є базовими.
2). Базові процедури, як правило, зводяться до порівняно невеликого набору алгоритмів, що реалізують їх окремі частини - базових алгоритмів ЦОСЗ. Наприклад, алгоритми обчислення згортки, швидкого перетворення Фур'є, сортування даних, виконання арифметичних операцій та математичних перетворень над векторними і матричними даними є базовими.
3). Базові алгоритми, у свою чергу, можуть бути подані у вигляді обмеженого набору базових операцій-алгоритмів нижнього рівня, називатимемо їх базовими операціями. Це, зокрема, операція накопичення добутків чисел, базові операції алгоритмів швидкого перетворення Фур'є, арифметичні і математичні операції над скалярними величинами.
4). При ЦОСЗ маємо справу зі структурованими у вигляді векторів, матриць чи багатовимірних масивів даними. Тут над інтенсиним потоком однотипних даних виконується певний, достатньо обмежений набір базових операцій ЦОСЗ, що дає змогу будувати ефективні алгоритми і засоби їх реалізації.
У загальному випадку в ЦОСЗ процедури, алгоритми і базові операції розглядають як єдине ціле, узагальнено називаючи їх базовими алгоритмами ЦОСЗ. Спеціалізація комп'ютерних засобів на реалізацію алгоритмів ЦОСЗ дозволяє досягти продуктивність на 2-3 порядки вищу порівняно з універсальними комп'ютерами.
4. МЕТА ПРАКТИЧНИХ ТА ЛАБОРАТОРНИХ РОБІТ
Мета робіт полягає в одержанні практичних навиків синтезу базових алгоритмів ЦОСЗ, а також їх структурної оптимізації до архітектури обчислювальних засобів на прикладі програмованих процесорів сигналів та зображень (ППСЗ).
В результаті виконання робіт студенти повинні засвоїти, що при вирішенні задач ЦОСЗ необхідний глибоко продуманий, прискіпливий вибір математичного і алгоритмічного забезпечення та засобів їх реалізації як єдиного цілого. При цьому піддаються аналізу не тільки основні затрати, пов'язані з арифметичними операціями, але і допоміжні затрати на саму організацію обчислювального процесу, ввід даних, індексацію тощо.
Функція викладача полягає в уточнені критичних вимог до алгоритмів, методів і методик синтезу алгоритмів, наведенні типових прикладів, видачі індивідуального завдання кожному студентові та перевірці його виконання.
Робота студента включає розробку алгоритму у відповідності із завданням, теоретичну оцінку його обчислювальних характеристик, проведення модельних розрахунків, оптимізацію алгоритму у відповідності зі системою команд універсального комп'ютера і ППСЗ, проведення порівняльного аналізу обидвох варіантів реалізації, визначеня перспективної елементної бази для реалізації алгоритмів, підготовку звіту.
5. ТЕМИ ПРАКТИЧНИХ ЗАНЯТЬ
5.1. Вступне заняття.
5.2. Обчислення математичних функцій. Похибки в методах та алгоритмах ЦОСЗ. Ефекти квантування.
5.3. Прямі та побічні алгоритми перестановки даних. Сортування даних.
5.4. Обчислення елементарних та математичних функцій. Оцінка складності обчислювальних алгоритмів.
5.5. Швидкі алгоритми обробки даних. Обчислення дискретних тригонометричних перетворень. Транспонування матриці.
5.6. Стиск та інтерполяція сигналів та зображень.
5.7. Згортка. Фільтрація сигналів та зображень. Гомоморфна обробка.
5.8. Спектрально-кореляційний і статистичний аналіз сигналів.
6. ТЕМИ ЛАБОРАТОРНИХ РОБІТ
6.1. Вступне заняття.
6.2. ЛР № 1 "Аналіз обчислювальної похибки. Базові операції алгоритмів ЦОСЗ. Обчислення математичних функцій".
Варіанти завдань:
1) базова операція алгоритму швидкого перетворення Фур'є за основою два;
2) базова операція алгоритму швидкого косинусного перетворення;
3) множення чисел;
4) схема Горнера;
5) корінь квадратний;
6) схеми обчислення математичних функцій через розклад в ланцюгові дроби;
7) ділення чисел;
8) обчислення тригонометричних функцій;
9) додавання чисел.
Примітка. Досліджується робота в режимах з плаваючою і фіксованою комою на універсальних комп'ютерах і ППOС.
6.3. ЛР № 2 "Сортування даних, пошук екстремальних значень. Аналіз характеристик алгоритмів ЦОСЗ".
Варіанти завдань:
1) сортування вектора за законом парні-непарні елементи;
2) сортування вектора за законом двійкової інверсії адрес;
3) сортування вектора за законом неспадної послідовності;
4) сортування вектора за законом незростаючої послідовності;
5) сортування матриці за законом двійкової інверсії адрес;
6) транспонування матриці;
7) екстремальна фільтрація зображень;
8) медіанна фільтрація зображень
Примітка. Елементами даних є цілими числами.
6.4. ЛР № 3-4 "Швидкі алгоритми обчислення дискретних тригонометричних перетворень".
Варіанти завдань:
1) швидке перетворення Фур'є за основою два, послідовність - дійсна;
2) швидке перетворення Фур'є за основою два, послідовність - комплексно-спряжена;
3) швидке перетворення Хартлі за основою два з часовим прорідженням;
4) швидке перетворення Хартлі за основою два з частотним прорідженням;
5) швидке перетворення Хартлі за методом Рейдера-Бреннера з часовим прорідженням;
6) швидке перетворення Хартлі за методом Рейдера-Бреннера з частотним прорідженням;
7) швидке перетворення Хартлі за розщепленою основою два-чотири з часовим прорідженням;
8) швидке перетворення Хартлі за розщепленою основою два-чотири з частотним прорідженням;
9) швидке пряме косинусне перетворення;
10) швидке обернене косинусне перетворення.
Примітка. Розглянути два варіанти: роботу в арифметиці з фіксованою та плаваючою комою.
6.5.ЛР № 5-6 "Фільтрація і кореляція сигналів та зображень".
Варіанти завдань:
1) Згортка сигналів через перетворення Хартлі.
2) Згортка сигналів через перетворення Фур'є.
3) Секціонована згортка.
4) Автокореляційна функція сигналу.
5) Функція взаємної кореляції сигналів.
6) Пряма та побічна згортка зображення.
7) Автокореляційна функція зображення.
8) Функція взаємної кореляції зображень.
9) Фільтрація зображень у фіксованій апертурі.
Примітка. Порівнються прямі та побічні (швидкі) алгоритми.
7. ДАНІ ДЛЯ ТЕСТУВАННЯ
Вибір тестових прикладів є одним із основних етапів розробки та вдосконалення алгоритмів і програм. У відповідності з темою лабораторної роботи студент повинен самостійно вибрати і узгодити з викладачем конретний вигляд даних для тестування програм.
При цьому при обробці сигналів та окремих їх відліків слід віддавати перевагу сигналам, що описуються тригонометричними, експоненціальними і імпульсними функціями.
Правильність роботи алгоритмів, що реалізують прямі методи, рекомендується перевіряти безпосередньою перевіркою на прикладах невеликої розмірності.
Швидкі алгоритми перевіряють порівнюючи результати обчислень, отримані за допомогою прямих і швидких алгоритмів.
Тестові зображення у вигляді файлів задаються викладачем або вибираються студентом і узгоджуються з викладачем. Методика підбору тестових прикладів тут аналогічна.
8. ВИМІРЮВАННЯ ЧАСУ РОБОТИ ПРОГРАМИ
При роботі на універсальному комп'ютері вимірювання часу роботи програм проводиться з допомогою уніфікованих підпрограм чи функцій, котрі надаються викладачем. Якщо контрольований сегмент програми потребує невеликої кількості обчислень, то він "зациклюється" так, щоби час його виконання був співмірний з десятками секунд. Вибрана кількість циклів враховується при визначенні часу роботи контрольованого сегменту програми. Рекомендується виконувати порівняльні контрольні заміри в процесі одного сеансу роботи з комп'ютером.
При роботі з ППОС підраховується кількість машинних циклів.
9. ОФОРМЛЕННЯ ЗВІТУ
Звіт оформляється і здається викладачеві до початку наступної лабораторної роботи чергового модульного контролю. Він повинен містити такі розділи:
- опис альтернативних алгоритмів розв'язку задачі;
- опис тестового прикладу;
- стислий опис (чи перелік) використаних методів і методик оптимізації;
- роздрук програм;
- висновки про переваги та недоліки алгоритмів;
- рекомендації по вибору елементної бази.
Примітка. Зміст звіту може уточнюватися в інструкціях до лабораторних робіт.
ЛІТЕРАТУРА
1. Ахо А., Хопкроф Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. - М.:Мир, 1979. - 539 с.
2. Бахвалов Н.С. Численные методы. - М.:Наука, 1973. - Ч.1. - 632 с.
3. Брейсуэлл Р.Н. Преобразование Хартли: Пер с англ. - М.:Мир, 1990. - 175 с.
4. Быстрые алгоритмы в цифровой обработке изображений/ Т.С.Хуанг, Дж.-О. Эклунд, Г.Дж.Нуссбаумер и др.; Под ред. Т.С.Хуанга: Пер. с англ.- М.:Радио и связь, 1984. - 224 с.
5. Залманзон Л.А. Преобразование Фурье, Уолша, Хаара и их применение в управлении, связи и других областях.- М.: Наука. Гл. ред. физ.-мат. лит., 1989.- 496 с.
6. Кнут Д. Искусство программирования для ЭВМ. Сортировка и поиск /Пер. с англ. Г.П.Бабенко, Ю.М.Баяковского; Под ред. К.И.Бабенко, В.С.Штарктмана. - М.:Мир, 1978. - 844 с.
7. Мельник А.А. Процессоры обработки сигналов.-Львов, 1989. 63с. (Препринт/АН УССР. Ин-т прик. проблем механики и математики; N 29-89).
8. Мельник А. О. Однокристальні програмовані процесори обробки сигналів. - Львів, 1996.- 75с.
9. Мельник А. О. Комп'ютерні системи реального часу. - Львів, 1996.- 64с.
10. Мельник А.О., Яцимірський М.М. Цифрова обробка сигналів і зображень. - Львів, 1996.- 164с.
11. Прэтт У. Цифровая обработка изображений:Пер. с англ.М.:Мир, 1982 - Кн.1. - 312с., Кн.2. - 480 с.
12. Рабинер Л., Гоулд Б. Теория и применение цифровой обработки сигналов /Пер. с англ. А.Л.Зайцева, Э.Г.Назаренко, Н.Н.Тетекина; Под ред. Ю.Н.Александрова. - М.:Мир, 1978. - 848 с.
13. Сверхбольшие интегральные схемы и современная обработка сигналов: Пер. с англ.- М.: Радио и связь, 1989.- 472с.
14. Справочник по устройствам цифровой обработки информации/ Н.А.Виноградов, В.Н.Яковлев, В.В.Воскресенский и др.- К:Техника, 1988.- 455с.
15. Цифровой процессор обработки сигналов TMS32010 и его применение/Под ред. А.А.Ланнэ.-Л.:ВАС,1990.-296 с.
16. Шрюфер Е. Обробка сигналів. Цифрова обробка дискретизованих сигналів.- К.: Либідь, 1992.- 226с.
17. S. K. Mitra, J. F. Kaiser, Handbook For Digital Signal Processing. Wiley, New York, 1993.
З М І С Т
1. Вступ
2. Попередні відомості
3. Базові алгоритми ЦОСЗ
4. Мета практичних та лабораторних робіт
5. Теми практичних занять
6. Теми лабораторних робіт
7. Дані для тестування
8. Вимірювання часу роботи програми
9. Оформлення звіту
10. Література
Навчальне видання
Методичні вказівки до практичних та лабораторних робіт з курсу "Комп'ютерні засоби обробки сигналів та зображень" для студентів спеціальностей 7.091501 - "Комп'ютерні та інтелектуальні системи і мережі", 7.091502 - "Технологія проблемного та системного програмування", 7.091505 - "Комп'ютерні системи медичної та технічної діагностики", 7.091506 - "Спеціалізовані комп'ютерні системи"
Упорядники: Анатолій Олексійович Мельник Михайло Миколайович Яцимірський
Редактор
Коректор