-
Notifications
You must be signed in to change notification settings - Fork 10
Open source eye tracking algorithm
License
thirtysixthspan/Starburst
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
% Starburst Algorithm % % This source code is part of the starburst algorithm. % Starburst algorithm is free; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation; either version 2 of the License, or % (at your option) any later version. % % Starburst algorithm is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % % You should have received a copy of the GNU General Public License % along with cvEyeTracker; if not, write to the Free Software % Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA % % % Starburst Algorithm - Version 1.0.0 % Part of the openEyes ToolKit -- http://hcvl.hci.iastate.edu/openEyes % Release Date: % Authors : Dongheng Li <[email protected]> % Derrick Parkhurst <[email protected]> % Copyright (c) 2005 % All Rights Reserved. DESCRIPTION: -------------------------------------------------------------------------- Starburst algorithm is eyetracking software aimed at tracking dark-pupil eye images and predicting the user's point of gaze in the scene image. Usage: -------------------------------------------------------------------------- This algorithm package for eye tracking can be divided into four steps: - Extracts images from video. Function extract_images_from_video() Put eye video and scene video into the same directory. The program will ask you to read them in. And then the program will extract eye and scene images from the videos and put them into ./Eye/ and ./Scene/ respectively. - Calibration. Function extract_calibration_from_video() The user need to specify the directory which contains the /Eye and /Scene image directory. The left and right mouse button can be used to browse the images. When the eye is fixing at one of the calibration point, the user can indicat the calibration point in the scene image and indicate the start point in the eye image. And then the program will highlight the pupil ellipse and the corneal reflection. After confirmation of the user, that calibration point correspondence is added. Finally, a file (calibration.mat) containing the calibration data and an image (calibration.jpg) of calibration point correspondences will be saved in the current directory automatically. - Process the whole video. Function calculate_pupil_and_gaze() The user need to specify the directory which contains the /Eye and /Scene image directory and the calibration file (calibration.mat). The user also need to eliminate bad calibration point correspondences by click at the blue cross indicating the location of the corneal reflection). And then the program will calculate the gaze location in the scene image based. - Plot the result on the scene and eye image. Function plot_pupil_and_gaze( ) The user need to specify the directory which contains the /Eye and /Scene image directory and the result file (ellipse_result.mat). The program will plot the pupil ellipse and its center on the eye image and plots the gaze location in the scene image. And then these tow image form the result image saved in ./Result/ directory. Debugging: -------------------------------------------------------------------------- Report bugs to [email protected] -------------------------------------------------------------------------- Version Log: Starburst-1.1.0: -Faster ransac (not using for loop to check inliers) -Faster location of corner reflection (regionprops(labeled,'Area','Centroid','EquivDiameter');)
About
Open source eye tracking algorithm
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published