예제 #1
0
def init():
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument('--model',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors',
                        type=str,
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults("anchors_path"))

    parser.add_argument('--classes',
                        type=str,
                        help='path to class definitions, default ' +
                        YOLO.get_defaults("classes_path"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))

    parser.add_argument(
        '--image',
        default=False,
        action="store_true",
        help='Image detection mode, will ignore all positional arguments')
    '''
    Command line positional arguments -- for video detection mode
    '''
    parser.add_argument("--input",
                        nargs='?',
                        type=str,
                        required=False,
                        default='./path2your_video',
                        help="Video input path")

    parser.add_argument("--output",
                        nargs='?',
                        type=str,
                        default="",
                        help="[Optional] Video output path")
    return parser
예제 #2
0
def start(path, file_extension, code):
    YOLO.get_defaults("model_data/model1-tiny_last_weights.h5")
    YOLO.get_defaults("tiny_yolo_anchors.txt")
    YOLO.get_defaults("coco_classes.txt")
    YOLO.get_defaults("gpu_num")

    if file_extension == ".jpg" or file_extension == ".png" or file_extension == ".jpeg" or file_extension == ".JPG" or file_extension == ".JPEG":
        """
        Image detection mode, disregard any remaining command line arguments
        """
        print("Image detection mode")

        print('img\nimg\nimg\nimg\nimg\nimg\nimg\nimg\nimg\n')

        path_img, predicted_class, score_list, gesture, gesture_score = detect_img(
            YOLO(), path, code)
        return path_img, predicted_class, score_list, gesture, gesture_score
    elif "input" in FLAGS:
        print(FLAGS.input, 'vid\nvid\nvid\nvid\nvid\nvid\nvid\nvid\nvid\n')
        detect_video(YOLO(**vars(FLAGS)), FLAGS.input, FLAGS.output)
    else:
        print(
            "Must specify at least video_input_path.  See usage with --help.")
예제 #3
0
    n = len(annotation_lines)
    if n == 0 or batch_size <= 0: return None
    return data_generator(annotation_lines, batch_size, input_shape, anchors,
                          num_classes)


if __name__ == '__main__':

    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)

    # Command line options

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))

    parser.add_argument('--class_path',
                        type=str,
                        help='Text file with class names one per line.')

    parser.add_argument(
        '--data_path',
        type=str,
        help='Azure ML path to Storage passed from datastore mount in driver.')

    parser.add_argument(
        '--data_dir',
        type=str,
        default='data',
        help=
예제 #4
0
        # r_image.show()
    yolo.close_session()


FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument('--model',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors',
                        type=str,
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults("anchors_path"))

    parser.add_argument('--classes',
                        type=str,
                        help='path to class definitions, default ' +
                        YOLO.get_defaults("classes_path"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))
예제 #5
0
                           num_classes):
    n = len(annotation_lines)
    if n == 0 or batch_size <= 0: return None
    return data_generator(annotation_lines, batch_size, input_shape, anchors,
                          num_classes)


if __name__ == '__main__':

    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)

    # Command line options
    parser.add_argument('--model',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))

    parser.add_argument('--annot_path',
                        type=str,
                        help='Annotation file with image location and bboxes')

    parser.add_argument('--class_path',
                        type=str,
                        help='Text file with class names one per line')

    parser.add_argument(
예제 #6
0
        r_image = yolo.detect_image(image)
        r_image.save(nom)
        j=j+1
    yolo.close_session()



FLAGS = None

if __name__ == '__main__':

    # class YOLO defines the default value, so suppress any default here

    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    parser.add_argument('--model', type=str,default='weights_yolo_train/trained_weights_stage_1.h5',
                        help='path to model weight file, default ' + YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors', type=str,default='model_data/yolo_anchors.txt',
                        help='path to anchor definitions, default '
                        + YOLO.get_defaults('anchors_path'))

    parser.add_argument('--classes', type=str,default='model_data/key_classes.txt',
                        help='path to class definitions, default '
                        + YOLO.get_defaults('classes_path'))

    parser.add_argument('--gpu_num', type=int,
                        help='Number of GPU to use, default '
                        + str(YOLO.get_defaults('gpu_num')))

    parser.add_argument('--image', default=False, action='store_true',
                        help='Image detection mode, will ignore all positional arguments'
예제 #7
0
def main():
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(
        argument_default=argparse.SUPPRESS,
        description=
        'Demo of multi object tracking (MOT) with YOLO detection model')
    '''
    MOT model options
    '''
    parser.add_argument(
        '--tracking_model_type',
        type=str,
        default="sort",
        choices=['sort', 'deepsort'],
        help="MOT model type (sort/deepsort), default=%(default)s")

    parser.add_argument(
        '--tracking_classes_path',
        type=str,
        required=False,
        help=
        '[Optional] Path to DeepSORT tracking class definitions, will track all detect classes if None, default=%(default)s',
        default=None)

    parser.add_argument(
        '--deepsort_model_path',
        type=str,
        required=False,
        default="tracking/model/mars-small128.pb",
        help="[Optional] DeepSORT encoder model path, default=%(default)s")
    '''
    YOLO model options
    '''
    parser.add_argument(
        '--model_type',
        type=str,
        help=
        'YOLO model type: yolo3_mobilenet_lite/tiny_yolo3_mobilenet/yolo3_darknet/..., default '
        + YOLO.get_defaults("model_type"))

    parser.add_argument('--weights_path',
                        type=str,
                        help='path to YOLO model weight file, default ' +
                        YOLO.get_defaults("weights_path"))

    parser.add_argument(
        '--pruning_model',
        default=False,
        action="store_true",
        help='Whether using a pruning YOLO model/weights file, default ' +
        str(YOLO.get_defaults("pruning_model")))

    parser.add_argument('--anchors_path',
                        type=str,
                        help='path to YOLO anchor definitions, default ' +
                        YOLO.get_defaults("anchors_path"))

    parser.add_argument(
        '--classes_path',
        type=str,
        help='path to YOLO detection class definitions, default ' +
        YOLO.get_defaults("classes_path"))

    parser.add_argument(
        '--model_image_size',
        type=str,
        help='YOLO detection model input size as <height>x<width>, default ' +
        str(YOLO.get_defaults("model_image_size")[0]) + 'x' +
        str(YOLO.get_defaults("model_image_size")[1]),
        default=str(YOLO.get_defaults("model_image_size")[0]) + 'x' +
        str(YOLO.get_defaults("model_image_size")[1]))

    parser.add_argument(
        '--score',
        type=float,
        help='score threshold for YOLO detection model, default ' +
        str(YOLO.get_defaults("score")))

    parser.add_argument('--iou',
                        type=float,
                        help='iou threshold for YOLO detection NMS, default ' +
                        str(YOLO.get_defaults("iou")))

    parser.add_argument(
        '--elim_grid_sense',
        default=False,
        action="store_true",
        help="Whether to apply eliminate grid sensitivity in YOLO, default " +
        str(YOLO.get_defaults("elim_grid_sense")))

    #parser.add_argument(
    #'--gpu_num', type=int,
    #help='Number of GPU to use, default ' + str(YOLO.get_defaults("gpu_num"))
    #)
    '''
    Command line positional arguments -- for video detection mode
    '''
    parser.add_argument("--input",
                        nargs='?',
                        type=str,
                        required=False,
                        default='./path2your_video',
                        help="Input video file or images folder path")

    parser.add_argument("--output",
                        nargs='?',
                        type=str,
                        default="",
                        help="[Optional] output video file path")

    args = parser.parse_args()
    # param parse
    if args.model_image_size:
        height, width = args.model_image_size.split('x')
        args.model_image_size = (int(height), int(width))
        assert (args.model_image_size[0] % 32 == 0
                and args.model_image_size[1] % 32
                == 0), 'model_image_size should be multiples of 32'

    # get YOLO wrapped detection object
    yolo = YOLO_np(**vars(args))

    # choose different MOT model
    if args.tracking_model_type == 'sort':
        sort(yolo, args)
    elif args.tracking_model_type == 'deepsort':
        deepsort(yolo, args)
    else:
        raise ValueError('Unsupported MOT model')
예제 #8
0
            save_file_Path = pathlib.Path("./out") / filepath[len(images_dirpath)+1:]
            save_file_Path.parent.mkdir(mode=0o755, parents=True, exist_ok=True)
            r_image.save(str(save_file_Path), "JPEG")
    yolo.close_session()

FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument(
        '--model_path', type=str,
        help='path to model weight file, default ' + YOLO.get_defaults("model_path")
    )

    parser.add_argument(
        '--anchors_path', type=str,
        help='path to anchor definitions, default ' + YOLO.get_defaults("anchors_path")
    )

    parser.add_argument(
        '--classes_path', type=str,
        help='path to class definitions, default ' + YOLO.get_defaults("classes_path")
    )

    parser.add_argument(
        '--gpu_num', type=int,
        help='Number of GPU to use, default ' + str(YOLO.get_defaults("gpu_num"))
예제 #9
0
        else:
            r_image = yolo.detect_image(image)
            r_image.show()
    yolo.close_session()

FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument(
        '--model', type=str,
        help='path to model weight file, default ' + YOLO.get_defaults("/content/gdrive/My Drive/project_folder/keras-yolo3/model_data/yolo.h5")
    )

    parser.add_argument(
        '--anchors', type=str,
        help='path to anchor definitions, default ' + YOLO.get_defaults("/content/gdrive/My Drive/project_folder/keras-yolo3/model_data/yolo_anchors.txt")
    )

    parser.add_argument(
        '--classes', type=str,
        help='path to class definitions, default ' + YOLO.get_defaults("/content/gdrive/My Drive/project_folder/keras-yolo3/model_data/coco_classes.txt")
    )

    parser.add_argument(
        '--gpu_num', type=int,
        help='Number of GPU to use, default ' + str(YOLO.get_defaults("gpu_num"))
예제 #10
0
def start(path, file_extension, code):
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument(
        '--model',
        type=str,
        help='path to model weight file, default ' +
        YOLO.get_defaults("model_data/model1-tiny_last_weights.h5"))

    parser.add_argument('--anchors',
                        type=str,
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults("tiny_yolo_anchors.txt"))

    parser.add_argument('--classes',
                        type=str,
                        help='path to class definitions, default ' +
                        YOLO.get_defaults("coco_classes.txt"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))

    parser.add_argument(
        '--image',
        default=False,
        action="store_true",
        help='Image detection mode, will ignore all positional arguments')
    '''
    Command line positional arguments -- for video detection mode
    '''
    parser.add_argument("--input",
                        nargs='?',
                        type=str,
                        required=False,
                        default=path,
                        help="Video input path")

    parser.add_argument("--output",
                        nargs='?',
                        type=str,
                        default="./output",
                        help="[Optional] Video output path")

    FLAGS = parser.parse_args()
    #print(FLAGS.input.shape)
    if file_extension == ".jpg" or file_extension == ".png" or file_extension == ".jpeg" or file_extension == ".JPG" or file_extension == ".JPEG":
        """
        Image detection mode, disregard any remaining command line arguments
        """
        print("Image detection mode")

        print('img\nimg\nimg\nimg\nimg\nimg\nimg\nimg\nimg\n')
        print(" Ignoring remaining command line arguments: " + FLAGS.input +
              "," + FLAGS.output)
        path_img, predicted_class, score_list, gesture, gesture_score = detect_img(
            YOLO(**vars(FLAGS)), path, code)
        return path_img, predicted_class, score_list, gesture, gesture_score
    elif "input" in FLAGS:
        print(FLAGS.input, 'vid\nvid\nvid\nvid\nvid\nvid\nvid\nvid\nvid\n')
        detect_video(YOLO(**vars(FLAGS)), FLAGS.input, FLAGS.output)
    else:
        print(
            "Must specify at least video_input_path.  See usage with --help.")
예제 #11
0
    for f in os.listdir('all_detections'):
        os.remove(os.path.join('all_detections', f))

    #for f in os.listdir('violations'):
    #os.remove(os.path.join('violations',f))

    for f in os.listdir('helmet_detections'):
        os.remove(os.path.join('helmet_detections', f))
    '''
    Command line options
    '''
    parser.add_argument('--model',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors',
                        type=str,
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults("anchors_path"))

    parser.add_argument('--classes',
                        type=str,
                        help='path to class definitions, default ' +
                        YOLO.get_defaults("classes_path"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))
예제 #12
0
            print('Open Error! Try again!')
            continue
        else:
            r_image = yolo.detect_image(image)
            r_image.show()
    yolo.close_session()


FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here

    FLAGS = {
        'model': "./model_data/yolo.h5",
        'anchors': YOLO.get_defaults("anchors_paths"),
        'classes': YOLO.get_defaults("classes_path"),
        'gpu_num': YOLO.get_defaults("gpu_num"),
        'image': False,
        'input': "./data/visor_video.wmv",
        'output': "./video_output.wmv"
    }

    if FLAGS['image']:
        """
        Image detection mode, disregard any remaining command line arguments
        """
        print("Image detection mode")
        if "input" in FLAGS:
            print(" Ignoring remaining command line arguments: " +
                  FLAGS['input'] + "," + FLAGS['output'])
예제 #13
0
def parse_args():

    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)

    parser.add_argument('--model_path',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors_path',
                        type=str,
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults("anchors_path"))

    parser.add_argument('--classes_path',
                        type=str,
                        help='path to class definitions, default ' +
                        YOLO.get_defaults("classes_path"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))

    parser.add_argument('--score',
                        type=float,
                        help='Score to use, default ' +
                        str(YOLO.get_defaults("score")))

    parser.add_argument('--input_path',
                        nargs='?',
                        type=str,
                        required=True,
                        default='',
                        help='Input dataset path')

    parser.add_argument('--output_path',
                        nargs='?',
                        type=str,
                        required=True,
                        default='',
                        help='Output dataset path')

    parser.add_argument('--class_name',
                        nargs='?',
                        type=str,
                        required=True,
                        default='',
                        help='Name of the class used to create dataset')

    parser.add_argument('--width',
                        nargs='?',
                        type=int,
                        required=True,
                        help='With of the output images')

    parser.add_argument('--height',
                        nargs='?',
                        type=int,
                        required=True,
                        help='Height of the output images')

    return parser.parse_args()
예제 #14
0
    ]
    if box_strings:
        print(' '.join(box_strings))
    print('\n')


if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument('--model',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--score',
                        type=float,
                        help='score (confidence) threshold, default ' +
                        str(YOLO.get_defaults("score")))

    parser.add_argument('--shuffle',
                        default=False,
                        action="store_true",
                        help='shuffle images for display mode')

    parser.add_argument(
        '--display',
        default=False,
        action="store_true",
예제 #15
0
        else:
            r_image = yolo.detect_image(image)
            r_image.show()
    yolo.close_session()

FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument(
        '--model', type=str,
        help='path to model weight file, default ' + YOLO.get_defaults("model_path")
    )

    parser.add_argument(
        '--anchors', type=str,
        help='path to anchor definitions, default ' + YOLO.get_defaults("anchors_path")
    )

    parser.add_argument(
        '--classes', type=str,
        help='path to class definitions, default ' + YOLO.get_defaults("classes_path")
    )

    parser.add_argument(
        '--gpu_num', type=int,
        help='Number of GPU to use, default ' + str(YOLO.get_defaults("gpu_num"))
예제 #16
0
from PIL import Image
import cv2


def detect_img(yolo):
    while True:
        img = input('Input image filename:')
        try:
            image = Image.open(img)
        except:
            print('Open Error! Try again!')
            continue
        else:
            r_image = yolo.detect_image(image)
            r_image.show()
            # r_image.save("./result.jpg")
    yolo.close_session()


FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here

    YOLO.get_defaults("model_path")
    YOLO.get_defaults("anchors_path")
    YOLO.get_defaults("classes_path")
    yolo = YOLO(model_path="./logs/000/ep024-loss46.727-val_loss42.751.h5",
                classes_path="./model_data/danger.txt")
    detect_img(yolo)
예제 #17
0
from yolo import YOLO, detect_video
from PIL import Image
import pdb


def detect_img(yolo):
    while True:
        img = input('Input image filename:')
        try:
            image = Image.open(img)
        except:
            print('Open Error! Try again!')
            continue
        else:
            r_image = yolo.detect_image(image)
            r_image.show()
    yolo.close_session()


FLAGS = None

if __name__ == '__main__':
    parser = argparse.ArgumentParser()
    parser.add_argument('--model_path',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"),
                        default='model_data/trained_weights_final.h5')
    FLAGS = parser.parse_args()
    detect_img(YOLO(**vars(FLAGS)))
예제 #18
0
    yolo.close_session()


FLAGS = None

if __name__ == '__main__':

    # class YOLO defines the default value, so suppress any default here

    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    parser.add_argument(
        '--model',
        type=str,
        default='weights_yolo_train/trained_weights_stage_1.h5',
        help='path to model weight file, default ' +
        YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors',
                        type=str,
                        default='model_data/yolo_anchors.txt',
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults('anchors_path'))

    parser.add_argument('--classes',
                        type=str,
                        default='model_data/key_classes.txt',
                        help='path to class definitions, default ' +
                        YOLO.get_defaults('classes_path'))

    parser.add_argument('--gpu_num',
                        type=int,
예제 #19
0
def instantiate():
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument('--model',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors',
                        type=str,
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults("anchors_path"))

    parser.add_argument('--classes',
                        type=str,
                        help='path to class definitions, default ' +
                        YOLO.get_defaults("classes_path"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))

    parser.add_argument(
        '--image',
        default=False,
        action="store_true",
        help='Image detection mode, will ignore all positional arguments')
    '''
    Command line positional arguments -- for video detection mode
    '''
    parser.add_argument("--input",
                        nargs='?',
                        type=str,
                        required=False,
                        default='./path2your_video',
                        help="Video input path")

    parser.add_argument("--output",
                        nargs='?',
                        type=str,
                        default="",
                        help="[Optional] Video output path")

    FLAGS = parser.parse_args()

    if FLAGS.image:
        """
        Image detection mode, disregard any remaining command line arguments
        """
        print("Image detection mode")
        if "input" in FLAGS:
            print(" Ignoring remaining command line arguments: " +
                  FLAGS.input + "," + FLAGS.output)
        detect_img(YOLO(**vars(FLAGS)))
    elif "input" in FLAGS:
        detect_video(YOLO(**vars(FLAGS)), FLAGS.input, FLAGS.output)
    else:
        print(
            "Must specify at least video_input_path.  See usage with --help.")
예제 #20
0
            r_image.show()
    yolo.close_session()


FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument('--model',
                        type=str,
                        help='path to model weight file, default ' +
                        YOLO.get_defaults("model_path"))

    parser.add_argument('--anchors',
                        type=str,
                        help='path to anchor definitions, default ' +
                        YOLO.get_defaults("anchors_path"))

    parser.add_argument('--classes',
                        type=str,
                        help='path to class definitions, default ' +
                        YOLO.get_defaults("classes_path"))

    parser.add_argument('--gpu_num',
                        type=int,
                        help='Number of GPU to use, default ' +
                        str(YOLO.get_defaults("gpu_num")))
예제 #21
0
            # r_image.show()
            opencvImage = cv2.cvtColor(numpy.array(image), cv2.COLOR_RGB2BGR)
            cv2.imwrite('pictures/test_result.png',opencvImage)
    yolo.close_session()

FLAGS = None

if __name__ == '__main__':
    # class YOLO defines the default value, so suppress any default here
    parser = argparse.ArgumentParser(argument_default=argparse.SUPPRESS)
    '''
    Command line options
    '''
    parser.add_argument(
        '--model_path', type=str,
        help='path to model weight file, default ' + YOLO.get_defaults("model_path")
    )

    parser.add_argument(
        '--anchors', type=str,
        help='path to anchor definitions, default ' + YOLO.get_defaults("anchors_path")
    )

    parser.add_argument(
        '--classes_path', type=str,
        help='path to class definitions, default ' + YOLO.get_defaults("classes_path")
    )

    parser.add_argument(
        '--gpu_num', default=1, type=int,
        help='Number of GPU to use, default 1 '