Qualcomm FastCV Library  1.7.1
fastcv.h File Reference

Public API. More...

#include <stddef.h>
#include <stdint.h>

Go to the source code of this file.

Data Structures

struct  fcvCorrespondences
 Defines a structure to contain points correspondence data. More...
struct  fcvPyramidLevel
 Structure representing an image pyramid level. More...
struct  fcvPyramidLevel_v2
 Structure representing an image pyramid level (version2 with stride) More...
struct  fcvKDTreeNodef32
 Structure describing node of a tree; Assumption is that nodes of all trees are stored in in a single array and all indices refer to this array. More...
struct  fcvKDTreeBranchf32
 structure describing a branch (subtree) More...
struct  fcvKDTreeDatas8f32
 Structure with KDTrees data. More...
struct  fcvKDTreeNodes32
 fixed point kdtrees Structure describing node of tree; Assumption is that nodes of all trees are stored in in a single array and all indices refer to this array More...
struct  fcvKDTreeBranchs32
 fixed point kdtrees structure describing a branch (subtree) More...
struct  fcvKDTreeDatas8s32
 fixed point kdtrees Structure with KDTrees data More...
struct  fcvRectangleInt
 Defines a struct of rectangle. More...
struct  fcvTermCriteria
 Defines a struct of termination criteria. More...
struct  fcvBox2D
 Defines a struct of 2D box used for tracking. More...
struct  fcvMoments
 Defines a struct of image moments. More...
struct  fcvBGCodeWord
 Defines a struct of code word. More...
struct  fcvCircle
 Defines a struct for circle. More...
struct  fcvPoint2D
struct  fcvLine
struct  fcvLineSegment
 Defines a struct for parameters for line segment detection. More...
struct  fcvDepthFusionBlockConfig
 Parameters for fusing a depth map into a cuboid fusion block. More...
struct  fcvConnectedComponent

Defines

#define FASTCV_ALIGN32(VAR)   __declspec(align(4)) (VAR)
 Macro to align memory at 4-bytes (32-bits) for MSVC compiler.
#define FASTCV_ALIGN64(VAR)   __declspec(align(8)) (VAR)
 Macro to align memory at 8-bytes (64-bits) for MSVC compiler.
#define FASTCV_ALIGN128(VAR)   __declspec(align(16)) (VAR)
 Macro to align memory at 16-bytes (128-bits) for MSVC compiler.
#define FASTCV_API
 MACRO empty for non-shared-library case.

Typedefs

typedef float float32_t
typedef double float64_t

Enumerations

enum  fcvOperationMode {
  FASTCV_OP_LOW_POWER = 0, FASTCV_OP_PERFORMANCE = 1, FASTCV_OP_CPU_OFFLOAD = 2, FASTCV_OP_CPU_PERFORMANCE = 3,
  FASTCV_OP_RESERVED = 0x80000000
}
 Defines operational mode of interface to allow the end developer to dictate how the target optimized implementation should behave. More...
enum  fcvFlipDir { FASTCV_FLIP_HORIZ = 1, FASTCV_FLIP_VERT = 2, FASTCV_FLIP_BOTH = 3 }
 Defines the flip directions for matrix flip functions. More...
enum  fcvRotateDegree { FASTCV_ROTATE_90 = 1, FASTCV_ROTATE_180 = 2, FASTCV_ROTATE_270 = 3 }
 Defines the clockwise rotation degrees for image rotation functions. More...
enum  fcvInterpolationType { FASTCV_INTERPOLATION_TYPE_NEAREST_NEIGHBOR = 0, FASTCV_INTERPOLATION_TYPE_BILINEAR, FASTCV_INTERPOLATION_TYPE_AREA }
 Defines the interpolation types. More...
enum  fcvConvertPolicy { FASTCV_CONVERT_POLICY_WRAP = 0, FASTCV_CONVERT_POLICY_SATURATE }
 Defines the policy to handle integer overflow. More...
enum  fcvBorderType { FASTCV_BORDER_UNDEFINED = 0, FASTCV_BORDER_CONSTANT, FASTCV_BORDER_REPLICATE }
 Defines the border types. More...
enum  fcvNormType { FASTCV_NORM_L1, FASTCV_NORM_L2 }
 Defines the norm for a vector. More...
enum  fcvChannelType {
  FASTCV_CHANNEL_0, FASTCV_CHANNEL_1, FASTCV_CHANNEL_2, FASTCV_CHANNEL_3,
  FASTCV_CHANNEL_R, FASTCV_CHANNEL_G, FASTCV_CHANNEL_B, FASTCV_CHANNEL_A,
  FASTCV_CHANNEL_Y, FASTCV_CHANNEL_U, FASTCV_CHANNEL_V
}
 Defines all supported channel indices. More...
enum  fcvImageFormat {
  FASTCV_RGB, FASTCV_RGBX, FASTCV_NV12, FASTCV_NV21,
  FASTCV_UYVY, FASTCV_YUYV, FASTCV_IYUV, FASTCV_YUV4
}
 Defines all supported image formats based on the FOURCC definition. More...
enum  fcvStatus {
  FASTCV_SUCCESS = 0, FASTCV_EFAIL, FASTCV_EUNALIGNPARAM, FASTCV_EBADPARAM,
  FASTCV_EINVALSTATE, FASTCV_ENORES, FASTCV_EUNSUPPORTED, FASTCV_EHWQDSP,
  FASTCV_EHWGPU
}
 Defines the status returned by a function. More...
enum  fcvSVMKernelType { FASTCV_SVM_LINEAR, FASTCV_SVM_POLY, FASTCV_SVM_RBF, FASTCV_SVM_SIGMOID }
 Defines the kernel functions of SVM prediction.
enum  fcvPyramidScale { FASTCV_PYRAMID_SCALE_HALF, FASTCV_PYRAMID_SCALE_ORB }
 Defines the different scaling options for the pyramid.
enum  fcvTerminationCriteria { FASTCV_TERM_CRITERIA_ITERATIONS, FASTCV_TERM_CRITERIA_EPSILON, FASTCV_TERM_CRITERIA_BOTH }
 Defines the termination criteria list. More...
enum  fcvHOGNormMethod { FASTCV_HOG_NORM_REGULAR = 0, FASTCV_HOG_NORM_RENORMALIZATION = 1, FASTCV_HOG_NORM_FHOG = 2 }
 Defines the normalization method in the HOG extraction process. More...
enum  fcvVarianceEstimator { FASTCV_UNBIASED_VARIANCE_ESTIMATOR = 0, FASTCV_BIASED_VARIANCE_ESTIMATOR = 1 }
 Defines the vaiance estimator type. More...
enum  fcvThreshType { FCV_THRESH_BINARY = 0, FCV_THRESH_BINARY_INV }
 Defines an enumeration to list threshold types used in fcvAdaptiveThreshold.

Functions

FASTCV_API void fcvGetVersion (char *version, unsigned int versionLength)
 Retrieves version of FastCV library.
FASTCV_API int fcvSetOperationMode (fcvOperationMode mode)
 Selects HW units for all routines at run-time.
WARNING: Should be called once at the very beginning to update mode.
FASTCV_API void fcvCleanUp (void)
 Clean up FastCV resources. Must be called before the program exits.
FASTCV_API int fcvPyramidAllocate (fcvPyramidLevel *pyr, unsigned int baseWidth, unsigned int baseHeight, unsigned int bytesPerPixel, unsigned int numLevels, int allocateBase)
 Allocates memory for Pyramid.
FASTCV_API int fcvPyramidAllocate_v2 (fcvPyramidLevel_v2 *pyr, uint32_t baseWidth, uint32_t baseHeight, uint32_t baseStride, uint32_t bytesPerPixel, uint32_t numLevels, int32_t allocateBase)
 Allocates memory for Pyramid.
FASTCV_API fcvStatus fcvPyramidAllocate_v3 (fcvPyramidLevel_v2 *__restrict pyr, uint32_t baseWidth, uint32_t baseHeight, uint32_t baseStride, uint32_t bytesPerPixel, uint32_t alignment, uint32_t numLevels, fcvPyramidScale scale, int32_t allocateBase)
 Allocates memory for Pyramid DO NOT USE THIS API unless for testing purposes. This API can be removed without notice.
FASTCV_API void fcvPyramidDelete (fcvPyramidLevel *pyr, unsigned int numLevels, unsigned int startLevel)
 Deallocates an array of fcvPyramidLevel. Can be used for any type(f32/s8/u8).
FASTCV_API void fcvPyramidDelete_v2 (fcvPyramidLevel_v2 *pyr, uint32_t numLevels, uint32_t startLevel)
 Deallocates an array of fcvPyramidLevel. Can be used for any type(f32/s8/u8).
FASTCV_API void * fcvMemAlloc (unsigned int nBytes, unsigned int byteAlignment)
 Allocates aligned memory.
FASTCV_API void fcvMemFree (void *ptr)
 Frees memory allocated by fcvMemAlloc().
FASTCV_API void fcvMemInit (void)
 Initialize the Memory sub-system in FastCV. The sub-system handles temporary/scratch memory requirements from several FastCV functions that do not have parameters to have this supplied by the users of those functions.
FASTCV_API void fcvMemInitPreAlloc (uint32_t preAllocBytes)
 Initialize the Memory sub-system in FastCV with pre-allocated buffer. The sub-system handles temporary/scratch memory requirements from several FastCV functions that do not have parameters to have this supplied by the users of those functions.
FASTCV_API void fcvMemDeInit (void)
 De-Initialize the Memory sub-system initialized by fcvMemInit() function.
FASTCV_API void fcvFilterMedian3x3u8 (const uint8_t *__restrict srcImg, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dstImg)
 Blurs an image with 3x3 median filter.
FASTCV_API void fcvFilterMedian3x3u8_v2 (const uint8_t *__restrict srcImg, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dstImg, unsigned int dstStride)
 Blurs an image with 3x3 median filter.
FASTCV_API void fcvFilterGaussian3x3u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst, int blurBorder)
 Blurs an image with 3x3 Gaussian filter.
FASTCV_API void fcvFilterGaussian3x3u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride, int blurBorder)
 Blurs an image with 3x3 Gaussian filter.
FASTCV_API void fcvFilterGaussian5x5u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst, int blurBorder)
 Blurs an image with 5x5 Gaussian filter.
FASTCV_API void fcvFilterGaussian5x5u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride, int blurBorder)
 Blurs an image with 5x5 Gaussian filter.
FASTCV_API void fcvFilterGaussian11x11u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst, int blurBorder)
 Blurs an image with 11x11 Gaussian filter.
FASTCV_API void fcvFilterGaussian11x11u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride, int blurBorder)
 Blurs an image with 11x11 Gaussian filter.
FASTCV_API void fcvColorYUV420toRGB8888u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint32_t *__restrict dst)
 Color conversion from YUV (YCrCb) 4:2:0 PesudoPlanar (Interleaved) to RGB 8888.
FASTCV_API void fcvColorYCrCb420PseudoPlanarToRGB8888u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcYStride, unsigned int srcCStride, uint32_t *__restrict dst, unsigned int dstStride)
 Color conversion from YUV (YCrCb) 4:2:0 PesudoPlanar (Interleaved CrCb) to RGB 888.
FASTCV_API void fcvColorYUV420toRGB565u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint32_t *__restrict dst)
 Color conversion from YUV (YCbCr) 4:2:0 PesudoPlanar (Interleaved CbCr) to RGB 565.
FASTCV_API void fcvColorYCrCbH1V1toRGB888u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Color conversion from YCbCr H1V1 to RGB 888.
FASTCV_API void fcvColorYCrCbH2V2toRGB888u8 (const uint8_t *__restrict ysrc, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Color conversion from YCbCr H2V2 to RGB 888.
FASTCV_API void fcvColorYCrCbH2V1toRGB888u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Color conversion from YCbCr H2V1 to RGB 888.
FASTCV_API void fcvColorYCrCbH1V2toRGB888u8 (const uint8_t *__restrict ysrc, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Color conversion from YCbCr H1V2 to RGB 888.
FASTCV_API void fcvColorRGB888toYCrCbu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Color conversion from RGB 888 to YCrCb.
FASTCV_API void fcvColorRGB888toYCrCbu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Color conversion from RGB 888 to YCrCb 4:4:4 (Full interleaved, similar to 3-channel RGB).
FASTCV_API int fcvDescriptor17x17u8To36s8 (const uint8_t *__restrict patch, int8_t *__restrict descriptorChar, int32_t *__restrict descriptorNormSq)
 Create a 36-dimension gradient based descriptor on 17x17 patch.
FASTCV_API int32_t fcvDotProducts8 (const int8_t *__restrict a, const int8_t *__restrict b, unsigned int abSize)
 Dot product of two 8-bit vectors.
FASTCV_API uint32_t fcvDotProductu8 (const uint8_t *__restrict a, const uint8_t *__restrict b, unsigned int abSize)
 Dot product of two 8-bit vectors.
FASTCV_API int32_t fcvDotProduct36x1s8 (const int8_t *__restrict a, const int8_t *__restrict b)
 Dot product of two 36-byte vectors.
FASTCV_API void fcvDotProduct36x4s8 (const int8_t *__restrict a, const int8_t *__restrict b, const int8_t *__restrict c, const int8_t *__restrict d, const int8_t *__restrict e, int32_t *__restrict dotProducts)
 Dot product of one 36-byte vector against 4 others.
FASTCV_API void fcvDotProductNorm36x4s8 (const int8_t *__restrict a, float invLengthA, const int8_t *__restrict b0, const int8_t *__restrict b1, const int8_t *__restrict b2, const int8_t *__restrict b3, float *__restrict invLengthsB, float *__restrict dotProducts)
 Normalized dot product of one 36-byte vector against 4 others.
FASTCV_API uint32_t fcvDotProduct36x1u8 (const uint8_t *__restrict a, const uint8_t *__restrict b)
 Dot product of two 36-byte vectors.
FASTCV_API void fcvDotProduct36x4u8 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, const uint8_t *__restrict e, uint32_t *__restrict dotProducts)
 Dot product of one 36-byte vector against 4 others.
FASTCV_API void fcvDotProductNorm36x4u8 (const uint8_t *__restrict a, float invLengthA, const uint8_t *__restrict b0, const uint8_t *__restrict b1, const uint8_t *__restrict b2, const uint8_t *__restrict b3, float *__restrict invLengthsB, float *__restrict dotProducts)
 Normalized dot product of one 36-byte vector against 4 others.
FASTCV_API int32_t fcvDotProduct64x1s8 (const int8_t *__restrict a, const int8_t *__restrict b)
 Dot product of two 64-byte vectors.
FASTCV_API void fcvDotProduct64x4s8 (const int8_t *__restrict a, const int8_t *__restrict b, const int8_t *__restrict c, const int8_t *__restrict d, const int8_t *__restrict e, int32_t *__restrict dotProducts)
 Dot product of one 64-byte vector against 4 others.
FASTCV_API void fcvDotProductNorm64x4s8 (const int8_t *__restrict a, float invLengthA, const int8_t *__restrict b0, const int8_t *__restrict b1, const int8_t *__restrict b2, const int8_t *__restrict b3, float *__restrict invLengthsB, float *__restrict dotProducts)
 Normalized dot product of one 64-byte vector against 4 others.
FASTCV_API uint32_t fcvDotProduct64x1u8 (const uint8_t *__restrict a, const uint8_t *__restrict b)
 Dot product of two 64-byte vectors.
FASTCV_API void fcvDotProduct64x4u8 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, const uint8_t *__restrict e, uint32_t *__restrict dotProducts)
 Dot product of one 64-byte vector against 4 others.
FASTCV_API void fcvDotProductNorm64x4u8 (const uint8_t *__restrict a, float invLengthA, const uint8_t *__restrict b0, const uint8_t *__restrict b1, const uint8_t *__restrict b2, const uint8_t *__restrict b3, float *__restrict invLengthsB, float *__restrict dotProducts)
 Normalized dot product of one 64-byte vector against 4 others.
FASTCV_API int32_t fcvDotProduct128x1s8 (const int8_t *__restrict a, const int8_t *__restrict b)
 Dot product of two 128-byte vectors.
FASTCV_API void fcvDotProduct128x4s8 (const int8_t *__restrict a, const int8_t *__restrict b, const int8_t *__restrict c, const int8_t *__restrict d, const int8_t *__restrict e, int32_t *__restrict dotProducts)
 Dot product of one 128-byte vector against 4 others.
FASTCV_API void fcvDotProductNorm128x4s8 (const int8_t *__restrict a, float invLengthA, const int8_t *__restrict b0, const int8_t *__restrict b1, const int8_t *__restrict b2, const int8_t *__restrict b3, float *__restrict invLengthsB, float *__restrict dotProducts)
 Normalized dot product of one 128-byte vector against 4 others.
FASTCV_API uint32_t fcvDotProduct128x1u8 (const uint8_t *__restrict a, const uint8_t *__restrict b)
 Dot product of two 128-byte vectors.
FASTCV_API void fcvDotProduct128x4u8 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, const uint8_t *__restrict e, uint32_t *__restrict dotProducts)
 Dot product of one 128-byte vector against 4 others.
FASTCV_API void fcvDotProductNorm128x4u8 (const uint8_t *__restrict a, float invLengthA, const uint8_t *__restrict b0, const uint8_t *__restrict b1, const uint8_t *__restrict b2, const uint8_t *__restrict b3, float *__restrict invLengthsB, float *__restrict dotProducts)
 Normalized dot product of one 128-byte vector against 4 others.
FASTCV_API void fcvDotProduct8x8u8 (const uint8_t *__restrict patchPixels, const uint8_t *__restrict imagePixels, unsigned short imgW, unsigned short imgH, int nX, int nY, unsigned int nNum, int32_t *__restrict dotProducts)
 Dot product of 1 patch (8x8 byte square) with several (n) 8x8 squares along a line of pixels in an image.
FASTCV_API void fcvDotProduct11x12u8 (const uint8_t *__restrict patchPixels, const uint8_t *__restrict imagePixels, unsigned short imgW, unsigned short imgH, int iX, int iY, int32_t *__restrict dotProducts)
 Dot product of 1 patch (8x8 byte square) with 8x8 squares in 11x12 rectangle around the center search pixel (iX,iY).
FASTCV_API void fcvFilterSobel3x3u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 3x3 Sobel edge filter
FASTCV_API void fcvFilterSobel3x3u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 3x3 Sobel edge filter
FASTCV_API void fcvFilterCanny3x3u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst, int lowThresh, int highThresh)
 Canny edge filter.
FASTCV_API void fcvFilterCanny3x3u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride, int lowThresh, int highThresh)
 Canny edge filter.
FASTCV_API void fcvFilterCanny3x3u8_v3 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride, int16_t *__restrict gx, int16_t *__restrict gy, unsigned int gradStride, int lowThresh, int highThresh)
 Canny edge filter.
FASTCV_API void fcvImageDiffu8 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Performs image difference by subracting src2 from src1. dst=src1-src2.
FASTCV_API void fcvImageDiffu8_v2 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Performs image difference by subracting src2 from src1. dst=src1-src2.
FASTCV_API void fcvImageDiffs16 (const int16_t *__restrict src1, const int16_t *__restrict src2, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict dst, unsigned int dstStride)
 Compute image difference src1-src2.
FASTCV_API void fcvImageDifff32 (const float *__restrict src1, const float *__restrict src2, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict dst, unsigned int dstStride)
 Performs image difference by subracting src2 from src1. dst=src1-src2.
FASTCV_API void fcvImageDiffu8f32 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict dst, unsigned int dstStride)
 Performs image difference by promoting both src1 and src 2 to floating point values and then subracting src2 from src1. dst=src1-src2.
FASTCV_API void fcvImageDiffu8s8 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int8_t *__restrict dst, unsigned int dstStride)
 Performs image difference by subracting src2 from src1. dst = ( src1 >> 1) - ( src2 >> 1).
FASTCV_API void fcvImageGradientInterleaveds16 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict gradients)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API void fcvImageGradientInterleaveds16_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict gradients, unsigned int gradStride)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API int fcvMserInit (const unsigned int width, const unsigned int height, unsigned int delta, unsigned int minArea, unsigned int maxArea, float maxVariation, float minDiversity, void **mserHandle)
 Function to initialize MSER. To invoke MSER functionality, 3 functions have to be called: fcvMserInit, fcvMseru8, fcvMserRelease. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserInit (width,........,&mserHandle)) { fcvMseru8 (mserHandle,...); fcvMserRelease(mserHandle); }.
FASTCV_API void fcvMserRelease (void *mserHandle)
 Function to release MSER resources.
FASTCV_API void fcvMseru8 (void *mserHandle, const uint8_t *__restrict srcPtr, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, unsigned int maxContours, unsigned int *__restrict numContours, unsigned int *__restrict numPointsInContour, unsigned int pointsArraySize, unsigned int *__restrict pointsArray)
 Function to invoke MSER. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserInit (width,........,&mserHandle)) { fcvMseru8 (mserHandle,...); fcvMserRelease(mserHandle); }.
FASTCV_API void fcvMserExtu8 (void *mserHandle, const uint8_t *__restrict srcPtr, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, unsigned int maxContours, unsigned int *__restrict numContours, unsigned int *__restrict numPointsInContour, unsigned int *__restrict pointsArray, unsigned int pointsArraySize, unsigned int *__restrict contourVariation, int *__restrict contourPolarity, unsigned int *__restrict contourNodeId, unsigned int *__restrict contourNodeCounter)
 Function to invoke MSER, with additional outputs for each contour. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserInit (width,........,&mserHandle)) { fcvMserExtu8 (mserHandle,...); fcvMserRelease(mserHandle); }.
FASTCV_API int fcvMseru8_v2 (void *mserHandle, const uint8_t *__restrict srcPtr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxContours, uint32_t *__restrict numContours, uint16_t *__restrict recArray, uint32_t *__restrict numPointsInContour, uint32_t pointsArraySize, uint16_t *__restrict pointsArray)
 Function to invoke MSER with a smaller memory footprint and the (optional) output of contour bound boxes. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserInit (width,........,&mserHandle)) { if ( !fcvMseru8_v2 (mserHandle,...) ) { Error handle } fcvMserRelease(mserHandle); }.
FASTCV_API int fcvMserExtu8_v2 (void *mserHandle, const uint8_t *__restrict srcPtr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxContours, uint32_t *__restrict numContours, uint16_t *__restrict recArray, uint32_t *__restrict numPointsInContour, uint32_t pointsArraySize, uint16_t *__restrict pointsArray, uint32_t *__restrict contourVariation, int8_t *__restrict contourPolarity, uint32_t *__restrict contourNodeId, uint32_t *__restrict contourNodeCounter)
 Function to invoke MSER with a smaller memory footprint, the (optional) output of contour bound boxes, and additional information. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserInit (width,........,&mserHandle)) { if ( !fcvMserExtu8_v2 (mserHandle,...) ) { Error handle } fcvMserRelease(mserHandle); }.
FASTCV_API int fcvMserExtu8_v3 (void *mserHandle, const uint8_t *__restrict srcPtr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxContours, uint32_t *__restrict numContours, uint16_t *__restrict recArray, uint32_t *__restrict staPointsInPath, uint32_t *__restrict numPointsInContour, uint32_t pathArraySize, uint16_t *__restrict pathArray, uint32_t *__restrict contourVariation, int8_t *__restrict contourPolarity, uint32_t *__restrict contourNodeId, uint32_t *__restrict contourNodeCounter)
 Function to invoke MSER with a smaller memory footprint, the (optional) output of contour bound boxes, and additional information. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserInit (width,........,&mserHandle)) { if ( !fcvMserExtu8_v3 (mserHandle,...) ) { Error handle } fcvMserRelease(mserHandle); }.
FASTCV_API int fcvMserNN8Init (const uint32_t width, const uint32_t height, uint32_t delta, uint32_t minArea, uint32_t maxArea, float32_t maxVariation, float32_t minDiversity, void **mserHandle)
 Function to initialize 8-neighbor MSER. To invoke 8-neighbor MSER functionality, 3 functions have to be called: fcvMserNN8Init, fcvMserNN8u8, fcvMserRelease. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserNN8Init (width,........,&mserHandle)) { if ( !fcvMserNN8u8 (mserHandle,...) ) { Error handle } fcvMserRelease(mserHandle); }.
FASTCV_API int fcvMserNN8u8 (void *mserHandle, const uint8_t *__restrict srcPtr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxContours, uint32_t *__restrict numContours, uint16_t *__restrict recArray, uint32_t *__restrict numPointsInContour, uint32_t pointsArraySize, uint16_t *__restrict pointsArray)
 Function to invoke 8-neighbor MSER. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserNN8Init (width,........,&mserHandle)) { if ( !fcvMserNN8u8 (mserHandle,...) ) { Error handle } fcvMserRelease(mserHandle); }.
FASTCV_API int fcvMserExtNN8u8 (void *mserHandle, const uint8_t *__restrict srcPtr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxContours, uint32_t *__restrict numContours, uint16_t *__restrict recArray, uint32_t *__restrict numPointsInContour, uint32_t pointsArraySize, uint16_t *__restrict pointsArray, uint32_t *__restrict contourVariation, int8_t *__restrict contourPolarity, uint32_t *__restrict contourNodeId, uint32_t *__restrict contourNodeCounter)
 Function to invoke 8-neighbor MSER, , with additional outputs for each contour. Image width has to be greater than 50, and image height has to be greater than 5. Pixels at the image boundary are not processed. If boundary pixels are important for a particular application, please consider padding the input image with dummy pixels of one pixel wide. Here is the typical usage: void *mserHandle; if (fcvMserNN8Init (width,........,&mserHandle)) { if ( !fcvMserExtNN8u8 (mserHandle,...) ) { Error handle } fcvMserRelease(mserHandle); }.
FASTCV_API void fcvImageGradientInterleavedf32 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict gradients)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API void fcvImageGradientInterleavedf32_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict gradients, unsigned int gradStride)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API void fcvImageGradientPlanars16 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict dx, int16_t *__restrict dy)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API void fcvImageGradientPlanars16_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict dx, int16_t *__restrict dy, unsigned int dxyStride)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API void fcvImageGradientPlanarf32 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict dx, float *__restrict dy)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API void fcvImageGradientPlanarf32_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict dx, float *__restrict dy, unsigned int dxyStride)
 Creates 2D gradient from source illuminance data. This function considers only the left/right neighbors for x-gradients and top/bottom neighbors for y-gradients.
FASTCV_API void fcvCornerFast9u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int barrier, unsigned int border, uint32_t *__restrict xy, unsigned int nCornersMax, uint32_t *__restrict nCorners)
 Extracts FAST corners from the image. This function tests the whole image for corners (apart from the border). FAST-9 looks for continuous segments on the pixel ring of 9 pixels or more.
FASTCV_API void fcvCornerFast9InMasku8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int barrier, unsigned int border, uint32_t *__restrict xy, unsigned int nCornersMax, uint32_t *__restrict nCorners, const uint8_t *__restrict mask, unsigned int maskWidth, unsigned int maskHeight)
 Extracts FAST corners from the image. This function takes a bit mask so that only image areas masked with '0' are tested for corners (if these areas are also not part of the border). FAST-9 looks for continuous segments on the pixel ring of 9 pixels or more.
FASTCV_API void fcvCornerFast10u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t barrier, uint32_t border, uint32_t *__restrict xy, uint32_t nCornersMax, uint32_t *__restrict nCorners)
 Extracts FAST corners from the image. This function tests the whole image for corners (apart from the border). FAST-10 looks for continuous segments on the pixel ring of 10 pixels or more.
FASTCV_API void fcvCornerFast10InMasku8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t barrier, uint32_t border, uint32_t *__restrict xy, uint32_t nCornersMax, uint32_t *__restrict nCorners, const uint8_t *__restrict mask, uint32_t maskWidth, uint32_t maskHeight)
 Extracts FAST corners from the image. This function takes a bit mask so that only image areas masked with '0' are tested for corners (if these areas are also not part of the border). FAST-10 looks for continuous segments on the pixel ring of 10 pixels or more.
FASTCV_API void fcvCornerHarrisu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, unsigned int border, uint32_t *__restrict xy, unsigned int nCornersMax, uint32_t *__restrict nCorners, int threshold)
 Extracts Harris corners from the image. This function tests the whole image for corners (apart from the border).
FASTCV_API unsigned int fcvLocalHarrisMaxu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, unsigned int posX, unsigned int posY, unsigned int *maxX, unsigned int *maxY, int *maxScore)
 Local Harris Max applies the Harris Corner algorithm on an 11x11 patch within an image to determine if a corner is present.
FASTCV_API void fcvCornerHarrisInMasku8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, unsigned int border, uint32_t *__restrict xy, unsigned int nCornersMax, uint32_t *__restrict nCorners, int threshold, const uint8_t *__restrict mask, unsigned int maskWidth, unsigned int maskHeight)
 Extracts Harris corners from the image. This function takes a bit mask so that only image areas masked with '0' are tested for corners (if these areas are also not part of the border).
FASTCV_API void fcvCornerHarrisAdaptiveu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t border, float32_t *__restrict xy, uint32_t nCornersMax, uint32_t *__restrict nCorners, int32_t threshold)
 Extracts Harris corners from the image. This function tests the whole image for corners (apart from the border). It is an improved version which is more robust to low contrast images.
FASTCV_API fcvStatus fcvCornerHarrisScoreu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict harrisResp, uint32_t respStride, uint32_t *__restrict xy, uint32_t nCornersMax, uint32_t *__restrict nCorners, float32_t threshold, float32_t sensitivity, uint32_t kernelSize, uint32_t blockSize, uint32_t nmsEnabled, float32_t minDistance, uint32_t normalizeResponse)
 Extracts Harris corners from the image.
ATTENTION: Compared to fcvCornerHarrisu8, this API gives more accurate results in exchange for slower execution time.

.
FASTCV_API void fcvGeomAffineFitf32 (const fcvCorrespondences *__restrict corrs, float *__restrict affine)
 Computes affine trans. for a given set of corresponding features points using a linear least square colver based on Cholkesky decomposition.
FASTCV_API int fcvGeomAffineEvaluatef32 (const fcvCorrespondences *__restrict corrs, float *__restrict affine, float maxsqerr, uint16_t *__restrict inliers, int32_t *numinliers)
 Evaluates specified affine transformation against provided points correspondences. Checks which correspondence members have a projection error that is smaller than the given one (maxSquErr).
FASTCV_API void fcvGeomHomographyFitf32 (const fcvCorrespondences *__restrict corrs, float *__restrict homography)
 Performs cholesky homography fitting on specified points correspondences.

[x_to] [ a11 a12 a13 ] [ x_from ]
[y_to] = [ a21 a22 a23 ] * [ y_from ]
[ 1 ] [ a31 a32 a33 ] [ 1 ]
note that all the correspondences are considered, if correspondence pairs are smaller than 4, the API returns. If correspondence pairs are larger than 4, the API takes all the correspondences into consideration using least squared method.
FASTCV_API int fcvGeomHomographyEvaluatef32 (const fcvCorrespondences *__restrict corrs, float *__restrict homography, float maxsqerr, uint16_t *__restrict inliers, int32_t *numinliers)
 Evaluates specified homography against provided points correspondences. Check which correspondence members have a projection error that is smaller than the given one (maxSquErr).
FASTCV_API int fcvGeomHomographyEvaluatef32_v2 (const fcvCorrespondences *__restrict corrs, float32_t *__restrict homography, float32_t maxsqerr, uint16_t *__restrict inliers, float32_t *__restrict errinliers, int32_t *numinliers)
 Evaluates specified homography against provided points correspondences. Check which correspondence members have a projection error that is smaller than the given one (maxSquErr).
FASTCV_API float fcvGeomPoseRefineGNf32 (const fcvCorrespondences *__restrict corrs, short minIterations, short maxIterations, float stopCriteria, float *initpose, float *refinedpose)
 Performs cholesky pose fitting on specified points correspondences. Takes a pose and uses the correspondences to refine it using iterative Gauss-Newton optimization.
FASTCV_API int fcvGeomPoseUpdatef32 (const float *__restrict projected, const float *__restrict reprojErr, const float *__restrict invz, const float *__restrict reprojVariance, unsigned int numpts, float *__restrict pose)
 Update and compute the differential pose based on the specified points correspondences This function and fcvGeomPoseOptimizeGNf32 can be used iteratively to perform poseRefine GN.
FASTCV_API int fcvGeomPoseOptimizeGNf32 (const float *__restrict projected, const float *__restrict reprojErr, const float *__restrict invz, const float *__restrict reprojVariance, unsigned int numpts, float *__restrict pose)
 Update the pose based on the specified points correspondences using Gauss-Newton optimization. This function and fcvGeomPoseEvaluateErrorf32 can be used iteratively to perform poseRefine GN.
FASTCV_API float fcvGeomPoseEvaluateErrorf32 (const fcvCorrespondences *__restrict corrs, const float *__restrict pose, float *__restrict projected, float *__restrict reprojErr, float *__restrict invz, float *__restrict reprojVariance)
 Calculate the reprojection error based on the input pose. This function and fcvGeomPoseOptimizef32 can be used iteratively to perform poseRefine (GN or LM)..
FASTCV_API int fcvGeomPoseEvaluatef32 (const fcvCorrespondences *__restrict corrs, const float *pose, float maxSquErr, uint16_t *__restrict inliers, uint32_t *numInliers)
 Checks which members have a projection error that is smaller than the given one.
FASTCV_API void fcvGeom3PointPoseEstimatef32 (const fcvCorrespondences *__restrict corrs, float *pose, int32_t *numPoses)
 Estimates a 6DOF pose
NOTE: Given the coordinates of three 3D points (in world reference frame), and their corresponding perspective projections in an image, this algorithm determines the position and orientation of the camera in the world reference frame. The function provides up to four solutions that can be disambiguated using a fourth point. When used in conjunction with RANSAC, this function can perform efficient outlier rejection. Two degenerate cases should be avoided when using this function:
FASTCV_API void fcvFilterCorr3x3s8 (const int8_t *__restrict kernel, const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 3x3 correlation with non-separable kernel.
FASTCV_API void fcvFilterCorr3x3s8_v2 (const int8_t *__restrict kernel, const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 3x3 correlation with non-separable kernel.
FASTCV_API fcvStatus fcvFilterCorrNxNu8f32 (const float32_t *__restrict kernel, uint32_t N, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict dst, uint32_t dstStride)
 NxN correlation with non-separable kernel. Border values are ignored in this function. The filling of dst starts at (N/2,N/2) and ends at (srcWidth-1-N/2,srcHeight-1-N/2).
NOTE: The border is N/2 wide pixel strips at top, bottom, left and right of image.
FASTCV_API fcvStatus fcvFilterCorrNxNu8s16 (const int8_t *__restrict kernel, uint32_t N, int8_t shift, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 NxN correlation with non-separable kernel. Border values are ignored in this function. The filling of dst starts at (N/2,N/2) and ends at (srcWidth-1-N/2,srcHeight-1-N/2).
NOTE: The border is N/2 wide pixel strips at top, bottom, left and right of image.
FASTCV_API fcvStatus fcvFilterCorrNxNu8 (const int8_t *__restrict kernel, uint32_t N, int8_t shift, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 NxN correlation with non-separable kernel. Border values are ignored in this function. The filling of dst starts at (N/2,N/2) and ends at (srcWidth-1-N/2,srcHeight-1-N/2).
NOTE: The border is N/2 wide pixel strips at top, bottom, left and right of image.
FASTCV_API void fcvFilterCorrSep9x9s16 (const int16_t *__restrict kernel, const int16_t *src, unsigned int srcWidth, unsigned int srcHeight, int16_t *__restrict tmp, int16_t *dst)
 9x9 correlation with separable kernel. If src and dst point to the same address, it will do in-place.
FASTCV_API void fcvFilterCorrSep9x9s16_v2 (const int16_t *__restrict kernel, const int16_t *srcImg, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict tmpImg, int16_t *dstImg, unsigned int dstStride)
 9x9 FIR filter (convolution) with seperable kernel. If srcImg and dstImg point to the same address and srcStride equals to dstStride, it will do in-place.
FASTCV_API void fcvFilterCorrSep11x11s16 (const int16_t *__restrict kernel, const int16_t *src, unsigned int srcWidth, unsigned int srcHeight, int16_t *__restrict tmpImg, int16_t *dst)
 11x11 correlation with separable kernel. If src and dst point to the same address, it will do in-place.
FASTCV_API void fcvFilterCorrSep11x11s16_v2 (const int16_t *__restrict kernel, const int16_t *srcImg, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict tmpImg, int16_t *dstImg, unsigned int dstStride)
 11x11 FIR filter (convolution) with seperable kernel. If srcImg and dstImg point to the same address and srcStride equals to dstStride, it will do in-place.
FASTCV_API void fcvFilterCorrSep13x13s16 (const int16_t *__restrict kernel, const int16_t *src, unsigned int srcWidth, unsigned int srcHeight, int16_t *__restrict tmpImg, int16_t *dst)
 13x13 correlation with separable kernel. If src and dst point to the same address, it will do in-place.
FASTCV_API void fcvFilterCorrSep13x13s16_v2 (const int16_t *__restrict kernel, const int16_t *srcImg, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict tmpImg, int16_t *dstImg, unsigned int dstStride)
 13x13 FIR filter (convolution) with seperable kernel. If srcImg and dstImg point to the same address and srcStride equals to dstStride, it will do in-place.
FASTCV_API void fcvFilterCorrSep15x15s16 (const int16_t *__restrict kernel, const int16_t *src, unsigned int srcWidth, unsigned int srcHeight, int16_t *__restrict tmpImg, int16_t *dst)
 15x15 correlation with separable kernel. If src and dst point to the same address, it will do in-place.
FASTCV_API void fcvFilterCorrSep15x15s16_v2 (const int16_t *__restrict kernel, const int16_t *srcImg, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict tmpImg, int16_t *dstImg, unsigned int dstStride)
 15x15 FIR filter (convolution) with seperable kernel. If srcImg and dstImg point to the same address and srcStride equals to dstStride, it will do in-place.
FASTCV_API void fcvFilterCorrSep17x17s16 (const int16_t *__restrict kernel, const int16_t *src, unsigned int srcWidth, unsigned int srcHeight, int16_t *__restrict tmpImg, int16_t *dst)
 17x17 correlation with separable kernel. If src and dst point to the same address, it will do in-place.
FASTCV_API void fcvFilterCorrSep17x17s16_v2 (const int16_t *__restrict kernel, const int16_t *srcImg, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict tmpImg, int16_t *dstImg, unsigned int dstStride)
 17x17 FIR filter (convolution) with seperable kernel. If srcImg and dstImg point to the same address and srcStride equals to dstStride, it will do in-place.
FASTCV_API void fcvFilterCorrSepNxNs16 (const int16_t *__restrict kernel, int knlSize, const int16_t *srcImg, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict tmpImg, int16_t *dstImg, unsigned int dstStride)
 NxN correlation with separable kernel. If srcImg and dstImg point to the same address and srcStride equals to dstStride, it will do in-place.
FASTCV_API fcvStatus fcvFilterCorrSepMxNu8 (const int8_t *kernelX, uint32_t knlSizeX, const int8_t *kernelY, uint32_t knlSizeY, int8_t shift, const uint8_t *srcImg, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *dstImg, uint32_t dstStride)
 MxN correlation with separable kernel.
FASTCV_API void fcvImageIntensityStats (const uint8_t *__restrict src, unsigned int srcWidth, int xBegin, int yBegin, unsigned int recWidth, unsigned int recHeight, float *mean, float *variance)
 Calculates the mean and variance of intensities of a rectangle in a grayscale image.
FASTCV_API fcvStatus fcvImageIntensityStats_v2 (const uint8_t *__restrict src, unsigned int srcWidth, int xBegin, int yBegin, uint32_t recWidth, uint32_t recHeight, float32_t *mean, float32_t *variance, fcvVarianceEstimator varianceEstimator)
 Calculates the mean and variance of intensities of a rectangle in a grayscale image.
FASTCV_API void fcvImageIntensityHistogram (const uint8_t *__restrict src, unsigned int srcWidth, int xBegin, int yBegin, unsigned int recWidth, unsigned int recHeight, int32_t *histogram)
 Creates a histogram of intensities for a rectangular region of a grayscale image. Bins each pixel into a histogram of size 256, depending on the intensity of the pixel (in the range 0 to 255).
FASTCV_API void fcvIntegrateImageu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint32_t *__restrict dst)
 Builds an integral image of the incoming 8-bit image and adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegrateImageu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint32_t *__restrict dst, unsigned int dstStride)
 Builds an integral image of the incoming 8-bit image and adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegratePatchu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, int patchX, int patchY, unsigned int patchW, unsigned int patchH, uint32_t *__restrict intgrlImgOut, uint32_t *__restrict intgrlSqrdImgOut)
 Builds an integral image of the incoming 8-bit patch values and their squares and adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegratePatchu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int patchX, int patchY, unsigned int patchW, unsigned int patchH, uint32_t *__restrict intgrlImgOut, uint32_t *__restrict intgrlSqrdImgOut)
 Builds an integral image of the incoming 8-bit patch values and their squares and adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API fcvStatus fcvIntegratePatchu8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t patchX, uint32_t patchY, uint32_t patchW, uint32_t patchH, uint32_t *__restrict intgrlImgOut, uint32_t intgrlStride, uint32_t *__restrict intgrlSqrdImgOut, uint32_t intgrlSqrdStride)
 Builds an integral image of the incoming 8-bit patch values and their squares and adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegratePatch12x12u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, int patchX, int patchY, uint32_t *__restrict intgrlImgOut, uint32_t *__restrict intgrlSqrdImgOut)
 Builds an integral image of the incoming 12x12 8-bit patch values and their squares. It also adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegratePatch12x12u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int patchX, int patchY, uint32_t *__restrict intgrlImgOut, uint32_t *__restrict intgrlSqrdImgOut)
 Builds an integral image of the incoming 12x12 8-bit patch values and their squares. It also adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegratePatch18x18u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, int patchX, int patchY, uint32_t *__restrict intgrlImgOut, uint32_t *__restrict intgrlSqrdImgOut)
 Builds an integral image of the incoming 18x18 8-bit patch values and their squares. It also adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegratePatch18x18u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int patchX, int patchY, uint32_t *__restrict intgrlImgOut, uint32_t *__restrict intgrlSqrdImgOut)
 Builds an integral image of the incoming 18x18 8-bit patch values and their squares. It also adds an unfilled border on top and to the left.
NOTE: border usually zero filled elsewhere.
FASTCV_API void fcvIntegrateImageLineu8 (const uint8_t *__restrict src, uint16_t srcWidth, uint32_t *intgrl, uint32_t *intgrlSqrd)
 Integrates one line of an image or any portion of an image that is contiguous in memory.
FASTCV_API void fcvIntegrateImageLine64u8 (const uint8_t *__restrict src, uint16_t *intgrl, uint32_t *intgrlSqrd)
 Integrates 64 contiguous pixels of an image.
FASTCV_API int fcvDescriptorSampledMeanAndVar36f32 (const float *__restrict src, int first, int last, int32_t *vind, float *__restrict means, float *__restrict vars, float *__restrict temp)
 compute approximate mean and variance for the range of NFT4 float descriptors where descriptor elements along dimension are treated as random vars
FASTCV_API int fcvNCCPatchOnCircle8x8u8 (const uint8_t *__restrict patch, const uint8_t *__restrict src, unsigned short srcWidth, unsigned short srcHeight, unsigned short search_center_x, unsigned short search_center_y, unsigned short search_radius, uint16_t *best_x, uint16_t *best_y, uint32_t *bestNCC, int findSubPixel, float *subX, float *subY)
 Searches a 8x8 patch within radius around a center pixel for the max NCC.
FASTCV_API int fcvNCCPatchOnCircle8x8u8_v2 (const uint8_t *__restrict patch, const uint8_t *__restrict src, unsigned short srcWidth, unsigned short srcHeight, unsigned short search_center_x, unsigned short search_center_y, unsigned short search_radius, int filterLowVariance, uint16_t *best_x, uint16_t *best_y, uint32_t *bestNCC, int findSubPixel, float *subX, float *subY)
 Searches a 8x8 patch within radius around a center pixel for the max NCC.
FASTCV_API int fcvNCCPatchOnSquare8x8u8 (const uint8_t *__restrict patch, const uint8_t *__restrict src, unsigned short srcWidth, unsigned short srcHeight, unsigned short search_center_x, unsigned short search_center_y, unsigned short search_w, uint16_t *best_x, uint16_t *best_y, uint32_t *bestNCC, int doSubPixel, float *subX, float *subY)
 Searches a 8x8 patch within square region around a center pixel for the max NCC.
FASTCV_API int fcvNCCPatchOnSquare8x8u8_v2 (const uint8_t *__restrict patch, const uint8_t *__restrict src, unsigned short srcWidth, unsigned short srcHeight, unsigned short search_center_x, unsigned short search_center_y, unsigned short search_w, int filterLowVariance, uint16_t *best_x, uint16_t *best_y, uint32_t *bestNCC, int doSubPixel, float *subX, float *subY)
 Searches a 8x8 patch within square region around a center pixel for the max NCC.
FASTCV_API void fcvSumOfAbsoluteDiffs8x8u8 (const uint8_t *__restrict patch, const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint16_t *__restrict dst)
 Sum of absolute differences of an image against an 8x8 template.
FASTCV_API void fcvSumOfAbsoluteDiffs8x8u8_v2 (const uint8_t *__restrict patch, unsigned int patchStride, const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint16_t *__restrict dst, unsigned int dstStride)
 Sum of absolute differences of an image against an 8x8 template.
FASTCV_API int fcvScaleDownBy2u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Down-scale the image to half width and height by averaging 2x2 pixels into one.
FASTCV_API int fcvScaleDownBy2u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Down-scale the image to half width and height by averaging 2x2 pixels into one.
FASTCV_API void fcvScaleDownBy2Gaussian5x5u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Downscale a grayscale image by a factor of two using a 5x5 Gaussian filter kernel.
FASTCV_API void fcvScaleDownBy2Gaussian5x5u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Downscale a grayscale image by a factor of two using a 5x5 Gaussian filter kernel.
FASTCV_API int fcvScaleDownBy4u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Downscale the image to quarter width and height by averaging 4x4 pixels into one..
FASTCV_API int fcvScaleDownBy4u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Downscale the image to quarter width and height by averaging 4x4 pixels into one..
FASTCV_API int fcvScaleDown3To2u8 (const uint8_t *__restrict src, unsigned srcWidth, unsigned srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Downscale the image to 2/3 width and height by averaging 3x3 pixels into one..
FASTCV_API int fcvScaleDownNNu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstWidth, unsigned int dstHeight, unsigned int dstStride)
 Downsample Horizontaly and/or Vertically by an *integer* scale.
FASTCV_API void fcvScaleDownu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst, unsigned int dstWidth, unsigned int dstHeight)
 Downsample Horizontaly and/or Vertically by an *integer* scale.
FASTCV_API void fcvScaleDownu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstWidth, unsigned int dstHeight, unsigned int dstStride)
 Downsample Horizontaly and/or Vertically by an *integer* scale.
FASTCV_API void fcvScaleUpBy2Gaussian5x5u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Upscale a grayscale image by a factor of two using a 5x5 Gaussian filter kernel.
FASTCV_API void fcvScaleUpBy2Gaussian5x5u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Upscale a grayscale image by a factor of two using a 5x5 Gaussian filter kernel.
FASTCV_API int fcvVecNormalize36s8f32 (const int8_t *__restrict src, unsigned int srcStride, const float *__restrict invLen, unsigned int numVecs, float reqNorm, float *__restrict dst, int32_t *stopBuild)
 Translate to float and normalize 36 8-bit elements.
FASTCV_API void fcvSumOfSquaredDiffs36x4s8 (const int8_t *__restrict a, float invLenA, const int8_t *__restrict b0, const int8_t *__restrict b1, const int8_t *__restrict b2, const int8_t *__restrict b3, const float *__restrict invLenB, float *__restrict distances)
 Sum of squared differences of one 36-byte vector against 4 others.
FASTCV_API void fcvSumOfSquaredDiffs36xNs8 (const int8_t *__restrict a, float invLenA, const int8_t *const *__restrict b, const float *__restrict invLenB, unsigned int numB, float *__restrict distances)
 Sum of squared differences of one 36-byte vector against N others.
FASTCV_API void fcvSort8Scoresf32 (float *__restrict inScores, float *__restrict outScores)
 Sorting of 8 float numbers.
FASTCV_API void fcvFilterThresholdu8 (const uint8_t *src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *dst, unsigned int threshold)
 Binarizes a grayscale image based on a threshold value.
FASTCV_API void fcvFilterThresholdu8_v2 (const uint8_t *src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *dst, unsigned int dstStride, unsigned int threshold)
 Binarizes a grayscale image based on a threshold value.
FASTCV_API fcvStatus fcvFilterThresholdu8_v3 (const uint8_t *src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *dst, unsigned int dstStride, unsigned int threshold, uint8_t trueValue, uint8_t falseValue)
 Binarizes a grayscale image based on a threshold value. The binarized image will be in the two values selected by user.
FASTCV_API fcvStatus fcvFilterThresholdRangeu8 (const uint8_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *dst, uint32_t dstStride, uint8_t lowThresh, uint8_t highThresh)
 Binarizes a grayscale image based on a pair of threshold values.
FASTCV_API fcvStatus fcvFilterThresholdRangeu8_v2 (const uint8_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *dst, uint32_t dstStride, uint8_t lowThresh, uint8_t highThresh, uint8_t trueValue, uint8_t falseValue)
 Binarizes a grayscale image based on a pair of threshold values. The binarized image will be in the two values selected by user.
FASTCV_API void fcvFilterDilate3x3u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Dilate a grayscale image by taking the local maxima of 3x3 neighborhood window.
FASTCV_API void fcvFilterDilate3x3u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Dilate a grayscale image by taking the local maxima of 3x3 neighborhood window.
FASTCV_API void fcvFilterErode3x3u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst)
 Erode a grayscale image by taking the local minima of 3x3 neighborhood window.
FASTCV_API void fcvFilterErode3x3u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstStride)
 Erode a grayscale image by taking the local minima of 3x3 nbhd window.
FASTCV_API int fcvTransformAffine8x8u8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, const int32_t *__restrict nPos, const int32_t *__restrict nAffine, uint8_t *__restrict nPatch)
 Warps the patch centered at nPos in the input image using the affine transform in nAffine.
FASTCV_API int fcvTransformAffine8x8u8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, const int32_t *__restrict nPos, const int32_t *__restrict nAffine, uint8_t *__restrict patch, unsigned int patchStride)
 Warps the patch centered at nPos in the input image using the affine transform in nAffine.
FASTCV_API void fcvWarpPerspectiveu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst, unsigned int dstWidth, unsigned int dstHeight, float *__restrict projectionMatrix)
 Warps a grayscale image using the a perspective projection transformation matrix (also known as a homography). This type of transformation is an invertible transformation which maps straight lines to straight lines. Bi-linear interpolation is used where applicable.
FASTCV_API void fcvWarpPerspectiveu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstWidth, unsigned int dstHeight, unsigned int dstStride, float *__restrict projectionMatrix)
 Warps a grayscale image using the a perspective projection transformation matrix (also known as a homography). This type of transformation is an invertible transformation which maps straight lines to straight lines. Bi-linear interpolation is used where applicable.
FASTCV_API void fcv3ChannelWarpPerspectiveu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, uint8_t *__restrict dst, unsigned int dstWidth, unsigned int dstHeight, float *__restrict projectionMatrix)
 Warps a 3 color channel image based on a 3x3 perspective projection matrix using bilinear interpolation.
FASTCV_API void fcv3ChannelWarpPerspectiveu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, uint8_t *__restrict dst, unsigned int dstWidth, unsigned int dstHeight, unsigned int dstStride, float *__restrict projectionMatrix)
 Warps a 3 color channel image based on a 3x3 perspective projection matrix using bilinear interpolation.
FASTCV_API int fcvClusterEuclideanf32 (const float *__restrict points, int numPoints, int dim, int pointStride, const size_t *__restrict indices, int numIndices, int numClusters, float *__restrict clusterCenters, int clusterCenterStride, float *__restrict newClusterCenters, size_t *__restrict clusterMemberCounts, size_t *__restrict clusterBindings, float *sumOfClusterDistances)
 General function for computing cluster centers and cluster bindings for a set of points of dimension dim.
FASTCV_API int fcvClusterEuclideanNormedf32 (const float *__restrict points, int numPoints, int dim, int pointStride, const size_t *__restrict indices, int numIndices, int numClusters, float *__restrict clusterCenters, int clusterCenterStride, float *__restrict newClusterCenters, size_t *__restrict clusterMemberCounts, size_t *__restrict clusterBindings, float *sumOfClusterDistances)
 Function for computing cluster centers and cluster bindings for a set of normalized points of dimension dim. Cluster centers are also normalized (see remark below)
FASTCV_API int fcvClusterEuclideanNormed36f32 (const float *__restrict points, int numPoints, int pointStride, const size_t *__restrict indices, int numIndices, int numClusters, float *__restrict clusterCenters, int clusterCenterStride, float *__restrict newClusterCenters, size_t *__restrict clusterMemberCounts, size_t *__restrict clusterBindings, float *sumOfClusterDistances)
 Function for computing cluster centers and cluster bindings for a set of normalized points of dimension 36. Cluster centers are also normalized (see remark below)
FASTCV_API void fcvFilterGaussian5x5s16 (const int16_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, int16_t *__restrict dst, int blurBorder)
 Blur with 5x5 Gaussian filter.
FASTCV_API void fcvFilterGaussian5x5s16_v2 (const int16_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict dst, unsigned int dstStride, int blurBorder)
 Blur with 5x5 Gaussian filter.
FASTCV_API void fcvFilterGaussian5x5s32 (const int32_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, int32_t *__restrict dst, int blurBorder)
 Blur with 5x5 Gaussian filter.
FASTCV_API void fcvFilterGaussian5x5s32_v2 (const int32_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int32_t *__restrict dst, unsigned int dstStride, int blurBorder)
 Blur with 5x5 Gaussian filter.
FASTCV_API uint32_t fcvImageSegmentationRegionGrow (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t numChannel, uint32_t thresholdSplit, uint32_t thresholdMerge, uint32_t *__restrict segLabel, uint32_t segLabelStride, uint8_t *__restrict data)
 Segments an image (3 or 1 channel) into meaningful regions, depending on the color or gray scale uniformity of the neighborhood pixels.
FASTCV_API int fcvTransformAffineu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, const float *__restrict position, const float *__restrict affine, uint8_t *__restrict patch, unsigned int patchWidth, unsigned int patchHeight)
 Warps the patch centered at nPos in the input image using the affine transform in nAffine.
FASTCV_API int fcvTransformAffineu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, const float *__restrict position, const float *__restrict affine, uint8_t *__restrict patch, unsigned int patchWidth, unsigned int patchHeight, unsigned int patchStride)
 Warps the patch centered at nPos in the input image using the affine transform in nAffine.
FASTCV_API void fcvCopyRotated17x17u8 (const uint8_t *__restrict src, uint8_t *__restrict dst, int orientation)
 Extracts a 17x17 rotation corrected patch from a 25x25 image.
FASTCV_API uint32_t fcvBitCountu8 (const uint8_t *__restrict src, unsigned int srcLength)
 Counts "1" bits in supplied vector.
FASTCV_API uint32_t fcvBitCount32x1u8 (const uint8_t *__restrict src)
 Counts "1" bits in supplied 32-byte vector.
FASTCV_API void fcvBitCount32x4u8 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, uint32_t *__restrict bitCount)
 Counts bits in supplied 4, 32-byte vectors.
FASTCV_API uint32_t fcvBitCount64x1u8 (const uint8_t *__restrict src)
 Counts bits in supplied 64-byte vector.
FASTCV_API void fcvBitCount64x4u8 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, uint32_t *__restrict bitCount)
 Counts bits in supplied 4, 64-byte vectors.
FASTCV_API uint32_t fcvBitCountu32 (const uint32_t *__restrict src, unsigned int srcLength)
 Counts bits in supplied vector of unsigned intergers.
FASTCV_API uint32_t fcvHammingDistanceu8 (const uint8_t *__restrict a, const uint8_t *__restrict b, unsigned int abLength)
 Computes the Hamming distance between the two supplied arbitrary length vectors.
FASTCV_API uint32_t fcvHammingDistance32x1u8a4 (const uint8_t *__restrict a, const uint8_t *__restrict b)
 Computes the Hamming distance between the two supplied 32-byte vectors.
FASTCV_API uint32_t fcvHammingDistance64x1u8a4 (const uint8_t *__restrict a, const uint8_t *__restrict b)
 Computes the Hamming distance between the two supplied 64-byte vectors.
FASTCV_API uint32_t fcvHammingDistance32x1u8 (const uint8_t *__restrict a, const uint8_t *__restrict b)
 Computes the Hamming distance between the two supplied 32-byte vectors.
FASTCV_API uint32_t fcvHammingDistance64x1u8 (const uint8_t *__restrict a, const uint8_t *__restrict b)
 Computes the Hamming distance between the two supplied 64-byte vectors.
FASTCV_API void fcvHammingDistance32x4u8a4 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, const uint8_t *__restrict e, uint32_t *__restrict hammingDistances)
 Computes the Hamming distance between A and each of B,C,D,E 32-byte vectors.
FASTCV_API void fcvHammingDistance64x4u8a4 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, const uint8_t *__restrict e, uint32_t *__restrict hammingDistances)
 Computes the Hamming distance between A and each of B,C,D,E 64-byte vectors.
FASTCV_API void fcvHammingDistance64x4u8 (const uint8_t *__restrict a, const uint8_t *__restrict b, const uint8_t *__restrict c, const uint8_t *__restrict d, const uint8_t *__restrict e, uint32_t *__restrict hammingDistances)
 Computes the Hamming distance between A and each of B,C,D,E 64-byte vectors.
FASTCV_API void fcvCornerFast9Scoreu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int barrier, unsigned int border, uint32_t *__restrict xy, uint32_t *__restrict scores, unsigned int nCornersMax, uint32_t *__restrict nCorners)
 Extracts FAST corners and scores from the image.
FASTCV_API void fcvCornerFast9InMaskScoreu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int barrier, unsigned int border, uint32_t *__restrict xy, uint32_t *__restrict scores, unsigned int nCornersMax, uint32_t *__restrict nCorners, const uint8_t *__restrict mask, unsigned int maskWidth, unsigned int maskHeight)
 Extracts FAST corners and scores from the image.
FASTCV_API void fcvCornerFast9Scoreu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int barrier, unsigned int border, uint32_t *__restrict xy, uint32_t *__restrict scores, unsigned int nCornersMax, uint32_t *__restrict nCorners, uint32_t nmsEnabled, void *__restrict tempBuf)
 Extracts FAST corners and scores from the image.
FASTCV_API void fcvCornerFast9InMaskScoreu8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int barrier, unsigned int border, uint32_t *__restrict xy, uint32_t *__restrict scores, unsigned int nCornersMax, uint32_t *__restrict nCorners, const uint8_t *__restrict mask, unsigned int maskWidth, unsigned int maskHeight, uint32_t nmsEnabled, void *__restrict tempBuf)
 Extracts FAST corners and scores from the image based on the mask. The mask specifies pixels to be ignored by the detector.
FASTCV_API void fcvCornerFast10Scoreu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t barrier, uint32_t border, uint32_t *__restrict xy, uint32_t *__restrict scores, uint32_t nCornersMax, uint32_t *__restrict nCorners, uint32_t nmsEnabled, void *__restrict tempBuf)
 Extracts FAST corners and scores from the image.
FASTCV_API void fcvCornerFast10InMaskScoreu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t barrier, uint32_t border, uint32_t *__restrict xy, uint32_t *__restrict scores, uint32_t nCornersMax, uint32_t *__restrict nCorners, const uint8_t *__restrict mask, uint32_t maskWidth, uint32_t maskHeight, uint32_t nmsEnabled, void *__restrict tempBuf)
 Extracts FAST corners and scores from the image based on the mask. The mask specifies pixels to be ignored by the detector.
FASTCV_API void fcvTrackLKOpticalFlowu8 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, int srcWidth, int srcHeight, const fcvPyramidLevel *src1Pyr, const fcvPyramidLevel *src2Pyr, const fcvPyramidLevel *dx1Pyr, const fcvPyramidLevel *dy1Pyr, const float *featureXY, float *featureXY_out, int32_t *featureStatus, int featureLen, int windowWidth, int windowHeight, int maxIterations, int nPyramidLevels, float maxResidue, float minDisplacement, float minEigenvalue, int lightingNormalized)
 Optical flow. Bitwidth optimized implementation.
FASTCV_API void fcvTrackLKOpticalFlowu8_v2 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, uint32_t width, uint32_t height, uint32_t stride, const fcvPyramidLevel_v2 *src1Pyr, const fcvPyramidLevel_v2 *src2Pyr, const float32_t *featureXY, float32_t *featureXY_out, int32_t *featureStatus, int32_t featureLen, int32_t windowWidth, int32_t windowHeight, int32_t maxIterations, int32_t nPyramidLevels)
 Optical flow (with stride so ROI can be supported)
FASTCV_API void fcvTrackLKOpticalFlowf32 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, unsigned int srcWidth, unsigned int srcHeight, const fcvPyramidLevel *src1Pyr, const fcvPyramidLevel *src2Pyr, const fcvPyramidLevel *dx1Pyr, const fcvPyramidLevel *dy1Pyr, const float *featureXY, float *featureXY_out, int32_t *featureStatus, int featureLen, int windowWidth, int windowHeight, int maxIterations, int nPyramidLevels, float maxResidue, float minDisplacement, float minEigenvalue, int lightingNormalized)
 Optical flow.
FASTCV_API int fcvPyramidCreatef32 (const float *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int numLevels, fcvPyramidLevel *pyramid)
 Builds an image pyramid of float32 arising from a single original image - that are successively downscaled w.r.t. the pre-set levels.
NOTE: Memory should be deallocated using fcvPyramidDelete.
FASTCV_API int fcvPyramidCreatef32_v2 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t numLevels, fcvPyramidLevel_v2 *pyramid)
 Builds an image pyramid (with stride).
NOTE: Memory should be deallocated using fcvPyramidDelete_v2.
FASTCV_API int fcvPyramidCreateu8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int numLevels, fcvPyramidLevel *pyramid)
 Builds an image pyramid of uint8_t arising from a single original image - that are successively downscaled w.r.t. the pre-set levels.
NOTE: Memory should be deallocated using fcvPyramidDelete.
FASTCV_API int fcvPyramidCreateu8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t numLevels, fcvPyramidLevel_v2 *pyramid)
 Builds an image pyramid (with stride).
NOTE: Memory should be deallocated using fcvPyramidDelete.
FASTCV_API fcvStatus fcvPyramidCreateu8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t numLevels, fcvPyramidScale scale, fcvPyramidLevel_v2 *__restrict pyramidGaussian)
 Builds a Gaussian image pyramid. DO NOT USE THIS API unless for testing purposes. This API can be removed without notice.
FASTCV_API int fcvPyramidSobelGradientCreatei16 (const fcvPyramidLevel *imgPyr, fcvPyramidLevel *dxPyr, fcvPyramidLevel *dyPyr, unsigned int numLevels)
 Creates a gradient pyramid of int16_t from an image pyramid of uint8_t.
FASTCV_API int fcvPyramidSobelGradientCreatef32 (const fcvPyramidLevel *imgPyr, fcvPyramidLevel *dxPyr, fcvPyramidLevel *dyPyr, unsigned int numLevels)
 Creates a gradient pyramid of float32 from an image pyramid of uint8_t.
FASTCV_API int fcvPyramidSobelGradientCreatei8 (const fcvPyramidLevel *imgPyr, fcvPyramidLevel *dxPyr, fcvPyramidLevel *dyPyr, unsigned int numLevels)
 Creates a gradient pyramid of integer8 from an image pyramid of uint8_t.
FASTCV_API void fcvImageGradientSobelPlanars16 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict dx, int16_t *__restrict dy)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanars16_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict dx, int16_t *__restrict dy, unsigned int dxyStride)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanars16_v3 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict dx, int16_t *__restrict dy, unsigned int dxyStride)
 Creates a 2D gradient image from source luminance data without normalization. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelInterleaveds16 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict gradients)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel. The output is in interleaved format (i.e.) [dx][dy][dx][dy]....

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelInterleaveds16_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict gradients, unsigned int gradStride)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel. The output is in interleaved format (i.e.) [dx][dy][dx][dy]....

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelInterleaveds16_v3 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int16_t *__restrict gradients, unsigned int gradStride)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel. The output is in interleaved format (i.e.) [dx][dy][dx][dy]....

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ]
Compared to the original and v2 functions, this v3 functions does not normalize
the gradients (divide by 8). It just returns the actual dx, dy values.
FASTCV_API void fcvImageGradientSobelInterleavedf32 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict gradients)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel. The output is in interleaved format (i.e.) [dx][dy][dx][dy]....

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelInterleavedf32_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *__restrict gradients, unsigned int gradStride)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel. The output is in interleaved format (i.e.) [dx][dy][dx][dy]....

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanars8 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int8_t *__restrict dx, int8_t *__restrict dy)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanars8_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, int8_t *__restrict dx, int8_t *__restrict dy, unsigned int dxyStride)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanarf32 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *dx, float *dy)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanarf32_v2 (const uint8_t *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *dx, float *dy, unsigned int dxyStride)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanarf32f32 (const float *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *dx, float *dy)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API void fcvImageGradientSobelPlanarf32f32_v2 (const float *__restrict src, unsigned int srcWidth, unsigned int srcHeight, unsigned int srcStride, float *dx, float *dy, unsigned int dxyStride)
 Creates a 2D gradient image from source luminance data. This function computes central differences on 3x3 neighborhood and then convolves the result with Sobel kernel

[ -1 0 +1 ] [ -1 -2 -1 ]
dx = [ -2 0 +2 ] * src dy = [ 0 0 0 ] * src
[ -1 0 +1 ] [ +1 +2 +1 ].
FASTCV_API int fcvTrackBMOpticalFlow16x16u8 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t roiLeft, uint32_t roiTop, uint32_t roiRight, uint32_t roiBottom, uint32_t shiftSize, uint32_t searchWidth, uint32_t searchHeight, uint32_t searchStep, uint32_t usePrevious, uint32_t *numMv, uint32_t *locX, uint32_t *locY, uint32_t *mvX, uint32_t *mvY)
 Block Optical Flow 16x16 - Tracks all 16x16 blocks in the Region of Interest (ROI) from Source-1 to Source-2. Generates Motion Vectors for blocks where motion is detected.
FASTCV_API fcvStatus fcvNCCPatchesOnRectu8 (const uint8_t *__restrict patches, uint32_t patchWidth, uint32_t patchHeight, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const uint32_t *__restrict searchCenterX, const uint32_t *__restrict searchCenterY, uint32_t searchWidth, uint32_t searchHeight, int32_t filterLowVariance, uint32_t *__restrict bestX, uint32_t *__restrict bestY, uint32_t *__restrict bestNCC, int32_t findSubPixel, float32_t *__restrict subX, float32_t *__restrict subY, uint32_t numSearches)
 Searches a set of patches within the source image for the max NCCs. The search regions are corresponding to the patches in the search list.
FASTCV_API void fcvBitwiseOru8 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, uint8_t *__restrict mask, uint32_t maskStride)
 Performs per-element bitwise-OR operation on two 8-bit single channel images. Two images should have the same size. dst(I)=src1(I) V src2(I) if mask(I) is not zero.
FASTCV_API void fcvBitwiseOrs32 (const int32_t *__restrict src1, const int32_t *__restrict src2, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict dst, uint32_t dstStride, uint8_t *__restrict mask, uint32_t maskStride)
 Performs per-element bitwise-OR operation on two 32-bit single channel images. Two images should have the same size. dst(I)=src1(I) V src2(I) if mask(I) is not zero.
FASTCV_API void fcvColorRGB888ToGrayu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Converts an image from RGB space to grayscale.
FASTCV_API void fcvTiltedIntegralu8s32 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict dst, uint32_t dstStride)
 Integral of the image tilted by 45 degrees.
FASTCV_API void fcvConvValids16 (const int16_t *__restrict src1, uint32_t src1Width, uint32_t src1Height, uint32_t src1Stride, const int16_t *__restrict src2, uint32_t src2Width, uint32_t src2Height, uint32_t src2Stride, int32_t *__restrict dst, uint32_t dstStride)
 Performs a valid convolution of two images.
FASTCV_API void fcvBoundingRectangle (const uint32_t *__restrict xy, uint32_t numPoints, uint32_t *rectTopLeftX, uint32_t *rectTopLeftY, uint32_t *rectWidth, uint32_t *rectHeight)
 Function to find the bounding rectangle of a set of points.
FASTCV_API void fcvUpsampleVerticalu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs vertical upsampling on input Chroma data.
FASTCV_API void fcvUpsampleHorizontalu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs horizontal upsampling on input Chroma data.
FASTCV_API void fcvUpsample2Du8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs both horizontal and vertical upsampling on input Chroma data.
FASTCV_API void fcvUpsampleVerticalInterleavedu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs vertical upsampling on input interleaved Chroma data.
FASTCV_API void fcvUpsampleHorizontalInterleavedu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs horizontal upsampling on input interleaved Chroma data.
FASTCV_API void fcvUpsample2DInterleavedu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs both horizontal and vertical upsampling on input interleaved Chroma data.
FASTCV_API void fcvColorRGB565ToYCbCr444Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGB565 to YCbCr444.
FASTCV_API void fcvColorRGB565ToYCbCr422Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGB565 to YCbCr422.
FASTCV_API void fcvColorRGB565ToYCbCr420Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGB565 to YCbCr420.
FASTCV_API void fcvColorRGB888ToYCbCr444Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGB888 to YCbCr444.
FASTCV_API void fcvColorRGB888ToYCbCr422Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGB888 to YCbCr422.
FASTCV_API void fcvColorRGB888ToYCbCr420Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGB888 to YCbCr420.
FASTCV_API void fcvColorRGBA8888ToYCbCr444Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGBA8888 to YCbCr444.
FASTCV_API void fcvColorRGBA8888ToYCbCr422Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGBA8888 to YCbCr422.
FASTCV_API void fcvColorRGBA8888ToYCbCr420Planaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from RGBA8888 to YCbCr420.
FASTCV_API void fcvColorRGB565ToYCbCr444PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGB565 to pseudo-planar YCbCr444.
FASTCV_API void fcvColorRGB565ToYCbCr422PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGB565 to pseudo-planar YCbCr422.
FASTCV_API void fcvColorRGB565ToYCbCr420PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGB565 to pseudo-planar YCbCr420.
FASTCV_API void fcvColorRGB888ToYCbCr444PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGB888 to pseudo-planar YCbCr444.
FASTCV_API void fcvColorRGB888ToYCbCr422PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGB888 to pseudo-planar YCbCr422.
FASTCV_API void fcvColorRGB888ToYCbCr420PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGB888 to pseudo-planar YCbCr420.
FASTCV_API void fcvColorRGBA8888ToYCbCr444PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGBA8888 to pseudo-planar YCbCr444.
FASTCV_API void fcvColorRGBA8888ToYCbCr422PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGBA8888 to pseudo-planar YCbCr422.
FASTCV_API void fcvColorRGBA8888ToYCbCr420PseudoPlanaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from RGBA8888 to pseudo-planar YCbCr420.
FASTCV_API void fcvColorRGB565ToRGB888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB565 to RGB888 or from BGR565 to BGR888.
FASTCV_API void fcvColorRGB565ToRGBA8888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB565 to RGBA8888 or from BGR565 to BGRA8888.
FASTCV_API void fcvColorRGB565ToBGR565u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB565 to BGR565 or from BGR565 to RGB565.
FASTCV_API void fcvColorRGB565ToBGR888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB565 to BGR888 or from BGR565 to RGB888.
FASTCV_API void fcvColorRGB565ToBGRA8888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB565 to BGRA8888 or from BGR565 to RGBA8888.
FASTCV_API void fcvColorRGB888ToRGB565u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB888 to RGB565 or from BGR888 to BGR565.
FASTCV_API void fcvColorRGB888ToRGBA8888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB888 to RGBA8888or from BGR888 to BGRA8888.
FASTCV_API void fcvColorRGB888ToBGR565u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB888 to BGR565 or from BGR888 to RGB565.
FASTCV_API void fcvColorRGB888ToBGR888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB888 to BGR888 or from BGR888 to RGB888.
FASTCV_API void fcvColorRGB888ToBGRA8888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGB888 to BGRA8888 or from BGR888 to RGBA8888.
FASTCV_API void fcvColorRGBA8888ToRGB565u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGBA8888 to RGB565 or BGRA8888 to BGR565.
FASTCV_API void fcvColorRGBA8888ToRGB888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGBA8888 to RGB888 or from BGRA8888 to BGR888.
FASTCV_API void fcvColorRGBA8888ToBGR565u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGBA8888 to BGR565 or from BGRA8888 to RGB565.
FASTCV_API void fcvColorRGBA8888ToBGR888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGBA8888 to BGR888 or from BGRA8888 to RGB888.
FASTCV_API void fcvColorRGBA8888ToBGRA8888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGBA8888 to BGRA8888 or from BGRA8888 to RGBA8888.
FASTCV_API void fcvColorRGBA8888ToLABu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from RGBA8888 to LAB color space.
FASTCV_API void fcvColorYCbCr444PlanarToYCbCr422Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from planar YCbCr444 to planar YCbCr422.
FASTCV_API void fcvColorYCbCr444PlanarToYCbCr420Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from planar YCbCr444 to planar YCbCr420.
FASTCV_API void fcvColorYCbCr444PlanarToYCbCr444PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr444 to pseudo planar YCbCr444.
FASTCV_API void fcvColorYCbCr444PlanarToYCbCr422PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr444 to pseudo planar YCbCr422.
FASTCV_API void fcvColorYCbCr444PlanarToYCbCr420PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr444 to pseudo planar YCbCr420.
FASTCV_API void fcvColorYCbCr422PlanarToYCbCr444Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from planar YCbCr422 to planar YCbCr444.
FASTCV_API void fcvColorYCbCr422PlanarToYCbCr420Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from planar YCbCr422 to planar YCbCr420.
FASTCV_API void fcvColorYCbCr422PlanarToYCbCr444PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr422 to pseudo planar YCbCr444.
FASTCV_API void fcvColorYCbCr422PlanarToYCbCr422PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr422 to pseudo planar YCbCr422.
FASTCV_API void fcvColorYCbCr422PlanarToYCbCr420PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr422 to pseudo planar YCbCr420.
FASTCV_API void fcvColorYCbCr420PlanarToYCbCr444Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from planar YCbCr420 to planar YCbCr444.
FASTCV_API void fcvColorYCbCr420PlanarToYCbCr422Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from planar YCbCr420 to planar YCbCr422.
FASTCV_API void fcvColorYCbCr420PlanarToYCbCr444PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr420 to pseudo planar YCbCr444.
FASTCV_API void fcvColorYCbCr420PlanarToYCbCr422PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr420 to pseudo planar YCbCr422.
FASTCV_API void fcvColorYCbCr420PlanarToYCbCr420PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from planar YCbCr420 to pseudo planar YCbCr420.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToYCbCr422PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from pseudo planar YCbCr444 to pseudo planar YCbCr422.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToYCbCr420PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from pseudo planar YCbCr444 to pseudo planar YCbCr420.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToYCbCr444Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr444 to planar YCbCr444.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToYCbCr422Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr444 to planar YCbCr422.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToYCbCr420Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr444 to planar YCbCr420.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToYCbCr444PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from pseudo planar YCbCr422 to pseudo planar YCbCr444.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToYCbCr420PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from pseudo planar YCbCr422 to pseudo planar YCbCr420.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToYCbCr444Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr422 to planar YCbCr444.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToYCbCr422Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr422 to planar YCbCr422.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToYCbCr420Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr422 to planar YCbCr420.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToYCbCr444PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from pseudo planar YCbCr420 to pseudo planar YCbCr444.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToYCbCr422PseudoPlanaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstC, uint32_t dstYStride, uint32_t dstCStride)
 Color conversion from pseudo planar YCbCr420 to pseudo planar YCbCr422.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToYCbCr444Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr420 to planar YCbCr444.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToYCbCr422Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr420 to planar YCbCr422.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToYCbCr420Planaru8 (const uint8_t *srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *dstY, uint8_t *__restrict dstCb, uint8_t *__restrict dstCr, uint32_t dstYStride, uint32_t dstCbStride, uint32_t dstCrStride)
 Color conversion from pseudo planar YCbCr420 to planar YCbCr420.
FASTCV_API void fcvColorYCbCr444PlanarToRGB565u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr444 to RGB565.
FASTCV_API void fcvColorYCbCr444PlanarToRGB888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr444 to RGB888.
FASTCV_API void fcvColorYCbCr444PlanarToRGBA8888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr444 to RGBA8888.
FASTCV_API void fcvColorYCbCr422PlanarToRGB565u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr422 to RGB565.
FASTCV_API void fcvColorYCbCr422PlanarToRGB888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr422 to RGB888.
FASTCV_API void fcvColorYCbCr422PlanarToRGBA8888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr422 to RGBA8888.
FASTCV_API void fcvColorYCbCr420PlanarToRGB565u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr420 to RGB565.
FASTCV_API void fcvColorYCbCr420PlanarToRGB888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr420 to RGB888.
FASTCV_API void fcvColorYCbCr420PlanarToRGBA8888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcCb, const uint8_t *__restrict srcCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from YCbCr420 to RGBA8888.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToRGB565u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr444 to RGB565.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToRGB888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr444 to RGB888.
FASTCV_API void fcvColorYCbCr444PseudoPlanarToRGBA8888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr444 to RGBA8888.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToRGB565u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr422 to RGB565.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToRGB888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr422 to RGB888.
FASTCV_API void fcvColorYCbCr422PseudoPlanarToRGBA8888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr422 to RGBA8888.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToRGB565u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr420 to RGB565.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToRGB888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr420 to RGB888.
FASTCV_API void fcvColorYCbCr420PseudoPlanarToRGBA8888u8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint8_t *__restrict dst, uint32_t dstStride)
 Color conversion from pseudo-planar YCbCr420 to RGBA8888.
FASTCV_API void fcvEdgeWeightings16 (int16_t *__restrict edgeMap, const uint32_t edgeMapWidth, const uint32_t edgeMapHeight, const uint32_t edgeMapStride, const uint32_t weight, const uint32_t edge_limit, const uint32_t hl_threshold, const uint32_t hh_threshold, const uint32_t edge_denoise_factor)
 Performs edge weighting on input image.
FASTCV_API void fcvDeinterleaveu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst0, uint32_t dst0Stride, uint8_t *__restrict dst1, uint32_t dst1Stride)
 Performe image deinterleave for unsigned byte data.
FASTCV_API void fcvInterleaveu8 (const uint8_t *__restrict src0, const uint8_t *__restrict src1, uint32_t imageWidth, uint32_t imageHeight, uint32_t src0Stride, uint32_t src1Stride, uint8_t *__restrict dst, uint32_t dstStride)
 Performe image interleave.
FASTCV_API void fcvDWTHarrTransposeu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs forward Haar discrete wavelet transform on input image and transpose the result.
FASTCV_API void fcvDWTHaarTransposeu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs forward Haar discrete wavelet transform on input image and transposes the result.
FASTCV_API void fcvDWT53TabTransposes16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs forward 5-3 Tab discrete wavelet transform on input image and transposes the result.
FASTCV_API void fcvIDWT53TabTransposes16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs inverse 5-3 Tab discrete wavelet transform on input image and transposes the result.
FASTCV_API void fcvIDWTHarrTransposes16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs inverse Haar discrete wavelet transform on input image and transpose the result.
FASTCV_API void fcvIDWTHaarTransposes16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs inverse Haar discrete wavelet transform on input image and transposes the result.
FASTCV_API void fcvDWTHaaru8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs forward Haar discrete wavelet transform on input image.
FASTCV_API void fcvDWT53Tabs16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs forward 5-3 Tab discrete wavelet transform on input image.
FASTCV_API void fcvIDWT53Tabs16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs inverse 5-3 Tab discrete wavelet transform on input image.
FASTCV_API void fcvIDWTHaars16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs inverse Haar discrete wavelet transform on input image.
FASTCV_API void fcvDCTu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride)
 Performs forward discrete Cosine transform on uint8_t pixels.
FASTCV_API void fcvIDCTs16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Performs inverse discrete cosine transform on int16_t coefficients.
FASTCV_API void fcvScaleUpPolyu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride)
 Perform image upscaling using polyphase filters.
FASTCV_API void fcvScaleUpPolyInterleaveu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride)
 Interleaved image (CbCr or CrCb) upscaling using polyphase filters.
FASTCV_API void fcvScaleDownMNu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride)
 Image downscaling using MN method
NOTE: This MN downscalar supports up to 1/20x downscaling.
FASTCV_API void fcvScaleDownMNInterleaveu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride)
 Interleaved image downscaling using MN method.
FASTCV_API uint32_t fcvKMeansTreeSearch36x10s8 (const int8_t *__restrict nodeChildrenCenter, const uint32_t *__restrict nodeChildrenInvLenQ32, const uint32_t *__restrict nodeChildrenIndex, const uint8_t *__restrict nodeNumChildren, uint32_t numNodes, const int8_t *__restrict key)
 Search K-Means tree, where each node connects to up to 10 children, and the center (mean) is a 36-tuple vector of 8-bit signed value.
FASTCV_API int fcvLinearSearchPrepare8x36s8 (uint32_t *__restrict dbLUT, uint32_t numDBLUT, int8_t *__restrict descDB, uint32_t *__restrict descDBInvLenQ38, uint16_t *__restrict descDBTargetId, uint32_t *__restrict descDBOldIdx, uint32_t numDescDB)
 Sorts in-place the pairs of <descDB, descDBInvLenQ38 > according to descDBTargetId.
FASTCV_API void fcvLinearSearch8x36s8 (const uint32_t *__restrict dbLUT, uint32_t numDBLUT, const int8_t *__restrict descDB, const uint32_t *__restrict descDBInvLenQ38, const uint16_t *__restrict descDBTargetId, uint32_t numDescDB, const int8_t *__restrict srcDesc, const uint32_t *__restrict srcDescInvLenQ38, const uint32_t *__restrict srcDescIdx, uint32_t numSrcDesc, const uint16_t *__restrict targetsToIgnore, uint32_t numTargetsToIgnore, uint32_t maxDistanceQ31, uint32_t *__restrict correspondenceDBIdx, uint32_t *__restrict correspondenceSrcDescIdx, uint32_t *__restrict correspondenceDistanceQ31, uint32_t maxNumCorrespondences, uint32_t *__restrict numCorrespondences)
 Perform linear search of descriptor in a database.
FASTCV_API void fcvFindContoursExternalu8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxNumContours, uint32_t *__restrict numContours, uint32_t *__restrict numContourPoints, uint32_t **__restrict contourStartPoints, uint32_t *__restrict pointBuffer, uint32_t pointBufferSize, int32_t hierarchy[][4], void *contourHandle)
 Finds only extreme outer contours in a binary image. There is no nesting relationship between contours. It sets hierarchy[i][2]=hierarchy[i][3]=-1 for all the contours.
FASTCV_API void fcvFindContoursListu8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxNumContours, uint32_t *__restrict numContours, uint32_t *__restrict numContourPoints, uint32_t **__restrict contourStartPoints, uint32_t *__restrict pointBuffer, uint32_t pointBufferSize, void *contourHandle)
 Finds contours in a binary image without any hierarchical relationships.
FASTCV_API void fcvFindContoursCcompu8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxNumContours, uint32_t *__restrict numContours, uint32_t *__restrict holeFlag, uint32_t *__restrict numContourPoints, uint32_t **__restrict contourStartPoints, uint32_t *__restrict pointBuffer, uint32_t pointBufferSize, int32_t hierarchy[][4], void *contourHandle)
 Finds contours in a binary image and organizes them into a two-level hierarchy. At the top level, there are external boundaries of the components. At the second level, there are boundaries of the holes. If there is another contour inside a hole of a connected component, it is still put at the top level.
FASTCV_API void fcvFindContoursTreeu8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t maxNumContours, uint32_t *__restrict numContours, uint32_t *__restrict holeFlag, uint32_t *__restrict numContourPoints, uint32_t **__restrict contourStartPoints, uint32_t *__restrict pointBuffer, uint32_t pointBufferSize, int32_t hierarchy[][4], void *contourHandle)
 Finds contours in a binary image and reconstructs a full hierarchy of nested contours.
FASTCV_API void * fcvFindContoursAllocate (uint32_t srcStride)
 Allocates assistant and intermediate data for contour.
FASTCV_API void fcvFindContoursDelete (void *contourHandle)
 Deallocates assistant and intermediate data for contour.
FASTCV_API void fcvSolvef32 (const float32_t *__restrict A, int32_t numCols, int32_t numRows, const float32_t *__restrict b, float32_t *__restrict x)
 Solve linear equation system Ax = b.
FASTCV_API void fcvGetPerspectiveTransformf32 (const float32_t src1[8], const float32_t src2[8], float32_t transformCoefficient[9])
 Calculates a perspective transform from four pairs of the corresponding points. NOTE: in order to guarantee a valid output transform, any three points in src1 or src2 cannot be collinear.
FASTCV_API void fcvSetElementsu8 (uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, uint8_t value, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of a uint8_t single channel array to a given value.
FASTCV_API void fcvSetElementss32 (int32_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, int32_t value, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of an int32_t single channel array to a given value.
FASTCV_API void fcvSetElementsf32 (float32_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, float32_t value, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of a float32_t single channel array to a given value.
FASTCV_API void fcvSetElementsc4u8 (uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, uint8_t value1, uint8_t value2, uint8_t value3, uint8_t value4, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of a uint8_t 4-channel array to a given 4-element scalar.
FASTCV_API void fcvSetElementsc4s32 (int32_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, int32_t value1, int32_t value2, int32_t value3, int32_t value4, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of an int32_t 4-channel array to a given 4-element scalar.
FASTCV_API void fcvSetElementsc4f32 (float32_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, float32_t value1, float32_t value2, float32_t value3, float32_t value4, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of a float32_t 4-channel array to a given 4-element scalar.
FASTCV_API void fcvSetElementsc3u8 (uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, uint8_t value1, uint8_t value2, uint8_t value3, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of a uint8_t 3-channel array to a given 3-element scalar.
FASTCV_API void fcvSetElementsc3s32 (int32_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, int32_t value1, int32_t value2, int32_t value3, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of an int32_t 3-channel array to a given 3-element scalar.
FASTCV_API void fcvSetElementsc3f32 (float32_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, float32_t value1, float32_t value2, float32_t value3, const uint8_t *__restrict mask, uint32_t maskStride)
 Sets every element of a float32_t 3-channel array to a given 3-element scalar.
FASTCV_API void fcvAdaptiveThresholdGaussian3x3u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t maxValue, fcvThreshType thresholdType, int32_t value, uint8_t *__restrict dst, uint32_t dstStride)
 Binarizes a grayscale image based on an adaptive threshold value calculated from 3x3 Gaussian kernel.
FASTCV_API void fcvAdaptiveThresholdGaussian5x5u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t maxValue, fcvThreshType thresholdType, int32_t value, uint8_t *__restrict dst, uint32_t dstStride)
 Binarizes a grayscale image based on an adaptive threshold value calculated from 5x5 Gaussian kernel.
FASTCV_API void fcvAdaptiveThresholdGaussian11x11u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t maxValue, fcvThreshType thresholdType, int32_t value, uint8_t *__restrict dst, uint32_t dstStride)
 Binarizes a grayscale image based on an adaptive threshold value calculated from 11x11 Gaussian kernel.
FASTCV_API void fcvAdaptiveThresholdMean3x3u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t maxValue, fcvThreshType thresholdType, int32_t value, uint8_t *__restrict dst, uint32_t dstStride)
 Binarizes a grayscale image based on an adaptive threshold value calculated from 3x3 mean.
FASTCV_API void fcvAdaptiveThresholdMean5x5u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t maxValue, fcvThreshType thresholdType, int32_t value, uint8_t *__restrict dst, uint32_t dstStride)
 Binarizes a grayscale image based on an adaptive threshold value calculated from 5x5 mean.
FASTCV_API void fcvAdaptiveThresholdMean11x11u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t maxValue, fcvThreshType thresholdType, int32_t value, uint8_t *__restrict dst, uint32_t dstStride)
 Binarizes a grayscale image based on an adaptive threshold value calculated from 11x11 mean.
FASTCV_API void fcvBoxFilter3x3u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Smooth a uint8_t image with a 3x3 box filter.
FASTCV_API void fcvBoxFilter5x5u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Smooth a uint8_t image with a 5x5 box filter.
FASTCV_API void fcvBoxFilter11x11u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Smooth a uint8_t image with a 11x11 box filter.
FASTCV_API void fcvBoxFilterNxNf32 (const float32_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t N, float32_t *dst, uint32_t dstStride)
 Smooth a float32_t image with a NxN box filter. If srcImg and dstImg point to the same address and srcStride equals to dstStride, it will do in-place.
FASTCV_API void fcvBilateralFilter5x5u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 bilateral smoothing with a 5x5 bilateral kernel
FASTCV_API fcvStatus fcvBilateralFilter5x5u8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, float32_t sigmaColor, float32_t sigmaSpace)
 bilateral smoothing with a 5x5 bilateral kernel
FASTCV_API void fcvBilateralFilter7x7u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Bilateral smoothing with 7x7 bilateral kernel.
FASTCV_API fcvStatus fcvBilateralFilter7x7u8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, float32_t sigmaColor, float32_t sigmaSpace)
 Bilateral smoothing with 7x7 bilateral kernel.
FASTCV_API void fcvBilateralFilter9x9u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Bilateral smoothing with 9x9 bilateral kernel.
FASTCV_API fcvStatus fcvBilateralFilter9x9u8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, float32_t sigmaColor, float32_t sigmaSpace)
 Bilateral smoothing with 9x9 bilateral kernel.
FASTCV_API void fcvSegmentFGMasku8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t Polygonal, uint32_t perimScale)
 This function will remove small patches in the source image based on the input threshold.
FASTCV_API void fcvAbsDiffu8 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between two uint8_t matrices.
FASTCV_API void fcvAbsDiffs32 (const int32_t *__restrict src1, const int32_t *__restrict src2, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between two int32_t matrices.
FASTCV_API void fcvAbsDifff32 (const float32_t *__restrict src1, const float32_t *__restrict src2, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between two float32_t matrices.
FASTCV_API void fcvAbsDiffVu8 (const uint8_t *__restrict src, uint8_t value, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one matrix and one value.
FASTCV_API void fcvAbsDiffVs32 (const int32_t *__restrict src, int32_t value, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one matrix and one value.
FASTCV_API void fcvAbsDiffVf32 (const float32_t *__restrict src, float32_t value, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one matrix and one value.
FASTCV_API void fcvAbsDiffVc4u8 (const uint8_t *__restrict src, uint8_t value1, uint8_t value2, uint8_t value3, uint8_t value4, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one 4-channel matrix and a 4-element Scalar.
FASTCV_API void fcvAbsDiffVc4s32 (const int32_t *__restrict src, int32_t value1, int32_t value2, int32_t value3, int32_t value4, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one 4-channel matrix and a 4-element Scalar.
FASTCV_API void fcvAbsDiffVc4f32 (const float32_t *__restrict src, float32_t value1, float32_t value2, float32_t value3, float32_t value4, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one 4-channel matrix and a 4-element Scalar.
FASTCV_API void fcvAbsDiffVc3u8 (const uint8_t *__restrict src, uint8_t value1, uint8_t value2, uint8_t value3, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one 3-channel matrix and a 3-element Scalar.
FASTCV_API void fcvAbsDiffVc3s32 (const int32_t *__restrict src, int32_t value1, int32_t value2, int32_t value3, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one 3-channel matrix and a 3-element Scalar.
FASTCV_API void fcvAbsDiffVc3f32 (const float32_t *__restrict src, float32_t value1, float32_t value2, float32_t value3, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict dst, uint32_t dstStride)
 Computes the per-element absolute difference between one 3-channel matrix and a 3-element Scalar.
FASTCV_API int fcvKDTreeCreate36s8f32 (const int8_t *__restrict vectors, const float32_t *__restrict invLengths, int numVectors, fcvKDTreeDatas8f32 **kdtrees)
 create KDTrees for dataset of 36D vectors
FASTCV_API int fcvKDTreeDestroy36s8f32 (fcvKDTreeDatas8f32 *kdtrees)
 release KDTrees data structures
FASTCV_API int fcvKDTreeQuery36s8f32 (fcvKDTreeDatas8f32 *kdtrees, const int8_t *__restrict query, float32_t queryInvLen, int maxNNs, float32_t maxDist, int maxChecks, const uint8_t *__restrict mask, int32_t *numNNsFound, int32_t *__restrict NNInds, float32_t *__restrict NNDists)
 find nearest neighbors (NN) for query
FASTCV_API void fcvFloodfillSimpleu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, uint32_t xBegin, uint32_t yBegin, uint8_t newVal, fcvConnectedComponent *cc, uint8_t connectivity, void *lineBuffer)
 This function fills the image with a starting seed and neighborhood (4 or 8). It then returns the connected component (cc) that's filled.
FASTCV_API fcvStatus fcvFloodfillMergedu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, uint32_t xBegin, uint32_t yBegin, uint8_t newVal, fcvConnectedComponent *__restrict cc, uint8_t connectivity)
 This function fills the image with a starting seed and neighborhood (4 or 8). It then returns the connected component (cc) that's filled.
FASTCV_API void fcvUpdateMotionHistoryu8s32 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict dst, uint32_t dstStride, int32_t timeStamp, int32_t maxHistory)
 This function calculates the motion history image.
FASTCV_API void fcvIntegrateImageYCbCr420PseudoPlanaru8 (const uint8_t *__restrict srcY, const uint8_t *__restrict srcC, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCStride, uint32_t *__restrict integralY, uint32_t *__restrict integralCb, uint32_t *__restrict integralCr, uint32_t integralYStride, uint32_t integralCbStride, uint32_t integralCrStride)
 This function calculates the integral image of a YCbCr image.
FASTCV_API void fcvFindForegroundIntegrateImageYCbCr420u32 (const uint32_t *__restrict bgIntegralY, const uint32_t *__restrict bgIntegralCb, const uint32_t *__restrict bgIntegralCr, const uint32_t *__restrict fgIntegralY, const uint32_t *__restrict fgIntegralCb, const uint32_t *__restrict fgIntegralCr, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcYStride, uint32_t srcCbStride, uint32_t srcCrStride, uint8_t *__restrict outputMask, uint32_t outputWidth, uint32_t outputHeight, uint32_t outputMaskStride, float32_t threshold)
 This function finds the foreground.
FASTCV_API void fcvAverages32 (const int32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict avgValue)
 This function calculates the average value of an image.
FASTCV_API void fcvAverageu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict avgValue)
 This function calculates the average value of an image.
FASTCV_API uint32_t fcvMeanShiftu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvRectangleInt *window, fcvTermCriteria criteria)
 Applies the meanshift procedure and obtains the final converged position.
FASTCV_API uint32_t fcvMeanShifts32 (const int32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvRectangleInt *window, fcvTermCriteria criteria)
 Applies the meanshift procedure and obtains the final converged position.
FASTCV_API uint32_t fcvMeanShiftf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvRectangleInt *window, fcvTermCriteria criteria)
 Applies the meanshift procedure and obtains the final converged position.
FASTCV_API uint32_t fcvConAdaTracku8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvRectangleInt *window, fcvTermCriteria criteria, fcvBox2D *circuBox)
 Applies the ConAdaTrack procedure and find the object center, size and orientation.
FASTCV_API uint32_t fcvConAdaTracks32 (const int32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvRectangleInt *window, fcvTermCriteria criteria, fcvBox2D *circuBox)
 Applies the ConAdaTrack procedure and find the object center, size and orientation.
FASTCV_API uint32_t fcvConAdaTrackf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvRectangleInt *window, fcvTermCriteria criteria, fcvBox2D *circuBox)
 Applies the ConAdaTrack procedure and find the object center, size and orientation.
FASTCV_API void fcvSVDf32 (const float32_t *__restrict A, uint32_t m, uint32_t n, float32_t *__restrict w, float32_t *__restrict U, float32_t *__restrict Vt, float32_t *tmpU, float32_t *tmpV)
 Compute a singular value decomposition of a matrix of a float type A = U*diag[w]*Vt; It is used for solving problems like least-squares, under-determined linear systems, matrix inversion and so forth. The algorithm used here does not compute the full U and V matrices however it computes a condensed version of U and V described below which is sufficient to solve most problems which use SVD.
FASTCV_API void fcvFillConvexPolyu8 (uint32_t nPts, const uint32_t *__restrict polygon, uint32_t nChannel, const uint8_t *__restrict color, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride)
 Draw convex polygon.
FASTCV_API void fcvPointPolygonTest (uint32_t nPts, const uint32_t *__restrict polygonContour, uint32_t px, uint32_t py, float32_t *distance, int16_t *resultFlag)
 Determines whether a given point is inside a contour, outside, or lies on an edge (or coincides with a vertex). It returns positive, negative or zero value, correspondingly. Also measures distance between the point and the nearest contour edge if distance is requested.
FASTCV_API void fcvFindConvexHull (uint32_t *__restrict polygonContour, uint32_t nPtsContour, uint32_t *__restrict convexHull, uint32_t *nPtsHull, uint32_t *__restrict tmpBuff)
 Find the convex hull of the input polygon.
FASTCV_API int32_t fcvSolveCholeskyf32 (float32_t *__restrict A, const float32_t *__restrict b, float32_t *__restrict diag, uint32_t N, float32_t *__restrict x)
 Executes Cholesky decomposition algorithm on a symmetric and positive definite matrix to solve the linear system A*x = b, where A is an NxN matrix and x & b are vectors of size N.
FASTCV_API void fcvGeomDistortPoint2x1f32 (const float32_t *__restrict cameraCalibration, const float32_t *__restrict xyCamera, float32_t *__restrict xyDevice)
 Applies radial distortion to a 2D coordinate in camera coordinates and returns the distorted coordinate in device coordinates.
FASTCV_API void fcvGeomDistortPoint2xNf32 (const float32_t *__restrict cameraCalibration, const float32_t *__restrict xyCamera, uint32_t srcStride, uint32_t xySize, float32_t *__restrict xyDevice, uint32_t dstStride)
 Applies radial distortion to a set of 2D coordinates in camera coordinates and returns the distorted coordinates in device coordinates. brief algorithm desribed in fcvGeomDistortPoint2x1f32.
FASTCV_API void fcvGeomUndistortPoint2x1f32 (const float32_t *__restrict cameraCalibration, const float32_t *__restrict xyDevice, float32_t *__restrict xyCamera)
 Applies radial undistortion to a 2D coordinate in device coordinates and returns the undistorted coordinate in camera coordinates.
FASTCV_API void fcvGeomUndistortPoint2xNf32 (const float32_t *__restrict cameraCalibration, const float32_t *__restrict xyDevice, uint32_t srcStride, uint32_t xySize, float32_t *__restrict xyCamera, uint32_t dstStride)
 Applies radial undistortion to a 2D coordinate in device coordinates and returns the undistorted coordinate in camera coordinates. brief algorithm desribed in fcvGeomUndistortPoint2x1f32.
FASTCV_API int32_t fcvGeomProjectPoint3x1f32 (const float32_t *__restrict pose, const float32_t *__restrict cameraCalibration, const float32_t *__restrict xyz, float32_t *__restrict xyCamera, float32_t *__restrict xyDevice)
 Transforms a 3D point using a pose-matrix, projects the transformed point, distorts the projected 2D point and converts to device coordinates.
FASTCV_API void fcvGeomProjectPoint3xNf32 (const float32_t *__restrict pose, const float32_t *__restrict cameraCalibration, const float32_t *__restrict xyz, uint32_t srcStride, uint32_t xyzSize, float32_t *__restrict xyCamera, float32_t *__restrict xyDevice, uint32_t dstStride, uint32_t *inFront)
 Transforms a 3D point using a pose-matrix, projects the transformed point, distorts the projected 2D point and converts to device coordinates. brief algorithm desribed in fcvGeomProjectPoint3x1f32.
FASTCV_API fcvStatus fcvInvertAffineTransformf32 (const float32_t *__restrict M, float32_t *__restrict invAffineMat)
 Invert an affine transformation.
FASTCV_API fcvStatus fcvGeomHomographyRobustFitf32 (const fcvCorrespondences *__restrict corr, float32_t *__restrict homography, float32_t reprojThreshold)
 Performs robust homography fitting on specified points correspondences.
FASTCV_API fcvStatus fcvICPJacobianErrorSE3f32 (const uint16_t *__restrict depthData, uint32_t depthWidth, uint32_t depthHeight, uint32_t depthStride, const float32_t *__restrict refPointsNormals, uint32_t numPoints, const float32_t *__restrict refPose, const float32_t *__restrict camera, float32_t sqDistThreshold, float32_t *__restrict sqDists, float32_t *__restrict errors, float32_t *__restrict jacobian)
 Compute Point-to-Plane ICP Jacobian matrix and errors for SE3 motion.
FASTCV_API fcvStatus fcvGeomHomographyFitf32_v2 (const fcvCorrespondences *__restrict corrs, float32_t *__restrict homography, uint32_t mode)
 Performs homography fitting on specified points correspondences.

[x_to] [ a11 a12 a13 ] [ x_from ]
[y_to] = [ a21 a22 a23 ] * [ y_from ]
[ 1 ] [ a31 a32 a33 ] [ 1 ]
note that all the correspondences are considered, if correspondence pairs are smaller than 4, the API returns. If correspondence pairs are larger than 4, the API takes all the correspondences into consideration using least squared method.
FASTCV_API fcvStatus fcvGeomHomographyRobustFitf32_v2 (const fcvCorrespondences *__restrict corr, float32_t *__restrict homography, float32_t reprojThreshold, uint32_t mode)
 Performs robust homography fitting on specified points correspondences.
FASTCV_API fcvStatus fcvDepthFusion8x8x8xNs16 (const fcvDepthFusionBlockConfig *__restrict configs, int16_t *__restrict volumes, uint32_t numBlocks, uint32_t volumeStride, const float32_t *__restrict depthData, uint32_t depthWidth, uint32_t depthHeight, uint32_t depthStride, const float32_t *__restrict cameraCalibration, int16_t maxWeight)
 Volumetric depth fusion into multiple 8x8x8 blocks.
FASTCV_API void fcvRemapRGBA8888NNu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, const float32_t *__restrict mapX, const float32_t *__restrict mapY, uint32_t mapStride)
 Applies a generic geometrical transformation to a 4-channel uint8 image. The interpolation method is nearest neighbor.
FASTCV_API void fcvRemapRGBA8888BLu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, const float32_t *__restrict mapX, const float32_t *__restrict mapY, uint32_t mapStride)
 Applies a generic geometrical transformation to a 4-channel uint8 image with bilinear interpolation.
FASTCV_API void fcvJacobianSE2f32 (const uint8_t *__restrict warpedImage, const uint16_t *__restrict warpedBorder, const uint8_t *__restrict targetImage, const int16_t *__restrict targetDX, const int16_t *__restrict targetDY, uint32_t width, uint32_t height, uint32_t stride, float32_t *__restrict sumJTJ, float32_t *__restrict sumJTE, float32_t *__restrict sumError, uint32_t *__restrict numPixels)
 Calculates JTJ, JTE and the sum absolute, normalized pixel differences for a target image and a reference image of same size for an SE2 image motion model. Since gradients are required for this algorithm all border pixels in referenceImage and targetImage are ignored.
NOTE: Only works for images with even width and height.
FASTCV_API void fcvTransformAffineClippedu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const float32_t *__restrict affineMatrix, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, uint32_t *__restrict dstBorder)
 Applies an affine transformation on a grayscale image using a 2x3 matrix. Pixels are sampled using bi-linear interpolation. Pixels that would be sampled from outside the source image are not modified in the target image. The left-most and right-most pixel coordinates of each scanline are written to dstBorder.
FASTCV_API fcvStatus fcvTransformAffineClippedu8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const float32_t *__restrict affineMatrix, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, uint32_t *__restrict dstBorder, fcvInterpolationType interpolation)
 Applies an affine transformation on a grayscale image using a 2x3 matrix. Pixels that would be sampled from outside the source image are not modified in the target image. The left-most and right-most pixel coordinates of each scanline are written to dstBorder.
FASTCV_API fcvStatus fcvTransformAffineClippedu8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const float32_t *__restrict affineMatrix, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, uint32_t *__restrict dstBorder, fcvInterpolationType interpolation, fcvBorderType borderType, uint8_t borderValue)
 Applies an affine transformation on a grayscale image using a 2x3 matrix. Pixels that would be sampled from outside the source image are not modified in the target image. The left-most and right-most pixel coordinates of each scanline are written to dstBorder.
FASTCV_API fcvBGCodeWord ** fcvCreateBGCodeBookModel (uint32_t srcWidth, uint32_t srcHeight, void **__restrict cbmodel)
 Creates codebook model according to the image size.
FASTCV_API void fcvReleaseBGCodeBookModel (void **cbmodel)
 Releases codebook model and codebook map.
FASTCV_API void fcvConfigBGCodeBookModel (void *cbmodel, uint8_t cbBound[3], uint8_t minMod[3], uint8_t maxMod[3])
 configure codebook model
FASTCV_API void fcvBGCodeBookUpdateu8 (void *__restrict cbmodel, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const uint8_t *__restrict fgMask, uint32_t fgMaskStride, fcvBGCodeWord **__restrict cbMap, int32_t *__restrict updateTime)
 Updates codebook map according to input image. fgMask can be a reference.
FASTCV_API void fcvBGCodeBookDiffu8 (void *__restrict cbmodel, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict fgMask, uint32_t fgMaskStride, fcvBGCodeWord **__restrict cbMap, int32_t *__restrict numFgMask)
 Generates differential mask of input frame according to background codebook map.
FASTCV_API void fcvBGCodeBookClearStaleu8 (void *__restrict cbmodel, int32_t staleThresh, const uint8_t *__restrict fgMask, uint32_t fgMaskWidth, uint32_t fgMaskHeight, uint32_t fgMaskStride, fcvBGCodeWord **__restrict cbMap)
 Removes stale element in codebook according to foreground mask.
FASTCV_API void fcvHoughCircleu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvCircle *__restrict circles, uint32_t *__restrict numCircle, uint32_t maxCircle, uint32_t minDist, uint32_t cannyThreshold, uint32_t accThreshold, uint32_t minRadius, uint32_t maxRadius, void *__restrict data)
 Finds circles in a grayscale image using Hough transform.
FASTCV_API void fcvHoughLineu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t threshold, uint32_t maxLines, uint32_t *__restrict pNumLines, fcvLine *__restrict pLines)
 Performs Hough Line detection.
FASTCV_API void fcvDrawContouru8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t nContours, const uint32_t *__restrict holeFlag, const uint32_t *__restrict numContourPoints, const uint32_t **__restrict contourStartPoints, uint32_t pointBufferSize, const uint32_t *__restrict pointBuffer, int32_t hierarchy[][4], uint32_t max_level, int32_t thickness, uint8_t color, uint8_t hole_color)
 Draw the contour or fill the area enclosed by the contour. The algorithm using even-odd rule to fill the contour. Currently Antialiazing is not supported.
FASTCV_API void fcvDrawContourInterleavedu8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t nContours, const uint32_t *__restrict holeFlag, const uint32_t *__restrict numContourPoints, const uint32_t **__restrict contourStartPoints, uint32_t pointBufferSize, const uint32_t *__restrict pointBuffer, int32_t hierarchy[][4], uint32_t max_level, int32_t thickness, uint8_t colorR, uint8_t colorG, uint8_t colorB, uint8_t hole_colorR, uint8_t hole_colorG, uint8_t hole_colorB)
 Draw the contour or fill the area enclosed by the contour. Currently Antialiazing is not supported.
FASTCV_API void fcvDrawContourPlanaru8 (uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t nContours, const uint32_t *__restrict holeFlag, const uint32_t *__restrict numContourPoints, const uint32_t **__restrict contourStartPoints, uint32_t pointBufferSize, const uint32_t *__restrict pointBuffer, int32_t hierarchy[][4], uint32_t max_level, int32_t thickness, uint8_t colorR, uint8_t colorG, uint8_t colorB, uint8_t hole_colorR, uint8_t hole_colorG, uint8_t hole_colorB)
 Draw the contour or fill the area enclosed by the contour. Currently Antialiazing is not supported.
FASTCV_API void fcvImageMomentsu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvMoments *moments, uint8_t binary)
 Computes weighted average (moment) of the image pixels' intensities.
FASTCV_API void fcvImageMomentss32 (const int32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvMoments *moments, uint8_t binary)
 Computes weighted average (moment) of the image pixels' intensities.
FASTCV_API void fcvImageMomentsf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, fcvMoments *moments, uint8_t binary)
 Computes weighted average (moment) of the image pixels' intensities.
FASTCV_API int32_t fcvSolveLDLf32 (float32_t *__restrict A, const float32_t *__restrict b, float32_t *__restrict diag, uint32_t N, float32_t *__restrict x)
 Executes LDL decomposition algorithm on a symmetric and positive definite matrix to solve the linear system A*x = b, where A is an NxN matrix and x & b are vectors of size N.
FASTCV_API float32_t fcvDotProductf32 (const float32_t *__restrict a, const float32_t *__restrict b, uint32_t N)
 Executes dot product of two floating point vectors.
FASTCV_API void fcv3ChannelTransformAffineClippedBCu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const float32_t *__restrict affineMatrix, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, uint32_t *__restrict dstBorder)
 Applies an affine transformation on a 3-color channel image using a 2x3 matrix using bicubic interpolation. Pixels that would be sampled from outside the source image are not modified in the target image. The left-most and right-most pixel coordinates of each scanline are written to dstBorder.
FASTCV_API void fcvFilterThresholdOtsuu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, fcvThreshType thresholdType)
 Binarizes a grayscale image using Otsu's method.
FASTCV_API void fcvImageDetectEdgePixelsu8 (const int16_t *__restrict gxgy, const uint32_t *__restrict mag, uint32_t gradStride, uint32_t topLeftX, uint32_t topLeftY, uint32_t width, uint32_t height, uint32_t gridSize, float32_t threshold, uint32_t nEdgePixelsMax, uint32_t *__restrict nEdgePixels, uint32_t *__restrict coordEdgePixels)
 Extracts edge locations from the image. This function tests for edges a grid of pixels within a bounding box.
FASTCV_API fcvStatus fcvGLBPu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t radius, uint32_t neighbors, uint8_t *__restrict dst, uint32_t dstStride)
 Computes the Generalized Local Binary Pattern Features for a single channel image.
FASTCV_API fcvStatus fcvCornerRefineSubPixu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t blockWidth, uint32_t blockHeight, uint32_t maxIterations, float32_t stopCriteria, const uint32_t *__restrict xyInitial, uint32_t nCorners, float32_t *__restrict xyOut)
 Refine corner location.
FASTCV_API fcvStatus fcvGoodFeatureToTracku8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t distanceMin, uint32_t border, float32_t barrier, uint32_t *__restrict xy, uint32_t maxnumcorners, uint32_t *__restrict numcorners)
 Extract strong corners from image to track.
FASTCV_API fcvStatus fcvFindMultipleMaximau8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const float32_t *__restrict pos, const float32_t *__restrict normal, uint32_t maxDistance, uint32_t maxNumMaxima, int32_t minGradient, float32_t maxAngleDiff, float32_t *__restrict maxima, uint32_t *__restrict numMaxima)
 Find multiple maxima along the normal direction of the line.
FASTCV_API fcvStatus fcvImageDetectLineSegmentsu8 (const fcvPyramidLevel_v2 *__restrict srcPyr, uint32_t pyrLevel, uint32_t doBlurImage, float32_t maxLineAngle, uint32_t minLineLength, uint32_t minMagnitude, uint32_t maxLineNum, uint32_t *__restrict indexBuffer, fcvLineSegment *__restrict lineSegments, uint32_t *__restrict numLineSegments)
 Extract the straight line segments from the image.
FASTCV_API void fcvSumOfSquaredDiffsu8 (const uint8_t *__restrict a, float32_t invLenA, uint32_t dim, const uint8_t *const *__restrict bList, const float32_t *__restrict invLenB, uint32_t numB, float32_t *__restrict distances)
 Sum of squared differences of one L-byte vector against N others.
FASTCV_API void fcvSumOfSquaredDiffsf32 (const float32_t *__restrict a, float32_t invLenA, uint32_t dim, const float32_t *const *__restrict bList, const float32_t *__restrict invLenB, uint32_t numB, float32_t *__restrict distances)
 Sum of squared differences of one floating vector of L-elements against N others.
FASTCV_API int fcvClusterEuclideanu8 (const uint8_t *__restrict points, int32_t numPoints, int32_t dim, int32_t pointStride, int32_t numPointsUsed, int32_t numClusters, float32_t *__restrict clusterCenters, int32_t clusterCenterStride, float32_t *__restrict newClusterCenters, uint32_t *__restrict clusterMemberCounts, uint32_t *__restrict clusterBindings, float32_t *sumOfClusterDistances)
 General function for computing cluster centers and cluster bindings for a set of points of dimension dim.
FASTCV_API void fcvTransposeu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Matrix transpose of one uint8_t type matrix.
FASTCV_API void fcvTransposeu16 (const uint16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint16_t *__restrict dst, uint32_t dstStride)
 Matrix transpose of one uint16_t type matrix.
FASTCV_API void fcvTransposef32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict dst, uint32_t dstStride)
 Matrix transpose of one float32_t type matrix.
FASTCV_API void fcvFlipu8 (const uint8_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *dst, uint32_t dstStride, fcvFlipDir dir)
 Flip one uint8_t type matrix. If src and dst point to the same address and srcStride equals to dstStride, it will do in-place flip.
FASTCV_API void fcvFlipu16 (const uint16_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint16_t *dst, uint32_t dstStride, fcvFlipDir dir)
 Flip one uint16_t type matrix. If src and dst point to the same address, and srcStride equals to dstStride, it will do in-place flip.
FASTCV_API fcvStatus fcvFlipRGB888u8 (const uint8_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *dst, uint32_t dstStride, fcvFlipDir dir)
 Flips an interleaved RGB image.
FASTCV_API fcvStatus fcvRotateImageu8 (const uint8_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *dst, uint32_t dstStride, fcvRotateDegree degree)
 Rotate one uint8_t type image.
FASTCV_API fcvStatus fcvRotateImageInterleavedu8 (const uint8_t *src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *dst, uint32_t dstStride, fcvRotateDegree degree)
 Rotate one interleaved uint8_t type image (e.g. UV channel in NV21).
FASTCV_API void fcvElementMultiplyu8u16 (const uint8_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *src2, uint32_t src2Stride, uint16_t *__restrict dst, uint32_t dstStride)
 Element-wise multiplication of two uint8_t type matrices.
FASTCV_API void fcvElementMultiplyf32 (const float32_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const float32_t *src2, uint32_t src2Stride, float32_t *__restrict dst, uint32_t dstStride)
 Element-wise multiplication of two float32_t type matrices.
FASTCV_API void fcvMatrixMultiplys8s32 (const int8_t *__restrict src1, uint32_t src1Width, uint32_t src1Height, uint32_t src1Stride, const int8_t *__restrict src2, uint32_t src2Width, uint32_t src2Stride, int32_t *__restrict dst, uint32_t dstStride)
 Matrix multiplication of two int8_t type matrices.
FASTCV_API void fcvMatrixMultiplyf32 (const float32_t *__restrict src1, uint32_t src1Width, uint32_t src1Height, uint32_t src1Stride, const float32_t *__restrict src2, uint32_t src2Width, uint32_t src2Stride, float32_t *__restrict dst, uint32_t dstStride)
 Matrix multiplication of two float32_t type matrices.
FASTCV_API uint32_t fcvBlockDotProductu8 (const uint8_t *__restrict src1, uint32_t blockWidth, uint32_t blockHeight, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride)
 Dot product of two uint8_t type blocks.
FASTCV_API float32_t fcvBlockDotProductf32 (const float32_t *__restrict src1, uint32_t blockWidth, uint32_t blockHeight, uint32_t src1Stride, const float32_t *__restrict src2, uint32_t src2Stride)
 Dot product of two float32_t type blocks.
FASTCV_API void fcvAddu8u16 (const uint8_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, uint16_t *__restrict dst, uint32_t dstStride)
 Matrix addition of two uint8_t type matrices.
FASTCV_API void fcvAdds16 (const int16_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const int16_t *__restrict src2, uint32_t src2Stride, int16_t *__restrict dst, uint32_t dstStride)
 Matrix addition of two int16_t type matrices with saturation.
FASTCV_API void fcvAddf32 (const float32_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const float32_t *__restrict src2, uint32_t src2Stride, float32_t *__restrict dst, uint32_t dstStride)
 Matrix addition of two float32_t type matrices.
FASTCV_API void fcvIntegrateImageu8u64 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t *__restrict dstIntgrl, uint64_t *__restrict dstIntgrlSqrd, uint32_t dstIntgrlStride, uint32_t dstIntgrlSqrdStride)
 Builds an integral image of the incoming 8-bit patch values and their squares. This function supports bigger size patch with u64 for squared integral output.
NOTE: No extra border lines, the integral output buffer size is the same as input image buffer size.
FASTCV_API void fcvImageHistogramEqualizeu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Normalize the image according to histogram value of the pixel intensity.
FASTCV_API void fcvImageSpatialHistogramu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t numPatterns, uint32_t grid_x, uint32_t grid_y, float32_t *__restrict histogram)
 Calculate histogram at image patches.
FASTCV_API fcvStatus fcvFilterSobel3x3u8s16 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dx, int16_t *__restrict dy, uint32_t dxyStride, fcvBorderType borderType, uint8_t borderValue)
 Creates a 2D gradient image from source luminance data without normalization. This function computes the gradient of the input image by convolution with the 3x3 Sobel kernel. The Sobel kernel is not normalized in this function.
FASTCV_API fcvStatus fcvFilterSobel5x5u8s16 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dx, int16_t *__restrict dy, uint32_t dxyStride, fcvBorderType borderType, uint8_t borderValue)
 Creates a 2D gradient image from source luminance data without normalization. This function computes the gradient of the input image by convolution with the 5x5 Sobel kernel. The Sobel kernel is not normalized in this function.
FASTCV_API fcvStatus fcvFilterSobel7x7u8s16 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dx, int16_t *__restrict dy, uint32_t dxyStride, fcvBorderType borderType, uint8_t borderValue)
 Creates a 2D gradient image from source luminance data without normalization. This function computes the gradient of the input image by convolution with the 7x7 Sobel kernel. The Sobel kernel is not normalized in this function.
FASTCV_API fcvStatus fcvFilterCannyu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t kernelSize, int32_t lowThresh, int32_t highThresh, fcvNormType normType, uint8_t *__restrict dst, uint32_t dstStride, int16_t *__restrict gx, int16_t *__restrict gy, uint32_t gradStride)
 Canny edge detection with more controls to configurate the algorithm.
FASTCV_API fcvStatus fcvConvertDepthu8s16 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t shift, int16_t *__restrict dst, uint32_t dstStride)
 Converts the bit depth of a single-channel uint8 image to int16_t type.
FASTCV_API fcvStatus fcvConvertDepths16u8 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t shift, fcvConvertPolicy policy, uint8_t *__restrict dst, uint32_t dstStride)
 Converts the bit depth of a single-channel int16_t image to uint8_t type.
FASTCV_API fcvStatus fcvBilateralFilterRecursiveu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, float32_t sigmaColor, float32_t sigmaSpace)
 Recursive Bilateral Filtering.
FASTCV_API fcvStatus fcvImageSegmentationSeedRegionGrows16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t numChannel, uint32_t threshGrow, const uint32_t *__restrict pointVector, uint32_t numSeed, uint8_t mode, uint32_t *__restrict segLabel, uint32_t segLabelStride)
 Grow the seeds within the image to meaningful regions, depending on the color or gray scale uniformity of the neighborhood pixels from the seeds.
FASTCV_API fcvStatus fcvNormalizeLocalBoxu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t patchWidth, uint32_t patchHeight, uint32_t useStdDev, int8_t *__restrict dst, uint32_t dstStride)
 Calculate the local subtractive and contrastive normalization of the image. For each pixel of the image, the mean and optionally standard deviation is calculated for the patch centered around the pixel. Then the pixel is normalized by the local mean and optionally standard deviation.
FASTCV_API fcvStatus fcvNormalizeLocalBoxf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t patchWidth, uint32_t patchHeight, uint32_t useStdDev, float32_t *__restrict dst, uint32_t dstStride)
 Calculate the local subtractive and contrastive normalization of the image. For each pixel of the image, the mean and optionally standard deviation is calculated for the patch centered around the pixel. Then the pixel is normalized by the local mean and optionally standard deviation.
FASTCV_API fcvStatus fcvChannelCombine2Planesu8 (const uint8_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, uint8_t *__restrict dst, uint32_t dstStride)
 Combine two channels in an interleaved fashion.
FASTCV_API fcvStatus fcvChannelCombine3Planesu8 (const uint8_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, const uint8_t *__restrict src3, uint32_t src3Stride, uint8_t *__restrict dst, uint32_t dstStride)
 Combine three channels in an interleaved fashion.
FASTCV_API fcvStatus fcvChannelCombine4Planesu8 (const uint8_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, const uint8_t *__restrict src3, uint32_t src3Stride, const uint8_t *__restrict src4, uint32_t src4Stride, uint8_t *__restrict dst, uint32_t dstStride)
 Combine four channels in an interleaved fashion.
FASTCV_API fcvStatus fcvChannelExtractu8 (const uint8_t *__restrict src1, uint32_t srcWidth, uint32_t srcHeight, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, const uint8_t *__restrict src3, uint32_t src3Stride, fcvChannelType srcChannel, fcvImageFormat srcFormat, uint8_t *__restrict dst, uint32_t dstStride)
 Extract channel as a single uint8_t type plane from an interleaved or multi-planar image format.
FASTCV_API fcvStatus fcvFilterMedianMxNs16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t M, uint32_t N, int16_t *__restrict dst, uint32_t dstStride)
 Blurs an image with MxN median filter (M,N have to be odd numbers)
FASTCV_API fcvStatus fcvFilterConvolveMxNu8s16 (const int16_t *__restrict kernel, uint32_t M, uint32_t N, int8_t shift, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict dst, uint32_t dstStride, fcvBorderType borderType, uint8_t borderValue)
 Computes the convolution of an image with an M x N Kernel.
FASTCV_API fcvStatus fcvFilterConvolveMxNu8 (const int16_t *__restrict kernel, uint32_t M, uint32_t N, int8_t shift, const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, fcvBorderType borderType, uint8_t borderValue)
 Computes the convolution of a image with an M x N Kernel.
FASTCV_API fcvStatus fcvBoxFilter3x3u8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, fcvBorderType borderType, uint8_t borderValue)
 Smooth a uint8_t image with a 3x3 box filter with border handling scheme specified by user.
FASTCV_API fcvStatus fcvFilterErode3x3u8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, fcvBorderType borderType, uint8_t borderValue)
 Erode a grayscale image by taking the local minima of 3x3 nbhd window with border handling scheme specified by user.
FASTCV_API fcvStatus fcvFilterErodeNxNu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t N, uint8_t *__restrict dst, uint32_t dstStride)
 Erode a grayscale image by taking the local minima of NxN neighborhood window.
FASTCV_API fcvStatus fcvFilterDilate3x3u8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, fcvBorderType borderType, uint8_t borderValue)
 Dilate a grayscale image by taking the local maxima of 3x3 neighborhood window with border handling scheme specified by user.
FASTCV_API fcvStatus fcvFilterDilateNxNu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t N, uint8_t *__restrict dst, uint32_t dstStride)
 Dilate a grayscale image by taking the local maxima of NxN neighborhood window.
FASTCV_API fcvStatus fcvFilterGaussian3x3u8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, fcvBorderType borderType, uint8_t borderValue)
 Blurs an image with 3x3 Gaussian filter with border handling scheme specified by user.
FASTCV_API fcvStatus fcvFilterMedian3x3u8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride, fcvBorderType borderType, uint8_t borderValue)
 Blurs an image with 3x3 median filter with border handling scheme specified by user.
FASTCV_API fcvStatus fcvImageSpatialHistogramu8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t numPatterns, uint32_t grid_x, uint32_t grid_y, float32_t *__restrict histogram, float32_t normalize_factor)
 Calculate histogram at image patches.
FASTCV_API void fcvScaleDownBLu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride)
 Image downscaling using bilinear method.
FASTCV_API fcvStatus fcvTableLookupu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const uint8_t *__restrict lut, uint8_t *__restrict dst, uint32_t dstStride)
 Applies a Table Look-up transformation to a single-channel uint8 image.
FASTCV_API fcvStatus fcvWarpPerspectiveu8_v3 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, float *__restrict projectionMatrix, fcvInterpolationType interpolation)
 Warps a grayscale image using the a perspective projection transformation matrix (also known as a homography). This type of transformation is an invertible transformation which maps straight lines to straight lines.
FASTCV_API fcvStatus fcvWarpPerspectiveu8_v4 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, float *__restrict projectionMatrix, fcvInterpolationType interpolation, fcvBorderType borderType, uint8_t borderValue)
 Warps a grayscale image using the a perspective projection transformation matrix (also known as a homography). This type of transformation is an invertible transformation which maps straight lines to straight lines.
FASTCV_API fcvStatus fcvRemapu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, const float32_t *__restrict mapX, const float32_t *__restrict mapY, uint32_t mapStride, fcvInterpolationType interpolation)
 Applies a generic geometrical transformation to a greyscale uint8 image. The interpolation method is specified through a parameter.
FASTCV_API fcvStatus fcvRemapu8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, const float32_t *__restrict mapX, const float32_t *__restrict mapY, uint32_t mapStride, fcvInterpolationType interpolation, fcvBorderType borderType, uint8_t borderValue)
 Applies a generic geometrical transformation to a greyscale uint8 image. The interpolation method is specified through a parameter.
FASTCV_API fcvStatus fcvMagnitudes16 (const int16_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const int16_t *__restrict src2, uint32_t src2Stride, int16_t *__restrict dst, uint32_t dstStride)
 Gradient Magnitude Computation from two int16_t type matrices.
FASTCV_API fcvStatus fcvPhases16 (const int16_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const int16_t *__restrict src2, uint32_t src2Stride, uint8_t *__restrict dst, uint32_t dstStride)
 Gradient Phase Computation from two int16_t type matrices.
FASTCV_API fcvStatus fcvFFTu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict dst, uint32_t dstStride)
FASTCV_API fcvStatus fcvIFFTf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Computes the 1D or 2D Inverse Fast Fourier Transform of a matrix.
FASTCV_API fcvStatus fcvScaleu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, fcvInterpolationType interpolation)
 Scale an image Horizontaly and/or Vertically by arbitrary ratio. The scaling ratios are automatically determined from the specified source image size and destination image size.
FASTCV_API fcvStatus fcvScaleu8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstWidth, uint32_t dstHeight, uint32_t dstStride, fcvInterpolationType interpolation, fcvBorderType borderType, uint8_t borderValue)
 Scale an image Horizontaly and/or Vertically by arbitrary ratio. The scaling ratios are automatically determined from the specified source image size and destination image size.
FASTCV_API fcvStatus fcv2PlaneWarpPerspectiveu8 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, uint32_t srcWidth, uint32_t srcHeight, uint32_t src1Stride, uint32_t src2Stride, uint8_t *__restrict dst1, uint8_t *__restrict dst2, uint32_t dstWidth, uint32_t dstHeight, uint32_t dst1Stride, uint32_t dst2Stride, float32_t *__restrict warpmatrix)
 Perspective warp two images using the same transformation. Bi-linear interpolation is used where applicable.
FASTCV_API fcvStatus fcvScaleDownBy2Gaussian3x3u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Downscale a grayscale image by a factor of two using a 3x3 Gaussian filter kernel.
FASTCV_API void fcvSumOfSquaredDiffss8 (const int8_t *__restrict a, float32_t invLenA, uint32_t dim, const int8_t *const *__restrict bList, const float32_t *__restrict invLenB, uint32_t numB, float32_t *__restrict distances)
 Sum of squared differences of one L-byte vector against N others.
FASTCV_API fcvStatus fcvAddScalarf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t scalar, float32_t *__restrict dst, uint32_t dstStride)
 Adds a scalar value to every element of a Matrix.
FASTCV_API fcvStatus fcvAddScalars16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t scalar, int16_t *__restrict dst, uint32_t dstStride)
 Adds a scalar value to every element of a Matrix.
FASTCV_API fcvStatus fcvMultiplyScalarf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t scalar, float32_t *__restrict dst, uint32_t dstStride)
 Multiplies a scalar value to every element of a Matrix.
FASTCV_API fcvStatus fcvMultiplyScalars16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int8_t scalar, int8_t shift, int16_t *__restrict dst, uint32_t dstStride)
 Multiplies a scalar value to every element of a Matrix.
FASTCV_API fcvStatus fcvMinMaxLocu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict minVal, uint8_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY)
 Finds the minimum and maximum values, and their location in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocu16 (const uint16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint16_t *__restrict minVal, uint16_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY)
 Finds the minimum and maximum values, and their location in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocs16 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict minVal, int16_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY)
 Finds the minimum and maximum values, and their location in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocu32 (const uint32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t *__restrict minVal, uint32_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY)
 Finds the minimum and maximum values, and their location in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocs32 (const int32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict minVal, int32_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY)
 Finds the minimum and maximum values, and their location in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict minVal, float32_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY)
 Finds the minimum and maximum values, and their location in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocf32_v2 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, float32_t *__restrict minVal, float32_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY, uint32_t *__restrict minCount, uint32_t *__restrict maxCount, uint32_t nMinLocSize, uint32_t nMaxLocSize)
 Finds the minimum and maximum values, and their locations in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocu8_v2 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict minVal, uint8_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY, uint32_t *__restrict minCount, uint32_t *__restrict maxCount, uint32_t nMinLocSize, uint32_t nMaxLocSize)
 Finds the minimum and maximum values, and their locations in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocu16_v2 (const uint16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint16_t *__restrict minVal, uint16_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY, uint32_t *__restrict minCount, uint32_t *__restrict maxCount, uint32_t nMinLocSize, uint32_t nMaxLocSize)
 Finds the minimum and maximum values, and their locations in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocs16_v2 (const int16_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int16_t *__restrict minVal, int16_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY, uint32_t *__restrict minCount, uint32_t *__restrict maxCount, uint32_t nMinLocSize, uint32_t nMaxLocSize)
 Finds the minimum and maximum values, and their locations in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocu32_v2 (const uint32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint32_t *__restrict minVal, uint32_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY, uint32_t *__restrict minCount, uint32_t *__restrict maxCount, uint32_t nMinLocSize, uint32_t nMaxLocSize)
 Finds the minimum and maximum values, and their locations in a matrix.
FASTCV_API fcvStatus fcvMinMaxLocs32_v2 (const int32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, int32_t *__restrict minVal, int32_t *__restrict maxVal, uint32_t *__restrict minLocX, uint32_t *__restrict minLocY, uint32_t *__restrict maxLocX, uint32_t *__restrict maxLocY, uint32_t *__restrict minCount, uint32_t *__restrict maxCount, uint32_t nMinLocSize, uint32_t nMaxLocSize)
 Finds the minimum and maximum values, and their locations in a matrix.
FASTCV_API fcvStatus fcvTransposeRGB888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Transposes an interleaved RGB image.
FASTCV_API fcvStatus fcvCrossProduct3x1f32 (const float32_t *__restrict a, const float32_t *__restrict b, float32_t *__restrict c, uint32_t N)
 Computes the cross-product of N pairs of 3x1 vectors.
FASTCV_API fcvStatus fcvSolveLUf32 (float32_t *__restrict A, float32_t *__restrict b, uint32_t N, uint8_t *__restrict pivot, float32_t *__restrict x)
 Solves a Linear System of Equations using LU-Decomposition.
FASTCV_API fcvStatus fcvBitwiseAndu8 (const uint8_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, uint8_t *dst, uint32_t dstStride)
 Bitwise AND operation for each element of two uint8_t matrices.
FASTCV_API fcvStatus fcvBitwiseXoru8 (const uint8_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, uint8_t *dst, uint32_t dstStride)
 Bitwise Exclusive Or operation for each element of two uint8_t matrices.
FASTCV_API fcvStatus fcvBitwiseNotu8 (const uint8_t *src, uint32_t width, uint32_t height, uint32_t srcStride, uint8_t *dst, uint32_t dstStride)
 Bitwise Not operation for each element of two uint8_t matrices.
FASTCV_API fcvStatus fcvAddu8 (const uint8_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, fcvConvertPolicy policy, uint8_t *dst, uint32_t dstStride)
 Matrix addition of two uint8_t type matrices to one uint8_t matrix.
FASTCV_API fcvStatus fcvAdds16_v2 (const int16_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const int16_t *__restrict src2, uint32_t src2Stride, fcvConvertPolicy policy, int16_t *dst, uint32_t dstStride)
 Matrix addition of two int16_t type matrices which allows in-place operation.
FASTCV_API fcvStatus fcvAddu16u8u16 (const uint16_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, fcvConvertPolicy policy, uint16_t *dst, uint32_t dstStride)
 Matrix addition of one uint16_t type matrix and one uint8_t matrix.
FASTCV_API fcvStatus fcvSubtractu8 (const uint8_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, fcvConvertPolicy policy, uint8_t *dst, uint32_t dstStride)
 Matrix substration of two uint8_t type matrices.
FASTCV_API fcvStatus fcvSubtracts16 (const int16_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const int16_t *__restrict src2, uint32_t src2Stride, fcvConvertPolicy policy, int16_t *dst, uint32_t dstStride)
 Matrix substration of two uint16_t type matrices.
FASTCV_API fcvStatus fcvSubtractu8s16 (const uint8_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, int16_t *__restrict dst, uint32_t dstStride)
 Matrix substration of two uint8_t type matrices.
FASTCV_API fcvStatus fcvElementMultiplys16 (const int16_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const int16_t *src2, uint32_t src2Stride, int8_t scaleFactor, fcvConvertPolicy policy, int16_t *__restrict dst, uint32_t dstStride)
 Element-wise multiplication of two int16_t type matrices.
FASTCV_API fcvStatus fcvElementMultiplyu8s16 (const uint8_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *src2, uint32_t src2Stride, int8_t scaleFactor, fcvConvertPolicy policy, int16_t *__restrict dst, uint32_t dstStride)
 Element-wise multiplication of two uint8_t type matrices.
FASTCV_API fcvStatus fcvElementMultiplyu8 (const uint8_t *src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint8_t *src2, uint32_t src2Stride, int8_t scaleFactor, fcvConvertPolicy policy, uint8_t *__restrict dst, uint32_t dstStride)
 Element-wise multiplication of two uint8_t type matrices.
FASTCV_API fcvStatus fcvAddWeightedu8 (const uint8_t *src1, uint32_t srcWidth, uint32_t srcHeight, uint32_t src1Stride, const uint8_t *__restrict src2, uint32_t src2Stride, float32_t alpha, float32_t beta, uint8_t *dst, uint32_t dstStride)
 Calculate the weighted sum of two uint8_t type matrices.
FASTCV_API fcvStatus fcvAddSquaredu8u16 (const uint8_t *__restrict src1, uint32_t width, uint32_t height, uint32_t src1Stride, const uint16_t *src2, uint32_t src2Stride, int8_t scaleFactor, uint16_t *dst, uint32_t dstStride)
 Add a squared value of one type uint8 matrix to the other type uint16 type matrix.
FASTCV_API void fcvColorCbCrSwapu8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Swap Chroma component order.
FASTCV_API fcvStatus fcvColorRGB888ToHSV888u8 (const uint8_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, uint8_t *__restrict dst, uint32_t dstStride)
 Converts an image from RGB space to HSV space.
FASTCV_API fcvStatus fcvSVMPredict2Classf32 (fcvSVMKernelType kernelType, uint32_t degree, float32_t gamma, float32_t coef0, const float32_t *__restrict sv, uint32_t svLen, uint32_t svNum, uint32_t svStride, const float32_t *__restrict svCoef, float32_t rho, const float32_t *__restrict vec, uint32_t vecNum, uint32_t vecStride, float32_t *__restrict confidence)
 SVM prediction for two classes.
FASTCV_API fcvStatus fcvTrackLKOpticalFlowu8_v3 (const uint8_t *__restrict src1, const uint8_t *__restrict src2, uint32_t width, uint32_t height, uint32_t stride, const fcvPyramidLevel_v2 *__restrict src1Pyr, const fcvPyramidLevel_v2 *__restrict src2Pyr, const float32_t *__restrict featureXY, const float32_t *__restrict featureXY_estimate, float32_t *__restrict featureXY_out, int32_t *__restrict featureStatus, int32_t featureLen, int32_t windowWidth, int32_t windowHeight, int32_t nPyramidLevels, fcvTerminationCriteria termCriteria, int32_t maxIterations, float32_t maxEpsilon, int32_t use_initial_estimate)
 Optical flow (with stride so ROI can be supported)
FASTCV_API fcvStatus fcvUndistortDisparityConvertDepthf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const uint8_t *__restrict mask, uint32_t maskStride, const float32_t *__restrict pixelDistortion, uint32_t pixelDistortionStride, uint32_t convertDepth, const float32_t *__restrict imageDistortion, const float32_t *__restrict depthParam, float32_t *__restrict dst, uint32_t dstStride)
 Undistort a disparity image and optionally convert the undistorted disparity image into a depth image.
FASTCV_API fcvStatus fcvRegisterDepthImagef32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const float32_t *__restrict Kdinv, const float32_t *__restrict Kc, const float32_t *__restrict Rd2c, const float32_t *__restrict Td2c, float32_t *__restrict dst, uint32_t dstStride)
 Registers an input Depth Image with an input Color Image.
FASTCV_API fcvStatus fcvConvertDepthImageToPointCloudf32 (const float32_t *__restrict src, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcStride, const float32_t *__restrict Kdinv, float32_t *__restrict dst, uint32_t dstStride)
 Convert depth image into 3D point Cloud.
FASTCV_API fcvStatus fcvExtractHOGu16 (const uint16_t *__restrict strength, uint32_t width, uint32_t height, uint32_t strengthStride, const uint16_t *__restrict orientation, uint32_t orientationStride, uint32_t cellSize, uint32_t blockSize, uint32_t blockStep, uint32_t binSize, fcvHOGNormMethod normMethod, uint16_t *__restrict hogVector, uint32_t flen, void *handle)
 Extract Histogram of Oriented Gradients (HOG) descriptor given an image's gradient strength and orientation.
FASTCV_API fcvStatus fcvHOGInit (uint32_t width, uint32_t height, uint32_t cellSize, uint32_t blockSize, uint32_t blockStep, uint32_t binSize, fcvHOGNormMethod normMethod, uint32_t *vecLength, void **hogHandle)
 Calculate the length of the output vector for HOG extraction.
FASTCV_API void fcvHOGDeInit (void *hogHandle)
 Function to release HOG resources.

Detailed Description

Public API.

=============================================================================

fastcv.h

Copyright (c) 2011-2015 Qualcomm Technologies, Inc. All Rights Reserved. Confidential and Proprietary - Qualcomm Technologies, Inc.

=============================================================================


Data Structure Documentation

struct fcvCorrespondences

Defines a structure to contain points correspondence data.

Data Fields
const float32_t * from Tuples of 3 values: xFrom,yFrom,zFrom. Float array which this points to must be greater than or equal to 3 * numCorrespondences.
uint32_t fromStride Distance in bytes between two coordinates in the from array. If this parameter is set to 2 or 3, a dense array is assume (stride will be sizeof(float) times 2 or 3). The minimum value of fromStride should be 2.
const uint16_t * indices Array of inlier indices for corrs array. Processing will only occur on the indices supplied in this array. Array which this points to must be at least numIndices long.
uint32_t numCorrespondences Number of points in points correspondences.
uint32_t numIndices Length of indices array.
const float32_t * to Tuples of 2 values: xTo,yTo. Float array which this points to must be greater than or equal to 2 * numCorrespondences.
uint32_t toStride Distance in bytes between two coordinates in the to array. If this parameter is set to 2, a dense array is assume (stride will be 2 * sizeof(float)). The minimum value of toStride should be 2.
struct fcvPyramidLevel

Structure representing an image pyramid level.

Data Fields
unsigned int height
const void * ptr
unsigned int width
struct fcvPyramidLevel_v2

Structure representing an image pyramid level (version2 with stride)

Data Fields
unsigned int height
const void * ptr
unsigned int stride
unsigned int width
struct fcvKDTreeNodef32

Structure describing node of a tree; Assumption is that nodes of all trees are stored in in a single array and all indices refer to this array.

Remarks:
if indices of both children are negative the node is a leaf
Data Fields
int32_t childLeft index of the child node with dataset items to the left of the split value
int32_t childRight index of the child node with dataset items to the right of the split value
int32_t divFeat dimension at which the split is made; if this is a leaf (both children equal to -1) then this is the index of the dataset vector
float32_t divVal the split value at the node
struct fcvKDTreeBranchf32

structure describing a branch (subtree)

Remarks:
branches are stored on the priority queue (heap) for backtracking
Data Fields
float32_t minDistSq square of minimal distance from query for all nodes below
int32_t topNode index of the top node of the branch
struct fcvKDTreeDatas8f32

Structure with KDTrees data.

Data Fields
int32_t checkID unique ID for each lookup
const int8_t * dataset the dataset of vectors
fcvKDTreeBranchf32 * heap priority queue
const float32_t * invLen array with inverse lengths of dataset vectors
int32_t maxNumBranches capactiy of the priority queue
int32_t maxNumNodes capacity of node array
fcvKDTreeNodef32 * nodes array of nodes of all trees
int32_t numBranches number of branches on the priority queue
int32_t numNNs number of nearest neighbors to find
int32_t numNodes number of all nodes
int32_t numVectors number of vectors in the dataset
int32_t * trees indice of root nodes of trees
int32_t * vind array of indices to vectors in the dataset; during searches used to mark checkID; should have numVectors capacity
struct fcvKDTreeNodes32

fixed point kdtrees Structure describing node of tree; Assumption is that nodes of all trees are stored in in a single array and all indices refer to this array

Remarks:
if indices of both children are negative the node is a leaf
Data Fields
int32_t childLeft index of the child node with dataset items to the left of the split value
int32_t childRight index of the child node with dataset items to the right of the split value
int32_t divFeat dimension at which the split is made; if this is a leaf (both children equal to -1) then this is the index of the dataset vector
int32_t divVal the split value at the node
struct fcvKDTreeBranchs32

fixed point kdtrees structure describing a branch (subtree)

Remarks:
branches are stored on the priority queue (heap) for backtracking
Data Fields
int32_t minDistSq square of minimal distance from query for all nodes below
int32_t topNode index of the top node of the branch
struct fcvKDTreeDatas8s32

fixed point kdtrees Structure with KDTrees data

Data Fields
int32_t checkID unique ID for each lookup
const int8_t * dataset the dataset of vectors
fcvKDTreeBranchs32 * heap priority queue
const int32_t * invLen array with inverse lengths of dataset vectors
int32_t maxNumBranches capactiy of the priority queue
int32_t maxNumNodes capacity of node array
fcvKDTreeNodes32 * nodes array of nodes of all trees
int32_t numBranches number of branches on the priority queue
int32_t numNNs number of nearest neighbors to find
int32_t numNodes number of all nodes
int32_t numTrees number of trees used
int32_t numVectors number of vectors in the dataset
int32_t * trees indices of root nodes of all trees
int32_t * vind array of indices to vectors in the dataset; during searches used to mark checkID; should have numVectors capacity
struct fcvRectangleInt

Defines a struct of rectangle.

Data Fields
uint32_t height height of the rectangle
uint32_t width width of the rectangle
int32_t x x-coordinate of the top-left corner
int32_t y y-coordinate of the top-left corner
struct fcvTermCriteria

Defines a struct of termination criteria.

Data Fields
float32_t epsilon
int32_t max_iter Maxmimum number of iteration.
struct fcvBox2D

Defines a struct of 2D box used for tracking.

Data Fields
int32_t columns
int32_t orientation
int32_t rows
int32_t x x-coordinate of the 2D point
int32_t y y-coordinate of the 2D point
struct fcvMoments

Defines a struct of image moments.

Data Fields
float32_t inv_sqrt_m00
float32_t m00
float32_t m01
float32_t m02
float32_t m03
float32_t m10
float32_t m11
float32_t m12
float32_t m20
float32_t m21
float32_t m30
float32_t mu02
float32_t mu03
float32_t mu11
float32_t mu12
float32_t mu20
float32_t mu21
float32_t mu30
struct fcvBGCodeWord

Defines a struct of code word.

Data Fields
uint8_t learnHigh0 Max value of learning boundary for each channel.
uint8_t learnHigh1
uint8_t learnHigh2
uint8_t learnLow0 Min value of learning boundary for each channel.
uint8_t learnLow1
uint8_t learnLow2
uint8_t max0 Max value of pixel for each channel.
uint8_t max1
uint8_t max2
uint8_t min0 Min value of pixel for each channel.
uint8_t min1
uint8_t min2
struct fcvBGCodeWord * next Pointer to next codebook element.
int32_t stale Longest period of inactivity.
int32_t tLastUpdate Last update time.
struct fcvCircle

Defines a struct for circle.

Data Fields
int32_t radius
int32_t x
int32_t y
struct fcvPoint2D
Data Fields
float x
float y
struct fcvLine
Data Fields
fcvPoint2D end
fcvPoint2D start
struct fcvLineSegment

Defines a struct for parameters for line segment detection.

Data Fields
fcvPoint2D end Two ending points.
float32_t normal Orientation, average of the gradient direction.
uint32_t nPoints (Optional) Number of pixels in pointsList
int32_t pointsStartIndex (Optional) Starting index of the pixel positions contributed to line segment fitting stored in indexBuffer
fcvPoint2D start
uint32_t sumMag Sum of all pixels gradient magnitude.
struct fcvDepthFusionBlockConfig

Parameters for fusing a depth map into a cuboid fusion block.

This structure describes a single cuboid block that shall be fused with data from a depth map. All coordinates must be pre-transformed into the coordinate frame of the depth frame.

Data Fields
float32_t dX One sample step in X-direction in the volume.
float32_t dY One sample step in Y-direction in the volume.
float32_t dZ One sample step in Z-direction in the volume.
uint32_t flags Option specified as a bit field - 0x0000:N/A, 0x0001:run clipping.
float32_t p0 Location of the 1st sample in the volume.
float32_t ramp Fusion ramp: maximum allowed distance between volume sample position and depth map sample position.
uint32_t volumeIndex Index of the volume to be updated.
struct fcvConnectedComponent
Data Fields
uint32_t area
uint32_t avgValue
uint32_t rectHeight
uint32_t rectTopLeftX
uint32_t rectTopLeftY
uint32_t rectWidth

Enumeration Type Documentation

Defines the border types.

Enumerator:
FASTCV_BORDER_UNDEFINED 

Border behavior undefined, left to the implementation.

FASTCV_BORDER_CONSTANT 

For out-of-bound pixels, apply a user-specified constant value.

FASTCV_BORDER_REPLICATE 

For out-of-bound pixels, apply values from the nearest edge pixels.

Defines all supported channel indices.

Enumerator:
FASTCV_CHANNEL_0 

The first channel of the image.

FASTCV_CHANNEL_1 

The second channel of the image.

FASTCV_CHANNEL_2 

The third channel of the image.

FASTCV_CHANNEL_3 

The fourth channel of the image.

FASTCV_CHANNEL_R 

The RED channel of the image.

FASTCV_CHANNEL_G 

The GREEN channel of the image.

FASTCV_CHANNEL_B 

The BLUE channel of the image.

FASTCV_CHANNEL_A 

The ALPHA channel of the image.

FASTCV_CHANNEL_Y 

The LUMA channel of the image.

FASTCV_CHANNEL_U 

The Cb/U channel of the image.

FASTCV_CHANNEL_V 

The Cr/V/Value channel of the image.

Defines the policy to handle integer overflow.

Enumerator:
FASTCV_CONVERT_POLICY_WRAP 

Do nothing to the overflow. Let the overflowed number wrap around. May save runtime if overflow unlikely to occur, or users do not care about overflow.

FASTCV_CONVERT_POLICY_SATURATE 

Clamped to the maximum interger if overflow, clamped to the minimum integer if underflow. May require more runtime than FASTCV_CONVERT_POLICY_WRAP.

enum fcvFlipDir

Defines the flip directions for matrix flip functions.

Enumerator:
FASTCV_FLIP_HORIZ 

Flip horizontally.

FASTCV_FLIP_VERT 

Flip vertically.

FASTCV_FLIP_BOTH 

Flip horizontally and vertically.

Defines the normalization method in the HOG extraction process.

Enumerator:
FASTCV_HOG_NORM_REGULAR 

Do the regular normalization method.

FASTCV_HOG_NORM_RENORMALIZATION 

Do re-normalization.

FASTCV_HOG_NORM_FHOG 

Use F-HOG method.

Defines all supported image formats based on the FOURCC definition.

Enumerator:
FASTCV_RGB 

A single plane of 24 bit pixel as 3 interleaved 8 bit units of R then G then B data.

FASTCV_RGBX 

A single plane of 32 bit pixel as 4 interleaved 8 bit units of R then G then B data, then a �don�t care?byte.

FASTCV_NV12 

A 2 plane YUV format of Luma (Y) and interleaved UV data at 4:2:0 sampling. For a frame of width W and height H, Y plane has the size of W * H, while the UV plane has the size of W * H/2. The extracted U or V plane is then expected to be W/2 * H/2.

FASTCV_NV21 

A 2 plane YUV format of Luma (Y) and interleaved VU data at 4:2:0 sampling. For a frame of width W and height H, Y plane has the size of W * H, while the VU plane has the size of W * H/2. The extracted U or V plane is then expected to be W/2 * H/2.

FASTCV_UYVY 

A single plane of 32 bit macro pixel of U0, Y0, V0, Y1 bytes. For a frame of width W and height H, its buffer size is at least 2*W * H. The extracted Y plane is expected to be W * H while the U or V plane is expected to be W/2 * H.

FASTCV_YUYV 

A single plane of 32 bit macro pixel of Y0, U0, Y1, V0 bytes. For a frame of width W and height H, its buffer size is at least 2*W * H. The extracted Y plane is expected to be W * H while the U or V plane is expected to be W/2 * H.

FASTCV_IYUV 

A 3 plane of 8 bit 4:2:0 sampled Y, U, V planes. For a frame of width W and height H, Y plane has the size of W * H, while the U or I plane each has a size of W/2 * H/2.

FASTCV_YUV4 

A 3 plane of 8 bit 4:4:4 sampled Y, U, V planes. For a frame of width W and height H, Y or U or V plane each has the size of W * H.

Defines the interpolation types.

Enumerator:
FASTCV_INTERPOLATION_TYPE_NEAREST_NEIGHBOR 

Nearest neighbor interpolation.

FASTCV_INTERPOLATION_TYPE_BILINEAR 

Bilinear interpolation.

FASTCV_INTERPOLATION_TYPE_AREA 

Interpolation by area.

Defines the norm for a vector.

Enumerator:
FASTCV_NORM_L1 

L1 norm. The norm is the sum of absolute values of every component in a vector.

FASTCV_NORM_L2 

L2 norm, i.e., the Euclidean norm of a vector.

Defines operational mode of interface to allow the end developer to dictate how the target optimized implementation should behave.

Enumerator:
FASTCV_OP_LOW_POWER 

Target-optimized implementation uses lowest power consuming implementation.

FASTCV_OP_PERFORMANCE 

Target-optimized implementation uses highest performance implementation.

FASTCV_OP_CPU_OFFLOAD 

Target-optimized implementation offloads as much of the CPU as possible.

FASTCV_OP_CPU_PERFORMANCE 

Target-optimized implementation uses CPU highest performance implementation.

FASTCV_OP_RESERVED 

Values >= 0x80000000 are reserved.

Defines the clockwise rotation degrees for image rotation functions.

Enumerator:
FASTCV_ROTATE_90 

Rotate 90 degrees clockwise.

FASTCV_ROTATE_180 

Rotate 180 degrees clockwise.

FASTCV_ROTATE_270 

Rotate 270 degrees clockwise.

enum fcvStatus

Defines the status returned by a function.

Enumerator:
FASTCV_EFAIL 

General failure.

FASTCV_EUNALIGNPARAM 

Unaligned pointer parameter.

FASTCV_EBADPARAM 

Bad parameters.

FASTCV_EINVALSTATE 

Called at invalid state.

FASTCV_ENORES 

Insufficient resources, memory, thread...

FASTCV_EUNSUPPORTED 

Unsupported feature.

FASTCV_EHWQDSP 

Hardware QDSP failed to respond.

FASTCV_EHWGPU 

Hardware GPU failed to respond.

Defines the termination criteria list.

Enumerator:
FASTCV_TERM_CRITERIA_ITERATIONS 

Indicates a termination after a set number of iterations.

FASTCV_TERM_CRITERIA_EPSILON 

Indicates a termination after matching against the value of eplison provided to the function.

FASTCV_TERM_CRITERIA_BOTH 

Indicates that both an iterations and eplison method are employed. Whichever one matches first causes the termination.

Defines the vaiance estimator type.

Enumerator:
FASTCV_UNBIASED_VARIANCE_ESTIMATOR 

Sums the squared deviation and devides by (n-1) As known as sample variance

FASTCV_BIASED_VARIANCE_ESTIMATOR 

Sums the squared deviation and devides by n As known as population variance

 All Data Structures Files Functions Variables Enumerations Enumerator Defines