classDetectionPredictor(BasePredictor):defpostprocess(self,preds,img,orig_imgs):"""Postprocesses predictions and returns a list of Results objects."""preds=ops.non_max_suppression(preds,self.args.conf,self.args.iou,agnostic=self.args.agnostic_nms,max_det=self.args.max_det,classes=self.args.classes)results=[]fori,predinenumerate(preds):orig_img=orig_imgs[i]ifisinstance(orig_imgs,list)elseorig_imgsifnotisinstance(orig_imgs,torch.Tensor):pred[:,:4]=ops.scale_boxes(img.shape[2:],pred[:,:4],orig_img.shape)path=self.batch[0]img_path=path[i]ifisinstance(path,list)elsepathresults.append(Results(orig_img=orig_img,path=img_path,names=self.model.names,boxes=pred))returnresults
postprocess(preds,img,orig_imgs)
Postprocesses predictions and returns a list of Results objects.
Source code in ultralytics/yolo/v8/detect/predict.py
defpostprocess(self,preds,img,orig_imgs):"""Postprocesses predictions and returns a list of Results objects."""preds=ops.non_max_suppression(preds,self.args.conf,self.args.iou,agnostic=self.args.agnostic_nms,max_det=self.args.max_det,classes=self.args.classes)results=[]fori,predinenumerate(preds):orig_img=orig_imgs[i]ifisinstance(orig_imgs,list)elseorig_imgsifnotisinstance(orig_imgs,torch.Tensor):pred[:,:4]=ops.scale_boxes(img.shape[2:],pred[:,:4],orig_img.shape)path=self.batch[0]img_path=path[i]ifisinstance(path,list)elsepathresults.append(Results(orig_img=orig_img,path=img_path,names=self.model.names,boxes=pred))returnresults
predict
Runs YOLO model inference on input image(s).
Source code in ultralytics/yolo/v8/detect/predict.py
defpredict(cfg=DEFAULT_CFG,use_python=False):"""Runs YOLO model inference on input image(s)."""model=cfg.modelor'yolov8n.pt'source=cfg.sourceifcfg.sourceisnotNoneelseROOT/'assets'if(ROOT/'assets').exists() \
else'https://ultralytics.com/images/bus.jpg'args=dict(model=model,source=source)ifuse_python:fromultralyticsimportYOLOYOLO(model)(**args)else:predictor=DetectionPredictor(overrides=args)predictor.predict_cli()
Created 2023-04-16, Updated 2023-05-17 Authors: Glenn Jocher (3)