Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РК_19_03_2008.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
2.57 Mб
Скачать

П

Рис. 4.15. Об’єкт з явно

Вираженою симетрією

риклад
3. Для файлу example2.tif (рис. 4.15) необхідно знайти положення та орієнтацію об’єкту.

Розв’язок. Рекомендується набрати та запустити наведений нижче лістинг програми в Matlab з метою набуття навичок практичного розв’язання представленої типової задачі.

%необхідно завантажити новий файл file example2.tif

BW = imread('example2.tif'); imshow(BW);

%тут пропущений один рядок (див. приклад 1)

……………………………

L = bwlabel(BW); %тут використано нову функцію Matlab imfeature,

%яка визначає всі необхідні характеристики зображення

stats = imfeature(L,'all')

%в командному вікні Matlab будуть показані всі характеристики %зображення

%у звіт мають бути занесені тільки дві характеристики: centroid - 12 %вектор, який складається з координат центра мас об’єкту

%та orientation – кут між віссю x та великою віссю еліпсу, який має %той самий другий момент, що і досліджуваний об’єкт.

4. Відпрацюйте приклад 4. Результати (зображення до виділення країв та після цього, лістинг програми, що реалізує алгоритм Собеля) занесіть у звіт.

Приклад 4. Необхідно виконати виділення країв для графічного файлу example3.tif по алгоритму Собеля.

ПІДКАЗКА: Використайте представлену на рис. 4.16 блок-схему для написання відповідної програми у Matlab.

Розв’язок. Рекомендується набрати та запустити наведений нижче лістинг програми в Matlab з метою набуття навичок практичного розв’язання представленої типової задачі.

% необхідно завантажити новий файл file example3.tif

BW = imread('example3.tif')

%можна використати вбудовану функцію Matlab edge та її параметр

%'sobel', що показує який саме алгоритм виділення країв буде

%використовуватися

Рис. 4.16. Блок-схема алгоритму Собеля для виділення країв

newBW=edge(BW, 'sobel')

imshow(newBW)

%виділене зображення має бути занесене у звіт

%Необхідно виконати виділення країв для того самого файлу %example3.tif, проте не використовуючи функцію edge.

Контрольні питання та завдання

1. Які основні типи растрових зображень ?

2. Дайте визначення характеристичній функції бінарного зображення та числа Ейлера для бінарного зображення.

3. Як можна визначити положення та орієнтацію об’єкту для бінарного зображення?

4. Що таке виділення країв?

5. Яка існує класифікація методів виділення країв?

6. Дайте визначення маски (ядра) згортки.

7. Які основні недоліки алгоритму Собеля для виділення країв?

8. Визначте градієнт для заданого пікселя в наведеному фрагменті зображення для наступних варіантів:

а) піксель 254, маска Собеля;

б) піксель 174, маска Прюїтта;

в) піксель 201, маска Роберта;

г) піксель 222, маска Лапласа.

4.3. Логічне програмування в Пролог: задачі прийняття рішень при декількох обмеженнях

Мета

Метою практичного заняття є набуття навичок та вмінь логічного програмування та розв’язування задач при декількох обмеженнях.

Завдання

  • Вивчіть основну структуру програм у Пролог: предикати, структури даних, списки.

  • Вивчіть процедури рекурсії та уніфікації, що широко використовуються у Пролог.

  • Реалізуйте програму для розв’язання шахової задачі з восьми ферзями.