The overall size of all files is only around 40mb ...
But when you load the image files into memory, the images will decompressed and turned into arrays of pixels. Depending on the original image file format (and compression parameters) this could require an order of magnitude or more heap space.
It is not entirely clear what you are trying to achieve, but maybe you should consider only caching these images in memory when they are actually going to be used.