Chuyển đến nội dung

RTDETRv2 so với YOLOX: So sánh kỹ thuật để phát hiện đối tượng theo thời gian thực

Trong bối cảnh thị giác máy tính đang phát triển nhanh chóng, việc tìm kiếm sự cân bằng tối ưu giữa tốc độ và độ chính xác tiếp tục thúc đẩy sự đổi mới. Hai phương pháp tiếp cận riêng biệt đã nổi lên như những người tiên phong: RTDETRv2 dựa trên Transformer và YOLOX dựa trên CNN không cần neo. Bài so sánh này khám phá sự khác biệt về 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 các nhà phát triển lựa chọn công cụ phù hợp với nhu cầu cụ thể của mình.

Tổng quan về mô hình

Trước khi đi sâu vào các thông số kỹ thuật, chúng ta hãy cùng tìm hiểu nguồn gốc và triết lý cốt lõi của hai mô hình có ảnh hưởng này.

RTDETRv2

RTDETRv2 (Real-Time DEtection Transformer phiên bản 2) là một bước tiến đáng kể trong việc đưa kiến trúc Transformer vào các ứng dụng thời gian thực. Được phát triển bởi các nhà nghiên cứu tại Baidu, RTDETRv2 được xây dựng dựa trên nền tảng ban đầu. RT-DETR bằng cách giới thiệu "Túi quà tặng miễn phí" giúp tăng cường độ ổn định và hiệu suất đào tạo mà không làm tăng độ trễ suy luận. Giải pháp này nhằm mục đích giải quyết chi phí tính toán cao thường gặp ở Vision Transformers (ViTs) đồng thời vượt trội hơn các bộ phát hiện CNN truyền thống về độ chính xác.

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

YOLOX

YOLOX đã hồi sinh YOLO gia đình vào năm 2021 bằng cách chuyển sang cơ chế không neo và kết hợp các kỹ thuật tiên tiến như đầu tách rời và gán nhãn SimOTA. Mặc dù vẫn giữ nguyên đặc điểm xương sống theo phong cách Darknet của YOLO Dòng sản phẩm này, những thay đổi về kiến trúc đã giải quyết được nhiều hạn chế của các máy dò dạng neo, tạo ra một mô hình hiệu quả cao và linh hoạt, hoạt động cực kỳ tốt trên các thiết bị biên.

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

Phân tích hiệu suất

Sự đánh đổi hiệu suất giữa RTDETRv2 và YOLOX là khác biệt. RTDETRv2 ưu tiên độ chính xác cao nhất ( mAP ), tận dụng cơ chế chú ý toàn cục của máy biến áp để hiểu rõ hơn các cảnh phức tạp và các vật thể bị che khuất. Tuy nhiên, điều này đi kèm với nhu cầu tính toán cao hơn, đặc biệt là liên quan đến GPU sử dụng bộ nhớ.

Ngược lại, YOLOX được tối ưu hóa về tốc độ và hiệu quả . Thiết kế không có điểm neo giúp đơn giản hóa đầu dò, giảm số lượng tham số thiết kế và tăng tốc quá trình hậu xử lý ( NMS ). Các mô hình YOLOX, đặc biệt là các biến thể Nano và Tiny, thường được ưu tiên triển khai AI ở biên giới nơi tài nguyên phần cứng bị hạn chế.

Bảng dưới đây nêu bật những khác biệt này. Lưu ý rằng trong khi RTDETRv2 đạt được hiệu suất cao hơn mAP điểm số, YOLOX-s cung cấp tốc độ suy luận nhanh hơn trên TensorRT , minh họa tính phù hợp của nó đối với các ứng dụng nhạy cảm với độ trễ.

Mô hìnhKích thước
(pixels)
mAP giá trị
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
Tham số
(M)
FLOPs
(B)
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259
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

Kiến trúc sâu sắc

Hiểu được sự khác biệt về cấu trúc giúp làm rõ lý do tại sao các mô hình này lại hoạt động khác nhau.

RTDETRv2: Bộ mã hóa-giải mã lai

RTDETRv2 giải quyết các điểm nghẽn tính toán của các mô hình DETR tiêu chuẩn bằng cách giới thiệu một bộ mã hóa lai hiệu quả . Thành phần này xử lý các đặc điểm đa tỷ lệ, tách biệt tương tác nội tỷ lệ (trong cùng một lớp đặc điểm) và hợp nhất liên tỷ lệ (giữa các lớp).

  • Lựa chọn truy vấn nhận biết IoU : Thay vì lựa chọn các truy vấn đối tượng tĩnh, RTDETRv2 lựa chọn một số lượng cố định các tính năng hình ảnh để làm truy vấn đối tượng ban đầu dựa trên điểm phân loại của chúng, giúp cải thiện quá trình khởi tạo.
  • Bộ giải mã linh hoạt: Bộ giải mã hỗ trợ điều chỉnh động số lượng truy vấn trong quá trình suy luận, cho phép người dùng cân bằng giữa tốc độ và độ chính xác mà không cần đào tạo lại.

YOLOX: Không neo và tách rời

YOLOX chuyển hướng khỏi mô hình dựa trên mỏ neo được sử dụng trong YOLOv4 và YOLOv5 .

  • Không cần neo: Bằng cách dự đoán trực tiếp tâm và kích thước của đối tượng, YOLOX loại bỏ nhu cầu thiết kế hộp neo thủ công, giảm độ phức tạp của việc điều chỉnh siêu tham số.
  • Đầu tách rời: Phân tách các tác vụ phân loại và hồi quy thành các nhánh khác nhau của đầu mạng. Sự phân tách này thường dẫn đến hội tụ nhanh hơn và độ chính xác cao hơn.
  • SimOTA: Một chiến lược gán nhãn nâng cao xem quá trình gán nhãn như một bài toán vận chuyển tối ưu, gán động các mẫu dương vào các giá trị thực dựa trên chi phí tối ưu hóa toàn cục.

Dựa trên neo so với không neo

Các máy dò truyền thống sử dụng các hộp được xác định trước (mỏ neo) để ước tính vị trí vật thể. YOLOX loại bỏ sự phụ thuộc này, đơn giản hóa kiến trúc và làm cho mô hình mạnh mẽ hơn với các hình dạng vật thể khác nhau. RTDETRv2 , là một bộ chuyển đổi, sử dụng truy vấn đối tượng thay vì hoàn toàn sử dụng mỏ neo, học cách xử lý các vùng ảnh liên quan một cách động.

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

RTDETRv2

  • Điểm mạnh:
    • Độ chính xác cao: đạt đến trình độ tiên tiến mAP TRÊN COCO chuẩn mực.
    • Bối cảnh toàn cầu: Cơ chế chú ý của máy biến áp nắm bắt hiệu quả các mối phụ thuộc tầm xa.
    • Khả năng thích ứng: Việc lựa chọn truy vấn có thể điều chỉnh cho phép linh hoạt tại thời điểm suy luận.
  • Điểm yếu:
    • Tài nguyên chuyên sâu: Yêu cầu đáng kể GPU bộ nhớ để đào tạo và suy luận so với CNN.
    • Đào tạo chậm hơn: Máy biến áp thường mất nhiều thời gian hội tụ hơn so với kiến trúc dựa trên CNN.

YOLOX

  • Điểm mạnh:
    • Tốc độ suy luận: Cực kỳ nhanh, đặc biệt là các biến thể nhỏ hơn (Nano, Tiny, S).
    • Dễ triển khai: Dễ triển khai hơn trên các thiết bị biên và CPU do số lượng FLOP và tham số thấp hơn.
    • Tính đơn giản: Thiết kế không có điểm neo giúp giảm độ phức tạp của kỹ thuật.
  • Điểm yếu:
    • Độ chính xác đỉnh thấp hơn: Khó có thể đạt được độ chính xác hàng đầu của các mẫu máy biến áp lớn như RTDETRv2-x.
    • Phát triển tính năng: Thiếu một số khả năng đa phương thức có trong các khuôn khổ mới hơn.

Lợi thế của Ultralytics: Tại sao nên chọn YOLO11?

Trong khi RTDETRv2 và YOLOX là những mô hình đáng gờm, hệ sinh thái Ultralytics YOLO —dẫn đầu là YOLO11 hiện đại—cung cấp giải pháp toàn diện thường vượt trội hơn lợi ích của từng mô hình riêng lẻ.

  • Cân bằng hiệu suất: YOLO11 được thiết kế để cung cấp sự cân bằng tối ưu giữa tốc độ và độ chính xác. Nó thường ngang bằng hoặc vượt trội hơn độ chính xác của các mô hình dựa trên bộ biến đổi trong khi vẫn duy trì đặc tính tốc độ suy luận của YOLO gia đình.
  • Dễ sử dụng: Ultralytics ưu tiên trải nghiệm của nhà phát triển. Với API Python thống nhất và CLI , bạn có thể đào tạo, xác thực và triển khai các mô hình chỉ bằng một vài dòng mã.
  • Hiệu quả bộ nhớ: Không giống như RTDETRv2, có thể nặng về GPU VRAM, YOLO11 có hiệu suất bộ nhớ cao trong cả quá trình đào tạo và suy luận. Điều này giúp các nhà nghiên cứu và nhà phát triển có phần cứng tiêu dùng dễ dàng tiếp cận.
  • Hệ sinh thái được duy trì tốt: Ultralytics Các mô hình được hỗ trợ bởi các bản cập nhật thường xuyên, cộng đồng năng động và tài liệu hướng dẫn phong phú. Các tính năng như Ultralytics HUB giúp quản lý mô hình và đào tạo đám mây liền mạch.
  • Tính linh hoạt: Vượt xa khả năng phát hiện đối tượng đơn giản, YOLO11 hỗ trợ phân đoạn trường hợp , ước tính tư thế , OBBphân loại , trong khi YOLOX và RTDETRv2 chủ yếu tập trung vào phát hiện.
  • Hiệu quả đào tạo: Với các trọng lượng được đào tạo trước có sẵn cho nhiều nhiệm vụ khác nhau và khả năng học chuyển giao tinh vi, YOLO11 giảm đáng kể thời gian và năng lượng cần thiết để đào tạo các mô hình có hiệu suất cao.

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

Ví dụ mã

Ultralytics giúp việc sử dụng các mô hình tiên tiến này trở nên cực kỳ dễ dàng. Dưới đây là một ví dụ về cách chạy suy luận bằng cách sử dụng YOLO11 và đáng chú ý là, Ultralytics cũng hỗ trợ RT-DETR trực tiếp, đơn giản hóa việc sử dụng đáng kể so với kho lưu trữ ban đầu.

from ultralytics import RTDETR, YOLO

# Load the Ultralytics YOLO11 model (Recommended)
model_yolo = YOLO("yolo11n.pt")

# Run inference on an image
results_yolo = model_yolo("path/to/image.jpg")

# Load an RT-DETR model via Ultralytics API
model_rtdetr = RTDETR("rtdetr-l.pt")

# Run inference with RT-DETR
results_rtdetr = model_rtdetr("path/to/image.jpg")

Kết luận

Sự lựa chọn giữa RTDETRv2YOLOX cuối cùng phụ thuộc vào những hạn chế cụ thể của bạn.

  • Chọn RTDETRv2 nếu ứng dụng của bạn yêu cầu độ chính xác cao nhất, chẳng hạn như trong nghiên cứu học thuật hoặc kiểm tra công nghiệp có độ chính xác cao và bạn có quyền truy cập vào GPU tài nguyên.
  • Chọn YOLOX nếu bạn triển khai trong môi trường hạn chế về tài nguyên như Raspberry Pi hoặc thiết bị di động, nơi mà từng mili giây độ trễ đều quan trọng.

Tuy nhiên, đối với phần lớn các ứng dụng thực tế, Ultralytics YOLO11 nổi lên như một lựa chọn toàn diện vượt trội. Nó kết hợp những lợi ích về độ chính xác của kiến trúc hiện đại với tốc độ và hiệu quả của CNN, tất cả được gói gọn trong một hệ sinh thái thân thiện với người dùng và sẵn sàng cho việc triển khai. Cho dù bạn đang xây dựng cho môi trường biên hay đám mây, YOLO11 cung cấp các công cụ và hiệu suất để thành công.

Khám Phá Các So Sánh Khác

Để có thêm thông tin hỗ trợ quyết định của bạn, hãy cân nhắc khám phá các so sánh mô hình khác:


Bình luận