## 4 Experiments and Discussion
### Parameter Selection  
Compared with DL-based crack detecting methods [26; 27; 29], there were only a few parameters to be adjusted in the training steps of presented crack detector. As introduced in Section 3, there are mainly three user specified parameters to be adjusted. Specifically, they are the hidden node number \(L_{f}\) of the ELM-AE feature representation, the hidden node number \(L_{c}\) of the ELM feature classification, and the regularization parameter \(\lambda\) of the ELM classification model. In our work, as for multi-layer feature learning process, the hidden node number of each layer was set to be the same, which is similar to the preferred setting of [38]. Technically, there is no good way of choosing these parameter values above. In this paper, they were to be chosen by the trial and error method. Figure 6 illustrates the 3D testing accuracy and training time plots using different parameters. Note that the testing accuracy result was calculated using the testing image patches, which are from the 50,000 image data set. As depicted in Figure 6a,c, one can see that the parameter \(\lambda\) plays a vital role in the testing accuracy of the proposed crack detector. Mathematically, \(\lambda\) regulates a balance between the smallest training error and the norm of the ELM output weights. As \(\lambda\) decreases, the accuracy of crack region detection is correspondingly reduced. It should also be mentioned that different \(\lambda\) values have similar training time (see Figure 6b,d), and so do not affect the training efficiency of our work. Moreover, in Figure 6a,c, it can be seen that the performance of presented method degrades rapidly from \(\log_{10}(\lambda)=0\) to \(\log_{10}(\lambda)=-5\). The reason for this result may be that, compared with the norm of the ELM output weights, the training error item is more important for the training process. Therefore, the generalization of the crack detector becomes very bad when there is less emphasis on the training error item. For setting the hidden node number of the ELM network, from the Figure 6a,c, the performances of our model are mainly very stable within the wide scope of \(L_{f}\) and \(L_{c}\) with a large parameter \(\lambda\). The hidden node number value represents the Vapnik-Chervonenkis dimension of the ELM network. With a larger hidden number, there will be more nodes to be calculated in the feature learning or classification, and the resultant training time is obviously increased (see Figure 6b,d). On the other hand, the crack damage detecting method would have a poor discriminative capability with too small of a hidden node number. In this case, the trained function cannot separate the crack patches from those background ones in the testing process. From Figure 6a,c, one can see that a larger hidden node number contributes to the testing accuracy, especially when \(\lambda\) is small. Figure 6: 3D performances plots using different parameter values involving \(\lambda\), \(L_{f}\), and \(L_{c}\): **(a)** Testing accuracy curve in (\(\lambda\), \(L_{f}\)); **(b)** Training time curve in (\(\lambda\), \(L_{f}\)); **(c)** Testing accuracy curve in (\(\lambda\), \(L_{c}\)); **(d)** Training time curve in (\(\lambda\), \(L_{c}\)). Additionally, as shown in Figure 6a, there is also a harsh slope between \(L_{f}\) = 1000 and \(L_{f}\) = 500 when \(\lambda\) is small. The possible reason for this is that the learned ELM-AE features becomes more compact when the \(L_{f}\) value is smaller than 1000. In this case, the discrimination between crack features and non-crack ones will be decreased, thereby leading to the performance degradation of proposed method. Based on the analyses mentioned above, the setting of the \(\lambda\) value has no effect on the training efficiency. Therefore, in the point of view of detection accuracy, \(\lambda\) was set to be a larger value (i.e., \(10^{9}\)).