diff --git a/vs2013mfc/.gitignore b/vs2013mfc/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..fc99052718c029dc8927b7fb705ddc2ad093f0c7 --- /dev/null +++ b/vs2013mfc/.gitignore @@ -0,0 +1,3 @@ +*.exe +*.pdb +*.dll \ No newline at end of file diff --git a/vs2013mfc/ReadMe.txt b/vs2013mfc/ReadMe.txt new file mode 100644 index 0000000000000000000000000000000000000000..0a203a163dcfcf3159d3e76a6253be80610e3fe2 --- /dev/null +++ b/vs2013mfc/ReadMe.txt @@ -0,0 +1,21 @@ +*** REQUIREMENTS *** +Certify that you have installed OpenCV 2.4.10 and Boost 1.61 in the following paths: +C:\OpenCV2.4.10 +C:\boost_1_61_0 + +INCLUDES: + C:\OpenCV2.4.10\build\include; + C:\OpenCV2.4.10\build\include\opencv; + C:\boost_1_61_0 + +LIBRAIRIES: + C:\OpenCV2.4.10\build\x86\vc12\staticlib\*.lib; + C:\boost_1_61_0\lib32-msvc-12.0\libboost_chrono-vc120-mt-s-1_61.lib; + C:\boost_1_61_0\lib32-msvc-12.0\libboost_system-vc120-mt-s-1_61.lib + +LINK TO DOWNLOAD BOOST 1.61: +https://sourceforge.net/projects/boost/files/boost-binaries/1.61.0/ +boost_1_61_0-msvc-12.0-32.exe [Visual Studio 2013, x86 (32bits)] + +LINK TO DOWNLOAD OPENCV 2.4.10: +https://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.10/opencv-2.4.10.exe/download \ No newline at end of file diff --git a/vs2013mfc/config/AdaptiveBackgroundLearning.xml b/vs2013mfc/config/AdaptiveBackgroundLearning.xml new file mode 100644 index 0000000000000000000000000000000000000000..313e1d4ed8e2e952599137b18753bf15811d2ec9 --- /dev/null +++ b/vs2013mfc/config/AdaptiveBackgroundLearning.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<opencv_storage> +<alpha>5.0000000000000003e-002</alpha> +<limit>-1</limit> +<enableThreshold>1</enableThreshold> +<threshold>15</threshold> +<showForeground>0</showForeground> +<showBackground>0</showBackground> +</opencv_storage> diff --git a/vs2013mfc/config/AdaptiveSelectiveBackgroundLearning.xml b/vs2013mfc/config/AdaptiveSelectiveBackgroundLearning.xml new file mode 100644 index 0000000000000000000000000000000000000000..f175558a53932aac23393b3dd71588289a0f8ee4 --- /dev/null +++ b/vs2013mfc/config/AdaptiveSelectiveBackgroundLearning.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<opencv_storage> +<learningFrames>90</learningFrames> +<alphaLearn>5.0000000000000003e-002</alphaLearn> +<alphaDetection>5.0000000000000003e-002</alphaDetection> +<threshold>25</threshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPAdaptiveMedianBGS.xml b/vs2013mfc/config/DPAdaptiveMedianBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..8d09e859cf6b75c2a5432515ad56c2d87b558c8f --- /dev/null +++ b/vs2013mfc/config/DPAdaptiveMedianBGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>40</threshold> +<samplingRate>7</samplingRate> +<learningFrames>30</learningFrames> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPEigenbackgroundBGS.xml b/vs2013mfc/config/DPEigenbackgroundBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..d610426deba5bf4cc874695b1498b63390e0edf8 --- /dev/null +++ b/vs2013mfc/config/DPEigenbackgroundBGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>225</threshold> +<historySize>20</historySize> +<embeddedDim>10</embeddedDim> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPGrimsonGMMBGS.xml b/vs2013mfc/config/DPGrimsonGMMBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..8ade44f22824afdef676e1a7e80c93ffba82ac98 --- /dev/null +++ b/vs2013mfc/config/DPGrimsonGMMBGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>9.</threshold> +<alpha>1.0000000000000000e-002</alpha> +<gaussians>3</gaussians> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPMeanBGS.xml b/vs2013mfc/config/DPMeanBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..9bd59a84a2fc903366207bea2023eb0af22e30bb --- /dev/null +++ b/vs2013mfc/config/DPMeanBGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>2700</threshold> +<alpha>9.9999999747524271e-007</alpha> +<learningFrames>30</learningFrames> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPPratiMediodBGS.xml b/vs2013mfc/config/DPPratiMediodBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..fdf20b4efdecf362ef6de51abb5246ac60d59166 --- /dev/null +++ b/vs2013mfc/config/DPPratiMediodBGS.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>30</threshold> +<samplingRate>5</samplingRate> +<historySize>16</historySize> +<weight>5</weight> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPTextureBGS.xml b/vs2013mfc/config/DPTextureBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..0d63e78ca0ddbea78b29206d4e652e0f3398b3c0 --- /dev/null +++ b/vs2013mfc/config/DPTextureBGS.xml @@ -0,0 +1,4 @@ +<?xml version="1.0"?> +<opencv_storage> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPWrenGABGS.xml b/vs2013mfc/config/DPWrenGABGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..7eaa78ba47d02d4547ca1d3af118417e857f8048 --- /dev/null +++ b/vs2013mfc/config/DPWrenGABGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>1.2250000000000000e+001</threshold> +<alpha>4.9999998882412910e-003</alpha> +<learningFrames>30</learningFrames> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/DPZivkovicAGMMBGS.xml b/vs2013mfc/config/DPZivkovicAGMMBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..98ee82aaf9cd25da3cc38e2747da86db4822d9f2 --- /dev/null +++ b/vs2013mfc/config/DPZivkovicAGMMBGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>25.</threshold> +<alpha>1.0000000474974513e-003</alpha> +<gaussians>3</gaussians> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/FrameDifferenceBGS.xml b/vs2013mfc/config/FrameDifferenceBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..943a6c91f4eb5c48a786cd59ee1b73456090d365 --- /dev/null +++ b/vs2013mfc/config/FrameDifferenceBGS.xml @@ -0,0 +1,6 @@ +<?xml version="1.0"?> +<opencv_storage> +<enableThreshold>1</enableThreshold> +<threshold>15</threshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/FuzzyChoquetIntegral.xml b/vs2013mfc/config/FuzzyChoquetIntegral.xml new file mode 100644 index 0000000000000000000000000000000000000000..22074aa90bffddb80527f40cbf4406b41ff47a48 --- /dev/null +++ b/vs2013mfc/config/FuzzyChoquetIntegral.xml @@ -0,0 +1,11 @@ +<?xml version="1.0"?> +<opencv_storage> +<showOutput>0</showOutput> +<framesToLearn>10</framesToLearn> +<alphaLearn>1.0000000000000001e-001</alphaLearn> +<alphaUpdate>1.0000000000000000e-002</alphaUpdate> +<colorSpace>1</colorSpace> +<option>2</option> +<smooth>1</smooth> +<threshold>6.7000000000000004e-001</threshold> +</opencv_storage> diff --git a/vs2013mfc/config/FuzzySugenoIntegral.xml b/vs2013mfc/config/FuzzySugenoIntegral.xml new file mode 100644 index 0000000000000000000000000000000000000000..22074aa90bffddb80527f40cbf4406b41ff47a48 --- /dev/null +++ b/vs2013mfc/config/FuzzySugenoIntegral.xml @@ -0,0 +1,11 @@ +<?xml version="1.0"?> +<opencv_storage> +<showOutput>0</showOutput> +<framesToLearn>10</framesToLearn> +<alphaLearn>1.0000000000000001e-001</alphaLearn> +<alphaUpdate>1.0000000000000000e-002</alphaUpdate> +<colorSpace>1</colorSpace> +<option>2</option> +<smooth>1</smooth> +<threshold>6.7000000000000004e-001</threshold> +</opencv_storage> diff --git a/vs2013mfc/config/GMG.xml b/vs2013mfc/config/GMG.xml new file mode 100644 index 0000000000000000000000000000000000000000..e3ebdc736e92d8f096ffaacb9b491b111e353ebf --- /dev/null +++ b/vs2013mfc/config/GMG.xml @@ -0,0 +1,6 @@ +<?xml version="1.0"?> +<opencv_storage> +<initializationFrames>20</initializationFrames> +<decisionThreshold>6.9999999999999996e-001</decisionThreshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/IndependentMultimodalBGS.xml b/vs2013mfc/config/IndependentMultimodalBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..0d63e78ca0ddbea78b29206d4e652e0f3398b3c0 --- /dev/null +++ b/vs2013mfc/config/IndependentMultimodalBGS.xml @@ -0,0 +1,4 @@ +<?xml version="1.0"?> +<opencv_storage> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/KDE.xml b/vs2013mfc/config/KDE.xml new file mode 100644 index 0000000000000000000000000000000000000000..c9b74025011e4f19d1752e8955c3b6ae0cf0f30a --- /dev/null +++ b/vs2013mfc/config/KDE.xml @@ -0,0 +1,11 @@ +<?xml version="1.0"?> +<opencv_storage> +<framesToLearn>10</framesToLearn> +<SequenceLength>50</SequenceLength> +<TimeWindowSize>100</TimeWindowSize> +<SDEstimationFlag>1</SDEstimationFlag> +<lUseColorRatiosFlag>1</lUseColorRatiosFlag> +<th>9.9999999999999995e-008</th> +<alpha>2.9999999999999999e-001</alpha> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/LBAdaptiveSOM.xml b/vs2013mfc/config/LBAdaptiveSOM.xml new file mode 100644 index 0000000000000000000000000000000000000000..94b257021cfcf7c730ed2af03281086623339fb2 --- /dev/null +++ b/vs2013mfc/config/LBAdaptiveSOM.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<opencv_storage> +<sensitivity>75</sensitivity> +<trainingSensitivity>245</trainingSensitivity> +<learningRate>62</learningRate> +<trainingLearningRate>255</trainingLearningRate> +<trainingSteps>55</trainingSteps> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/LBFuzzyAdaptiveSOM.xml b/vs2013mfc/config/LBFuzzyAdaptiveSOM.xml new file mode 100644 index 0000000000000000000000000000000000000000..7168563f6a032ac019e3facff2bf5b34bda5a779 --- /dev/null +++ b/vs2013mfc/config/LBFuzzyAdaptiveSOM.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<opencv_storage> +<sensitivity>90</sensitivity> +<trainingSensitivity>240</trainingSensitivity> +<learningRate>38</learningRate> +<trainingLearningRate>255</trainingLearningRate> +<trainingSteps>81</trainingSteps> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/LBFuzzyGaussian.xml b/vs2013mfc/config/LBFuzzyGaussian.xml new file mode 100644 index 0000000000000000000000000000000000000000..18635a1248e632d25f4d623c7e011a71d18ac74d --- /dev/null +++ b/vs2013mfc/config/LBFuzzyGaussian.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<opencv_storage> +<sensitivity>72</sensitivity> +<bgThreshold>162</bgThreshold> +<learningRate>49</learningRate> +<noiseVariance>195</noiseVariance> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/LBMixtureOfGaussians.xml b/vs2013mfc/config/LBMixtureOfGaussians.xml new file mode 100644 index 0000000000000000000000000000000000000000..22737201df64764ae51248cfb40eef752bb36500 --- /dev/null +++ b/vs2013mfc/config/LBMixtureOfGaussians.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<opencv_storage> +<sensitivity>81</sensitivity> +<bgThreshold>83</bgThreshold> +<learningRate>59</learningRate> +<noiseVariance>206</noiseVariance> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/LBSimpleGaussian.xml b/vs2013mfc/config/LBSimpleGaussian.xml new file mode 100644 index 0000000000000000000000000000000000000000..a803f3f120523af3bbe4fa721bff4a645148ef73 --- /dev/null +++ b/vs2013mfc/config/LBSimpleGaussian.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<sensitivity>66</sensitivity> +<noiseVariance>162</noiseVariance> +<learningRate>18</learningRate> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/LOBSTERBGS.xml b/vs2013mfc/config/LOBSTERBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..c17b5510fc48a0142fe8bf2c4afad7024d78625f --- /dev/null +++ b/vs2013mfc/config/LOBSTERBGS.xml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<opencv_storage> +<fRelLBSPThreshold>3.6500000953674316e-001</fRelLBSPThreshold> +<nLBSPThresholdOffset>0</nLBSPThresholdOffset> +<nDescDistThreshold>4</nDescDistThreshold> +<nColorDistThreshold>30</nColorDistThreshold> +<nBGSamples>35</nBGSamples> +<nRequiredBGSamples>2</nRequiredBGSamples> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/MixtureOfGaussianV1BGS.xml b/vs2013mfc/config/MixtureOfGaussianV1BGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..1e09ceb40082f60946afc3cb09e7ad6189af2e09 --- /dev/null +++ b/vs2013mfc/config/MixtureOfGaussianV1BGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<alpha>5.0000000000000003e-002</alpha> +<enableThreshold>1</enableThreshold> +<threshold>15</threshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/MixtureOfGaussianV2BGS.xml b/vs2013mfc/config/MixtureOfGaussianV2BGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..1e09ceb40082f60946afc3cb09e7ad6189af2e09 --- /dev/null +++ b/vs2013mfc/config/MixtureOfGaussianV2BGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<alpha>5.0000000000000003e-002</alpha> +<enableThreshold>1</enableThreshold> +<threshold>15</threshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/MultiCueBGS.xml b/vs2013mfc/config/MultiCueBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..0d63e78ca0ddbea78b29206d4e652e0f3398b3c0 --- /dev/null +++ b/vs2013mfc/config/MultiCueBGS.xml @@ -0,0 +1,4 @@ +<?xml version="1.0"?> +<opencv_storage> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/MultiLayerBGS.xml b/vs2013mfc/config/MultiLayerBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..9b803db7ec73435625fb1fc3f0f5458f77b71a11 --- /dev/null +++ b/vs2013mfc/config/MultiLayerBGS.xml @@ -0,0 +1,31 @@ +<?xml version="1.0"?> +<opencv_storage> +<preloadModel>"./models/MultiLayerBGSModel.yml"</preloadModel> +<saveModel>0</saveModel> +<detectAfter>0</detectAfter> +<disableDetectMode>1</disableDetectMode> +<disableLearningInDetecMode>0</disableLearningInDetecMode> +<loadDefaultParams>1</loadDefaultParams> +<max_mode_num>5</max_mode_num> +<weight_updating_constant>5.</weight_updating_constant> +<texture_weight>5.0000000000000000e-001</texture_weight> +<bg_mode_percent>6.0000002384185791e-001</bg_mode_percent> +<pattern_neig_half_size>4</pattern_neig_half_size> +<pattern_neig_gaus_sigma>3.</pattern_neig_gaus_sigma> +<bg_prob_threshold>2.0000000298023224e-001</bg_prob_threshold> +<bg_prob_updating_threshold>2.0000000298023224e-001</bg_prob_updating_threshold> +<robust_LBP_constant>3</robust_LBP_constant> +<min_noised_angle>1.7453293502330780e-001</min_noised_angle> +<shadow_rate>6.0000002384185791e-001</shadow_rate> +<highlight_rate>1.2000000476837158e+000</highlight_rate> +<bilater_filter_sigma_s>3.</bilater_filter_sigma_s> +<bilater_filter_sigma_r>1.0000000149011612e-001</bilater_filter_sigma_r> +<frame_duration>1.0000000149011612e-001</frame_duration> +<learn_mode_learn_rate_per_second>5.0000000000000000e-001</learn_mode_learn_rate_per_second> +<learn_weight_learn_rate_per_second>5.0000000000000000e-001</learn_weight_learn_rate_per_second> +<learn_init_mode_weight>5.0000000745058060e-002</learn_init_mode_weight> +<detect_mode_learn_rate_per_second>9.9999997764825821e-003</detect_mode_learn_rate_per_second> +<detect_weight_learn_rate_per_second>9.9999997764825821e-003</detect_weight_learn_rate_per_second> +<detect_init_mode_weight>1.0000000474974513e-003</detect_init_mode_weight> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/SigmaDeltaBGS.xml b/vs2013mfc/config/SigmaDeltaBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..f1b2b2f54d8a9dd555297315cbb96217efb2d533 --- /dev/null +++ b/vs2013mfc/config/SigmaDeltaBGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<ampFactor>1</ampFactor> +<minVar>15</minVar> +<maxVar>255</maxVar> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/StaticFrameDifferenceBGS.xml b/vs2013mfc/config/StaticFrameDifferenceBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..943a6c91f4eb5c48a786cd59ee1b73456090d365 --- /dev/null +++ b/vs2013mfc/config/StaticFrameDifferenceBGS.xml @@ -0,0 +1,6 @@ +<?xml version="1.0"?> +<opencv_storage> +<enableThreshold>1</enableThreshold> +<threshold>15</threshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/SuBSENSEBGS.xml b/vs2013mfc/config/SuBSENSEBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..05509c15a8c0cf70db253d9ad5a90f3bfe819942 --- /dev/null +++ b/vs2013mfc/config/SuBSENSEBGS.xml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<opencv_storage> +<fRelLBSPThreshold>3.3300000429153442e-001</fRelLBSPThreshold> +<nDescDistThresholdOffset>3</nDescDistThresholdOffset> +<nMinColorDistThreshold>30</nMinColorDistThreshold> +<nBGSamples>50</nBGSamples> +<nRequiredBGSamples>2</nRequiredBGSamples> +<nSamplesForMovingAvgs>100</nSamplesForMovingAvgs> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/T2FGMM_UM.xml b/vs2013mfc/config/T2FGMM_UM.xml new file mode 100644 index 0000000000000000000000000000000000000000..d2f1054e0517b8df10af55e715c94e9add632edc --- /dev/null +++ b/vs2013mfc/config/T2FGMM_UM.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>9.</threshold> +<alpha>1.0000000000000000e-002</alpha> +<km>1.5000000000000000e+000</km> +<kv>6.0000002384185791e-001</kv> +<gaussians>3</gaussians> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/T2FGMM_UV.xml b/vs2013mfc/config/T2FGMM_UV.xml new file mode 100644 index 0000000000000000000000000000000000000000..d2f1054e0517b8df10af55e715c94e9add632edc --- /dev/null +++ b/vs2013mfc/config/T2FGMM_UV.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>9.</threshold> +<alpha>1.0000000000000000e-002</alpha> +<km>1.5000000000000000e+000</km> +<kv>6.0000002384185791e-001</kv> +<gaussians>3</gaussians> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/T2FMRF_UM.xml b/vs2013mfc/config/T2FMRF_UM.xml new file mode 100644 index 0000000000000000000000000000000000000000..9a65c57ca90f63d5223752d84191c7e439ff8882 --- /dev/null +++ b/vs2013mfc/config/T2FMRF_UM.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>9.</threshold> +<alpha>1.0000000000000000e-002</alpha> +<km>2.</km> +<kv>8.9999997615814209e-001</kv> +<gaussians>3</gaussians> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/T2FMRF_UV.xml b/vs2013mfc/config/T2FMRF_UV.xml new file mode 100644 index 0000000000000000000000000000000000000000..9a65c57ca90f63d5223752d84191c7e439ff8882 --- /dev/null +++ b/vs2013mfc/config/T2FMRF_UV.xml @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<opencv_storage> +<threshold>9.</threshold> +<alpha>1.0000000000000000e-002</alpha> +<km>2.</km> +<kv>8.9999997615814209e-001</kv> +<gaussians>3</gaussians> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/VuMeter.xml b/vs2013mfc/config/VuMeter.xml new file mode 100644 index 0000000000000000000000000000000000000000..d28fda7ae34e3840df1b0695eea314fd7078756b --- /dev/null +++ b/vs2013mfc/config/VuMeter.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<opencv_storage> +<enableFilter>1</enableFilter> +<binSize>8</binSize> +<alpha>9.9500000000000000e-001</alpha> +<threshold>2.9999999999999999e-002</threshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/config/WeightedMovingMeanBGS.xml b/vs2013mfc/config/WeightedMovingMeanBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..008ad741b9f0d140beac4eea74daf2c397b70a3c --- /dev/null +++ b/vs2013mfc/config/WeightedMovingMeanBGS.xml @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<opencv_storage> +<enableWeight>1</enableWeight> +<enableThreshold>1</enableThreshold> +<threshold>15</threshold> +<showOutput>0</showOutput> +<showBackground>0</showBackground> +</opencv_storage> diff --git a/vs2013mfc/config/WeightedMovingVarianceBGS.xml b/vs2013mfc/config/WeightedMovingVarianceBGS.xml new file mode 100644 index 0000000000000000000000000000000000000000..d9de1d4f8cd0978018e56d86f536a85ed8e98435 --- /dev/null +++ b/vs2013mfc/config/WeightedMovingVarianceBGS.xml @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<opencv_storage> +<enableWeight>1</enableWeight> +<enableThreshold>1</enableThreshold> +<threshold>15</threshold> +<showOutput>0</showOutput> +</opencv_storage> diff --git a/vs2013mfc/dataset/video.avi b/vs2013mfc/dataset/video.avi new file mode 100644 index 0000000000000000000000000000000000000000..a29f00658be7d05b10344859e6bee9a501a7a2b1 Binary files /dev/null and b/vs2013mfc/dataset/video.avi differ diff --git a/vs2013mfc/outputs/background/.gitignore b/vs2013mfc/outputs/background/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..4e2a98bb114355ae964e78a929c12d44f75815de --- /dev/null +++ b/vs2013mfc/outputs/background/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except these files +!.gitignore diff --git a/vs2013mfc/outputs/foreground/.gitignore b/vs2013mfc/outputs/foreground/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..4e2a98bb114355ae964e78a929c12d44f75815de --- /dev/null +++ b/vs2013mfc/outputs/foreground/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except these files +!.gitignore diff --git a/vs2013mfc/outputs/input/.gitignore b/vs2013mfc/outputs/input/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..4e2a98bb114355ae964e78a929c12d44f75815de --- /dev/null +++ b/vs2013mfc/outputs/input/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except these files +!.gitignore diff --git a/vs2013mfc/src/.gitignore b/vs2013mfc/src/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..4ad092eb1e2981311d46fee0774589cf43dcb17a --- /dev/null +++ b/vs2013mfc/src/.gitignore @@ -0,0 +1,6 @@ +Release/ +ipch/ +*.exe +*.pdb +*.sdf +*.opensdf \ No newline at end of file diff --git a/vs2013mfc/src/App.cpp b/vs2013mfc/src/App.cpp new file mode 100644 index 0000000000000000000000000000000000000000..a6f45c78da8e675b92213074239b23c9907a1738 --- /dev/null +++ b/vs2013mfc/src/App.cpp @@ -0,0 +1,94 @@ + +// App.cpp : Defines the class behaviors for the application. +// + +#include "stdafx.h" +#include "App.h" +#include "Dlg.h" + +#ifdef _DEBUG +#define new DEBUG_NEW +#endif + + +// CApp + +BEGIN_MESSAGE_MAP(CApp, CWinApp) + ON_COMMAND(ID_HELP, &CWinApp::OnHelp) +END_MESSAGE_MAP() + + +// CApp construction + +CApp::CApp() +{ + // support Restart Manager + m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_RESTART; + + // TODO: add construction code here, + // Place all significant initialization in InitInstance +} + + +// The one and only CApp object + +CApp theApp; + + +// CApp initialization + +BOOL CApp::InitInstance() +{ + // InitCommonControlsEx() is required on Windows XP if an application + // manifest specifies use of ComCtl32.dll version 6 or later to enable + // visual styles. Otherwise, any window creation will fail. + INITCOMMONCONTROLSEX InitCtrls; + InitCtrls.dwSize = sizeof(InitCtrls); + // Set this to include all the common control classes you want to use + // in your application. + InitCtrls.dwICC = ICC_WIN95_CLASSES; + InitCommonControlsEx(&InitCtrls); + + CWinApp::InitInstance(); + + + AfxEnableControlContainer(); + + // Create the shell manager, in case the dialog contains + // any shell tree view or shell list view controls. + CShellManager *pShellManager = new CShellManager; + + // Standard initialization + // If you are not using these features and wish to reduce the size + // of your final executable, you should remove from the following + // the specific initialization routines you do not need + // Change the registry key under which our settings are stored + // TODO: You should modify this string to be something appropriate + // such as the name of your company or organization + SetRegistryKey(_T("Local AppWizard-Generated Applications")); + + CDlg dlg; + m_pMainWnd = &dlg; + INT_PTR nResponse = dlg.DoModal(); + if (nResponse == IDOK) + { + // TODO: Place code here to handle when the dialog is + // dismissed with OK + } + else if (nResponse == IDCANCEL) + { + // TODO: Place code here to handle when the dialog is + // dismissed with Cancel + } + + // Delete the shell manager created above. + if (pShellManager != NULL) + { + delete pShellManager; + } + + // Since the dialog has been closed, return FALSE so that we exit the + // application, rather than start the application's message pump. + return FALSE; +} + diff --git a/vs2013mfc/src/App.h b/vs2013mfc/src/App.h new file mode 100644 index 0000000000000000000000000000000000000000..5ef9764a331791f71d688154f7af484024a9ca7f --- /dev/null +++ b/vs2013mfc/src/App.h @@ -0,0 +1,32 @@ + +// App.h : main header file for the application +// + +#pragma once + +#ifndef __AFXWIN_H__ + #error "include 'stdafx.h' before including this file for PCH" +#endif + +#include "resource.h" // main symbols + + +// CApp: +// See App.cpp for the implementation of this class +// + +class CApp : public CWinApp +{ +public: + CApp(); + +// Overrides +public: + virtual BOOL InitInstance(); + +// Implementation + + DECLARE_MESSAGE_MAP() +}; + +extern CApp theApp; \ No newline at end of file diff --git a/vs2013mfc/src/Dlg.cpp b/vs2013mfc/src/Dlg.cpp new file mode 100644 index 0000000000000000000000000000000000000000..f39249eb3c7c450e55cb335666b94e7f910928e2 --- /dev/null +++ b/vs2013mfc/src/Dlg.cpp @@ -0,0 +1,709 @@ + +// Dlg.cpp : implementation file +// + +#include "stdafx.h" +#include "App.h" +#include "Dlg.h" +#include "afxdialogex.h" + +#ifdef _DEBUG +#define new DEBUG_NEW +#endif + + +// CAboutDlg dialog used for App About + +class CAboutDlg : public CDialogEx +{ +public: + CAboutDlg(); + +// Dialog Data + enum { IDD = IDD_ABOUTBOX }; + + protected: + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support + +// Implementation +protected: + DECLARE_MESSAGE_MAP() +}; + +CAboutDlg::CAboutDlg() : CDialogEx(CAboutDlg::IDD) +{ +} + +void CAboutDlg::DoDataExchange(CDataExchange* pDX) +{ + CDialogEx::DoDataExchange(pDX); +} + +BEGIN_MESSAGE_MAP(CAboutDlg, CDialogEx) +END_MESSAGE_MAP() + + +// CDlg dialog + + + + +CDlg::CDlg(CWnd* pParent /*=NULL*/) + : CDialogEx(CDlg::IDD, pParent) +{ + m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); +} + +void CDlg::DoDataExchange(CDataExchange* pDX) +{ + CDialogEx::DoDataExchange(pDX); + DDX_Control(pDX, IDC_COMBO_BGSLIST, m_bgslist); + DDX_Control(pDX, IDC_LOG, m_log); + DDX_Control(pDX, IDC_INPUT_VIDEO, m_inputVideo); + DDX_Control(pDX, IDC_USE_WEBCAM, m_useWebCam); + DDX_Control(pDX, IDC_SPIN_WEBCAM_INDEX, m_spinWebCamIndex); + DDX_Control(pDX, IDC_EDIT_WEBCAM_INDEX, m_webCamIndex); + DDX_Control(pDX, IDC_FRAME_NUMBER, m_frameNumber); + DDX_Control(pDX, IDC_SAVE_FRAME, m_saveFrame); + DDX_Control(pDX, IDC_SAVE_MASK, m_saveMask); + DDX_Control(pDX, IDC_SAVE_BKG, m_saveBkg); + DDX_Control(pDX, IDC_IMG_SEQ, m_isImgSeq); + DDX_Control(pDX, IDC_EDIT_START_IDX, m_startIdx); + DDX_Control(pDX, IDC_EDIT_STOP_IDX, m_stopIdx); + DDX_Control(pDX, IDC_COMBO_FILE_TYPE, m_fileTypeList); + DDX_Control(pDX, IDC_SPIN_START_IDX, m_spinStartIdx); + DDX_Control(pDX, IDC_SPIN_STOP_IDX, m_spinStopIdx); + DDX_Control(pDX, IDC_EDIT_DELAY, m_delay); + DDX_Control(pDX, IDC_EXEC_TIME, m_execTime); + DDX_Control(pDX, IDC_MEDIAN_FILTER, m_medianFilter); +} + +BEGIN_MESSAGE_MAP(CDlg, CDialogEx) + ON_WM_SYSCOMMAND() + ON_WM_PAINT() + ON_WM_QUERYDRAGICON() + ON_BN_CLICKED(IDSTART, &CDlg::OnBnClickedStart) + ON_BN_CLICKED(IDSTOP, &CDlg::OnBnClickedStop) + ON_BN_CLICKED(IDC_USE_WEBCAM, &CDlg::OnBnClickedUseWebcam) + ON_BN_CLICKED(IDC_IMG_SEQ, &CDlg::OnBnClickedImgSeq) + ON_BN_CLICKED(IDSAVE, &CDlg::OnBnClickedSave) +END_MESSAGE_MAP() + + +// CDlg message handlers + +BOOL CDlg::OnInitDialog() +{ + CDialogEx::OnInitDialog(); + + // Add "About..." menu item to system menu. + + // IDM_ABOUTBOX must be in the system command range. + ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); + ASSERT(IDM_ABOUTBOX < 0xF000); + + CMenu* pSysMenu = GetSystemMenu(FALSE); + if (pSysMenu != NULL) + { + BOOL bNameValid; + CString strAboutMenu; + bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX); + ASSERT(bNameValid); + if (!strAboutMenu.IsEmpty()) + { + pSysMenu->AppendMenu(MF_SEPARATOR); + pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); + } + } + + // Set the icon for this dialog. The framework does this automatically + // when the application's main window is not a dialog + SetIcon(m_hIcon, TRUE); // Set big icon + SetIcon(m_hIcon, FALSE); // Set small icon + + // TODO: Add extra initialization here + methodName = L""; + useWebCam = false; + useImgSeq = false; + filePath = L""; + bgs = NULL; + webCamIndex = 0; + m_spinWebCamIndex.SetRange(0, 9); + m_spinStartIdx.SetRange(0, 999999); + m_spinStopIdx.SetRange(0, 999999); + m_frameNumber.SetWindowTextW(L"0"); + + addBgsList(); + m_fileTypeList.AddString(L"PNG"); + m_fileTypeList.AddString(L"JPG"); + m_fileTypeList.AddString(L"JPEG"); + m_fileTypeList.AddString(L"JPE"); + m_fileTypeList.AddString(L"JP2"); + m_fileTypeList.AddString(L"BMP"); + m_fileTypeList.AddString(L"DIB"); + m_fileTypeList.AddString(L"PBM"); + m_fileTypeList.AddString(L"PGM"); + m_fileTypeList.AddString(L"PPM"); + m_fileTypeList.AddString(L"SR"); + m_fileTypeList.AddString(L"RAS"); + m_fileTypeList.AddString(L"TIFF"); + m_fileTypeList.AddString(L"TIF"); + m_fileTypeList.SelectString(0,L"PNG"); + m_inputVideo.SetWindowTextW(L"dataset/video.avi"); + m_delay.SetWindowTextW(L"1"); + m_execTime.SetWindowTextW(L"0"); + + started = false; + if(started == false) + { + cv::namedWindow("INPUT", 1); + HWND hWnd = (HWND) cvGetWindowHandle("INPUT"); + HWND hParent = ::GetParent(hWnd); + ::SetParent(hWnd, GetDlgItem(IDC_FRAME_INPUT)->m_hWnd); + ::ShowWindow(hParent, SW_HIDE); + } + + if(started == false) + { + cv::namedWindow("MASK", 1); + HWND hWnd = (HWND) cvGetWindowHandle("MASK"); + HWND hParent = ::GetParent(hWnd); + ::SetParent(hWnd, GetDlgItem(IDC_FRAME_MASK)->m_hWnd); + ::ShowWindow(hParent, SW_HIDE); + } + + if(started == false) + { + cv::namedWindow("BKG", 1); + HWND hWnd = (HWND) cvGetWindowHandle("BKG"); + HWND hParent = ::GetParent(hWnd); + ::SetParent(hWnd, GetDlgItem(IDC_FRAME_BKG)->m_hWnd); + ::ShowWindow(hParent, SW_HIDE); + } + + return TRUE; // return TRUE unless you set the focus to a control +} + +void CDlg::OnSysCommand(UINT nID, LPARAM lParam) +{ + if ((nID & 0xFFF0) == IDM_ABOUTBOX) + { + CAboutDlg dlgAbout; + dlgAbout.DoModal(); + } + else + { + CDialogEx::OnSysCommand(nID, lParam); + } +} + +// If you add a minimize button to your dialog, you will need the code below +// to draw the icon. For MFC applications using the document/view model, +// this is automatically done for you by the framework. + +void CDlg::OnPaint() +{ + if (IsIconic()) + { + CPaintDC dc(this); // device context for painting + + SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0); + + // Center icon in client rectangle + int cxIcon = GetSystemMetrics(SM_CXICON); + int cyIcon = GetSystemMetrics(SM_CYICON); + CRect rect; + GetClientRect(&rect); + int x = (rect.Width() - cxIcon + 1) / 2; + int y = (rect.Height() - cyIcon + 1) / 2; + + // Draw the icon + dc.DrawIcon(x, y, m_hIcon); + } + else + { + CDialogEx::OnPaint(); + } +} + +// The system calls this function to obtain the cursor to display while the user drags +// the minimized window. +HCURSOR CDlg::OnQueryDragIcon() +{ + return static_cast<HCURSOR>(m_hIcon); +} + +void CDlg::addBgsList() +{ + // 37 algorithms + m_bgslist.AddString(L"FrameDifferenceBGS"); + m_bgslist.AddString(L"StaticFrameDifferenceBGS"); + m_bgslist.AddString(L"WeightedMovingMeanBGS"); + m_bgslist.AddString(L"WeightedMovingVarianceBGS"); + m_bgslist.AddString(L"MixtureOfGaussianV1BGS"); + m_bgslist.AddString(L"MixtureOfGaussianV2BGS"); + m_bgslist.AddString(L"AdaptiveBackgroundLearning"); + m_bgslist.AddString(L"AdaptiveSelectiveBackgroundLearning"); + m_bgslist.AddString(L"GMG"); + m_bgslist.AddString(L"DPAdaptiveMedianBGS"); + m_bgslist.AddString(L"DPGrimsonGMMBGS"); + m_bgslist.AddString(L"DPZivkovicAGMMBGS"); + m_bgslist.AddString(L"DPMeanBGS"); + m_bgslist.AddString(L"DPWrenGABGS"); + m_bgslist.AddString(L"DPPratiMediodBGS"); + m_bgslist.AddString(L"DPEigenbackgroundBGS"); + m_bgslist.AddString(L"DPTextureBGS"); + m_bgslist.AddString(L"T2FGMM_UM"); + m_bgslist.AddString(L"T2FGMM_UV"); + m_bgslist.AddString(L"T2FMRF_UM"); + m_bgslist.AddString(L"T2FMRF_UV"); + m_bgslist.AddString(L"FuzzySugenoIntegral"); + m_bgslist.AddString(L"FuzzyChoquetIntegral"); + m_bgslist.AddString(L"LBSimpleGaussian"); + m_bgslist.AddString(L"LBFuzzyGaussian"); + m_bgslist.AddString(L"LBMixtureOfGaussians"); + m_bgslist.AddString(L"LBAdaptiveSOM"); + m_bgslist.AddString(L"LBFuzzyAdaptiveSOM"); + m_bgslist.AddString(L"MultiLayerBGS"); + //m_bgslist.AddString(L"PBAS"); + m_bgslist.AddString(L"VuMeter"); + m_bgslist.AddString(L"KDE"); + m_bgslist.AddString(L"IndependentMultimodalBGS"); + m_bgslist.AddString(L"SJN_MultiCueBGS"); + m_bgslist.AddString(L"SigmaDeltaBGS"); + m_bgslist.AddString(L"SuBSENSEBGS"); + m_bgslist.AddString(L"LOBSTERBGS"); +} + +bool CDlg::getBgsMethodName() +{ + int nIndex = m_bgslist.GetCurSel(); + if(nIndex != CB_ERR) + { + m_bgslist.GetLBText(nIndex, methodName); + return true; + } + else + { + AfxMessageBox(L"Please, select one background subtraction method!"); + return false; + } +} + +bool CDlg::getFileType() +{ + int nIndex = m_fileTypeList.GetCurSel(); + if(nIndex != CB_ERR) + { + m_fileTypeList.GetLBText(nIndex, fileType); + return true; + } + else + { + AfxMessageBox(L"Please, select one file type or extension!"); + return false; + } +} + +bool CDlg::getInputVideoFilePath() +{ + m_inputVideo.GetWindowTextW(filePath); + + if(filePath.GetLength() > 0) + return true; + else + { + AfxMessageBox(L"Please, select one video file or image sequence folder!"); + return false; + } +} + +void CDlg::OnBnClickedStart() +{ + if(started == false) + { + m_log.SetWindowTextW(L"Checking..."); + + if(!getBgsMethodName()) + { + m_log.SetWindowTextW(L"Stopped..."); + return; + } + + useWebCam = false; + if(m_useWebCam.GetCheck() == BST_CHECKED) + useWebCam = true; + + useImgSeq = false; + if(m_isImgSeq.GetCheck() == BST_CHECKED) + { + useImgSeq = true; + + if(!getFileType()) + { + m_log.SetWindowTextW(L"Stopped..."); + return; + } + } + + if(useWebCam == false) + if(!getInputVideoFilePath()) + { + m_log.SetWindowTextW(L"Stopped..."); + return; + } + + m_log.SetWindowTextW(L"Starting..."); + thread = AfxBeginThread((AFX_THREADPROC) CDlg::Thread, (LPVOID) this); + } + else + { + AfxMessageBox(L"Thread is already initialized!"); + return; + } +} + +DWORD CDlg::Thread(LPVOID *lpvParam) +{ + CDlg *thr = (CDlg*) lpvParam; + thr->ThreadProcess(); + return NULL; +} + +void CDlg::ThreadProcess() +{ + CString csStartIdx; + m_startIdx.GetWindowTextW(csStartIdx); + startIdx = _tstoi(csStartIdx); + + CString csStopIdx; + m_stopIdx.GetWindowTextW(csStopIdx); + stopIdx = _tstoi(csStopIdx); + + if(useImgSeq == false) + { + if(useWebCam) + { + CString strIndex; + m_webCamIndex.GetWindowTextW(strIndex); + webCamIndex = _tstoi(strIndex); + capture = cvCaptureFromCAM(webCamIndex); + } + else + { + CStringA file_path_aux(filePath); + capture = cvCaptureFromFile((const char *) file_path_aux); + } + + if(!capture) + { + AfxMessageBox(L"ERROR: Cannot initialize video!"); + m_log.SetWindowTextW(L"Stopped..."); + return; + } + } + else + { + if(stopIdx == 0) + { + AfxMessageBox(L"Stop index not defined!"); + return; + } + + if(startIdx > stopIdx) + { + AfxMessageBox(L"Start index is higher than stop index!"); + return; + } + } + + /* Background Subtraction Methods */ + + if(methodName == "FrameDifferenceBGS") + bgs = new FrameDifferenceBGS; + if(methodName == "StaticFrameDifferenceBGS") + bgs = new StaticFrameDifferenceBGS; + if(methodName == "WeightedMovingMeanBGS") + bgs = new WeightedMovingMeanBGS; + if(methodName == "WeightedMovingVarianceBGS") + bgs = new WeightedMovingVarianceBGS; + if(methodName == "MixtureOfGaussianV1BGS") + bgs = new MixtureOfGaussianV1BGS; + if(methodName == "MixtureOfGaussianV2BGS") + bgs = new MixtureOfGaussianV2BGS; + if(methodName == "AdaptiveBackgroundLearning") + bgs = new AdaptiveBackgroundLearning; + if(methodName == "AdaptiveSelectiveBackgroundLearning") + bgs = new AdaptiveSelectiveBackgroundLearning; + if(methodName == "GMG") + bgs = new GMG; + + if(methodName == "DPAdaptiveMedianBGS") + bgs = new DPAdaptiveMedianBGS; + if(methodName == "DPGrimsonGMMBGS") + bgs = new DPGrimsonGMMBGS; + if(methodName == "DPZivkovicAGMMBGS") + bgs = new DPZivkovicAGMMBGS; + if(methodName == "DPMeanBGS") + bgs = new DPMeanBGS; + if(methodName == "DPWrenGABGS") + bgs = new DPWrenGABGS; + if(methodName == "DPPratiMediodBGS") + bgs = new DPPratiMediodBGS; + if(methodName == "DPEigenbackgroundBGS") + bgs = new DPEigenbackgroundBGS; + if(methodName == "DPTextureBGS") + bgs = new DPTextureBGS; + + if(methodName == "T2FGMM_UM") + bgs = new T2FGMM_UM; + if(methodName == "T2FGMM_UV") + bgs = new T2FGMM_UV; + if(methodName == "T2FMRF_UM") + bgs = new T2FMRF_UM; + if(methodName == "T2FMRF_UV") + bgs = new T2FMRF_UV; + if(methodName == "FuzzySugenoIntegral") + bgs = new FuzzySugenoIntegral; + if(methodName == "FuzzyChoquetIntegral") + bgs = new FuzzyChoquetIntegral; + + if(methodName == "LBSimpleGaussian") + bgs = new LBSimpleGaussian; + if(methodName == "LBFuzzyGaussian") + bgs = new LBFuzzyGaussian; + if(methodName == "LBMixtureOfGaussians") + bgs = new LBMixtureOfGaussians; + if(methodName == "LBAdaptiveSOM") + bgs = new LBAdaptiveSOM; + if(methodName == "LBFuzzyAdaptiveSOM") + bgs = new LBFuzzyAdaptiveSOM; + if(methodName == "MultiLayerBGS") + bgs = new MultiLayerBGS; + //if(methodName == "PBAS") + //bgs = new PixelBasedAdaptiveSegmenter; + if(methodName == "VuMeter") + bgs = new VuMeter; + if(methodName == "KDE") + bgs = new KDE; + if(methodName == "IndependentMultimodalBGS") + bgs = new IndependentMultimodalBGS; + if(methodName == "SJN_MultiCueBGS") + bgs = new SJN_MultiCueBGS; + if (methodName == "SigmaDeltaBGS") + bgs = new SigmaDeltaBGS; + if (methodName == "SuBSENSEBGS") + bgs = new SuBSENSEBGS; + if (methodName == "LOBSTERBGS") + bgs = new LOBSTERBGS; + + if(bgs == NULL) + { + AfxMessageBox(L"BGS object not defined!"); + return; + } + + started = true; + int i = 0; + if(useImgSeq == true && startIdx > 0) + i = startIdx - 1; + CString strFrameNumber; + CString strExecTime; + cv::Size default_size; + default_size.width = 235; + default_size.height = 189; + IplImage* frame; + std::string input_filename; + cv::Mat img_input; + // Convert a TCHAR string to a LPCSTR + CT2CA fileType2(fileType); + CT2CA filePath2(filePath); + // construct a std::string using the LPCSTR input + std::string str_fileType(fileType2); + std::string str_filePath(filePath2); + // delay + CString csDelay; + m_delay.GetWindowTextW(csDelay); + int delay = _tstoi(csDelay); + + do + { + m_log.SetWindowTextW(L"Running..."); + + i++; + //::Sleep(1); + + if(useImgSeq == true && i == (stopIdx + 1)) + break; + + if(useImgSeq) + { + input_filename = str_filePath + "\\" + boost::lexical_cast<std::string>(i) + "." + str_fileType; + img_input = cv::imread(input_filename); + + CString input_filename2(input_filename.c_str()); + m_log.SetWindowTextW(input_filename2); + + strFrameNumber.Format(L"%d",i); + m_frameNumber.SetWindowTextW(strFrameNumber); + + if(img_input.data == NULL) + { + AfxMessageBox(L"File can not be read!"); + break; + } + } + else + { + if(useWebCam == false && stopIdx >= 2 && i > stopIdx) + break; + + frame = cvQueryFrame(capture); + if(!frame) + break; + + if(useWebCam == false && startIdx >= 2 && i < startIdx) + continue; + + img_input = cv::Mat(frame,true); + } + + cv::Mat img_mask; + cv::Mat img_bkg; + Clock::time_point t0 = Clock::now(); + bgs->process(img_input, img_mask, img_bkg); + Clock::time_point t1 = Clock::now(); + auto d = boost::chrono::duration_cast<milliseconds>(t1 - t0); + //std::cout << "\nElapsed time: " << d.count() << "ms" << std::endl; + + cv::Mat img_input_aux; + cv::resize(img_input, img_input_aux, default_size); + + cv::Mat img_mask_aux; + if(img_mask.empty()) + img_mask = cv::Mat::zeros(cv::Size(img_input.size().width, img_input.size().height), img_input.type()); + if(m_medianFilter.GetCheck() == BST_CHECKED) + cv::medianBlur(img_mask, img_mask, 5); + cv::resize(img_mask, img_mask_aux, default_size); + + cv::Mat img_bgk_aux; + if(img_bkg.empty()) + img_bkg = cv::Mat::zeros(cv::Size(img_input.size().width, img_input.size().height), img_input.type()); + cv::resize(img_bkg, img_bgk_aux, default_size); + + cv::imshow("INPUT", img_input_aux); + cv::imshow("MASK", img_mask_aux); + cv::imshow("BKG", img_bgk_aux); + + extern_input_filename = "outputs/input/" + boost::lexical_cast<std::string>(i)+".png"; + img_input.copyTo(extern_input_img); + if(m_saveFrame.GetCheck() == BST_CHECKED) + cv::imwrite(extern_input_filename, img_input); + + extern_fg_filename = "outputs/foreground/" + boost::lexical_cast<std::string>(i)+".png"; + img_mask.copyTo(extern_fg_img); + if(m_saveMask.GetCheck() == BST_CHECKED) + cv::imwrite(extern_fg_filename, img_mask); + + extern_bg_filename = "outputs/background/" + boost::lexical_cast<std::string>(i)+".png"; + img_bkg.copyTo(extern_bg_img); + if(m_saveBkg.GetCheck() == BST_CHECKED) + cv::imwrite(extern_bg_filename, img_bkg); + + strFrameNumber.Format(L"%d",i); + m_frameNumber.SetWindowTextW(strFrameNumber); + + //strExecTime.Format(_T("%.2f"), d.count()); + strExecTime.Format(_T("%d"), d.count()); + m_execTime.SetWindowTextW(strExecTime); + + ::Sleep(delay); + + }while(1); + + delete bgs; + + if(!useImgSeq) + cvReleaseCapture(&capture); + + //AfxMessageBox(L"Thread is finished!"); + m_log.SetWindowTextW(L"Finished!"); + started = false; +} + + +void CDlg::OnBnClickedStop() +{ + if(started) + { + m_log.SetWindowTextW(L"Stopping..."); + + StopThread(); + + if(!useImgSeq) + if(capture) + cvReleaseCapture(&capture); + + delete bgs; + bgs = NULL; + + m_log.SetWindowTextW(L"Stopped!"); + started = false; + } +} + +void CDlg::StopThread() +{ + DWORD exit_code = NULL; + + if(thread != NULL) + { + GetExitCodeThread(thread->m_hThread, &exit_code); + + if(exit_code == STILL_ACTIVE) + { + ::TerminateThread(thread->m_hThread, 0); + CloseHandle(thread->m_hThread); + } + + thread->m_hThread = NULL; + thread = NULL; + } +} + +void CDlg::OnBnClickedUseWebcam() +{ + if(m_useWebCam.GetCheck() == BST_CHECKED) + m_isImgSeq.SetCheck(BST_UNCHECKED); + + m_inputVideo.EnableFileBrowseButton(); +} + +void CDlg::OnBnClickedImgSeq() +{ + if(m_isImgSeq.GetCheck() == BST_CHECKED) + { + m_inputVideo.EnableFolderBrowseButton(); + m_useWebCam.SetCheck(BST_UNCHECKED); + } + else + { + m_startIdx.SetWindowTextW(L"0"); + m_stopIdx.SetWindowTextW(L"0"); + m_inputVideo.EnableFileBrowseButton(); + } +} + +void CDlg::OnBnClickedSave() +{ + if(m_saveFrame.GetCheck() == BST_CHECKED) + cv::imwrite(extern_input_filename, extern_input_img); + + if(m_saveMask.GetCheck() == BST_CHECKED) + cv::imwrite(extern_fg_filename, extern_fg_img); + + if(m_saveBkg.GetCheck() == BST_CHECKED) + cv::imwrite(extern_bg_filename, extern_bg_img); + + m_log.SetWindowTextW(L"OK! Saved!"); +} diff --git a/vs2013mfc/src/Dlg.h b/vs2013mfc/src/Dlg.h new file mode 100644 index 0000000000000000000000000000000000000000..479d7271be837a490bf17915279e371f41461e85 --- /dev/null +++ b/vs2013mfc/src/Dlg.h @@ -0,0 +1,92 @@ + +// Dlg.h : header file +// + +#pragma once +#include "stdafx.h" +#include "afxwin.h" +#include "afxcmn.h" + +// CDlg dialog +class CDlg : public CDialogEx +{ +// Construction +public: + CDlg(CWnd* pParent = NULL); // standard constructor + +// Dialog Data + enum { IDD = IDD_APP }; + + protected: + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support + + +// Implementation +protected: + HICON m_hIcon; + + // Generated message map functions + virtual BOOL OnInitDialog(); + afx_msg void OnSysCommand(UINT nID, LPARAM lParam); + afx_msg void OnPaint(); + afx_msg HCURSOR OnQueryDragIcon(); + DECLARE_MESSAGE_MAP() + +private: + bool started; + CWinThread* thread; + CvCapture* capture; + IBGS* bgs; + CString methodName; + CString fileType; + bool useWebCam; + bool useImgSeq; + int webCamIndex; + int startIdx; + int stopIdx; + int extern_i; + std::string extern_input_filename; + cv::Mat extern_input_img; + std::string extern_fg_filename; + cv::Mat extern_fg_img; + std::string extern_bg_filename; + cv::Mat extern_bg_img; + + CString filePath; + +public: + afx_msg void ThreadProcess(); + static DWORD Thread(LPVOID *x); + afx_msg void StopThread(); + afx_msg bool ipDraw(HDC hdc, IplImage* img, int xoffset=0, int yoffset=0); + +public: + void addBgsList(); + bool getBgsMethodName(); + CComboBox m_bgslist; + afx_msg void OnBnClickedStart(); + CStatic m_log; + CMFCEditBrowseCtrl m_inputVideo; + bool getInputVideoFilePath(); + CButton m_useWebCam; + afx_msg void OnBnClickedStop(); + CSpinButtonCtrl m_spinWebCamIndex; + CEdit m_webCamIndex; + CStatic m_frameNumber; + CButton m_saveFrame; + CButton m_saveMask; + CButton m_saveBkg; + CButton m_isImgSeq; + CEdit m_startIdx; + CEdit m_stopIdx; + CComboBox m_fileTypeList; + bool getFileType(); + CSpinButtonCtrl m_spinStartIdx; + CSpinButtonCtrl m_spinStopIdx; + afx_msg void OnBnClickedUseWebcam(); + afx_msg void OnBnClickedImgSeq(); + CEdit m_delay; + CStatic m_execTime; + CButton m_medianFilter; + afx_msg void OnBnClickedSave(); +}; diff --git a/vs2013mfc/src/ReadMe.txt b/vs2013mfc/src/ReadMe.txt new file mode 100644 index 0000000000000000000000000000000000000000..0a203a163dcfcf3159d3e76a6253be80610e3fe2 --- /dev/null +++ b/vs2013mfc/src/ReadMe.txt @@ -0,0 +1,21 @@ +*** REQUIREMENTS *** +Certify that you have installed OpenCV 2.4.10 and Boost 1.61 in the following paths: +C:\OpenCV2.4.10 +C:\boost_1_61_0 + +INCLUDES: + C:\OpenCV2.4.10\build\include; + C:\OpenCV2.4.10\build\include\opencv; + C:\boost_1_61_0 + +LIBRAIRIES: + C:\OpenCV2.4.10\build\x86\vc12\staticlib\*.lib; + C:\boost_1_61_0\lib32-msvc-12.0\libboost_chrono-vc120-mt-s-1_61.lib; + C:\boost_1_61_0\lib32-msvc-12.0\libboost_system-vc120-mt-s-1_61.lib + +LINK TO DOWNLOAD BOOST 1.61: +https://sourceforge.net/projects/boost/files/boost-binaries/1.61.0/ +boost_1_61_0-msvc-12.0-32.exe [Visual Studio 2013, x86 (32bits)] + +LINK TO DOWNLOAD OPENCV 2.4.10: +https://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.4.10/opencv-2.4.10.exe/download \ No newline at end of file diff --git a/vs2013mfc/src/bgslibrary_vs2013_mfc.rc b/vs2013mfc/src/bgslibrary_vs2013_mfc.rc new file mode 100644 index 0000000000000000000000000000000000000000..4a3eea2983c976332f56420b110ec40bc85a15f3 Binary files /dev/null and b/vs2013mfc/src/bgslibrary_vs2013_mfc.rc differ diff --git a/vs2013mfc/src/bgslibrary_vs2013_mfc.sln b/vs2013mfc/src/bgslibrary_vs2013_mfc.sln new file mode 100644 index 0000000000000000000000000000000000000000..1941c5d01138508ee5d823c61cdce681a348d93e --- /dev/null +++ b/vs2013mfc/src/bgslibrary_vs2013_mfc.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2013 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bgslibrary_vs2013_mfc", "bgslibrary_vs2013_mfc.vcxproj", "{236E77EE-00D6-4B4E-80C7-C38847B1B60E}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {236E77EE-00D6-4B4E-80C7-C38847B1B60E}.Debug|Win32.ActiveCfg = Debug|Win32 + {236E77EE-00D6-4B4E-80C7-C38847B1B60E}.Debug|Win32.Build.0 = Debug|Win32 + {236E77EE-00D6-4B4E-80C7-C38847B1B60E}.Release|Win32.ActiveCfg = Release|Win32 + {236E77EE-00D6-4B4E-80C7-C38847B1B60E}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj b/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj new file mode 100644 index 0000000000000000000000000000000000000000..41da141b4b6b562577686617eb5051e1b1d556eb --- /dev/null +++ b/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj @@ -0,0 +1,299 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup Label="ProjectConfigurations"> + <ProjectConfiguration Include="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectGuid>{236E77EE-00D6-4B4E-80C7-C38847B1B60E}</ProjectGuid> + <RootNamespace>bgslibrary_vs2013_mfc</RootNamespace> + <Keyword>MFCProj</Keyword> + <ProjectName>bgslibrary_vs2013_mfc</ProjectName> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>Application</ConfigurationType> + <UseDebugLibraries>true</UseDebugLibraries> + <CharacterSet>Unicode</CharacterSet> + <UseOfMfc>Static</UseOfMfc> + <PlatformToolset>v120</PlatformToolset> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>Application</ConfigurationType> + <UseDebugLibraries>false</UseDebugLibraries> + <WholeProgramOptimization>true</WholeProgramOptimization> + <CharacterSet>Unicode</CharacterSet> + <UseOfMfc>Static</UseOfMfc> + <PlatformToolset>v120</PlatformToolset> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + </ImportGroup> + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <OutDir>../</OutDir> + <TargetName>mfc_bgslibrary</TargetName> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <PrecompiledHeader>Use</PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Link> + <SubSystem>Windows</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + </Link> + <Midl> + <MkTypLibCompatible>false</MkTypLibCompatible> + <ValidateAllParameters>true</ValidateAllParameters> + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </Midl> + <ResourceCompile> + <Culture>0x0409</Culture> + <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ResourceCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <PrecompiledHeader>NotUsing</PrecompiledHeader> + <Optimization>MaxSpeed</Optimization> + <FunctionLevelLinking>true</FunctionLevelLinking> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <AdditionalIncludeDirectories>C:\OpenCV2.4.10\build\include;C:\OpenCV2.4.10\build\include\opencv;C:\boost_1_61_0;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <RuntimeLibrary>MultiThreaded</RuntimeLibrary> + </ClCompile> + <Link> + <SubSystem>Windows</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + <AdditionalDependencies>C:\OpenCV2.4.10\build\x86\vc12\staticlib\*.lib;C:\boost_1_61_0\lib32-msvc-12.0\libboost_chrono-vc120-mt-s-1_61.lib;C:\boost_1_61_0\lib32-msvc-12.0\libboost_system-vc120-mt-s-1_61.lib;comctl32.lib;VFW32.lib;uafxcw.lib;LIBCMT.lib;%(AdditionalDependencies)</AdditionalDependencies> + <ShowProgress>NotSet</ShowProgress> + <IgnoreSpecificDefaultLibraries>uafxcw.lib;LIBCMT.lib</IgnoreSpecificDefaultLibraries> + </Link> + <Midl> + <MkTypLibCompatible>false</MkTypLibCompatible> + <ValidateAllParameters>true</ValidateAllParameters> + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </Midl> + <ResourceCompile> + <Culture>0x0409</Culture> + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ResourceCompile> + </ItemDefinitionGroup> + <ItemGroup> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_1ch.i" /> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_3ch1t.i" /> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_3ch3t.i" /> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_s3ch.i" /> + <None Include="ReadMe.txt" /> + <None Include="res\bgslibrary_vs2013_mfc.ico" /> + <None Include="res\bgslibrary_vs2013_mfc.rc2" /> + </ItemGroup> + <ItemGroup> + <ClInclude Include="..\..\package_bgs\pl\BackgroundSubtractorLBSP.h" /> + <ClInclude Include="..\..\package_bgs\pl\BackgroundSubtractorLOBSTER.h" /> + <ClInclude Include="..\..\package_bgs\pl\BackgroundSubtractorSuBSENSE.h" /> + <ClInclude Include="..\..\package_bgs\pl\DistanceUtils.h" /> + <ClInclude Include="..\..\package_bgs\pl\LBSP.h" /> + <ClInclude Include="..\..\package_bgs\pl\LOBSTER.h" /> + <ClInclude Include="..\..\package_bgs\pl\RandUtils.h" /> + <ClInclude Include="..\..\package_bgs\pl\SuBSENSE.h" /> + <ClInclude Include="App.h" /> + <ClInclude Include="Dlg.h" /> + <ClInclude Include="..\..\package_bgs\AdaptiveBackgroundLearning.h" /> + <ClInclude Include="..\..\package_bgs\AdaptiveSelectiveBackgroundLearning.h" /> + <ClInclude Include="..\..\package_bgs\ae\KDE.h" /> + <ClInclude Include="..\..\package_bgs\ae\KernelTable.h" /> + <ClInclude Include="..\..\package_bgs\ae\NPBGmodel.h" /> + <ClInclude Include="..\..\package_bgs\ae\NPBGSubtractor.h" /> + <ClInclude Include="..\..\package_bgs\av\TBackground.h" /> + <ClInclude Include="..\..\package_bgs\av\TBackgroundVuMeter.h" /> + <ClInclude Include="..\..\package_bgs\av\VuMeter.h" /> + <ClInclude Include="..\..\package_bgs\bl\sdLaMa091.h" /> + <ClInclude Include="..\..\package_bgs\bl\SigmaDeltaBGS.h" /> + <ClInclude Include="..\..\package_bgs\bl\stdbool.h" /> + <ClInclude Include="..\..\package_bgs\db\imbs.hpp" /> + <ClInclude Include="..\..\package_bgs\db\IndependentMultimodalBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\AdaptiveMedianBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\Bgs.h" /> + <ClInclude Include="..\..\package_bgs\dp\BgsParams.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPAdaptiveMedianBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPEigenbackgroundBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPGrimsonGMMBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPMeanBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPPratiMediodBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPTextureBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPWrenGABGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\DPZivkovicAGMMBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\Eigenbackground.h" /> + <ClInclude Include="..\..\package_bgs\dp\Error.h" /> + <ClInclude Include="..\..\package_bgs\dp\GrimsonGMM.h" /> + <ClInclude Include="..\..\package_bgs\dp\Image.h" /> + <ClInclude Include="..\..\package_bgs\dp\MeanBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\PratiMediodBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\TextureBGS.h" /> + <ClInclude Include="..\..\package_bgs\dp\WrenGA.h" /> + <ClInclude Include="..\..\package_bgs\dp\ZivkovicAGMM.h" /> + <ClInclude Include="..\..\package_bgs\FrameDifferenceBGS.h" /> + <ClInclude Include="..\..\package_bgs\GMG.h" /> + <ClInclude Include="..\..\package_bgs\IBGS.h" /> + <ClInclude Include="..\..\package_bgs\jmo\BackgroundSubtractionAPI.h" /> + <ClInclude Include="..\..\package_bgs\jmo\BGS.h" /> + <ClInclude Include="..\..\package_bgs\jmo\blob.h" /> + <ClInclude Include="..\..\package_bgs\jmo\BlobExtraction.h" /> + <ClInclude Include="..\..\package_bgs\jmo\BlobLibraryConfiguration.h" /> + <ClInclude Include="..\..\package_bgs\jmo\BlobResult.h" /> + <ClInclude Include="..\..\package_bgs\jmo\CMultiLayerBGS.h" /> + <ClInclude Include="..\..\package_bgs\jmo\LocalBinaryPattern.h" /> + <ClInclude Include="..\..\package_bgs\jmo\MultiLayerBGS.h" /> + <ClInclude Include="..\..\package_bgs\jmo\OpenCvDataConversion.h" /> + <ClInclude Include="..\..\package_bgs\lb\BGModel.h" /> + <ClInclude Include="..\..\package_bgs\lb\BGModelFuzzyGauss.h" /> + <ClInclude Include="..\..\package_bgs\lb\BGModelFuzzySom.h" /> + <ClInclude Include="..\..\package_bgs\lb\BGModelGauss.h" /> + <ClInclude Include="..\..\package_bgs\lb\BGModelMog.h" /> + <ClInclude Include="..\..\package_bgs\lb\BGModelSom.h" /> + <ClInclude Include="..\..\package_bgs\lb\LBAdaptiveSOM.h" /> + <ClInclude Include="..\..\package_bgs\lb\LBFuzzyAdaptiveSOM.h" /> + <ClInclude Include="..\..\package_bgs\lb\LBFuzzyGaussian.h" /> + <ClInclude Include="..\..\package_bgs\lb\LBMixtureOfGaussians.h" /> + <ClInclude Include="..\..\package_bgs\lb\LBSimpleGaussian.h" /> + <ClInclude Include="..\..\package_bgs\lb\Types.h" /> + <ClInclude Include="..\..\package_bgs\MixtureOfGaussianV1BGS.h" /> + <ClInclude Include="..\..\package_bgs\MixtureOfGaussianV2BGS.h" /> + <ClInclude Include="..\..\package_bgs\sjn\SJN_MultiCueBGS.h" /> + <ClInclude Include="..\..\package_bgs\StaticFrameDifferenceBGS.h" /> + <ClInclude Include="..\..\package_bgs\tb\FuzzyChoquetIntegral.h" /> + <ClInclude Include="..\..\package_bgs\tb\FuzzySugenoIntegral.h" /> + <ClInclude Include="..\..\package_bgs\tb\FuzzyUtils.h" /> + <ClInclude Include="..\..\package_bgs\tb\MRF.h" /> + <ClInclude Include="..\..\package_bgs\tb\PerformanceUtils.h" /> + <ClInclude Include="..\..\package_bgs\tb\PixelUtils.h" /> + <ClInclude Include="..\..\package_bgs\tb\T2FGMM.h" /> + <ClInclude Include="..\..\package_bgs\tb\T2FGMM_UM.h" /> + <ClInclude Include="..\..\package_bgs\tb\T2FGMM_UV.h" /> + <ClInclude Include="..\..\package_bgs\tb\T2FMRF.h" /> + <ClInclude Include="..\..\package_bgs\tb\T2FMRF_UM.h" /> + <ClInclude Include="..\..\package_bgs\tb\T2FMRF_UV.h" /> + <ClInclude Include="..\..\package_bgs\WeightedMovingMeanBGS.h" /> + <ClInclude Include="..\..\package_bgs\WeightedMovingVarianceBGS.h" /> + <ClInclude Include="Resource.h" /> + <ClInclude Include="stdafx.h" /> + <ClInclude Include="targetver.h" /> + </ItemGroup> + <ItemGroup> + <ClCompile Include="..\..\package_bgs\pl\BackgroundSubtractorLBSP.cpp" /> + <ClCompile Include="..\..\package_bgs\pl\BackgroundSubtractorLOBSTER.cpp" /> + <ClCompile Include="..\..\package_bgs\pl\BackgroundSubtractorSuBSENSE.cpp" /> + <ClCompile Include="..\..\package_bgs\pl\LBSP.cpp" /> + <ClCompile Include="..\..\package_bgs\pl\LOBSTER.cpp" /> + <ClCompile Include="..\..\package_bgs\pl\SuBSENSE.cpp" /> + <ClCompile Include="App.cpp" /> + <ClCompile Include="Dlg.cpp" /> + <ClCompile Include="..\..\package_bgs\AdaptiveBackgroundLearning.cpp" /> + <ClCompile Include="..\..\package_bgs\AdaptiveSelectiveBackgroundLearning.cpp" /> + <ClCompile Include="..\..\package_bgs\ae\KDE.cpp" /> + <ClCompile Include="..\..\package_bgs\ae\KernelTable.cpp" /> + <ClCompile Include="..\..\package_bgs\ae\NPBGmodel.cpp" /> + <ClCompile Include="..\..\package_bgs\ae\NPBGSubtractor.cpp" /> + <ClCompile Include="..\..\package_bgs\av\TBackground.cpp" /> + <ClCompile Include="..\..\package_bgs\av\TBackgroundVuMeter.cpp" /> + <ClCompile Include="..\..\package_bgs\av\VuMeter.cpp" /> + <ClCompile Include="..\..\package_bgs\bl\sdLaMa091.cpp" /> + <ClCompile Include="..\..\package_bgs\bl\SigmaDeltaBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\db\imbs.cpp" /> + <ClCompile Include="..\..\package_bgs\db\IndependentMultimodalBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\AdaptiveMedianBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPAdaptiveMedianBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPEigenbackgroundBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPGrimsonGMMBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPMeanBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPPratiMediodBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPTextureBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPWrenGABGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\DPZivkovicAGMMBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\Eigenbackground.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\Error.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\GrimsonGMM.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\Image.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\MeanBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\PratiMediodBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\TextureBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\WrenGA.cpp" /> + <ClCompile Include="..\..\package_bgs\dp\ZivkovicAGMM.cpp" /> + <ClCompile Include="..\..\package_bgs\FrameDifferenceBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\GMG.cpp" /> + <ClCompile Include="..\..\package_bgs\jmo\blob.cpp" /> + <ClCompile Include="..\..\package_bgs\jmo\BlobExtraction.cpp" /> + <ClCompile Include="..\..\package_bgs\jmo\BlobResult.cpp" /> + <ClCompile Include="..\..\package_bgs\jmo\CMultiLayerBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\jmo\LocalBinaryPattern.cpp" /> + <ClCompile Include="..\..\package_bgs\jmo\MultiLayerBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\BGModel.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\BGModelFuzzyGauss.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\BGModelFuzzySom.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\BGModelGauss.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\BGModelMog.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\BGModelSom.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\LBAdaptiveSOM.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\LBFuzzyAdaptiveSOM.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\LBFuzzyGaussian.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\LBMixtureOfGaussians.cpp" /> + <ClCompile Include="..\..\package_bgs\lb\LBSimpleGaussian.cpp" /> + <ClCompile Include="..\..\package_bgs\MixtureOfGaussianV1BGS.cpp" /> + <ClCompile Include="..\..\package_bgs\MixtureOfGaussianV2BGS.cpp" /> + <ClCompile Include="..\..\package_bgs\sjn\SJN_MultiCueBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\StaticFrameDifferenceBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\FuzzyChoquetIntegral.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\FuzzySugenoIntegral.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\FuzzyUtils.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\MRF.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\PerformanceUtils.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\PixelUtils.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\T2FGMM.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\T2FGMM_UM.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\T2FGMM_UV.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\T2FMRF.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\T2FMRF_UM.cpp" /> + <ClCompile Include="..\..\package_bgs\tb\T2FMRF_UV.cpp" /> + <ClCompile Include="..\..\package_bgs\WeightedMovingMeanBGS.cpp" /> + <ClCompile Include="..\..\package_bgs\WeightedMovingVarianceBGS.cpp" /> + <ClCompile Include="stdafx.cpp"> + <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader> + <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader> + </ClCompile> + </ItemGroup> + <ItemGroup> + <ResourceCompile Include="bgslibrary_vs2013_mfc.rc" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> + <ProjectExtensions> + <VisualStudio> + <UserProperties RESOURCE_FILE="bgslibrary_vs2013_mfc.rc" /> + </VisualStudio> + </ProjectExtensions> +</Project> \ No newline at end of file diff --git a/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj.filters b/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj.filters new file mode 100644 index 0000000000000000000000000000000000000000..94cbcf365cb44acd82f61c8ed412199689c5ade3 --- /dev/null +++ b/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj.filters @@ -0,0 +1,581 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Source Files"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + <Filter Include="Header Files"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> + </Filter> + <Filter Include="Resource Files"> + <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> + <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions> + </Filter> + <Filter Include="Header Files\package_bgs"> + <UniqueIdentifier>{be6b45b0-e96c-4347-a65e-a72506b4195f}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\av"> + <UniqueIdentifier>{c4756493-26d9-46f4-93d6-024b4d1ca61a}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\dp"> + <UniqueIdentifier>{a3dff805-136a-4fc5-a8e9-a7eadebcd6f2}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\jmo"> + <UniqueIdentifier>{d9c40f02-d18f-46bb-a956-522e83a8a2e7}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\lb"> + <UniqueIdentifier>{77576fcd-de50-4205-8072-cb25a1aab145}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\tb"> + <UniqueIdentifier>{50f16e47-ef1d-46b0-a0cb-f7c07599cd21}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\ae"> + <UniqueIdentifier>{704bbcb4-9bbe-4fe1-8a80-78ee8d7f49c5}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\sjn"> + <UniqueIdentifier>{d365878b-8639-4bfd-8008-adb158c9cd8b}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\db"> + <UniqueIdentifier>{f7961eef-2755-4712-a9b7-1b840b7936b1}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\bl"> + <UniqueIdentifier>{e23418b4-562b-41ae-bd15-e9ad45ece1d1}</UniqueIdentifier> + </Filter> + <Filter Include="Header Files\package_bgs\pl"> + <UniqueIdentifier>{2a0f8129-33e2-4829-a112-edba4c8f5ef6}</UniqueIdentifier> + </Filter> + </ItemGroup> + <ItemGroup> + <None Include="ReadMe.txt" /> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_1ch.i"> + <Filter>Header Files\package_bgs\pl</Filter> + </None> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_3ch1t.i"> + <Filter>Header Files\package_bgs\pl</Filter> + </None> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_3ch3t.i"> + <Filter>Header Files\package_bgs\pl</Filter> + </None> + <None Include="..\..\package_bgs\pl\LBSP_16bits_dbcross_s3ch.i"> + <Filter>Header Files\package_bgs\pl</Filter> + </None> + <None Include="res\bgslibrary_vs2013_mfc.ico"> + <Filter>Resource Files</Filter> + </None> + <None Include="res\bgslibrary_vs2013_mfc.rc2"> + <Filter>Resource Files</Filter> + </None> + </ItemGroup> + <ItemGroup> + <ClInclude Include="Dlg.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="stdafx.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="targetver.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="Resource.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="App.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\AdaptiveBackgroundLearning.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\FrameDifferenceBGS.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\GMG.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\IBGS.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\MixtureOfGaussianV1BGS.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\MixtureOfGaussianV2BGS.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\StaticFrameDifferenceBGS.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\WeightedMovingMeanBGS.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\WeightedMovingVarianceBGS.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\av\TBackground.h"> + <Filter>Header Files\package_bgs\av</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\av\TBackgroundVuMeter.h"> + <Filter>Header Files\package_bgs\av</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\av\VuMeter.h"> + <Filter>Header Files\package_bgs\av</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\BackgroundSubtractionAPI.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\BGS.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\blob.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\BlobExtraction.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\BlobLibraryConfiguration.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\BlobResult.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\CMultiLayerBGS.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\LocalBinaryPattern.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\MultiLayerBGS.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\jmo\OpenCvDataConversion.h"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\BGModel.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\BGModelFuzzyGauss.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\BGModelFuzzySom.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\BGModelGauss.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\BGModelMog.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\BGModelSom.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\LBAdaptiveSOM.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\LBFuzzyAdaptiveSOM.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\LBFuzzyGaussian.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\LBMixtureOfGaussians.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\LBSimpleGaussian.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\lb\Types.h"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\FuzzyChoquetIntegral.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\FuzzySugenoIntegral.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\FuzzyUtils.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\MRF.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\PerformanceUtils.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\PixelUtils.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\T2FGMM.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\T2FGMM_UM.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\T2FGMM_UV.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\T2FMRF.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\T2FMRF_UM.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\tb\T2FMRF_UV.h"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\ae\KDE.h"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\ae\KernelTable.h"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\ae\NPBGmodel.h"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\ae\NPBGSubtractor.h"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\AdaptiveMedianBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\Bgs.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\BgsParams.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPAdaptiveMedianBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPEigenbackgroundBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPGrimsonGMMBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPMeanBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPPratiMediodBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPTextureBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPWrenGABGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\DPZivkovicAGMMBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\Eigenbackground.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\Error.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\GrimsonGMM.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\Image.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\MeanBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\PratiMediodBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\TextureBGS.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\WrenGA.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\dp\ZivkovicAGMM.h"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\sjn\SJN_MultiCueBGS.h"> + <Filter>Header Files\package_bgs\sjn</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\db\imbs.hpp"> + <Filter>Header Files\package_bgs\db</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\db\IndependentMultimodalBGS.h"> + <Filter>Header Files\package_bgs\db</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\AdaptiveSelectiveBackgroundLearning.h"> + <Filter>Header Files\package_bgs</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\bl\sdLaMa091.h"> + <Filter>Header Files\package_bgs\bl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\bl\SigmaDeltaBGS.h"> + <Filter>Header Files\package_bgs\bl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\bl\stdbool.h"> + <Filter>Header Files\package_bgs\bl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\BackgroundSubtractorLBSP.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\BackgroundSubtractorLOBSTER.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\BackgroundSubtractorSuBSENSE.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\DistanceUtils.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\LBSP.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\LOBSTER.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\RandUtils.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + <ClInclude Include="..\..\package_bgs\pl\SuBSENSE.h"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClInclude> + </ItemGroup> + <ItemGroup> + <ClCompile Include="Dlg.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="stdafx.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="App.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\AdaptiveBackgroundLearning.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\FrameDifferenceBGS.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\GMG.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\MixtureOfGaussianV1BGS.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\MixtureOfGaussianV2BGS.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\StaticFrameDifferenceBGS.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\WeightedMovingMeanBGS.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\WeightedMovingVarianceBGS.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\av\TBackground.cpp"> + <Filter>Header Files\package_bgs\av</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\av\TBackgroundVuMeter.cpp"> + <Filter>Header Files\package_bgs\av</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\av\VuMeter.cpp"> + <Filter>Header Files\package_bgs\av</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\jmo\blob.cpp"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\jmo\BlobExtraction.cpp"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\jmo\BlobResult.cpp"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\jmo\CMultiLayerBGS.cpp"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\jmo\LocalBinaryPattern.cpp"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\jmo\MultiLayerBGS.cpp"> + <Filter>Header Files\package_bgs\jmo</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\BGModel.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\BGModelFuzzyGauss.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\BGModelFuzzySom.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\BGModelGauss.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\BGModelMog.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\BGModelSom.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\LBAdaptiveSOM.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\LBFuzzyAdaptiveSOM.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\LBFuzzyGaussian.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\LBMixtureOfGaussians.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\lb\LBSimpleGaussian.cpp"> + <Filter>Header Files\package_bgs\lb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\FuzzyChoquetIntegral.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\FuzzySugenoIntegral.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\FuzzyUtils.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\MRF.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\PerformanceUtils.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\PixelUtils.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\T2FGMM.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\T2FGMM_UM.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\T2FGMM_UV.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\T2FMRF.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\T2FMRF_UM.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\tb\T2FMRF_UV.cpp"> + <Filter>Header Files\package_bgs\tb</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\ae\KDE.cpp"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\ae\KernelTable.cpp"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\ae\NPBGmodel.cpp"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\ae\NPBGSubtractor.cpp"> + <Filter>Header Files\package_bgs\ae</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\AdaptiveMedianBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPAdaptiveMedianBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPEigenbackgroundBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPGrimsonGMMBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPMeanBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPPratiMediodBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPTextureBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPWrenGABGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\DPZivkovicAGMMBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\Eigenbackground.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\Error.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\GrimsonGMM.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\Image.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\MeanBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\PratiMediodBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\TextureBGS.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\WrenGA.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\dp\ZivkovicAGMM.cpp"> + <Filter>Header Files\package_bgs\dp</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\sjn\SJN_MultiCueBGS.cpp"> + <Filter>Header Files\package_bgs\sjn</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\db\imbs.cpp"> + <Filter>Header Files\package_bgs\db</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\db\IndependentMultimodalBGS.cpp"> + <Filter>Header Files\package_bgs\db</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\AdaptiveSelectiveBackgroundLearning.cpp"> + <Filter>Header Files\package_bgs</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\bl\sdLaMa091.cpp"> + <Filter>Header Files\package_bgs\bl</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\bl\SigmaDeltaBGS.cpp"> + <Filter>Header Files\package_bgs\bl</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\pl\BackgroundSubtractorLBSP.cpp"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\pl\BackgroundSubtractorLOBSTER.cpp"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\pl\BackgroundSubtractorSuBSENSE.cpp"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\pl\LBSP.cpp"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\pl\LOBSTER.cpp"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClCompile> + <ClCompile Include="..\..\package_bgs\pl\SuBSENSE.cpp"> + <Filter>Header Files\package_bgs\pl</Filter> + </ClCompile> + </ItemGroup> + <ItemGroup> + <ResourceCompile Include="bgslibrary_vs2013_mfc.rc"> + <Filter>Resource Files</Filter> + </ResourceCompile> + </ItemGroup> +</Project> \ No newline at end of file diff --git a/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj.user b/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj.user new file mode 100644 index 0000000000000000000000000000000000000000..882b48c8d7ec68d8f657f496796212ce80d27ea7 --- /dev/null +++ b/vs2013mfc/src/bgslibrary_vs2013_mfc.vcxproj.user @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <LocalDebuggerWorkingDirectory>../</LocalDebuggerWorkingDirectory> + <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor> + </PropertyGroup> +</Project> \ No newline at end of file diff --git a/vs2013mfc/src/res/bgslibrary_vs2013_mfc.ico b/vs2013mfc/src/res/bgslibrary_vs2013_mfc.ico new file mode 100644 index 0000000000000000000000000000000000000000..d56fbcdfdf6eac0f4727c34770c26689271d96af Binary files /dev/null and b/vs2013mfc/src/res/bgslibrary_vs2013_mfc.ico differ diff --git a/vs2013mfc/src/res/bgslibrary_vs2013_mfc.rc2 b/vs2013mfc/src/res/bgslibrary_vs2013_mfc.rc2 new file mode 100644 index 0000000000000000000000000000000000000000..e327fa85913f2210efffc3a01eb0194aadda29e2 Binary files /dev/null and b/vs2013mfc/src/res/bgslibrary_vs2013_mfc.rc2 differ diff --git a/vs2013mfc/src/resource.h b/vs2013mfc/src/resource.h new file mode 100644 index 0000000000000000000000000000000000000000..606dd8c2eebd167158db80652c82fc50419d8ec6 Binary files /dev/null and b/vs2013mfc/src/resource.h differ diff --git a/vs2013mfc/src/stdafx.cpp b/vs2013mfc/src/stdafx.cpp new file mode 100644 index 0000000000000000000000000000000000000000..9e260e7224cab759fbfae5b285437dcdec4e40db --- /dev/null +++ b/vs2013mfc/src/stdafx.cpp @@ -0,0 +1,8 @@ + +// stdafx.cpp : source file that includes just the standard includes +// bgslibrary_vs2010_mfc.pch will be the pre-compiled header +// stdafx.obj will contain the pre-compiled type information + +#include "stdafx.h" + + diff --git a/vs2013mfc/src/stdafx.h b/vs2013mfc/src/stdafx.h new file mode 100644 index 0000000000000000000000000000000000000000..4d734a9e557b27d0ff404d1ae85769b66c6e890e --- /dev/null +++ b/vs2013mfc/src/stdafx.h @@ -0,0 +1,104 @@ + +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, +// but are changed infrequently + +#pragma once + +#ifndef _SECURE_ATL +#define _SECURE_ATL 1 +#endif + +#ifndef VC_EXTRALEAN +#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers +#endif + +#include "targetver.h" + +#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // some CString constructors will be explicit + +// turns off MFC's hiding of some common and often safely ignored warning messages +#define _AFX_ALL_WARNINGS + +#include <afxwin.h> // MFC core and standard components +#include <afxext.h> // MFC extensions + + +#include <afxdisp.h> // MFC Automation classes + + + +#ifndef _AFX_NO_OLE_SUPPORT +#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls +#endif +#ifndef _AFX_NO_AFXCMN_SUPPORT +#include <afxcmn.h> // MFC support for Windows Common Controls +#endif // _AFX_NO_AFXCMN_SUPPORT + +#include <afxcontrolbars.h> // MFC support for ribbons and control bars + +#ifdef _UNICODE +#if defined _M_IX86 +#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"") +#elif defined _M_X64 +#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"") +#else +#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"") +#endif +#endif + +#include <boost/lexical_cast.hpp> +#include <boost/chrono.hpp> +typedef boost::chrono::high_resolution_clock Clock; +typedef boost::chrono::milliseconds milliseconds; +typedef boost::chrono::microseconds microseconds; + +#include <iostream> + +#include <cv.h> +#include <highgui.h> + +// BGSLibrary algorithms + +#include "../../package_bgs/FrameDifferenceBGS.h" +#include "../../package_bgs/StaticFrameDifferenceBGS.h" +#include "../../package_bgs/WeightedMovingMeanBGS.h" +#include "../../package_bgs/WeightedMovingVarianceBGS.h" +#include "../../package_bgs/MixtureOfGaussianV1BGS.h" +#include "../../package_bgs/MixtureOfGaussianV2BGS.h" +#include "../../package_bgs/AdaptiveBackgroundLearning.h" +#include "../../package_bgs/AdaptiveSelectiveBackgroundLearning.h" +#include "../../package_bgs/GMG.h" + +#include "../../package_bgs/dp/DPAdaptiveMedianBGS.h" +#include "../../package_bgs/dp/DPGrimsonGMMBGS.h" +#include "../../package_bgs/dp/DPZivkovicAGMMBGS.h" +#include "../../package_bgs/dp/DPMeanBGS.h" +#include "../../package_bgs/dp/DPWrenGABGS.h" +#include "../../package_bgs/dp/DPPratiMediodBGS.h" +#include "../../package_bgs/dp/DPEigenbackgroundBGS.h" +#include "../../package_bgs/dp/DPTextureBGS.h" + +#include "../../package_bgs/tb/T2FGMM_UM.h" +#include "../../package_bgs/tb/T2FGMM_UV.h" +#include "../../package_bgs/tb/T2FMRF_UM.h" +#include "../../package_bgs/tb/T2FMRF_UV.h" +#include "../../package_bgs/tb/FuzzySugenoIntegral.h" +#include "../../package_bgs/tb/FuzzyChoquetIntegral.h" + +#include "../../package_bgs/lb/LBSimpleGaussian.h" +#include "../../package_bgs/lb/LBFuzzyGaussian.h" +#include "../../package_bgs/lb/LBMixtureOfGaussians.h" +#include "../../package_bgs/lb/LBAdaptiveSOM.h" +#include "../../package_bgs/lb/LBFuzzyAdaptiveSOM.h" + +#include "../../package_bgs/jmo/MultiLayerBGS.h" +//#include "../../package_bgs/pt/PixelBasedAdaptiveSegmenter.h" +#include "../../package_bgs/av/VuMeter.h" +#include "../../package_bgs/ae/KDE.h" +#include "../../package_bgs/db/IndependentMultimodalBGS.h" +#include "../../package_bgs/sjn/SJN_MultiCueBGS.h" +#include "../../package_bgs/bl/SigmaDeltaBGS.h" + +#include "../../package_bgs/pl/SuBSENSE.h" +#include "../../package_bgs/pl/LOBSTER.h" diff --git a/vs2013mfc/src/targetver.h b/vs2013mfc/src/targetver.h new file mode 100644 index 0000000000000000000000000000000000000000..87c0086de751bac3d47208b77d76b82d78f26702 --- /dev/null +++ b/vs2013mfc/src/targetver.h @@ -0,0 +1,8 @@ +#pragma once + +// Including SDKDDKVer.h defines the highest available Windows platform. + +// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and +// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. + +#include <SDKDDKVer.h>