mirror of
https://github.com/storytold/photocraft.git
synced 2026-10-28 11:57:16 -06:00
Keep the merged upstream row kernel for shorter streaks and unsupported inputs. Use bounded overlap-save convolution of its merged bilinear coefficients when channel pairs, parallelism and memory estimates favor FFT. Preserve alpha cutoff behavior, cancellation, selections and depth/model-neutral filtering. Validate 303 algorithm tests in debug and release, plus native checks and full image comparisons. Repeated current-upstream comparisons show 2.31x at 24 MP and 4.15x at 1.5 MP for angle 30 / distance 1000 on the measured host. Co-authored-by: optimalbytee <optimalbytee@users.noreply.github.com>
25 lines
654 B
TOML
25 lines
654 B
TOML
[package]
|
|
name = "photocraft-algo"
|
|
description = "Depth-agnostic, tile-aware CPU image filters (blur, sharpen, noise, distort, stylize)"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
photocraft-geom = { workspace = true }
|
|
photocraft-color = { workspace = true }
|
|
photocraft-raster = { workspace = true }
|
|
serde = { workspace = true }
|
|
rustfft = "6.4.1"
|
|
|
|
# Parallel tiles on native; wasm builds stay single-threaded.
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
rayon = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
serde_json = { workspace = true }
|