Theoretical Background
The fundamental idea of AI is that a neural network is trained to perform a special task, such as the identification of separate fibers, the differentiation between material phases, or to enhance or segment a grayscale image. To train the neural network, enough examples need to be available to teach it. Clearly, for 3D-scans it is a very hard and time-consuming task to manually label materials or objects for the number of examples required. This is where GeoDict’s unique structure-generation capabilities come in. The idea is that a neural network trained on these synthetic samples can then be used to analyze 3D scans of real materials. E.g.:
As long as these structures are close enough to the real 3D-scans, they can be used to train neural networks using GeoDict-AI. For Enhance Grayscale Image, you should provide pairs of registered low-quality / high-quality (CT) scans. The neural network then learns to transform low-quality images to high-quality images. Note however that even a small number of image pairs (e.g. 2-3) can be sufficient, depending on the application. Depending on the scan, it can also be possible to create such images using the GeoApp Generate Artificial CT-Scan. This app is used in combination with the GeoDict structure generators, generating an image based on a structure file. Thus, this app can also be used to create training data to segment grayscale images.
When applied to a 3D image, the neural network will transform it to another image by assigning a scalar output value between 0 and 1 to each voxel. How this image is interpreted depends on the task at hand:
For a detailed explanation of neural network training look here.
GeoDict-AI uses the Pytorch Framework by The Linux Foundation, one of the most used and well-known machine learning libraries (see also Paszke et. al., 2019). The required version of Pytorch is installed during the GeoDict installation and GeoDict-AI works out of the box. Install GeoDict on the used machine, to install Pytorch correctly.
GeoDict-AI may run on the CPU (the main processor) or on the GPU (the graphics card). If one or more suitable GPUs are detected during installation of GeoDict, GeoDict-AI will run on the GPU; otherwise it will run on the CPU.
The GPU version is usually much faster than the CPU version (roughly a factor 10), but it requires a good GPU. For up-to-date recommendations visit our website.