Skip to content

AI Tech Docs?

edited July 2019 in SecuritySpy
For v.5 please can we have some more info about the CNN and classifiers used?

The info in release notes is OK for people who know nothing about machine learning, but isn't detailed enough for those with an interest / professional application in the subject.

Of course, the approach also leads to feature requests such as a daily report featuring # of cars broken down into right-to-left and left-to-right, as well as # of people detected, group sizes, whether they looked at the cam etc

People have been using neural compute sticks for this stuff, which always seems cool.

;-)

Comments

  • There is a bit more info in the SecuritySpy Technical Specifications document, and on the Features - AI page.

    SecuritySpy doesn't currently record direction of movement or count objects/detections, but this could quite easily be implemented in the future if there is demand for it.
  • Both of those would be brilliant!

    I also wondered if in the future you will be able to support more types of object detection? For example I have cameras covering my garden and like to trigger motion based on my dog moving around etc, but I would like to trigger a script when an actual person is detected!

    The camera also covers our koi pond and it would be good to be able to detect if something like a heron or other large animal moves.

    I know these are probably all quite advanced use cases but it would be a fantastic feature! Perhaps you could license different AI packs depending on people's needs? I would be happy to pay extra for specific models of types of animals or other AI features!
  • And just because I know it must be annoying when everyone starts with "What's next" - great job on what you've done with the AI motion detection, very impressive and the fact it runs locally is brilliant! It is going to save me a lot of recording and complication with hooking up PIR sensors through my home automation solution!
  • Many thanks for your compliments, great to hear these features will be so useful to you.

    We have already developed an animal detector, but it's not quite ready for prime time yet for a few reasons. The first is that gathering the amount of training data required is not easy - in the images that we are gathering, animals rarely feature. Secondly, animals come in all shapes and sizes: it's difficult to make an animal detector that triggers for both birds and dogs, for example. Finally, we don't want to put out an inaccurate detector, as it might mis-classify humans as animals, which would be a Bad Thing.

    For an example of this last point, search for "google gorilla mistake". Even google couldn't fix this technologically - they simply removed the functionality. This causes us some concern about implementing such functionality ourselves.
  • Yep, understand what you are getting at there. I can provide some footage that includes dogs, but 1 user probably isn't going to make a huge difference!

    Seems there would also be a need to put some boundaries around what types of animals, for example I'm not expecting to see a zebra on any of my cameras, and I suspect the majority of customers will be the same.

    Another thing that might work which may be to have multiple types of motion detection zones per view. By that I mean I could mask out an area for AI detection, and an area for "normal" motion detection.

    One other thing on the wishlist would be some kind of "if this then that" rules engine, for example "If there's a person on the front drive after 2:00AM do this" - I know that would be a lot of work but also really helpful, it's something I can do in home assistant but may be useful for others if it were built into the app.
  • Good suggestions, thanks. I also suspect that most customers won't have the need for a zebra detector :)

    You're probably aware, but you do already have quite a lot of flexibility for deciding when to receive events and start recording. For example you can set up a custom schedule to apply to the Actions mode that results in events being generated only at certain times of the day. So you can actually achieve something like "If there's a person on the front drive after 2:00AM do this". The way that SecuritySpy does it, with a fixed set of actions and one schedule per mode, makes things easy to set up and understand, but I know it's not quite what you are describing.
  • not interested in zebras, but kangaroo recognition would be tremendous (turning on sprinklers to scare them off veggie garden....)
  • I have the same use case. Want to turn on sprinklers when the pigeons descend on the railings around my garden. Scare them off before they start destroying things.

    Would be awesome to selectively add anything in the Resnet50 model alongside the current Person/Vehicle selectors. Or, even better, support for external models / accelerators like Google Coral (https://coral.withgoogle.com/products/accelerator/)
  • I'd love to be able to count vehicles that pass in front of a business! I briefly looked at trying this with OpenCV processing a feed from a camera, but ugh it looked like a lot of work.
Sign In or Register to comment.