To recreate for your own bell do the following:
- Get a raspberry pi and a microphone in a spot of your choice, where it has internet access and can hear the bell ringing. Do the steps in
extra_deps.txt
Tip: A shittier mic is better in this case, as it does not filter out background noise, aka the bell, that we want to hear
- Record a sample of normal noise in the house (mine was 1h long, but does not need to be that long, I also used arecord for the recording), put in raw_data folder
- Record several bell rings of differing lengths in one recording, put in raw data folder
- Extract the bell sounds with a tool like audacity, cutting out small fragments longer than 0.5s which have all bell noise inside, put them in the split_data folder as bell_1.wav, bell_2.wav ...
- Follow notebook order in notebooks folder, adjusting code to your needs
- You should now have a trained model, copy the 3 model files (<model_name>, <model_name>.arff and <model_name>MEANS) to
bell_detector/model
- Adjust model name in code of main.py, also adjust your pushover account info
- Copy whole
bell_detector
folder to the Rpi, create a virtual environment and install requirements - Run main.py in something like screen or nohup
- Profit, enjoy your detector!