I need someone to help me remove the moving objects in a sequence of images or in a video, both could be captured from a hand-held device, like phones or dv. For example imagine this scene, you sit at starbucks and looking outside the window, there's a beautiful street view with people passing by, you pick up your phone, and record a small video (or take few photos). And I need you recover the background of the beautiful street view, removing all recognizable moving objects like people or cars as possible as perfect. Small variation like tree sway due to little wind should not be treat as moving objects, they should be part of the background. Besides, the hand-held vibration should be compensated as well, but this is optional, if you could cover this, I'll pay more.
**So here's what I want**
Use your phone to record about 3~5 secs, or take 3~5 photos, then output the background as one image. Both frame based or image based process are acceptable. If an object exist in all frames/images, it could be considered as a background, no problem. If an object(like a person) is not exist in the beginning, somehow at sometime walks into the view, stay a long time to the end of recording period, he should not be background. If an object(like a person) exist since the beginning, however he left at the last second, he should not be background.
I prefer C/C++/Java/Obj-C. In fact, if you can get the job done, it's OK for me to accept any programming language. You can use any library/tools you like, if it could be easy implemented in mobile phone, for example OpenCV. I need both result and source code. The code must be well-commented, object-oriented and highly readable, better with documentation, in order to let me modify in the future.
I'll implement this program into mobile devices in the future, so please don't do too complicated computation, there's no 4G/8G memory nor i5/i7 CPU in a phone. It's no need to be real time, but needs to be finished in 3secs in a phone.
these information may be useful for you:
OpenCV has BackgroundSubtractor api and some more for object-related application and SURF/SIFT can help you detect/tracking objects, if you need.
Hi,
I am an OpenCV developer. I did a People Counter system that works well with BackgroundSubstractorMOG2. Actually I am working in a HeadPose OpenCV project.
Concerning your requirements I think that OpenCV BackgroundSubstractorMOG2 will work fine. There will not be any problem in case of video inputs but I am not sure that only 3 o 5 images will give us good results. Perhaps We have to increase the number of images or try another background substraction method.
As I said I am actually working finnishing another project. I can start working by now because my client is trying the project and sending me the feedback. That is for tell you that poject completion time may vary. Perhaps we need less than one month to acomplish it.
We can negotiate the price if I have more info about it.
Then the development steps are:
1. Review requirements and samples (Can you send me some samples or I have to record it?)
2. Implement BackgroundSubstractorMOG2 and try it
3. Test results
4. Fix problems or look for another BackgroundSubstrator method
5. First version of BackgroundSubstractor
6. Test and Debug
7. Final version
I love programming challenges and image recognition and image tracking systems.
Looking forward to working together. I hope that this can be possible.
Best regards,
Gustavo Puche