Tracking people through a shop window

Hi all.

Does anyone have experience with tracking people through a glass window / shop window?

I was initially thinking about using the kinect2, but some simple tests with some glass in front of the sensor already showed a significant decrease of the depth map fidelity.
The kinect1 seems to be working better through glass, though depending on the angle reflections can be seen.

What i need is to track the position of people (potentially many at a time, though only 1 is needed) and have some patch reacting to that position.

I only have the option to have the sensor behind the window glass. Am also interested in other solutions than the kinect, if somebody knows any and or experience with the kinect behind glass.


put the kinect very close to the glass, that might help

since you only need the positions, what about an old fashioned blobtracking? maybee with a dynamic background substraction to reduce the disturbance of the reflections?

hi ethermammoth, try kinect hitboxes kinect-hitboxes-dx11 or dx11 pointcloud library. using depth from kinect and tracking raw 3d pointcloud is very robust compared to skeleton tracking. work with unlimited amount of people/objects, the range is also significantly higher. for better results, you may try to combine more kinect1 sensors.

@aivenhoe blob-tracking and background substraction is pain in the ass, it work fine in a controlled environment :)

I was not that much looking for how to program it - but thank you for the hints id144. I was more looking into Kinect alternatives if somebody know what could be suited.

I’ve tried with the Kinect, made some setups with both versions through glass. It works well, when directly in front of the glass / though the kinect2 gets disturbed quite easily when having a small angle to the glass. Problem is more that of sunlight. With the kinect direct sunlight is a killer, even indirect sunlight (when its a bright shiny day) can already kill the infrared pattern / so no depth map.

My other thought was like aivenhoe suggested to use opencv with some tracking. There are some quite feasible and good working people detection examples, which i already tried and had good results with. Only problem here is at night, when the illumination is to dark for the camera to compensate. Though i think the passive light from the window and streets might be enough to still detect people.

Also i was maybe thinking about radar touch - though that doesn’t work through glass as far as i know and placing outside is not an option.

I think i will go the opencv way and send the data through UDP. Unless there is a magic sensor i dont know about for exactly this scenario ;)

switch between kinect RGB and depth during day/night

I’d IR filter the camera, day;light will have enough IR, and have an IR illuminator for the night time, then just do motion detection I think, although it depends on what kind of that your trying to do, juts detect people or do something specific to individuals etc

Perhaps you can use a simple camera like a cheap webcam to look at the whole outside scene but increase the brightness, then using OpenCV and vvvv look at anything that crosses the brightness, sort of like blob detection. An example here is using Grasshopper and Firefly, a webcam and LCD screen brightness to track hands:

essentially you can try to track people’s silhouettes against bright back-light (but doesn’t work at night I suppose!).

I’m just finishing a project like this - until now I use kinect hitboxes, works really well, but there is no direct sunlight… will ‘upgrade’ to blob tracking next week, hope to have similar results

Best, e.