分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
当然 tensorflow 并不是一种用于图像处理的框架,这里图像处理仅仅是一些简单的像素级操作,最终目的比如用于数据增强;
- tf.random_crop()
- tf.image.random_flip_left_right():
- tf.image.random_hue()
- random_contrast()
- random_brightness()
- random_saturation()
def pre_process_image(image, training): # This function takes a single image as input, # and a boolean whether to build the training or testing graph. if training: # For training, add the following to the TensorFlow graph. # Randomly crop the input image. image = tf.random_crop(image, size=[img_size_cropped, img_size_cropped, num_channels]) # Randomly flip the image horizontally. image = tf.image.random_flip_left_right(image) # Randomly adjust hue, contrast and saturation. image = tf.image.random_hue(image, max_delta=0.05) image = tf.image.random_contrast(image, lower=0.3, upper=1.0) image = tf.image.random_brightness(image, max_delta=0.2) image = tf.image.random_saturation(image, lower=0.0, upper=2.0) # Some of these functions may overflow and result in pixel # values beyond the [0, 1] range. It is unclear from the # documentation of TensorFlow 0.10.0rc0 whether this is # intended. A simple solution is to limit the range. # Limit the image pixels between [0, 1] in case of overflow. image = tf.minimum(image, 1.0) image = tf.maximum(image, 0.0) else: # For training, add the following to the TensorFlow graph. # Crop the input image around the centre so it is the same # size as images that are randomly cropped during training. image = tf.image.resize_image_with_crop_or_pad(image, target_height=img_size_cropped, target_width=img_size_cropped) return image
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37