diff --git a/scikits/image/io/_plugins/pil_plugin.ini b/scikits/image/io/_plugins/pil_plugin.ini index 7afa244f..16e2926d 100644 --- a/scikits/image/io/_plugins/pil_plugin.ini +++ b/scikits/image/io/_plugins/pil_plugin.ini @@ -1,4 +1,4 @@ [pil] description = Image reading via the Python Imaging Library -provides = imread, imsave +provides = imread, imsave, imshow diff --git a/scikits/image/io/_plugins/pil_plugin.py b/scikits/image/io/_plugins/pil_plugin.py index 27f7ee67..a36b0257 100644 --- a/scikits/image/io/_plugins/pil_plugin.py +++ b/scikits/image/io/_plugins/pil_plugin.py @@ -92,3 +92,18 @@ def imsave(fname, arr): img = Image.fromstring(mode, (arr.shape[1], arr.shape[0]), arr.tostring()) img.save(fname) + +def imshow(arr): + """Display an image, using PIL's default display command. + + Parameters + ---------- + arr : ndarray + Image to display. Images of dtype float are assumed to be in + [0, 1]. Images of dtype uint8 are in [0, 255]. + + """ + if np.issubdtype(arr.dtype, float): + arr = (arr * 255).astype(np.uint8) + + Image.fromarray(arr).show()