Skip to content

Instantly share code, notes, and snippets.

@nunenuh
Last active May 27, 2022 10:59
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nunenuh/8253b7d40060bcff26039841f9352419 to your computer and use it in GitHub Desktop.
Save nunenuh/8253b7d40060bcff26039841f9352419 to your computer and use it in GitHub Desktop.
Generate Random Uniform Colored Image with OpenCV
import random
import numpy as np
import matplotlib.pyplot as plt
from tqdm import tqdm, trange
from pathlib import Path
import cv2 as cv
def random_color_image(size=(600,800)):
r = int(np.random.uniform(0,255))
g = int(np.random.uniform(0,255))
b = int(np.random.uniform(0,255))
rgb = [r,g,b]
hex_color = "{:02x}{:02x}{:02x}".format(r,g,b)
img_base = np.ones((size[0], size[1], 3))
img_color = img_base * rgb
img = img_color.astype(np.uint8)
return img, hex_color
def generate_random_color_image(dst_path, num=100, img_size=(800,600)):
dst_path = Path(dst_path)
imsize_string = f'{img_size[0]}x{img_size[1]}px'
imsize = (img_size[1], img_size[0])
for idx in trange(1, num+1):
img, color = random_color_image(size=imsize)
fname = f'{idx:04}_{color}_{imsize_string}.jpg'
fpath = dst_path.joinpath(fname)
cv.imwrite(str(fpath), img)
if __name__ == '__main__':
root = '/data/extended/text_dataset/text_renderer/indo4b/sources/bg/color/'
generate_random_color_image(root)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment