函数输入两个参数:
① model: init_detector 返回的结果
② imgs: 图像的路径
返回的结果:
result: 存储模型识别信息
result = inference_detector(model, imgs)
reslt详解:
result 的大小,与模型的输出类别有关。
例:识别两种类别 ① normal ② abnormal
则result里的内容为:
<class 'list'>: [array([])], array([])] #为了便于理解,这里array里内容进行了省略。
其中每一个array 与类别相对应。第一个array 对应 normal 第二个 array 对应 abnormal
array中则存储位置和得分信息。array[[x,y,w,h,sorce],[]]
其中array里每一个[]都代表识别到了该种类型。[]包含5个参数,前四个参数代表位置信息,最后一个参数代表检测得分。
通用代码段:
class_dic = ['normal','abnormal']
result = inference_detector(model, imgs)
for i in range(len(class_dic)):
sores = result[i][:, -1]
if len(sores) > 0:
for num_Index in range(len(sores)):
score_ = round(sores[num_Index], 3)
if score_ > 0.2 and class_dic[i] == 'normal':
pass
备注: result[0] 代表normal类识别结果 result[0][:,-1] 代表取出最后一列。