Following on from the previous post, I have added a couple of new Stream Processing Elements (SPEs) to the vehicle detection stream processing network design:
YOLOFilter takes the raw detections from YOLOv3 and filters them on a configured confidence level and minimum total area of the frame occupied by the detection box. If the detection passes that, it then gets passed to another filter that accumulates the results and, if a sufficient number of detections occur within a set time, it outputs a configurable text message and JSON message downstream. By noting if the detection box area is growing or shrinking, the filter can also determine if the object is approaching the camera or receding from the camera.
In this design, the text message is passed to an SPE that sends a text message to my phone via Twilio. The JSON message is passed to a PutManifold SPE that makes the message available to Manifold apps such as ManifoldStore for long term storage. Since these are only generated when a significant event is detected, I will be able to use these with rtaiView to quickly skip to the next significant event in the streams in view. It will also make it trivial to generate a “highlight reel” which is a short video consisting of significant events detected during a specified time range.
Next up is an SMTP email SPE so that it is possible to send alerts like these via email as well as SMS texts.