Releases: maxsitt/insect-detect
insect-detect-v1.7
Camera trap paper now published in
The v1.7 release includes several new features and updates:
New features
- Add option to save full HQ frames at specified frequency, independent of detections (e.g. for training data collection) in 1ef2ded
- Add support for Witty Pi 4 L3V7 as alternative power management board to the PiJuice Zero in 230c14b
- Add utils package with modules providing utility functions to improve maintainability in 8217d5d
- Add option to set auto focus range (restrict auto focus to a minimum and maximum distance measured from camera) in d5ecf04
- Add option to store all captured data in an uncompressed .zip file in 5737451
- Add option to use bounding box coordinates from detections to set auto exposure region in 7d4eaf1
- Add installation instructions and example scripts to use the DepthAI SDK in 6968c1e
- Add option to save cropped detections with aspect ratio 1:1 (default) or with original variable aspect ratio in e803d7e and 1716baa
Important Updates
- Handle external shutdown trigger (e.g. pressing of button connected to Witty Pi while script is running) in 2690956
- Increase pipeline speed if full frames are saved additionally by using threading in 1ef2ded
- Optimize recording ID creation in 7d970d6
- Use ISO 8601 format for timestamps in 8217d5d
- Use new Sync node instead of Script node to synchronize HQ frames with tracker output in e3101c0
Changelog
Changes between previous release and this release: v1.6...v1.7
insect-detect-v1.6
In the v1.6 release, new YOLOv6n, YOLOv7-tiny and YOLOv8n detection models were added to the existing YOLOv5n model.
Model | size (pixels) |
mAPval 50-95 |
mAPval 50 |
Precisionval |
Recallval |
SpeedOAK (fps) |
params (M) |
---|---|---|---|---|---|---|---|
YOLOv5n | 320 | 53.8 | 96.9 | 95.5 | 96.1 | 49 | 1.76 |
YOLOv6n | 320 | 50.3 | 95.1 | 96.9 | 89.8 | 60 | 4.63 |
YOLOv7-tiny | 320 | 53.2 | 95.7 | 94.7 | 94.2 | 52 | 6.01 |
YOLOv8n | 320 | 55.4 | 94.4 | 92.2 | 89.9 | 39 | 3.01 |
These models can reach up to 60 fps inference speed (YOLOv6n) on the OAK-1 device with 1080p sensor resolution.
New features
Add new YOLO models: 46ede08
Important Updates
- Update
yolo_preview.py
andyolo_tracker_preview.py
to use 1080p as default sensor resolution, which leads to higher fps of the detection models without decreasing quality of the downscaled preview frames: 135e75f and 066587c - Update
yolo_tracker_save_hqsync.py
andyolo_tracker_save_hqsync_nopj.py
to use 1080p as default resolution for the synced HQ frames, which increases inference and pipeline speed to ~12 fps which is fast enough to track moving insects. Save overlay only once with all detected insects drawn on the frame: ac1162e and 5eea522 - Update
video_capture.py
to use ISP scaling for 1080p resolution, which leads to higher quality frames compared to setting the sensor resolution to 1080p: e06624b
Changelog
Changes between previous release and this release: v1.5...v1.6
insect-detect-v1.5
For the v1.5 release, a new YOLOv5n detection model, trained on downscaled 320x320 frames was added. With the new model and the adapted scripts (320x320 model input), performance increases significantly to 40 fps for insect detection + tracking on the OAK device, without affecting accuracy. The higher framerate now makes ZERO_TERM_IMAGELESS
the object tracker type with the best performance, which increases tracking accuracy for fast moving insects significantly.
Model (.blob) |
size (pixels) |
mAPval 50-95 |
mAPval 50 |
Precisionval |
Recallval |
Speed OAK (fps) |
---|---|---|---|---|---|---|
YOLOv5n (+ tracker) | 320 | 53.9 | 97.6 | 96.0 | 96.6 | 40 |
YOLOv5n (+ tracker) | 416 | 58.2 | 97.4 | 97.0 | 95.0 | 30 |
YOLOv5s (+ tracker) | 416 | 63.4 | 97.8 | 96.6 | 95.6 | 17 |
New features
Add new YOLOv5n model: 0091a58
Important Updates
- Update yolov5_preview.py: 0a40d3b
- Update yolov5_tracker_preview.py: 140db67
- Update monitoring scripts: 2f3e738
Changelog
Changes between previous release and this release: v1.4...v1.5
insect-detect-v1.4
For the v1.4 release, new YOLOv5n detection models were added. With the YOLOv5n models performance increases significantly to 32 fps for insect detection and 30 fps for detection + tracking on the OAK devices. To reproduce the correct speed (fps) measurement while connected via SSH (X11 forwarding of the frames), print fps to the console and comment out cv2.imshow()
, as this will significantly slow down the received message output and thereby fps. If you are using e.g. a Raspberry Pi 4 B connected to a screen, fps will be correctly shown in the livestream.
Model (.blob) |
size (pixels) |
mAPval 50-95 |
mAPval 50 |
Precisionval |
Recallval |
Speed OAK (fps) |
---|---|---|---|---|---|---|
YOLOv5n (5 shaves) | 416 | 58.2 | 97.4 | 97.0 | 95.0 | ~32 |
YOLOv5n (4 shaves) + tracker | 416 | 58.2 | 97.4 | 97.0 | 95.0 | ~30 |
YOLOv5s (5 shaves) | 416 | 63.4 | 97.8 | 96.6 | 95.6 | ~17 |
YOLOv5s (4 shaves) + tracker | 416 | 63.4 | 97.8 | 96.6 | 95.6 | ~17 |
New features
Add new YOLOv5n models: 5fb3e48
Important Updates
Changelog
Changes between previous release and this release: v1.3...v1.4
insect-detect-v1.3
In this release the video_capture.py
script to save encoded HQ frames (1080p or 4K resolution) with HEVC/H.265 compression to .mp4 video file was added. As there is no encoding happening on the host (Raspberry Pi), CPU/RAM usage is minimal. This makes it possible to record 30 fps 4K video without any load on the Raspberry Pi Zero 2 W.
New features
Add video_capture.py
script: 7f53f00
Important Updates
- Update monitoring scripts: e1d7745
- Update frame capture scripts: 4e46f2f
- Update
still_capture.py
: 3254d88
Changelog
Changes between previous release and this release: v1.2...v1.3
insect-detect-v1.2
In this release the still_capture.py
script to save still images in the highest possible sensor resolution was refactored, now you can set the recording time with the optional argument -min
(e.g. -min 5
for 5 minutes recording time).
The frame_capture.py
script was added, to save HQ frames (e.g. 3840x2160 px), optionally together with LQ frames (e.g. 416x416 px) to .jpg at specified time interval. The recording time can be set with the optional argument -min
.
Important Updates
Refactor still_capture.py
script: 3864e5f
New features
Add frame_capture.py
script: c7cfeea
Changelog
Changes between previous release and this release: v1.1...v1.2
insect-detect-v1.1
Release for archiving in Zenodo.
insect-detect-v1.0
Initial release of Python scripts and YOLOv5s detection model (.blob format) for automated insect monitoring with the Insect Detect DIY camera trap.