jazzsaxmafia / Weakly_detector

Tensorflow implementation of "Learning Deep Features for Discriminative Localization"
361 stars 87 forks source link

TypeError: 'map' object is not subscriptable #10

Open YangBain opened 7 years ago

YangBain commented 7 years ago

@jazzsaxmafia Hello, :\Tesnsorflow\Weaklydetector\src>python train.caltech.py Traceback (most recent call last): File "train.caltech.py", line 44, in image_paths_train = np.hstack(map(lambda one_class: one_class[:-10], image_paths_per_label)) File "C:\Program Files\Anaconda3\lib\site-packages\numpy\core\shape_base.py", line 275, in hstack arrs = [atleast_1d(_m) for _m in tup] File "C:\Program Files\Anaconda3\lib\site-packages\numpy\core\shape_base.py", line 275, in arrs = [atleast_1d(_m) for _m in tup] File "train.caltech.py", line 44, in image_paths_train = np.hstack(map(lambda one_class: one_class[:-10], image_paths_per_label)) TypeError: 'map' object is not subscriptable


:\Tesnsorflow\Weaklydetector\src>python train.caltech.py Traceback (most recent call last): File "train.caltech.py", line 40, in image_paths_train = np.hstack(list(map(lambda one_class: one_class[:-10], image_paths_per_label))) File "train.caltech.py", line 40, in image_paths_train = np.hstack(list(map(lambda one_class: one_class[:-10], image_paths_per_label))) TypeError: 'map' object is not subscriptable

Any idea of this problem? Thank you very much.

Sabergu commented 7 years ago

Hello,I have a question.Where is the "caffe_layers_value.pickle"?

my1347 commented 7 years ago

I have the same issue,

YangBain commented 7 years ago

@my1347 add list before map, just like list(map()), you can solve your problems.

my1347 commented 7 years ago

@YangBain already do that, but it didn't work

eanderson4 commented 6 years ago

I know this is a few months old, but I just encountered same issue and fixed.

@my1347 did you do it for the lines before np.hstack? image_paths_per_label is a map and trying to be subscribed in the next line, so the list conversion also has to happen on the preceeding line as well.

lz666win commented 6 years ago

@eanderson4 I use python3.5.4 ,modified like this: image_paths_per_label = list(map(lambda one_dir: map(lambda one_file: os.path.join( dataset_path, one_dir, one_file ), os.listdir( os.path.join( dataset_path, one_dir))), image_dir_list)) image_paths_train = np.hstack(list(map(lambda one_class: one_class[:-10], image_paths_per_label)))

it still do not work ,same problem

Rahul-Venugopal commented 5 years ago

@lz666win In that line there are two map (which is marked bold below) , if you replace that also with list(map) it works

image_paths_per_label = list(map(lambda one_dir: map(lambda one_file: os.path.join( dataset_path, one_dir, one_file ), os.listdir( os.path.join( dataset_path, one_dir))), image_dir_list))

bossajie commented 5 years ago

same issue

siwarsiw commented 3 years ago

I know this is a few months old, but I just encountered same issue and fixed.

@my1347 did you do it for the lines before np.hstack? image_paths_per_label is a map and trying to be subscribed in the next line, so the list conversion also has to happen on the preceeding line as well.

can more explain to me how can i do to fix the issue?