|
@@ -897,13 +897,13 @@ void SemSegContextTree::train (const MultiDataset *md)
|
|
|
}
|
|
|
|
|
|
// omp_set_dynamic(0);
|
|
|
-//#pragma omp parallel for
|
|
|
+#pragma omp parallel for
|
|
|
for (int tree = 0; tree < nbTrees; tree++)
|
|
|
{
|
|
|
const int t = (int)forest[tree].size();
|
|
|
const int s = startnode[tree];
|
|
|
startnode[tree] = t;
|
|
|
-#pragma omp parallel for
|
|
|
+//#pragma omp parallel for
|
|
|
for (int i = s; i < t; i++)
|
|
|
{
|
|
|
if (!forest[tree][i].isleaf && forest[tree][i].left < 0)
|
|
@@ -1391,7 +1391,11 @@ void SemSegContextTree::semanticseg (CachedExample *ce, NICE::Image & segresult,
|
|
|
MultiChannelImageT<double> feats;
|
|
|
|
|
|
NICE::ColorImage img;
|
|
|
-
|
|
|
+ if(xsize != segresult.width() || ysize != segresult.height())
|
|
|
+ {
|
|
|
+ cout << currentFile << " " << xsize << " =? " << segresult.width() << "; " << ysize << " =? " << segresult.height() << endl;
|
|
|
+ exit(-1);
|
|
|
+ }
|
|
|
try {
|
|
|
img = ColorImage (currentFile);
|
|
|
} catch (Exception) {
|
|
@@ -1638,6 +1642,10 @@ void SemSegContextTree::semanticseg (CachedExample *ce, NICE::Image & segresult,
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ if(x >= segresult.width() || y >= segresult.height())
|
|
|
+ {
|
|
|
+ cerr << x << " >= " << segresult.width() << " "<< y << " >= " << segresult.height() << endl;
|
|
|
+ }
|
|
|
segresult.setPixel (x, y, maxindex);
|
|
|
if (maxvalue > 1)
|
|
|
cout << "maxvalue: " << maxvalue << endl;
|