Exemple #1
0
def truth(basedir):
    """
    Returns the ground truth, interpolated and everything, for a given
    data directory
    """
    positions_file = os.path.join(basedir, "positions.npy")
    positions = np.load(positions_file)

    cf = pickle.load(open(os.path.join(basedir, "config.pickle")))

    invalid_sep = measure.detect_invalid_sep(positions)
    positions_cleaned = positions.copy()
    positions_cleaned[invalid_sep] = ((np.nan, np.nan), 
                                      (np.nan, np.nan), np.nan, np.nan)
    
    positions_interp, missing = measure.interpolate(positions)
    pci, cleaned_missing = measure.interpolate(positions_cleaned)

    # extract out the fields that matter
    d = np.zeros(len(pci), dtype=DTYPE_POS_CONF)
    d['x'] = pci['x']
    d['y'] = pci['y']
    d['confidence'] = 1.0

    return d
Exemple #2
0
def truth(basedir):
    """
    Returns the ground truth, interpolated and everything, for a given
    data directory
    """
    positions_file = os.path.join(basedir, "positions.npy")
    positions = np.load(positions_file)

    cf = pickle.load(open(os.path.join(basedir, "config.pickle")))

    invalid_sep = measure.detect_invalid_sep(positions)
    positions_cleaned = positions.copy()
    positions_cleaned[invalid_sep] = ((np.nan, np.nan), (np.nan, np.nan),
                                      np.nan, np.nan)

    positions_interp, missing = measure.interpolate(positions)
    pci, cleaned_missing = measure.interpolate(positions_cleaned)

    # extract out the fields that matter
    d = np.zeros(len(pci), dtype=DTYPE_POS_CONF)
    d['x'] = pci['x']
    d['y'] = pci['y']
    d['confidence'] = 1.0

    return d
                        r"\1.pickle"), 
           os.path.join(SYNTH_DIR, "fl",  
                        r"\1.avi")]
            )
def fl_to_sim(positions_file, (out_pickle, out_avi)):
    print "THIS IS", positions_file
    positions = np.load(positions_file)
    # frames thing
    directory = positions_file[:-len('positions.npy')]
    cf = pickle.load(open(os.path.join(directory, "config.pickle")))
    start_f = cf['start_f']
    # open the frame tarball
    tf = tarfile.open(os.path.join(directory, "%08d.tar.gz" % start_f),
                                   "r:gz")
    
    positions_interp, missing = measure.interpolate(positions)
    pos_derived = measure.compute_derived(positions_interp)
    

    N = len(positions)
    state = np.zeros(N, dtype=util.DTYPE_STATE)
    state['x'] = positions_interp['x']
    state['y'] = positions_interp['y']
    state['phi'] = pos_derived['phi']
    state['theta'] = np.pi/2.0

    env = util.Environmentz((1.5, 2), (240, 320))

    images = simulate.render(env, state[:100])
    NOISE = 0
@transform(os.path.join(DATA_DIR, "fl/*/positions.npy"),
           regex(r".+/(.+)/positions.npy$"), [
               os.path.join(SYNTH_DIR, "fl", r"\1.pickle"),
               os.path.join(SYNTH_DIR, "fl", r"\1.avi")
           ])
def fl_to_sim(positions_file, (out_pickle, out_avi)):
    print "THIS IS", positions_file
    positions = np.load(positions_file)
    # frames thing
    directory = positions_file[:-len('positions.npy')]
    cf = pickle.load(open(os.path.join(directory, "config.pickle")))
    start_f = cf['start_f']
    # open the frame tarball
    tf = tarfile.open(os.path.join(directory, "%08d.tar.gz" % start_f), "r:gz")

    positions_interp, missing = measure.interpolate(positions)
    pos_derived = measure.compute_derived(positions_interp)

    N = len(positions)
    state = np.zeros(N, dtype=util.DTYPE_STATE)
    state['x'] = positions_interp['x']
    state['y'] = positions_interp['y']
    state['phi'] = pos_derived['phi']
    state['theta'] = np.pi / 2.0

    env = util.Environmentz((1.5, 2), (240, 320))

    images = simulate.render(env, state[:100])
    NOISE = 0

    new_images = simulate.add_noise_background(images, NOISE, NOISE, [])
           frame_start, frame_end):
    np.random.seed(0)
    
    cf = pickle.load(open(epoch_config_filename, 'r'))
    region = pickle.load(open(region_filename, 'r'))
    
    env = util.Environmentz(cf['field_dim_m'], 
                            cf['frame_dim_pix'])
    led_params = pickle.load(open(led_params_filename, 'r'))

    eo_params = measure.led_params_to_EO(cf, led_params)
    if frame_end > cf['end_f']:
        frame_end = cf['end_f']

    truth = np.load(os.path.join(epoch_dir, 'positions.npy'))
    truth_interp, missing = measure.interpolate(truth)
    derived_truth = measure.compute_derived(truth_interp, 
                                            T_DELTA)


    frame_pos = np.arange(frame_start, frame_end)
    # load frames
    frames = organizedata.get_frames(epoch_dir, frame_pos)

    FRAMEN = len(frames)

    coordinates = []
    
    regions = np.zeros((FRAMEN, frames[0].shape[0], frames[0].shape[1]), 
                       dtype=np.uint8)
    point_est_track_data = []
Exemple #6
0
    led_params_filename = os.path.join(epoch_dir, "led.params.pickle")

    cf = pickle.load(open(epoch_config_filename))
    truth = np.load(os.path.join(epoch_dir, 'positions.npy'))
    env = util.Environmentz(cf['field_dim_m'], cf['frame_dim_pix'])
    led_params = pickle.load(open(led_params_filename, 'r'))

    eoparams = enlarge_sep(measure.led_params_to_EO(cf, led_params))

    tr = TemplateObj()
    tr.set_params(*eoparams)

    led_sep_pix = eoparams[0]
    led_sep_m = led_sep_pix / env.gc.pix_per_meter[0]
    truth_interp, missing = measure.interpolate(truth)

    STATEVARS = ['x', 'y', 'xdot', 'ydot', 'phi', 'theta']
    # convert types
    vals = dict([(x, []) for x in STATEVARS])
    for p in particles:
        for v in STATEVARS:
            vals[v].append([s[v] for s in p])
    for v in STATEVARS:
        if v == 'phi':
            vals[v] = np.array(vals[v]) % (2 * np.pi)
        else:
            vals[v] = np.array(vals[v])

    vals_dict = {}