Chuyển đến nội dung

YOLOv10 so với YOLOX: Sự tiến hóa của công nghệ Anchor-Free và NMS - Phát hiện đối tượng miễn phí

Lĩnh vực thị giác máy tính được thúc đẩy bởi những tiến bộ nhanh chóng trong kiến ​​trúc phát hiện đối tượng thời gian thực. Bài so sánh kỹ thuật chi tiết này khám phá hai mô hình có ảnh hưởng lớn, đã đẩy mạnh giới hạn về hiệu quả và các mô hình thiết kế: YOLOv10YOLOX . Bằng cách xem xét sự khác biệt về kiến ​​trúc, các chỉ số hiệu suất và phương pháp huấn luyện của chúng, các nhà phát triển và nhà nghiên cứu có thể đưa ra quyết định sáng suốt để triển khai các hệ thống thị giác mạnh mẽ.

Thông tin về nguồn gốc và xuất thân của người mẫu

Việc hiểu rõ nguồn gốc của các mô hình học sâu này cung cấp bối cảnh có giá trị liên quan đến mục tiêu kiến ​​trúc và các trường hợp sử dụng cụ thể của chúng.

YOLOv10 Loại bỏ NMS Để phát hiện từ đầu đến cuối thực sự

Được phát triển để giải quyết các nút thắt cổ chai về độ trễ đã tồn tại lâu nay, YOLOv10 đã giới thiệu một phương pháp đầu cuối nguyên bản cho dòng YOLO.

Tìm hiểu thêm về YOLOv10

YOLOX: Thu hẹp khoảng cách giữa nghiên cứu và công nghiệp

YOLOX xuất hiện như một phiên bản không cần neo của mô hình truyền thống. YOLO Thiết kế này mang đến phương pháp đơn giản hơn với hiệu suất cạnh tranh, đặc biệt nhằm mục đích tạo điều kiện thuận lợi cho việc triển khai trong các cộng đồng công nghiệp.

Tìm hiểu thêm về YOLOX

Điểm nổi bật và Đổi mới kiến trúc

Cả hai framework đều khác biệt so với các bộ detect dựa trên neo (anchor-based) truyền thống, nhưng chúng giải quyết các vấn đề khác nhau trong quy trình detect vật thể.

Kiến trúc YOLOX

Năm 2021, YOLOX đã mang đến một số cập nhật quan trọng cho hệ sinh thái. Đóng góp chính của nó là chuyển sang thiết kế bộ dò không cần neo . Bằng cách loại bỏ các hộp neo được xác định trước, YOLOX đã giảm đáng kể số lượng tham số thiết kế và điều chỉnh theo kinh nghiệm cần thiết cho các tập dữ liệu khác nhau.

Hơn nữa, YOLOX sử dụng một đầu xử lý tách rời , phân biệt nhiệm vụ phân loại và hồi quy. Điều này giải quyết được xung đột giữa hai mục tiêu, giúp tăng tốc đáng kể quá trình hội tụ trong quá trình huấn luyện. Nó cũng sử dụng SimOTA để gán nhãn nâng cao, cải thiện khả năng xử lý các cảnh đông đúc và hiện tượng che khuất thường gặp trong tập dữ liệu COCO .

Lợi thế không neo

Các thiết kế không neo, như kiến trúc được YOLOX tiên phong, giảm đáng kể độ phức tạp của việc tinh chỉnh mô hình. Các nhà phát triển không còn cần thực hiện phân cụm k-means trên các tập dữ liệu tùy chỉnh để xác định kích thước hộp neo tối ưu, tiết kiệm thời gian chuẩn bị quý báu.

Kiến trúc YOLOv10

Mặc dù YOLOX đã cải tiến đầu dò, nhưng nó vẫn dựa vào phương pháp loại bỏ cực đại không tối đa (Non-Maximum Suppression) NMS ) trong quá trình suy luận, gây ra sự biến đổi về độ trễ. YOLOv10 đã nhắm mục tiêu cụ thể vào lỗi này bằng cách giới thiệu chiến lược gán kép nhất quán cho NMS - huấn luyện miễn phí. Trong quá trình huấn luyện, nó sử dụng cả gán nhãn một-nhiều và một-một, nhưng trong quá trình suy luận, nó loại bỏ hoàn toàn đầu nối một-nhiều, đưa ra các dự đoán sạch mà không cần. NMS xử lý hậu kỳ.

YOLOv10 Ngoài ra, mô hình này còn có thiết kế hướng đến hiệu quả và độ chính xác toàn diện. Nó tích hợp các đầu phân loại nhẹ và lấy mẫu giảm không gian-kênh, giúp giảm đáng kể số lượng tham số và FLOPs mà không làm giảm độ chính xác.

So sánh hiệu suất

Đánh giá các mô hình này trên phần cứng như... NVIDIA T4 GPU Mỗi phương pháp đều cho thấy những ưu điểm riêng biệt tùy thuộc vào quy mô. Bảng so sánh toàn diện được trình bày bên dưới.

Mô hìnhKích thước
(pixels)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
Tham số
(M)
FLOPs
(B)
YOLOv10n64039.5-1.562.36.7
YOLOv10s64046.7-2.667.221.6
YOLOv10m64051.3-5.4815.459.1
YOLOv10b64052.7-6.5424.492.0
YOLOv10l64053.3-8.3329.5120.3
YOLOv10x64054.4-12.256.9160.4
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Như đã thấy ở trên, YOLOv10 có khả năng mở rộng đặc biệt tốt. Các YOLOv10x biến thể đạt độ chính xác cao nhất (54.4 mAP), trong khi YOLOv10n biến thể này cung cấp khả năng suy luận nhanh nhất bằng cách sử dụng TensorRT tích hợp. Ngược lại, mẫu YOLOX nano truyền thống có kích thước tổng thể nhỏ nhất, phù hợp với những môi trường bị hạn chế không gian nghiêm ngặt.

Phương pháp đào tạo và yêu cầu về nguồn lực

Khi triển khai các mô hình để đưa vào sản xuất, hệ sinh thái huấn luyện và nhu cầu tài nguyên cũng quan trọng không kém tốc độ suy luận thô.

YOLOX thường dựa vào các cấu hình môi trường cũ, gây khó khăn trong việc quản lý. Hơn nữa, mã nguồn cũ của nó đòi hỏi nhiều mã mẫu hơn để đạt được nhiều chức năng. GPU Huấn luyện phân tán hoặc tối ưu hóa độ chính xác hỗn hợp.

Ngược lại, YOLOv10 tích hợp mượt mà với các hệ thống hiện đại PyTorch các quy trình làm việc, nhưng chính hệ sinh thái Ultralytics mới thực sự biến đổi trải nghiệm của nhà phát triển. Ultralytics các mô hình được đặc trưng bởi mức thấp hơn đáng kể CUDA Mức sử dụng bộ nhớ trong quá trình huấn luyện so với các kiến ​​trúc dựa trên Transformer như RT-DETR .

Ví dụ mã: Huấn luyện tinh gọn

Sử dụng phương pháp thống nhất Ultralytics Với API này, bạn có thể dễ dàng huấn luyện các mô hình hiện đại chỉ với vài dòng mã. Python Điều này giúp tránh việc biên dịch thủ công các toán tử C++ hoặc các tệp cấu hình phức tạp.

from ultralytics import YOLO

# Initialize a pre-trained YOLOv10 model
model = YOLO("yolov10s.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Validate the model's performance
metrics = model.val()

# Export the optimized model to ONNX format
model.export(format="onnx")

Cú pháp đơn giản này cung cấp khả năng truy cập tức thì vào độ chính xác hỗn hợp tự động , tăng cường dữ liệu tự động và tích hợp với các công cụ như Weights & Biases ngay từ đầu.

Các trường hợp sử dụng và Khuyến nghị

Việc lựa chọn giữa YOLOv10 và YOLOX phụ thuộc vào các yêu cầu dự án cụ thể, ràng buộc triển khai và ưu tiên hệ sinh thái của bạn.

Khi nào nên chọn YOLOv10

YOLOv10 là một lựa chọn tốt cho:

  • detect thời gian thực không NMS: Các ứng dụng hưởng lợi từ detect end-to-end mà không cần Non-Maximum Suppression, giảm độ phức tạp khi triển khai.
  • Đánh đổi cân bằng giữa tốc độ và độ chính xác: Các dự án yêu cầu sự cân bằng mạnh mẽ giữa tốc độ suy luận và độ chính xác detect trên các quy mô mô hình khác nhau.
  • Ứng dụng có độ trễ nhất quán: Các kịch bản triển khai mà thời gian suy luận có thể dự đoán được là rất quan trọng, chẳng hạn như trong robot học hoặc các hệ thống tự hành.

Khi nào nên chọn YOLOX

YOLOX được khuyên dùng cho:

  • Nghiên cứu detect không Anchor: Nghiên cứu học thuật sử dụng kiến trúc không anchor, gọn gàng của YOLOX làm cơ sở để thử nghiệm các đầu detect mới hoặc hàm mất mát.
  • Thiết bị biên siêu nhẹ: Triển khai trên vi điều khiển hoặc phần cứng di động cũ, nơi dấu chân cực nhỏ của biến thể YOLOX-Nano (0.91M tham số) là rất quan trọng.
  • Nghiên cứu gán nhãn SimOTA: Các dự án nghiên cứu điều tra các chiến lược gán nhãn dựa trên vận chuyển tối ưu và tác động của chúng đến sự hội tụ huấn luyện.

Khi nào nên lựa chọn Ultralytics (YOLO26)

Đối với hầu hết các dự án mới, Ultralytics YOLO26 cung cấp 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 biên không NMS: Các ứng dụng yêu cầu suy luận nhất quán, độ trễ thấp mà không cần sự phức tạp của xử lý hậu kỳ Non-Maximum Suppression.
  • Môi trường chỉ có CPU: Các thiết bị không có tăng tốc GPU chuyên dụng, nơi khả năng suy luận CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
  • Detect đối tượng nhỏ: Các kịch bản đầy thách thức như hình ảnh từ máy bay không người lái hoặc phân tích cảm biến IoT, nơi ProgLoss và STAL tăng cường đáng kể độ chính xác trên các đối tượng rất nhỏ.

Tương lai của Trí tuệ Nhân tạo Thị giác: Hãy cùng chào đón YOLO26

Trong khi YOLOv10 và YOLOX đại diện cho những cột mốc quan trọng, lĩnh vực thị giác máy tính đang không ngừng tiến bộ. Đối với các nhà phát triển bắt đầu các dự án mới ngày nay, Ultralytics YOLO26 là sự lựa chọn tối ưu.

Ra mắt vào tháng 1 năm 2026, Ultralytics YOLO26 được xây dựng dựa trên bước đột phá nền tảng của thiết kế hoàn toàn không cần NMS do tiên phong bởi YOLOv10 , tinh chỉnh nó để đạt được độ ổn định và tốc độ cao hơn nữa.

YOLO26 nổi bật nhờ mang đến một số bước tiến vượt bậc:

  • Tăng tốc suy luận trên CPU lên đến 43%: Bằng cách loại bỏ chiến lược Distribution Focal Loss (DFL), YOLO26 đạt được hiệu suất vượt trội đáng kể trên các thiết bị biên không có GPU.
  • Trình tối ưu hóa MuSGD: Lấy cảm hứng từ sự ổn định trong huấn luyện LLM, sự kết hợp lai mới giữa SGD và Muon này đảm bảo hội tụ nhanh hơn và các lần huấn luyện rất ổn định.
  • ProgLoss + STAL: Các hàm mất mát tiên tiến này mang lại những cải tiến đáng kể trong việc nhận diện vật thể nhỏ, một yếu tố quan trọng cho ảnh chụp từ trên không và cảm biến IoT.
  • Tính linh hoạt vượt trội: Không giống như YOLOX, vốn chỉ là một trình detect đối tượng, YOLO26 hỗ trợ nguyên bản Phân đoạn đối tượng, Ước tính tư thế, Phân loại ảnhPhát hiện OBB trong một thư viện thống nhất duy nhất.

Tìm hiểu thêm về YOLO26

Tận dụng Ultralytics Nền tảng

Để đơn giản hóa quá trình triển khai, các nhà phát triển có thể sử dụng Nền tảng Ultralytics để chú thích tập dữ liệu, huấn luyện mô hình YOLO26 trên đám mây và triển khai đến bất kỳ thiết bị biên nào mà không cần thiết lập gì.

Các ứng dụng thực tế

Việc lựa chọn mô hình phù hợp quyết định sự thành công của các triển khai trong thế giới thực trên nhiều ngành công nghiệp khác nhau.

Phân tích video tốc độ cao

Đối với việc xử lý các luồng video có mật độ dữ liệu cao, chẳng hạn như quản lý giao thông thành phố thông minh, YOLOv10 mang lại lợi thế đáng kể nhờ vào các tính năng của nó. NMS - Xử lý hậu kỳ miễn phí. Loại bỏ NMS Công nghệ bottleneck cho phép duy trì độ trễ thấp ổn định, lý tưởng để kết hợp với các thuật toán theo dõi như BoT-SORT .

Triển khai Edge cũ

Dành cho các cơ sở học thuật cũ hoặc hệ thống kế thừa. Android Trong các ứng dụng được tối ưu hóa cao cho các mô hình tích chập thuần túy, các mô hình nhỏ hơn như YOLOX-Tiny vẫn có thể tìm thấy các trường hợp sử dụng chuyên biệt mà việc duy trì các mô hình cũ hơn là cần thiết. PyTorch Môi trường là một sự đánh đổi được chấp nhận.

Các thiết bị biên và IoT hiện đại

Đối với các triển khai phần cứng thế hệ tiếp theo, chẳng hạn như robot, máy bay không người lái và phân tích kệ hàng bán lẻ, YOLO26 là giải pháp tối ưu. Chi phí của nó đã được giảm đáng kể. CPU Độ trễ thấp và khả năng phát hiện vật thể nhỏ vượt trội khiến nó trở nên đặc biệt phù hợp cho việc điều hướng tự động và quản lý kho hàng chi tiết.

Để có thêm những so sánh và mở rộng bộ công cụ học sâu của bạn, bạn cũng có thể khám phá xem các mô hình này hoạt động như thế nào so với các lựa chọn thay thế như YOLO11 linh hoạt hoặc RT-DETR dựa trên kiến ​​trúc Transformer.


Bình luận