OpenCV
3.3.1
Open Source Computer Vision
|
Classes | |
struct | CvChainPtReader |
struct | CvConnectedComp |
struct | CvConvexityDefect |
struct | CvFont |
struct | CvHuMoments |
struct | CvMoments |
Macros | |
#define | CV_AA 16 |
#define | CV_FILLED -1 |
#define | CV_FONT_HERSHEY_COMPLEX 3 |
#define | CV_FONT_HERSHEY_COMPLEX_SMALL 5 |
#define | CV_FONT_HERSHEY_DUPLEX 2 |
#define | CV_FONT_HERSHEY_PLAIN 1 |
#define | CV_FONT_HERSHEY_SCRIPT_COMPLEX 7 |
#define | CV_FONT_HERSHEY_SCRIPT_SIMPLEX 6 |
#define | CV_FONT_HERSHEY_SIMPLEX 0 |
#define | CV_FONT_HERSHEY_TRIPLEX 4 |
#define | CV_FONT_ITALIC 16 |
#define | CV_FONT_VECTOR0 CV_FONT_HERSHEY_SIMPLEX |
#define | CV_INIT_3X3_DELTAS(deltas, step, nch) |
#define | CV_NEXT_LINE_POINT(line_iterator) |
#define | CV_RGB(r, g, b) cvScalar( (b), (g), (r), 0 ) |
#define | cvCalcBackProject(image, dst, hist) cvCalcArrBackProject((CvArr**)image, dst, hist) |
#define | cvCalcBackProjectPatch(image, dst, range, hist, method, factor) cvCalcArrBackProjectPatch( (CvArr**)image, dst, range, hist, method, factor ) |
#define | cvDrawCircle cvCircle |
#define | cvDrawEllipse cvEllipse |
#define | cvDrawLine cvLine |
#define | cvDrawPolyLine cvPolyLine |
#define | cvDrawRect cvRectangle |
Typedefs | |
typedef struct _CvContourScanner * | CvContourScanner |
typedef float(* | CvDistanceFunction) (const float *a, const float *b, void *user_param) |
Functions | |
CvMat * | cv2DRotationMatrix (CvPoint2D32f center, double angle, double scale, CvMat *map_matrix) |
Computes rotation_matrix matrix. More... | |
void | cvAcc (const CvArr *image, CvArr *sum, const CvArr *mask=NULL) |
Adds image to accumulator. More... | |
void | cvAdaptiveThreshold (const CvArr *src, CvArr *dst, double max_value, int adaptive_method=CV_ADAPTIVE_THRESH_MEAN_C, int threshold_type=CV_THRESH_BINARY, int block_size=3, double param1=5) |
Applies adaptive threshold to grayscale image. More... | |
CvSeq * | cvApproxChains (CvSeq *src_seq, CvMemStorage *storage, int method=CV_CHAIN_APPROX_SIMPLE, double parameter=0, int minimal_perimeter=0, int recursive=0) |
Approximates Freeman chain(s) with a polygonal curve. More... | |
CvSeq * | cvApproxPoly (const void *src_seq, int header_size, CvMemStorage *storage, int method, double eps, int recursive=0) |
Approximates a single polygonal curve (contour) or a tree of polygonal curves (contours) More... | |
double | cvArcLength (const void *curve, CvSlice slice=CV_WHOLE_SEQ, int is_closed=-1) |
Calculates perimeter of a contour or length of a part of contour. More... | |
CvRect | cvBoundingRect (CvArr *points, int update=0) |
Calculates contour bounding rectangle (update=1) or just retrieves pre-calculated rectangle (update=0) More... | |
void | cvBoxPoints (CvBox2D box, CvPoint2D32f pt[4]) |
Finds coordinates of the box vertices. More... | |
void | cvCalcArrBackProject (CvArr **image, CvArr *dst, const CvHistogram *hist) |
Calculates back project. More... | |
void | cvCalcArrBackProjectPatch (CvArr **image, CvArr *dst, CvSize range, CvHistogram *hist, int method, double factor) |
Locates a template within an image by using a histogram comparison. More... | |
void | cvCalcArrHist (CvArr **arr, CvHistogram *hist, int accumulate=0, const CvArr *mask=NULL) |
Calculates array histogram. More... | |
void | cvCalcBayesianProb (CvHistogram **src, int number, CvHistogram **dst) |
Calculates bayesian probabilistic histograms (each or src and dst is an array of number histograms. More... | |
float | cvCalcEMD2 (const CvArr *signature1, const CvArr *signature2, int distance_type, CvDistanceFunction distance_func=NULL, const CvArr *cost_matrix=NULL, CvArr *flow=NULL, float *lower_bound=NULL, void *userdata=NULL) |
Computes earth mover distance between two weighted point sets (called signatures) More... | |
void | cvCalcHist (IplImage **image, CvHistogram *hist, int accumulate=0, const CvArr *mask=NULL) |
void | cvCalcProbDensity (const CvHistogram *hist1, const CvHistogram *hist2, CvHistogram *dst_hist, double scale=255) |
Divides one histogram by another. More... | |
void | cvCanny (const CvArr *image, CvArr *edges, double threshold1, double threshold2, int aperture_size=3) |
Runs canny edge detector. More... | |
int | cvCheckContourConvexity (const CvArr *contour) |
Checks whether the contour is convex or not (returns 1 if convex, 0 if not) More... | |
void | cvCircle (CvArr *img, CvPoint center, int radius, CvScalar color, int thickness=1, int line_type=8, int shift=0) |
Draws a circle with specified center and radius. More... | |
void | cvClearHist (CvHistogram *hist) |
Clears the histogram. More... | |
int | cvClipLine (CvSize img_size, CvPoint *pt1, CvPoint *pt2) |
Clips the line segment connecting *pt1 and *pt2 by the rectangular window. More... | |
CvScalar | cvColorToScalar (double packed_color, int arrtype) |
Unpacks color value. More... | |
double | cvCompareHist (const CvHistogram *hist1, const CvHistogram *hist2, int method) |
double | cvContourArea (const CvArr *contour, CvSlice slice=CV_WHOLE_SEQ, int oriented=0) |
Calculates area of a contour or contour segment. More... | |
double | cvContourPerimeter (const void *contour) |
void | cvConvertMaps (const CvArr *mapx, const CvArr *mapy, CvArr *mapxy, CvArr *mapalpha) |
Converts mapx & mapy from floating-point to integer formats for cvRemap. More... | |
CvSeq * | cvConvexHull2 (const CvArr *input, void *hull_storage=NULL, int orientation=CV_CLOCKWISE, int return_points=0) |
Calculates exact convex hull of 2d point set. More... | |
CvSeq * | cvConvexityDefects (const CvArr *contour, const CvArr *convexhull, CvMemStorage *storage=NULL) |
Finds convexity defects for the contour. More... | |
void | cvCopyHist (const CvHistogram *src, CvHistogram **dst) |
Copies a histogram. More... | |
void | cvCopyMakeBorder (const CvArr *src, CvArr *dst, CvPoint offset, int bordertype, CvScalar value=cvScalarAll(0)) |
void | cvCornerEigenValsAndVecs (const CvArr *image, CvArr *eigenvv, int block_size, int aperture_size=3) |
Calculates eigen values and vectors of 2x2 gradient covariation matrix at every image pixel. More... | |
void | cvCornerHarris (const CvArr *image, CvArr *harris_response, int block_size, int aperture_size=3, double k=0.04) |
Harris corner detector: More... | |
void | cvCornerMinEigenVal (const CvArr *image, CvArr *eigenval, int block_size, int aperture_size=3) |
Calculates minimal eigenvalue for 2x2 gradient covariation matrix at every image pixel. More... | |
CvHistogram * | cvCreateHist (int dims, int *sizes, int type, float **ranges=NULL, int uniform=1) |
Creates a histogram. More... | |
CvMat ** | cvCreatePyramid (const CvArr *img, int extra_layers, double rate, const CvSize *layer_sizes=0, CvArr *bufarr=0, int calc=1, int filter=CV_GAUSSIAN_5x5) |
Builds pyramid for an image. More... | |
IplConvKernel * | cvCreateStructuringElementEx (int cols, int rows, int anchor_x, int anchor_y, int shape, int *values=NULL) |
Returns a structuring element of the specified size and shape for morphological operations. More... | |
void | cvCvtColor (const CvArr *src, CvArr *dst, int code) |
Converts input array pixels from one color space to another. More... | |
void | cvDilate (const CvArr *src, CvArr *dst, IplConvKernel *element=NULL, int iterations=1) |
dilates input image (applies maximum filter) one or more times. More... | |
void | cvDistTransform (const CvArr *src, CvArr *dst, int distance_type=CV_DIST_L2, int mask_size=3, const float *mask=NULL, CvArr *labels=NULL, int labelType=CV_DIST_LABEL_CCOMP) |
Applies distance transform to binary image. More... | |
void | cvDrawContours (CvArr *img, CvSeq *contour, CvScalar external_color, CvScalar hole_color, int max_level, int thickness=1, int line_type=8, CvPoint offset=cvPoint(0, 0)) |
Draws contour outlines or filled interiors on the image. More... | |
void | cvEllipse (CvArr *img, CvPoint center, CvSize axes, double angle, double start_angle, double end_angle, CvScalar color, int thickness=1, int line_type=8, int shift=0) |
Draws ellipse outline, filled ellipse, elliptic arc or filled elliptic sector. More... | |
int | cvEllipse2Poly (CvPoint center, CvSize axes, int angle, int arc_start, int arc_end, CvPoint *pts, int delta) |
Returns the polygon points which make up the given ellipse. More... | |
void | cvEllipseBox (CvArr *img, CvBox2D box, CvScalar color, int thickness=1, int line_type=8, int shift=0) |
CvSeq * | cvEndFindContours (CvContourScanner *scanner) |
Releases contour scanner and returns pointer to the first outer contour. More... | |
void | cvEqualizeHist (const CvArr *src, CvArr *dst) |
equalizes histogram of 8-bit single-channel image More... | |
void | cvErode (const CvArr *src, CvArr *dst, IplConvKernel *element=NULL, int iterations=1) |
erodes input image (applies minimum filter) one or more times. If element pointer is NULL, 3x3 rectangular element is used More... | |
void | cvFillConvexPoly (CvArr *img, const CvPoint *pts, int npts, CvScalar color, int line_type=8, int shift=0) |
Fills convex or monotonous polygon. More... | |
void | cvFillPoly (CvArr *img, CvPoint **pts, const int *npts, int contours, CvScalar color, int line_type=8, int shift=0) |
Fills an area bounded by one or more arbitrary polygons. More... | |
void | cvFilter2D (const CvArr *src, CvArr *dst, const CvMat *kernel, CvPoint anchor=cvPoint(-1,-1)) |
Convolves an image with the kernel. More... | |
int | cvFindContours (CvArr *image, CvMemStorage *storage, CvSeq **first_contour, int header_size=sizeof(CvContour), int mode=CV_RETR_LIST, int method=CV_CHAIN_APPROX_SIMPLE, CvPoint offset=cvPoint(0, 0)) |
Retrieves outer and optionally inner boundaries of white (non-zero) connected components in the black (zero) background. More... | |
void | cvFindCornerSubPix (const CvArr *image, CvPoint2D32f *corners, int count, CvSize win, CvSize zero_zone, CvTermCriteria criteria) |
Adjust corner position using some sort of gradient search. More... | |
CvSeq * | cvFindNextContour (CvContourScanner scanner) |
Retrieves next contour. More... | |
CvBox2D | cvFitEllipse2 (const CvArr *points) |
Fits ellipse into a set of 2d points. More... | |
void | cvFitLine (const CvArr *points, int dist_type, double param, double reps, double aeps, float *line) |
Fits a line into set of 2d or 3d points in a robust way (M-estimator technique) More... | |
void | cvFloodFill (CvArr *image, CvPoint seed_point, CvScalar new_val, CvScalar lo_diff=cvScalarAll(0), CvScalar up_diff=cvScalarAll(0), CvConnectedComp *comp=NULL, int flags=4, CvArr *mask=NULL) |
Fills the connected component until the color difference gets large enough. More... | |
CvFont | cvFont (double scale, int thickness=1) |
CvMat * | cvGetAffineTransform (const CvPoint2D32f *src, const CvPoint2D32f *dst, CvMat *map_matrix) |
Computes affine transform matrix for mapping src[i] to dst[i] (i=0,1,2) More... | |
double | cvGetCentralMoment (CvMoments *moments, int x_order, int y_order) |
Retrieve central moments. More... | |
void | cvGetHuMoments (CvMoments *moments, CvHuMoments *hu_moments) |
Calculates 7 Hu's invariants from precalculated spatial and central moments. More... | |
void | cvGetMinMaxHistValue (const CvHistogram *hist, float *min_value, float *max_value, int *min_idx=NULL, int *max_idx=NULL) |
Finds the minimum and maximum histogram bins. More... | |
double | cvGetNormalizedCentralMoment (CvMoments *moments, int x_order, int y_order) |
Retrieve normalized central moments. More... | |
CvMat * | cvGetPerspectiveTransform (const CvPoint2D32f *src, const CvPoint2D32f *dst, CvMat *map_matrix) |
Computes perspective transform matrix for mapping src[i] to dst[i] (i=0,1,2,3) More... | |
void | cvGetQuadrangleSubPix (const CvArr *src, CvArr *dst, const CvMat *map_matrix) |
Retrieves quadrangle from the input array. More... | |
void | cvGetRectSubPix (const CvArr *src, CvArr *dst, CvPoint2D32f center) |
Retrieves the rectangular image region with specified center from the input array. More... | |
double | cvGetSpatialMoment (CvMoments *moments, int x_order, int y_order) |
Retrieve spatial moments. More... | |
void | cvGetTextSize (const char *text_string, const CvFont *font, CvSize *text_size, int *baseline) |
Calculates bounding box of text stroke (useful for alignment) More... | |
void | cvGoodFeaturesToTrack (const CvArr *image, CvArr *eig_image, CvArr *temp_image, CvPoint2D32f *corners, int *corner_count, double quality_level, double min_distance, const CvArr *mask=NULL, int block_size=3, int use_harris=0, double k=0.04) |
Finds a sparse set of points within the selected region that seem to be easy to track. More... | |
CvSeq * | cvHoughCircles (CvArr *image, void *circle_storage, int method, double dp, double min_dist, double param1=100, double param2=100, int min_radius=0, int max_radius=0) |
Finds circles in the image. More... | |
CvSeq * | cvHoughLines2 (CvArr *image, void *line_storage, int method, double rho, double theta, int threshold, double param1=0, double param2=0, double min_theta=0, double max_theta=CV_PI) |
Finds lines on binary image using one of several methods. More... | |
void | cvInitFont (CvFont *font, int font_face, double hscale, double vscale, double shear=0, int thickness=1, int line_type=8) |
Initializes font structure (OpenCV 1.x API). More... | |
int | cvInitLineIterator (const CvArr *image, CvPoint pt1, CvPoint pt2, CvLineIterator *line_iterator, int connectivity=8, int left_to_right=0) |
Initializes line iterator. More... | |
void | cvInitUndistortMap (const CvMat *camera_matrix, const CvMat *distortion_coeffs, CvArr *mapx, CvArr *mapy) |
Computes transformation map from intrinsic camera parameters that can used by cvRemap. More... | |
void | cvInitUndistortRectifyMap (const CvMat *camera_matrix, const CvMat *dist_coeffs, const CvMat *R, const CvMat *new_camera_matrix, CvArr *mapx, CvArr *mapy) |
Computes undistortion+rectification map for a head of stereo camera. More... | |
void | cvIntegral (const CvArr *image, CvArr *sum, CvArr *sqsum=NULL, CvArr *tilted_sum=NULL) |
Finds integral image: SUM(X,Y) = sum(x<X,y<Y)I(x,y) More... | |
void | cvLaplace (const CvArr *src, CvArr *dst, int aperture_size=3) |
Calculates the image Laplacian: (d2/dx + d2/dy)I. More... | |
void | cvLine (CvArr *img, CvPoint pt1, CvPoint pt2, CvScalar color, int thickness=1, int line_type=8, int shift=0) |
Draws 4-connected, 8-connected or antialiased line segment connecting two points. More... | |
void | cvLinearPolar (const CvArr *src, CvArr *dst, CvPoint2D32f center, double maxRadius, int flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS) |
void | cvLogPolar (const CvArr *src, CvArr *dst, CvPoint2D32f center, double M, int flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS) |
Performs forward or inverse log-polar image transform. More... | |
CvHistogram * | cvMakeHistHeaderForArray (int dims, int *sizes, CvHistogram *hist, float *data, float **ranges=NULL, int uniform=1) |
Makes a histogram out of an array. More... | |
double | cvMatchShapes (const void *object1, const void *object2, int method, double parameter=0) |
Compares two contours by matching their moments. More... | |
void | cvMatchTemplate (const CvArr *image, const CvArr *templ, CvArr *result, int method) |
Measures similarity between template and overlapped windows in the source image and fills the resultant image with the measurements. More... | |
CvRect | cvMaxRect (const CvRect *rect1, const CvRect *rect2) |
Finds minimum rectangle containing two given rectangles. More... | |
CvBox2D | cvMinAreaRect2 (const CvArr *points, CvMemStorage *storage=NULL) |
Finds minimum area rotated rectangle bounding a set of points. More... | |
int | cvMinEnclosingCircle (const CvArr *points, CvPoint2D32f *center, float *radius) |
Finds minimum enclosing circle for a set of points. More... | |
void | cvMoments (const CvArr *arr, CvMoments *moments, int binary=0) |
Calculates all spatial and central moments up to the 3rd order. More... | |
void | cvMorphologyEx (const CvArr *src, CvArr *dst, CvArr *temp, IplConvKernel *element, int operation, int iterations=1) |
Performs complex morphological transformation. More... | |
void | cvMultiplyAcc (const CvArr *image1, const CvArr *image2, CvArr *acc, const CvArr *mask=NULL) |
Adds a product of two images to accumulator. More... | |
void | cvNormalizeHist (CvHistogram *hist, double factor) |
Normalizes the histogram. More... | |
double | cvPointPolygonTest (const CvArr *contour, CvPoint2D32f pt, int measure_dist) |
Checks whether the point is inside polygon, outside, on an edge (at a vertex). More... | |
CvSeq * | cvPointSeqFromMat (int seq_kind, const CvArr *mat, CvContour *contour_header, CvSeqBlock *block) |
Initializes sequence header for a matrix (column or row vector) of points. More... | |
void | cvPolyLine (CvArr *img, CvPoint **pts, const int *npts, int contours, int is_closed, CvScalar color, int thickness=1, int line_type=8, int shift=0) |
Draws one or more polygonal curves. More... | |
void | cvPreCornerDetect (const CvArr *image, CvArr *corners, int aperture_size=3) |
Calculates constraint image for corner detection. More... | |
void | cvPutText (CvArr *img, const char *text, CvPoint org, const CvFont *font, CvScalar color) |
Renders text stroke with specified font and color at specified location. CvFont should be initialized with cvInitFont. More... | |
void | cvPyrDown (const CvArr *src, CvArr *dst, int filter=CV_GAUSSIAN_5x5) |
Smoothes the input image with gaussian kernel and then down-samples it. More... | |
void | cvPyrMeanShiftFiltering (const CvArr *src, CvArr *dst, double sp, double sr, int max_level=1, CvTermCriteria termcrit=cvTermCriteria(CV_TERMCRIT_ITER+CV_TERMCRIT_EPS, 5, 1)) |
Filters image using meanshift algorithm. More... | |
void | cvPyrUp (const CvArr *src, CvArr *dst, int filter=CV_GAUSSIAN_5x5) |
Up-samples image and smoothes the result with gaussian kernel. More... | |
CvPoint | cvReadChainPoint (CvChainPtReader *reader) |
Retrieves the next chain point. More... | |
void | cvRectangle (CvArr *img, CvPoint pt1, CvPoint pt2, CvScalar color, int thickness=1, int line_type=8, int shift=0) |
Draws a rectangle given two opposite corners of the rectangle (pt1 & pt2) More... | |
void | cvRectangleR (CvArr *img, CvRect r, CvScalar color, int thickness=1, int line_type=8, int shift=0) |
Draws a rectangle specified by a CvRect structure. More... | |
void | cvReleaseHist (CvHistogram **hist) |
Releases the histogram. More... | |
void | cvReleasePyramid (CvMat ***pyramid, int extra_layers) |
Releases pyramid. More... | |
void | cvReleaseStructuringElement (IplConvKernel **element) |
releases structuring element More... | |
void | cvRemap (const CvArr *src, CvArr *dst, const CvArr *mapx, const CvArr *mapy, int flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS, CvScalar fillval=cvScalarAll(0)) |
Performs generic geometric transformation using the specified coordinate maps. More... | |
void | cvResize (const CvArr *src, CvArr *dst, int interpolation=CV_INTER_LINEAR) |
Resizes image (input array is resized to fit the destination array) More... | |
void | cvRunningAvg (const CvArr *image, CvArr *acc, double alpha, const CvArr *mask=NULL) |
Adds image to accumulator with weights: acc = acc*(1-alpha) + image*alpha. More... | |
int | cvSampleLine (const CvArr *image, CvPoint pt1, CvPoint pt2, void *buffer, int connectivity=8) |
Fetches pixels that belong to the specified line segment and stores them to the buffer. More... | |
void | cvSetHistBinRanges (CvHistogram *hist, float **ranges, int uniform=1) |
Sets the bounds of the histogram bins. More... | |
void | cvSmooth (const CvArr *src, CvArr *dst, int smoothtype=CV_GAUSSIAN, int size1=3, int size2=0, double sigma1=0, double sigma2=0) |
Smooths the image in one of several ways. More... | |
void | cvSobel (const CvArr *src, CvArr *dst, int xorder, int yorder, int aperture_size=3) |
Calculates an image derivative using generalized Sobel. More... | |
void | cvSquareAcc (const CvArr *image, CvArr *sqsum, const CvArr *mask=NULL) |
Adds squared image to accumulator. More... | |
CvContourScanner | cvStartFindContours (CvArr *image, CvMemStorage *storage, int header_size=sizeof(CvContour), int mode=CV_RETR_LIST, int method=CV_CHAIN_APPROX_SIMPLE, CvPoint offset=cvPoint(0, 0)) |
Initializes contour retrieving process. More... | |
void | cvStartReadChainPoints (CvChain *chain, CvChainPtReader *reader) |
Initializes Freeman chain reader. More... | |
void | cvSubstituteContour (CvContourScanner scanner, CvSeq *new_contour) |
Substitutes the last retrieved contour with the new one. More... | |
void | cvThreshHist (CvHistogram *hist, double threshold) |
Thresholds the histogram. More... | |
double | cvThreshold (const CvArr *src, CvArr *dst, double threshold, double max_value, int threshold_type) |
Applies fixed-level threshold to grayscale image. More... | |
void | cvUndistort2 (const CvArr *src, CvArr *dst, const CvMat *camera_matrix, const CvMat *distortion_coeffs, const CvMat *new_camera_matrix=0) |
Transforms the input image to compensate lens distortion. More... | |
void | cvUndistortPoints (const CvMat *src, CvMat *dst, const CvMat *camera_matrix, const CvMat *dist_coeffs, const CvMat *R=0, const CvMat *P=0) |
Computes the original (undistorted) feature coordinates from the observed (distorted) coordinates. More... | |
void | cvWarpAffine (const CvArr *src, CvArr *dst, const CvMat *map_matrix, int flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS, CvScalar fillval=cvScalarAll(0)) |
Warps image with affine transform. More... | |
void | cvWarpPerspective (const CvArr *src, CvArr *dst, const CvMat *map_matrix, int flags=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS, CvScalar fillval=cvScalarAll(0)) |
Warps image with perspective (projective) transform. More... | |
void | cvWatershed (const CvArr *image, CvArr *markers) |
Segments image using seed "markers". More... | |
#define CV_AA 16 |
#define CV_FILLED -1 |
#define CV_FONT_HERSHEY_COMPLEX 3 |
#define CV_FONT_HERSHEY_COMPLEX_SMALL 5 |
#define CV_FONT_HERSHEY_DUPLEX 2 |
#define CV_FONT_HERSHEY_PLAIN 1 |
#define CV_FONT_HERSHEY_SCRIPT_COMPLEX 7 |
#define CV_FONT_HERSHEY_SCRIPT_SIMPLEX 6 |
#define CV_FONT_HERSHEY_SIMPLEX 0 |
#define CV_FONT_HERSHEY_TRIPLEX 4 |
#define CV_FONT_ITALIC 16 |
#define CV_FONT_VECTOR0 CV_FONT_HERSHEY_SIMPLEX |
#define CV_INIT_3X3_DELTAS | ( | deltas, | |
step, | |||
nch | |||
) |
initializes 8-element array for fast access to 3x3 neighborhood of a pixel
#define CV_NEXT_LINE_POINT | ( | line_iterator | ) |
#define CV_RGB | ( | r, | |
g, | |||
b | |||
) | cvScalar( (b), (g), (r), 0 ) |
#define cvCalcBackProject | ( | image, | |
dst, | |||
hist | |||
) | cvCalcArrBackProject((CvArr**)image, dst, hist) |
#define cvCalcBackProjectPatch | ( | image, | |
dst, | |||
range, | |||
hist, | |||
method, | |||
factor | |||
) | cvCalcArrBackProjectPatch( (CvArr**)image, dst, range, hist, method, factor ) |
#define cvDrawCircle cvCircle |
#define cvDrawEllipse cvEllipse |
#define cvDrawLine cvLine |
#define cvDrawPolyLine cvPolyLine |
#define cvDrawRect cvRectangle |
typedef struct _CvContourScanner* CvContourScanner |
typedef float( * CvDistanceFunction) (const float *a, const float *b, void *user_param) |
anonymous enum |
Constants for color conversion
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
Shape matching methods
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
Distance types for Distance Transform and M-estimators
anonymous enum |
Threshold types
anonymous enum |
anonymous enum |
enum MorphShapes_c |
Shapes of a structuring element for morphological operations
Enumerator | |
---|---|
CV_SHAPE_RECT | |
CV_SHAPE_CROSS | |
CV_SHAPE_ELLIPSE | |
CV_SHAPE_CUSTOM | custom structuring element |
enum SmoothMethod_c |
Image smooth methods
Enumerator | |
---|---|
CV_BLUR_NO_SCALE | linear convolution with \(\texttt{size1}\times\texttt{size2}\) box kernel (all 1's). If you want to smooth different pixels with different-size box kernels, you can use the integral image that is computed using integral |
CV_BLUR | linear convolution with \(\texttt{size1}\times\texttt{size2}\) box kernel (all 1's) with subsequent scaling by \(1/(\texttt{size1}\cdot\texttt{size2})\) |
CV_GAUSSIAN | linear convolution with a \(\texttt{size1}\times\texttt{size2}\) Gaussian kernel |
CV_MEDIAN | median filter with a \(\texttt{size1}\times\texttt{size1}\) square aperture |
CV_BILATERAL | bilateral filter with a \(\texttt{size1}\times\texttt{size1}\) square aperture, color sigma= sigma1 and spatial sigma= sigma2. If size1=0, the aperture square side is set to cvRound(sigma2*1.5)*2+1. See cv::bilateralFilter |
CvMat* cv2DRotationMatrix | ( | CvPoint2D32f | center, |
double | angle, | ||
double | scale, | ||
CvMat * | map_matrix | ||
) |
Computes rotation_matrix matrix.
Adds image to accumulator.
void cvAdaptiveThreshold | ( | const CvArr * | src, |
CvArr * | dst, | ||
double | max_value, | ||
int | adaptive_method = CV_ADAPTIVE_THRESH_MEAN_C , |
||
int | threshold_type = CV_THRESH_BINARY , |
||
int | block_size = 3 , |
||
double | param1 = 5 |
||
) |
Applies adaptive threshold to grayscale image.
The two parameters for methods CV_ADAPTIVE_THRESH_MEAN_C and CV_ADAPTIVE_THRESH_GAUSSIAN_C are: neighborhood size (3, 5, 7 etc.), and a constant subtracted from mean (...,-3,-2,-1,0,1,2,3,...)
CvSeq* cvApproxChains | ( | CvSeq * | src_seq, |
CvMemStorage * | storage, | ||
int | method = CV_CHAIN_APPROX_SIMPLE , |
||
double | parameter = 0 , |
||
int | minimal_perimeter = 0 , |
||
int | recursive = 0 |
||
) |
Approximates Freeman chain(s) with a polygonal curve.
This is a standalone contour approximation routine, not represented in the new interface. When cvFindContours retrieves contours as Freeman chains, it calls the function to get approximated contours, represented as polygons.
src_seq | Pointer to the approximated Freeman chain that can refer to other chains. |
storage | Storage location for the resulting polylines. |
method | Approximation method (see the description of the function :ocvFindContours ). |
parameter | Method parameter (not used now). |
minimal_perimeter | Approximates only those contours whose perimeters are not less than minimal_perimeter . Other chains are removed from the resulting structure. |
recursive | Recursion flag. If it is non-zero, the function approximates all chains that can be obtained from chain by using the h_next or v_next links. Otherwise, the single input chain is approximated. |
CvSeq* cvApproxPoly | ( | const void * | src_seq, |
int | header_size, | ||
CvMemStorage * | storage, | ||
int | method, | ||
double | eps, | ||
int | recursive = 0 |
||
) |
Approximates a single polygonal curve (contour) or a tree of polygonal curves (contours)
double cvArcLength | ( | const void * | curve, |
CvSlice | slice = CV_WHOLE_SEQ , |
||
int | is_closed = -1 |
||
) |
Calculates perimeter of a contour or length of a part of contour.
Calculates contour bounding rectangle (update=1) or just retrieves pre-calculated rectangle (update=0)
void cvBoxPoints | ( | CvBox2D | box, |
CvPoint2D32f | pt[4] | ||
) |
Finds coordinates of the box vertices.
void cvCalcArrBackProject | ( | CvArr ** | image, |
CvArr * | dst, | ||
const CvHistogram * | hist | ||
) |
Calculates back project.
void cvCalcArrBackProjectPatch | ( | CvArr ** | image, |
CvArr * | dst, | ||
CvSize | range, | ||
CvHistogram * | hist, | ||
int | method, | ||
double | factor | ||
) |
Locates a template within an image by using a histogram comparison.
The function calculates the back projection by comparing histograms of the source image patches with the given histogram. The function is similar to matchTemplate, but instead of comparing the raster patch with all its possible positions within the search window, the function CalcBackProjectPatch compares histograms. See the algorithm diagram below:
image | Source images (though, you may pass CvMat** as well). |
dst | Destination image. |
range | |
hist | Histogram. |
method | Comparison method passed to cvCompareHist (see the function description). |
factor | Normalization factor for histograms that affects the normalization scale of the destination image. Pass 1 if not sure. |
void cvCalcArrHist | ( | CvArr ** | arr, |
CvHistogram * | hist, | ||
int | accumulate = 0 , |
||
const CvArr * | mask = NULL |
||
) |
Calculates array histogram.
void cvCalcBayesianProb | ( | CvHistogram ** | src, |
int | number, | ||
CvHistogram ** | dst | ||
) |
Calculates bayesian probabilistic histograms (each or src and dst is an array of number histograms.
float cvCalcEMD2 | ( | const CvArr * | signature1, |
const CvArr * | signature2, | ||
int | distance_type, | ||
CvDistanceFunction | distance_func = NULL , |
||
const CvArr * | cost_matrix = NULL , |
||
CvArr * | flow = NULL , |
||
float * | lower_bound = NULL , |
||
void * | userdata = NULL |
||
) |
Computes earth mover distance between two weighted point sets (called signatures)
void cvCalcHist | ( | IplImage ** | image, |
CvHistogram * | hist, | ||
int | accumulate = 0 , |
||
const CvArr * | mask = NULL |
||
) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void cvCalcProbDensity | ( | const CvHistogram * | hist1, |
const CvHistogram * | hist2, | ||
CvHistogram * | dst_hist, | ||
double | scale = 255 |
||
) |
Divides one histogram by another.
The function calculates the object probability density from two histograms as:
\[\texttt{disthist} (I)= \forkthree{0}{if \(\texttt{hist1}(I)=0\)}{\texttt{scale}}{if \(\texttt{hist1}(I) \ne 0\) and \(\texttt{hist2}(I) > \texttt{hist1}(I)\)}{\frac{\texttt{hist2}(I) \cdot \texttt{scale}}{\texttt{hist1}(I)}}{if \(\texttt{hist1}(I) \ne 0\) and \(\texttt{hist2}(I) \le \texttt{hist1}(I)\)}\]
hist1 | First histogram (the divisor). |
hist2 | Second histogram. |
dst_hist | Destination histogram. |
scale | Scale factor for the destination histogram. |
void cvCanny | ( | const CvArr * | image, |
CvArr * | edges, | ||
double | threshold1, | ||
double | threshold2, | ||
int | aperture_size = 3 |
||
) |
Runs canny edge detector.
int cvCheckContourConvexity | ( | const CvArr * | contour | ) |
Checks whether the contour is convex or not (returns 1 if convex, 0 if not)
void cvCircle | ( | CvArr * | img, |
CvPoint | center, | ||
int | radius, | ||
CvScalar | color, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Draws a circle with specified center and radius.
Thickness works in the same way as with cvRectangle
void cvClearHist | ( | CvHistogram * | hist | ) |
Clears the histogram.
The function sets all of the histogram bins to 0 in case of a dense histogram and removes all histogram bins in case of a sparse array.
hist | Histogram. |
Clips the line segment connecting *pt1 and *pt2 by the rectangular window.
(0<=x<img_size.width, 0<=y<img_size.height).
CvScalar cvColorToScalar | ( | double | packed_color, |
int | arrtype | ||
) |
Unpacks color value.
if arrtype is CV_8UC?, color is treated as packed color value, otherwise the first channels (depending on arrtype) of destination scalar are set to the same value = color
double cvCompareHist | ( | const CvHistogram * | hist1, |
const CvHistogram * | hist2, | ||
int | method | ||
) |
Compares two histogram
double cvContourArea | ( | const CvArr * | contour, |
CvSlice | slice = CV_WHOLE_SEQ , |
||
int | oriented = 0 |
||
) |
Calculates area of a contour or contour segment.
double cvContourPerimeter | ( | const void * | contour | ) |
same as cvArcLength for closed contour
Converts mapx & mapy from floating-point to integer formats for cvRemap.
CvSeq* cvConvexHull2 | ( | const CvArr * | input, |
void * | hull_storage = NULL , |
||
int | orientation = CV_CLOCKWISE , |
||
int | return_points = 0 |
||
) |
Calculates exact convex hull of 2d point set.
CvSeq* cvConvexityDefects | ( | const CvArr * | contour, |
const CvArr * | convexhull, | ||
CvMemStorage * | storage = NULL |
||
) |
Finds convexity defects for the contour.
void cvCopyHist | ( | const CvHistogram * | src, |
CvHistogram ** | dst | ||
) |
Copies a histogram.
The function makes a copy of the histogram. If the second histogram pointer *dst is NULL, a new histogram of the same size as src is created. Otherwise, both histograms must have equal types and sizes. Then the function copies the bin values of the source histogram to the destination histogram and sets the same bin value ranges as in src.
src | Source histogram. |
dst | Pointer to the destination histogram. |
void cvCopyMakeBorder | ( | const CvArr * | src, |
CvArr * | dst, | ||
CvPoint | offset, | ||
int | bordertype, | ||
CvScalar | value = cvScalarAll(0) |
||
) |
Copies source 2D array inside of the larger destination array and makes a border of the specified type (IPL_BORDER_*) around the copied area.
void cvCornerEigenValsAndVecs | ( | const CvArr * | image, |
CvArr * | eigenvv, | ||
int | block_size, | ||
int | aperture_size = 3 |
||
) |
Calculates eigen values and vectors of 2x2 gradient covariation matrix at every image pixel.
void cvCornerHarris | ( | const CvArr * | image, |
CvArr * | harris_response, | ||
int | block_size, | ||
int | aperture_size = 3 , |
||
double | k = 0.04 |
||
) |
Harris corner detector:
Calculates det(M) - k*(trace(M)^2), where M is 2x2 gradient covariation matrix for each pixel
void cvCornerMinEigenVal | ( | const CvArr * | image, |
CvArr * | eigenval, | ||
int | block_size, | ||
int | aperture_size = 3 |
||
) |
Calculates minimal eigenvalue for 2x2 gradient covariation matrix at every image pixel.
CvHistogram* cvCreateHist | ( | int | dims, |
int * | sizes, | ||
int | type, | ||
float ** | ranges = NULL , |
||
int | uniform = 1 |
||
) |
Creates a histogram.
The function creates a histogram of the specified size and returns a pointer to the created histogram. If the array ranges is 0, the histogram bin ranges must be specified later via the function cvSetHistBinRanges. Though cvCalcHist and cvCalcBackProject may process 8-bit images without setting bin ranges, they assume they are equally spaced in 0 to 255 bins.
dims | Number of histogram dimensions. |
sizes | Array of the histogram dimension sizes. |
type | Histogram representation format. CV_HIST_ARRAY means that the histogram data is represented as a multi-dimensional dense array CvMatND. CV_HIST_SPARSE means that histogram data is represented as a multi-dimensional sparse array CvSparseMat. |
ranges | Array of ranges for the histogram bins. Its meaning depends on the uniform parameter value. The ranges are used when the histogram is calculated or backprojected to determine which histogram bin corresponds to which value/tuple of values from the input image(s). |
uniform | Uniformity flag. If not zero, the histogram has evenly spaced bins and for every \(0<=i<cDims\) ranges[i] is an array of two numbers: lower and upper boundaries for the i-th histogram dimension. The whole range [lower,upper] is then split into dims[i] equal parts to determine the i-th input tuple value ranges for every histogram bin. And if uniform=0 , then the i-th element of the ranges array contains dims[i]+1 elements: \(\texttt{lower}_0, \texttt{upper}_0, \texttt{lower}_1, \texttt{upper}_1 = \texttt{lower}_2, ... \texttt{upper}_{dims[i]-1}\) where \(\texttt{lower}_j\) and \(\texttt{upper}_j\) are lower and upper boundaries of the i-th input tuple value for the j-th bin, respectively. In either case, the input values that are beyond the specified range for a histogram bin are not counted by cvCalcHist and filled with 0 by cvCalcBackProject. |
CvMat** cvCreatePyramid | ( | const CvArr * | img, |
int | extra_layers, | ||
double | rate, | ||
const CvSize * | layer_sizes = 0 , |
||
CvArr * | bufarr = 0 , |
||
int | calc = 1 , |
||
int | filter = CV_GAUSSIAN_5x5 |
||
) |
Builds pyramid for an image.
IplConvKernel* cvCreateStructuringElementEx | ( | int | cols, |
int | rows, | ||
int | anchor_x, | ||
int | anchor_y, | ||
int | shape, | ||
int * | values = NULL |
||
) |
Returns a structuring element of the specified size and shape for morphological operations.
cvReleaseStructuringElement(&element)
.cols | Width of the structuring element |
rows | Height of the structuring element |
anchor_x | x-coordinate of the anchor |
anchor_y | y-coordinate of the anchor |
shape | element shape that could be one of the cv::MorphShapes_c |
values | integer array of cols*rows elements that specifies the custom shape of the structuring element, when shape=CV_SHAPE_CUSTOM. |
Converts input array pixels from one color space to another.
void cvDilate | ( | const CvArr * | src, |
CvArr * | dst, | ||
IplConvKernel * | element = NULL , |
||
int | iterations = 1 |
||
) |
dilates input image (applies maximum filter) one or more times.
If element pointer is NULL, 3x3 rectangular element is used
void cvDistTransform | ( | const CvArr * | src, |
CvArr * | dst, | ||
int | distance_type = CV_DIST_L2 , |
||
int | mask_size = 3 , |
||
const float * | mask = NULL , |
||
CvArr * | labels = NULL , |
||
int | labelType = CV_DIST_LABEL_CCOMP |
||
) |
Applies distance transform to binary image.
void cvDrawContours | ( | CvArr * | img, |
CvSeq * | contour, | ||
CvScalar | external_color, | ||
CvScalar | hole_color, | ||
int | max_level, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
CvPoint | offset = cvPoint(0, 0) |
||
) |
Draws contour outlines or filled interiors on the image.
void cvEllipse | ( | CvArr * | img, |
CvPoint | center, | ||
CvSize | axes, | ||
double | angle, | ||
double | start_angle, | ||
double | end_angle, | ||
CvScalar | color, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Draws ellipse outline, filled ellipse, elliptic arc or filled elliptic sector.
depending on thickness, start_angle and end_angle parameters. The resultant figure is rotated by angle. All the angles are in degrees
int cvEllipse2Poly | ( | CvPoint | center, |
CvSize | axes, | ||
int | angle, | ||
int | arc_start, | ||
int | arc_end, | ||
CvPoint * | pts, | ||
int | delta | ||
) |
Returns the polygon points which make up the given ellipse.
The ellipse is define by the box of size 'axes' rotated 'angle' around the 'center'. A partial sweep of the ellipse arc can be done by spcifying arc_start and arc_end to be something other than 0 and 360, respectively. The input array 'pts' must be large enough to hold the result. The total number of points stored into 'pts' is returned by this function.
void cvEllipseBox | ( | CvArr * | img, |
CvBox2D | box, | ||
CvScalar | color, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
CvSeq* cvEndFindContours | ( | CvContourScanner * | scanner | ) |
Releases contour scanner and returns pointer to the first outer contour.
equalizes histogram of 8-bit single-channel image
void cvErode | ( | const CvArr * | src, |
CvArr * | dst, | ||
IplConvKernel * | element = NULL , |
||
int | iterations = 1 |
||
) |
erodes input image (applies minimum filter) one or more times. If element pointer is NULL, 3x3 rectangular element is used
void cvFillConvexPoly | ( | CvArr * | img, |
const CvPoint * | pts, | ||
int | npts, | ||
CvScalar | color, | ||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Fills convex or monotonous polygon.
void cvFillPoly | ( | CvArr * | img, |
CvPoint ** | pts, | ||
const int * | npts, | ||
int | contours, | ||
CvScalar | color, | ||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Fills an area bounded by one or more arbitrary polygons.
void cvFilter2D | ( | const CvArr * | src, |
CvArr * | dst, | ||
const CvMat * | kernel, | ||
CvPoint | anchor = cvPoint(-1,-1) |
||
) |
Convolves an image with the kernel.
src | input image. |
dst | output image of the same size and the same number of channels as src. |
kernel | convolution kernel (or rather a correlation kernel), a single-channel floating point matrix; if you want to apply different kernels to different channels, split the image into separate color planes using split and process them individually. |
anchor | anchor of the kernel that indicates the relative position of a filtered point within the kernel; the anchor should lie within the kernel; default value (-1,-1) means that the anchor is at the kernel center. |
int cvFindContours | ( | CvArr * | image, |
CvMemStorage * | storage, | ||
CvSeq ** | first_contour, | ||
int | header_size = sizeof(CvContour) , |
||
int | mode = CV_RETR_LIST , |
||
int | method = CV_CHAIN_APPROX_SIMPLE , |
||
CvPoint | offset = cvPoint(0, 0) |
||
) |
Retrieves outer and optionally inner boundaries of white (non-zero) connected components in the black (zero) background.
void cvFindCornerSubPix | ( | const CvArr * | image, |
CvPoint2D32f * | corners, | ||
int | count, | ||
CvSize | win, | ||
CvSize | zero_zone, | ||
CvTermCriteria | criteria | ||
) |
Adjust corner position using some sort of gradient search.
CvSeq* cvFindNextContour | ( | CvContourScanner | scanner | ) |
Retrieves next contour.
Fits ellipse into a set of 2d points.
void cvFitLine | ( | const CvArr * | points, |
int | dist_type, | ||
double | param, | ||
double | reps, | ||
double | aeps, | ||
float * | line | ||
) |
Fits a line into set of 2d or 3d points in a robust way (M-estimator technique)
void cvFloodFill | ( | CvArr * | image, |
CvPoint | seed_point, | ||
CvScalar | new_val, | ||
CvScalar | lo_diff = cvScalarAll(0) , |
||
CvScalar | up_diff = cvScalarAll(0) , |
||
CvConnectedComp * | comp = NULL , |
||
int | flags = 4 , |
||
CvArr * | mask = NULL |
||
) |
Fills the connected component until the color difference gets large enough.
CvFont cvFont | ( | double | scale, |
int | thickness = 1 |
||
) |
CvMat* cvGetAffineTransform | ( | const CvPoint2D32f * | src, |
const CvPoint2D32f * | dst, | ||
CvMat * | map_matrix | ||
) |
Computes affine transform matrix for mapping src[i] to dst[i] (i=0,1,2)
double cvGetCentralMoment | ( | CvMoments * | moments, |
int | x_order, | ||
int | y_order | ||
) |
Retrieve central moments.
void cvGetHuMoments | ( | CvMoments * | moments, |
CvHuMoments * | hu_moments | ||
) |
Calculates 7 Hu's invariants from precalculated spatial and central moments.
void cvGetMinMaxHistValue | ( | const CvHistogram * | hist, |
float * | min_value, | ||
float * | max_value, | ||
int * | min_idx = NULL , |
||
int * | max_idx = NULL |
||
) |
Finds the minimum and maximum histogram bins.
The function finds the minimum and maximum histogram bins and their positions. All of output arguments are optional. Among several extremas with the same value the ones with the minimum index (in the lexicographical order) are returned. In case of several maximums or minimums, the earliest in the lexicographical order (extrema locations) is returned.
hist | Histogram. |
min_value | Pointer to the minimum value of the histogram. |
max_value | Pointer to the maximum value of the histogram. |
min_idx | Pointer to the array of coordinates for the minimum. |
max_idx | Pointer to the array of coordinates for the maximum. |
double cvGetNormalizedCentralMoment | ( | CvMoments * | moments, |
int | x_order, | ||
int | y_order | ||
) |
Retrieve normalized central moments.
CvMat* cvGetPerspectiveTransform | ( | const CvPoint2D32f * | src, |
const CvPoint2D32f * | dst, | ||
CvMat * | map_matrix | ||
) |
Computes perspective transform matrix for mapping src[i] to dst[i] (i=0,1,2,3)
Retrieves quadrangle from the input array.
matrixarr = ( a11 a12 | b1 ) dst(x,y) <- src(A[x y]' + b) ( a21 a22 | b2 ) (bilinear interpolation is used to retrieve pixels with fractional coordinates)
void cvGetRectSubPix | ( | const CvArr * | src, |
CvArr * | dst, | ||
CvPoint2D32f | center | ||
) |
Retrieves the rectangular image region with specified center from the input array.
dst(x,y) <- src(x + center.x - dst_width/2, y + center.y - dst_height/2). Values of pixels with fractional coordinates are retrieved using bilinear interpolation
double cvGetSpatialMoment | ( | CvMoments * | moments, |
int | x_order, | ||
int | y_order | ||
) |
Retrieve spatial moments.
void cvGetTextSize | ( | const char * | text_string, |
const CvFont * | font, | ||
CvSize * | text_size, | ||
int * | baseline | ||
) |
Calculates bounding box of text stroke (useful for alignment)
void cvGoodFeaturesToTrack | ( | const CvArr * | image, |
CvArr * | eig_image, | ||
CvArr * | temp_image, | ||
CvPoint2D32f * | corners, | ||
int * | corner_count, | ||
double | quality_level, | ||
double | min_distance, | ||
const CvArr * | mask = NULL , |
||
int | block_size = 3 , |
||
int | use_harris = 0 , |
||
double | k = 0.04 |
||
) |
Finds a sparse set of points within the selected region that seem to be easy to track.
CvSeq* cvHoughCircles | ( | CvArr * | image, |
void * | circle_storage, | ||
int | method, | ||
double | dp, | ||
double | min_dist, | ||
double | param1 = 100 , |
||
double | param2 = 100 , |
||
int | min_radius = 0 , |
||
int | max_radius = 0 |
||
) |
Finds circles in the image.
CvSeq* cvHoughLines2 | ( | CvArr * | image, |
void * | line_storage, | ||
int | method, | ||
double | rho, | ||
double | theta, | ||
int | threshold, | ||
double | param1 = 0 , |
||
double | param2 = 0 , |
||
double | min_theta = 0 , |
||
double | max_theta = CV_PI |
||
) |
Finds lines on binary image using one of several methods.
line_storage is either memory storage or 1 x max number of lines CvMat, its number of columns is changed by the function. method is one of CV_HOUGH_*; rho, theta and threshold are used for each of those methods; param1 ~ line length, param2 ~ line gap - for probabilistic, param1 ~ srn, param2 ~ stn - for multi-scale
void cvInitFont | ( | CvFont * | font, |
int | font_face, | ||
double | hscale, | ||
double | vscale, | ||
double | shear = 0 , |
||
int | thickness = 1 , |
||
int | line_type = 8 |
||
) |
Initializes font structure (OpenCV 1.x API).
The function initializes the font structure that can be passed to text rendering functions.
font | Pointer to the font structure initialized by the function |
font_face | Font name identifier. See cv::HersheyFonts and corresponding old CV_* identifiers. |
hscale | Horizontal scale. If equal to 1.0f , the characters have the original width depending on the font type. If equal to 0.5f , the characters are of half the original width. |
vscale | Vertical scale. If equal to 1.0f , the characters have the original height depending on the font type. If equal to 0.5f , the characters are of half the original height. |
shear | Approximate tangent of the character slope relative to the vertical line. A zero value means a non-italic font, 1.0f means about a 45 degree slope, etc. |
thickness | Thickness of the text strokes |
line_type | Type of the strokes, see line description |
int cvInitLineIterator | ( | const CvArr * | image, |
CvPoint | pt1, | ||
CvPoint | pt2, | ||
CvLineIterator * | line_iterator, | ||
int | connectivity = 8 , |
||
int | left_to_right = 0 |
||
) |
Initializes line iterator.
Initially, line_iterator->ptr will point to pt1 (or pt2, see left_to_right description) location in the image. Returns the number of pixels on the line between the ending points.
void cvInitUndistortMap | ( | const CvMat * | camera_matrix, |
const CvMat * | distortion_coeffs, | ||
CvArr * | mapx, | ||
CvArr * | mapy | ||
) |
Computes transformation map from intrinsic camera parameters that can used by cvRemap.
void cvInitUndistortRectifyMap | ( | const CvMat * | camera_matrix, |
const CvMat * | dist_coeffs, | ||
const CvMat * | R, | ||
const CvMat * | new_camera_matrix, | ||
CvArr * | mapx, | ||
CvArr * | mapy | ||
) |
Computes undistortion+rectification map for a head of stereo camera.
void cvIntegral | ( | const CvArr * | image, |
CvArr * | sum, | ||
CvArr * | sqsum = NULL , |
||
CvArr * | tilted_sum = NULL |
||
) |
Finds integral image: SUM(X,Y) = sum(x<X,y<Y)I(x,y)
Calculates the image Laplacian: (d2/dx + d2/dy)I.
void cvLine | ( | CvArr * | img, |
CvPoint | pt1, | ||
CvPoint | pt2, | ||
CvScalar | color, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Draws 4-connected, 8-connected or antialiased line segment connecting two points.
void cvLinearPolar | ( | const CvArr * | src, |
CvArr * | dst, | ||
CvPoint2D32f | center, | ||
double | maxRadius, | ||
int | flags = CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS |
||
) |
Performs forward or inverse linear-polar image transform
void cvLogPolar | ( | const CvArr * | src, |
CvArr * | dst, | ||
CvPoint2D32f | center, | ||
double | M, | ||
int | flags = CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS |
||
) |
Performs forward or inverse log-polar image transform.
CvHistogram* cvMakeHistHeaderForArray | ( | int | dims, |
int * | sizes, | ||
CvHistogram * | hist, | ||
float * | data, | ||
float ** | ranges = NULL , |
||
int | uniform = 1 |
||
) |
Makes a histogram out of an array.
The function initializes the histogram, whose header and bins are allocated by the user. cvReleaseHist does not need to be called afterwards. Only dense histograms can be initialized this way. The function returns hist.
dims | Number of the histogram dimensions. |
sizes | Array of the histogram dimension sizes. |
hist | Histogram header initialized by the function. |
data | Array used to store histogram bins. |
ranges | Histogram bin ranges. See cvCreateHist for details. |
uniform | Uniformity flag. See cvCreateHist for details. |
double cvMatchShapes | ( | const void * | object1, |
const void * | object2, | ||
int | method, | ||
double | parameter = 0 |
||
) |
Compares two contours by matching their moments.
Measures similarity between template and overlapped windows in the source image and fills the resultant image with the measurements.
Finds minimum rectangle containing two given rectangles.
CvBox2D cvMinAreaRect2 | ( | const CvArr * | points, |
CvMemStorage * | storage = NULL |
||
) |
Finds minimum area rotated rectangle bounding a set of points.
int cvMinEnclosingCircle | ( | const CvArr * | points, |
CvPoint2D32f * | center, | ||
float * | radius | ||
) |
Finds minimum enclosing circle for a set of points.
Calculates all spatial and central moments up to the 3rd order.
void cvMorphologyEx | ( | const CvArr * | src, |
CvArr * | dst, | ||
CvArr * | temp, | ||
IplConvKernel * | element, | ||
int | operation, | ||
int | iterations = 1 |
||
) |
Performs complex morphological transformation.
void cvMultiplyAcc | ( | const CvArr * | image1, |
const CvArr * | image2, | ||
CvArr * | acc, | ||
const CvArr * | mask = NULL |
||
) |
Adds a product of two images to accumulator.
void cvNormalizeHist | ( | CvHistogram * | hist, |
double | factor | ||
) |
Normalizes the histogram.
The function normalizes the histogram bins by scaling them so that the sum of the bins becomes equal to factor.
hist | Pointer to the histogram. |
factor | Normalization factor. |
double cvPointPolygonTest | ( | const CvArr * | contour, |
CvPoint2D32f | pt, | ||
int | measure_dist | ||
) |
Checks whether the point is inside polygon, outside, on an edge (at a vertex).
Returns positive, negative or zero value, correspondingly. Optionally, measures a signed distance between the point and the nearest polygon edge (measure_dist=1)
CvSeq* cvPointSeqFromMat | ( | int | seq_kind, |
const CvArr * | mat, | ||
CvContour * | contour_header, | ||
CvSeqBlock * | block | ||
) |
Initializes sequence header for a matrix (column or row vector) of points.
a wrapper for cvMakeSeqHeaderForArray (it does not initialize bounding rectangle!!!)
void cvPolyLine | ( | CvArr * | img, |
CvPoint ** | pts, | ||
const int * | npts, | ||
int | contours, | ||
int | is_closed, | ||
CvScalar | color, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Draws one or more polygonal curves.
Calculates constraint image for corner detection.
Dx^2 * Dyy + Dxx * Dy^2 - 2 * Dx * Dy * Dxy. Applying threshold to the result gives coordinates of corners
Renders text stroke with specified font and color at specified location. CvFont should be initialized with cvInitFont.
void cvPyrDown | ( | const CvArr * | src, |
CvArr * | dst, | ||
int | filter = CV_GAUSSIAN_5x5 |
||
) |
Smoothes the input image with gaussian kernel and then down-samples it.
dst_width = floor(src_width/2)[+1], dst_height = floor(src_height/2)[+1]
void cvPyrMeanShiftFiltering | ( | const CvArr * | src, |
CvArr * | dst, | ||
double | sp, | ||
double | sr, | ||
int | max_level = 1 , |
||
CvTermCriteria | termcrit = cvTermCriteria(CV_TERMCRIT_ITER+CV_TERMCRIT_EPS, 5, 1) |
||
) |
Filters image using meanshift algorithm.
void cvPyrUp | ( | const CvArr * | src, |
CvArr * | dst, | ||
int | filter = CV_GAUSSIAN_5x5 |
||
) |
Up-samples image and smoothes the result with gaussian kernel.
dst_width = src_width*2, dst_height = src_height*2
CvPoint cvReadChainPoint | ( | CvChainPtReader * | reader | ) |
Retrieves the next chain point.
void cvRectangle | ( | CvArr * | img, |
CvPoint | pt1, | ||
CvPoint | pt2, | ||
CvScalar | color, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Draws a rectangle given two opposite corners of the rectangle (pt1 & pt2)
if thickness<0 (e.g. thickness == CV_FILLED), the filled box is drawn
void cvRectangleR | ( | CvArr * | img, |
CvRect | r, | ||
CvScalar | color, | ||
int | thickness = 1 , |
||
int | line_type = 8 , |
||
int | shift = 0 |
||
) |
Draws a rectangle specified by a CvRect structure.
void cvReleaseHist | ( | CvHistogram ** | hist | ) |
Releases the histogram.
The function releases the histogram (header and the data). The pointer to the histogram is cleared by the function. If *hist pointer is already NULL, the function does nothing.
hist | Double pointer to the released histogram. |
void cvReleasePyramid | ( | CvMat *** | pyramid, |
int | extra_layers | ||
) |
Releases pyramid.
void cvReleaseStructuringElement | ( | IplConvKernel ** | element | ) |
releases structuring element
void cvRemap | ( | const CvArr * | src, |
CvArr * | dst, | ||
const CvArr * | mapx, | ||
const CvArr * | mapy, | ||
int | flags = CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS , |
||
CvScalar | fillval = cvScalarAll(0) |
||
) |
Performs generic geometric transformation using the specified coordinate maps.
void cvResize | ( | const CvArr * | src, |
CvArr * | dst, | ||
int | interpolation = CV_INTER_LINEAR |
||
) |
Resizes image (input array is resized to fit the destination array)
Adds image to accumulator with weights: acc = acc*(1-alpha) + image*alpha.
int cvSampleLine | ( | const CvArr * | image, |
CvPoint | pt1, | ||
CvPoint | pt2, | ||
void * | buffer, | ||
int | connectivity = 8 |
||
) |
Fetches pixels that belong to the specified line segment and stores them to the buffer.
Returns the number of retrieved points.
void cvSetHistBinRanges | ( | CvHistogram * | hist, |
float ** | ranges, | ||
int | uniform = 1 |
||
) |
Sets the bounds of the histogram bins.
This is a standalone function for setting bin ranges in the histogram. For a more detailed description of the parameters ranges and uniform, see the :ocvCalcHist function that can initialize the ranges as well. Ranges for the histogram bins must be set before the histogram is calculated or the backproject of the histogram is calculated.
hist | Histogram. |
ranges | Array of bin ranges arrays. See :ocvCreateHist for details. |
uniform | Uniformity flag. See :ocvCreateHist for details. |
void cvSmooth | ( | const CvArr * | src, |
CvArr * | dst, | ||
int | smoothtype = CV_GAUSSIAN , |
||
int | size1 = 3 , |
||
int | size2 = 0 , |
||
double | sigma1 = 0 , |
||
double | sigma2 = 0 |
||
) |
Smooths the image in one of several ways.
src | The source image |
dst | The destination image |
smoothtype | Type of the smoothing, see SmoothMethod_c |
size1 | The first parameter of the smoothing operation, the aperture width. Must be a positive odd number (1, 3, 5, ...) |
size2 | The second parameter of the smoothing operation, the aperture height. Ignored by CV_MEDIAN and CV_BILATERAL methods. In the case of simple scaled/non-scaled and Gaussian blur if size2 is zero, it is set to size1. Otherwise it must be a positive odd number. |
sigma1 | In the case of a Gaussian parameter this parameter may specify Gaussian \(\sigma\) (standard deviation). If it is zero, it is calculated from the kernel size: \[\sigma = 0.3 (n/2 - 1) + 0.8 \quad \text{where} \quad n= \begin{array}{l l} \mbox{\texttt{size1} for horizontal kernel} \\ \mbox{\texttt{size2} for vertical kernel} \end{array}\] Using standard sigma for small kernels ( \(3\times 3\) to \(7\times 7\) ) gives better speed. If sigma1 is not zero, while size1 and size2 are zeros, the kernel size is calculated from the sigma (to provide accurate enough operation). |
sigma2 | additional parameter for bilateral filtering |
Calculates an image derivative using generalized Sobel.
(aperture_size = 1,3,5,7) or Scharr (aperture_size = -1) operator. Scharr can be used only for the first dx or dy derivative
Adds squared image to accumulator.
CvContourScanner cvStartFindContours | ( | CvArr * | image, |
CvMemStorage * | storage, | ||
int | header_size = sizeof(CvContour) , |
||
int | mode = CV_RETR_LIST , |
||
int | method = CV_CHAIN_APPROX_SIMPLE , |
||
CvPoint | offset = cvPoint(0, 0) |
||
) |
Initializes contour retrieving process.
Calls cvStartFindContours. Calls cvFindNextContour until null pointer is returned or some other condition becomes true. Calls cvEndFindContours at the end.
void cvStartReadChainPoints | ( | CvChain * | chain, |
CvChainPtReader * | reader | ||
) |
Initializes Freeman chain reader.
The reader is used to iteratively get coordinates of all the chain points. If the Freeman codes should be read as is, a simple sequence reader should be used
void cvSubstituteContour | ( | CvContourScanner | scanner, |
CvSeq * | new_contour | ||
) |
Substitutes the last retrieved contour with the new one.
(if the substitutor is null, the last retrieved contour is removed from the tree)
void cvThreshHist | ( | CvHistogram * | hist, |
double | threshold | ||
) |
Thresholds the histogram.
The function clears histogram bins that are below the specified threshold.
hist | Pointer to the histogram. |
threshold | Threshold level. |
double cvThreshold | ( | const CvArr * | src, |
CvArr * | dst, | ||
double | threshold, | ||
double | max_value, | ||
int | threshold_type | ||
) |
Applies fixed-level threshold to grayscale image.
This is a basic operation applied before retrieving contours
void cvUndistort2 | ( | const CvArr * | src, |
CvArr * | dst, | ||
const CvMat * | camera_matrix, | ||
const CvMat * | distortion_coeffs, | ||
const CvMat * | new_camera_matrix = 0 |
||
) |
Transforms the input image to compensate lens distortion.
void cvUndistortPoints | ( | const CvMat * | src, |
CvMat * | dst, | ||
const CvMat * | camera_matrix, | ||
const CvMat * | dist_coeffs, | ||
const CvMat * | R = 0 , |
||
const CvMat * | P = 0 |
||
) |
Computes the original (undistorted) feature coordinates from the observed (distorted) coordinates.
void cvWarpAffine | ( | const CvArr * | src, |
CvArr * | dst, | ||
const CvMat * | map_matrix, | ||
int | flags = CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS , |
||
CvScalar | fillval = cvScalarAll(0) |
||
) |
Warps image with affine transform.
void cvWarpPerspective | ( | const CvArr * | src, |
CvArr * | dst, | ||
const CvMat * | map_matrix, | ||
int | flags = CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS , |
||
CvScalar | fillval = cvScalarAll(0) |
||
) |
Warps image with perspective (projective) transform.
Segments image using seed "markers".