1. Trang chủ
  2. » Tất cả

Điều khiển robot tự động gắp vật dựa trên nhận dạng giọng nói, công nghệ học sâu và xử lý ảnh 3 chiều

107 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG CƠ KHÍ LUẬN VĂN THẠC SĨ Điều khiển robot tự động gắp vật dựa nhận dạng giọng nói, cơng nghệ học sâu xử lý ảnh chiều TRẦN VĂN DŨNG dung.tv202432m@sis.hust.edu.vn Ngành Kỹ thuật Cơ điện tử Giảng viên hướng dẫn: TS Bùi Đình Bá Chữ ký GVHD Trường: Cơ Khí HÀ NỘI, 10/2022 LỜI CẢM ƠN Trải qua sáu năm học tập mái trường Đại học Bách Khoa Hà Nội, em xin gửi lời cảm ơn chân thành tới gia đình, nhà trường, thầy ln ủng hộ, tạo điều kiện để chúng em hồn thành chương trình đào tạo tốt Mái nhà Bách Khoa không trang bị cho em kiến thức, kỹ chun mơn cịn học cách sống, cách làm việc, học quý giá, hành trang bên cạnh em suốt chặng đường sau Luận văn khơng kết quả trình học tập nghiên cứu mà hết hội lớn để em áp dụng kiến thức học tự đánh giá lại kiến thức thân để tạo tiền đề cho cơng việc tương lai Chính kiến thức tổng hợp đầy đủ tích lũy chúng em Qua đây, nhóm xin gửi lời cảm ơn chân thành tới thầy trường Cơ khí, khoa Cơ điện tử đặc biệt thầy giáo, TS Bùi Đình Bá TS Nguyễn Thành Hùng sát cánh giúp đỡ em suốt thời gian học tập trường Em xin chúc thầy cô mạnh khỏe, nhiệt huyết để dạy bảo, giúp đỡ hệ sinh viên, học viên nghiên cứu sinh Em xin chân thành cảm ơn! TÓM TẮT NỘI DUNG LUẬN VĂN Nghiên cứu trình bày hệ thống địa hóa đối tượng tự động, sử dụng để chọn đối tượng ngẫu nhiên theo yêu cầu không gian làm việc Hệ thống bao gồm hệ thống cánh tay robot tích hợp với máy ảnh RGB-D IntelRealsense D435 Đầu tiên, đối tượng ước tính từ thuật tốn nhận dạng giọng nói Tiếp đến, thuật toán Yolo V3 áp dụng để phát phân loại mục tiêu từ ảnh màu Sau đó, cụm điểm đặc trưng riêng lẻ trích xuất cách sử dụng đối tượng địa lý 2-D phân đoạn đồ độ sâu Để xác định vị trí hướng khơng gian 3-D, cụm đối sánh với mơ hình CAD cách sử dụng thuật toán ICP Cuối cùng, kỹ thuật tránh va chạm áp dụng để chọn đối tượng cho nhiệm vụ nhặt Tính khả thi hiệu hệ thống kiểm chứng thực nghiệm Thử nghiệm kết thúc lần cho thấy hệ thống xác định vị trí nhận đối tượng 3D thành công thông qua lệnh giọng nói HỌC VIÊN Ký ghi rõ họ tên Trang MỤC LỤC DANH MỤC HÌNH ẢNH DANH MỤC BẢNG CHƯƠNG 1.1 TỔNG QUAN HỆ THỐNG Giới thiệu chung 1.1.1 Tóm lược lịch sử phát triển robot 1.1.2 Cấu trúc phân loại robot công nghiệp 10 1.1.3 Ứng dụng chung robot 14 1.2 Hệ thống robot gắp vật tự động 15 1.2.1 Đặt vấn đề 15 1.2.2 Các nghiên cứu gần robot gắp vật tự động 16 1.2.3 Xây dựng mơ hình 18 1.3 Hệ thống xử lý ảnh ba chiều 19 1.3.1 Tổng quan hệ xử lý ảnh chiều 19 1.3.2 Các nghiên cứu liên quan 20 1.4 Hệ thống thị giác máy tính nhận dạng giọng nói 21 1.4.1 Tổng quan hệ thống thị giác máy tính 21 1.4.2 Công nghệ học sâu thị giác máy tính 23 1.4.3 Hệ thống nhận dạng giọng nói 26 CHƯƠNG HỆ THỐNG ROBOT GẮP VẬT 28 2.1 Tổng quan hệ thống 28 2.2 Camera 28 2.2.1 Giới thiệu chung camera 28 2.2.2 Các thông số camera 29 2.3 Robot gắp vật 30 Trang 2.3.1 Cấu tạo hệ tọa độ 32 2.3.2 Chức 33 2.3.3 Ứng dụng 35 2.4 Máy tính điều khiển 36 2.5 Thuật toán điều khiển 36 CHƯƠNG BÀI TOÁN XÁC ĐỊNH VẬT THỂ 37 3.1 Họ mô hình YOLO 37 3.2 Huấn luyện sử dụng mô hình YOLO V3 39 3.2.1 Huấn luyện mơ hình (Training Model) 39 3.2.2 Sử dụng mơ hình YOLO V3 cho toán nhận dạng đối tượng 44 3.3 Thuật tốn xác định vị trí hướng đối tượng 45 3.4 Xây dựng đám mây điểm từ RGB-D camera 45 3.5 Phân loại đối tượng YOLO V3 47 3.6 Loại bỏ điểm ngoại lệ 48 3.7 Hình bao nhỏ chứa đám mây điểm đối tượng 51 3.8 Chuyển tọa độ camera tọa độ robot 53 3.9 Thuật tốn nhận dạng giọng nói 55 CHƯƠNG THỰC NGHIỆM VÀ KẾT QUẢ 58 4.1 Mô hình thực nghiệm 58 4.2 Các kết thực nghiệm 60 4.2.1 Độ xác 60 4.2.2 Kết nhận diện đối tượng YOLO V3 61 4.2.3 Kết xử lý ảnh point cloud 62 4.2.4 Kết điều khiển giọng nói 62 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 64 Trang DANH MỤC TÀI LIỆU THAM KHẢO 65 PHỤ LỤC 67 PHỤ LỤC A1 : BÀI TOÁN NHẬN DẠNG ĐỐI TƯỢNG 67 PHỤ LỤC A2 : CODE XỬ LÝ ẢNH 73 Trang DANH MỤC HÌNH ẢNH Hình 1.1 Robot Nao (ảnh minh họa) Hình 1.2 Sơ đồ khối chung robot công nghiệp 11 Hình 1.3 Phân loại robot theo khơng gian thao tác 12 Hình 1.4 Phân loại robot theo khả ứng dụng 13 Hình 1.5 Các ứng dụng robot quân 14 Hình 1.6 Robot phục vụ y tế 15 Hình 1.7 Robot lĩnh vực xã hội 15 Hình 1.8 Hệ thống robot gắp vật tự động nhóm MIT-Princeton Amazone Robotics Challenge 2017 16 Hình 1.9 Hệ thống robot gắp vật phát triển với Liu cộng 17 Hình 1.11 Các thành phần mơ hình đề xuất 19 Hình 1.12 Hệ thống xử lý ảnh 20 Hình 1.13 a Hình ảnh 2D scan ban đầu; b Hình ảnh khung đường cong; c Mơ hình xây dựng cuối 21 Hình 1.14 So sánh Deeplearning, Machine Learning, Artificial Intelligence 24 Hình 1.15 Các toán học sâu thường sử dụng thị giác máy tính 25 Hình 2.1 Hệ thống robot gắp vật tự động 28 Hình 2.2 Camera IntelRealsense D435 28 Hình 2.3 Hình thức cấu tạo 32 Hình 2.4 Hình thức cấu tạo 32 Hình 2.5 Hệ tọa độ khớp xoay 32 Hình 2.6 Hệ tọa độ Cartesian 32 Hình 2.7 Các chế độ chuyển động 33 Hình 2.8 Các module DOBOT Studio 34 Trang Hình 2.9 Sơ đồ thuật tốn điều khiển robot 36 Hình 3.1 Kiến trúc mạng YOLO (2015) 37 Hình 3.2 Kiến trúc YOLO V3 38 Hình 3.3 Kiến trúc Darknet-53 38 Hình 3.4 Một ví dụ liệu sử dụng cho đào tạo YOLO V3 39 Hình 3.5 cd tới thư mục labelimg 39 Hình 3.6 Cài đặt thư viện pyqt5 40 Hình 3.7 Cài đặt thư viện lxml 40 Hình 3.8 Khởi chạy cơng cụ labelimg 41 Hình 3.9 Cơng cụ ghi thích/nhãn cho ảnh Labelimg 41 Hình 3.10 Chú thích/nhãn ảnh 41 Hình 3.11 Các thơng số q trình traning 42 Hình 3.12 Biểu đồ tương quan giá trị Loss mAP 43 Hình 3.13 Code mẫu mơ hình YOLO V3 44 Hình 3.14 Thuật tốn xác định vị trí hướng đối tượng 45 Hình 3.15 Ảnh màu 46 Hình 3.16 Ảnh độ sâu 46 Hình 3.17 Ảnh đám mây điểm 47 Hình 3.18 Ảnh đám mây điểm sau giới hạn 47 Hình 3.19 Kết phân loại đối tượng YOLO V3 47 Hình 3.20 Kết phân đoạn đám mây điểm 48 Hình 3.21 Sơ đồ thuật tốn loại bỏ ngoại lệ 50 Hình 3.22 Ảnh đám mây điểm sau loại bỏ điểm ngoại lệ 51 Hình 3.23 Sơ đồ thuật tốn tìm hình bao nhỏ liên kết trục cố định 52 Hình 3.24 Kết tìm hình bao nhỏ liên kết trục cố định 53 Trang Hình 3.25 Tám vị trí sử dụng để hiệu chuẩn 54 Hình 3.26 Ma trận chuyển đổi vị trí 54 Hình 3.27 Kết chuyển đổi toạ độ từ toạ độ camera sang toạ độ robot 55 Hình 3.28 Kết chuyển đổi toạ độ từ toạ độ robot sang toạ độ camera 55 Hình 4.1 Mơ hình thực nghiệm 58 Hình 4.2 Giao diện xử lý ảnh 58 Hình 4.3 Các đối tượng sử dụng thực nghiệm 59 Hình 4.4 Giao diện kết nối điều khiển robot 59 Hình 4.5 Giao diện nhận dạng đối tượng giọng nói 59 DANH MỤC BẢNG Bảng Các thuật toán phân loại ảnh 25 Bảng Thông số kỹ thuật camera IntelRealsense D435 29 Bảng Thông số kỹ thuật 30 Bảng Các modul chức Dobot Studio 34 Bảng Kết đo độ xác robot 60 Trang CHƯƠNG 1.1 TỔNG QUAN HỆ THỐNG Giới thiệu chung 1.1.1 Tóm lược lịch sử phát triển robot Lịch sử phát triển robot châu Âu có niên đại từ kỷ XVIII đến kỷ XIX, Nhật Bản, búp bê karakuri (cơ khí), chế tác thời đại Edo (1603-1868) Sau kỷ XX, vào năm 1954, robot có khả nhấc lên đặt xuống vật thể cấp sáng chế Hoa Kỳ Khái niệm robot công nghiệp khai sinh Trong Chiến tranh giới thứ II, công nghệ điều khiển phát triển, bao gồm điều khiển phản hồi, điều cho phép chuyển động xác Hình 1.1 Robot Nao (ảnh minh họa) Năm 1973, WABOT-1, robot hình người giới, phát triển Đại học Waseda Năm 1969, Kawasaki Heavy Industries, Ltd mắt KawasakiUnimate 2000, robot công nghiệp Robot công nghiệp trở nên phổ biến năm 1980 Ngoài ra, với phát triển robot công nghiệp, ứng dụng thực tế robot trở nên phổ biến sống hàng ngày, robot trợ giúp người cơng việc địa điểm thiên tai khó tiếp cận robot thay cho chức vật lý bị (ví dụ: chân, tay giả) Năm 1999, robot AIBO chế tạo giống chó nhỏ, phát hành Tập đồn Sony AIBO tích hợp chương trình để học cách máy móc Trang từ trải nghiệm từ cách dạy chủ nhân AIBO nũng nịu chủ nhân chủ nhân cảm nhận “suy nghĩ” robot Năm 2000, robot ASIMO bước thành thục hai chân Honda Motor Co cho mắt, ASIMO trang bị công nghệ linh hoạt thời gian thực thông minh, công nghệ giúp cho ASIMO thay đổi trọng tâm theo thời gian thực để phù hợp với tính tốn chuyển động Nó di chuyển trơn tru cách kiểm soát “thời điểm - thời điểm cân bằng” ASIMO sau chạy vào năm 2004, nhiều ASIMO đồng hóa hiệu chuyển động chúng qua mạng liên kết vào năm 2007 Hiện nay, việc sử dụng robot trở nên phổ biến sống hàng ngày Ví dụ, máy giặt hồn toàn tự động, máy rửa chén, máy kiểm tra vé tự động hệ thống vận chuyển hoàn toàn tự động Yurikamome cho robot theo nghĩa rộng Năm 2010, Tập đoàn iRobot Mỹ phát hành Roomba, loại robot hút bụi, nhà sản xuất Nhật Bản cho đời robot làm Ngoài ra, năm 2015, Soft Bank Corp mắt robot cá nhân Pepper biết cảm xúc người Nghiên cứu tiến hành mối quan hệ robot người Robot định nghĩa hệ thống khí – điện tử, thực cơng việc cách tự động điều khiển máy tính vi mạch lập trình Tuy nhiên, theo Chiến lược Robot Nhật Bản năm 2015, robot phát triển cách sáng tạo tương lai, định nghĩa thông thường bao quát tình hình robot 1.1.2 Cấu trúc phân loại robot công nghiệp  Cấu trúc robot công nghiệp Sơ đồ khối chung robot cơng nghiệp thể hình 1.2 Trang 10 act1.SetMapper(vmapper1); act1.GetProperty().SetColor(1, 1, 1); act1.GetProperty().SetLineWidth(2); Renderer.AddActor(act1); //RenderWindow.Render(); //thuc hien phep quay quanh truc z for (int i = 0; i < 899; i++) { vtkPoints poin = vtkPoints.New(); double[] t = new double[3]; double[] s = new double[3]; double dai, rong, dt; for (int j = 0; j < polydata.GetNumberOfPoints(); j++) { t = polydata.GetPoint(j); Matrix4x4 mat = new Matrix4x4(); mat.M11 = (float)Math.Cos(2 * i * Math.PI / 3600); mat.M12 = /*0*/-(float)Math.Sin(2 * i * Math.PI / 3600); mat.M13 = 0/*(float)(Math.Sin(2 * i * Math.PI / 3600))*/; mat.M14 = 0; mat.M21 = /*0*/(float)Math.Sin(2 * i * Math.PI / 3600); mat.M22 = /*1*/(float)Math.Cos(2 * i * Math.PI / 3600); mat.M23 = 0; mat.M24 = 0; Trang 93 mat.M31 = 0/*-(float)Math.Sin(2 * i * Math.PI / 3600)*/; mat.M32 = 0; mat.M33 = 1/*(float)Math.Cos(2 * i * Math.PI / 3600)*/; mat.M34 = 0; mat.M41 = 0; mat.M42 = 0; mat.M43 = 0; mat.M44 = 1; Matrix4x4 matbd = new Matrix4x4((float)t[0], (float)t[1], (float)t[2], 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); Matrix4x4 mats = new Matrix4x4(); mats = matbd * mat; s[0] = mats.M11; s[1] = mats.M12; s[2] = mats.M13; poin.InsertNextPoint(s[0], s[1], s[2]); } polydata1.SetPoints(poin); double[] d, f, g = new double[3]; d = polydata1.GetPoint(0); f = polydata1.GetPoint(0); for (int h = 0; h < polydata1.GetNumberOfPoints(); h++) { g = polydata1.GetPoint(h); Trang 94 if (g[0] >= d[0]) { d[0] = g[0]; } // xmax if (g[1] >= d[1]) { d[1] = g[1]; } // ymax if (g[2] >= d[2]) { d[2] = g[2]; } // zmax if (f[0] >= g[0]) { f[0] = g[0]; } // xmin if (f[1] >= g[1]) { f[1] = g[1]; } // ymin if (f[2] >= g[2]) { f[2] = g[2]; } // zmin saveArea[i, 0] = f[0]; saveArea[i, 1] = f[1]; saveArea[i, 2] = f[2]; saveArea[i, 3] = d[0]; saveArea[i, 4] = d[1]; saveArea[i, 5] = d[2]; } dai = Math.Sqrt((d[0] - f[0]) * (d[0] - f[0])); rong = Math.Sqrt((d[1] - f[1]) * (d[1] - f[1])); dt = dai * rong; addst[i] = dt; } double = addst[0]; int index = 0; for (int i = 0; i < 899; i++) { if (addst[i]

Ngày đăng: 24/03/2023, 23:42

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w