def test_decodes_example_proto(self): expected_label = range(37) expected_image, encoded = unittest_utils.create_random_image( 'PNG', shape=(150, 600, 3)) serialized = unittest_utils.create_serialized_example({ 'image/encoded': [encoded], 'image/format': ['PNG'], 'image/class': expected_label, 'image/unpadded_class': range(10), 'image/text': ['Raw text'], 'image/orig_width': [150], 'image/width': [600] }) decoder = fsns.get_split('train', dataset_dir()).decoder with self.test_session() as sess: data_tuple = collections.namedtuple('DecodedData', decoder.list_items()) data = sess.run(data_tuple(*decoder.decode(serialized))) self.assertAllEqual(expected_image, data.image) self.assertAllEqual(expected_label, data.label) self.assertEqual(['Raw text'], data.text) self.assertEqual([1], data.num_of_views)
def test_encoded_image_corresponds_to_numpy_array(self): image, encoded = unittest_utils.create_random_image('PNG', (20, 10, 3)) pil_image = PILImage.open(StringIO.StringIO(encoded)) self.assertAllEqual(image, np.array(pil_image))
def test_creates_an_image_of_specified_shape(self): image, _ = unittest_utils.create_random_image('PNG', (10, 20, 3)) self.assertEqual(image.shape, (10, 20, 3))