EstervQrCode 1.1.1
Library for qr code manipulation
imgproc_c.h
1 /*M///////////////////////////////////////////////////////////////////////////////////////
2 //
3 // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
4 //
5 // By downloading, copying, installing or using the software you agree to this license.
6 // If you do not agree to this license, do not download, install,
7 // copy or use the software.
8 //
9 //
10 // License Agreement
11 // For Open Source Computer Vision Library
12 //
13 // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
14 // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
15 // Third party copyrights are property of their respective owners.
16 //
17 // Redistribution and use in source and binary forms, with or without modification,
18 // are permitted provided that the following conditions are met:
19 //
20 // * Redistribution's of source code must retain the above copyright notice,
21 // this list of conditions and the following disclaimer.
22 //
23 // * Redistribution's in binary form must reproduce the above copyright notice,
24 // this list of conditions and the following disclaimer in the documentation
25 // and/or other materials provided with the distribution.
26 //
27 // * The name of the copyright holders may not be used to endorse or promote products
28 // derived from this software without specific prior written permission.
29 //
30 // This software is provided by the copyright holders and contributors "as is" and
31 // any express or implied warranties, including, but not limited to, the implied
32 // warranties of merchantability and fitness for a particular purpose are disclaimed.
33 // In no event shall the Intel Corporation or contributors be liable for any direct,
34 // indirect, incidental, special, exemplary, or consequential damages
35 // (including, but not limited to, procurement of substitute goods or services;
36 // loss of use, data, or profits; or business interruption) however caused
37 // and on any theory of liability, whether in contract, strict liability,
38 // or tort (including negligence or otherwise) arising in any way out of
39 // the use of this software, even if advised of the possibility of such damage.
40 //
41 //M*/
42 
43 #ifndef OPENCV_IMGPROC_IMGPROC_C_H
44 #define OPENCV_IMGPROC_IMGPROC_C_H
45 
46 #include "opencv2/imgproc/types_c.h"
47 
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
51 
56 /*********************** Background statistics accumulation *****************************/
57 
61 CVAPI(void) cvAcc( const CvArr* image, CvArr* sum,
62  const CvArr* mask CV_DEFAULT(NULL) );
63 
67 CVAPI(void) cvSquareAcc( const CvArr* image, CvArr* sqsum,
68  const CvArr* mask CV_DEFAULT(NULL) );
69 
73 CVAPI(void) cvMultiplyAcc( const CvArr* image1, const CvArr* image2, CvArr* acc,
74  const CvArr* mask CV_DEFAULT(NULL) );
75 
79 CVAPI(void) cvRunningAvg( const CvArr* image, CvArr* acc, double alpha,
80  const CvArr* mask CV_DEFAULT(NULL) );
81 
82 /****************************************************************************************\
83 * Image Processing *
84 \****************************************************************************************/
85 
88 CVAPI(void) cvCopyMakeBorder( const CvArr* src, CvArr* dst, CvPoint offset,
90 
111 CVAPI(void) cvSmooth( const CvArr* src, CvArr* dst,
112  int smoothtype CV_DEFAULT(CV_GAUSSIAN),
113  int size1 CV_DEFAULT(3),
114  int size2 CV_DEFAULT(0),
115  double sigma1 CV_DEFAULT(0),
116  double sigma2 CV_DEFAULT(0));
117 
131 CVAPI(void) cvFilter2D( const CvArr* src, CvArr* dst, const CvMat* kernel,
132  CvPoint anchor CV_DEFAULT(cvPoint(-1,-1)));
133 
137 CVAPI(void) cvIntegral( const CvArr* image, CvArr* sum,
138  CvArr* sqsum CV_DEFAULT(NULL),
139  CvArr* tilted_sum CV_DEFAULT(NULL));
140 
147 CVAPI(void) cvPyrDown( const CvArr* src, CvArr* dst,
149 
156 CVAPI(void) cvPyrUp( const CvArr* src, CvArr* dst,
157  int filter CV_DEFAULT(CV_GAUSSIAN_5x5) );
158 
162 CVAPI(CvMat**) cvCreatePyramid( const CvArr* img, int extra_layers, double rate,
163  const CvSize* layer_sizes CV_DEFAULT(0),
164  CvArr* bufarr CV_DEFAULT(0),
165  int calc CV_DEFAULT(1),
166  int filter CV_DEFAULT(CV_GAUSSIAN_5x5) );
167 
169 CVAPI(void) cvReleasePyramid( CvMat*** pyramid, int extra_layers );
170 
171 
175 CVAPI(void) cvPyrMeanShiftFiltering( const CvArr* src, CvArr* dst,
176  double sp, double sr, int max_level CV_DEFAULT(1),
178 
182 CVAPI(void) cvWatershed( const CvArr* image, CvArr* markers );
183 
190 CVAPI(void) cvSobel( const CvArr* src, CvArr* dst,
191  int xorder, int yorder,
192  int aperture_size CV_DEFAULT(3));
193 
197 CVAPI(void) cvLaplace( const CvArr* src, CvArr* dst,
198  int aperture_size CV_DEFAULT(3) );
199 
203 CVAPI(void) cvCvtColor( const CvArr* src, CvArr* dst, int code );
204 
205 
209 CVAPI(void) cvResize( const CvArr* src, CvArr* dst,
210  int interpolation CV_DEFAULT( CV_INTER_LINEAR ));
211 
212 #ifdef _MSC_VER
213 #pragma warning( push )
214 #pragma warning( disable: 5054 )
215 #endif
221 CVAPI(void) cvWarpAffine( const CvArr* src, CvArr* dst, const CvMat* map_matrix,
223  CvScalar fillval CV_DEFAULT(cvScalarAll(0)) );
224 
228 CVAPI(CvMat*) cvGetAffineTransform( const CvPoint2D32f * src,
229  const CvPoint2D32f * dst,
230  CvMat * map_matrix );
231 
235 CVAPI(CvMat*) cv2DRotationMatrix( CvPoint2D32f center, double angle,
236  double scale, CvMat* map_matrix );
237 
241 CVAPI(void) cvWarpPerspective( const CvArr* src, CvArr* dst, const CvMat* map_matrix,
243  CvScalar fillval CV_DEFAULT(cvScalarAll(0)) );
244 
248 CVAPI(CvMat*) cvGetPerspectiveTransform( const CvPoint2D32f* src,
249  const CvPoint2D32f* dst,
250  CvMat* map_matrix );
251 
255 CVAPI(void) cvRemap( const CvArr* src, CvArr* dst,
256  const CvArr* mapx, const CvArr* mapy,
258  CvScalar fillval CV_DEFAULT(cvScalarAll(0)) );
259 
263 CVAPI(void) cvConvertMaps( const CvArr* mapx, const CvArr* mapy,
265 
269 CVAPI(void) cvLogPolar( const CvArr* src, CvArr* dst,
272 
276 CVAPI(void) cvLinearPolar( const CvArr* src, CvArr* dst,
279 
280 #ifdef _MSC_VER
281 #pragma warning( pop )
282 #endif
283 
299  CVAPI(IplConvKernel*) cvCreateStructuringElementEx(
300  int cols, int rows, int anchor_x, int anchor_y,
301  int shape, int* values CV_DEFAULT(NULL) );
302 
306 CVAPI(void) cvReleaseStructuringElement( IplConvKernel** element );
307 
312 CVAPI(void) cvErode( const CvArr* src, CvArr* dst,
314  int iterations CV_DEFAULT(1) );
315 
321 CVAPI(void) cvDilate( const CvArr* src, CvArr* dst,
323  int iterations CV_DEFAULT(1) );
324 
328 CVAPI(void) cvMorphologyEx( const CvArr* src, CvArr* dst,
330  int operation, int iterations CV_DEFAULT(1) );
331 
335 CVAPI(void) cvMoments( const CvArr* arr, CvMoments* moments, int binary CV_DEFAULT(0));
336 
338 CVAPI(double) cvGetSpatialMoment( CvMoments* moments, int x_order, int y_order );
340 CVAPI(double) cvGetCentralMoment( CvMoments* moments, int x_order, int y_order );
342 CVAPI(double) cvGetNormalizedCentralMoment( CvMoments* moments,
343  int x_order, int y_order );
344 
348 CVAPI(void) cvGetHuMoments( CvMoments* moments, CvHuMoments* hu_moments );
349 
350 /*********************************** data sampling **************************************/
351 
357 CVAPI(int) cvSampleLine( const CvArr* image, CvPoint pt1, CvPoint pt2, void* buffer,
359 
366 CVAPI(void) cvGetRectSubPix( const CvArr* src, CvArr* dst, CvPoint2D32f center );
367 
368 
376 CVAPI(void) cvGetQuadrangleSubPix( const CvArr* src, CvArr* dst,
377  const CvMat* map_matrix );
378 
383 CVAPI(void) cvMatchTemplate( const CvArr* image, const CvArr* templ,
384  CvArr* result, int method );
385 
390 CVAPI(float) cvCalcEMD2( const CvArr* signature1,
393  CvDistanceFunction distance_func CV_DEFAULT(NULL),
394  const CvArr* cost_matrix CV_DEFAULT(NULL),
395  CvArr* flow CV_DEFAULT(NULL),
396  float* lower_bound CV_DEFAULT(NULL),
397  void* userdata CV_DEFAULT(NULL));
398 
399 /****************************************************************************************\
400 * Contours retrieving *
401 \****************************************************************************************/
402 
407 CVAPI(int) cvFindContours( CvArr* image, CvMemStorage* storage, CvSeq** first_contour,
412 
421 CVAPI(CvContourScanner) cvStartFindContours( CvArr* image, CvMemStorage* storage,
422  int header_size CV_DEFAULT(sizeof(CvContour)),
423  int mode CV_DEFAULT(CV_RETR_LIST),
426 
430 CVAPI(CvSeq*) cvFindNextContour( CvContourScanner scanner );
431 
432 
438 CVAPI(void) cvSubstituteContour( CvContourScanner scanner, CvSeq* new_contour );
439 
440 
444 CVAPI(CvSeq*) cvEndFindContours( CvContourScanner* scanner );
445 
463 CVAPI(CvSeq*) cvApproxChains( CvSeq* src_seq, CvMemStorage* storage,
465  double parameter CV_DEFAULT(0),
466  int minimal_perimeter CV_DEFAULT(0),
467  int recursive CV_DEFAULT(0));
468 
475 CVAPI(void) cvStartReadChainPoints( CvChain* chain, CvChainPtReader* reader );
476 
480 CVAPI(CvPoint) cvReadChainPoint( CvChainPtReader* reader );
481 
482 
483 /****************************************************************************************\
484 * Contour Processing and Shape Analysis *
485 \****************************************************************************************/
486 
491 CVAPI(CvSeq*) cvApproxPoly( const void* src_seq,
493  int method, double eps,
494  int recursive CV_DEFAULT(0));
495 
499 CVAPI(double) cvArcLength( const void* curve,
502 
505 CV_INLINE double cvContourPerimeter( const void* contour )
506 {
507  return cvArcLength( contour, CV_WHOLE_SEQ, 1 );
508 }
509 
510 
515 CVAPI(CvRect) cvBoundingRect( CvArr* points, int update CV_DEFAULT(0) );
516 
520 CVAPI(double) cvContourArea( const CvArr* contour,
522  int oriented CV_DEFAULT(0));
523 
527 CVAPI(CvBox2D) cvMinAreaRect2( const CvArr* points,
529 
533 CVAPI(int) cvMinEnclosingCircle( const CvArr* points,
535 
539 CVAPI(double) cvMatchShapes( const void* object1, const void* object2,
540  int method, double parameter CV_DEFAULT(0));
541 
545 CVAPI(CvSeq*) cvConvexHull2( const CvArr* input,
546  void* hull_storage CV_DEFAULT(NULL),
547  int orientation CV_DEFAULT(CV_CLOCKWISE),
548  int return_points CV_DEFAULT(0));
549 
553 CVAPI(int) cvCheckContourConvexity( const CvArr* contour );
554 
555 
559 CVAPI(CvSeq*) cvConvexityDefects( const CvArr* contour, const CvArr* convexhull,
561 
565 CVAPI(CvBox2D) cvFitEllipse2( const CvArr* points );
566 
568 CVAPI(CvRect) cvMaxRect( const CvRect* rect1, const CvRect* rect2 );
569 
571 CVAPI(void) cvBoxPoints( CvBox2D box, CvPoint2D32f pt[4] );
572 
576 CVAPI(CvSeq*) cvPointSeqFromMat( int seq_kind, const CvArr* mat,
579 
587 CVAPI(double) cvPointPolygonTest( const CvArr* contour,
589 
590 /****************************************************************************************\
591 * Histogram functions *
592 \****************************************************************************************/
593 
621 CVAPI(CvHistogram*) cvCreateHist( int dims, int* sizes, int type,
622  float** ranges CV_DEFAULT(NULL),
623  int uniform CV_DEFAULT(1));
624 
636 CVAPI(void) cvSetHistBinRanges( CvHistogram* hist, float** ranges,
637  int uniform CV_DEFAULT(1));
638 
652 CVAPI(CvHistogram*) cvMakeHistHeaderForArray(
653  int dims, int* sizes, CvHistogram* hist,
654  float* data, float** ranges CV_DEFAULT(NULL),
655  int uniform CV_DEFAULT(1));
656 
664 CVAPI(void) cvReleaseHist( CvHistogram** hist );
665 
673 CVAPI(void) cvClearHist( CvHistogram* hist );
674 
688 CVAPI(void) cvGetMinMaxHistValue( const CvHistogram* hist,
689  float* min_value, float* max_value,
690  int* min_idx CV_DEFAULT(NULL),
691  int* max_idx CV_DEFAULT(NULL));
692 
693 
702 CVAPI(void) cvNormalizeHist( CvHistogram* hist, double factor );
703 
704 
712 CVAPI(void) cvThreshHist( CvHistogram* hist, double threshold );
713 
714 
716 CVAPI(double) cvCompareHist( const CvHistogram* hist1,
718  int method);
719 
730 CVAPI(void) cvCopyHist( const CvHistogram* src, CvHistogram** dst );
731 
732 
735 CVAPI(void) cvCalcBayesianProb( CvHistogram** src, int number,
736  CvHistogram** dst);
737 
741 CVAPI(void) cvCalcArrHist( CvArr** arr, CvHistogram* hist,
742  int accumulate CV_DEFAULT(0),
743  const CvArr* mask CV_DEFAULT(NULL) );
744 
747  int accumulate CV_DEFAULT(0),
748  const CvArr* mask CV_DEFAULT(NULL) )
749 {
750  cvCalcArrHist( (CvArr**)image, hist, accumulate, mask );
751 }
752 
756 CVAPI(void) cvCalcArrBackProject( CvArr** image, CvArr* dst,
757  const CvHistogram* hist );
758 
759 #define cvCalcBackProject(image, dst, hist) cvCalcArrBackProject((CvArr**)image, dst, hist)
760 
761 
781 CVAPI(void) cvCalcArrBackProjectPatch( CvArr** image, CvArr* dst, CvSize range,
782  CvHistogram* hist, int method,
783  double factor );
784 
785 #define cvCalcBackProjectPatch( image, dst, range, hist, method, factor ) \
786  cvCalcArrBackProjectPatch( (CvArr**)image, dst, range, hist, method, factor )
787 
788 
800 CVAPI(void) cvCalcProbDensity( const CvHistogram* hist1, const CvHistogram* hist2,
802 
806 CVAPI(void) cvEqualizeHist( const CvArr* src, CvArr* dst );
807 
808 
812 CVAPI(void) cvDistTransform( const CvArr* src, CvArr* dst,
814  int mask_size CV_DEFAULT(3),
815  const float* mask CV_DEFAULT(NULL),
816  CvArr* labels CV_DEFAULT(NULL),
818 
819 
825 CVAPI(double) cvThreshold( const CvArr* src, CvArr* dst,
826  double threshold, double max_value,
828 
837 CVAPI(void) cvAdaptiveThreshold( const CvArr* src, CvArr* dst, double max_value,
838  int adaptive_method CV_DEFAULT(CV_ADAPTIVE_THRESH_MEAN_C),
840  int block_size CV_DEFAULT(3),
841  double param1 CV_DEFAULT(5));
842 
846 CVAPI(void) cvFloodFill( CvArr* image, CvPoint seed_point,
848  CvScalar up_diff CV_DEFAULT(cvScalarAll(0)),
849  CvConnectedComp* comp CV_DEFAULT(NULL),
851  CvArr* mask CV_DEFAULT(NULL));
852 
853 /****************************************************************************************\
854 * Feature detection *
855 \****************************************************************************************/
856 
860 CVAPI(void) cvCanny( const CvArr* image, CvArr* edges, double threshold1,
861  double threshold2, int aperture_size CV_DEFAULT(3) );
862 
869 CVAPI(void) cvPreCornerDetect( const CvArr* image, CvArr* corners,
870  int aperture_size CV_DEFAULT(3) );
871 
876 CVAPI(void) cvCornerEigenValsAndVecs( const CvArr* image, CvArr* eigenvv,
877  int block_size, int aperture_size CV_DEFAULT(3) );
878 
883 CVAPI(void) cvCornerMinEigenVal( const CvArr* image, CvArr* eigenval,
884  int block_size, int aperture_size CV_DEFAULT(3) );
885 
891 CVAPI(void) cvCornerHarris( const CvArr* image, CvArr* harris_response,
892  int block_size, int aperture_size CV_DEFAULT(3),
893  double k CV_DEFAULT(0.04) );
894 
898 CVAPI(void) cvFindCornerSubPix( const CvArr* image, CvPoint2D32f* corners,
901 
906 CVAPI(void) cvGoodFeaturesToTrack( const CvArr* image, CvArr* eig_image,
909  double min_distance,
910  const CvArr* mask CV_DEFAULT(NULL),
911  int block_size CV_DEFAULT(3),
912  int use_harris CV_DEFAULT(0),
913  double k CV_DEFAULT(0.04) );
914 
925 CVAPI(CvSeq*) cvHoughLines2( CvArr* image, void* line_storage, int method,
926  double rho, double theta, int threshold,
927  double param1 CV_DEFAULT(0), double param2 CV_DEFAULT(0),
928  double min_theta CV_DEFAULT(0), double max_theta CV_DEFAULT(CV_PI));
929 
933 CVAPI(CvSeq*) cvHoughCircles( CvArr* image, void* circle_storage,
934  int method, double dp, double min_dist,
935  double param1 CV_DEFAULT(100),
936  double param2 CV_DEFAULT(100),
937  int min_radius CV_DEFAULT(0),
938  int max_radius CV_DEFAULT(0));
939 
943 CVAPI(void) cvFitLine( const CvArr* points, int dist_type, double param,
944  double reps, double aeps, float* line );
945 
946 /****************************************************************************************\
947 * Drawing *
948 \****************************************************************************************/
949 
950 /****************************************************************************************\
951 * Drawing functions work with images/matrices of arbitrary type. *
952 * For color images the channel order is BGR[A] *
953 * Antialiasing is supported only for 8-bit image now. *
954 * All the functions include parameter color that means rgb value (that may be *
955 * constructed with CV_RGB macro) for color images and brightness *
956 * for grayscale images. *
957 * If a drawn figure is partially or completely outside of the image, it is clipped.*
958 \****************************************************************************************/
959 
960 #define CV_FILLED -1
961 
962 #define CV_AA 16
963 
967 CVAPI(void) cvLine( CvArr* img, CvPoint pt1, CvPoint pt2,
968  CvScalar color, int thickness CV_DEFAULT(1),
969  int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0) );
970 
976 CVAPI(void) cvRectangle( CvArr* img, CvPoint pt1, CvPoint pt2,
977  CvScalar color, int thickness CV_DEFAULT(1),
978  int line_type CV_DEFAULT(8),
979  int shift CV_DEFAULT(0));
980 
984 CVAPI(void) cvRectangleR( CvArr* img, CvRect r,
985  CvScalar color, int thickness CV_DEFAULT(1),
986  int line_type CV_DEFAULT(8),
987  int shift CV_DEFAULT(0));
988 
989 
995 CVAPI(void) cvCircle( CvArr* img, CvPoint center, int radius,
996  CvScalar color, int thickness CV_DEFAULT(1),
997  int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0));
998 
1005 CVAPI(void) cvEllipse( CvArr* img, CvPoint center, CvSize axes,
1006  double angle, double start_angle, double end_angle,
1007  CvScalar color, int thickness CV_DEFAULT(1),
1008  int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0));
1009 
1011  int thickness CV_DEFAULT(1),
1012  int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0) )
1013 {
1014  CvSize axes = cvSize(
1015  cvRound(box.size.width*0.5),
1016  cvRound(box.size.height*0.5)
1017  );
1018 
1019  cvEllipse( img, cvPointFrom32f( box.center ), axes, box.angle,
1020  0, 360, color, thickness, line_type, shift );
1021 }
1022 
1026 CVAPI(void) cvFillConvexPoly( CvArr* img, const CvPoint* pts, int npts, CvScalar color,
1027  int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0));
1028 
1032 CVAPI(void) cvFillPoly( CvArr* img, CvPoint** pts, const int* npts,
1034  int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0) );
1035 
1039 CVAPI(void) cvPolyLine( CvArr* img, CvPoint** pts, const int* npts, int contours,
1040  int is_closed, CvScalar color, int thickness CV_DEFAULT(1),
1041  int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0) );
1042 
1043 #define cvDrawRect cvRectangle
1044 #define cvDrawLine cvLine
1045 #define cvDrawCircle cvCircle
1046 #define cvDrawEllipse cvEllipse
1047 #define cvDrawPolyLine cvPolyLine
1048 
1055 CVAPI(int) cvClipLine( CvSize img_size, CvPoint* pt1, CvPoint* pt2 );
1056 
1063 CVAPI(int) cvInitLineIterator( const CvArr* image, CvPoint pt1, CvPoint pt2,
1065  int connectivity CV_DEFAULT(8),
1066  int left_to_right CV_DEFAULT(0));
1067 
1068 #define CV_NEXT_LINE_POINT( line_iterator ) \
1069 { \
1070  int _line_iterator_mask = (line_iterator).err < 0 ? -1 : 0; \
1071  (line_iterator).err += (line_iterator).minus_delta + \
1072  ((line_iterator).plus_delta & _line_iterator_mask); \
1073  (line_iterator).ptr += (line_iterator).minus_step + \
1074  ((line_iterator).plus_step & _line_iterator_mask); \
1075 }
1076 
1077 
1078 #define CV_FONT_HERSHEY_SIMPLEX 0
1079 #define CV_FONT_HERSHEY_PLAIN 1
1080 #define CV_FONT_HERSHEY_DUPLEX 2
1081 #define CV_FONT_HERSHEY_COMPLEX 3
1082 #define CV_FONT_HERSHEY_TRIPLEX 4
1083 #define CV_FONT_HERSHEY_COMPLEX_SMALL 5
1084 #define CV_FONT_HERSHEY_SCRIPT_SIMPLEX 6
1085 #define CV_FONT_HERSHEY_SCRIPT_COMPLEX 7
1086 
1087 #define CV_FONT_ITALIC 16
1088 
1089 #define CV_FONT_VECTOR0 CV_FONT_HERSHEY_SIMPLEX
1090 
1091 
1093 typedef struct CvFont
1094 {
1095  const char* nameFont; //Qt:nameFont
1096  CvScalar color; //Qt:ColorFont -> cvScalar(blue_component, green_component, red_component[, alpha_component])
1097  int font_face; //Qt: bool italic /** =CV_FONT_* */
1098  const int* ascii;
1099  const int* greek;
1100  const int* cyrillic;
1101  float hscale, vscale;
1102  float shear;
1104  float dx;
1106 }
1108 
1126 CVAPI(void) cvInitFont( CvFont* font, int font_face,
1127  double hscale, double vscale,
1128  double shear CV_DEFAULT(0),
1129  int thickness CV_DEFAULT(1),
1130  int line_type CV_DEFAULT(8));
1131 
1132 CV_INLINE CvFont cvFont( double scale, int thickness CV_DEFAULT(1) )
1133 {
1134  CvFont font;
1135  cvInitFont( &font, CV_FONT_HERSHEY_PLAIN, scale, scale, 0, thickness, CV_AA );
1136  return font;
1137 }
1138 
1143 CVAPI(void) cvPutText( CvArr* img, const char* text, CvPoint org,
1145 
1149 CVAPI(void) cvGetTextSize( const char* text_string, const CvFont* font,
1151 
1157 CVAPI(CvScalar) cvColorToScalar( double packed_color, int arrtype );
1158 
1167 CVAPI(int) cvEllipse2Poly( CvPoint center, CvSize axes,
1168  int angle, int arc_start, int arc_end, CvPoint * pts, int delta );
1169 
1173 CVAPI(void) cvDrawContours( CvArr *img, CvSeq* contour,
1175  int max_level, int thickness CV_DEFAULT(1),
1176  int line_type CV_DEFAULT(8),
1178 
1181 #ifdef __cplusplus
1182 }
1183 #endif
1184 
1185 #endif
CvMemStorage CvSeq ** labels
Definition: core_c.h:1724
int CvScalar value
Definition: core_c.h:720
const CvArr const CvArr const CvArr CvArr int flags
Definition: core_c.h:1342
CvArr int CvScalar CvScalar param2
Definition: core_c.h:1248
#define CV_TERMCRIT_EPS
Definition: types_c.h:897
CV_INLINE CvScalar cvScalarAll(double val0123)
Definition: types_c.h:1452
int cols
Definition: core_c.h:221
CvArr int CvScalar param1
Definition: core_c.h:1248
#define CV_TERMCRIT_ITER
Definition: types_c.h:895
CvSlice slice
Definition: core_c.h:1693
CV_INLINE CvPoint cvPoint(int x, int y)
Definition: types_c.h:963
CV_INLINE CvTermCriteria cvTermCriteria(int type, int max_iter, double epsilon)
Definition: types_c.h:918
CV_INLINE CvPoint cvPointFrom32f(CvPoint2D32f point)
Definition: types_c.h:1035
CvMemStorage CvSeq CvCmpFunc void * userdata
Definition: core_c.h:1724
CvArr const CvArr * mask
Definition: core_c.h:589
CvArr * arr
Definition: core_c.h:1247
void CvArr
This is the "metatype" used only as a function parameter.
Definition: types_c.h:133
CV_INLINE CvSize cvSize(int width, int height)
Definition: types_c.h:1186
int CvArr CvTermCriteria termcrit
Definition: core_c.h:1927
int dims
Definition: core_c.h:464
#define CV_WHOLE_SEQ
Definition: types_c.h:1318
CV_INLINE int cvRound(double value)
Rounds floating-point number to the nearest integer.
Definition: fast_math.hpp:200
#define CV_PI
Definition: cvdef.h:380
#define CV_INLINE
Definition: cvdef.h:218
double angle
Definition: imgproc_c.h:235
CvArr const CvMat * map_matrix
Definition: imgproc_c.h:221
int rows
Definition: imgproc_c.h:300
CvPoint CvScalar new_val
Definition: imgproc_c.h:847
int double double vscale
Definition: imgproc_c.h:1127
CvArr * edges
Definition: imgproc_c.h:860
int int anchor_x
Definition: imgproc_c.h:300
const CvRect * rect2
Definition: imgproc_c.h:568
float float * max_value
Definition: imgproc_c.h:689
struct _CvContourScanner * CvContourScanner
Definition: types_c.h:509
CvArr int xorder
Definition: imgproc_c.h:191
CvMoments * moments
Definition: imgproc_c.h:335
const char * text
Definition: imgproc_c.h:1143
CV_INLINE double cvContourPerimeter(const void *contour)
Definition: imgproc_c.h:505
CvArr double double int threshold_type
Definition: imgproc_c.h:827
const CvPoint int npts
Definition: imgproc_c.h:1026
CvArr const CvArr const CvArr * mapy
Definition: imgproc_c.h:256
CvArr CvPoint int bordertype
Definition: imgproc_c.h:89
CV_INLINE CvFont cvFont(double scale, int thickness CV_DEFAULT(1))
Definition: imgproc_c.h:1132
int font_face
Definition: imgproc_c.h:1126
CvArr CvArr IplConvKernel * element
Definition: imgproc_c.h:329
CvArr int block_size
Definition: imgproc_c.h:877
struct CvFont CvFont
CvArr * markers
Definition: imgproc_c.h:182
CvPoint2D32f int CvSize win
Definition: imgproc_c.h:899
#define CV_AA
Definition: imgproc_c.h:962
double threshold
Definition: imgproc_c.h:712
CvPoint2D32f pt[4]
Definition: imgproc_c.h:571
CvArr * eigenval
Definition: imgproc_c.h:883
CvArr double threshold1
Definition: imgproc_c.h:860
double factor
Definition: imgproc_c.h:702
#define CV_FONT_HERSHEY_PLAIN
Definition: imgproc_c.h:1079
int double rate
Definition: imgproc_c.h:162
const CvArr CvArr * acc
Definition: imgproc_c.h:73
CvPoint pt1
Definition: imgproc_c.h:357
const CvArr * templ
Definition: imgproc_c.h:383
CvPoint2D32f int measure_dist
Definition: imgproc_c.h:588
const CvFont CvSize * text_size
Definition: imgproc_c.h:1150
CvHuMoments * hu_moments
Definition: imgproc_c.h:348
CvPoint2D32f int count
Definition: imgproc_c.h:899
CvArr CvPoint2D32f double M
Definition: imgproc_c.h:270
const CvArr CvArr * result
Definition: imgproc_c.h:384
CvPoint seed_point
Definition: imgproc_c.h:846
CvPoint CvPoint CvLineIterator * line_iterator
Definition: imgproc_c.h:1064
int double double reps
Definition: imgproc_c.h:944
CvMemStorage * storage
Definition: imgproc_c.h:407
int arrtype
Definition: imgproc_c.h:1157
int header_size
Definition: imgproc_c.h:492
CvPoint CvPoint CvScalar color
Definition: imgproc_c.h:968
CVAPI(void) cvAcc(const CvArr *image
Adds image to accumulator.
CvSize int int arc_start
Definition: imgproc_c.h:1168
CvRect r
Definition: imgproc_c.h:984
int double double double aeps
Definition: imgproc_c.h:944
CvSeq CvScalar CvScalar int max_level
Definition: imgproc_c.h:1175
CvSize int int int CvPoint int delta
Definition: imgproc_c.h:1168
CvPoint const int int int is_closed
Definition: imgproc_c.h:1040
CV_INLINE void cvCalcHist(IplImage **image, CvHistogram *hist, int accumulate CV_DEFAULT(0), const CvArr *mask CV_DEFAULT(NULL))
Definition: imgproc_c.h:746
void * circle_storage
Definition: imgproc_c.h:933
const char CvPoint org
Definition: imgproc_c.h:1143
int x_order
Definition: imgproc_c.h:338
int int int anchor_y
Definition: imgproc_c.h:300
CvArr CvArr CvPoint2D32f int double double min_distance
Definition: imgproc_c.h:909
int number
Definition: imgproc_c.h:735
int double double double float * line
Definition: imgproc_c.h:944
CvArr * sum
Definition: imgproc_c.h:61
CvArr double alpha
Definition: imgproc_c.h:79
float * min_value
Definition: imgproc_c.h:689
const CvArr * image2
Definition: imgproc_c.h:73
float(CV_CDECL * CvDistanceFunction)(const float *a, const float *b, void *user_param)
Definition: types_c.h:482
CvPoint2D32f float * radius
Definition: imgproc_c.h:534
CvArr * corners
Definition: imgproc_c.h:869
void int double rho
Definition: imgproc_c.h:926
CvArr CvSize range
Definition: imgproc_c.h:781
CvArr * eig_image
Definition: imgproc_c.h:906
CvSize int int int arc_end
Definition: imgproc_c.h:1168
const CvArr int distance_type
Definition: imgproc_c.h:392
int int type
Definition: imgproc_c.h:621
CvArr * harris_response
Definition: imgproc_c.h:891
CvArr const CvMat * kernel
Definition: imgproc_c.h:131
CvArr CvArr CvPoint2D32f int double quality_level
Definition: imgproc_c.h:908
const CvArr CvArr CvArr * mapalpha
Definition: imgproc_c.h:264
int int y_order
Definition: imgproc_c.h:338
CvSeq CvScalar external_color
Definition: imgproc_c.h:1174
CvPoint CvPoint pt2
Definition: imgproc_c.h:357
const CvArr CvArr * mapxy
Definition: imgproc_c.h:264
void int double double theta
Definition: imgproc_c.h:926
const CvArr * signature2
Definition: imgproc_c.h:391
int int int int shape
Definition: imgproc_c.h:301
CvPoint CvSize axes
Definition: imgproc_c.h:1005
const CvFont CvSize int * baseline
Definition: imgproc_c.h:1150
CvArr int code
Definition: imgproc_c.h:203
const CvArr CvContour * contour_header
Definition: imgproc_c.h:577
int CvHistogram float * data
Definition: imgproc_c.h:654
CvArr double double threshold2
Definition: imgproc_c.h:861
CvArr CvPoint2D32f double maxRadius
Definition: imgproc_c.h:277
CvMemStorage CvSeq ** first_contour
Definition: imgproc_c.h:407
void * line_storage
Definition: imgproc_c.h:925
const void * object2
Definition: imgproc_c.h:539
int double param
Definition: imgproc_c.h:943
CvArr const CvArr *mask CV_DEFAULT(NULL))
int CvMemStorage int double eps
Definition: imgproc_c.h:493
CvPoint CvSize double double start_angle
Definition: imgproc_c.h:1006
CvArr * dst
Definition: imgproc_c.h:88
int CvHistogram * hist
Definition: imgproc_c.h:653
CvPoint CvSize double double double end_angle
Definition: imgproc_c.h:1006
float ** ranges
Definition: imgproc_c.h:636
const CvPoint * pts
Definition: imgproc_c.h:1026
void int double dp
Definition: imgproc_c.h:934
const CvArr CvArr int method
Definition: imgproc_c.h:384
CvArr double sp
Definition: imgproc_c.h:176
CvArr CvArr * temp_image
Definition: imgproc_c.h:907
int dist_type
Definition: imgproc_c.h:943
CvArr CvPoint2D32f center
Definition: imgproc_c.h:270
CvPoint2D32f int CvSize CvSize CvTermCriteria criteria
Definition: imgproc_c.h:900
CvPoint CvPoint void * buffer
Definition: imgproc_c.h:357
CvArr double double sr
Definition: imgproc_c.h:176
CvSeq * new_contour
Definition: imgproc_c.h:438
int double hscale
Definition: imgproc_c.h:1127
CvPoint const int int contours
Definition: imgproc_c.h:1033
CV_INLINE void cvEllipseBox(CvArr *img, CvBox2D box, CvScalar color, int thickness CV_DEFAULT(1), int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0))
Definition: imgproc_c.h:1010
const CvArr * mat
Definition: imgproc_c.h:576
const CvHistogram CvHistogram * dst_hist
Definition: imgproc_c.h:801
CvSeq * contour
Definition: imgproc_c.h:1173
const CvHistogram * hist2
Definition: imgproc_c.h:717
CvArr * sqsum
Definition: imgproc_c.h:67
CvArr * eigenvv
Definition: imgproc_c.h:876
const CvArr CvContour CvSeqBlock * block
Definition: imgproc_c.h:578
CvArr CvPoint offset
Definition: imgproc_c.h:88
double double scale
Definition: imgproc_c.h:236
CvPoint2D32f int CvSize CvSize zero_zone
Definition: imgproc_c.h:899
void int double double min_dist
Definition: imgproc_c.h:934
CvArr CvArr CvPoint2D32f int * corner_count
Definition: imgproc_c.h:908
const char CvPoint const CvFont * font
Definition: imgproc_c.h:1144
const CvArr * convexhull
Definition: imgproc_c.h:559
CvArr const CvArr * mapx
Definition: imgproc_c.h:256
CvArr int int yorder
Definition: imgproc_c.h:191
int extra_layers
Definition: imgproc_c.h:162
CvArr CvArr IplConvKernel int operation
Definition: imgproc_c.h:330
CvSeq CvScalar CvScalar hole_color
Definition: imgproc_c.h:1174
CvChainPtReader * reader
Definition: imgproc_c.h:475
int * sizes
Definition: imgproc_c.h:621
CvArr CvArr * temp
Definition: imgproc_c.h:329
@ CV_THRESH_BINARY
Definition: types_c.h:605
@ CV_CLOCKWISE
Definition: types_c.h:546
@ CV_RETR_LIST
Definition: types_c.h:488
@ CV_GAUSSIAN
Definition: types_c.h:78
@ CV_ADAPTIVE_THRESH_MEAN_C
Definition: types_c.h:621
@ CV_DIST_L2
Definition: types_c.h:593
@ CV_DIST_LABEL_CCOMP
Definition: types_c.h:584
@ CV_WARP_FILL_OUTLIERS
Definition: types_c.h:379
@ CV_GAUSSIAN_5x5
Definition: types_c.h:90
@ CV_CHAIN_APPROX_SIMPLE
Definition: types_c.h:499
@ CV_INTER_LINEAR
Definition: types_c.h:370
CV_EXPORTS OutputArray int double double InputArray OutputArray int int bool double k
Definition: imgproc.hpp:2133
InputArray int InputArray CV_IN_OUT Ptr< float > OutputArray flow
Definition: imgproc.hpp:3388
OutputArray OutputArray int int int labelType
Definition: imgproc.hpp:3566
CV_EXPORTS_W void accumulate(InputArray src, InputOutputArray dst, InputArray mask=noArray())
Adds an image to the accumulator image.
OutputArray int connectivity
Definition: imgproc.hpp:3937
Definition: types_c.h:1262
float angle
Definition: types_c.h:1265
CvPoint2D32f center
Definition: types_c.h:1263
CvSize2D32f size
Definition: types_c.h:1264
Definition: types_c.h:513
Definition: types_c.h:1674
Definition: types_c.h:58
Definition: types_c.h:1687
Definition: imgproc_c.h:1094
int font_face
Definition: imgproc_c.h:1097
float hscale
Definition: imgproc_c.h:1101
const int * cyrillic
Definition: imgproc_c.h:1100
float shear
slope coefficient: 0 - normal, >0 - italic
Definition: imgproc_c.h:1102
CvScalar color
Definition: imgproc_c.h:1096
int thickness
Qt: weight /‍** letters thickness *‍/.
Definition: imgproc_c.h:1103
int line_type
Qt: PointSize.
Definition: imgproc_c.h:1105
float dx
horizontal interval between letters
Definition: imgproc_c.h:1104
float vscale
Definition: imgproc_c.h:1101
const int * greek
Definition: imgproc_c.h:1099
const int * ascii
font data and metrics
Definition: imgproc_c.h:1098
const char * nameFont
Definition: imgproc_c.h:1095
Definition: types_c.h:802
Definition: types_c.h:466
Definition: types_c.h:1301
Definition: types_c.h:455
Definition: types_c.h:1482
Definition: types_c.h:409
Definition: types_c.h:977
Definition: types_c.h:935
Definition: types_c.h:832
Definition: types_c.h:1367
Definition: types_c.h:1508
Definition: types_c.h:1558
float width
Definition: types_c.h:1210
float height
Definition: types_c.h:1211
Definition: types_c.h:1158
Definition: types_c.h:1321
Definition: types_c.h:902
Definition: types_c.h:379
Definition: types_c.h:314