Generate a Pupil-Player-compatible recording from a single, externally recorded, video file.
pip install -r requirements.txt
from calibration_choreography.screen_marker_plugin import ScreenMarkerChoreographyPlugin | |
from calibration_choreography.base_plugin import ChoreographyMode | |
class NinePointScreenMarkerChoreography(ScreenMarkerChoreographyPlugin): | |
label = "Nine-point Calibration" | |
@classmethod | |
def selection_label(cls) -> str: | |
return "Nine-point Screen Marker" |
import numpy as np | |
import pandas as pd | |
G = 9.78033 | |
IMU_TYPE = np.dtype([ | |
("time_s", "<f8"), | |
*((f"accel_{d}", "<f4") for d in "xyz"), | |
*((f"gyro_{d}", "<f4") for d in "xyz") | |
]) |
import logging | |
from pupil_detectors import Detector2D, DetectorBase, Roi | |
from pyglui import ui | |
from methods import normalize | |
from pupil_detector_plugins import available_detector_plugins | |
from pupil_detector_plugins.detector_base_plugin import ( | |
PropertyProxy, |
import logging | |
import numpy as np | |
from pupil_detectors import DetectorBase | |
from pyglui import ui | |
from methods import normalize | |
from pupil_detector_plugins.detector_base_plugin import PupilDetectorPlugin | |
from pupil_detector_plugins.visualizer_2d import draw_pupil_outline |
""" | |
(*)~--------------------------------------------------------------------------- | |
Pupil - eye tracking platform | |
Copyright (C) 2012-2020 Pupil Labs | |
Distributed under the terms of the GNU | |
Lesser General Public License (LGPL v3.0). | |
See COPYING and COPYING.LESSER for license details. | |
---------------------------------------------------------------------------~(*) | |
""" |
from pyglui import ui | |
import file_methods as fm | |
import player_methods as pm | |
from gaze_producer.gaze_producer_base import GazeProducerBase | |
from methods import denormalize | |
from player_methods import transparent_circle | |
class GazeFromRecordingWithOffsetCorrection(GazeProducerBase): |
Install instructions: https://docs.pupil-labs.com/developer/core/plugin-api/#adding-a-plugin
Once installed successfully, go to the Calibration
menu and select the corresponding
Dual-monocular
gazer from the Gaze Mapping
selector.
Proceed as usual.
from annotations import Annotation_Capture | |
class No_Log_Annotation_Capture(Annotation_Capture): | |
def recent_events(self, events): | |
recent_annotation_data = [] | |
while self.annotation_sub.new_data: | |
topic, annotation_datum = self.annotation_sub.recv() | |
recent_annotation_data.append(annotation_datum) | |
events["annotation"] = recent_annotation_data |