本人在Ubuntu 16.04版本下,用Anaconda 学习,编写以下代码一直出错,请大家帮我看看,十分感谢!
#!/path/to/python2.7.15/python
from skimage import data_dir,io,color,transform,util
import numpy as np
global video_read
class AVILoader:
video_file = '/home/wljiang/2.avi'
def __call__(self, frame):
#return io.imread(self.video_file, frame)
return video_read(self.video_file, frame)
avi_load = AVILoader()
frames = range(0, 100, 10) # 0, 10, 20, ...
ic =io.ImageCollection(frames, load_func=avi_load)
for i in range(len(ic)):
io.imsave('/home/wljiang/avijpg/'+np.str(i)+'.jpg',ic[i])
运行中出现错误,提示如下:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
in ()
19 #print(len(ic))
20 for i in range(len(ic)):
---> 21 io.imsave('/home/wljiang/avijpg/'+np.str(i)+'.jpg',ic[i])
22
/home/wljiang/anaconda2/lib/python2.7/site-packages/skimage/io/collection.pyc in getitem(self, n)
266 raise
267 else:
--> 268 self.data[idx] = self.load_func(self.files[n], **kwargs)
269 self._cached = n
270
in call(self, frame)
10 def call(self, frame):
11 #return io.imread(self.video_file, frame)
---> 12 return video_read(self.video_file, frame)
13
14 avi_load = AVILoader()
NameError: global name 'video_read' is not defined