Demonstrations scripts ====================== Collection of command-line scripts for demonstration purpose. !!! note *Consider that all inline commands below have to be executed at the root of ArGaze package folder.* !!! note *Use -h option to get command arguments documentation.* !!! note Each demonstration outputs metrics into *_export/records* folder. ## Random context Load **random_context.json** file to generate random gaze positions: ```shell python -m argaze load ./src/argaze/utils/demo/random_context.json ``` ## OpenCV cursor context Load **opencv_cursor_context.json** file to capture cursor pointer positions over OpenCV window: ```shell python -m argaze load ./src/argaze/utils/demo/opencv_cursor_context.json ``` ## OpenCV movie context Load **opencv_movie_context.json** file to playback movie pictures and also capture cursor pointer positions over OpenCV window: ```shell python -m argaze load ./src/argaze/utils/demo/opencv_movie_context.json ``` ## OpenCV camera context Edit **aruco_markers_pipeline.json** file as to adapt the *size* to the camera resolution and to reduce the value of the *sides_mask*. Edit **opencv_camera_context.json** file as to select camera device identifier (default is 0). Then, load **opencv_camera_context.json** file to capture camera pictures and also capture cursor pointer positions over OpenCV window: ```shell python -m argaze load ./src/argaze/utils/demo/opencv_camera_context.json ``` ## Tobii Pro Glasses 2 ### Live stream context !!! note This demonstration requires to print **A3_demo.pdf** file located in *./src/argaze/utils/demo/* folder on A3 paper sheet. Edit **tobii_live_stream_context.json** file as to select exisiting IP *address*, *project* or *participant* names and setup Tobii *configuration* parameters: ```json { "argaze.utils.contexts.TobiiProGlasses2.LiveStream" : { "name": "Tobii Pro Glasses 2 live stream", "address": "10.34.0.17", "project": "MyProject", "participant": "NewParticipant", "configuration": { "sys_ec_preset": "Indoor", "sys_sc_width": 1920, "sys_sc_height": 1080, "sys_sc_fps": 25, "sys_sc_preset": "Auto", "sys_et_freq": 50, "sys_mems_freq": 100 }, "pipeline": "aruco_markers_pipeline.json" } } ``` Then, load **tobii_live_stream_context.json** file to find ArUco marker into camera image and, project gaze positions into AOI: ```shell python -m argaze load ./src/argaze/utils/demo/tobii_live_stream_context.json ``` ### Segment playback context Edit **tobii_segment_playback_context.json** file to select an existing Tobii *segment* folder: ```json { "argaze.utils.contexts.TobiiProGlasses2.SegmentPlayback" : { "name": "Tobii Pro Glasses 2 segment playback", "segment": "record/segments/1", "pipeline": "aruco_markers_pipeline.json" } } ``` Then, load **tobii_segment_playback_context.json** file to find ArUco marker into camera image and, project gaze positions into AOI: ```shell python -m argaze load ./src/argaze/utils/demo/tobii_segment_playback_context.json ``` ## Pupil Invisible ### Live stream context !!! note This demonstration requires to print **A3_demo.pdf** file located in *./src/argaze/utils/demo/* folder on A3 paper sheet. Load **pupillabs_live_stream_context.json** file to find ArUco marker into camera image and, project gaze positions into AOI: ```shell python -m argaze load ./src/argaze/utils/demo/pupillabs_live_stream_context.json ```