Chương 1: Giới thiệu tổng quan Chương 2: Cơ sở lý thuyết Chương 3: Nội dung thực hiện Chương 4: Kết quả đạt được Chương 5: Kết luận và hướng phát triển 3 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu Robot Delta Khái niệm robot có cấu trúc song song được Gough và Whitehall đưa ra vào năm 1962. Ngày nay, Delta robot (robot song song là một loại robot được sử dụng nhiều trong công nghiệp, đặc biệt là khâu phân loại và đóng gói sản phẩm nhờ vào đặc tính có tốc độ và độ chính xác cao). Robot Delta có cơ cấu động học song song ba bậc tự do, cấu trúc vòng kín. Trong đó có 3 nhánh, với mỗi nhánh, một đầu được nối vào giá di động thông qua cơ cấu hình bình hành.
Với cấu trúc hình học như vậy nên giá di động luôn định hướng và chỉ có thể chuyển động tịnh tiến theo ba trục XYZ. Dựa vào đặt tính của các khớp của robot mà ta có thể phân loại robot delta làm 2 dạng chính: - Robot delta hoạt động theo 3 khớp xoay: đối với loại này thường được ứng dụng để gắp và thả các vật có kích thước vừa phải từ trên các băng truyền để ứng dụng vào việc phân loại cũng như để đóng gói. Bên cạnh đó, nó còn được ứng dụng trong các dây chuyển sản xuất thực phẩm và y học. 1: Robot delta dùng khớp xoay.
- Robot hoạt động theo kiểu các khớp trượt: Đa phần loại này được sử dụng trong các loại máy in 3D. 1 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO Hình 2. 2: Robot delta dùng khớp trượt.2 Tổng quan về công nghệ xử lý ảnh 2.1 Các khái niệm về xử lí ảnh Xử lý ảnh là một phân ngành trong xử lý số tín hiệu với tín hiệu xử lý là ảnh. Đây là một phân ngành khoa học mới rất phát triển trong những năm gần đây.
Xử lý ảnh gồm 4 lĩnh vực chính: xử lý nâng cao chất lượng ảnh, nhận dạng ảnh, nén ảnh và truy vấn ảnh.2 Màu RGB Mô hình màu RGB sử dụng mô hình bổ sung trong đó ánh sáng đỏ, xanh lục và xanh lam được tổ hợp với nhau theo nhiều phương thức khác nhau để tạo thành các màu khác. Từ viết tắt RGB trong tiếng Anh có nghĩa là đỏ (red), xanh lục (green) và xanh lam (blue), là ba màu gốc trong các mô hình ánh sáng bổ sung. 3: Hệ màu RGB.3 Không gian màu HSV Không gian màu HSV không giống như màu RGB là sử dụng các hệ màu cơ bản, HSV gần gũi với người sử dụng về cách cảm nhận màu sắc. Không gian màu HSV (còn được gọi là HSB) là một phương thức để mô tả màu sắc một cách tự nhiên.
Bánh xe màu HSV được mô tả dưới dạng hình nón hoặc hình trụ, nhưng luôn có 3 thành phần sau: 2 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO - H: (Hue) Vùng màu: phần màu của mô hình được biểu thị dưới dạng số từ 0 đến 360 độ. 4: Thông số H (hue) về vùng màu. - S: (saturation) Độ bão hòa màu: hay còn được xem là lượng màu xám trong màu cụ thể nào đó, được biểu diễn từ 0 đến 100 phần trăm. Thành phần này nếu được giảm về 0 sẽ tạo ra màu sắc có sắc xám, màu nhạt do mức bão hòa thấp và tạo ra hiệu ứng mờ dần (trong một số tài liệu độ bão hòa sẽ được xuất hiện dưới phạm vi từ 0 đến 1), khi độ bão hào đạt 100% sẽ tạo ra màu tinh khiết mang tính chất của màu được chọn ở Hue (H).
5: Thông số S (saturation) về độ bão hòa. - B: (hay V): (Bright hay Value) Độ sáng: giá trị độ sáng được sử dụng kết hợp với độ bão hòa và mô tả độ sáng hoặc cường độ của màu sắc từ 0-100 phần trăm, trong đó 0 là hoàn toàn đen và 100 là sáng nhất cho thấy màu sắc nhất. 6: Thông số B (brigh) về độ sáng.6 được tạo ra để thể hiện mối quan hệ giữa các thành phần trong hệ màu HSV, với giá trị màu được chọn là màu đỏ và mối liên hệ giữa độ bão hòa (S), độ sáng (V) thông qua 2 trục thẳng đứng và ngang. 3 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO Hình 2.
7: Mối liên hệ giữa thông số S và V (saturation và Value). Trong luận văn nhóm đã sử dụng các frame ảnh mà mỗi pixel ảnh có một độ sâu là 8 bít (256) từ đây ta có thể chuyển đổi các giá trị H, S, V thành các khoảng giá trị tương ứng là [0,255] thay vì [0,360] ở H cũng như [0,1] ở S và V. Để thuận tiện cho việc nhận diện vật thể ta sử dụng hàm inRang để chuyển từ ảnh hiện có sang ảnh nhị phân. Lý do chúng em sử dụng không gian màu HSV để phát hiện và tạo ngưỡng màu trên RGB hay BGR là HSV mạnh mẽ hơn đối với các thay đổi ánh sáng bên ngoài.
Điều này có nghĩa là trong trường hợp ánh sáng bên ngoài thay đổi nhỏ (chẳng hạn như bóng mờ, v.), giá trị Hue thay đổi tương đối ít hơn giá trị RGB.4 Xử lý hình thái học 2.1 Phép toán giãn nở (Dilation) Phép toán giãn nở (Dilation) là một trong các hoạt động cơ bản trong hình thái toán học. Phép toán này có tác dụng làm cho đối tượng ban đầu trong ảnh tăng lên về kích thước (giãn nở ra). 8: Phép toán giãn nở ảnh.2 Phép toán co (Erosion) 4 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO Phép toán co (Erosion) là một trong hai hoạt động cơ bản (khác phép giãn nở) trong hình thái học có ứng dụng trong việc giảm kích thước của đối tượng, tách rời các đối tượng gần nhau, làm mảnh và tìm xương của đối tượng. 9: Phép toán co ảnh.
Trong luận văn, phép co sử dụng phần tử có kích thước 8x8 để phù hợp với kích thước vật mẫu và khung hình nhắm loại bỏ các điểm nhiễu, dễ dàng tách vật ra khỏi background giữa các vật với nhau. Sau khi thực hiện phép co ta thực hiện phép dãn để đưa ảnh về đúng kích thước ban đầu. Trải qua phép co và dãn thì vật thể thì ảnh nhị phân đã loại bỏ được một phần lớn nhiễu, phần lồi lõm quanh đường bao của vật thể, giúp đường bao các đối tượng trong ảnh trở nên mượt mà hơn. Luận văn ta sử dụng 2 lần co ảnh và 2 lần dãn ảnh.10: Hình ảnh sau khi đã được co và dãn ảnh.
Là một đường cong khép kín nối các điểm liên tục (trên đường viền bao), các điểm trên countour có cùng giá trị màu và cường độ. Contour là một công cụ hữu dụng trong phân tích hình dáng, phát hiện đối tượng và nhận dạng. Tìm contour giống như tìm vật thể trắng từ nền đen. Do đó, vật thể nên có màu trắng và nền nên có màu đen.
5 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO Hình 2. 11: Một số vi dụ về vật thể sau khi được nhận diện. Trong đề tài, ảnh sau khi được khử khử nhiễu và làm mịn đường sẽ được áp dụng hàm FindContours để tìm kiếm những đường bao của vật mẫu trong ảnh nhị phân. Cách sử dụng để tìm Contour là RetrType.
Số điểm bao sẽ được lấy ra dưới dạng chainApproxSimple.4 Moments Image Moment là giá trị trung bình có trọng số cụ thể nhất định của cường độ pixel hình ảnh bào gồm một số thuộc tính cụ thể của hình ảnh, như bán kính, diện tích, tâm… Để tìm ra tâm của một vật ta sử dụng công thức M 10 Cx (2.2) M 00 Trong đó C x được coi là tọa độ tâm x của vật trong khung ảnh. C y được coi là tọa độ tâm y của vật trong khung ảnh. M 00 là đại lượng thể hiện các điểm area (có thể được xem là diện tích của dối tượng). M10 và M 01 lần lượt là các giá trị theo x hoặc y để khi phép toán được thực hiện ta sẽ rút ra được cường độ các điều ảnh, các điểm ảnh này thường đều bằng nhau.
Với giá trị của M được lấy ra từ công thức sau: 6 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO M ij x i y j I ( x, y ) (2.3) x y Với x, y được xem là tọa độ điểm ảnh, I ( x, y ) là cường độ điểm ảnh. Đối với luận văn ta tính toán các moments của vùng thuộc contour có diện tích phù hợp với kích thước vật thể được phân loại. Từ đó ta xác định được vị trí thực tế của vật thể trong khung ảnh để tiến hành phân loại.3 Các phần mềm liên quan 2.1 Phần mềm Visual Studio Visual Studio hay gọi đầy đủ là Microsoft Visual Studio. Đây là một phần mềm hỗ trợ hàng đầu cho công việc lập trình website do Microsoft phát triển.
Là công cụ hỗ trợ đang nắm giữ vị trí số một thế giới, hiện tại vẫn chưa có phần mềm đối thủ nào có thể thay thế được nó. Là một IDE được sản xuất bởi Microsoft, nhiều người thường gọi Visual Studio như một trình soạn thảo mã nổi tiếng được nhiều người sử dụng nhất thế giới. Lý do là vì phần mềm này được hỗ trợ nhiều ngôn ngữ lập trình khác nhau, thông dụng nhất là VB+ và C#. Người thiết kế giao diện bằng Visual Studio sẽ thoải mái lựa chọn những ngôn ngữ lập trình quen thuộc để phát triển phần mềm.
Ngoài ra, Visual Studio còn dùng để phát triển các phần mềm của Microsoft, các trang web, dịch vụ web và ứng dụng web. Đến nay, Microsoft đã cho ra đời nhiều phiên bản phần mềm khác nhau để phục vụ nhu cầu sử dụng đa dạng của người dùng. Các bạn có thể dễ dàng lựa chọn những phiên bản tương thích với cấu hình máy và giao diện phù hợp mục đích sử dụng. 12: Biểu tượng phần mềm ở một số phiên bản.
Một số điểm mạnh của Visual Studio: - Hỗ trợ lập trình đa ngôn ngữ như C/C++, C#, Visual Basic, JavaScript, … ngoài ra đối với những phiên bản từ 2015 trở lên có hỗ trợ thêm ngôn ngữ Python. - Visual Studio là một công cụ hỗ trợ việc Debug một cách mạnh mẽ, dễ dàng nhất (Break Point, hỗ trợ việc Debug theo từng dòng lệnh, …) 7 ĐỒ ÁN TỐT NGHIỆP KHOA ĐÀO TẠO CHẤT LƯỢNG CAO - Dễ dàng tiếp cận cũng như việc sử dụng đối với những người mới bắt đầu. - Visual Studio hỗ trợ phát triển ứng dụng desktop MFC, Windows Form, Universal App, ứng dụng mobile Windows Phone 8/8.1, Windows 10, Android (Xamarin), iOS và phát triển website Web Form, ASP.NET MVC và phát triển Microsoft Office.