"Simplicity is the ultimate sophistication" - Leonardo da Vinci (attributed)
A Simple Image Processing Artificial Intelligence, by Dams.
SIPAI is a neural network that builds upon my previous SMLP project. Its initial focus is on image enhancement, with plans for future releases to incorporate additional features such as image anomaly detection and more.
It uses a Multi-Layer Perceptron (MLP) architecture, with a modification that incorporates elements of a Recurrent Neural Network (RNN) to handle spatial information.
WARNING : project still under early development...
WARNING : Vulkan feature is very experimental, and is currently limited to one hidden layer (in addition to the input and the output layers)
Requirements for compiling the source code:
- A C++20 compiler (like the GNU C++
g++-12
on Linux or Visual Studio and its compiler on Windows) - The OpenCV library (if using Vulkan: with OpenGL support). On Windows check how to update the system path for OpenCV, you must also add an
OpenCV_BUILD
env variable that refer to theopencv build
directory. - The Intel TBB library
- The Vulkan SDK library (on Debian:
sudo apt-get -y install libvulkan1 libvulkan-dev mesa-vulkan-drivers vulkan-tools
, on Windows: https://vulkan.lunarg.com/sdk/home#windows). - The GLSL tools to use with Vulkan (on Debian:
sudo apt-get -y install glslang-tools spirv-tools
) - CMake
- The Qt6 libraries for the GUI version.
- on Windows:
- Image Encoding: Ensure that your image names are encoded in a format compatible with your system (for example, ASCII). Alternatively, you can install Unicode UTF-8 on your system for broader compatibility .
- Vulkan SDK Installation: After installing the Vulkan SDK, make sure to log out and log back in. This step is necessary to update the system paths.
- on a Windows WSL Linux, be sure to use WSL 2 or better and to have enabled the GPU acceleration: after a
sudo apt-get install mesa-utils
the commandglxinfo | grep -i opengl
should show a line likeOpenGL renderer string: D3D12 (the 3D card)
. You should have a/dev/dxg
device link as well.
Click here to see the changelog.