Identify breeds/species of dogs and birds detected by blakeblackshear/frigate. This will try to identify a bird or dog and add a Frigate sublabel to that event.
Create a config.yml file in your docker volume with the following contents:
frigate:
frigate_url: http://127.0.0.1:5000
mqtt_server: 127.0.0.1
mqtt_auth: false
mqtt_username: username
mqtt_password: password
main_topic: frigate
sublabel_score: true
camera:
- birdcam
bird_classification:
threshold: 0.7
dog_classification:
threshold: 0.7
logger_level: INFOUpdate your frigate url, mqtt server settings. If you are using mqtt authentication, update the username and password. Update the camera name(s) to match the camera name in your frigate config.
You can also update the threshold for the bird and dog classification. The threshold is the minimum confidence level for the classification to be considered valid. The default is 0.7.
If you dont want to classify birds or dogs, you can remove the bird_classification or dog_classification sections from the config.
docker run -v /path/to/config:/config -e TZ=America/New_York -it --rm --name frigate_classifier lmerza/frigate_classifier:latestor using docker-compose:
services:
frigate_classifier:
image: lmerza/frigate_classifier:latest
container_name: frigate_classifier
volumes:
- /path/to/config:/config
restart: unless-stopped
environment:
- TZ=America/New_Yorkhttps://hub.docker.com/r/lmerza/frigateclassifier
set logger_level in your config to DEBUG to see more logging information:
logger_level: DEBUGLogs will be in /config/frigateclassifier.log
conda env create -f environment.yml
conda activate fc_env
pip install -r requirements.txt
curl -O http://vision.stanford.edu/aditya86/ImageNetDogs/images.tar
mkdir -p dog_images
tar -xf images.tar -C dog_images --strip-components=1
python format_dog_dataset.py
python train_dog_model.py
or
nohup python3 train_dog_model.py > output.log 2>&1 &The dog model was trained by Stanford Dogs Dataset

