From 9b19bd9afcc1b23d05ae6b3550981aeea01025c2 Mon Sep 17 00:00:00 2001 From: cgohlke Date: Mon, 5 Dec 2011 15:57:09 -0800 Subject: [PATCH] Workaround 16 bit image to numpy array conversion bug in PIL --- skimage/io/_plugins/pil_plugin.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/skimage/io/_plugins/pil_plugin.py b/skimage/io/_plugins/pil_plugin.py index 7fc3a0fc..03ec85f3 100644 --- a/skimage/io/_plugins/pil_plugin.py +++ b/skimage/io/_plugins/pil_plugin.py @@ -20,7 +20,11 @@ def imread(fname, dtype=None): else: im = im.convert('RGB') - if 'A' in im.mode: + if im.mode == 'I;16': + shape = im.size + im = np.fromstring(im.tostring(), dtype=np.uint16) + im.shape = shape[::-1] + elif 'A' in im.mode: im = im.convert('RGBA') return np.array(im, dtype=dtype)