将图像裁剪和/或填充到目标宽度和高度。
用法
tf.image.resize_with_crop_or_pad(
image, target_height, target_width
)
参数
-
image
形状为[batch, height, width, channels]
的 4-D 张量或形状为[height, width, channels]
的 3-D 张量。 -
target_height
目标高度。 -
target_width
目标宽度。
抛出
-
ValueError
如果target_height
或target_width
为零或负数。
返回
-
裁剪和/或填充的图像。如果
images
是 4-D,则形状为[batch, new_height, new_width, channels]
的 4-D 浮点张量。如果images
是 3-D,则形状为[new_height, new_width, channels]
的 3-D 浮点张量。
通过集中裁剪图像或用零均匀填充图像,将图像大小调整为目标宽度和高度。
如果 width
或 height
分别大于指定的 target_width
或 target_height
,则此操作沿该维度集中裁剪。
例如:
image = np.arange(75).reshape(5, 5, 3) # create 3-D image input
image[:,:,0] # print first channel just for demo purposes
array([[ 0, 3, 6, 9, 12],
[15, 18, 21, 24, 27],
[30, 33, 36, 39, 42],
[45, 48, 51, 54, 57],
[60, 63, 66, 69, 72]])
image = tf.image.resize_with_crop_or_pad(image, 3, 3) # crop
# print first channel for demo purposes; centrally cropped output
image[:,:,0]
<tf.Tensor:shape=(3, 3), dtype=int64, numpy=
array([[18, 21, 24],
[33, 36, 39],
[48, 51, 54]])>
如果 width
或 height
分别小于指定的 target_width
或 target_height
,则此操作沿该维度居中填充 0。
例如:
image = np.arange(1, 28).reshape(3, 3, 3) # create 3-D image input
image[:,:,0] # print first channel just for demo purposes
array([[ 1, 4, 7],
[10, 13, 16],
[19, 22, 25]])
image = tf.image.resize_with_crop_or_pad(image, 5, 5) # pad
# print first channel for demo purposes; we should see 0 paddings
image[:,:,0]
<tf.Tensor:shape=(5, 5), dtype=int64, numpy=
array([[ 0, 0, 0, 0, 0],
[ 0, 1, 4, 7, 0],
[ 0, 10, 13, 16, 0],
[ 0, 19, 22, 25, 0],
[ 0, 0, 0, 0, 0]])>
相关用法
- Python tf.image.resize用法及代码示例
- Python tf.image.random_brightness用法及代码示例
- Python tf.image.random_contrast用法及代码示例
- Python tf.image.rot90用法及代码示例
- Python tf.image.random_hue用法及代码示例
- Python tf.image.random_saturation用法及代码示例
- Python tf.image.rgb_to_yiq用法及代码示例
- Python tf.image.random_jpeg_quality用法及代码示例
- Python tf.image.random_flip_up_down用法及代码示例
- Python tf.image.random_crop用法及代码示例
- Python tf.image.random_flip_left_right用法及代码示例
- Python tf.image.rgb_to_hsv用法及代码示例
- Python tf.image.rgb_to_grayscale用法及代码示例
- Python tf.image.pad_to_bounding_box用法及代码示例
- Python tf.image.adjust_hue用法及代码示例
- Python tf.image.flip_left_right用法及代码示例
- Python tf.image.convert_image_dtype用法及代码示例
- Python tf.image.stateless_random_flip_up_down用法及代码示例
- Python tf.image.extract_glimpse用法及代码示例
- Python tf.image.flip_up_down用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.image.resize_with_crop_or_pad。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。