pn10 Matlab lab1 Bubak

background image

AKADEMIA GÓRNICZO – HUTNICZA

im. Stanisława Staszica w Krakowie















Systemy Wizyjne

Sprawozdanie z laboratorium nr 1 MatLab




Damian Bubak

grupa 23, rok III, Mechatronika (IMiR)

Data wykonania ćw: 10.03.14r.

Godzina 10:30

background image


Wszystkie obrazy zostały pozyskane za pomocą kamery internetowej wbudowanej w laptopie.
Pierwszym krokiem było pozyskanie informacji o sprzęcie. Wykorzystując poniższe polecenia
otrzymano potrzebne informacje.

info = imaqhwinfo

Wyświetla zainstalowane w sytemie adaptery:

InstalledAdaptors: {'gentl' 'gige' 'matrox' 'winvideo'}

MATLABVersion: '8.1 (R2013a)'
ToolboxName: 'Image Acquisition Toolbox'
ToolboxVersion: '4.5 (R2013a)'

info = imaqhwinfo(

'winvideo'

)

Wyświetla informacje o wszystkich urządzeniach dostępnych przez dany adapter:

AdaptorDllName: [1x81 char]

AdaptorDllVersion: '4.5 (R2013a)'

background image

AdaptorName: 'winvideo'
DeviceIDs: {[1] [2]}
DeviceInfo: [1x2 struct]


dev_info = imaqhwinfo(

'winvideo'

,1)

Wyświetla informacje o konkretnym urządzeniu (określonym przez drugi argument funkcji
imaqhwinfo czyli deviceID) w moim przypadku mamy 2 możliwości:

DefaultFormat: 'RGB24_320x240'
DeviceFileSupported: 0
DeviceName: 'CyberLink Webcam Splitter'
DeviceID: 1
VideoInputConstructor: 'videoinput('winvideo', 1)'
VideoDeviceConstructor: 'imaq.VideoDevice('winvideo', 1)'
SupportedFormats: {1x12 cell}


dev_info = imaqhwinfo(

'winvideo'

,2)

DefaultFormat: 'MJPG_1280x720'
DeviceFileSupported: 0
DeviceName: 'HP TrueVision HD'
DeviceID: 2

VideoInputConstructor: 'videoinput('winvideo', 2)'
VideoDeviceConstructor: 'imaq.VideoDevice('winvideo', 2)'

SupportedFormats: {1x10 cell}

dev_info.SupportedFormats


Wspierane formaty:

Columns 1 through 4

'RGB24_1280x960' 'RGB24_1600x1200' 'RGB24_160x120' 'RGB24_320x240'

Columns 5 through 8

'RGB24_640x480' 'RGB24_800x600' 'YUY2_1280x960' 'YUY2_1600x1200'

Columns 9 through 12

'YUY2_160x120' 'YUY2_320x240' 'YUY2_640x480' 'YUY2_800x600'






background image

1.

Dostępne parametry dla obiektu akwizycji:

Do wyświetlenia aktualnie ustawionych parametrów można posłużyć się funkcją:

get(vidobj)

W wyniku wywołania tej funkcji otrzymano następujący zestaw parametrów:

General Settings:
DeviceID = 1
DiskLogger = []
DiskLoggerFrameCount = 0
EventLog = [1x3 struct]
FrameGrabInterval = 1
FramesAcquired = 10
FramesAvailable = 0
FramesPerTrigger = 10
Logging = off
LoggingMode = memory
Name = RGB24_1600x1200-winvideo-1
NumberOfBands = 3
Previewing = off
ROIPosition = [0 0 1600 1200]
Running = off
Tag =
Timeout = 10
Type = videoinput
UserData = []
VideoFormat = RGB24_1600x1200
VideoResolution = [1600 1200]

Color Space Settings:
BayerSensorAlignment = grbg
ReturnedColorSpace = rgb


Trigger Settings:
InitialTriggerTime = [2014 3 15 12 29 17.9519]
TriggerCondition = none
TriggerFrameDelay = 0
TriggerRepeat = 0
TriggersExecuted = 1
TriggerSource = none
TriggerType = immediate

Acquisition Sources:
SelectedSourceName = input1
Source = [1x1 videosource]

background image


Poniżej przedstawiono krótki opis ważniejszych parametrów:

DeviceID - Nr identyfikujący urządzenie.
FramesAvailable - Liczba buforowanych klatek dostępnych na źródło.
FramesAcquired - Całkowita liczba uzyskiwanych klatek.
FramesPerTrigger - Liczba klatek uzyskiwanych na każde wyzwolenie.
Logging - Wskazuje czy dane są rejestrowane czy nie.
LoggingMode - Określa miejsce przeznaczenia dla uzyskanych danych obrazu (np.
pamięć)
Name - Opisowa nazwa wejściowego obiektu akwizycji.
ROIPosition - Określa region okna akwizycji.
Running - Wskazuje czy wejściowy objekt wideo jest w stanie akwizycji.
SelectedSourceName - Bieżąco wybrane źródło wideo do użycia podczas akwizycji.
Source - Obiekt źródła wideo zawarty przez obiekt videoinput
Tag - Etykieta do obiektu.
Timeout - Czas oczekiwania na wyodrębnienie danych obrazu.
TimerPeriod - Przedział czasu pomiędzy wydarzeniami timera.
TriggerCondition - Stan w którym trigger jest uruchamiany.
TriggerFrameDelay - Wartość opóźnienia dla rejestrowania klatek obrazu.
TriggerRepeat - Liczba dodatkowych powtórzeń wyzwalania.
TriggersExecuted - Liczba razy wykonywania wyzwalania.
TriggerType - Typ triggera (np. immediate, manual).
Type - Typ obiektu.
UserData - Dane użytkownika dla obiektu.
VideoFormat - Format wideo z urządzenia.
VideoResolution - Wektor wskazujący szerokość i wysokość obrazu przychodzącego z
sygnału wideo.

2.

Parametr ‘ReturnedColorSpace’


Parametr ten pozwala wyświetlić obraz w wybranej przestrzeni kolorów. Mamy dostepne tutaj 4
wartości: ‘rgb’,’grayscale’,’YCbCr’,’bayer’

RGB – obraz kolorowy red, green, blue

Grayscale – obraz w skali szarości

YCbCr – przestrzeń wykorzystująca 3 składowe: iluminacji, różnicową chrominacji (Y-
B), chrominacji (Y-R)

Bayer – konwersja ze skali szarości do RGB (tylko gdy domyślne dla kamery jest
grayscale)






background image

Przykładowe screeny z ustawieniami kolejno ‘rgb’, ‘grayscale’,’YCbCr’:

background image

3.

Sposoby wyzwalania kamery

Funcja triggerconfig ustala sposób wyzwalania wideo.
Rodzaje:

Hardware (trigger jest uruchamiany po spełnieniu warunku)

Immediate (trigger jest uruchamiany po wywołaniu funkcji start)

manual (trigger jest uruchamiany po wywołaniu funkcji trigger)

FramesPerTrigger - określa liczbę klatek jaką należy przechwycić
TriggerRepeat - włączenie triggera po spełnieniu warunku określoną ilość razy Gdy
TriggerRepeat jest ustawiony na Inf następuje akwizycja ciągła.

4.

Metody przetwarzania pozyskiwanych obrazów:

Róznica bezwzględna obrazów -

imabsdiff(data(:,:,:,1),data(:,:,:,2))

Liniowa kombinacja obrazów -

imlincomb(1,data(:,:,:,1),-1, data(:,:,:,2),120 )










background image

Poniżej zamieszczam screeny z testów obydwu funkcji:

imlincomb

imabsdiff

background image

5.

Wykorzystywane formaty video:

Tak jak napisano wyżej wykorzystywane formaty to:
Columns 1 through 4

'RGB24_1280x960' 'RGB24_1600x1200' 'RGB24_160x120' 'RGB24_320x240'

Columns 5 through 8

'RGB24_640x480' 'RGB24_800x600' 'YUY2_1280x960' 'YUY2_1600x1200'

Columns 9 through 12

'YUY2_160x120' 'YUY2_320x240' 'YUY2_640x480' 'YUY2_800x600'

RGB24 - 3 kolory czerwony, zielony, niebieski zapisane w formacie 24 – bitowym.
YUY2 - format w którym kazde 2 piksele są definiowane w makropiksel. Format ten zachowuje
pełne informacje o jasności punktów obrazu, jednak informacja o kolorze jest współdzielona
przez dwa sąsiednie punkty na obrazie wideo.




Wyszukiwarka

Podobne podstrony:
pn10 Matlab lab3 Bubak
pn10 Matlab lab2 Bubak
pn10 Matlab lab4 Bubak
Matlab lab1 obwody RLC
kurs matlaba, Lab1 KURS MATLAB 2003, KURS MATLABa
LAB1 MES MATLAB statyka 1 id 25 Nieznany
Matlab cw1 2 zaoczni
cz 1, Matlab moj
Image Processing with Matlab 33
MATLAB graf(1)
kod matlab
Cw08 Matlab2
lab1 12 id 258878 Nieznany
lab1 VHDL
Matlab wiadomości wstępne
bioinformatyczneBD lab1
Ćw lab1 Gleb wilg gleby OŚ

więcej podobnych podstron