title: How to load images from Google Cloud Storage with keras.preprocessing
body: <p>I am writing machine learning code that can be trained locally or in the cloud.  I am using keras.preprocessing to load images, which under the hood uses PIL.  It works fine for local files, but understandably doesn't understand Google Cloud Storage paths, like "gs://...".</p>
  
  <p><code>from keras.preprocessing import image
  image.load_img("gs://myapp-some-bucket/123.png")</code></p>
  
  <p>Gives this error:</p>
  
  <p><code>.../lib/python2.7/site-packages/keras/preprocessing/image.py", line 320, in load_img img = pil_image.open(path) File 
  .../lib/python2.7/site-packages/PIL/Image.py", line 2530, in open fp = builtins.open(filename, "rb") IOError: [Errno 2] No such file or directory: 'gs://myapp-some-bucket/123.png'
  </code></p>
  
  <p>What is the correct way of doing this?  I ultimately need a folder of images to be a single numpy array (images decoded and grayscale).</p>