Key Point Labelling
25Th7

Keypoint Annotation và các ứng dụng trong Machine Learning

Key Point Labelling
Ảnh: PIXTASTOCK

Trong bài viết Các kĩ thuật chú thích ảnh kỳ trước, chúng tôi đã giới thiệu những phương thức chú thích hình ảnh (image annotation) đang thịnh hành hiện nay; và phương thức phổ biến nhất chính là Keypoint Annotation. Mặc dù phổ biến nhất, nhưng nó cũng là kỹ thuật tốn nhiều thời gian, chi phí vì đòi hỏi tính chính xác và hiệu quả cao trong việc đào tạo các model của các thuật toán Machine Learning. Trong bài viết này, chúng tôi sẽ giải thích cụ thể hơn về Keypoint Annotation và các ứng dụng của nó trong thực tế đào tạo mô hình thị giác máy tính.

Nếu bạn quan tâm đến việc sử dụng keypoint để theo dõi hành vi của vật nuôi, biểu cảm của con người, chuyển động trong thể thao,… hoặc đơn giản là muốn tìm hiểu tại sao các ứng dụng chỉnh sửa ảnh lại có thể tạo ra những lớp makeup khớp với rất nhiều kiểu khuôn mặt, thì bài viết này chắc chắn sẽ dành cho bạn.

Keypoint Annotation là gì?

Keypoint Annotation (hay landmark recognition) là dạng gắn nhãn hình ảnh bao gồm nhiều điểm được đánh số khác nhau (gọi là keypoint) được kết nối bởi các cạnh/ đường thẳng. Đây là dạng annotation phù hợp với các bài toán theo dõi biến thể giữa các đối tượng có cấu trúc giống nhau (Ví dụ: hình dáng con người và đặc điểm khuôn mặt,…).

Keypoint Annotation được thực hiện trên các đối tượng trong hình ảnh hoặc video để xác định vị trí, hình dạng, hướng hoặc chuyển động. Nhiều keypoint có thể được kết nối để tạo thành các cấu trúc lớn hơn được gọi là keypoint skeleton.

keypoint skeleton

Ảnh: PIXTASTOCK

Các loại Keypoint Annotation

Mỗi dự án, mỗi nhiệm vụ, hay mỗi bài toán Machine Learning đều có những yêu cầu cụ thể,  riêng biệt và đa dạng. Mỗi bài toán đó có thể sẽ cần các hình thức Keypoint Annotation khác nhau, chẳng hạn như:

  • Gán nhãn keypoint khuôn mặt (Facial Keypoint Annotation): Bao gồm việc đánh dấu các điểm mốc trên khuôn mặt, như góc mắt, đầu mũi, góc miệng và các đặc trưng khuôn mặt khác. Facial Keypoint Annotation được sử dụng rộng rãi trong các ứng dụng như nhận dạng khuôn mặt, phân tích biểu cảm khuôn mặt và phát hiện đặc trưng khuôn mặt.
Facial Keypoint Annotation

Ảnh: PIXTASTOCK

  • Gán nhãn keypoint vị trí cơ thể (Body Pose Keypoint Annotation): Loại gán nhãn này liên quan đến đánh dấu các điểm chính/mốc trên cơ thể con người để xác định tư thế và vị trí cơ thể. Thông thường, nó bao gồm điểm mốc của các khớp như vai, khuỷu tay, cổ tay, hông, đầu gối và mắt cá chân. Body Pose Keypoint Annotation thường được sử dụng trong các ứng dụng như ước lượng tư thế, nhận dạng hành động và phân tích hoạt động con người (giao thông, thể thao,…).
Body Pose Keypoint Annotation

Ảnh: PIXTASTOCK

  • Gán nhãn keypoint bàn tay (Hand Keypoint Annotation): Đánh dấu các điểm chính trên bàn tay để xác định vị trí và cấu hình các ngón tay và lòng bàn tay. Loại gán nhãn này được sử dụng trong việc nhận dạng cử chỉ tay, thông dịch ngôn ngữ ký hiệu và ước lượng tư thế tay.
Hand Keypoint Annotation

Ảnh: PIXTASTOCK

  • Gán nhãn keypoint đối tượng (Object Keypoint Annotation): Đánh dấu các điểm mốc trên các đối tượng cụ thể, như xe cộ, động vật hoặc các đối tượng trong một cảnh quan. Các điểm mốc này đại diện cho các phần quan trọng hoặc các đặc điểm cấu trúc của đối tượng. Object Keypoint Annotation rất hữu ích cho việc phát hiện đối tượng, phân đoạn theo thể hiện và nhận dạng đối tượng chi tiết.
Object Keypoint Annotation

Ảnh: PIXTASTOCK

Object Keypoint Annotation

Ảnh: PIXTASTOCK

Khi nào nên sử dụng Keypoint Annotation?

Keypoint Annotation là dạng thức phù hợp nhất để theo dõi và dự đoán chuyển động, phát hiện các bộ phận cơ thể người, nhận dạng cử chỉ và (biểu cảm) khuôn mặt, nhận dạng tư thế cho AR/VR hoặc thậm chí trong phiên âm ngôn ngữ ký hiệu.

Keypoint có thể đại diện cho các khía cạnh khác nhau của hình ảnh, chẳng hạn như góc, cạnh hoặc các tính năng cụ thể, tùy thuộc vào ứng dụng thực tế. Chẳng hạn, trong nhận dạng khuôn mặt, keypoint có thể đánh dấu mắt, mũi và miệng; keypoint skeleton thì đại diện cho các khớp của cơ thể,…

keypoint skeleton

Ảnh: PIXTASTOCK

Các ứng dụng của Keypoint Annotation trong đời sống:

  • Y tế: Theo dõi quy trình phẫu thuật có sự hỗ trợ của robot
  • Không gian địa lý: Giám sát chuyển động của cần cẩu trên công trường
  • Giao thông: Theo dõi chuyển động của phương tiện và người tham gia giao thông
  • Công nghiệp: Phát hiện, giám sát cử chỉ, thao tác tay của con người trong quá trình sản xuất
  • Nông nghiệp: Theo dõi sự di chuyển của vật nuôi
  • Bán lẻ: Thu thập và phân tích hành vi của người mua hàng trong siêu thị thông minh
  • Thể thao: Theo dõi hướng chạy và dự đoán chiến thuật
  • Hiệu ứng làm đẹp trên smartphone: Phát hiện các điểm chính trên khuôn mặt người sử dụng
  • Bảo mật: Phát hiện các điểm chính trên khuôn mặt người sử dụng (Để mở khoá cửa hoặc mở khoá màn hình smartphone)
  • Và nhiều ứng dụng khác.

Ưu điểm và nhược điểm của Keypoint Annotation

Với tệp dữ liệu được gán nhãn keypoint / keypoint skeleton, mô hình có thể hiểu rõ hơn về mối quan hệ không gian giữa các đối tượng / bộ phận của đối tượng hoặc các cấu trúc khác nhau trong mỗi hình ảnh. Điều này cho phép các kỹ sư giải quyết những nhiệm vụ thị giác máy tính phức tạp hơn và đưa ra dự đoán tốt hơn.

Keypoint cung cấp dữ liệu chất lượng cao, nhưng cũng yêu cầu khối lượng lớn công việc gán nhãn thủ công. Bounding box hoặc polygon thường dễ gắn nhãn hơn và thường được sử dụng trong các tác vụ thị giác máy tính đơn giản hơn, chẳng hạn như phát hiện đối tượng cơ bản, nhận diện chất liệu,…

keypoint annotation

Ảnh: PIXTASTOCK

keypoint annotation

Ảnh: PIXTASTOCK

Xác định vị trí chính xác của một số keypoint trên thực tế khá khó khăn, do một phần của đối tượng có thể bị che khuất hoặc nằm ngoài khung hình, có thể gây nhầm lẫn cho mô hình. Điều này đòi hỏi người gán nhãn dữ liệu phải có kiến thức thực tế về hình dạng của đối tượng được gắn nhãn dữ liệu tương đối tốt và nhất quán trong tiêu chuẩn cấu trúc (không gian) mới có thể thao tác chính xác.

So với các phương thức gắn nhãn khác như bounding box hay polygon, thì keypoint annotation thường được ưu tiên sử dụng trong các bài toán thị giác máy tính “khó nhằn”, chẳng hạn như ước tính tư thế con người hoặc nhận dạng cử chỉ, biểu cảm,… vì các tác vụ này đều yêu cầu dữ liệu chi tiết và chính xác hơn.

Kết luận

Bằng cách giúp máy tính “nhìn thấy” và “hiểu” thế giới một cách sâu sắc hơn, từ việc theo dõi hành vi của vật nuôi, chuyển động trong thể thao, đến ước tính tư thế con người và nhận dạng biểu cảm khuôn mặt, Keypoint Annotation mở ra một loạt ứng dụng ấn tượng và hứa hẹn đáng kinh ngạc trong tương lai. Mặc dù đòi hỏi công sức và tài nguyên kỹ thuật cao để thực hiện việc gán nhãn chính xác và chi tiết, nhưng việc Keypoint Annotation đã, đang và sẽ có những đóng góp đáng kể đối với sự tiến bộ của công nghệ và cuộc sống con người là không thể phủ nhận. Gán nhãn keypoint không chỉ là một phương pháp gán nhãn được ưu tiên trong các bài toán thị giác máy tính phức tạp, mà còn là bước đột phá quan trọng đối với ứng dụng và nghiên cứu trong nhiều lĩnh vực đa dạng.

Tác giả: Cao Minh Ngọc

Tìm hiểu thêm về Pixta Vietnam

🌐 Website: https://pixta.vn/careers

🏠 Fanpage: https://www.facebook.com/pixtaVN

🔖 LinkedIn: https://www.linkedin.com/company/pixta-vietnam/