Chuyển đến nội dung

So sánh kỹ thuật YOLOX và YOLOv10

Việc lựa chọn mô hình phát hiện đối tượng tối ưu là điều cần thiết để cân bằng độ chính xác, tốc độ và yêu cầu tính toán trong các dự án thị giác máy tính. Trang này cung cấp so sánh kỹ thuật chi tiết giữa YOLOXYOLOv10, hai mô hình quan trọng trong lĩnh vực phát hiện đối tượng. Chúng ta sẽ phân tích kiến trúc, số liệu hiệu suất và các trường hợp sử dụng lý tưởng của chúng để giúp bạn chọn lựa mô hình phù hợp nhất với nhu cầu của mình.

YOLOX: Công cụ phát hiện không mỏ neo hiệu suất cao

YOLOX là một mô hình phát hiện đối tượng không neo được phát triển bởi Megvii, nhằm mục đích đơn giản hóa thiết kế YOLO đồng thời đạt được hiệu suất cao. Được giới thiệu vào năm 2021, nó tìm cách thu hẹp khoảng cách giữa nghiên cứu và các ứng dụng công nghiệp bằng cách đề xuất một phương pháp thay thế trong dòng YOLO.

Chi tiết kỹ thuật:

Kiến trúc và các tính năng chính

YOLOX triển khai một số thay đổi kiến trúc quan trọng so với các mô hình YOLO trước đó, tập trung vào sự đơn giản và hiệu suất:

  • Thiết Kế Không Dựa trên Anchor: Bằng cách loại bỏ các hộp neo (anchor box) được xác định trước, YOLOX đơn giản hóa quy trình phát hiện và giảm số lượng siêu tham số cần điều chỉnh. Điều này có thể dẫn đến khả năng tổng quát hóa được cải thiện trên các bộ dữ liệu và kích thước đối tượng khác nhau.
  • Head tách rời: Nó sử dụng các head riêng biệt cho các tác vụ phân loại và định vị. Sự tách biệt này có thể cải thiện tốc độ hội tụ và giải quyết sự sai lệch giữa độ tin cậy phân loại và độ chính xác định vị, một vấn đề phổ biến trong các detector một giai đoạn.
  • Chiến Lược Huấn Luyện Nâng Cao: Mô hình kết hợp các kỹ thuật tiên tiến như SimOTA (Gán Nhãn Tối Ưu Đơn Giản Hóa) để gán nhãn động trong quá trình huấn luyện. Nó cũng tận dụng các phương pháp tăng cường dữ liệu mạnh mẽ như MixUp để tăng cường tính mạnh mẽ của mô hình.

Điểm mạnh và Điểm yếu

Điểm mạnh:

  • Độ chính xác cao: YOLOX đạt được điểm mAP mạnh mẽ, đặc biệt là với các biến thể lớn hơn như YOLOX-x, khiến nó trở thành một lựa chọn đáng tin cậy cho các tác vụ quan trọng về độ chính xác.
  • Đơn giản nhờ loại bỏ Anchor: Thiết kế này giúp giảm độ phức tạp liên quan đến cấu hình hộp neo (anchor box), vốn là một phần khó khăn trong quá trình huấn luyện các detector khác.
  • Mô Hình Đã Được Thiết Lập: Vì đã có mặt từ năm 2021, YOLOX có một nền tảng hoàn thiện về tài nguyên cộng đồng, hướng dẫn và ví dụ triển khai.

Điểm yếu:

  • Tốc độ và hiệu quả suy luận: Mặc dù hiệu quả vào thời điểm đó, nhưng nó có thể chậm hơn và tốn nhiều tài nguyên tính toán hơn so với các mô hình gần đây được tối ưu hóa cao như YOLOv10, đặc biệt khi so sánh các mô hình có độ chính xác tương tự.
  • Hệ sinh thái bên ngoài: YOLOX không được tích hợp nguyên bản vào hệ sinh thái Ultralytics. Điều này có thể có nghĩa là cần nhiều nỗ lực thủ công hơn để triển khai, tối ưu hóa với các công cụ như TensorRT và tích hợp với các nền tảng như Ultralytics HUB.
  • Tính linh hoạt của tác vụ: Nó chủ yếu tập trung vào phát hiện đối tượng và thiếu sự hỗ trợ tích hợp cho các tác vụ thị giác khác như phân đoạn thể hiện, ước tính tư thế hoặc phát hiện hộp giới hạn theo hướng đối tượng được tìm thấy trong các framework mới hơn, linh hoạt hơn như Ultralytics YOLOv8.

Các Trường hợp Sử dụng

YOLOX phù hợp cho:

  • Phát hiện đối tượng tổng quát: Các ứng dụng yêu cầu sự cân bằng vững chắc giữa độ chính xác và tốc độ, chẳng hạn như hệ thống an ninh và phân tích bán lẻ.
  • Nền tảng Nghiên cứu: Thiết kế không mỏ neo của nó làm cho nó trở thành một nền tảng có giá trị cho các nhà nghiên cứu khám phá các phương pháp phát hiện đối tượng mới.
  • Các ứng dụng công nghiệp: Các tác vụ như kiểm soát chất lượng tự động, nơi độ chính xác phát hiện cao là yêu cầu hàng đầu.

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

YOLOv10: Công cụ dò tìm End-to-End theo thời gian thực tiên tiến

Ultralytics YOLOv10, được phát triển bởi các nhà nghiên cứu tại Đại học Thanh Hoa, đại diện cho một tiến bộ đáng kể trong việc phát hiện đối tượng theo thời gian thực bằng cách tập trung vào hiệu quả end-to-end. Nó giải quyết các tắc nghẽn hậu xử lý và tối ưu hóa kiến trúc để có hiệu suất vượt trội trên ranh giới tốc độ-độ chính xác.

Chi tiết kỹ thuật:

Kiến trúc và các tính năng chính

YOLOv10 giới thiệu một số cải tiến để đạt được hiệu quả hàng đầu:

  • Huấn luyện không NMS: Nó sử dụng gán nhãn kép nhất quán trong quá trình huấn luyện để loại bỏ sự cần thiết của Non-Maximum Suppression (NMS) trong quá trình suy luận. Sự đổi mới này làm giảm độ trễ suy luận và đơn giản hóa quy trình triển khai, cho phép một bộ phát hiện đầu cuối thực sự.
  • Thiết kế toàn diện về hiệu quả và độ chính xác: Kiến trúc mô hình được thiết kế với một phương pháp tiếp cận toàn diện để tối ưu hóa các thành phần khác nhau. Điều này bao gồm một lớp classification head (đầu phân loại) gọn nhẹ và giảm tỷ lệ lấy mẫu không gian-kênh được tách rời, giúp giảm sự dư thừa tính toán và tăng cường khả năng của mô hình mà không làm giảm độ chính xác.
  • Nhẹ và có khả năng mở rộng: YOLOv10 tập trung vào việc giảm tham số và FLOPs, dẫn đến tốc độ suy luận nhanh hơn, phù hợp với nhiều loại phần cứng khác nhau, từ GPU cao cấp đến thiết bị biên có tài nguyên hạn chế.

Điểm mạnh và Điểm yếu

Điểm mạnh:

  • Tốc độ và Hiệu quả Vượt trội: YOLOv10 được tối ưu hóa cho suy luận thời gian thực, độ trễ thấp, vượt trội hơn nhiều mô hình khác về tốc độ trong khi vẫn duy trì độ chính xác cao.
  • Suy luận không NMS: Việc loại bỏ NMS giúp đơn giản hóa quá trình triển khai và tăng tốc quá trình hậu xử lý, đây là một lợi thế quan trọng trong các ứng dụng nhạy cảm về thời gian.
  • Hiệu suất vượt trội: Nó đặt ra một tiêu chuẩn mới cho sự đánh đổi giữa độ chính xác và hiệu quả, như được thấy trong bảng hiệu suất.
  • Tích hợp hệ sinh thái Ultralytics: YOLOv10 được tích hợp liền mạch vào hệ sinh thái Ultralytics, được hưởng lợi từ Python API thân thiện với người dùng, tài liệu mở rộng và bảo trì tích cực.
  • Dễ sử dụng: Mô hình tuân theo trải nghiệm người dùng được tối ưu hóa điển hình của các mô hình Ultralytics, giúp dễ dàng huấn luyện, xác thực và triển khai.
  • Hiệu quả huấn luyện: Cung cấp quy trình huấn luyện hiệu quả với các weights đã được huấn luyện trước có sẵn và thường có yêu cầu bộ nhớ thấp hơn so với các kiến trúc phức tạp hơn.

Điểm yếu:

  • Tương đối mới: Vì là một mô hình gần đây hơn, phạm vi của các ví dụ do cộng đồng đóng góp và tích hợp của bên thứ ba có thể vẫn đang phát triển so với các mô hình đã được thiết lập lâu đời như YOLOX.

Các Trường hợp Sử dụng

YOLOv10 lý tưởng cho các ứng dụng thời gian thực đòi hỏi khắt khe, nơi cả tốc độ và độ chính xác đều rất quan trọng:

  • Edge AI: Hoàn hảo để triển khai trên các thiết bị hạn chế về tài nguyên như Raspberry PiNVIDIA Jetson.
  • Hệ thống thời gian thực: Ứng dụng trong xe tự hành, robotics, phân tích video tốc độ cao và giám sát.
  • Xử lý năng suất cao: Kiểm tra công nghiệp, logistics và các ứng dụng khác đòi hỏi phân tích nhanh chóng một lượng lớn hình ảnh hoặc luồng video.

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

Phân tích hiệu năng: YOLOX so với YOLOv10

Bảng sau cung cấp so sánh chi tiết về các số liệu hiệu suất cho các kích thước mô hình khác nhau của YOLOX và YOLOv10, được đánh giá trên bộ dữ liệu COCO.

Mô hình Kích thước
(pixels)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
Tham số
(M)
FLOPs
(B)
YOLOXnano 416 25.8 - - 0.91 1.08
YOLOXtiny 416 32.8 - - 5.06 6.45
YOLOXs 640 40.5 - 2.56 9.0 26.8
YOLOXm 640 46.9 - 5.43 25.3 73.8
YOLOXl 640 49.7 - 9.04 54.2 155.6
YOLOXx 640 51.1 - 16.1 99.1 281.9
YOLOv10n 640 39.5 - 1.56 2.3 6.7
YOLOv10s 640 46.7 - 2.66 7.2 21.6
YOLOv10m 640 51.3 - 5.48 15.4 59.1
YOLOv10b 640 52.7 - 6.54 24.4 92.0
YOLOv10l 640 53.3 - 8.33 29.5 120.3
YOLOv10x 640 54.4 - 12.2 56.9 160.4

Dữ liệu cho thấy rõ ràng rằng YOLOv10 liên tục mang lại sự đánh đổi vượt trội giữa độ chính xác và hiệu quả.

  • YOLOv10-s đạt được mAP gần như tương đương với YOLOX-m (46,7% so với 46,9%) nhưng với ít hơn 72% tham số (7,2M so với 25,3M) và ít hơn 70% FLOPs (21,6B so với 73,8B).
  • YOLOv10-m vượt qua độ chính xác của YOLOX-l (51,3% so với 49,7%) đồng thời hiệu quả hơn đáng kể về mặt tham số và tính toán.
  • Ở phân khúc cao cấp, YOLOv10-x mang lại mAP cao hơn nhiều so với YOLOX-x (54.4% so với 51.1%) với ít hơn 43% tham sốít hơn 43% FLOPs.

Kết luận

Cả YOLOX và YOLOv10 đều là những mô hình phát hiện đối tượng mạnh mẽ, nhưng chúng phục vụ cho các ưu tiên khác nhau. YOLOX là một trình phát hiện không cần neo vững chắc và đã được thiết lập, mang lại độ chính xác cao, khiến nó trở thành một lựa chọn khả thi cho các dự án mà hệ sinh thái của nó đã được thiết lập.

Tuy nhiên, đối với các nhà phát triển và nhà nghiên cứu đang tìm kiếm sự cân bằng tốt nhất giữa tốc độ, độ chính xác và dễ sử dụng, YOLOv10 là người chiến thắng rõ ràng. Kiến trúc không NMS cải tiến của nó cung cấp một quy trình phát hiện đầu cuối thực sự, dẫn đến độ trễ thấp hơn và hiệu quả cao hơn. Việc tích hợp liền mạch vào hệ sinh thái Ultralytics càng nâng cao sức hấp dẫn của nó, cung cấp quy trình làm việc được sắp xếp hợp lý, tài liệu mở rộng và hỗ trợ cộng đồng mạnh mẽ.

Đối với những ai quan tâm đến việc khám phá các mô hình hiện đại khác, Ultralytics cung cấp một loạt các tùy chọn, bao gồm YOLOv8 rất linh hoạt và YOLO11 mới nhất, cung cấp các khả năng đa nhiệm như phân đoạn, phân loại và ước tính tư thế. Bạn có thể khám phá thêm các so sánh, chẳng hạn như YOLOv10 so với YOLOv8, để tìm mô hình hoàn hảo cho nhu cầu cụ thể của bạn.



📅 Đã tạo 1 năm trước ✏️ Đã cập nhật 1 tháng trước

Bình luận