예제 #1
0
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)