# evaluation model with pascal/voc measures from __future__ import absolute_import, division, print_function import os from imdb import Imdb from network import Network data_dir = os.path.join(os.getcwd(), 'data') anno_dir = os.path.join(data_dir, 'eval_annotation') images_dir = os.path.join(data_dir, 'images') imdb = Imdb(anno_dir, images_dir, batch_size=1) net = Network(is_training=False) for images, gt_boxes, gt_cls in imdb.next_batch(): # batch_size is 1 box_pred, cls_inds, scores = net.predict(images)
args = parser.parse_args() imdb = Imdb(anno_dir, images_dir, batch_size=args.batch_size) net = Network(is_training=True, lr=args.learn_rate) train_t = 0 step = 0 print('start training') for epoch in range(1, args.num_epochs + 1): epoch_t = time.time() for images, gt_boxes, gt_cls in imdb.next_batch(): step, bbox_loss, iou_loss, cls_loss = net.fit(images, gt_boxes, gt_cls) if step % 100 == 0: print('step: {0} - bbox_loss: {1} - iou_loss: {2} - cls_loss: {3}'.format( step, bbox_loss, iou_loss, cls_loss)) epoch_t_dif = time.time() - epoch_t train_t += epoch_t_dif print('epoch: {0} - time: {1}'.format(epoch, str(timedelta(seconds=epoch_t_dif)))) if epoch % 5 == 0: net.save_ckpt(step)