WongKinYiu / yolov9

Implementation of paper - YOLOv9: Learning What You Want to Learn Using Programmable Gradient Information
GNU General Public License v3.0
8.89k stars 1.4k forks source link

yolov9 AttributeError: 'list' object has no attribute 'shape' #331

Open linccc666 opened 6 months ago

linccc666 commented 6 months ago

`from ultralytics import YOLO import cv2

model_path = r"C:/Users/10124/Desktop/yolov9/yolov9-main/runs/train/exp17/weights/best.pt" model = YOLO(model_path) cap = cv2.VideoCapture(video) ret, frame = cap.read() while cap.isOpened(): ret, frame = cap.read() if not ret: break

    results = model(frame)

cap.release() cv2.destroyAllWindows()`

PS C:\Users\10124\Desktop\yolov9> & D:/anaconda/envs/yolov9/python.exe c:/Users/10124/Desktop/yolov9/yolov9-main/COUNT_V8_V9.PY 1 Fusing layers... yolov9-c summary: 604 layers, 50700588 parameters, 0 gradients, 236.6 GFLOPs

Traceback (most recent call last): File "c:\Users\10124\Desktop\yolov9\yolov9-main\COUNT_V8_V9.PY", line 48, in total = points_cap_yolo(path) ^^^^^^^^^^^^^^^^^^^^^ File "c:\Users\10124\Desktop\yolov9\yolov9-main\COUNT_V8_V9.PY", line 29, in points_cap_yolo results = model(frame, iou=0.3, device=0, conf=0.3) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\anaconda\envs\yolov9\Lib\site-packages\ultralytics\engine\model.py", line 176, in call return self.predict(source, stream, *kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\anaconda\envs\yolov9\Lib\site-packages\ultralytics\engine\model.py", line 452, in predict return self.predictor.predict_cli(source=source) if is_cli else self.predictor(source=source, stream=stream) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\anaconda\envs\yolov9\Lib\site-packages\ultralytics\engine\predictor.py", line 168, in call return list(self.stream_inference(source, model, args, **kwargs)) # merge list of Result into one ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\anaconda\envs\yolov9\Lib\site-packages\torch\utils_contextlib.py", line 35, in generator_context response = gen.send(None) ^^^^^^^^^^^^^^ File "D:\anaconda\envs\yolov9\Lib\site-packages\ultralytics\engine\predictor.py", line 255, in stream_inference self.results = self.postprocess(preds, im, im0s) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\anaconda\envs\yolov9\Lib\site-packages\ultralytics\models\yolo\detect\predict.py", line 25, in postprocess preds = ops.non_max_suppression( ^^^^^^^^^^^^^^^^^^^^^^^^ File "D:\anaconda\envs\yolov9\Lib\site-packages\ultralytics\utils\ops.py", line 216, in non_max_suppression bs = prediction.shape[0] # batch size ^^^^^^^^^^^^^^^^ AttributeError: 'list' object has no attribute 'shape'

This is my abbreviated version of the code. But there is an error in the operation process, please help me solve this problem, thanks!

ElRataAlada commented 4 months ago

Same problem. Can`t find any solution. Have you found how to solve this problem?