How can I pass ground truth objects with differing label sets to "objectDet?ectorTrain?ingData"?

W
weqd · May 18, 2023 · 2.3K views
Question
I have an array of ground truth objects that I want to pass to the "objectDetectorTrainingData" function. However, when I make a call to this function, I receive the following error message:     Error using objectDetectorTrainingData>checkGroundTruthLabelDefinitions (line 438) Expected label definitions to have the same label names. Found a mismatch in element 2 of input groundTruth array. I would have expected "objectDetectorTrainingData" to automatically take the union over all label sets, though this does not appear to be the case. Is there any workaround to achieve this workflow?
Expert Answer
Profile picture of Neeta Dsouza
Neeta Dsouza PhD Expert
Answered Nov 20, 2025
The ability to pass ground truth objects with differing label sets to "objectDetectorTrainingData" is currently not supported. However, a workaround would be to merge all the ground truth objects in the array into a single ground truth object and passing this result to the function call.
 
To do this, you need to horizontally concatenate all the "LabelData" tables into a single table, vertically concatenate all the "LabelDefinitions" tables into a single table, and use these results to construct a new ground truth object via the "groundTruth" function.
 
Note: Some additional processing may be necessary to account for labels used by multiple ground truth objects.
Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!