Pupil Capture, Player, and Service release
We are pleased to announce the release of Pupil Core software v3.3!
Download the latest bundle (scroll down to the end of the release notes and see Assets).
Please feel free to get in touch with feedback and questions via the #pupil channel on Discord! 😄
Overview
Pupil v3.3 focuses on improving software usability, stability and performance. We have made improvements to how product-specific plugins are loaded in Pupil Player, updated keyboard shortcuts, and fixed several stability issues. Additionally, the surface tracker now exports marker detection results.
Note: Prior to this release,diameter_3d
data for all Pupil Core v3 recordings did not have corneal refraction applied. See pye3d v0.0.7 notes below for updates and post-hoc fixes.
Improved
pye3d v0.0.7
This release comes with our latest pye3d version including the following improvements
- Performance improvements - #27
- Simplification of
Conic
parameter calculation - #26 - Correctly apply corneal-refraction correction to
diameter_3d
result - #28
All pye3d versions prior to 0.0.7 do not correctly apply corneal refraction to the diameter_3d
field. To check if you are affected by this bug, take a look at the method
column of your pupil_positions.csv
export.
You have two options to get correctly calculated pupil size data:
- Use the
circle_3d_radius
values and multiply them by 2, or - Re-run the post-hoc pupil detection in Pupil Player v3.3 or later
Marker detection export - #2140
The Surface Tracker plugin requires fiducial markers for defining and tracking areas of interest. Until now, the detection result of these was only stored as an intermediate result. With this release, the data is also stored as a CSV file next to other surface-tracking related exports.
The data is exported to surfaces/marker_detections.csv
.
Column name | Description |
---|---|
world_index | Scene video frame index |
marker_uid | Label for identifying the marker |
corner_0/1/2/3_x/y | Corner coordinates in pixels |
Improve surface detection consistency - #2139
Surfaces can now be defined as long as one or more markers are detected in the scene video. Previously, this was only sufficient in some cases -- usually, at least two markers were needed.
Note: Surface tracking works best if you use multiple markers spread-out over the area of interest to define and track your surface. The surface position export files contains information about how many markers were detected for each surface position. You can use this information as an estimation of the tracking stability.
Product-specific plugin loading in Pupil Player, part 2 - #2125
We continue work on finetuning the list of enabled plugins for Pupil Invisible recordings.
Starting with this release we have removed the “Pupil from recording” option, as there is no pupillometry data to load from Pupil Invisible recordings. Pupil Player will no longer generate an empty pupil_positions.csv
file after export.
Keyboard shortcuts update - #2129
The default annotation keyboard shortcut was changed to x
in both Pupil Capture and Pupil Player to avoid collision with other plugin shortcuts.
We've posted tables of keyboard shortcuts for Pupil Capture and Pupil Player below. You can find these tables in our Capture and Player documentation.
Fixed
- Fixed HMD calibration crashing Pupil Service - #2120
- Fixed Pupil Groups serialization issue - #2124
- Fixed toggling pupil detection on and off - #2126
- Fixed calibration area calculation errors - #2128
- Fixed video source replacement in eye process - #2131
- Fixed gaze visualization on Apple Silicon computers - #2132
- Fixed Pupil Invisible timestamp update procedure precision loss - #2134
- Made pye3d plugin's debug visualization colors consistent - #2136
- Fixed validation crash when not enough reference data is collected - #2137
- Fixed a crash when using Time Sync on macOS - #2138
Developer notes
Dependencies updates
Python dependencies can be updated using pip
and the requirements.txt
file:
python -m pip install --upgrade pip wheel
pip install -r requirements.txt
We have specifically updated the version requirement for pye3d.
Downloads
To open the RAR-archive on Windows, you will need to use decompression software, such as WinRAR or 7-Zip (both are available for free).