Hi erik
I've trained my model and deployed it on Roboflow. Following the tutorial, I modified the main.py code:
import cv2
from depthai_sdk import OakCamera
from depthai_sdk.classes.packets import TwoStagePacket
from depthai_sdk.visualize.configs import TextPosition
from deep_sort_realtime.deepsort_tracker import DeepSort
tracker = DeepSort(max_age=1000, nn_budget=None, embedder=None, nms_max_overlap=1.0, max_cosine_distance=0.2)
def cb(packet: TwoStagePacket):
detections = packet.img_detections.detections
vis = packet.visualizer
# Update the tracker
object_tracks = tracker.iter(detections, packet.nnData, (640, 640))
for track in object_tracks:
if not track.is_confirmed() or \
track.time_since_update > 1 or \
track.detection_id >= len(detections) or \
track.detection_id < 0:
continue
det = packet.detections[track.detection_id]
vis.add_text(f'ID: {track.track_id}',
bbox=(*det.top_left, *det.bottom_right),
position=TextPosition.MID)
frame = vis.draw(packet.frame)
cv2.imshow('DeepSort tracker', frame)
with OakCamera() as oak:
color = oak.create_camera('color')
model_config = {
'source': 'roboflow',
'model':'usv-7kkhf/4',
'key':'zzzzzzzzzzzzzzz' # FAKE Private API key
}
yolo = oak.create_nn(model_config,color)
embedder = oak.create_nn('mobilenetv2_imagenet_embedder_224x224', input=yolo)
oak.visualize(embedder, fps=True, callback=cb)
# oak.show_graph()
oak.start(blocking=True)
However, I'm encountering an error stating that it can't find my trained model:
Exception: {'message': 'No trained model was found.', 'type': 'GraphMethodException', 'hint': 'You must train a model on this version with Roboflow Train before you can use inference.', 'e': ['Model not found, looking for filename 4JiY9CSQUUctWZgCzw210yo9qcw2/heRJlafm8KwTDQrTn8dI/4/roboflow.zip']}
Sentry is attempting to send 2 pending error messages
So, I saved my file as best.py and then used the model converter. I'd like to know how to implement it into the code:
Thanks for your assistance.