Difference between revisions of "Understanding ZoneMinder's Zoning system for Dummies"

From ZoneMinder Wiki
Jump to navigationJump to search
Line 20: Line 20:


[[File:With_zones.jpg]]
[[File:With_zones.jpg]]
=== Okay, now how do I specify the sensitivity of the zones? ===
ZoneMinder has pre-sets. We live in a world of pre-sets. I bet you want to select "Best and highly sensitive" don't you? DON'T.
Not because that setting is nonsense, but because you should understand some concepts first.
==== Core Concepts ====
The ZM wiki I pointed to earlier does a great job of explaining different methods. At the cost of repeating what has already been said, its important to note:
* ZM does NOT understand objects. It only understands pixel colors. So if you are monitoring a camera that is producing a 1280x960 32bit color depth image, as far as ZM is concerned, it is getting an array of 1280*960*32 bits of data to analyze and compare a previous frame and based on 'color differences' between frame X-1 and X along with some algorithms it applies in addition to color differences, it tries and guesses if objects have come up that were not there previously.


[[File:Of_men_and_animals.jpg]]
[[File:Of_men_and_animals.jpg]]

Revision as of 15:42, 25 March 2015

<Home

Background

ZoneMinder has a powerful zone detection system using which you can modify how sensitive, precise, accurate your motion alarms are. The official ZM documentation does a good job of describing all the concepts here. However, you will see gobs of posts in the forum about people complaining that ZM logs all sorts of events (ahem, as did I), ZM's detection is rubbish and in-camera is better (ahem, as did I) and what not. But once you get the concept, its incredibly powerful.

So instead of giving you a theoretical explanation, lets walk through a live use-case. (Credit: user kkroft helped a lot in me getting a hang of things here. You should also read his earlier explanation here)


Some concepts

Let's take a look at this area below. Lets suppose you want to trigger motion if someone tries to break into your basement. Does it make sense you monitor the full area (pillars/walls/floor)? Probably not. If someone were to break in, they'd break in from some door, some window, or maybe break in from upstairs and climb down the stairs. So doesn't it make more sense to monitor these areas specifically? I think so. So the first 'common sense' logic is delete the default zone that ZM creates for each monitor (which is called All). Monitoring every part of your image may make sense if you are monitoring and outdoor lawn, for example. Not here

Nph-zms.jpeg


Defining the zone areas

So given the explanation above, how about we define zones where motion matters? Any zone you define as "active" is what ZoneMinder will analyze for motion. Ignore the 'preclusive for now'. So lets look at the image below. I've defined polygons around places that are the "entry points"

With zones.jpg


Okay, now how do I specify the sensitivity of the zones?

ZoneMinder has pre-sets. We live in a world of pre-sets. I bet you want to select "Best and highly sensitive" don't you? DON'T. Not because that setting is nonsense, but because you should understand some concepts first.

Core Concepts

The ZM wiki I pointed to earlier does a great job of explaining different methods. At the cost of repeating what has already been said, its important to note:

  • ZM does NOT understand objects. It only understands pixel colors. So if you are monitoring a camera that is producing a 1280x960 32bit color depth image, as far as ZM is concerned, it is getting an array of 1280*960*32 bits of data to analyze and compare a previous frame and based on 'color differences' between frame X-1 and X along with some algorithms it applies in addition to color differences, it tries and guesses if objects have come up that were not there previously.



Of men and animals.jpg