YOLO Vision 2026:
Ultralytics YOLO

Khám phá việc gắn nhãn dữ liệu cho các dự án thị giác máy tính

Đọc bài phân tích chuyên sâu toàn diện của chúng tôi về gắn nhãn dữ liệu cho các dự án thị giác máy tính và tìm hiểu cách gắn nhãn dữ liệu trực quan cũng như lý do tại sao điều này lại quan trọng.

ABAbirami Vina4 min read
Gắn nhãn dữ liệu cho các dự án thị giác máy tính

Trí tuệ nhân tạo (AI) tập trung vào việc mang lại cho máy móc khả năng giống con người, và một trong những cách phổ biến nhất để làm điều này là thông qua supervised learning. Nói cách khác, dạy cho các model AI bằng cách cho chúng xem các ví dụ đã được gán nhãn có thể giúp chúng học hỏi từ các mẫu và cải thiện hiệu suất trong các tác vụ. Điều này rất giống với cách con người học hỏi từ kinh nghiệm. Vậy, những ví dụ được gán nhãn này được tạo ra như thế nào?

Data annotation liên quan đến việc gán nhãn hoặc đánh thẻ dữ liệu để giúp các thuật toán machine learning hiểu được dữ liệu đó. Trong computer vision, điều này có nghĩa là đánh dấu các hình ảnh hoặc video để nhận diện và phân loại chính xác các đối tượng, hành động hoặc bối cảnh. Data labeling rất quan trọng vì sự thành công của một model AI phụ thuộc phần lớn vào chất lượng của dữ liệu được gán nhãn mà nó được train trên đó.

Các nghiên cứu cho thấy hơn 80% of AI project time được dành cho việc quản lý dữ liệu, từ thu thập và tổng hợp đến cleaning and labeling dữ liệu. Điều này cho thấy data annotation quan trọng thế nào trong quá trình phát triển model AI. Việc sử dụng dữ liệu đã được gán nhãn chất lượng cao giúp các model AI có thể thực hiện các tác vụ như facial recognitionobject detection với độ chính xác và độ tin cậy cao hơn trong các tình huống thực tế.

Tại sao gán nhãn dữ liệu là cần thiết#

Data annotation tạo nên nền tảng cho hiệu suất hoạt động của một computer vision model. Dữ liệu được gán nhãn chính là ground truth mà model sử dụng để học và đưa ra dự đoán. Dữ liệu ground truth rất quan trọng vì nó đại diện cho thế giới thực mà model đang cố gắng tìm hiểu. Nếu không có cơ sở đáng tin cậy này, model AI sẽ giống như một con tàu di chuyển mà không có la bàn.

Ground truth versus prediction

Fig 1. Ground Truth Vs. Prediction.

Việc gán nhãn chính xác giúp các models này hiểu được những gì chúng đang nhìn thấy và dẫn đến việc ra quyết định tốt hơn. Nếu dữ liệu được gán nhãn kém hoặc không nhất quán, model sẽ gặp khó khăn trong việc đưa ra các dự đoán và quyết định chính xác, giống như một học sinh học từ sách giáo khoa không chính xác. Nhờ có dữ liệu được gán nhãn, một model có thể học các tác vụ như image classification, instance segmentation, và pose estimation các đối tượng trong hình ảnh và video.

Các tài nguyên tốt nhất cho tập dữ liệu#

Trước khi tạo một bộ dữ liệu hoàn toàn mới và tỉ mỉ gán nhãn hình ảnh cũng như video, bạn nên kiểm tra xem mình có thể sử dụng pre-existing datasets cho dự án của mình hay không. Có một số kho lưu trữ mã nguồn mở tuyệt vời nơi bạn có thể truy cập các bộ dữ liệu chất lượng cao miễn phí. Một số kho phổ biến nhất bao gồm:

  • ImageNet: Thường được sử dụng để train các model image classification.
  • COCO: Bộ dữ liệu này được thiết kế cho các tác vụ object detection, segmentation và image captioning.
  • PASCAL VOC: Hỗ trợ các tác vụ object detection và segmentation.

Examples of data in the COCO dataset

Fig 2. Ví dụ về dữ liệu trong bộ dữ liệu COCO.

Khi chọn một bộ dữ liệu, điều quan trọng là phải xem xét các yếu tố như mức độ phù hợp với dự án của bạn, kích thước bộ dữ liệu, tính đa dạng và chất lượng nhãn. Ngoài ra, hãy nhớ xem xét licensing terms của bộ dữ liệu để tránh mọi hậu quả legal, đồng thời kiểm tra xem dữ liệu có được định dạng theo cách phù hợp với quy trình làm việc và công cụ của bạn hay không.

Tạo tập dữ liệu tùy chỉnh là một lựa chọn tuyệt vời nếu các tập dữ liệu hiện có không hoàn toàn phù hợp với nhu cầu của bạn. Bạn có thể thu thập hình ảnh bằng cách sử dụng các công cụ như webcam, máy bay không người lái (drone) hoặc điện thoại thông minh, tùy thuộc vào yêu cầu của dự án. Tốt nhất, tập dữ liệu tùy chỉnh của bạn nên đa dạng, cân bằng và thực sự đại diện cho vấn đề mà bạn đang cố gắng giải quyết. Điều này có thể bao gồm việc chụp ảnh trong các điều kiện ánh sáng khác nhau, từ nhiều góc độ và trong nhiều môi trường khác nhau.

Nếu bạn chỉ có thể thu thập một số lượng nhỏ hình ảnh hoặc video, data augmentation là một kỹ thuật hữu ích. Kỹ thuật này bao gồm việc mở rộng bộ dữ liệu của bạn bằng cách áp dụng các phép biến đổi như xoay, lật hoặc điều chỉnh màu sắc cho các hình ảnh hiện có. Nó làm tăng kích thước bộ dữ liệu của bạn và giúp model của bạn trở nên mạnh mẽ hơn, đồng thời xử lý tốt hơn các biến thể trong dữ liệu. Bằng cách sử dụng kết hợp các bộ dữ liệu mã nguồn mở, bộ dữ liệu tùy chỉnh và dữ liệu được tăng cường, bạn có thể cải thiện đáng kể hiệu suất của các computer vision model.

Các loại kỹ thuật gán nhãn hình ảnh#

Trước khi bắt đầu gán nhãn hình ảnh, điều quan trọng là phải làm quen với các loại gán nhãn khác nhau. Điều này sẽ giúp bạn chọn phương pháp phù hợp cho dự án của mình. Tiếp theo, chúng ta sẽ xem xét một số loại gán nhãn chính.

BBox#

Bounding boxes là loại annotation phổ biến nhất trong computer vision. Chúng là các hộp hình chữ nhật được sử dụng để đánh dấu vị trí của một đối tượng trong hình ảnh. Các hộp này được xác định bằng tọa độ các góc của chúng, và giúp các model AI nhận diện và định vị đối tượng. Bounding boxes chủ yếu được sử dụng cho object detection.

An example of bounding boxes

Fig 3. Ví dụ về Bounding Boxes.

Mặt nạ phân đoạn (Segmentation masks)#

Đôi khi, một đối tượng cần được phát hiện chính xác hơn so với chỉ dùng một bounding box bao quanh nó. Bạn có thể quan tâm đến đường viền của các đối tượng trong hình ảnh. Trong trường hợp đó, mặt nạ phân đoạn cho phép bạn vẽ phác thảo các đối tượng phức tạp. Mặt nạ phân đoạn là một biểu diễn chi tiết hơn ở cấp độ pixel.

Các mặt nạ này có thể được sử dụng cho semantic segmentationinstance segmentation. Semantic segmentation liên quan đến việc gán nhãn cho mọi pixel trong một hình ảnh theo đối tượng hoặc khu vực mà nó đại diện, chẳng hạn như người đi bộ, ô tô, đường phố hoặc vỉa hè. Tuy nhiên, instance segmentation tiến thêm một bước bằng cách nhận diện và tách biệt từng đối tượng một cách riêng lẻ, chẳng hạn như phân biệt từng chiếc ô tô trong một hình ảnh, ngay cả khi chúng cùng một loại.

An example of semantic segmentation (left) and instance segmentation (right)

Fig 4. Ví dụ về Semantic Segmentation (trái) và Instance Segmentation Masks (phải).

Hình khối 3D (3D Cuboids)#

Khối hộp 3D (3D cuboids) tương tự như bounding boxes, điểm làm cho chúng trở nên độc đáo là các khối hộp 3D bổ sung thêm thông tin về chiều sâu và cung cấp biểu diễn 3D của một đối tượng. Thông tin bổ sung này cho phép các hệ thống hiểu được hình dạng, thể tích và vị trí của các đối tượng trong không gian 3D. Khối hộp 3D thường được sử dụng trong self-driving cars để đo lường distance của các đối tượng tính từ phương tiện.

An example of 3D cuboids

Fig 5. Ví dụ về 3D Cuboids.

Điểm khóa (Key-points) và mốc giới (Landmarks)#

Một loại annotation thú vị khác là key-points, nơi các điểm cụ thể như mắt, mũi hoặc khớp được đánh dấu trên các đối tượng. Landmarks tiến thêm một bước bằng cách kết nối các điểm này để nắm bắt cấu trúc và chuyển động của các hình形状 phức tạp hơn, chẳng hạn như khuôn mặt hoặc tư thế cơ thể. Các loại annotation này được sử dụng cho các ứng dụng như facial recognition, bắt chuyển động (motion capture) và thực tế ảo tăng cường (augmented reality). Chúng cũng cải thiện độ chính xác của các model AI trong các tác vụ như nhận diện cử chỉ hoặc analyzing sports performance.

An example of key-points

Fig 6. Ví dụ về Key-Points.

Cách gán nhãn dữ liệu bằng LabelImg#

Bây giờ chúng ta đã thảo luận về các loại annotation khác nhau, hãy tìm hiểu cách bạn có thể gán nhãn hình ảnh bằng một công cụ phổ biến, LabelImg. LabelImg là một công cụ mã nguồn mở giúp việc gán nhãn hình ảnh trở nên đơn giản và có thể được sử dụng để tạo các bộ dữ liệu ở định dạng YOLO (You Only Look Once). Đây là một lựa chọn tuyệt vời cho người mới bắt đầu làm việc với các Ultralytics YOLOv8 projects nhỏ.

Việc thiết lập LabelImg rất đơn giản. Đầu tiên, hãy đảm bảo bạn đã cài đặt Python 3 trên máy tính của mình. Sau đó, bạn có thể cài đặt LabelImg bằng một câu lệnh nhanh:

pip3 install labelImg

Sau khi đã cài đặt, bạn có thể khởi chạy công cụ bằng lệnh:

labelImg

LabelImg hoạt động trên nhiều nền tảng, bao gồm Windows, macOS và Linux. Nếu bạn gặp bất kỳ vấn đề gì trong quá trình cài đặt, kho lưu trữ chính thức của LabelImg có thể cung cấp cho bạn các hướng dẫn chi tiết hơn.

Using LabelImg for image annotation

Hình 7. Sử dụng LabelImg để gán nhãn hình ảnh.

Sau khi khởi chạy công cụ, hãy làm theo các bước đơn giản sau để bắt đầu gán nhãn hình ảnh của bạn:

  • Thiết lập các lớp (classes): Bắt đầu bằng cách xác định danh sách các lớp (danh mục) bạn muốn gán nhãn trong một tệp có tên “predefined_classes.txt.” Tệp này cho phần mềm biết những đối tượng nào bạn sẽ gán nhãn trong hình ảnh của mình.
  • Chuyển sang định dạng YOLO: Theo mặc định, LabelImg sử dụng định dạng PASCAL VOC, nhưng nếu bạn đang làm việc với YOLO, bạn sẽ cần chuyển đổi định dạng. Chỉ cần nhấp vào nút “PascalVOC” trên thanh công cụ để chuyển sang YOLO.
  • Bắt đầu gán nhãn: Sử dụng các tùy chọn "Open" hoặc "OpenDIR" để tải hình ảnh của bạn. Sau đó, vẽ các bounding box xung quanh các đối tượng bạn muốn gán nhãn và chỉ định nhãn lớp chính xác. Sau khi gán nhãn từng hình ảnh, hãy lưu công việc của bạn. LabelImg sẽ tạo một tệp văn bản có cùng tên với hình ảnh của bạn, chứa các chú thích YOLO.
  • Lưu và đánh giá: Các chú thích được lưu trong một tệp .txt ở định dạng YOLO. Phần mềm cũng lưu một tệp “classes.txt” liệt kê tất cả tên các lớp của bạn.

Các chiến lược gán nhãn dữ liệu hiệu quả#

Để làm cho quá trình gán nhãn dữ liệu trơn tru hơn, có một vài chiến lược chính cần ghi nhớ. Ví dụ, các hướng dẫn gán nhãn rõ ràng là rất quan trọng. Nếu không có chúng, những người gán nhãn khác nhau có thể giải thích một tác vụ theo những cách khác nhau.

Giả sử tác vụ là gán nhãn chim trong hình ảnh bằng bounding box. Một người gán nhãn có thể đánh dấu toàn bộ con chim, trong khi người khác có thể chỉ đánh dấu đầu hoặc cánh. Sự thiếu nhất quán này có thể làm mô hình bối rối trong quá trình huấn luyện. Bằng cách cung cấp các định nghĩa rõ ràng, như "gán nhãn toàn bộ con chim bao gồm cả cánh và đuôi," cùng với các ví dụ và hướng dẫn cho các trường hợp khó, bạn có thể đảm bảo dữ liệu được gắn thẻ chính xác và nhất quán.

Việc kiểm tra chất lượng định kỳ cũng rất quan trọng để duy trì tiêu chuẩn cao. Bằng cách thiết lập các tiêu chuẩn (benchmarks) và sử dụng các chỉ số cụ thể để đánh giá công việc, bạn có thể giữ cho dữ liệu chính xác và tinh chỉnh quy trình thông qua phản hồi liên tục.

Gán nhãn dữ liệu tóm tắt#

Gán nhãn dữ liệu là một khái niệm đơn giản có thể tạo ra tác động đáng kể đến mô hình thị giác máy tính của bạn. Cho dù bạn đang sử dụng các công cụ như LabelImg để gán nhãn hình ảnh hay huấn luyện các mô hình trên các tập dữ liệu mã nguồn mở, việc hiểu về gán nhãn dữ liệu là chìa khóa. Các chiến lược gán nhãn dữ liệu có thể giúp hợp lý hóa toàn bộ quy trình và làm cho nó hiệu quả hơn. Dành thời gian để tinh chỉnh phương pháp gán nhãn của bạn có thể dẫn đến kết quả AI tốt hơn và đáng tin cậy hơn.

Tiếp tục khám phá và mở rộng kỹ năng của bạn! Hãy kết nối với community của chúng tôi để tiếp tục tìm hiểu về AI! Hãy xem GitHub repository của chúng tôi để khám phá cách chúng tôi đang sử dụng AI nhằm tạo ra các giải pháp đổi mới trong các ngành như manufacturinghealthcare. 🚀

Explore solutions

Real-time AI that works with your team

AI trong ngành Robot

Tăng cường sức mạnh cho các cỗ máy thông minh hơn với các model Ultralytics YOLO. AI thị giác trong lĩnh vực robot thúc đẩy khả năng điều hướng tự hành, nhận thức, theo dõi đối tượng và điều khiển thời gian thực.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong Logistics

Tối ưu hóa logistics với các model Ultralytics YOLO. Vision AI hỗ trợ kiểm tra hàng hóa, phân loại, theo dõi phương tiện và giám sát an toàn kho bãi trong thời gian thực.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Bán lẻ

Tái định hình bán lẻ với các model Ultralytics YOLO. Vision AI thúc đẩy theo dõi hàng tồn kho, giám sát kệ hàng, quản lý hàng đợi và thông tin chi tiết thông minh hơn về khách hàng.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong chăm sóc sức khỏe

Xây dựng các giải pháp y tế với các model Ultralytics YOLO. AI thị giác trong y tế hỗ trợ chẩn đoán hình ảnh y khoa nhanh hơn, chẩn đoán thông minh hơn và theo dõi bệnh nhân.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong sản xuất

Tối ưu hóa sản xuất với các model Ultralytics YOLO. Vision AI thúc đẩy kiểm soát chất lượng, phát hiện lỗi, tuân thủ PPE và tự động hóa dây chuyền lắp ráp.
Tìm hiểu thêm
Real-time AI that works with your operation

AI trong Ô tô

Áp dụng thị giác máy tính trong ô tô với các model Ultralytics YOLO. AI thị giác nâng cao an toàn đường bộ, hỗ trợ người lái và tự động hóa phương tiện cho những con đường thông minh hơn.
Tìm hiểu thêm
Real-time AI tailored to your operation

AI trong Nông nghiệp

Mang AI thị giác vào nông nghiệp thông minh với các model Ultralytics YOLO. Tăng cường giám sát mùa màng, theo dõi vật nuôi và canh tác chính xác để đạt năng suất cao hơn, thông minh hơn.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Robot

Tăng cường sức mạnh cho các cỗ máy thông minh hơn với các model Ultralytics YOLO. AI thị giác trong lĩnh vực robot thúc đẩy khả năng điều hướng tự hành, nhận thức, theo dõi đối tượng và điều khiển thời gian thực.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong Logistics

Tối ưu hóa logistics với các model Ultralytics YOLO. Vision AI hỗ trợ kiểm tra hàng hóa, phân loại, theo dõi phương tiện và giám sát an toàn kho bãi trong thời gian thực.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Bán lẻ

Tái định hình bán lẻ với các model Ultralytics YOLO. Vision AI thúc đẩy theo dõi hàng tồn kho, giám sát kệ hàng, quản lý hàng đợi và thông tin chi tiết thông minh hơn về khách hàng.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong chăm sóc sức khỏe

Xây dựng các giải pháp y tế với các model Ultralytics YOLO. AI thị giác trong y tế hỗ trợ chẩn đoán hình ảnh y khoa nhanh hơn, chẩn đoán thông minh hơn và theo dõi bệnh nhân.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong sản xuất

Tối ưu hóa sản xuất với các model Ultralytics YOLO. Vision AI thúc đẩy kiểm soát chất lượng, phát hiện lỗi, tuân thủ PPE và tự động hóa dây chuyền lắp ráp.
Tìm hiểu thêm
Real-time AI that works with your operation

AI trong Ô tô

Áp dụng thị giác máy tính trong ô tô với các model Ultralytics YOLO. AI thị giác nâng cao an toàn đường bộ, hỗ trợ người lái và tự động hóa phương tiện cho những con đường thông minh hơn.
Tìm hiểu thêm
Real-time AI tailored to your operation

AI trong Nông nghiệp

Mang AI thị giác vào nông nghiệp thông minh với các model Ultralytics YOLO. Tăng cường giám sát mùa màng, theo dõi vật nuôi và canh tác chính xác để đạt năng suất cao hơn, thông minh hơn.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Robot

Tăng cường sức mạnh cho các cỗ máy thông minh hơn với các model Ultralytics YOLO. AI thị giác trong lĩnh vực robot thúc đẩy khả năng điều hướng tự hành, nhận thức, theo dõi đối tượng và điều khiển thời gian thực.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong Logistics

Tối ưu hóa logistics với các model Ultralytics YOLO. Vision AI hỗ trợ kiểm tra hàng hóa, phân loại, theo dõi phương tiện và giám sát an toàn kho bãi trong thời gian thực.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong ngành Bán lẻ

Tái định hình bán lẻ với các model Ultralytics YOLO. Vision AI thúc đẩy theo dõi hàng tồn kho, giám sát kệ hàng, quản lý hàng đợi và thông tin chi tiết thông minh hơn về khách hàng.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong chăm sóc sức khỏe

Xây dựng các giải pháp y tế với các model Ultralytics YOLO. AI thị giác trong y tế hỗ trợ chẩn đoán hình ảnh y khoa nhanh hơn, chẩn đoán thông minh hơn và theo dõi bệnh nhân.
Tìm hiểu thêm
Real-time AI that works with your team

AI trong sản xuất

Tối ưu hóa sản xuất với các model Ultralytics YOLO. Vision AI thúc đẩy kiểm soát chất lượng, phát hiện lỗi, tuân thủ PPE và tự động hóa dây chuyền lắp ráp.
Tìm hiểu thêm
Real-time AI that works with your operation

AI trong Ô tô

Áp dụng thị giác máy tính trong ô tô với các model Ultralytics YOLO. AI thị giác nâng cao an toàn đường bộ, hỗ trợ người lái và tự động hóa phương tiện cho những con đường thông minh hơn.
Tìm hiểu thêm
Real-time AI tailored to your operation

AI trong Nông nghiệp

Mang AI thị giác vào nông nghiệp thông minh với các model Ultralytics YOLO. Tăng cường giám sát mùa màng, theo dõi vật nuôi và canh tác chính xác để đạt năng suất cao hơn, thông minh hơn.
Tìm hiểu thêm

Hãy cùng nhau xây dựng tương lai của AI!

Bắt đầu hành trình của bạn với tương lai của machine learning