Close

[R][M] Near Eye Tracking

A project log for T^2 TyMist [gd0138]

I need some virtual desktop monitors that offer 90PPD at 90Hz.

kelvinakelvinA 02/09/2023 at 12:061 Comment

[09:30] Okay. I've been wondering about this for a while but I think it's finally time to start looking into what options or components I need for eye tracking. I feel that, even if I don't obtain a full TyMist solution, eye tracking would speed up / streamline my PC work, just like #Tetent [gd0090]

The best solution would be one that I can use to detect the assumed focal point of the user. The closer something is, the smaller the angle is (if 90 degrees is the eye looking straight ahead). I doubt I'd get that accuracy, but I also don't think I need it as long as the screen focus is user adjustable.

Lets see if I can not invent here. For starters, I know of the Tobi 5 eye tracker which is a Wii-looking bar that's too large for this application (as well as seemingly incompatible with my portable monitor #Teti [gd0022]  setup). I also know prices for these kinds of things are usually >£200 and have mentally set pricing expectations accordingly.

So the first option was looking promising when I was looking in the docs, until I found the price of the device:

"It's… 3.4 grand? Grand? Three thou four? Not 344? 344 zero?"
Then I looked into the DIY version and the cameras are 120Hz. Considering even basic mice have a 125Hz polling rate and eyes move so much faster, I'm not impressed. The DIY edition also has a non-commercial licence, which sounds iffy. 

There weren't any hardware solutions after the first one, so I'll have to invent here. I just watched a video of what happened when Target tried to outsource a software solution (and now they do 70% inhouse, according to a comment) so inventing here might not be so bad.

It seems that the main thing I need is an infrared camera. Well most cameras can detect infrared (and thus actually require a filter for them), so I have the 330fps camera I planned to use for the #SecSavr Sublime [gd0036] in the back of my mind, but I first wanted to see if I could use a mouse sensor camera. I hopefully don't need a great deal of resolution for tracking the eye, and those sensors are much faster and cheaper. They're also small so, along with the low price, I could have more than 1 sensor per eye for increased accuracy / reliability. 

So I the watched the above video. It seems that the sensors are 40x40px and those high mouse DPIs are a result of interpolation. Is that enough to detect an eye? Could I even get the raw data off fast enough?

Well there's this paper https://www.hindawi.com/journals/js/2019/3931713/ about using optical mouse sensors for eye tracking so there's probably some promise in there.

[11:00]

Very interesting how all these cool things are only showing up very recently. This is the kind of camera setup I hoped for when I was looking for SecSavr Slime cameras. The only kind at the time was the sensor mounted onto some large 38x38mm module when ribbon-cabled versions of this sensor also existed on Aliexpress (with no board to use them with). 

WOAH! It does 1080p 120fps?! That's a new one! The version I had originally found prior only did 60fps at that resolution. Anyway, for this application I'm only interested in the 330fps options. 

I also got an idea to create a custom lens that cuts the image sensing area in half so that something like dual 320x320px images of the eye can be captured with a single sensor. That sounds like a solid plan; better than wasting free data by capturing the surrounding skin or something. Wait... couldn't I use dual images for triangulation? 😏

The original plan was to have the sensor and illumination take the same path as the displays, but I don't think there would be space in the focal plane for that (oh and I'd lose about 50% of the light just to illuminate and another 50% on the capture, due to the losses from the lenses and beamsplitter) so I thought I'd made the optics holder more useful by integrating the eye tracker gear in there.

I can worry about converting the data into eye position at a later time. Right now, I just need to avoid Garbage In Garbage Out.

[12:50] Here are more up-to-date renders, including the lenses and the 20mm diameter beams that hold them and house the eye trackers:

Potentially useful research links

Discussions

kelvinA wrote 02/14/2023 at 10:05 point

I've looked around and could only find a >£150 camera that could do >330fps. I think I can be confident that the camera I've found is a good balance of speed, size and cost.

  Are you sure? yes | no