def test_random_adjust_brightness(self): preprocessor_text_proto = """ random_adjust_brightness { max_delta: 0.15 } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.random_adjust_brightness) self.assert_dictionary_close(args, { 'max_delta': 0.15 })
def test_random_rgb_to_gray(self): preprocessor_text_proto = """ random_rgb_to_gray { probability: 0.15 } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.random_rgb_to_gray) self.assert_dictionary_close(args, { 'probability': 0.15 })
def test_build_resize_image_random_method(self): preprocessor_text_proto = """ resize_image_random_method { target_height: 384 target_width: 384 } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.resize_image_random_method) self.assert_dictionary_close(args, { 'target_size': [384, 384] })
def test_random_pixel_value_scale(self): preprocessor_text_proto = """ random_pixel_value_scale { minval: 0.85 maxval: 1.25 } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.random_pixel_value_scale) self.assert_dictionary_close(args, { 'minval': 0.85, 'maxval': 1.25 })
def test_random_adjust_contrast(self): preprocessor_text_proto = """ random_adjust_contrast { min_delta: 0.7 max_delta: 1.3 } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.random_adjust_contrast) self.assert_dictionary_close(args, { 'min_delta': 0.7, 'max_delta': 1.3 })
def test_build_resize_image(self): preprocessor_text_proto = """ resize_image { target_height: 384 target_width: 384 method: BICUBIC } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.resize_image) self.assertEqual(args, { 'target_size': [384, 384], 'method': tf.image.ResizeMethod.BICUBIC })
def test_normalize_image(self): preprocessor_text_proto = """ normalize_image { original_minval: 0.0 original_maxval: 255.0 target_minval: 0.0 target_maxval: 1.0 } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.normalize_image) self.assert_dictionary_close(args, { 'original_minval': 0.0, 'original_maxval': 255.0, 'target_minval': 0.0, 'target_maxval': 1.0 })
def test_string_filtering_2(self): preprocessor_text_proto = """ string_filtering { lower_case: false include_charset { built_in_set: ALLCASES } } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.string_filtering) self.assert_dictionary_close(args, { 'lower_case': False, 'include_charset': "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" }) test_input_strings = [t.encode('utf-8') for t in ['abc', 'abcde', '!=ABC DE~']] expected_output_string = [t.encode('utf-8') for t in ['abc', 'abcde', 'ABCDE']] test_processed_strings = [function(t, **args) for t in test_input_strings] with self.test_session() as sess: outputs = sess.run(test_processed_strings) self.assertAllEqual(outputs, expected_output_string)
def test_string_filtering(self): preprocessor_text_proto = """ string_filtering { lower_case: true include_charset { text_string: "abc" } } """ preprocessor_proto = preprocessor_pb2.PreprocessingStep() text_format.Merge(preprocessor_text_proto, preprocessor_proto) function, args = preprocessor_builder.build(preprocessor_proto) self.assertEqual(function, preprocessor.string_filtering) self.assert_dictionary_close(args, { 'lower_case': True, 'include_charset': "abc" }) test_input_strings = [t.encode('utf-8') for t in ['abc', 'abcde', 'ABCDE']] expected_output_string = [t.encode('utf-8') for t in ['abc', 'abc', 'abc']] test_processed_strings = [function(t, **args) for t in test_input_strings] with self.test_session() as sess: outputs = sess.run(test_processed_strings) self.assertAllEqual(outputs, expected_output_string)