# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "object_detector"
version = "0.5.0"
build = false
exclude = [
    "assets",
    ".github",
    "TODO.md",
    "justfile",
    "output",
    "py-yolo",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Object detection using ORT and the yoloe-26-seg model. This model can detect multiple objects per image, each having a tag, pixel-level mask, and a boundingbox. It's pretrained, it has a vocabulary of 4000+ objects. "
homepage = "https://github.com/RuurdBijlsma/object_detector-rs"
documentation = "https://docs.rs/object_detector"
readme = "README.md"
license = "AGPL-3.0"
repository = "https://github.com/RuurdBijlsma/object_detector-rs"

[features]
acl = [
    "ort/acl",
    "open_clip_inference?/acl",
]
armnn = [
    "ort/armnn",
    "open_clip_inference?/armnn",
]
azure = [
    "ort/azure",
    "open_clip_inference?/azure",
]
cann = [
    "ort/cann",
    "open_clip_inference?/cann",
]
copy-dylibs = [
    "ort/copy-dylibs",
    "open_clip_inference?/copy-dylibs",
]
coreml = [
    "ort/coreml",
    "open_clip_inference?/coreml",
]
cuda = [
    "ort/cuda",
    "open_clip_inference?/cuda",
]
default = [
    "download-binaries",
    "copy-dylibs",
    "hf-hub",
    "serde",
    "promptable",
]
directml = [
    "ort/directml",
    "open_clip_inference?/directml",
]
download-binaries = [
    "ort/download-binaries",
    "open_clip_inference?/download-binaries",
]
hf-hub = ["dep:hf-hub"]
load-dynamic = [
    "ort/load-dynamic",
    "open_clip_inference?/load-dynamic",
]
migraphx = [
    "ort/migraphx",
    "open_clip_inference?/migraphx",
]
nnapi = [
    "ort/nnapi",
    "open_clip_inference?/nnapi",
]
nvrtx = [
    "ort/nvrtx",
    "open_clip_inference?/nvrtx",
]
onednn = [
    "ort/onednn",
    "open_clip_inference?/onednn",
]
openvino = [
    "ort/openvino",
    "open_clip_inference?/openvino",
]
promptable = ["dep:open_clip_inference"]
qnn = [
    "ort/qnn",
    "open_clip_inference?/qnn",
]
rknpu = [
    "ort/rknpu",
    "open_clip_inference?/rknpu",
]
serde = ["dep:serde"]
tensorrt = [
    "ort/tensorrt",
    "open_clip_inference?/tensorrt",
]
tvm = [
    "ort/tvm",
    "open_clip_inference?/tvm",
]
vitis = [
    "ort/vitis",
    "open_clip_inference?/vitis",
]
webgpu = [
    "ort/webgpu",
    "open_clip_inference?/webgpu",
]
xnnpack = [
    "ort/xnnpack",
    "open_clip_inference?/xnnpack",
]

[lib]
name = "object_detector"
path = "src/lib.rs"

[[example]]
name = "export_regression_outputs"
path = "examples/export_regression_outputs.rs"

[[example]]
name = "prompt_free_basic"
path = "examples/prompt_free_basic.rs"

[[example]]
name = "promptable_basic"
path = "examples/promptable_basic.rs"

[[example]]
name = "visualize"
path = "examples/visualize.rs"

[[test]]
name = "detector_test"
path = "tests/detector_test.rs"

[[test]]
name = "regression"
path = "tests/regression.rs"

[[bench]]
name = "component_benchmarks"
path = "benches/component_benchmarks.rs"
harness = false

[[bench]]
name = "full_benchmarks"
path = "benches/full_benchmarks.rs"
harness = false

[dependencies.bon]
version = "3.9.1"

[dependencies.hf-hub]
version = "0.5.0"
features = ["tokio"]
optional = true

[dependencies.image]
version = "0.25.10"
default-features = false

[dependencies.ndarray]
version = "0.17.2"

[dependencies.num_cpus]
version = "1.17.0"

[dependencies.open_clip_inference]
version = "0.4.0"
optional = true

[dependencies.ort]
version = "2.0.0-rc.12"
features = ["ndarray"]

[dependencies.rayon]
version = "1.11.0"

[dependencies.serde]
version = "1.0.228"
features = ["derive"]
optional = true

[dependencies.serde_json]
version = "1.0.149"

[dependencies.thiserror]
version = "2.0.18"

[dev-dependencies.ab_glyph]
version = "0.2"

[dev-dependencies.color-eyre]
version = "0.6.5"

[dev-dependencies.criterion]
version = "0.8.2"
features = ["html_reports"]

[dev-dependencies.imageproc]
version = "0.26.1"

[dev-dependencies.serde]
version = "1.0"
features = ["derive"]

[dev-dependencies.tokio]
version = "1.51"
features = ["full"]
