Update: 2020-05-07
We now recommend using the imageio
library for image reading and writing. Also, with Python 3, StringIO changes to BytesIO:
from io import BytesIO
import imageio
buf = BytesIO()
imageio.imwrite(buf, image, format='png')
scikit-image
stores images as numpy arrays, therefore you can use a package such as matplotlib
to do so:
import matplotlib.pyplot as plt
from StringIO import StringIO
s = StringIO()
plt.imsave(s, img)
This may be worth adding as default behaviour to skimage.io.imsave
, so if you want you can also file an issue at https://github.com/scikit-image/scikit-image.