TensorFlow画像操作
3228 ワード
注意:Tensorパラメータを受け入れる関数は被tfを受け入れることもできる.convert_to_tensorが受け入れる任意のコンテンツTensorFlow符号化および復号画像TensorFlowは、JPEGおよびPNGフォーマットを復号および符号化するための動作を提供する.符号化画像はスカラー文字列Tensorsで表され、復号画像はshapeが[height,width,channels]の3−D uint 8テンソルで表される.(PNGもuint 16をサポート)
符号化および復号化動作は、一度に1つの画像に適用される.入力と出力は可変サイズです.固定サイズの画像が必要な場合は、復号化操作の出力をトリミングおよびサイズ変更操作のいずれかに渡します.
注意:PNG符号化および復号化動作はRGBAをサポートしますが、変換動作は現在、RGB、HSV、GrayScaleのみをサポートしています.現在、Alphaチャネルは画像から剥離し、スライス操作を使用して再アタッチする必要があります.
サイズ変更操作サイズ変更操作入力画像は、いくつかのタイプのテンソルとして受け入れられる.彼らはいつもサイズ調整後の画像をfloat 32テンソルに出力します.
便利関数tf.image.resize_imagesは、入力および出力として4次元および3次元テンソルをサポートします.4次元テンソルは、一括画像、単一画像の3次元テンソルに使用されます.
その他のサイズ変更操作は、入力として4次元画像バッチのみをサポートします.
例:
tf.image.resize_images tf.image.resize_area tf.image.resize_bicubic tf.image.resize_bilinear tf.image.resize_nearest_neighbor剪断tf.image.resize_image_with_crop_or_pad tf.image.central_crop tf.image.pad_to_bounding_box tf.image.crop_to_bounding_box tf.image.extract_glimpse tf.image.crop_and_resize反転、回転、シフトtf.image.flip_up_down tf.image.random_flip_up_down tf.image.flip_left_right tf.image.random_flip_left_right tf.image.transpose_image tf.image.rot 90色空間間の変換画像動作は、入力されたテンソル形状に応じて、単一の画像または一連の画像で動作することができる.
3次元の場合、shapeは[height,width,channels]であり、Tensorは画像を表す.4次元の場合、shapeは[batch_size,height,width,channels]であり、Tensorはbatch_を表すsize画像.
現在、channelsは有効に1,2,3または4であり、単一チャネル画像は階調レベルであり、3チャネルの画像はRGBまたはHSVに符号化される.2つまたは4つのチャネルを有する画像は、Alphaチャネルを含み、画像をほとんどの画像処理機能に伝達する前に画像から剥離しなければならない(後で再付加することができる).
内部では、画像またはfloat 32で画素毎に1つのチャネルが格納される(暗黙的に、値が[0,1にあると仮定する))、またはuint 8で画素毎に1つのチャネルが格納される(値が[0255]).
TensorFlowは、RGBまたはHSVの画像間で変換することができる.変換機能はフローティング画像にのみ適用するので、他のフォーマットで画像tfを変換する必要がある.image.convert_image_dtype.
例:
Decode an image and convert it to HSV.
符号化および復号化動作は、一度に1つの画像に適用される.入力と出力は可変サイズです.固定サイズの画像が必要な場合は、復号化操作の出力をトリミングおよびサイズ変更操作のいずれかに渡します.
注意:PNG符号化および復号化動作はRGBAをサポートしますが、変換動作は現在、RGB、HSV、GrayScaleのみをサポートしています.現在、Alphaチャネルは画像から剥離し、スライス操作を使用して再アタッチする必要があります.
tf.image.decode_gif
tf.image.decode_jpeg
tf.image.encode_jpeg
tf.image.decode_png
tf.image.encode_png
tf.image.decode_image
サイズ変更操作サイズ変更操作入力画像は、いくつかのタイプのテンソルとして受け入れられる.彼らはいつもサイズ調整後の画像をfloat 32テンソルに出力します.
便利関数tf.image.resize_imagesは、入力および出力として4次元および3次元テンソルをサポートします.4次元テンソルは、一括画像、単一画像の3次元テンソルに使用されます.
その他のサイズ変更操作は、入力として4次元画像バッチのみをサポートします.
tf.image.resize_area
tf.image.resize_bicubic
tf.image.resize_bilinear
tf.image.resize_nearest_neighbor
例:
#Decode a JPG image and resize it to 299 by 299 using default method.
image = tf.image.decode_jpeg(...)
resized_image = tf.image.resize_images(image, [299, 299])
tf.image.resize_images tf.image.resize_area tf.image.resize_bicubic tf.image.resize_bilinear tf.image.resize_nearest_neighbor剪断tf.image.resize_image_with_crop_or_pad tf.image.central_crop tf.image.pad_to_bounding_box tf.image.crop_to_bounding_box tf.image.extract_glimpse tf.image.crop_and_resize反転、回転、シフトtf.image.flip_up_down tf.image.random_flip_up_down tf.image.flip_left_right tf.image.random_flip_left_right tf.image.transpose_image tf.image.rot 90色空間間の変換画像動作は、入力されたテンソル形状に応じて、単一の画像または一連の画像で動作することができる.
3次元の場合、shapeは[height,width,channels]であり、Tensorは画像を表す.4次元の場合、shapeは[batch_size,height,width,channels]であり、Tensorはbatch_を表すsize画像.
現在、channelsは有効に1,2,3または4であり、単一チャネル画像は階調レベルであり、3チャネルの画像はRGBまたはHSVに符号化される.2つまたは4つのチャネルを有する画像は、Alphaチャネルを含み、画像をほとんどの画像処理機能に伝達する前に画像から剥離しなければならない(後で再付加することができる).
内部では、画像またはfloat 32で画素毎に1つのチャネルが格納される(暗黙的に、値が[0,1にあると仮定する))、またはuint 8で画素毎に1つのチャネルが格納される(値が[0255]).
TensorFlowは、RGBまたはHSVの画像間で変換することができる.変換機能はフローティング画像にのみ適用するので、他のフォーマットで画像tfを変換する必要がある.image.convert_image_dtype.
例:
Decode an image and convert it to HSV. rgb_image = tf.image.decode_png(..., channels=3)
rgb_image_float = tf.image.convert_image_dtype(rgb_image, tf.float32)
hsv_image = tf.image.rgb_to_hsv(rgb_image)
tf.image.rgb_to_grayscale tf.image.grayscale_to_rgb tf.image.hsv_to_rgb tf.image.rgb_to_hsv tf.image.convert_image_dtype TensorFlow画像調整TensorFlowは、輝度、コントラスト、色相、飽和度など、さまざまな方法で画像を調整する機能を提供します.各調整は、事前定義されたパラメータまたは事前定義された間隔から選択されたランダムパラメータで行うことができます.ランダム調整は、通常、トレーニングセットを拡大し、過剰な協力を減少させるのに役立つ.
いくつかの調整がリンクされている場合、まず画像を最も自然なデータ型に変換し、表現(RGBまたはHSV)を表すことによって、冗長変換の数を最小化することが推奨される.
tf.image.adjust_brightness tf.image.random_brightness tf.image.adjust_contrast tf.image.random_contrast tf.image.adjust_hue tf.image.random_hue tf.image.adjust_gamma tf.image.adjust_saturation tf.image.random_saturation tf.image.per_image_Standardization TensorFlow画像は枠tfを用いる.image.draw_bounding_boxes tf.image.non_max_suppression tf.image.sample_distorted_bounding_box TensorFlow画像ノイズ除去tf.image.total_variation
rgb_image = tf.image.decode_png(..., channels=3)
rgb_image_float = tf.image.convert_image_dtype(rgb_image, tf.float32)
hsv_image = tf.image.rgb_to_hsv(rgb_image)