RTDETRv2 và YOLOv10#
Sự phát triển của thị giác máy tính phần lớn được thúc đẩy bởi nỗ lực không ngừng nhằm cân bằng tốc độ và độ chính xác. Theo truyền thống, pipeline phát hiện đối tượng thời gian thực dựa vào Ức chế phi cực đại (NMS) như một bước hậu xử lý để lọc các hộp giới hạn chồng lấp. Tuy nhiên, NMS gây ra nút thắt độ trễ và khiến việc tinh chỉnh siêu tham số trở nên phức tạp. Gần đây, hai hướng tiếp cận kiến trúc khác biệt đã xuất hiện để giải quyết vấn đề này ngay từ đầu: model dựa trên Transformer như RTDETRv2 và model dựa trên CNN như YOLOv10.
Hướng dẫn này cung cấp bài so sánh kỹ thuật toàn diện về hai model, phân tích kiến trúc, chỉ số hiệu năng và trường hợp sử dụng lý tưởng, đồng thời nêu bật cách những đổi mới mới nhất trong hệ sinh thái Ultralytics mang đến giải pháp tối ưu cho triển khai hiện đại.
RTDETRv2: Transformer phát hiện thời gian thực#
RTDETRv2 phát triển dựa trên kiến trúc RT-DETR ban đầu, hướng đến việc kết hợp khả năng hiểu ngữ cảnh toàn cục của Vision Transformer với yêu cầu tốc độ thời gian thực vốn do các model YOLO thống trị.
Đặc điểm chính:
- Tác giả: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang và Yi Liu
- Tổ chức: Baidu
- Ngày: 2024-07-24
- Arxiv: https://arxiv.org/abs/2407.17140
- GitHub: https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Kiến trúc và phương pháp huấn luyện#
RTDETRv2 sử dụng kiến trúc Transformer end-to-end vốn không cần NMS. Model cải tiến so với phiên bản tiền nhiệm bằng cách áp dụng phương pháp "Bag-of-Freebies", tối ưu chiến lược huấn luyện và tích hợp khả năng phát hiện đa tỷ lệ. Model sử dụng backbone CNN để trích xuất feature map (các chi tiết hình ảnh như cạnh và kết cấu), sau đó xử lý chúng bằng cấu trúc encoder-decoder Transformer. Nhờ vậy, model có thể phân tích đồng thời ngữ cảnh của toàn bộ ảnh, đặc biệt hiệu quả khi hiểu các cảnh phức tạp có nhiều đối tượng tập trung dày đặc hoặc chồng lấp.
Ưu điểm và nhược điểm#
Ưu điểm:
- Ngữ cảnh toàn cục: Cơ chế attention giúp model hoạt động vượt trội trong môi trường phức tạp, lộn xộn.
- Không cần NMS: Dự đoán trực tiếp tọa độ đối tượng, giúp đơn giản hóa pipeline triển khai.
- Độ chính xác cao: Đạt độ chính xác trung bình (mAP) xuất sắc trên dataset COCO.
Nhược điểm:
- Tốn nhiều tài nguyên: Kiến trúc Transformer thường cần nhiều bộ nhớ CUDA hơn đáng kể trong quá trình huấn luyện so với CNN, khiến việc fine-tune trên phần cứng phổ thông trở nên tốn kém.
- Tốc độ suy luận biến động: Dù nhanh, các phép tính attention nặng có thể làm giảm FPS trong thị giác máy tính trên thiết bị biên không có bộ tăng tốc AI chuyên dụng.
YOLOv10: Phát hiện đối tượng end-to-end theo thời gian thực#
YOLOv10 tạo nên thay đổi lớn trong dòng phát hiện đối tượng YOLO khi trực tiếp giải quyết nút thắt NMS lâu nay ngay trong framework CNN.
Đặc điểm chính:
- Tác giả: Ao Wang, Hui Chen, Lihao Liu và cộng sự
- Tổ chức: Đại học Thanh Hoa
- Ngày: 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub: https://github.com/THU-MIG/yolov10
Kiến trúc và phương pháp huấn luyện#
Đổi mới cốt lõi của YOLOv10 là cơ chế gán kép nhất quán để huấn luyện không cần NMS. Model sử dụng hai head phát hiện trong quá trình huấn luyện: một head với cơ chế gán một-nhiều (như YOLO truyền thống) để cung cấp tín hiệu giám sát phong phú, và một head với cơ chế gán một-một để loại bỏ nhu cầu sử dụng NMS. Khi suy luận, chỉ head một-một được sử dụng, tạo nên quy trình end-to-end. Ngoài ra, các tác giả áp dụng chiến lược thiết kế model toàn diện, cân bằng hiệu quả và độ chính xác, tối ưu hóa tổng thể nhiều thành phần để giảm dư thừa tính toán.
Ưu điểm và nhược điểm#
Ưu điểm:
- Tốc độ cực cao: Nhờ loại bỏ NMS và tối ưu kiến trúc, YOLOv10 đạt độ trễ suy luận cực thấp.
- Hiệu quả: Cần ít tham số và FLOPs hơn để đạt độ chính xác tương đương các model khác, rất phù hợp với môi trường hạn chế tài nguyên.
- Triển khai không cần NMS: Đơn giản hóa việc tích hợp vào các ứng dụng biên như giám sát thông minh.
Nhược điểm:
- Khái niệm thế hệ đầu tiên: Là YOLO đầu tiên triển khai kiến trúc không cần NMS cụ thể này, model đặt nền móng nhưng vẫn còn dư địa để phát triển tính linh hoạt đa tác vụ và khả năng tối ưu như trong các model sau này như YOLO11 và YOLO26.
So sánh hiệu năng#
Khi đánh giá model cho môi trường production, việc cân bằng độ chính xác với chi phí tính toán là yếu tố then chốt. Bảng dưới đây nêu bật sự đánh đổi về hiệu năng giữa các kích thước RTDETRv2 và YOLOv10.
| Model | kích thước (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
Dù RTDETRv2 có độ chính xác đáng tin cậy, YOLOv10 cho thấy ưu thế đáng kể về độ trễ và hiệu quả tham số, đặc biệt ở các biến thể nhỏ hơn (Nano và Small), khiến model rất phù hợp với các ứng dụng điện toán biên và AIoT.
Nếu triển khai trên GPU cấp máy chủ, nơi batch size và VRAM ít bị giới hạn hơn, các model lớn hơn (như -x hoặc -l) sẽ tối đa hóa độ chính xác. Với thiết bị biên như Raspberry Pi hoặc điện thoại di động, hãy ưu tiên các biến thể nano (-n) hoặc small (-s) để duy trì tốc độ khung hình thời gian thực.
Trường hợp sử dụng và khuyến nghị#
Việc lựa chọn giữa RT-DETR và YOLOv10 phụ thuộc vào các yêu cầu cụ thể của dự án, giới hạn triển khai và lựa chọn hệ sinh thái của bạn.
Khi nào nên chọn RT-DETR#
RT-DETR là lựa chọn phù hợp cho:
- Nghiên cứu phát hiện dựa trên Transformer: Các dự án nghiên cứu cơ chế attention và kiến trúc Transformer để phát hiện vật thể đầu cuối mà không cần NMS.
- Tình huống cần độ chính xác cao với độ trễ linh hoạt: Các ứng dụng đặt độ chính xác phát hiện lên hàng đầu và chấp nhận độ trễ suy luận cao hơn đôi chút.
- Phát hiện vật thể lớn: Các cảnh chủ yếu có vật thể cỡ trung bình đến lớn, trong đó cơ chế attention toàn cục của Transformer mang lại lợi thế tự nhiên.
Khi nào nên chọn YOLOv10#
YOLOv10 được khuyến nghị cho:
- Phát hiện thời gian thực không cần NMS: Các ứng dụng hưởng lợi từ khả năng phát hiện end-to-end không cần Non-Maximum Suppression, giúp giảm độ phức tạp khi triển khai.
- Cân bằng giữa tốc độ và độ chính xác: Các dự án cần sự cân bằng tốt giữa tốc độ inference và độ chính xác phát hiện trên nhiều quy mô model.
- Ứng dụng cần độ trễ ổn định: Các tình huống triển khai yêu cầu thời gian inference có thể dự đoán, chẳng hạn như robotics hoặc hệ thống tự hành.
Khi nào nên chọn Ultralytics (YOLO26)#
Với hầu hết dự án mới, Ultralytics YOLO26 mang đến sự kết hợp tốt nhất giữa hiệu năng và trải nghiệm dành cho nhà phát triển:
- Triển khai trên thiết bị biên không cần NMS: Các ứng dụng cần inference có độ trễ thấp và ổn định mà không phải xử lý hậu kỳ Non-Maximum Suppression phức tạp.
- Môi trường chỉ có CPU: Các thiết bị không có GPU tăng tốc chuyên dụng, nơi tốc độ CPU inference nhanh hơn đến 43% của YOLO26 mang lại lợi thế rõ rệt.
- Phát hiện vật thể nhỏ: Các tình huống khó như ảnh chụp từ drone trên không hoặc phân tích cảm biến IoT, trong đó ProgLoss và STAL cải thiện đáng kể độ chính xác khi phát hiện vật thể rất nhỏ.
Ưu thế của Ultralytics: Giới thiệu YOLO26#
Mặc dù RTDETRv2 và YOLOv10 đều có những tiến bộ học thuật đáng chú ý, việc triển khai trong thực tế đòi hỏi hệ sinh thái phần mềm mạnh mẽ, được duy trì tốt. Nền tảng Ultralytics mang đến trải nghiệm phát triển vượt trội, kết hợp tính dễ sử dụng, tài liệu phong phú cùng các công cụ mạnh mẽ để gán nhãn dữ liệu và triển khai.
Với nhà phát triển muốn sử dụng công nghệ tiên tiến nhất năm 2026, Ultralytics YOLO26 là lựa chọn hàng đầu. Model tổng hợp những ý tưởng tốt nhất từ cả hai kiến trúc đồng thời giới thiệu các cải tiến đột phá:
- Thiết kế end-to-end không cần NMS: Dựa trên khái niệm do YOLOv10 tiên phong, YOLO26 cung cấp head một-một tùy chọn (
nms=False) bỏ qua hậu xử lý NMS, giúp logic triển khai nhanh hơn, đơn giản hơn và độ trễ nhất quán hơn. - Loại bỏ DFL: Bằng cách loại bỏ Distribution Focal Loss, YOLO26 đơn giản hóa việc xuất model và cải thiện đáng kể khả năng tương thích với thiết bị biên cũng như thiết bị công suất thấp.
- Optimizer MuSGD: Là sự kết hợp giữa SGD và Muon (lấy cảm hứng từ các đổi mới trong huấn luyện LLM), optimizer mới này giúp huấn luyện ổn định hơn và hội tụ nhanh hơn đáng kể so với các phương pháp truyền thống.
- Suy luận CPU nhanh hơn đến 43%: Được tối ưu hóa cẩn thận cho môi trường không có GPU chuyên dụng, giúp phổ cập AI thị giác hiệu năng cao.
- ProgLoss + STAL: Các hàm loss tiên tiến này cải thiện đáng kể khả năng nhận diện đối tượng nhỏ, yếu tố quan trọng trong ứng dụng sử dụng drone và cảm biến IoT.
- Tính linh hoạt vượt trội: Không giống các model chỉ hỗ trợ hộp giới hạn, YOLO26 hỗ trợ đầy đủ các tác vụ như phân đoạn instance, ước tính tư thế, phân loại ảnh và phát hiện OBB, đồng thời có các cải tiến chuyên biệt cho từng tác vụ như Ước tính hợp lý log phần dư (RLE) cho tư thế.
Triển khai liền mạch bằng Python#
Quy trình huấn luyện và triển khai các model này bằng API Python của Ultralytics được thiết kế để diễn ra thuận lợi. So với các kiến trúc phụ thuộc nhiều vào Transformer, yêu cầu bộ nhớ trong quá trình huấn luyện thấp hơn đáng kể, cho phép bạn huấn luyện các model mạnh mẽ trên phần cứng phổ thông.
from ultralytics import YOLO
# Tải model YOLO26 tiên tiến nhất (được khuyến nghị)
# Hoặc tải model YOLOv10 bằng YOLO('yolov10n.pt')
model = YOLO("yolo26n.pt")
# Huấn luyện model trên dataset tùy chỉnh của bạn
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Dễ dàng xuất sang nhiều định dạng để triển khai trên thiết bị biên
model.export(format="onnx", simplify=True)Dù bạn triển khai hệ thống báo động an ninh hay thực hiện phân tích ảnh y tế, lựa chọn model được cộng đồng Ultralytics tích cực hỗ trợ sẽ đảm bảo bạn có các công cụ, hướng dẫn tinh chỉnh siêu tham số và bản cập nhật liên tục cần thiết để thành công. YOLOv10 và RTDETRv2 đã mở đường cho kiến trúc không cần NMS, còn YOLO26 hoàn thiện công thức này, mang lại sự cân bằng tối ưu giữa hiệu năng, tính linh hoạt và khả năng sẵn sàng cho môi trường production.