diff --git a/config/MultiCue.xml b/config/MultiCue.xml new file mode 100644 index 0000000000000000000000000000000000000000..25b693ae14d145df34f51f8f8b182878b6a90871 --- /dev/null +++ b/config/MultiCue.xml @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<opencv_storage> +<showOutput>1</showOutput> +<g_fLearningRate>5.0000000745058060e-02</g_fLearningRate> +<g_iAbsortionPeriod>200</g_iAbsortionPeriod> +<g_iC_ModelThreshold>10</g_iC_ModelThreshold> +<g_iT_ModelThreshold>1</g_iT_ModelThreshold> +<g_iBackClearPeriod>300</g_iBackClearPeriod> +<g_iCacheClearPeriod>30</g_iCacheClearPeriod> +<g_nNeighborNum>6</g_nNeighborNum> +<g_nRadius>2</g_nRadius> +<g_nTextureTrainVolRange>15</g_nTextureTrainVolRange> +<g_bAbsorptionEnable>1</g_bAbsorptionEnable> +<g_iTrainingPeriod>20</g_iTrainingPeriod> +<g_iRWidth>160</g_iRWidth> +<g_iRHeight>120</g_iRHeight> +</opencv_storage> diff --git a/package_bgs/MultiCue.cpp b/package_bgs/MultiCue.cpp index 317384b38eecf43faa939a946b7e4ee12e86a8d4..fd04ed1960ce92f08c6461a4a92443f610162ac2 100644 --- a/package_bgs/MultiCue.cpp +++ b/package_bgs/MultiCue.cpp @@ -122,6 +122,21 @@ void MultiCue::saveConfig() CvFileStorage* fs = cvOpenFileStorage(config_xml.c_str(), nullptr, CV_STORAGE_WRITE); cvWriteInt(fs, "showOutput", showOutput); + cvWriteReal(fs, "g_fLearningRate", g_fLearningRate); + cvWriteInt(fs, "g_iAbsortionPeriod", g_iAbsortionPeriod); + cvWriteInt(fs, "g_iC_ModelThreshold", g_iC_ModelThreshold); + cvWriteInt(fs, "g_iT_ModelThreshold", g_iT_ModelThreshold); + + cvWriteInt(fs, "g_iBackClearPeriod", g_iBackClearPeriod); + cvWriteInt(fs, "g_iCacheClearPeriod", g_iCacheClearPeriod); + cvWriteInt(fs, "g_nNeighborNum", g_nNeighborNum); + cvWriteInt(fs, "g_nRadius", g_nRadius); + + cvWriteInt(fs, "g_nTextureTrainVolRange", g_nTextureTrainVolRange); + cvWriteInt(fs, "g_bAbsorptionEnable", g_bAbsorptionEnable); + cvWriteInt(fs, "g_iTrainingPeriod", g_iTrainingPeriod); + cvWriteInt(fs, "g_iRWidth", g_iRWidth); + cvWriteInt(fs, "g_iRHeight", g_iRHeight); cvReleaseFileStorage(&fs); } @@ -131,6 +146,21 @@ void MultiCue::loadConfig() CvFileStorage* fs = cvOpenFileStorage(config_xml.c_str(), nullptr, CV_STORAGE_READ); showOutput = cvReadIntByName(fs, nullptr, "showOutput", true); + g_fLearningRate = cvReadRealByName(fs, nullptr, "g_fLearningRate", g_fLearningRate); + g_iAbsortionPeriod = cvReadIntByName(fs, nullptr, "g_iAbsortionPeriod", g_iAbsortionPeriod); + g_iC_ModelThreshold = cvReadIntByName(fs, nullptr, "g_iC_ModelThreshold", g_iC_ModelThreshold); + g_iT_ModelThreshold = cvReadIntByName(fs, nullptr, "g_iT_ModelThreshold", g_iT_ModelThreshold); + + g_iBackClearPeriod = cvReadIntByName(fs, nullptr, "g_iBackClearPeriod", g_iBackClearPeriod); + g_iCacheClearPeriod = cvReadIntByName(fs, nullptr, "g_iCacheClearPeriod", g_iCacheClearPeriod); + g_nNeighborNum = cvReadIntByName(fs, nullptr, "g_nNeighborNum", g_nNeighborNum); + g_nRadius = cvReadIntByName(fs, nullptr, "g_nRadius", g_nRadius); + + g_nTextureTrainVolRange = cvReadIntByName(fs, nullptr, "g_nTextureTrainVolRange", g_nTextureTrainVolRange); + g_bAbsorptionEnable = cvReadIntByName(fs, nullptr, "g_bAbsorptionEnable", g_bAbsorptionEnable); + g_iTrainingPeriod = cvReadIntByName(fs, nullptr, "g_iTrainingPeriod", g_iTrainingPeriod); + g_iRWidth = cvReadIntByName(fs, nullptr, "g_iRWidth", g_iRWidth); + g_iRHeight = cvReadIntByName(fs, nullptr, "g_iRHeight", g_iRHeight); cvReleaseFileStorage(&fs); }