Skip to content
pqbasPublic

About

Real-time crop counting on field robots

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Argos

Real-time crop counting on field robots, running computer vision on the edge.

Argos en operación

Features

  • Supported tasks: object detection and counting.
  • Camera source support: USB/V4L2 devices and IP cameras via RTSP URL.
  • YOLO + BoT-SORT tracking accelerated with TensorRT FP16 on Jetson.
  • Live video streaming over WebRTC (H.264 NVENC) to any device on the local WiFi network.
  • Session recording with H.264 video and per-frame detection overlays, replayable from the web UI.
  • Configurable counting lines and ROI zones; per-session statistics synced to the lab server.
  • Two-mode architecture: embedded robot (Jetson + SQLite) and lab server (Docker + PostgreSQL), kept in sync automatically.
  • Model management: upload .pt weights on the server, convert to TensorRT engine on the robot.

Development

The platform has two main components that run independently:

Server runs on a lab PC, manages users, models, and devices, and receives sync from robots.

make compose-build
make compose-up      # start server (Docker Compose)
make compose-logs    # follow logs
make compose-down    # stop

Mobile robot runs on the embedded NVIDIA Jetson Xavier, captures video, runs inference, and records sessions.

make run-robot       # backend → :8080
make run-camera      # camera worker
make run-recording   # recording worker
make run-inference   # inference worker
make run-front       # frontend → :5173

Installation

Server

Requirements: Docker, Docker Compose, Git.

cp .env.server.example .env.server   # set SECRET_KEY, DB credentials, etc.
make compose-build
make compose-up
make compose-migrate
make compose-create-admin

Robot (Jetson Xavier, JetPack 5.1)

Requirements: Python 3.10+, uv, GStreamer with nvv4l2h264enc, ZED SDK.

cp .env.robot.example .env.robot   # set camera, server URL, etc.
make deploy-robot                  # installs nginx + systemd services

Subsequent updates:

make update   # git pull + rebuild + restart

Docs

Acknowledgements

This work is funded by the National Program for Scientific Research and Advanced Studies (PROCIENCIA) under project PE5010-86701-2024-PROCIENCIA: "Development and implementation of a mechanically reconfigurable multifunctional mobile robot to adapt to agricultural farms with different ridges and variable inter-row spacing in the La Libertad region, Peru".

We thank Danper farm for providing field access for data collection, and Universidad Privada Antenor Orrego (UPAO) for institutional support.

About

Real-time crop counting on field robots

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages