开发者

People counting using OpenCV

开发者 https://www.devze.com 2023-02-22 03:07 出处:网络
I\'m starting a search to implement a system that must count people flow of some place. The final idea is to have something like http://www.youtube.com/watch?v=u7N1MCBRdl0 . I\'m working with OpenCv

I'm starting a search to implement a system that must count people flow of some place. The final idea is to have something like http://www.youtube.com/watch?v=u7N1MCBRdl0 . I'm working with OpenCv to start creating it, I'm reading and studying about. But I'd like to know if some one can give me som开发者_如何转开发e hints of source code exemples, articles and anything elese that can make me get faster on my deal.

I started with blobtrack.exe sample to study, but I got not good results.

Tks in advice.


Blob detection is the correct way to do this, as long as you choose good threshold values and your lighting is even and consistent; but the real problem here is writing a tracking algorithm that can keep track of multiple blobs, being resistant to dropped frames. Basically you want to be able to assign persistent IDs to each blob over multiple frames, keeping in mind that due to changing lighting conditions and due to people walking very close together and/or crossing paths, the blobs may drop out for several frames, split, and/or merge.

To do this 'properly' you'd want a fuzzy ID assignment algorithm that is resistant to dropped frames (ie blob ID remains, and ideally predicts motion, if the blob drops out for a frame or two). You'd probably also want to keep a history of ID merges and splits, so that if two IDs merge to one, and then the one splits to two, you can re-assign the individual merged IDs to the resulting two blobs.

In my experience the openFrameworks openCv basic example is a good starting point.


I'll not put this as the right answer.

It is just an option for those who are able to read in Portugues or can use a translator. It's my graduation project and there is the explanation of a option to count people in it.

Limitations:

  • It's do not behave well on envirionaments that change so much the background light.
  • It must be configured for each location that you will use it.

Advantages:

  • It's fast!

I used OpenCV to do the basic features as, capture screen, go trough the pixels, etc. But the algorithm to count people was done by my self.

You can check it on this paper

Final opinion about this project: It's not prepared to go alive, to became a product. But it works very well as base for study.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号