(Insect Detect) config.yaml

Aus TippvomTibb
Version vom 16. November 2025, 08:25 Uhr von Chris T. Ludwig (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „=Allgemeines= Ich habe ich mir mal hier alles zusammengetragen, was ich zum Manipulieren und Verstehen der config.yaml benoetige. Bei Github werden 3 verschiedene yaml-Dateen bereitgestellt. *<code>config_custom.yaml</code> *<code>config_default.yaml</code> *<code>config_selector.yaml</code> =Code Analyse= ChatGPT meint: Was ich aber tun kann: dir sauber erklären, '''wie die drei Dateien im Projekt gedacht sind''' und wie sie sich '''strukturell / fu…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Allgemeines

Ich habe ich mir mal hier alles zusammengetragen, was ich zum Manipulieren und Verstehen der config.yaml benoetige.

Bei Github werden 3 verschiedene yaml-Dateen bereitgestellt.

  • config_custom.yaml
  • config_default.yaml
  • config_selector.yaml

Code Analyse

ChatGPT meint:

Was ich aber tun kann: dir sauber erklären, wie die drei Dateien im Projekt gedacht sind und wie sie sich strukturell / funktional unterscheiden – also quasi eine „Konzept-Diff“-Tabelle statt eines Zeilen-Diffs.



Rolle der drei Dateien im Insect-Detect-Setup

Aus README, Installer-Script und Doku geht folgendes hervor: (GitHub)

  • config_default.yaml

    • Wird vom Projekt als Basis-/Werkskonfiguration mitgeliefert.
    • Enthält alle Parameter mit „vernünftigen Standardwerten“ (Model, Auflösungen, Trigger-Intervalle, Speicherpfade, Power-Settings etc.).
    • Wird nicht vom Web-UI überschrieben; dient eher als Vorlage/Referenz.
  • config_custom.yaml

    • Ist die benutzerdefinierte aktive Konfiguration, die du entweder:

      • direkt per Editor, oder
      • über die WebApp bearbeitest.
    • Wird vom Installer explizit erwähnt:

      „Use the web app to configure your custom settings… or modify the insect-detect/configs/config_custom.yaml file directly.“ (GitHub)

    • Beim Start von trigger_capture.py / startup.py werden diese Werte genutzt.

  • config_selector.yaml

    • Dient als „Zeiger“ auf die aktive Config.

    • Laut README kannst du „mehrere Konfigurationsdateien generieren“ und „die aktive Config entweder über die Web-App oder durch Ändern von config_selector.yaml auswählen“. (GitHub)

    • Vermutlich enthält sie nur so etwas wie:

      active_config: config_custom.yaml
      

      oder alternativ einen Namen / Pfad zu deiner bevorzugten Konfiguration.



Vergleich in Tabellenform (funktionale Unterschiede)

Achtung: Keine exakten Zahlen/Parameter, sondern funktionale/unstrukturelle Unterschiede, weil ich den Inhalt nicht laden kann.

Aspekt config_default.yaml config_custom.yaml config_selector.yaml
Zweck Werks-/Standardkonfiguration des Projekts Deine anpassbare, aktuell verwendete Konfiguration Wählt aus, welche Konfigurationsdatei aktiv ist
Wer schreibt die Datei? Projekt-Autor (Repo) Du bzw. die WebApp Du / WebApp
Wird vom Installer/Web-UI geändert? Normalerweise nein (soll unangetastet bleiben) Ja – Haupteintragspunkt für Custom-Settings Ja, wenn du das aktive Profil umschaltest
Typische Inhalte Vollständiger Satz aller Parameter mit Standardeinstellungen (z. B. Pfade, Trigger-Intervalle, Timer, Kamera-Auflösung, Model-Pfad, Power-Management, Upload, Logging) Gleiche Struktur wie config_default.yaml, aber mit deinen geänderten Werten (z. B. anderes Model, andere Intervallzeiten, anderer Output-Pfad etc.) Wenige Schlüssel: z. B. active_config: config_custom.yaml oder Name eines Profils
Wird direkt vom Capture-Script benutzt? (trigger_capture.py) Indirekt (nur als Vorlage, wenn du config_custom danach modellierst) Ja, ist die eigentliche Runtime-Config Indirekt – das Startup-/WebApp-Logik liest sie, um zu wissen, welche Config geladen werden soll
Rolle im Workflow Referenz, um jederzeit „zurück auf Werkseinstellungen“ gehen zu können Tagesgeschäft: alle deine echten Einstellungen landen hier Profilumschalter: gibt an, welche YAML aktuell „aktiv“ ist
Risiko bei Bearbeitung Wenn du sie änderst, verlierst du die Standardwerte als Referenz Hier sollst du ändern – genau dafür ist sie da Falscher Name/Pfad → System findet aktive Konfig nicht (Fehler beim Start)



Praktische Konsequenz für dich

  1. Wenn du wissen willst, was vom Projekt „normal“ vorgesehen ist: → Schau in config_default.yaml.
  2. Wenn du wissen willst, was deine Kamera derzeit wirklich macht: → Schau in config_custom.yaml (das ist die „Wahrheit zur Laufzeit“, sofern config_selector.yaml darauf zeigt).
  3. Wenn du mehrere Profile nutzen willst (z. B. unterschiedliche Standorte, Modelle):
    • Lege mehrere config_*.yaml an (z. B. config_meadow.yaml, config_forest.yaml).
    • In config_selector.yaml stellst du jeweils den Namen/Pfad des aktiven Profils ein.
    • Oder du nutzt die Web-App, die das für dich umschreibt.