Xây Dựng Hệ Thống Điều Khiển Thiết Bị Trong Nhà Bằng Nhận Diện Cử Chỉ Tay Sử Dụng Mô Hình YOLOv8

Đồ án nghiên cứu tốt nghiệp xây dựng hệ thống điều khiển thiết bị trong nhà bằng nhận diện cử chỉ tay sử dụng mô, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho bài

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2024

67
14
1

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI CAM ĐOAN

1. CHƯƠNG 1: TỔNG QUAN

1.1. MỤC TIÊU ĐỀ TÀI

1.2. TÌNH HÌNH NGHIÊN CỨU TRONG VÀ NGOÀI NƯỚC

1.2.1. Tình hình nghiên cứu ngoài nước

1.2.2. Tình hình nghiên cứu trong nước

1.3. PHƯƠNG PHÁP NGHIÊN CỨU

1.4. BỐ CỤC CỦA ĐỀ TÀI

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. NHẬN DIỆN ĐỐI TƯỢNG

2.2. TÌM HIỂU VỀ MÔ HÌNH YOLO

2.2.1. Dựa trên ô lưới (grid cell)

2.2.2. Non-max suppression

2.2.3. Các chỉ số đánh giá

2.3. TỔNG QUAN VỀ MÔ HÌNH YOLO V8

2.3.1. Kiến trúc mô hình YOLO v8

2.3.2. Tính năng của YOLO v8

2.4. PHẦN MỀM THIẾT KẾ GIAO DIỆN QT5

2.5. PHẦN MỀM ARDUINO IDE

3. CHƯƠNG 3: THIẾT KẾ VÀ THI CÔNG

3.1. YÊU CẦU HỆ THỐNG

3.2. ĐẶC TẢ HỆ THỐNG

3.2.1. Chức năng của hệ thống

3.2.2. Mô hình tổng quát của hệ thống

3.2.3. Sơ đồ khối và nguyên lí hoạt động

3.3. THIẾT KẾ PHẦN CỨNG

3.3.1. Mô-đun rơ-le

3.3.2. Sơ đồ nguyên lý kết nối Arduino R3 và mô-đun rơ-le 4 kênh

3.4. THIẾT KẾ PHẦN MỀM

3.4.1. Thiết kế mô hình nhận diện cử chỉ tay

3.4.2. Thiết kế giao diện điều khiển của hệ thống

4. CHƯƠNG 4: KẾT QUẢ VÀ ĐÁNH GIÁ HỆ THỐNG

4.1. KẾT QUẢ PHẦN CỨNG

4.2. KẾT QUẢ MÔ HÌNH

4.3. KẾT QUẢ GIAO DIỆN

4.4. ĐÁNH GIÁ HỆ THỐNG

4.4.1. Đánh giá phần cứng

4.4.2. Đánh giá phần mềm

4.4.3. Đánh giá tổng quan

5. CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

5.1. KẾT LUẬN

5.2. HƯỚNG PHÁT TRIỂN

PHỤ LỤC MÃ NGUỒN CHƯƠNG TRÌNH

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về hệ thống điều khiển thiết bị thông minh bằng nhận diện cử chỉ tay

Hệ thống điều khiển thiết bị trong nhà bằng nhận diện cử chỉ tay đang trở thành xu hướng mới trong lĩnh vực công nghệ thông minh. Việc áp dụng công nghệ này không chỉ giúp người dùng tương tác dễ dàng hơn với các thiết bị mà còn nâng cao trải nghiệm sống. Mô hình YOLOv8, với khả năng nhận diện nhanh chóng và chính xác, là một trong những giải pháp tối ưu cho việc phát triển hệ thống này. Hệ thống không chỉ đơn thuần là điều khiển thiết bị mà còn mở ra nhiều khả năng mới cho nhà thông minh.

1.1. Khái niệm về nhận diện cử chỉ tay trong nhà thông minh

Nhận diện cử chỉ tay là công nghệ cho phép máy tính hiểu và phản hồi lại các động tác của bàn tay. Công nghệ này giúp người dùng điều khiển thiết bị mà không cần chạm vào, mang lại sự tiện lợi và thân thiện hơn trong việc sử dụng.

1.2. Lợi ích của hệ thống điều khiển thông minh

Hệ thống điều khiển thông minh giúp tiết kiệm thời gian, nâng cao hiệu suất làm việc và tạo ra trải nghiệm người dùng tốt hơn. Đặc biệt, nó rất hữu ích cho người cao tuổi và người khuyết tật, giúp họ dễ dàng tương tác với các thiết bị trong nhà.

II. Thách thức trong việc phát triển hệ thống điều khiển bằng nhận diện cử chỉ tay

Mặc dù công nghệ nhận diện cử chỉ tay mang lại nhiều lợi ích, nhưng vẫn tồn tại nhiều thách thức cần giải quyết. Độ chính xác trong việc nhận diện cử chỉ tay là một trong những vấn đề lớn nhất. Các yếu tố như ánh sáng, góc nhìn và nhiễu có thể ảnh hưởng đến hiệu suất của hệ thống. Ngoài ra, việc xây dựng một tập dữ liệu đủ lớn và đa dạng cũng là một thách thức quan trọng.

2.1. Độ chính xác và độ tin cậy của hệ thống

Để đảm bảo hệ thống hoạt động hiệu quả, độ chính xác trong việc nhận diện cử chỉ tay cần được cải thiện. Việc phát triển các thuật toán mạnh mẽ và tối ưu hóa mô hình là rất cần thiết.

2.2. Tập dữ liệu và môi trường thử nghiệm

Xây dựng một tập dữ liệu phong phú và đa dạng là điều kiện tiên quyết để huấn luyện mô hình. Các điều kiện môi trường như ánh sáng và không gian cũng cần được xem xét để đảm bảo tính khả thi của hệ thống trong thực tế.

III. Phương pháp phát triển hệ thống điều khiển thiết bị bằng YOLOv8

Mô hình YOLOv8 là một trong những công nghệ tiên tiến nhất trong lĩnh vực nhận diện đối tượng. Việc áp dụng YOLOv8 vào hệ thống điều khiển thiết bị trong nhà giúp cải thiện đáng kể độ chính xác và tốc độ xử lý. Các bước phát triển bao gồm thu thập dữ liệu, huấn luyện mô hình và triển khai hệ thống.

3.1. Thu thập và xử lý dữ liệu cử chỉ tay

Quá trình thu thập dữ liệu bao gồm việc ghi lại các cử chỉ tay trong nhiều điều kiện khác nhau. Dữ liệu này sẽ được sử dụng để huấn luyện mô hình YOLOv8, giúp cải thiện khả năng nhận diện.

3.2. Huấn luyện mô hình YOLOv8

Mô hình YOLOv8 sẽ được huấn luyện với tập dữ liệu đã thu thập. Quá trình này bao gồm việc điều chỉnh các tham số để đạt được độ chính xác cao nhất trong việc nhận diện cử chỉ tay.

IV. Ứng dụng thực tiễn của hệ thống điều khiển thiết bị thông minh

Hệ thống điều khiển thiết bị trong nhà bằng nhận diện cử chỉ tay có nhiều ứng dụng thực tiễn. Từ việc điều khiển đèn, quạt, đến các thiết bị gia dụng khác, công nghệ này mang lại sự tiện lợi và hiện đại cho cuộc sống hàng ngày. Đặc biệt, nó có thể hỗ trợ người có hạn chế về khả năng vận động.

4.1. Điều khiển thiết bị gia dụng

Người dùng có thể dễ dàng điều khiển các thiết bị gia dụng như đèn, quạt, và điều hòa chỉ bằng các cử chỉ tay đơn giản. Điều này không chỉ tiết kiệm thời gian mà còn tạo ra trải nghiệm sử dụng thú vị.

4.2. Tích hợp với hệ thống nhà thông minh

Hệ thống điều khiển bằng nhận diện cử chỉ tay có thể tích hợp với các thiết bị thông minh khác trong nhà, tạo ra một hệ sinh thái thông minh và tiện lợi cho người dùng.

V. Kết luận và tương lai của hệ thống điều khiển thiết bị thông minh

Hệ thống điều khiển thiết bị trong nhà bằng nhận diện cử chỉ tay sử dụng YOLOv8 đang mở ra nhiều cơ hội mới trong lĩnh vực công nghệ thông minh. Với sự phát triển không ngừng của công nghệ, tương lai của hệ thống này hứa hẹn sẽ mang lại nhiều tiện ích và cải tiến cho cuộc sống hàng ngày.

5.1. Tiềm năng phát triển trong tương lai

Với sự tiến bộ của công nghệ, hệ thống điều khiển thiết bị thông minh sẽ ngày càng hoàn thiện hơn, đáp ứng nhu cầu ngày càng cao của người dùng.

5.2. Hướng nghiên cứu tiếp theo

Các nghiên cứu tiếp theo có thể tập trung vào việc cải thiện độ chính xác và khả năng nhận diện trong các điều kiện thực tế khác nhau, cũng như mở rộng ứng dụng của công nghệ này trong nhiều lĩnh vực khác.

10/07/2025

Trích đoạn nội dung tài liệu

Chương 1 Tổng quan Giới thiệu khái quát và tổng quan về tình hình nghiên cứu cũng như các phương pháp nghiên cứu của đề tài. Chương 2: Cơ sở lý thuyết: Giới thiệu mô tả về tổng quan lý thuyết. nguyên lý hoạt động của các mô-đun được sử dụng, các giao thức truyền nhận, các thuật toán về xử lý ảnh và các framework. Chương 3: Thiết kế và thi công: Trình bày các sơ đồ khối hệ thống, nguyên lý hoạt động của các khối thành phần hệ thống.

Chương 4: Kết quả, đánh giá hệ thống: Đánh giá các chức năng, trình bày kết quả cuối cùng đạt được từ phần cứng và phần mềm. Chương 5: Kết luận và hướng phát triển: Kết luận đề tài đối với những kết quả đạt được, nêu mặt còn hạn chế từ đó đề xuất hướng phát triển của hệ thống. 6 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 NHẬN DIỆN ĐỐI TƯỢNG Nhận diện đối tượng là một kỹ thuật tiên tiến trong lĩnh vực thị giác máy tính. Nó đóng vai trò như đôi mắt thông minh cho máy tính, giúp chúng có khả năng phát hiện và phân loại các vật thể trong hình ảnh hoặc video.1 Nhận diện đối tượng Các thuật toán nhận diện đối tượng chủ yếu được chia thành 2 nhóm chính: - Các mô hình RCNN (Region-Based Convolutional Neural Networks): Đây là các mô hình sử dụng mạng nơ-ron tích chập (Convolutional Neural Networks) để giải quyết các bài toán về định vị và nhận diện vật thể.

- Các mô hình YOLO (You Only Look Once): Đây là các mô hình được thiết kế để có thể nhận dạng các đối tượng theo thời gian thực (real-time). YOLO kết hợp các lớp tích chập (convolutional layers) để trích xuất các đặc trưng của ảnh và các lớp kết nối đầy đủ (full-connected layers) để dự đoán xác suất và tọa độ của các đối tượng.2 TÌM HIỂU VỀ MÔ HÌNH YOLO YOLO (You Only Look Once) là một trong các mô hình mạng nơ-ron tích chập (CNN) được thiết kế để nhận diện đối tượng trong thời gian thực. So với các phương pháp nhận hiện đối tượng trước đây, YOLO nổi bật bởi tốc độ xử lý nhanh chóng và độ chính xác cao, biến nó thành lựa chọn lý tưởng cho nhiều ứng dụng trong thực tế. Phần cốt lõi của YOLO là base network, bao gồm chủ yếu các lớp tích chập 7 (convolutional layers) và các lớp kết nối đầy đủ (fully connected layers).

Nhiệm vụ của base network là trích xuất các đặc trưng (feature) từ ảnh đầu vào. Sau phần base network là các Extra Layers, được áp dụng lên feature map để thực hiện việc phát hiện và định vị các đối tượng trong ảnh [4].2 Sơ đồ kiến trúc mạng YOLO 2.1 Dựa trên ô lưới (grid cell) Cách tiếp cận độc đáo của YOLO bắt đầu bằng việc chia ảnh đầu vào thành một lưới S×S, với S là một siêu tham số được chọn trước. Mỗi ô trong lưới này 'sở hữu' một tập hợp các bounding box tiềm năng và dự đoán xác suất các lớp đối tượng cho từng bounding box. Nguyên lý hoạt động cụ thể như sau: Mỗi ô lưới chỉ dự đoán một đối tượng.

Nếu tâm của một đối tượng nằm trong ô lưới, thì ô đó sẽ chịu trách nhiệm dự đoán đối tượng đó. Quá trình này được lặp lại trên toàn bộ lưới để phát hiện và định vị các đối tượng trong ảnh.3 Nguyên lí hoạt động nhận diện của YOLO 8 2.2 Non-max suppression Thuật toán YOLO (You Only Look Once) có xu hướng dự báo ra nhiều bounding box trên một bức ảnh. Do đó đối với những vùng trong ảnh có các cell (ô vuông) nằm gần nhau, khả năng các bounding box bị chồng chéo (overlap) là rất cao. Để giải quyết vấn đề này, YOLO sử dụng kỹ thuật non-max suppression.

Phương pháp này giúp giảm đáng kể số lượng bounding box được sinh ra. Cụ thể, non-max suppression sẽ loại bỏ các bounding box dự báo có độ chồng chéo cao, chỉ giữ lại những bounding box quan trọng nhất [4]. Quá trình non-max suppression bao gồm các bước như: sắp xếp các bounding box theo điểm số từ cao đến thấp, sau đó loại bỏ các bounding box có độ chồng chéo vượt quá một ngưỡng cho trước so với bounding box đang xét. Việc áp dụng non-max suppression giúp YOLO tập trung vào những vùng quan trọng nhất trong ảnh, từ đó cải thiện hiệu suất và độ chính xác của việc phát hiện đối tượng.3 Các chỉ số đánh giá Có một số chỉ số thường được sử dụng để đánh giá hiệu suất của các mô hình phát hiện đối tượng: Mean Average Precision (mAP): Độ chính xác của một mô hình được định nghĩa là số lượng true positives chia cho tổng số true positives và false positives.

Chỉ số mAP tính đến cả độ chính xác và độ thu hồi của mô hình, được tính bằng giá trị trung bình của average precision cho mỗi class. Một giá trị mAP cao hơn chỉ ra hiệu suất tốt hơn của mô hình. Average Precision (AP): Đây là một đo lường độ chính xác của mô hình ở các mức độ thu hồi khác nhau. Độ chính xác được định nghĩa là số lượng true positives chia cho tổng số true positives và false positives.

Độ thu hồi được định nghĩa là số lượng true positives chia cho tổng số true positives và false negatives. AP được tính bằng diện tích dưới đường cong precision-recall. Một giá trị AP cao hơn chỉ ra hiệu suất tốt hơn của mô hình. Intersection over Union (IoU): IoU là một đo lường sự chồng chéo giữa vùng bounding box dự đoán và vùng bounding box ground-truth.

Nó được tính bằng cách 9 lấy diện tích giao của hai vùng và chia cho diện tích của vùng kết hợp. Một giá trị IoU cao hơn chỉ ra sự tương ứng tốt hơn giữa vùng bounding box dự đoán và ground- truth. Ngoài ra còn có một số chỉ số khác đánh giá độ chính xác, như True Positive Rate (TPR), False Positive Rate (FPR), F1-score, và Log Average Miss Rate (MR). Ngoài những chỉ số này, các mô hình phát hiện đối tượng cũng có thể được đánh giá dựa trên hiệu quả tính toán của chúng [5].4 Hàm mất mát Trong YOLO, hàm mất mát (loss function) đóng vai trò rất quan trọng trong quá trình huấn luyện mô hình.

Mục tiêu của hàm lỗi là tối ưu hóa khả năng dự đoán chính xác vị trí, kích thước và lớp của các đối tượng trong hình ảnh bằng cách tối ưu hóa đồng thời ba yếu tố chính: dự đoán chính xác lớp đối tượng (classification), dự đoán chính xác tọa độ của bounding box (localization), và dự đoán chính xác độ tin cậy của bounding box (confidence) [5]. 1) Classification loss là một hàm lỗi được sử dụng để đánh giá độ chính xác của việc dự đoán loại nhãn (class) của một đối tượng. Nó chỉ tính toán trên những ô vuông (bounding box) có chứa đối tượng, mà không tính trên những ô vuông không chứa đối tượng [5]. 1) 𝑖=0 𝑐=0 Trong đó: 𝑜𝑏𝑗 1𝑖 : Hàm indicator có giá trị 0,1 nhằm xác định xem cell i có chứa vật thể hay không.

Bằng 1 nếu chứa vật thể và 0 nếu không chứa. 𝑝𝑖 (𝑐): Xác suất thực tế của lớp c trong grid cell i. 𝑝̂ 𝑖 (𝑐): Xác suất dự đoán của lớp c trong grid cell i. Localization loss là một hàm lỗi dùng để đánh giá độ chính xác của việc dự đoán vị trí (tọa độ, kích thước) của boundary box (hộp giới hạn) của đối tượng, so với vị trí thực tế (ground truth) từ dữ liệu huấn luyện [5].2) 𝑆2 𝐵 2 2 + 𝑐𝑜𝑜𝑟𝑑 ∑ ∑ 1𝑖𝑗 (√𝑤𝑖 − √𝑤 𝑜𝑏𝑗 ̂𝑖 ) + (√ℎ𝑖 − √ℎ̂𝑖 ) 𝑖=0 𝑗=0 Trong đó: 𝑐𝑜𝑜𝑟𝑑 : Hệ số điều chỉnh, thường được đặt giá trị cao hơn để nhấn mạnh tầm quan trọng của localization loss.

𝑜𝑏𝑗 1𝑖,𝑗 : Cho biết bounding box thứ j của cell i có chứa đối tượng 𝑥𝑖 𝑦𝑖 , 𝑤𝑖 , ℎ,: Tọa độ trung tâm và kích thước thực tế của bounding box. ̂𝑖 , ℎ̂𝑖 : Tọa độ trung tâm và kích thước dự đoán của bounding box. 𝑥̂𝑖 , 𝑦̂𝑖 , 𝑤 Confidence loss là một hàm lỗi dùng để đánh giá độ chính xác của việc dự đoán xem liệu một boundary box (hộp giới hạn) có chứa đối tượng hay không, so với nhãn thực tế (ground truth) tại ô vuông đó [5]. 3) 𝑖=0 𝑗=0 𝑖=0 𝑗=0 11 Trong đó: 𝑛𝑜𝑜𝑏𝑗 : Hệ số điều chỉnh quan trọng được sử dụng để kiểm soát trọng số của phần lỗi liên quan đến các bounding box không chứa đối tượng (no-object).

𝑛𝑜𝑜𝑏𝑗 1𝑖,𝑗 : Cho biết bounding box thứ j của cell i không chứa đối tượng 𝐶𝑖 : Độ tin cậy thực tế (1 nếu có đối tượng, 0 nếu không có). 𝐶̂𝑖 : Độ tin cậy dự đoán.3 TỔNG QUAN VỀ MÔ HÌNH YOLO V8 YOLO v8 là phiên bản mới nhất của thuật toán YOLO, được phát triển bởi Ultralytics, một công ty do Joseph Redmon, người sáng lập ra YOLO, thành lập. YOLO v8 được ra mắt vào năm 2023 và mang lại một số cải tiến so với các phiên bản YOLO trước đó.5 Hiệu suất của YOLO v8 so với phiên bản trước 2.1 Kiến trúc mô hình YOLO v8 12 Hình 2.6 Kiến trúc mô hình YOLO v8 YOLOv8 có nhiều phiên bản đa dạng với trọng số và tốc độ tính toán xử lí khác nhau được đánh giá trên tập dữ liệu COCO cho thấy tùy thuộc vào bài toán đặt ra có thể lựa chọn mô hình phù hợp để huấn luyện. 7 Các phiên bản của YOLOv8 được đánh giá theo COCO 2.2 Tính năng của YOLO v8 YOLOv8 có nhiều tính năng đáng chú ý.

Dưới đây là một số tính năng chính của YOLOv8: Tăng tốc độ: YOLOv8 đạt tốc độ suy luận nhanh hơn so với các mô hình phát hiện đối tượng khác trong khi vẫn duy trì độ chính xác cao. Nhiều cơ sở: YOLOv8 hỗ trợ các cơ sở khác nhau, chẳng hạn như EfficientNet, ResNet và CSPDarknet, cho phép người dùng lựa chọn mô hình tốt nhất cho trường hợp cụ thể của họ. Đào tạo thích ứng: YOLOv8 sử dụng đào tạo thích ứng để tối ưu hóa tốc độ học và cân bằng hàm mất mát trong quá trình đào tạo, dẫn đến hiệu suất mô hình tốt hơn. Tăng cường dữ liệu nâng cao: YOLOv8 sử dụng các kỹ thuật tăng cường dữ liệu nâng cao như MixUp và CutMix để cải thiện tính bền vững và khái quát hóa của mô hình.

Kiến trúc có thể tùy chỉnh: Kiến trúc của YOLOv8 rất có thể tùy chỉnh, cho phép người dùng dễ dàng sửa đổi cấu trúc và thông số của mô hình để phù hợp với nhu cầu của họ. Mô hình được xây dựng trước: YOLOv8 cung cấp các mô hình được xây dựng trước để sử dụng dễ dàng và chuyển giao học tập trên các tập dữ liệu khác nhau.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Hệ Thống Điều Khiển Thiết Bị Trong Nhà Bằng Nhận Diện Cử Chỉ Tay Sử Dụng YOLOv8" trình bày một giải pháp tiên tiến cho việc điều khiển thiết bị trong nhà thông qua công nghệ nhận diện cử chỉ tay. Sử dụng mô hình YOLOv8, hệ thống này không chỉ mang lại sự tiện lợi mà còn nâng cao trải nghiệm người dùng bằng cách cho phép điều khiển thiết bị một cách tự nhiên và trực quan. Những lợi ích chính mà tài liệu mang lại bao gồm khả năng tương tác dễ dàng, tiết kiệm thời gian và tăng cường tính năng an toàn cho người sử dụng.

Để mở rộng thêm kiến thức về các hệ thống điều khiển thông minh, bạn có thể tham khảo tài liệu Hcmute hệ thống điều khiến thông minh các thiết bị qua bluetooth, nơi cung cấp cái nhìn sâu sắc về việc điều khiển thiết bị qua Bluetooth. Ngoài ra, tài liệu Luận văn thiết kế và thi công mạch điều khiển thiết bị qua internet sẽ giúp bạn hiểu rõ hơn về việc ứng dụng Internet trong điều khiển thiết bị. Cuối cùng, tài liệu Khóa luận tốt nghiệp hệ thống thông tin applying iot technology for monitoring environment sẽ mở ra những khía cạnh mới về công nghệ IoT trong giám sát và điều khiển. Những tài liệu này sẽ giúp bạn có cái nhìn toàn diện hơn về các công nghệ hiện đại trong lĩnh vực điều khiển thiết bị.