TP CHÍ KHOA HC VÀ CÔNG NGHỆ, Trường Đại hc Khoa học, ĐH Huế
Tp 23, S 1 (2023)
29
ĐIU KHIN CON TR CHUT BNG C CH BÀN TAY
DA TRÊN TRÍ TU NHÂN TO
Nguyn Đc Nht Quang1*, Phan Th Hunh Ngân1,
Phan Văn Cưng1, Trần Thị Thu Huyền2
1 Khoa Điện, Điện t và Công ngh vt liu, Trường Đại hc Khoa học, Đại hc Huế
2 Khoa Công ngh thông tin, Trường Đại hc Khoa học, Đại hc Huế
*Email: ndnquang@hueuni.edu.vn
Ngày nhn bài: 30/9/2023; ngày hoàn thành phn bin: 8/10/2023; ngày duyệt đăng: 4/12/2023
TÓM TT
Nghiên cu này trình bày v vic s dng c ch tay để điu khin con tr chut,
thay thế các phương pháp truyền thống như chuột máy tính, touchpad và màn hình
cm ng. Nhóm tác gi s dụng thư viện MediaPipe đ nhn din theo dõi c ch
tay thông qua webcam kết hp với thư viện PyAutoGUI trong Python đ điu khin
con tr chut. Ngoài ra, tr ging nói được s dụng để tương tác với chương trình
nhn din c ch thc hiện điều khin máy nh. Kết qu cho thấy đ chính xác
ca h thống đạt trên 95% trong điều kin ánh ng tt, nền đơn giản khong
cách gần, và có đ chính xác cao hơn so với các phương pháp truyền thng. Tóm li,
h thng chut o này mang li tin ích và ci thin tri nghiệm tương tác với y
tính.
T khóa: virtual mouse, hand recognition, hand detection, mediapipe.
1. M ĐẦU
Các phương pháp điều khin con tr chut hin nay bao gm chut máy tính
truyn thng, bàn di chut (touchpad) màn hình cm ng. Mỗi phương pháp này đều
nhược điểm riêng như hạn chế v không gian, độ chính xác, tính di động tương
tác không như ý muốn của người dùng. Vic s dng c ch tay để điu khin con tr
chut giúp trin khai ng dng nhanh chóng, d dàng hơn cũng khắc phục nhược
đim của các phương pháp đang được s dng hin nay.
Bên cạnh đó, ttu nhân to (Artificial Intelligence AI) th giác máy tính
(Computer Vision CV) đang phát triển mnh mẽ, đặc biệt trong lĩnh vực nhn din
khuôn mặt, đối tượng, ch viết tay và c ch tay. Công ngh này ci thiện tương tác giữa
người và máy (Human-Computer Interaction HCI), đặc biệt là điều khin chut o.
Điu khin con tr chut bng c ch bàn tay da trên trí tu nhân to
30
nhiều phương pháp nhận din c ch tay, t cm biến chuyển động đến xhình nh.
Tuy nhiên, chúng thường gp các vấn đề như tốc độ x chậm và độ chính xác thp.
MediaPipe là thư viện mã ngun m cho th giác máy tính ca Google, ch yếu v nhn
din c ch tay. Thư viện này s dng hình học sâu để theo dõi b phn tay trong
không gian 3D, đơn giản hóa vic phát trin ng dng, thut toán và mô hình.
S dng c ch tay để điu khin con tr chut mang li nhiu lợi ích như tính di
động, tiết kim thi gian, h tr người khuyết tt ci thin tri nghiệm người dùng.
Nghiên cu này s dng webcam giao din lp trình ng dng (Application
Programming Interface - API) của MediaPipe để nhn din theo dõi tay, loi b s
cn thiết phi s dng các thiết b ph tr. Để điu khin con tr chut, nhóm tác gi s
dụng thư viện PyAutoGUI trong Python. PyAutoGUI cung cấp các hàm để điu khin
chut, bàn phím và ghi li thao tác chuột cũng như bàn phím. Ngoài ra, nghiên cứu này
còn s dng tr giọng nói để tương tác với chương trình nhận din c ch thc
hiện điều khin máy tính.
2. PHƯƠNG PHÁP NGHIÊN CỨU
Quá trình hoạt động ca h thng điu khin con tr chut bng c ch bàn tay
da trên AI được chia thành ba giai đoạn, đưc th hin trong Hình 1. Giai đoạn đầu
tiên, h thng phát hin và theo dõi các điểm đặc trưng (Landmark), sau đó xác định v
trí và tọa độ ca các điểm đặc trưngtheo dõi chuyển động theo thi gian. Giai đoạn
tiếp theo, h thng nhn din, chuyn đổi các đặc điểm điểm đặc trưng thành các c ch
tay có th nhn diện được dưới dng các s nh phân. Giai đoạn cui cùng, h thng tùy
chnh và thc hin các chức năng dựa trên các c ch tay đã nhn din.
Camera
(Input) Phát hiện hand
landmarks Nhận diện c
ch Thực hiện c chc
ng của con trỏ chut
Hình 1. Sơ đ khi quá trình hoạt động ca h thng.
TP CHÍ KHOA HC VÀ CÔNG NGHỆ, Trường Đại hc Khoa học, ĐH Huế
Tp 23, S 1 (2023)
31
Bắt đầu
Hình ảnh chứa bàn tay
Phát hiện lòng bàn tay
(Palm Detector)
Phát hiện các hand
landmarks
Xác định cử chỉ tay
tương ứng
Đ
Đ
S
S
Thực hiện thaoc chuột
tương ứng dựa vào cử chỉ tay
Kết thúc
Hình 2. Quá trình nhn din và điều khin c ch tay.
Quá trình nhn diện và điều khin c ch tay (Hình 2) bao gm: thu thp d liu
v tay, phát hiện lòng bàn tay và xác định điểm đặc trưng. Da trên v trí ca các đim
đặc trưng, h thng nhn din c ch tay và thc hin các thao tác chuột tương ứng. Sau
đó, quá trình kết thúc và h thng sn sàng cho yêu cu tiếp theo.
2.1. Thư viện MediaPipe Hands
Thư viện MediaPipe Hands cung cp theo dõi bàn tay thi gian thc ch vi mt
webcam thông thường. Quy trình này s dng học máy để suy lun 21 điểm đặc trưng
3D t mt hình nh duy nht. Quy trình bao gồm hai bước chính: hình phát hin
lòng bàn tay hình điểm đặc trưng tay kh năng theo dõi nhiều bàn tay cùng
lúc [1].
2.1.1. Mô hình phát hin bàn tay
Phát hin bàn tay nhim v phc tạp, đặc bit khi xem xét nhiu kích c tay
kh năng che khuất. hình phát hiện lòng bàn tay ước tính hp gii hn xung
quanh các đối tượng cứng như lòng bàn tay nắm. Quy trình này áp dụng tính năng
Điu khin con tr chut bng c ch bàn tay da trên trí tu nhân to
32
hóa gii mã gim mt mát tập trung đ ci thin nhn biết bi cnh quang cnh
ln. Module nhn diện đối tượng ly mẫu đặc trưng cho mi hp s dng b phân
loi chất lượng cao. Có nhiu thut toán nhn diện đối tượng như Faster RCNN, SSD và
YOLO, mi thut toán đánh đổi gia tốc đ và độ chính xác tùy theo yêu cu [2].
2.1.2. B phát hin chp mt ln
Quy trình cho b phát hin chp mt ln (Single Shot Detector SSD) bao gm
to ra các thông tin bản (Ground Truth GT) các hp gii hạn xung quanh đối
ng trong hình nh. Hình ảnh được chia thành các bản đồ đặc trưng với các kích thước
khác nhau. Các hp mặc định (default boxes) được đánh giá tại mi ô vuông trên bn
đồ đặc trưng. Các hp mặc định cha thông tin v v trí (center_x, center_y, width,
height) độ tin cy cho tng loại đối tượng. Mc tiêu d đoán các gtrị thay đổi
hình dạng (shape offsets) và đ tin cy cho mi hp mặc định, sao cho chúng khp vi
các hp GT trong quá trình hun luyn.
Các hp khp vi hp mặc định được xem tích cc (positive), còn li tiêu
cc (negative). Mô hình SSD tính mt mát da trên tng có trng s gia mt mát v v
trí (localization loss Smooth L1) và mt mát v độ tin cy (ví d: softmax). Hình 3 minh
ha d v quá trình này trên mt hình nh vi mèo chó, s dng các bản đồ đặc
trưng kích thước 8x8 và 4x4, cùng vi các hp mc định và hp thc tế. Trong đó, loc là
v trí ca hp gii hạn, conf là độ tin cy ca tt c các loại đối tượng.
(a) Hình ảnh với các hộp GT
(b) Bản đồ đặc trưng 8x8
(c) Bản đồ đặc trưng 4x4
Hình 3. Single Shot Detector framework [2].
2.1.2.1. Mng kim t tháp đặc trưng
Mng kim t tháp đặc trưng (Feature Pyramid Network FPN) được s dng
như một "c" (neck) ni vào "xương sống" (backbone) của SSD để tính toán biu diễn đa
đặc trưng của hình nh. Cu trúc kim t tháp đặc trưng xây dựng trên sở kim t tháp
hình nh không gian t l, giúp bắt kích thước đa dạng của các đối tượng. So vi
các kiến trúc khác, FPN kết hợp các đặc trưng từ độ phân gii cao nhất đến thp nht,
làm cho nó chính xác hơn và có nhiều thông tin hơn.
TP CHÍ KHOA HC VÀ CÔNG NGHỆ, Trường Đại hc Khoa học, ĐH Huế
Tp 23, S 1 (2023)
33
(a) Featurized image pyramid
(b) Single feature map
(c) Pyramidal feature hierarchy
(d) Feature Pyramid Network
Hình 4. Feature Pyramid Network (FPN) [3].
2.1.2.2. Gim thiu mất tiêu điểm
Hàm mt mát Focal (Focal Loss) gii quyết vấn đề khi hình phát hiện đối
ng b mt cân bng gia vic nhìn nhn nhng vt th chính (foreground) nn.
Vi cross-entropy loss, ngay c các vt th d nhìn nhận cũng gây mất mát lớn hơn mức
d kiến. Và khi tng các mt mát nh này trên mt s ng ln các vt th d, thì tng
mt mát này có th áp đo lên các vt th khó hơn. Cross-entropy loss b chi phi bi s
mt cân bng ln v lp khi gặp các mô hình đối tượng dày đặc. Phn ln mt mát to
nên t các vt th d nhn diện, làm áp đảo lên độ dc. "Balanced cross-entropy" gii
quyết vấn đề mt cân bng lp bng cách s dng h s trng s alpha. Tuy nhiên, nó
không phân bit gia các vt th d và khó.
𝐶𝐸(𝑝𝑡)= −𝛼 log(𝑝𝑡)
(1)
Mất tiêu điểm (Focal Loss) thay đổi hình dng ca hàm mất mát để gim trng
s ca các ví d d dàng và tp trung vào vic hun luyn các ví d âm khó khăn. Công
thc cho Focal Loss (𝐹𝐿) được cho trong (2), trong đó 𝑦 là tham s làm mn [4].
𝐹𝐿(𝑝𝑡)= (1 𝑝𝑡)𝑦log(𝑝𝑡)
(2)
Công thc (2) gii quyết vấn đề mt cân bng gia các mt tích cc tiêu cc
trong mt mát entropy chéo. Các d d xác sut cao (𝑝𝑡tiến gn đến 1) được
gim trng s để không ảnh hưng quá mạnh đến mt mát. Tham s tập trung y được
s dụng để điu chỉnh mượt mà tốc độ gim trng s đối vi các d d. Trong thc
tế, biến th alpha công thc (3) ca Focal Loss được ưa chuộng để đạt độ chính xác tt
hơn.
𝐹𝐿(𝑝𝑡)= −𝛼(1 𝑝𝑡)𝑦log(𝑝𝑡)
(3)