Exemplo n.º 1
0
    parser.add_argument('--sort_min_hit', default=3, type=int)
    return parser.parse_args()


if __name__ == "__main__":
    args = parse_args()
    Detector = SSD(args.gpu_id, args.model_def, args.model_weights,
                   args.image_resize, args.labelmap_file)
    mot_tracker = Sort(args.sort_max_age, args.sort_min_hit)
    seqDir = args.seq_dir
    images = os.listdir(seqDir)
    images.sort(key=str.lower)
    colours = np.random.rand(32, 3) * 255
    for image_name in images:
        image_path = os.path.join(seqDir, image_name)
        result = Detector.detect(image_path, args.det_conf_thresh)
        im = cv2.imread(image_path)
        height = im.shape[0]
        width = im.shape[1]
        result = np.array(result)
        det = result[:, 0:5]
        det[:, 0] = det[:, 0] * width
        det[:, 1] = det[:, 1] * height
        det[:, 2] = det[:, 2] * width
        det[:, 3] = det[:, 3] * height
        trackers = mot_tracker.update(det)
        for d in trackers:
            xmin = int(d[0])
            ymin = int(d[1])
            xmax = int(d[2])
            ymax = int(d[3])