options = dlib.simple_object_detector_training_options() options.add_left_right_image_flips = True options.C = 5 options.num_threads = 4 options.be_verbose = True detector = dlib.train_simple_object_detector(images, boxes_per_image, options) Save the detector detector.save("mmod_detector.svm")
# Convert simple rectangle list to mmodlist with default label 0 def to_mmodlist(rect_list, label=0): return [dlib.mmod_rect(r, label=label, ignore=False) for r in rect_list] Reverse conversion (strip labels/ignore): mmodlist
for xml_file in glob.glob("annotations/*.xml"): # Load dlib's XML format (which uses mmod_rect internally) rects = dlib.load_image_dataset(images, xml_file, "image") # rects is already list of mmod_rect mmodlists.append(rects) options = dlib
This guide covers the conceptual, practical, and edge-case behaviors of mmodlist in dlib's MMOD system. label=0): return [dlib.mmod_rect(r
detector = dlib.train_simple_object_detector(images, mmodlists, options) img = dlib.load_rgb_image("test.jpg") dets = detector(img) for det in dets: print(f"Class det.label at det.rect, score det.detection_confidence")