Я пометил grt файл данных классификации для разных жестов в разных файлах. Как создать объект GRT :: ClassificationData с разными метками классов для каждого из входных файлов?
Вот первые несколько строк двух разных файлов данных тренировки для двух разных жестов:
GRT_LABELLED_CLASSIFICATION_DATA_FILE_V1.0
DatasetName: NOT_SET
InfoText:
NumDimensions: 3
TotalNumTrainingExamples: 654
NumberOfClasses: 1
ClassIDsAndCounters:
1 654 NOT_SET
UseExternalRanges: 0
LabelledTrainingData:
1 0.00681441 0.00192668 -0.999975
1 0.212607 -0.0418175 0.976243
1 0.105986 -0.0631664 0.992359
а также
GRT_LABELLED_CLASSIFICATION_DATA_FILE_V1.0
DatasetName: NOT_SET
InfoText:
NumDimensions: 3
TotalNumTrainingExamples: 1336
NumberOfClasses: 1
ClassIDsAndCounters:
1 1336 NOT_SET
UseExternalRanges: 0
LabelledTrainingData:
1 -0.0139121 0.00375727 -0.999896
1 0.728981 0.675366 -0.111654
1 0.751433 0.629043 -0.199132
Я совершенно новичок в библиотеке GRT, пожалуйста, дайте небольшой подробный ответ (возможно, с примером?)
Вот что сработало для меня:
1. Загрузите каждый файл в разные экземпляры ClassificationData.
//Load training data from different files
ClassificationData trainingData1;
ClassificationData trainingData2;
ClassificationData trainingData3;
trainingData1.loadDatasetFromFile("file1");
trainingData2.loadDatasetFromFile("file2");
trainingData3.loadDatasetFromFile("file3");
2. Пересчитать экземпляры для разных классов
//relabelling data before merging them
//optional step, depending on the data
trainingData2.relabelAllSamplesWithClassLabel(1,3);
trainingData3.relabelAllSamplesWithClassLabel(1,4);
3. Объедините все экземпляры ClassificationData
//Merging all data
trainingData1.merge(trainingData2);
trainingData1.merge(trainingData3);
Теперь есть один файл со всеми записями вместе. Чтобы не выполнять эти шаги повторно, сделайте это один раз и используйте saveDatasetToFile ().