def parse_args():
    """
    Parse input arguments
    """
    parser = argparse.ArgumentParser(description='Test a Fast R-CNN network')
    parser.add_argument('vid_file')
    parser.add_argument('box_file')
    parser.add_argument('annot_file', default=None,
                        help='Ground truth annotation file. [None]')
    parser.add_argument('save_file', help='Save zip file')
    parser.add_argument('--job', dest='job_id', help='Job slot, GPU ID + 1. [1]',
                        default=1, type=int)
    parser.add_argument('--length', type=int, default=20,
                        help='Propagation length. [20]')
    parser.add_argument('--window', type=int, default=5,
                        help='Prediction window. [5]')
    parser.add_argument('--sample_rate', type=int, default=1,
                        help='Temporal subsampling rate. [1]')
    parser.add_argument('--offset', type=int, default=0,
                        help='Offset of sampling. [0]')
    parser.add_argument('--overlap', type=float, default=0.5,
                        help='GT overlap threshold for tracking. [0.5]')
    parser.add_argument('--wait', dest='wait',
                        help='wait until net file exists',
                        default=True, type=bool)
    parser.set_defaults(vis=False, zip=False, keep_feat=False)

    if len(sys.argv) == 1:
        parser.print_help()
        sys.exit(1)

    args = parser.parse_args()
    return args