[package]
name = "radsym"
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
description = "Radial symmetry detection: center proposals, local support analysis, scoring, and refinement"
documentation = "https://docs.rs/radsym"
readme = "README.md"
categories = ["algorithms", "multimedia::images", "science"]
keywords = ["radial-symmetry", "image-processing", "circle-detection", "center-voting", "computer-vision"]
include = [
    "README.md",
    "src/**",
    "examples/**",
    "tests/**",
    "benches/**",
    "Cargo.toml",
]

[dependencies]
nalgebra = "0.34"
thiserror = "2"
rayon = { version = "1", optional = true }
image = { version = "0.25", optional = true, default-features = false, features = ["png", "jpeg"] }
tracing = { version = "0.1", optional = true }
serde = { version = "1", features = ["derive"], optional = true }
box-image-pyramid = { version = "0.4.2", default-features = false }

[dev-dependencies]
rand = "0.10"
criterion = "0.8"
approx = "0.5"
serde_json = "1"

[features]
default = []
rayon = ["dep:rayon", "box-image-pyramid/rayon", "box-image-pyramid/par_pyramid"]
image-io = ["dep:image"]
tracing = ["dep:tracing", "box-image-pyramid/tracing"]
affine = []
serde = ["dep:serde", "nalgebra/serde-serialize"]

[[bench]]
name = "frst_bench"
harness = false

[[bench]]
name = "rsd_bench"
harness = false

[[bench]]
name = "ringgrid_proposal_bench"
harness = false

[[bench]]
name = "surf_hole_bench"
harness = false

[[bench]]
name = "refinement_bench"
harness = false

[[bench]]
name = "scoring_bench"
harness = false

[[example]]
name = "detect_rings"
required-features = ["image-io", "serde"]

[[example]]
name = "detect_highlight"
required-features = ["image-io", "serde"]

[[example]]
name = "radial_center_demo"
required-features = ["image-io", "serde"]

[[example]]
name = "diagnostics_demo"
required-features = ["image-io", "serde"]

[[example]]
name = "perf_export"
required-features = ["image-io", "serde"]

[[example]]
name = "gen_demo_samples"
required-features = ["image-io"]
