KanduAI SDK API
KanduAI SDK API

Image API

Image API description

Functions

void *rf_load_image_from_rgb_buffer(uint8_t *buffer, size_t height, size_t width, int rotation, rf_error_type *error)

Load image from RGB buffer

Return

image_handle

Parameters
  • buffer: byte buffer

  • height: height in pixels

  • width: width in pixels

  • rotation: rotate image. 0 - don’t rotate. Supported values 90 and 270 degrees

  • error: output parameter for error

void *rf_load_image_from_rgba_buffer(uint8_t *buffer, size_t height, size_t width, int rotation, rf_error_type *error)

Load image from RGBA buffer

Return

image_handle

Parameters
  • buffer: byte buffer

  • height: height in pixels

  • width: width in pixels

  • rotation: rotate image. 0 - don’t rotate. Supported values are 90 and 270 degrees

  • error: output parameter for error

void *rf_load_image_from_jpeg_buffer(uint8_t *buffer, size_t size, int rotation, rf_error_type *error)

Load image from RGBA buffer

Return

image_handle

Parameters
  • buffer: byte buffer

  • size: buffer size in bytes

  • rotation: rotate image. 0 - don’t rotate. Supported values are 90 and 270 degrees

  • error: output parameter for error

void *rf_load_image_from_file(const char *image_path, int rotation, rf_error_type *error)

Load image from a file such as *.jpg or *.png

Return

image_handle

Parameters
  • image_path: path to the image file (e.g. image.jpg)

  • rotation: rotate image. 0 - don’t rotate. Supported values are 90 and 270 degrees

  • error: output parameter for error

void rf_get_image_size(void *image_handle, int *out_height, int *out_width, rf_error_type *error)

Get image’s height and width in pixels

See

rf_load_image_from_rgba_buffer

Parameters
  • image_handle: image handle.

Parameters
  • out_height: output parameter to get the image’s height

  • out_width: output parameter to get the image’s width

  • error: output parameter for error

void *rf_get_image_rgb_buffer(void *image_handle, rf_error_type *error)

Get image’s RGB buffer pointer, the layout is RGB, HWC, each pixel is uint8

See

rf_load_image_from_rgba_buffer

Return

pointer to the image’s RGB buffer

Parameters
  • image_handle: image handle.

Parameters
  • error: output parameter for error

void rf_free_image(void *image_handle, rf_error_type *error)

Delete image.

See

rf_load_image_from_rgba_buffer

Parameters
  • image_handle: image handle.

Parameters
  • error: output parameter for error

void rf_save_image(void *image_handle, const char *path, rf_error_type *error)

Save image in png format.

See

rf_load_image_from_rgba_buffer

Parameters
  • image_handle: image handle.

Parameters
  • path: path and file name of output image including .png. Example “debug/image.png”

  • error: output parameter for error

void *rf_image_proportional_resize(void *image_handle, int height, int width, rf_error_type *error)

Resize input image to the given size, keep aspect ratio, pad if needed.

See

rf_load_image_from_rgba_buffer

Return

new image_handle for the resized image

Parameters
  • image_handle: image handle.

Parameters
  • height: desired height

  • width: desired width

  • error: output parameter for error