Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.35 MB, 20 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
Mã h c ph n: ME56ọ ầ 67Lớp: 137610
Học k : 2022.1 ỳ
<b>Họ và tên SV: </b>Lê Ngọc Chinh 20184359 Lương Xuân Thảo 20184623
<b>Giảng viên hướng dẫn: TS. Nguyễn Xuân Thuận </b>
Hà Nội, ngày 14 tháng 3 năm 2023
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2"><b><small>MỤC LỤC ... 3 </small></b>
<b><small>TÓM T T N</small></b><small>ẮỘI DUNG ĐỀ</small><b><small> TÀI</small></b><small>... 4 </small>
<b><small>Chương 1: TỔNG QUAN VỀ ĐỀ TÀI ... 5 </small></b>
<b><small>1.1 T ng quan v</small></b><small>ổ</small> <b><small>ề thị giác máy (Computer Vision)</small></b><small> ... 5 </small>
<b><small>1.1.1 ng d ng th giác máy tính</small></b><small>Ứụị ... 5 </small>
<small>1.1.2. Bài toán phát hiện và phân loại sản phẩm ... 6 </small>
<small>1.2 Trí tuệ nhân tạo cho hệ thống robot ... 6 </small>
<b><small>Chương 2: XÂY DỰNG MƠ HÌNH NHẬN DIỆN ... 7 </small></b>
<b><small>2.1. Phương pháp xử lý ảnh để nhận di n phôi</small></b><small>ệ ... 7 </small>
<b><small>2.1.1 Phương pháp huấn luyện các mơ hình học sâu ... 7 </small></b>
<b><small>2.2.2. Bài tốn phát hi n v t th (object detection)</small></b><small>ệậể ... 8 </small>
<b><small>2.2. Xây d ng mơ hình nh</small></b><small>ự</small> <b><small>ận diện. </small></b><small>... 10 </small>
<b><small>2.3 Xây d ng mơ hình hu</small></b><small>ự</small> <b><small>ấn luyện </small></b><small>... 11 </small>
<b><small>2.4. Hu n luy n mơ hình.</small></b><small>ấệ ... 16 </small>
<small>2.5. Đánh giá mơ hình ... 17 </small>
<b><small>Chương 3: THỰC NGHIỆM ... 19 </small></b>
<b><small>3.1. Xây d ng ng d ng nh</small></b><small>ựứụ</small> <b><small>ận diện phôi.</small></b><small> ... 19 </small>
<b><small>3.2. Đánh giá năng suất của sản phẩm. ... 20 </small></b>
<b><small>Chương 4: KẾT LUẬN ... 21 </small></b>
<b><small>4.1. K ết luậ ... 21 n4.2. Hướng phát triển của đồ án trong tương lai ... 21 .</small></b>
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">Với mục tiêu nâng cao năng suất dây chuy n công ngh ề ệ để giảm giá thành, nâng cao chất lượng và khả năng cạnh tranh của sản phẩm, việc ứng d ng công ngh t ụ ệ ự động hóa có tính linh ho t cao thay th cho các dây chuy n t ạ ế ề ự động c ng ngày càng r ng rãi. Cho ứ ộnên xu th s d ng Robot thay th ế ử ụ ế con người trong các dây chuy n s n xu t và l p ráp ề ả ấ ắtrở nên t t y u. Các h ấ ế ệrobot đang dần được áp dụng nhi u trong các h s n xu t tự ng ề ệ ả ấ độtuy nhiên v n c n s giúp s c cẫ ầ ự ứ ủa con người do có nh ng h ữ ệ thống s h u nhở ữ ững đặc thù riêng, khơng mang tính t ng qt. ổ
Trong những năm gần đây, trí tuệ nhân t o là mạ ột lĩnh vực đang phát triển m t cách ộbùng n ổ đem lạ ấi r t nhiều ứng d ng và gi i pháp khác nhau trong t t c các ngành ngh ụ ả ấ ả ềvà mang tính t ng qt hóa cao, tuy nhiên ng dổ ứ ụng trong robot và s n xu t t ả ấ ự động vẫn đang là một lĩnh vực tiềm năng, chưa khai thác được hết.
Dựa vào các nhu c u th c tầ ự ế đã khảo sát ở trên, đề tài này được th c hiự ện để ứng dụng trí tu nhân tệ ạo ứng dụng trong Robot để giải quy t bài toán nh n diế ậ ện và định v v t th ị ậ ểsử dụng phương pháp định v ị các điểm tâm c a v t. ủ ậ
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><small>5 </small>
<b>1.1 T ng quan v </b>ổ <b>ề thị giác máy (Computer Vision)</b>
Thị giác máy tính (Computer Vision) là một lĩnh vực c a trí tu nhân t o, nghiên củ ệ ạ ứu về khả năng của máy tính để hiểu và phân tích hình nh và video. Th giác máy tính là ả ịmột lĩnh vực đa dạng, đòi hỏi sự kết hợp giữa nhiều kiến thức, bao gồm xử lý tín hiệu, truyền thơng, th ng kê, tốn h c, và các k thuố ọ ỹ ật c a trí tuủ ệ nhân tạo.
Các ng d ng c a th giác máy tính là rứ ụ ủ ị ất đa dạng và ngày càng phát tri n. V i s ể ớ ự tiến bộ trong công ngh , th giác máy tính s ệ ị ẽ tiếp tục phát tri n và cung c p nh ng gi i pháp ể ấ ữ ảđáp ứng các yêu cầu của xã hội và người dùng.
• Xử lý hình nh và video: Thị ả giác máy tính được sử dụng để giúp robot xử lý hình ảnh và video thu được từ các cảm biến. Các thuật toán thị giác máy tính có thể giúp robot nhanh chóng và chính xác phân tích hình ảnh và video để ấ l y thơng tin cần thiết.
• Tự động hóa các tác v : Th ụ ị giác máy tính đượ ử dc s ụng để giúp robot tự động hóa các tác vụ như kiểm tra chất lượng s n ph m, phát hi n l i và th c hi n các tác v ả ẩ ệ ỗ ự ệ ụsản xuất cơ bản.
Hình 2: Mơ hình h ệ thống ứng d ng x lý nh trong công nghi p ụ ử ả ệ
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5"><b>1.1.2. Bài toán phát hiện và phân loại sản phẩm </b>
Bài toán phát hiện và phân loại sản phẩm là một trong những bài toán quan trọng trong việc tự động hóa q trình sản xuất. Bài tốn này u cầu robot có khả năng phát hiện và phân loại các sản phẩm một cách chính xác và nhanh chóng để có thể thực hiện các tác vụ như đóng gói sản phẩm, kiểm tra chất lượng, vận chuyển sản phẩm. Để giải quyết bài tốn này, ta có thể sử dụng cánh tay robot và thị giác máy tính.
Cánh tay robot có thể được lắp đặt trên các băng chuyền sản xuất hoặc trong kho hàng để thực hiện các tác vụ cụ thể. Cánh tay robot sử dụng các cảm biến và các bộ điều khiển để thực hiện các chuyển động cần thiết để thực hiện các tác vụ. Trong trường hợp phát hiện sản phẩm, cánh tay robot có thể được sử dụng để di chuyển đến vị trí sản phẩm và thu thập dữ liệu về sản phẩm đó.
Thị giác máy tính được sử dụng để phân tích dữ liệu thu thập được từ cánh tay robot để xác định loại sản phẩm. Các thuật toán thị giác máy tính được sử dụng để phát hiện và phân loại các sản phẩm dựa trên hình dạng, màu sắc và các đặc tính khác của sản phẩm. Các thuật tốn này sử dụng các mơ hình học máy để học từ dữ liệu và có khả năng phát hiện và phân loại các sản phẩm một cách chính xác và nhanh chóng.
<b>1.2 Trí tuệ nhân tạo cho hệ thống robot </b>
Cùng với Internet of Things (IoT), Big Data và Điện toán đám mây (Cloud Computing), Trí tuệ nhân tạo (Artificial Intelligence) tiếp tục là một trong những lĩnh vực đang nổi lên cho tất cả các ngành cơng nghiệp & có mặt ở khắp mọi nơi.
Robot trí tuệ nhân tạo là một cỗ máy tự động họa được phát minh ra. Để thay thế, hỗ trợ và giúp đỡ con người trong nhiều hoạt động sản xuất và lĩnh vực cuộc sống. Robot này cao cấp hơn những Robot thông thường ở điểm: Chúng được các nhà khoa học lập trình các phần mềm mơ phỏng trí tuệ con người.
Do đó, nhữngAIRobot khơng chỉ có những ưu điểm như các Robot khác. Mà chúng cịn có khả năng suy nghĩ, nhận thức, và giao tiếp như con người. Do đó, Robot này ngày càng được sử dụng phổ biến và ưa chuộng trong các ngành nghề giao tiếp nhiều với con người.
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6"><small>7 </small>
<b>2.1. Phương pháp xử lý </b>ảnh để<b> nhận diện phôi</b>
Việc nh n diậ ện và phân lo i biên d ng c a phơi trong hình nh là m t bài toán thi t yạ ạ ủ ả ộ ế ếu trong các bài toán nh n di n nói chungậ ệ . Các phương pháp xử lý ảnh như OpenCV và Deep Learning được sử dụng để nhận diện và phân tích biên dạng phơi trong hình ảnh. Các phương pháp xử lý ảnh như OpenCV sử dụng các thuật toán nhận diện đối tượng để phát hi n và trích xu t thơng tin trong hình ệ ấ ảnh. Điều này có thể bao gồm vi c s ệ ửdụng các kỹ thu t ti n x ậ ề ử lý như lọc và phân ngưỡng ảnh để tách phơi ra khỏi n n hình ềảnh. Sau đó, ta có thể sử dụng các phương pháp nhận diện đối tượng như Hough Transform ho c phân lo i dặ ạ ựa trên kích thước và biên dạng để phát hiện và định v . ị Các phương pháp Deep Learning sử dụng các mơ hình mạng Nơ-ron để học và phân loại dựa trên các đặc trưng hình ảnh. Các mơ hình mạng nơ-ron này được huấn luy n trên ệcác t p dậ ữ liệ ớu l n c a các hình nh chủ ả ứa các phơi có biên d ng vng và tròn ạ để ọc hcách phân loại chúng đúng cách. Các phương pháp Deep Learning thường có độ chính xác cao hơn so với các phương pháp truyền thống như OpenCV, nhưng yêu cầu nhiều dữ liệu hu n luyấ ện và tính tốn cao hơn.
Vậy nên, vi c nh n diệ ậ ện biên của phôi và xác định tâm phôi trong ảnh là m t bài tốn ộcần thiết để và có th ể được giải quyết bằng các phương pháp xử lý ảnh như OpenCV hoặc Deep Learning. Tuy nhiên, vi c lựa chệ ọn phương pháp phù hợp và tối ưu sẽ phụ thuộc vào các yêu c u c ầ ụ thể của ứng d ng và tụ ập dữ liệu có sẵn.
Hướng đi của bài tốn là nhận diện và gắp phơi trên bề mặt của nó nên chúng ta cần phải định vị được tọa độ tâm mặt của các phôi.
<b>2.1.1 Phương pháp huấn luyện các mơ hình học sâu</b>
Quy trình hu n luy n m t mơ hình h c sâu c n ph i th c hiấ ệ ộ ọ ầ ả ự ện các bước sau:
<b> Bước 1: Chu n b d u hu n luy n (Data Preparation):</b>ẩ <b>ị ữ liệ</b> ẩ ệ G m 2 ph n chính: Thu ồ ầthập dữ ệu và Ti n x lý d li ề ử ữ ệu. li
Thu th p d ậ ữ liệu là t p hậ ợp các phương pháp khác nhau để tìm ki m d ế ữ liệu phù h p ( ợ ởdạng ảnh, video, audio,….) và gom chúng lại phục vụ cho bài tốn đang làm. Ngồi ra, ta c n ph i tìm hiầ ả ểu và phân tích để đánh giá tập dữ liệu này trên một tiêu chí xác định phù h p v i các tác v ợ ớ ụ đang thực hiện. Đố ới v i các mơ hình h c sâu c a th giác máy, các ọ ủ ịdữ liệu dạng ảnh thường được thu thập ở các trang web công c ng, không có b n quyộ ả ền hoặc có th tự chụp b ng camera. Ngồi ra, có mể ằ ột vài phương pháp nâng cao để ăng tcường dữ li u (data augmentation) s dệ ử ụng các phương pháp xử lý ảnh để th c hi n. ự ệ Tiền x lý d ử ữ liệu là công vi c l c s ch và chu n hóa d ệ ọ ạ ẩ ữ liệ Đây là công việ ốn u. c tnhiều thời gian nhưng là bước quan trọng nh t trong ph n chuẩn bị d li u. Mục tiêu của ấ ầ ữ ệviệc ti n x lý d liệu là lo i bỏ ề ử ữ ạ nhiễu, đưa dữ liệu về một quy chuẩn chung nhằm giúp mơ hình có th hể ọc đượ ốt hơn, tiếc t t ki m chi phí, th i gian hu n luyệ ờ ấ ện, gia tăng độchính xác.
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">Trong các mơ hình h c sâu c a th ọ ủ ị giác máy, thường s dử ụng các phương pháp x lý ửảnh truy n thống v i các phép biề ớ ến đổi hình thái học để có thể ề ti n x lý cho d li u. ử ữ ệ
<b> Bước 2: Tinh ch nh các siêu tham s </b>ỉ <b>ố để huấn luy n mơ hình (Tuning </b>ệ
<b>Hyperparameters). </b>
Các siêu tham s (hyperparameters) khác v i các tham s c a mơ hình (parameters), ố ớ ố ủcác tham s cố ủa mô hình hay cịn được g i là tr ng s là các s ọ ọ ố ố được tìm ra sau quá trình huấn luy n trên t p d li u, còn các siêu tham số là các số được ch n th ệ ậ ữ ệ ọ ủ cơng để giúp cho mơ hình tìm ra các tham s m t cách tố ộ ối ưu nhất.
Một vài siêu tham s có thố ể kể đến như: số vòng lặp (epoch): là s lố ần đưa mơ hình qua tồn b t p d ộ ậ ữ liệu, tốc độ ọ h c (learning rate) là m t s n m trong kho ng t ộ ố ằ ả ừ 0 đến 1, tốc độ học có nhi m vụ ki m sốt tệ ể ốc độ mơ hình thay đổi và cập nh t trọng số. Ngồi ra cịn ậcó th l a chể ự ọn thay đổi các phương pháp tối ưu khác nhau như GD, SGD, Adam,… Sau khi l a ch n các siêu thaự ọ m số, ta hu n luyấ ện mô hình và đánh giá kết qu c a mơ ả ủhình. C n ph i ch n nhi u b siêu tham s ầ ả ọ ề ộ ố khác nhau để có th tìm ra mơ hình t t nh t. ể ố ấ
<b> Bước 3: Đánh giá kết quả của mô hình </b>
Sau khi th c hiự ện bước tinh ch nh các siêu tham s và hu n luy n mơ hình, ta c n phỉ ố ấ ệ ầ ải đánh giá xem liệu mơ hình đã hoạt động tốt hay chưa. Với mỗi bộ siêu tham số, ta có một mơ hình v i các tr ng s khác nhau, ta c n phớ ọ ố ầ ải đánh giá xem bộ siêu tham s ố nào đem lại k t qu t t nh t trên th c tế ả ố ấ ự ế. Thông thường, để đánh giá mơ hình, ta c n chu n b mầ ẩ ị ột tập dữ liệu để kiểm tra tách biệt độ ậc l p v i t p d ớ ậ ữ liệu hu n luy n. T p d ấ ệ ậ ữ liệu ki m tra ể(test data) là t p d ậ ữ liệu khác hoàn toàn so v i t p dớ ậ ữ liệu khi mơ hình chạy qua để ập cnhật trọng số, nếu mơ hình cho k t qu t t trên t p d ế ả ố ậ ữ liệu ki m tra, có th k t luể ể ế ận đó là một mơ hình t t. M t s ố ộ ố phương pháp đánh giá có thể ể k đến như: Đánh giá độ chính xác (Accuracy), Average Precision (AP), Average Recall (AR), mean Average Precision (mAP), F1 Score, Confusion Matrix, PCK, OKS,…
<b>2.2.2. Bài toán phát hiện v t th</b>ậ <b>ể (object detection) </b>
Bài toán phát hi n v t th hay nh n dệ ậ ể ậ ạng đối tượng (Object detection) là m t thu t ng ộ ậ ữchung để mô tả một tập hợp các nhiệm vụ thị giác máy tính có liên quan liên quan đến việc xác định các đối tượng trong ảnh kỹ thuật số. Nhận dạng đối tượng đã được sử dụng rộng rãi để phát hiện khuôn mặt, phát hiện xe, đếm số người đi bộ, hệ thống b o m t và ả ậxe khơng người lái. Có nhiều cách để nhận diện đối tượng có thể được sử dụng cũng như trong nhiều lĩnh vực th c tự ế.
Về phần ti p c n mơ hình, thu t toán nh n dế ậ ậ ậ ạng đối tượng có th ể được phân lo i thành ạ2 d ng chính: One-stage và Two-stage Method ạ
❖ <b>Two-stage Method: </b>
Phương pháp nhậ ạ ể chia làm 2 giai đoạn. Giai đoạn đầ
đoạn phát hi n v t th ở trong 1 b c ảnh. Giai đoạn th 2 là gệ ậ ể ứ ứ iai đoạn phân loại các v t ậ
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8"><small>9 </small>thể đã được phát hiện ở giai đoạn 1. M t s mơ hình ph ộ ố ổ biến của phương pháp Two-stage có th k ể ể đến như: RCNN, Fast RCNN, Faster RCNN.
Hình 4: Mơ t mơ hình RCNN ả
Trong hình 4 là lu ng x lý (pipeline) c a mô hình RCNN. ồ ử ủ Ở giai đoạn 1 của phương pháp two-stage, R-CNN s d ng thuử ụ ật tốn selective search để trích ch n ra 2000 vùng ọđềxuất (regional proposals). Vùng đề xuất là vùng được coi là có khả năng chứa vật th ểbên trong đó. Sau khi trích xuất ra khoảng 2000 vùng đề xuất với các vị ị tr và kích thước khác nhau, 2000 vùng này s ẽ được đưa qua một mơ hình CNN để phân loại xem vùng đềxuất đó thuộc lớp (class) nào. Đối với các mơ hình Fast R-CNN hay Faster RCNN, đã có những c i ti n nhả ế ất định vềphương pháp trích chọn vùng đề xu t giúp cho mơ hình phát ấhiện v t th nhanh và chính xác hơn nhưng nhìn chung các phương pháp twostage vẫn ậ ểthực hi n phát hi n v t th và phân lo i v t th ệ ệ ậ ể ạ ậ ể ở2 giai đoạn riêng biệt. Điều này làm cho phương pháp two-stage có độ chính xác cao tuy nhiên tốc độ xử lý chậm.
❖ <b>One-stage Method: </b>
Khác với phương pháp Two-stage, phương pháp này sẽ không phân ra hai giai đoạn rõ ràng, mà cùng lúc s ẽ thực hi n c ệ ả việc phát hi n v t th (tìm bounding box) và phân loệ ậ ể ại vật th (classification). ể
Phương pháp One-stage tìm kiếm và phát hiện vật thể cũng như phân loại chúng chỉ trong m t thu t toán ộ ậ
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">Một s mơ hình ph ố ổ biến của phương pháp One-stage có thể kể đến như YOLO, SSD,… Ưu điểm của phương pháp trên là nhanh, có khả năng chạy trong thời gian thực (real time) tuy nhiên độ chính xác khơng cao bằng các phương pháp two-stage.
<b>2.2. Xây d ng mơ hình nh n di</b>ự ậ <b>ện. Thu th p d </b>ậ <b>ữ liệu.</b>
Sử d ng các ụ ảnh thu đượ ừ camera sau khi đã hiệc t u chỉnh để thực hiện đánh nhãn ữ d liệu.
<b> </b>
Tăng cường dữ liệu bằng cách xoay và lật lại các góc ảnh khác nhau.
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10"><small>11 </small>
<b>Phân chia t p d u hu n luy</b>ậ <b>ữ liệ</b> ấ <b>ện: </b>
Sau khi thu th p d ậ ữ liệu, ti n x lý và t o nhãn, phân chia d ề ử ạ ữ liệu thành 2 t p huậ ấn luyện (Train) và kiểm tra (Test):
Tập huấn luyện: 90 ảnh Tập ki m tra: ể 10 ảnh.
<b>2.3 Xây d ng mơ hình hu n luy</b>ự ấ <b>ện • Lựa ch n và thi</b>ọ <b>ết kế mơ hình </b>
➢ Hướng tiếp c n của bài toán: phân biậ ệt các nhãn và xác định đượ ọa độ ủa v t c t c ậthể trên hình nh -> bài toán Object Detection ả
➢ Về ầ ph n ti p c n mơ hình thì có th phân lo i Object Detection thành 1 s d ng ế ậ ể ạ ố ạchính như sau:
➢ Lựa ch n sọ ử d ng mô hình FasterRCNN kụ ết hợp với FPN
Faster R-CNN v i Feature Pyramid Network (FPN) là m t trong nh ng mơ hình object ớ ộ ữdetection hi u qu ệ ả nhất hi n nay. Vi c k t h p gi a Faster R-CNN và FPN c i thiệ ệ ế ợ ữ ả ện đáng kể hiệu su t cấ ủa mô hình nh vào nh ng lờ ữ ợi ích sau đây:
• Sử dụng đa tầng feature pyramid: FPN có khảnăng tạo ra đa tầng feature pyramid từ các feature map được trích xu t t mấ ừ ạng CNN, giúp tăng cường kh ả năng detect đối tượng với các kích thước khác nhau và giảm thiểu hiện tượng mất mát thông tin khi co giãn ảnh.
• Kế ợt h p giữa tính năng nhận dạng và định vị: Faster R-CNN và FPN cùng cung cấp các phương pháp hiệu quả để phân loại và định vị vật thể, giúp mơ hình đạt được hi u su t tốt trong c hai nhi m vụ. ệ ấ ả ệ
• Hiệu su t cao: Mơ hình Faster R-CNN kết h p vấ ợ ới FPN đã đạt được nhiều k t qu ế ảấn tượng trong các bài kiểm tra trên các tập dữ liệu phổ biến như COCO, PASCAL VOC, và ImageNet.
Luồng d ữ liệu khi s d ng Faster R-CNN k t h p vử ụ ế ợ ới FPN để phát hiện đối tượng trong ảnh đầu vào:
</div>