pub struct Photo;Expand description
Photo processing and enhancement algorithms.
Implementations§
Source§impl Photo
impl Photo
Sourcepub fn fast_nl_means_denoising<B: Backend>(
image: &Image<B>,
h: f32,
patch_radius: usize,
search_radius: usize,
) -> Result<Image<B>>
pub fn fast_nl_means_denoising<B: Backend>( image: &Image<B>, h: f32, patch_radius: usize, search_radius: usize, ) -> Result<Image<B>>
Non-Local Means Denoising filter with patch-based similarity.
For each pixel, searches a larger neighborhood for patches similar to the current pixel’s patch. Pixels in similar patches are weighted by their Gaussian-weighted distance to produce the denoised value.
§Arguments
image- Input image with values in [0, 1]h- Filter strength (higher removes more noise but may blur details)patch_radius- Half-size of the comparison patch (default: 3 → 7×7 patch)search_radius- Half-size of the search window (default: 5 → 11×11 window)
Auto Trait Implementations§
impl Freeze for Photo
impl RefUnwindSafe for Photo
impl Send for Photo
impl Sync for Photo
impl Unpin for Photo
impl UnsafeUnpin for Photo
impl UnwindSafe for Photo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more