Problem trying to connect OAK-1 with roboflow pretrained model in real time

Hi, I hope you’re doing god :slight_smile:

I was hoping to get your help in this problem please :frowning:


from roboflowoak import RoboflowOak
import cv2
import time
import numpy as np

if __name__ == '__main__':
    # instantiating an object (rf) with the RoboflowOak module
    rf = RoboflowOak(model="landing-pad-model", confidence=0.05, overlap=0.5,
    version="3", api_key="XXXXXXXX", rgb=True,
    depth=False, device=None, blocking=True)
    # Running our model and displaying the video output with detections
    while True:
        t0 = time.time()
        # The rf.detect() function runs the model inference
        result, frame, raw_frame, depth = rf.detect()
        predictions = result["predictions"]
        # {
        #     predictions:
        #     [ {
        #         x: (middle),
        #         y:(middle),
        #         width:
        #         height:
        #         depth: ###->
        #         confidence:
        #         class:
        #         mask: {
        #     ]
        # }
        # frame - frame after preprocs, with predictions
        # raw_frame - original frame from your OAK
        # depth - depth map for raw_frame, center-rectified to the center camera
        
        # timing: for benchmarking purposes
        t = time.time()-t0
        print("FPS ", 1/t)
        print("PREDICTIONS ", [p.json() for p in predictions])

        # setting parameters for depth calculation
        # comment out the following 2 lines out if you're using an OAK without Depth
        max_depth = np.amax(depth)
        cv2.imshow("depth", depth/max_depth)
        # displaying the video feed as successive frames
        cv2.imshow("frame", frame)
    
        # how to close the OAK inference window / stop inference: CTRL+q or CTRL+c
        if cv2.waitKey(1) == ord('q'):
            break

I’ve been trying to run this code in my oak-1 camera with a pretrained model in real time but i’m getting this error:

 /home/user/.cache/pypoetry/virtualenvs/caleuche-Y4yvr6Xo-py3.10/bin/python3.10 /home/user/Documents/2024-02/Caleuche/frame-detection/model_inference.py
Traceback (most recent call last):
  File "/home/user/Documents/2024-02/Caleuche/frame-detection/model_inference.py", line 8, in <module>
    rf = RoboflowOak(model="landing-pad-model", confidence=0.05, overlap=0.5,
  File "/home/user/.cache/pypoetry/virtualenvs/caleuche-Y4yvr6Xo-py3.10/lib/python3.10/site-packages/roboflowoak/__init__.py", line 34, in __init__
    self.size = (int(self.model_objects["environment"]["RESOLUTION"]), int(self.model_objects["environment"]["RESOLUTION"]))
TypeError: int() argument must be a string, a bytes-like object or a real number, not 'list'

Right now i’m using ubuntu 22.04 with an intel cpu, without gpu. Any feedback about what should I make next please?

The camera worked well when I tried it with the depthAI Demo

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.