Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Tracking by chroma in varying light conditions

I've been working with openCV to try to track a green ring. Basically I convert to HSV space, pyramid down twice, blur, then split the channels and equalize the V. Then I merge the channels, set upper and lower bounds for each channel and do an in-range. From there I do some circle detection using a simple Blob detector. All I'm after is the center of this ring as it moves around so I just want that keypoint.

What I find is it works great if I adjust the upper and lower bounds at my desk. Even if I turn off my light or shine a flashlight on it. But then I go out in the hallway under different light and it doesn't work. I can of course adjust it to get it to work.

Am I going about this the wrong way? I was thinking of next trying to run detection at different preset ranges, or a sliding window of ranges to find my circle.

Tracking by chroma in varying light conditions

I've been working with openCV to try to track a green ring. Basically I convert to HSV space, pyramid down twice, blur, then split the channels and equalize the V. Then I merge the channels, set upper and lower bounds for each channel and do an in-range. From there I do some circle detection using a simple Blob detector. All I'm after is the center of this ring as it moves around so I just want that keypoint.

What I find is it works great if I adjust the upper and lower bounds at my desk. Even if I turn off my light or shine a flashlight on it. But then I go out in the hallway under different light and it doesn't work. I can of course adjust it to get it to work.

Am I going about this the wrong way? I was thinking of next trying to run detection at different preset ranges, or a sliding window of ranges to find my circle.

Edit: Adding picture for clarity C:\fakepath\IMG_3711.JPG

Tracking by chroma in varying light conditions

I've been working with openCV to try to track a green ring. Basically I convert to HSV space, pyramid down twice, blur, then split the channels and equalize the V. Then I merge the channels, set upper and lower bounds for each channel and do an in-range. From there I do some circle detection using a simple Blob detector. All I'm after is the center of this ring as it moves around so I just want that keypoint.

What I find is it works great if I adjust the upper and lower bounds at my desk. Even if I turn off my light or shine a flashlight on it. But then I go out in the hallway under different light and it doesn't work. I can of course adjust it to get it to work.

Am I going about this the wrong way? I was thinking of next trying to run detection at different preset ranges, or a sliding window of ranges to find my circle.

Edit: Adding picture for clarity C:\fakepath\IMG_3711.JPGTube