Releases: jamjamjon/usls
v0.0.19
What's Changed
- Add Apple ml-depth-pro model by @jamjamjon in #46
Full Changelog: v0.0.18...v0.0.19
Model | Demo |
---|---|
Depth Anything v1-s (512 x 512) | |
Depth Anything v2-s (512 x 512) | |
Depth Pro (1536 x 1536) |
v0.0.18
What's Changed
- Add support for restricting detection classes by @jamjamjon in #45
Full Changelog: v0.0.17...v0.0.18
v0.0.17
What's Changed
- Add YOLOv11 by @jamjamjon in #42
- Minor fix by @jamjamjon in #43
Full Changelog: v0.0.16...v0.0.17
v0.0.16
What's Changed
- v0.0.16 by @jamjamjon in #41
Full Changelog: v0.0.15...v0.0.16
More Detailed
-
Add
with_device()
forOptions
. Now you can use:let options = Options::new().with_device(Device::Cuda(2)); // or let options = Options::new().with_cuda(2);
-
Add
.with_ixx
to simplify model building withOptions
.// before let options = Options::new() .with_i00((1, 2, 4).into()) .with_i02((416, 640, 800).into()) .with_i03((416, 640, 800).into()); // now let options = Options::new() .with_ixx(0, 0, (1, 2, 4).into()) .with_ixx(0, 2, (416, 640, 800).into()) .with_ixx(0, 3, (416, 640, 800).into());
Note: The above only applies to models with dynamic shapes. If your model does not have dynamic shapes, you do not need to call this interface. Additionally, if you are not using
TensorRT
, you can modify.with_ixx(0, 0, (1, 2, 4).into())
to.with_ixx(0, 0, 2.into())
, or you can use.with_batch_size(2)
to uniformly set the batch size for all inputs. -
Update
MinOptMax
struct. Data type changed fromisize
tousize
. You can create it like:let default_mom = MinOptMax::default(); // min = opt = max = 1 let ones_mom = MinOptMax::ones(); // min = opt = max = 1 let zeros_mom = MinOptMax::zeros(); // min = opt = max = 0 let from_i32: MinOptMax = MinOptMax::from(-5); // min = opt = max = 0 let from_i64: MinOptMax = MinOptMax::from(-3); // min = opt = max = 0 let from_u32: MinOptMax = MinOptMax::from(4u32); // min = opt = max = 4 let from_u64: MinOptMax = MinOptMax::from(7u64); // min = opt = max = 7 let from_usize: MinOptMax = MinOptMax::from(10); // min = opt = max = 10 let from_isize: MinOptMax = MinOptMax::from(-1isize); // min = opt = max = 0 let from_f32: MinOptMax = MinOptMax::from(-2.0); // min = opt = max = 0 let from_f64: MinOptMax = MinOptMax::from(3.9); // min = opt = max = 4 let tuple_mom: MinOptMax = MinOptMax::from((1, 2, 3)); // min = 1, opt = 2, max = 3 let array_mom: MinOptMax = [1, 2, 3].into(); // min = 1, opt = 2, max = 3
-
Add
Viewer
for image displaying and video saving
let mut viewer = Viewer::new().with_delay(10).with_scale(1.).resizable(true);
// iteration
for (xs, _) in dl {
// inference & annotate
let ys = model.run(&xs)?;
let images_plotted = annotator.plot(&xs, &ys, false)?;
// show image
viewer.imshow(&images_plotted)?;
// check out window and key event
if !viewer.is_open() || viewer.is_key_pressed(usls::Key::Escape) {
break;
}
// write video
viewer.write_batch(&images_plotted)?;
}
// finish video write
viewer.finish_write()?;
v0.0.15
What's Changed
- Add florence2-base model by @jamjamjon in #37
Full Changelog: v0.0.14...v0.0.15
Demo
Task | Demo |
---|---|
Caption-To-Phrase-Grounding | |
Ocr-With-Region | |
Dense-Region-Caption | |
Object-Detection | |
Region-Proposal | |
Referring-Expression-Segmentation |
v0.0.14
What's Changed
-
Added
Hub
for resource management<tag/filename>
is from release page, e.g.yolo/v5-n-dyn.onnx
,images/bus.jpg
Hub::new()?.fetch(<tag/filename>)?.commit()?;
-
Updated
DataLoader
to support video and streaminglet dl = DataLoader::new( "./assets/bus.jpg", // local image // "images/bus.jpg", // remote image // "../images", // image folder // "../demo.mp4", // local video // "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4", // remote video // "rtsp://admin:xyz@192.168.2.217:554/h265/ch1/", // rtsp h264 stream )? .with_batch(4) .with_progress_bar(true) .with_bound(100) .build()?; // run for (xs, _) in dl { // std::thread::sleep(std::time::Duration::from_millis(1000)); let ys = model.forward(&xs, false)?; annotator.annotate(&xs, &ys); }
-
Updated
CI
-
Replaced
println!
withtracing
for logging
Full Changelog: v0.0.13...v0.0.14
v0.0.13
What's Changed
Full Changelog: v0.0.12...v0.0.13
v0.0.12
v0.0.11
What's Changed
ONNXRuntime
->1.19.0
CUDA
->12.x
TensorRT
->10.x
Full Changelog: v0.0.10...v0.0.11
v0.0.10
What's Changed
- Add
Xs
, a wrapper overVec<x>
by @jamjamjon in #29 - Add GroundingDINO by @jamjamjon in #30
Full Changelog: v0.0.8...v0.0.10