Thiết kế hệ thống nhận dạng cử chỉ bàn tay sử dụng mạng nơ ron chập tại HCMUTE

Chuyên khảo phân tích Hcmute thiết kế hệ thống nhận dạng cử chỉ bàn tay dùng mạng nơ ron chập, đánh giá các khía cạnh quan trọng, đề xuất hướng nghiên cứu tiếp theo.

Người đăng

Ẩn danh

Thể loại

báo cáo tổng kết đề tài KH&CN

2021

59
8
0

Phí lưu trữ

30 Point

Mục lục chi tiết

MỤC LỤC

1. CHƯƠNG 1: MỞ ĐẦU

1.1. Tổng quan

1.2. Mục tiêu đề tài

1.3. Đối tượng và phạm vi nghiên cứu

1.4. Phương pháp nghiên cứu

1.5. Nội dung nghiên cứu

2. CHƯƠNG 2: MẠNG NƠ-RON TÍCH CHẬP VÀ ỨNG DỤNG NHẬN DẠNG CỬ CHỈ BÀN TAY

2.1. Mạng nơ-ron tích chập

2.2. Tổng quan về kỹ thuật phát hiện đối tượng

2.3. Phát hiện đối tượng sử dụng mô hình R-CNN (Regions with CNN Features)

2.4. Phát hiện đối tượng sử dụng mô hình Single Shot Detector (SSD)

2.5. Tăng cường dữ liệu

3. CHƯƠNG 3: THIẾT KẾ HỆ THỐNG NHẬN DẠNG CỬ CHỈ BÀN TAY

3.1. Thiết kế hệ thống nhận dạng bàn tay với ảnh bàn tay tĩnh

3.2. Thiết kế hệ thống nhận dạng bàn tay với ảnh bàn tay từ camera

4. CHƯƠNG 4: KẾT QUẢ NGHIÊN CỨU VÀ ỨNG DỤNG

4.1. Hệ thống nhận dạng bàn tay với ảnh bàn tay tĩnh

4.2. Hệ thống nhận dạng bàn tay thời gian thực

5. CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ

5.1. Kết quả nghiên cứu

5.2. Kiến nghị và định hướng nghiên cứu

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Nhận dạng cử chỉ và Hệ thống nhận dạng tại HCMUTE

Nghiên cứu này, thực hiện tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (HCMUTE), tập trung vào thiết kế và phát triển một hệ thống nhận dạng cử chỉ bàn tay sử dụng mạng nơ-ron chập (CNN). Đề tài tập trung vào việc xây dựng một hệ thống nhận dạng có khả năng phân loại chính xác các cử chỉ bàn tay, đóng góp cho lĩnh vực tầm nhìn máy tínhtrí tuệ nhân tạo (AI). Việc sử dụng mạng nơ-ron chập (CNN) cho phép hệ thống học hỏi từ dữ liệu hình ảnh, trích xuất đặc trưng và phân loại các cử chỉ bàn tay với độ chính xác cao. Nghiên cứu này có ý nghĩa quan trọng trong việc phát triển các ứng dụng thực tế, nhất là trong giao diện người máy (Human-Computer Interaction - HCI), thực tế ảo (VR)thực tế tăng cường (AR).

1.1 Thuật toán nhận dạng cử chỉ và Xử lý ảnh

Hệ thống dựa trên thuật toán nhận dạng sử dụng mạng nơ-ron chập (CNN - Convolutional Neural Network). Mô hình CNN được huấn luyện trên một tập dữ liệu lớn gồm 27,600 mẫu ảnh, bao gồm 6 loại cử chỉ bàn tay khác nhau. Quá trình xử lý ảnh bao gồm các bước tiền xử lý, trích xuất đặc trưng và phân loại. Phát hiện đối tượng được thực hiện thông qua việc sử dụng các mô hình phát hiện đối tượng như R-CNN hoặc SSD, giúp hệ thống tập trung vào vùng chứa bàn tay trong ảnh. Phân tích ảnhphân loại ảnh là những bước then chốt trong quá trình nhận dạng cử chỉ. Kết quả cho thấy hệ thống đạt độ chính xác cao (98%) trong việc nhận dạng cử chỉ bàn tay từ ảnh tĩnh. Các thư viện mã nguồn mở như OpenCV, TensorFlow, và PyTorch được sử dụng để hỗ trợ việc xây dựng và triển khai hệ thống. Python được chọn làm ngôn ngữ lập trình chính.

1.2 Tích hợp hệ thống và Ứng dụng thực tế

Ngoài việc nhận dạng cử chỉ từ ảnh tĩnh, nghiên cứu còn tập trung vào việc phát triển một hệ thống hoạt động thời gian thực sử dụng dữ liệu từ camera. Đây là một thách thức lớn hơn, đòi hỏi phải xử lý dữ liệu nhanh chóng và hiệu quả. Tích hợp hệ thống bao gồm việc kết hợp các mô-đun phát hiện bàn taynhận dạng cử chỉ. Trong phiên bản thời gian thực, hệ thống được thiết kế để nhận dạng 3 cử chỉ bàn tay đơn giản. Việc sử dụng mạng nơ-ron chập trong hệ thống nhận dạng cử chỉ cho phép hệ thống có khả năng thích ứng với những thay đổi nhỏ trong tư thế bàn tay. Ứng dụng di động là một hướng phát triển tiềm năng, cho phép người dùng tương tác với thiết bị một cách trực quan và tiện lợi. Nghiên cứu cũng đề cập đến các ứng dụng thực tế của hệ thống, bao gồm điều khiển bằng cử chỉ, giao diện người máy (HCI), và các ứng dụng trong lĩnh vực thực tế ảo (VR)thực tế tăng cường (AR). Học máy (Machine Learning) đóng vai trò quan trọng trong việc huấn luyện và cải thiện độ chính xác của hệ thống.

1.3 Đánh giá hệ thống và Nghiên cứu khoa học

Nghiên cứu tiến hành đánh giá hệ thống dựa trên các chỉ số như độ chính xác, tốc độ xử lý và khả năng hoạt động trong điều kiện thực tế. Độ chính xác nhận dạng là chỉ tiêu quan trọng nhất, đạt được 98% đối với ảnh tĩnh và kết quả khả quan với ảnh thời gian thực. Dữ liệu huấn luyện đóng vai trò then chốt trong việc đảm bảo độ chính xác. Kết quả nghiên cứu được trình bày trong một báo cáo khoa học và một bài báo được chấp nhận đăng trên tạp chí Khoa học và Công nghệ. Nghiên cứu này góp phần vào sự phát triển của nghiên cứu khoa học trong lĩnh vực công nghệ nhận dạng. Việc sử dụng mạng nơ-ron chập và các kỹ thuật học sâu (Deep Learning) đã cho thấy hiệu quả trong việc giải quyết bài toán nhận dạng cử chỉ bàn tay. Hệ thống này có thể được ứng dụng rộng rãi trong nhiều lĩnh vực, mang lại giá trị thực tiễn cao.

01/02/2025

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

MỞ ĐẦU 1. Tổng quan Giao diện người – máy cơ bản nhất được sử dụng thông qua bàn phím và chuột bị giới hạn bởi khoảng cách giữa người dùng với đối tượng cần tương tác [1]. Một số tương tác qua giọng nói đã đem lại nhiều tiện ích cho người dùng như điều khiển thiết bị thông qua giọng nói trong ngôi nhà thông minh [2], các vấn đề nhận dạng đối tượng cần thiết trong an ninh [3]. Tuy nhiên, các giao diện này bị giới hạn bởi các đặc trưng giọng nói theo vùng miền, từ đó dẫn đến việc thiết kế hệ thống phức tạp và khó được sử dụng phổ biến [4].

Nhận diện các cử chỉ bàn tay là phương pháp để xây dựng giao diện người dùng thân thiện giữa máy và người sử dụng. Trong tương lai gần, công nghệ nhận dạng cử chỉ bàn tay cho phép các máy phức hợp và các thiết bị thông minh hoạt động dựa trên tư thế bàn tay, ngón tay và sự di chuyển của bàn tay, loại bỏ việc giao tiếp vật lý giữa người và máy. Ngày nay với sự phát triển của các thư viện mã nguồn mở trong lĩnh vực thị giác máy tính đã cho phép thiết kế các ứng dụng nhận dạng cử chỉ bàn tay dễ dàng hơn và có thể áp dụng các ứng dụng này rộng rãi vào nhiều lĩnh vực như y học [5], nhận dạng ngôn ngữ cử chỉ [6], điều khiển robot [7], thực tế ảo [8], điều khiển các thiết bị trong nhà [9] và các ứng dụng giải trí [10]. Giải thuật nhận dạng cử chỉ bàn tay được phát triển ban đầu dựa trên kỹ thuật xử lý ảnh và thị giác máy tính.

Các giải thuật này chủ yếu dựa vào việc phân đoạn và tách đặc trưng của bàn tay dựa vào một số đặc trưng như màu da, khung xương, độ sâu, mô hình 3 chiều, hoặc nhận dạng dựa vào chuyển động [11]-[13]. Trong những năm gần đây, trí tuệ nhân tạo trong đó cụ thể là các mạng học sâu (Deep neural network) trở nên hiệu quả và được áp dụng trong nhiều ứng dụng như nhận dạng, phân loại ảnh, xử lý ngôn ngữ tự nhiên. Một trong những yếu tố chính là việc phát triển của công nghệ vi mạch cho phép các hệ thống máy tính có cấu hình mạnh ra đời đã tạo điều kiện cho việc thực thi các mạng nhiều lớp trở nên hiệu quả hơn trước. Song song với việc phát triển phần cứng cũng 6 Luan van như các mạng học sâu, sự phát triển của các thư viện mã nguồn mở cho phép thiết kế các mạng học sâu cho các ứng dụng cũng đa dạng và đơn giản hơn.

Trong đề tài này, nhóm nghiên cứu thiết kế mạng nơ-ron tích chập cho bài toán nhận dạng cử chỉ bàn tay. Mạng nơ-ron tích chập được huấn luyện trên tập mẫu được nhóm nhóm tự tạo bao gồm 27,600 mẫu với 6 lớp khác nhau bao gồm “năm ngón tay khép kín”, “năm ngón tay mở”, “cử chỉ bốn ngón tay mở”, “bàn tay nắm”, “cử chỉ có ba ngón tay mở” và “cử chỉ có hai ngón tay mở”, được đặt tên tương ứng từ class1 đến class6. Quá trình thực nghiệm cho thấy, hệ thống có thể nhận dạng đạt độ chính xác lên đến 98. Hơn nữa nhóm xây dựng ứng dụng nhận dạng cử chỉ bàn tay thời gian thực, các ảnh được đọc trực tiếp từ camera.

Ứng dụng đọc trực tiếp từ camera đòi hỏi độ phức tạp cao hơn. Trong đó, một mô hình cho việc tách ảnh bàn tay từ ảnh chụp được vì ảnh thu được từ cảm là ảnh toàn khung bao gồm cả thân người, bàn tay và một số đối tượng cũng như vật thể khác. Sau khi ảnh bày tay được tách ra từ ảnh toàn khung, một mô đun khác được sử dụng để nhận dạng cử chỉ bàn tay. Vì tính chất độ phức tạp của ảnh trong thời gian thực, trong ứng dụng này nhóm chỉ tiết kế nhận dạng theo thời gian thực 3 cử chỉ đơn giản là “Like”, “Ok”, và cử chỉ “2 ngón tay vuông góc”.

Mục tiêu đề tài Thiết kế và mô phỏng hệ thống nhận dạng cử chỉ bàn tay dùng mạng nơ-ron chập với ngõ vào là các ảnh chứa cử chỉ bàn tay. Đối với ảnh tĩnh, hệ thống có khả năng nhận dạng 6 cử chỉ bàn tay khác nhau bao gồm “năm ngón tay khép kín”, “năm ngón tay mở”, “cử chỉ bốn ngón tay mở”, “bàn tay nắm”, “cử chỉ có ba ngón tay mở” và “cử chỉ có hai ngón tay mở”. Đối với ảnh đọc trực tiếp từ camera, hệ thống có khả năng nhận dạng theo thời gian thực 3 trạng thái “Like”, “Ok” và trạng thái “2 ngón tay vuông góc”. Đối tượng và phạm vi nghiên cứu Đối tượng nghiên cứu: - Lý thuyết về xử lý ảnh, phát hiện đối tượng trong ảnh, trích xuất đặc trưng.

- Mạng nơ-ron tích chập. 7 Luan van Phạm vi nghiên cứu: - Nhận dạng được 06 phân loại cử chỉ bàn tay trong ảnh tĩnh: “năm ngón tay khép kín”, “năm ngón tay mở”, “cử chỉ bốn ngón tay mở”, “bàn tay nắm”, “cử chỉ có ba ngón tay mở” và “cử chỉ có hai ngón tay mở”. - Nhận dạng theo thời gian thực 3 cử chỉ đơn giản là “Like”, “Ok”, và cử chỉ “2 ngón tay vuông góc”. Phương pháp nghiên cứu Phân tích đánh giá các hệ thống nhận dạng cử chỉ bàn tay đã được công bố, nghiên cứu mạng nơ-ron tích chập.

Thiết kế mô hình, huấn luyện, đánh giá và hiệu chỉnh thông số. Nội dung nghiên cứu - Nghiên cứu cơ sở lý thuyết về xử lý ảnh: phát hiện bàn tay và trích xuất đặc trưng. - Nghiên cứu các giải pháp nhận dạng và phân loại các cử chỉ bàn tay. - Thiết kế và xây dựng hệ thống nhận dạng và phân loại các cử chỉ bàn tay từ các ảnh tỉnh bàn tay được thu thập thông qua camera điện thoại.

- Thu thập dữ liệu, phân tích, mô phỏng hệ thống và đánh giá kết quả. 8 Luan van Chương 2 MẠNG NƠ-RON TÍCH CHẬP VÀ ỨNG DỤNG NHẬN DẠNG CỬ CHỈ BÀN TAY 2. Mạng nơ-ron tích chập Mạng nơ-ron tích chập hay còn có thể gọi ngắn gọn là mạng nơ-ron chập (Convolutional Neural Network - CNN) dựa trên phép tích chập của ảnh với các bộ lọc thu được trong quá trình huấn luyện để tách các đặc điểm đặc trưng của ảnh. Trong mạng nơ-ron tích chập, các bộ lọc đã biết trong xử lý ảnh không hoặc ít khi được sử dụng để tách biên hay loại bỏ nhiễu.

Các bộ lọc thu được sau quá trình huấn luyện có thể rất khác với các bộ lọc thông dụng trong xử lý ảnh. Trong giải thuật học có giám sát, các bộ lọc được cập nhật trọng số sao cho hàm mất mát tiến về điểm cực tiểu. Ví dụ, lớp tích chập đầu tiên được huấn luyện để phát hiện biên, trong khi các lớp sau được huấn luyện để phát hiện các đặc tính phức tạp hơn của các đối tượng trong ảnh. Một trong những ý tưởng hình thành nên mạng nơ-ron tích chập là việc chia sẻ các trọng số.

Trong các lớp kết nối đầy đủ của mạng nhiều lớp, một nơ-ron ở lớp sau được kết nối đến tất cả các nơ-ron ở lớp trước nó. Tương tự như vậy, một nơ- ron sẽ kết nối đến tất cả các nơ-ron ở lớp sau nó. Kết quả là tạo ra số lượng kết nối và các trọng số tương ứng khá lớn trong mạng. Trong lớp chập, nơ-ron ở lớp sau chỉ kết nối đến 1 nhóm các nơ-ron ở lớp trước.

Hơn nữa các nơ-ron kết nối đến các nhóm này sử dụng cùng một tập trọng số. Do đó mạng nơ-ron tích chập hiệu quả khi số lượng lớp mạng tăng lên. Mạng nơ-ron tích chập là một mô hình khá phổ biến trong các mạng sâu nhiều lớp (Deep neural network). Mạng nơ-ron tích chập là sự kết hợp của mạng nơ-ron với các lớp kết nối đủ và mạng nơ-ron với các lớp chập.

Một mạng nơ-ron tích chập có kiến trúc như hình 2. Input image MaxPooling Convolutional layer MaxPooling Fully connected layer Convolutional layer Hình 2.1: Mạng nơ-ron tích chập. 9 Luan van Mạng nơ-ron tích chập trong hình 2.1 có kiến trúc bao gồm 2 lớp chập (convolutional layer), 2 lớp gộp (pooling layer) và lớp kết nối đầy đủ (fully- connected layer). Ảnh ngõ vào là các ma trận 2 chiều với giả sử có các giá trị nhị phân như trong hình 2.

Bộ lọc (filter) hay còn được gọi là “kernel” có kích thước 3×3 và giả sử có các giá trị nhị phân như hình 2. Nếu việc kết gán 0 không được thực hiện vào biên ảnh ban đầu thì kích thước ma trận ngõ ra sẽ nhỏ hơn kích thước ảnh ma trận ảnh ngõ vào. Các phần tử của ma trận ngõ ra, được gọi là các bản đồ đặc trưng (feature map), thu được từ phép tính tổng của phép nhân từ các phần tử bộ lọc và ảnh khi trượt bộ lọc hết ảnh. Các bản đồ đặc trưng được tạo ra như minh họa trong hình 2.

(a) ma trận vào (b) 3x3 kernel (b) Ngõ ra feature map Hình 2.2: Mô tả tích chập ảnh với bộ lọc. Các mạng nơ-ron tích chập điển hình có 3 lớp cơ bản. Lớp chập thực hiện phép tích chập tạo ra tập có giá trị tích cực tuyến tính trong các bản đồ đặc trưng. Các giá trị tuyến tính trong bản đồ đặc trưng được cho qua các hàm kích hoạt phi tuyến như hàm ReLU.

Lớp này còn được gọi là tầng detector. Lớp thứ 2 trong mô hình là lớp gộp được dùng để hiệu chỉnh ngõ ra. Các hàm Pooling đặt ngõ ra của lớp bản đồ đặc 10 Luan van trưng trong mối liên hệ với các ngõ ra lân cận. Các hàm Pooling thường được sử dụng trong các mạng nơ-ron tích chập là hàm Max Pooling, Average Pooling hoặc hàm Sum Pooling.

Hàm Max Pooling được sử dụng phổ biến trong các mạng nơ-ron tích chập ứng dụng trong nhận dạng, phân loại ảnh. Trong tất cả các trường hợp, Pooling tạo ra các giá trị biểu diễn cho dữ liệu tương đối bất biến đối với sự dịch chuyển của dữ liệu ngõ vào. Tính bất biến đối với sự dịch chuyển được hiểu nếu chúng ta dịch chuyển một lượng nhỏ các giá trị đầu vào, các giá trị ngõ ra của lớp Pooling hầu như có thể được giữ không đổi. Tính bất biến đối với các dịch chuyển nội bộ có thể rất hữu ích nếu chúng ta quan tâm tới việc một vài đặc điểm có mặt hơn là xác định chính xác nó ở đâu.

Ví dụ khi chúng ta xác định có sự tồn tại của khuôn mặt trong ảnh hay không, chúng ta không nhất thiết phải biết vị trí chính xác của mắt, chúng ta chỉ cần nhận biết có mắt ở vị trí bên trái và bên phải của khuôn mặt.

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

Bài viết "Hệ thống nhận dạng cử chỉ bàn tay bằng mạng nơ ron chập tại HCMUTE" trình bày một hệ thống tiên tiến sử dụng công nghệ mạng nơ ron chập để nhận diện cử chỉ bàn tay, mở ra nhiều ứng dụng tiềm năng trong lĩnh vực điều khiển thiết bị và tương tác người-máy. Hệ thống này không chỉ giúp cải thiện độ chính xác trong việc nhận diện cử chỉ mà còn mang lại trải nghiệm người dùng tốt hơn, đặc biệt trong các ứng dụng như điều khiển thiết bị thông minh.

Để tìm hiểu thêm về các ứng dụng công nghệ tương tự, bạn có thể tham khảo bài viết về điều khiển thiết bị bằng cử chỉ tay thông qua xử lý ảnh, nơi khám phá cách xử lý hình ảnh để nhận diện cử chỉ. Ngoài ra, bài viết về hệ thống nhận diện khuôn mặt và cảm xúc dùng mạng nơ ron tích chập cũng cung cấp cái nhìn sâu sắc về việc áp dụng công nghệ nơ ron trong nhận diện khuôn mặt. Cuối cùng, bạn có thể tìm hiểu thêm về ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm, một lĩnh vực liên quan đến việc sử dụng công nghệ hình ảnh để phân loại và nhận diện sản phẩm. Những bài viết này sẽ giúp bạn mở rộng kiến thức và hiểu rõ hơn về các ứng dụng của công nghệ hiện đại trong cuộc sống.