GoWelcome/requirements.txt

37 lines
2.0 KiB
Plaintext

# GoWelcome runtime dependencies.
#
# Install for off-robot / mock development:
# pip install -r requirements.txt
# (The HARDWARE-ONLY block at the bottom is NOT needed for `python main.py --mock`.)
# --- Perception ----------------------------------------------------------
numpy # arrays / math (light, imported at top level everywhere)
opencv-python # camera capture, HSV road mask, debug overlay window (cv2)
ultralytics # YOLOv8 person/vehicle detection
# --- Audio (optional) ----------------------------------------------------
# Host-side greeting playback. If absent, the host audio backend falls back to
# an external player command (config.AudioConfig.host_player_cmd, e.g. `aplay`).
simpleaudio # optional; pure-host WAV playback
# --- GPS geofence (external receiver on the onboard computer) -------------
# The Go2 has NO built-in GPS. For `--gps serial` (NMEA off a USB receiver):
pyserial # optional; only for the serial NMEA GPS source
# For `--gps gpsd`, install the system gpsd daemon instead (sudo apt install gpsd);
# GoWelcome talks to it over its socket with no extra Python dependency.
# --- HARDWARE: WebRTC transport (DEFAULT; real Go2, skip for --mock) ------
# App-protocol WebRTC driver: camera + sport + obstacle-avoid + AudioHub audio,
# works on Go2 AIR/PRO/EDU over wifi. Pulls in aiortc. Also needs PortAudio:
# sudo apt install -y portaudio19-dev
unitree_webrtc_connect # default transport (--transport webrtc)
# --- HARDWARE: DDS transport (alternative; --transport dds) ---------------
# Official Unitree SDK + DDS. NOT on PyPI in a usable form -- install from the
# official repo on the robot's host (pulls cyclonedds):
# https://github.com/unitreerobotics/unitree_sdk2_python
# unitree_sdk2py # SportClient / VideoClient / ObstaclesAvoidClient
# cyclonedds # DDS transport used by unitree_sdk2py
#
# NOTE: pyserial is NOT required by GoWelcome (no direct serial link to the Go2).