1234567891011121314151617181920212223242526 |
- import simianpy as simi #pip install git+https://github.com/jselvan/simianpy.git@0.1.4
- import matplotlib.pyplot as plt
- import pandas as pd
- hdf_path = 'Data.h5'
- hdf_kwargs = dict(path_or_buf=hdf_path, complib='blosc:lz4', complevel=9)
- eye_data_block = pd.read_hdf(hdf_path, 'ContinuousEyeDataVideo')
- eye_data_block_fix = pd.read_hdf(hdf_path, 'ContinuousEyeDataFixationSlide')
- detect_saccades_kwargs = dict(velocity_threshold=30,duration_threshold=pd.offsets.Milli(10))
- detect_fixations_kwargs = dict(velocity_threshold=10,duration_threshold=pd.offsets.Milli(50),Filter=simi.signal.Smooth(11,'hamming'))
- video_keys = ['monkey','injection','condition','front','scrambled','treatment','video_file','block']
- fixslide_keys = ['monkey','injection','treatment','fixation_slide','block']
- saccade_data = pd.concat({idx: simi.analysis.DetectSaccades(data.reset_index().set_index('time').loc[:, ['eyeh','eyev']],**detect_saccades_kwargs) for idx, data in eye_data_block.groupby(video_keys)},names=video_keys)
- saccade_data = saccade_data.query('peak_radial_velocity<1500')
- saccade_data.to_hdf(key='saccade_data', **hdf_kwargs)
- fixslide_saccade_data = pd.concat({idx: simi.analysis.DetectSaccades(data.reset_index().set_index('time').loc[:, ['eyeh','eyev']],**detect_saccades_kwargs) for idx, data in eye_data_block_fix.groupby(fixslide_keys)},names=fixslide_keys)
- fixslide_saccade_data = fixslide_saccade_data.query('peak_radial_velocity<1500')
- fixslide_saccade_data.to_hdf(key='fixslide_saccade_data', **hdf_kwargs)
- fixation_data = pd.concat({idx: simi.analysis.DetectFixations(data.reset_index().set_index('time').loc[:, ['eyeh','eyev']],**detect_fixations_kwargs) for idx, data in eye_data_block.groupby(video_keys)},names=video_keys)
- fixation_data.to_hdf(key='fixation_data', **hdf_kwargs)
- fixslide_fixation_data = pd.concat({idx: simi.analysis.DetectFixations(data.reset_index().set_index('time').loc[:, ['eyeh','eyev']],**detect_fixations_kwargs) for idx, data in eye_data_block_fix.groupby(fixslide_keys)},names=fixslide_keys)
- fixslide_fixation_data.to_hdf(key='fixslide_fixation_data', **hdf_kwargs)
|