def test_load_directory_data(): invalid_directory_path = 'invalid_directory_path' valid_dummy_directory = resource_filename('EmoPy','tests/unittests/resources/dummy_data_directory') empty_dummy_directory = resource_filename('EmoPy','tests/unittests/resources/dummy_empty_data_directory') channels = 1 # should raise error when receives an invalid directory path with pytest.raises(NotADirectoryError): DirectoryDataLoader(datapath=invalid_directory_path) # should raise error when tries to load empty directory data_loader = DirectoryDataLoader(datapath=empty_dummy_directory) with pytest.raises(AssertionError): data_loader.load_data()
from keras import backend as K K.set_image_data_format("channels_last") validation_split = 0.15 verbose = True model_name = 'inception_v3' target_dimensions = (128, 128) target_dimensions2 = (490, 640) #directory_path = r'C:\Users\localadmin\Desktop\final_proj\cohn-kanade-images2' directory_path = r'D:\Degree\Final project\cohn-kanade-formated2' data_loader = DirectoryDataLoader(datapath=directory_path, validation_split=validation_split, target_dimension=target_dimensions2, out_channels=3) dataset = data_loader.load_data() if verbose: dataset.print_data_details() print('Creating training/testing data...') train_images, train_labels = dataset.get_training_data() train_gen = DataGenerator().fit(train_images, train_labels) test_images, test_labels = dataset.get_test_data() test_gen = DataGenerator().fit(test_images, test_labels) print('Initializing neural network with InceptionV3 base model...') model = TransferLearningNN(model_name=model_name, emotion_map=dataset.get_emotion_index_map())
from EmoPy.src.directory_data_loader import DirectoryDataLoader from EmoPy.src.data_generator import DataGenerator from EmoPy.src.neuralnets import ConvolutionalNN from pkg_resources import resource_filename,resource_exists validation_split = 0.15 target_dimensions = (64, 64) channels = 1 verbose = True print('--------------- Convolutional Model -------------------') print('Loading data...') directory_path = resource_filename('EmoPy.examples','image_data/sample_image_directory') data_loader = DirectoryDataLoader(datapath=directory_path, validation_split=validation_split) dataset = data_loader.load_data() if verbose: dataset.print_data_details() print('Preparing training/testing data...') train_images, train_labels = dataset.get_training_data() train_gen = DataGenerator().fit(train_images, train_labels) test_images, test_labels = dataset.get_test_data() test_gen = DataGenerator().fit(test_images, test_labels) print('Training net...') model = ConvolutionalNN(target_dimensions, channels, dataset.get_emotion_index_map(), verbose=True) model.fit_generator(train_gen.generate(target_dimensions, batch_size=5), test_gen.generate(target_dimensions, batch_size=5),
from pkg_resources import resource_filename import numpy validation_split = 0.25 target_dimensions = (128, 128) target_dimensions2 = (490, 640) channels = 1 verbose = True print('--------------- Time-Delay Convolutional Model -------------------') print('Loading data...') directory_path = resource_filename('EmoPy.examples', "image_data/sample_image_series_directory") directory_path = r'D:\Degree\Final project\cohn-kanade-formated' data_loader = DirectoryDataLoader(datapath=directory_path, validation_split=validation_split, time_delay=10, target_dimension=target_dimensions2) dataset = data_loader.load_data() if verbose: dataset.print_data_details() print('Preparing training/testing data...') train_images, train_labels = dataset.get_training_data() train_gen = DataGenerator(time_delay=dataset.get_time_delay()).fit(train_images, train_labels) test_images, test_labels = dataset.get_test_data() test_gen = DataGenerator(time_delay=dataset.get_time_delay()).fit(test_images, test_labels) print('Training net...') model = TimeDelayConvNN(target_dimensions, channels, emotion_map=dataset.get_emotion_index_map(), time_delay=dataset.get_time_delay()) model.fit_generator(train_gen.generate(target_dimensions, batch_size=10),