/
io.py
45 lines (37 loc) · 1.17 KB
/
io.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
from __future__ import division, print_function, absolute_import
__all__ = ['imread']
from numpy import array
def imread(fname, flatten=False):
"""
Load an image from file.
Parameters
----------
fname : str
Image file name, e.g. ``test.jpg``.
flatten : bool, optional
If true, convert the output to grey-scale. Default is False.
Returns
-------
img_array : ndarray
The different colour bands/channels are stored in the
third dimension, such that a grey-image is MxN, an
RGB-image MxNx3 and an RGBA-image MxNx4.
Raises
------
ImportError
If the Python Imaging Library (PIL) can not be imported.
"""
try:
from PIL import Image
except ImportError:
raise ImportError("Could not import the Python Imaging Library (PIL)"
" required to load image files. Please refer to"
" http://pypi.python.org/pypi/PIL/ for installation"
" instructions.")
fp = open(fname, "rb")
im = Image.open(fp)
if flatten:
im = im.convert('F')
result = array(im)
fp.close()
return result