Crack Detection using Deep Learning
Setting the scene. In COGNIPLANT, MRNEC develops deep (reinforcement) learning models. These models aim to support our use case partners in better monitoring and understanding individual production process steps or complete production processes. In addition, we contribute to decision support tools for just-in time rescheduling and control optimization of use case partners’ processes – this with the goal of improving energy efficiency during alumina production at Aughinish Alumina (AAL), reducing waste of abrasive paper at Hermes Schleifmittel GmbH (HOE)), improving product quality of lime at Fornaci Calce Grigolin S.P.A. (FORNA), and improving operational equipment efficiencies (e.g., availability of steel tube production machinery at Acería de Alava (ACVA)).
Our (D(R)L) models and related tools need to incorporate a lot of the use case partners’ domain and expert knowledge. We need to leverage this knowledge with their actual and historic plant data in order to ameliorate their processes. For example, at HOE controlling the speed of rolling and the tension across paper during unwinding, avoiding creases and cracks is a daunting, time-consuming and meticulous task for a human operator. Lack of understanding and grip on such a process cause huge amounts of scrap and considerable downtimes. In-time crack detection is not only a critical task in preventing in-time such production of waste at HOE. It also plays a determining factor in scheduling pit furnaces and forging, blooming, grinding or peeling machines during the production of steel pipes and bars at ACVA. If cracks develop in either pit furnace walls or in steel during its production, they have significant negative impact not merely on the product quality. They also affect the availability as well as the remaining useful lifetime of the production machinery.
Plaster wall crack detection. For demonstration purposes, we built deep learning models using the KERAS - TensorFlow framework for a very related application domain. We developed a transfer learning (TL) based model for detecting cracks in plaster walls.
As data set for learning, validation and testing our TL-based model we employed the publicly available Concrete Crack Images. We defined our TL model on the basis of a VGG16 model that is publicly available as KERAS application and can readily be downloaded with non-trainable layers and extended with additional trainable layers. The advantage is that this network has already been trained on millions of images on ImageNet for recognition purposes. We added two additional layers for our regression purposes, i.e., learning to predict the crack probability in (128 x 128) RGB images. We compiled our model with stochastic gradient descent as optimizer, categorical cross-entropy as loss and accuracy as metric for training and validation of our model. Before fitting and evaluating our model for a certain number of epochs, we generated train and validation data, setting suitable batch sizes and target sizes for our images.
Training and validation showed that starting with a well fitted computer vision model for image recognition provides immediately the necessary prediction skill (evaluation accuracy score of 99.5±0.02%) in determining the crack density. Grid search of the required depth (number and type of layers) and other model aspects (batch sizes, learning rates, …) and cross-validation of related model loss, accuracy and score need could be further explored in order to optimize model skill. We saved our model and architecture for online or off-line use in our crack probability prediction task.
Instead of classifying a full image as cracked or not, we need in our applications to detect a crack probability density at a proper scale throughout the image. For this purpose, we trained our model on 128x128 pixel sized images using categorical cross entropy. Applying our crack probability density detector to overlapping sub-images of the same target size resulted in a coarse but qualitatively acceptable representation of the crack density throughout the full image (see below overlapping sub-images and related inverted crack probability density measured).
In order to increase crack location and density detection accuracy, it is worthwhile to play with model parameters such as spatial granularity and to reduce model depth and complexity by taking just a few layers. VGG models were trained on millions of images that are not directly related to this specific industrial use case. A simpler model may do the job as well.
However, our use case partners care more than just about detecting cracks. They are rather in need for means to predict the onset of and time to crack such that preventive measures can be taken to avoid scrap or downtimes. In a forthcoming post we will show how to address that need.