is it possible to detect the foreground in an single image using matlab? expecially i want to detect the car in an image. if yes please tell me the approriate method to detect the car in an image.
3 次查看(过去 30 天)
显示 更早的评论
I want to detect the car in an single image. i have tried out background subtraction method but it's need an original environmental image and present environmental image. so please guide me to do the foreground detection in a single approriate image.
1 个评论
Daniel Armyr
2016-2-3
This is not something that can be done automatically until camera vision systems become a lot more intelligent than they are today which will take quite a few years.
You should take a course in computer vision / hire someone who knows this area because that is what it will take.
回答(3 个)
Walter Roberson
2016-2-3
No, this is not possible even in theory. See http://uk.mathworks.com/matlabcentral/answers/243406-how-scan-an-image-fully-and-seperate-the-area-of-interest-using-matlab#answer_192657
0 个评论
Image Analyst
2016-2-3
I think it is possible, though it might be a lot of work and only work for images that meet certain criteria. There have been amazing advances in CBIR and Deep Learning. For example here is a link where MATLAB's Computer Vision System Toolbox uses optical flow and deep learning to detect if an image has a cat or a dog in it. Of course it's not 100% accurate, but did work very well for the examples shown.
2 个评论
Walter Roberson
2016-2-3
No, you cannot tell cars from other things by image. See https://www.mathworks.com/matlabcentral/answers/264009-i-need-a-coding-to-detect-the-cars-in-an-images#answer_206408
Image Analyst
2016-2-3
Granted, there are cases where it will fail, but there will be cases where it will work, like Dima says.
Dima Lisin
2016-2-3
Yes it is possible, although difficult. For example, you can train a cascade object detector to detect cars. This will not work 100% of the time, but it may be sufficient for your purposes.
The thing to keep in mind is that a cascade object detector cannot handle rotation, either in-plane, or out-of-plane. So you cannot have a detector that will detect cars viewed from any arbitrary angle. However, you can train a detector for a side view of a car, and a separate detector for a front view of a car.
Even if you limit your problem to a specific orientation, your detector will still make mistakes, simply because cars can vary greatly in their appearance.
7 个评论
Walter Roberson
2016-2-3
According to the poster's other Questions, they are attempting to do counting of cars from unmanned aerial vehicles. If they have not changed the focus of their project, then they will have multiple images to deal with, but not necessarily a background image for each parking spot.
If they are sufficiently close to the ground that they could use perspective and if they have sufficiently accurate information about their position, then they could be doing stereo rectification, which would help provide constraints on the height of the objects and would help with (for example) aspect ratio calculations.
Dima Lisin
2016-2-3
Oh, I see. So, if they can collect a representative set of images and hand-label the cars, they should be able to train a detector. How accurate that will be is another question entirely.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Computer Vision Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!