for c in classes: im_dir = os.path.join(data_path, c) exists = os.path.join(pad_path, c) if os.path.isdir(exists) is False: os.mkdir(exists) images = os.listdir(im_dir) for im_name in images: im_path = os.path.join(im_dir, im_name) im_pad_path = os.path.join(exists, im_name) plankton = Segmentation(im_path, target_shape=(75, 75, 3)) plankton.segment() padded = plankton.get_padded() padded = cv2.cvtColor(padded, cv2.COLOR_RGB2BGR) cv2.imwrite(im_pad_path, padded) feats[im_name] = plankton.get_features() feat_list.append(plankton.get_features()) with open('features.p', 'wb') as handle: pickle.dump(feats, handle, protocol=pickle.HIGHEST_PROTOCOL) df_feats = pd.DataFrame(data=feat_list, columns=plankton.get_columns()) df_feats.to_csv('extracted_features.csv', index=False) mms = MinMaxScaler() mms.fit(df_feats.values) with open('normalizer.p', 'wb') as handle: pickle.dump(mms, handle, protocol=pickle.HIGHEST_PROTOCOL)