TEED
TEED (Tiny and Efficient Edge Detector) là mạng tích chập nhỏ dự đoán map xác suất cạnh dense từ một ảnh RGB. LibreYOLO bọc kiến trúc này chỉ cho phát hiện cạnh; không có checkpoint nào đi kèm thư viện.
- Tác vụ
- edge
- Kích thước
- t at 352 px
- Cài đặt
pip install libreyolo- Bậc hỗ trợ
- Chỉ suy luận, từ v. Chỉ dự đoán, kiểm định và xuất. Không áp dụng các tính năng huấn luyện.
- Giấy phép
- Mã nguồn MIT, trọng số MIT. Sử dụng thương mại
Cài đặt
TEED không cần extra tùy chọn. Mọi thành phần mà mô hình import đều có trong bản cài đặt cơ sở.
pip install libreyoloDự đoán
LibreYOLO không cung cấp checkpoint TEED. Trọng số được phát hành chính thức được huấn luyện trên BIPED, có điều khoản dataset đã công bố giới hạn việc sử dụng vào mục đích phi thương mại, vì vậy LibreYOLO không mirror chúng. Hãy chuyển đổi checkpoint mà bạn được cấp phép sử dụng bằng weights/convert_teed_weights.py; script này kiểm tra các key tensor theo kiến trúc runtime trước khi ghi tệp mà LibreYOLO có thể tải trực tiếp:
python weights/convert_teed_weights.py upstream.pth weights/LibreTEEDt-edge.pt --verifyfrom libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("weights/LibreTEEDt-edge.pt")result = model(SAMPLE_IMAGE, save=True) edges = result.edgesprint(edges.array.shape) # (H, W) float32 trong [0, 1]print(edges.binary(0.5).sum()) # số pixel cạnh sau khi áp ngưỡnglibreyolo predict model=weights/LibreTEEDt-edge.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=Trueresult.edges chứa kết quả: một mảng float32 (H, W) trong [0, 1], với .binary(threshold) trả về mặt nạ cạnh kiểu boolean. Không có box, vì vậy conf, iou và max_det không có tác dụng. Xem dự đoán để biết về nguồn, xử lý luồng và kết quả.
Biến thể
TEED cung cấp một kích thước trong LibreYOLO. Bộ công cụ benchmark của LibreYOLO chưa đo họ mô hình này, vì vậy không có số liệu đã công bố để so sánh.
Xác thực
val() báo cáo F-measure ODS và OIS kiểu BSDS trên dataset cạnh theo cặp: ảnh đặt cạnh các edge map có cùng phần tên gốc, cùng mặt nạ hợp lệ tùy chọn để các pixel padding không bao giờ được tính. imgsz phải chia hết cho downsample stride của mạng, LibreYOLO sẽ phát sinh lỗi rõ ràng nếu không đạt.
from libreyolo import LibreYOLO model = LibreYOLO("weights/LibreTEEDt-edge.pt")metrics = model.val(data="my-dataset.yaml", imgsz=352) print(metrics["metrics/ODS"]) # F-measure ở tỷ lệ dataset tối ưuprint(metrics["metrics/OIS"]) # F-measure ở tỷ lệ ảnh tối ưulibreyolo val model=weights/LibreTEEDt-edge.pt data=my-dataset.yaml imgsz=352Xuất
| Tác vụ | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| edge | edge to ONNX: được hỗ trợ | edge to TorchScript: được hỗ trợ | edge to ExecuTorch: được hỗ trợ | edge to TensorRT: được hỗ trợ | edge to OpenVINO: được hỗ trợ | edge to Paddle: không được hỗ trợ | edge to MNN: không được hỗ trợ | edge to RKNN: không được hỗ trợ | edge to ncnn: không được hỗ trợ | edge to TFLite: được hỗ trợ | edge to CoreML: không được hỗ trợ | edge to Core AI: không được hỗ trợ |
Việc xuất cạnh sử dụng hợp đồng runtime batch 1, độ phân giải cố định: dynamic và batch khác 1 bị từ chối, graph đã xuất cho đầu ra là một map xác suất hợp nhất duy nhất. Artifact đã xuất được tải lại qua LibreYOLO() dựa trên hậu tố tệp, vì vậy tệp .onnx hoạt động như checkpoint và trả về cùng đối tượng Results.
from libreyolo import LibreYOLO model = LibreYOLO("weights/LibreTEEDt-edge.pt")model.export(format="onnx", imgsz=352)model.export(format="tensorrt", imgsz=352, half=True)libreyolo export model=weights/LibreTEEDt-edge.pt format=onnx imgsz=352libreyolo export model=weights/LibreTEEDt-edge.pt format=tensorrt imgsz=352 half=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("weights/LibreTEEDt-edge.onnx")result = model(SAMPLE_IMAGE) print(result.edges.array.shape)Giấy phép
Hãy kiểm tra giấy phép trong repo Hugging Face của trọng số cụ thể mà bạn tải xuống. Mỗi checkpoint trong tổ chức LibreYOLO đều có giấy phép riêng và giấy phép có thể khác nhau trong cùng một họ. Repo đó là nguồn có thẩm quyền; phần tóm tắt dưới đây mô tả các điều khoản áp dụng khi trang này được kiểm chứng lần gần nhất.
Đây là phần mô tả các giấy phép liên quan, không phải tư vấn pháp lý. Nếu câu trả lời có ý nghĩa về mặt thương mại, hãy tự đọc các giấy phép và tham khảo cố vấn của riêng bạn.
- Công trình gốc
- TEED, Xavier Soria
- Giấy phép thượng nguồn
- MIT
- Nguồn thượng nguồn
- github.com/xavysp/TEED
- Mã nguồn LibreYOLO
- MIT
- Trọng số
- MIT, do tác giả phân phối. LibreYOLO không lưu trữ hoặc sao chép chúng.
- Diễn giải
- MIT is a permissive license, so the TEED architecture LibreYOLO ports can be used in commercial and closed-source products, with the license text and copyright notice kept alongside any copy you redistribute. LibreYOLO ships no checkpoint for this family: the officially released weights are trained on BIPED, whose published dataset terms restrict use to non-commercial purposes, and mirroring them would carry that restriction into a nominally MIT-licensed download. Convert a checkpoint you hold a license for with `weights/convert_teed_weights.py`; the MIT code license does not change the terms attached to whatever checkpoint you convert.
LibreYOLO không phát hành checkpoint TEED. Không có nội dung nào được mirror trong tổ chức LibreYOLO; thay vào đó hãy chuyển đổi checkpoint mà bạn có giấy phép sử dụng bằng weights/convert_teed_weights.py.
Trích dẫn
@InProceedings{Soria_2023teed,
author = {Soria, Xavier and Li, Yachuan and Rouhani, Mohammad and Sappa, Angel D.},
title = {Tiny and Efficient Model for the Edge Detection Generalization},
booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV) Workshops},
month = {October},
year = {2023},
pages = {1364-1373}
}Được sao chép từ khối trích dẫn của tác giả tại github.com/xavysp/TEED#citation.