Chương 1 - Giới thiệu: Giới thiệu tổng quát về đề tài, như phạm vi và phương pháp nghiên cứu, lí do chọn đề tài. • Chương 2 - Tổng quan về phần cứng: Trình bày thông tin về 1 số drone phù hợp với yêu cầu đề tài. • Chương 3 - Tổng quan về lý thuyết: Trình bày các phương pháp đã nghiên cứu để có thể hiện thực hệ thống. • Chương 4 - Các mô hình và thư viện đã được nghiên cứu: Sau khi đã tìm hiểu cách để hiện thực hệ thống, đây là chương dùng để chọn công nghệ phù hợp, chứa thông tin về các công nghệ đã được nghiên cứu.
• Chương 5 - Thiết kế và hiện thực hệ thống: Dùng những kiến thức đã nghiên cứu, xây dựng thành công hệ thống. • Chương 6 - Kết luận: Nhận xét và đánh giá lại toàn bộ quá trình, các kết quả đạt được. Luận Văn Tốt Nghiệp Đại Học 4 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính Chương 2 Tổng quan về phần cứng 2.1 Về Drone Hiện nay có rất nhiều loại drone trên thị trường có thể dùng để lập trình được, sau đây là một số loại drone đã được tìm hiểu và nghiên cứu trong quá trình làm luận văn 2.1 DJI Tello Tổng quan Không cần có kinh nghiệm lái máy bay không người lái để bắt đầu với Tello. Chỉ cần bật nguồn máy bay không người lái của bạn và tải xuống ứng dụng, và bạn đã sẵn sàng để bay! Tính năng lập trình của Tello cho phép máy bay không người lái được tùy chỉnh một cách dễ dàng.
Tello hỗ trợ lập trình cho các ngôn ngữ như Swift, Python hoặc lập trình bằng Scratch.1: Lập Trình Tello Với Ngôn Ngữ Python Tello là sự lựa chọn tuyệt vời cho những người đang tìm kiếm một máy bay không người lái dễ sử dụng và giá cả phải chăng. Nó là sự kết hợp hoàn hảo của người mới bắt đầu và phi công có kinh nghiệm. Tello cũng là một lựa chọn tốt cho những người muốn chụp ảnh và quay video bằng máy bay không người lái. Luận Văn Tốt Nghiệp Đại Học 5 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính Thông số kỹ thuật Bảng 2.1: Bảng thông số kỹ thuật Tello Thời gian bay 13 phút Phạm vi bay 100 m Tốc độ 8 m/s FOV:82.6 Camera 5MP(2592x1936) HD720P30 Kích thước 98×92.5×41 mm Trọng lượng 80 g Ưu và nhược điểm Bảng 2.2: Ưu và nhược điểm của Tello Ưu điểm Nhược điểm Dễ sử dụng Thời gian bay ngắn Giá cả phải chăng Phạm vi bay có giới hạn Camera ổn Nhỏ và dễ dàng mang đi Có thể lập trình được 2.2 Parrot Mambo Tổng quan Parrot Mambo là một drone yếu thế trong thị trường tiêu dùng máy bay không người lái.
Đó là một máy bay không người lái nhỏ, nhẹ, dễ bay và rất bền. Mambo có camera 4K và có thể được lập trình bằng ứng dụng Flight Plan tùy chọn.2: Drone Parrot Mambo Luận Văn Tốt Nghiệp Đại Học 6 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính Một trong những tính năng độc đáo của Mambo là nó có thể bay có hoặc không có bộ điều khiển. Nếu bạn đang tìm kiếm một chiếc máy bay không người lái bền, nhẹ và dễ bay thì Parrot Mambo là một lựa chọn tuyệt vời. Ngoài ra, Mambo là một lựa chọn tuyệt vời cho những ai đang tìm kiếm một chiếc máy bay không người lái để học bay cùng.
Thông số kỹ thuật Bảng 2.3: Bảng thông số kỹ thuật Parrot Mambo Thời gian bay 9 phút Phạm vi bay 60 m Tốc độ 18 mph Camera 4K Kích thước 6 x 3 x 0.4" Trọng lượng 63 g Ưu và nhược điểm Bảng 2.4: Ưu và nhược điểm của Parrot Mambo Ưu điểm Nhược điểm Dễ sử dụng Thời gian bay ngắn Rất cứng cáp Phạm vi bay có giới hạn Camera tốt Không có GPS Nhỏ và dễ dàng mang đi Có thể lập trình được Luận Văn Tốt Nghiệp Đại Học 7 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính Chương 3 Tổng quan về lý thuyết Chương này trình bày về phần lý thuyết đã nghiên cứu và vận dụng để hiện thực đề tài.1 Định nghĩa Machine learning (ML) hay học máy là một nhánh của trí tuệ nhân tạo (AI), nó là một lĩnh vực nghiên cứu cho phép máy tính có khả năng cải thiện chính bản thân chúng dựa trên dữ liệu mẫu (training data) hoặc dựa vào kinh nghiệm (những gì đã được học). • Các bài toán dự đoán như dự đoán giá nhà, giá xe,. • Các bài toán phân loại như nhận diện chữ viết tay, nhận diện đồ vật,. Luận Văn Tốt Nghiệp Đại Học 8 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính 3.2 Quy trình Quy trình học máy thường được chia làm 5 bước chính: Bước 1: Thu thập dữ liệu Như bạn đã biết, máy móc ban đầu học từ dữ liệu mà bạn cung cấp cho chúng.
Điều quan trọng nhất là thu thập dữ liệu đáng tin cậy để mô hình học máy của bạn có thể tìm thấy các mẫu chính xác. Chất lượng của dữ liệu mà bạn cung cấp cho máy sẽ xác định mức độ chính xác của mô hình của bạn. Nếu bạn có dữ liệu không chính xác hoặc lỗi thời, bạn sẽ có kết quả hoặc dự đoán sai không liên quan.2: Thu thập dữ liệu Hãy chắc chắn rằng bạn sử dụng dữ liệu từ một nguồn đáng tin cậy, vì nó sẽ ảnh hưởng trực tiếp đến kết quả của mô hình của bạn. Dữ liệu tốt có liên quan, chứa rất ít giá trị bị thiếu và lặp lại, đồng thời thể hiện tốt các danh mục/lớp con khác nhau hiện có.
Bước 2: Tiền xử lý dữ liệu Sau khi thu thập dữ liệu, bạn cần phải thực hiện bước tiền xử lý, hay nói cách khác là chuẩn bị: • Tổng hợp tất cả dữ liệu bạn có và sắp xếp ngẫu nhiên nó. Điều này giúp đảm bảo rằng dữ liệu được phân phối đồng đều và thứ tự không ảnh hưởng đến quá trình học tập. • Làm sạch dữ liệu để loại bỏ dữ liệu không mong muốn, giá trị bị thiếu, hàng và cột, giá trị trùng lặp, chuyển đổi kiểu dữ liệu, v. Bạn thậm chí có thể phải cấu trúc lại tập dữ liệu và thay đổi hàng và cột hoặc chỉ mục của hàng và cột.
• Trực quan hóa dữ liệu để hiểu cách dữ liệu được cấu trúc và hiểu mối quan hệ giữa các biến và lớp khác nhau hiện có. • Chia dữ liệu đã làm sạch thành hai tập hợp - tập huấn luyện và tập kiểm tra. Tập huấn luyện là tập hợp mà mô hình của bạn học hỏi từ đó. Một bộ thử nghiệm được sử dụng để kiểm tra độ chính xác của mô hình của bạn sau khi đào tạo.
Luận Văn Tốt Nghiệp Đại Học 9 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính Hình 3.3: Tiền xử lý dữ liệu Bước 3: Huấn luyện mô hình Mô hình học máy xác định kết quả bạn nhận được sau khi chạy thuật toán trên dữ liệu đã thu thập. Điều quan trọng là chọn một mô hình có liên quan đến nhiệm vụ hiện tại. Qua nhiều năm, các nhà khoa học và kỹ sư đã phát triển nhiều mô hình khác nhau phù hợp với các nhiệm vụ khác nhau như nhận dạng giọng nói, nhận dạng hình ảnh, dự đoán, v. Ngoài ra, bạn cũng phải xem liệu mô hình của mình có phù hợp với dữ liệu số hoặc dữ liệu phân loại hay không và chọn cho phù hợp.4: Huấn luyện mô hình học máy Huấn luyện là bước quan trọng nhất trong học máy.
Trong quá trình này, bạn chuyển dữ liệu đã chuẩn bị cho mô hình học máy của mình để tìm các mẫu và đưa ra dự đoán. Nó dẫn đến việc mô hình học từ dữ liệu để có thể hoàn thành nhiệm vụ đã đặt. Theo thời gian, với việc đào tạo, mô hình sẽ dự đoán tốt hơn. Bước 4: Đánh giá mô hình Sau khi huấn luyện mô hình của bạn, bạn phải kiểm tra xem nó hoạt động như thế nào.
Điều này được thực hiện bằng cách kiểm tra hiệu suất của mô hình. Chúng ta cần dùng các độ đo để Luận Văn Tốt Nghiệp Đại Học 10 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính đánh giá mô hình, tùy vào từng độ đo khác nhau mà mô hình cũng được đánh giá tốt hay không khác nhau. Độ chính xác của mô hình đạt trên 80% được cho là tốt Hình 3.5: Đánh giá mô hình Qua đó, bạn sẽ có được thước đo chính xác về hiệu suất và tốc độ của mô hình. Bước 5: Cải tiến Sau khi đã đánh giá mô hình, các mô hình đạt độ chính xác không tốt thì cần được huấn luyện lại, chúng ta sẽ lặp lại từ bước 3, cho đến khi đạt độ chính xác như kỳ vọng.
Tổng thời gian của 3 bước cuối rơi vào khoảng 30% tổng thời gian thực hiện.6: Cải tiến mô hình Không ngừng cải tiến để nâng cao hiệu suất, đạt được độ chính xác ngày càng cao, phát triển khả năng huấn luyện và học máy. Luận Văn Tốt Nghiệp Đại Học 11 Trường Đại Học Bách Khoa Tp.Hồ Chí Minh Khoa Khoa Học và Kỹ Thuật Máy Tính 3.3 Ưu và nhược điểm Ưu điểm 1. Dễ dàng xác định xu hướng và mẫu. Học máy có thể xem xét khối lượng lớn dữ liệu và khám phá các xu hướng và mẫu cụ thể mà con người không thể biết được.
Chẳng hạn, đối với một trang web thương mại điện tử như Amazon, nó phục vụ để hiểu hành vi duyệt web và lịch sử mua hàng của người dùng để giúp cung cấp đúng sản phẩm, giao dịch và lời nhắc có liên quan đến họ. Nó sử dụng các kết quả để tiết lộ các quảng cáo có liên quan cho họ? 2. Không cần sự can thiệp của con người (tự động hóa): Với ML, bạn không cần phải trông chừng từng bước dự án của mình. Vì nó có nghĩa là cung cấp cho máy móc khả năng học hỏi, nó cho phép chúng đưa ra dự đoán và cũng như tự mình cải thiện các thuật toán.
Một ví dụ phổ biến về điều này là phần mềm chống vi-rút; họ học cách lọc các mối đe dọa mới khi chúng được nhận ra. ML cũng rất tốt trong việc nhận dạng thư rác. Cải tiến liên tục: Khi các thuật toán ML tích lũy kinh nghiệm, chúng sẽ tiếp tục cải thiện về độ chính xác và hiệu quả. Điều này cho phép họ đưa ra quyết định tốt hơn.
Giả sử bạn cần tạo một mô hình dự báo thời tiết.