Files
vogelalbum/.env.beispiel
T
christian c11fe9ab04 Vogelalbum 1.0.0
Eine Kamera am Vogelhaus, ein Rechner der erkennt wer da war — und eine
Sammlung, die sich von allein fuellt.

Zwei neuronale Netze: eines findet den Vogel im Bild, eines bestimmt die
Art. 148 heimische Arten, auf Deutschland eingeschraenkt und neu normiert —
ohne diese Einschraenkung wird aus einer Kohlmeise eine nordamerikanische
Schwesterart. Daraus entsteht ein Sammelalbum: nummerierte Seiten,
gefundene Arten in Farbe, fehlende als Schatten, dazu Erstfang, Punkte,
Stufen und 15 Abzeichen.

Laeuft vollstaendig auf eigener Hardware. Kein Cloud-Dienst, kein Konto,
keine Telemetrie; die Bilder verlassen das eigene Netz nicht.

Zwei getrennt deploybare Teile: die Sammlung als Django-Anwendung, die
Erkennung als eigener Dienst. Der Erkennungs-Dienst fragt selbst an und
braucht deshalb weder eine erreichbare Adresse noch einen offenen Port —
er laeuft hinter einem gewoehnlichen Router.

Dabei: Firmware fuer Raspberry Pi und ESP32-S3, Anbindung an Home
Assistant ueber MQTT, Oberflaeche auf Deutsch und Englisch, Einstellungen
je Kamera aus dem Browser, und ein Weg fuer Fotos von unterwegs.

AGPL-3.0.
2026-10-15 14:30:02 +00:00

60 lines
2.5 KiB
Bash

# Vorlage fuer docker-compose.heim.yml.
#
# cp .env.beispiel .env
#
# Zwei Zeilen muessen stimmen, der Rest hat brauchbare Vorgaben.
# --- Pflicht -----------------------------------------------------------
# Wo liefert die Kamera ihr Bild? MJPEG-Stream, Einzelbild-URL, rtsp:// oder
# ein Ordner mit Bildern. Der Aufbau der Kameraseite steht in pi/README.md.
VOGELALBUM_SOURCE=http://vogelkamera.local:8080/stream
# Gemeinsames Geheimnis zwischen Detector und Sammlung. Beliebige lange
# Zeichenkette, einmal ausdenken:
# openssl rand -base64 32
VOGELALBUM_INGEST_TOKEN=hier-ein-langes-zufaelliges-geheimnis-eintragen
# --- Optional ----------------------------------------------------------
# Port, unter dem die Sammlung im Browser erreichbar ist.
#VOGELALBUM_PORT=8000
# Was einen Besuch ausloest: 'detector' laesst das Modell entscheiden und
# ignoriert Bewegung, 'motion' spart Rechenzeit, setzt aber einen ruhigen
# Hintergrund voraus. Im Zweifel bei 'detector' bleiben.
#VOGELALBUM_GATE=detector
# Kamera mit Infrarot? Dann auf 1 setzen — sonst pausiert die Analyse, sobald
# das Bild zu dunkel zum Erkennen ist.
#VOGELALBUM_NACHTSICHT=
# Welche Region gilt: entscheidet, welche Arten der Klassifikator ueberhaupt
# erwaegt. Das Modell kennt 965 Arten und ist auf Nordamerika trainiert —
# ohne Einschraenkung wird aus einer Kohlmeise eine Carolina Chickadee.
#VOGELALBUM_REGION=de
# Sekunden zwischen zwei Abfragen der Einstellungen bei der Web-App.
# 0 schaltet es ab, dann gilt nur die Kommandozeile.
#VOGELALBUM_KONFIG_ALLE=300
# Live-Bild im Heimnetz. Die Kamera liefert nur einen Stream; wer direkt bei
# ihr zuschaut, nimmt ihn der Erkennung weg. Deshalb verteilt der Detector
# sein eigenes Bild weiter — beliebig viele Zuschauer, die Kamera merkt nichts.
# Angezeigt wird es erst, wenn die Adresse (http://<host>:8131/live) im
# Django-Admin bei der Kamera eingetragen und das Haekchen gesetzt ist.
#VOGELALBUM_LIVE_PORT=8131
# Sperre darueber, fuer eine oeffentliche Instanz. Auf 0 ist Live nicht
# einschaltbar — auch nicht mit einem Fehlklick im Admin. Ein Livebild aus dem
# eigenen Garten soll nicht an einem Haekchen haengen.
#VOGELALBUM_LIVE_ERLAUBT=1
# Wird beim ersten Start selbst erzeugt und aufs Volume gelegt. Nur setzen,
# wer einen eigenen Schluessel mitbringen will.
#DJANGO_SECRET_KEY=
# Nur noetig, wenn die Sammlung unter einem Domainnamen erreichbar sein soll.
#DJANGO_ALLOWED_HOSTS=vogelalbum.example.org
#DJANGO_CSRF_TRUSTED_ORIGINS=https://vogelalbum.example.org