def test_print_image(self):
     """ Read data through self.sess and plot out """
     threads, coord = Data.init_threads(self.sess)  # Begin Queues
     print("Running 100 iterations of simple data transfer from queue to np.array")
     for i in range(100):
         x, gt_boxes = self.sess.run([self.x, self.gt_boxes])
         print(i)
     # Plot an example
     faster_rcnn_tests.plot_img(x[0], gt_boxes[0])
     Data.exit_threads(threads, coord)  # Exit Queues
    def test_print_image(self):
        """ Read data through self.sess and plot out """
        threads, coord = Data.init_threads(self.sess)  # Begin Queues
        print("Running 100 iterations of simple data transfer from queue to np.array")
        for i in range(100):
            x, gt_boxes = self.sess.run([self.x['TRAIN'], self.gt_boxes['TRAIN']])
            print(i)

        # Plot an example
        faster_rcnn_tests.plot_img(x[0], gt_boxes[0])
        Data.exit_threads(threads, coord)  # Exit Queues
 def eval(self):
     """ Loop Through Evaluation Dataset and calculate metrics """
     info = dict()
     for c in range(flags['num_classes']):
         info[c] = list()
     for i in range(self.num_valid_images):
         bboxes, cls_score, gt_boxes, image = self.sess.run([self.roi_proposal_net_valid.get_rois(),
                                                    self.fast_rcnn_net_valid.get_cls_score(), self.gt_boxes_valid,
                                                    self.x_valid])
         print(gt_boxes)
         self.vis_detections(np.squeeze(image[0]), str(gt_boxes[0][4]), gt_boxes, bboxes)
     Data.exit_threads(self.threads, self.coord)  # Exit Queues
示例#4
0
 def print_test_image(self):
     """ Takes in a .tfrecord file and plots the image batch with bounding box """
     file = '/home/dcs41/Documents/tf-Faster-RCNN/Data/data_clutter/clutter_mnist_valid.tfrecords'
     im_dims, gt_boxes, image = Data.batch_inputs(self.read_and_decode,
                                                  file,
                                                  batch_size=32)
     self.sess.run(tf.local_variables_initializer())
     self.sess.run(tf.global_variables_initializer())
     threads, coord = Data.init_threads(self.sess)
     _, gt_boxes, image_out = self.sess.run([im_dims, gt_boxes, image])
     self.plot_img(image_out[0], gt_boxes[0])
     Data.exit_threads(threads, coord)
 def eval(self):
     """ Loop Through Evaluation Dataset and calculate metrics """
     info = dict()
     for c in range(flags['num_classes']):
         info[c] = list()
     for i in range(self.num_valid_images):
         bboxes, cls_score, gt_boxes, image = self.sess.run([
             self.roi_proposal_net_valid.get_rois(),
             self.fast_rcnn_net_valid.get_cls_score(), self.gt_boxes_valid,
             self.x_valid
         ])
         print(gt_boxes)
         self.vis_detections(np.squeeze(image[0]), str(gt_boxes[0][4]),
                             gt_boxes, bboxes)
     Data.exit_threads(self.threads, self.coord)  # Exit Queues
 def train(self):
     """ Run training function. Save model upon completion """
     epochs = 0
     iterations = int(np.ceil(self.num_images['TRAIN']/self.flags['batch_size']) * self.flags['num_epochs'])
     self.print_log('Training for %d iterations' % iterations)
     for i in tqdm(range(iterations)):
         summary = self._run_train_iter()
         if self.step % self.flags['display_step'] == 0:
             self._record_train_metrics()
             bbox, cls = self.sess.run([self.fast_rcnn_net['TRAIN'].get_bbox_refinement(),
                                        self.fast_rcnn_net['TRAIN'].get_cls_score()])
         if self.step % (self.num_images['TRAIN']) == 0:  # save model every epoch
             self._save_model(section=epochs)
             epochs += 1
         self._record_training_step(summary)
     Data.exit_threads(self.threads, self.coord)  # Exit Queues
示例#7
0
 def train(self):
     """ Run training function. Save model upon completion """
     iterations = int(
         np.ceil(self.num_train_images / self.flags['batch_size']) *
         self.flags['num_epochs'])
     threads, coord = Data.init_threads(self.sess)  # Begin Queues
     self.print_log('Training for %d iterations' % iterations)
     for i in range(iterations):
         if self.step % self.flags['display_step'] != 0:
             summary = self._run_train_iter()
         else:
             summary = self._run_train_metrics_iter()
             self._record_train_metrics()
         self._record_training_step(summary)
         print(self.step)
     self._save_model(section=1)
     Data.exit_threads(threads, coord)  # Exit Queues
 def train(self):
     """ Run training function. Save model upon completion """
     epochs = 0
     iterations = int(np.ceil(self.num_train_images/self.flags['batch_size']) * self.flags['num_epochs'])
     self.print_log('Training for %d iterations' % iterations)
     for i in range(3):
         summary = self._run_train_iter()
         if self.step % self.flags['display_step'] == 0:
             self._record_train_metrics()
             bbox, cls = self.sess.run([self.fast_rcnn_net.get_bbox_refinement(), self.fast_rcnn_net.get_cls_score()])
             self.print_log('Number of predictions: %d' % bbox.shape[0])
         if (self.step % 2) == 0:
             self._save_model(section=epochs)
             epochs += 1
         self._record_training_step(summary)
         print(self.step)
     Data.exit_threads(self.threads, self.coord)  # Exit Queues
 def train(self):
     """ Run training function. Save model upon completion """
     epochs = 0
     iterations = int(
         np.ceil(self.num_train_images / self.flags['batch_size']) *
         self.flags['num_epochs'])
     self.print_log('Training for %d iterations' % iterations)
     for i in range(3):
         summary = self._run_train_iter()
         if self.step % self.flags['display_step'] == 0:
             self._record_train_metrics()
             bbox, cls = self.sess.run([
                 self.fast_rcnn_net.get_bbox_refinement(),
                 self.fast_rcnn_net.get_cls_score()
             ])
             self.print_log('Number of predictions: %d' % bbox.shape[0])
         if (self.step % 2) == 0:
             self._save_model(section=epochs)
             epochs += 1
         self._record_training_step(summary)
         print(self.step)
     Data.exit_threads(self.threads, self.coord)  # Exit Queues
示例#10
0
 def close(self):
     Data.exit_threads(self.threads, self.coord)
示例#11
0
 def close(self):
     Data.exit_threads(self.threads, self.coord)