def plot_landing_demo_trajectory(movie_dataset, filename=None): movieinfo = movie_dataset.movies['20101110_C001H001S0038'] nudge = [0, -.003] # for SA1 data trajec = movieinfo.trajec trajec.key = movieinfo.id trajec.frames = np.arange(fa.get_frame_at_distance(trajec, 0.08), trajec.frame_of_landing).tolist() fa.prep_trajectory(trajec) plot_demo_trajectory(movieinfo, nudge, filename=filename) legim = movieinfo.frames[movieinfo.legextensionrange[0] - movieinfo.firstframe_ofinterest + 50].uimg plt.imsave('legextensionimg', legim, cmap=plt.get_cmap('gray'))
def plot_flyby_demo_trajectory(movie_dataset, filename=None): movieinfo = movie_dataset.movies['20101101_C001H001S0024'] nudge = [0, -.001] # for SA1 data trajec = movieinfo.trajec trajec.key = movieinfo.id frame_nearest_to_post = np.argmin(trajec.dist_to_stim_r) fa.calc_radius_at_nearest(trajec) frames = np.arange(0, frame_nearest_to_post).tolist() frame_at_distance = fa.get_frame_at_distance(trajec, 0.08, singleframe=True, frames=frames) last_frame = np.min( [frame_nearest_to_post+20, len(trajec.speed)-1]) trajec.frames_of_flyby = np.arange(frame_at_distance, last_frame).tolist() trajec.frames = trajec.frames_of_flyby fa.prep_trajectory(trajec) plot_demo_trajectory(movieinfo, nudge, filename=filename)
def make_crash_dataset(movie_dataset, example_dataset): dataset_crash = ffa.Dataset(like=example_dataset) keys = movie_dataset.get_movie_keys(behavior='landing', crash=True) for key in keys: movie = movie_dataset.movies[key] trajec = movie.trajec trajec.behavior = movie.behavior trajec.key = key fa.calc_frame_of_landing(trajec) fa.normalize_dist_to_stim_r(trajec) d = np.max(np.max(trajec.dist_to_stim_r_normed, 0.08)) trajec.frames = np.arange(fa.get_frame_at_distance(trajec, d), trajec.frame_of_landing).tolist() fa.prep_trajectory(trajec) dataset_crash.trajecs.setdefault(key, trajec) fa.prep_dataset(dataset_crash) return dataset_crash
def prep_movie_trajec(movieinfo): trajec = movieinfo.trajec trajec.key = movieinfo.id trajec.frames = np.arange(fa.get_frame_at_distance(trajec, 0.08), trajec.frame_of_landing).tolist() fa.prep_trajectory(trajec)