Files
vogelalbum/scripts/fetch_models.sh
T
christian cc9e0786c2 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-14 18:55:23 +00:00

25 lines
611 B
Bash
Executable File

#!/usr/bin/env bash
# Holt die beiden Modelle. Sie liegen nicht im Repo — zusammen rund 10 MB, und
# sie ändern sich nie.
set -euo pipefail
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/models"
BASE="https://github.com/google-coral/test_data/raw/master"
mkdir -p "$DIR"
for f in \
mobilenet_v2_1.0_224_inat_bird_quant.tflite \
inat_bird_labels.txt \
ssd_mobilenet_v2_coco_quant_postprocess.tflite \
coco_labels.txt
do
if [[ -s "$DIR/$f" ]]; then
echo "vorhanden: $f"
continue
fi
echo "lade: $f"
curl -fsSL -o "$DIR/$f" "$BASE/$f"
done
echo "Fertig. Modelle liegen in $DIR"