detector = Detector(learning_component) for patch in positive_patches[1:max_train_count]: learning_component.update_positives(patch) for patch in negative_patches[:5*max_train_count]: learning_component.update_negatives(patch) print "Update training set:", time.time() - start_time print start_time = time.time() detector.ensemble_classifier.relearn() print "Learn detector:", time.time() - start_time print for param in xrange(10): print "Param:", param/10.0 detector.threshold_patch_variance = 0.3 detector.threshold_ensemble = param/10.0 detector.nearest_neighbor_classifier.tetta = 0.4 start_time = time.time() tp = 0 tn = 0 fp = 0 fn = 0 for patch in positive_patches[-max_test_count:]: if detector.predict_patch(patch) > 0.5: tp += 1 else: fn += 1 for patch in negative_patches[-max_test_count:]: if detector.predict_patch(patch) > 0.5: fp += 1