|
|
Line 109: |
Line 109: |
| ===DeviceProperties=== | | ===DeviceProperties=== |
| CuviDeviceProperties holds all the important matrices regarding underlying CUDA device | | CuviDeviceProperties holds all the important matrices regarding underlying CUDA device |
| *cuviGetDeviceCount() - gives the number of devices in machine | | *cuviGetDeviceCount() - Gives the count of devices in installed in the machine |
| *cuviGetCurrentDeviceID() - returns the ID of selected graphics card | | *cuviGetCurrentDeviceID() - Returns the ID of selected graphics card |
| *cuviSetCurrentDevice() - Makes any device, an active device | | *cuviSetCurrentDevice() - Makes any device an active device |
| *cuviResetCurrentDevice() -
| | *cuviGetDeviceProperties() - Returns all the important properties of desired GPU |
| *cuviGetDeviceProperties() - Returns all the important device properties | |
| |} | | |} |
| |} | | |} |
| <!-- CUVI Core Ends--> | | <!-- CUVI Core Ends--> |
Revision as of 18:47, 3 May 2012
This page provides a list of all the functionality available in the latest release of CUVI Library.
Modules
CUVI comes in following image processing modules.
Function List
- Add - Adds two images
- Adjust - Equivalent to MATLAB's imadjust
- AND - Logical Bitwise AND
- BitConversion - Converts image pixel values from one data type to another
- BorderMask - Masks image borders with custom intensity
- ChannelMerge - Merges R, G and B Channel to form a color image
- ChannelSplit - Splits a three channel image into R, G and B channels
- Color2Gray - Converts an RGB image to gray scale using custom transform coefficients.
- ColorTwist - Applies a color twist matrix to an image
- CountInRange - Counts the number of pixels within the given intensity range
- Crop - Crops the desired portion of an image
- Demosaic - Restores an RGB image from a gray-scale Bayer image
- Divide - Divides pixel values of two image buffers
- DWT - Performs forward discrete wavelet transform
- EigenValsVecs - Calculates eigen values and eigen vectors at each pixel in an image
- Flip - Mirrors an image about a horizontal or vertical axis, or both
- GoodFeaturesToTrack - selects N best points on a image using KLT or Harris
- HistEq - Performs histogram equalization
- IDWT - Performs inverse discrete wavelet transform
- ImageBinary - Converts input image into a binary image based on threshold
- ImageGradients - Calculates X and Y gradients of image
- ImageFilter - Performs linear 1D and 2D image filtering
- Max - Computes the maximum of image pixel values
- MaxFilter - Filters an image using a max filter
- MaxIndx - Computes the maximum of image pixel values, and retrieves the coordinates of pixels with maximal intensity values
- Mean - Computes the mean of image pixel values
- MeanStdDev - Computes the mean and standard deviation of image pixel values
- Min - Computes the minimum of image pixel values
- MinEigenVal - Calculates the minimum eigen value at each pixel in an image
|
- MinFilter - Filters an image using a min filter
- MinIndx - Computes the minimum of image pixel values, and retrieves the coordinates of pixels with minimal intensity values
- MinMax - Computes the minimum and maximum of image pixel values
- MinMaxIndx - Calculates minimum and maximum pixel values and their indexes
- Multiply - Multiplies pixel values of two image buffers
- NOT - Performs a bitwise NOT operation on each pixel
- OpticalFlowHS - Calculates flow of each image pixel in two frames using Horn–Schunck method
- OpticalFlowPyrLK - Calculates flow of each image pixel or input pixel list in two frames using pyramidal Lucas–Kanade method
- OR - Combines corresponding pixels of two image buffers by a bitwise OR operation
- Resize - Resizes input image using linear-interpolation
- RGB2Gray - Converts an RGB image to gray scale using fixed transform coefficients.
- RGB2YUV - Convert RGB image to YUV color model
- RGBA2Gray - Converts an RGBA image to gray scale using fixed transform
- Rotate - Rotates an image with the origin (0,0) or center
- Subtract - Subtracts pixel values of two image buffers
- Sum - Computes the sum of image pixel values
- TrackFeatures - Tracks input features from frame 1 onto frame 2 using KLT method
- Transpose - Takes Transpose of the image
- XOR - Combines corresponding pixels of two image buffers by a bitwise XOR operation
- YUV2RGB - Convert YUV color model to an RGB image
|
CUVI Core
CUVI Core includes the following helper functionality:
CuviImage
A C++ class to hold image data on the device. It has the following methods
- CuviImage(); - default constructor
- CuviImage(CuviSize size, Cuvi32u depth, Cuvi32u channels) - Main Constructor. throws exception in case of failure
- CuviImage(const CuviImage&) - copy constructor
- CuviImage(const CuviMat&) - copy constructor to initialize from CuviMat
- Upload(void* pSrcHost, size_t srcPitch, CuviStream* stream = NULL) - Copy image data from host to device. Async operation supported
- Download(void* pDstHost, size_t dstPitch, CuviStream* stream = NULL) - Copy image data from device to host
- Show(char* title = "CUVI Image",int milliseconds = 0) - Render device image directly on the screen
- ~CuviImage() - Destructor. Frees Device Memory. throws exception in case of failure
|
CuviMat
A C structure to hold image data on the device. It has the following functions
- cuviCreateMat(CuviMat** mat, CuviSize size, Cuvi32u depth, Cuvi32u channels) - Allocates device memory to CuviMat
- cuviCloneMat(CuviMat** dstMat, CuviMat* srcMat, int copyData) - Creates an exact copy of a CuviMat, with optionally copying data
- cuviUploadData(CuviMat* dstMat, void* pSrcHost, size_t srcPitch, CuviStream* stream) - Copy data from host to CuviMat and supports async operation
- cuviDownloadData(CuviMat* srcMat, void* pDstHost, size_t dstPitch, CuviStream* stream) - Copy data from device back to host
- cuviDestroyMat(CuviImage** mat) - Frees device memory from CuviMat object
- cuviShowMat(char* title, CuviMat* mat, int milliseconds) - Renders a CuviMat directly on the screen for specified time
Timer
CUVI provides a C++ Timer class that accurately profiles your application timing
- Start() - Starts the timer.
- Stop() - Stops the timer
- Reset() - Resets the timer
- GetElapsedTime() - Returns the elapsed time between Start and Stop calls in microseconds
|
DeviceProperties
CuviDeviceProperties holds all the important matrices regarding underlying CUDA device
- cuviGetDeviceCount() - Gives the count of devices in installed in the machine
- cuviGetCurrentDeviceID() - Returns the ID of selected graphics card
- cuviSetCurrentDevice() - Makes any device an active device
- cuviGetDeviceProperties() - Returns all the important properties of desired GPU
|
|