Background Removal From Images

1 visualizzazione (ultimi 30 giorni)
Brandon
Brandon il 25 Set 2013
I'm working on a stereo camera setup and need to track a white ball as it moves around. Here is a picture of the setup:
As you can see there is a high contrast between the ball and background. Currently I am thresh holding the image and then getting the centroid of the ball to determine the location. I would like to have a more robust method where I would subtract the background. Any help would be greatly appreciated.

Risposta accettata

Image Analyst
Image Analyst il 25 Set 2013
Modificato: Image Analyst il 25 Set 2013
correctedBallImage = abs(double(ballImage) - double(backgroundImage));
  4 Commenti
Brandon
Brandon il 25 Set 2013
Ok, so I just tried the above function and the ball completely disappears.
Any suggestions on lighting because the ball is close to as bright as other things in the scene. The lights above the scene are florescent, what type of lighting should I be using?
Image Analyst
Image Analyst il 25 Set 2013
If the ball disappears then it must be the same intensity as the background so you won't see it. You must have the ball be either brighter or darker than the background it's over. In that case, you will see it in the difference image. You can use rgb or grayscale. But to display the corrected image you must use either cast to uint8 for rgb, or use [] and leave it as double for grayscale:
correctedBallImage = uint8(correctedBallImage); % Gray scale or RGB.
imshow(correctedBallImage, []); % Gray scale only.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Computer Vision Toolbox in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by