Đề tài được nghiên cứu dựa trên nền tảng các kiến thức cơ bản về ngôn ngữ lập trình và vi điều khiển được học ở trường, cùng với việc tự tìm hiểu và học hỏi của các tài liệu đi trước. Hệ thống điều khiển của robot được thực hiện dựa trên máy tính nhúng Raspberry pi 3 kết nối với camera pi và chương trình được viết bằng Python.
Trang 1KHOA CÔNG NGH ĐI N – ĐI N T Ệ Ệ Ệ Ử
Trang 4TH C PH M TP. H CHÍ MINHỰ Ẩ Ồ
KHOA ĐI N – ĐI N TỆ Ệ Ử
Đ c l p – T do – H nh phúcộ ậ ự ạ
PHI U GIAO NHI M V Ế Ệ Ụ
(Phi u này ph i đóng vào trang đ u tiên c a báo cáo) ế ả ầ ủ
1. H và tên sinh viên đọ ược giao đ tài ề (S lố ượng sinh viên: 1)
(1) Nguy n Văn Đ tễ ạ MSSV: 2002160185 L p: 07DHDT4ớ
2. Tên đ tài: ề Ưng dung x ly anh nhân dang c chi ban tay điêu khiên robot di đônǵ ̣ ử ́ ̉ ̣ ̣ ử ̉ ̀ ̀ ̉ ̣
3. Nhi m v c a đ tài:ệ ụ ủ ề
_ Th c hi n ch c năng: nh n d ng c ch bàn tay đi u khi n bobot di chuy n: đi th ng,ự ệ ứ ậ ạ ử ỉ ề ể ể ẳ
r trái, r ph i, lùi, d ng l i.ẽ ẽ ả ừ ạ
_ Cài đ t h đi u hành và th vi n OpenCV cho Raspberry Piặ ệ ề ư ệ
_ Nghiên c u lý thuy t l p trình python, OpenCVứ ế ậ
_ Tìm hi u lý thuy t x lý nhể ế ử ả
_ Xây d ng gi i thu t nh n d ng c ch bàn tayự ả ậ ậ ạ ử ỉ
_ Ch t lấ ượng th c hi n nh n di n bàn tay đáp ng t t không b nhi uự ệ ậ ệ ứ ố ị ễ
4. Ngày giao nhi m v đ án t t nghi p: ệ ụ ồ ố ệ 29/02/2020
5. Ngày hoàn thành và n p v khoa:ộ ề
TP.H Chí Minh, ngày 29 tháng 02 năm 2020 ồ
Trưởng khoa Trưởng b mônộ Gi ng viên hả ướng d nẫ
Lê Thành T iớ Nguy n Phú Côngễ Tr n Hoàn ầ
Trang 5
Trang 6
Trước h t chúng em xin g i l i c m n chân thành đ n quý th y cô trế ử ờ ả ơ ế ầ ườ ng
Đ i h c Công Nghi p Th c Ph m thành ph H Chí Minh nói chung và quý th y côạ ọ ệ ự ẩ ố ồ ầ
Trang 7đ t nh ng ki n th c quý giá trong kho ng th i gian em h c đ i h c. ạ ữ ế ứ ả ờ ọ ạ ọ
Em xin đư c g i l i c m n đ nợ ử ờ ả ơ ế th y Tr n Hoànầ ầ , th yầ đã hư ng d n và giúpớ ẫ
đ t n tình em nghiên c u và hoàn thành lu n văn t t ngh p này. Nh ng l i nh nỡ ậ ứ ậ ố ệ ữ ờ ậ xét, góp ý và hư ng d n c a th y đã giúp em có đ nh hớ ẫ ủ ầ ị ư ng đúng đ n trong quáớ ắ trình th c hi n đ tài, giúp em nhìn ra đự ệ ề ư c ợ ưu khuy t đi m c a đ tài và t ngế ể ủ ề ừ
bư c kh c ph c đ có đớ ắ ụ ể ư c k t qu t t nh t.ợ ế ả ố ấ Xin g i đ n th y l i chúc s c kh eử ế ầ ờ ứ ỏ
và ngày càng thành công trên trên m c gi ngụ ả
Em xin g i l i c m n chân thành đ n quý Th y/Cô đã dành th i gian quý báuử ờ ả ơ ế ầ ờ
đ nh n xét và ch m Lu n văn t t nghi p. Đây s là nh ng đóng góp r t quý giáể ậ ấ ậ ố ệ ẽ ư ấ cho em đ hoàn thi n và phát tri n đ tài ngày m t t t h n.ể ệ ể ề ộ ố ơ
Sau cùng, con xin bày t lòng bi t n sâu s c t i M , Ba, Ch , Em nh ngỏ ế ơ ắ ớ ẹ ị ữ
người đã luôn luôn đ ng viên, bên con trong nh ng lúc khó khăn nh t, là đ ng l cộ ở ữ ấ ộ ự cho con n l c c g ng trong su t nh ng năm tháng h c t p t i trỗ ự ố ắ ố ữ ọ ậ ạ ường và trên
nh ng bữ ước đường ti p theo trong cu c s ng.ế ộ ố
Trang 8Ngày nay, các mô hình xe, máy bay và robot đang ngày càng ph bi nổ ế trong nghiên c u và đào t o. Các thi t b này thứ ạ ế ị ường được v n hành t đ ng ho cậ ự ộ ặ
đi u khi n tr c ti p b i con ngề ể ự ế ở ười. Nh vào s ti n b c a công ngh x lý hìnhờ ự ế ộ ủ ệ ử
nh, ngày càng nhi u các thi t b có kh năng ghi nh n c ch tay và chuy n
đ i thành các tín hi u có th x lý b ng máy tính. Đ tài “ ng d ng x lý nhổ ệ ể ử ằ ề Ứ ụ ử ả
nh n d ng c ch bàn tay đi u khi n robot di đ ng” là mô hình d a theo ngôn ngậ ạ ử ỉ ề ể ộ ự ữ python v i th vi n chính là Opencv và đớ ư ệ ược th c hi n trên Kit Raspberry và Kitự ệ Arduino Wifi ESP826 WeMos D1. X lý nh đây s đử ả ở ẽ ược nh n d ng theoậ ạ
ngưỡng c a bàn tay đ đi u khi n robot thông qua c ch tay. K t qu nghiên c uủ ể ề ể ử ỉ ế ả ứ cho th y cho th y tính n đ nh trong vi c đi u khi n các mô hình robot b ng c chấ ấ ổ ị ệ ề ể ằ ử ỉ tay
Trang 9M C L C Ụ Ụ
Trang 10DANH M C KÝ HI U, C M T VI T T T Ụ Ệ Ụ Ừ Ế Ắ
Trang 11DANH M C B NG BI U Ụ Ả Ể
Trang 12DANH M C HÌNH NH Ụ Ả
Trang 13Ch ươ ng 1: T NG QUAN V Đ TÀI Ổ Ề Ề
1.1 Đ t v n đặ ấ ề
Trong nh ng năm g n đây, các ng d ng v trí tu nhân t o ngày càng phátữ ầ ứ ụ ề ệ ạ tri n và để ược đánh giá cao. M t lĩnh v c đang độ ự ược quan tâm c a trí tu nhân t oủ ệ ạ
nh m t o ra các ng d ng thông minh, mang tính tri th c con ngằ ạ ứ ụ ứ ười đó là nh nậ
d ng. V i s phát tri n m nh m c a công ngh và nhu c u c a con ngạ ớ ự ể ạ ẽ ủ ệ ầ ủ ười ngày càng cao. M t bài toán độ ược đ t ra là: Làm sao có th đi u khi n máy tính, các thi tặ ể ề ể ế
b gi i trí, robot…b ng nh ng c ch , hành đ ng và l i nói c a con ngị ả ằ ữ ử ỉ ộ ờ ủ ười. Nh nậ
d ng hình nh và âm thanh là m t gi i pháp đ gi i quy t bài toán này và m t ph nạ ả ộ ả ể ả ế ộ ầ
nh trong lĩnh v c đó là nh n d ng c ch bàn tay. ỏ ự ậ ạ ử ỉ
Lý do ch quan khi ch n đ tài: Nh ng năm g n đây robot là m t trongủ ọ ề ữ ầ ộ
nh ng th m nh c a Khoa. Và em mu n làm sao đ tr nên m nh h n n a v côngữ ế ạ ủ ố ể ở ạ ơ ữ ề ngh ch t o robot thông minh. Đ l i m t cái gì đó quý báu cho nh ng sinh viênệ ế ạ ể ạ ộ ữ khóa sau c a trủ ường phát tri n t t h n v các công ngh cao và các ngành khác liênể ố ơ ề ệ quan
1.2 M c tiêuụ
Nh n d ng c ch tay xây d ng chậ ạ ử ỉ ự ương trình đi u khi n nh sau:ề ể ư
No hand: Không có bàn tay (Robot không di chuy n)ể
“Up”: Ngón tay th nh t trong bàn tay (Robot di chuy n v phía trứ ấ ể ề ước)
“Down”: Ngón tay th hai trong bàn tay (Robot di chuy n v phía sau)ứ ể ề
“Left”: Ngón tay th ba trong bàn tay (Robot di chuy n sang trái)ứ ể
“Right”: Ngón tay th t trong bàn tay (Robot di chuy n sang ph i)ứ ư ể ả
Nghiên c u lý thuy t l p trình python, OpenCV.ứ ế ậ
Tìm hi u lý thuy t x lý nh.ể ế ử ả
Xây d ng gi i thu t nh n d ng c ch bàn tay.ự ả ậ ậ ạ ử ỉ
Trang 141.3 Ph m vi c a lu n văn t t nghi pạ ủ ậ ố ệ
Đ tài đề ược nghiên c u d a trên n n t ng các ki n th c c b n v ngôn ngứ ự ề ả ế ứ ơ ả ề ữ
l p trình và vi đi u khi n đậ ề ể ược h c trọ ở ường, cùng v i vi c t tìm hi u và h c h iớ ệ ự ể ọ ỏ
c a các tài li u đi trủ ệ ước. H th ng đi u khi n c a robot đệ ố ề ể ủ ược th c hi n d a trênự ệ ự máy tính nhúng Raspberry pi 3 k t n i v i camera pi và chế ố ớ ương trình được vi tế
b ng Python. Do gi i h n v ki n th c c a b n thân nên m c tiêu hằ ớ ạ ề ế ứ ủ ả ụ ướng đ n đế ề tài là làm sao đ robot di đ ng m t cách c b n nh t có th ể ộ ộ ơ ả ấ ể
1.4 T ng quan v các nghiên c u liên quanổ ề ứ
Bàn tay con người có c u trúc xấ ương ph c t p bao g m r t nhi u kh p n iứ ạ ồ ấ ề ớ ố
v i nhau. Vì s b c t do c a bàn tay ngớ ố ậ ự ủ ười là r t l n nên vi c nh n d ng c chấ ớ ệ ậ ạ ử ỉ bàn tay tr nên m t thách th c l n. Có nhi u nghiên c u v nh n d ng c ch v iở ộ ứ ớ ề ứ ề ậ ạ ử ỉ ớ các gi i thu t khác nhau nh : nh n d ng phép tr n n, d a vào màu s c, hình dáng,ả ậ ư ậ ạ ừ ề ự ắ các đ c tr ng c a bàn tay, optical flow, mean shift….ặ ư ủ
người. Thu t toán này cũng r t nh y v i các đi u ki n chi u sáng khác nhau. Khiậ ấ ạ ớ ề ệ ế
đi u ki n ánh sáng không đáp ng yêu c u thì b nh n d ng thề ệ ứ ầ ộ ậ ạ ường không nh n raậ bàn tay.
Wuetal đã đ xu t thu t toán bám theo đ i tề ấ ậ ố ượng d a trên màu s c không nự ắ ổ
đ nh b ng cách h c hai phị ằ ọ ương pháp bi u di n khác nhau cho s phân b màu s cể ễ ự ố ắ
và g i thu t toán m i này là structure adaptive selforganizing map (SASOM). K tọ ậ ớ ế
qu trong vi c đ nh v bàn tay đã ch ra r ng thu t toán có th ki m soát t t m t vàiả ệ ị ị ỉ ằ ậ ể ể ố ộ
đi m khó trong tracking đ i tể ố ượng có màu s c không n đ nh.ắ ổ ị
[2] Nh n d ng d a vào ngậ ạ ự ưỡng trên m i kênh màuỗ
Trang 15Thu t toán d a trên đ c tr ng bàn tay trích xu t đ c tr ng trong m t vùngậ ự ặ ư ấ ặ ư ộ
nh nh t đ nh nh đ u ngón tay ho c biên bàn tay, và s d ng m t vài ph ng pháp
[3] Optical Flow
Optical flow là thu t toán d a trên phân tích chuy n đ ng c a bàn tay. Vi cậ ự ể ộ ủ ệ bám theo bàn tay d a vào qu đ o chuy n đ ng và k t h p v i b phát hi n màuự ỹ ạ ể ộ ế ợ ớ ộ ệ
da. B l c theo th i gian dùng thu t toán Viterbi đ nh n d ng qu đ o c a bàn tayộ ọ ờ ậ ể ậ ạ ỹ ạ ủ
và thu t toán ki m tra ph đậ ể ụ ược b sung vào thu t toán Viterbi đ đ m b o ch cổ ậ ể ả ả ắ
ch n qu đ o trích xu t s ch a v trí bàn tay c a cùng m t bàn tay đã đắ ỹ ạ ấ ẽ ứ ị ủ ộ ược nh nậ
d ng trạ ước đó. Nh ng k t qu th c t cho th y h th ng có kh năng bám theo bànữ ế ả ự ế ấ ệ ố ả tay n đ nh.ổ ị
[4] Phương pháp tr n nừ ề
Bàn tay được phát hi n b ng phệ ằ ương pháp tr n n, s d ng thu t toánừ ề ử ụ ậ
“codebook” c a th vi n OpenCV.ủ ư ệ
Các đi m đ u mút để ầ ược phát hi n b ng thu t toán “convex hull 2”, các đi mệ ằ ậ ể lõm được phát hi n b ng thu t toán “convexity defect”.ệ ằ ậ
D a vào s đi m l i và lõm ngự ố ể ồ ười ta s bi t đẽ ế ượ ốc s ngón tay được đ a lên.ư
Trang 16Hình .1: Hình minh h a k t qu thu t toán tr n nọ ế ả ậ ừ ề
1.5 Ý nghĩa khoa h c và th c ti n c a đ tàiọ ự ễ ủ ề
Đ a ra m t b n lý thuy t v i các n i dung tìm hi u, các phép toán hình tháiư ộ ả ế ớ ộ ể trong x lý nh và nh n d ng c ch bàn tay c a con ngử ả ậ ạ ử ỉ ủ ười. Nh m m c đích gópằ ụ
m t ph n vào lĩnh v c ng d ng c a nh n d ng, c th h n đây là có th ngộ ầ ự ứ ụ ủ ậ ạ ụ ể ơ ở ể ứ
d ng vào vi c đi u khi n di chuy n robot… ng v i m i c ch bàn tay thì robotụ ệ ề ể ể Ứ ớ ỗ ử ỉ
s x lý ti n, lùi, qua ph i hay qua trái.ẽ ử ế ả
Trang 17Ch ươ ng 2: C S LÝ THUY T Ơ Ở Ế
Gi i thi u v h th ng x lý nhớ ệ ề ệ ố ử ả
X lý nh là m t lĩnh v c mang tính khoa h c và công ngh Nó là m t ngànhử ả ộ ự ọ ệ ộ khoa h c m i m so v i nhi u ngành khoa h c khác nh ng t c đ phát tri n c a nóọ ớ ẻ ớ ề ọ ư ố ộ ể ủ
r t nhanh, kích thích các trung tâm nghiên c u, ng d ng, đ c bi t là máy tínhấ ứ ứ ụ ặ ệ chuyên d ng riêng cho nó.ụ
X lý nh đử ả ược đ a vào gi ng d y b c đ i h c nư ả ạ ở ậ ạ ọ ở ước ta kho ng ch cả ụ năm nay. Nó là môn h c liên quan đ n nhi u lĩnh v c và c n nhi u ki n th c c sọ ế ề ự ầ ề ế ứ ơ ở khác. Đ u tiên ph i k đ n x lý tín hi u s là m t môn h c h t s c c b n cho xầ ả ể ế ử ệ ố ộ ọ ế ứ ơ ả ử
lý tín hi u chung, các khái ni m v tích ch p, các bi n đ i Fourier, bi n đ iệ ệ ề ậ ế ổ ế ổ Laplace, các b l c h u h n… Th hai, các công c toán nh đ i s tuy n tính, xácộ ọ ữ ạ ứ ụ ư ạ ố ế
su t th ng kê. M t s ki n th c n thi t nh trí tu nhân t o, m ng n ron nhân t oấ ố ộ ố ế ứ ầ ế ư ệ ạ ạ ơ ạ cũng được đ c p trong quá trình phân tích và nh n d ng nh.ề ậ ậ ạ ả
Đ d tể ễ ưởng tượng, xét các bướ ầc c n thi t trong x lý nh. Đ u tiên, nh tế ử ả ầ ả ự nhiên t th gi i ngoài đừ ế ớ ược thu nh n qua các thi t b thu (nh camera, máy ch pậ ế ị ư ụ nh). Tr c đây, nh thu qua camera là các nh t ng t (lo i camera ng ki u
CCIR). G n đây, v i s phát tri n c a công ngh , nh màu ho c đen tr ng đầ ớ ự ể ủ ệ ả ặ ắ ượ c
l y ra t camera, sau đó nó đấ ừ ược chuy n tr c ti p thành nh s t o thu n l i choể ự ế ả ố ạ ậ ợ
x lý ti p theo (máy nh s hi n nay là m t thí d g n gũi).ử ế ả ố ệ ộ ụ ầ
M t khác, nh cũng có th ti p nh n t v tinh; có th quét t nh ch pặ ả ể ế ậ ừ ệ ể ừ ả ụ
b ng máy quét nh.ằ ả
Trang 18Ti n x lý (Image Processing):ề ử
Sau b thu nh n, nh có th nhi u đ tộ ậ ả ể ễ ộ ương ph n th p nên c n đ a vào bả ấ ầ ư ộ
ti n x lý đ nâng cao ch t lề ử ể ấ ượng. Ch c năng chính c a b ti n x lý là l c nhi u,ứ ủ ộ ề ử ọ ễ nâng đ tộ ương ph n đ làm nh rõ h n, nét h n.ả ể ả ơ ơ
Phân đo n (Segmentation) hay phân vùng nh:ạ ả
Phân vùng nh là tách m t nh đ u vào thành các vùng thành ph n đ bi uả ộ ả ầ ầ ể ể
di n phân tích, nh n d ng nh Đây là ph n ph c t p khó khăn nh t trong x lýễ ậ ạ ả ầ ứ ạ ấ ử
nh và cũng d gây l i, làm m t đ chính xác c a nh. K t qu nh n d ng nh
ph thu c r t nhi u vào công đo n này.ụ ộ ấ ề ạ
Bi u di n nh (Image Representation):ể ễ ả
Đ u ra nh sau phân đo n ch a các đi m nh c a vùng nh ( nh đã phânầ ả ạ ứ ể ả ủ ả ả
đo n) c ng v i mã liên k t v i các vùng l n c n. Vi c bi n đ i các s li u nàyạ ộ ớ ế ớ ậ ậ ệ ế ổ ố ệ thành d ng thích h p là c n thi t cho x lý ti p theo b ng máy tính. Vi c ch n cácạ ợ ầ ế ử ế ằ ệ ọ tính ch t đ th hi n nh g i là trích ch n đ c tr ng (Feature Selection) g n v iấ ể ể ệ ả ọ ọ ặ ư ắ ớ
vi c tách các đ c tính c a nh dệ ặ ủ ả ướ ại d ng các thông tin đ nh lị ượng ho c làm c sặ ơ ở
đ phân bi t l p đ i tể ệ ớ ố ượng này v i đ i tớ ố ượng khác trong ph m vi nh nh n đạ ả ậ ược
Nh n d ng và n i suy nh (Image Recognition and Interpretation):ậ ạ ộ ả
Nh n d ng nh là quá trình xác đ nh nh. Quá trình này thậ ạ ả ị ả ường thu đượ c
b ng cách so sánh v i m u chu n đã đằ ớ ẫ ẩ ược h c (ho c l u) t trọ ặ ư ừ ước. N i suy là phánộ đoán theo ý nghĩa trên c s nh n d ng. Theo lý thuy t v nh n d ng, các mô hìnhơ ở ậ ạ ế ề ậ ạ toán h c v nh đọ ề ả ược phân theo hai lo i nh n d ng nh c b n:ạ ậ ạ ả ơ ả
Trang 19Nh đã nói trên, nh là m t đ i tư ở ả ộ ố ượng khá ph c t p v đứ ạ ề ường nét, đ sángộ
t i, dung lố ượng đi m nh, môi trể ả ường đ thu nh phong phú kéo theo nhi u. Trongể ả ễ nhi u khâu x lý và phân tích nh ngoài vi c đ n gi n hóa các phề ử ả ệ ơ ả ương pháp toán
h c đ m b o ti n l i cho x lý, ngọ ả ả ệ ợ ử ười ta mong mu n b t chố ắ ước quy trình ti p nh nế ậ
và x lý nh theo cách c a con ngử ả ủ ười. Trong các bước x lý đó, nhi u khâu hi nử ề ệ nay đã x lý theo các phử ương pháp trí tu con ngệ ười
Mô t (bi u di n nh):ả ể ễ ả
nh sau khi s hóa s đ c l u vào b nh , ho c chuy n sang các khâu ti p
theo đ phân tích. N u l u tr nh tr c ti p t các nh thô, đòi h i dung lể ế ư ữ ả ự ế ừ ả ỏ ượng bộ
nh c c l n và không hi u qu theo quan đi m ng d ng và công ngh Thôngớ ự ớ ệ ả ể ứ ụ ệ
thường, các nh thô đó đả ược đ c t (bi u di n) l i (hay đ n gi n là mã hoá) theoặ ả ể ễ ạ ơ ả các đ c đi m c a nh đặ ể ủ ả ược g i là các đ c tr ng nh (Image Features) nh : biênọ ặ ư ả ư
nh (Boundary), vùng nh (Region)
Nh ng v n đ c b n trong h th ng x lý nhữ ấ ề ơ ả ệ ố ử ả
[5] Đi m nh (Picture Element)ể ả
G c c a nh ( nh t nhiên): là nh liên t c v không gian và đ sáng. Đ xố ủ ả ả ự ả ụ ề ộ ể ử
lý b ng máy tính (s ), nh c n ph i đằ ố ả ầ ả ượ ốc s hóa. S hóa nh là s bi n đ i g nố ả ự ế ổ ầ đúng m t nh liên t c thành m t t p đi m phù h p v i nh th t v v trí (khôngộ ả ụ ộ ậ ể ợ ớ ả ậ ề ị gian) và đ sáng (m c xám). Kho ng cách gi a các đi m nh đó độ ứ ả ữ ể ả ược thi t l p saoế ậ cho m t ngắ ười không phân bi t đệ ược ranh gi i gi a chúng. M i m t đi m nh v yớ ữ ỗ ộ ể ư ậ
Trang 20g i là đi m nh (PEL: Picture Element) hay g i t t là Pixel. Trong khuôn kh nhọ ể ả ọ ắ ổ ả hai chi u, m i pixel ng v i c p t a đ (x, y).ề ỗ ứ ớ ặ ọ ộ
Đ nh nghĩa: Đi m nh (Pixel) là m t ph n t c a nh s t i t a đ (x, y) v iị ể ả ộ ầ ử ủ ả ố ạ ọ ộ ớ
đ xám ho c màu nh t đ nh. Kích thộ ặ ấ ị ước và kho n cách gi a các đi m nh đó đả ữ ể ả ượ c
ch n thích h p sao cho m t ngọ ợ ắ ườ ải c m nh n s liên t c v không gian và m c xámậ ự ụ ề ứ (ho c màu) c a nh s g n nh nh th t. M i ph n t trong ma tr n đặ ủ ả ố ầ ư ả ậ ỗ ầ ử ậ ược g i làọ
[6] Đ phân gi i c a nhộ ả ủ ả
Đ phân gi i (Resolution) c a nh là m t đ đi m nh độ ả ủ ả ậ ộ ể ả ượ ấc n đ nh trênị
m t nh s độ ả ố ược hi n th Theo đ nh nghĩa, kho ng cách gi a các đi m nh ph iể ị ị ả ữ ể ả ả
được ch n sao cho m t ngọ ắ ườ ẫi v n th y đấ ược s liên t c c a nh. Vi c l a ch nự ụ ủ ả ệ ự ọ kho ng cách thích h p t o nên m t m t đ phân b , đó chính là đ phân gi i vàả ợ ạ ộ ậ ộ ổ ộ ả
được phân b theo tr c x và y trong không gian hai chi u.ố ụ ề
Trang 21[7] M c xám c a nhứ ủ ả
M t đi m nh (pixel) có hai đ c tr ng c b n là v trí (x, y) c a đi m nh vàộ ể ả ặ ư ơ ả ị ủ ể ả
đ xám c a nó. Dộ ủ ưới đây chúng ta xem xét m t s khái ni m và thu t ng thộ ố ệ ậ ữ ườ ngdùng trong x lý nh. ử ả
M c xám c a đi m nh là cứ ủ ể ả ường đ sáng c a nó độ ủ ược gán b ng giá tr sằ ị ố
t i đi m đó. Các thang giá tr m c xám thông thạ ể ị ứ ường:16, 32, 64, 128, 256 (m c 256ứ
là m c ph d ng. Lí do: t k thu t máy tính dùng 1 byte (8 bit) đ bi u di n m cứ ổ ụ ừ ỹ ậ ể ể ễ ứ xám: M c xám dùng 1 byte bi u di n 2^8 = 256 m c (t c là t 0 đ n 255).ứ ể ễ ứ ứ ừ ế
Hình 2.3: Minh h a m c xám sau khi mã hóaọ ứ
nh đen tr ng: là nh có hai màu đen, tr ng (không ch a màu khác) v i m c
Trang 22Hình 2.4: Minh h a nh nh phân sau khi mã hóaọ ả ị
Không gian màu HSV (HSB): Không gian màu HSV (còn g i là HSB) là m tọ ộ cách t nhiên h n đ mô t màu s c, d a trên 3 s li u:ự ơ ể ả ắ ự ố ệ
Trang 23Hình 2.6: Không gian màu RGB[8] Đ nh nghĩa nh sị ả ố
nh s là t p h p các đi m nh v i m c xám phù h p dùng đ mô t nh
[10] K thu t năng cao ch t lỹ ậ ấ ượng nhả
Nâng cao ch t lấ ượng là bướ ầc c n thi t trong x lý nh nh m hoàn thi n m tế ử ả ằ ệ ộ
s đ c tính c a nh. Nâng cao ch t lố ặ ủ ả ấ ượng nh g m hai công đo n khác nhau: tăngả ồ ạ
Trang 24cường nh và khôi ph c nh. Tăng cả ụ ả ường nh nh m hoàn thi n các đ c tính c aả ằ ệ ặ ủ
Tăng cường nh không ph i là làm tăng lả ả ượng thông tin v n có trong nh làmố ả
n i b t các đ t tr ng đã ch n. T c đi u ch nh m c xám c a đi m nh. Dùngổ ậ ặ ư ọ ứ ề ỉ ứ ủ ể ả
phương pháp ánh x làm thay đ i giá tr đi m sáng.ạ ổ ị ể
Khôi ph c nh bao g m quá trình l c nh, kh nhi u do môi trụ ả ồ ọ ả ử ễ ường bên ngoài hay các h th ng thu nh n, phát hi n và l u tr nh thu đệ ố ậ ệ ư ữ ả ược, thông qua các
b l c trong mi n không gian và trong mi n bi n đ i. Nh m làm gi m b t các bi nọ ọ ề ề ế ổ ằ ả ớ ế
d ng đ khôi ph c l i nh gi ng nh nh g c.ạ ể ụ ạ ả ố ư ả ố
K thu t nâng cao ch t lỹ ậ ấ ượng nh g m: các k thu t không ph thu c vàoả ồ ỹ ậ ụ ộ không gian và các k thu t ph thu c vào không gian.ỹ ậ ụ ộ
K thu t không ph thu c vào không gian bao g m các phép nh : tăng gi mỹ ậ ụ ộ ồ ư ả
đ sáng, tách ngộ ưỡng, bó c m, cân b ng histogram, tách ngụ ằ ưỡng t đ ng,ự ộ
bi n đ i c p xám t ng th , ế ổ ấ ổ ể
K thu t ph thu c vào không gian bao g m các phép nh : phép cu n vàỹ ậ ụ ộ ồ ư ộ
m u, l c trung v , l c trung bình,…ẫ ọ ị ọ
[11] K thu t bi n đ i nhỹ ậ ế ổ ả
Thu t ng bi n đ i nh thậ ữ ế ổ ả ường dùng đ nói t i m t l p các ma tr n đ n v ,ể ớ ộ ớ ậ ơ ị
và các k thu t dùng đ bi n đ i nh làm gi m th nguyên c a nh đ vi c x lýỹ ậ ể ế ổ ả ả ứ ủ ả ể ệ ử
nh đ c hi u qu h n. Có nhi u lo i bi n đ i đ c dùng nh : bi n đ i Fourier,
Sin, Cosin,…
[12] K thu t phân tích nhỹ ậ ả
Trang 25Phân tích nh liên quan đ n vi c xác đ nh các đ đo đ nh lả ế ệ ị ộ ị ượng c a m t nhủ ộ ả
đ đ a ra m t mô t đ y đ v nh. Nh m m c đích xác đ nh biên c a nh. Cóể ư ộ ả ầ ủ ề ả ằ ụ ị ủ ả nhi u k thu t khác nhau nh l c vi phân hay dò theo quy ho ch đ ng. Ngề ỹ ậ ư ọ ạ ộ ười ta cũng d ng các k thu t đ phân vùng nh. T nh thu đụ ỹ ậ ể ả ừ ả ược, người ta ti n hành kế ỹ thu t tách hay h p d a theo cách tiêu chu n đánh giá nh : màu s c cậ ợ ự ẩ ư ắ ường đ …ộ
Phương pháp được bi t đ n các k thu t phân l p d a theo c u trúc.ế ế ỹ ậ ớ ự ấ
[13] K thu t nh n d ng nhỹ ậ ậ ạ ả
Nh n d ng nh là quá trình liên quan đ n các mô t đ i tậ ạ ả ế ả ố ượng mà người ta
mu n đ t t nó. Quá trình nh n d ng thố ặ ả ậ ạ ường đi sau quá trình trích ch n các đ c tínhọ ặ
ch y u c a đ i tủ ế ủ ố ượng. Có hai ki u mô t đ i tể ả ố ượng:
Mô t tham s ( nh n d ng theo tham s ).ả ố ậ ạ ố
Mô t theo c u trúc ( nh n d ng theo c u trúc).ả ấ ậ ạ ấ
Người ta đã áp d ng k thu t nh n d ng khá thành công v i nhi u đ i tụ ỹ ậ ậ ạ ớ ề ố ượ ngkhác nhau nh : nh n d ng nh vân tay, nh n d ng ch (ch cái, ch s , ch cóư ậ ạ ả ậ ạ ữ ữ ữ ố ữ
[15] Phương pháp l c nhi u nhọ ễ ả
Trang 26nh thu đ c th ng s b nhi u nên c n ph i lo i b nhi u. Ccá toán t
và t c s lý thuy t l c là: b l c ch cho tín hi u có t ng s nào đó thông qua, đừ ơ ở ế ọ ộ ọ ỉ ệ ầ ố ể
l c nhi u ngọ ễ ười ta thường dùng thông th p (theo quan đi m t ng s không gian)ấ ể ầ ố hay l y t h p tuy n tính đ san b ng (l c trung bình). Đ làm n i c nh ( ng v iấ ố ợ ế ể ằ ọ ể ổ ạ ứ ớ
t ng s cao), ngầ ố ười ta dùng b l c thông cao, l c Laplace. Phộ ọ ọ ương pháp l c nhi u.ọ ễ Chia làm 2 lo i: L c tuy n tính và l c phi tuy n.ạ ọ ế ọ ế
Làm tr n nhi u b ng l c tuy n tính: Khi ch p nh có th xu t hi n nhi uơ ễ ằ ọ ế ụ ả ể ấ ệ ề
lo i nhi u vào quá trình x lý nh, nên ta c n ph i l c nhi u. G m các phạ ễ ử ả ầ ả ọ ễ ồ ươ ngpháp c b n l c trung bình, l c thông th p,…Ví d l c trung bình: M i đi m nhơ ả ọ ọ ấ ụ ọ ỗ ể ả
được thay th b ng trung bình tr ng s c a các đi m lân c n.ế ằ ọ ố ủ ể ậ
Làm tr n nhi u b ng l c phi tuy n: Các b l c phi tuy n cũng hay đơ ễ ằ ọ ế ộ ọ ế ượ cdùng trong k thu t tăng cỹ ậ ường nh. M t s phả ộ ố ương pháp l c c b n b l c trungọ ơ ả ộ ọ
v , l c ngoài, V i l c trung v , đi m nh đ u vào s đị ọ ớ ọ ị ể ả ầ ẽ ược thay th b i trung v cácế ở ị
đi m nh còn l c gi trung v s dùng trung bình c ng c a hai giá tr “trung v ”ể ả ọ ả ị ẽ ộ ủ ị ị (trung bình c ng c a max và min).ộ ủ
L c trung v : K thu t này đòi h i giá tr các đi m nh trong c a s ph i x pọ ị ỹ ậ ỏ ị ể ả ử ổ ả ế theo th t tăng hay gi m d n so v i día tr trung v Kích thứ ự ả ầ ớ ị ị ước c a s thử ổ ườ ng
ch n sao cho s đi m nh trong c a s là l ọ ố ể ả ử ổ ẻ
Trang 27
[16] Phân vùng nhả
Phân vùng nh là bả ước then ch t trong x lý nh. Giai đo n này nh m phânố ử ả ạ ằ tích nh thành nh ng thành ph n có cùng tính ch t nào đó d a theo biên hay cácả ữ ầ ấ ự vùng liên thông. Tiêu chu n đ xác đ nh các vùng liên thông có th là cùng m cẩ ể ị ể ứ xám, cùng màu hay cùng đ nhám. Trộ ước h t c n làm rõ khái ni m "vùng nh"ế ầ ệ ả (Segment) và đ c đi m v t lý c a vùng.ặ ể ậ ủ
Vùng nh là m t chi ti t, m t th c th trông toàn c nh. Nó là m t t p h pả ộ ế ộ ự ể ả ộ ậ ợ các đi m có cùng ho c g n cùng m t tính ch t nào đó: m c xám, m c màu, để ặ ầ ộ ấ ứ ứ ộ nhám… Vùng nh là m t trong hai thu c tính c a nh. Nói đ n vùng nh là nói đ nả ộ ộ ủ ả ế ả ế tính ch t b m t. Đấ ề ặ ường bao quanh m t vùng nh (Boundary) là biên nh. Cácộ ả ả
đi m trong m t vùng nh có đ bi n thiên giá tr m c xám tể ộ ả ộ ế ị ứ ương đ i đ ng đ u hayố ồ ề tính k t c u tế ấ ương đ ng.ồ
D a vào đ c tính v t lý c a nh, ngự ặ ậ ủ ả ƣời ta có nhi u k thu t phân vùng: phânề ỹ ậ vùng d a theo mi n liên thông g i là phân vùng d a theo mi n đ ng nh t hay mi nự ề ọ ự ề ồ ấ ề
k ; phân vùng d a vào biên g i là phân vùng biên. Ngoài ra còn có các k thu t phânề ự ọ ỹ ậ vùng khác d a vào biên đ , phân vùng d a theo k t c u.ự ộ ự ế ấ
[17] Phương pháp phân vùng nhả
Đ phân tích các đ i tể ố ượng trong nh, chúng ta c n phân bi t đả ầ ệ ược các đ iố
tượng c n quan tâm v i ph n còn l i c a nh. Nh ng đ i tầ ớ ầ ạ ủ ả ữ ố ượng này có th tìmể
được nh các k thu t phân đo n nh, theo nghĩa tách ph n ti n nh ra h u nh.ờ ỹ ậ ạ ả ầ ề ả ậ ả
Có th hi u phân vùng là ti n trình chia nh thành nhi u vùng, m i vùngể ể ế ả ề ỗ
ch a m t đ i tứ ộ ố ượng hay m t nhóm đ i tộ ố ượng cùng ki u. Ch ng h n, m t đ iể ẳ ạ ộ ố
tượng có th là m t kí t trên 1 trang văn b n ho c m t đo n th ng trong m t b nể ộ ự ả ặ ộ ạ ẳ ộ ả
v k thu t ho c m t nhóm đ i tẽ ỹ ậ ặ ộ ố ượng có th bi u di n m t t hay m t đo n th ngể ể ễ ộ ừ ộ ạ ẳ
ti p xúc nhau.ế
[18] Khái ni m biênệ
Trang 28Biên là m t v n đ ch y u trong phân tích nh vì các k thu t nh ch y uộ ấ ề ủ ế ả ỹ ậ ả ủ ế
d a vào biên. M t đi m nh có th coi là biên n u đó có s thay đ i đ t ng t vự ộ ể ả ể ế ở ự ổ ộ ộ ề
m c xám. T p h p các đi m t o thành biên hay đứ ậ ợ ể ạ ường bao c a nh.ủ ả
Máy tính nhúng Raspberry Pi
[19] Gi i thi u v Raspberry Pi 3ớ ệ ề
Raspberry Pi là cái máy tính kích c nh m t chi c th ATM và ch y HĐHỡ ư ộ ế ẻ ạ Linux. Được phát tri n b i Raspberry Pi Foundation – là t ch c phi l i nhu n v iể ở ổ ứ ợ ậ ớ tiêu chí xây d ng h th ng mà nhi u ngự ệ ố ề ười có th s d ng để ử ụ ược trong nh ng côngữ
vi c tùy bi n khác nhau. Raspbian là m t h đi u hành thu n ti n cho vi c cài đ tệ ế ộ ệ ề ậ ệ ệ ặ
và s d ng v i s h tr l n t c ng đ ng mã ngu n m trên th gi i. ử ụ ớ ự ỗ ợ ớ ừ ộ ồ ồ ở ế ớ
Hình 2.7: Raspberry Pi 3 Model BChi ti t v thông s k thu t ( Raspberry Pi 3 ):ế ề ố ỹ ậ
B x lý Broadcom BCM2837 t c đ x lý 1.2 GHz 64bit quadcore ARMộ ử ố ộ ử CortexA53
M ng Wireless LAN chu n 802.11 b/g/nạ ẩ
Bluetooth 4.1 (Class & Low Energy)
Trang 29B x lý đa phộ ử ương ti n Videocore IV® Multimediaệ
Trang 30Hi n nay Raspberry Pi có giá thành khá r cùng kích thệ ẻ ước vô cùng nh g n.ỏ ọ
V i vi c tiêu th năng lớ ệ ụ ượng r t th p, Raspberry Pi chính là thi t b siêu ti tấ ấ ế ị ế
ki m đi n.ệ ệ
Được thi t k có GPU m nh.ế ế ạ
Nh ng thi t b này có th ph c v cho nhi u m c đích s d ng khác nhau.ữ ế ị ể ụ ụ ề ụ ử ụRaspberry Pi có kh năng ho t đ ng liên t c không ng ng ngh ả ạ ộ ụ ừ ỉ
Có th để ượ ậc l p trình b ng nhi u ngôn ng l p trình.ằ ề ữ ậ
Nhược đi m c a Raspberry Pi:ể ủ
CPU c u hình th pấ ấ
Không tích h p Wifi n u mu n s d ng ph i mua thêm USB Wifi.ợ ế ố ử ụ ả
Đ có th s d ng thi t b này yêu c u ngể ể ử ụ ế ị ầ ười dùng ph i có ki n th c c b nả ế ứ ơ ả
Trang 31v a đ t đừ ạ ược đ dài c n thi t trong khi v n đ m b o t c đ truy n hình nh tộ ầ ế ẫ ả ả ố ộ ề ả ừ module v RPi.ề
Trang 32Ngôn ng python và th vi n Opencvữ ư ệ
[22] Gi i thi u ngôn ng l p trình python ( python 2.7)ớ ệ ữ ậ
Hình 2.11: Ngôn ng l p trình python trên Raspberryữ ậ
Python là ngôn ng l p trình hữ ậ ướng đ i tố ượng, c p cao, m nh m , đấ ạ ẽ ượ ạ c t o
ra b i Guido van Rossum. Nó d dàng đ tìm hi u và đang n i lên nh m t trongở ễ ể ể ổ ư ộ
nh ng ngôn ng l p trình nh p môn t t nh t cho ngữ ữ ậ ậ ố ấ ườ ầi l n đ u ti p xúc v i ngônầ ế ớ
ng l p trình. Python hoàn toàn t o ki u đ ng và s d ng c ch c p phát b nhữ ậ ạ ể ộ ử ụ ơ ế ấ ộ ớ
t đ ng. Python có c u trúc d li u c p cao m nh m và cách ti p c n đ n gi nự ộ ấ ữ ệ ấ ạ ẽ ế ậ ơ ả
nh ng hi u qu đ i v i l p trình hư ệ ả ố ớ ậ ướng đ i tố ượng. Cú pháp l nh c a Python làệ ủ
đi m c ng vô cùng l n vì s rõ ràng, d hi u và cách gõ linh đ ng làm cho nó nhanhể ộ ớ ự ễ ể ộ chóng tr thành m t ngôn ng lý tở ộ ữ ưởng đ vi t script và phát tri n ng d ng trongể ế ể ứ ụ nhi u lĩnh v c, h u h t các n n t ng.ề ự ở ầ ế ề ả
Tính năng chính c a ngôn ng l p trình python:ủ ữ ậ
Ngôn ng l p trình đ n gi n, d h c: Python có cú pháp r t đ n gi n, rõữ ậ ơ ả ễ ọ ấ ơ ả ràng. Nó d đ c và vi t h n r t nhi u khi so sánh v i nh ng ngôn ng l p trìnhễ ọ ế ơ ấ ề ớ ữ ữ ậ
Trang 33khác nh C++, Java, C#. Python làm cho vi c l p trình tr nên thú v , cho phép b nư ệ ậ ở ị ạ
t p trung vào nh ng gi i pháp ch không ph i cú pháp.ậ ữ ả ứ ả
Mi n phí, mã ngu n m : B n có th t do s d ng và phân ph i Python,ễ ồ ở ạ ể ự ử ụ ố
th m chí là dùng cho m c đích thậ ụ ương m i. Vì là mã ngu n m , b n không nh ngạ ồ ở ạ ữ
có th s d ng các ph n m m, chể ử ụ ầ ề ương trình được vi t trong Python mà còn có thế ể thay đ i mã ngu n c a nó. Python có m t c ng đ ng r ng l n, không ng ng c iổ ồ ủ ộ ộ ồ ộ ớ ừ ả thi n nó m i l n c p nh t.ệ ỗ ầ ậ ậ
Kh năng di chuy n: Các chả ể ương trình Python có th di chuy n t n n t ngể ể ừ ề ả này sang n n t ng khác và ch y nó mà không có b t k thay đ i nào. Nó ch y li nề ả ạ ấ ỳ ổ ạ ề
m ch trên h u h t t t c các n n t ng nh Windows, macOS, Linux.ạ ầ ế ấ ả ề ả ư
Kh năng m r ng và có th nhúng: Gi s m t ng d ng đòi h i s ph cả ở ộ ể ả ử ộ ứ ụ ỏ ự ứ
t p r t l n, b n có th d dàng k t h p các ph n code b ng C, C++ và nh ng ngônạ ấ ớ ạ ể ễ ế ợ ầ ằ ữ
ng khác (có th g i đữ ể ọ ượ ừc t C) vào code Python. Đi u này s cung c p cho ngề ẽ ấ ứ
d ng c a b n nh ng tính năng t t h n cũng nh kh năng scripting mà nh ng ngônụ ủ ạ ữ ố ơ ư ả ữ
ng l p trình khác khó có th làm đữ ậ ể ược
Ngôn ng thông d ch c p cao: Không gi ng nh C/C++, v i Python, b nữ ị ấ ố ư ớ ạ không ph i lo l ng nh ng nhi m v khó khăn nh qu n lý b nh , d n d p nh ngả ắ ữ ệ ụ ư ả ộ ớ ọ ẹ ữ
d li u vô nghĩa, Khi ch y code Python, nó s t đ ng chuy n đ i code sang ngônữ ệ ạ ẽ ự ộ ể ổ
ng máy tính có th hi u. B n không c n lo l ng v b t k ho t đ ng c p th pữ ể ể ạ ầ ắ ề ấ ỳ ạ ộ ở ấ ấ nào
Th vi n tiêu chu n l n đ gi i quy t nh ng tác v ph bi n: Python cóư ệ ẩ ớ ể ả ế ữ ụ ổ ế
m t s lộ ố ượng l n th vi n tiêu chu n giúp cho công vi c l p trình c a b n tr nênớ ư ệ ẩ ệ ậ ủ ạ ở
d th h n r t nhi u, đ n gi n vì không ph i t vi t t t c code. Ví d : B n c nễ ở ơ ấ ề ơ ả ả ự ế ấ ả ụ ạ ầ
k t n i c s d li u MySQL trên Web server? B n có th nh p th vi nế ố ơ ở ữ ệ ạ ể ậ ư ệ MySQLdb và s d ng nó. Nh ng th vi n này đử ụ ữ ư ệ ược ki m tra k lể ỹ ưỡng và đượ ử c s
d ng b i hàng trăm ngụ ở ười. Vì v y, b n có th ch c ch n r ng nó s không làmậ ạ ể ắ ắ ằ ẽ
h ng code hay ng d ng c a mình.ỏ ứ ụ ủ
Hướng đ i tố ượng: M i th trong Python đ u là họ ứ ề ướng đ i tố ượng. L p trìnhậ
Trang 34quan. V i OOP, b n có th phân chia nh ng v n đ ph c t p thành nh ng t p nhớ ạ ể ữ ấ ề ứ ạ ữ ậ ỏ
h n b ng cách t o ra các đ i tơ ằ ạ ố ượng
[23] Th vi n Opencvư ệ
OpenCV (OpenSource Computer Vision) là m t th vi n mã ngu n m OpenCVộ ư ệ ồ ở
được phát hành theo gi y phép BSD, do đó nó hoàn toàn mi n phí cho c h c thu tấ ễ ả ọ ậ
và thương m i. Nó có các interface C++, C, Python, Java và h tr Windows, Linux,ạ ỗ ợ Mac OS, iOS và Android. OpenCV được thi t k đ tính toán hi u qu và v i sế ế ể ệ ả ớ ự
t p trung nhi u vào các ng d ng th i gian th c. Đậ ề ứ ụ ờ ự ược vi t b ng t i u hóa C/C++,ế ằ ố ư
th vi n có th t n d ng l i th c a x lý đa lõi. Đư ệ ể ậ ụ ợ ế ủ ử ượ ử ục s d ng trên kh p th gi i,ắ ế ớ OpenCV có c ng đ ng h n 47 nghìn ngộ ồ ơ ười dùng và s lố ượng download vượt quá 6 tri u l n.ệ ầ
Hi n t i b n em đang nghiên c u th vi n OpenCV là b n 2.4.13ệ ạ ả ứ ư ệ ả
Cài đ t OpenCV 2 trên Raspberry Pi, nh p l nh sau trong Terminal:ặ ậ ệ
$ sudo aptget install pythonopencv
[24] Ch c năng có trong th vi n OpenCVứ ư ệ
Th vi n OpenCV bao g m m t s tính năng n i b t nh :ư ệ ồ ộ ố ổ ậ ư
B công c h tr 2D và 3Dộ ụ ỗ ợ
Nh n di n khuôn m tậ ệ ặ
Nh n di n c chậ ệ ử ỉ
Nh n d ng chuy n đ ng, đ i tậ ạ ể ộ ố ượng, hành vi
Tương tác gi a con ngữ ười và máy tính
Đi u khi n Robotề ể
[25] Ứng d ng OpenCV trong th c tụ ự ế
Trong quân s :ự
Trang 35Các h th ng tích h p quang h ng ngo i có kh năng t đ ng đi u khi nệ ố ợ ồ ạ ả ự ộ ề ể dàn h a l c (pháo, tên l a) đỏ ự ử ượ ắc l p đ t cho các tr n đ a cao x , trên xe tăng, tàuặ ậ ị ạ chi n, máy bay, tên l a ho c v tinh (Hình 2.10). Chúng đế ử ặ ệ ược thay th và h tr cácế ỗ ợ dàn rada d b nhi u trong vi c t đ ng phát hi n, c nh gi i, bám b t m c tiêu.ễ ị ễ ệ ự ộ ệ ả ớ ắ ụ
Đ c bi t có nh ng lo i l p trên máy bay có kh năng đi u khi n h a l c đánh pháặ ệ ữ ạ ắ ả ề ể ỏ ự hàng ch c m c tiêu m t lúc. Ngoài ra còn ph i k đ n các đ u t d n tên l a vàụ ụ ộ ả ể ế ầ ự ẫ ử
đ n thông minh.ạ
Hình 2.12: H th ng tên l a tích h p quang h ng ngo iệ ố ử ợ ồ ạ
Trong nghiên c u y sinh dứ ược h c:ọ
Các kính hi n vi có kh năng t đ ng nh n d ng và đo đ m các t bào v iể ả ự ộ ậ ạ ế ế ớ
đ chính xác cao. Các kính hi n vi có h th ng d n độ ể ệ ố ẫ ường laser cho phép th c hi nự ệ
nh ng ph u thu t r t ph c t p nh m u não, n i mà m t s không chính xác cữ ẫ ậ ấ ứ ạ ư ổ ơ ộ ự ỡ
mm cũng gây t n h i đ n các dây th n kinh ch ng ch t xung quanh ổ ạ ế ầ ằ ị
Trong lĩnh v c hàng không vũ tr :ự ụ
H th ng quang đi n t đóng vai trò c a các th giác máy (machine vision) cóệ ố ệ ử ủ ị
kh năng t đ ng đo đ c ki m tra ch t lả ự ộ ạ ể ấ ượng s n ph m trong các dây truy n s nả ẩ ề ả
xu t: phân lo i h t ngũ c c, cà phê; tìm l i l p ráp linh ki n các b n vi m ch vàấ ạ ạ ố ỗ ắ ệ ả ạ khuy t t t các m i hàn và đ ng c Các h th ng quang đi n t cũng đế ậ ố ộ ơ ệ ố ệ ử ượ ứ c ng
Trang 36d ng ngày càng nhi u trong giao thông nh đo t c đ , t đ ng ki m soát đi uụ ề ư ố ộ ự ộ ể ề khi n và phân lu ng giao thông.ể ồ
Hình 2.13: ng d ng opencv trong lĩnh v c hàng khôngỨ ụ ự
Trong an ninh, phòng ch ng t i ph m, b o v pháp lu t:ố ộ ạ ả ệ ậ
Các h th ng camera nh n d ng khuôn m t vân tay t đ ng cũng nh phátệ ố ậ ạ ặ ự ộ ư
hi n, theo dõi, c nh báo các âm m u và ho t đ ng kh ng b Các xe robot t hànhệ ả ư ạ ộ ủ ố ự
có g n các camera cũng đắ ượ ức ng d ng trong các môi trụ ường đ c h i, dò phá bomộ ạ mìn
Hình 2.14: X lý nh trong phòng ch ng t i ph m ử ả ố ộ ạ
Trang 37Trong công nghi p gi i trí truy n hình:ệ ả ề
Các h th ng tích h p có th đi u khi n các camera kích thệ ố ợ ể ề ể ước và kh iố
lượng l n d dàng t đ ng bám theo các đ i tớ ễ ự ộ ố ượng chuy n đ ng nhanh nh bóngể ộ ư đang bay, đua xe
Ph c v nh m t b chuy n đ i WiFi, truy c p internet không dây có thụ ụ ư ộ ộ ể ổ ậ ể
được thêm vào b t k thi t k d a trên vi đi u khi n nào v i k t n i đ n gi nấ ỳ ế ế ự ề ể ớ ế ố ơ ả
Trang 39Tích h p TR switch, balun, LNA, khu ch đ i công su t và matching networkợ ế ạ ấ
M t chộ ương trình được vi t v i Arduino IDE đế ớ ược g i là m t b n phácọ ộ ả
th o. B n phác th o đả ả ả ượ ưc l u trên máy tính phát tri n dể ướ ại d ng t p văn b n cóệ ả đuôi t p.ino. Arduino Software (IDE) trệ ước 1.0 b n phác th o đã l u v i ph n mả ả ư ớ ầ ở
r ng.ộ
Yêu c u c a m t chầ ủ ộ ương trình:
Trang 40Setup( ): Ch c năng này đứ ược g i m t l n khi b n phác th o b t đ u sau khiọ ộ ầ ả ả ắ ầ
b t ngu n ho c thi t l p l i. Nó đậ ồ ặ ế ậ ạ ược s d ng đ kh i t o bi n, ch đử ụ ể ở ạ ế ế ộ ghim đ u vào và đ u ra, và các th vi n khác c n thi t trong b n phác th o. ầ ầ ư ệ ầ ế ả ảLoop( ): Sau khi setup( )thoát kh i hàm (k t thúc), loop( )hàm đỏ ế ược th c hi nự ệ
l p l i trong chặ ạ ương trình chính. Nó đi u khi n b ng cho đ n khi bo m chề ể ả ế ạ
t t ho c đắ ặ ược đ t l i.ặ ạ
Giao th c truy n tin hi u UDP/IP:ứ ề ệ
UDP (User Datagram Protocol) là m t trong nh ng giao th c c t lõi c a giaoộ ữ ứ ố ủ
th c TCP/IP. Dùng UDP, chứ ương trình trên m ng máy tính có th g i nh ng d li uạ ể ử ữ ữ ệ
ng n đắ ược g i là datagram t i máy khác. UDP không cung c p s tin c y và th tọ ớ ấ ự ậ ứ ự truy n nh n mà TCP làm, các gói d li u có th đ n không đúng th t ho c b m tề ậ ữ ệ ể ế ứ ự ặ ị ấ
mà không có thông báo. Tuy nhiên UDP nhanh và hi u qu h n đ i v i các m c tiêuệ ả ơ ố ớ ụ
nh kích thư ước nh và yêu c u kh t khe v th i gian. Do b n ch t không tr ng tháiỏ ầ ắ ề ờ ả ấ ạ
c a nó nên nó h u d ng đ i v i vi c tr l i các truy v n nh v i s lủ ữ ụ ố ớ ệ ả ờ ấ ỏ ớ ố ượng l nớ
đi u khi n t i cho phép lên t i 46V và dòng ra t i là 4A, r t phù h p cho các ngề ể ả ớ ả ấ ợ ứ
d ng đi u khi n t i c m đ ng c DC, đ ng c bụ ề ể ả ả ộ ơ ộ ơ ước, r le…ơ