This commit is contained in:
Paul Leroy
2022-03-21 10:38:14 +01:00
2 changed files with 3 additions and 9 deletions
+2 -8
View File
@@ -524,19 +524,15 @@ bool Classifier::train( const ccPointCloud* cloud,
m_rtrees->setMaxDepth(params.maxDepth);
m_rtrees->setMinSampleCount(params.minSampleCount);
m_rtrees->setRegressionAccuracy(0);
// If true then surrogate splits will be built. These splits allow to work with missing data and compute variable importance correctly. Default value is false.
m_rtrees->setUseSurrogates(false);
m_rtrees->setPriors(cv::Mat());
//m_rtrees->setMaxCategories(params.maxCategories); //not important?
m_rtrees->setCalculateVarImportance(true);
m_rtrees->setActiveVarCount(params.activeVarCount);
//cv::TermCriteria terminationCriteria(cv::TermCriteria::MAX_ITER, params.maxTreeCount, std::numeric_limits<double>::epsilon());
cv::TermCriteria terminationCriteria(cv::TermCriteria::MAX_ITER, params.maxTreeCount, 0.1);
cv::TermCriteria terminationCriteria(cv::TermCriteria::MAX_ITER, params.maxTreeCount, std::numeric_limits<double>::epsilon());
m_rtrees->setTermCriteria(terminationCriteria);
ccLog::Warning("[Classifier::train] hardware_concurrency " + QString::number(std::thread::hardware_concurrency()));
ccLog::Warning("[Classifier::train] cv::getNumThreads " + QString::number(cv::getNumThreads()));
ccLog::Warning("[Classifier::train] cv::getNumberOfCPUs " + QString::number(cv::getNumberOfCPUs()));
cv::setNumThreads(50);
ccLog::Warning("[Classifier::train] cv::getNumThreads " + QString::number(cv::getNumThreads()));
QFuture<bool> future = QtConcurrent::run([&]()
@@ -544,8 +540,6 @@ bool Classifier::train( const ccPointCloud* cloud,
// Code in this block will run in another thread
try
{
ccLog::Warning("[QFuture] cv::getNumThreads " + QString::number(cv::getNumThreads()));
cv::setNumThreads(50);
ccLog::Warning("[QFuture] cv::getNumThreads " + QString::number(cv::getNumThreads()));
cv::Mat sampleIndexes = cv::Mat::zeros(1, training_data.rows, CV_8U);
cv::Mat trainSamples = sampleIndexes.colRange(0, sampleCount);
+1 -1
View File
@@ -1127,7 +1127,7 @@ bool Tools::PrepareFeatures(const CorePoints& corePoints, Feature::Set& features
for (int i = 0; i < static_cast<int>(pointCount); ++i)
{
//spherical neighborhood extraction structure
CCCoreLib::DgmOctree::NearestNeighboursSphericalSearchStruct nNSS;
CCCoreLib::DgmOctree::NearestNeighboursSearchStruct nNSS;
{
nNSS.level = octreeLevel;
nNSS.queryPoint = *corePoints.cloud->getPoint(i);