candle/candle-wasm-examples/segment-anything
Laurent Mazare ad73e93da2
Detach the tensors on batch-norm eval. (#1702)
* Detach the tensors on batch-norm eval.

* Fix pyo3 bindings.

* Black tweak.

* Formatting.

* Also update the pyo3-onnx formatting.

* Apply black.
2024-02-13 14:26:32 +01:00
..
src Remove some unusued bits. (#1067) 2023-10-09 19:49:57 +01:00
Cargo.toml Simplifying our internal cargo dependencies. (#1529) 2024-01-07 12:04:14 +01:00
README.md Detach the tensors on batch-norm eval. (#1702) 2024-02-13 14:26:32 +01:00
build-lib.sh Add a wasm module for the segment anything example. (#797) 2023-09-10 12:29:37 +01:00
lib-example.html feat: [SAM] able to download the result as png (#1035) 2023-10-05 22:14:47 +01:00
samWorker.js [segment-anything] add multi point logic for demo site (#1002) 2023-10-01 18:25:22 +01:00

README.md

Running Segment Anything Example

Here, we provide an example showing how to run the Segment Anything model in the browser.

Vanilla JS and WebWorkers

To build and test the UI made in Vanilla JS and WebWorkers, first we need to build the WASM library:

sh build-lib.sh

This will bundle the library under ./build and we can import it inside our WebWorker like a normal JS module:

import init, { Model } from "./build/m.js";

The full example can be found under ./lib-example.html. All needed assets are fetched from the web, so no need to download anything. Finally, you can preview the example by running a local HTTP server. For example:

python -m http.server

Then open http://localhost:8000/lib-example.html in your browser.