TI Autonomous Driving Algorithms (TIADALG) Library User Guide
tiadalg_sparse_upsampling.h File Reference

This file defines the interface for sparse up-sampling and convolution operation. More...

#include <stdint.h>

Go to the source code of this file.

Functions

int32_t tiadalg_sparse_upsampling_cn (int8_t *desc_plane, uint32_t desc_line_pitch, uint32_t desc_plane_pitch, uint16_t num_desc_planes, int8_t *filter_coeff, int16_t *bias, int32_t *key_point_list, uint16_t num_key_points, int16_t *scratch_buffer, uint8_t is_scratch_filled, int32_t desc_scale, int32_t filter_scale, int32_t bias_scale, int32_t out_scale, void *out_desc, int32_t in_desc_data_type, int32_t out_desc_data_type)
 Given the keypoint locations list at higher image resolution and descriptors at lower image resolution, higher resolution descriptor is derived by nearest neighbour upsampling scheme and spatial 7x7 filtering centered at keypoint location. Only 4x4 upsampling is supported by this API. And 7x7 intra descriptor plane filtering post upsampling is applied. The process is equivalent of upsampling the descriptor plane by factor 4 in both direction, and selecting the values specific to key point locations. More...
 
int32_t tiadalg_sparse_upsampling_c66 (int8_t *desc_plane, uint32_t desc_line_pitch, uint32_t desc_plane_pitch, uint16_t num_desc_planes, int8_t *filter_coeff, int16_t *bias, int32_t *key_point_list, uint16_t num_key_points, int16_t *scratch_buffer, uint8_t is_scratch_filled, int32_t desc_scale, int32_t filter_scale, int32_t bias_scale, int32_t out_scale, void *out_desc, int32_t in_desc_data_type, int32_t out_desc_data_type)
 Given the keypoint locations list at higher image resolution and descriptors at lower image resolution, higher resolution descriptor is derived by nearest neighbour upsampling scheme and spatial 7x7 filtering centered at keypoint location. Only 4x4 upsampling is supported by this API. And 7x7 intra descriptor plane filtering post upsampling is applied. The process is equivalent of upsampling the descriptor plane by factor 4 in both direction, and selecting the values specific to key point locations. More...
 

Detailed Description

This file defines the interface for sparse up-sampling and convolution operation.

Version
0.1 Sep 2019 : Initial Code

Function Documentation

◆ tiadalg_sparse_upsampling_cn()

int32_t tiadalg_sparse_upsampling_cn ( int8_t *  desc_plane,
uint32_t  desc_line_pitch,
uint32_t  desc_plane_pitch,
uint16_t  num_desc_planes,
int8_t *  filter_coeff,
int16_t *  bias,
int32_t *  key_point_list,
uint16_t  num_key_points,
int16_t *  scratch_buffer,
uint8_t  is_scratch_filled,
int32_t  desc_scale,
int32_t  filter_scale,
int32_t  bias_scale,
int32_t  out_scale,
void *  out_desc,
int32_t  in_desc_data_type,
int32_t  out_desc_data_type 
)

Given the keypoint locations list at higher image resolution and descriptors at lower image resolution, higher resolution descriptor is derived by nearest neighbour upsampling scheme and spatial 7x7 filtering centered at keypoint location. Only 4x4 upsampling is supported by this API. And 7x7 intra descriptor plane filtering post upsampling is applied. The process is equivalent of upsampling the descriptor plane by factor 4 in both direction, and selecting the values specific to key point locations.

tiadalg_sparse_upsampling_cn

Parameters
desc_plane[in] : Input descriptor data buffer at lower resolution e.g. (w/4)x(h/4)
desc_line_pitch[in] : One line pitch in each descriptor plane of resolution (w/4)x(h/4)
desc_plane_pitch[in] : Plane pitch for each descriptor plane
num_desc_planes[in] : Number of descriptor planes
filter_coeff[in] : Filter coefficient (7x7) for each descriptor plane, to be applied after 4x4 upsampling the desc_plane
bias[in] : 16 bit bias to be applied after 7x7 up-sampling filter for each descriptor plane
key_point_list[in] : Key point locations in higher image resolution domain e.g. (wxh)
num_key_points[in] : Number of key points
scratch_buffer[in] : Scartch buffer required. Not used in _cn API
is_scratch_filled[in] : If scratch buffer was filled by previous call of the API, then it should be passed as '1' otherwise '0'
desc_scale[in] : Scale of descriptor in power of 2
filter_scale[in] : Filter scale in power of 2
bias_scale[in] : Bias scale in power of 2
out_scale[in] : Output scale required in power of 2
out_desc[out] : Output upsampled descriptor at higher resolution
in_desc_data_type[in] : input descriptor data type.
out_desc_data_type[in] : output descriptor data type.
Note
  • Size of the buffer desc_plane is equal to desc_line_pitch * desc_plane_height * num_desc_planes
  • Size of the filter_coeff is 7 * 7 * num_desc_planes
  • x and y location for each key point has to be provided in the buffer key_point_list
  • Size of the buffer key_point_list is 2 * num_key_points.
  • Size of the out_desc is num_desc_planes * num_key_points
  • Input descriptor data desc_plane is expected in signed 8 bit
  • out_desc can be unsgined 8 bit or unsigned 16 bit depending on out_desc_data_type

◆ tiadalg_sparse_upsampling_c66()

int32_t tiadalg_sparse_upsampling_c66 ( int8_t *  desc_plane,
uint32_t  desc_line_pitch,
uint32_t  desc_plane_pitch,
uint16_t  num_desc_planes,
int8_t *  filter_coeff,
int16_t *  bias,
int32_t *  key_point_list,
uint16_t  num_key_points,
int16_t *  scratch_buffer,
uint8_t  is_scratch_filled,
int32_t  desc_scale,
int32_t  filter_scale,
int32_t  bias_scale,
int32_t  out_scale,
void *  out_desc,
int32_t  in_desc_data_type,
int32_t  out_desc_data_type 
)

Given the keypoint locations list at higher image resolution and descriptors at lower image resolution, higher resolution descriptor is derived by nearest neighbour upsampling scheme and spatial 7x7 filtering centered at keypoint location. Only 4x4 upsampling is supported by this API. And 7x7 intra descriptor plane filtering post upsampling is applied. The process is equivalent of upsampling the descriptor plane by factor 4 in both direction, and selecting the values specific to key point locations.

tiadalg_sparse_upsampling_c66

Parameters
desc_plane[in] : Input descriptor data buffer at lower resolution e.g. (w/4)x(h/4)
desc_line_pitch[in] : One line pitch in each descriptor plane of resolution (w/4)x(h/4)
desc_plane_pitch[in] : Plane pitch for each descriptor plane
num_desc_planes[in] : Number of descriptor planes
filter_coeff[in] : Filter coefficient (7x7) for each descriptor plane, to be applied after 4x4 upsampling the desc_plane
bias[in] : 16 bit bias to be applied after 7x7 up-sampling filter for each descriptor plane
key_point_list[in] : Key point locations in higher image resolution domain e.g. (wxh)
num_key_points[in] : Number of key points
scratch_buffer[in] : Scartch buffer required. Not used in _cn API
is_scratch_filled[in] : If scratch buffer was filled by previous call of the API, then it should be passed as '1' otherwise '0'
desc_scale[in] : Scale of descriptor in power of 2
filter_scale[in] : Filter scale in power of 2
bias_scale[in] : Bias scale in power of 2
out_scale[in] : Output scale required in power of 2
out_desc[out] : Output upsampled descriptor at higher resolution
in_desc_data_type[in] : input descriptor data type.
out_desc_data_type[in] : output descriptor data type.
Note
  • Size of the buffer desc_plane is equal to desc_line_pitch * desc_plane_height * num_desc_planes
  • Size of the filter_coeff is 7 * 7 * num_desc_planes
  • x and y location for each key point has to be provided in the buffer key_point_list
  • Size of the buffer key_point_list is 2 * num_key_points.
  • Size of the out_desc is num_desc_planes * num_key_points
  • Input descriptor data desc_plane is expected in signed 8 bit
  • out_desc can be unsgined 8 bit or unsigned 16 bit depending on out_desc_data_type

© Copyright 2018 Texas Instruments Incorporated. All rights reserved.
Document generated by doxygen 1.8.6