/ImageData-Generator

Converts folders of images to chunks which can easily be saved/loaded into RAM (numpy).

Primary LanguagePythonMIT LicenseMIT

ImageData-Generator

Converts folders of images to chunks which can easily be saved/loaded into RAM (numpy).

Easily import your files and convert them to NumPy arrays. Automatically saves the arrays in segments which can easily be loaded into RAM.

To use:

dataGenerator(folder, im_size, mss = (1024 ** 3), flip = True, verbose = True)

folder: The directory, must be inside another folder named data.

im_size: The size each image should be resized to (ex. 128 = 128x128).

mss: Maximum Segment Size (in bytes), default 1GB.

flip: Toggle whether or not imported images should be duplicated and flipped.

verbose: Toggle whether the data generator prints information or not.

d = dataGenerator(folder, im_size)
d.get_batch(num)

num: Number of images to return

get_batch selects random images from the currently loaded segment, and counts the number of images sampled so that it can load a new segment when enough images have been sampled.

Feel free to steal this code for your own projects, and feel free to optimize it however you see fit!