Ejemplo n.º 1
0
def split(data, size=0.2, random_state=42):

    #Version 2.0 : VIRTUAL IMAGE SET
    if hasattr(data, "virtual"):
        if data.virtual == True:
            return split_virtual(data, size, random_state)

    X_train, X_test, y_train, y_test = train_test_split(data.X,
                                                        data.y,
                                                        test_size=size,
                                                        random_state=42)

    print("[X] Test set generation (size = ,", str(size), ",): Done")
    print("--- Train set : ", X_train.shape[0], "samples")
    print("--- Test set : ", X_test.shape[0], "samples")
    print("\n")

    train = ezset()
    train.X = X_train
    train.y = y_train
    train.synsets = data.synsets

    test = ezset()
    test.X = X_test
    test.y = y_test
    test.synsets = data.synsets

    return train, test
Ejemplo n.º 2
0
def split_virtual(data, size, random_state):

    data.imagedg._validation_split = size
    print("[Notice: ezutils.split_virtual(): Unused argument 'random_state']")

    train = ezset()
    train.virtual = True
    train.params = data.params
    train.imagedg = data.imagedg
    train.generator = train.imagedg.flow_from_directory(
        train.params["path"],
        target_size=train.params["resize"],
        batch_size=train.params["batch_size"],
        color_mode=train.params["color_mode"],
        class_mode=train.params["class_mode"],
        shuffle=True,
        subset="training")
    #Create virtual entry from memory (no memory consumption)
    train.X = np.zeros((train.generator.samples, ) +
                       train.generator.image_shape)
    train.y = np.zeros((train.generator.samples, ) +
                       (train.generator.num_classes, ))

    test = ezset()
    test.virtual = True
    test.params = data.params
    test.imagedg = data.imagedg
    test.generator = test.imagedg.flow_from_directory(
        test.params["path"],
        target_size=test.params["resize"],
        batch_size=test.params["batch_size"],
        color_mode=test.params["color_mode"],
        class_mode=test.params["class_mode"],
        shuffle=True,
        subset="validation")
    #Create virtual entry from memory (no memory consumption)
    test.X = np.zeros((test.generator.samples, ) + test.generator.image_shape)
    test.y = np.zeros((test.generator.samples, ) +
                      (test.generator.num_classes, ))

    return train, test
Ejemplo n.º 3
0
import keras

import matplotlib.pyplot as plt
import cv2
import numpy as np
from skimage.filters import prewitt
from skimage.filters import threshold_otsu
import time

# [EZSET]  -------------------------------------------------------------------
parameters = {
    "name": "Blob Test",
    "path": "C:\\Users\\daian\\Desktop\\DATA\\Blob_test\\",
    "resize": (64, 64)
}
data = ezset(parameters)

print(data.X.mean())

# [EZMODEL]  ----------------------------------------------------------------
ez = load_ezmodel(filename="blob")

print(ez.data_test.X.max())
print(ez.data_test.X.mean())
import sys
sys.exit()

ez.data_test = data
ez.transformerY = None

p = ez.predict()
Ejemplo n.º 4
0
from ezmodel.ezmodel import ezmodel
from ezmodel.ezutils import split
from ezmodel.ezblocks import *
import keras

# [EZSET]  -------------------------------------------------------------------
parameters = {
    "name": "Bacteria",
    "path": "C:\\Users\\daian\\Desktop\\DATA\\Bacteria8bit\\",
    "resize": (32, 32),
    "scaling": 1. / 255,
    "batch_size": 32,
    "color_mode": "grayscale",
    "class_mode": "categorical"
}
data = ezset(parameters, virtual=True)

#Split dataset into Train/Test subset
train, test = split(data, size=0.2)

# Show 1 images using generator
# x,y = train_gen.next()
# print(x)
# import matplotlib.pyplot as plt
# for i in range(0,1):
#     image = np.squeeze(x[i])
#     plt.imshow(image,cmap="gray")
#     plt.show()
#
# sys.exit()