Bối cảnh và vấn đề nghiên cứu

Vào khoảng năm 2021, sự bùng phát của đại dịch COVID-19 tại Việt Nam và trên thế giới đã dẫn đến việc hạn chế các hoạt động thể chất ngoài trời, tụ tập đông người và đóng cửa các phòng tập dịch vụ. Bối cảnh này thúc đẩy sự chuyển dịch mạnh mẽ sang hình thức rèn luyện thể dục tại nhà. Trong số các bộ môn rèn luyện thể chất và tinh thần, yoga được nhiều người lựa chọn nhờ khả năng cải thiện sự tập trung, giảm căng thẳng và hỗ trợ điều trị các vấn đề về tim mạch, hô hấp và cơ xương khớp. Tuy nhiên, người mới bắt đầu luyện tập yoga tại nhà thường gặp khó khăn trong việc tự căn chỉnh tư thế do thiếu sự quan sát và hướng dẫn trực tiếp từ huấn luyện viên chuyên nghiệp, từ đó làm gia tăng nguy cơ chấn thương cơ xương. Mặc dù các kỹ thuật thị giác máy tính và học máy (Machine Learning) đã đạt nhiều bước tiến trong nhận diện chuyển động người, việc định vị và phân loại các tư thế yoga phức tạp trong môi trường thực tế vẫn gặp thách thức lớn do biến đổi về góc nhìn, điều kiện ánh sáng và phông nền.

Đề tài đặt ra các mục tiêu và nhiệm vụ nghiên cứu cụ thể:

  1. Triển khai mô hình học máy kết hợp kỹ thuật ước tính tư thế (Human Pose Estimation) để định vị và nhận diện các tư thế bài tập thể dục, trọng tâm là bộ môn yoga.
  2. Thiết lập quy trình trích xuất các điểm mốc (landmarks) khớp xương cơ thể từ luồng video thu nhận qua camera máy tính theo thời gian thực; từ đó tính toán góc giữa các khớp xương, phân tích biên độ và đối chiếu với tiêu chuẩn động tác để đưa ra phản hồi trực quan cho người tập.
  3. Xây dựng và đánh giá bài tập tích hợp gồm 5 tư thế yoga cơ bản, yêu cầu người tập thực hiện theo trình tự và duy trì tư thế chuẩn xác trong một khoảng thời gian quy định trước khi chuyển sang động tác tiếp theo.

Đối tượng nghiên cứu của đồ án là chuyển động và tư thế cơ thể người trong 5 tư thế yoga tiêu biểu:

  • Virabhadrasana II (Tư thế Chiến binh II - Warrior II Pose)
  • Adho Mukha Svanasana (Tư thế Chó úp mặt - Downward Dog Pose)
  • Utkata Konasana (Tư thế Nữ thần - Goddess Pose)
  • Kumbhakasana (Tư thế Tấm ván - Plank Pose)
  • Vrksasana (Tư thế Cái cây - Tree Pose)

Phạm vi nghiên cứu được giới hạn chặt chẽ:

  • Phạm vi không gian và môi trường: Hệ thống được thử nghiệm trong không gian kín với điều kiện ánh sáng ổn định và phông nền đơn giản; người dùng đứng cách camera máy tính từ 2 m đến 3 m; hệ thống không xử lý các trường hợp môi trường thiếu sáng trầm trọng, phông nền phức tạp hoặc khung hình có nhiều người cùng xuất hiện.
  • Phạm vi thiết bị và dữ liệu: Hình ảnh và video được thu nhận trực tiếp từ camera tích hợp của máy tính xách tay (laptop), không sử dụng các cảm biến chuyển động chuyên dụng hay thiết bị đeo ngoại vi.
  • Phạm vi triển khai: Mô hình được huấn luyện và chạy thử nghiệm trên máy tính cá nhân, hiển thị kết quả phân loại và phản hồi hiệu chỉnh góc độ thông qua giao diện dòng lệnh (console) của phần mềm Visual Studio Code.

Cơ sở lý thuyết và phương pháp

Khung lý thuyết của đề tài tập trung vào bài toán học máy có giám sát (Supervised Learning) phục vụ mục đích phân loại tư thế cơ thể (Classification). Để chuyển đổi dữ liệu hình ảnh thô thành thông tin cấu trúc, đồ án sử dụng mô hình ước tính tư thế BlazePose do Google AI Research phát triển, tích hợp trong thư viện mã nguồn mở MediaPipe. Kiến trúc BlazePose bao gồm hai thành phần:

  • Pose Detector: Bộ phát hiện tư thế gọn nhẹ (lightweight detector) có nhiệm vụ định vị vùng chứa đối tượng (Region of Interest - ROI) trên từng khung hình bằng cách nhận diện khuôn mặt kết hợp với điểm giữa hông, tính toán kích thước vòng tròn bao quanh cơ thể và góc nghiêng giữa đường nối hông-vai so với phương thẳng đứng.
  • Pose Tracker: Mạng theo dõi tư thế gồm hai phần chính: Keypoints Detection (sử dụng bản đồ nhiệt Heat maps kết hợp bản đồ lệch Offset maps) và Keypoints Regression để dự đoán và trích xuất tọa độ không gian của 33 điểm mốc (landmarks) trên cơ thể người với các giá trị tọa độ x (chiều rộng), y (chiều cao) và z (độ sâu tương đối so với điểm mốc ở hông).

Để phân loại tư thế dựa trên các đặc trưng trích xuất, nghiên cứu khảo sát 5 thuật toán học máy có giám sát:

  • Hồi quy Logistic (Logistic Regression - LR): Mô hình phân loại tuyến tính sử dụng hàm Sigmoid để ước lượng xác suất thuộc về các lớp nhãn.
  • Bộ phân loại Ridge (Ridge Classifier - RC): Thuật toán biến thể từ hồi quy tuyến tính có bổ sung kỹ thuật điều chuẩn L2 (L2 Regularization) vào hàm mất mát nhằm giảm thiểu nguy cơ quá khớp (overfitting) và xử lý hiện tượng đa cộng tuyến.
  • Support Vector Machine (SVM): Thuật toán tìm kiếm siêu phẳng (hyperplane) tối ưu trong không gian đặc trưng nhằm cực đại hóa khoảng cách (margin) giữa các vector hỗ trợ (support vectors) của các lớp dữ liệu khác nhau, sử dụng hàm nhân tuyến tính (Linear Kernel).
  • Bộ phân loại Random Forest (RF): Phương pháp học kết hợp (Ensemble Learning) dựa trên kỹ thuật đóng bao (Bagging), xây dựng nhiều cây quyết định độc lập từ các tập con dữ liệu ngẫu nhiên và bỏ phiếu theo đa số để đưa ra dự đoán.
  • Bộ phân loại Gradient Boosting: Phương pháp học kết hợp dựa trên kỹ thuật tăng cường (Boosting), xây dựng tuần tự các mô hình dự đoán yếu (weak learners) nhằm tối ưu hóa hàm mất mát và sửa lỗi từ các mô hình phía trước.

Về mặt toán học hình học, việc đánh giá độ chuẩn xác của tư thế dựa trên phép tính góc giữa hai vector trong không gian khớp xương. Thay vì sử dụng công thức cosin truyền thống $\cos(\alpha) = \frac{\vec{A} \cdot \vec{B}}{|\vec{A}||\vec{B}|}$ (bị giới hạn trong khoảng góc dưới 180°), nhóm tác giả áp dụng hàm atan2(y, x) để xác định góc giữa các đoạn cơ thể. Hàm atan2 trả về giá trị góc trong khoảng từ $-\pi$ đến $\pi$ radian (cho phép đo góc toàn phần lên đến 360°), đồng thời triệt tiêu lỗi toán học khi chia cho 0 vốn thường xảy ra với hàm tiếp tuyến tan(α).

Phương pháp nghiên cứu thực tế bao gồm:

  • Phương pháp thu thập tài liệu: Khảo sát các tài liệu khoa học về xử lý ảnh, thị giác máy tính, ước tính tư thế và tài liệu kỹ thuật của MediaPipe, OpenCV, Scikit-learn.
  • Phương pháp thực nghiệm: Thiết lập hệ thống thu nhận hình ảnh thời gian thực, lập trình trích xuất 33 điểm mốc cơ thể bằng BlazePose, tính toán các góc khớp trọng yếu, lưu trữ dữ liệu đặc trưng vào tệp CSV và tiến hành huấn luyện thực nghiệm 5 thuật toán học máy.
  • Phương pháp phân tích và đánh giá: So sánh độ chính xác dự đoán của từng thuật toán trên tập dữ liệu kiểm tra; đo lường tốc độ xử lý khung hình (FPS) và độ trễ phản hồi khi người dùng vận động trước camera.

Nguồn dữ liệu của nghiên cứu hoàn toàn do nhóm tác giả tự thu thập và gán nhãn thực nghiệm từ các đối tượng tập luyện trước webcam máy tính xách tay trong điều kiện phòng thực nghiệm tiêu chuẩn.

Thiết kế và triển khai hệ thống

Hệ thống được thiết kế dưới dạng ứng dụng phần mềm xử lý thị giác máy tính chạy cục bộ trên máy tính cá nhân. Cấu trúc tổng thể của hệ thống bao gồm 4 khối chức năng:

Khối chức năng Vai trò và nhiệm vụ kỹ thuật
Khối tiếp nhận hình ảnh Thu nhận dữ liệu luồng video từ webcam laptop sử dụng thư viện OpenCV (cv2.VideoCapture(0)), giải mã từng khung hình (frame) và chuyển tiếp đến khối nhận diện.
Khối nhận diện Tiền xử lý hình ảnh (chuyển đổi không gian màu, áp dụng bộ lọc), tích hợp mô hình MediaPipe BlazePose để phát hiện cơ thể người và trích xuất tọa độ 33 điểm mốc (landmarks) khung xương.
Khối xử lý Tính toán góc giữa các đoạn chi bằng hàm atan2, so sánh độ lệch với góc chuẩn của 5 tư thế yoga; nạp tọa độ đặc trưng vào mô hình học máy (SVM) để phân loại tư thế.
Khối tương tác Hiển thị thông báo nhận diện, xuất thông số biên độ các khớp xương và hướng dẫn điều chỉnh sai số ra màn hình console Visual Studio Code; đếm thời gian giữ đúng tư thế.

Trong thiết kế khối nhận diện, đồ án đã tiến hành phân tích và so sánh đối chuẩn giữa hai mô hình trích xuất khung xương phổ biến là OpenPose và BlazePose trước khi đưa ra quyết định lựa chọn:

Tiêu chí so sánh Mô hình OpenPose Mô hình BlazePose (Lựa chọn của đồ án)
Độ phân giải đầu vào Xử lý tốt ở độ phân giải cao (từ 368×368 pixel trở lên). Tối ưu hóa ở độ phân giải thấp nhưng vẫn duy trì độ chính xác cao.
Tốc độ xử lý (FPS) 5 - 10 FPS trên GPU phổ thông; 15 - 20 FPS trên GPU mạnh. Đạt tốc độ thời gian thực (xấp xỉ 30 FPS) trên phần cứng thông dụng.
Yêu cầu phần cứng Đòi hỏi GPU rời chuyên dụng hiệu năng cao; tốn tài nguyên. Thiết kế gọn nhẹ (lightweight), tối ưu tốt cho CPU và GPU tích hợp.
Phạm vi phù hợp Nghiên cứu phòng thí nghiệm, máy trạm xử lý video tĩnh. Ứng dụng tương tác thời gian thực trên thiết bị di động và laptop.

Các yêu cầu và thông số kỹ thuật vận hành của hệ thống được xác lập cụ thể:

  • Khoảng cách vận hành: Người tập duy trì khoảng cách từ 2 m đến 3 m tính từ camera laptop để đảm bảo toàn bộ cơ thể nằm trong vùng phát hiện ROI.
  • Ngưỡng xác nhận tư thế đúng: Đạt độ chính xác tối thiểu 75% trên tổng số 12 điểm khớp xương trọng yếu của động tác yoga.
  • Dung sai khớp xương: Sai số vị trí cho phép của mỗi khớp xương trong không gian nằm trong biên độ $\pm 2\text{ cm}$.
  • Thời gian đáp ứng: Thời gian phản hồi phân tích và đưa ra hướng dẫn dưới 1 giây.
  • Tốc độ khung hình: Duy trì ổn định từ 12 FPS đến 22 FPS tùy thuộc vào cấu hình phần cứng của máy tính chạy ứng dụng.

Công nghệ và thư viện phần mềm sử dụng bao gồm: ngôn ngữ lập trình Python, thư viện OpenCV (thu nhận và xử lý ảnh cơ bản), MediaPipe (trích xuất BlazePose landmarks), Scikit-learn (xây dựng và tối ưu mô hình học máy), NumPy (xử lý mảng ma trận tọa độ), Pandas (thao tác và cấu trúc hóa bảng dữ liệu), Pickle (serialize và lưu trữ mô hình đã huấn luyện), OS và định dạng tệp CSV.

Nội dung chính theo từng chương

Chương 1: TỔNG QUAN

Chương 1 giới thiệu tổng quan về xu hướng ứng dụng thị giác máy tính và trí tuệ nhân tạo trong nhận diện hoạt động con người, tương tác người - máy, y tế và thể thao (nhắc đến công nghệ video 3D tiềm năng thay thế VAR trong bóng đá). Chương này phân tích bối cảnh đại dịch COVID-19 dẫn đến nhu cầu tập luyện yoga tại nhà, chỉ ra rủi ro chấn thương khi thiếu người hướng dẫn. Tác giả xác định lý do chọn đề tài, mục tiêu triển khai mô hình máy học nhận diện 5 tư thế yoga (Warrior II, Downward Dog, Goddess, Plank, Tree), vạch rõ các giới hạn về điều kiện môi trường, nguồn dữ liệu từ camera laptop, phương pháp nghiên cứu và bố cục 5 chương của báo cáo khóa luận.

Chương 2: CƠ SỞ LÝ THUYẾT

Chương 2 trình bày chi tiết nền tảng lý thuyết của các công nghệ cốt lõi. Mở đầu là định nghĩa về nguồn gốc triết học và lợi ích thể chất, tinh thần của bộ môn yoga. Tác giả phân tích các khái niệm máy học có giám sát, bài toán phân loại và hiện tượng overfitting/underfitting. Tiếp theo, chương đi sâu vào thư viện MediaPipe và cấu trúc mô hình BlazePose, giải thích nguyên lý hoạt động của Pose Detector (dựa trên khuôn mặt, điểm giữa hông và góc nghiêng ROI) cùng Pose Tracker (bản đồ nhiệt, bản đồ lệch và phép hồi quy 33 landmarks). Chương này phân tích chi tiết cơ chế hoạt động, ưu - nhược điểm của 5 thuật toán học máy: Logistic Regression, Ridge Classifier, Support Vector Machine, Random Forest và Gradient Boosting; làm rõ sự khác biệt giữa kỹ thuật Bagging và Boosting.

Đặc biệt, bảng số liệu thực nghiệm so sánh độ chính xác của 5 thuật toán (Bảng 2.2) được công bố trong chương này. Cuối chương giới thiệu chức năng của các thư viện mở rộng (OpenCV, CSV, OS, NumPy, Pickle, Pandas, Scikit-learn) và thiết lập cơ sở toán học tính góc khớp xương bằng hàm atan2.

Chương 3: THIẾT KẾ HỆ THỐNG

Chương 3 trình bày các yêu cầu chức năng kỹ thuật và thông số vận hành của hệ thống (khoảng cách 2-3 m, độ chính xác khớp $\ge 75%$, thời gian đáp ứng $< 1\text{ s}$, tốc độ 12-22 FPS, sai số $\pm 2\text{ cm}$). Tác giả công bố sơ đồ khối hệ thống gồm 4 thành phần: Khối tiếp nhận hình ảnh, Khối nhận diện, Khối xử lý và Khối tương tác. Nội dung chương phân tích chi tiết quy trình tiếp nhận hình ảnh từ webcam laptop thông qua OpenCV (cv2.VideoCapture(0)), quy trình tiền xử lý và trích xuất khung xương của khối nhận diện.

Chương 3 dành một phần lớn dung lượng để lập bảng so sánh đối chuẩn giữa OpenPose và BlazePose về độ phân giải, tốc độ FPS và tài nguyên phần cứng, từ đó luận giải tính tối ưu của việc chọn BlazePose cho bài toán thời gian thực trên laptop. Các bảng góc trọng điểm của bài tập yoga cũng được thiết lập để làm căn cứ chấm điểm tư thế.

Chương 4: THỰC NGHIỆM VÀ KẾT QUẢ

Chương 4 mô tả cấu hình hệ thống phần cứng, quy trình thu thập dữ liệu tọa độ khớp xương từ camera laptop và quy trình thực nghiệm mô hình học máy. Các bước thực nghiệm gồm: xây dựng mô hình, chạy thử nghiệm trên các đối tượng tập luyện khác nhau, đánh giá và hiệu chỉnh các siêu tham số. Tác giả trình bày kết quả thực nghiệm chi tiết khi người dùng thực hiện từng tư thế trong bài tập: Warrior II, Downward Dog, Goddess, Plank và Tree Pose. Chương này đưa ra các phân tích định lượng về khả năng phát hiện khung xương, độ chính xác phân loại động tác, tính ổn định của góc đo và đánh giá mức độ đáp ứng thời gian thực của hệ thống trong môi trường phòng tập chuẩn.

Chương 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Chương 5 tổng kết lại toàn bộ quá trình nghiên cứu, thiết kế và triển khai thực nghiệm đồ án. Nhóm tác giả khẳng định hệ thống đã hoàn thành mục tiêu xây dựng một công cụ hỗ trợ nhận diện và phản hồi 5 tư thế yoga cơ bản bằng học máy với chi phí phần cứng thấp. Trên cơ sở những hạn chế còn tồn tại về môi trường và dữ liệu, chương này đề xuất các định hướng phát triển cụ thể nhằm nâng cấp hệ thống trong tương lai.

Kết quả và đóng góp

Nghiên cứu đã tiến hành huấn luyện và đo lường độ chính xác phân loại của 5 thuật toán học máy trên tập dữ liệu đặc trưng góc và tọa độ mốc cơ thể thu thập được. Kết quả thực nghiệm được tổng hợp trong bảng số liệu sau:

Thuật toán học máy Độ chính xác đạt được
Gradient Boosting Classifier 99%
Support Vector Machine (SVM) 98%
Random Forest Classifier 98%
Logistic Regression 81%
Ridge Classifier 73%

Dựa trên kết quả đo đạc, mặc dù Gradient Boosting Classifier đạt độ chính xác cao nhất (99%), nhóm tác giả đã quyết định lựa chọn thuật toán Support Vector Machine (SVM) với độ chính xác 98% để tích hợp vào hệ thống thực tế. Quyết định này nhằm ngăn ngừa nguy cơ quá khớp (overfitting) thường gặp của các mô hình boosting khi làm việc với các tập dữ liệu có độ lệch nhỏ, đồng thời đảm bảo tốc độ suy luận nhanh và tính tổng quát hóa ổn định hơn khi phân loại dữ liệu cử động mới.

Về mặt vận hành hệ thống:

  • Hệ thống đã tích hợp thành công mô hình BlazePose với bộ phân loại SVM, nhận diện chính xác 5 tư thế yoga: Chiến binh II, Chó úp mặt, Nữ thần, Tấm ván và Cái cây.
  • Đảm bảo các chỉ số kỹ thuật đề ra: thời gian xử lý phản hồi dưới 1 giây, tốc độ khung hình dao động ổn định trong khoảng từ 12 FPS đến 22 FPS trên camera laptop thông thường, sai số góc định vị khớp xương nằm trong phạm vi $\pm 2\text{ cm}$.
  • Thiết lập cơ chế kiểm tra điều kiện hoàn thành bài tập: hệ thống ghi nhận một tư thế là chính xác khi có ít nhất 75% trong số 12 điểm khớp xương trọng yếu đạt góc chuẩn, đồng thời giám sát thời gian giữ nguyên tư thế đúng của người tập trước khi phát lệnh chuyển động tác.

Về mặt đóng góp:

  • Đồ án đã tự xây dựng một quy trình hoàn chỉnh từ thu nhận video, trích xuất 33 điểm mốc cơ thể theo thời gian thực đến phân tích góc độ bằng hàm atan2 và phân loại tư thế bằng mô hình học máy.
  • Chứng minh tính khả thi của việc triển khai giải pháp thị giác máy tính giám sát thể dục tại nhà trên các thiết bị máy tính cá nhân phổ thông, không phụ thuộc vào hệ thống cảm biến phức tạp hay GPU rời đắt tiền.

Hạn chế và hướng nghiên cứu tiếp

Các hạn chế được văn bản đồ án chỉ ra:

  • Số lượng tư thế yoga còn hạn chế: Hệ thống mới chỉ nghiên cứu và thử nghiệm trên 5 tư thế cơ bản (Warrior II, Downward Dog, Goddess, Plank, Tree), chưa bao quát được sự đa dạng của các bài tập yoga hoàn chỉnh.
  • Độ phụ thuộc môi trường: Hệ thống chỉ hoạt động chính xác trong điều kiện ánh sáng ổn định, phông nền đơn giản và không có sự xuất hiện của đối tượng thứ hai trong khung hình; độ chính xác trích xuất khớp xương bị suy giảm rõ rệt trong môi trường thiếu sáng hoặc phông nền có nhiều chi tiết gây nhiễu.
  • Nguồn thu nhận dữ liệu: Chỉ sử dụng dữ liệu hình ảnh 2D từ webcam máy tính xách tay ở khoảng cách cố định (2 m - 3 m), chưa khai thác dữ liệu từ các góc nhìn khác nhau hay cảm biến chuyên dụng.
  • Giao diện tương tác: Phản hồi kết quả và thông số góc lệch của khớp xương mới được hiển thị qua cửa sổ dòng lệnh (console) của phần mềm Visual Studio Code, chưa có giao diện đồ họa người dùng (GUI) trực quan.

Hướng phát triển tiếp theo của đề tài:

  • Mở rộng tập dữ liệu huấn luyện, bổ sung thêm nhiều tư thế yoga có độ phức tạp cao và các dạng bài tập thể chất khác.
  • Cải thiện thuật toán xử lý ảnh để nâng cao khả năng thích ứng của hệ thống trong điều kiện ánh sáng yếu, phông nền phức tạp và góc quay camera thay đổi.
  • Thiết kế giao diện đồ họa thân thiện cho người dùng, tiến tới đóng gói thành ứng dụng độc lập trên máy tính hoặc phát triển ứng dụng di động có khả năng tích hợp linh hoạt với các thiết bị thông minh.

Giá trị tham khảo

Đồ án là tài liệu tham khảo hữu ích cho sinh viên, học viên chuyên ngành Công nghệ Kỹ thuật Máy tính, Công nghệ Thông tin, Kỹ thuật Phần mềm và Trí tuệ Nhân tạo đang nghiên cứu về thị giác máy tính ứng dụng và bài toán ước tính tư thế người (Human Pose Estimation).

Các nội dung có giá trị tham khảo chuyên môn cao bao gồm:

  • Phương pháp luận so sánh kỹ thuật giữa OpenPose và MediaPipe BlazePose trên các tiêu chí độ phân giải, tài nguyên phần cứng và tốc độ xử lý thời gian thực.
  • Kỹ thuật tính toán góc chi thể người bằng hàm atan2 trong không gian 2D/3D nhằm khắc phục triệt để các hạn chế của công thức tích vô hướng cosin.
  • Tập số liệu đối chuẩn thực nghiệm giữa 5 thuật toán học máy phân loại phổ biến (LR, RC, SVM, RF, Gradient Boosting) và lập luận kỹ thuật trong việc chọn SVM (98%) thay vì Gradient Boosting (99%) để cân bằng giữa độ chính xác và kiểm soát hiện tượng quá khớp.

Câu hỏi thường gặp

1. Vì sao nhóm tác giả không chọn thuật toán Gradient Boosting dù thuật toán này đạt độ chính xác thực nghiệm cao nhất (99%)?
Trong bảng so sánh thực nghiệm (Bảng 2.2), Gradient Boosting đạt 99% độ chính xác, trong khi SVM đạt 98%. Tuy nhiên, nhóm tác giả quyết định chọn SVM nhằm phòng ngừa hiện tượng quá khớp (overfitting) vốn rất dễ xảy ra với các thuật toán boosting khi cấu hình tham số không tối ưu hoặc khi gặp dữ liệu mới có độ nhiễu. Ngoài ra, SVM cho khả năng tổng quát hóa tốt hơn và yêu cầu tài nguyên suy luận ổn định hơn trong môi trường thời gian thực.

2. Tiêu chuẩn kỹ thuật nào được hệ thống sử dụng để xác nhận một tư thế yoga là đúng?
Để được hệ thống xác nhận là tư thế đúng, người tập phải đạt độ chính xác góc độ ở ít nhất 75% trên tổng số 12 điểm khớp xương trọng yếu của động tác đó. Đồng thời, sai số vị trí cho phép tại mỗi khớp xương phải nằm trong khoảng $\pm 2\text{ cm}$, và người dùng phải duy trì tư thế đạt chuẩn này trong một khoảng thời gian nhất định trước khi chuyển sang tư thế tiếp theo.

3. Tại sao BlazePose được lựa chọn để trích xuất khung xương thay vì OpenPose?
Mặc dù OpenPose hỗ trợ xử lý độ phân giải cao, mô hình này đòi hỏi cấu hình GPU rời mạnh mẽ và tốc độ xử lý trên GPU phổ thông chỉ đạt từ 5 đến 10 FPS. Ngược lại, BlazePose là mô hình gọn nhẹ, được tối ưu hóa đặc thù cho các thiết bị di động và máy tính cá nhân sử dụng CPU/GPU tích hợp, có khả năng xử lý khung hình thời gian thực ổn định ở tốc độ khoảng 30 FPS mà vẫn đảm bảo độ chính xác định vị 33 điểm mốc khớp xương.

4. Vì sao công thức hàm atan2 được ưu tiên sử dụng để tính góc khớp xương thay cho công thức cosin truyền thống?
Công thức tính góc thông qua cosin $\cos(\alpha)$ chỉ xác định được các góc nhỏ hơn 180°. Trong khi đó, việc theo dõi biên độ cử động cơ thể đòi hỏi dải đo góc mở rộng lên đến 360°. Sử dụng hàm tiếp tuyến thông thường $\tan(\alpha)$ dễ dẫn đến lỗi chia cho 0 khi giá trị mẫu số bằng 0. Hàm atan2(y, x) giải quyết triệt để vấn đề này bằng cách tính toán góc theo tọa độ hai chiều, tránh lỗi chia cho 0 và trả về giá trị góc chính xác trong khoảng từ $-\pi$ đến $\pi$ radian.

5. Kết quả nhận diện và hướng dẫn điều chỉnh tư thế được hiển thị đến người dùng qua giao diện nào?
Hệ thống hiện được triển khai trên máy tính xách tay và hiển thị toàn bộ thông tin nhận diện, phản hồi độ chính xác của các khớp xương cũng như thông báo điều chỉnh tư thế trực tiếp qua cửa sổ dòng lệnh (console) của phần mềm Visual Studio Code (VSCode).

Kết luận

Khóa luận tốt nghiệp của sinh viên Lâm Tấn Phát và Nguyễn Trần Thành Trung tại Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh đã thiết kế và triển khai thành công hệ thống định vị và nhận diện 5 tư thế yoga cơ bản bằng học máy và thị giác máy tính. Thông qua việc kết hợp mô hình trích xuất 33 điểm mốc BlazePose với thuật toán phân loại Support Vector Machine, hệ thống đạt độ chính xác thực nghiệm 98%, đảm bảo thời gian phản hồi dưới 1 giây và tốc độ hiển thị từ 12 FPS đến 22 FPS trên camera laptop thông thường. Mặc dù vẫn còn giới hạn về số lượng tư thế và giao diện tương tác còn phụ thuộc vào console của Visual Studio Code, nghiên cứu đã chứng minh tính khả thi cao của giải pháp giám sát thể dục tại nhà với chi phí phần cứng tối thiểu, mở ra tiềm năng ứng dụng thiết thực trong lĩnh vực chăm sóc sức khỏe cá nhân.