I relied on the code mentioned, here, but with minor edits. The version that I have is as follows:
import numpy as np
import _pickle as cPickle
from PIL import Image
import sys,ospixels = []
labels = []
traindata = []
data=[]directory = 'C:\\Users\\abc\\Desktop\\Testing\\images'
for root, dirs, files in os.walk(directory):for file in files:floc = fileim = Image.open(str(directory) + '\\' + floc)pix = np.array(im.getdata())pixels.append(pix)labels.append(1)pixels = np.array(pixels)
labels = np.array(labels)
traindata.append(pixels)
traindata.append(labels)
traindata = np.array(traindata)
# do the same for validation and test data
# put all data and labels into 'data' array
cPickle.dump(data,open('data.pkl','wb'))
When I run the code, I get the following:
Traceback (most recent call last):File "pickle_data.py", line 24, in <module>traindata=np.array(traindata)
ValueError: could not broadcast input array from shape (22500,3) into shape (1)
How can I solve this issue?
Thanks.