mirror of
https://github.com/huggingface/candle.git
synced 2025-06-15 18:28:24 +00:00

* added chatGLM readme * changed wording in readme * added readme for chinese-clip * added readme for convmixer * added readme for custom ops * added readme for efficientnet * added readme for llama * added readme to mnist-training * added readme to musicgen * added readme to quantized-phi * added readme to starcoder2 * added readme to whisper-microphone * added readme to yi * added readme to yolo-v3 * added readme to whisper-microphone * added space to example in glm4 readme * fixed mamba example readme to run mamba instead of mamba-minimal * removed slash escape character * changed moondream image to yolo-v8 example image * added procedure for making the reinforcement-learning example work with a virtual environment on my machine * added simple one line summaries to the example readmes without * changed non-existant image to yolo example's bike.jpg * added backslash to sam command * removed trailing - from siglip * added SoX to silero-vad example readme * replaced procedure for uv on mac with warning that uv isn't currently compatible with pyo3 * added example to falcon readme * added --which arg to stella-en-v5 readme * fixed image path in vgg readme * fixed the image path in the vit readme * Update README.md * Update README.md * Update README.md --------- Co-authored-by: Laurent Mazare <laurent.mazare@gmail.com>
45 lines
1.9 KiB
Markdown
45 lines
1.9 KiB
Markdown
# candle-segment-anything: Segment-Anything Model
|
|
|
|
This example is based on Meta AI [Segment-Anything
|
|
Model](https://github.com/facebookresearch/segment-anything). This model
|
|
provides a robust and fast image segmentation pipeline that can be tweaked via
|
|
some prompting (requesting some points to be in the target mask, requesting some
|
|
points to be part of the background so _not_ in the target mask, specifying some
|
|
bounding box).
|
|
|
|
The default backbone can be replaced by the smaller and faster TinyViT model
|
|
based on [MobileSAM](https://github.com/ChaoningZhang/MobileSAM).
|
|
|
|
## Running some example.
|
|
|
|
```bash
|
|
cargo run --example segment-anything --release -- \
|
|
--image candle-examples/examples/yolo-v8/assets/bike.jpg \
|
|
--use-tiny \
|
|
--point 0.6,0.6 --point 0.6,0.55
|
|
```
|
|
|
|
Running this command generates a `sam_merged.jpg` file containing the original
|
|
image with a blue overlay of the selected mask. The red dots represent the prompt
|
|
specified by `--point 0.6,0.6 --point 0.6,0.55`, this prompt is assumed to be part
|
|
of the target mask.
|
|
|
|
The values used for `--point` should be a comma delimited pair of float values.
|
|
They are proportional to the image dimension, i.e. use 0.5 for the image center.
|
|
|
|
Original image:
|
|

|
|
|
|
Segment results by prompting with a single point `--point 0.6,0.55`:
|
|

|
|
|
|
Segment results by prompting with multiple points `--point 0.6,0.6 --point 0.6,0.55`:
|
|

|
|
|
|
### Command-line flags
|
|
- `--use-tiny`: use the TinyViT based MobileSAM backbone rather than the default
|
|
one.
|
|
- `--point`: specifies the location of the target points.
|
|
- `--threshold`: sets the threshold value to be part of the mask, a negative
|
|
value results in a larger mask and can be specified via `--threshold=-1.2`.
|