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': [b'PNG'], 'image/class': expected_label, 'image/unpadded_class': range(10), 'image/text': [b'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([b'Raw text'], data.text) self.assertEqual([1], data.num_of_views)
def test_created_example_has_correct_values(self): example_serialized = unittest_utils.create_serialized_example({ 'labels': [1, 2, 3], 'data': ['FAKE'] }) example = tf.train.Example() example.ParseFromString(example_serialized) self.assertProtoEquals(""" features { feature { key: "labels" value { int64_list { value: 1 value: 2 value: 3 }} } feature { key: "data" value { bytes_list { value: "FAKE" }} } } """, example)