pub struct Dssim { /* private fields */ }
Expand description
Configuration for the comparison
Implementations
sourceimpl Dssim
impl Dssim
sourcepub fn set_scales(&mut self, scales: &[f64])
pub fn set_scales(&mut self, scales: &[f64])
Set how many scales will be used, and weights of each scale
sourcepub fn set_save_ssim_maps(&mut self, num_scales: u8)
pub fn set_save_ssim_maps(&mut self, num_scales: u8)
Set how many scales will be kept for saving
sourcepub fn create_image_rgba(
&self,
bitmap: &[RGBA<u8, u8>],
width: usize,
height: usize
) -> Option<DssimImage<f32>>
pub fn create_image_rgba(
&self,
bitmap: &[RGBA<u8, u8>],
width: usize,
height: usize
) -> Option<DssimImage<f32>>
Create image from an array of RGBA pixels (sRGB, non-premultiplied, alpha last).
If you have a slice of u8
, then see rgb
crate’s as_rgba()
.
sourcepub fn create_image_rgb(
&self,
bitmap: &[RGB<u8>],
width: usize,
height: usize
) -> Option<DssimImage<f32>>
pub fn create_image_rgb(
&self,
bitmap: &[RGB<u8>],
width: usize,
height: usize
) -> Option<DssimImage<f32>>
Create image from an array of packed RGB pixels (sRGB).
If you have a slice of u8
, then see rgb
crate’s as_rgb()
.
sourcepub fn create_image<InBitmap, OutBitmap>(
&self,
src_img: &InBitmap
) -> Option<DssimImage<f32>> where
InBitmap: ToLABBitmap + Send + Sync + Downsample<Output = OutBitmap>,
OutBitmap: ToLABBitmap + Send + Sync + Downsample<Output = OutBitmap>,
pub fn create_image<InBitmap, OutBitmap>(
&self,
src_img: &InBitmap
) -> Option<DssimImage<f32>> where
InBitmap: ToLABBitmap + Send + Sync + Downsample<Output = OutBitmap>,
OutBitmap: ToLABBitmap + Send + Sync + Downsample<Output = OutBitmap>,
The input image is defined using the imgref
crate, and the pixel type can be:
ImgVec<RGBAPLU>
— RGBA premultiplied alpha, linear, float scaled to 0..1ImgVec<RGBLU>
— RGBA linear, float scaled to 0..1ImgVec<f32>
— linear light grayscale, float scaled to 0..1
And there’s ToRGBAPLU::to_rgbaplu()
trait to convert the input pixels from
[RGBA<u8>]
, [RGBA<u16>]
, [RGB<u8>]
, or RGB<u16>
. See lib.rs
for example how it’s done.
You can implement ToLABBitmap
and Downsample
traits on your own image type.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Dssim
impl Send for Dssim
impl Sync for Dssim
impl Unpin for Dssim
impl UnwindSafe for Dssim
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more