Skip to content
candytaco edited this page Feb 2, 2021 · 8 revisions

Why does SharpEyes exist?

Because all the other solutions I have used are either unreliable or not user-friendly.

What does SharpEyes use?

OpenCV is used for actually processing the videos. WPF is used to build the front end UI.

What do I do with the data that it spits out?

Right now, SharpEyes just finds the pupil. The saved eyetracking data is the same format as that ussd by the PupilFinder class in the Eyetracking repo. You can instantiate a Eyetracker or PupilFinder class in python, and then read this data file in, and replace the appropriate field. Then you can continue the analyses in python.

What do I do if there are bugs?

When, not if. This is a work in progress. Open an issue and describe the issue.

What do I need to run SharpEyes?

It targets .NET framework 4.6.1, so you need that. Otherwise, the OpenCV and NumSharp dlls are already included.

What do I need to build SharpEyes?

I built this on VS2017 using the Nuget packages for OpenCVSharp and NumSharp Lite on Win10 20H2. I assume anything around that or newer should work.

What about nix systems?

No. You are welcome to try to port this yourself. There are things out there about getting WPF to run through Wine, but I don't have the time to look into it. A better way might be to just clone the UI using WinForms and building with Mono.

What about GPUs?

Everything runs on CPU and it frankly feels fast enough. The bottleneck here is the human checking the output. The code does make use of multithreading on CPU when it can.

Clone this wiki locally