Пример #1
0

def compute_errors(known):
    for i, p in known.iterrows():
        lat_err = p.modern_lat - p.pred_lat
        lon_err = p.modern_lon - p.pred_lon
        sq_err = lat_err**2 + lon_err**2
        modern_coords = (p.modern_lat, p.modern_lon)
        pred_coords = (p.pred_lat, p.pred_lon)
        dist_err = vincenty(modern_coords, pred_coords).miles
        known.loc[i, 'lat_err'] = lat_err
        known.loc[i, 'lon_err'] = lon_err
        known.loc[i, 'sq_err'] = sq_err
        known.loc[i, 'dist_err'] = dist_err


def main(filename, model):
    places = common.read_places()
    known, unknown = common.split_places(places)
    validate_each(known, model)
    compute_errors(known)
    known.to_csv(filename, encoding='cp1252')


if __name__ == '__main__':
    modelname = sys.argv[1]
    model = common.construct_model(modelname)
    filename = os.path.join(common.PTOL_HOME, 'Data',
                            'validate_%s.csv' % modelname)
    main(filename, model)
Пример #2
0
 def _construct_and_fill_model(self):
     super()._construct_and_fill_model()
     self.device_ids = sly.env.remap_gpu_devices([self._config[GPU_DEVICE]])
     self.model = construct_model(sly.TaskPaths.MODEL_DIR)
     sly.logger.info('Weights are loaded.')
Пример #3
0
    title = ' '.join(os.path.basename(filename)[0:-4].split('_'))
    common.write_kml_file(filename, None, known, unknown)
    common.write_csv_file(filename[0:-4] + '.csv', known, unknown)
    common.write_map_file(filename[0:-4] + '.pdf', known, unknown, 30, 24, 300, 'ptol_name', title)
    common.write_map_file(filename[0:-4] + '.png', known, unknown, 30, 24, 300, 'ptol_name', title)

if __name__ == '__main__':
    parser = argparse.ArgumentParser(
            description='Predict unknown Ptolemy places.')
    parser.add_argument('--model', help='prediction model to use')
    parser.add_argument('--sgdb', help='read from sgdb with given prefix')
    parser.add_argument('--xlsx', help='xlsx to read from instead of sgdb')
    parser.add_argument('--output', help='output filename')

    args = parser.parse_args()
    model = common.construct_model(args.model)

    if args.sgdb:
        places = common.read_places(args.sgdb)
    elif args.xlsx:
        places = common.read_places_xlsx(args.xlsx)
    else:
        sys.stderr.write('must specify one of --sgdb or --xlsx')
        exit(1)

    if args.output:
        output = args.output
    else:
        output = os.path.join(common.PTOL_HOME, 'Data', '%s.kml' % args.model)

    main(output, model, places)
Пример #4
0
    common.write_map_file(filename[0:-4] + '.pdf', known, unknown, 30, 24, 300,
                          'ptol_name', title)
    common.write_map_file(filename[0:-4] + '.png', known, unknown, 30, 24, 300,
                          'ptol_name', title)


if __name__ == '__main__':
    parser = argparse.ArgumentParser(
        description='Predict unknown Ptolemy places.')
    parser.add_argument('--model', help='prediction model to use')
    parser.add_argument('--sgdb', help='read from sgdb with given prefix')
    parser.add_argument('--xlsx', help='xlsx to read from instead of sgdb')
    parser.add_argument('--output', help='output filename')

    args = parser.parse_args()
    model = common.construct_model(args.model)

    if args.sgdb:
        places = common.read_places(args.sgdb)
    elif args.xlsx:
        places = common.read_places_xlsx(args.xlsx)
    else:
        sys.stderr.write('must specify one of --sgdb or --xlsx')
        exit(1)

    if args.output:
        output = args.output
    else:
        output = os.path.join(common.PTOL_HOME, 'Data', '%s.kml' % args.model)

    main(output, model, places)
Пример #5
0
        known.loc[known.iloc[test,:].index, 'pred_lon'] = testy[0][1]


def compute_errors(known):
    for i, p in known.iterrows():
        lat_err = p.modern_lat - p.pred_lat
        lon_err = p.modern_lon - p.pred_lon
        sq_err = lat_err ** 2 + lon_err ** 2
        modern_coords = (p.modern_lat, p.modern_lon)
        pred_coords = (p.pred_lat, p.pred_lon)
        dist_err = vincenty(modern_coords, pred_coords).miles
        known.loc[i, 'lat_err'] = lat_err
        known.loc[i, 'lon_err'] = lon_err
        known.loc[i, 'sq_err'] = sq_err
        known.loc[i, 'dist_err'] = dist_err


def main(filename, model):
    places = common.read_places()
    known, unknown = common.split_places(places)
    validate_each(known, model)
    compute_errors(known)
    known.to_csv(filename, encoding='cp1252')


if __name__ == '__main__':
    modelname = sys.argv[1]
    model = common.construct_model(modelname)
    filename = os.path.join(common.PTOL_HOME, 'Data', 'validate_%s.csv' % modelname)
    main(filename, model)