Fix numpy 1.9 warnings about array.fromstring

This commit is contained in:
Tony S Yu
2015-02-16 22:41:28 -06:00
parent 7da811993a
commit 977ec17d8a
+10 -7
View File
@@ -176,20 +176,23 @@ def ndarray_to_pil(arr, format_str=None):
mode = 'L'
mode_base = 'L'
try:
array_buffer = arr.tobytes()
except AttributeError:
array_buffer = arr.tostring() # Numpy < 1.9
if arr.ndim == 2:
im = Image.new(mode_base, arr.T.shape)
try:
im.frombytes(arr.tobytes(), 'raw', mode)
im.frombytes(array_buffer, 'raw', mode)
except AttributeError:
im.fromstring(arr.tostring(), 'raw', mode)
im.fromstring(array_buffer, 'raw', mode) # PIL 1.1.7
else:
image_shape = (arr.shape[1], arr.shape[0])
try:
im = Image.frombytes(mode, (arr.shape[1], arr.shape[0]),
arr.tobytes())
im = Image.frombytes(mode, image_shape, array_buffer)
except AttributeError:
im = Image.fromstring(mode, (arr.shape[1], arr.shape[0]),
arr.tostring())
im = Image.fromstring(mode, image_shape, array_buffer) # PIL 1.1.7
return im