似乎fetch_lfw_people函数不起作用,但我无法理解为什么。
这是测试代码:
In [1]: import numpy as np
In [2]: from sklearn import datasets
In [3]: lfw= datasets.fetch_lfw_people()
IOError Traceback (most recent call last)
<ipython-input-3-1f0795d3f6a9> in <module>()
----> 1 lfw= datasets.fetch_lfw_people()
C:\Python27\lib\site-packages\sklearn\datasets\lfw.pyc in fetch_lfw_people(data_
home, funneled, resize, min_faces_per_person, color, slice_, download_if_missing
)
270 faces, target, target_names = load_func(
271 data_folder_path, resize=resize,
--> 272 min_faces_per_person=min_faces_per_person, color=color, slice_=s
lice_)
273
274 # pack the results as a Bunch instance
C:\Python27\lib\site-packages\sklearn\externals\joblib\memory.pyc in __call__(se
lf, *args, **kwargs)
169 'directory %s'
170 % (name, argument_hash, output_dir))
--> 171 return self.call(*args, **kwargs)
172 else:
173 try:
C:\Python27\lib\site-packages\sklearn\externals\joblib\memory.pyc in call(self,
*args, **kwargs)
321 if self._verbose:
322 print self.format_call(*args, **kwargs)
--> 323 output = self.func(*args, **kwargs)
324 self._persist_output(output, output_dir)
325 duration = time.time() - start_time
C:\Python27\lib\site-packages\sklearn\datasets\lfw.pyc in _fetch_lfw_people(data
_folder_path, slice_, color, resize, min_faces_per_person)
195 target = np.searchsorted(target_names, person_names)
196
--> 197 faces = _load_imgs(file_paths, slice_, color, resize)
198
199 # shuffle the faces with a deterministic RNG scheme to avoid having
C:\Python27\lib\site-packages\sklearn\datasets\lfw.pyc in _load_imgs(file_paths,
slice_, color, resize)
149 if i % 1000 == 0:
150 logger.info("Loading face #%05d / %05d", i + 1, n_faces)
--> 151 face = np.asarray(imread(file_path)[slice_], dtype=np.float32)
152 face /= 255.0 # scale uint8 coded colors to the [0.0, 1.0] floa
ts
153 if resize is not None:
C:\Python27\lib\site-packages\scipy\misc\pilutil.pyc in imread(name, flatten)
100 """
101
--> 102 im = Image.open(name)
103 return fromimage(im,flatten=flatten)
104
C:\Python27\lib\site-packages\PIL\Image.pyc in open(fp, mode)
1978 pass
1979
-> 1980 raise IOError("cannot identify image file")
1981
1982 #
IOError: cannot identify image file
答案 0 :(得分:0)
Try using this to get your images
dataset = fetch_lfw_pairs(subset='train',
data_home=None,
resize=0.5,
color=False,
slice_=(slice(70, 195), slice(78, 172)),
download_if_missing=True)