Đồ án: Điều khiển thiết bị điện bằng nhận diện cử chỉ - HCMUTE

Đồ án HCMUTE: Thiết kế hệ thống điều khiển thiết bị điện thông minh bằng công nghệ nhận diện cử chỉ. Tìm hiểu giải pháp đột phá từ sinh viên.

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2022

70
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI CAM ĐOAN

MỤC LỤC

DANH MỤC HÌNH

DANH MỤC BẢNG

CÁC TỪ VIẾT TẮT

1. CHƯƠNG 1: GIỚI THIỆU

1.1. GIỚI THIỆU

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

1.3. GIỚI HẠN ĐỀ TÀI

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

1.5. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU

1.6. BỐ CỤC QUYỂN BÁO CÁO

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

2.1. GIỚI THIỆU MÔ HÌNH NHẬN DIỆN CỬ CHỈ

2.1.1. Thư viện mê-đi-a-pai (MediaPipe)

2.1.2. Thư viện Kê-rát (Keras)

2.1.3. Huấn luyện mô hình nhận diện cử chỉ cho hệ thống

2.1.3.1. Tải tập dữ liệu
2.1.3.2. Xây dựng mô hình
2.1.3.3. Biên dịch mô hình
2.1.3.4. Huấn luyện mô hình
2.1.3.5. Đánh giá mô hình

2.2. THƯ VIỆN THIẾT KẾ GIAO DIỆN: QT

2.3. MÔ HÌNH MẠNG TCP/IP

3. CHƯƠNG 3: THIẾT KẾ HỆ THỐNG

3.1. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG PHẦN CỨNG

3.1.1. Chức năng của phần cứng

3.1.2. Thiết kế sơ đồ khối hệ thống

3.1.2.1. Thiết kế khối xử lý (máy chủ)
3.1.2.2. Thiết kế chi tiết khối xử lý (máy khách)

3.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG PHẦN MỀM

3.2.1. Thiết kế nhận diện cử chỉ cho hệ thống

3.2.2. Thiết kế giao diện điều khiển cho hệ thống

3.2.2.1. Bố trí giao diện
3.2.2.2. Thiết kế giao diện

3.2.3. Thiết kế máy khách cho hệ thống

4. CHƯƠNG 4: KẾT QUẢ

4.1. KẾT QUẢ THỰC HIỆN MÔ HÌNH

4.2. ĐÁNH GIÁ MÔ HÌNH

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

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

4.2.3. Đánh giá hoạt động 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

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về Điều Khiển Thiết Bị Điện Bằng Cử Chỉ Tay

Sự phát triển của công nghiệp và công nghệ thông tin đã thúc đẩy việc ứng dụng máy móc vào đời sống, thay thế các hoạt động thủ công của con người. Thiết bị điện là một phần không thể thiếu trong mỗi gia đình, và việc điều khiển thiết bị điện bằng cử chỉ là một bước tiến quan trọng. Khác với các hệ thống điều khiển từ xa thông qua điện thoại, hệ thống này cho phép điều khiển trực tiếp bằng cử chỉ bàn tay, thông qua thiết bị thu hình ảnh. Hệ thống cho phép người dùng điều khiển các thiết bị điện trong nhà bằng cách ra dấu tay trước camera. Ngoài ra, hệ thống còn hỗ trợ điều khiển thông qua giao diện người dùng và nút nhấn vật lý. Mục tiêu cuối cùng là tạo ra một hệ thống giao diện cử chỉ trực quan và dễ sử dụng, đồng thời điều khiển thiết bị điện hiệu quả. Theo tài liệu gốc, hệ thống này "tạo ra một hệ thống cho phép người dùng điều khiển các thiết bị điện trong nhà bằng cách đưa tay trước thiết bị ghi hình thực hiện việc bật/tắt thiết bị." Nhóm thực hiện đề tài hướng tới việc mang lại sự tiện lợi và trải nghiệm tương tác người máy bằng cử chỉ (HCI) hoàn toàn mới cho người dùng, mở ra tiềm năng lớn trong lĩnh vực nhà thông minh.

1.1. Tiềm Năng Ứng Dụng Của Điều Khiển Bằng Cử Chỉ Trong IoT

Sự phát triển của Internet of Things (IoT) đã mở ra nhiều cơ hội để ứng dụng công nghệ điều khiển bằng cử chỉ. Các thiết bị điện thông minh có thể được điều khiển một cách tự nhiên và trực quan hơn, không cần đến các thiết bị điều khiển từ xa truyền thống. Điều này đặc biệt hữu ích trong các môi trường nhà thông minh, nơi người dùng có thể điều khiển đèn, quạt, TV và các thiết bị khác chỉ bằng cử chỉ tay. Ứng dụng điều khiển bằng cử chỉ mang lại sự tiện lợi và linh hoạt cho người dùng, đồng thời góp phần nâng cao trải nghiệm sống trong nhà thông minh.

1.2. Lợi Ích Của Điều Khiển Không Chạm Bằng Cử Chỉ Tay

Điều khiển không chạm bằng cử chỉ tay mang lại nhiều lợi ích, đặc biệt trong bối cảnh dịch bệnh hiện nay. Giảm thiểu tiếp xúc trực tiếp với các bề mặt giúp ngăn ngừa sự lây lan của vi khuẩn và virus. Bên cạnh đó, điều khiển từ xa bằng cử chỉ cũng rất hữu ích cho những người khuyết tật, người lớn tuổi hoặc những người gặp khó khăn trong việc sử dụng các thiết bị điều khiển truyền thống.

II. Thách Thức Hạn Chế Khi Phát Triển Hệ Thống Cử Chỉ Tay

Mặc dù có nhiều tiềm năng, việc phát triển hệ thống điều khiển bằng cử chỉ cũng đối mặt với nhiều thách thức. Độ chính xác của hệ thống phụ thuộc vào nhiều yếu tố, bao gồm ánh sáng, góc độ camera, và hình dạng bàn tay của người dùng. Việc nhận diện cử chỉ trong môi trường phức tạp, có nhiều vật thể hoặc người khác trong khung hình, cũng là một vấn đề khó khăn. Hơn nữa, việc tạo ra một bộ giao diện cử chỉ trực quan và dễ sử dụng, đồng thời đáp ứng nhu cầu của nhiều người dùng khác nhau, đòi hỏi sự nghiên cứu và thử nghiệm kỹ lưỡng. Theo tài liệu, "vì thiết kế chỉ thực hiện trong môi trường có mạng nên khi lỗi mạng xảy ra thì toàn hệ thống thiết kế sẽ không thực thi được." Điều này cho thấy sự phụ thuộc vào kết nối mạng ổn định là một hạn chế cần được khắc phục trong tương lai.

2.1. Yếu Tố Ảnh Hưởng Đến Độ Chính Xác Nhận Diện Cử Chỉ

Độ chính xác của hệ thống nhận diện cử chỉ chịu ảnh hưởng bởi nhiều yếu tố. Ánh sáng yếu hoặc quá mạnh có thể làm giảm khả năng nhận diện cử chỉ. Góc độ camera không phù hợp cũng có thể gây ra sai lệch. Hình dạng và kích thước bàn tay của mỗi người là khác nhau, đòi hỏi hệ thống phải có khả năng thích ứng linh hoạt. Các thuật toán machine learning nhận diện cử chỉ cần được huấn luyện với dữ liệu đa dạng để đảm bảo độ chính xác cao trong mọi điều kiện.

2.2. Vấn Đề Bảo Mật Trong Hệ Thống Điều Khiển Cử Chỉ

Bảo mật là một vấn đề quan trọng cần được xem xét khi phát triển hệ thống điều khiển bằng cử chỉ. Nếu hệ thống không được bảo vệ đúng cách, kẻ xấu có thể xâm nhập và điều khiển các thiết bị điện trong nhà. Cần có các biện pháp bảo mật mạnh mẽ, chẳng hạn như mã hóa dữ liệu, xác thực người dùng, và giám sát hoạt động hệ thống, để đảm bảo an toàn cho người dùng.

III. Phương Pháp Thiết Kế Hệ Thống Điều Khiển Bằng Cử Chỉ Hiệu Quả

Để xây dựng một hệ thống điều khiển thiết bị điện bằng cử chỉ hiệu quả, cần có một phương pháp thiết kế toàn diện. Đầu tiên, cần lựa chọn các cảm biến cử chỉ và camera phù hợp, đảm bảo chất lượng hình ảnh tốt và khả năng nhận diện cử chỉ chính xác. Tiếp theo, cần phát triển các thuật toán AI điều khiển cử chỉ mạnh mẽ, có khả năng thích ứng với nhiều điều kiện khác nhau. Cuối cùng, cần thiết kế một giao diện cử chỉ trực quan và dễ sử dụng, cho phép người dùng dễ dàng điều khiển các thiết bị điện trong nhà. Theo tài liệu, hệ thống bao gồm "hai khối điều khiển chính: một máy chủ điều khiển dùng để nhận diện cử chỉ và tương tác trực tiếp với người dùng, một khối còn lại là máy khách, máy khách này nhận tín hiệu điều khiển từ máy chủ thông qua Wifi để điều khiển thiết bị." Cấu trúc này cho phép hệ thống hoạt động một cách linh hoạt và hiệu quả.

3.1. Lựa Chọn Cảm Biến Camera Cho Hệ Thống Nhận Diện Cử Chỉ

Việc lựa chọn cảm biến cử chỉ và camera phù hợp là rất quan trọng. Camera cần có độ phân giải cao, khả năng chụp ảnh trong điều kiện ánh sáng yếu, và góc nhìn rộng. Cảm biến cử chỉ cần có độ nhạy cao, khả năng phát hiện cử chỉ chính xác, và khả năng lọc nhiễu tốt. Các loại camera và cảm biến cử chỉ phổ biến bao gồm camera hồng ngoại, camera stereo, và cảm biến Leap Motion.

3.2. Phát Triển Thuật Toán AI Nhận Diện Cử Chỉ Bằng Machine Learning

Các thuật toán machine learning đóng vai trò quan trọng trong việc nhận diện cử chỉ. Các thuật toán này cần được huấn luyện với một lượng lớn dữ liệu để có thể nhận diện cử chỉ chính xác. Các thuật toán machine learning phổ biến bao gồm mạng nơ-ron tích chập (CNN), mạng nơ-ron hồi quy (RNN), và máy vector hỗ trợ (SVM).

3.3. Thiết Kế Giao Diện Trực Quan Dễ Sử Dụng Cho Người Dùng

Một giao diện cử chỉ trực quan và dễ sử dụng là yếu tố then chốt để hệ thống điều khiển bằng cử chỉ thành công. Giao diện cần được thiết kế sao cho người dùng có thể dễ dàng tìm hiểu và sử dụng, đồng thời cung cấp phản hồi rõ ràng cho người dùng về hành động của họ. Các yếu tố quan trọng trong thiết kế giao diện bao gồm biểu tượng dễ hiểu, hướng dẫn rõ ràng, và khả năng tùy chỉnh theo sở thích của người dùng.

IV. Ứng Dụng Thực Tế Kết Quả Nghiên Cứu Hệ Thống Cử Chỉ

Hệ thống điều khiển thiết bị điện bằng cử chỉ có thể được ứng dụng rộng rãi trong nhiều lĩnh vực. Trong nhà thông minh, hệ thống có thể được sử dụng để điều khiển đèn, quạt, TV, và các thiết bị khác. Trong công nghiệp, hệ thống có thể được sử dụng để điều khiển robot, máy móc, và các thiết bị tự động hóa. Trong y tế, hệ thống có thể được sử dụng để điều khiển thiết bị y tế, hỗ trợ phẫu thuật, và phục hồi chức năng. Theo tài liệu, "kết quả của đồ án tốt nghiệp này là triển khai hệ thống lên phần cứng có huấn luyện ra mô hình và sử dụng mô hình đó điều khiển được thiết bị điện mô phỏng." Điều này cho thấy hệ thống đã được thử nghiệm thành công trong môi trường thực tế.

4.1. Triển Khai Hệ Thống Trong Môi Trường Nhà Thông Minh Tiện Ích

Trong môi trường nhà thông minh, hệ thống điều khiển bằng cử chỉ mang lại nhiều tiện ích. Người dùng có thể điều khiển đèn, quạt, TV, và các thiết bị khác chỉ bằng cử chỉ tay, không cần đến các thiết bị điều khiển từ xa truyền thống. Hệ thống cũng có thể được tích hợp với các hệ thống nhà thông minh khác, chẳng hạn như hệ thống an ninh, hệ thống điều hòa không khí, và hệ thống giải trí.

4.2. Ứng Dụng Trong Công Nghiệp Hỗ Trợ Tự Động Hóa Quy Trình

Trong công nghiệp, hệ thống điều khiển bằng cử chỉ có thể được sử dụng để điều khiển robot, máy móc, và các thiết bị tự động hóa. Hệ thống giúp tăng hiệu quả sản xuất, giảm thiểu rủi ro tai nạn lao động, và cải thiện điều kiện làm việc cho công nhân.

4.3. Tiềm Năng Trong Y Tế Hỗ Trợ Phẫu Thuật Phục Hồi Chức Năng

Trong y tế, hệ thống điều khiển bằng cử chỉ có thể được sử dụng để điều khiển thiết bị y tế, hỗ trợ phẫu thuật, và phục hồi chức năng. Hệ thống giúp bác sĩ phẫu thuật thao tác chính xác hơn, giảm thiểu xâm lấn, và rút ngắn thời gian phẫu thuật. Hệ thống cũng giúp bệnh nhân phục hồi chức năng nhanh hơn, cải thiện chất lượng cuộc sống.

V. Kết Luận Hướng Phát Triển Tương Lai Của Công Nghệ Cử Chỉ

Hệ thống điều khiển thiết bị điện bằng cử chỉ là một công nghệ đầy tiềm năng, có thể mang lại nhiều lợi ích cho người dùng trong nhiều lĩnh vực. Tuy nhiên, vẫn còn nhiều thách thức cần được giải quyết để hệ thống có thể được ứng dụng rộng rãi. Trong tương lai, công nghệ điều khiển bằng cử chỉ sẽ tiếp tục phát triển, với các thuật toán AI ngày càng mạnh mẽ hơn, cảm biến cử chỉ ngày càng chính xác hơn, và giao diện cử chỉ ngày càng trực quan hơn. Nhóm nghiên cứu hy vọng rằng hệ thống này sẽ góp phần vào sự phát triển của công nghệ điều khiển bằng cử chỉ, mang lại một cuộc sống tiện nghi và thông minh hơn cho mọi người.

5.1. Tối Ưu Hóa Thuật Toán AI Nhận Diện Cử Chỉ Chính Xác

Việc tối ưu hóa các thuật toán AI là rất quan trọng để cải thiện độ chính xác của hệ thống nhận diện cử chỉ. Các thuật toán cần được huấn luyện với dữ liệu đa dạng và được điều chỉnh để phù hợp với nhiều điều kiện khác nhau. Các kỹ thuật mới, chẳng hạn như học sâu (deep learning), có thể được sử dụng để phát triển các thuật toán nhận diện cử chỉ mạnh mẽ hơn.

5.2. Phát Triển Cảm Biến Cử Chỉ Với Độ Chính Xác Cao

Việc phát triển các cảm biến cử chỉ với độ chính xác cao là rất quan trọng để cải thiện hiệu suất của hệ thống điều khiển bằng cử chỉ. Các cảm biến cần có độ nhạy cao, khả năng phát hiện cử chỉ chính xác, và khả năng lọc nhiễu tốt. Các công nghệ mới, chẳng hạn như cảm biến dựa trên trí tuệ nhân tạo, có thể được sử dụng để phát triển các cảm biến cử chỉ tiên tiến hơn.

5.3. Tích Hợp Công Nghệ Cử Chỉ Vào Các Thiết Bị Đeo Thông Minh

Việc tích hợp công nghệ cử chỉ vào các thiết bị đeo thông minh, chẳng hạn như đồng hồ thông minh và kính thông minh, có thể mở ra nhiều ứng dụng mới. Người dùng có thể điều khiển các thiết bị điện trong nhà chỉ bằng cử chỉ tay trên thiết bị đeo, mang lại sự tiện lợi và linh hoạt hơn.

22/09/2025

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

Chương 1 GIỚI THIỆU: các vấn đề về đề tài sẽ được khái quát ở chương này. - Các mục tiêu mà nhóm thực hiện sẽ nghiên cứu để hoàn thành hệ thống. - Những giới hạn trong quá trình thực hiện đề tài. - Các phương pháp được nhóm thực hiện sử dụng để nghiên cứu đề tài.

- Phạm vi và đối tượng mà nhóm thực sẽ tiến hành nghiên cứu trong quá trình thực hiện đề tài. Chương 2 CƠ SỞ LÝ THUYẾT: trình bày về tình hình nghiên cứu, hướng nghiên cứu, các dịch vụ đang được sử dụng. 3 Chương 3 THIẾT KẾ HỆ THỐNG: thực hiện thiết kế sơ đồ khối cho toàn hệ thống, nói chi tiết về thiết kế các khối phần cứng và quá trình thực hiện phần mềm. Các hoạt động điều khiển từ phần mềm tới phần cứng.

Chương 4 KẾT QUẢ: triển khai mô hình hoàn chỉnh về phần cứng, tiến hành hoạt động khởi chạy cho toàn hệ thống (các hoạt động điều khiều từ phần mềm tới các thiết bị phần cứng). Chương 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN: đánh giá quá trình hoạt động của mô hình sau khi hoàn thiện có đúng với mục tiêu của đề tài đặt ra hay không, các mục ưu điểm nổi bật của hệ thống cũng như một số khuyết điểm, từ đó nêu ra hướng phát triển cho hệ thống. 4 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 GIỚI THIỆU MÔ HÌNH NHẬN DIỆN CỬ CHỈ Đề tài nhóm thực hiện tham khảo và sử dụng mô hình nhận diện cử chỉ tay để thực hiện việc nhận diện cử chỉ tay dùng để bật tắt các thiết bị điện. Mô hình sử dụng thư viện Mê-đi-a-pai (MediaPipe) và thư viện Kê-rát (keras).1 Thư viện mê-đi-a-pai (MediaPipe) Một thư viện do Google thực hiện nghiên cứu và phát triển.

MediaPipe là tập hợp của một loạt các giải pháp máy học (Machine Learning) đa nền tảng có một số ưu điểm: có thể triển khai trên di động, máy tính, đám mây, Web, thiết bị IoT, … mã nguồn mở và hoàn toàn miễn phí (người dùng có thể sử dụng và tùy chỉnh trực tiếp theo bài toán của mình). Google Mê-đi-a-pai hỗ trợ hầu như tất cả các lĩnh vực về Thị giác máy tính (Computer Vision). Một số giải pháp như: Nhận diện khuôn mặt (Face Dectection), Lưới mặt (Face Mesh), Nhận diện bàn tay (Hands Detection), Ước tính tư thế người (Human Pose Estimation), Phát hiện đối tượng (Object Detection), … và nhiều hơn thế nữa. Đề tài nhóm thực hiện sử dụng giải pháp Nhận diện bàn tay (Hands Detection) [1].

Nhận diện các điểm mốc tọa độ trên bàn tay: giải pháp này sẽ hỗ trợ mô hình nhận diện được lòng bàn tay đang xuất hiện trên khung hình đang thu thập hình ảnh, từ lòng bàn tay này giải pháp sẽ vẽ ra 21 điểm mốc trên lòng bàn tay có tọa độ tương ứng so với khung hình đang thu thập hình ảnh. 5 Hình 2-1 21 điểm mốc bàn tay từ mê-đi-a-pai. [1] Hình 2-1 cho biết 21 điểm mốc bàn tay của con người được thư viện mê-đi- a-pai nhận diện. Với mỗi điểm mốc sẽ có thư viện đọc về giá trị tọa độ x, y, z (x, y, z lần lượt là chiều dài, chiều rộng và chiều sâu) của điểm mốc ấy trên khung hình mà máy ảnh chụp hoặc quay được.

Với mỗi cử chỉ sẽ trả về một bộ tọa độ khác nhau nên rất thích hợp cho việc huấn luyện cho mạng học sâu. Hình 2-2 Điểm mốc bàn tay được sử dụng trong thiết kế. Hình 2-2 hình tay của thành viên trong nhóm khi sử dụng thư viện Mê-đi- a-pai trong quá trình tìm hiểu và tham khảo mô hình nhận diện cử chỉ tay.2 Thư viện Kê-rát (Keras) Kê-rát là một thư viện hỗ trợ cho việc huấn luyện mô hình học sâu (Deep Learning) [2]. Keras được biết đến là một thư viện hỗ trợ xây dựng mô hình đơn giản, dễ nắm bắt nhất so với các thư viện khác, không cần hiểu quá sâu về Mạng Nơ-ron ta cũng có thể thực hiện xây dựng một mô hình tương đối hoàn chỉnh.

Lý do nhóm tham khảo và chọn mô hình này để thực hiện việc nhận diện cử chỉ này cũng một phần do mô hình này sử dụng thư viện Kê-rát dễ tiếp cận cho nhóm vì thành viên của nhóm không chuyên về lĩnh vực Trí tuệ nhân tạo (AI). Hình 2-3 Thư viện Kê-rát.3 Huấn luyện mô hình nhận diện cử chỉ cho hệ thống Nhóm thực hiện sử dụng 2 thư viện chính để hỗ trợ cho việc huấn luyện mô hình: Mê-đi-a-pai hỗ trợ việc tìm kiếm các bàn tay trên khung hình và trả về các dữ liệu mốc bàn tay, từ dữ liệu mốc bàn tay đó nhóm lưu lại thành một tập dữ liệu lớn gồm các cử chỉ mà nhóm muốn mô hình nhận diện được từ đó sử dụng thư viện Kê-rát, sử dụng tập dữ liệu đó thực hiện việc huấn luyện tạo ra một mô hình hoàn chỉnh có thể nhận diện được cử chỉ. Quy trình để huấn luyện một mô hình sử dụng thư viện của Kê-rát, đây là một quy trình chung cho hầu hết các mô hình sử dụng thư viện Kê-rát để huấn luyện. Quá trình các bước cụ thể sẽ được trình bày sau đây.

7 Hình 2-4 Quy trình huấn luyện mô hình của thư viện Kê-rát.1 Tải tập dữ liệu Đầu tiên là quá trình tải tập dữ liệu đã được lưu trữ để huấn luyện mô hình. Bộ dữ liệu ở đây là tọa độ các điểm mốc bàn tay, với mỗi cử chỉ ta sẽ có một bộ gồm 21 điểm mốc tọa độ trên lòng bàn tay. Mỗi bộ trong 21 điểm mốc bàn tay đó sẽ có 2 tọa độ là tọa độ so với chiều rộng và tọa độ so với chiều cao trên khung hình mà camera thu được dữ liệu hình ảnh bàn tay. Ngoài 42 cột biểu thị cho tọa độ của 21 điểm mốc bàn tay thì ta còn có thêm 1 cột biểu thị cho nhãn của mô hình nhận diện cử chỉ.

Vậy ta có tổng 43 cột cho mỗi dữ liệu để huấn luyện mô hình. Bộ dữ liệu này sẽ được tải lên Pycharm và thực hiện việc chia thành tập huấn luyện và tập kiểm tra theo tỉ lệ 75% huấn luyện và 25% kiểm tra.2 Xây dựng mô hình Xây dựng mô hình là vẽ kiến trúc mạng để thực hiện việc huấn luyện mô hình. Mô hình trong đề tài của nhóm được tham khảo kiến trúc mạng mô hình một đề tài hand gesture recognition mediapipe của Nikita Kiselov được chia sẻ trên gitbub. Mô hình này được xây dựng gồm có 4 lớp: lớp đầu tiên có 42 nơ-ron lần lượt là 2 thông số tọa độ của 21 điểm mốc bàn tay trên khung hình phát hiện bày tay, lớp thứ 2 là lớp ẩn gồm 20 nơ-ron và lớp thứ 3 cũng là một lớp ẩn 10 nơ-ron, cuối cùng là lớp ngõ ra có 16 ngõ ra (vì hệ thống có tổng 16 cử chỉ và cho phép người dùng có thể tùy ý điều chỉnh để điều khiển thiết bị mong muốn).

Ở lớp ngõ ra mô hình sử dụng hàm trung bình mũ (softmax) để tính xác suất của vector, hàm này thường được dùng trong các bài toàn phân loại đa lớp. Trong đề tài này hàm Softmax chia 16 ngõ ra thành xác suất tổng là 1 và giá trị của ngõ ra từ (0,1]. Hình 2-5 Hàm trung bình mũ (Softmax).3 Biên dịch mô hình Quá trình biên dịch mô hình là quá trình thực hiện lựa chọn các thông số cho quá trình huấn luyện mô hình. Hàm thất thoát, mất mát (Loss) mô hình sử dụng thông số phân loại chéo thưa thớt (sparse categorical crossentropy), hàm tối ưu hóa (optimizer) sử dụng thông số ‘adam’, hàm đánh giá mô hình (metrics) sử dụng ‘accuracy’.4 Huấn luyện mô hình Quá trình huấn luyện mô hình khi sử dụng thư viện Kê-rát hết sức đơn giản, chỉ cần gọi hàm tạo mô hình huấn luyện (fit).

Mô hình có gần 70000 dữ liệu với 16 cử chỉ để huấn luyện nên nhóm thực hiện sử dụng số lượng mẫu mỗi lần cập nhật trọng số là 128 (Batch_size = 128). Vì dữ liệu quá nhiều nên nhóm phải chia 9 nhỏ dữ liệu thành nhiều phần nhỏ để cập nhật trọng số. Ngoài ra còn có thông số gọi lại (callbacks) để mỗi lần gặp lỗi ta có thể lưu lại mô hình để chạy cho lượt tiếp theo.5 Đánh giá mô hình Để đánh giá mô hình nhóm sử dụng ma trận lỗi (confusion matrix) để đo lượng, tính toán hiệu suất cho bài toán phân loại của mô hình. Một vài thông số để đánh giá mô hình: - Số đúng thực tế (condition positive: P) - Số sai thực tế (condition negative: N) - Số dự đoán đúng mà nó đúng (True positive: TP) - Số dự đoán sai mà nó đúng (True negative: TN) - Số dự đoán đúng mà nó sai (False positive: FP) - Số dự đoán sai mà nó sai (False negative: FN) Với các thuật ngữ này ta có: Bảng 2-1 Bảng các công thức đánh giá một mô hình.

[3] Công thức Tên Độ chính xác (Accuracy: Acc) Tỷ lệ dự đoán đúng mà nó đúng (True Positive Rate: TPR) Recall Precision F1 score 10 2.2 THƯ VIỆN THIẾT KẾ GIAO DIỆN: QT Qt là một thư viện đa nền tảng để tạo nên các giao diện đồ họa người dùng, chủ yếu với các cửa sổ. Qt được viết bằng C++ và được thiết kế để sử dụng C++. Tuy nhiên hiện nay chúng ta có thể sử dụng thư viện này với nhiều ngôn ngữ khác như Java hay Python, … vì xuyên suốt quá trình thực hiện tham khảo mô hình nhận diện cử chỉ tay là ngôn ngữ Python nên nhóm quyết định sử dụng thư viện Qt dùng ngôn ngữ Python hay còn được gọi với tên khác là PyQt5 [4] thiết kế giao diện với ngôn ngữ Python đơn giản dễ nắm bắt trong quá trình thực hiện đề tài thiết kế. Hình 2-6 Thư viện Qt.

[4] Hình 2-5 logo thư viện Qt mà nhóm dùng để thực hiện thiết kết giao diện. Ngoài ra thư viện Qt còn có hỗ trợ QtNetwork gọi các hàm làm máy chủ, nhóm sử dụng để làm máy chủ cho hệ thống từ đó liên kết với máy khách.3 MÔ HÌNH MẠNG TCP/IP Thời đại hiện đại hóa ngày nay, bất kỳ nhà nào cũng có mạng internet thế nên việc sử dụng mạng để tương tác giữa các thiết bị điều khiển là điều hết sức phổ biến. Trong một ngôi nhà có thể có nhiều tầng do đó nếu dùng kết nối UART có dây thì việc thiết lập cho hệ thống nếu nhiều tầng sẽ rất rườm ra. Việc sử dụng mạng để tương tác giữa khối xử lý nhận diện cử chỉ rồi điều khiển thiết bị từ xa 11 bằng mạng thì có thể giải quyết được hạn chế mà kết nối UART là dùng dây kết nối.

Tầng ứng dụng (Application): đề cập đến các chương trình cần TCP/IP để giúp các thiết bị giao tiếp với nhau.

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