Update the trunk to the OpenCV's CVS (2008-07-14)
[opencv] / samples / c / convert_cascade.c
1 #ifdef _CH_
2 #pragma package <opencv>
3 #endif
4
5 #ifndef _EiC
6 #include "cv.h"
7 #include "highgui.h"
8 #include <stdio.h>
9 #endif
10
11 int main( int argc, char** argv )
12 {
13     const char* size_opt = "--size=";
14     char comment[1024];
15     CvHaarClassifierCascade* cascade = 0;
16     CvSize size;
17
18     if( argc != 4 || strncmp( argv[1], size_opt, strlen(size_opt) ) != 0 )
19     {
20         printf( "Usage: convert_cascade --size=\"<width>x<height>\" input_cascade_path output_cascade_filename\n" );
21         return -1;
22     }
23
24     sscanf( argv[1], "--size=%ux%u", &size.width, &size.height );
25     cascade = cvLoadHaarClassifierCascade( argv[2], size );
26
27     if( !cascade )
28     {
29         fprintf( stderr, "Input cascade could not be found/opened\n" );
30         return -1;
31     }
32
33     sprintf( comment, "Automatically converted from %s, window size = %dx%d", argv[2], size.width, size.height );
34     cvSave( argv[3], cascade, 0, comment, cvAttrList(0,0) );
35     return 0;
36 }
37
38 #ifdef _EiC
39 main(1,"facedetect.c");
40 #endif