User:Level zero/GSOC13/api
From BRL-CAD
Contents
API CALLS
Group1
- for bwrect, pixrect
void icv_rect(icv_image_file_t *img, icv_image_file_t *img_out, icv_point_t *area, icv_point_t *orig);
- for bwcrop
void icv_crop(icv_image_file_t *img, icv_image_file_t *img_out, icv_size_t *outsize, icv_point_t *p1, icv_point_t *p2, icv_point_t *p3, icv_point_t *p4);
Group2
- for bwdiff, pixdiff
void icv_oper2(icv_image_file_t* img1, icv_image_file_t* img2, icv_image_file_t *img_out, icv_operation *opr)
- for bwmod
void icv_oper1(icv_image_file* img, icv_image_file_t *img_out, icv_operation_t *oper[], int numop);
- for Pixsaturate
void icv_saturate(icv_image_file_t *img, icv_image_file_t *img_out, double saturation);
Group3
- for bwfilter, pixfilter, pix3filter, pixfade
void icv_filter(icv_image_file_t *img, icv_image_file_t *img_out, int kernel);
Group4
- for bwhist, pixhist
void icv_hist(icv_image_file_t *img, long *bin1, long *bin2, long *bin3);
- for bwhisteq
void icv_histeq(icv_image_file_t *img, icv_imgage_file_t *out);
Group5
- for bwscale, pixscale
void icv_histeq(icv_image_file_t *img, icv_image_file_t *img_out, icv_size_t *size, int method);
- for bwshrink, pixshrink
void icv_shrink(icv_image_file_t *img, icv_image_file_t* img_out, icv_size_t *size, int factor, int method);
Group6
- for imgdims, pixcount
Not useful
- for pixstat, bwstat
void icv_stat(icv_image_file_t *img, icv_stat_t *stat1, icv_stat_t *stat2, icv_stat_t *stat3);
- for pixcolors
void icv_colors(icv_image_file_t *img) /* Prints all the colors */
Group7
- for bwthresh
void icv_threshold(icv_image_file_t *img, icv_image_file_t *img_out, unsigned char *val,
int num_thresh);
- for pixclump
void icv_clump()
/* Need Suggestions */
Group8
- for pixinterep2x
void icv_interep2x(icv_image_file_t *img, icv_image_file_t *img_out);
- for pixhalve
void icv_halve(icv_image_file_t *img, icv_image_file_t *img_out int autosize );
Structure
- ICV_IMAGE_FILE
struct icv_image_file { uint_32 magic; char* filename; int fd; int format; int width, height, depth; unsigned char *data; unisgned long flags; }
- ICV_SIZE
struct icv_size { int height, width; }
- ICV_POINT
struct icv_point { int x,y; }
- ICV_OPERATION
struct icv_operation { char oper; double val; }
- ICV_KERNEL
struct icv_kernel { char *name; char *uname; /* What is needed to recognize it */ int kern[9]; int kerndiv; /* Divisor for kernel */ int kernoffset; /* To be added to result */ }
- ICV_STAT
struct icv_stat {
long bin[256]; int max, min, mode, median; double mean, var, skew; long sum, partial_sum;
}