tensorflow: 图像操作

调整图像大小:

tf.image.resize_images
tf.image.resize_area
tf.image.resize_bicubic
tf.image.resize_bilinear
tf.image.resize_nearest_neighbor

resize_images是总接口,接口参数为:

tf.image.resize_images(images,size,method=ResizeMethod.BILINEAR,align_corners=False)

images: shape为[batch, height, width, channels]的4-D图像张量,或者shape为[height, width, channels]的3-D图像张量;

size: shape为[new_height, new_width]

method:

方法 介绍
ResizeMethod.BILINEAR 双线性插值
ResizeMethod.NEAREST_NEIGHBOR 最近邻插值
ResizeMethod.BICUBIC 双三次插值
ResizeMethod.AREA 基于区域的插值

align_corners: 精确对准输入输出的四个角,False表示不精确对准

其余四个接口参数如下:

(images,size,align_corners=False,name=None)

截取图像一部分:

#从中间截取一部分图像,如果截取的部分大于原图像,则填充0
tf.image.resize_image_with_crop_or_pad(image,1000,1000)

#按比例截取图像
tf.image.central_crop(image,0.5)

图像翻转:

#上下翻转
tf.image.flip_up_down(image)

#左右翻转
tf.image.flip_left_right(image)

#对角线翻转
tf.image.transpose_image(image)

#随机翻转
tf.image.random_flip_left_right(image)
tf.image.random_flip_up_down(image)

图像色彩调整(亮度、对比度、饱和度和色相):

#亮度调整
tf.image.adjust_brightness(image,-0.5)
#在[-max_delta,max_delta]内随机调整亮度
tf.image.random_brightness(image,0.5)

#对比度调整
tf.image.adjust_contrast(image,-5)
tf.image.random_contrast(image,2,7)

#色相调整
tf.image.adjust_hue(image,0.3)
#在[-maxdelta,maxdelta]范围内随机调整图像的色相 maxdelat 在0-0.5的范围内
tf.image.random_hue(image,0.4)

#饱和度调整
tf.image.adjust_saturation(image,5)
tf.image.random_saturation(image,1,10)

标准化:

#将图像均值变为0,方差变为1
tf.image.per_image_standardization(image)

 

你可能感兴趣的:(tensorflow)