-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A binding for the OpenCV computer vision library -- @package HOpenCV @version 0.3 module AI.CV.OpenCV.Util withForeignPtr2 :: ForeignPtr a -> ForeignPtr b -> (Ptr a -> Ptr b -> IO c) -> IO c withForeignPtr3 :: ForeignPtr a -> ForeignPtr b -> ForeignPtr c -> (Ptr a -> Ptr b -> Ptr c -> IO d) -> IO d withForeignPtr5 :: ForeignPtr a -> ForeignPtr b -> ForeignPtr c -> ForeignPtr d -> ForeignPtr e -> (Ptr a -> Ptr b -> Ptr c -> Ptr d -> Ptr e -> IO f) -> IO f module AI.CV.OpenCV.CxCore toFromIntegral :: (RealFrac c, Integral b, Integral a, Num b1) => (b1 -> c) -> a -> b toFromIntegral2 :: (Integral a, Num b, Integral a1, Num b1, RealFrac a2, Integral b2) => (b -> b1 -> a2) -> a -> a1 -> b2 data CvSize CvSize :: CInt -> CInt -> CvSize sizeWidth :: CvSize -> CInt sizeHeight :: CvSize -> CInt liftCvSize :: (RealFrac c, Num b) => (b -> c) -> CvSize -> CvSize liftCvSize2 :: (Num b, Num b1, RealFrac a) => (b -> b1 -> a) -> CvSize -> CvSize -> CvSize data CvRect CvRect :: CInt -> CInt -> CInt -> CInt -> CvRect rectX :: CvRect -> CInt rectY :: CvRect -> CInt rectWidth :: CvRect -> CInt rectHeight :: CvRect -> CInt liftCvRect :: (RealFrac c, Num b) => (b -> c) -> CvRect -> CvRect liftCvRect2 :: (Num b, Num b1, RealFrac a) => (b -> b1 -> a) -> CvRect -> CvRect -> CvRect data Priv_IplImage type IplImage = ForeignPtr Priv_IplImage data Priv_CvMemStorage type MemStorage = ForeignPtr Priv_CvMemStorage data Priv_CvSeq a type CvSeq a = ForeignPtr (Priv_CvSeq a) newtype Depth Depth :: CInt -> Depth unDepth :: Depth -> CInt iplDepth1u :: Depth iplDepth8u :: Depth iplDepth8s :: Depth iplDepth16u :: Depth iplDepth16s :: Depth iplDepth32s :: Depth validDepths :: [Depth] iplDepth32f :: Depth iplDepth64f :: Depth depthsLookupList :: [(CInt, Depth)] numToDepth :: CInt -> Maybe Depth c_cvCreateMemStorage :: CInt -> IO (Ptr Priv_CvMemStorage) cf_releaseMemStorage :: FunPtr (Ptr Priv_CvMemStorage -> IO ()) c_releaseMemStorage :: Ptr Priv_CvMemStorage -> IO () releaseMemStorage :: MemStorage -> IO () createMemStorage :: Int -> IO MemStorage cvFree :: FunPtr (Ptr a -> IO ()) c_cvCreateImage :: CInt -> CInt -> CInt -> CInt -> IO (Ptr Priv_IplImage) createImage :: CvSize -> Depth -> Int -> IO IplImage c_releaseImage :: Ptr Priv_IplImage -> IO () releaseImage :: IplImage -> IO () c_cvCloneImage :: Ptr Priv_IplImage -> IO (Ptr Priv_IplImage) cloneImage :: IplImage -> IO IplImage c_get_size :: Ptr Priv_IplImage -> Ptr CvSize -> IO () c_cvCopy :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> Ptr Priv_IplImage -> IO () copy :: IplImage -> IplImage -> IO () cvMerge :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> Ptr Priv_IplImage -> Ptr Priv_IplImage -> Ptr Priv_IplImage -> IO () merge :: IplImage -> IplImage -> IplImage -> IplImage -> IplImage -> IO () wrap_getImageData :: Ptr Priv_IplImage -> IO (Ptr CUChar) getImageData :: IplImage -> IO (Ptr CUChar) getSize :: IplImage -> IO CvSize c_get_depth :: Ptr Priv_IplImage -> IO CInt getDepth :: IplImage -> IO Depth c_get_nChannels :: Ptr Priv_IplImage -> IO CInt getNumChannels :: Integral a => IplImage -> IO a wrap_getWidthStep :: Ptr Priv_IplImage -> IO CInt getWidthStep :: IplImage -> IO Int cvConvertScale :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> CDouble -> CDouble -> IO () convertScale :: IplImage -> IplImage -> Double -> Double -> IO () c_cvLoad :: CString -> Ptr Priv_CvMemStorage -> CString -> Ptr CString -> IO (Ptr a) load :: String -> MemStorage -> Maybe String -> IO (ForeignPtr a, Maybe String) cvGetSeqElem :: Ptr (Priv_CvSeq a) -> CInt -> IO (Ptr a) seqNumElems :: Ptr (Priv_CvSeq a) -> IO CInt seqToPList :: CvSeq a -> IO [ForeignPtr a] seqToList :: Storable a => CvSeq a -> IO [a] c_cvRectangle :: Ptr Priv_IplImage -> CInt -> CInt -> CInt -> CInt -> IO () rectangle :: IplImage -> CvRect -> IO () -- | Debugging function to print some of the internal details of an -- IplImage structure c_debug_print_image_header :: Ptr Priv_IplImage -> IO () instance Show CvSize instance Eq CvSize instance Show CvRect instance Eq CvRect instance Eq Depth instance Show Depth instance VectorSpace CvRect instance AdditiveGroup CvRect instance Storable CvRect instance VectorSpace CvSize instance AdditiveGroup CvSize instance Storable CvSize module AI.CV.OpenCV.CV c_cvCanny :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> CDouble -> CDouble -> CInt -> IO () -- | Find edges using the Canny algorithm canny :: IplImage -> IplImage -> Double -> Double -> Int -> IO () data InterpolationMethod CV_INTER_NN :: InterpolationMethod CV_INTER_LINEAR :: InterpolationMethod CV_INTER_CUBIC :: InterpolationMethod CV_INTER_AREA :: InterpolationMethod c_cvResize :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> CInt -> IO () -- | Resizes an image using the specified interpolation method resize :: IplImage -> IplImage -> InterpolationMethod -> IO () c_dilate :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> CInt -> IO () -- | Dilates an image using a specific structuring element dilate :: IplImage -> IplImage -> Int -> IO () c_cvPyrDown :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> CInt -> IO () constCvGaussian5x5 :: CInt -- | Smooths an image and downsamples it, currently only gaussian5x5 is -- supported pyrDown :: IplImage -> IplImage -> IO () data Priv_CvHaarClassifierCascade type HaarClassifierCascade = ForeignPtr Priv_CvHaarClassifierCascade newtype HaarDetectFlag HaarDetectFlag :: CInt -> HaarDetectFlag unHaarDetectFlag :: HaarDetectFlag -> CInt haarFlagNone :: HaarDetectFlag haarDoCannyPruning :: HaarDetectFlag haarScaleImage :: HaarDetectFlag haarFindBiggestObject :: HaarDetectFlag haarDoRoughSearch :: HaarDetectFlag combineHaarFlags :: [HaarDetectFlag] -> HaarDetectFlag c_cvHaarDetectObjects :: Ptr Priv_IplImage -> Ptr Priv_CvHaarClassifierCascade -> Ptr Priv_CvMemStorage -> CDouble -> CInt -> CInt -> CInt -> CInt -> IO (Ptr (Priv_CvSeq CvRect)) -- | Detects objects in the image. Matches are returned as a list of -- rectangles haarDetectObjects :: IplImage -> HaarClassifierCascade -> MemStorage -> Double -> Int -> HaarDetectFlag -> CvSize -> IO (CvSeq CvRect) instance Enum InterpolationMethod instance Eq InterpolationMethod instance Eq HaarDetectFlag instance Show HaarDetectFlag module AI.CV.OpenCV.HighGui c_cvConvertImage :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> CInt -> IO () convertImage :: IplImage -> IplImage -> Int -> IO () data Priv_CvCapture type Capture = ForeignPtr Priv_CvCapture c_cvCreateCameraCapture :: CInt -> IO (Ptr Priv_CvCapture) -- | self-documenting camera specification pickAnyCam :: Int -- | self-documenting camera specification cam :: Int -> Int createCameraCapture :: Int -> IO Capture c_cvCreateFileCapture :: CString -> IO (Ptr Priv_CvCapture) createFileCapture :: String -> IO Capture c_releaseCapture :: Ptr Priv_CvCapture -> IO () releaseCapture :: Capture -> IO () cp_release_capture :: FunPtr (Ptr Priv_CvCapture -> IO ()) c_cvQueryFrame :: Ptr Priv_CvCapture -> IO (Ptr Priv_IplImage) queryFrame :: Capture -> IO IplImage cvNamedWindow :: CString -> CInt -> IO CInt type AutoSize = Bool -- | self-documenting window sizing specification autoSize :: AutoSize namedWindow :: String -> AutoSize -> IO () cvDestroyWindow :: CString -> IO () destroyWindow :: String -> IO () cvShowImage :: CString -> Ptr Priv_IplImage -> IO () showImage :: String -> IplImage -> IO () cvWaitKey :: CInt -> IO CInt waitKey :: Int -> IO (Maybe Int) newtype LoadImageColor LoadImageColor :: CInt -> LoadImageColor unLoadImageColor :: LoadImageColor -> CInt loadImageColor :: LoadImageColor loadImageGrayscale :: LoadImageColor loadImageUnchanged :: LoadImageColor c_cvLoadImage :: CString -> CInt -> IO (Ptr Priv_IplImage) loadImage :: String -> LoadImageColor -> IO IplImage c_cvSaveImage :: CString -> Ptr Priv_IplImage -> IO CInt saveImage :: String -> IplImage -> IO Int wrap_createTrackbar :: CString -> CString -> Ptr CInt -> CInt -> IO () createTrackbar :: String -> String -> Maybe Int -> Int -> IO () cvGetTrackbarPos :: CString -> CString -> IO CInt getTrackbarPos :: String -> String -> IO Int cvSetTrackbarPos :: CString -> CString -> CInt -> IO () setTrackbarPos :: String -> String -> Int -> IO () module AI.CV.OpenCV.Video data Priv_CvVideoWriter type CvVideoWriter = Ptr Priv_CvVideoWriter wrap_cvCreateVideoWriter :: CString -> CInt -> CDouble -> CInt -> CInt -> IO (Ptr Priv_CvVideoWriter) type FourCC = String createVideoWriter :: String -> FourCC -> Double -> CvSize -> IO CvVideoWriter releaseVideoWriter :: CvVideoWriter -> IO () cvWriteFrame :: CvVideoWriter -> Ptr IplImage -> IO CInt writeFrame :: CvVideoWriter -> Ptr IplImage -> IO Int module AI.CV.OpenCV.ImgProc cvCvtColor :: Ptr Priv_IplImage -> Ptr Priv_IplImage -> CInt -> IO () cvtColor :: IplImage -> IplImage -> CvtColorFlag -> IO () data CvtColorFlag BGR2BGRA :: CvtColorFlag RGB2RGBA :: CvtColorFlag BGRA2BGR :: CvtColorFlag RGBA2RGB :: CvtColorFlag BGR2RGBA :: CvtColorFlag RGB2BGRA :: CvtColorFlag RGBA2BGR :: CvtColorFlag BGRA2RGB :: CvtColorFlag BGR2RGB :: CvtColorFlag RGB2BGR :: CvtColorFlag BGRA2RGBA :: CvtColorFlag RGBA2BGRA :: CvtColorFlag BGR2GRAY :: CvtColorFlag RGB2GRAY :: CvtColorFlag GRAY2BGR :: CvtColorFlag GRAY2RGB :: CvtColorFlag GRAY2BGRA :: CvtColorFlag GRAY2RGBA :: CvtColorFlag BGRA2GRAY :: CvtColorFlag RGBA2GRAY :: CvtColorFlag BGR2BGR565 :: CvtColorFlag RGB2BGR565 :: CvtColorFlag BGR5652BGR :: CvtColorFlag BGR5652RGB :: CvtColorFlag BGRA2BGR565 :: CvtColorFlag RGBA2BGR565 :: CvtColorFlag BGR5652BGRA :: CvtColorFlag BGR5652RGBA :: CvtColorFlag GRAY2BGR565 :: CvtColorFlag BGR5652GRAY :: CvtColorFlag BGR2BGR555 :: CvtColorFlag RGB2BGR555 :: CvtColorFlag BGR5552BGR :: CvtColorFlag BGR5552RGB :: CvtColorFlag BGRA2BGR555 :: CvtColorFlag RGBA2BGR555 :: CvtColorFlag BGR5552BGRA :: CvtColorFlag BGR5552RGBA :: CvtColorFlag GRAY2BGR555 :: CvtColorFlag BGR5552GRAY :: CvtColorFlag BGR2XYZ :: CvtColorFlag RGB2XYZ :: CvtColorFlag XYZ2BGR :: CvtColorFlag XYZ2RGB :: CvtColorFlag BGR2YCrCb :: CvtColorFlag RGB2YCrCb :: CvtColorFlag YCrCb2BGR :: CvtColorFlag YCrCb2RGB :: CvtColorFlag BGR2HSV :: CvtColorFlag RGB2HSV :: CvtColorFlag BGR2Lab :: CvtColorFlag RGB2Lab :: CvtColorFlag BayerBG2BGR :: CvtColorFlag BayerGB2BGR :: CvtColorFlag BayerRG2BGR :: CvtColorFlag BayerGR2BGR :: CvtColorFlag BayerBG2RGB :: CvtColorFlag BayerGB2RGB :: CvtColorFlag BayerRG2RGB :: CvtColorFlag BayerGR2RGB :: CvtColorFlag BGR2Luv :: CvtColorFlag RGB2Luv :: CvtColorFlag BGR2HLS :: CvtColorFlag RGB2HLS :: CvtColorFlag HSV2BGR :: CvtColorFlag HSV2RGB :: CvtColorFlag Lab2BGR :: CvtColorFlag Lab2RGB :: CvtColorFlag Luv2BGR :: CvtColorFlag Luv2RGB :: CvtColorFlag HLS2BGR :: CvtColorFlag HLS2RGB :: CvtColorFlag BayerBG2BGR_VNG :: CvtColorFlag BayerGB2BGR_VNG :: CvtColorFlag BayerRG2BGR_VNG :: CvtColorFlag BayerGR2BGR_VNG :: CvtColorFlag BayerBG2RGB_VNG :: CvtColorFlag BayerGB2RGB_VNG :: CvtColorFlag BayerRG2RGB_VNG :: CvtColorFlag BayerGR2RGB_VNG :: CvtColorFlag BGR2HSV_FULL :: CvtColorFlag RGB2HSV_FULL :: CvtColorFlag BGR2HLS_FULL :: CvtColorFlag RGB2HLS_FULL :: CvtColorFlag HSV2BGR_FULL :: CvtColorFlag HSV2RGB_FULL :: CvtColorFlag HLS2BGR_FULL :: CvtColorFlag HLS2RGB_FULL :: CvtColorFlag LBGR2Lab :: CvtColorFlag LRGB2Lab :: CvtColorFlag LBGR2Luv :: CvtColorFlag LRGB2Luv :: CvtColorFlag Lab2LBGR :: CvtColorFlag Lab2LRGB :: CvtColorFlag Luv2LBGR :: CvtColorFlag Luv2LRGB :: CvtColorFlag BGR2YUV :: CvtColorFlag RGB2YUV :: CvtColorFlag YUV2BGR :: CvtColorFlag YUV2RGB :: CvtColorFlag BayerBG2GRAY :: CvtColorFlag BayerGB2GRAY :: CvtColorFlag BayerRG2GRAY :: CvtColorFlag BayerGR2GRAY :: CvtColorFlag YUV420i2RGB :: CvtColorFlag YUV420i2BGR :: CvtColorFlag YUV420sp2RGB :: CvtColorFlag YUV420sp2BGR :: CvtColorFlag fromCvtColorFlag :: CvtColorFlag -> CInt module AI.CV.OpenCV