Suy luận
Nền tảng Ultralytics cung cấp API suy luận để kiểm tra các mô hình đã được huấn luyện. Sử dụng tab Kiểm tra trên trình duyệt để xác thực nhanh hoặc... REST API để truy cập theo chương trình.
Tab thử nghiệm
Mỗi mô hình đều bao gồm một tab Kiểm thử để suy luận trên trình duyệt:
- Điều hướng đến mô hình của bạn
- Nhấp vào tab Kiểm tra
- Tải lên hình ảnh hoặc sử dụng ví dụ
- Xem dự đoán ngay lập tức
Tải ảnh lên
Kéo và thả hoặc nhấp chuột để tải lên:
- Các định dạng được hỗ trợ : JPG, PNG, WebP, GIF
- Kích thước tối đa : 10MB
- Suy luận tự động : Kết quả hiển thị tự động
Ví dụ hình ảnh
Sử dụng các hình ảnh ví dụ có sẵn để kiểm tra nhanh:
| Hình ảnh | Nội dung |
|---|---|
bus.jpg | Cảnh đường phố với nhiều phương tiện giao thông |
zidane.jpg | Cảnh thể thao với nhiều người |
Xem kết quả
Kết quả suy luận hiển thị:
- Các hộp giới hạn có nhãn lớp
- Điểm tin cậy cho mỗi lần phát hiện
- Màu sắc của lớp học phù hợp với tập dữ liệu của bạn
Tham số suy luận
Điều chỉnh hành vi phát hiện bằng các tham số:
| Tham số | Phạm vi | Mặc định | Mô tả |
|---|---|---|---|
| Sự tự tin | 0,0-1,0 | 0.25 | Ngưỡng tin cậy tối thiểu |
| IoU | 0,0-1,0 | 0.45 | NMS IoU ngưỡng |
| Kích thước hình ảnh | 32-1280 | 640 | Nhập kích thước thay đổi |
Ngưỡng tin cậy
Lọc các dự đoán theo độ tin cậy:
- Cao hơn (0,5+) : Ít dự đoán hơn, nhưng chắc chắn hơn
- Thấp hơn (0,1-0,25) : Nhiều dự đoán hơn, có một số nhiễu
- Mặc định (0.25) : Cân bằng cho hầu hết các trường hợp sử dụng
IoU Ngưỡng
Kiểm soát hiện tượng ức chế không tối đa:
- Cao hơn (0,7+) : Cho phép các hộp chồng lên nhau
- Giá trị thấp hơn (0,3-0,45) : Kết hợp các phát hiện gần nhau
- Mặc định (0.45) : Tiêu chuẩn NMS hành vi
REST API
Truy cập lập trình suy luận:
Xác thực
Bao gồm khóa API của bạn trong các yêu cầu:
Authorization: Bearer YOUR_API_KEY
Điểm cuối
POST https://platform.ultralytics.com/api/models/{model_slug}/predict
Lời yêu cầu
curl -X POST \
"https://platform.ultralytics.com/api/models/username/project/model/predict" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@image.jpg" \
-F "conf=0.25" \
-F "iou=0.45"
import requests
url = "https://platform.ultralytics.com/api/models/username/project/model/predict"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
files = {"file": open("image.jpg", "rb")}
data = {"conf": 0.25, "iou": 0.45}
response = requests.post(url, headers=headers, files=files, data=data)
print(response.json())
Phản hồi
{
"success": true,
"predictions": [
{
"class": "person",
"confidence": 0.92,
"box": {
"x1": 100,
"y1": 50,
"x2": 300,
"y2": 400
}
},
{
"class": "car",
"confidence": 0.87,
"box": {
"x1": 400,
"y1": 200,
"x2": 600,
"y2": 350
}
}
],
"image": {
"width": 1920,
"height": 1080
}
}
Các trường phản hồi
| Cánh đồng | Loại | Mô tả |
|---|---|---|
success | boolean | Trạng thái yêu cầu |
predictions | mảng | Danh sách các phát hiện |
predictions[].class | sợi dây | Tên lớp |
predictions[].confidence | trôi nổi | Độ tin cậy phát hiện (0-1) |
predictions[].box | sự vật | Tọa độ hộp giới hạn |
image | sự vật | Kích thước hình ảnh gốc |
Phản hồi cụ thể theo nhiệm vụ
Định dạng phản hồi khác nhau tùy thuộc vào nhiệm vụ:
{
"class": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400}
}
{
"class": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400},
"segments": [[100, 50], [150, 60], ...]
}
{
"class": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400},
"keypoints": [
{"x": 200, "y": 75, "conf": 0.95},
...
]
}
{
"predictions": [
{"class": "cat", "confidence": 0.95},
{"class": "dog", "confidence": 0.03}
]
}
Giới hạn tỷ lệ
Suy luận chia sẻ có giới hạn về số lượng:
| Kế hoạch | Số yêu cầu/phút | Số lượng yêu cầu/ngày |
|---|---|---|
| Miễn phí | 10 | 100 |
| Pro | 60 | 10,000 |
Đối với các giới hạn cao hơn, hãy triển khai một điểm cuối chuyên dụng .
Xử lý lỗi
Các phản hồi lỗi thường gặp:
| Mã số | Tin nhắn | Giải pháp |
|---|---|---|
| 400 | Hình ảnh không hợp lệ | Kiểm tra định dạng tệp |
| 401 | Không được phép | Xác minh khóa API |
| 404 | Không tìm thấy mô hình | Kiểm tra mã số mô hình |
| 429 | Giới hạn tỷ lệ | Chờ đợi hoặc nâng cấp gói dịch vụ |
| 500 | Lỗi máy chủ | Thử lại yêu cầu |
Câu hỏi thường gặp
Tôi có thể suy luận trên video được không?
API chấp nhận các khung hình riêng lẻ. Đối với video:
- Trích xuất khung hình cục bộ
- Gửi từng khung hình đến API.
- Kết quả tổng hợp
Đối với video thời gian thực, hãy cân nhắc triển khai một thiết bị đầu cuối chuyên dụng .
Tôi có thể lấy hình ảnh có chú thích bằng cách nào?
API trả về các dự đoán dưới dạng JSON. Để trực quan hóa:
- Sử dụng dự đoán để vẽ các hộp cục bộ
- Sử dụng Ultralytics
plot()phương thức:
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
results = model("image.jpg")
results[0].save("annotated.jpg")
Kích thước ảnh tối đa là bao nhiêu?
- Giới hạn tải lên : 10MB
- Recommended: <5MB for fast inference
- Tự động điều chỉnh kích thướcẢnh đã được điều chỉnh kích thước thành...
imgsztham số
Ảnh có kích thước lớn sẽ tự động được điều chỉnh kích thước mà vẫn giữ nguyên tỷ lệ khung hình.
Tôi có thể chạy suy luận theo lô không?
API hiện tại xử lý một hình ảnh cho mỗi yêu cầu. Đối với xử lý hàng loạt:
- Gửi yêu cầu đồng thời
- Sử dụng điểm cuối chuyên dụng để đạt thông lượng cao hơn
- Hãy xem xét phương pháp suy luận cục bộ cho các lô dữ liệu lớn.