我使用this example创建了对象识别应用。我想将模型更改为YOLOv4。我找不到解决方法。 在本教程中,这段代码片段:
CopyTo()
正在设置标签。 在这种方法中:
private string[] labels = new string[]
{
"aeroplane", "bicycle", "bird", "boat", "bottle",
"bus", "car", "cat", "chair", "cow",
"diningtable", "dog", "horse", "motorbike", "person",
"pottedplant", "sheep", "sofa", "train", "tvmonitor"
};
我正在获得预测的课程数量。 public float[] ExtractClasses(float[] modelOutput, int x, int y, int channel)
{
float[] predictedClasses = new float[CLASS_COUNT];
int predictedClassOffset = channel + BOX_INFO_FEATURE_COUNT;
for (int predictedClass = 0; predictedClass < CLASS_COUNT; predictedClass++)
{
predictedClasses[predictedClass] = modelOutput[GetOffset(x, y, predictedClass + predictedClassOffset)];
}
return Softmax(predictedClasses);
}
是模型可以识别的类数(在TinyYOLOv2中有20个类)。然后我从上面发布的数组中按预测类的索引获得标签。
所以,我的问题是,如何获得哪个模型可以识别的类?例如,我希望能够检测100种对象。还是我误会了,应该训练模型以获取想要的此类课程?