Skip to content

Dinoclaro/DT_objdet

Repository files navigation

DT_objdet

About the Directory

This directory contains a Duckietown-compliant Docker image of a ROS agent to run a YOLOv5 model and Braitenberg controller on a Duckiebot.

This agent requires a trained YOLOv5 model. A default trained model can be used by setting DT_token = dt1-3nT8KSoxVh4MnDRxovGLkXZDhPpgc4SzasJBTSxbRUfDguS-43dzqWFnWd8KBa1yev1g3UKnzVxZkkTbfeFCAD1kMCPQvvSVDYPfoXapvF29wVgdC7 in the packages\nn_model\constants.py. DT_objdet_train deals with the training of a YOLOv5 model.

Prerequisites

The list below states the prerequisites to use this directory.

  1. Laptop Setup:

    • Ubuntu 22.04 (Recommended)
    • Docker
    • Duckietown shell
  2. Assembled Duckiebot: The Duckiebot should be able to boot up. Follow these setup instructions:

Instructions

  1. Clone this repository
git clone https://github.com/Dinoclaro/DT_objdet.git

Alternatively, the repository can be downloaded as a zip file by clicking on the green "code" drop-down menu.

  1. cd into this repository
cd DT_objdet
  1. Switch on the duckiebot and ensure it is discoverable
dts fleet discover ROBOT_NAME
  1. Build and run the image. Note this runs the object_detection_node on the user's machine and connects to the duckiebot master node.
dts devel build -f
dts devel run -R ROBOT_NAME
  1. Open a new terminal and run the gui tools to use ROS tools
 dts start_gui_tools ROBOT_NAME

6 Open rqt image tools to view the various camera feeds including the YOLOv5 model predictions.

rqt_image_view

Issues

Currently, the image only runs when built locally and with the master node running on the duckiebot. The image successfully builds on the duckiebot but fails to run due to torchvision crashing when using the dts devel run -H ROBOT_NAME command.

About

Duckietown compliant Docker image for a YOLOv5 object detection model running on the duckiebot

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors