Slow moving objects detection

Moderators: HeneryH, TimG

Post Reply
johny99
Posts: 5
Joined: Thu Feb 02, 2023 11:09 pm

Slow moving objects detection

Post by johny99 » Mon Feb 06, 2023 12:35 am

Hi,

If an object moves slowly enough it won't generate a trigger based on the motion detection engine, because it will not be considered to be moving. You could adjust the parameters trying to detect it, but there are limits and if it moves really slow it won't be detected. However, if BI could analyze an accelerated version of the video feed (faster enough to compensate the slowness of the object), then it will detect the slow moving object and generate its triggers properly.

To test this, in BI v5.6.9.6 I've cloned a camera and configured it to record video in "Periodic, each" mode, 0:05 min. for 0.1 sec (using re-encode as stated in the manual), which will create a 5 times faster version (approx.) of the original source. Indeed, when I replay a clip recorded this way, BI will reproduce a time-lapse (accelerated) version of the live video (5x faster, as expected). Please, note that these values have been chosen just to try this hypothesis, but they could be adjusted to detect even slower objects by recording each 0:10, 0:30, etc.

If I activate "Testing & Tuning -> Analyze with motion detection" in this 5x accelerated clip, BI will show triggers that it would ignore in the original 1x normal speed equivalent clip (recorded in the original camera that was used to created this time-lapse clone), so theoretically BI can detect those slow objects.

However, it seems that the motion detection algorithm applies to the live footage, and not to the recorded one, because no alerts are generated with slow moving objects in the 5x camera in real time (I mean, no others but the same ones generated also by the 1x version), while using the recorded clip with "Testing & Tuning" does indeed generate the triggers for those slow moving objects. You can test this "recording independence" by creating a camera which triggers with motion detection without recording anything at all. It will even send you alerts without having to record anything, if you want to. BI is really flexible and powerful in this respect.

My question is, would it be possible to apply the motion detection algorithm to the recorded clips instead of the live video, so that slow moving objects could be detected with these timelapse videos?

Thanks.
PaulDaisy
Posts: 83
Joined: Mon Jan 16, 2023 5:06 pm

Re: Slow moving objects detection

Post by PaulDaisy » Mon Feb 06, 2023 4:50 pm

An interesting idea, but this seems to fall into the category of post-event forensic analyses, not a VMS. The program would have to make assumptions (or take user settings settings) as for the length of time to look back, and the speed of the slow moving object to consider (exactly what you are doing manually).

The only way to mimic this in a real time application that I can think of would be to use Hot zones, which trigger on any motion, no matter how small. But that in turn would likely cause a lot of nuisance triggers.

I wonder if another solution might be to script BI to record your manual actions and carry them out periodically, programmatically.
MikeBwca
Posts: 1183
Joined: Thu Jun 20, 2019 5:39 am

Re: Slow moving objects detection

Post by MikeBwca » Tue Feb 07, 2023 9:24 am

A few things come to mind...

- What is moving that slow you need to trigger motion for?

- Add a clone, and adjust motion to most sensitive, or as Paul suggested, use Hotspot. Then use AI.
johny99
Posts: 5
Joined: Thu Feb 02, 2023 11:09 pm

Re: Slow moving objects detection

Post by johny99 » Tue Feb 07, 2023 9:00 pm

The motion detection algorithm has an inherent flaw, well some may call it a feature (cough, cough, I'm looking at you Microsoft): it will not work if the object moves slow enough. The slow moving object could be anything, but I'm thinking about someone/something that intentionally moves so slow that it won't trigger the motion detection algorithm.

Some crooks are more sophisticated than others: some wear gloves and some don't, some wear face mask and some don't, etc. If the attacker is smart enough, and he knows about the presence of a CCTV system with motion detection, he could try to move (himself or his devices) as slowly as possible trying not to trigger the algorithm (I've heard of some cases who have even used a skateboard to slowly slide undetected). However, if you don't analyze the real time stream, but an accelerated version of it, he will be detected anyway because his slow movements will be compensated and seen at a normal pace. You can even make several clones of the same camera at different recording speeds to catch everything, from extremely fast to ultra slow targets.

The current range of the motion detection algorithm is not enough if you move really slow (don't get me wrong, it's more than enough for most cases, but not for this one), so tweaking its parameters won't detect those targets no matter what settings you use. Even worse, the more you reduce the movement needed to trigger an event, the more probable will became that random noise and other compression artifacts will generate false alarms.

The hostspot option is too sensitive in most scenarios to work by its own, so it has to be combined with AI, as you both suggested. Unfortunately, this AI approach has two main inconveniences for some domestic systems:

1) You need a quite powerful PC to work in real time with AI on multiple cameras, and some people even use a dedicated system just to properly run AI, which increases the total costs. Buying and/or running an additional powerful machine is something not everybody can afford. Using AI on a not so current PC shared for multiple purposes is far from ideal.

2) AI can be fooled, as described in multiple articles, like this one. As a quick example, if the intruder is wearing a garden plastic bag (those big ones used to trash waste) covering his whole body, I think not a single current AI will identify him as a person, so the alert will be discarded.

Analyzing an accelerated version of a clip (just like the "Testing & Tuning" on the 5x recording I explained in my first post) could be a really affordable (as it doesn't need AI to work) and useful (you can easily adjust it to your needs) tool that could be used, for example, as a way to neutralize the slow-moving tactic.

I guess it may not be easy to implement, but the fact that currently BI can already detect slow moving objects on recorded videos makes me think it is at least feasible, and I wish the developing team would agree about this, so I hope and would really appreciate if they would evaluate some options to implement it.
MikeBwca
Posts: 1183
Joined: Thu Jun 20, 2019 5:39 am

Re: Slow moving objects detection

Post by MikeBwca » Wed Feb 08, 2023 9:24 am

I understand.

Another thought...

You could bypass motion triggering entirely, triggering every 5 or 10 seconds, then have AI analyze the image. Have AI set to 1-2 images.
Set the Break time 'Max Trigger/alert duration' less than the trigger interval. In this way, you will always get 1 or 2 images analyzed by AI every interval (5, 10, 15 seconds).

Shouldn't take much cpu/gpu as you would be analyzing 1-2 images each interval.


I'll setup a clone any try doing this to see how/if it works.
Post Reply