|
@@ -798,15 +798,16 @@ void SemSegContextTree3D::train ( const LabeledSet * trainp )
|
|
|
getDepthVector ( trainp, zsizeVec, run3Dseg );
|
|
|
|
|
|
//FIXME: memory usage
|
|
|
- vector<MultiChannelImage3DT<double> > allfeats;
|
|
|
- vector<MultiChannelImage3DT<unsigned short int> > nodeIndices;
|
|
|
+ vector<MultiChannelImage3DT<double> > allfeats; // Feature Werte
|
|
|
+ vector<MultiChannelImage3DT<unsigned short int> > nodeIndices; // Zuordnung Knoten/Baum für jeden Pixel
|
|
|
vector<MultiChannelImageT<int> > labels;
|
|
|
|
|
|
+ // für externen Klassifikator
|
|
|
vector<SparseVector*> globalCategorFeats;
|
|
|
vector<map<int,int> > classesPerImage;
|
|
|
|
|
|
- vector<vector<int> > rSize;
|
|
|
- vector<int> amountRegionpI;
|
|
|
+ vector<vector<int> > rSize; // anzahl der pixel je region
|
|
|
+ vector<int> amountRegionpI; // ANZAHL der regionen pro bild (von unsupervised segmentation)
|
|
|
|
|
|
std::string forbidden_classes_s = conf->gS ( "analysis", "forbidden_classes", "" );
|
|
|
classnames.getSelection ( forbidden_classes_s, forbidden_classes );
|
|
@@ -822,15 +823,15 @@ void SemSegContextTree3D::train ( const LabeledSet * trainp )
|
|
|
rawChannels = 1;
|
|
|
|
|
|
if ( useGradient )
|
|
|
- rawChannels *= 3;
|
|
|
+ rawChannels *= 3; // gx, gy, gz
|
|
|
|
|
|
- if ( useWeijer )
|
|
|
+ if ( useWeijer ) // Weijer Colornames
|
|
|
rawChannels += 11;
|
|
|
|
|
|
- if ( useHoiemFeatures )
|
|
|
+ if ( useHoiemFeatures ) // geometrische Kontextmerkmale
|
|
|
rawChannels += 8;
|
|
|
|
|
|
- if ( useAdditionalLayer )
|
|
|
+ if ( useAdditionalLayer ) // beliebige Merkmale in extra Bilddateien
|
|
|
rawChannels += 1;
|
|
|
|
|
|
|