This document contains the most recent listing of all functions available to CVIPtools developers. The functions are grouped by class and library. There are two classes of libraries within CVIPtools -- Toolkit and Toolbox.
The Toolkit libraries contain low-level functions, such as data handling and memory management. The Toolbox libraries contain the functions that are typically used by CVIPlab programmers, such as transforms or segmentation routines. This organization is a hierarchical grouping of libraries in which each class successively builds upon the previous class by using the lower-level functions to create higher-level functions. For more detailed information on a particular function see the associated UNIX manual page.
LIBBAND - data handling of multi-spectral images
assemble_bands - assembles multiband image from single band images
bandcast - cast image data to greater precision
bandcopy - copy band data
band_minmax - find the min and max values of each band
extract_band - extracts one band from a multiband image
matalloc - allocate an array of matrices
matfree - free memory allocated by matalloc
vecalloc - allocate an array of vectors
vecfree - free memory allocated by vecalloc
LIBIMAGE - basic image class methods for type conversion, memory management, etc. (Note: see $CVIPHOME/include/CVIPimage.h for the get and set macros, such as getData_Image)
cast_Image - cast an image
delete_Image - Image class destructor
dump_Image - print image information
duplicate_Image - create a new instance of an existing image
getBand_Image - reference a band of matrix data
getBandVector_Image - unload image bands into a vector
getColorSpace_Image - get color space of image (e.g. RGB, GRAY,etc.)
getDataFormat_Image - get data format (i.e. REAL or COMPLEX)
getDataType_Image - get data type of image (e.g. BYTE, FLOAT,etc.)
getData_Image - returns pointer to data (macro in CVIPimage.h)
getFileFormat_Image - get file format of image (e.g. PPM, PGM,etc.)
getImagPixel_Image - read an imaginary pixel sample from the image
getImagRow_Image - reference an imaginary row of the image
getNoOfBands_Image - get number of data bands of image
getNoOfCols_Image - get width of image
getNoOfRows_Image - get height of image
getPixel_Image - same as "getRealPixel_Image"
getRealPixel_Image - read a real pixel sample from the image
getRealRow_Image - reference a real row of the image
getRow_Image - same as "getRealRow_Image"
makeComplex_Image - make real image complex
makeReal_Image - make complex image real
new_Image - Image class constructor
setBand_Image - add a new reference to a band of matrix data
setImagPixel_Image - write an imaginary pixel sample to the image
setPixel_Image - same as "setRealPixel_Image"
setRealPixel_Image - write a real pixel sample to the image data
history_add - add info to image history structure
history_check - check if an operation has been done on an image
history_copy - copies information from old_story
history_get - get info about an operation done on an image
history_show - setup routine for history print
history_print - performs output of history structure to h_story
LIBIO - general purpose I/O, memory management routines
allocMatrix3D_CVIP - allocate memory for volume matrix
allocMatrix_CVIP - allocate memory for regular matrix
close_CVIP - close a file for reading or writing
error_CVIP - print error message to terminal
freeMatrix3D_CVIP - free memory associated with volume matrix
freeMatrix_CVIP - free memory associated with regular matrix
getFloat_CVIP - get floating point value from the user
getInt_CVIP - get integer value from user
getString_CVIP - get character string
getUInt_CVIP - get unsigned integer value from user
init_CVIP - parse standard info. from command line
msg_CVIP - print regular message to terminal
openRead_CVIP - open a file for reading (handles "stdin")
openWrite_CVIP - open a file for writing (handles "stdout")
perror_CVIP - print system error message to terminal
print_CVIP - same as "msg_CVIP" minus extra argument
quiet_CVIP - turn off messaging
usage_CVIP - print usage message
verbose_CVIP - turn on messaging
LIBMANAGER - object managers/handlers
addhead_DLL - add link to head of list
addnext_DLL - add link following the current link
addtail_DLL - add link to tail of list
delete_DLL - double Linked List class destructor
find_DLL - find a particular object in the list
head_DLL - set current link to head of list
isempty_DLL - is the list empty?
ishead_DLL - is current link pointing to head?
istail_DLL - is current link pointing to tail?
new_DLL - double Linked List class constructor
next_DLL - point to next link
previous_DLL - point to previous link
print_DLL - print list
print_reverse_DLL - print list in reverse order
promote_DLL - promote current link to head of list
removecurr_DLL - remove current link
removehead_DLL - remove link from head of list
removetail_DLL - remove link from tail of list
replace_DLL - replace object pointed to be current link
retrieve_DLL - retrieve object pointed to by current link
size_DLL - get size of list (number of links)
tail_DLL - set current link to tail of list
addhead_LL - add link to head of list
addnext_LL - add link following the current link
delete_LL - linked list class destructor
find_LL - find a particular object in the list
head_LL - set current link to head of list
isempty_LL - is the list empty?
ishead_LL - is current link pointing to head?
istail_LL - is current link pointing to tail?
new_LL - linked list class constructor
next_LL - point to next link
previous_LL - point to previous link
print_LL - print list
promote_LL - promote current link to head of list
removehead_LL - remove head link
removenext_LL - remove next link
replace_LL - replace object pointed to be current link
retrieve_LL - retrieve object pointed to by current link
size_LL - return size of list
tail_LL - set current link to tail of list
addobject_HT - add object using separate chaining technique
delete_HT - hash table class destructor
findobject_HT - find object
new_HT - hash table class constructor
setkey_HT - set the hash table key
isempty_Stack - determine whether a stack is empty
new_Stack - create a new instance of an object stack
pop_Stack - pop on object off of the stack
push_Stack - push an object onto the stack
LIBMAP - image data mapping functions
condRemap_Image - if the range is 0-255 no remap is done, if it exceeds this range it is linearly remapped to 0-255
linearTrans_Image - perform linear mapping of an image through a transformation matrix
logMap_Image - map image data logarithmically for better display of FFT-transformed images
remap_Image - map image data into a specified range
trun_Image - remap image data, maintain relative size of each data band
LIBMATRIX - matrix algebra, manipulation and numerical analysis routines (Note: see $CVIPHOME/include/CVIPmatrix.h for the get and set macros, such as getData_Matrix)
add_Matrix - add two matrices
and_Matrix - perform a bitwise AND on two matrices
cbrt_Matrix - finds cube root of a matrix (real/complex)
clone_Matrix - returns a new matrix
conj_Matrix - find complex conjugate of matrix
copy_Matrix - copy matrix a to matrix b
covariance_Matrix - find the covariance estimate of N data bands
crop_Matrix - create a new matrix from region of original
delete_Matrix - Matrix class destructor
det_Matrix - find the determinant of a matrix
duplicate_Matrix - create new instance of an existing matrix
eigenSystem_Matrix - find the eigenvectors of a matrix
fastCopy_Matrix - faster copy if data types are the same
getDataFormat_Matrix - get data format (i.e. REAL or COMPLEX)
getData_Matrix - same as "getRealData_Matrix"
getDataType_Matrix - get data type of matrix (e.g. BYTE, FLOAT,etc.)
getImagData_Matrix - reference imaginary data (mapped into rows)
getImagRow_Matrix - get row of imaginary row
getImagVal_Matrix - get an "imaginary" matrix element
getNoOfCols_Matrix - get number of columns in matrix
getNoOfRows_Matrix - get number of rows in matrix
getRealData_Matrix - reference real data (mapped into rows)
getRealRow_Matrix - get row of real data
getRealVal_Matrix - get a "real" matrix element
getRow_Matrix - same as "getRealRow_Matrix"
getVal_Matrix - same as "getRealVal_Matrix"
invert_Matrix - invert a matrix
mag_Matrix - find magnitude of a matrix (real/complex)
makeComplex_Matrix - make real matrix complex
makeReal_Matrix - make complex matrix real
mult_Matrix - perform vector multiplication of two matrices
multPWise_Matrix - perform piece-wise multiplication
new_Matrix - Matrix class constructor
print_Matrix - print contents of matrix in row major form
read_Matrix - read a matrix structure from disk
rect2pol_Matrix - convert from rectangular to polar coordinates
scale_Matrix - scale a matrix by some factor
setImagVal_Matrix - set an "imaginary" matrix element
setRealVal_Matrix - set a "real" matrix element
setVal_Matrix - same as "setRealVal_Matrix"
sqrt_Matrix - find square root of matrix (real/complex)
square_mag_Matrix - find maganitude squared of a matrix (real/complex)
sub_Matrix - subtract two matrices
transpose_Matrix - find the transpose of a matrix
write_Matrix - write a matrix structure to disk
LIBOBJECT - object analysis and identification routines
build_ChainCode - find the chain-code "contour" of an object
delete_ChainCode - delete an instance of a chain code object
delete_Object - object class destructor
drawBB_Objects - draw a bounding box around all objects
draw_ChainCode - draw the contour of an object onto an image using the object's chain code
fill_Object - perform seed fill operation on an object
getProp_Object - find object moment properties
getProp_Objects - find moment properties of multiple objects
getXY_ChainCode - turn a chain code into a list of X-Y coordinates
label_Objects - sequentially label objects
listToVector_Objects - create an object vector from an object list
match_Object - match an object
new_ChainCode - create a new instance of a chain code object
new_Object - object class constructor
print_ChainCode - print the chain code results to a file
printLabel_Objects - print an object list to a file
print_Object - print object statistics to file
printProp_Objects - print a list of object properties to a file
read_ChainCode - read a chain code from a file
readLabel_Objects - read an object list from a file
read_Object - read object statistics from disk
readProp_Objects - read a list of object properties from a file
report_ChainCode - print out the chain code values
trimList_Objects - trim an object list based on properties
LIBROI - region/area of interest designation, manipulation of an image
asgnFullImage_ROI - assign ROI as full image dimension
asgnImage_ROI - assign a ROI to an image
delete_ROI - ROI class destructor
getDataFormat_ROI - get data format of ROI
getDataType_ROI - get data type of ROI
getHorOffset_ROI - get horizontal offset from pixel (0,0)
getHorSize_ROI - get height/horizontal size of region
getImagPixel_ROI - get/read imaginary pixel sample from ROI
getImagRow_ROI - reference imaginary row from the ROI
getNoOfBands_ROI - get number of data bands in ROI
getNoOfCols_ROI - same as "getHorSize_ROI"
getNoOfRows_ROI - same as "getVerSize_ROI"
getPixel_ROI - same as "getRealPixel_ROI"
getRealPixel_RO - get/read real pixel sample from ROI
getRealRow_ROI - reference real row from the ROI
getRow_ROI - same as "getRealRow_ROI"
getVerOffset_ROI - get vertical offset from pixel (0,0)
getVerSize_ROI - get width/vertical size of region
loadRow_ROI - load data from a buffer into ROI
new_ROI - ROI class constructor
setImagPixel_RO - set/write imaginary pixel sample to ROI
setPixel_ROI - same as "setRealPixel_ROI"
setRealPixel_ROI - set/write real pixel sample to ROI
unloadRow_ROI - unload row of data from ROI into buffer
LIBVECTOR - vector algebra and manipulation routines
band2pixel_Vector - convert a band vector to a pixel vector
convolve_Vector - convolve two vectors
copy_Vector - copy vector a to vector b
findHisto_Vector - find the histogram of a vector
findMaxVal_Vector - return maximum value in vector
findMinVal_Vector - return minimum value in vector
normalize_Vector - normalize a vector between 0 and 1
pixel2band_Vector - convert a pixel vector to a band vector
printHisto_Vector - print histogram values out to a file
subSample_Vector - sub-sample a list of vector points
LIBARITHLOGIC - arithmetic and logical operations on images
add_Image - add two images
and_Image - perform a logical AND on two images
divide_Image - divide one image by another
multiply_Image - multiply two images
not_Image - perform a logical NOT on an image
or_Image - perform a logical OR on two images
subtract_Image - subtract one image from another
xor_Image - perform a logical XOR on two images
LIBCOLOR - color map utilities and color transforms
colorxform - performs seven color transforms, and inverse transforms
ipct - peforms the inverse principal components transform
luminance_Image - performs color to luminance transform
lum_average - performs color to monchrome using average of all bands
pct - peforms the principal components transform in RGB-space
pct_color - handles both forward and inverse PCT
pseudocol_freq - pseudocolor transform using FFT spectrum and filters
LIBCOMPRESS - image compression/data reduction routines
bit_compress - decomposes grey level image into eight bit planes. Each bitplane is then run-length encoded and stored in a binary file
bit_decompress - decompresses each binary file (corresponding to a particular bit plane) into corresponding binary images
bit_planeadd - decompresses bitplane files and add any combinations of bitplanes to produce the resultant graylevel image.
btc_compress - compress the image in 4*4 blocks, store it in a binary file
btc_decompress - decompress the image from the encoded binary file
btc2_decompress - decompress multilevel BTC encoded image
btc3_decompress - decompress predictive BTC encoded image
btc2_compress - multilevel block truncation coding (BTC) image compression
btc3_compress - predictive BTC compression
dpc_compress - differential predictive coding compression
dpc_decompress - differential predictive coding decompression
glr_compress - performs graylevel runlength coding for any window length specified by the user (window range 1-125)
glr_decompress - perform graylevel runlength decoding from the encoded binary file
huf_compress - perform huffman coding and store the probability table and encoded data into a binary file
huf_decompress - perform huffman decoding from the encoded binary file
jpg_compress - perform JPEG compression
jpg_decompress - perform JPEG decompression
rms_error - find the root-mean-squared error between two images
snr - find the peak signal-to-noise ratio between two images
zvl_compress - Ziv-Lempel compression
display_RAMImage - to display an image in X-windows from the CVIPtools image queue directly
getDisplay_Image - get the program (viewer) used to display images
setDisplay_Image - set the program (viewer) used to display images
view_Image - general purpose image view function
LIBFEATURE - feature extraction functions
area - find area of binary object (number of pixels)