Skip to content

About

Moth detection workflows and desktop tooling

Resources

Stars

3 stars

Watchers

0 watching

Forks

Repository files navigation

Run locally for testing

python -m ui.gradio_app

mothbot-detect

mothbot-detect is a Gradio-based desktop workflow for moth image processing.

Detection Models (trained yolo)

Interim Model: Mothbot Detect v0.1 (MBD_0-1.pt)

  • June 28, 2026
  • Yolo 26 obb M
  • trained on 7000 insects
  • imgsz: 1600
  • Insects from Panama, Mexico, Croatia, Germany, Poland, Hawaii, North Carolina, Netherlands, indonesia, Canada, Seattle,

Original Model: yolo11m_4500_imgsz1600_b1_2024-01-18.pt

  • 2025-01-18
  • yolo 11 OBB M
  • trained on 4500
  • imgsz: 1600
  • Mostly from Panama

Main pipeline steps:

  • detection (pipeline/detect.py)
  • identification (pipeline/identify.py)
  • metadata insertion (pipeline/insert_metadata.py)
  • clustering (pipeline/cluster.py)
  • exif insertion (pipeline/insert_exif.py)
  • dataset creation (pipeline/create_dataset.py)
  • CSV export (pipeline/export_csv.py)

Quick Start (Local Development)

Requirements:

  • Python 3.11+
  • make

From the repository root:

make setup
make run

With auto-reload during development:

make run-watch

Optional CUDA 11.8 setup:

make gpu-setup

Optional Intel XPU setup:

make xpu-setup

Project Structure

  • ui/: Gradio app and local runners
  • pipeline/: detection and post-processing steps
  • core/: shared utilities
  • apps/: desktop entrypoints, packaging specs, and build scripts

Packaged desktop entrypoint:

  • apps/desktop_main.py

Common Commands

  • make help: top-level command guide
  • make dev-help: development targets
  • make release-help: packaging/release targets
  • make clean: remove packaging artifacts and caches

Documentation

  • Desktop packaging and release: docs/DESKTOP_PACKAGING.md

Desktop Releases (Tag-Based CI)

Desktop release artifacts are built in GitHub Actions when you push a version tag (for example v0.8.0).

Release flow:

  1. Merge release changes to main.
  2. Create and push a version tag: git tag -a vX.Y.Z -m "Release vX.Y.Z" then git push origin vX.Y.Z.
  3. Wait for the GitHub workflow to publish the release artifacts.

The workflow enforces an artifact size budget (warning at 1.6 GiB, fail at 1.8 GiB per file) to stay under GitHub Releases upload limits.

For full release and local packaging steps, see docs/DESKTOP_PACKAGING.md.

License

Mothbot Process is released under the MIT License. It uses third-party software, models and data under their own licenses, including Ultralytics (AGPL-3.0) for detection and a GBIF species list (CC BY-NC 4.0); see THIRD_PARTY_NOTICES.md.

About

Moth detection workflows and desktop tooling

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages