I solved my problem, here is the details below:
First, I recheck this error imformation:
File "/usr/local/lib/python2.7/dist-packages/scikit_image-0.11.3-py2.7-linux-x86_64.egg/skimage/io/_plugins/pil_plugin.py", line 52, in imread
raise ValueError('Could not load "%s"\nPlease see documentation at: %s' % (fname, site))
ValueError: Could not load "bird.jpg"
Please see documentation at: http://pillow.readthedocs.org/en/latest/installation.html#external-libraries
it is a error with imread, I checked the file pil_plugin.py, I found it got thiss error when it came to
im = Image.open(fname)
try:
# this will raise an IOError if the file is not readable
im.getdata()[0]
except IOError:
site = "http://pillow.readthedocs.org/en/latest/installation.html#external-libraries"
raise ValueError('Could not load "%s"\nPlease see documentation at: %s' % (fname, site))
else:
return pil_to_ndarray(im, dtype=dtype, img_num=img_num)
so it is most probably wrong with im.getdata(), then I run it and it raise an error:
im.getdata() IOError: broken data stream when reading image file.
then I followed Matt W-D's solution to reinstall jpeg6, delete the PIL package installed by Pillow, and reinstall PIL by downloading file from http://effbot.org/downloads#pil.
At last, I linked the libjpeg
ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib
ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib
ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib
sudo ldconfigthe
The error disappeared