tensorflow yolov3只检测行人

官方给的模型可以检测80多个类别,这里我们只检测行人,就需要将代码进行稍微修改即可:

项目路径图:
tensorflow yolov3只检测行人_jj


查看./data/classes/coco.names 类别的索引:
tensorflow yolov3只检测行人_jj_02


这里person为第1个,即索引为0

更改:

登录后复制

./core/utils.py1.

draw_bbox函数(将roi_index设置为你想要的索引即可,我这里为0):

登录后复制

def draw_bbox(image, bboxes, classes=read_class_names(cfg.YOLO.CLASSES), 
show_label=True):    """    bboxes: [x_min, y_min, x_max, y_max, probability, 
cls_id] format coordinates.    """    roi_index=0    num_classes = len(classes)    
image_h, image_w, _ = image.shape    hsv_tuples = [(1.0 * x / num_classes, 1., 1.) 
for x in range(num_classes)]    colors = list(map(lambda x: colorsys.hsv_to_rgb(*x), 
hsv_tuples))    colors = list(map(lambda x: (int(x[0] * 255), int(x[1] * 255), int(x[2] * 255)),
 colors))    random.seed(0)    random.shuffle(colors)    random.seed(None)    for i, 
 bbox in enumerate(bboxes):        coor = np.array(bbox[:4], dtype=np.int32)        
 fontScale = 0.5        score = bbox[4]        class_ind = int(bbox[5])        
 if class_ind ==roi_index:            bbox_color = colors[class_ind]            
 bbox_thick = int(0.6 * (image_h + image_w) / 600)            
 c1, c2 = (coor[0], coor[1]), (coor[2], coor[3])            
 cv2.rectangle(image, c1, c2, bbox_color, bbox_thick)            
 if show_label:                bbox_mess = '%s: %.2f' % (classes[class_ind], score)
t_size = cv2.getTextSize(bbox_mess, 0, fontScale, thickness=bbox_thick // 2)[0] 
cv2.rectangle(image, c1, (c1[0] + t_size[0], c1[1] - t_size[1] - 3), bbox_color, -1)  
# filled                cv2.putText(image, bbox_mess, (c1[0], c1[1] - 2), 
cv2.FONT_HERSHEY_SIMPLEX,                            
fontScale, (0, 0, 0), bbox_thick // 2, lineType=cv2.LINE_AA)    
return image1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.
29.30.31.32.33.34.35.

效果:


只框出了行人

tensorflow yolov3只检测行人_jj_03

     

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空