Chương 1. TỔNG QUAN: Chương này giới thiệu tổng quan về đề tài, nhấn mạnh mục tiêu và giới hạn của nghiên cứu, đồng thời trình bày phương pháp nghiên cứu và xác định đối tượng cũng như phạm vi nghiên cứu. CƠ SỞ LÝ THUYẾT: Giới thiệu về tình hình nghiên cứu trong lĩnh vực, tập trung vào các hướng nghiên cứu và nội dung lý thuyết đang được áp dụng và phát triển. THIẾT KẾ HỆ THỐNG: Sơ đồ khối toàn hệ thống, các khối của hệ thống, thiết kế từng khối và các thiết bị được sử dụng trong các khối.
KẾT QUẢ: Trình bày kết quả cụ thể được thu thập từ quá trình triển khai và thử nghiệm của mô hình hệ thống. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN: Tổng kết các kết quả quan trọng, phân tích điểm yếu và điểm mạnh của mô hình, đồng thời đề xuất các hướng phát triển tiếp theo cho đề tài nghiên cứu.1 Giới thiệu về MediaPipe Mediapipe là một bộ công cụ machine learning mã nguồn mở được nghiên cứu bởi Google Research. Thiết kế dựa trên kiến trúc pipeline, cho phép người dùng kết hợp nhiều phần xử lý về học máy (ML) và thị giác máy tính với nhau để đưa ra một hệ thống đầy đủ tính năng [7]. Kiến trúc pipeline của Mediapipe gồm các thành phần xử lý tích hợp như giải mã video, phát hiện và theo dõi đối tượng, phát hiện và phân loại hành động, cùng với đó là phân tích cử chỉ, xử lý hình ảnh,.
Giải mã video là bước khởi đầu quan trọng, cho phép hệ thống nhận đầu vào và xử lý dữ liệu video từ nhiều nguồn khác nhau. Tiếp theo, khả năng theo dõi và phát hiện đối tượng của Mediapipe giúp nhận diện và bám sát vào đối tượng trong từng khung hình theo thời gian thực, bổ sung thêm các thông tin cần thiết cho tác vụ tiếp theo. Một tính năng nổi bật khác là phát hiện và phân loại hành động, cho phép hệ thống hiểu và phân loại một loạt hành động khác nhau của đối tượng, từ các chuyển động đơn giản đến các hành động phức tạp. Công nghệ phân tích cử chỉ của Mediapipe cho phép nhận diện và hiểu các cử chỉ tay và cơ thể, mở ra nhiều ứng dụng cho những lĩnh vực như giao diện người-máy (HMI), thực tế ảo tăng cường (AR), và các hệ thống điều khiển không chạm.
Các thành phần trên được thiết kế đảm bảo có thể hoạt động đa nền tảng, bao gồm cả máy tính để bàn và thiết bị di động [7]. Pipeline trong mô hình ML là một chuỗi các hoạt động huấn luyện mô hình và xử lý dữ liệu. Thông thường, pipeline bao gồm các bước như tiền xử lý dữ liệu (preprocessing), phân chia dữ liệu thành tập kiểm tra và tập tập huấn luyện (test split/train), trích xuất đặc trưng (feature extraction) và huấn luyện mô hình (model training). Pipeline giúp tự động hóa các bước tiền xử lý và huấn luyện mô hình, làm giảm công sức và thời lượng trong quá trình xây dựng, đánh giá mô hình ML.
Ngoài ra, Pipeline cũng cho phép bộ phận khai phá dữ liệu (Data Mining) nâng cao hiệu suất và hiệu quả hơn [8]. Sử dụng pipeline không chỉ giúp tổ chức quy trình làm việc một cách rõ ràng, mà còn tạo ra sự tự động hóa và có thể tái sử dụng 8 trong giai đoạn tạo ra mô hình ML. Cho phép các nhà nghiên cứu và nhà phát triển tập trung cho quá trình nâng cao chất lượng và hiệu suất của mô hình, thay vì bị mắc kẹt trong các bước tiền xử lý và huấn luyện mô hình cơ bản. Tóm lại, pipeline trong ML là một công cụ thiết yếu giúp tự động hóa quy trình và tổ chức huấn luyện, xử lý dữ liệu cho mô hình.
Nó giúp rút ngắn thời gian và công sức chủ yếu để xây dựng và nhận xét các mô hình ML, đồng thời hiệu quả và tăng tốc độ cho quá trình khai phá dữ liệu.1 Các thành phần trong Machine Learning pipeline Thông tin về cơ chế hoạt động của khối training và khối serving: Khối training: - Để huấn luyện mô hình, cần thực hiện bước kiểm định (Data validation) để xác định rằng các data mới có thể phù hợp với cơ sở dữ liệu đã tạo từ trước. - Ngay sau quá trình làm sạch dữ liệu thô (Data Prepration) quá trình tiếp theo là tiến hành phân chia thành hai tập dữ liệu: một là tập kiểm định (Validation data) và hai là tập huấn luyện (Training data). Ngoài ra còn có tập dữ liệu kiểm tra (Test data) để đánh giá mức tiêu chuẩn của mô hình sau khi hoàn thiện quá trình huấn luyện. 9 - Tập dữ liệu tiến hành bước “Model Training” nhằm đưa mô hình bắt đầu vào quá trình huấn luyện.
- Sau khi kết thúc giai đoạn huấn luyện, tiến hành phân tích chất lượng với cách kiểm tra các số liệu như kết quả thực tế, kết quả dự đoán, tốc độ dự đoán trên tập kiểm định trong khối “Model Analysis”. Điều này giúp đánh giá và điều chỉnh mô hình nếu cần. - Khi sản phẩm của quá trình này đã được hoàn thiện, chạy dữ liệu thực tế với việc sử dụng mô hình được phân tích trong khối “Serving”. Nếu kết quả chạy dữ liệu thực tế không tốt cần phải kiểm tra lại mô hình hoặc lọc lại dữ liệu để chất lượng được cải thiện hơn.
Khối serving: - Khi mô hình vẫn trong giai đoạn phát triển nên dùng một bộ dữ liệu nhỏ để thực hiện kiểm thử. Chất lượng mô hình nếu tốt thì mới áp dụng trên toàn bộ dữ liệu. - “Data Preparation” giúp tạo và làm sạch dữ liệu theo đúng mô hình đã được xây dựng trong khối Training. - Mỗi trường hợp khác nhau đều nên có một hệ thống báo động riêng để theo dõi các kết quả được đoán từ trước của mô hình.
Thông thường, bất kỳ đầu vào dữ liệu nào cũng sẽ cho đầu ra dự đoán, kết quả cho ra hợp lệ hoặc chỉ là ngẫu nhiên. Tuy nhiên, nếu không hiệu chỉnh và đánh giá kết quả này một cách kỹ càng thì chất lượng sẽ kém đi và mất tính chính xác. Với kiến trúc pipeline của Mediapipe, việc tạo nên hệ thống thị giác máy tính và máy học trở nên dễ hơn bao giờ hết. Chính là nhờ các khối xây dựng hiện có và kết hợp chúng lại với nhau, các nhà phát triển có thể rút ngắn thời gian để xây dựng ra các ứng dụng phức tạp mà không cần tốn nhiều công sức và thời gian trong giai đoạn viết mã từ đầu.
Với những mặt có lợi, kiến trúc pipeline giúp tăng tốc độ phát triển ứng dụng và thuận tiện cho người dùng khi triển khai các nội dung liên quan đến lĩnh vực thị giác máy tính sử dụng ML. Mở ra một trang mới cho nhiều ứng dụng mới và sáng tạo trong nhiều lĩnh vực như giao diện người-máy, thực tế ảo tăng cường, y tế, và nhiều lĩnh vực khác.2 Các giải pháp trong Mediapipe được sử dụng 2.1 Mediapipe Pose MediaPipe Pose là mã nguồn mở của Google và được nghiên cứu nhằm cung cấp các thuật toán và công cụ cho việc ước lượng tư thế con người (Human Pose Estimation). Các công cụ và thuật toán của MediaPipe Pose cho phép phân tích hình ảnh và tìm ra các điểm đặc trưng trên cơ thể con người như khớp xương, cổ tay, phần tay và các đốt sống. Những thông tin cụ thể này được dùng cho việc định vị trí và hướng của khớp xương trên cơ thể con người với đầu vào là hình ảnh 2D hoặc 3D [9].
Khả năng giám sát và phân tích chuyển động của cơ thể con người là một trong những tính năng nổi bật của MediaPipe Pose [10]. Điều này không chỉ nhằm cải tiến trải nghiệm của người dùng trong các lĩnh vực giải trí như game tương tác và thực tế ảo, mà còn có ứng dụng nâng cao trong lĩnh vực y tế, nơi có thể theo dõi và phân tích chuyển động nhằm giám sát tình trạng sức khỏe hoặc hỗ trợ quá trình phục hồi chức năng. Ngoài ra, MediaPipe Pose được sử dụng để tích hợp các ứng dụng hỗ trợ tương tác tự nhiên với máy tính. Ví dụ trong các ứng dụng học tập hoặc làm việc từ xa, nó có thể giúp cải thiện trải nghiệm thông qua việc theo dõi cử chỉ và tư thế của người dùng, từ đó cung cấp thông tin phản hồi chính xác và tức thì.
Việc tích hợp MediaPipe Pose vào ứng dụng di động cũng giúp khả năng trải nghiệm dễ dàng hơn trong việc tương tác với các ứng dụng và trang web, nâng cao hiệu quả và tiện nghi hơn trong quá trình sử dụng. Cho thấy MediaPipe Pose cũng cung cấp các API và giao diện lập trình (APIs) để xây dựng với các ứng dụng khác, mở ra nhiều khả năng tích hợp và mở rộng. Điều này đem lại trải nghiệm tương tác đa chiều và sinh động hơn cho người dùng. MediaPipe Pose được thiết kế dựa vào mạng neural và mô hình deep learning để đạt được kết quả ước lượng pose đáng mong đợi và ổn định.
Các mô hình này được đào tạo trên tập dữ liệu lớn để phân loại và nhận diện các điểm đặc trưng trên cơ thể con người. MediaPipe Pose dùng thêm các thuật toán tối ưu và phân tích hình ảnh để xử lý đầu vào dữ liệu và tạo ra kết quả pose chính xác [11]. 11 Mô hình landmark trong MediaPipe Pose là một trong yếu tố quan trọng của hệ thống vì dự đoán được vị trí của 33 điểm chấm tư thế trên cơ thể con người. Các điểm chấm này bao gồm các khớp xương, cổ tay, phần tay và các đốt sống, giúp xác định vị trí và hướng của những bộ phận và phần tử quan trọng trên cơ thể.2 Các điểm chấm tư thế trong mô hình Landmark của Mediapipe Pose Mô hình là một mạng nơ-ron nhân tạo (CNN) được đào tạo trên một tập dữ liệu khổng lồ gồm hình ảnh và video có chú thích vị trí của các điểm chấm tư thế.
Khi được cung cấp một hình ảnh hoặc video mới, mô hình sẽ dự đoán vị trí của 33 điểm chấm tư thế trên cơ thể người trong hình ảnh hoặc video đó. Các điểm chấm này cũng được dùng để định vị các tư thế của cơ thể con người trong không gian 2D hoặc 3D. Tóm lại những vấn đề được nêu trên, MediaPipe Pose chính là một giải pháp mã nguồn mở mạnh mẽ cho Human Pose Estimation. Với khả năng phát hiện, phân tích và tích hợp đa nền tảng, MediaPipe Pose không chỉ cung cấp các thuật toán và công cụ mạnh mẽ, mà còn mở ra nhiều ưu thế mới.