Konspekt CPO cw 5

background image

IV ROK GIK. PRZEDMIOT: CYFROWE PRZETWARZANIE OBRAZU - ĆWICZENIA

wersja 1.1

CPO - ćw.5. Automatyczna interpretacja obrazu cyfrowego - dr inż. Jakub Kolecki - KGFiTŚ

|

Ćwiczenie_5. Automatyczna interpretacji obrazu cyfrowego – budowa programu
do rozpoznawania koloru światła sygnalizatora

• Cel tematu

1. Powtórzenie zagadnień realizowanych na poprzednich zajęciach laboratoryjnych z programem MATLAB z
naciskiem na ich praktyczne wykorzystanie.
- wczytywanie obrazu do zmiennej oraz sposób przechowywania obrazu kolorowego
- budowa maski filtru

(z wykorzystaniem funkcji fspecial)

- filtracja przestrzenna obrazu

(z wykorzystaniem funkcji imfilter)

2. Zapoznanie się z niektórymi instrukcjami sterującymi

(pętla for, i instrukcja warunkowa if)

3. Zapis informacji w pliku tekstowym

(funkcje fopen, fclose, fprintf)


• Dane do ćwiczeń

Na ćwiczeniach korzystamy z obrazów zlokalizowanych na wiki

Dostępne są dwa zestawy obrazów.


• Oprogramowanie

W trakcie wykonywania ćwiczenia korzystamy z oprogramowania MATLAB 2010b


• Przebieg zajęć

1. Część teoretyczna

- Automatyczna interpretacja obrazów cyfrowych. Wyjaśnienie pojęć: detekcja obiektu,
identyfikacja obiektu, pomiar obiektu na przykładzie obrazu sygnalizatora świetlnego.
- Zapoznanie studentów z najczęściej stosowanymi instrukcjami sterującymi: pętlą for oraz
instrukcją if.
- Zapoznanie z funkcją num2str, str2double,strcat
- Zapoznanie z funkcjami fopen, fclose, fprintf
- Zapoznanie z funkcjami mean, max, min

2. Część praktyczna

2.1 Wstęp - wyświetlenie przykładowego obrazu (praca w oknie Comand Window).

- Korzystając z okna komend wczytaj do zmiennej o nazwie FOTO obraz, którego nazwa

jest zgodna z Twoim numerem.

- Wyświetl wczytany obraz
- Jeżeli na sygnalizatorze pali się światło zielone zapisz w zmiennej ZIELONY kanał

zielony obrazu. Jeżeli na sygnalizatorze pali się światło czerwone w zmiennej
CZERWONY zapisz kanał czerwony obrazu.

- Wyświetl zapisany kanał w nowym oknie

background image

IV ROK GIK. PRZEDMIOT: CYFROWE PRZETWARZANIE OBRAZU - ĆWICZENIA

wersja 1.1

CPO - ćw.5. Automatyczna interpretacja obrazu cyfrowego - dr inż. Jakub Kolecki - KGFiTŚ

|

- Na obrazie kolorowym korzystając z narzędzia „Data Cursor” odczytaj wartości

jasności RGB pięciu pikseli leżących w obrębie palącego się sygnału. Jaka jest
najniższa a jaka najwyższa odczytana przez Ciebie wartość w kanale
odpowiadającym kolorowi palącego się światła ?



2.2 Skrypt – etap 1 - Automatyczne wczytywanie obrazów z wykorzystaniem pętli for

- Utwórz nowy skrypt, który:

1. Kasuje zmienne (clear)

2. Czyści ekran (clc)
3. Realizuje pętle for, wewnątrz której:

 wczytywany jest obraz o numerze i.JPG
 wypisywana jest średnia wartość jasności piksela o współrzędnych:

[wiersz = 10*N, kolumna = 10*N] w kanale zielonym.
N oznacza numer studenta.

2.3 Skrypt – etap 2 – Program do automatycznej interpretacji obrazu

Przerób utworzony wcześniej skrypt tak aby wewnątrz pętli for poza wczytaniem
obrazu realizowane były następujące zadania:

- filtracja obrazu filtrem wygładzającym (dolnoprzepustowym). Wykorzystaj w tym celu
funkcje fspecial oraz imfilter

Jeżeli Twój numer (N) jest nieparzysty wykorzystaj filtr uśredniający.
Jeżeli Twój numer (N) jest parzysty wykorzystaj filtr Gaussa*
Jeżeli Twój numer (N) jest podzielny przez 3 maska ma mieć wymiary 3 x 3
Jeżeli Twój numer (N) jest podzielny przez 4 maska ma mieć wymiary 7 x 7
Jeżeli Twój numer (N) nie jest podzielny ani przez 3 ani przez 4 zastosuj maskę 5 x 5

*Jeżeli stosowany jest filtr Gaussa, ustaw parametr sigma jako równy 1/5 rozmiaru maski – skorzystaj
Pomocy programu MATLAB

- sprawdzenie jaki kolor światła pali się w danym momencie na sygnalizatorze
(dowolna metoda)

- zapisanie do pliku wynikowego informacji o tym jakie światło pali się na każdym z
obrazów. Wynikowy plik tekstowy ma wyglądać podobnie jak poniżej:

background image

IV ROK GIK. PRZEDMIOT: CYFROWE PRZETWARZANIE OBRAZU - ĆWICZENIA

wersja 1.1

CPO - ćw.5. Automatyczna interpretacja obrazu cyfrowego - dr inż. Jakub Kolecki - KGFiTŚ

|

ZAŁĄCZNIK - Składnia wybranych funkcji przydatnych w rozwiązywaniu zadań

pętla for:
Przykład – obliczenie wartości 7! (silnia)

wynik = 1;
for i = 1:7

wynik = wynik*i;

end

instrukcja warunkowa if:
składnia:
if warunek

%instrukcje wykonywane jeżeli warunek jest spełniony

end

strcat
Funkcja służy do łączenia kilku ciągów znaków w jeden ciąg.
Funkcja może łączyć ze sobą więcej niż dwa ciągi znaków.

Przykład 1:

str1 = ‘Jan Kowa’;
str2 = ‘lski’;
str3 = strcat(str1,str2);
%W zmiennej str3 będzie ciąg znaków: ‘Jan Kowalski’

Przykład 2:

Prefix = ‘obraz’;
Oznaczenie = ‘A24’;
I = imread(strcat(Prefix,Oznaczenie,’.jpg’));
%Do zmiennej I zostanie wczytany obraz o nazwie ‘obrazA24.jpg’

num2str
Funkcja służy do zamiany liczby na ciąg znaków
Przykład:

NR = 3;
I = imread(strcat(sum2str(NR),’.jpg’));
%Do zmiennej I zostanie wczytany obraz o nazwie ‘3.jpg’

str2double
Funkcja służy do zamiany ciągu znaków na liczbę

fopen, fclose, fprintf
fopen – otwiera plik i tworzy identyfikator pliku do odczytu
fclose – zamyka plik
fprintf- zapisanie danych do pliku tekstowego

Składnia funkcji fprintf:
fprintf(Id_pliku, ciąg_znaków, zmienna1, zmienna2,…);

background image

IV ROK GIK. PRZEDMIOT: CYFROWE PRZETWARZANIE OBRAZU - ĆWICZENIA

wersja 1.1

CPO - ćw.5. Automatyczna interpretacja obrazu cyfrowego - dr inż. Jakub Kolecki - KGFiTŚ

|


Zapis do pliku - przykład

V = 20;
IdObiektu = 9;
Plik = fopen(‘Obiekty.txt’,’w’);
fprintf(Plik,’Obiekt %d ma predkosc %d km/h\n’,Obiektu,V);
fclose(Plik);
%W efekcie w pliku Obiekty.txt zostanie zapisana informacja:
Obiekt 9 ma predkosc 20 km/h

Symbol %d oznacza że w tym miejscu ma zostać wstawiona liczba całkowita
Liczby są wstawiane do tekstu zgodnie z kolejnością ich podania licząc od trzeciego argumentu funkcji
Symbol \n oznacza przejście do nowej linii


Wyszukiwarka

Podobne podstrony:
Konspekt CPO cw 2
Konspekt CPO cw 1
Konspekt CPO cw 1
Konspekt CPO cw 3
Konspekt CPO cw 3
Konspekt CPO cw 4
Konspekt CPO cw 2
konspekt basen cw. ze współcwicz, fizjoterapia, FIZJOTERAPIA, III SEMESTR, Basen, dla osob starszych
Konspekt do cw. lab.-termowizja, Energetyka Politechnika Krakowska Wydział Mechaniczny I stopień, Mi
cw z pilka konspekt zal ćw muz ruch
konspekt- noga(ćw.oswajaj.), Studia, Fizjoterapia, Studia - fizjoterapia, Kształcenie Ruchowe, piłka
konspekt basen cw. ze współcwicz, fizjoterapia, FIZJOTERAPIA, III SEMESTR, Basen, dla osob starszych
Konspekt ćw 1

więcej podobnych podstron