├── .gitattributes
├── .gitignore
├── CS549_ObjectDetection.sdf
├── CS549_ObjectDetection.sln
├── CS549_ObjectDetection.v12.suo
├── CS549_ObjectDetection
├── CS549_ObjectDetection.vcxproj
├── CS549_ObjectDetection.vcxproj.filters
├── ColorRecognition.cpp
├── Debug
│ ├── CS549_Ob.0CEDAC80.tlog
│ │ ├── CL.read.1.tlog
│ │ ├── CL.write.1.tlog
│ │ ├── CS549_ObjectDetection.lastbuildstate
│ │ ├── cl.command.1.tlog
│ │ ├── link.command.1.tlog
│ │ ├── link.read.1.tlog
│ │ └── link.write.1.tlog
│ ├── CS549_ObjectDetection.Build.CppClean.log
│ ├── CS549_ObjectDetection.log
│ └── vc120.idb
├── Global.cpp
├── Global.h
├── ImageDisplay.cpp
├── Main.cpp
├── PeopleDetect.cpp
├── Res
│ └── genfiles
│ │ └── svmparam.txt
├── Shape_Multi.cpp
├── TriangleImage.cpp
├── Utility.h
├── cam_color.cpp
├── libsvm
│ └── libsvm.h
└── svmlight
│ ├── kernel.h
│ ├── svm_classify.c
│ ├── svm_common.c
│ ├── svm_common.h
│ ├── svm_hideo.c
│ ├── svm_learn.c
│ ├── svm_learn.h
│ └── svmlight.h
├── Debug
├── Res
│ └── genfiles
│ │ └── svmparam.txt
├── opencv_calib3d2410d.dll
├── opencv_contrib2410d.dll
├── opencv_core2410d.dll
├── opencv_features2d2410d.dll
├── opencv_flann2410d.dll
├── opencv_gpu2410d.dll
├── opencv_highgui2410d.dll
├── opencv_imgproc2410d.dll
├── opencv_legacy2410d.dll
├── opencv_ml2410d.dll
├── opencv_nonfree2410d.dll
├── opencv_objdetect2410d.dll
├── opencv_ocl2410d.dll
├── opencv_photo2410d.dll
├── opencv_stitching2410d.dll
├── opencv_superres2410d.dll
├── opencv_video2410d.dll
└── opencv_videostab2410d.dll
├── OpenCV
├── ReadMe.txt
├── bin
│ ├── opencv_calib3d2410.dll
│ ├── opencv_calib3d2410d.dll
│ ├── opencv_contrib2410.dll
│ ├── opencv_contrib2410d.dll
│ ├── opencv_core2410.dll
│ ├── opencv_core2410d.dll
│ ├── opencv_features2d2410.dll
│ ├── opencv_features2d2410d.dll
│ ├── opencv_flann2410.dll
│ ├── opencv_flann2410d.dll
│ ├── opencv_gpu2410.dll
│ ├── opencv_gpu2410d.dll
│ ├── opencv_highgui2410.dll
│ ├── opencv_highgui2410d.dll
│ ├── opencv_imgproc2410.dll
│ ├── opencv_imgproc2410d.dll
│ ├── opencv_legacy2410.dll
│ ├── opencv_legacy2410d.dll
│ ├── opencv_ml2410.dll
│ ├── opencv_ml2410d.dll
│ ├── opencv_objdetect2410.dll
│ ├── opencv_objdetect2410d.dll
│ ├── opencv_video2410.dll
│ └── opencv_video2410d.dll
├── include
│ ├── opencv
│ │ ├── cv.h
│ │ ├── cv.hpp
│ │ ├── cvaux.h
│ │ ├── cvaux.hpp
│ │ ├── cvwimage.h
│ │ ├── cxcore.h
│ │ ├── cxcore.hpp
│ │ ├── cxeigen.hpp
│ │ ├── cxmisc.h
│ │ ├── highgui.h
│ │ └── ml.h
│ └── opencv2
│ │ ├── calib3d
│ │ └── calib3d.hpp
│ │ ├── contrib
│ │ ├── contrib.hpp
│ │ ├── detection_based_tracker.hpp
│ │ ├── hybridtracker.hpp
│ │ ├── openfabmap.hpp
│ │ └── retina.hpp
│ │ ├── core
│ │ ├── affine.hpp
│ │ ├── core.hpp
│ │ ├── core_c.h
│ │ ├── cuda_devptrs.hpp
│ │ ├── devmem2d.hpp
│ │ ├── eigen.hpp
│ │ ├── gpumat.hpp
│ │ ├── internal.hpp
│ │ ├── mat.hpp
│ │ ├── opengl_interop.hpp
│ │ ├── opengl_interop_deprecated.hpp
│ │ ├── operations.hpp
│ │ ├── types_c.h
│ │ ├── version.hpp
│ │ └── wimage.hpp
│ │ ├── features2d
│ │ └── features2d.hpp
│ │ ├── flann
│ │ ├── all_indices.h
│ │ ├── allocator.h
│ │ ├── any.h
│ │ ├── autotuned_index.h
│ │ ├── composite_index.h
│ │ ├── config.h
│ │ ├── defines.h
│ │ ├── dist.h
│ │ ├── dummy.h
│ │ ├── dynamic_bitset.h
│ │ ├── flann.hpp
│ │ ├── flann_base.hpp
│ │ ├── general.h
│ │ ├── ground_truth.h
│ │ ├── hdf5.h
│ │ ├── heap.h
│ │ ├── hierarchical_clustering_index.h
│ │ ├── index_testing.h
│ │ ├── kdtree_index.h
│ │ ├── kdtree_single_index.h
│ │ ├── kmeans_index.h
│ │ ├── linear_index.h
│ │ ├── logger.h
│ │ ├── lsh_index.h
│ │ ├── lsh_table.h
│ │ ├── matrix.h
│ │ ├── miniflann.hpp
│ │ ├── nn_index.h
│ │ ├── object_factory.h
│ │ ├── params.h
│ │ ├── random.h
│ │ ├── result_set.h
│ │ ├── sampling.h
│ │ ├── saving.h
│ │ ├── simplex_downhill.h
│ │ └── timer.h
│ │ ├── gpu
│ │ ├── device
│ │ │ ├── block.hpp
│ │ │ ├── border_interpolate.hpp
│ │ │ ├── color.hpp
│ │ │ ├── common.hpp
│ │ │ ├── datamov_utils.hpp
│ │ │ ├── detail
│ │ │ │ ├── color_detail.hpp
│ │ │ │ ├── reduce.hpp
│ │ │ │ ├── reduce_key_val.hpp
│ │ │ │ ├── transform_detail.hpp
│ │ │ │ ├── type_traits_detail.hpp
│ │ │ │ └── vec_distance_detail.hpp
│ │ │ ├── dynamic_smem.hpp
│ │ │ ├── emulation.hpp
│ │ │ ├── filters.hpp
│ │ │ ├── funcattrib.hpp
│ │ │ ├── functional.hpp
│ │ │ ├── limits.hpp
│ │ │ ├── reduce.hpp
│ │ │ ├── saturate_cast.hpp
│ │ │ ├── scan.hpp
│ │ │ ├── simd_functions.hpp
│ │ │ ├── static_check.hpp
│ │ │ ├── transform.hpp
│ │ │ ├── type_traits.hpp
│ │ │ ├── utility.hpp
│ │ │ ├── vec_distance.hpp
│ │ │ ├── vec_math.hpp
│ │ │ ├── vec_traits.hpp
│ │ │ ├── warp.hpp
│ │ │ ├── warp_reduce.hpp
│ │ │ └── warp_shuffle.hpp
│ │ ├── devmem2d.hpp
│ │ ├── gpu.hpp
│ │ ├── gpumat.hpp
│ │ └── stream_accessor.hpp
│ │ ├── highgui
│ │ ├── cap_ios.h
│ │ ├── highgui.hpp
│ │ ├── highgui_c.h
│ │ └── ios.h
│ │ ├── imgproc
│ │ ├── imgproc.hpp
│ │ ├── imgproc_c.h
│ │ └── types_c.h
│ │ ├── legacy
│ │ ├── blobtrack.hpp
│ │ ├── compat.hpp
│ │ ├── legacy.hpp
│ │ └── streams.hpp
│ │ ├── ml
│ │ └── ml.hpp
│ │ ├── nonfree
│ │ ├── features2d.hpp
│ │ ├── gpu.hpp
│ │ ├── nonfree.hpp
│ │ └── ocl.hpp
│ │ ├── objdetect
│ │ └── objdetect.hpp
│ │ ├── ocl
│ │ ├── matrix_operations.hpp
│ │ └── ocl.hpp
│ │ ├── opencv.hpp
│ │ ├── opencv_modules.hpp
│ │ ├── photo
│ │ ├── photo.hpp
│ │ └── photo_c.h
│ │ ├── stitching
│ │ ├── detail
│ │ │ ├── autocalib.hpp
│ │ │ ├── blenders.hpp
│ │ │ ├── camera.hpp
│ │ │ ├── exposure_compensate.hpp
│ │ │ ├── matchers.hpp
│ │ │ ├── motion_estimators.hpp
│ │ │ ├── seam_finders.hpp
│ │ │ ├── util.hpp
│ │ │ ├── util_inl.hpp
│ │ │ ├── warpers.hpp
│ │ │ └── warpers_inl.hpp
│ │ ├── stitcher.hpp
│ │ └── warpers.hpp
│ │ ├── superres
│ │ ├── optical_flow.hpp
│ │ └── superres.hpp
│ │ ├── ts
│ │ ├── gpu_perf.hpp
│ │ ├── gpu_test.hpp
│ │ ├── ts.hpp
│ │ ├── ts_gtest.h
│ │ └── ts_perf.hpp
│ │ ├── video
│ │ ├── background_segm.hpp
│ │ ├── tracking.hpp
│ │ └── video.hpp
│ │ └── videostab
│ │ ├── deblurring.hpp
│ │ ├── fast_marching.hpp
│ │ ├── fast_marching_inl.hpp
│ │ ├── frame_source.hpp
│ │ ├── global_motion.hpp
│ │ ├── inpainting.hpp
│ │ ├── log.hpp
│ │ ├── motion_stabilizing.hpp
│ │ ├── optical_flow.hpp
│ │ ├── stabilizer.hpp
│ │ └── videostab.hpp
├── lib - backup
│ ├── opencv_calib3d2410.lib
│ ├── opencv_calib3d2410d.lib
│ ├── opencv_contrib2410.lib
│ ├── opencv_contrib2410d.lib
│ ├── opencv_core2410.lib
│ ├── opencv_core2410d.lib
│ ├── opencv_features2d2410.lib
│ ├── opencv_features2d2410d.lib
│ ├── opencv_flann2410.lib
│ ├── opencv_flann2410d.lib
│ ├── opencv_gpu2410.lib
│ ├── opencv_gpu2410d.lib
│ ├── opencv_highgui2410.lib
│ ├── opencv_highgui2410d.lib
│ ├── opencv_imgproc2410.lib
│ ├── opencv_imgproc2410d.lib
│ ├── opencv_legacy2410.lib
│ ├── opencv_legacy2410d.lib
│ ├── opencv_ml2410.lib
│ ├── opencv_ml2410d.lib
│ ├── opencv_objdetect2410.lib
│ ├── opencv_objdetect2410d.lib
│ ├── opencv_video2410.lib
│ └── opencv_video2410d.lib
└── lib
│ ├── opencv_calib3d2410.lib
│ ├── opencv_calib3d2410d.lib
│ ├── opencv_contrib2410.lib
│ ├── opencv_contrib2410d.lib
│ ├── opencv_core2410.lib
│ ├── opencv_core2410d.lib
│ ├── opencv_features2d2410.lib
│ ├── opencv_features2d2410d.lib
│ ├── opencv_flann2410.lib
│ ├── opencv_flann2410d.lib
│ ├── opencv_gpu2410.lib
│ ├── opencv_gpu2410d.lib
│ ├── opencv_highgui2410.lib
│ ├── opencv_highgui2410d.lib
│ ├── opencv_imgproc2410.lib
│ ├── opencv_imgproc2410d.lib
│ ├── opencv_legacy2410.lib
│ ├── opencv_legacy2410d.lib
│ ├── opencv_ml2410.lib
│ ├── opencv_ml2410d.lib
│ ├── opencv_nonfree2410.lib
│ ├── opencv_nonfree2410d.lib
│ ├── opencv_objdetect2410.lib
│ ├── opencv_objdetect2410d.lib
│ ├── opencv_ocl2410.lib
│ ├── opencv_ocl2410d.lib
│ ├── opencv_photo2410.lib
│ ├── opencv_photo2410d.lib
│ ├── opencv_stitching2410.lib
│ ├── opencv_stitching2410d.lib
│ ├── opencv_superres2410.lib
│ ├── opencv_superres2410d.lib
│ ├── opencv_ts2410.lib
│ ├── opencv_ts2410d.lib
│ ├── opencv_video2410.lib
│ ├── opencv_video2410d.lib
│ ├── opencv_videostab2410.lib
│ └── opencv_videostab2410d.lib
├── README.md
└── Release
├── opencv_calib3d2410.dll
├── opencv_contrib2410.dll
├── opencv_core2410.dll
├── opencv_features2d2410.dll
├── opencv_ffmpeg2410.dll
├── opencv_flann2410.dll
├── opencv_gpu2410.dll
├── opencv_highgui2410.dll
├── opencv_imgproc2410.dll
├── opencv_legacy2410.dll
├── opencv_ml2410.dll
├── opencv_nonfree2410.dll
├── opencv_objdetect2410.dll
├── opencv_ocl2410.dll
├── opencv_photo2410.dll
├── opencv_stitching2410.dll
├── opencv_superres2410.dll
├── opencv_video2410.dll
└── opencv_videostab2410.dll
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 | *.sln merge=union
7 | *.csproj merge=union
8 | *.vbproj merge=union
9 | *.fsproj merge=union
10 | *.dbproj merge=union
11 |
12 | # Standard to msysgit
13 | *.doc diff=astextplain
14 | *.DOC diff=astextplain
15 | *.docx diff=astextplain
16 | *.DOCX diff=astextplain
17 | *.dot diff=astextplain
18 | *.DOT diff=astextplain
19 | *.pdf diff=astextplain
20 | *.PDF diff=astextplain
21 | *.rtf diff=astextplain
22 | *.RTF diff=astextplain
23 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Windows image file caches
2 | Thumbs.db
3 | ehthumbs.db
4 |
5 | # Folder config file
6 | Desktop.ini
7 |
8 | # Recycle Bin used on file shares
9 | $RECYCLE.BIN/
10 |
11 | # Windows Installer files
12 | *.cab
13 | *.msi
14 | *.msm
15 | *.msp
16 |
17 | #Resource
18 | *.jpg
19 | *.JPG
20 | *.png
21 | *.PNG
22 | *.dat
23 | *.pdb
24 | *.exe
25 | *.ilk
26 | *.obj
27 |
28 | # =========================
29 | # Operating System Files
30 | # =========================
31 |
32 | # OSX
33 | # =========================
34 |
35 | .DS_Store
36 | .AppleDouble
37 | .LSOverride
38 |
39 | # Icon must end with two \r
40 | Icon
41 |
42 | # Thumbnails
43 | ._*
44 |
45 | # Files that might appear on external disk
46 | .Spotlight-V100
47 | .Trashes
48 |
49 | # Directories potentially created on remote AFP share
50 | .AppleDB
51 | .AppleDesktop
52 | Network Trash Folder
53 | Temporary Items
54 | .apdisk
55 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection.sdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection.sdf
--------------------------------------------------------------------------------
/CS549_ObjectDetection.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 2013
4 | VisualStudioVersion = 12.0.21005.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CS549_ObjectDetection", "CS549_ObjectDetection\CS549_ObjectDetection.vcxproj", "{0CEDAC80-9557-46FE-9536-D0DD660A98DB}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Win32 = Debug|Win32
11 | Release|Win32 = Release|Win32
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {0CEDAC80-9557-46FE-9536-D0DD660A98DB}.Debug|Win32.ActiveCfg = Debug|Win32
15 | {0CEDAC80-9557-46FE-9536-D0DD660A98DB}.Debug|Win32.Build.0 = Debug|Win32
16 | {0CEDAC80-9557-46FE-9536-D0DD660A98DB}.Release|Win32.ActiveCfg = Release|Win32
17 | {0CEDAC80-9557-46FE-9536-D0DD660A98DB}.Release|Win32.Build.0 = Release|Win32
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection.v12.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection.v12.suo
--------------------------------------------------------------------------------
/CS549_ObjectDetection/CS549_ObjectDetection.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
7 |
8 |
9 | {93995380-89BD-4b04-88EB-625FBE52EBFB}
10 | h;hh;hpp;hxx;hm;inl;inc;xsd
11 |
12 |
13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
15 |
16 |
17 | {6da58137-3f3d-435c-8494-018cb2ba6843}
18 |
19 |
20 | {fb8d7856-37ac-4404-b7ad-63897967210a}
21 |
22 |
23 |
24 |
25 | Header Files
26 |
27 |
28 | Resource Files\SVM
29 |
30 |
31 | Resource Files\SVM
32 |
33 |
34 | Resource Files\SVM
35 |
36 |
37 | Resource Files\SVM
38 |
39 |
40 | Resource Files\SVM
41 |
42 |
43 | Header Files
44 |
45 |
46 |
47 |
48 | Source Files
49 |
50 |
51 | Source Files
52 |
53 |
54 | Resource Files\SVM
55 |
56 |
57 | Resource Files\SVM
58 |
59 |
60 | Resource Files\SVM
61 |
62 |
63 | Resource Files\SVM
64 |
65 |
66 | Source Files
67 |
68 |
69 | Resource Files\Samples
70 |
71 |
72 | Resource Files\Samples
73 |
74 |
75 | Resource Files\Samples
76 |
77 |
78 | Resource Files\Samples
79 |
80 |
81 | Resource Files\Samples
82 |
83 |
84 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection/ColorRecognition.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Description : Color recognition, detecting red color with video capture.
3 | Source : http://opencv-srf.blogspot.ro/2010/09/object-detection-using-color-seperation.html
4 | */
5 |
6 | #include"Utility.h"
7 |
8 | #ifdef SAMPLE_COLOR
9 | int main()
10 | #else
11 | int sample_color_main()
12 | #endif
13 | {
14 | VideoCapture cap(0); //capture the video from web cam
15 |
16 | if (!cap.isOpened()) // if not success, exit program
17 | {
18 | cout << "Cannot open the web cam" << endl;
19 | return -1;
20 | }
21 |
22 | namedWindow("Control", CV_WINDOW_AUTOSIZE); //create a window called "Control"
23 |
24 | int iLowH = 0;
25 | int iHighH = 179;
26 |
27 | int iLowS = 0;
28 | int iHighS = 255;
29 |
30 | int iLowV = 0;
31 | int iHighV = 255;
32 |
33 | //Create trackbars in "Control" window
34 | cvCreateTrackbar("LowH", "Control", &iLowH, 179); //Hue (0 - 179)
35 | cvCreateTrackbar("HighH", "Control", &iHighH, 179);
36 |
37 | cvCreateTrackbar("LowS", "Control", &iLowS, 255); //Saturation (0 - 255)
38 | cvCreateTrackbar("HighS", "Control", &iHighS, 255);
39 |
40 | cvCreateTrackbar("LowV", "Control", &iLowV, 255);//Value (0 - 255)
41 | cvCreateTrackbar("HighV", "Control", &iHighV, 255);
42 |
43 | while (true)
44 | {
45 | Mat imgOriginal;
46 |
47 | bool bSuccess = cap.read(imgOriginal); // read a new frame from video
48 |
49 | if (!bSuccess) //if not success, break loop
50 | {
51 | cout << "Cannot read a frame from video stream" << endl;
52 | break;
53 | }
54 |
55 | Mat imgHSV;
56 |
57 | cvtColor(imgOriginal, imgHSV, COLOR_BGR2HSV); //Convert the captured frame from BGR to HSV
58 |
59 | Mat imgThresholded;
60 |
61 | inRange(imgHSV, Scalar(iLowH, iLowS, iLowV), Scalar(iHighH, iHighS, iHighV), imgThresholded); //Threshold the image
62 |
63 | //morphological opening (removes small objects from the foreground)
64 | erode(imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(5, 5)));
65 | dilate(imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(5, 5)));
66 |
67 | //morphological closing (removes small holes from the foreground)
68 | dilate(imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(5, 5)));
69 | erode(imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(5, 5)));
70 |
71 | imshow("Thresholded Image", imgThresholded); //show the thresholded image
72 | imshow("Original", imgOriginal); //show the original image
73 |
74 | if (waitKey(30) == 27) //wait for 'esc' key press for 30ms. If 'esc' key is pressed, break loop
75 | {
76 | cout << "esc key is pressed by user" << endl;
77 | break;
78 | }
79 | }
80 |
81 | return 0;
82 | }
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/CL.read.1.tlog:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/CL.read.1.tlog
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/CL.write.1.tlog:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/CL.write.1.tlog
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/CS549_ObjectDetection.lastbuildstate:
--------------------------------------------------------------------------------
1 | #TargetFrameworkVersion=v4.0:PlatformToolSet=v120:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit
2 | Debug|Win32|D:\Projects\OpenCV\ObjectDetection\|
3 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/cl.command.1.tlog:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/cl.command.1.tlog
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/link.command.1.tlog:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/link.command.1.tlog
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/link.read.1.tlog:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/link.read.1.tlog
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/link.write.1.tlog:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Debug/CS549_Ob.0CEDAC80.tlog/link.write.1.tlog
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_ObjectDetection.Build.CppClean.log:
--------------------------------------------------------------------------------
1 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\vc120.pdb
2 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\vc120.idb
3 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\colorrecognition.obj
4 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\imagedisplay.obj
5 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\main.obj
6 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\peopledetect.obj
7 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\shape_multi.obj
8 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\triangleimage.obj
9 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cam_color.obj
10 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\svm_classify.obj
11 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\svm_common.obj
12 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\svm_hideo.obj
13 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\svm_learn.obj
14 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\global.obj
15 | d:\projects\opencv\cs549_objectdetection\debug\cs549_objectdetection.pdb
16 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\cl.command.1.tlog
17 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\cl.read.1.tlog
18 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\cl.write.1.tlog
19 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link-cvtres.read.1.tlog
20 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link-cvtres.write.1.tlog
21 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link-rc.read.1.tlog
22 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link-rc.write.1.tlog
23 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.671808-cvtres.read.1.tlog
24 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.671808-cvtres.write.1.tlog
25 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.671808-rc.read.1.tlog
26 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.671808-rc.write.1.tlog
27 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.671808.read.1.tlog
28 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.671808.write.1.tlog
29 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.command.1.tlog
30 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.read.1.tlog
31 | d:\projects\opencv\cs549_objectdetection\cs549_objectdetection\debug\cs549_ob.0cedac80.tlog\link.write.1.tlog
32 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/CS549_ObjectDetection.log:
--------------------------------------------------------------------------------
1 | Build started 12/17/2014 10:20:06 AM.
2 | 1>Project "D:\Projects\OpenCV\ObjectDetection\CS549_ObjectDetection\CS549_ObjectDetection.vcxproj" on node 2 (Build target(s)).
3 | 1>ClCompile:
4 | C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\CL.exe /c /I..\OpenCV\include /ZI /nologo /W3 /WX- /sdl /Od /Oy- /D WIN32 /D _DEBUG /D _CONSOLE /D _LIB /D _CRT_SECURE_NO_DEPRECATE /D _UNICODE /D UNICODE /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"Debug\\" /Fd"Debug\vc120.pdb" /Gd /TP /analyze- /errorReport:prompt Main.cpp
5 | Main.cpp
6 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\utility.h(79): warning C4018: '<' : signed/unsigned mismatch
7 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\utility.h(102): warning C4018: '<' : signed/unsigned mismatch
8 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\svmlight\svmlight.h(136): warning C4018: '<' : signed/unsigned mismatch
9 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\svmlight\svmlight.h(138): warning C4244: '+=' : conversion from 'double' to 'float', possible loss of data
10 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\svmlight\svmlight.h(148): warning C4244: 'return' : conversion from 'double' to 'float', possible loss of data
11 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\global.h(227): warning C4244: '=' : conversion from 'unsigned long' to 'float', possible loss of data
12 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\global.h(273): warning C4018: '<' : signed/unsigned mismatch
13 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\global.h(275): warning C4244: '=' : conversion from 'unsigned int' to 'float', possible loss of data
14 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\global.h(294): warning C4101: 'percent' : unreferenced local variable
15 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\global.h(440): warning C4018: '<' : signed/unsigned mismatch
16 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\global.h(189): warning C4715: 'importImageSamples' : not all control paths return a value
17 | 1>d:\projects\opencv\objectdetection\cs549_objectdetection\global.h(256): warning C4715: 'getSamplesToGenerateFeatures' : not all control paths return a value
18 | Link:
19 | C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"D:\Projects\OpenCV\ObjectDetection\Debug\CS549_ObjectDetection.exe" /INCREMENTAL /NOLOGO /LIBPATH:..\OpenCV\lib opencv_calib3d2410d.lib opencv_contrib2410.lib opencv_core2410d.lib opencv_features2d2410d.lib opencv_flann2410d.lib opencv_highgui2410d.lib opencv_gpu2410d.lib opencv_imgproc2410d.lib opencv_legacy2410d.lib opencv_ml2410d.lib opencv_objdetect2410d.lib opencv_video2410d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"D:\Projects\OpenCV\ObjectDetection\Debug\CS549_ObjectDetection.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:\Projects\OpenCV\ObjectDetection\Debug\CS549_ObjectDetection.lib" /MACHINE:X86 Debug\cam_color.obj
20 | Debug\ColorRecognition.obj
21 | Debug\Global.obj
22 | Debug\ImageDisplay.obj
23 | Debug\Main.obj
24 | Debug\PeopleDetect.obj
25 | Debug\Shape_Multi.obj
26 | Debug\svm_classify.obj
27 | Debug\svm_common.obj
28 | Debug\svm_hideo.obj
29 | Debug\svm_learn.obj
30 | Debug\TriangleImage.obj
31 | CS549_ObjectDetection.vcxproj -> D:\Projects\OpenCV\ObjectDetection\Debug\CS549_ObjectDetection.exe
32 | 1>Done Building Project "D:\Projects\OpenCV\ObjectDetection\CS549_ObjectDetection\CS549_ObjectDetection.vcxproj" (Build target(s)).
33 |
34 | Build succeeded.
35 |
36 | Time Elapsed 00:00:02.38
37 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Debug/vc120.idb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Debug/vc120.idb
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Global.cpp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/CS549_ObjectDetection/Global.cpp
--------------------------------------------------------------------------------
/CS549_ObjectDetection/ImageDisplay.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Description : Simple image display
3 | */
4 |
5 | #include"Utility.h"
6 |
7 | #ifdef SAMPLE_IMAGE
8 | int main()
9 | #else
10 | int sample_image_main()
11 | #endif
12 | {
13 | Mat image = cvLoadImage("Res\\image\\Capture.PNG"); //notice the path of the image file
14 | Mat HSV;
15 | cvtColor(image, HSV, CV_BGR2HSV);
16 | Point center = Point(150,280);
17 | Vec3b hsv = HSV.at(center);
18 | Vec3i max = hsv;
19 | Vec3i min = hsv;
20 |
21 | int b = 5;
22 | for (int i = -b; i < b; i++)
23 | {
24 | for (int j = -b; j < b; j++)
25 | {
26 | hsv = HSV.at(center + Point(i, j));
27 | cout << "HSV" << (int)hsv.val[0] << " " << (int)hsv.val[1] << " " << (int)hsv.val[2] << endl;
28 | for (int t = 0; t < 3; t++)
29 | {
30 | if (hsv.val[t] < min[t])
31 | {
32 | min[t] = hsv.val[t];
33 | }
34 | if (hsv.val[t]>max[t])
35 | {
36 | max[t] = hsv.val[t];
37 | }
38 | }
39 | }
40 | }
41 | rectangle(image, center - Point(b, b), center + Point(b, b), cv::Scalar(0, 255, 0), 2);
42 | cout << "Max: " << max << endl;
43 | cout << "Min: " << min << endl;
44 | imshow("Test", image);
45 |
46 | cvWaitKey(0);
47 | image.release();
48 | //cvReleaseImage(&image);
49 | //cvDestroyWindow("Hello World");
50 | return 0;
51 | }
--------------------------------------------------------------------------------
/CS549_ObjectDetection/PeopleDetect.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Description : People detection based on HOG feature and SVM classifier,
3 | with video capture and green rectangle display.
4 | Source : http://www.magicandlove.com/blog/2011/08/26/people-detection-in-opencv-again/
5 | */
6 | #include"Utility.h"
7 |
8 | #ifdef SAMPLE_PEOPLE
9 | int main(int argc, char** argv)
10 | #else
11 | int sample_people_main(int argc, char** argv)
12 | #endif
13 | {
14 | VideoCapture cap(CV_CAP_ANY);
15 | cap.set(CV_CAP_PROP_FRAME_WIDTH, 320);
16 | cap.set(CV_CAP_PROP_FRAME_HEIGHT, 240);
17 | if (!cap.isOpened())
18 | return -1;
19 |
20 | Mat img;
21 | HOGDescriptor hog;
22 | hog.setSVMDetector(HOGDescriptor::getDefaultPeopleDetector());
23 |
24 | namedWindow("video capture", CV_WINDOW_AUTOSIZE);
25 | while (true)
26 | {
27 | cap >> img;
28 | if (!img.data)
29 | continue;
30 |
31 | vector found, found_filtered;
32 | hog.detectMultiScale(img, found, 0, Size(8, 8), Size(32, 32), 1.05, 2);
33 |
34 | size_t i, j;
35 | for (i = 0; i= 0)
55 | break;
56 | }
57 | return 0;
58 | }
59 |
60 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Res/genfiles/svmparam.txt:
--------------------------------------------------------------------------------
1 | 1.23
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Shape_Multi.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Description : Multiple shapes detection, with image.
3 | Source : http://opencv-srf.blogspot.com/2011/09/object-detection-tracking-using-contours.html
4 | */
5 |
6 | #include"Utility.h"
7 |
8 | /*
9 | - greyscale only
10 | */
11 |
12 | #ifdef SAMPLE_MULTIPLESHAPES
13 | int main()
14 | #else
15 | int sample_multiple_shapes_main()
16 | #endif
17 | {
18 |
19 | IplImage* img = cvLoadImage("Res\\image\\FindingContours_Multi.png");
20 |
21 | //show the original image
22 | cvNamedWindow("Raw");
23 | cvShowImage("Raw", img);
24 |
25 | //converting the original image into grayscale
26 | IplImage* imgGrayScale = cvCreateImage(cvGetSize(img), 8, 1);
27 | cvCvtColor(img, imgGrayScale, CV_BGR2GRAY);
28 |
29 | //thresholding the grayscale image to get better results
30 | cvThreshold(imgGrayScale, imgGrayScale, 128, 255, CV_THRESH_BINARY);
31 |
32 | CvSeq* contours; //hold the pointer to a contour in the memory block
33 | CvSeq* result; //hold sequence of points of a contour
34 | CvMemStorage *storage = cvCreateMemStorage(0); //storage area for all contours
35 |
36 | //finding all contours in the image
37 | cvFindContours(imgGrayScale, storage, &contours, sizeof(CvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE, cvPoint(0, 0));
38 |
39 | //iterating through each contour
40 | while (contours)
41 | {
42 | //obtain a sequence of points of contour, pointed by the variable 'contour'
43 | result = cvApproxPoly(contours, sizeof(CvContour), storage, CV_POLY_APPROX_DP, cvContourPerimeter(contours)*0.02, 0);
44 |
45 | //if there are 3 vertices in the contour(It should be a triangle)
46 | if (result->total == 3)
47 | {
48 | //iterating through each point
49 | CvPoint *pt[3];
50 | for (int i = 0; i<3; i++){
51 | pt[i] = (CvPoint*)cvGetSeqElem(result, i);
52 | }
53 |
54 | //drawing lines around the triangle
55 | cvLine(img, *pt[0], *pt[1], cvScalar(255, 0, 0), 4);
56 | cvLine(img, *pt[1], *pt[2], cvScalar(255, 0, 0), 4);
57 | cvLine(img, *pt[2], *pt[0], cvScalar(255, 0, 0), 4);
58 |
59 | }
60 |
61 | //if there are 4 vertices in the contour(It should be a quadrilateral)
62 | else if (result->total == 4)
63 | {
64 | //iterating through each point
65 | CvPoint *pt[4];
66 | for (int i = 0; i<4; i++){
67 | pt[i] = (CvPoint*)cvGetSeqElem(result, i);
68 | }
69 |
70 | //drawing lines around the quadrilateral
71 | cvLine(img, *pt[0], *pt[1], cvScalar(0, 255, 0), 4);
72 | cvLine(img, *pt[1], *pt[2], cvScalar(0, 255, 0), 4);
73 | cvLine(img, *pt[2], *pt[3], cvScalar(0, 255, 0), 4);
74 | cvLine(img, *pt[3], *pt[0], cvScalar(0, 255, 0), 4);
75 | }
76 |
77 | //if there are 7 vertices in the contour(It should be a heptagon)
78 | else if (result->total == 7)
79 | {
80 | //iterating through each point
81 | CvPoint *pt[7];
82 | for (int i = 0; i<7; i++){
83 | pt[i] = (CvPoint*)cvGetSeqElem(result, i);
84 | }
85 |
86 | //drawing lines around the heptagon
87 | cvLine(img, *pt[0], *pt[1], cvScalar(0, 0, 255), 4);
88 | cvLine(img, *pt[1], *pt[2], cvScalar(0, 0, 255), 4);
89 | cvLine(img, *pt[2], *pt[3], cvScalar(0, 0, 255), 4);
90 | cvLine(img, *pt[3], *pt[4], cvScalar(0, 0, 255), 4);
91 | cvLine(img, *pt[4], *pt[5], cvScalar(0, 0, 255), 4);
92 | cvLine(img, *pt[5], *pt[6], cvScalar(0, 0, 255), 4);
93 | cvLine(img, *pt[6], *pt[0], cvScalar(0, 0, 255), 4);
94 | }
95 |
96 | //obtain the next contour
97 | contours = contours->h_next;
98 | }
99 |
100 | //show the image in which identified shapes are marked
101 | cvNamedWindow("Tracked");
102 | cvShowImage("Tracked", img);
103 |
104 | cvWaitKey(0); //wait for a key press
105 |
106 | //cleaning up
107 | cvDestroyAllWindows();
108 | cvReleaseMemStorage(&storage);
109 | cvReleaseImage(&img);
110 | cvReleaseImage(&imgGrayScale);
111 |
112 | return 0;
113 | }
--------------------------------------------------------------------------------
/CS549_ObjectDetection/TriangleImage.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | Description : Triangle detection, with image.
3 | Source : http://opencv-srf.blogspot.com/2011/09/object-detection-tracking-using-contours.html
4 | */
5 |
6 | #include"Utility.h"
7 |
8 | #ifdef SAMPLE_TRIANGLE
9 | int main()
10 | #else
11 | int sample_triangle_main()
12 | #endif
13 | {
14 |
15 | IplImage* img = cvLoadImage("Res\\image\\DetectingContours.jpg");
16 |
17 | //show the original image
18 | cvNamedWindow("Original");
19 | cvShowImage("Original", img);
20 |
21 | //smooth the original image using Gaussian kernel to remove noise
22 | cvSmooth(img, img, CV_GAUSSIAN, 3, 3);
23 |
24 | //converting the original image into grayscale
25 | IplImage* imgGrayScale = cvCreateImage(cvGetSize(img), 8, 1);
26 | cvCvtColor(img, imgGrayScale, CV_BGR2GRAY);
27 |
28 | cvNamedWindow("GrayScale Image");
29 | cvShowImage("GrayScale Image", imgGrayScale);
30 |
31 | //thresholding the grayscale image to get better results
32 | cvThreshold(imgGrayScale, imgGrayScale, 100, 255, CV_THRESH_BINARY_INV);
33 |
34 | cvNamedWindow("Thresholded Image");
35 | cvShowImage("Thresholded Image", imgGrayScale);
36 |
37 | CvSeq* contour; //hold the pointer to a contour
38 | CvSeq* result; //hold sequence of points of a contour
39 | CvMemStorage *storage = cvCreateMemStorage(0); //storage area for all contours
40 |
41 | //finding all contours in the image
42 | cvFindContours(imgGrayScale, storage, &contour, sizeof(CvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE, cvPoint(0, 0));
43 |
44 | //iterating through each contour
45 | while (contour)
46 | {
47 | //obtain a sequence of points of the countour, pointed by the variable 'countour'
48 | result = cvApproxPoly(contour, sizeof(CvContour), storage, CV_POLY_APPROX_DP, cvContourPerimeter(contour)*0.02, 0);
49 |
50 | //if there are 3 vertices in the contour and the area of the triangle is more than 100 pixels
51 | if (result->total == 3 && fabs(cvContourArea(result, CV_WHOLE_SEQ))>100)
52 | {
53 | //iterating through each point
54 | CvPoint *pt[3];
55 | for (int i = 0; i<3; i++){
56 | pt[i] = (CvPoint*)cvGetSeqElem(result, i);
57 | }
58 |
59 | //drawing lines around the triangle
60 | cvLine(img, *pt[0], *pt[1], cvScalar(255, 0, 0), 4);
61 | cvLine(img, *pt[1], *pt[2], cvScalar(255, 0, 0), 4);
62 | cvLine(img, *pt[2], *pt[0], cvScalar(255, 0, 0), 4);
63 |
64 | }
65 |
66 | //obtain the next contour
67 | contour = contour->h_next;
68 | }
69 |
70 | //show the image in which identified shapes are marked
71 | cvNamedWindow("Tracked");
72 | cvShowImage("Tracked", img);
73 |
74 | cvWaitKey(0); //wait for a key press
75 |
76 | //cleaning up
77 | cvDestroyAllWindows();
78 | cvReleaseMemStorage(&storage);
79 | cvReleaseImage(&img);
80 | cvReleaseImage(&imgGrayScale);
81 |
82 | return 0;
83 | }
--------------------------------------------------------------------------------
/CS549_ObjectDetection/Utility.h:
--------------------------------------------------------------------------------
1 | /*
2 | Description : Definitions and include files.
3 | */
4 | #pragma once
5 |
6 | /*
7 | * Definitions
8 | */
9 | #define MAIN
10 | //#define COLOR_PRE
11 |
12 | //#define SAMPLE_PEOPLE
13 | //#define SAMPLE_TRIANGLE
14 | //#define SAMPLE_MULTIPLESHAPES
15 | //#define SAMPLE_IMAGE
16 | //#define SAMPLE_COLOR
17 |
18 |
19 |
20 | /*
21 | * Include files
22 | */
23 | #include
24 | #include
25 | #include
26 | #include
27 | #include
28 |
29 | #include
30 | #include
31 | #include
32 | #include "opencv2/imgproc/imgproc.hpp"
33 | #include "opencv2/objdetect/objdetect.hpp"
34 | #include "opencv2/highgui/highgui.hpp"
35 | //training
36 | #include
37 |
38 | using namespace cv;
39 | using namespace std;
40 |
41 |
42 | /*Important: svmlight.h should be included after the namespce is defined,
43 | and should make distinction for svmlight::WORD to identify it to std::WORD*/
44 |
45 |
46 | enum LOGTYPE {LOG, ERROR, MESSAGE};
47 | //log type strings should be consistant with LOGTYPE
48 | static vector logTypeStr = { "[LOG]: ", "[ERROR]: ", "[MESSAGE]: " };
49 |
50 | class Utility
51 | {
52 | public:
53 |
54 | static void log(string logStr, int type = LOGTYPE::LOG)
55 | {
56 | cout << logTypeStr[type] << logStr << endl;
57 | }
58 |
59 | /* ----------------------------------------------------------------------- */
60 | /* Function : Utility::split
61 | *
62 | * Description : split a string using a pattern
63 | *
64 | * Parameters : string str : the input string
65 | * string pattern: the split pattern
66 | *
67 | * Returns : vector : a list of strings
68 | */
69 | static vector split(string str, string pattern)
70 | {
71 | std::string::size_type pos;
72 | std::vector result;
73 | str += pattern; //add a pattern at the end
74 | int size = str.size();
75 |
76 | for (int i = 0; i < size; i++)
77 | {
78 | pos = str.find(pattern, i);
79 | if (pos < size)
80 | {
81 | std::string s = str.substr(i, pos - i);
82 | if (s != "")
83 | {
84 | result.push_back(s);
85 | }
86 | i = pos + pattern.size() - 1;
87 | }
88 | }
89 | return result;
90 | }
91 |
92 | static bool getFilesInDirectory(string dirStr, vector& fileList, vector validExt)
93 | {
94 | DIR *dir;
95 | struct dirent *ent;
96 | if ((dir = opendir(dirStr.c_str())) != NULL) {
97 | /* print all the files and directories within directory */
98 | while ((ent = readdir(dir)) != NULL) {
99 | vector name = Utility::split(ent->d_name, ".");
100 | if (name.size() < 2)
101 | continue;
102 | for (int index = 0; index < validExt.size(); index++)
103 | {
104 | //turn ext to lowercase
105 | transform(name[1].begin(), name[1].end(), name[1].begin(), tolower);
106 | if (name[1] == validExt[index])
107 | {
108 | fileList.push_back(dirStr + ent->d_name);
109 | }
110 | }
111 |
112 | }
113 | Utility::log(to_string(fileList.size()) + " files got from foler " + dirStr);
114 | closedir(dir);
115 | return true;
116 | }
117 | else {
118 | /* could not open directory */
119 | perror("Could not open the directory.");
120 | return false;
121 | }
122 | }
123 | };
124 |
125 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection/cam_color.cpp:
--------------------------------------------------------------------------------
1 | #include"Utility.h"
2 | #include
3 |
4 | using namespace cv;
5 | using namespace std;
6 |
7 | #ifdef COLOR_PRE
8 | int main(int argc, char** argv)
9 | #else
10 | int color_main(int argc, char** argv)
11 | #endif
12 |
13 | {
14 | VideoCapture cap(0); //capture the video from web cam
15 |
16 | if ( !cap.isOpened() ) // if not success, exit program
17 | {
18 | cout << "Cannot open the web cam" << endl;
19 | return -1;
20 | }
21 |
22 | int yLowH = 22; //22
23 | int yHighH = 38; //38
24 |
25 | int yLowS = 200; //160
26 | int yHighS = 255; //255
27 |
28 | int yLowV = 100; //60
29 | int yHighV = 255; //255
30 |
31 | int cLowH = 86;
32 | int cHighH = 106;
33 |
34 | int cLowS = 100;
35 | int cHighS = 255;
36 |
37 | int cLowV = 100;
38 | int cHighV = 255;
39 |
40 | while (true)
41 | {
42 | Mat imgOriginal;
43 | bool bSuccess = cap.read(imgOriginal); // read a new frame from video
44 |
45 | if (!bSuccess) //if not success, break loop
46 | {
47 | cout << "Cannot read a frame from video stream" << endl;
48 | break;
49 | }
50 |
51 | //imgOriginal = imread( argv[1], 1 );
52 | //resize(imgOriginal,imgOriginal,Size(imgOriginal.cols/4,imgOriginal.rows/4));
53 | Mat imgHSV;
54 |
55 | cvtColor(imgOriginal, imgHSV, COLOR_BGR2HSV); //Convert the captured frame from BGR to HSV
56 |
57 | Mat imgThresholded,imgThresholdedC,imgThresholdedY,edge;
58 |
59 | //Threshold the image
60 | inRange(imgHSV, Scalar(cLowH, cLowS, cLowV), Scalar(cHighH, cHighS, cHighV), imgThresholdedC);
61 | //inRange(imgHSV, Scalar(yLowH, yLowS, yLowV), Scalar(yHighH, yHighS, yHighV), imgThresholdedY);
62 |
63 | imgThresholded = imgThresholdedC;
64 |
65 | //morphological opening (remove small objects from the foreground)
66 | erode(imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(5, 5)) );
67 | dilate( imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(5, 5)) );
68 |
69 | //morphological closing (fill small holes in the foreground)
70 | dilate( imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(5, 5)) );
71 | erode(imgThresholded, imgThresholded, getStructuringElement(MORPH_ELLIPSE, Size(7, 7)) );
72 |
73 | imshow("Thresholded Image", imgThresholded); //show the thresholded image
74 | /// Convert it to gray
75 | // Canny( imgThresholded,edge, 150, 100,3 );
76 | // imshow("Edge", edge); //show the original image
77 |
78 | vector > contours;
79 | // find
80 | findContours( imgThresholded,contours,CV_RETR_EXTERNAL,CV_CHAIN_APPROX_NONE);
81 | drawContours( imgOriginal,contours,-1,Scalar(0,0,255),2);
82 | imshow("Original", imgOriginal); //show the original image
83 |
84 | //Canny
85 | Mat src = imgOriginal;
86 | Mat src1 = src.clone();
87 | Canny( src, src, 150, 100,3 );
88 | imshow("showcase Canny edge", src);
89 | Mat dst,gray;
90 |
91 | // dst has same size with src
92 | dst.create( src1.size(), src1.type() );
93 |
94 | // grey scale
95 | cvtColor( src1, gray, CV_BGR2GRAY );
96 |
97 | // 3*3 blur
98 | blur( gray, edge, Size(3,3) );
99 |
100 | // canny edge detection
101 | Canny( edge, edge, 3, 9,3 );
102 |
103 | //
104 | dst = Scalar::all(0);
105 |
106 | //
107 | src1.copyTo( dst, edge);
108 |
109 | //
110 | imshow("showcaseCanny edge2", dst);
111 |
112 |
113 | if (waitKey(30) == 27) //wait for 'esc' key press for 30ms. If 'esc' key is pressed, break loop
114 | {
115 | cout << "esc key is pressed by user" << endl;
116 | break;
117 | } }
118 | return 0;
119 |
120 | }
121 |
122 |
--------------------------------------------------------------------------------
/CS549_ObjectDetection/svmlight/kernel.h:
--------------------------------------------------------------------------------
1 | /************************************************************************/
2 | /* */
3 | /* kernel.h */
4 | /* */
5 | /* User defined kernel function. Feel free to plug in your own. */
6 | /* */
7 | /* Copyright: Thorsten Joachims */
8 | /* Date: 16.12.97 */
9 | /* */
10 | /************************************************************************/
11 |
12 | /* KERNEL_PARM is defined in svm_common.h The field 'custom' is reserved for */
13 | /* parameters of the user defined kernel. You can also access and use */
14 | /* the parameters of the other kernels. Just replace the line
15 | return((double)(1.0));
16 | with your own kernel. */
17 |
18 | /* Example: The following computes the polynomial kernel. sprod_ss
19 | computes the inner product between two sparse vectors.
20 |
21 | return((CFLOAT)pow(kernel_parm->coef_lin*sprod_ss(a->words,b->words)
22 | +kernel_parm->coef_const,(double)kernel_parm->poly_degree));
23 | */
24 |
25 | /* If you are implementing a kernel that is not based on a
26 | feature/value representation, you might want to make use of the
27 | field "userdefined" in SVECTOR. By default, this field will contain
28 | whatever string you put behind a # sign in the example file. So, if
29 | a line in your training file looks like
30 |
31 | -1 1:3 5:6 #abcdefg
32 |
33 | then the SVECTOR field "words" will contain the vector 1:3 5:6, and
34 | "userdefined" will contain the string "abcdefg". */
35 |
36 | double custom_kernel(KERNEL_PARM *kernel_parm, SVECTOR *a, SVECTOR *b)
37 | /* plug in you favorite kernel */
38 | {
39 | return((double)(1.0));
40 | }
41 |
--------------------------------------------------------------------------------
/Debug/Res/genfiles/svmparam.txt:
--------------------------------------------------------------------------------
1 | 1.23
--------------------------------------------------------------------------------
/Debug/opencv_calib3d2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_calib3d2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_contrib2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_contrib2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_core2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_core2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_features2d2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_features2d2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_flann2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_flann2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_gpu2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_gpu2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_highgui2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_highgui2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_imgproc2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_imgproc2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_legacy2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_legacy2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_ml2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_ml2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_nonfree2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_nonfree2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_objdetect2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_objdetect2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_ocl2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_ocl2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_photo2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_photo2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_stitching2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_stitching2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_superres2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_superres2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_video2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_video2410d.dll
--------------------------------------------------------------------------------
/Debug/opencv_videostab2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/Debug/opencv_videostab2410d.dll
--------------------------------------------------------------------------------
/OpenCV/ReadMe.txt:
--------------------------------------------------------------------------------
1 | OpenCV 2.4.10
2 | x86
3 | Visual Studio 2013
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_calib3d2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_calib3d2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_calib3d2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_calib3d2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_contrib2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_contrib2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_contrib2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_contrib2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_core2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_core2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_core2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_core2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_features2d2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_features2d2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_features2d2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_features2d2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_flann2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_flann2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_flann2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_flann2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_gpu2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_gpu2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_gpu2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_gpu2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_highgui2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_highgui2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_highgui2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_highgui2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_imgproc2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_imgproc2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_imgproc2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_imgproc2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_legacy2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_legacy2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_legacy2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_legacy2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_ml2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_ml2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_ml2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_ml2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_objdetect2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_objdetect2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_objdetect2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_objdetect2410d.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_video2410.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_video2410.dll
--------------------------------------------------------------------------------
/OpenCV/bin/opencv_video2410d.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mia-mifeng/ObjectDetection/495c7a2b891bdb330ca8dea0f4161ca3b5c105db/OpenCV/bin/opencv_video2410d.dll
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cv.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_OLD_CV_H__
44 | #define __OPENCV_OLD_CV_H__
45 |
46 | #if defined(_MSC_VER)
47 | #define CV_DO_PRAGMA(x) __pragma(x)
48 | #define __CVSTR2__(x) #x
49 | #define __CVSTR1__(x) __CVSTR2__(x)
50 | #define __CVMSVCLOC__ __FILE__ "("__CVSTR1__(__LINE__)") : "
51 | #define CV_MSG_PRAGMA(_msg) CV_DO_PRAGMA(message (__CVMSVCLOC__ _msg))
52 | #elif defined(__GNUC__)
53 | #define CV_DO_PRAGMA(x) _Pragma (#x)
54 | #define CV_MSG_PRAGMA(_msg) CV_DO_PRAGMA(message (_msg))
55 | #else
56 | #define CV_DO_PRAGMA(x)
57 | #define CV_MSG_PRAGMA(_msg)
58 | #endif
59 | #define CV_WARNING(x) CV_MSG_PRAGMA("Warning: " #x)
60 |
61 | //CV_WARNING("This is a deprecated opencv header provided for compatibility. Please include a header from a corresponding opencv module")
62 |
63 | #include "opencv2/core/core_c.h"
64 | #include "opencv2/core/core.hpp"
65 | #include "opencv2/imgproc/imgproc_c.h"
66 | #include "opencv2/imgproc/imgproc.hpp"
67 | #include "opencv2/video/tracking.hpp"
68 | #include "opencv2/features2d/features2d.hpp"
69 | #include "opencv2/flann/flann.hpp"
70 | #include "opencv2/calib3d/calib3d.hpp"
71 | #include "opencv2/objdetect/objdetect.hpp"
72 | #include "opencv2/legacy/compat.hpp"
73 |
74 | #if !defined(CV_IMPL)
75 | #define CV_IMPL extern "C"
76 | #endif //CV_IMPL
77 |
78 | #if defined(__cplusplus)
79 | #include "opencv2/core/internal.hpp"
80 | #endif //__cplusplus
81 |
82 | #endif // __OPENCV_OLD_CV_H_
83 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cv.hpp:
--------------------------------------------------------------------------------
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_OLD_CV_HPP__
44 | #define __OPENCV_OLD_CV_HPP__
45 |
46 | //#if defined(__GNUC__)
47 | //#warning "This is a deprecated opencv header provided for compatibility. Please include a header from a corresponding opencv module"
48 | //#endif
49 |
50 | #include
51 |
52 | #endif
53 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cvaux.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 | // Intel License Agreement
11 | // For Open Source Computer Vision Library
12 | //
13 | // Copyright (C) 2000, Intel Corporation, all rights reserved.
14 | // Third party copyrights are property of their respective owners.
15 | //
16 | // Redistribution and use in source and binary forms, with or without modification,
17 | // are permitted provided that the following conditions are met:
18 | //
19 | // * Redistribution's of source code must retain the above copyright notice,
20 | // this list of conditions and the following disclaimer.
21 | //
22 | // * Redistribution's in binary form must reproduce the above copyright notice,
23 | // this list of conditions and the following disclaimer in the documentation
24 | // and/or other materials provided with the distribution.
25 | //
26 | // * The name of Intel Corporation may not be used to endorse or promote products
27 | // derived from this software without specific prior written permission.
28 | //
29 | // This software is provided by the copyright holders and contributors "as is" and
30 | // any express or implied warranties, including, but not limited to, the implied
31 | // warranties of merchantability and fitness for a particular purpose are disclaimed.
32 | // In no event shall the Intel Corporation or contributors be liable for any direct,
33 | // indirect, incidental, special, exemplary, or consequential damages
34 | // (including, but not limited to, procurement of substitute goods or services;
35 | // loss of use, data, or profits; or business interruption) however caused
36 | // and on any theory of liability, whether in contract, strict liability,
37 | // or tort (including negligence or otherwise) arising in any way out of
38 | // the use of this software, even if advised of the possibility of such damage.
39 | //
40 | //M*/
41 |
42 | #ifndef __OPENCV_OLD_AUX_H__
43 | #define __OPENCV_OLD_AUX_H__
44 |
45 | //#if defined(__GNUC__)
46 | //#warning "This is a deprecated opencv header provided for compatibility. Please include a header from a corresponding opencv module"
47 | //#endif
48 |
49 | #include "opencv2/core/core_c.h"
50 | #include "opencv2/core/core.hpp"
51 | #include "opencv2/imgproc/imgproc_c.h"
52 | #include "opencv2/imgproc/imgproc.hpp"
53 | #include "opencv2/video/tracking.hpp"
54 | #include "opencv2/video/background_segm.hpp"
55 | #include "opencv2/features2d/features2d.hpp"
56 | #include "opencv2/calib3d/calib3d.hpp"
57 | #include "opencv2/objdetect/objdetect.hpp"
58 | #include "opencv2/legacy/legacy.hpp"
59 | #include "opencv2/legacy/compat.hpp"
60 | #include "opencv2/legacy/blobtrack.hpp"
61 | #include "opencv2/contrib/contrib.hpp"
62 |
63 | #endif
64 |
65 | /* End of file. */
66 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cvaux.hpp:
--------------------------------------------------------------------------------
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 | // Intel License Agreement
11 | // For Open Source Computer Vision Library
12 | //
13 | // Copyright (C) 2000, Intel Corporation, all rights reserved.
14 | // Third party copyrights are property of their respective owners.
15 | //
16 | // Redistribution and use in source and binary forms, with or without modification,
17 | // are permitted provided that the following conditions are met:
18 | //
19 | // * Redistribution's of source code must retain the above copyright notice,
20 | // this list of conditions and the following disclaimer.
21 | //
22 | // * Redistribution's in binary form must reproduce the above copyright notice,
23 | // this list of conditions and the following disclaimer in the documentation
24 | // and/or other materials provided with the distribution.
25 | //
26 | // * The name of Intel Corporation may not be used to endorse or promote products
27 | // derived from this software without specific prior written permission.
28 | //
29 | // This software is provided by the copyright holders and contributors "as is" and
30 | // any express or implied warranties, including, but not limited to, the implied
31 | // warranties of merchantability and fitness for a particular purpose are disclaimed.
32 | // In no event shall the Intel Corporation or contributors be liable for any direct,
33 | // indirect, incidental, special, exemplary, or consequential damages
34 | // (including, but not limited to, procurement of substitute goods or services;
35 | // loss of use, data, or profits; or business interruption) however caused
36 | // and on any theory of liability, whether in contract, strict liability,
37 | // or tort (including negligence or otherwise) arising in any way out of
38 | // the use of this software, even if advised of the possibility of such damage.
39 | //
40 | //M*/
41 |
42 | #ifndef __OPENCV_OLD_AUX_HPP__
43 | #define __OPENCV_OLD_AUX_HPP__
44 |
45 | //#if defined(__GNUC__)
46 | //#warning "This is a deprecated opencv header provided for compatibility. Please include a header from a corresponding opencv module"
47 | //#endif
48 |
49 | #include
50 |
51 | #endif
52 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cvwimage.h:
--------------------------------------------------------------------------------
1 | ///////////////////////////////////////////////////////////////////////////////
2 | // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
3 | //
4 | // By downloading, copying, installing or using the software you agree to
5 | // this license. If you do not agree to this license, do not download,
6 | // install, copy or use the software.
7 | //
8 | // License Agreement
9 | // For Open Source Computer Vision Library
10 | //
11 | // Copyright (C) 2008, Google, all rights reserved.
12 | // Third party copyrights are property of their respective owners.
13 | //
14 | // Redistribution and use in source and binary forms, with or without
15 | // modification, are permitted provided that the following conditions are met:
16 | //
17 | // * Redistribution's of source code must retain the above copyright notice,
18 | // this list of conditions and the following disclaimer.
19 | //
20 | // * Redistribution's in binary form must reproduce the above copyright notice,
21 | // this list of conditions and the following disclaimer in the documentation
22 | // and/or other materials provided with the distribution.
23 | //
24 | // * The name of Intel Corporation or contributors may not be used to endorse
25 | // or promote products derived from this software without specific
26 | // prior written permission.
27 | //
28 | // This software is provided by the copyright holders and contributors "as is"
29 | // and any express or implied warranties, including, but not limited to, the
30 | // implied warranties of merchantability and fitness for a particular purpose
31 | // are disclaimed. In no event shall the Intel Corporation or contributors be
32 | // liable for any direct, indirect, incidental, special, exemplary, or
33 | // consequential damages
34 | // (including, but not limited to, procurement of substitute goods or services;
35 | // loss of use, data, or profits; or business interruption) however caused
36 | // and on any theory of liability, whether in contract, strict liability,
37 | // or tort (including negligence or otherwise) arising in any way out of
38 | // the use of this software, even if advised of the possibility of such damage.
39 |
40 |
41 | #ifndef __OPENCV_OLD_WIMAGE_HPP__
42 | #define __OPENCV_OLD_WIMAGE_HPP__
43 |
44 | #include "opencv2/core/wimage.hpp"
45 |
46 | #endif
47 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cxcore.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_OLD_CXCORE_H__
44 | #define __OPENCV_OLD_CXCORE_H__
45 |
46 | //#if defined(__GNUC__)
47 | //#warning "This is a deprecated opencv header provided for compatibility. Please include a header from a corresponding opencv module"
48 | //#endif
49 |
50 | #include "opencv2/core/core_c.h"
51 | #include "opencv2/core/core.hpp"
52 |
53 | #endif
54 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cxcore.hpp:
--------------------------------------------------------------------------------
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_OLD_CXCORE_HPP__
44 | #define __OPENCV_OLD_CXCORE_HPP__
45 |
46 | //#if defined(__GNUC__)
47 | //#warning "This is a deprecated opencv header provided for compatibility. Please include a header from a corresponding opencv module"
48 | //#endif
49 |
50 | #include
51 |
52 | #endif
53 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cxeigen.hpp:
--------------------------------------------------------------------------------
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_OLD_EIGEN_HPP__
44 | #define __OPENCV_OLD_EIGEN_HPP__
45 |
46 | #include "opencv2/core/eigen.hpp"
47 |
48 | #endif
49 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/cxmisc.h:
--------------------------------------------------------------------------------
1 | #ifndef __OPENCV_OLD_CXMISC_H__
2 | #define __OPENCV_OLD_CXMISC_H__
3 |
4 | #include "opencv2/core/internal.hpp"
5 |
6 | #endif
7 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/highgui.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 | // Intel License Agreement
11 | // For Open Source Computer Vision Library
12 | //
13 | // Copyright (C) 2000, Intel Corporation, all rights reserved.
14 | // Third party copyrights are property of their respective owners.
15 | //
16 | // Redistribution and use in source and binary forms, with or without modification,
17 | // are permitted provided that the following conditions are met:
18 | //
19 | // * Redistribution's of source code must retain the above copyright notice,
20 | // this list of conditions and the following disclaimer.
21 | //
22 | // * Redistribution's in binary form must reproduce the above copyright notice,
23 | // this list of conditions and the following disclaimer in the documentation
24 | // and/or other materials provided with the distribution.
25 | //
26 | // * The name of Intel Corporation may not be used to endorse or promote products
27 | // derived from this software without specific prior written permission.
28 | //
29 | // This software is provided by the copyright holders and contributors "as is" and
30 | // any express or implied warranties, including, but not limited to, the implied
31 | // warranties of merchantability and fitness for a particular purpose are disclaimed.
32 | // In no event shall the Intel Corporation or contributors be liable for any direct,
33 | // indirect, incidental, special, exemplary, or consequential damages
34 | // (including, but not limited to, procurement of substitute goods or services;
35 | // loss of use, data, or profits; or business interruption) however caused
36 | // and on any theory of liability, whether in contract, strict liability,
37 | // or tort (including negligence or otherwise) arising in any way out of
38 | // the use of this software, even if advised of the possibility of such damage.
39 | //
40 | //M*/
41 |
42 | #ifndef __OPENCV_OLD_HIGHGUI_H__
43 | #define __OPENCV_OLD_HIGHGUI_H__
44 |
45 | #include "opencv2/core/core_c.h"
46 | #include "opencv2/core/core.hpp"
47 | #include "opencv2/highgui/highgui_c.h"
48 | #include "opencv2/highgui/highgui.hpp"
49 |
50 | #endif
51 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv/ml.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 | // Intel License Agreement
11 | //
12 | // Copyright (C) 2000, Intel Corporation, all rights reserved.
13 | // Third party copyrights are property of their respective owners.
14 | //
15 | // Redistribution and use in source and binary forms, with or without modification,
16 | // are permitted provided that the following conditions are met:
17 | //
18 | // * Redistribution's of source code must retain the above copyright notice,
19 | // this list of conditions and the following disclaimer.
20 | //
21 | // * Redistribution's in binary form must reproduce the above copyright notice,
22 | // this list of conditions and the following disclaimer in the documentation
23 | // and/or other materials provided with the distribution.
24 | //
25 | // * The name of Intel Corporation may not be used to endorse or promote products
26 | // derived from this software without specific prior written permission.
27 | //
28 | // This software is provided by the copyright holders and contributors "as is" and
29 | // any express or implied warranties, including, but not limited to, the implied
30 | // warranties of merchantability and fitness for a particular purpose are disclaimed.
31 | // In no event shall the Intel Corporation or contributors be liable for any direct,
32 | // indirect, incidental, special, exemplary, or consequential damages
33 | // (including, but not limited to, procurement of substitute goods or services;
34 | // loss of use, data, or profits; or business interruption) however caused
35 | // and on any theory of liability, whether in contract, strict liability,
36 | // or tort (including negligence or otherwise) arising in any way out of
37 | // the use of this software, even if advised of the possibility of such damage.
38 | //
39 | //M*/
40 |
41 | #ifndef __OPENCV_OLD_ML_H__
42 | #define __OPENCV_OLD_ML_H__
43 |
44 | #include "opencv2/core/core_c.h"
45 | #include "opencv2/core/core.hpp"
46 | #include "opencv2/ml/ml.hpp"
47 |
48 | #endif
49 |
--------------------------------------------------------------------------------
/OpenCV/include/opencv2/contrib/detection_based_tracker.hpp:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #if defined(__linux__) || defined(LINUX) || defined(__APPLE__) || defined(ANDROID)
4 |
5 | #include
6 | #include
7 |
8 | #include
9 |
10 | class DetectionBasedTracker
11 | {
12 | public:
13 | struct Parameters
14 | {
15 | int minObjectSize;
16 | int maxObjectSize;
17 | double scaleFactor;
18 | int maxTrackLifetime;
19 | int minNeighbors;
20 | int minDetectionPeriod; //the minimal time between run of the big object detector (on the whole frame) in ms (1000 mean 1 sec), default=0
21 |
22 | Parameters();
23 | };
24 |
25 | DetectionBasedTracker(const std::string& cascadeFilename, const Parameters& params);
26 | virtual ~DetectionBasedTracker();
27 |
28 | virtual bool run();
29 | virtual void stop();
30 | virtual void resetTracking();
31 |
32 | virtual void process(const cv::Mat& imageGray);
33 |
34 | bool setParameters(const Parameters& params);
35 | const Parameters& getParameters();
36 |
37 |
38 | typedef std::pair Object;
39 | virtual void getObjects(std::vector& result) const;
40 | virtual void getObjects(std::vector