Chuyển đến nội dung

YOLOX so với YOLOv7 So sánh kỹ thuật toàn diện

Sự phát triển của việc phát hiện đối tượng theo thời gian thực được thúc đẩy bởi những đột phá liên tục về kiến ​​trúc. Hai cột mốc quan trọng trong hành trình này là YOLOXYOLOv7 . Được phát hành cách nhau chỉ một năm, cả hai mô hình đều giới thiệu những phương pháp tiếp cận mới cho mô hình phát hiện đối tượng tiêu chuẩn, cải thiện đáng kể sự cân bằng giữa tốc độ và độ chính xác .

Trang này cung cấp phân tích kỹ thuật chuyên sâu về YOLOX và YOLOv7 So sánh kiến ​​trúc, chỉ số hiệu năng và 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 cho việc triển khai thị giác máy tính của họ.

YOLOX: Tiên phong trong công nghệ phát hiện không cần neo

Được các nhà nghiên cứu tại Megvii giới thiệu vào tháng 7 năm 2021, YOLOX đại diện cho một bước chuyển biến lớn bằng cách loại bỏ các thiết kế dựa trên neo truyền thống. Bằng cách thu hẹp khoảng cách giữa nghiên cứu học thuật và ứng dụng công nghiệp, YOLOX đã đơn giản hóa đầu dò và cải thiện hiệu suất tổng thể.

Thông tin chi tiết quan trọng về mẫu sản phẩm:

Đổi mới Kiến trúc

YOLOX đã giới thiệu phương pháp không cần neo (anchor-free) , giúp giảm đáng kể số lượng tham số thiết kế và tinh chỉnh thuật toán cần thiết cho các tập dữ liệu tùy chỉnh. Nó đã triển khai một đầu phân tách (decoupled head), tách biệt các tác vụ phân loại và hồi quy, giúp cải thiện tốc độ hội tụ và độ chính xác. Ngoài ra, YOLOX còn sử dụng các chiến lược tăng cường dữ liệu tiên tiến như... MixUp và Mosaic để tăng cường độ ổn định của mô hình.

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

Lợi thế không neo

Bằng cách loại bỏ các anchor box, YOLOX giảm chi phí tính toán khi tính toán Intersection over Union (IoU) giữa các dự đoán và ground truth trong quá trình huấn luyện, dẫn đến yêu cầu bộ nhớ CUDA thấp hơn và thời gian huấn luyện nhanh hơn.

YOLOv7: Trainable Bag-of-Freebies

Được các nhà nghiên cứu tại Viện Khoa học Thông tin, Viện Hàn lâm Khoa học Đài Loan công bố vào tháng 7 năm 2022. YOLOv7 Nó đã đẩy mạnh hơn nữa giới hạn của việc phát hiện đối tượng trong thời gian thực. Nó giới thiệu khái niệm "túi quà tặng có thể huấn luyện", thiết lập các chuẩn mực tiên tiến mới trên MS. COCO bộ dữ liệu khi được phát hành.

Thông tin chi tiết quan trọng về mẫu sản phẩm:

Đổi mới Kiến trúc

YOLOv7 Kiến trúc của mô hình được xây dựng dựa trên Mạng tổng hợp lớp hiệu quả mở rộng (E-ELAN), cho phép mô hình liên tục học hỏi nhiều đặc điểm đa dạng hơn mà không làm suy giảm đường dẫn gradient. Hơn nữa, YOLOv7 Đã sử dụng các kỹ thuật tái tham số hóa mô hình, cho phép đơn giản hóa các mạng huấn luyện đa nhánh phức tạp thành các mạng một đường dẫn nhanh hơn trong quá trình suy luận.

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

So sánh hiệu suất

Khi đánh giá các mô hình này cho các ứng dụng thực tế, việc hiểu rõ hiệu suất của chúng ở các quy mô khác nhau là rất quan trọng. Bảng dưới đây so sánh các chỉ số tiêu chuẩn cho các kích thước khác nhau của YOLOX và YOLOv7 .

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)
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
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Phân tích

  • Độ chính xác: YOLOv7 nhìn chung đạt mAP cao hơn so với các mô hình YOLOX tương đương. Chẳng hạn, YOLOv7x đạt 53.1 mAP so với 51.1 của YOLOXx.
  • Tốc độ: Mặc dù cả hai mô hình đều được tối ưu hóa cao cho việc thực thi GPU bằng TensorRT, kiến trúc E-ELAN của YOLOv7 cung cấp thông lượng tốt hơn một chút cho các ứng dụng cao cấp, mặc dù YOLOX vẫn duy trì độ trễ tuyệt vời trên các thiết bị biên nhỏ hơn.
  • Tính linh hoạt: YOLOv7 đã mở rộng khả năng của mình vượt ra ngoài hộp giới hạn bằng cách cung cấp tự nhiên các trọng số cho phân đoạn đối tượngước tính tư thế, làm cho nó linh hoạt hơn so với kho lưu trữ YOLOX cơ bản.

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

Việc lựa chọn giữa các mô hình này thường phụ thuộc vào môi trường triển khai cụ thể của bạn.

Điện toán biên và IoT

Đối với các thiết bị biên có tài nguyên hạn chế như Raspberry Pi hoặc các bộ xử lý di động đời cũ, YOLOX-NanoYOLOX-Tiny là những lựa chọn rất hấp dẫn. Số lượng tham số tối thiểu và tính chất không cần neo giúp chúng dễ dàng triển khai trong môi trường tiêu thụ điện năng thấp cho các tác vụ như theo dõi chuyển động cơ bản hoặc ứng dụng chuông cửa thông minh.

Phân tích video độ phân giải cao

Đối với việc xử lý các nguồn cấp dữ liệu độ phân giải cao trong phát hiện lỗi công nghiệp hoặc giám sát giao thông mật độ cao, YOLOv7 vượt trội hơn. Khả năng tổng hợp đặc trưng mạnh mẽ của nó cho phép duy trì độ chính xác cao ngay cả khi các đối tượng bị che khuất một phần hoặc có kích thước thay đổi đáng kể.

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

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

Khi nào nên chọn YOLOX

YOLOX là một lựa chọn tuyệt vời 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 chọn YOLOv7

YOLOv7 được khuyến nghị cho:

  • Academic Benchmarking: Tái tạo các kết quả tiên tiến nhất từ kỷ nguyên 2022 hoặc nghiên cứu ảnh hưởng của E-ELAN và các kỹ thuật bag-of-freebies có thể huấn luyện.
  • Nghiên cứu tái tham số hóa: Nghiên cứu các phép tích chập được tái tham số hóa theo kế hoạch và các chiến lược mở rộng mô hình phức hợp.
  • Các pipeline tùy chỉnh hiện có: Các dự án với các pipeline tùy chỉnh cao được xây dựng xung quanh kiến trúc cụ thể của YOLOv7 mà không thể dễ dàng tái cấu trúc.

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ỏ.

Lợi thế của Ultralytics

Trong khi cả YOLOX và YOLOv7 Đối với các ứng dụng nghiên cứu mạnh mẽ, việc chuyển từ kho lưu trữ nghiên cứu sang môi trường sản xuất có khả năng mở rộng có thể là một thách thức. Đây chính là điểm mạnh của Nền tảng Ultralytics .

Ultralytics Các mô hình này cung cấp một API Python thống nhất , xử lý việc huấn luyện, xác thực và triển khai mô hình như những tác vụ được đơn giản hóa và chuẩn hóa. Bạn sẽ tránh được những rắc rối khi quản lý các phụ thuộc bên thứ ba phức tạp hoặc các toán tử C++ tùy chỉnh thường gặp trong các kiến ​​trúc cũ hơn.

Hơn nữa, Ultralytics YOLO Các mô hình này yêu cầu lượng bộ nhớ CUDA ít hơn đáng kể trong quá trình huấn luyện so với các bộ phát hiện dựa trên Transformer như RT-DETR . Điều này cho phép người dùng sử dụng kích thước lô lớn hơn, ổn định quá trình huấn luyện và tăng tốc độ hội tụ trên các tập dữ liệu tùy chỉnh.

Các tích hợp được hỗ trợ

Ultralytics Hỗ trợ xuất mô hình sang các định dạng tiêu chuẩn ngành như ONNX , OpenVINOCoreML bằng một cờ boolean đơn giản, giúp đơn giản hóa đáng kể quy trình triển khai mô hình .

Ví dụ mã: Huấn luyện với Ultralytics

Cái Ultralytics Hệ sinh thái cho phép bạn dễ dàng tải, huấn luyện và chạy suy luận bằng cách sử dụng YOLOv7 hoặc các kiến ​​trúc mới hơn chỉ với vài dòng mã.

from ultralytics import YOLO

# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")

# Train the model on a custom dataset (e.g., COCO8)
# The API handles data loading, augmentation, and memory management automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on a test image
predictions = model("path/to/image.jpg")
predictions[0].show()

Tương lai: Ultralytics YOLO26

Trong khi YOLOv7 và YOLOX đại diện cho những bước tiến lịch sử quan trọng, công nghệ tiên tiến đang phát triển nhanh chóng. Được phát hành vào tháng 1 năm 2026, Ultralytics YOLO26 giới thiệu những mô hình đột phá vượt trội so với các mô hình trước đó.

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

  • Thiết kế End-to-End không NMS: YOLO26 loại bỏ hoàn toàn quá trình hậu xử lý Non-Maximum Suppression (NMS). Điều này giảm đáng kể các nút thắt cổ chai về độ trễ và đảm bảo thời gian thực thi xác định trên các cấu hình phần cứng khác nhau.
  • Tăng tốc suy luận trên CPU lên đến 43%: Bằng cách loại bỏ Distribution Focal Loss (DFL) và tối ưu hóa độ sâu mạng, YOLO26 được thiết kế đặc biệt cho các thiết bị biên không có phần cứng GPU chuyên dụng.
  • Trình tối ưu hóa MuSGD: Lấy cảm hứng từ các kỹ thuật huấn luyện LLM tiên tiến, trình tối ưu hóa MuSGD (một sự kết hợp giữa SGD và Muon) mang lại sự ổn định huấn luyện vượt trội và hội tụ nhanh hơn.
  • Cải thiện phát hiện vật thể nhỏ: Việc tích hợp các hàm mất mát ProgLoss + STAL mang lại cải thiện đáng kể trong việc nhận diện các vật thể nhỏ, ở xa—rất quan trọng đối với lập bản đồ bằng drone và giám sát an ninh.
  • Hỗ trợ tác vụ gốc: YOLO26 hỗ trợ toàn diện Hộp giới hạn định hướng (OBB), segmentation thể hiện và ước tính tư thế một cách tự nhiên trong cùng một API được tối ưu hóa.

Đối với bất kỳ nhà phát triển hiện đại nào bắt đầu một dự án thị giác máy tính mới ngày nay, việc đánh giá Ultralytics YOLO26 trên Nền tảng là con đường được khuyến nghị để đạt được sự cân bằng tốt nhất giữa tốc độ, độ chính xác và tính đơn giản trong triển khai. Đối với những người nâng cấp từ các thế hệ trước như YOLO11 hoặc YOLOv8 , quá trình chuyển đổi chỉ cần thay đổi chuỗi mô hình, ngay lập tức mở khóa các khả năng vượt trội.


Bình luận