Faster R-CNN
Faster R-CNN mendeteksi objek dengan jaringan proposal region yang memasok classifier dua tahap, arsitektur yang menjadikan proposal region bagian dari jaringan terlatih yang sama, bukan langkah terpisah. LibreYOLO menyediakan port implementasi torchvision untuk deteksi.
- Task
- detection
- Ukuran
- n, s, m, l at 320 to 800 px
- Instalasi
pip install libreyolo- Tier dukungan
- Hanya inferensi, sejak v. Hanya prediksi, validasi, dan ekspor. Fitur pelatihan tidak berlaku.
- Lisensi
- Kode BSD-3-Clause, bobot BSD-3-Clause. Penggunaan komersial
Instalasi
Faster R-CNN tidak memerlukan extra opsional. Semua yang diimpornya tersedia dalam instalasi dasar.
pip install libreyoloPrediksi
Bobot diunduh dari Hugging Face saat pertama kali digunakan dan disimpan dalam cache lokal.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreFasterRCNNl.pt")result = model(SAMPLE_IMAGE, save=True) for box in result.boxes: print(box.cls, box.conf, box.xyxy)libreyolo predict model=LibreFasterRCNNl.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=TrueObjek Results yang dikembalikan sama seperti yang dikembalikan setiap family,
sehingga mengganti detector hanya memerlukan perubahan satu baris. conf dan
iou menetapkan ambang batas confidence dan NMS. Faster R-CNN mempertahankan
langkah NMS upstream, tidak seperti detector berbasis query. Lihat
prediksi untuk sumber, streaming, dan penanganan hasil.
Varian
Ada empat ukuran, masing-masing merupakan konfigurasi torchvision yang berbeda,
bukan versi berskala dari konfigurasi yang sama: n adalah MobileNetV3-Large
dengan input 320 px, s memakai backbone yang sama pada 800 px, m adalah
ResNet-50 dengan feature pyramid, dan l adalah revisi v2 dengan head proposal
region yang lebih dalam serta head box empat konvolusi sebagai pengganti milik
m. n dan s menukar akurasi dengan backbone yang lebih ringan.
Validasi
val() mengembalikan dictionary berisi key metrics/ yang mencakup presisi,
recall, mAP 50, dan mAP 50-95, yang diukur terhadap dataset apa pun dalam format
yang digunakan saat pelatihan.
from libreyolo import LibreYOLO model = LibreYOLO("LibreFasterRCNNl.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/mAP50-95"])print(metrics["metrics/mAP50"])libreyolo val model=LibreFasterRCNNl.pt data=my-dataset.yamlEkspor
| Task | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Detection | Detection to ONNX: didukung | Detection to TorchScript: tidak didukung | Detection to ExecuTorch: tidak didukung | Detection to TensorRT: tidak didukung | Detection to OpenVINO: tidak didukung | Detection to Paddle: tidak didukung | Detection to MNN: tidak didukung | Detection to RKNN: tidak didukung | Detection to ncnn: tidak didukung | Detection to TFLite: tidak didukung | Detection to CoreML: tidak didukung | Detection to Core AI: tidak didukung |
Faster R-CNN hanya dapat diekspor ke ONNX dengan ukuran batch 1. Graph hasil
ekspor mempertahankan langkah resize upstream di dalamnya, sehingga LibreYOLO
memaksa dynamic=True apa pun nilai yang diteruskan agar graph tetap valid
untuk sumber yang tidak berbentuk persegi. Berkas .onnx hasil ekspor dapat
dimuat kembali melalui LibreYOLO() berdasarkan akhiran berkasnya dan
mengembalikan Results yang sama.
from libreyolo import LibreYOLO model = LibreYOLO("LibreFasterRCNNl.pt")model.export(format="onnx", imgsz=800)libreyolo export model=LibreFasterRCNNl.pt format=onnx imgsz=800from libreyolo import LibreYOLO, SAMPLE_IMAGE # Factory merutekan berdasarkan akhiran berkas, sehingga artefak hasil ekspor dimuat# seperti checkpoint lain dan mengembalikan objek Results yang sama.model = LibreYOLO("LibreFasterRCNNl.onnx")result = model(SAMPLE_IMAGE) print(result.boxes.xyxy)Checkpoint
Semua berkas bobot yang dipublikasikan untuk family ini.
| Berkas | Input (piksel) | Lisensi bobot |
|---|---|---|
| Detection | ||
| LibreFasterRCNNn.pt | 320 | bsd-3-clause |
| LibreFasterRCNNs.pt | 800 | bsd-3-clause |
| LibreFasterRCNNm.pt | 800 | bsd-3-clause |
| LibreFasterRCNNl.pt | 800 | bsd-3-clause |
Setiap berkas di atas saat ini tersedia di organisasi LibreYOLO dan diunduh saat pertama kali digunakan.
Lisensi
Periksa lisensi di repositori Hugging Face untuk bobot tertentu yang diunduh. Setiap checkpoint di organisasi LibreYOLO memiliki lisensi, dan lisensinya tidak selalu sama dalam satu family. Repositori tersebut adalah sumber resmi. Ringkasan di bawah menjelaskan ketentuan yang berlaku saat halaman ini terakhir diverifikasi.
Ini adalah deskripsi lisensi yang terlibat, bukan nasihat hukum. Jika jawabannya penting secara komersial, baca sendiri lisensinya dan mintalah nasihat dari penasihat hukum Anda.
- Karya asli
- Faster R-CNN, PyTorch
- Lisensi upstream
- BSD-3-Clause
- Sumber upstream
- github.com/pytorch/vision
- Kode LibreYOLO
- MIT
- Bobot
- BSD-3-Clause, dipublikasikan ulang di huggingface.co/LibreYOLO
- Interpretasi
- BSD-3-Clause is a permissive license, so this code can be used in commercial and closed-source products with no obligation on your own application code. It asks only that you keep the copyright notice and disclaimer with any copy you redistribute, and it carries no patent grant. The four published checkpoints used for parity testing are not distributed in the LibreYOLO source tree: torchvision's own documentation notes that a pretrained model's terms may depend on its training data, so each Hugging Face mirror ships the BSD text on that implied basis and repeats the caveat rather than issuing an explicit checkpoint-specific grant.
Sitasi
@inproceedings{renNIPS15fasterrcnn,
Author = {Shaoqing Ren and Kaiming He and Ross Girshick and Jian Sun},
Title = {Faster {R-CNN}: Towards Real-Time Object Detection
with Region Proposal Networks},
Booktitle = {Advances in Neural Information Processing Systems ({NIPS})},
Year = {2015}
}Disalin dari blok sitasi penulis di github.com/rbgirshick/py-faster-rcnn#citing-faster-r-cnn.