X
Ultralytics YOLOv8.2 Phát hànhUltralytics YOLOv8.2 Phát hànhUltralytics YOLOv8.2 Mũi tên thả
Kiểm tra màu xanh lá cây
Liên kết được sao chép vào khay nhớ tạm

Chạy Ultralytics Các mô hình phát hiện và phân đoạn đối tượng trong một vài dòng mã

Hướng dẫn từng bước về cách chạy Ultralytics Các mô hình phát hiện và phân đoạn đối tượng trong một vài dòng mã.

Chào mừng bạn đến với một bài đăng trên blog khác, nơi chúng ta sẽ đi sâu vào khả năng của Ultralytics' YOLOv5YOLOv8 mô hình khi nói đến phát hiện phân đoạn đối tượng. Chúng ta sẽ khám phá cách tích hợp các mô hình dễ sử dụng này vào các dự án của bạn chỉ với một vài dòng mã. Cho dù bạn là người mới bắt đầu hay nhà phát triển có kinh nghiệm, bạn sẽ thấy cách thức Ultralytics Hỗ trợ các mô hình và kiến trúc khác nhau, bao gồm cả các mô hình và kiến trúc khác nhau YOLO phiên bản và mô hình dựa trên máy biến áp. 

Trong video của mình, Nicolai Nielsen hướng dẫn chúng ta qua quá trình thiết lập và sử dụng các mô hình khác nhau trong Ultralytics khuôn khổ. Hãy chia nhỏ nó từng bước và xem cách bạn có thể bắt đầu với những công cụ đáng kinh ngạc này.

Bắt đầu với Ultralytics Mô hình

Ultralytics Cung cấp một khuôn khổ toàn diện hỗ trợ nhiều mô hình phát hiện và phân đoạn đối tượng. Điều này bao gồm phổ biến YOLO các mô hình, từ YOLOv3 đến mới nhất YOLOv8, cũng như YOLO-NAS và SAM Mô hình. Các mô hình này được thiết kế để xử lý nhiều nhiệm vụ khác nhau như phát hiện thời gian thực, phân đoạnước tính tư thế.

Để bắt đầu, hãy truy cập Ultralytics trang tài liệu. Tại đây, bạn có thể tìm thấy thông tin chi tiết về từng mô hình, bao gồm các tính năng chính, kiến trúc và cách sử dụng chúng trong Python Kịch bản.

Thiết lập môi trường của bạn

Đầu tiên, hãy đảm bảo bạn có Ultralytics Cài đặt. Bạn có thể làm điều này bằng cách chạy:

bash

Sao chép mã


pip install ultralytics

Khi điều này được thực hiện, bạn có thể bắt đầu sử dụng các mô hình này trong các dự án của mình. Hãy bắt đầu với YOLOv8 mô hình làm ví dụ.

Các tính năng chính của YOLOv8

YOLOv8 đi kèm với một số cải tiến so với người tiền nhiệm của nó. Nó được thiết kế để nhanh hơn và chính xác hơn, làm cho nó hoàn hảo cho các ứng dụng thời gian thực. Một số tính năng chính bao gồm: 

  • Nâng cao tốc độ và độ chính xác
  • Trọng lượng được đào tạo trước cho nhiều nhiệm vụ
  • Hỗ trợ phát hiện, phân đoạn và phân loại đối tượng
  • Cải thiện kiến trúc mô hình để có hiệu suất tốt hơn

Chạy YOLOv8 trong Python

Đây là cách bạn có thể bắt đầu YOLOv8 Chỉ trong một vài dòng mã:

Sao chép mã


# Copy code
import ultralytics
model = ultralytics.YOLO('yolov8')
results = model.predict('path/to/your/image.jpg')
results.show()

Đó là nó! Bạn vừa chạy một YOLOv8 mô hình trên một hình ảnh. Sự đơn giản này là những gì làm cho Ultralytics mô hình rất mạnh mẽ và thân thiện với người dùng.

Phát hiện Webcam trực tiếp

Muốn xem YOLOv8 Trong hành động trên nguồn cấp dữ liệu webcam trực tiếp? Đây là cách bạn có thể làm điều đó:

python

Sao chép mã


# Copy code
import ultralytics
model = ultralytics.YOLO('yolov8')
# Open a live webcam feed
cap = cv2.VideoCapture(0)
while True:
	ret, frame = cap.read()
	if not ret:
		break
	results = model.predict(frame)
	results.show()
	if cv2.waitKey(1) & 0xFF == ord('q'):
		break
cap.release()
cv2.destroyAllWindows()

Tập lệnh này sẽ mở webcam của bạn và áp dụng YOLOv8 Mô hình để phát hiện các đối tượng trong thời gian thực.

Hình 1. Nicolai Nielsen phác thảo cách chạy Ultralytics mô hình phát hiện và phân đoạn đối tượng.

Khám phá các mô hình khác

Ultralytics không chỉ dừng lại ở YOLOv8. Họ cũng hỗ trợ nhiều mô hình khác như YOLOv5, YOLO-NAS, và các mô hình dựa trên máy biến áp để phát hiện thời gian thực. Mỗi mô hình có thế mạnh và trường hợp sử dụng riêng.

Mô hình máy biến áp và cách chạy chúng

Các RT-DETR mô hình được phát triển bởi Baidu và được hỗ trợ bởi Ultralytics, là một máy dò đối tượng đầu cuối, hiện đại cung cấp hiệu suất thời gian thực và độ chính xác cao. Nó sử dụng xương sống dựa trên conv và bộ mã hóa lai hiệu quả cho tốc độ thời gian thực, vượt trội trên CUDA với TensorRTvà hỗ trợ điều chỉnh tốc độ suy luận linh hoạt.

Đây là cách bạn có thể chạy một RT-DETR mẫu:

Sao chép mã


from Ultralytics import YOLO
# Load a pretrained YOLOv8n model
model = YOLO("rtdetr-l.pt")

# Run inference on 'bus.jpg' with arguments
model.predict("bus.jpg", save=True, imgsz=320, conf=0.5)

"Phân khúc bất cứ mô hình nào

Ultralytics Cũng cung cấp các mô hình cho các nhiệm vụ phân khúc, chẳng hạn như MobileSAM và FastSAM. Các mô hình này được thiết kế để phân đoạn mọi thứ trong một hình ảnh, cung cấp thông tin chi tiết về cảnh.

Chạy FastSAM

FastSAM được tối ưu hóa cho phân đoạn thời gian thực và đây là cách bạn có thể chạy nó:

Sao chép mã


import ultralytics
model = ultralytics.SAM("FastSAM-s.pt")
results = model.predict('path/to/your/image.jpg')
results.show()

Mô hình này hoàn hảo cho các ứng dụng yêu cầu phân đoạn nhanh chóng và chính xác.

Hiệu suất và so sánh

Một trong những tính năng tuyệt vời của Ultralytics Framework là khả năng so sánh các mô hình khác nhau cạnh nhau. Bạn có thể dễ dàng xác định mô hình nào hoạt động tốt nhất cho ứng dụng cụ thể của mình bằng cách xem xét các chỉ số hiệu suất như tốc độ suy luận và độ chính xác trung bình trung bình (mAP).

Những điều rút ra chính

Ultralytics Làm cho nó cực kỳ dễ dàng để chạy các mô hình phát hiện và phân đoạn đối tượng chỉ với một vài dòng mã. Cho dù bạn đang làm việc trên các ứng dụng thời gian thực hay cần các mô hình có độ chính xác cao, Ultralytics có một giải pháp cho bạn. Hãy chắc chắn kiểm tra hướng dẫn đầy đủ của Nicolai Nielsen trên Ultralytics Kênh YouTube để biết thêm thông tin chuyên sâu và ví dụ.

Hãy theo dõi để biết thêm hướng dẫn và cập nhật từ Ultralytics cộng đồng!

Logo FacebookBiểu trưng TwitterBiểu trưng LinkedInBiểu tượng sao chép liên kết

Đọc thêm trong danh mục này

Hãy xây dựng tương lai
của AI cùng nhau!

Bắt đầu hành trình của bạn với tương lai của machine learning