Concrete Crack Detection Using MATLAB, Deep Learning and Image Processing
A student-laptop project that finds cracks in close-range photographs of concrete, measures them and rates their severity. Four methods are compared on the same images with pixel-exact ground truth: classical image processing (flat-field correction and CLAHE, a multiscale Sato ridge filter, hysteresis thresholding, a shape filter that rejects air voids and ruler-straight joints, half-depth width refinement), 27 hand-crafted features with a Random Forest, the CrackNet-S CNN patch classifier (293,841 parameters) and the U-Net-Lite segmenter (1,516,017 parameters), both trained from scratch on a laptop CPU. On the test set U-Net-Lite reaches a patch F1 of 0.979 and a pixel F1 of 0.983 (2-px tolerance) against 0.951 and 0.924 for image processing, and raises only 3.0 % false alarms on crack-free tiles with joints, formwork lines, fibres and shadows (image processing 17.5 %). Every crack is measured (skeleton length, width from the distance transform, orientation, pattern) and checked against ACI 224R-01 Table 4.1 and IS 456:2000 cl. 35.3.2, giving an indicative condition state CS1-CS4. A field survey of four reinforced-concrete elements, ONNX models for MATLAB and a FastAPI web application with three roles and five database options complete the work. Honest scope: the images are synthetic (procedurally rendered), and the MATLAB R2026a scripts were written but not run - all numbers come from the Python implementation.
Category: Civil Engineering / Structural Health Monitoring / Infrastructure Inspection / Computer Vision / Deep Learning / Image Processing
Civil Engineering Project C01 from ProTechSC Academy, with graphical abstract, video demonstration and project guidance.