def main(): # output to file this_time = time.strftime('%Y-%m-%dT%H%M%S') sys.stdout = open(this_time + 'sdd.txt', 'w') sys.stderr = open(this_time + 'sdd.log', 'w') arg_parser = train_app.create_default_argument_parser("sdd") arg_parser.add_argument("--dataset_dir", help="Path to Stanford drone dataset directory.", default="../StanfordDroneDataset") arg_parser.add_argument("--sdk_dir", help="Path to sdd baseline evaluation software.", default="resources/StanfordDroneDataset-baseline") arg_parser.add_argument( "--annotation_file_name", help="Path to Stanford drone dataset annotation file.", default="/annotations/nexus/video0/annotations.txt") arg_parser.add_argument("--video_file_name", help="Path to Stanford drone dataset video file.", default="/videos/nexus/video0/video.mov") args = arg_parser.parse_args() dataset = sdd_dataset(args.dataset_dir, args.annotation_file_name, args.video_file_name, num_validation_y=0.1, seed=1234) if args.mode == "train": train_x, train_y, _ = dataset.read_train() print("Train set size: %d images, %d identities" % (len(train_x), len(np.unique(train_y)))) network_factory = net.create_network_factory( is_training=True, num_classes=sdd.calculate_max_label(dataset._dataset_dir + dataset._annotation_file_name) + 1, add_logits=args.loss_mode == "cosine-softmax") train_kwargs = train_app.to_train_kwargs(args) train_app.train_loop(net.preprocess, network_factory, train_x, train_y, num_images_per_id=4, image_shape=sdd.IMAGE_SHAPE, **train_kwargs) elif args.mode == "eval": valid_x, valid_y, camera_indices = dataset.read_validation() print("Validation set size: %d images, %d identities" % (len(valid_x), len(np.unique(valid_y)))) network_factory = net.create_network_factory( is_training=False, num_classes=sdd.calculate_max_label(self._dataset_dir + self._annotation_file_name) + 1, add_logits=args.loss_mode == "cosine-softmax") eval_kwargs = train_app.to_eval_kwargs(args) train_app.eval_loop(net.preprocess, network_factory, valid_x, valid_y, camera_indices, image_shape=sdd.IMAGE_SHAPE, **eval_kwargs) elif args.mode == "export": # Export one specific model. gallery_filenames, _, query_filenames, _, _ = dataset.read_test() network_factory = net.create_network_factory( is_training=False, num_classes=sdd.calculate_max_label(self._dataset_dir + self._annotation_file_name) + 1, add_logits=False, reuse=None) gallery_features = train_app.encode(net.preprocess, network_factory, args.restore_path, gallery_filenames, image_shape=sdd.IMAGE_SHAPE) sio.savemat(os.path.join(args.sdk_dir, "feat_test.mat"), {"features": gallery_features}) network_factory = net.create_network_factory( is_training=False, num_classes=sdd.calculate_max_label(self._dataset_dir + self._annotation_file_name) + 1, add_logits=False, reuse=True) query_features = train_app.encode(net.preprocess, network_factory, args.restore_path, query_filenames, image_shape=sdd.IMAGE_SHAPE) sio.savemat(os.path.join(args.sdk_dir, "feat_query.mat"), {"features": query_features}) elif args.mode == "finalize": network_factory = net.create_network_factory( is_training=False, num_classes=sdd.calculate_max_label(self._dataset_dir + self._annotation_file_name) + 1, add_logits=False, reuse=None) train_app.finalize(functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=sdd.IMAGE_SHAPE, output_filename="./sdd.ckpt") elif args.mode == "freeze": network_factory = net.create_network_factory( is_training=False, num_classes=sdd.calculate_max_label(self._dataset_dir + self._annotation_file_name) + 1, add_logits=False, reuse=None) train_app.freeze(functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=sdd.IMAGE_SHAPE, output_filename="./sdd.pb") else: raise ValueError("Invalid mode argument.")
def main(): arg_parser = train_app.create_default_argument_parser("vric") arg_parser.add_argument("--dataset_dir", help="Path to MARS dataset directory.", default="resources/MARS-evaluation-master") args = arg_parser.parse_args() dataset = VRIC(args.dataset_dir, num_validation_y=0.1, seed=1234) if args.mode == "train": train_x, train_y, _ = dataset.read_train() print("Train set size: %d images, %d identities" % (len(train_x), len(np.unique(train_y)))) network_factory = net.create_network_factory( is_training=True, num_classes=vric.MAX_LABEL + 1, add_logits=args.loss_mode == "cosine-softmax") train_kwargs = train_app.to_train_kwargs(args) train_app.train_loop(net.preprocess, network_factory, train_x, train_y, num_images_per_id=4, image_shape=IMAGE_SHAPE, **train_kwargs) elif args.mode == "eval": valid_x, valid_y, camera_indices = dataset.read_validation() print("Validation set size: %d images, %d identities" % (len(valid_x), len(np.unique(valid_y)))) network_factory = net.create_network_factory( is_training=False, num_classes=vric.MAX_LABEL + 1, add_logits=args.loss_mode == "cosine-softmax") eval_kwargs = train_app.to_eval_kwargs(args) train_app.eval_loop(net.preprocess, network_factory, valid_x, valid_y, camera_indices, image_shape=IMAGE_SHAPE, num_galleries=20, **eval_kwargs) elif args.mode == "export": filenames = dataset.read_test_filenames() network_factory = net.create_network_factory( is_training=False, num_classes=vric.MAX_LABEL + 1, add_logits=False, reuse=None) features = train_app.encode(net.preprocess, network_factory, args.restore_path, filenames, image_shape=IMAGE_SHAPE) sio.savemat(os.path.join(args.dataset_dir, "feat_test.mat"), {"features": features}) elif args.mode == "finalize": network_factory = net.create_network_factory( is_training=False, num_classes=vric.MAX_LABEL + 1, add_logits=False, reuse=None) train_app.finalize(functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=IMAGE_SHAPE, output_filename="./vric.ckpt") elif args.mode == "freeze": network_factory = net.create_network_factory( is_training=False, num_classes=vric.MAX_LABEL + 1, add_logits=False, reuse=None) train_app.freeze(functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=IMAGE_SHAPE, output_filename="./vric.pb") else: raise ValueError("Invalid mode argument.")
def main(): arg_parser = train_app_MTMC.create_default_argument_parser("DukeMTMC-reID") arg_parser.add_argument("--dataset_dir", help="Path to DukeMTMC dataset directory.", default="./DukeMTMC-reID/DukeMTMC-reID") #print("######################arg_parser",arg_parser) arg_parser.add_argument( "--sdk_dir", help="Path to DukeMTMC baseline evaluation software.", default="resources/Market-1501-v15.09.15-baseline") args = arg_parser.parse_args() dataset = DukeMTMC(args.dataset_dir, num_validation_y=0.1, seed=1234) if args.mode == "train": train_x, train_y, _ = dataset.read_train() print("Train set size: %d images, %d identities" % (len(train_x), len(np.unique(train_y)))) print("##############################", train_x[0]) network_factory = net.create_network_factory( is_training=True, num_classes=MTMC.MAX_LABEL + 1, add_logits=args.loss_mode == "cosine-softmax") train_kwargs = train_app_MTMC.to_train_kwargs(args) train_app_MTMC.train_loop(net.preprocess, network_factory, train_x, train_y, num_images_per_id=4, image_shape=MTMC.IMAGE_SHAPE, **train_kwargs) elif args.mode == "eval": valid_x, valid_y, camera_indices = dataset.read_validation() print("Validation set size: %d images, %d identities" % (len(valid_x), len(np.unique(valid_y)))) network_factory = net.create_network_factory( is_training=False, num_classes=MTMC.MAX_LABEL + 1, add_logits=args.loss_mode == "cosine-softmax") eval_kwargs = train_app_MTMC.to_eval_kwargs(args) train_app_MTMC.eval_loop(net.preprocess, network_factory, valid_x, valid_y, camera_indices, image_shape=MTMC.IMAGE_SHAPE, **eval_kwargs) elif args.mode == "export": # Export one specific model. gallery_filenames, _, query_filenames, _, _ = dataset.read_test() network_factory = net.create_network_factory( is_training=False, num_classes=MTMC.MAX_LABEL + 1, add_logits=False, reuse=None) gallery_features = train_app_MTMC.encode(net.preprocess, network_factory, args.restore_path, gallery_filenames, image_shape=MTMC.IMAGE_SHAPE) sio.savemat(os.path.join(args.sdk_dir, "feat_test.mat"), {"features": gallery_features}) network_factory = net.create_network_factory( is_training=False, num_classes=MTMC.MAX_LABEL + 1, add_logits=False, reuse=True) query_features = train_app_MTMC.encode(net.preprocess, network_factory, args.restore_path, query_filenames, image_shape=MTMC.IMAGE_SHAPE) sio.savemat(os.path.join(args.sdk_dir, "feat_query.mat"), {"features": query_features}) elif args.mode == "finalize": network_factory = net.create_network_factory( is_training=False, num_classes=MTMC.MAX_LABEL + 1, add_logits=False, reuse=None) train_app_MTMC.finalize(functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=MTMC.IMAGE_SHAPE, output_filename="./MTMC.ckpt") elif args.mode == "freeze": network_factory = net.create_network_factory( is_training=False, num_classes=MTMC.MAX_LABEL + 1, add_logits=False, reuse=None) train_app_MTMC.freeze(functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=MTMC.IMAGE_SHAPE, output_filename="./MTMC.pb") else: raise ValueError("Invalid mode argument.")
def main(): arg_parser = train_app.create_default_argument_parser("bdd") arg_parser.add_argument( "--dataset_dir", help="Path to BDD tracking dataset directory.", default="data/bdd-tracking-reid") arg_parser.add_argument( "--sdk_dir", help="Path to BDD baseline evaluation software.", default="/path/to/bdd/sdk") args = arg_parser.parse_args() dataset = BddTracking(args.dataset_dir, num_validation_y=0.1, seed=1234) if args.mode == "train": train_x, train_y = dataset.read_train() print("Train set size: %d images, %d identities" % ( len(train_x), len(np.unique(train_y)))) network_factory = net.create_network_factory( is_training=True, num_classes=bdd.MAX_LABEL + 1, add_logits=args.loss_mode == "cosine-softmax") train_kwargs = train_app.to_train_kwargs(args) train_app.train_loop( net.preprocess, network_factory, train_x, train_y, num_images_per_id=4, image_shape=bdd.IMAGE_SHAPE, **train_kwargs) elif args.mode == "eval": valid_x, valid_y = dataset.read_validation() print("Validation set size: %d images, %d identities" % ( len(valid_x), len(np.unique(valid_y)))) network_factory = net.create_network_factory( is_training=False, num_classes=bdd.MAX_LABEL + 1, add_logits=args.loss_mode == "cosine-softmax") eval_kwargs = train_app.to_eval_kwargs(args) train_app.eval_loop( net.preprocess, network_factory, valid_x, valid_y, None, image_shape=bdd.IMAGE_SHAPE, **eval_kwargs) elif args.mode == "export": # Export one specific model. gallery_filenames, _, query_filenames, _, _ = dataset.read_test() network_factory = net.create_network_factory( is_training=False, num_classes=bdd.MAX_LABEL + 1, add_logits=False, reuse=None) gallery_features = train_app.encode( net.preprocess, network_factory, args.restore_path, gallery_filenames, image_shape=bdd.IMAGE_SHAPE) sio.savemat( os.path.join(args.sdk_dir, "feat_test.mat"), {"features": gallery_features}) network_factory = net.create_network_factory( is_training=False, num_classes=bdd.MAX_LABEL + 1, add_logits=False, reuse=True) query_features = train_app.encode( net.preprocess, network_factory, args.restore_path, query_filenames, image_shape=bdd.IMAGE_SHAPE) sio.savemat( os.path.join(args.sdk_dir, "feat_query.mat"), {"features": query_features}) elif args.mode == "finalize": network_factory = net.create_network_factory( is_training=False, num_classes=bdd.MAX_LABEL + 1, add_logits=False, reuse=None) train_app.finalize( functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=bdd.IMAGE_SHAPE, output_filename="./bdd.ckpt") elif args.mode == "freeze": network_factory = net.create_network_factory( is_training=False, num_classes=bdd.MAX_LABEL + 1, add_logits=False, reuse=None) train_app.freeze( functools.partial(net.preprocess, input_is_bgr=True), network_factory, args.restore_path, image_shape=bdd.IMAGE_SHAPE, output_filename="/data1/haofeng/out/cml/cml-bdd-tracking-train/bdd-tracking-val.pb") else: raise ValueError("Invalid mode argument.")