This commit is contained in:
jamjamjon
2024-03-29 15:54:24 +08:00
parent abaf8c0d65
commit af934086bb
75 changed files with 4272 additions and 1 deletions

37
examples/rtdetr/README.md Normal file
View File

@@ -0,0 +1,37 @@
## Quick Start
```shell
cargo run -r --example rtdetr
```
## Or you can manully
### 1. Donwload or export ONNX Model
- Export
```bash
pip install -U ultralytics
yolo export model=rtdetr-l.pt format=onnx simplify dynamic opset=16
```
- Download
[rtdetr-l-f16 model](https://github.com/jamjamjon/assets/releases/download/v0.0.1/rtdetr-l-f16.onnx)
### 2. Specify the ONNX model path in `main.rs`
```Rust
let options = Options::default()
.with_model("ONNX_MODEL") // <= modify this
.with_saveout("RT-DETR");
```
### 3. Then, run
```bash
cargo run -r --example rtdetr
```
## Results
![](./demo.jpg)

BIN
examples/rtdetr/demo.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 KiB

19
examples/rtdetr/main.rs Normal file
View File

@@ -0,0 +1,19 @@
use usls::{models::RTDETR, DataLoader, Options, COCO_NAMES_80};
fn main() -> Result<(), Box<dyn std::error::Error>> {
// build model
let options = Options::default()
.with_model("../models/rtdetr-l-f16.onnx")
.with_confs(&[0.4, 0.15]) // person: 0.4, others: 0.15
.with_names(&COCO_NAMES_80)
.with_saveout("RT-DETR");
let mut model = RTDETR::new(&options)?;
// build dataloader
let mut dl = DataLoader::default().load("./assets/bus.jpg")?;
// run
model.run(&dl.next().unwrap().0)?;
Ok(())
}