zune_imageprocs/
lib.rs

1#![cfg_attr(feature = "portable-simd", feature(portable_simd))]
2/*
3 * Copyright (c) 2023.
4 *
5 * This software is free software;
6 *
7 * You can redistribute it or modify it under terms of the MIT, Apache License or Zlib license
8 */
9
10//! Image processing routines for `zune-image`
11//!
12//! This implements some common image processing routines to be used with `zune-image`
13//!
14//! It implements the `OperationsTrait` defined by zune-image.
15//!
16//! # Example
17//! - Increase exposure of image by 2.0
18//! ```
19//! use zune_core::colorspace::ColorSpace;
20//! use zune_image::image::Image;
21//! use zune_image::traits::OperationsTrait;
22//! use zune_imageprocs::exposure::Exposure;
23//! let mut image = Image::fill::<u8>(233,ColorSpace::RGB,100,100);
24//! let exposure = Exposure::new(2.0,0.0);
25//! // execute the filter
26//! exposure.execute(&mut image).unwrap();
27//! ```
28
29// Benchmark support needs sse
30#![cfg_attr(feature = "benchmarks", feature(test))]
31#![warn(
32    clippy::correctness,
33    clippy::perf,
34    clippy::pedantic,
35    clippy::inline_always,
36    clippy::missing_errors_doc,
37    clippy::panic
38)]
39#![allow(
40    clippy::needless_return,
41    clippy::similar_names,
42    clippy::inline_always,
43    clippy::similar_names,
44    clippy::doc_markdown,
45    clippy::module_name_repetitions,
46    clippy::missing_panics_doc,
47    clippy::missing_errors_doc,
48    clippy::wildcard_imports,
49    unexpected_cfgs
50)]
51
52pub use zune_image;
53
54pub mod auto_orient;
55pub mod bilateral_filter;
56pub mod blend;
57pub mod box_blur;
58pub mod brighten;
59pub mod color_matrix;
60pub mod composite;
61pub mod contrast;
62pub mod convolve;
63pub mod crop;
64pub mod exposure;
65pub mod flip;
66pub mod gamma;
67pub mod gaussian_blur;
68pub mod color_transform;
69pub mod histogram;
70pub mod hsv_adjust;
71pub mod invert;
72pub mod mathops;
73pub mod median;
74pub mod mirror;
75pub mod pad;
76pub mod premul_alpha;
77mod prewitt;
78pub mod resize;
79pub mod rotate;
80pub mod scharr;
81pub mod sobel;
82pub mod spatial;
83pub mod spatial_ops;
84pub mod stretch_contrast;
85pub mod threshold;
86pub mod traits;
87pub mod transpose;
88pub mod unsharpen;
89mod utils;
90mod image_transfer;
91pub mod affine;