object_d = detector.update(ret)
            avaliables = detector.availiable_obejct_keys
            if pressed_key in avaliables:
                target = avaliables[pressed_key]
            elif pressed_key == ord("q"):
                target = None
            elif target in object_d.keys():
                pass
            else:
                target = None

            if args.save:
                save_data.append(copy.deepcopy(object_d))
            if args.render:
                pressed_key = v.draw(ret["map_n"],
                                     objects=object_d,
                                     target=target
                                     or list(avaliables.values()))
                if pressed_key == ESC:
                    break

    if args.save:
        import pickle

        try:
            pickle.dump(save_data, open(args.path.replace(".h5", ".pkl"),
                                        "wb"))
        except Exception as e:
            os.remove(args.path.replace(".h5", ".pkl"))
            raise e
Exemple #2
0
    setup_logger()

    data = read_data(args.path)
    lidar_data = data['lidar_data']
    extra_data = data['extra_data']

    map = LidarMap(lidar_config)
    v = Visualizer("map_n", lidar_config["map_size"], zoom=5)
    fpstimer = FPSTimer()

    save_data = []
    for l, e in zip(lidar_data, extra_data):
        with fpstimer:
            ret = map.update(l, e)
            if args.save:
                save_data.append(ret)
            if args.render:
                stop = v.draw(ret["map_n"])
                if stop:
                    break

    if args.save:
        import pickle

        try:
            pickle.dump(save_data, open(args.path.replace(".h5", ".pkl"),
                                        "wb"))
        except Exception as e:
            os.remove(args.path.replace(".h5", ".pkl"))
            raise e