Geräusche erkennen

Ein Bekannter, der bereits frigate nutzt, wurde von der Polizei aufgefordert, Lärmbelästigungen zu protokollieren. Mit frigates Fähigkeit zur Audio-Erkennung kann er nun Lärm zuverlässig dokumentieren und als Beweis verwenden.

Geräusche erkennen
Photo by Jacob Bentzinger / Unsplash

Ich habe bereits mehrfach über frigate berichtet. Frigate beherrscht die Objekt-Erkennung im Videostream von Webcams.

KI: Kleine Fortschritte auf meinem Weg...
Frigate: Intelligente Objekterkennung für private Haussicherheit und Automatisierung mit ioBroker Nachdem ich nun von Hand meine KI trainiert habe und die Trainingsdaten auf Videostreams angewendet habe, habe ich jetzt auch fertige Tools gefunden, die sich leicht in die Automation einbinden lassen.…

Die warme Zeit hat begonnen und es gab auch gleich eine neue Herausforderung: Häufige Ruhestörungen und mehrere Anrufe eines Bekannten bei der Polizei führten dazu, dass er aufgefordert wurde, genau Buch zu führen, wann die Lärmbelästigungen auftreten würden.

Da er auch bereits frigate im Einsatz hat, fragte er mich, ob es dafür vielleicht eine intelligente Lösung gäbe. Und da hat er bei mir wieder offene Türen eingerannt 😂.

Audio-Streams

Frigate sichtet nämlich nicht nur Video-Streams, sondern auch Audio-Streams. Hier ist eine Liste der Geräusche, die frigate ab Werk erkennen kann:

a_capella accelerating accordion acoustic_guitar afrobeat air_brake air_conditioning aircraft aircraft_engine air_horn alarm alarm_clock ambient_music ambulance angry_music animal applause arrow artillery_fire babbling background_music bagpipes bang banjo bark basketball_bounce bass_drum bass_guitar bathtub beatboxing beep bell bellow bicycle bicycle_bell bird biting bleat blender bluegrass blues boat boiling boing boom bouncing bowed_string_instrument bow-wow brass_instrument breaking breathing burping burst bus busy_signal buzz buzzer cacophony camera cap_gun car car_alarm carnatic_music car_passing_by cash_register cat caterwaul cattle caw cello chainsaw change_ringing chant chatter cheering chewing chicken children_playing child_singing chime chink chird chirp chirp_tone choir chop chopping chorus_effect christian_music christmas_music church_bell civil_defense_siren clang clapping clarinet classical_music clatter clickety-clack clicking clip-clop clock cluck cock-a-doodle-doo coin computer_keyboard coo cough country cowbell crack crackle creak cricket croak crow crowd crumpling crunch crushing crying cupboard_open_or_close cutlery cymbal dance_music dental_drill's_drill dial_tone didgeridoo ding ding-dong disco dishes distortion dog dogs door doorbell double_bass drawer_open_or_close drill drip drum drum_and_bass drum_kit drum_machine drum_roll dubstep duck echo effects_unit electric_guitar electric_piano electric_shaver electric_toothbrush electronica electronic_dance_music electronic_music electronic_organ electronic_tuner emergency_vehicle engine engine_knocking engine_starting environmental_noise eruption exciting_music explosion fart field_recording filing fill finger_snapping fire fire_alarm firecracker fire_engine fireworks fixed-wing_aircraft flamenco flap flapping_wings flute fly foghorn folk_music footsteps fowl french_horn frog frying funk fusillade gargling gasp gears glass glockenspiel goat gobble gong goose gospel_music groan growling grunge grunt guitar gunshot gurgling gush hair_dryer hammer hammond_organ hands happy_music harmonic harmonica harp harpsichord heartbeat heart_murmur heavy_engine heavy_metal helicopter hiccup hi-hat hip_hop_music hiss honk hoot horse house_music howl hum humming ice_cream_truck idling independent_music insect inside jackhammer jazz jet_engine jingle jingle_bell keyboard keys_jangling knock laughter lawn_mower light_engine liquid livestock lullaby machine_gun mains_hum mallet_percussion mandolin mantra maraca marimba mechanical_fan mechanisms medium_engine meow microwave_oven middle_eastern_music moo mosquito motorboat motorcycle motor_vehicle mouse music musical_instrument music_for_children music_of_africa music_of_asia music_of_bollywood music_of_latin_america neigh new-age_music noise ocean oink opera orchestra organ outside owl pant patter percussion pets piano pig pigeon ping pink_noise pizzicato plop plucked_string_instrument police_car pop_music pour power_tool power_windows printer progressive_rock propeller psychedelic_rock pulleys pulse pump punk_rock purr quack race_car radio railroad_car rail_transport rain raindrop rain_on_surface rapping ratchet rats rattle reggae reverberation reversing_beeps rhythm_and_blues rimshot ringtone roar roaring_cats rock_and_roll rock_music roll rowboat rub rumble run rustle rustling_leaves sad_music sailboat salsa_music sampler sanding sawing saxophone scary_music scissors scrape scratch scratching sewing_machine shatter sheep ship shofar shuffle shuffling_cards sidetone sigh silence sine_wave singing singing_bowl single-lens_reflex_camera sink siren sitar sizzle ska skateboard skidding slam slap sliding_door slosh smash smoke_detector snake snare_drum sneeze snicker sniff snoring snort sodeling sonar song soul_music sound_effect soundtrack_music speech splash splinter spray squawk squeak squeal squish static steam steam_whistle steel_guitar steelpan stir stomach_rumble stream string_section strum subway swing_music synthesizer synthetic_singing tabla tambourine tap tapping tearing techno telephone telephone_bell_ringing telephone_dialing television tender_music theme_music theremin throat_clearing throbbing thump thunder thunderstorm thunk tick tick-tock timpani tire_squeal toilet_flush tools toot toothbrush traditional_music traffic_noise train train_horn train_wheels_squealing train_whistle trance_music trickle trombone truck trumpet tubular_bells tuning_fork turkey typewriter typing ukulele vacuum_cleaner vehicle vibraphone vibration video_game_music violin vocal_music water waterfall water_tap waves wedding_music whack whale_vocalization wheeze whimper_dog whip whir whispering whistle whistling white_noise whoop whoosh wild_animals wind wind_chime wind_instrument wind_noise wood wood_block writing yell yip zing zipper zither

In der Konfiguration von frigate kann man jeder Kamera Aufgaben zuweisen. Dabei werden Rollen unterschieden, welcher Stream aufgezeichnet werden soll und welcher die Objekte/Geräusche erkennen soll. Grundsätzlich sieht eine Konfiguration so aus:

cameras:
  front_camera:
    ffmpeg:
      inputs:
        - path: rtsp://.../main_stream
          roles:
            - record
        - path: rtsp://.../sub_stream # <- this stream must have audio enabled
          roles:
            - audio
            - detect

Für die neue Aufgabe der Geräuscherkennung müssen wir den audio-Abschnitt definieren. Hier interessiert uns:

a_capella accordion acoustic_guitar afrobeat ambient_music angry_music applause babbling background_music bass_drum bass_guitar blues bowed_string_instrument brass_instrument carnatic_music cello chant chatter cheering christian_music cymbal dance_music disco double_bass drum drum_and_bass drum_kit drum_machine drum_roll dubstep electric_guitar electric_piano electronic_dance_music electronic_music electronic_organ exciting_music flamenco folk_music funk gospel_music guitar happy_music heavy_metal house_music independent_music jazz mallet_percussion mandolin music musical_instrument music_for_children music_of_africa music_of_asia music_of_bollywood music_of_latin_america neigh new-age_music noise organ piano pop_progressive_rock punk_rock reggae rock_and_roll rock_music sad_music salsa_music scary_music snare_drum speech steel_guitar swing_music synthesizer synthetic_singing techno tender_music theme_music traditional_music violin vocal_music wind_instrument yell

Diese nehmen wir in die entsprechende Config mit auf:

audio:
  enabled: True
  listen:
    - a_capella
    - accordion
    - acoustic_guitar
    - ...
    - yell

Wie man erkennen kann, geht es meinem Bekannten um Parties in einem Mehrzweck-Gebäude in der Nachbarschaft.

Frigate nimmt bei ihm nun zusätzlich zu den Personen am Haus auch die Geräusche auf und stellt sie in der Liste der Events dar. So kann der Wunsch der Behörden leicht erfüllt werden und man hat zusätzlich noch Mitschnitte als Beweis zur Hand.

Fazit

Früher war es einem nur möglich, Lautstärkemessungen durchzuführen. Mit den neuen Werkzeugen gelingt es nun auch genauer zu unterscheiden. Die Natur darf gerne zu hören sein. Was jedoch eine Störung ist, ist klar definiert und kann ab jetzt erkannt und protokolliert werden.