diff --git a/tensorflow/core/api_def/python_api/api_def_DecodeAndCropJpeg.pbtxt b/tensorflow/core/api_def/python_api/api_def_DecodeAndCropJpeg.pbtxt index fbe9c882538..2c3857cc539 100644 --- a/tensorflow/core/api_def/python_api/api_def_DecodeAndCropJpeg.pbtxt +++ b/tensorflow/core/api_def/python_api/api_def_DecodeAndCropJpeg.pbtxt @@ -1,6 +1,4 @@ op { graph_op_name: "DecodeAndCropJpeg" - endpoint { - name: "image.decode_and_crop_jpeg" - } + visibility: HIDDEN } diff --git a/tensorflow/core/api_def/python_api/api_def_DecodeBmp.pbtxt b/tensorflow/core/api_def/python_api/api_def_DecodeBmp.pbtxt index 573d83f3739..ffe19ca8dc3 100644 --- a/tensorflow/core/api_def/python_api/api_def_DecodeBmp.pbtxt +++ b/tensorflow/core/api_def/python_api/api_def_DecodeBmp.pbtxt @@ -1,6 +1,4 @@ op { graph_op_name: "DecodeBmp" - endpoint { - name: "image.decode_bmp" - } + visibility: HIDDEN } diff --git a/tensorflow/core/api_def/python_api/api_def_DecodeGif.pbtxt b/tensorflow/core/api_def/python_api/api_def_DecodeGif.pbtxt index eed64df79cf..ff68b997e14 100644 --- a/tensorflow/core/api_def/python_api/api_def_DecodeGif.pbtxt +++ b/tensorflow/core/api_def/python_api/api_def_DecodeGif.pbtxt @@ -1,6 +1,4 @@ op { graph_op_name: "DecodeGif" - endpoint { - name: "image.decode_gif" - } + visibility: HIDDEN } diff --git a/tensorflow/core/api_def/python_api/api_def_DecodeJpeg.pbtxt b/tensorflow/core/api_def/python_api/api_def_DecodeJpeg.pbtxt index 994bc4e1f4f..97d262abe57 100644 --- a/tensorflow/core/api_def/python_api/api_def_DecodeJpeg.pbtxt +++ b/tensorflow/core/api_def/python_api/api_def_DecodeJpeg.pbtxt @@ -1,6 +1,4 @@ op { graph_op_name: "DecodeJpeg" - endpoint { - name: "image.decode_jpeg" - } + visibility: HIDDEN } diff --git a/tensorflow/core/api_def/python_api/api_def_DecodePng.pbtxt b/tensorflow/core/api_def/python_api/api_def_DecodePng.pbtxt index 309eec5ac36..3b9290a2c5b 100644 --- a/tensorflow/core/api_def/python_api/api_def_DecodePng.pbtxt +++ b/tensorflow/core/api_def/python_api/api_def_DecodePng.pbtxt @@ -1,6 +1,4 @@ op { graph_op_name: "DecodePng" - endpoint { - name: "image.decode_png" - } + visibility: HIDDEN } diff --git a/tensorflow/core/api_def/python_api/api_def_EncodeJpeg.pbtxt b/tensorflow/core/api_def/python_api/api_def_EncodeJpeg.pbtxt index 5c31e9d0f32..054ffb997b3 100644 --- a/tensorflow/core/api_def/python_api/api_def_EncodeJpeg.pbtxt +++ b/tensorflow/core/api_def/python_api/api_def_EncodeJpeg.pbtxt @@ -1,6 +1,4 @@ op { graph_op_name: "EncodeJpeg" - endpoint { - name: "image.encode_jpeg" - } + visibility: HIDDEN } diff --git a/tensorflow/core/api_def/python_api/api_def_ExtractJpegShape.pbtxt b/tensorflow/core/api_def/python_api/api_def_ExtractJpegShape.pbtxt index 6849a6d3fa5..a57955c8a74 100644 --- a/tensorflow/core/api_def/python_api/api_def_ExtractJpegShape.pbtxt +++ b/tensorflow/core/api_def/python_api/api_def_ExtractJpegShape.pbtxt @@ -1,6 +1,4 @@ op { graph_op_name: "ExtractJpegShape" - endpoint { - name: "image.extract_jpeg_shape" - } + visibility: HIDDEN } diff --git a/tensorflow/python/ops/image_ops_impl.py b/tensorflow/python/ops/image_ops_impl.py index 1618b795047..229393c9703 100644 --- a/tensorflow/python/ops/image_ops_impl.py +++ b/tensorflow/python/ops/image_ops_impl.py @@ -1760,7 +1760,7 @@ def adjust_saturation(image, saturation_factor, name=None): orig_dtype) -@tf_export('image.is_jpeg') +@tf_export('io.is_jpeg', 'image.is_jpeg', v1=['io.is_jpeg', 'image.is_jpeg']) def is_jpeg(contents, name=None): r"""Convenience function to check if the 'contents' encodes a JPEG image. @@ -1795,8 +1795,28 @@ def _is_png(contents, name=None): substr = string_ops.substr(contents, 0, 3) return math_ops.equal(substr, b'\211PN', name=name) +tf_export('io.decode_and_crop_jpeg', 'image.decode_and_crop_jpeg', + v1=['io.decode_and_crop_jpeg', 'image.decode_and_crop_jpeg'])( + gen_image_ops.decode_and_crop_jpeg) -@tf_export('image.decode_image') +tf_export('io.decode_bmp', 'image.decode_bmp', + v1=['io.decode_bmp', 'image.decode_bmp'])(gen_image_ops.decode_bmp) +tf_export('io.decode_gif', 'image.decode_gif', + v1=['io.decode_gif', 'image.decode_gif'])(gen_image_ops.decode_gif) +tf_export('io.decode_jpeg', 'image.decode_jpeg', + v1=['io.decode_jpeg', 'image.decode_jpeg'])(gen_image_ops.decode_jpeg) +tf_export('io.decode_png', 'image.decode_png', + v1=['io.decode_png', 'image.decode_png'])(gen_image_ops.decode_png) + +tf_export('io.encode_jpeg', 'image.encode_jpeg', + v1=['io.encode_jpeg', 'image.encode_jpeg'])(gen_image_ops.encode_jpeg) +tf_export('io.extract_jpeg_shape', 'image.extract_jpeg_shape', + v1=['io.extract_jpeg_shape', 'image.extract_jpeg_shape'])( + gen_image_ops.extract_jpeg_shape) + + +@tf_export('io.decode_image', 'image.decode_image', + v1=['io.decode_image', 'image.decode_image']) def decode_image(contents, channels=None, dtype=dtypes.uint8, name=None): """Convenience function for `decode_bmp`, `decode_gif`, `decode_jpeg`, and `decode_png`. diff --git a/tensorflow/tools/api/golden/v1/tensorflow.io.pbtxt b/tensorflow/tools/api/golden/v1/tensorflow.io.pbtxt index 64b63ed1a4a..fee12594eee 100644 --- a/tensorflow/tools/api/golden/v1/tensorflow.io.pbtxt +++ b/tensorflow/tools/api/golden/v1/tensorflow.io.pbtxt @@ -44,10 +44,18 @@ tf_module { name: "VarLenFeature" mtype: "" } + member_method { + name: "decode_and_crop_jpeg" + argspec: "args=[\'contents\', \'crop_window\', \'channels\', \'ratio\', \'fancy_upscaling\', \'try_recover_truncated\', \'acceptable_fraction\', \'dct_method\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \'1\', \'True\', \'False\', \'1\', \'\', \'None\'], " + } member_method { name: "decode_base64" argspec: "args=[\'input\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " } + member_method { + name: "decode_bmp" + argspec: "args=[\'contents\', \'channels\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \'None\'], " + } member_method { name: "decode_compressed" argspec: "args=[\'bytes\', \'compression_type\', \'name\'], varargs=None, keywords=None, defaults=[\'\', \'None\'], " @@ -56,10 +64,26 @@ tf_module { name: "decode_csv" argspec: "args=[\'records\', \'record_defaults\', \'field_delim\', \'use_quote_delim\', \'name\', \'na_value\', \'select_cols\'], varargs=None, keywords=None, defaults=[\',\', \'True\', \'None\', \'\', \'None\'], " } + member_method { + name: "decode_gif" + argspec: "args=[\'contents\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " + } + member_method { + name: "decode_image" + argspec: "args=[\'contents\', \'channels\', \'dtype\', \'name\'], varargs=None, keywords=None, defaults=[\'None\', \"\", \'None\'], " + } + member_method { + name: "decode_jpeg" + argspec: "args=[\'contents\', \'channels\', \'ratio\', \'fancy_upscaling\', \'try_recover_truncated\', \'acceptable_fraction\', \'dct_method\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \'1\', \'True\', \'False\', \'1\', \'\', \'None\'], " + } member_method { name: "decode_json_example" argspec: "args=[\'json_examples\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " } + member_method { + name: "decode_png" + argspec: "args=[\'contents\', \'channels\', \'dtype\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \"\", \'None\'], " + } member_method { name: "decode_raw" argspec: "args=[\'bytes\', \'out_type\', \'little_endian\', \'name\'], varargs=None, keywords=None, defaults=[\'True\', \'None\'], " @@ -72,6 +96,18 @@ tf_module { name: "encode_base64" argspec: "args=[\'input\', \'pad\', \'name\'], varargs=None, keywords=None, defaults=[\'False\', \'None\'], " } + member_method { + name: "encode_jpeg" + argspec: "args=[\'image\', \'format\', \'quality\', \'progressive\', \'optimize_size\', \'chroma_downsampling\', \'density_unit\', \'x_density\', \'y_density\', \'xmp_metadata\', \'name\'], varargs=None, keywords=None, defaults=[\'\', \'95\', \'False\', \'False\', \'True\', \'in\', \'300\', \'300\', \'\', \'None\'], " + } + member_method { + name: "extract_jpeg_shape" + argspec: "args=[\'contents\', \'output_type\', \'name\'], varargs=None, keywords=None, defaults=[\"\", \'None\'], " + } + member_method { + name: "is_jpeg" + argspec: "args=[\'contents\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " + } member_method { name: "match_filenames_once" argspec: "args=[\'pattern\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " diff --git a/tensorflow/tools/api/golden/v2/tensorflow.io.pbtxt b/tensorflow/tools/api/golden/v2/tensorflow.io.pbtxt index caa207b0226..1de2fc9e5de 100644 --- a/tensorflow/tools/api/golden/v2/tensorflow.io.pbtxt +++ b/tensorflow/tools/api/golden/v2/tensorflow.io.pbtxt @@ -48,10 +48,18 @@ tf_module { name: "gfile" mtype: "" } + member_method { + name: "decode_and_crop_jpeg" + argspec: "args=[\'contents\', \'crop_window\', \'channels\', \'ratio\', \'fancy_upscaling\', \'try_recover_truncated\', \'acceptable_fraction\', \'dct_method\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \'1\', \'True\', \'False\', \'1\', \'\', \'None\'], " + } member_method { name: "decode_base64" argspec: "args=[\'input\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " } + member_method { + name: "decode_bmp" + argspec: "args=[\'contents\', \'channels\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \'None\'], " + } member_method { name: "decode_compressed" argspec: "args=[\'bytes\', \'compression_type\', \'name\'], varargs=None, keywords=None, defaults=[\'\', \'None\'], " @@ -60,10 +68,26 @@ tf_module { name: "decode_csv" argspec: "args=[\'records\', \'record_defaults\', \'field_delim\', \'use_quote_delim\', \'name\', \'na_value\', \'select_cols\'], varargs=None, keywords=None, defaults=[\',\', \'True\', \'None\', \'\', \'None\'], " } + member_method { + name: "decode_gif" + argspec: "args=[\'contents\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " + } + member_method { + name: "decode_image" + argspec: "args=[\'contents\', \'channels\', \'dtype\', \'name\'], varargs=None, keywords=None, defaults=[\'None\', \"\", \'None\'], " + } + member_method { + name: "decode_jpeg" + argspec: "args=[\'contents\', \'channels\', \'ratio\', \'fancy_upscaling\', \'try_recover_truncated\', \'acceptable_fraction\', \'dct_method\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \'1\', \'True\', \'False\', \'1\', \'\', \'None\'], " + } member_method { name: "decode_json_example" argspec: "args=[\'json_examples\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " } + member_method { + name: "decode_png" + argspec: "args=[\'contents\', \'channels\', \'dtype\', \'name\'], varargs=None, keywords=None, defaults=[\'0\', \"\", \'None\'], " + } member_method { name: "decode_raw" argspec: "args=[\'bytes\', \'out_type\', \'little_endian\', \'name\'], varargs=None, keywords=None, defaults=[\'True\', \'None\'], " @@ -76,6 +100,18 @@ tf_module { name: "encode_base64" argspec: "args=[\'input\', \'pad\', \'name\'], varargs=None, keywords=None, defaults=[\'False\', \'None\'], " } + member_method { + name: "encode_jpeg" + argspec: "args=[\'image\', \'format\', \'quality\', \'progressive\', \'optimize_size\', \'chroma_downsampling\', \'density_unit\', \'x_density\', \'y_density\', \'xmp_metadata\', \'name\'], varargs=None, keywords=None, defaults=[\'\', \'95\', \'False\', \'False\', \'True\', \'in\', \'300\', \'300\', \'\', \'None\'], " + } + member_method { + name: "extract_jpeg_shape" + argspec: "args=[\'contents\', \'output_type\', \'name\'], varargs=None, keywords=None, defaults=[\"\", \'None\'], " + } + member_method { + name: "is_jpeg" + argspec: "args=[\'contents\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], " + } member_method { name: "match_filenames_once" argspec: "args=[\'pattern\', \'name\'], varargs=None, keywords=None, defaults=[\'None\'], "