4.4.1.Xácăđ nh d uăphơnăcáchălƠnăđ ng 4.4.1.1. Thu th p hình nh t webcam
S d ng hàm imaq.VideoDevice đ thu t p hình nh từ webcam v i cú pháp :
67
>> hVideoSrc = imaq.VideoDevice('winvideo',2,'RGB24_640x480', ... 'ROI', [140 240 360 240], ...
'ReturnedColorSpace', 'rgb'); TrongăđóăvùngăquanătơmăROIă, v iăỦănghĩaănh ăHìnhă4.3.
Hình 4.3:Vùng quan tâm
Sauăđó,ădùngăl nh step(hVideoSrc)đ trích xu t từng khung hình r i t o vòng lặp x lý.
Hình 4.4:̉nh được trích xuất
Codeăch ngătrình:ăPh L c A.
4.4.1.2. Bi năđổi nh và l c nh
N iădungăcóăỦănghĩaăđ xácăđnh d uăphơnăcáchălƠnăđ ng trong nh là các v ch kẻ đ ng. Nên ch quan tâm t i ph n hình nh c a v ch kẻ đ ng. Trên hình 4.4,ăvùngăcóăỦănghĩaăchínhălƠăph năd i c a khung hình. Vì v y, c n h n ch l i vùngăquanăsátănh ăhìnhă4.5
68
Hình 4.5:Hình gíi hạn quan sát
Dùng hàm vision.ColorSpaceConverter chuy n nh RGB sang nh c ngăđ nh ăhìnhă4.6.
Hình 4.6: ̉nh cường độ
Dùng hàm vision.ImageFilter đ l c nh và hàm
vision.Autothresholder đ chuy n nhăxámăđƣăl c sang nh nh phơnănh ă hình 4.7.
Hình 4.7:̉nh nhị phân
Codeăch ngătrình:ăPh L c A.
4.4.1.3. Th c hi n bi năđổi Hough
Dùngă ph ngă phápă bi nă đổi Houghă xácă đ nhă đ ng thẳng trong nh bằng
hàm vision.HoughTransform và vision.LocalMaximaFinder, vision.HoughLines. V i cú pháp: hHough = vision.HoughTransform( ... 'ThetaRhoOutputPort', true, ... 'OutputDataType', 'single'); hLocalMaxFind = vision.LocalMaximaFinder( ...
69 'MaximumNumLocalMaxima', ExpLaneNum, ... 'NeighborhoodSize', [301 81], ... 'Threshold', 1, ... 'HoughMatrixInput', true, ... 'IndexDataType', 'uint16');
hHoughLines1 = vision.HoughLines('SineComputation', 'Trigonometric function');
Codeăch ngătrình:ăPh L c A.
4.4.2.Xácăđ nh d u phân cách trái ậ ph i vƠăchènăđánhăd uălƠnăđ ng
D uăphơnăcáchălƠnăđ ng trái ph iăđ căxácăđ nh d aăvƠoăgiaoăđi m c a nó v iăđ ngăbaoăphíaăd i cùng c a nh. Ch ngătrìnhăs tính toán kho ng cách các từ tâm c a khung nh t i các d uăphơnăcáchălƠnăđ ng. Từ đóăxu t tín hi u c nh báo n u m tătrongăcácătr ng h p sau x y ra:
- D uăphơnăcáchălƠnăđ ng phía bên ph i khung hình giao v iăđ ng bao phía d i cùng c a khung hình. S cho tín hi u l ch ph i.
- D uăphơnăcáchălƠnăđ ng phía bên trái khung hình giao v iăđ ng bao phía d i cùng c a khung hình. S cho tín hi u l ch trái.
- Không có d u phân cách nào giao v iăđ ngăbaoăphíaăd i c a khung hình. S cho tín hi uăđúngălƠn.
Code c aăch ngătrình:ăPh L c C.