FOMO

FOMO adalah pelokal titik berbasis grid: setiap sel pada grid beresolusi rendah diklasifikasikan sebagai background atau pusat objek, tanpa regresi bounding box. LibreYOLO mendukungnya untuk task titik.

Task
point
Ukuran
Instalasi
pip install libreyolo
Tier dukungan
Didukung, sejak v. Model pendukung yang dapat dilatih: CI dijaga tetap lulus, fitur ditambahkan saat ada kesempatan.
Proyek upstream
FOMO (Faster Objects, More Objects) oleh Edge Impulse, MIT. Makalah, sumber
Lisensi
Kode MIT, bobot MIT. Penggunaan komersial

Instalasi

FOMO tidak memerlukan extra selain paket dasar.

bash
pip install libreyolo

Prediksi

Tidak seperti semua family lain di situs ini, bobot LibreFOMO tidak diunduh otomatis. LibreYOLO("LibreFOMOs-point.pt") mencari berkas tersebut di disk dan memunculkan ValueError yang menyebutkan namanya alih-alih mengambilnya dari Hugging Face. Unduh checkpoint dari organisasi LibreYOLO lebih dulu dan muat berdasarkan path lokal, atau latih sendiri (lihat Pelatihan di bawah).

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Bobot LibreFOMO tidak diunduh otomatis (lihat Checkpoint di bawah).# Arahkan ini ke checkpoint yang telah diunduh secara lokal.model = LibreYOLO("./LibreFOMOs-point.pt")result = model(SAMPLE_IMAGE, save=True) for point in result.points:    print(point.cls, point.conf, point.xy)
CLI
libreyolo predict model=./LibreFOMOs-point.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True

Hasil memuat payload points, bukan boxes. Setiap baris adalah x, y, class, confidence, yang tersedia sebagai result.points.data atau melalui accessor .xy, .xyn, .cls, dan .conf. Tidak ada ambang batas iou untuk ditetapkan karena tidak ada box yang perlu di-suppress. predict(..., nms_radius=1) mengontrol jarak minimum dalam jumlah sel grid agar dua deteksi sama-sama bertahan, dan nama berkas harus memuat akhiran task FOMO -point agar dikenali loader. Lihat prediksi untuk sumber, streaming, dan penanganan hasil.

Varian

Tiga ukuran, s, m, dan l, menggunakan backbone bergaya MobileNetV2 yang makin lebar pada resolusi input tetap yang juga makin besar, masing-masing di belakang satu head klasifikasi 1x1. Family ini tidak memiliki tabel benchmark di sini. Ukuran berkas checkpoint dalam tabel di bawah adalah indikator per ukuran paling jelas yang saat ini dipublikasikan.

Pelatihan

Python
from libreyolo import LibreYOLO model = LibreYOLO("./LibreFOMOs-point.pt")model.train(    data="my-dataset.yaml",    epochs=40, batch=32, lr0=3e-4,)
CLI
# imgsz harus diteruskan: CLI memakai nilai default 640, sedangkan checkpoint s# hanya menerima resolusi native 96.libreyolo train model=./LibreFOMOs-point.pt data=my-dataset.yaml imgsz=96 epochs=40 batch=32 lr0=3e-4

imgsz bukan pilihan bebas. Nilainya default ke resolusi native checkpoint yang dimuat, dan meneruskan nilai lain memunculkan ValueError yang menyebutkan ukuran yang diharapkan. Ukurannya adalah 96 untuk s, 192 untuk m, dan 224 untuk l. CLI menetapkan imgsz default ke 640, sehingga perintah libreyolo train harus mengaturnya secara eksplisit agar cocok dengan checkpoint.

Jika pengaturan lain dibiarkan apa adanya, trainer berjalan selama 40 epoch dengan batch 32 memakai Adam pada lr0=3e-4, tanpa weight decay, dan kelas foreground diberi bobot 100 kali kelas background dalam loss cross-entropy per sel karena hampir setiap sel grid adalah background dalam adegan biasa. EMA dan mixed precision sama-sama nonaktif secara default. Augmentasi geometris maupun warna yang digunakan di bagian lain LibreYOLO juga tidak diterapkan: mosaic, mixup, HSV jitter, flip, rotasi, translasi, dan shear semuanya nol.

Ini adalah jalur yang digunakan untuk melatih checkpoint LibreFOMO yang dipublikasikan, dari nol pada COCO.

Lihat pelatihan untuk dataset dan logger.

Validasi

val() mengarahkan eksekusi ke validator tingkat grid yang dibuat untuk family ini. Di samping key point matching metrics/precision, metrics/recall, dan metrics/mAP@ yang sama dengan task titik lain, validator menyapu ambang batas confidence dan nilai nms_radius, lalu memublikasikan kombinasi F1 terbaik pada metrics/grid_F1, metrics/grid_precision, metrics/grid_recall, dan metrics/grid_mean_distance. Ambang batas dan radius yang menghasilkannya tersedia pada decode/threshold dan decode/nms_radius.

Python
from libreyolo import LibreYOLO model = LibreYOLO("./LibreFOMOs-point.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/grid_F1"])print(metrics["metrics/grid_precision"], metrics["metrics/grid_recall"])
CLI
libreyolo val model=./LibreFOMOs-point.pt data=my-dataset.yaml

Ekspor

TaskONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
pointpoint to ONNX: didukungpoint to TorchScript: didukungpoint to ExecuTorch: didukungpoint to TensorRT: didukungpoint to OpenVINO: didukungpoint to Paddle: tidak didukungpoint to MNN: tidak didukungpoint to RKNN: tidak didukungpoint to ncnn: didukungpoint to TFLite: tidak didukungpoint to CoreML: tidak didukungpoint to Core AI: didukung

Artefak hasil ekspor dapat dimuat kembali melalui LibreYOLO() berdasarkan akhiran berkasnya, sehingga berkas .onnx atau .engine berperilaku seperti checkpoint dan mengembalikan Results yang sama. Menjalankan graph pada runtime polos tanpa LibreYOLO juga didukung, tetapi preprocessing dan postprocessing harus ditulis sendiri.

Python
from libreyolo import LibreYOLO model = LibreYOLO("./LibreFOMOs-point.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)
CLI
libreyolo export model=./LibreFOMOs-point.pt format=onnx
Gunakan berkas hasil ekspor
from 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("./LibreFOMOs-point.onnx")result = model(SAMPLE_IMAGE) print(result.points.xy)

Checkpoint

Semua berkas bobot yang dipublikasikan untuk family ini. Tidak satu pun diunduh secara otomatis. Ambil berkas yang diinginkan dari halaman Hugging Face yang ditautkan dan teruskan path lokalnya ke LibreYOLO().

BerkasInput (piksel)Lisensi bobot
point
LibreFOMOs-point.ptmit
LibreFOMOm-point.ptmit
LibreFOMOl-point.ptmit

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
FOMO (Faster Objects, More Objects), Edge Impulse
Lisensi upstream
MIT
Kode LibreYOLO
MIT
Bobot
MIT, dipublikasikan ulang di huggingface.co/LibreYOLO
Interpretasi
FOMO is a technique Edge Impulse introduced through a blog post and its product documentation, not a code release, so there is no upstream repository or license to inherit. LibreYOLO's architecture is an original MobileNetV2-style reimplementation of the published description, and the LibreFOMO checkpoints are trained from scratch on COCO, so both the code and these weights are MIT, LibreYOLO's own. They are also not auto-downloaded: LibreYOLO("LibreFOMOs-point.pt") looks for that file locally and raises rather than fetching it, so get the checkpoint from the Hugging Face repository first. The name FOMO and the technique it describes remain Edge Impulse's.

Tidak ada repository kode upstream untuk FOMO yang dapat ditautkan. Edge Impulse menjelaskan teknik ini melalui posting blog dan dokumentasi produknya, tetapi belum merilis kode pelatihan atau inferensi FOMO. Arsitektur dan pelatihan di sini adalah implementasi LibreYOLO sendiri atas deskripsi yang dipublikasikan, dan checkpoint LibreFOMO yang dipublikasikan dilatih dari nol pada COCO. Karena itu, kode dan bobot ini sama-sama berlisensi MIT milik LibreYOLO. Nama FOMO dan teknik yang dijelaskannya tetap milik Edge Impulse.

Diverifikasi dengan LibreYOLO v1.5.0. Tabel dukungan, checkpoint, dan angka benchmark di halaman ini dihasilkan dari library yang telah dirilis dan bobot yang dipublikasikan, bukan ditulis manual.