VisionWorks Toolkit Reference

April 8, 2016 | 1.4 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvxcu.h File Reference

Detailed Description

NVIDIA VisionWorks-CUDA API.

Definition in file nvxcu.h.

Go to the source code of this file.

Data Structures

struct  nvxcu_array_t
 Base structure for array object. More...
 
struct  nvxcu_border_t
 Defines a border extrapolation behavior. More...
 
struct  nvxcu_coordinates2d_t
 Defines a 2D coordinates data structure. More...
 
struct  nvxcu_coordinates3d_t
 Defines a 3D coordinates data structure. More...
 
struct  nvxcu_exec_target_t
 Base structure for execution target. More...
 
struct  nvxcu_image_t
 Base structure for image object. More...
 
struct  nvxcu_keypoint_t
 Defines a keypoint data structure with integer coordinates. More...
 
struct  nvxcu_keypointf_t
 Defines a keypoint data structure with float coordinates. More...
 
struct  nvxcu_pitch_linear_image_t
 Image object represented as pitch linear CUDA buffer. More...
 
struct  nvxcu_pitch_linear_image_t.planes
 
struct  nvxcu_pitch_linear_pyramid_t
 Pitch linear pyramid object. More...
 
union  nvxcu_pixel_value_t
 Defines the value of a pixel for any image format. More...
 
struct  nvxcu_plain_array_t
 Array object represented as plain CUDA device memory. More...
 
struct  nvxcu_point2f_t
 Defines a 2D point data structure (float coordinates). More...
 
struct  nvxcu_point3f_t
 Defines a 3D point data structure (float coordinates). More...
 
struct  nvxcu_point4f_t
 Defines a 4D point data structure (float coordinates). More...
 
struct  nvxcu_pyramid_t
 Base structure for pyramid object. More...
 
struct  nvxcu_rectangle_t
 Defines a rectangle data structure. More...
 
struct  nvxcu_stream_exec_target_t
 CUDA stream execution target. More...
 
struct  nvxcu_tmp_buf_size_t
 Defines the size of temporary buffers. More...
 
struct  nvxcu_tmp_buf_t
 Defines a pointers to temporary buffers. More...
 
struct  nvxcu_uniform_image_t
 Image object filled with uniform value. More...
 

Macros

#define NVXCU_DF_IMAGE(a, b, c, d)   ((a) | (b << 8) | (c << 16) | (d << 24))
 Converts a set of four chars into a single uint32_t value. More...
 
#define NVXCU_ENUM_BASE(v, id)   (((v) << 20) | (id << 12))
 Calculates the base value for a specific enumeration type. More...
 
#define NVXCU_NB_MAX_PLANES   (4u)
 Defines the maximum number of planes in an image object. More...
 
#define NVXCU_SCALE_PYRAMID_HALF   (0.5f)
 Half-scale pyramid. More...
 
#define NVXCU_SCALE_PYRAMID_ORB   (0.8408964f)
 ORB scaled pyramid whose scaling factor is \( \frac{1}{\root 4 \of {2}} \). More...
 

Enumerations

enum  nvxcu_array_item_type_e {
  NVXCU_TYPE_CHAR = 0x001,
  NVXCU_TYPE_INT8 = 0x002,
  NVXCU_TYPE_UINT8 = 0x003,
  NVXCU_TYPE_INT16 = 0x004,
  NVXCU_TYPE_UINT16 = 0x005,
  NVXCU_TYPE_INT32 = 0x006,
  NVXCU_TYPE_UINT32 = 0x007,
  NVXCU_TYPE_INT64 = 0x008,
  NVXCU_TYPE_UINT64 = 0x009,
  NVXCU_TYPE_FLOAT32 = 0x00A,
  NVXCU_TYPE_FLOAT64 = 0x00B,
  NVXCU_TYPE_RECTANGLE = 0x020,
  NVXCU_TYPE_KEYPOINT = 0x021,
  NVXCU_TYPE_COORDINATES2D = 0x022,
  NVXCU_TYPE_COORDINATES3D = 0x023,
  NVXCU_TYPE_POINT2F = 0x400,
  NVXCU_TYPE_POINT3F = 0x401,
  NVXCU_TYPE_POINT4F = 0x402,
  NVXCU_TYPE_KEYPOINTF = 0x403
}
 Defines an array item type enumeration. More...
 
enum  nvxcu_array_type_e { NVXCU_PLAIN_ARRAY }
 Defines the array object type ID. More...
 
enum  nvxcu_border_mode_e {
  NVXCU_BORDER_MODE_UNDEFINED = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_BORDER_MODE) + 0x0,
  NVXCU_BORDER_MODE_CONSTANT = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_BORDER_MODE) + 0x1,
  NVXCU_BORDER_MODE_REPLICATE = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_BORDER_MODE) + 0x2
}
 Defines a border mode enumeration. More...
 
enum  nvxcu_channel_e {
  NVXCU_CHANNEL_0 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x0,
  NVXCU_CHANNEL_1 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x1,
  NVXCU_CHANNEL_2 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x2,
  NVXCU_CHANNEL_3 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x3,
  NVXCU_CHANNEL_R = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x10,
  NVXCU_CHANNEL_G = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x11,
  NVXCU_CHANNEL_B = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x12,
  NVXCU_CHANNEL_A = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x13,
  NVXCU_CHANNEL_Y = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x14,
  NVXCU_CHANNEL_U = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x15,
  NVXCU_CHANNEL_V = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CHANNEL) + 0x16
}
 Defines a channel enumeration for channel extract operation. More...
 
enum  nvxcu_channel_range_e {
  NVXCU_CHANNEL_RANGE_FULL = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_COLOR_RANGE) + 0x0,
  NVXCU_CHANNEL_RANGE_RESTRICTED = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_COLOR_RANGE) + 0x1
}
 Defines an image channel range enumeration. More...
 
enum  nvxcu_color_space_e {
  NVXCU_COLOR_SPACE_NONE = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_COLOR_SPACE) + 0x0,
  NVXCU_COLOR_SPACE_BT601_525 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_COLOR_SPACE) + 0x1,
  NVXCU_COLOR_SPACE_BT601_625 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_COLOR_SPACE) + 0x2,
  NVXCU_COLOR_SPACE_BT709 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_COLOR_SPACE) + 0x3,
  NVXCU_COLOR_SPACE_DEFAULT = NVXCU_COLOR_SPACE_BT709
}
 Defines an image color space enumeration. More...
 
enum  nvxcu_convert_policy_e {
  NVXCU_CONVERT_POLICY_WRAP = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CONVERT_POLICY) + 0x0,
  NVXCU_CONVERT_POLICY_SATURATE = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_CONVERT_POLICY) + 0x1
}
 Defines a convertion policy enumeration. More...
 
enum  nvxcu_df_image_e {
  NVXCU_DF_IMAGE_RGB = NVXCU_DF_IMAGE('R','G','B','2'),
  NVXCU_DF_IMAGE_RGBX = NVXCU_DF_IMAGE('R','G','B','A'),
  NVXCU_DF_IMAGE_NV12 = NVXCU_DF_IMAGE('N','V','1','2'),
  NVXCU_DF_IMAGE_NV21 = NVXCU_DF_IMAGE('N','V','2','1'),
  NVXCU_DF_IMAGE_UYVY = NVXCU_DF_IMAGE('U','Y','V','Y'),
  NVXCU_DF_IMAGE_YUYV = NVXCU_DF_IMAGE('Y','U','Y','V'),
  NVXCU_DF_IMAGE_IYUV = NVXCU_DF_IMAGE('I','Y','U','V'),
  NVXCU_DF_IMAGE_YUV4 = NVXCU_DF_IMAGE('Y','U','V','4'),
  NVXCU_DF_IMAGE_U8 = NVXCU_DF_IMAGE('U','0','0','8'),
  NVXCU_DF_IMAGE_U16 = NVXCU_DF_IMAGE('U','0','1','6'),
  NVXCU_DF_IMAGE_S16 = NVXCU_DF_IMAGE('S','0','1','6'),
  NVXCU_DF_IMAGE_U32 = NVXCU_DF_IMAGE('U','0','3','2'),
  NVXCU_DF_IMAGE_S32 = NVXCU_DF_IMAGE('S','0','3','2'),
  NVXCU_DF_IMAGE_F32 = NVXCU_DF_IMAGE('F','0','3','2'),
  NVXCU_DF_IMAGE_2F32 = NVXCU_DF_IMAGE('2','F','3','2'),
  NVXCU_DF_IMAGE_2S16 = NVXCU_DF_IMAGE('2','S','1','6'),
  NVXCU_DF_IMAGE_RGB16 = NVXCU_DF_IMAGE('S','3','1','6')
}
 Defines an image format enumeration. More...
 
enum  nvxcu_enum_e {
  NVXCU_ENUM_INTERPOLATION = 0x04,
  NVXCU_ENUM_COLOR_SPACE = 0x06,
  NVXCU_ENUM_COLOR_RANGE = 0x07,
  NVXCU_ENUM_CHANNEL = 0x09,
  NVXCU_ENUM_CONVERT_POLICY = 0x0A,
  NVXCU_ENUM_BORDER_MODE = 0x0C,
  NVXCU_ENUM_TERM_CRITERIA = 0x0F,
  NVXCU_ENUM_NORM_TYPE = 0x10,
  NVXCU_ENUM_ROUND_POLICY = 0x12
}
 Defines an enumeration type code. More...
 
enum  nvxcu_error_status_e {
  NVXCU_ERROR_CUDA_FAILURE = -1002,
  NVXCU_ERROR_INVALID_PARAMETERS = -10,
  NVXCU_ERROR_NOT_SUPPORTED = -3,
  NVXCU_ERROR_NOT_IMPLEMENTED = -2,
  NVXCU_FAILURE = -1,
  NVXCU_SUCCESS = 0
}
 Defines an error status code. More...
 
enum  nvxcu_exec_target_type_e { NVXCU_STREAM_EXEC_TARGET }
 Defines the execution target object type ID. More...
 
enum  nvxcu_flip_mode_e {
  NVXCU_FLIP_HORIZONTAL,
  NVXCU_FLIP_VERTICAL,
  NVXCU_FLIP_BOTH
}
 Defines modes for flip image operation. More...
 
enum  nvxcu_image_type_e {
  NVXCU_PITCH_LINEAR_IMAGE,
  NVXCU_UNIFORM_IMAGE
}
 Defines the image object type ID. More...
 
enum  nvxcu_interpolation_type_e {
  NVXCU_INTERPOLATION_TYPE_NEAREST_NEIGHBOR = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_INTERPOLATION) + 0x0,
  NVXCU_INTERPOLATION_TYPE_BILINEAR = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_INTERPOLATION) + 0x1,
  NVXCU_INTERPOLATION_TYPE_AREA = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_INTERPOLATION) + 0x2
}
 Defines an interpolation type enumeration. More...
 
enum  nvxcu_norm_type_e {
  NVXCU_NORM_L1 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_NORM_TYPE) + 0x0,
  NVXCU_NORM_L2 = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_NORM_TYPE) + 0x1
}
 Defines a normalization type enumeration. More...
 
enum  nvxcu_pyramid_type_e { NVXCU_PITCH_LINEAR_PYRAMID }
 Defines the pyramid object type ID. More...
 
enum  nvxcu_round_policy_e {
  NVXCU_ROUND_POLICY_TO_ZERO = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_ROUND_POLICY) + 0x1,
  NVXCU_ROUND_POLICY_TO_NEAREST_EVEN = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_ROUND_POLICY) + 0x2
}
 Defines a round policy enumeration. More...
 
enum  nvxcu_scanline_e {
  NVXCU_SCANLINE_LEFT_RIGHT = 1 << 0,
  NVXCU_SCANLINE_TOP_LEFT_BOTTOM_RIGHT = 1 << 1,
  NVXCU_SCANLINE_TOP_BOTTOM = 1 << 2,
  NVXCU_SCANLINE_TOP_RIGHT_BOTTOM_LEFT = 1 << 3,
  NVXCU_SCANLINE_RIGHT_LEFT = 1 << 4,
  NVXCU_SCANLINE_BOTTOM_RIGHT_TOP_LEFT = 1 << 5,
  NVXCU_SCANLINE_BOTTOM_TOP = 1 << 6,
  NVXCU_SCANLINE_BOTTOM_LEFT_TOP_RIGHT = 1 << 7,
  NVXCU_SCANLINE_CROSS,
  NVXCU_SCANLINE_ALL = 0xFF
}
 Defines scan line's directions used during cost aggregation step. More...
 
enum  nvxcu_sgm_flags_e { NVXCU_SGM_FILTER_TOP_AREA = 1 << 0 }
 Defines extra flags for SGM algorithm. More...
 
enum  nvxcu_termination_criteria_e {
  NVXCU_TERM_CRITERIA_ITERATIONS = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_TERM_CRITERIA) + 0x0,
  NVXCU_TERM_CRITERIA_EPSILON = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_TERM_CRITERIA) + 0x1,
  NVXCU_TERM_CRITERIA_BOTH = NVXCU_ENUM_BASE(0x000, NVXCU_ENUM_TERM_CRITERIA) + 0x2
}
 Defines a termination criteria enumeration. More...
 

Functions

nvxcu_error_status_e nvxcuAbsDiff (const nvxcu_image_t *in1, const nvxcu_image_t *in2, const nvxcu_image_t *out, const nvxcu_exec_target_t *exec_target)
 Computes the absolute difference between two images. More...
 
nvxcu_error_status_e nvxcuAccumulateImage (const nvxcu_image_t *input, const nvxcu_image_t *accum, const nvxcu_exec_target_t *exec_target)
 Accumulates an input image into output image. More...
 
nvxcu_error_status_e nvxcuAccumulateSquare (const nvxcu_image_t *input, uint32_t shift, const nvxcu_image_t *accum, const nvxcu_exec_target_t *exec_target)
 Accumulates a squared value from an input image to an output image. More...
 
nvxcu_error_status_e nvxcuAccumulateWeighted (const nvxcu_image_t *input, float alpha, const nvxcu_image_t *accum, const nvxcu_exec_target_t *exec_target)
 Accumulates a weighted value from an input image to an output image. More...
 
nvxcu_error_status_e nvxcuAdd (const nvxcu_image_t *in1, const nvxcu_image_t *in2, nvxcu_convert_policy_e policy, const nvxcu_image_t *out, const nvxcu_exec_target_t *exec_target)
 Performs addition between two images. More...
 
nvxcu_error_status_e nvxcuBitwiseAnd (const nvxcu_image_t *in1, const nvxcu_image_t *in2, const nvxcu_image_t *out, const nvxcu_exec_target_t *exec_target)
 Performs a bitwise AND operation between two images. More...
 
nvxcu_error_status_e nvxcuBitwiseNot (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_exec_target_t *exec_target)
 Performs a bitwise NOT operation on an input image. More...
 
nvxcu_error_status_e nvxcuBitwiseOr (const nvxcu_image_t *in1, const nvxcu_image_t *in2, const nvxcu_image_t *out, const nvxcu_exec_target_t *exec_target)
 Performs a bitwise OR operation between two images. More...
 
nvxcu_error_status_e nvxcuBitwiseXor (const nvxcu_image_t *in1, const nvxcu_image_t *in2, const nvxcu_image_t *out, const nvxcu_exec_target_t *exec_target)
 Performs a bitwise XOR operation between two images. More...
 
nvxcu_error_status_e nvxcuBox3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Computes a Box filter over a 3x3 window of the input image. More...
 
nvxcu_error_status_e nvxcuCannyEdgeDetector (const nvxcu_image_t *input, int32_t lower_thresh, int32_t upper_thresh, int32_t gradient_size, nvxcu_norm_type_e norm_type, const nvxcu_image_t *output, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Applies Canny edge detector algorithm to the input image. More...
 
nvxcu_tmp_buf_size_t nvxcuCannyEdgeDetector_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, int32_t gradient_size, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuCannyEdgeDetector primitive. More...
 
nvxcu_error_status_e nvxcuChannelCombine (const nvxcu_image_t *plane0, const nvxcu_image_t *plane1, const nvxcu_image_t *plane2, const nvxcu_image_t *plane3, const nvxcu_image_t *output, const nvxcu_exec_target_t *exec_target)
 Combines multiple planes into single multi-channel image. More...
 
nvxcu_error_status_e nvxcuChannelExtract (const nvxcu_image_t *input, nvxcu_channel_e channel, const nvxcu_image_t *output, const nvxcu_exec_target_t *exec_target)
 Extracts single channel from multi-channel image. More...
 
nvxcu_error_status_e nvxcuColorConvert (const nvxcu_image_t *input, const nvxcu_image_t *output, nvxcu_color_space_e color_space, nvxcu_channel_range_e channel_range, const nvxcu_exec_target_t *exec_target)
 Converts from one color format to an other. More...
 
nvxcu_error_status_e nvxcuConvertDepth (const nvxcu_image_t *input, const nvxcu_image_t *output, nvxcu_convert_policy_e policy, int32_t shift, const nvxcu_exec_target_t *exec_target)
 Converts image bit depth. More...
 
nvxcu_error_status_e nvxcuConvolve (const nvxcu_image_t *input, const int16_t *kernel_dev_ptr, uint32_t kernel_div, int32_t kernel_width, int32_t kernel_height, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Convolves the input with the client supplied convolution matrix. More...
 
nvxcu_tmp_buf_size_t nvxcuConvolve_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e input_format, int32_t kernel_width, int32_t kernel_height, nvxcu_df_image_e output_format, const nvxcu_border_t *border, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuConvolve primitive. More...
 
nvxcu_error_status_e nvxcuCreateMotionField (const nvxcu_image_t *ref_image, const nvxcu_image_t *cur_image, const nvxcu_image_t *anchor, const nvxcu_image_t *bias, const nvxcu_image_t *best_mv0, const nvxcu_image_t *best_mv1, const nvxcu_image_t *sad_table, int32_t block_size, int32_t search_window_width, int32_t search_window_height, float bias_weight, int32_t mv_div_factor, const nvxcu_exec_target_t *exec_target)
 Creates initial motion field from a current image into reference image. More...
 
nvxcu_error_status_e nvxcuDilate3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Performs dilation operation on an input image. More...
 
nvxcu_error_status_e nvxcuEqualizeHist (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Equalizes the histogram of a grayscale image. More...
 
nvxcu_tmp_buf_size_t nvxcuEqualizeHist_GetBufSize (uint32_t input_width, uint32_t input_height, nvxcu_df_image_e input_format, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuEqualizeHist primitive. More...
 
nvxcu_error_status_e nvxcuErode3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Performs erosion operation on an input image. More...
 
nvxcu_error_status_e nvxcuFastCorners (const nvxcu_image_t *input, float strength_thresh, int32_t nonmax_suppression, const nvxcu_array_t *corners, uint32_t *num_corners_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Computes the corners in an image using a method based upon FAST9 algorithm. More...
 
nvxcu_tmp_buf_size_t nvxcuFastCorners_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, int32_t nonmax_suppression, nvxcu_array_item_type_e arr_type, uint32_t arr_capacity, const nvxcu_border_t *border, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuFastCorners primitive. More...
 
nvxcu_error_status_e nvxcuFastTrack (const nvxcu_image_t *input, const nvxcu_array_t *output, const nvxcu_image_t *mask, const nvxcu_array_t *tracked_points, uint32_t type, uint32_t threshold, uint32_t cell_size, size_t *num_corners_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Detects and tracks corners using the FAST algorithm. More...
 
nvxcu_tmp_buf_size_t nvxcuFastTrack_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, nvxcu_array_item_type_e arr_type, uint32_t arr_capacity, uint32_t cell_size, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuFastTrack primitive. More...
 
nvxcu_error_status_e nvxcuFlipImage (const nvxcu_image_t *input, const nvxcu_image_t *output, nvxcu_flip_mode_e flip_mode, const nvxcu_exec_target_t *exec_target)
 Flips the input image in horizontal, vertical or in both directions. More...
 
nvxcu_error_status_e nvxcuGaussian3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Computes a Gaussian filter over a 3x3 window of the input image. More...
 
nvxcu_error_status_e nvxcuGaussianPyramid (const nvxcu_pyramid_t *pyr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Computes a Gaussian image pyramid from its first level. More...
 
nvxcu_tmp_buf_size_t nvxcuGaussianPyramid_GetBufSize (uint32_t width, uint32_t height, uint32_t num_levels, float scale, const nvxcu_border_t *border, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuGaussianPyramid primitive. More...
 
nvxcu_error_status_e nvxcuHalfScaleGaussian (const nvxcu_image_t *input, const nvxcu_image_t *output, int32_t kernel_size, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Performs a Gaussian Blur on an image then half-scales it. More...
 
nvxcu_error_status_e nvxcuHarrisCorners (const nvxcu_image_t *input, float strength_thresh, float min_distance, float sensitivity, int32_t gradient_size, int32_t block_size, const nvxcu_array_t *corners, uint32_t *num_corners_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Computes the Harris Corners of an image. More...
 
nvxcu_tmp_buf_size_t nvxcuHarrisCorners_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, float min_distance, int32_t gradient_size, int32_t block_size, nvxcu_array_item_type_e arr_type, uint32_t arr_capacity, const nvxcu_border_t *border, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuHarrisCorners primitive. More...
 
nvxcu_error_status_e nvxcuHarrisTrack (const nvxcu_image_t *input, const nvxcu_array_t *output, const nvxcu_image_t *mask, const nvxcu_array_t *tracked_points, float k, float threshold, uint32_t cell_size, size_t *num_corners_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Detects and tracks Harris corners for the input image. More...
 
nvxcu_tmp_buf_size_t nvxcuHarrisTrack_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, nvxcu_array_item_type_e arr_type, uint32_t arr_capacity, uint32_t cell_size, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuHarrisTrack primitive. More...
 
nvxcu_error_status_e nvxcuHistogram (const nvxcu_image_t *input, uint32_t *distribution_dev_ptr, uint32_t offset, uint32_t range, uint32_t num_bins, uint32_t window_size, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Generates a distribution from an image. More...
 
nvxcu_tmp_buf_size_t nvxcuHistogram_GetBufSize (uint32_t input_width, uint32_t input_height, nvxcu_df_image_e input_format, uint32_t offset, uint32_t range, uint32_t num_bins, uint32_t window_size, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuHistogram primitive. More...
 
nvxcu_error_status_e nvxcuHoughCircles (const nvxcu_image_t *edges, const nvxcu_image_t *dx, const nvxcu_image_t *dy, const nvxcu_array_t *circles, uint32_t *num_detections_dev_ptr, float dp, float min_dist, uint32_t min_radius, uint32_t max_radius, uint32_t acc_threshold, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Detects circles in a binary image. More...
 
nvxcu_tmp_buf_size_t nvxcuHoughCircles_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, uint32_t arr_capacity, float dp, float min_dist, uint32_t min_radius, uint32_t max_radius, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuHoughCircles primitive. More...
 
nvxcu_error_status_e nvxcuHoughLines (const nvxcu_image_t *input, const nvxcu_array_t *output, float rho, float theta, uint32_t threshold, uint32_t *num_lines_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Finds lines on image using standard Hough transform. More...
 
nvxcu_tmp_buf_size_t nvxcuHoughLines_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, uint32_t arr_capacity, float rho, float theta, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuHoughLines primitive. More...
 
nvxcu_error_status_e nvxcuHoughSegments (const nvxcu_image_t *input, const nvxcu_array_t *output, float rho, float theta, uint32_t threshold, uint32_t min_line_length, uint32_t max_line_gap, uint32_t *num_segments_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Finds line segments in a binary image using the probabilistic Hough transform. More...
 
nvxcu_tmp_buf_size_t nvxcuHoughSegments_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, uint32_t arr_capacity, float rho, float theta, uint32_t min_line_length, uint32_t max_line_gap, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuHoughSegments primitive. More...
 
nvxcu_error_status_e nvxcuIntegralImage (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_exec_target_t *exec_target)
 Computes the integral image of the input. More...
 
nvxcu_error_status_e nvxcuLaplacian3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Applies a 3x3 Laplacian operator to the input image. More...
 
nvxcu_error_status_e nvxcuMagnitude (const nvxcu_image_t *grad_x, const nvxcu_image_t *grad_y, const nvxcu_image_t *mag, const nvxcu_exec_target_t *exec_target)
 Computes the gradient magnitude. More...
 
nvxcu_error_status_e nvxcuMeanStdDev (const nvxcu_image_t *input, float *mean_dev_ptr, float *stddev_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Computes the mean pixel value and the standard deviation of the pixels in the input image. More...
 
nvxcu_tmp_buf_size_t nvxcuMeanStdDev_GetBufSize (uint32_t input_width, uint32_t input_height, nvxcu_df_image_e input_format, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuMeanStdDev primitive. More...
 
nvxcu_error_status_e nvxcuMedian3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Computes a median pixel value over a 3x3 window of the input image. More...
 
nvxcu_error_status_e nvxcuMinMaxLoc (const nvxcu_image_t *input, void *min_val_dev_ptr, void *max_val_dev_ptr, const nvxcu_array_t *min_loc, const nvxcu_array_t *max_loc, uint32_t *min_count_dev_ptr, uint32_t *max_count_dev_ptr, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Finds the minimum and maximum values in an image and a location for each. More...
 
nvxcu_tmp_buf_size_t nvxcuMinMaxLoc_GetBufSize (uint32_t input_width, uint32_t input_height, nvxcu_df_image_e input_format, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuMinMaxLoc primitive. More...
 
nvxcu_error_status_e nvxcuMultiply (const nvxcu_image_t *in1, const nvxcu_image_t *in2, float scale, nvxcu_convert_policy_e overflow_policy, nvxcu_round_policy_e rounding_policy, const nvxcu_image_t *out, const nvxcu_exec_target_t *exec_target)
 Performs element-wise multiplication between two images and a scalar value. More...
 
nvxcu_error_status_e nvxcuMultiplyByScalar (const nvxcu_image_t *src, const nvxcu_image_t *dst, float alpha, const nvxcu_exec_target_t *exec_target)
 Multiplies an input image by scalar and optionally converts it to another data type. More...
 
nvxcu_error_status_e nvxcuOpticalFlowPyrLK (const nvxcu_pyramid_t *old_images, const nvxcu_pyramid_t *new_images, const nvxcu_array_t *old_points, const nvxcu_array_t *new_points, nvxcu_termination_criteria_e termination, float epsilon, uint32_t num_iterations, uint32_t window_dimension, int32_t calcError, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Computes the optical flow between two pyramid images using the Lucas-Kanade method. More...
 
nvxcu_tmp_buf_size_t nvxcuOpticalFlowPyrLK_GetBufSize (uint32_t width, uint32_t height, uint32_t levels, float scale, nvxcu_array_item_type_e arr_type, uint32_t capacity, uint32_t window_dimension, int32_t calcError, const nvxcu_border_t *border, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuOpticalFlowPyrLK primitive. More...
 
nvxcu_error_status_e nvxcuPartitionMotionField (const nvxcu_image_t *ref_image, const nvxcu_image_t *cur_image, const nvxcu_image_t *in_mv_0, const nvxcu_image_t *in_mv_1, const nvxcu_image_t *out_mv_0, const nvxcu_image_t *out_mv_1, float smoothness_factor, int32_t mv_div_factor, const nvxcu_exec_target_t *exec_target)
 Partitions motion vector field for blocks onto motion vector field into quarter sized blocks (half size in each dimension). More...
 
nvxcu_error_status_e nvxcuPhase (const nvxcu_image_t *grad_x, const nvxcu_image_t *grad_y, const nvxcu_image_t *orientation, const nvxcu_exec_target_t *exec_target)
 Computes the gradient phase. More...
 
nvxcu_error_status_e nvxcuRefineMotionField (const nvxcu_image_t *in_mv0, const nvxcu_image_t *in_mv1, const nvxcu_image_t *sad_table, const nvxcu_image_t *out_mv0, const nvxcu_image_t *out_mv1, int32_t search_window_width, int32_t search_window_height, int32_t num_iterations, float smoothness_factor, int32_t mv_div_factor, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Iteratively refines motion field by applying the motion vectors to a center block in a 3x3 block neighborhood. More...
 
nvxcu_tmp_buf_size_t nvxcuRefineMotionField_GetBufSize (uint32_t mv_width, uint32_t mv_height, int32_t search_window_width, int32_t search_window_height, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuRefineMotionField primitive. More...
 
nvxcu_error_status_e nvxcuRemap (const nvxcu_image_t *input, const nvxcu_image_t *table, nvxcu_interpolation_type_e policy, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Maps output pixels in an image from input pixels in an image. More...
 
nvxcu_error_status_e nvxcuScaleImage (const nvxcu_image_t *src, const nvxcu_image_t *dst, nvxcu_interpolation_type_e type, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Resizes an input image from source to the destination dimensions. More...
 
nvxcu_error_status_e nvxcuScharr3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output_x, const nvxcu_image_t *output_y, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Calculates derivatives from an input image using 3x3 Scharr operator. More...
 
nvxcu_error_status_e nvxcuSemiGlobalMatching (const nvxcu_image_t *left, const nvxcu_image_t *right, const nvxcu_image_t *disparity, int32_t minD, int32_t maxD, int32_t P1, int32_t P2, int32_t sad, int32_t clip, int32_t max_diff, int32_t uniqueness, nvxcu_scanline_e scanlines_mask, nvxcu_sgm_flags_e flags, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Evaluates disparity given 2 stereo images using the SGM algorithm. More...
 
nvxcu_tmp_buf_size_t nvxcuSemiGlobalMatching_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, int32_t minD, int32_t maxD, int32_t sad, nvxcu_sgm_flags_e flags, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuSemiGlobalMatching primitive. More...
 
nvxcu_error_status_e nvxcuSobel3x3 (const nvxcu_image_t *input, const nvxcu_image_t *output_x, const nvxcu_image_t *output_y, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Calculates derivatives from an input image using 3x3 Sobel operator. More...
 
nvxcu_error_status_e nvxcuStereoBlockMatching (const nvxcu_image_t *left, const nvxcu_image_t *right, const nvxcu_image_t *disp, uint32_t win_size, uint32_t max_disparity, const nvxcu_tmp_buf_t *tmp_buf, const nvxcu_exec_target_t *exec_target)
 Computes a dense disparity map for a given stereo pair. More...
 
nvxcu_tmp_buf_size_t nvxcuStereoBlockMatching_GetBufSize (uint32_t width, uint32_t height, nvxcu_df_image_e format, uint32_t win_size, uint32_t max_disparity, const struct cudaDeviceProp *prop)
 Determine the size of CUDA Device and HOST memory that must be passed to the nvxcuStereoBlockMatching primitive. More...
 
nvxcu_error_status_e nvxcuSubtract (const nvxcu_image_t *in1, const nvxcu_image_t *in2, nvxcu_convert_policy_e policy, const nvxcu_image_t *out, const nvxcu_exec_target_t *exec_target)
 Performs subtraction between two images. More...
 
nvxcu_error_status_e nvxcuTableLookup (const nvxcu_image_t *input, const uint8_t *lut_dev_ptr, uint32_t lut_count, const nvxcu_image_t *output, const nvxcu_exec_target_t *exec_target)
 Performs table lookup operation on an input image. More...
 
nvxcu_error_status_e nvxcuThresholdBinary (const nvxcu_image_t *input, nvxcu_pixel_value_t thresh_value, nvxcu_pixel_value_t true_value, nvxcu_pixel_value_t false_value, const nvxcu_image_t *output, const nvxcu_exec_target_t *exec_target)
 Thresholds an input image and produces a boolean output image. More...
 
nvxcu_error_status_e nvxcuThresholdRange (const nvxcu_image_t *input, nvxcu_pixel_value_t thresh_lower_value, nvxcu_pixel_value_t thresh_upper_value, nvxcu_pixel_value_t true_value, nvxcu_pixel_value_t false_value, const nvxcu_image_t *output, const nvxcu_exec_target_t *exec_target)
 Thresholds an input image and produces a boolean output image. More...
 
nvxcu_error_status_e nvxcuWarpAffine (const nvxcu_image_t *input, const float *matrix_dev_ptr, nvxcu_interpolation_type_e type, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Performs an affine transform on an image. More...
 
nvxcu_error_status_e nvxcuWarpPerspective (const nvxcu_image_t *input, const float *matrix_dev_ptr, nvxcu_interpolation_type_e type, const nvxcu_image_t *output, const nvxcu_border_t *border, const nvxcu_exec_target_t *exec_target)
 Performs an perspective transform on an image. More...