def predictOutput(image="DATA/mask/15_h.jpg", weights='model_w_new_512.h5', output_name='512result', channel=1, grey=False, dim=(512, 512, 1), f_ratio=[0.5]): IMAGE_PATH = image WEIGHTS_PATH = weights OUTPUT_PATH = output_name CHANNEL = channel GREY = grey model = net.NeuralNetwork() extractor = de.DataExtractor() model.load(dim, WEIGHTS_PATH) data = extractor.extractData(IMAGE_PATH, None, channel=CHANNEL, shape=dim, grey=GREY) #data=reframe(data,dim) shape = extractor.shape2(IMAGE_PATH, shape=dim) result = model.predictSet(data, shape, dim) io.imsave(OUTPUT_PATH + '.jpg', result) for ratio in f_ratio: im = scipy.misc.toimage(extractor.cutOff(result, ratio)) im.save(OUTPUT_PATH + '_' + str(ratio) + '_filtered.png') gc.collect()
def learnNetwork(image="DATA/mask/05_h.jpg", mask="DATA/mask/05_h.tif", mode='create', old_weights='model_w_new_128.h5', new_weights='model_w_new_128.h5', epochs=1, channel=1, gray=False, dim=(128, 128, 1)): IMAGE_PATH = image MASK_PATH = mask WEIGHTS_PATH = old_weights NEW_WEIGHTS_PATH = new_weights EPOCH_NUMBER = epochs CHANNEL = channel GREY = gray MODE = mode model = net.NeuralNetwork() extractor = de.DataExtractor() if MODE == 'create': model.create(dim) elif MODE == 'learn': model.load(dim, WEIGHTS_PATH) else: print('Bad mode. End of script...') sys.exit() train = extractor.extractData(IMAGE_PATH, MASK_PATH, channel=CHANNEL, shape=dim, grey=GREY) model.learn(train, epoch=EPOCH_NUMBER) model.save_weights(NEW_WEIGHTS_PATH) del train del model gc.collect()
import DataExtractor import ConnectionManager dataExtractor = DataExtractor.DataExtractor() ConnectionManager.connManager.registerReceiver(dataExtractor)
""" import gc import numpy as np import network as net import DataExtractor as de from skimage import io dim = (8, 8, 1) if dim[2] == 1: g = True else: g = False model = net.NeuralNetwork() extractor = de.DataExtractor() trainTemp = extractor.extractData("DATA/mask/01_h.jpg", "DATA/mask/01_h.tif", shape=dim, grey=g) train = (np.reshape(trainTemp[0], (trainTemp[0].shape[0], dim[2], dim[0], dim[1])), trainTemp[1]) del trainTemp model.create(size=dim) model.learn(train, epoch=10) trainTemp = extractor.extractData("DATA/mask/02_h.jpg",
import sys import pandas as pd sys.path.insert(0, "function/") from DataExtractor import * from RegClf import * #data extraction data = DataExtractor() X_train, X_test, Y_train, Y_test = data.extract() #fit and choose are regressions regression = RegressionClassifier(X_train, X_test, Y_train, Y_test) #choose are regression types regression.defineClassifierType([2, 3, 4, 5, 6]) regression.fit() regression.predict() regression.score() bestReg = regression.mostAccurateScore() regression.plotGraph(data.getRawExtract())
def __init__(self, filename, columns=None, background=False, outputDirectory=None, startColumn=None, saveImages=True): self.dataExtractor = DataExtractor.DataExtractor(filename) self.plotDataWriter = PlotDataWriter.PlotDataWriter() self.saveImages = saveImages self.dataPlot = DataPlot.DataPlot(self.done, self.skip, self.dump, self.exit, self.prev, background) self.background = background availablePlotColumns = self.dataExtractor.getAvailableColumns('background' if background else 'plot') try: if outputDirectory == None: filename = os.path.basename(filename) + '_results_' + str(int(time.time())) self.outputDirectory = os.path.join(os.getcwd(), filename) else: self.outputDirectory = outputDirectory # don't allow overwriting of directories if os.path.exists(self.outputDirectory): print("ERROR: Output directory already exists. Choose another directory or remove the exisiting output directory before continuing.") sys.exit() # attempt to make the output directory if it doesn't exist if not os.path.exists(self.outputDirectory): os.makedirs(self.outputDirectory) # attempt to add the image directory if it's required if saveImages: self.imageDirectory = os.path.join(self.outputDirectory, 'plots') if not os.path.exists(self.imageDirectory): os.makedirs(self.imageDirectory) print("Files will be output to: " + self.outputDirectory) except Exception as e: print("There was a problem creating the output directories.") print(e) sys.exit() # availableBackgroundcolumns = self.dataExtractor.getAvailableColumns('background') # # backgroundDataWriter = BackgroundDataWriter.BackgroundDataWriter() # for column in availableBackgroundcolumns: # _, yData = self.dataExtractor.extractData(column) # backgroundDataWriter.writeLine(column, sum(yData) / len(yData), np.var(yData)) # backgroundDataWriter.writeToFile(self.outputDirectory) # print("Background data processing completed.") #Ensure that the column names are valid if columns != None: errorColumns = [] for column in columns: if not column in availablePlotColumns: errorColumns.append(column) if len(errorColumns) != 0: print("Fatal Error! these column(s) do not exist for this mode: " + ', '.join(x for x in errorColumns)) sys.exit() self.columnsToPlot = columns elif startColumn != None: try: idx = availablePlotColumns.index(startColumn) self.columnsToPlot = availablePlotColumns[idx:] except: print("Start column: " + startColumn + " was not found.") else: self.columnsToPlot = availablePlotColumns if len(self.columnsToPlot) == 0: print("No columns to plot. Exiting.") sys.exit() self.currentPlotIndex = 0 self.printGuide() self.plotNext()
import learning, util, sys, DataExtractor from learning import * from DataExtractor import DataExtractor learner = StochasticGradientLearner(footballFeatureExtractor) data = list() for i in xrange(5, 13): data.append(DataExtractor(i).featureDictionary) train = dict() test = dict() for i in xrange(0, 4): train.update(data[i]) for i in xrange(4, 8): test.update(data[i]) from optparse import OptionParser parser = OptionParser() def default(str): return str + ' [Default: %default]' parser.add_option( '-f', '--featureExtractor',
from DataExtractor import * data = DataExtractor(11) data10 = DataExtractor(10) data9 = DataExtractor(9) print len(data.featureDictionary.items()) print len(data10.featureDictionary.items()) data.featureDictionary.update(data10.featureDictionary) print len(data.featureDictionary.items())