Example #1
0
 def test_format_2_converter(self):
     filename = os.path.join(self.tempdir, 'svhn_format_2.hdf5')
     parser = argparse.ArgumentParser()
     subparsers = parser.add_subparsers()
     subparser = subparsers.add_parser('svhn')
     svhn.fill_subparser(subparser)
     subparser.set_defaults(directory=self.tempdir, output_file=filename)
     args = parser.parse_args(['svhn', '2'])
     args_dict = vars(args)
     func = args_dict.pop('func')
     func(**args_dict)
     h5file = h5py.File(filename, mode='r')
     assert_equal(
         h5file['features'][...],
         numpy.vstack([self.f2_train_features_mock.transpose(3, 2, 0, 1),
                       self.f2_test_features_mock.transpose(3, 2, 0, 1),
                       self.f2_extra_features_mock.transpose(3, 2, 0, 1)]))
     assert_equal(
         h5file['targets'][...],
         numpy.vstack([self.f2_train_targets_mock,
                       self.f2_test_targets_mock,
                       self.f2_extra_targets_mock]))
     assert_equal(str(h5file['features'].dtype), 'uint8')
     assert_equal(str(h5file['targets'].dtype), 'uint8')
     assert_equal(tuple(dim.label for dim in h5file['features'].dims),
                  ('batch', 'channel', 'height', 'width'))
     assert_equal(tuple(dim.label for dim in h5file['targets'].dims),
                  ('batch', 'index'))
Example #2
0
 def test_format_2_converter(self):
     parser = argparse.ArgumentParser()
     subparsers = parser.add_subparsers()
     subparser = subparsers.add_parser('svhn')
     svhn.fill_subparser(subparser)
     subparser.set_defaults(
         directory=self.tempdir, output_directory=self.tempdir,
         output_filename='svhn_format_2.hdf5')
     args = parser.parse_args(['svhn', '2'])
     args_dict = vars(args)
     func = args_dict.pop('func')
     filename, = func(**args_dict)
     h5file = h5py.File(filename, mode='r')
     assert_equal(
         h5file['features'][...],
         numpy.vstack([self.f2_train_features_mock.transpose(3, 2, 0, 1),
                       self.f2_test_features_mock.transpose(3, 2, 0, 1),
                       self.f2_extra_features_mock.transpose(3, 2, 0, 1)]))
     assert_equal(
         h5file['targets'][...],
         numpy.vstack([self.f2_train_targets_mock,
                       self.f2_test_targets_mock,
                       self.f2_extra_targets_mock]))
     assert_equal(str(h5file['features'].dtype), 'uint8')
     assert_equal(str(h5file['targets'].dtype), 'uint8')
     assert_equal(tuple(dim.label for dim in h5file['features'].dims),
                  ('batch', 'channel', 'height', 'width'))
     assert_equal(tuple(dim.label for dim in h5file['targets'].dims),
                  ('batch', 'index'))
Example #3
0
    def test_format_1_converter(self):
        filename = os.path.join(self.tempdir, 'svhn_format_1.hdf5')
        parser = argparse.ArgumentParser()
        subparsers = parser.add_subparsers()
        subparser = subparsers.add_parser('svhn')
        svhn.fill_subparser(subparser)
        subparser.set_defaults(directory=self.tempdir, output_file=filename)
        args = parser.parse_args(['svhn', '1'])
        args_dict = vars(args)
        func = args_dict.pop('func')
        func(**args_dict)
        h5file = h5py.File(filename, mode='r')

        expected_features = sum((self.f1_mock[split]['image']
                                 for split in ('train', 'test', 'extra')), [])
        for val, truth in zip(h5file['features'][...], expected_features):
            assert_equal(val, truth.transpose(2, 0, 1).flatten())

        expected_labels = sum((self.f1_mock[split]['label']
                               for split in ('train', 'test', 'extra')), [])
        for val, truth in zip(h5file['bbox_labels'][...], expected_labels):
            truth[truth == 10] = 0
            assert_equal(val, truth)

        expected_lefts = sum((self.f1_mock[split]['left']
                              for split in ('train', 'test', 'extra')), [])
        for val, truth in zip(h5file['bbox_lefts'][...], expected_lefts):
            assert_equal(val, truth)
Example #4
0
    def test_format_1_converter(self):
        parser = argparse.ArgumentParser()
        subparsers = parser.add_subparsers()
        subparser = subparsers.add_parser('svhn')
        svhn.fill_subparser(subparser)
        subparser.set_defaults(
            directory=self.tempdir, output_directory=self.tempdir,
            output_filename='svhn_format_1.hdf5')
        args = parser.parse_args(['svhn', '1'])
        args_dict = vars(args)
        func = args_dict.pop('func')
        filename, = func(**args_dict)
        h5file = h5py.File(filename, mode='r')

        expected_features = sum((self.f1_mock[split]['image']
                                 for split in ('train', 'test', 'extra')), [])
        for val, truth in zip(h5file['features'][...], expected_features):
            assert_equal(val, truth.transpose(2, 0, 1).flatten())

        expected_labels = sum((self.f1_mock[split]['label']
                               for split in ('train', 'test', 'extra')), [])
        for val, truth in zip(h5file['bbox_labels'][...], expected_labels):
            truth[truth == 10] = 0
            assert_equal(val, truth)

        expected_lefts = sum((self.f1_mock[split]['left']
                              for split in ('train', 'test', 'extra')), [])
        for val, truth in zip(h5file['bbox_lefts'][...], expected_lefts):
            assert_equal(val, truth)