Qualcomm FastCV Library
1.7.1
|
Functions | |
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 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 | 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 | 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 | 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. |
Commonly used formats supported: e.g., YUV, RGB, YCrCb, etc.
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.
This function swaps the interleaved Chroma component order from CbCr to CrCb or from CrCb to CbCr.
src | Pointer to the input image NOTE: should be 128-bit aligned |
srcWidth | Input image width in the number of CbCr or CrCb pairs. |
srcHeight | The Chroma component height. |
srcStride | Stride of input image in bytes (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Pointer to the output image WARNING: size must match input image. NOTE: should be 128-bit aligned |
dstStride | Stride of output image in bytes (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 16-bit interleaved RGB565 to 16-bit interleaved BGR565, it can be used to convert 16-bit interleaved BGR565 to 16-bit interleaved RGB565 as well.
src | Pointer to the input RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output BGR565 WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGR565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 16-bit interleaved RGB565 to 24-bit interleaved BGR888 it can be used to convert 16-bit interleaved BGR565 to 24-bit interleaved RGB888 as well.
src | Pointer to the input RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output BGR888 WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGR888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 16-bit interleaved RGB565 to 32-bit interleaved BGRA8888, it can be used to convert 16-bit interleaved BGR565 to 32-bit interleaved RGBA8888 as well.
src | Pointer to the input RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output BGRA8888 WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGRA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 16-bit interleaved RGB565 to 24-bit interleaved RGB888, it can be used to convert 16-bit interleaved BGR565 to 24-bit interleaved BGR888 as well.
src | Pointer to the input RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output RGB888 WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 16-bit interleaved RGB565 to 32-bit interleaved RGBA8888, it can be used to convert 16-bit interleaved BGR565 to 32-bit interleaved BGRA8888 as well.
src | Pointer to the input RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output RGBA8888 WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGBA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB565 to planar YCbCr420.
The input is one interleaved RGB565 plane with blue stored at the lowest address, green next then red: RGB565 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
The output are three separated Y, Cb and Cr planes, with Cb and Cb planes horizontally and vertically (2D) sub-sampled: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... 2D sub-sampled Cb plane: Cb0 Cb1 ... 2D sub-sampled Cr plane: Cr0 Cr1 ...
src | The intput of interleaved RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB565 pixels (2 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB565 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component that has been sub-sampled both horizontally and vertically WARNING: width and height are both half of the input RGB565 image NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component that has been sub-sampled both horizontally and vertically WARNING: width and height are both half of the input RGB565 image NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB565 to pseudo-planar YCbCr420.
The input is one interleaved RGB565 plane with blue stored at the lowest address, green next then red: RGB565 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
The output are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CbCr (or CrCb) plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
src | The intput of interleaved RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB565 pixels (2 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB565 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: Chroma width in number of pairs is half of the input RGB565 image width, Chroma height in number of Chroma lines is also half of the input RGB565 image. NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB565 to planar YCbCr422.
The input is one interleaved RGB565 plane with blue stored at the lowest address, green next then red: RGB565 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
The output are three separated Y, Cb and Cr planes, with Cb and Cb planes horizontally sub-sampled: Y plane : Y0 Y1 Y2 Y3 ... Horizontally sub-sampled Cb plane: Cb0 Cb1 ... Horizontally sub-sampled Cr plane: Cr0 Cr1 ...
src | The intput of interleaved RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB565 pixels (2 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB565 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component that has been sub-sampled horizontally WARNING: width is half of the input RGB565 image width, height is the same to the input RGB565 NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component that has been sub-sampled horizontally WARNING: width is half of the input RGB565 image width, height is the same to the input RGB565 NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB565 to pseudo-planar YCbCr422.
The input is one interleaved RGB565 plane with blue stored at the lowest address, green next then red: RGB565 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
The output are Y plane followed by one interleaved and horizontally sub-sampled CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved and sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
src | The intput of interleaved RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB565 pixels (2 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB565 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: Chroma width in number of pairs is half of the input RGB565 image width, Chroma height in number of Chroma lines is the same to input RGB565 image. NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB565 to planar YCbCr444.
The input is one interleaved RGB565 plane with blue stored at the lowest address, green next then red: RGB565 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
The output are three separated Y, Cb and Cr planes: Y plane: Y0 Y1 Y2 Y3 ... Cb plane: Cb0 Cb1 Cb2 Cb3... Cr plane: Cr0 Cr1 Cr2 Cr3...
src | The intput of interleaved RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB565 pixels (2 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB565 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB565 to pseudo-planar YCbCr444.
The input is one interleaved RGB565 plane with blue stored at the lowest address, green next then red: RGB565 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
The output are one Y plane followed by one interleaved CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved plane: Cb0 Cr0 Cb1 Cr1 Cb2 Cr2 Cb3 Cr3 ...
src | The intput of interleaved RGB565 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB565 pixels (2 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB565 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB565 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: size must match input RGB565 (Chroma width is in number of CbCr pairs) NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 24-bit interleaved RGB888 to 16-bit interleaved BGR565, it can be used to convert 24-bit interleaved BGR888 to 16-bit interleaved RGB565 as well.
src | Pointer to the input RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dst | Output BGR565 WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGR565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 24-bit interleaved RGB888 to 24-bit interleaved BGR888, it can be used to convert 24-bit interleaved BGR888 to 24-bit interleaved RGB888 as well.
src | Pointer to the input RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dst | Output BGR888 WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGR888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 24-bit interleaved RGB888 to 32-bit interleaved BGRA8888, it can be used to convert 24-bit interleaved BGR888 to 32-bit interleaved RGBA8888 as well.
src | Pointer to the input RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dst | Output BGRA8888 WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGRA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
src | Source 8-bit image, BGR888 format (R is lowest byte for the pixel) WARNING: should be 128-bit aligned. |
srcWidth | Source image width. NOTE: should be a multiple of 8. |
srcHeight | Source image height. |
srcStride | Stride of source image (i.e., how many bytes between column 0 of row 1 and column 0 of row 2). If set to 0, srcStride=srcWidth as default |
dst | Destination 8-bit gray-scale image. WARNING: should be 128-bit aligned. |
dstStride | Stride of destination image (i.e., how many bytes between column 0 of row 1 and column 0 of row 2). If set to 0, dstStride=srcStride as default |
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.
src | Source 24-bit image, RGB888 format (R is MSB byte for the pixel) WARNING: should be 128-bit aligned. |
srcWidth | Source image width. |
srcHeight | Source image height. |
srcStride | Stride of source image (i.e., how many bytes between column 0 of row 1 and column 0 of row 2). If set to 0, srcStride=srcWidth*3 as default |
dst | Destination 24-bit image. HSV888 format (H is MSB byte for the pixel) WARNING: should be 128-bit aligned. |
dstStride | Stride of destination image (i.e., how many bytes between column 0 of row 1 and column 0 of row 2). If set to 0, dstStride=srcWidth*3 as default |
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.
This function performs RGB conversion from 24-bit interleaved RGB888 to 16-bit interleaved RGB565, it can be used to convert 24-bit interleaved BGR888 to 16-bit interleaved BGR565 as well.
src | Pointer to the input RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dst | Output RGB565 WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 24-bit interleaved RGB888 to 32-bit interleaved RGBA8888, it can be used to convert 24-bit interleaved BGR888 to 32-bit interleaved BGRA8888 as well.
src | Pointer to the input RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGB888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dst | Output RGBA8888 WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGBA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB888 to planar YCbCr420.
The input is one interleaved RGB888 plane with blue stored at the lowest address, green next then red: RGB888 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
The output are three separated Y, Cb and Cr planes, with Cb and Cb planes horizontally and vertically (2D) sub-sampled: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... 2D sub-sampled Cb plane: Cb0 Cb1 ... 2D sub-sampled Cr plane: Cr0 Cr1 ...
src | The intput of interleaved RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB888 pixels (3 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component that has been sub-sampled both horizontally and vertically WARNING: width and height are both half of the input RGB888 image NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component that has been sub-sampled both horizontally and vertically WARNING: width and height are both half of the input RGB888 image NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB888 to pseudo-planar YCbCr420.
The input is one interleaved RGB888 plane with blue stored at the lowest address, green next then red: RGB888 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
The output are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CbCr (or CrCb) plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
src | The intput of interleaved RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB888 pixels (3 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: Chroma width in number of pairs is half of the input RGB888 image width, Chroma height in number of Chroma lines is also half of the input RGB888 image. NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB888 to planar YCbCr422.
The input is one interleaved RGB888 plane with blue stored at the lowest address, green next then red: RGB888 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
The output are three separated Y, Cb and Cr planes, with Cb and Cb planes horizontally sub-sampled: Y plane : Y0 Y1 Y2 Y3 ... Horizontally sub-sampled Cb plane: Cb0 Cb1 ... Horizontally sub-sampled Cr plane: Cr0 Cr1 ...
src | The intput of interleaved RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB888 pixels (3 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component that has been sub-sampled horizontally WARNING: width is half of the input RGB888 image width, height is the same to the input RGB888 NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component that has been sub-sampled horizontally WARNING: width is half of the input RGB888 image width, height is the same to the input RGB888 NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB888 to pseudo-planar YCbCr422.
The input is one interleaved RGB888 plane with blue stored at the lowest address, green next then red: RGB888 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
The output are Y plane followed by one interleaved and horizontally sub-sampled CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved and sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
src | The intput of interleaved RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB888 pixels (3 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: Chroma width in number of pairs is half of the input RGB888 image width, Chroma height in number of Chroma lines is the same to input RGB888 image. NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB888 to planar YCbCr444.
The input is one interleaved RGB888 plane with blue stored at the lowest address, green next then red: RGB888 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
The output are three separated Y, Cb and Cr planes: Y plane: Y0 Y1 Y2 Y3 ... Cb plane: Cb0 Cb1 Cb2 Cb3... Cr plane: Cr0 Cr1 Cr2 Cr3...
src | The intput of interleaved RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB888 pixels (3 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGB888 to pseudo-planar YCbCr444.
The input is one interleaved RGB888 plane with blue stored at the lowest address, green next then red: RGB888 plane: B0 G0 R0 B1 G1 R1 B2 G2 R2 B3 G3 R3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
The output are one Y plane followed by one interleaved CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved plane: Cb0 Cr0 Cb1 Cr1 Cb2 Cr2 Cb3 Cr3 ...
src | The intput of interleaved RGB888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGB888 pixels (3 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGB888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGB888 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: size must match input RGB888 (Chroma width is in number of CbCr pairs) NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
ATTENTION: This function's signature will become OBSOLETE in a future release of this library (2.0.0). The new interface is specified in the function: fcvColorRGB888toYCrCbu8_v2(). In the 2.0.0 release, fcvColorRGB888toYCrCbu8_v2 will be renamed to fcvColorRGB888toYCrCbu8 and the signature of fcvColorRGB888toYCrCbu8 as it appears now, will be removed.
Color conversion from RGB 888 to YCrCb 4:4:4 interleaved.
src | 8-bit input values. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 8 |
srcHeight | Image height. |
dst | 8-bit output values. Stored as Y, Cr, Cb interleaved format. WARNING: size must match input crcb. NOTE: should be 128-bit aligned. |
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).
ATTENTION: This function is a duplication of fcvColorRGB888toYCrCbu8() with the addition of extra parameters. This function has been added to allow for backward compatibility with the original function. When the 2.0.0 release of this library is made, this function will be renamed to: fcvColorRGB888toYCrCbu8, fcvColorRGB888toYCrCbu8_v2 will be removed, and the current signature for fcvColorRGB888toYCrCbu8 will be removed. Until 2.0.0, the developer should use this implementation with the expectation of renaming it to fcvColorRGB888toYCrCbu8 when transitioning to 2.0.0.
Color conversion from RGB 888 to YCrCb 4:4:4 interleaved.
src | 8-bit input values. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 8. |
srcHeight | Image height. |
srcStride | Image stride (in bytes). WARNING: Must be at least 3*srcWidth. |
dst | 8-bit output values. Stored as Y, Cr, Cb interleaved format. WARNING: size must match input crcb. NOTE: should be 128-bit aligned. |
dstStride | Output stride (in bytes). WARNING: Must be at least 3*srcWidth. |
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.
This function performs RGB conversion from 32-bit interleaved RGBA8888 to 16-bit interleaved BGR565, it can be used to convert 32-bit interleaved BGRA8888 to 16-bit interleaved RGB565 as well.
src | Pointer to the input RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGBA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dst | Output BGR565 WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGR565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 32-bit interleaved RGBA8888 to 24-bit interleaved BGR888, it can be used to convert 32-bit interleaved BGRA8888 to 24-bit interleaved RGB888 as well.
src | Pointer to the input RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGBA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dst | Output BGR888 WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGR888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 32-bit interleaved RGBA8888 to 32-bit interleaved BGRA8888, it can be used to convert 32-bit interleaved BGRA8888 to 32-bit interleaved RGBA8888 as well.
src | Pointer to the input RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGBA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dst | Output BGRA8888 WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output BGRA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGBA8888 to interleaved LAB.
The input is arranged as: [B G R A B G R A ...] However, A is ignored in the conversion.
The output is arragned as: [L A B 0 L A B 0 L A B 0...]
Each component (B/G/R/A/L/A/B/0) are 8 bits.
src | Input RGBA image NOTE: should be 128-bit aligned. |
srcWidth | Image width in the number of pixels. NOTE: should be a multiple of 8. |
srcHeight | Image height in number of lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dst | The output of LAB image NOTE: should be 128-bit aligned. |
dstStride | Stride of output LAB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 32-bit interleaved RGBA8888 to 16-bit interleaved RGB565, it can be used to convert 32-bit interleaved BGRA8888 to 16-bit interleaved BGR565 as well.
src | Pointer to the input RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGBA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dst | Output RGB565 WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB565 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs RGB conversion from 32-bit interleaved RGBA8888 to 24-bit interleaved RGB888, it can be used to convert 32-bit interleaved BGRA8888 to 24-bit interleaved BGR888 as well.
src | Pointer to the input RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcStride | Stride of input RGBA8888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dst | Output RGB888 WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB888 image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGBA8888 to planar YCbCr420.
The input is one interleaved RGBA8888 plane with blue stored at the lowest address, green next then red: RGBA8888 plane: B0 G0 R0 A0 B1 G1 R1 A1 B2 G2 R2 A2 B3 G3 R3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
The output are three separated Y, Cb and Cr planes, with Cb and Cb planes horizontally and vertically (2D) sub-sampled: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... 2D sub-sampled Cb plane: Cb0 Cb1 ... 2D sub-sampled Cr plane: Cr0 Cr1 ...
src | The intput of interleaved RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGBA8888 pixels (4 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGBA8888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component that has been sub-sampled both horizontally and vertically WARNING: width and height are both half of the input RGBA8888 image NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component that has been sub-sampled both horizontally and vertically WARNING: width and height are both half of the input RGBA8888 image NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGBA8888 to pseudo-planar YCbCr420.
The input is one interleaved RGBA8888 plane with blue stored at the lowest address, green next then red: RGBA8888 plane: B0 G0 R0 A0 B1 G1 R1 A1 B2 G2 R2 A2 B3 G3 R3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
The output are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CbCr (or CrCb) plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
src | The intput of interleaved RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGBA8888 pixels (4 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGBA8888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: Chroma width in number of pairs is half of the input RGBA8888 image width, Chroma height in number of Chroma lines is also half of the input RGBA8888 image. NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGBA8888 to planar YCbCr422.
The input is one interleaved RGBA8888 plane with blue stored at the lowest address, green next then red: RGBA8888 plane: B0 G0 R0 A0 B1 G1 R1 A1 B2 G2 R2 A2 B3 G3 R3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
The output are three separated Y, Cb and Cr planes, with Cb and Cb planes horizontally sub-sampled: Y plane : Y0 Y1 Y2 Y3 ... Horizontally sub-sampled Cb plane: Cb0 Cb1 ... Horizontally sub-sampled Cr plane: Cr0 Cr1 ...
src | The intput of interleaved RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGBA8888 pixels (4 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGBA8888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component that has been sub-sampled horizontally WARNING: width is half of the input RGBA8888 image width, height is the same to the input RGBA8888 NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component that has been sub-sampled horizontally WARNING: width is half of the input RGBA8888 image width, height is the same to the input RGBA8888 NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGBA8888 to pseudo-planar YCbCr422.
The input is one interleaved RGBA8888 plane with blue stored at the lowest address, green next then red: RGBA8888 plane: B0 G0 R0 A0 B1 G1 R1 A1 B2 G2 R2 A2 B3 G3 R3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
The output are Y plane followed by one interleaved and horizontally sub-sampled CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved and sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
src | The intput of interleaved RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGBA8888 pixels (4 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGBA8888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: Chroma width in number of pairs is half of the input RGBA8888 image width, Chroma height in number of Chroma lines is the same to input RGBA8888 image. NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGBA8888 to planar YCbCr444.
The input is one interleaved RGBA8888 plane with blue stored at the lowest address, green next then red: RGBA8888 plane: B0 G0 R0 A0 B1 G1 R1 A1 B2 G2 R2 A2 B3 G3 R3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
The output are three separated Y, Cb and Cr planes: Y plane: Y0 Y1 Y2 Y3 ... Cb plane: Cb0 Cb1 Cb2 Cb3... Cr plane: Cr0 Cr1 Cr2 Cr3...
src | The intput of interleaved RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGBA8888 pixels (4 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGBA8888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstCb | Output image Cb component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstCr | Output image Cr component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from interleaved RGBA8888 to pseudo-planar YCbCr444.
The input is one interleaved RGBA8888 plane with blue stored at the lowest address, green next then red: RGBA8888 plane: B0 G0 R0 A0 B1 G1 R1 A1 B2 G2 R2 A2 B3 G3 R3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
The output are one Y plane followed by one interleaved CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved plane: Cb0 Cr0 Cb1 Cr1 Cb2 Cr2 Cb3 Cr3 ...
src | The intput of interleaved RGBA8888 image NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of RGBA8888 pixels (4 bytes per pixel) NOTE: should be a multiple of 8. |
srcHeight | Image height in number of RGBA8888 lines |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
dstY | Output image Y component WARNING: size must match input RGBA8888 NOTE: should be 128-bit aligned. |
dstC | Output image Chroma component WARNING: size must match input RGBA8888 (Chroma width is in number of CbCr pairs) NOTE: should be 128-bit aligned. |
dstYStride | Stride of output image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr420 to RGB565.
The input are three separated Y, Cb and Cr planes, with horizontally and vertically (2D) sub-sampled Cb and Cr planes: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... 2D sub-sampled Cb plane: Cb0 Cb1 ... 2D sub-sampled Cr plane: Cr0 Cr1 ...
The output is one interleaved RGB565 plane: RGB565 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB565 image WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr420 to RGB888.
The input are three separated Y, Cb and Cr planes, with horizontally and vertically (2D) sub-sampled Cb and Cr planes: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... 2D sub-sampled Cb plane: Cb0 Cb1 ... 2D sub-sampled Cr plane: Cr0 Cr1 ...
The output is one interleaved RGB888 plane: RGB888 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB888 image WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr420 to RGBA8888.
The input are three separated Y, Cb and Cr planes, with horizontally and vertically (2D) sub-sampled Cb and Cr planes: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... 2D sub-sampled Cb plane: Cb0 Cb1 ... 2D sub-sampled Cr plane: Cr0 Cr1 ...
The output is one interleaved RGBA8888 plane: RGBA8888 plane: R0 G0 B0 A0 R1 G1 B1 A1 R2 G2 B2 A2 R3 G3 B3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGBA8888 image WARNING: size must match input YCbCr 420 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) and height of the output CbCr component is half of the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width of the output Cb component is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width of the output Cr component is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) of the output CbCr component is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr420. NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) and height of the output CbCr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr420 to RGB565.
The input are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CbCr (or CrCb) plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
The output is one interleaved RGB565 plane: RGB565 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB565 image WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr420 to RGB888.
The input are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CbCr (or CrCb) plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
The output is one interleaved RGB888 plane: RGB888 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB888 image WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr420 to RGBA8888.
The input are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CbCr (or CrCb) plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
The output is one interleaved RGBA8888 plane: RGBA8888 plane: R0 G0 B0 A0 R1 G1 B1 A1 R2 G2 B2 A2 R3 G3 B3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGBA8888 image WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component is half to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component is half to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width of the output Cb component is half to the input width, the output height remains the same. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width of the output Cr component is half to the input width, the output height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width and height of the output CbCr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr420 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width and height of the output CbCr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr422 to RGB565.
The input are three separated Y, Cb and Cr planes, with horizontally sub-sampled Cb and Cr planes: Y plane : Y0 Y1 Y2 Y3 ... Horizontally sub-sampled Cb plane: Cb0 Cb1 ... Horizontally sub-sampled Cr plane: Cr0 Cr1 ...
The output is one interleaved RGB565 plane: RGB565 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component that has been sub-sampled horizontally NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component that has been sub-sampled horizontally NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB565 image WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr422 to RGB888.
The input are three separated Y, Cb and Cr planes, with horizontally sub-sampled Cb and Cr planes: Y plane : Y0 Y1 Y2 Y3 ... Horizontally sub-sampled Cb plane: Cb0 Cb1 ... Horizontally sub-sampled Cr plane: Cr0 Cr1 ...
The output is one interleaved RGB888 plane: RGB888 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB888 image WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr422 to RGBA8888.
The input are three separated Y, Cb and Cr planes, with horizontally sub-sampled Cb and Cr planes: Y plane : Y0 Y1 Y2 Y3 ... Horizontally sub-sampled Cb plane: Cb0 Cb1 ... Horizontally sub-sampled Cr plane: Cr0 Cr1 ...
The output is one interleaved RGBA8888 plane: RGBA8888 plane: R0 G0 B0 A0 R1 G1 B1 A1 R2 G2 B2 A2 R3 G3 B3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGBA8888 image WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component is half of the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component is half of the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) and height of the output CbCr component is half of the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion.
User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) of the output CbCr component is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned. |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned. |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr422. NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) and height of the output CbCr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr422 to RGB565.
The input are one Y plane followed by one interleaved and horizontally sub-sampled CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved and sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
The output is one interleaved RGB565 plane: RGB565 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB565 image WARNING: size must match input YCbCr 422 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr422 to RGB888.
The input are one Y plane followed by one interleaved and horizontally sub-sampled CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved and sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
The output is one interleaved RGB888 plane: RGB888 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB888 image WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr422 to RGBA8888.
The input are one Y plane followed by one interleaved and horizontally sub-sampled CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved and sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
The output is one interleaved RGBA8888 plane: RGBA8888 plane: R0 G0 B0 A0 R1 G1 B1 A1 R2 G2 B2 A2 R3 G3 B3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGBA8888 image WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component are half to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component are half to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(the number of CbCr pairs) and height of the output CbCr component are half of the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width of the output Cb component is half to the input width, the output height remains the same. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width of the output Cr component is half to the input width, the output height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr422 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width and height of the output CbCr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr444 to RGB565.
The input are three separated Y, Cb and Cr planes: Y plane: Y0 Y1 Y2 Y3 ... Cb plane: Cb0 Cb1 Cb2 Cb3... Cr plane: Cr0 Cr1 Cr2 Cr3...
The output is one interleaved RGB565 plane: RGB565 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB565 image WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr444 to RGB888.
The input are three separated Y, Cb and Cr planes: Y plane: Y0 Y1 Y2 Y3 ... Cb plane: Cb0 Cb1 Cb2 Cb3... Cr plane: Cr0 Cr1 Cr2 Cr3...
The output is one interleaved RGB888 plane: RGB888 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB888 image WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr444 to RGBA8888.
The input are three separated Y, Cb and Cr planes: Y plane: Y0 Y1 Y2 Y3 ... Cb plane: Cb0 Cb1 Cb2 Cb3... Cr plane: Cr0 Cr1 Cr2 Cr3...
The output is one interleaved RGBA8888 plane: RGBA8888 plane: R0 G0 B0 A0 R1 G1 B1 A1 R2 G2 B2 A2 R3 G3 B3 A3...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcCb | Input image Cb component NOTE: should be 128-bit aligned. |
srcCr | Input image Cr component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input image Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input image Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGBA8888 image WARNING: size must match input YCbCr 444 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4 NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion.
User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component is half of the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component is half of the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned. |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned. |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) and height of the output CbCr component is half of the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width of the output Cb component is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width of the output Cr component is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned. |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned. |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) of the output CbCr component is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned. |
srcCb | Pointer to the input Cb component NOTE: should be 128-bit aligned. |
srcCr | Pointer to the input Cr component NOTE: should be 128-bit aligned. |
srcWidth | Width of the input image NOTE: should be a multiple of 8. |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCbStride | Stride of input Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCrStride | Stride of input Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(number of CbCr pairs) and height of the output CbCr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 ofrow 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr444 to RGB565.
The input are one Y plane followed by one interleaved CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved plane: Cb0 Cr0 Cb1 Cr1 Cb2 Cr2 Cb3 Cr3 ...
The output is one interleaved RGB565 plane: RGB565 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB565 pixel is arranged with 5-bit Red component, 6-bit Green component, and 5-bit Blue component. One RGB565 pixel is made up of 16-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB565 image WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr444 to RGB888.
The input are one Y plane followed by one interleaved CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved plane: Cb0 Cr0 Cb1 Cr1 Cb2 Cr2 Cb3 Cr3 ...
The output is one interleaved RGB888 plane: RGB888 plane: R0 G0 B0 R1 G1 B1 R2 G2 B2 R3 G3 B3...
RGB888 pixel is arranged with 8-bit Red component, 8-bit Green component, and 8-bit Blue component. One RGB888 pixel is made up of 24-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGB888 image WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 3. NOTE: should be a multiple of 8. |
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.
This function performs color space conversion from YCbCr444 to RGBA8888.
The input are one Y plane followed by one interleaved CbCr (or CrCb) plane: Y plane : Y0 Y1 Y2 Y3 ... Interleaved plane: Cb0 Cr0 Cb1 Cr1 Cb2 Cr2 Cb3 Cr3 ...
The output is one interleaved RGBA8888 plane: RGBA8888 plane: R0 G0 B0 A0 R1 G1 B1 A1 R2 G2 B2 A2 R3 G3 B3 A3 ...
RGBA8888 pixel is arranged with 8-bit Red component, 8-bit Green component, 8-bit Blue component, and 8-bit A component. One RGBA8888 pixel is made up of 32-bit data.
srcY | Input image Y component NOTE: should be 128-bit aligned. |
srcC | Input image Chroma component NOTE: should be 128-bit aligned. |
srcWidth | Image width in number of Y pixels NOTE: should be a multiple of 8. |
srcHeight | Image height in number of Y lines |
srcYStride | Stride of input image Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input image Chroma component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | The output of interleaved RGBA8888 image WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component is half to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component is half to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width(the number of the CbCr pairs) and height of the output CbCr component are half of the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width of the output Cb component is half to the input width, the output height remains the same. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width of the output Cr component is half to the input width, the output height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth / 2. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstC | Pointer to the output CbCr component WARNING: The width of the output CbCr component, which is the number of the CbCr pairs, is half of the input width, height remains the same. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCStride | Stride of output CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
This function performs YCbCr color space conversion. User can specify the destination Y pointer to be the same as the source Y pointer, in such case, the source and destination Y components share the same allocated memory.
srcY | Pointer to the input Y component NOTE: should be 128-bit aligned |
srcC | Pointer to the input CbCr component NOTE: should be 128-bit aligned |
srcWidth | Width of the input image NOTE: should be a multiple of 8 |
srcHeight | Height of the input image |
srcYStride | Stride of input Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcYStride is default to srcWidth. NOTE: should be a multiple of 8. |
srcCStride | Stride of input CbCr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcCStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dstY | Pointer to the output Y component. User can set the output pointer to be the same as the input pointer, in such case the Y component won't be touched. WARNING: size must match input YCbCr444 NOTE: should be 128-bit aligned |
dstCb | Pointer to the output Cb component WARNING: The width and height of the output Cb component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstCr | Pointer to the output Cr component WARNING: The width and height of the output Cr component are the same to the input width and height. NOTE: should be 128-bit aligned |
dstYStride | Stride of output Y component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstYStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCbStride | Stride of output Cb component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCbStride is default to srcWidth. NOTE: should be a multiple of 8. |
dstCrStride | Stride of output Cr component (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstCrStride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
ATTENTION: The name of this function will be changed when the 2.0.0 release of this library is made. Until 2.0.0, the developer should use this implementation with the expectation of moving to a different name when transitioning to 2.0.0.
src | 8-bit image of input YUV picture. NOTE: should be 128-bit aligned. |
The input are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CrCb plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cr0 Cb0 Cr1 Cb1 ...
srcWidth | Image width. |
srcHeight | Image height. |
srcYStride | Stride (in bytes) of input image Y component (i.e., number of bytes between column 0 of row 1 and column 0 of row 2). WARNING: should be multiple of 8 (8 * 1-byte values). |
srcCStride | Stride (in bytes) of input image Chroma component (i.e., number of bytes between column 0 of row 1 and column 0 of row 2) WARNING: should be multiple of 4 (4 * 1-byte values). |
dst | 32-bit image of output RGB 8888 values. R in LSB. WARNING: size must match input yuv420. NOTE: should be 128-bit aligned. |
dstStride | Stride of output RGB image (i.e., number of bytes between column 0 of row 1 and column 0 of row 2) WARNING: should be multiple of 32 (8 * 4-byte values). |
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.
Color conversion from YCbCr H1V1 (YCbCr 4:4:4 planar) to RGB 888.
R = Y + 1.40200*(Cr-128)
G = Y - 0.34414*(Cb-128) - 0.71414*(Cr-128)
B = Y + 1.77200*(CB-128)
src | 8-bit image of input values. Stored as YCbCr H1V1 planar format in 8x8 blocks for Y,Cb,Cr. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 8 |
srcHeight | Image height. |
dst | 8-bit image of output RGB 888 values. R in LSB. WARNING: size must match input crcb. NOTE: should be 128-bit aligned. |
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.
Color conversion from YCbCr H1V2 (YCbCr 4:2:2) to RGB 888.
R = Y + 1.40200*(Cr-128)
G = Y - 0.34414*(Cb-128) - 0.71414*(Cr-128)
B = Y + 1.77200*(CB-128)
ysrc | 8-bit input values. Stored as YCbCr H1V2 planar format in 8x16 blocks for Y, 8x8 blocks for Cb, Cr. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 8 |
srcHeight | Image height. |
dst | 8-bit image of output RGB 888 values. R in LSB. WARNING: size must match input crcb. NOTE: should be 128-bit aligned. |
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.
Color conversion from YCbCr H2V1 (YCbCr 4:2:2) to RGB 888.
R = Y + 1.40200*(Cr-128)
G = Y - 0.34414*(Cb-128) - 0.71414*(Cr-128)
B = Y + 1.77200*(CB-128)
src | 8-bit input values. Stored as YCbCr H2V1 planar format in 16x8 blocks for Y, 8x8 blocks for Cb, Cr. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 8 |
srcHeight | Image height. |
dst | 8-bit image of output RGB 888 values. R in LSB. WARNING: size must match input crcb. NOTE: should be 128-bit aligned. |
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.
Color conversion from YCbCr H2V2 (YCbCr 4:2:0 planar) to RGB 888.
R = Y + 1.40200*(Cr-128)
G = Y - 0.34414*(Cb-128) - 0.71414*(Cr-128)
B = Y + 1.77200*(CB-128)
ysrc | 8-bit input values. Stored as YCbCr H2V2 planar format in 16x16 blocks for Y, 8x8 blocks for Cb, Cr. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 8 |
srcHeight | Image height. |
dst | 8-bit image of output RGB 888 values. R in LSB. WARNING: size must match input crcb. NOTE: should be 128-bit aligned. |
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.
ATTENTION: The name of this function will be changed when the 2.0.0 release of this library is made. Until 2.0.0, the developer should use this implementation with the expectation of moving to a different name when transitioning to 2.0.0.
src | 8-bit image of input YUV 4:2:0 values. NOTE: should be 128-bit aligned. |
The input are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CbCr plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cb0 Cr0 Cb1 Cr1 ...
dst | 16-bit image of output RGB 565 values. R in LSBs. 2 pixels are packed into one 32-bit output WARNING: size must match input yuv420. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 4 |
srcHeight | Image height. |
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.
ATTENTION: This function's signature will become OBSOLETE in a future release of this library (2.0.0). The new interface is specified in the function: fcvColorYCrCb420PseudoPlanarToRGB8888u8. In the 2.0.0 release, the signature of fcvColorYUV420toRGB8888u8 as it appears now, will be removed.
src | 8-bit image of input YUV 4:2:0 values. NOTE: should be 128-bit aligned. |
The input are one Y plane followed by one interleaved and 2D (both horizontally and vertically) sub-sampled CrCb plane: Y plane : Y00 Y01 Y02 Y03 ... Y10 Y11 Y12 Y13 ... Interleaved and 2D sub-sampled plane: Cr0 Cb0 Cr1 Cb1 ...
dst | 32-bit image of output RGB 8888 values. R is at LSB. WARNING: size must match input yuv420. NOTE: should be 128-bit aligned. |
srcWidth | Image width. WARNING: should be multiple of 8. |
srcHeight | Image height. |
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.
Deinterleave color compoentonts from src to dst0 and dst1. Data in src [d0 t0 d1 t1 d2 t2...] Results in dst0 [d0 d1 d2...] Results in dst1 [t0 t1 t2...]
src | Input image NOTE: should be 128-bit aligned. |
srcWidth | Input image width, number of data pairs. For example, CrCb or CbCr pairs. NOTE: should be a multiple of 8. |
srcHeight | Input image height |
srcStride | Stride of input image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst0 | Pointer to one of the output image. For example, Cb or Cr components. NOTE: should be 128-bit aligned. |
dst0Stride | Stride of one of the output image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dst0Stride is default to srcWidth. NOTE: should be a multiple of 8. |
dst1 | Pointer to one of the output image. For example, Cb or Cr components. NOTE: should be 128-bit aligned. |
dst1Stride | Stride of one of the output image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dst1Stride is default to srcWidth. NOTE: should be a multiple of 8. |
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.
Interleav data from src0 and src1 to dst. Data in src0 [d0 d1 d2 d3...] Data in src1 [t0 t1 t2 t3...] Results in dst [d0 t0 d1 t1 d2 t2 d3 t3...]
src0 | One of the input images ( For example, Cb or Cr component) NOTE: should be 128-bit aligned. |
src1 | One of the input images ( For example, Cb or Cr component) NOTE: should be 128-bit aligned. |
imageWidth | Input image width NOTE: should be a multiple of 8. |
imageHeight | Input image height |
src0Stride | Stride of input image 0 (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, src0Stride is default to imageWidth. NOTE: should be a multiple of 8. |
src1Stride | Stride of input image 1 (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, src1Stride is default to imageWidth. NOTE: should be a multiple of 8. |
dst | Pointer to the output image NOTE: should be 128-bit aligned. |
dstStride | Stride of the output image (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to imageWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs horizontal 1:2 upsampling and vertical 1:2 upsampling on the input interleaved Chroma data. The input shall be interleaved Chroma data in pairs of CbCr or CrCb. The output width and height are doubled after upsampling. Caller needs to pass in the output buffer large enough to hold the upsampled data.
src | Input interleaved Chroma data in pairs of CbCr or CrCb NOTE: should be 128-bit aligned. |
srcWidth | Input width in number of Chroma pairs (CbCr pair or CrCb pair) NOTE: should be a multiple of 8. |
srcHeight | Input height in number of Chroma lines |
srcStride | Stride of input data (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output Chroma data that has been upsampled both horizontally and vertically WARNING: both output width and output height are doubled NOTE: should be 128-bit aligned. |
dstStride | Stride of output data(i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs horizontal 1:2 upsampling and vertical 1:2 upsampling on the input Chroma data. The input shall be non-interleaved planar Chroma data. The Chroma data can be either Cb component or Cr component. The output width and height are doubled after upsampling. Caller needs to pass in the output buffer large enough to hold the upsampled data.
src | Input Chroma component, either Cb or Cr NOTE: should be 128-bit aligned. |
srcWidth | Input width in number of Chroma pixels NOTE: should be a multiple of 8. |
srcHeight | Input height in number of Chroma lines |
srcStride | Stride of input data (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | Output Chroma data that has been upsampled both horizontally and vertically WARNING: both output width and output height are doubled NOTE: should be 128-bit aligned. |
dstStride | Stride of output data(i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs horizontal 1:2 upsampling on the input interleaved Chroma data. The input shall be interleaved Chroma data in pairs of CbCr or CrCb. The output width is doubled after upsampling. Caller needs to pass in the output buffer large enough to hold the upsampled data.
src | Input interleaved Chroma data in pairs of CbCr or CrCb NOTE: should be 128-bit aligned. |
srcWidth | Input width in number of Chroma pairs (CbCr pair or CrCb pair) NOTE: should be a multiple of 8. |
srcHeight | Input height in number of Chroma lines |
srcStride | Stride of input data (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output Chroma data that has been upsampled horizontally WARNING: output width is doubled NOTE: should be 128-bit aligned. |
dstStride | Stride of output data(i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 4. NOTE: should be a multiple of 8. |
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.
This function performs horizontal 1:2 upsampling on the input Chroma data. The input shall be non-interleaved planar Chroma data. The Chroma data can be either Cb component or Cr component. The output width is doubled after upsampling. Caller needs to pass in the output buffer large enough to hold the upsampled data.
src | Input Chroma component, either Cb or Cr NOTE: should be 128-bit aligned. |
srcWidth | Input width in number of Chroma pixels NOTE: should be a multiple of 8. |
srcHeight | Input height in number of Chroma lines |
srcStride | Stride of input data (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | Output Chroma data that has been upsampled horizontally WARNING: output width is doubled NOTE: should be 128-bit aligned. |
dstStride | Stride of output data(i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs vertical 1:2 upsampling on the input interleaved Chroma data. The input shall be interleaved Chroma data in pairs of CbCr or CrCb. The output height is doubled after upsampling. Caller needs to pass in the output buffer large enough to hold the upsampled data.
src | Input interleaved Chroma data in pairs of CbCr or CrCb NOTE: should be 128-bit aligned. |
srcWidth | Input width in number of Chroma pairs (CbCr pair or CrCb pair) NOTE: should be a multiple of 8. |
srcHeight | Input height in number of Chroma lines |
srcStride | Stride of input data (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
dst | Output Chroma data that has been upsampled vertically WARNING: output height is doubled NOTE: should be 128-bit aligned. |
dstStride | Stride of output data(i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth * 2. NOTE: should be a multiple of 8. |
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.
This function performs vertical 1:2 upsampling on the input Chroma data. The input shall be non-inteleaved planar Chroma data. The Chroma data can be either Cb component or Cr component. The output height is doubled after upsampling. Caller needs to pass in the output buffer large enough to hold the upsampled data.
src | Input Chroma component, either Cb or Cr NOTE: should be 128-bit aligned. |
srcWidth | Input width in number of Chroma pixels NOTE: should be a multiple of 8. |
srcHeight | Input height in number of Chroma lines |
srcStride | Stride of input data (i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, srcStride is default to srcWidth. NOTE: should be a multiple of 8. |
dst | Output Chroma data that has been upsampled vertically WARNING: output height is doubled NOTE: should be 128-bit aligned. |
dstStride | Stride of output data(i.e., number of bytes between column 0 of row 0 and column 0 of row 1). If left at 0, dstStride is default to srcWidth. NOTE: should be a multiple of 8. |