25 #ifndef MNISTPATCHRECONSTRUCTIONAPPLICATION_H_
26 #define MNISTPATCHRECONSTRUCTIONAPPLICATION_H_
29 #include <opengl/application/OpenGLContinuousLearningApplication.hpp>
31 #include <opengl/visualization/WindowMatrix2D.hpp>
32 #include <opengl/visualization/WindowCollectorChart.hpp>
33 using namespace mic::opengl::visualization;
35 #include <importers/MNISTPatchImporter.hpp>
38 using namespace mic::mlnn;
41 namespace applications {
64 virtual void initializePropertyDependentVariables();
71 virtual void initialize(
int argc,
char* argv[]);
76 virtual bool performLearningStep();
81 virtual void collectTestStatistics();
86 virtual void populateTestStatistics();
mic::types::MatrixXfPtr reconstructed_image
Reconstructed image/matrix.
mic::importers::MNISTPatchImporter * training_dataset_importer
Importer responsible for loading training dataset.
mic::importers::MNISTPatchImporter * test_dataset_importer
Importer responsible for loading testing dataset.
mic::types::MatrixXfPtr input_image
Input image/matrix.
WindowCollectorChart< float > * w_chart
Window for displaying chart with statistics.
Class implementing a simple MNIST patch reconstruction with multi-layer neural net.
WindowMatrix2D * w2d_input
Window for displaying the input image.
mic::configuration::Property< bool > mlnn_load
Property: flag denoting whether the nn should be loaded from a file (at the initialization of the tas...
mic::configuration::Property< std::string > mlnn_filename
Property: name of the file to which the neural network will be serialized (or deserialized from)...
mic::configuration::Property< bool > mlnn_save
Property: flag denoting whether the nn should be saved to a file (after every episode end)...
BackpropagationNeuralNetwork< float > neural_net
Multi-layer neural network.
WindowMatrix2D * w2d_reconstruction
Window for displaying the reconstructed image.
size_t patch_size
Size of the patch - copied from importers.
mic::utils::DataCollectorPtr< std::string, float > collector_ptr
Data collector.