Python tensorflow.random_crop() Examples
The following are 30
code examples of tensorflow.random_crop().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
tensorflow
, or try the search function
.
Example #1
Source File: cifar10_main.py From yolo_v2 with Apache License 2.0 | 6 votes |
def preprocess_image(image, is_training): """Preprocess a single image of layout [height, width, depth].""" if is_training: # Resize the image to add four extra pixels on each side. image = tf.image.resize_image_with_crop_or_pad( image, _HEIGHT + 8, _WIDTH + 8) # Randomly crop a [_HEIGHT, _WIDTH] section of the image. image = tf.random_crop(image, [_HEIGHT, _WIDTH, _DEPTH]) # Randomly flip the image horizontally. image = tf.image.random_flip_left_right(image) # Subtract off the mean and divide by the variance of the pixels. image = tf.image.per_image_standardization(image) return image
Example #2
Source File: utils_cifar.py From neural-fingerprinting with BSD 3-Clause "New" or "Revised" License | 6 votes |
def cifar_tf_preprocess(inp, random_crop=True, random_flip=True, whiten=True, br_sat_con=False): image_size = 32 image = inp if random_crop: image = tf.image.resize_image_with_crop_or_pad(inp, image_size + 4, image_size + 4) image = tf.random_crop(image, [image_size, image_size, 3]) if random_flip: image = tf.image.random_flip_left_right(image) # Brightness/saturation/constrast provides small gains .2%~.5% on cifar. if br_sat_con: image = tf.image.random_brightness(image, max_delta=63. / 255.) image = tf.image.random_saturation(image, lower=0.5, upper=1.5) image = tf.image.random_contrast(image, lower=0.2, upper=1.8) if whiten: image = tf.image.per_image_standardization(image) return image
Example #3
Source File: data_loader.py From tensorflow_multigpu_imagenet with MIT License | 6 votes |
def _train_preprocess(self, reshaped_image): # Image processing for training the network. Note the many random # distortions applied to the image. # Randomly crop a [height, width] section of the image. reshaped_image = tf.random_crop(reshaped_image, self.processed_size) # Randomly flip the image horizontally. reshaped_image = tf.image.random_flip_left_right(reshaped_image) # Because these operations are not commutative, consider randomizing # the order their operation. reshaped_image = tf.image.random_brightness(reshaped_image, max_delta=63) # Randomly changing contrast of the image reshaped_image = tf.image.random_contrast(reshaped_image, lower=0.2, upper=1.8) return reshaped_image
Example #4
Source File: retrain.py From tensorflow-image-detection with MIT License | 6 votes |
def should_distort_images(flip_left_right, random_crop, random_scale, random_brightness): """Whether any distortions are enabled, from the input flags. Args: flip_left_right: Boolean whether to randomly mirror images horizontally. random_crop: Integer percentage setting the total margin used around the crop box. random_scale: Integer percentage of how much to vary the scale by. random_brightness: Integer range to randomly multiply the pixel values by. Returns: Boolean value indicating whether any distortions should be applied. """ return (flip_left_right or (random_crop != 0) or (random_scale != 0) or (random_brightness != 0))
Example #5
Source File: retrain.py From sign-language-gesture-recognition with MIT License | 6 votes |
def should_distort_images(flip_left_right, random_crop, random_scale, random_brightness): """Whether any distortions are enabled, from the input flags. Args: flip_left_right: Boolean whether to randomly mirror images horizontally. random_crop: Integer percentage setting the total margin used around the crop box. random_scale: Integer percentage of how much to vary the scale by. random_brightness: Integer range to randomly multiply the pixel values by. Returns: Boolean value indicating whether any distortions should be applied. """ return (flip_left_right or (random_crop != 0) or (random_scale != 0) or (random_brightness != 0))
Example #6
Source File: retrain.py From powerai-transfer-learning with Apache License 2.0 | 6 votes |
def should_distort_images(flip_left_right, random_crop, random_scale, random_brightness): """Whether any distortions are enabled, from the input flags. Args: flip_left_right: Boolean whether to randomly mirror images horizontally. random_crop: Integer percentage setting the total margin used around the crop box. random_scale: Integer percentage of how much to vary the scale by. random_brightness: Integer range to randomly multiply the pixel values by. Returns: Boolean value indicating whether any distortions should be applied. """ return (flip_left_right or (random_crop != 0) or (random_scale != 0) or (random_brightness != 0))
Example #7
Source File: retrain.py From diabetic-retinopathy-screening with GNU General Public License v3.0 | 6 votes |
def should_distort_images(flip_left_right, random_crop, random_scale, random_brightness): """Whether any distortions are enabled, from the input flags. Args: flip_left_right: Boolean whether to randomly mirror images horizontally. random_crop: Integer percentage setting the total margin used around the crop box. random_scale: Integer percentage of how much to vary the scale by. random_brightness: Integer range to randomly multiply the pixel values by. Returns: Boolean value indicating whether any distortions should be applied. """ return (flip_left_right or (random_crop != 0) or (random_scale != 0) or (random_brightness != 0))
Example #8
Source File: get_data.py From glow with MIT License | 6 votes |
def parse_tfrecord_tf(record, res, rnd_crop): features = tf.parse_single_example(record, features={ 'shape': tf.FixedLenFeature([3], tf.int64), 'data': tf.FixedLenFeature([], tf.string), 'label': tf.FixedLenFeature([1], tf.int64)}) # label is always 0 if uncondtional # to get CelebA attr, add 'attr': tf.FixedLenFeature([40], tf.int64) data, label, shape = features['data'], features['label'], features['shape'] label = tf.cast(tf.reshape(label, shape=[]), dtype=tf.int32) img = tf.decode_raw(data, tf.uint8) if rnd_crop: # For LSUN Realnvp only - random crop img = tf.reshape(img, shape) img = tf.random_crop(img, [res, res, 3]) img = tf.reshape(img, [res, res, 3]) return img, label # to get CelebA attr, also return attr
Example #9
Source File: common_layers.py From BERT with Apache License 2.0 | 6 votes |
def patch_discriminator(x, filters=64, filter_size=5, n=4, name="patch_discrim"): """Patch descriminator.""" with tf.variable_scope(name): x_shape = shape_list(x) spatial_dims = [x_shape[1] // 4, x_shape[2] // 4] x = tf.random_crop(x, [x_shape[0]] + spatial_dims + [x_shape[3]]) for i in range(n): x = general_conv( x=x, num_filters=filters * 2**i, filter_size=filter_size, stride=2 if i != n - 1 else 1, stddev=0.02, padding="SAME", name="c%d" % i, do_norm="instance" if i != 0 else False, do_relu=i != n - 1, relufactor=0.2) x = tf.reduce_mean(x, [1, 2]) return x
Example #10
Source File: cifar10_input.py From parsimonious-blackbox-attack with MIT License | 6 votes |
def __init__(self, raw_cifar10data, sess, model): assert isinstance(raw_cifar10data, CIFAR10Data) self.image_size = 32 # create augmentation computational graph self.x_input_placeholder = tf.placeholder(tf.float32, shape=[None, 32, 32, 3]) padded = tf.map_fn(lambda img: tf.image.resize_image_with_crop_or_pad( img, self.image_size + 4, self.image_size + 4), self.x_input_placeholder) cropped = tf.map_fn(lambda img: tf.random_crop(img, [self.image_size, self.image_size, 3]), padded) flipped = tf.map_fn(lambda img: tf.image.random_flip_left_right(img), cropped) self.augmented = flipped self.train_data = AugmentedDataSubset(raw_cifar10data.train_data, sess, self.x_input_placeholder, self.augmented) self.eval_data = AugmentedDataSubset(raw_cifar10data.eval_data, sess, self.x_input_placeholder, self.augmented) self.label_names = raw_cifar10data.label_names
Example #11
Source File: mini_imagenet.py From inc-few-shot-attractor-public with MIT License | 6 votes |
def tf_preprocess(random_crop=True, random_flip=True, random_color=True, whiten=False): image_size = 84 inp = tf.placeholder(tf.float32, [image_size, image_size, 3]) image = inp # image = tf.cast(inp, tf.float32) if random_crop: log.info("Apply random cropping") image = tf.image.resize_image_with_crop_or_pad(inp, image_size + 8, image_size + 8) image = tf.random_crop(image, [image_size, image_size, 3]) if random_flip: log.info("Apply random flipping") image = tf.image.random_flip_left_right(image) # Brightness/saturation/constrast provides small gains .2%~.5% on cifar. if random_color: image = tf.image.random_brightness(image, max_delta=63. / 255.) image = tf.image.random_saturation(image, lower=0.5, upper=1.5) image = tf.image.random_contrast(image, lower=0.2, upper=1.8) if whiten: log.info("Apply whitening") image = tf.image.per_image_whitening(image) return inp, image
Example #12
Source File: Util.py From MOTSFusion with MIT License | 6 votes |
def random_crop_image(img, size, offset=None): # adapted from code from tf.random_crop shape = tf.shape(img) #remove the assertion for now since it makes the queue filling slow for some reason #check = tf.Assert( # tf.reduce_all(shape[:2] >= size), # ["Need value.shape >= size, got ", shape, size]) #with tf.control_dependencies([check]): # img = tf.identity(img) limit = shape[:2] - size + 1 dtype = tf.int32 if offset is None: offset = tf.random_uniform(shape=(2,), dtype=dtype, maxval=dtype.max, seed=None) % limit offset = tf.stack([offset[0], offset[1], 0]) size0 = size[0] if isinstance(size[0], int) else None size1 = size[1] if isinstance(size[1], int) else None size_im = tf.stack([size[0], size[1], img.get_shape().as_list()[2]]) img_cropped = tf.slice(img, offset, size_im) out_shape_img = [size0, size1, img.get_shape()[2]] img_cropped.set_shape(out_shape_img) return img_cropped, offset
Example #13
Source File: cifar10.py From DOTA_models with Apache License 2.0 | 5 votes |
def preprocess(self, image): """Preprocess a single image in [height, width, depth] layout.""" if self.subset == 'train' and self.use_distortion: # Pad 4 pixels on each dimension of feature map, done in mini-batch image = tf.image.resize_image_with_crop_or_pad(image, 40, 40) image = tf.random_crop(image, [HEIGHT, WIDTH, DEPTH]) image = tf.image.random_flip_left_right(image) return image
Example #14
Source File: cifarnet_preprocessing.py From garbage-object-detection-tensorflow with MIT License | 5 votes |
def preprocess_for_train(image, output_height, output_width, padding=_PADDING): """Preprocesses the given image for training. Note that the actual resizing scale is sampled from [`resize_size_min`, `resize_size_max`]. Args: image: A `Tensor` representing an image of arbitrary size. output_height: The height of the image after preprocessing. output_width: The width of the image after preprocessing. padding: The amound of padding before and after each dimension of the image. Returns: A preprocessed image. """ tf.summary.image('image', tf.expand_dims(image, 0)) # Transform the image to floats. image = tf.to_float(image) if padding > 0: image = tf.pad(image, [[padding, padding], [padding, padding], [0, 0]]) # Randomly crop a [height, width] section of the image. distorted_image = tf.random_crop(image, [output_height, output_width, 3]) # Randomly flip the image horizontally. distorted_image = tf.image.random_flip_left_right(distorted_image) tf.summary.image('distorted_image', tf.expand_dims(distorted_image, 0)) # Because these operations are not commutative, consider randomizing # the order their operation. distorted_image = tf.image.random_brightness(distorted_image, max_delta=63) distorted_image = tf.image.random_contrast(distorted_image, lower=0.2, upper=1.8) # Subtract off the mean and divide by the variance of the pixels. return tf.image.per_image_standardization(distorted_image)
Example #15
Source File: lip_reader.py From LIP_JPPNet with MIT License | 5 votes |
def random_crop_and_pad_image_and_labels(image, label, heatmap, crop_h, crop_w, ignore_label=255): """ Randomly crop and pads the input images. Args: image: Training image to crop/ pad. label: Segmentation mask to crop/ pad. crop_h: Height of cropped segment. crop_w: Width of cropped segment. ignore_label: Label to ignore during the training. """ label = tf.cast(label, dtype=tf.float32) label = label - ignore_label # Needs to be subtracted and later added due to 0 padding. heatmap = tf.cast(heatmap, dtype=tf.float32) combined = tf.concat([image, label, heatmap], 2) image_shape = tf.shape(image) combined_pad = tf.image.pad_to_bounding_box(combined, 0, 0, tf.maximum(crop_h, image_shape[0]), tf.maximum(crop_w, image_shape[1])) last_image_dim = tf.shape(image)[-1] last_label_dim = tf.shape(label)[-1] combined_crop = tf.random_crop(combined_pad, [crop_h,crop_w,4+NUM_POSE]) img_crop = combined_crop[:, :, :last_image_dim] label_crop = combined_crop[:, :, last_image_dim:last_image_dim+last_label_dim] heatmap_crop = combined_crop[:, :, last_image_dim+last_label_dim:] label_crop = label_crop + ignore_label label_crop = tf.cast(label_crop, dtype=tf.uint8) # Set static shape so that tensorflow knows shape at compile time. img_crop.set_shape((crop_h, crop_w, 3)) label_crop.set_shape((crop_h,crop_w, 1)) heatmap_crop.set_shape((crop_h, crop_w, NUM_POSE)) new_shape = tf.stack([tf.to_int32(crop_h / 8.0), tf.to_int32(crop_w / 8.0)]) heatmap = tf.image.resize_nearest_neighbor(tf.expand_dims(heatmap_crop, 0), new_shape) heatmap = tf.squeeze(heatmap, squeeze_dims=[0]) return img_crop, label_crop, heatmap
Example #16
Source File: tf_reader.py From ArtGAN with BSD 3-Clause "New" or "Revised" License | 5 votes |
def decode_jpg(filename, directory, center=False, crop=None, flip=False, resize=None, ratio=False, filename_offset='', normalize='imagenet'): # Read image im_content = tf.read_file(directory + filename_offset + filename) example = tf.image.decode_jpeg(im_content, channels=3) # preprocessing example = tf.cast(example[:, :, ::-1], tf.float32) if normalize is 'imagenet': example = example - IMAGENET_MEAN elif normalize: example = example / 127.5 - 1. # cropping if crop: shape = tf.shape(example) if ratio: assert isinstance(crop, list) crop_h = crop[0] crop_w = crop[1] else: assert isinstance(crop, int) shortest = tf.cond(tf.less(shape[0], shape[1]), lambda: shape[0], lambda: shape[1]) crop_h = tf.cond(tf.less_equal(shortest, tf.constant(crop)), lambda: shortest, lambda: tf.constant(crop)) crop_w = crop_h if center: example = tf.image.resize_image_with_crop_or_pad(example, crop_h, crop_w) else: example = tf.random_crop(example, [crop_h, crop_w, 3]) # resize if resize: assert isinstance(resize, (int, float)) new_size = tf.stack([resize, resize]) example = tf.image.resize_images(example, new_size) # random horizontal flip if flip: example = tf.image.random_flip_left_right(example) return tf.transpose(example, [2, 0, 1])
Example #17
Source File: cifar100.py From TensorflowFramework with BSD 3-Clause "New" or "Revised" License | 5 votes |
def parse(self, mode, params, image, label): """Parse input record to features and labels.""" image = tf.cast(image, tf.float32) image = tf.reshape(image, [IMAGE_SIZE, IMAGE_SIZE, 3]) if mode == tf.estimator.ModeKeys.TRAIN: image = tf.image.resize_image_with_crop_or_pad( image, IMAGE_SIZE + 4, IMAGE_SIZE + 4) image = tf.random_crop(image, [IMAGE_SIZE, IMAGE_SIZE, 3]) image = tf.image.random_flip_left_right(image) image = tf.image.per_image_standardization(image) return {"image": image}, {"label": label}
Example #18
Source File: cifar10.py From TensorflowFramework with BSD 3-Clause "New" or "Revised" License | 5 votes |
def parse(self, mode, params, image, label): """Parse input record to features and labels.""" image = tf.cast(image, tf.float32) image = tf.reshape(image, [IMAGE_SIZE, IMAGE_SIZE, 3]) if mode == tf.estimator.ModeKeys.TRAIN: image = tf.image.resize_image_with_crop_or_pad( image, IMAGE_SIZE + 4, IMAGE_SIZE + 4) image = tf.random_crop(image, [IMAGE_SIZE, IMAGE_SIZE, 3]) image = tf.image.random_flip_left_right(image) image = tf.image.per_image_standardization(image) return {"image": image}, {"label": label}
Example #19
Source File: models.py From enas with Apache License 2.0 | 5 votes |
def build_valid_rl(self, shuffle=False): print "-" * 80 print "Build valid graph on shuffled data" with tf.device("/cpu:0"): # shuffled valid data: for choosing validation model if not shuffle and self.data_format == "NCHW": self.images["valid_original"] = np.transpose( self.images["valid_original"], [0, 3, 1, 2]) x_valid_shuffle, y_valid_shuffle = tf.train.shuffle_batch( [self.images["valid_original"], self.labels["valid_original"]], batch_size=self.batch_size, capacity=25000, enqueue_many=True, min_after_dequeue=0, num_threads=16, seed=self.seed, allow_smaller_final_batch=True, ) def _pre_process(x): x = tf.pad(x, [[4, 4], [4, 4], [0, 0]]) x = tf.random_crop(x, [32, 32, 3], seed=self.seed) x = tf.image.random_flip_left_right(x, seed=self.seed) if self.data_format == "NCHW": x = tf.transpose(x, [2, 0, 1]) return x if shuffle: x_valid_shuffle = tf.map_fn(_pre_process, x_valid_shuffle, back_prop=False) logits = self._model(x_valid_shuffle, False, reuse=True) valid_shuffle_preds = tf.argmax(logits, axis=1) valid_shuffle_preds = tf.to_int32(valid_shuffle_preds) self.valid_shuffle_acc = tf.equal(valid_shuffle_preds, y_valid_shuffle) self.valid_shuffle_acc = tf.to_int32(self.valid_shuffle_acc) self.valid_shuffle_acc = tf.reduce_sum(self.valid_shuffle_acc)
Example #20
Source File: micro_child.py From enas with Apache License 2.0 | 5 votes |
def build_valid_rl(self, shuffle=False): print("-" * 80) print("Build valid graph on shuffled data") with tf.device("/cpu:0"): # shuffled valid data: for choosing validation model if not shuffle and self.data_format == "NCHW": self.images["valid_original"] = np.transpose( self.images["valid_original"], [0, 3, 1, 2]) x_valid_shuffle, y_valid_shuffle = tf.train.shuffle_batch( [self.images["valid_original"], self.labels["valid_original"]], batch_size=self.batch_size, capacity=25000, enqueue_many=True, min_after_dequeue=0, num_threads=16, seed=self.seed, allow_smaller_final_batch=True, ) def _pre_process(x): x = tf.pad(x, [[4, 4], [4, 4], [0, 0]]) x = tf.random_crop(x, [32, 32, 3], seed=self.seed) x = tf.image.random_flip_left_right(x, seed=self.seed) if self.data_format == "NCHW": x = tf.transpose(x, [2, 0, 1]) return x if shuffle: x_valid_shuffle = tf.map_fn( _pre_process, x_valid_shuffle, back_prop=False) logits = self._model(x_valid_shuffle, is_training=True, reuse=True) valid_shuffle_preds = tf.argmax(logits, axis=1) valid_shuffle_preds = tf.to_int32(valid_shuffle_preds) self.valid_shuffle_acc = tf.equal(valid_shuffle_preds, y_valid_shuffle) self.valid_shuffle_acc = tf.to_int32(self.valid_shuffle_acc) self.valid_shuffle_acc = tf.reduce_sum(self.valid_shuffle_acc)
Example #21
Source File: general_child.py From enas with Apache License 2.0 | 5 votes |
def build_valid_rl(self, shuffle=False): print("-" * 80) print("Build valid graph on shuffled data") with tf.device("/cpu:0"): # shuffled valid data: for choosing validation model if not shuffle and self.data_format == "NCHW": self.images["valid_original"] = np.transpose( self.images["valid_original"], [0, 3, 1, 2]) x_valid_shuffle, y_valid_shuffle = tf.train.shuffle_batch( [self.images["valid_original"], self.labels["valid_original"]], batch_size=self.batch_size, capacity=25000, enqueue_many=True, min_after_dequeue=0, num_threads=16, seed=self.seed, allow_smaller_final_batch=True, ) def _pre_process(x): x = tf.pad(x, [[4, 4], [4, 4], [0, 0]]) x = tf.random_crop(x, [32, 32, 3], seed=self.seed) x = tf.image.random_flip_left_right(x, seed=self.seed) if self.data_format == "NCHW": x = tf.transpose(x, [2, 0, 1]) return x if shuffle: x_valid_shuffle = tf.map_fn( _pre_process, x_valid_shuffle, back_prop=False) logits = self._model(x_valid_shuffle, False, reuse=True) valid_shuffle_preds = tf.argmax(logits, axis=1) valid_shuffle_preds = tf.to_int32(valid_shuffle_preds) self.valid_shuffle_acc = tf.equal(valid_shuffle_preds, y_valid_shuffle) self.valid_shuffle_acc = tf.to_int32(self.valid_shuffle_acc) self.valid_shuffle_acc = tf.reduce_sum(self.valid_shuffle_acc)
Example #22
Source File: segment_preprocesor.py From CVTron with Apache License 2.0 | 5 votes |
def random_crop_or_pad_image_and_label(image, label, crop_height, crop_width, ignore_label): """Crops and/or pads an image to a target width and height. Resizes an image to a target width and height by rondomly cropping the image or padding it evenly with zeros. Args: image: 3-D Tensor of shape `[height, width, channels]`. label: 3-D Tensor of shape `[height, width, 1]`. crop_height: The new height. crop_width: The new width. ignore_label: Label class to be ignored. Returns: Cropped and/or padded image. If `images` was 3-D, a 3-D float Tensor of shape `[new_height, new_width, channels]`. """ label = label - ignore_label # Subtract due to 0 padding. label = tf.to_float(label) image_height = tf.shape(image)[0] image_width = tf.shape(image)[1] image_and_label = tf.concat([image, label], axis=2) image_and_label_pad = tf.image.pad_to_bounding_box(image_and_label, 0, 0, tf.maximum(crop_height, image_height), tf.maximum(crop_width, image_width)) image_and_label_crop = tf.random_crop(image_and_label_pad, [crop_height, crop_width, 4]) image_crop = image_and_label_crop[:, :, :3] label_crop = image_and_label_crop[:, :, 3:] label_crop += ignore_label label_crop = tf.to_int32(label_crop) return image_crop, label_crop
Example #23
Source File: allen_brain.py From BERT with Apache License 2.0 | 5 votes |
def preprocess_example(self, example, mode, hparams): # Crop to target shape instead of down-sampling target, leaving target # of maximum available resolution. target_shape = (self.output_dim, self.output_dim, self.num_channels) example["targets"] = tf.random_crop(example["targets"], target_shape) example["inputs"] = image_utils.resize_by_area(example["targets"], self.input_dim) if self.inpaint_fraction is not None and self.inpaint_fraction > 0: mask = random_square_mask((self.input_dim, self.input_dim, self.num_channels), self.inpaint_fraction) example["inputs"] = tf.multiply( tf.convert_to_tensor(mask, dtype=tf.int64), example["inputs"]) if self.input_dim is None: raise ValueError("Cannot train in-painting for examples with " "only targets (i.e. input_dim is None, " "implying there are only targets to be " "generated).") return example
Example #24
Source File: vqa_utils.py From BERT with Apache License 2.0 | 5 votes |
def vqa_v2_preprocess_image( image, height, width, mode, resize_side=512, distort=True, image_model_fn="resnet_v1_152", ): """vqa v2 preprocess image.""" image = tf.image.convert_image_dtype(image, dtype=tf.float32) assert resize_side > 0 if resize_side: image = _aspect_preserving_resize(image, resize_side) if mode == tf.estimator.ModeKeys.TRAIN: image = tf.random_crop(image, [height, width, 3]) else: # Central crop, assuming resize_height > height, resize_width > width. image = tf.image.resize_image_with_crop_or_pad(image, height, width) image = tf.clip_by_value(image, 0.0, 1.0) if mode == tf.estimator.ModeKeys.TRAIN and distort: image = _flip(image) num_distort_cases = 4 # pylint: disable=unnecessary-lambda image = _apply_with_random_selector( image, lambda x, ordering: _distort_color(x, ordering), num_cases=num_distort_cases) if image_model_fn.startswith("resnet_v1"): # resnet_v1 uses vgg preprocessing image = image * 255. image = _mean_image_subtraction(image, [_R_MEAN, _G_MEAN, _B_MEAN]) elif image_model_fn.startswith("resnet_v2"): # resnet v2 uses inception preprocessing image = tf.subtract(image, 0.5) image = tf.multiply(image, 2.0) return image
Example #25
Source File: image_utils.py From BERT with Apache License 2.0 | 5 votes |
def cifar_image_augmentation(images): """Image augmentation suitable for CIFAR-10/100. As described in https://arxiv.org/pdf/1608.06993v3.pdf (page 5). Args: images: a Tensor. Returns: Tensor of the same shape as images. """ images = tf.image.resize_image_with_crop_or_pad(images, 40, 40) images = tf.random_crop(images, [32, 32, 3]) images = tf.image.random_flip_left_right(images) return images
Example #26
Source File: image_utils.py From BERT with Apache License 2.0 | 5 votes |
def image_augmentation(images, do_colors=False, crop_size=None): """Image augmentation: cropping, flipping, and color transforms.""" if crop_size is None: crop_size = [299, 299] images = tf.random_crop(images, crop_size + [3]) images = tf.image.random_flip_left_right(images) if do_colors: # More augmentation, but might be slow. images = tf.image.random_brightness(images, max_delta=32. / 255.) images = tf.image.random_saturation(images, lower=0.5, upper=1.5) images = tf.image.random_hue(images, max_delta=0.2) images = tf.image.random_contrast(images, lower=0.5, upper=1.5) return images
Example #27
Source File: image_utils.py From fine-lm with MIT License | 5 votes |
def image_augmentation(images, do_colors=False, crop_size=None): """Image augmentation: cropping, flipping, and color transforms.""" if crop_size is None: crop_size = [299, 299] images = tf.random_crop(images, crop_size + [3]) images = tf.image.random_flip_left_right(images) if do_colors: # More augmentation, but might be slow. images = tf.image.random_brightness(images, max_delta=32. / 255.) images = tf.image.random_saturation(images, lower=0.5, upper=1.5) images = tf.image.random_hue(images, max_delta=0.2) images = tf.image.random_contrast(images, lower=0.5, upper=1.5) return images
Example #28
Source File: pix2pix.py From Chinese-Character-and-Calligraphic-Image-Processing with MIT License | 5 votes |
def discriminator(self, inputs, inputs_condition): inputs = tf.concat([inputs, inputs_condition], axis=3) inputs = tf.random_crop(inputs, [1, 70, 70, 2]) with tf.variable_scope("discriminator", reuse=tf.AUTO_REUSE): with tf.variable_scope("conv1"): inputs = leaky_relu(conv2d("conv1", inputs, 64, 5, 2)) with tf.variable_scope("conv2"): inputs = leaky_relu(instanceNorm("in1", conv2d("conv2", inputs, 128, 5, 2))) with tf.variable_scope("conv3"): inputs = leaky_relu(instanceNorm("in2", conv2d("conv3", inputs, 256, 5, 2))) with tf.variable_scope("conv4"): inputs = leaky_relu(instanceNorm("in3", conv2d("conv4", inputs, 512, 5, 2))) with tf.variable_scope("outputs"): inputs = conv2d("conv5", inputs, 1, 5, 1) return inputs
Example #29
Source File: model_upsampling.py From CycleGAN_Tensorlayer with MIT License | 5 votes |
def cyclegan_discriminator_patch(inputs, is_train=True, reuse=False, name='discriminator'): df_dim = 64 # Dimension of discrim filters in first conv layer. [64] w_init = tf.random_normal_initializer(stddev=0.02) gamma_init = tf.random_normal_initializer(1., 0.02) lrelu = lambda x: tl.act.lrelu(x, 0.2) with tf.variable_scope(name, reuse=reuse): tl.layers.set_name_reuse(reuse) # patch_inputs = tf.random_crop(inputs, [1, 70, 70, 3]) net_in = InputLayer(inputs, name='d/in') # 1st net_h0 = Conv2d(net_in, df_dim, (4, 4), (2, 2), act=lrelu, padding='SAME', W_init=w_init, name='d/h0/conv2d') # C64 net_h1 = Conv2d(net_h0, df_dim * 2, (4, 4), (2, 2), act=None, padding='SAME', W_init=w_init, name='d/h1/conv2d') net_h1 = InstanceNormLayer(net_h1, act=lrelu, name="d/h1/instance_norm") # 2nd net_h2 = Conv2d(net_h1, df_dim * 4, (4, 4), (2, 2), act=None, padding='SAME', W_init=w_init, name='d/h2/conv2d') net_h2 = InstanceNormLayer(net_h2, act=lrelu, name="d/h2/instance_norm") # 3rd net_h3 = Conv2d(net_h2, df_dim * 8, (4, 4), (2, 2), act=None, padding='SAME', W_init=w_init, name='d/h3/conv2d') net_h3 = InstanceNormLayer(net_h3, act=lrelu, name="d/h3/instance_norm") # output net_h4 = Conv2d(net_h3, 1, (4, 4), (1, 1), act=None, padding='SAME', W_init=w_init, name='d/h4/conv2d') logits = net_h4.outputs return net_h4,logits
Example #30
Source File: image_reader.py From LIP_JPPNet with MIT License | 5 votes |
def random_crop_and_pad_image_and_labels(image, label, crop_h, crop_w, ignore_label=255): """ Randomly crop and pads the input images. Args: image: Training image to crop/ pad. label: Segmentation mask to crop/ pad. crop_h: Height of cropped segment. crop_w: Width of cropped segment. ignore_label: Label to ignore during the training. """ label = tf.cast(label, dtype=tf.float32) label = label - ignore_label # Needs to be subtracted and later added due to 0 padding. combined = tf.concat([image, label], 2) image_shape = tf.shape(image) combined_pad = tf.image.pad_to_bounding_box(combined, 0, 0, tf.maximum(crop_h, image_shape[0]), tf.maximum(crop_w, image_shape[1])) last_image_dim = tf.shape(image)[-1] last_label_dim = tf.shape(label)[-1] combined_crop = tf.random_crop(combined_pad, [crop_h,crop_w,4]) img_crop = combined_crop[:, :, :last_image_dim] label_crop = combined_crop[:, :, last_image_dim:] label_crop = label_crop + ignore_label label_crop = tf.cast(label_crop, dtype=tf.uint8) # Set static shape so that tensorflow knows shape at compile time. img_crop.set_shape((crop_h, crop_w, 3)) label_crop.set_shape((crop_h,crop_w, 1)) return img_crop, label_crop