hip-1.5.4.0: Haskell Image Processing (HIP) Library.

Copyright(c) Alexey Kuleshevich 2017
LicenseBSD3
MaintainerAlexey Kuleshevich <lehins@yandex.ru>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Graphics.Image.ColorSpace

Contents

Description

 
Synopsis

Pixels

Family of Pixels

Pixel is a type family for all available color spaces. Below is the listed of all class instances, that pixels are installed in, as well as all pixel constructors.

>>> :t (PixelY 0) -- Black pixel in Luma
(PixelY 0) :: Num e => Pixel Y e
>>> PixelRGB 255 0 0 :: Pixel RGB Word8 -- Red pixel in RGB
<RGB:(255|0|0)>
>>> PixelRGB 1 0 0 :: Pixel RGB Double -- Same red pixel in RGB with Double precision.
<RGB:(1.0|0.0|0.0)>
>>> (PixelRGB 255 0 0 :: Pixel RGB Word8) == (toWord8 <$> (PixelRGB 1 0 0 :: Pixel RGB Double))
True

data family Pixel cs e :: * Source #

A Pixel family with a color space and a precision of elements.

Instances
Array arr X Bit => Thresholding Pixel (Image arr) arr Source # 
Instance details

Defined in Graphics.Image.Processing.Binary

Methods

(!==!) :: (Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Pixel cs e -> Image arr cs e -> Image arr cs Bit Source #

(!/=!) :: (Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Pixel cs e -> Image arr cs e -> Image arr cs Bit Source #

(!<!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Pixel cs e -> Image arr cs e -> Image arr cs Bit Source #

(!<=!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Pixel cs e -> Image arr cs e -> Image arr cs Bit Source #

(!>!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Pixel cs e -> Image arr cs e -> Image arr cs Bit Source #

(!>=!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Pixel cs e -> Image arr cs e -> Image arr cs Bit Source #

(.==.) :: (Array arr cs e, Array arr X Bit) => Pixel cs e -> Image arr cs e -> Image arr X Bit Source #

(./=.) :: (Array arr cs e, Array arr X Bit) => Pixel cs e -> Image arr cs e -> Image arr X Bit Source #

(.<.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Pixel cs e -> Image arr cs e -> Image arr X Bit Source #

(.<=.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Pixel cs e -> Image arr cs e -> Image arr X Bit Source #

(.>.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Pixel cs e -> Image arr cs e -> Image arr X Bit Source #

(.>=.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Pixel cs e -> Image arr cs e -> Image arr X Bit Source #

ColorSpace cs e => Vector Vector (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface.Vector.Unboxing

Methods

basicUnsafeFreeze :: PrimMonad m => Mutable Vector (PrimState m) (Pixel cs e) -> m (Vector (Pixel cs e)) #

basicUnsafeThaw :: PrimMonad m => Vector (Pixel cs e) -> m (Mutable Vector (PrimState m) (Pixel cs e)) #

basicLength :: Vector (Pixel cs e) -> Int #

basicUnsafeSlice :: Int -> Int -> Vector (Pixel cs e) -> Vector (Pixel cs e) #

basicUnsafeIndexM :: Monad m => Vector (Pixel cs e) -> Int -> m (Pixel cs e) #

basicUnsafeCopy :: PrimMonad m => Mutable Vector (PrimState m) (Pixel cs e) -> Vector (Pixel cs e) -> m () #

elemseq :: Vector (Pixel cs e) -> Pixel cs e -> b -> b #

ColorSpace cs e => MVector MVector (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface.Vector.Unboxing

Methods

basicLength :: MVector s (Pixel cs e) -> Int #

basicUnsafeSlice :: Int -> Int -> MVector s (Pixel cs e) -> MVector s (Pixel cs e) #

basicOverlaps :: MVector s (Pixel cs e) -> MVector s (Pixel cs e) -> Bool #

basicUnsafeNew :: PrimMonad m => Int -> m (MVector (PrimState m) (Pixel cs e)) #

basicInitialize :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> m () #

basicUnsafeReplicate :: PrimMonad m => Int -> Pixel cs e -> m (MVector (PrimState m) (Pixel cs e)) #

basicUnsafeRead :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> Int -> m (Pixel cs e) #

basicUnsafeWrite :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> Int -> Pixel cs e -> m () #

basicClear :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> m () #

basicSet :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> Pixel cs e -> m () #

basicUnsafeCopy :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> MVector (PrimState m) (Pixel cs e) -> m () #

basicUnsafeMove :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> MVector (PrimState m) (Pixel cs e) -> m () #

basicUnsafeGrow :: PrimMonad m => MVector (PrimState m) (Pixel cs e) -> Int -> m (MVector (PrimState m) (Pixel cs e)) #

Monad (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(>>=) :: Pixel Y a -> (a -> Pixel Y b) -> Pixel Y b #

(>>) :: Pixel Y a -> Pixel Y b -> Pixel Y b #

return :: a -> Pixel Y a #

fail :: String -> Pixel Y a #

Monad (Pixel X) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

(>>=) :: Pixel X a -> (a -> Pixel X b) -> Pixel X b #

(>>) :: Pixel X a -> Pixel X b -> Pixel X b #

return :: a -> Pixel X a #

fail :: String -> Pixel X a #

Functor (Pixel YCbCrA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

fmap :: (a -> b) -> Pixel YCbCrA a -> Pixel YCbCrA b #

(<$) :: a -> Pixel YCbCrA b -> Pixel YCbCrA a #

Functor (Pixel YCbCr) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

fmap :: (a -> b) -> Pixel YCbCr a -> Pixel YCbCr b #

(<$) :: a -> Pixel YCbCr b -> Pixel YCbCr a #

Functor (Pixel YA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fmap :: (a -> b) -> Pixel YA a -> Pixel YA b #

(<$) :: a -> Pixel YA b -> Pixel YA a #

Functor (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fmap :: (a -> b) -> Pixel Y a -> Pixel Y b #

(<$) :: a -> Pixel Y b -> Pixel Y a #

Functor (Pixel RGBA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

fmap :: (a -> b) -> Pixel RGBA a -> Pixel RGBA b #

(<$) :: a -> Pixel RGBA b -> Pixel RGBA a #

Functor (Pixel RGB) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

fmap :: (a -> b) -> Pixel RGB a -> Pixel RGB b #

(<$) :: a -> Pixel RGB b -> Pixel RGB a #

Functor (Pixel HSIA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

fmap :: (a -> b) -> Pixel HSIA a -> Pixel HSIA b #

(<$) :: a -> Pixel HSIA b -> Pixel HSIA a #

Functor (Pixel HSI) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

fmap :: (a -> b) -> Pixel HSI a -> Pixel HSI b #

(<$) :: a -> Pixel HSI b -> Pixel HSI a #

Functor (Pixel CMYKA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

fmap :: (a -> b) -> Pixel CMYKA a -> Pixel CMYKA b #

(<$) :: a -> Pixel CMYKA b -> Pixel CMYKA a #

Functor (Pixel CMYK) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

fmap :: (a -> b) -> Pixel CMYK a -> Pixel CMYK b #

(<$) :: a -> Pixel CMYK b -> Pixel CMYK a #

Functor (Pixel X) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

fmap :: (a -> b) -> Pixel X a -> Pixel X b #

(<$) :: a -> Pixel X b -> Pixel X a #

Applicative (Pixel YCbCrA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

pure :: a -> Pixel YCbCrA a #

(<*>) :: Pixel YCbCrA (a -> b) -> Pixel YCbCrA a -> Pixel YCbCrA b #

liftA2 :: (a -> b -> c) -> Pixel YCbCrA a -> Pixel YCbCrA b -> Pixel YCbCrA c #

(*>) :: Pixel YCbCrA a -> Pixel YCbCrA b -> Pixel YCbCrA b #

(<*) :: Pixel YCbCrA a -> Pixel YCbCrA b -> Pixel YCbCrA a #

Applicative (Pixel YCbCr) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

pure :: a -> Pixel YCbCr a #

(<*>) :: Pixel YCbCr (a -> b) -> Pixel YCbCr a -> Pixel YCbCr b #

liftA2 :: (a -> b -> c) -> Pixel YCbCr a -> Pixel YCbCr b -> Pixel YCbCr c #

(*>) :: Pixel YCbCr a -> Pixel YCbCr b -> Pixel YCbCr b #

(<*) :: Pixel YCbCr a -> Pixel YCbCr b -> Pixel YCbCr a #

Applicative (Pixel YA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

pure :: a -> Pixel YA a #

(<*>) :: Pixel YA (a -> b) -> Pixel YA a -> Pixel YA b #

liftA2 :: (a -> b -> c) -> Pixel YA a -> Pixel YA b -> Pixel YA c #

(*>) :: Pixel YA a -> Pixel YA b -> Pixel YA b #

(<*) :: Pixel YA a -> Pixel YA b -> Pixel YA a #

Applicative (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

pure :: a -> Pixel Y a #

(<*>) :: Pixel Y (a -> b) -> Pixel Y a -> Pixel Y b #

liftA2 :: (a -> b -> c) -> Pixel Y a -> Pixel Y b -> Pixel Y c #

(*>) :: Pixel Y a -> Pixel Y b -> Pixel Y b #

(<*) :: Pixel Y a -> Pixel Y b -> Pixel Y a #

Applicative (Pixel RGBA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

pure :: a -> Pixel RGBA a #

(<*>) :: Pixel RGBA (a -> b) -> Pixel RGBA a -> Pixel RGBA b #

liftA2 :: (a -> b -> c) -> Pixel RGBA a -> Pixel RGBA b -> Pixel RGBA c #

(*>) :: Pixel RGBA a -> Pixel RGBA b -> Pixel RGBA b #

(<*) :: Pixel RGBA a -> Pixel RGBA b -> Pixel RGBA a #

Applicative (Pixel RGB) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

pure :: a -> Pixel RGB a #

(<*>) :: Pixel RGB (a -> b) -> Pixel RGB a -> Pixel RGB b #

liftA2 :: (a -> b -> c) -> Pixel RGB a -> Pixel RGB b -> Pixel RGB c #

(*>) :: Pixel RGB a -> Pixel RGB b -> Pixel RGB b #

(<*) :: Pixel RGB a -> Pixel RGB b -> Pixel RGB a #

Applicative (Pixel HSIA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

pure :: a -> Pixel HSIA a #

(<*>) :: Pixel HSIA (a -> b) -> Pixel HSIA a -> Pixel HSIA b #

liftA2 :: (a -> b -> c) -> Pixel HSIA a -> Pixel HSIA b -> Pixel HSIA c #

(*>) :: Pixel HSIA a -> Pixel HSIA b -> Pixel HSIA b #

(<*) :: Pixel HSIA a -> Pixel HSIA b -> Pixel HSIA a #

Applicative (Pixel HSI) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

pure :: a -> Pixel HSI a #

(<*>) :: Pixel HSI (a -> b) -> Pixel HSI a -> Pixel HSI b #

liftA2 :: (a -> b -> c) -> Pixel HSI a -> Pixel HSI b -> Pixel HSI c #

(*>) :: Pixel HSI a -> Pixel HSI b -> Pixel HSI b #

(<*) :: Pixel HSI a -> Pixel HSI b -> Pixel HSI a #

Applicative (Pixel CMYKA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

pure :: a -> Pixel CMYKA a #

(<*>) :: Pixel CMYKA (a -> b) -> Pixel CMYKA a -> Pixel CMYKA b #

liftA2 :: (a -> b -> c) -> Pixel CMYKA a -> Pixel CMYKA b -> Pixel CMYKA c #

(*>) :: Pixel CMYKA a -> Pixel CMYKA b -> Pixel CMYKA b #

(<*) :: Pixel CMYKA a -> Pixel CMYKA b -> Pixel CMYKA a #

Applicative (Pixel CMYK) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

pure :: a -> Pixel CMYK a #

(<*>) :: Pixel CMYK (a -> b) -> Pixel CMYK a -> Pixel CMYK b #

liftA2 :: (a -> b -> c) -> Pixel CMYK a -> Pixel CMYK b -> Pixel CMYK c #

(*>) :: Pixel CMYK a -> Pixel CMYK b -> Pixel CMYK b #

(<*) :: Pixel CMYK a -> Pixel CMYK b -> Pixel CMYK a #

Applicative (Pixel X) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

pure :: a -> Pixel X a #

(<*>) :: Pixel X (a -> b) -> Pixel X a -> Pixel X b #

liftA2 :: (a -> b -> c) -> Pixel X a -> Pixel X b -> Pixel X c #

(*>) :: Pixel X a -> Pixel X b -> Pixel X b #

(<*) :: Pixel X a -> Pixel X b -> Pixel X a #

Foldable (Pixel YCbCrA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

fold :: Monoid m => Pixel YCbCrA m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel YCbCrA a -> m #

foldr :: (a -> b -> b) -> b -> Pixel YCbCrA a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel YCbCrA a -> b #

foldl :: (b -> a -> b) -> b -> Pixel YCbCrA a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel YCbCrA a -> b #

foldr1 :: (a -> a -> a) -> Pixel YCbCrA a -> a #

foldl1 :: (a -> a -> a) -> Pixel YCbCrA a -> a #

toList :: Pixel YCbCrA a -> [a] #

null :: Pixel YCbCrA a -> Bool #

length :: Pixel YCbCrA a -> Int #

elem :: Eq a => a -> Pixel YCbCrA a -> Bool #

maximum :: Ord a => Pixel YCbCrA a -> a #

minimum :: Ord a => Pixel YCbCrA a -> a #

sum :: Num a => Pixel YCbCrA a -> a #

product :: Num a => Pixel YCbCrA a -> a #

Foldable (Pixel YCbCr) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

fold :: Monoid m => Pixel YCbCr m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel YCbCr a -> m #

foldr :: (a -> b -> b) -> b -> Pixel YCbCr a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel YCbCr a -> b #

foldl :: (b -> a -> b) -> b -> Pixel YCbCr a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel YCbCr a -> b #

foldr1 :: (a -> a -> a) -> Pixel YCbCr a -> a #

foldl1 :: (a -> a -> a) -> Pixel YCbCr a -> a #

toList :: Pixel YCbCr a -> [a] #

null :: Pixel YCbCr a -> Bool #

length :: Pixel YCbCr a -> Int #

elem :: Eq a => a -> Pixel YCbCr a -> Bool #

maximum :: Ord a => Pixel YCbCr a -> a #

minimum :: Ord a => Pixel YCbCr a -> a #

sum :: Num a => Pixel YCbCr a -> a #

product :: Num a => Pixel YCbCr a -> a #

Foldable (Pixel YA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fold :: Monoid m => Pixel YA m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel YA a -> m #

foldr :: (a -> b -> b) -> b -> Pixel YA a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel YA a -> b #

foldl :: (b -> a -> b) -> b -> Pixel YA a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel YA a -> b #

foldr1 :: (a -> a -> a) -> Pixel YA a -> a #

foldl1 :: (a -> a -> a) -> Pixel YA a -> a #

toList :: Pixel YA a -> [a] #

null :: Pixel YA a -> Bool #

length :: Pixel YA a -> Int #

elem :: Eq a => a -> Pixel YA a -> Bool #

maximum :: Ord a => Pixel YA a -> a #

minimum :: Ord a => Pixel YA a -> a #

sum :: Num a => Pixel YA a -> a #

product :: Num a => Pixel YA a -> a #

Foldable (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fold :: Monoid m => Pixel Y m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel Y a -> m #

foldr :: (a -> b -> b) -> b -> Pixel Y a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel Y a -> b #

foldl :: (b -> a -> b) -> b -> Pixel Y a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel Y a -> b #

foldr1 :: (a -> a -> a) -> Pixel Y a -> a #

foldl1 :: (a -> a -> a) -> Pixel Y a -> a #

toList :: Pixel Y a -> [a] #

null :: Pixel Y a -> Bool #

length :: Pixel Y a -> Int #

elem :: Eq a => a -> Pixel Y a -> Bool #

maximum :: Ord a => Pixel Y a -> a #

minimum :: Ord a => Pixel Y a -> a #

sum :: Num a => Pixel Y a -> a #

product :: Num a => Pixel Y a -> a #

Foldable (Pixel RGBA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

fold :: Monoid m => Pixel RGBA m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel RGBA a -> m #

foldr :: (a -> b -> b) -> b -> Pixel RGBA a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel RGBA a -> b #

foldl :: (b -> a -> b) -> b -> Pixel RGBA a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel RGBA a -> b #

foldr1 :: (a -> a -> a) -> Pixel RGBA a -> a #

foldl1 :: (a -> a -> a) -> Pixel RGBA a -> a #

toList :: Pixel RGBA a -> [a] #

null :: Pixel RGBA a -> Bool #

length :: Pixel RGBA a -> Int #

elem :: Eq a => a -> Pixel RGBA a -> Bool #

maximum :: Ord a => Pixel RGBA a -> a #

minimum :: Ord a => Pixel RGBA a -> a #

sum :: Num a => Pixel RGBA a -> a #

product :: Num a => Pixel RGBA a -> a #

Foldable (Pixel RGB) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

fold :: Monoid m => Pixel RGB m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel RGB a -> m #

foldr :: (a -> b -> b) -> b -> Pixel RGB a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel RGB a -> b #

foldl :: (b -> a -> b) -> b -> Pixel RGB a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel RGB a -> b #

foldr1 :: (a -> a -> a) -> Pixel RGB a -> a #

foldl1 :: (a -> a -> a) -> Pixel RGB a -> a #

toList :: Pixel RGB a -> [a] #

null :: Pixel RGB a -> Bool #

length :: Pixel RGB a -> Int #

elem :: Eq a => a -> Pixel RGB a -> Bool #

maximum :: Ord a => Pixel RGB a -> a #

minimum :: Ord a => Pixel RGB a -> a #

sum :: Num a => Pixel RGB a -> a #

product :: Num a => Pixel RGB a -> a #

Foldable (Pixel HSIA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

fold :: Monoid m => Pixel HSIA m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel HSIA a -> m #

foldr :: (a -> b -> b) -> b -> Pixel HSIA a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel HSIA a -> b #

foldl :: (b -> a -> b) -> b -> Pixel HSIA a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel HSIA a -> b #

foldr1 :: (a -> a -> a) -> Pixel HSIA a -> a #

foldl1 :: (a -> a -> a) -> Pixel HSIA a -> a #

toList :: Pixel HSIA a -> [a] #

null :: Pixel HSIA a -> Bool #

length :: Pixel HSIA a -> Int #

elem :: Eq a => a -> Pixel HSIA a -> Bool #

maximum :: Ord a => Pixel HSIA a -> a #

minimum :: Ord a => Pixel HSIA a -> a #

sum :: Num a => Pixel HSIA a -> a #

product :: Num a => Pixel HSIA a -> a #

Foldable (Pixel HSI) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

fold :: Monoid m => Pixel HSI m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel HSI a -> m #

foldr :: (a -> b -> b) -> b -> Pixel HSI a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel HSI a -> b #

foldl :: (b -> a -> b) -> b -> Pixel HSI a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel HSI a -> b #

foldr1 :: (a -> a -> a) -> Pixel HSI a -> a #

foldl1 :: (a -> a -> a) -> Pixel HSI a -> a #

toList :: Pixel HSI a -> [a] #

null :: Pixel HSI a -> Bool #

length :: Pixel HSI a -> Int #

elem :: Eq a => a -> Pixel HSI a -> Bool #

maximum :: Ord a => Pixel HSI a -> a #

minimum :: Ord a => Pixel HSI a -> a #

sum :: Num a => Pixel HSI a -> a #

product :: Num a => Pixel HSI a -> a #

Foldable (Pixel CMYKA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

fold :: Monoid m => Pixel CMYKA m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel CMYKA a -> m #

foldr :: (a -> b -> b) -> b -> Pixel CMYKA a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel CMYKA a -> b #

foldl :: (b -> a -> b) -> b -> Pixel CMYKA a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel CMYKA a -> b #

foldr1 :: (a -> a -> a) -> Pixel CMYKA a -> a #

foldl1 :: (a -> a -> a) -> Pixel CMYKA a -> a #

toList :: Pixel CMYKA a -> [a] #

null :: Pixel CMYKA a -> Bool #

length :: Pixel CMYKA a -> Int #

elem :: Eq a => a -> Pixel CMYKA a -> Bool #

maximum :: Ord a => Pixel CMYKA a -> a #

minimum :: Ord a => Pixel CMYKA a -> a #

sum :: Num a => Pixel CMYKA a -> a #

product :: Num a => Pixel CMYKA a -> a #

Foldable (Pixel CMYK) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

fold :: Monoid m => Pixel CMYK m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel CMYK a -> m #

foldr :: (a -> b -> b) -> b -> Pixel CMYK a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel CMYK a -> b #

foldl :: (b -> a -> b) -> b -> Pixel CMYK a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel CMYK a -> b #

foldr1 :: (a -> a -> a) -> Pixel CMYK a -> a #

foldl1 :: (a -> a -> a) -> Pixel CMYK a -> a #

toList :: Pixel CMYK a -> [a] #

null :: Pixel CMYK a -> Bool #

length :: Pixel CMYK a -> Int #

elem :: Eq a => a -> Pixel CMYK a -> Bool #

maximum :: Ord a => Pixel CMYK a -> a #

minimum :: Ord a => Pixel CMYK a -> a #

sum :: Num a => Pixel CMYK a -> a #

product :: Num a => Pixel CMYK a -> a #

Foldable (Pixel X) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

fold :: Monoid m => Pixel X m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel X a -> m #

foldr :: (a -> b -> b) -> b -> Pixel X a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel X a -> b #

foldl :: (b -> a -> b) -> b -> Pixel X a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel X a -> b #

foldr1 :: (a -> a -> a) -> Pixel X a -> a #

foldl1 :: (a -> a -> a) -> Pixel X a -> a #

toList :: Pixel X a -> [a] #

null :: Pixel X a -> Bool #

length :: Pixel X a -> Int #

elem :: Eq a => a -> Pixel X a -> Bool #

maximum :: Ord a => Pixel X a -> a #

minimum :: Ord a => Pixel X a -> a #

sum :: Num a => Pixel X a -> a #

product :: Num a => Pixel X a -> a #

Array arr X Bit => Thresholding (Image arr) Pixel arr Source # 
Instance details

Defined in Graphics.Image.Processing.Binary

Methods

(!==!) :: (Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Image arr cs e -> Pixel cs e -> Image arr cs Bit Source #

(!/=!) :: (Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Image arr cs e -> Pixel cs e -> Image arr cs Bit Source #

(!<!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Image arr cs e -> Pixel cs e -> Image arr cs Bit Source #

(!<=!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Image arr cs e -> Pixel cs e -> Image arr cs Bit Source #

(!>!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Image arr cs e -> Pixel cs e -> Image arr cs Bit Source #

(!>=!) :: (Ord e, Applicative (Pixel cs), Array arr cs e, Array arr cs Bit) => Image arr cs e -> Pixel cs e -> Image arr cs Bit Source #

(.==.) :: (Array arr cs e, Array arr X Bit) => Image arr cs e -> Pixel cs e -> Image arr X Bit Source #

(./=.) :: (Array arr cs e, Array arr X Bit) => Image arr cs e -> Pixel cs e -> Image arr X Bit Source #

(.<.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Image arr cs e -> Pixel cs e -> Image arr X Bit Source #

(.<=.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Image arr cs e -> Pixel cs e -> Image arr X Bit Source #

(.>.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Image arr cs e -> Pixel cs e -> Image arr X Bit Source #

(.>=.) :: (Ord (Pixel cs e), Array arr cs e, Array arr X Bit) => Image arr cs e -> Pixel cs e -> Image arr X Bit Source #

(ColorSpace cs e, Bounded e) => Bounded (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface

Methods

minBound :: Pixel cs e #

maxBound :: Pixel cs e #

Eq e => Eq (Pixel YCbCrA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

(==) :: Pixel YCbCrA e -> Pixel YCbCrA e -> Bool #

(/=) :: Pixel YCbCrA e -> Pixel YCbCrA e -> Bool #

Eq e => Eq (Pixel YCbCr e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

(==) :: Pixel YCbCr e -> Pixel YCbCr e -> Bool #

(/=) :: Pixel YCbCr e -> Pixel YCbCr e -> Bool #

Eq e => Eq (Pixel YA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(==) :: Pixel YA e -> Pixel YA e -> Bool #

(/=) :: Pixel YA e -> Pixel YA e -> Bool #

Eq e => Eq (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(==) :: Pixel Y e -> Pixel Y e -> Bool #

(/=) :: Pixel Y e -> Pixel Y e -> Bool #

Eq e => Eq (Pixel RGBA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

(==) :: Pixel RGBA e -> Pixel RGBA e -> Bool #

(/=) :: Pixel RGBA e -> Pixel RGBA e -> Bool #

Eq e => Eq (Pixel RGB e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

(==) :: Pixel RGB e -> Pixel RGB e -> Bool #

(/=) :: Pixel RGB e -> Pixel RGB e -> Bool #

Eq e => Eq (Pixel HSIA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

(==) :: Pixel HSIA e -> Pixel HSIA e -> Bool #

(/=) :: Pixel HSIA e -> Pixel HSIA e -> Bool #

Eq e => Eq (Pixel HSI e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

(==) :: Pixel HSI e -> Pixel HSI e -> Bool #

(/=) :: Pixel HSI e -> Pixel HSI e -> Bool #

Eq e => Eq (Pixel CMYKA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

(==) :: Pixel CMYKA e -> Pixel CMYKA e -> Bool #

(/=) :: Pixel CMYKA e -> Pixel CMYKA e -> Bool #

Eq e => Eq (Pixel CMYK e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

(==) :: Pixel CMYK e -> Pixel CMYK e -> Bool #

(/=) :: Pixel CMYK e -> Pixel CMYK e -> Bool #

Eq e => Eq (Pixel X e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

(==) :: Pixel X e -> Pixel X e -> Bool #

(/=) :: Pixel X e -> Pixel X e -> Bool #

(ColorSpace cs e, Floating e) => Floating (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface

Methods

pi :: Pixel cs e #

exp :: Pixel cs e -> Pixel cs e #

log :: Pixel cs e -> Pixel cs e #

sqrt :: Pixel cs e -> Pixel cs e #

(**) :: Pixel cs e -> Pixel cs e -> Pixel cs e #

logBase :: Pixel cs e -> Pixel cs e -> Pixel cs e #

sin :: Pixel cs e -> Pixel cs e #

cos :: Pixel cs e -> Pixel cs e #

tan :: Pixel cs e -> Pixel cs e #

asin :: Pixel cs e -> Pixel cs e #

acos :: Pixel cs e -> Pixel cs e #

atan :: Pixel cs e -> Pixel cs e #

sinh :: Pixel cs e -> Pixel cs e #

cosh :: Pixel cs e -> Pixel cs e #

tanh :: Pixel cs e -> Pixel cs e #

asinh :: Pixel cs e -> Pixel cs e #

acosh :: Pixel cs e -> Pixel cs e #

atanh :: Pixel cs e -> Pixel cs e #

log1p :: Pixel cs e -> Pixel cs e #

expm1 :: Pixel cs e -> Pixel cs e #

log1pexp :: Pixel cs e -> Pixel cs e #

log1mexp :: Pixel cs e -> Pixel cs e #

(ColorSpace cs e, Fractional e) => Fractional (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface

Methods

(/) :: Pixel cs e -> Pixel cs e -> Pixel cs e #

recip :: Pixel cs e -> Pixel cs e #

fromRational :: Rational -> Pixel cs e #

ColorSpace cs e => Num (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface

Methods

(+) :: Pixel cs e -> Pixel cs e -> Pixel cs e #

(-) :: Pixel cs e -> Pixel cs e -> Pixel cs e #

(*) :: Pixel cs e -> Pixel cs e -> Pixel cs e #

negate :: Pixel cs e -> Pixel cs e #

abs :: Pixel cs e -> Pixel cs e #

signum :: Pixel cs e -> Pixel cs e #

fromInteger :: Integer -> Pixel cs e #

Ord e => Ord (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

compare :: Pixel Y e -> Pixel Y e -> Ordering #

(<) :: Pixel Y e -> Pixel Y e -> Bool #

(<=) :: Pixel Y e -> Pixel Y e -> Bool #

(>) :: Pixel Y e -> Pixel Y e -> Bool #

(>=) :: Pixel Y e -> Pixel Y e -> Bool #

max :: Pixel Y e -> Pixel Y e -> Pixel Y e #

min :: Pixel Y e -> Pixel Y e -> Pixel Y e #

Ord e => Ord (Pixel X e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

compare :: Pixel X e -> Pixel X e -> Ordering #

(<) :: Pixel X e -> Pixel X e -> Bool #

(<=) :: Pixel X e -> Pixel X e -> Bool #

(>) :: Pixel X e -> Pixel X e -> Bool #

(>=) :: Pixel X e -> Pixel X e -> Bool #

max :: Pixel X e -> Pixel X e -> Pixel X e #

min :: Pixel X e -> Pixel X e -> Pixel X e #

Show e => Show (Pixel YCbCrA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Show e => Show (Pixel YCbCr e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

showsPrec :: Int -> Pixel YCbCr e -> ShowS #

show :: Pixel YCbCr e -> String #

showList :: [Pixel YCbCr e] -> ShowS #

Show e => Show (Pixel YA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

showsPrec :: Int -> Pixel YA e -> ShowS #

show :: Pixel YA e -> String #

showList :: [Pixel YA e] -> ShowS #

Show e => Show (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

showsPrec :: Int -> Pixel Y e -> ShowS #

show :: Pixel Y e -> String #

showList :: [Pixel Y e] -> ShowS #

Show e => Show (Pixel RGBA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

showsPrec :: Int -> Pixel RGBA e -> ShowS #

show :: Pixel RGBA e -> String #

showList :: [Pixel RGBA e] -> ShowS #

Show e => Show (Pixel RGB e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

showsPrec :: Int -> Pixel RGB e -> ShowS #

show :: Pixel RGB e -> String #

showList :: [Pixel RGB e] -> ShowS #

Show e => Show (Pixel HSIA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

showsPrec :: Int -> Pixel HSIA e -> ShowS #

show :: Pixel HSIA e -> String #

showList :: [Pixel HSIA e] -> ShowS #

Show e => Show (Pixel HSI e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

showsPrec :: Int -> Pixel HSI e -> ShowS #

show :: Pixel HSI e -> String #

showList :: [Pixel HSI e] -> ShowS #

Show e => Show (Pixel CMYKA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

showsPrec :: Int -> Pixel CMYKA e -> ShowS #

show :: Pixel CMYKA e -> String #

showList :: [Pixel CMYKA e] -> ShowS #

Show e => Show (Pixel CMYK e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

showsPrec :: Int -> Pixel CMYK e -> ShowS #

show :: Pixel CMYK e -> String #

showList :: [Pixel CMYK e] -> ShowS #

Show e => Show (Pixel X e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

showsPrec :: Int -> Pixel X e -> ShowS #

show :: Pixel X e -> String #

showList :: [Pixel X e] -> ShowS #

Storable e => Storable (Pixel YCbCrA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

sizeOf :: Pixel YCbCrA e -> Int #

alignment :: Pixel YCbCrA e -> Int #

peekElemOff :: Ptr (Pixel YCbCrA e) -> Int -> IO (Pixel YCbCrA e) #

pokeElemOff :: Ptr (Pixel YCbCrA e) -> Int -> Pixel YCbCrA e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel YCbCrA e) #

pokeByteOff :: Ptr b -> Int -> Pixel YCbCrA e -> IO () #

peek :: Ptr (Pixel YCbCrA e) -> IO (Pixel YCbCrA e) #

poke :: Ptr (Pixel YCbCrA e) -> Pixel YCbCrA e -> IO () #

Storable e => Storable (Pixel YCbCr e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

Methods

sizeOf :: Pixel YCbCr e -> Int #

alignment :: Pixel YCbCr e -> Int #

peekElemOff :: Ptr (Pixel YCbCr e) -> Int -> IO (Pixel YCbCr e) #

pokeElemOff :: Ptr (Pixel YCbCr e) -> Int -> Pixel YCbCr e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel YCbCr e) #

pokeByteOff :: Ptr b -> Int -> Pixel YCbCr e -> IO () #

peek :: Ptr (Pixel YCbCr e) -> IO (Pixel YCbCr e) #

poke :: Ptr (Pixel YCbCr e) -> Pixel YCbCr e -> IO () #

Storable e => Storable (Pixel YA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

sizeOf :: Pixel YA e -> Int #

alignment :: Pixel YA e -> Int #

peekElemOff :: Ptr (Pixel YA e) -> Int -> IO (Pixel YA e) #

pokeElemOff :: Ptr (Pixel YA e) -> Int -> Pixel YA e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel YA e) #

pokeByteOff :: Ptr b -> Int -> Pixel YA e -> IO () #

peek :: Ptr (Pixel YA e) -> IO (Pixel YA e) #

poke :: Ptr (Pixel YA e) -> Pixel YA e -> IO () #

Storable e => Storable (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

sizeOf :: Pixel Y e -> Int #

alignment :: Pixel Y e -> Int #

peekElemOff :: Ptr (Pixel Y e) -> Int -> IO (Pixel Y e) #

pokeElemOff :: Ptr (Pixel Y e) -> Int -> Pixel Y e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel Y e) #

pokeByteOff :: Ptr b -> Int -> Pixel Y e -> IO () #

peek :: Ptr (Pixel Y e) -> IO (Pixel Y e) #

poke :: Ptr (Pixel Y e) -> Pixel Y e -> IO () #

Storable e => Storable (Pixel RGBA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

sizeOf :: Pixel RGBA e -> Int #

alignment :: Pixel RGBA e -> Int #

peekElemOff :: Ptr (Pixel RGBA e) -> Int -> IO (Pixel RGBA e) #

pokeElemOff :: Ptr (Pixel RGBA e) -> Int -> Pixel RGBA e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel RGBA e) #

pokeByteOff :: Ptr b -> Int -> Pixel RGBA e -> IO () #

peek :: Ptr (Pixel RGBA e) -> IO (Pixel RGBA e) #

poke :: Ptr (Pixel RGBA e) -> Pixel RGBA e -> IO () #

Storable e => Storable (Pixel RGB e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

sizeOf :: Pixel RGB e -> Int #

alignment :: Pixel RGB e -> Int #

peekElemOff :: Ptr (Pixel RGB e) -> Int -> IO (Pixel RGB e) #

pokeElemOff :: Ptr (Pixel RGB e) -> Int -> Pixel RGB e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel RGB e) #

pokeByteOff :: Ptr b -> Int -> Pixel RGB e -> IO () #

peek :: Ptr (Pixel RGB e) -> IO (Pixel RGB e) #

poke :: Ptr (Pixel RGB e) -> Pixel RGB e -> IO () #

Storable e => Storable (Pixel HSIA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

sizeOf :: Pixel HSIA e -> Int #

alignment :: Pixel HSIA e -> Int #

peekElemOff :: Ptr (Pixel HSIA e) -> Int -> IO (Pixel HSIA e) #

pokeElemOff :: Ptr (Pixel HSIA e) -> Int -> Pixel HSIA e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel HSIA e) #

pokeByteOff :: Ptr b -> Int -> Pixel HSIA e -> IO () #

peek :: Ptr (Pixel HSIA e) -> IO (Pixel HSIA e) #

poke :: Ptr (Pixel HSIA e) -> Pixel HSIA e -> IO () #

Storable e => Storable (Pixel HSI e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

Methods

sizeOf :: Pixel HSI e -> Int #

alignment :: Pixel HSI e -> Int #

peekElemOff :: Ptr (Pixel HSI e) -> Int -> IO (Pixel HSI e) #

pokeElemOff :: Ptr (Pixel HSI e) -> Int -> Pixel HSI e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel HSI e) #

pokeByteOff :: Ptr b -> Int -> Pixel HSI e -> IO () #

peek :: Ptr (Pixel HSI e) -> IO (Pixel HSI e) #

poke :: Ptr (Pixel HSI e) -> Pixel HSI e -> IO () #

Storable e => Storable (Pixel CMYKA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

sizeOf :: Pixel CMYKA e -> Int #

alignment :: Pixel CMYKA e -> Int #

peekElemOff :: Ptr (Pixel CMYKA e) -> Int -> IO (Pixel CMYKA e) #

pokeElemOff :: Ptr (Pixel CMYKA e) -> Int -> Pixel CMYKA e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel CMYKA e) #

pokeByteOff :: Ptr b -> Int -> Pixel CMYKA e -> IO () #

peek :: Ptr (Pixel CMYKA e) -> IO (Pixel CMYKA e) #

poke :: Ptr (Pixel CMYKA e) -> Pixel CMYKA e -> IO () #

Storable e => Storable (Pixel CMYK e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

Methods

sizeOf :: Pixel CMYK e -> Int #

alignment :: Pixel CMYK e -> Int #

peekElemOff :: Ptr (Pixel CMYK e) -> Int -> IO (Pixel CMYK e) #

pokeElemOff :: Ptr (Pixel CMYK e) -> Int -> Pixel CMYK e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel CMYK e) #

pokeByteOff :: Ptr b -> Int -> Pixel CMYK e -> IO () #

peek :: Ptr (Pixel CMYK e) -> IO (Pixel CMYK e) #

poke :: Ptr (Pixel CMYK e) -> Pixel CMYK e -> IO () #

Storable e => Storable (Pixel X e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

Methods

sizeOf :: Pixel X e -> Int #

alignment :: Pixel X e -> Int #

peekElemOff :: Ptr (Pixel X e) -> Int -> IO (Pixel X e) #

pokeElemOff :: Ptr (Pixel X e) -> Int -> Pixel X e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel X e) #

pokeByteOff :: Ptr b -> Int -> Pixel X e -> IO () #

peek :: Ptr (Pixel X e) -> IO (Pixel X e) #

poke :: Ptr (Pixel X e) -> Pixel X e -> IO () #

Bits (Pixel X Bit) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

(Foldable (Pixel cs), NFData e) => NFData (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface

Methods

rnf :: Pixel cs e -> () #

ColorSpace cs e => Unbox (Pixel cs e) Source #

Unboxing of a Pixel.

Instance details

Defined in Graphics.Image.Interface.Vector.Unboxing

(ColorSpace cs e, Elt e, Num (Pixel cs e)) => Elt (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface.Repa.Generic

Methods

touch :: Pixel cs e -> IO () #

zero :: Pixel cs e #

one :: Pixel cs e #

data Pixel YCbCrA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

data Pixel YCbCrA e = PixelYCbCrA !e !e !e !e
data Pixel YCbCr e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.YCbCr

data Pixel YCbCr e = PixelYCbCr !e !e !e
data Pixel YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

data Pixel YA e = PixelYA !e !e
newtype Pixel Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

newtype Pixel Y e = PixelY e
data Pixel RGBA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

data Pixel RGBA e = PixelRGBA !e !e !e !e
data Pixel RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

data Pixel RGB e = PixelRGB !e !e !e
data Pixel HSIA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

data Pixel HSIA e = PixelHSIA !e !e !e !e
data Pixel HSI e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.HSI

data Pixel HSI e = PixelHSI !e !e !e
data Pixel CMYKA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

data Pixel CMYKA e = PixelCMYKA !e !e !e !e !e
data Pixel CMYK e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.CMYK

data Pixel CMYK e = PixelCMYK !e !e !e !e
newtype Pixel X e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.X

newtype Pixel X e = PixelX {}
newtype MVector s (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface.Vector.Unboxing

newtype MVector s (Pixel cs e) = MV_Pixel (MVector s (Components cs e))
newtype Vector (Pixel cs e) Source # 
Instance details

Defined in Graphics.Image.Interface.Vector.Unboxing

newtype Vector (Pixel cs e) = V_Pixel (Vector (Components cs e))

Luma (gray scale)

Conversion to Luma from other color spaces.

toPixelY :: ToY cs e => Pixel cs e -> Pixel Y Double Source #

Convert a pixel to Luma pixel.

toImageY :: (ToY cs e, Array arr cs e, Array arr Y Double) => Image arr cs e -> Image arr Y Double Source #

Convert an image to Luma image.

toPixelYA :: ToYA cs e => Pixel cs e -> Pixel YA Double Source #

Convert a pixel to Luma pixel with Alpha.

toImageYA :: (ToYA cs e, Array arr cs e, Array arr YA Double) => Image arr cs e -> Image arr YA Double Source #

Convert an image to Luma image with Alpha.

RGB

Conversion to RGB from other color spaces.

toPixelRGB :: ToRGB cs e => Pixel cs e -> Pixel RGB Double Source #

Convert to an RGB pixel.

toImageRGB :: (ToRGB cs e, Array arr cs e, Array arr RGB Double) => Image arr cs e -> Image arr RGB Double Source #

Convert to an RGB image.

toPixelRGBA :: ToRGBA cs e => Pixel cs e -> Pixel RGBA Double Source #

Convert to an RGBA pixel.

toImageRGBA :: (ToRGBA cs e, Array arr cs e, Array arr RGBA Double) => Image arr cs e -> Image arr RGBA Double Source #

Convert to an RGBA image.

HSI

Conversion to HSI from other color spaces.

toPixelHSI :: ToHSI cs e => Pixel cs e -> Pixel HSI Double Source #

Convert to an HSI pixel.

toImageHSI :: (ToHSI cs e, Array arr cs e, Array arr HSI Double) => Image arr cs e -> Image arr HSI Double Source #

Convert to an HSI image.

toPixelHSIA :: ToHSIA cs e => Pixel cs e -> Pixel HSIA Double Source #

Convert to an HSIA pixel.

toImageHSIA :: (ToHSIA cs e, Array arr cs e, Array arr HSIA Double) => Image arr cs e -> Image arr HSIA Double Source #

Convert to an HSIA image.

CMYK

Conversion to CMYK from other color spaces.

toPixelCMYK :: ToCMYK cs e => Pixel cs e -> Pixel CMYK Double Source #

Convert to a CMYK pixel.

toImageCMYK :: (ToCMYK cs e, Array arr cs e, Array arr CMYK Double) => Image arr cs e -> Image arr CMYK Double Source #

Convert to a CMYK image.

toPixelCMYKA :: ToCMYKA cs e => Pixel cs e -> Pixel CMYKA Double Source #

Convert to a CMYKA pixel.

toImageCMYKA :: (ToCMYKA cs e, Array arr cs e, Array arr CMYKA Double) => Image arr cs e -> Image arr CMYKA Double Source #

Convert to a CMYKA image.

YCbCr

Conversion to YCbCr from other color spaces.

toPixelYCbCr :: ToYCbCr cs e => Pixel cs e -> Pixel YCbCr Double Source #

Convert to an YCbCr pixel.

toImageYCbCr :: (ToYCbCr cs e, Array arr cs e, Array arr YCbCr Double) => Image arr cs e -> Image arr YCbCr Double Source #

Convert to an YCbCr image.

toPixelYCbCrA :: ToYCbCrA cs e => Pixel cs e -> Pixel YCbCrA Double Source #

Convert to an YCbCrA pixel.

toImageYCbCrA :: (ToYCbCrA cs e, Array arr cs e, Array arr YCbCrA Double) => Image arr cs e -> Image arr YCbCrA Double Source #

Convert to an YCbCrA image.

Binary

This is a Binary colorspace, pixel's of which can be created using these constructors:

on
Represents value 1 or True. It's a foreground pixel and is displayed in black.
off
Represents value 0 or False. It's a background pixel and is displayed in white.

Note, that values are inverted before writing to or reading from file, since grayscale images represent black as a 0 value and white as 1 on a [0,1] scale.

Binary pixels also behave as binary numbers with a size of 1-bit, for instance:

>>> on + on -- equivalent to: 1 .|. 1
<Binary:(1)>
>>> (on + on) * off -- equivalent to: (1 .|. 1) .&. 0
<Binary:(0)>
>>> (on + on) - on
<Binary:(0)>

toPixelBinary :: ColorSpace cs e => Pixel cs e -> Pixel X Bit Source #

Convert to a Binary pixel.

fromPixelBinary :: Pixel X Bit -> Pixel Y Word8 Source #

Convert a Binary pixel to Luma pixel

toImageBinary :: (Array arr cs e, Array arr X Bit) => Image arr cs e -> Image arr X Bit Source #

Convert to a Binary image.

fromImageBinary :: (Array arr X Bit, Array arr Y Word8) => Image arr X Bit -> Image arr Y Word8 Source #

Convert a Binary image to Luma image

newtype Bit Source #

Under the hood, binary pixels are represented as Word8, but can only take values of 0 or 1. Use zero/one to construct a bit and on/off to construct a binary pixel.

Constructors

Bit Word8 
Instances
Eq Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

Methods

(==) :: Bit -> Bit -> Bool #

(/=) :: Bit -> Bit -> Bool #

Num Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

Methods

(+) :: Bit -> Bit -> Bit #

(-) :: Bit -> Bit -> Bit #

(*) :: Bit -> Bit -> Bit #

negate :: Bit -> Bit #

abs :: Bit -> Bit #

signum :: Bit -> Bit #

fromInteger :: Integer -> Bit #

Ord Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

Methods

compare :: Bit -> Bit -> Ordering #

(<) :: Bit -> Bit -> Bool #

(<=) :: Bit -> Bit -> Bool #

(>) :: Bit -> Bit -> Bool #

(>=) :: Bit -> Bit -> Bool #

max :: Bit -> Bit -> Bit #

min :: Bit -> Bit -> Bit #

Show Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

Methods

showsPrec :: Int -> Bit -> ShowS #

show :: Bit -> String #

showList :: [Bit] -> ShowS #

Storable Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

Methods

sizeOf :: Bit -> Int #

alignment :: Bit -> Int #

peekElemOff :: Ptr Bit -> Int -> IO Bit #

pokeElemOff :: Ptr Bit -> Int -> Bit -> IO () #

peekByteOff :: Ptr b -> Int -> IO Bit #

pokeByteOff :: Ptr b -> Int -> Bit -> IO () #

peek :: Ptr Bit -> IO Bit #

poke :: Ptr Bit -> Bit -> IO () #

Bits Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

Methods

(.&.) :: Bit -> Bit -> Bit #

(.|.) :: Bit -> Bit -> Bit #

xor :: Bit -> Bit -> Bit #

complement :: Bit -> Bit #

shift :: Bit -> Int -> Bit #

rotate :: Bit -> Int -> Bit #

zeroBits :: Bit #

bit :: Int -> Bit #

setBit :: Bit -> Int -> Bit #

clearBit :: Bit -> Int -> Bit #

complementBit :: Bit -> Int -> Bit #

testBit :: Bit -> Int -> Bool #

bitSizeMaybe :: Bit -> Maybe Int #

bitSize :: Bit -> Int #

isSigned :: Bit -> Bool #

shiftL :: Bit -> Int -> Bit #

unsafeShiftL :: Bit -> Int -> Bit #

shiftR :: Bit -> Int -> Bit #

unsafeShiftR :: Bit -> Int -> Bit #

rotateL :: Bit -> Int -> Bit #

rotateR :: Bit -> Int -> Bit #

popCount :: Bit -> Int #

Unbox Bit Source #

Unboxing of a Bit.

Instance details

Defined in Graphics.Image.ColorSpace.Binary

Elt Bit Source # 
Instance details

Defined in Graphics.Image.Interface.Repa.Generic

Methods

touch :: Bit -> IO () #

zero :: Bit #

one :: Bit #

Elevator Bit Source #

Values: 0 and 1

Instance details

Defined in Graphics.Image.ColorSpace.Binary

Vector Vector Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

MVector MVector Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

ToRGBA X Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToRGB X Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToYA X Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Readable [Image VS X Bit] (Seq PBM) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Bits (Pixel X Bit) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

Writable (Image VS X Bit) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS X Bit) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS X Bit) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS X Bit) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS X Bit) PBM Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable (Image VS X Bit) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS X Bit) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS X Bit) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS X Bit) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

newtype Vector Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

newtype MVector s Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Binary

newtype MVector s Bit = MV_Bit (MVector s Word8)

on :: Pixel X Bit Source #

Represents value True or 1 in binary. Often also called a foreground pixel of an object.

off :: Pixel X Bit Source #

Represents value False or 0 in binary. Often also called a background pixel.

isOn :: Pixel X Bit -> Bool Source #

Test if Pixel's value is on.

isOff :: Pixel X Bit -> Bool Source #

Test if Pixel's value is off.

fromBool :: Bool -> Pixel X Bit Source #

Convert a Bool to a binary pixel.

>>> isOn (fromBool True)
True

toNum :: Num a => Bit -> a Source #

fromNum :: (Eq a, Num a) => a -> Bit Source #

Complex

Rectangular form

data Complex a #

Complex numbers are an algebraic type.

For a complex number z, abs z is a number with the magnitude of z, but oriented in the positive real direction, whereas signum z has the phase of z, but unit magnitude.

The Foldable and Traversable instances traverse the real part first.

Note that Complex's instances inherit the deficiencies from the type parameter's. For example, Complex Float's Ord instance has similar problems to Float's.

Constructors

!a :+ !a infix 6

forms a complex number from its real and imaginary rectangular components.

Instances
Monad Complex

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

(>>=) :: Complex a -> (a -> Complex b) -> Complex b #

(>>) :: Complex a -> Complex b -> Complex b #

return :: a -> Complex a #

fail :: String -> Complex a #

Functor Complex

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

fmap :: (a -> b) -> Complex a -> Complex b #

(<$) :: a -> Complex b -> Complex a #

Applicative Complex

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

pure :: a -> Complex a #

(<*>) :: Complex (a -> b) -> Complex a -> Complex b #

liftA2 :: (a -> b -> c) -> Complex a -> Complex b -> Complex c #

(*>) :: Complex a -> Complex b -> Complex b #

(<*) :: Complex a -> Complex b -> Complex a #

Foldable Complex

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

fold :: Monoid m => Complex m -> m #

foldMap :: Monoid m => (a -> m) -> Complex a -> m #

foldr :: (a -> b -> b) -> b -> Complex a -> b #

foldr' :: (a -> b -> b) -> b -> Complex a -> b #

foldl :: (b -> a -> b) -> b -> Complex a -> b #

foldl' :: (b -> a -> b) -> b -> Complex a -> b #

foldr1 :: (a -> a -> a) -> Complex a -> a #

foldl1 :: (a -> a -> a) -> Complex a -> a #

toList :: Complex a -> [a] #

null :: Complex a -> Bool #

length :: Complex a -> Int #

elem :: Eq a => a -> Complex a -> Bool #

maximum :: Ord a => Complex a -> a #

minimum :: Ord a => Complex a -> a #

sum :: Num a => Complex a -> a #

product :: Num a => Complex a -> a #

Traversable Complex

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

traverse :: Applicative f => (a -> f b) -> Complex a -> f (Complex b) #

sequenceA :: Applicative f => Complex (f a) -> f (Complex a) #

mapM :: Monad m => (a -> m b) -> Complex a -> m (Complex b) #

sequence :: Monad m => Complex (m a) -> m (Complex a) #

Traversable1 Complex 
Instance details

Defined in Data.Semigroup.Traversable.Class

Methods

traverse1 :: Apply f => (a -> f b) -> Complex a -> f (Complex b) #

sequence1 :: Apply f => Complex (f b) -> f (Complex b) #

Representable Complex 
Instance details

Defined in Data.Functor.Rep

Associated Types

type Rep Complex :: Type #

Methods

tabulate :: (Rep Complex -> a) -> Complex a #

index :: Complex a -> Rep Complex -> a #

Affine Complex 
Instance details

Defined in Linear.Affine

Associated Types

type Diff Complex :: Type -> Type #

Methods

(.-.) :: Num a => Complex a -> Complex a -> Diff Complex a #

(.+^) :: Num a => Complex a -> Diff Complex a -> Complex a #

(.-^) :: Num a => Complex a -> Diff Complex a -> Complex a #

Complicated Complex 
Instance details

Defined in Linear.Quaternion

Methods

_e :: Lens' (Complex a) a #

_i :: Lens' (Complex a) a #

Finite Complex 
Instance details

Defined in Linear.V

Associated Types

type Size Complex :: Nat #

Methods

toV :: Complex a -> V (Size Complex) a #

fromV :: V (Size Complex) a -> Complex a #

Unbox a => Vector Vector (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Unbox a => MVector MVector (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

Eq a => Eq (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Methods

(==) :: Complex a -> Complex a -> Bool #

(/=) :: Complex a -> Complex a -> Bool #

RealFloat a => Floating (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Methods

pi :: Complex a #

exp :: Complex a -> Complex a #

log :: Complex a -> Complex a #

sqrt :: Complex a -> Complex a #

(**) :: Complex a -> Complex a -> Complex a #

logBase :: Complex a -> Complex a -> Complex a #

sin :: Complex a -> Complex a #

cos :: Complex a -> Complex a #

tan :: Complex a -> Complex a #

asin :: Complex a -> Complex a #

acos :: Complex a -> Complex a #

atan :: Complex a -> Complex a #

sinh :: Complex a -> Complex a #

cosh :: Complex a -> Complex a #

tanh :: Complex a -> Complex a #

asinh :: Complex a -> Complex a #

acosh :: Complex a -> Complex a #

atanh :: Complex a -> Complex a #

log1p :: Complex a -> Complex a #

expm1 :: Complex a -> Complex a #

log1pexp :: Complex a -> Complex a #

log1mexp :: Complex a -> Complex a #

RealFloat a => Fractional (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Methods

(/) :: Complex a -> Complex a -> Complex a #

recip :: Complex a -> Complex a #

fromRational :: Rational -> Complex a #

Data a => Data (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Complex a -> c (Complex a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Complex a) #

toConstr :: Complex a -> Constr #

dataTypeOf :: Complex a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Complex a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Complex a)) #

gmapT :: (forall b. Data b => b -> b) -> Complex a -> Complex a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Complex a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Complex a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Complex a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Complex a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Complex a -> m (Complex a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Complex a -> m (Complex a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Complex a -> m (Complex a) #

RealFloat a => Num (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Methods

(+) :: Complex a -> Complex a -> Complex a #

(-) :: Complex a -> Complex a -> Complex a #

(*) :: Complex a -> Complex a -> Complex a #

negate :: Complex a -> Complex a #

abs :: Complex a -> Complex a #

signum :: Complex a -> Complex a #

fromInteger :: Integer -> Complex a #

Read a => Read (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Show a => Show (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Methods

showsPrec :: Int -> Complex a -> ShowS #

show :: Complex a -> String #

showList :: [Complex a] -> ShowS #

Generic (Complex a) 
Instance details

Defined in Data.Complex

Associated Types

type Rep (Complex a) :: Type -> Type #

Methods

from :: Complex a -> Rep (Complex a) x #

to :: Rep (Complex a) x -> Complex a #

(Default a, RealFloat a) => Default (Complex a) 
Instance details

Defined in Data.Default.Class

Methods

def :: Complex a #

Storable a => Storable (Complex a)

Since: base-4.8.0.0

Instance details

Defined in Data.Complex

Methods

sizeOf :: Complex a -> Int #

alignment :: Complex a -> Int #

peekElemOff :: Ptr (Complex a) -> Int -> IO (Complex a) #

pokeElemOff :: Ptr (Complex a) -> Int -> Complex a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Complex a) #

pokeByteOff :: Ptr b -> Int -> Complex a -> IO () #

peek :: Ptr (Complex a) -> IO (Complex a) #

poke :: Ptr (Complex a) -> Complex a -> IO () #

NFData a => NFData (Complex a) 
Instance details

Defined in Control.DeepSeq

Methods

rnf :: Complex a -> () #

Unbox a => Unbox (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

(Num e, Elt e) => Elt (Complex e) Source # 
Instance details

Defined in Graphics.Image.Interface.Repa.Generic

Methods

touch :: Complex e -> IO () #

zero :: Complex e #

one :: Complex e #

(Num e, Elevator e, RealFloat e) => Elevator (Complex e) Source #

Discards imaginary part and changes precision of real part.

Instance details

Defined in Graphics.Image.Interface.Elevator

Generic1 Complex 
Instance details

Defined in Data.Complex

Associated Types

type Rep1 Complex :: k -> Type #

Methods

from1 :: Complex a -> Rep1 Complex a #

to1 :: Rep1 Complex a -> Complex a #

Each (Complex a) (Complex b) a b
each :: (RealFloat a, RealFloat b) => Traversal (Complex a) (Complex b) a b
Instance details

Defined in Control.Lens.Each

Methods

each :: Traversal (Complex a) (Complex b) a b #

ComplexWritable format arr cs e => Writable (Image arr cs (Complex e)) format Source #

Writing Complex images: places real part on the left side of imaginary part.

Instance details

Defined in Graphics.Image.IO.Base

Methods

encode :: format -> [SaveOption format] -> Image arr cs (Complex e) -> ByteString Source #

type Rep Complex 
Instance details

Defined in Data.Functor.Rep

type Diff Complex 
Instance details

Defined in Linear.Affine

type Size Complex 
Instance details

Defined in Linear.V

type Size Complex = 2
newtype MVector s (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype MVector s (Complex a) = MV_Complex (MVector s (a, a))
type Rep (Complex a)

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

type Index (Complex a) 
Instance details

Defined in Control.Lens.At

type Index (Complex a) = Int
newtype Vector (Complex a) 
Instance details

Defined in Data.Vector.Unboxed.Base

newtype Vector (Complex a) = V_Complex (Vector (a, a))
type Rep1 Complex

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

(+:) :: Applicative (Pixel cs) => Pixel cs e -> Pixel cs e -> Pixel cs (Complex e) infix 6 Source #

Constrcut a complex pixel from two pixels representing real and imaginary parts.

 PixelRGB 4 8 6 +: PixelRGB 7 1 1 == PixelRGB (4 :+ 7) (8 :+ 1) (6 :+ 1)

realPart :: (Applicative (Pixel cs), RealFloat e) => Pixel cs (Complex e) -> Pixel cs e Source #

Extracts the real part of a complex pixel.

imagPart :: (Applicative (Pixel cs), RealFloat e) => Pixel cs (Complex e) -> Pixel cs e Source #

Extracts the imaginary part of a complex pixel.

Polar form

mkPolar :: (Applicative (Pixel cs), RealFloat e) => Pixel cs e -> Pixel cs e -> Pixel cs (Complex e) Source #

Form a complex pixel from polar components of magnitude and phase.

cis :: (Applicative (Pixel cs), RealFloat e) => Pixel cs e -> Pixel cs (Complex e) Source #

cis t is a complex pixel with magnitude 1 and phase t (modulo 2*pi).

polar :: (Applicative (Pixel cs), RealFloat e) => Pixel cs (Complex e) -> (Pixel cs e, Pixel cs e) Source #

The function polar takes a complex pixel and returns a (magnitude, phase) pair of pixels in canonical form: the magnitude is nonnegative, and the phase in the range (-pi, pi]; if the magnitude is zero, then so is the phase.

magnitude :: (Applicative (Pixel cs), RealFloat e) => Pixel cs (Complex e) -> Pixel cs e Source #

The nonnegative magnitude of a complex pixel.

phase :: (Applicative (Pixel cs), RealFloat e) => Pixel cs (Complex e) -> Pixel cs e Source #

The phase of a complex pixel, in the range (-pi, pi]. If the magnitude is zero, then so is the phase.

Conjugate

conjugate :: (Applicative (Pixel cs), RealFloat e) => Pixel cs (Complex e) -> Pixel cs (Complex e) Source #

The conjugate of a complex pixel.

X

squashWith :: (Array arr cs e, Array arr X b) => (b -> e -> b) -> b -> Image arr cs e -> Image arr X b Source #

Apply a left fold to each of the pixels in the image.

squashWith2 :: (Array arr cs e, Array arr X b) => (b -> e -> e -> b) -> b -> Image arr cs e -> Image arr cs e -> Image arr X b Source #

Combination of zipWith and simultanious left fold on two pixels at the same time.

toPixelsX :: ColorSpace cs e => Pixel cs e -> [Pixel X e] Source #

Separate a Pixel into a list of components with X pixels containing every component from the pixel.

>>> toPixelsX (PixelRGB 4 5 6)
[<X:(4)>,<X:(5)>,<X:(6)>]

fromPixelsX :: ColorSpace cs e => [(cs, Pixel X e)] -> Pixel cs e Source #

Combine a list of X pixels into a Pixel with a specified channel order. Not the most efficient way to construct a pixel, but might prove useful to someone.

>>> fromPixelsX [(RedRGB, 3), (BlueRGB, 5), (GreenRGB, 4)]
<RGB:(3.0|4.0|5.0)>
>>> fromPixelsX $ zip (enumFrom RedRGB) (toPixelsX $ PixelRGB 4 5 6)
<RGB:(4.0|5.0|6.0)>

toImagesX :: (Array arr cs e, Array arr X e) => Image arr cs e -> [Image arr X e] Source #

Separate an image into a list of images with X pixels containing every channel from the source image.

>>> frog <- readImageRGB "images/frog.jpg"
>>> let [frog_red, frog_green, frog_blue] = toImagesX frog
>>> writeImage "images/frog_red.png" $ toImageY frog_red
>>> writeImage "images/frog_green.jpg" $ toImageY frog_green
>>> writeImage "images/frog_blue.jpg" $ toImageY frog_blue

fromImagesX :: (Array arr X e, Array arr cs e) => [(cs, Image arr X e)] -> Image arr cs e Source #

Combine a list of images with X pixels into an image of any color space, by supplying an order of color space channels.

For example here is a frog with swapped BlueRGB and GreenRGB channels.

>>> writeImage "images/frog_rbg.jpg" $ fromImagesX [(RedRGB, frog_red), (BlueRGB, frog_green), (GreenRGB, frog_blue)]

It is worth noting though, despite that separating image channels can be sometimes pretty useful, exactly the same effect as in example above can be achieved in a much simpler and a more efficient way:

 map (\(PixelRGB r g b) -> PixelRGB r b g) frog

ColorSpace

Operations on Pixels

eqTolPx :: (ColorSpace cs e, Ord e) => e -> Pixel cs e -> Pixel cs e -> Bool Source #

Check weather two Pixels are equal within a tolerance. Useful for comparing pixels with Float or Double precision.

Luma

data Y Source #

Luma or brightness, which is usually denoted as Y'.

Constructors

LumaY 
Instances
Bounded Y Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

minBound :: Y #

maxBound :: Y #

Enum Y Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

succ :: Y -> Y #

pred :: Y -> Y #

toEnum :: Int -> Y #

fromEnum :: Y -> Int #

enumFrom :: Y -> [Y] #

enumFromThen :: Y -> Y -> [Y] #

enumFromTo :: Y -> Y -> [Y] #

enumFromThenTo :: Y -> Y -> Y -> [Y] #

Eq Y Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(==) :: Y -> Y -> Bool #

(/=) :: Y -> Y -> Bool #

Show Y Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

showsPrec :: Int -> Y -> ShowS #

show :: Y -> String #

showList :: [Y] -> ShowS #

ChannelColour Y Source # 
Instance details

Defined in Graphics.Image.IO.Histogram

Elevator e => ColorSpace Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Associated Types

type Components Y e :: Type Source #

Methods

toComponents :: Pixel Y e -> Components Y e Source #

fromComponents :: Components Y e -> Pixel Y e Source #

promote :: e -> Pixel Y e Source #

getPxC :: Pixel Y e -> Y -> e Source #

setPxC :: Pixel Y e -> Y -> e -> Pixel Y e Source #

mapPxC :: (Y -> e -> e) -> Pixel Y e -> Pixel Y e Source #

liftPx :: (e -> e) -> Pixel Y e -> Pixel Y e Source #

liftPx2 :: (e -> e -> e) -> Pixel Y e -> Pixel Y e -> Pixel Y e Source #

foldlPx2 :: (b -> e -> e -> b) -> b -> Pixel Y e -> Pixel Y e -> b Source #

foldrPx :: (e -> b -> b) -> b -> Pixel Y e -> b Source #

foldlPx :: (b -> e -> b) -> b -> Pixel Y e -> b Source #

foldl1Px :: (e -> e -> e) -> Pixel Y e -> e Source #

toListPx :: Pixel Y e -> [e] Source #

ToYCbCr Y e => ToYCbCrA Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYCbCr Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToCMYK Y e => ToCMYKA Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToCMYK Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToHSI Y e => ToHSIA Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToHSI Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToRGB Y e => ToRGBA Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToRGB Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToY Y e => ToYA Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Methods

toPixelY :: Pixel Y e -> Pixel Y Double Source #

Convertible Y Double Source # 
Instance details

Defined in Graphics.Image.IO.Base

Methods

convert :: (ToYA cs' e', ToRGBA cs' e', Array arr cs' e', Array arr Y Double) => Image arr cs' e' -> Image arr Y Double Source #

Monad (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(>>=) :: Pixel Y a -> (a -> Pixel Y b) -> Pixel Y b #

(>>) :: Pixel Y a -> Pixel Y b -> Pixel Y b #

return :: a -> Pixel Y a #

fail :: String -> Pixel Y a #

Functor (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fmap :: (a -> b) -> Pixel Y a -> Pixel Y b #

(<$) :: a -> Pixel Y b -> Pixel Y a #

Applicative (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

pure :: a -> Pixel Y a #

(<*>) :: Pixel Y (a -> b) -> Pixel Y a -> Pixel Y b #

liftA2 :: (a -> b -> c) -> Pixel Y a -> Pixel Y b -> Pixel Y c #

(*>) :: Pixel Y a -> Pixel Y b -> Pixel Y b #

(<*) :: Pixel Y a -> Pixel Y b -> Pixel Y a #

Foldable (Pixel Y) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fold :: Monoid m => Pixel Y m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel Y a -> m #

foldr :: (a -> b -> b) -> b -> Pixel Y a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel Y a -> b #

foldl :: (b -> a -> b) -> b -> Pixel Y a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel Y a -> b #

foldr1 :: (a -> a -> a) -> Pixel Y a -> a #

foldl1 :: (a -> a -> a) -> Pixel Y a -> a #

toList :: Pixel Y a -> [a] #

null :: Pixel Y a -> Bool #

length :: Pixel Y a -> Int #

elem :: Eq a => a -> Pixel Y a -> Bool #

maximum :: Ord a => Pixel Y a -> a #

minimum :: Ord a => Pixel Y a -> a #

sum :: Num a => Pixel Y a -> a #

product :: Num a => Pixel Y a -> a #

Readable [Image VS Y Double] GIFA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS Y Double] (Seq GIF) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS Y Word8] (Seq PGM) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable [Image VS Y Word16] (Seq PGM) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Eq e => Eq (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(==) :: Pixel Y e -> Pixel Y e -> Bool #

(/=) :: Pixel Y e -> Pixel Y e -> Bool #

Ord e => Ord (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

compare :: Pixel Y e -> Pixel Y e -> Ordering #

(<) :: Pixel Y e -> Pixel Y e -> Bool #

(<=) :: Pixel Y e -> Pixel Y e -> Bool #

(>) :: Pixel Y e -> Pixel Y e -> Bool #

(>=) :: Pixel Y e -> Pixel Y e -> Bool #

max :: Pixel Y e -> Pixel Y e -> Pixel Y e #

min :: Pixel Y e -> Pixel Y e -> Pixel Y e #

Show e => Show (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

showsPrec :: Int -> Pixel Y e -> ShowS #

show :: Pixel Y e -> String #

showList :: [Pixel Y e] -> ShowS #

Storable e => Storable (Pixel Y e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

sizeOf :: Pixel Y e -> Int #

alignment :: Pixel Y e -> Int #

peekElemOff :: Ptr (Pixel Y e) -> Int -> IO (Pixel Y e) #

pokeElemOff :: Ptr (Pixel Y e) -> Int -> Pixel Y e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel Y e) #

pokeByteOff :: Ptr b -> Int -> Pixel Y e -> IO () #

peek :: Ptr (Pixel Y e) -> IO (Pixel Y e) #

poke :: Ptr (Pixel Y e) -> Pixel Y e -> IO () #

Writable (Image VS Y Double) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Double) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Double) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Double) JPG Source #

Image is converted YCbCr color space prior to encoding.

Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Double) HDR Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Double) GIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Double) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Word8) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Word8) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Word8) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Word8) JPG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Word8) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Word16) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS Y Word16) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Double) PPM Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable (Image VS Y Double) PGM Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable (Image VS Y Double) PBM Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable (Image VS Y Double) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Double) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Double) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Double) JPG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Double) HDR Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Double) GIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Double) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Word8) PGM Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable (Image VS Y Word8) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Word8) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Word8) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Word8) JPG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Word8) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Word16) PGM Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable (Image VS Y Word16) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS Y Word16) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

newtype Pixel Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

newtype Pixel Y e = PixelY e
type Components Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

type Components Y e = e

data YA Source #

Luma with Alpha channel.

Constructors

LumaYA

Luma

AlphaYA

Alpha channel

Instances
Bounded YA Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

minBound :: YA #

maxBound :: YA #

Enum YA Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

succ :: YA -> YA #

pred :: YA -> YA #

toEnum :: Int -> YA #

fromEnum :: YA -> Int #

enumFrom :: YA -> [YA] #

enumFromThen :: YA -> YA -> [YA] #

enumFromTo :: YA -> YA -> [YA] #

enumFromThenTo :: YA -> YA -> YA -> [YA] #

Eq YA Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(==) :: YA -> YA -> Bool #

(/=) :: YA -> YA -> Bool #

Show YA Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

showsPrec :: Int -> YA -> ShowS #

show :: YA -> String #

showList :: [YA] -> ShowS #

ChannelColour YA Source # 
Instance details

Defined in Graphics.Image.IO.Histogram

Elevator e => AlphaSpace YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Associated Types

type Opaque YA :: Type Source #

Methods

getAlpha :: Pixel YA e -> e Source #

addAlpha :: e -> Pixel (Opaque YA) e -> Pixel YA e Source #

dropAlpha :: Pixel YA e -> Pixel (Opaque YA) e Source #

Elevator e => ColorSpace YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Associated Types

type Components YA e :: Type Source #

Methods

toComponents :: Pixel YA e -> Components YA e Source #

fromComponents :: Components YA e -> Pixel YA e Source #

promote :: e -> Pixel YA e Source #

getPxC :: Pixel YA e -> YA -> e Source #

setPxC :: Pixel YA e -> YA -> e -> Pixel YA e Source #

mapPxC :: (YA -> e -> e) -> Pixel YA e -> Pixel YA e Source #

liftPx :: (e -> e) -> Pixel YA e -> Pixel YA e Source #

liftPx2 :: (e -> e -> e) -> Pixel YA e -> Pixel YA e -> Pixel YA e Source #

foldlPx2 :: (b -> e -> e -> b) -> b -> Pixel YA e -> Pixel YA e -> b Source #

foldrPx :: (e -> b -> b) -> b -> Pixel YA e -> b Source #

foldlPx :: (b -> e -> b) -> b -> Pixel YA e -> b Source #

foldl1Px :: (e -> e -> e) -> Pixel YA e -> e Source #

toListPx :: Pixel YA e -> [e] Source #

Elevator e => ToYCbCrA YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYCbCr YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToCMYKA YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToCMYK YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToHSIA YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToHSI YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToRGBA YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToRGB YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYA YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Convertible YA Double Source # 
Instance details

Defined in Graphics.Image.IO.Base

Methods

convert :: (ToYA cs' e', ToRGBA cs' e', Array arr cs' e', Array arr YA Double) => Image arr cs' e' -> Image arr YA Double Source #

Functor (Pixel YA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fmap :: (a -> b) -> Pixel YA a -> Pixel YA b #

(<$) :: a -> Pixel YA b -> Pixel YA a #

Applicative (Pixel YA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

pure :: a -> Pixel YA a #

(<*>) :: Pixel YA (a -> b) -> Pixel YA a -> Pixel YA b #

liftA2 :: (a -> b -> c) -> Pixel YA a -> Pixel YA b -> Pixel YA c #

(*>) :: Pixel YA a -> Pixel YA b -> Pixel YA b #

(<*) :: Pixel YA a -> Pixel YA b -> Pixel YA a #

Foldable (Pixel YA) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

fold :: Monoid m => Pixel YA m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel YA a -> m #

foldr :: (a -> b -> b) -> b -> Pixel YA a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel YA a -> b #

foldl :: (b -> a -> b) -> b -> Pixel YA a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel YA a -> b #

foldr1 :: (a -> a -> a) -> Pixel YA a -> a #

foldl1 :: (a -> a -> a) -> Pixel YA a -> a #

toList :: Pixel YA a -> [a] #

null :: Pixel YA a -> Bool #

length :: Pixel YA a -> Int #

elem :: Eq a => a -> Pixel YA a -> Bool #

maximum :: Ord a => Pixel YA a -> a #

minimum :: Ord a => Pixel YA a -> a #

sum :: Num a => Pixel YA a -> a #

product :: Num a => Pixel YA a -> a #

Readable [Image VS YA Double] GIFA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS YA Double] (Seq GIF) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Eq e => Eq (Pixel YA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

(==) :: Pixel YA e -> Pixel YA e -> Bool #

(/=) :: Pixel YA e -> Pixel YA e -> Bool #

Show e => Show (Pixel YA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

showsPrec :: Int -> Pixel YA e -> ShowS #

show :: Pixel YA e -> String #

showList :: [Pixel YA e] -> ShowS #

Storable e => Storable (Pixel YA e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

Methods

sizeOf :: Pixel YA e -> Int #

alignment :: Pixel YA e -> Int #

peekElemOff :: Ptr (Pixel YA e) -> Int -> IO (Pixel YA e) #

pokeElemOff :: Ptr (Pixel YA e) -> Int -> Pixel YA e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel YA e) #

pokeByteOff :: Ptr b -> Int -> Pixel YA e -> IO () #

peek :: Ptr (Pixel YA e) -> IO (Pixel YA e) #

poke :: Ptr (Pixel YA e) -> Pixel YA e -> IO () #

Writable (Image VS YA Double) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Double) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Double) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Double) JPG Source #

Image is converted YCbCr color space prior to encoding.

Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Double) HDR Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Double) GIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Double) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Word8) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Word8) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Word16) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS YA Word16) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Double) PPM Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable (Image VS YA Double) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Double) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Double) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Double) JPG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Double) HDR Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Double) GIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Double) BMP Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Word8) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Word8) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Word8) JPG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Word16) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable (Image VS YA Word16) PNG Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

type Opaque YA Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

type Opaque YA = Y
data Pixel YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

data Pixel YA e = PixelYA !e !e
type Components YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.Y

type Components YA e = (e, e)

class ColorSpace cs e => ToY cs e Source #

Conversion to Luma color space.

Minimal complete definition

toPixelY

Instances
Elevator e => ToY YCbCrA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY YCbCr e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Methods

toPixelY :: Pixel Y e -> Pixel Y Double Source #

Elevator e => ToY RGBA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY RGB e Source #

Computes Luma: Y' = 0.299 * R' + 0.587 * G' + 0.114 * B'

Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY HSIA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY HSI e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY CMYKA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY CMYK e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY X e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Methods

toPixelY :: Pixel X e -> Pixel Y Double Source #

class ToY cs e => ToYA cs e Source #

Conversion to Luma from another color space.

Instances
Elevator e => ToYA YCbCrA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToY YCbCr e => ToYA YCbCr e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYA YA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToY Y e => ToYA Y e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYA RGBA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToY RGB e => ToYA RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYA HSIA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToY HSI e => ToYA HSI e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYA CMYKA e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToY CMYK e => ToYA CMYK e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToYA X Bit Source # 
Instance details

Defined in Graphics.Image.ColorSpace

RGB

data RGB Source #

Red, Green and Blue color space.

Constructors

RedRGB 
GreenRGB 
BlueRGB 
Instances
Bounded RGB Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

minBound :: RGB #

maxBound :: RGB #

Enum RGB Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

succ :: RGB -> RGB #

pred :: RGB -> RGB #

toEnum :: Int -> RGB #

fromEnum :: RGB -> Int #

enumFrom :: RGB -> [RGB] #

enumFromThen :: RGB -> RGB -> [RGB] #

enumFromTo :: RGB -> RGB -> [RGB] #

enumFromThenTo :: RGB -> RGB -> RGB -> [RGB] #

Eq RGB Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

(==) :: RGB -> RGB -> Bool #

(/=) :: RGB -> RGB -> Bool #

Show RGB Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

showsPrec :: Int -> RGB -> ShowS #

show :: RGB -> String #

showList :: [RGB] -> ShowS #

ChannelColour RGB Source # 
Instance details

Defined in Graphics.Image.IO.Histogram

Elevator e => ColorSpace RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Associated Types

type Components RGB e :: Type Source #

Methods

toComponents :: Pixel RGB e -> Components RGB e Source #

fromComponents :: Components RGB e -> Pixel RGB e Source #

promote :: e -> Pixel RGB e Source #

getPxC :: Pixel RGB e -> RGB -> e Source #

setPxC :: Pixel RGB e -> RGB -> e -> Pixel RGB e Source #

mapPxC :: (RGB -> e -> e) -> Pixel RGB e -> Pixel RGB e Source #

liftPx :: (e -> e) -> Pixel RGB e -> Pixel RGB e Source #

liftPx2 :: (e -> e -> e) -> Pixel RGB e -> Pixel RGB e -> Pixel RGB e Source #

foldlPx2 :: (b -> e -> e -> b) -> b -> Pixel RGB e -> Pixel RGB e -> b Source #

foldrPx :: (e -> b -> b) -> b -> Pixel RGB e -> b Source #

foldlPx :: (b -> e -> b) -> b -> Pixel RGB e -> b Source #

foldl1Px :: (e -> e -> e) -> Pixel RGB e -> e Source #

toListPx :: Pixel RGB e -> [e] Source #

ToYCbCr RGB e => ToYCbCrA RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToYCbCr RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToCMYK RGB e => ToCMYKA RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToCMYK RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToHSI RGB e => ToHSIA RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToHSI RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToRGB RGB e => ToRGBA RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToRGB RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

ToY RGB e => ToYA RGB e Source # 
Instance details

Defined in Graphics.Image.ColorSpace

Elevator e => ToY RGB e Source #

Computes Luma: Y' = 0.299 * R' + 0.587 * G' + 0.114 * B'

Instance details

Defined in Graphics.Image.ColorSpace

Convertible RGB Double Source # 
Instance details

Defined in Graphics.Image.IO.Base

Methods

convert :: (ToYA cs' e', ToRGBA cs' e', Array arr cs' e', Array arr RGB Double) => Image arr cs' e' -> Image arr RGB Double Source #

Functor (Pixel RGB) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

fmap :: (a -> b) -> Pixel RGB a -> Pixel RGB b #

(<$) :: a -> Pixel RGB b -> Pixel RGB a #

Applicative (Pixel RGB) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

pure :: a -> Pixel RGB a #

(<*>) :: Pixel RGB (a -> b) -> Pixel RGB a -> Pixel RGB b #

liftA2 :: (a -> b -> c) -> Pixel RGB a -> Pixel RGB b -> Pixel RGB c #

(*>) :: Pixel RGB a -> Pixel RGB b -> Pixel RGB b #

(<*) :: Pixel RGB a -> Pixel RGB b -> Pixel RGB a #

Foldable (Pixel RGB) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

fold :: Monoid m => Pixel RGB m -> m #

foldMap :: Monoid m => (a -> m) -> Pixel RGB a -> m #

foldr :: (a -> b -> b) -> b -> Pixel RGB a -> b #

foldr' :: (a -> b -> b) -> b -> Pixel RGB a -> b #

foldl :: (b -> a -> b) -> b -> Pixel RGB a -> b #

foldl' :: (b -> a -> b) -> b -> Pixel RGB a -> b #

foldr1 :: (a -> a -> a) -> Pixel RGB a -> a #

foldl1 :: (a -> a -> a) -> Pixel RGB a -> a #

toList :: Pixel RGB a -> [a] #

null :: Pixel RGB a -> Bool #

length :: Pixel RGB a -> Int #

elem :: Eq a => a -> Pixel RGB a -> Bool #

maximum :: Ord a => Pixel RGB a -> a #

minimum :: Ord a => Pixel RGB a -> a #

sum :: Num a => Pixel RGB a -> a #

product :: Num a => Pixel RGB a -> a #

Writable [(GifDelay, Image VS RGB Double)] GIFA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable [(GifDelay, Image VS RGB Word8)] GIFA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [(GifDelay, Image VS RGB Word8)] GIFA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS RGB Double] GIFA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS RGB Word8] GIFA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable [(GifDelay, Image VS RGB Double)] (Seq GIF) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable [(GifDelay, Image VS RGB Word8)] (Seq GIF) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [(GifDelay, Image VS RGB Word8)] (Seq GIF) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS RGB Double] (Seq GIF) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS RGB Word8] (Seq PPM) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Readable [Image VS RGB Word8] (Seq GIF) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Readable [Image VS RGB Word16] (Seq PPM) Source # 
Instance details

Defined in Graphics.Image.IO.Formats.Netpbm

Eq e => Eq (Pixel RGB e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

(==) :: Pixel RGB e -> Pixel RGB e -> Bool #

(/=) :: Pixel RGB e -> Pixel RGB e -> Bool #

Show e => Show (Pixel RGB e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

showsPrec :: Int -> Pixel RGB e -> ShowS #

show :: Pixel RGB e -> String #

showList :: [Pixel RGB e] -> ShowS #

Storable e => Storable (Pixel RGB e) Source # 
Instance details

Defined in Graphics.Image.ColorSpace.RGB

Methods

sizeOf :: Pixel RGB e -> Int #

alignment :: Pixel RGB e -> Int #

peekElemOff :: Ptr (Pixel RGB e) -> Int -> IO (Pixel RGB e) #

pokeElemOff :: Ptr (Pixel RGB e) -> Int -> Pixel RGB e -> IO () #

peekByteOff :: Ptr b -> Int -> IO (Pixel RGB e) #

pokeByteOff :: Ptr b -> Int -> Pixel RGB e -> IO () #

peek :: Ptr (Pixel RGB e) -> IO (Pixel RGB e) #

poke :: Ptr (Pixel RGB e) -> Pixel RGB e -> IO () #

Writable (Image VS RGB Double) TIF Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Writable (Image VS RGB Double) TGA Source # 
Instance details

Defined in Graphics.Image.IO.Formats.JuicyPixels

Methods