Hi All-
I’ve looked at the posted articles on this topic and have tried these things. I am not able to get past this error. Here is the error:
File “/image_aug/mydatasets.py”, line 160, in load_chestxray_dataset
dataset = TensorDataset(data, target)
File “/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataset.py”, line 36, in init
assert all(tensors[0].size(0) == tensor.size(0) for tensor in tensors)
File “/anaconda3/lib/python3.6/site-packages/torch/utils/data/dataset.py”, line 36, in
assert all(tensors[0].size(0) == tensor.size(0) for tensor in tensors)
TypeError: ‘int’ object is not callable
Here is the relevant code snippet:
filename is a list of image names to load. target is a list of labels
X_data = [ ]
for myFile in filename:
image = cv2.imread(’./download_imgs/’+myFile, cv2.IMREAD_GRAYSCALE)
image = (image.astype(np.float32, copy=False))/255
X_data.append(image)
image_data_final = torch.from_numpy(np.stack((X_data)))
target_final = torch.tensor(target, dtype=torch.int64)
data_final = torch.tensor(image_data_final, dtype=torch.float32)
data=data_final
target=target
dataset=TensorDataset(data, target)
I am not sure what is not working about this? Do the images need further transformation? Should they not be appended to a list, and use some other structure? Also, the list of labels and the list of images are the same size because they are both pulled as different cols from the same Pandas dataframe. Thanks for the help here!!