Heute wurde die Igelin „Sencha“ wieder in das Smarthome entlassen!
Die Waage funktioniert prächtig – und weist ein Gewicht von 806 Gramm aus! Das werden wir jetzt bei jedem Besuch genau überwachen und können so einem etwaigen Gewichtsverlust sofort entgegenwirken!
Waage beim Igelbesuch
Maus trägt 2 Gramm Futter weg
Bei dem obenstehenden Igelbesuch wurde wurde die Waage zwischenzeitlich resettet – daher der negative Wert beim Verlassen. Beim 2. Bild sieht man die kurzen Besuche einer Maus, die jeweils ein Körnchen Futter wegträgt! 🙂
Nachdem die Maus gerne mal vorbei schaut und die Nahrung stibitzt, hab ich mir etwas überlegt, wie man das verhindern könnte.
Thema 1: das Vertreiben
Lebend-Mausefalle: scheidet aus, weil zu viel Arbeit damit verbunden ist.
Kleiner Stromschlag: scheidet aus, weil „wenig“ Strom vorhanden ist durch die PoE Architektur. Außerdem ein wenig brachial.
Also habe ich einen 5 Volt Motor mit 14.000 Umdrehungen ins Gehäuse eingebaut – der rattert und vibriert anständig und scheint den Job des Erschreckens gut zu erledigen:
Vibrationsmotorein ordentlicher Vibrator…Man beachte die IR Lampe, die anzeigt, dass der Motor gerade läuft!
Thema 2: das Erkennen
Natürlich soll spezifisch nur alles vertrieben werden was KEIN Igel ist: Also Katzen, Mäuse, Schlangen, Krokodile etc.
Derzeit im Testlauf wird nur über eine normale Bewegungserkennung („Pixeländerung“) getriggert – und nur tagsüber um nicht versehentlich einen Igel zu schrecken.
Für den echten Betrieb habe ich aber schon eine KI anhand eines neuronalen Netzes (genauer: ein Convolutional Neural Network) gebaut und mit den Bildern der Kamera spezifisch trainiert. Hier die Struktur des Netzes:
Natürlich habe ich die Welt nicht selbst erfunden sondern mittels „transfer learning“ ein bereits sehr gut trainiertes Netz hergenommen, einige Layer entfernt und dafür meine eigenen trainierbaren Layer eingebaut. Während des Trainierens habe ich die Layer des mobilenet-Netzes gesperrt um ein neuerliches Trainieren zu verhindern.
Und tatsächlich konnte ich schon eine 100%ige Trefferquote bei der Klassifikation der Tiere erreichen:
Die Katze wurde in diesem Bild eindeutig gefunden, erkannt und korrekt klassifiziert! Jetzt muss das nur noch in den Workflow eingebaut werden: das Igel-Modell wird gehostet und per REST zur Verfügung gestellt – und dann von der Bewegungserkennung getriggert. Das dürfte noch ein paar Tage dauern – aber ich sehe keine großen Fallstricke mehr.
Ich glaube man darf behaupten, dass dies mittlerweile das intelligenteste Igelheim auf dem Planeten ist 🙂
Da die meisten Aufnahmen in der Nacht erfolgen, habe ich die Weitwinkel – Kamera auf IR umgebaut: Einmal den Filter vor dem Bildsensor entfernt und einen zusätzlichen IR Illuminator im Eingangsbereich installiert.
Schauen wir mal wie das funktioniert – auch wenn derzeit die Igel eher selten vorbei schauen… möglicherweise schlafen die unter der Terrasse 🙂
Wer hätte das gedacht? Bei einer Außentemperatur von ca. 6,3 Grad (gelb) und einer Igelhaus-Innentemperatur von ca. 11.3 Grad (orange) macht ein lediglich 6-minütiger Igelbesuch (rot) gleich einen Anstieg von einem halben Grad aus!
Am Graph der Temperaturdifferenz sogar noch besser zu sehen: normal etwa 5 Grad Unterschied (ausser an Sonnenstunden, da sinkt der Wert der Differenz ab) – und jedesmal wenn ein kleiner Peak auftaucht und wieder verschwindet -> kleine Wärmequelle aka Igel im Haus! 🙂
Temperatur Differenz
So ein kleines Tier nur anhand des Temperatursensors detektieren? Geht anscheinend 🙂