예제 #1
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(
        description="Plot a .PLY point cloud in AirSim.")

    parser.add_argument("ply_path", type=str, help="Path to a .PLY file")

    parser.add_argument("--every_k",
                        "-k",
                        type=int,
                        help="Plot one every k points")
    parser.add_argument("--flush", action="store_true", help="Flush old plots")
    parser.add_argument("--edit", action="store_true", help="Enter edit mode")

    parser.add_argument("--trajectory_path",
                        type=str,
                        help="Path to a .TRAJ, .CSV or .UTJ file")

    parser.add_argument(
        "--offset",
        type=float,
        nargs=3,
        metavar=("X", "Y", "Z"),
        help="Offset added to all points "
        " (e.g. --offset 1.2375 -6.15 7.75)",  # data_config.Uavmvs.Cidadela_Statue_Offset
    )
    parser.add_argument(
        "--scale",
        type=float,
        help="Scale added to all points "
        " (e.g. --scale 0.168)",  # data_config.Uavmvs.Cidadela_Statue_Scale
    )

    ff.add_arguments_to(parser)
    return parser
예제 #2
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(description="")

    # NOTE this is Meshroom's `StructureFromMotion` node output
    parser.add_argument("sfm", type=str, help="Path to cameras.sfm")
    parser.add_argument("--flush", action="store_true", help="Flush old plots")
    parser.add_argument("--lines",
                        action="store_true",
                        help="Plot trajectory lines")
    parser.add_argument("--axes",
                        action="store_true",
                        help="Plot transforms instead of points")
    parser.add_argument("--color",
                        "-rgb",
                        nargs=3,
                        type=float,
                        help="Plot's RGB color")
    parser.add_argument(
        "--transformation",
        "-align",
        type=str,
        help="Path to a 4x4 transformation matrix file to be loaded with numpy"
    )

    ff.add_arguments_to(parser)
    return parser
예제 #3
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(
        description="Trace a trajectory generated by uavmvs, "
        "but using different orientations at the viewpoints."
        " Works in either Multirotor or ComputerVision mode."
    )

    parser.add_argument("trajectory_path", type=str, help="Path to a .TRAJ, .CSV or .UTJ file")
    parser.add_argument("--record_path", type=str, help="Path to save the recording .TXT file")
    parser.add_argument("--norecord_path", type=str, help="Suppress the effect of --record_path (no-op)")

    parser.add_argument("--flush", action="store_true", help="Flush old plots")
    parser.add_argument("--debug", action="store_true", help="Skip capturing images but plot poses")

    parser.add_argument("--capture_dir", type=str, help="Folder where image captures will be saved")
    parser.add_argument("--prefix", type=str, help="Prefix added to output image names", default="")
    parser.add_argument("--suffix", type=str, help="Suffix added to output image names", default="")

    parser.add_argument(
        "--offset",
        type=float,
        nargs=3,
        metavar=("X", "Y", "Z"),
        help="Offset added to all points "
        " (e.g. --offset 1.2375 -6.15 7.75)",  # data_config.Uavmvs.Cidadela_Statue_Offset
    )
    parser.add_argument(
        "--scale",
        type=float,
        help="Scale added to all points "
        " (e.g. --scale 0.168)",  # data_config.Uavmvs.Cidadela_Statue_Scale
    )

    ff.add_arguments_to(parser)
    return parser
예제 #4
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(description="")

    # NOTE this is AirSim's `Recording` output
    parser.add_argument("rec", type=str, help="Path to airsim_rec.txt")
    parser.add_argument("--flush", action="store_true", help="Flush old plots")
    parser.add_argument("--lines",
                        action="store_true",
                        help="Plot trajectory lines")
    parser.add_argument("--axes",
                        action="store_true",
                        help="Plot transforms instead of points")
    parser.add_argument("--aim",
                        action="store_true",
                        help="Plot lines from eye to look target")
    parser.add_argument("--color",
                        "-rgb",
                        nargs=3,
                        type=float,
                        help="Plot's RGB color")
    parser.add_argument(
        "--transformation",
        "-align",
        type=str,
        help="Path to a 4x4 transformation matrix file to be loaded with numpy",
    )

    ff.add_arguments_to(parser)
    return parser
예제 #5
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(description="")

    parser.add_argument("viewpoints_path",
                        type=str,
                        help="Path to a viewpoints JSON file")

    ff.add_arguments_to(parser)
    return parser
예제 #6
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(description="")

    parser.add_argument("--roi", type=str, help="Load in an initial ROI")
    parser.add_argument("--clear", action="store_true", help="Clear plot lines on exit")
    parser.add_argument("--outputdir", type=str, help="Output directory to save ROI files")

    ff.add_arguments_to(parser)
    return parser
예제 #7
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(
        description=
        "This script launches a specified environment, connects to AirSim"
        ", sleeps for 1 second then resets the client. Use it for testing connection."
    )
    parser.add_argument("--skip_connect",
                        action="store_true",
                        help="Do not connect.")
    ff.add_arguments_to(parser)
    return parser
예제 #8
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(
        description="Set a specific camera orientation in ComputerVision mode."
    )
    parser.add_argument("--reset", action="store_true")
    parser.add_argument("--set", action="store_true")
    # parser.add_argument("pitch", nargs="?", default=0.0, type=float)
    # parser.add_argument("roll", nargs="?", default=0.0, type=float)
    # parser.add_argument("yaw", nargs="?", default=0.0, type=float)
    ff.add_arguments_to(parser)
    return parser
예제 #9
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(description="")

    parser.add_argument(
        "viewpoints_path",
        type=str,
        help="Path to a viewpoints file .json",
    )

    parser.add_argument(
        "--out",
        dest="output_folder",
        metavar="OUTPUT_FOLDER",
        type=str,
        default="D:\\Pictures\\Temp\\airsim",
        help="Image output folder  (default: %(default)s)",
    )

    ff.add_arguments_to(parser)
    return parser
예제 #10
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(
        description="Fly viewpoints capturing images")

    parser.add_argument(
        "viewpoints_path",
        type=str,
        help="Path to a viewpoints file .json",
    )

    parser.add_argument(
        "--out",
        dest="output_folder",
        metavar="OUTPUT_FOLDER",
        type=str,
        default="tmp",
        help="Image output folder  (default: %(default)s/)",
    )

    ff.add_arguments_to(parser)
    return parser
예제 #11
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(description="")

    parser.add_argument("roi",
                        type=str,
                        help="Path to the region of interest (ROI) file")
    parser.add_argument("--clock",
                        type=float,
                        default=1.0,
                        help="Change AirSim's clock speed")
    parser.add_argument("--teleport",
                        action="store_true",
                        help="Teleport instead of flying")
    parser.add_argument("--altitude_shift", "-alt", type=float, default=0)
    parser.add_argument("--zigzags", "-zz", type=float, default=4)
    parser.add_argument("--z_offset", type=float, default=0)
    parser.add_argument("--y_offset", type=float, default=0)
    parser.add_argument("--x_offset", type=float, default=0)

    ff.add_arguments_to(parser)
    return parser
예제 #12
0
def get_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(description="")

    parser.add_argument("roi",
                        type=str,
                        help="Path to the region of interest (ROI) file")
    parser.add_argument("--clock",
                        type=float,
                        default=1.0,
                        help="Change AirSim's clock speed")
    parser.add_argument(
        "--corner",
        action="store_true",
        help=
        "Fly to the corner closest to the drone, instead of to the ROI center")
    parser.add_argument("--teleport",
                        action="store_true",
                        help="Teleport the drone, instead of flying it")
    parser.add_argument(
        "--z_shift",
        type=float,
        default=6.5,
        help="Add an altitude shift to the zigzag path  (default: %(default)f)"
    )
    parser.add_argument(
        "--z_offset",
        type=float,
        help="Set a positive value (in meters) to offset the starting position"
    )
    parser.add_argument(
        "--y_offset",
        type=float,
        help="Set a value (in meters) to offset the starting position")
    parser.add_argument(
        "--x_offset",
        type=float,
        help="Set a value (in meters) to offset the starting position")

    ff.add_arguments_to(parser)
    return parser