YOLOv7 so với YOLOv9 Phân tích chuyên sâu về công nghệ nhận diện đối tượng hiện đại
Lĩnh vực phát hiện đối tượng thời gian thực đã phát triển nhanh chóng, với mỗi phiên bản mới đều đẩy mạnh giới hạn của những gì có thể thực hiện được trên cả thiết bị biên và máy chủ đám mây. Khi đánh giá kiến trúc cho các dự án thị giác máy tính, các nhà phát triển thường so sánh các tiêu chuẩn đã được thiết lập với những cải tiến mới hơn. Hướng dẫn toàn diện này so sánh hai cột mốc quan trọng trong lĩnh vực này. YOLO Họ: YOLOv7 và YOLOv9 .
Chúng tôi sẽ phân tích những đột phá về kiến trúc, các chỉ số hiệu suất và các kịch bản triển khai lý tưởng của chúng để giúp bạn chọn mô hình phù hợp cho ứng dụng của mình. Chúng tôi cũng sẽ tìm hiểu cách Nền tảng Ultralytics hợp nhất các mô hình này, giúp việc huấn luyện, xác thực và triển khai trở nên dễ dàng hơn.
Nguồn gốc và thông số kỹ thuật của mẫu xe
Hiểu được nguồn gốc và triết lý thiết kế của các mô hình này sẽ cung cấp bối cảnh cần thiết cho khả năng của chúng. Cả hai mô hình đều có chung nguồn gốc nghiên cứu nhưng nhắm đến các điểm nghẽn kiến trúc khác nhau.
YOLOv7 Người tiên phong trong việc chia sẻ túi quà miễn phí
Được phát hành vào giữa năm 2022, YOLOv7 Kiến trúc này đã tự khẳng định mình là một kiến trúc có độ tin cậy cao và được tối ưu hóa mạnh mẽ. Nó giới thiệu phương pháp tái tham số hóa cấu trúc và cách tiếp cận "túi quà tặng có thể huấn luyện" để duy trì tốc độ suy luận cao mà không ảnh hưởng đến độ chính xác trung bình ( mAP ) .
- Tác giả: Chien-Yao Wang, Alexey Bochkovskiy và Hong-Yuan Mark Liao
- Tổ chức:Viện Khoa học Thông tin, Academia Sinica, Đài Loan
- Ngày: 6 tháng 7 năm 2022
- Arxiv:2207.02696
- GitHub:WongKinYiu/yolov7
Đổi mới kiến trúc: YOLOv7 nổi bật với Mạng tổng hợp lớp hiệu quả mở rộng (E-ELAN), cho phép mô hình học các đặc trưng đa dạng hơn bằng cách mở rộng, xáo trộn và hợp nhất số lượng phần tử. Thiết kế này mang lại hiệu suất sử dụng GPU tuyệt vời và độ trễ suy luận. Tuy nhiên, nó có thể yêu cầu bộ nhớ đáng kể trong quá trình huấn luyện phức tạp so với các phiên bản hiện đại.
YOLOv9: Giải quyết nút thắt thông tin
Được giới thiệu vào đầu năm 2024 bởi cùng một nhóm nghiên cứu, YOLOv9 Giải quyết "nút thắt cổ chai thông tin" vốn có trong mạng nơ-ron sâu. Khi dữ liệu đi qua các lớp sâu, các chi tiết quan trọng thường bị mất. YOLOv9 Giải quyết vấn đề này thông qua các thiết kế lớp hoàn toàn mới.
- Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
- Tổ chức:Viện Khoa học Thông tin, Academia Sinica, Đài Loan
- Ngày: 21 tháng 2, 2024
- Arxiv:2402.13616
- GitHub:WongKinYiu/yolov9
Đổi mới kiến trúc: YOLOv9 giới thiệu Thông tin gradient có thể lập trình (PGI) và Mạng tổng hợp lớp hiệu quả tổng quát (GELAN). PGI đảm bảo rằng các gradient đáng tin cậy được bảo toàn và đưa trở lại để cập nhật trọng số một cách chính xác. GELAN tối đa hóa hiệu quả tham số, cho phép YOLOv9 đạt độ chính xác cao với số lượng FLOPs ít hơn đáng kể so với các phiên bản tiền nhiệm.
Phân tích hiệu suất
Khi lựa chọn giữa các kiến trúc, các kỹ sư AI phải cân bằng giữa độ chính xác, tốc độ suy luận và chi phí tính toán. Bảng dưới đây nêu bật sự khác biệt về hiệu năng giữa các mô hình này trên tập dữ liệu COCO tiêu chuẩn.
| 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) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Những Điểm Chính
- Hiệu quả tham số: YOLOv9m đạt độ chính xác tương đương YOLOv7l (51.4% mAP) trong khi sử dụng ít hơn gần 45% tham số (20.0M so với 36.9M). Việc giảm đáng kể này giúp YOLOv9m dễ dàng triển khai hơn nhiều trên các thiết bị AI biên bị hạn chế bộ nhớ.
- Triển khai siêu nhỏ: Việc giới thiệu biến thể YOLOv9t (tiny) mang lại tốc độ đáng kinh ngạc (2.3ms trên T4 TensorRT) cho các môi trường có ràng buộc thời gian thực tuyệt đối.
- Độ chính xác tối đa: Đối với các ứng dụng mà độ chính xác là tối quan trọng, YOLOv9e đẩy độ chính xác detect lên 55.6% mAP, vượt trội đáng kể so với YOLOv7x.
Đảm bảo tính bền vững cho các dự án thị giác máy tính của bạn trong tương lai
Trong khi YOLOv7 Và YOLOv9 Với sức mạnh vượt trội, YOLO26 mới ra mắt đánh dấu bước tiến đột phá. YOLO26 giới thiệu thiết kế hoàn toàn không cần NMS , loại bỏ các bước xử lý hậu kỳ phức tạp và tăng cường hiệu năng. CPU Tốc độ suy luận được tăng lên tới 43%. Bằng cách sử dụng trình tối ưu hóa MuSGD mới và các hàm mất mát ProgLoss + STAL được cải tiến, YOLO26 mang lại sự ổn định huấn luyện và độ chính xác phát hiện vật thể nhỏ vượt trội.
Lợi thế của Ultralytics
Việc lựa chọn kiến trúc mô hình chỉ là bước đầu tiên. Hệ sinh thái phần mềm xung quanh mô hình quyết định tốc độ bạn có thể chuyển từ nguyên mẫu sang sản xuất. Việc tích hợp các mô hình này thông qua API Python của Ultralytics mang lại lợi ích đáng kể cho các nhà phát triển và nhà nghiên cứu.
Dễ sử dụng và Hiệu quả huấn luyện
Về mặt lịch sử, việc đào tạo YOLOv7 Điều này đòi hỏi quá trình chuẩn bị dữ liệu phức tạp và các kịch bản được tùy chỉnh cao. Ultralytics Khung phần mềm này giúp loại bỏ những phức tạp trong học sâu. Các nhà phát triển có thể dễ dàng chuyển đổi giữa các kiến trúc, thử nghiệm với việc tinh chỉnh siêu tham số và sử dụng các quy trình tăng cường dữ liệu thông minh với lượng mã tối thiểu.
Hơn nữa, Ultralytics Tối ưu hóa việc sử dụng bộ nhớ trong quá trình huấn luyện và suy luận. Không giống như các mô hình transformer nặng nề (như RT-DETR ), Ultralytics YOLO Các kiến trúc này được đào tạo nhanh hơn đáng kể và yêu cầu ít hơn nhiều. CUDA Bộ nhớ lớn, khiến chúng trở nên lý tưởng cho các GPU dành cho người tiêu dùng.
Ví dụ mã: Huấn luyện tinh gọn
Việc đào tạo các mô hình tiên tiến diễn ra liền mạch trong hệ thống. Ultralytics hệ sinh thái. Dưới đây là một ví dụ hoàn chỉnh có thể chạy được, minh họa cách huấn luyện và xác thực một hệ sinh thái. YOLOv9 người mẫu:
from ultralytics import YOLO
# Initialize the model (you can swap 'yolov9c.pt' with 'yolov7.pt' or 'yolo26n.pt')
model = YOLO("yolov9c.pt")
# Train the model on the COCO8 sample dataset
train_results = model.train(
data="coco8.yaml",
epochs=50,
imgsz=640,
device="0", # Use GPU 0 if available
batch=16, # Optimized batch size for memory efficiency
)
# Validate the model's performance on the validation set
metrics = model.val()
# Export the trained model to ONNX format for deployment
model.export(format="onnx")
Tính linh hoạt vượt trội trong mọi nhiệm vụ
Một hệ sinh thái được duy trì tốt có nghĩa là có thể tiếp cận các tác vụ thị giác máy tính đa dạng. Trong khi YOLOv7 chủ yếu được xây dựng để detect đối tượng (với các nhánh thử nghiệm sau này cho các tác vụ khác), các mô hình Ultralytics hiện đại được xây dựng nguyên bản để linh hoạt. Ngay lập tức, bạn có thể thực hiện phân đoạn thực thể, ước tính tư thế, phân loại ảnh, và detect Hộp giới hạn định hướng (OBB) một cách liền mạch.
Các trường hợp sử dụng và ứng dụng lý tưởng
Quyết định giữa YOLOv7 Và YOLOv9 Thường thì điều này phụ thuộc vào những hạn chế cụ thể của ngành và khả năng cung cấp phần cứng của bạn.
Khi nào nên sử dụng YOLOv7
- Triển khai biên kế thừa: Đối với các môi trường phần cứng đã được tinh chỉnh và tối ưu hóa cao cho kiến trúc E-ELAN của YOLOv7, nó vẫn là một lựa chọn mạnh mẽ cho IoT công nghiệp.
- Giám sát giao thông: Tốc độ khung hình cao và độ ổn định đã được chứng minh của YOLOv7 làm cho nó trở nên xuất sắc cho cơ sở hạ tầng thành phố thông minh và quản lý giao thông thời gian thực.
- Tích hợp Robot: Điều hướng trong môi trường động đòi hỏi xử lý độ trễ thấp, một kịch bản mà các biến thể YOLOv7 đã được thử nghiệm kỹ lưỡng.
Khi nào nên sử dụng YOLOv9
- Hình ảnh y tế: Kiến trúc PGI trong YOLOv9 đặc biệt xuất sắc trong việc bảo toàn các chi tiết nhỏ qua các lớp sâu, điều này rất quan trọng khi phân tích các tác vụ phân tích hình ảnh y tế phức tạp như phát hiện khối u.
- Phân tích bán lẻ mật độ cao: Để theo dõi và đếm các mặt hàng được đóng gói dày đặc trên kệ bán lẻ, tích hợp tính năng của YOLOv9 cung cấp độ chính xác vượt trội và giảm thiểu lỗi âm tính giả.
- Hình ảnh trên không và từ drone: Hiệu quả tham số của YOLOv9m cho phép xử lý hình ảnh độ phân giải cao trên drone, hỗ trợ trong bảo tồn động vật hoang dã và giám sát nông nghiệp mà không làm hao pin.
Kết luận
Cả YOLOv7 và YOLOv9 đều đã khẳng định vị trí của mình trong lịch sử thị giác máy tính. YOLOv7 đã giới thiệu các tối ưu hóa cần thiết cho xử lý thời gian thực, trong khi YOLOv9 giải quyết các nút thắt cấu trúc học sâu để tối đa hóa hiệu quả tham số.
Tuy nhiên, đối với các nhà phát triển bắt đầu các dự án mới ngày nay, việc tận dụng Ultralytics Hệ sinh thái này—đặc biệt là các mô hình thế hệ tiếp theo như YOLO11 và YOLO26 —mang đến sự cân bằng tối ưu nhất giữa tốc độ, độ chính xác và trải nghiệm của nhà phát triển. Với những cải tiến như trình tối ưu hóa MuSGD và việc loại bỏ hiện tượng mất tiêu điểm phân tán (DFL) để tăng khả năng tương thích phần cứng, Ultralytics Tiếp tục cung cấp những công cụ mạnh mẽ và dễ tiếp cận nhất cho các chuyên gia AI thị giác.