This project is an implementation of a multilayer perceptron for classifying handwritten letters of the Latin alphabet. Using this application you can train the neural network, analyse the results and interact with the graphical user interface developed on the Qt library.
- Classification of handwritten letters: Recognition of handwritten letters of the Latin alphabet.
- Multilayering: Possibility to customise from 2 to 5 hidden layers.
- Sigmoidal activation function: Application of sigmoidal function in hidden layers.
- Training: Application of the error back propagation method.
- Image handling: Loading and categorising BMP images.
- Results visualisation: Real-time display of results and error plots.
- Cross-validation: Cross-validation capability with selectable number of groups.
- Saving and loading the model: Saving weights to a file and loading them.
- **Image drawing:**Function for drawing two-colour square images.
- Qt interface: Nice and intuitive graphical interface.
The project offers two implementations of a multilayer perceptron:
- Graph model: Neurons are represented as node objects connected to each other.
- Matrix model: All layers are represented as weight matrices for optimised data handling.
Follow these steps to build and install the project:
-
Clone the repository:
git clone [URL repository]
-
Go to the project directory:
cd src
-
Project installation:
make install
After executing these commands, the project will be built and installed
on your system in the folderbin/Release
.
To build the entire project, including installation, testing, styling, code validation, code coverage report generation, and archive creation. code validation, code coverage report generation, and archive creation, perform the following steps:
-
Go to the project directory:
cd src
-
Project assembly:
make all
After executing this command, all the steps described will be executed.
To delete an installed project, perform the following steps:
-
Go to the project directory:
cd src
-
Deleting a project:
make uninstall
After executing these commands the project will be removed from your system.
P.S. If the installation files were moved from /bin/ then deletion will not occur, you need to delete the files manually.
Follow these steps to build and run tests on the project:
-
Move to the project directory:
cd src
-
Build and run tests:
make tests
After executing these commands, an executable file will be created in the bin/Testing
folder, which contains all the tests of the project.
file containing all the tests of the project.
Perform the following steps to generate a code coverage report for tests:
-
Go to the project directory:
cd src
-
Report generation:
make gcov_report
After executing these commands, a code coverage report will be generated in the bin/Testing
folder.
Follow the steps below to build the project archive:
-
Go to the project directory:
cd src
-
Assembly of the archive:
make dist
After executing this command, an archive will be created in the project folder, containing all necessary files for building and running the project.
To perform code style checking according to Google Style, follow the steps below:
-
Go to the project directory:
cd src
-
Start style check:
make check
After executing this command, the entire project code will be style-checked.
To remove all temporary and build files created during compilation and testing, follow these steps:
-
Go to the project directory:
cd src
-
Clearing the project:
make clean
After executing this command, all temporary and assembly files will be deleted.