Ejemplo n.º 1
0
def loadData(downsample=1.0):
    '''
    '''
    dat = np.genfromtxt('dat/Intensity.csv', delimiter = ',', 
        dtype="f8,f8,f8,f8,f8,f8,f8,S20,f8,f8",
        names=True, skip_header=0)

    intensity = {}
    meta = {}

    meta['model'] = dat['model'][0]
    meta['iterations'] = int(dat['iterations'][0])
    meta['samples'] = int(dat.shape[0] / meta['iterations'])

    # Preallocate memory:
    intensity['rawintensity'] = np.zeros((meta['iterations'],
                                    meta['samples'])) 
    intensity['intensity'] = np.zeros((meta['iterations'], 
                                    meta['samples']))

    meta['lens_accom'] = np.zeros(meta['iterations'])
    meta['pupil_size_%'] = np.zeros(meta['iterations'])
    meta['off_axis_*'] = np.zeros(meta['iterations'])
    meta['object_distance'] = np.zeros(meta['iterations'])
    meta['age_&'] = np.zeros(meta['iterations'])
    meta['eye_length_%'] = np.zeros(meta['iterations'])

    for i in range(0, meta['iterations']):
        ind1 = i * meta['samples']
        ind2 = (i + 1) * meta['samples']

        intensity['rawintensity'][i,:] = dat['encircled_intensity'][ind1:ind2]
        intensity['intensity'][i,:] = (dat['encircled_intensity'][ind1:ind2]
                             / np.max(intensity['rawintensity'][i,:]))

        meta['lens_accom'][i] = dat['lens_focus_D'][ind1]
        meta['pupil_size_%'][i] = dat['pupil_size_mm'][ind1]
        meta['off_axis_*'][i] = dat['offaxis_deg'][ind1]
        meta['object_distance'][i] = dat['obj_distance_mm'][ind1]
        meta['age_&'][i] = dat['age_y'][ind1]
        meta['eye_length_%'][i] = dat['axial_len_mm'][ind1]

    # set up parameters of the eye:
    xvals = dat['radius_mm'][0: meta['samples']]

    # retinal image, here is radius of image area
    meta['retImg'] = np.max(xvals) # 1/2 size of image in mm 
    radians = 2 * np.arctan(meta['retImg'] / (meta['eye_length_%'][0]))
    meta['deg'] = dm.rad2deg(radians)
    meta['mm/deg'] = meta['retImg'] * 2 / meta['deg']
    meta['xvals'] = xvals

    variable = findDependentVar(meta)
    printParams(meta)

    return intensity, meta
Ejemplo n.º 2
0
def genMeta():
    '''Just temporary.
    '''
    # get from ray tracer eventually
    _meta = {}
    _meta['samples'] = 399
    _meta['retImg'] = 0.1995 #this is only radius, D = 2x 0.1995
    _meta['eye_length'] = 23.92
    _meta['pupil_size'] = 3
    radians = 2 * np.arctan(_meta['retImg'] / _meta['eye_length'])
    _meta['deg'] = rad2deg(radians)
    _meta['mm/deg'] = 2 * _meta['retImg'] / _meta['deg']

    cycles = np.arange(0, _meta['samples']) / 2.0
    cpd = (cycles / _meta['retImg']) * _meta['mm/deg'] 

    return _meta, cpd