Skip to content

Instantly share code, notes, and snippets.

@ameycodes
ameycodes / image_inpainting.py
Last active June 28, 2020 06:28
Image Inpainting using OpenCV
import cv2
import argparse
# --image : Source image
# --mask : Binary mask indicating pixels to be inpainted
# --method : Inpainting algorithm to be used Telea/NS
# --radius : Radius of neighborhood pixels to be considered for interpolation purpose
a = argparse.ArgumentParser()
a.add_argument("-i", "--image", type=str, required=True, help="path of image to be used")
@ameycodes
ameycodes / data_aug_zoom.py
Created March 15, 2020 11:54
Random Zoom Augmentation
from numpy import expand_dims
from tensorflow.keras.preprocessing.image import load_img
from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt
img = load_img('golden_retriever.jpg')
data = img_to_array(img)
samples = expand_dims(data, 0)
datagen = ImageDataGenerator(zoom_range=[0.5,1.5])
it = datagen.flow(samples, batch_size=1)
@ameycodes
ameycodes / data_aug_brightness.py
Created March 15, 2020 11:48
Random Brightness Augmentation
from numpy import expand_dims
from tensorflow.keras.preprocessing.image import load_img
from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt
img = load_img('golden_retriever.jpg')
data = img_to_array(img)
samples = expand_dims(data, 0)
datagen = ImageDataGenerator(brightness_range=[0.2,1.0])
it = datagen.flow(samples, batch_size=1)
@ameycodes
ameycodes / data_aug_rotation.py
Created March 15, 2020 11:45
Random Rotation Augmentation
from numpy import expand_dims
from tensorflow.keras.preprocessing.image import load_img
from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt
img = load_img('golden_retriever.jpg')
data = img_to_array(img)
samples = expand_dims(data, 0)
datagen = ImageDataGenerator(rotation_range=360)
it = datagen.flow(samples, batch_size=1)
@ameycodes
ameycodes / data_aug_flip.py
Created March 15, 2020 11:36
Horizontal and Vertical Flip Augmentation
from numpy import expand_dims
from tensorflow.keras.preprocessing.image import load_img
from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt
img = load_img('golden_retriever.jpg')
data = img_to_array(img)
samples = expand_dims(data, 0)
# use parameter vertical_flip for vertical flip
datagen = ImageDataGenerator(horizontal_flip=True)
@ameycodes
ameycodes / data_aug_vertical.py
Created March 15, 2020 11:20
Vertical Data Augmentation
from numpy import expand_dims
from tensorflow.keras.preprocessing.image import load_img
from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt
img = load_img('golden_retriever.jpg')
data = img_to_array(img)
samples = expand_dims(data, 0)
datagen = ImageDataGenerator(height_shift_range=0.5)
it = datagen.flow(samples, batch_size=1)
@ameycodes
ameycodes / data_aug_horizontal.py
Last active November 15, 2020 06:36
Horizontal Data Augmentation
from numpy import expand_dims
from tensorflow.keras.preprocessing.image import load_img
from tensorflow.keras.preprocessing.image import img_to_array
from tensorflow.keras.preprocessing.image import ImageDataGenerator
import matplotlib.pyplot as plt
img = load_img('golden_retriever.jpg')
data = img_to_array(img)
samples = expand_dims(data, 0)
# create generator instance
datagen = ImageDataGenerator(width_shift_range=[-0.3,0.3])