Introduction
The basic idea of video surveillance systems is monitoring a place where you want to watch. These systems can catch any movement, take pictures, and save/send the video streams or pictures to a screen. The pivotal point is where you place them. They should be placed in the optimum positions that can present the best view without any black dots (dark areas).
Picture 1 - Dome camera
It is not a real handicap if the size of the area is small, such as a room. However, it can be a complex problem if the area which will be watched is bigger or has some barriers. There are different types of dome cameras according to their range and directions. For instance, 360 degree 6 meter range dome cameras or 90 degree 10 meter range dome cameras.
|
|
Picture 2 - 360 degree 6 meter range cameras
| Picture 3 - 90 degree 10 meter range cameras
|
Let's choose a super market whose size is 100 m2 (10m*10m) to demonstrate an optimum solution. The important questions are:
- How many 360 degree dome cameras and 90 degree cameras should be used?
- How should the selected cameras be placed?
- How many different optimum solutions does exist?
What is needed is a program which can be performed to find the different optimum solutions. The picture below shows a 90 degree -+ dome camera. Let's assume that only fully dark places are considered as dark dots.
Picture 4 - 90 degree -+ dome camera
Therefore, it is obvious that calculating the dark dots are easier than others.
|
|
Picture 5 - 90 degree -+ dome camera real sight
| Picture 6 - 90 degree -+ dome camera assumed sight
|
There are deluge sorts of algorithms that can be implemented for this fuzzy logic problem. One of the solutions is putting a different type of camera every 1m2 and removing them step by step until you find the optimum.
The algorithm of the attached program works on this solution. In addition to this, it presents the optimum solutions, the location of cameras, and also the place IDs which are watched by different cameras.
Please don't hesitate to ask any questions about the algorithm and code (ykocdag@yahoo.com).
Phd. Yildirim Kocdag is a Computer Engineer.
Programming Languages
Android, Objective-c, c#, vb.net, asp.net, javascript, TSQL.
Computer Science
DataMining, Compilers, Expert Systems, Digital Image Processing, AI and Extreme Programming.
ykocdag@yahoo.com
http://www.linkedin.com/profile/view?id=223886830