分析TensorRT中的int8量化代码中的推理结果统计分析代码,输出推理结果中top1和 top5的统计情况
int calculateScore(float* batchProb, float* labels, int batchSize, int outputSize, int threshold)
{
int success = 0;
for (int i = 0; i < batchSize; i++)
{
//prob 对应着每一张图片的所有推理得分结果
//correct 对应着一张图片推理下来的正确结果的得分
float *prob = batchProb + outputSize * i, correct = prob[(int) labels[i]];
int better = 0;
for (int j = 0; j < outputSize; j++)
if (prob[j] >= correct) //计算比正确得分还大的得分个数better
better++;
if (better <= threshold) //如果better比输入的个数多了,就是失败推理。不参与统计
success++;
}
return success;
}