def createDataCSV(dataloc, lang):
""" Create images and labels CSV file for given data """
print("Creating " + lang + " dataset")
dirlist = glob.glob(dataloc + lang + "/*/")
dirlist.sort()
chars = [name[17] for name in dirlist]
images = np.zeros((1, 4096))
labels = []
for i in range(len(chars)):
imglist = glob.glob(dirlist[i] + '*.jpg')
imgs = np.array([letterNorm(cv2.imread(img, 0)) for img in imglist])
images = np.concatenate([images, imgs.reshape(len(imgs), 4096)])
labels.extend([i] * len(imgs))
images = images[1:]
labels = np.array(labels)
assert len(labels) == len(images)
print("Images: %d" % len(labels))
print("For %d different labels" % len(chars))
images, labels = correspondingShuffle([images, labels])
with open(dataloc + lang + '-data.csv', 'w') as csvfile:
writer = csv.writer(csvfile, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)
for row in images:
writer.writerow(row)
with open(dataloc + lang + '-labels.csv', 'w') as csvfile:
writer = csv.writer(csvfile, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)
writer.writerow(labels)
implt(images[-1].reshape(64,64), 'gray', 'Example')
print("CSV data files saved.\n")