Multimodal Industrial Anomaly Detection via Geometric Prior
Organizations: Faculty of Data Science, City University of Macau, Macau, China. · Key Laboratory of Computing Power Network and Information Security, Ministry of Education, Shandong Computer Science Center (National Supercomputer Center in Jinan), Qilu University of Technology (Shandong Academy of Sciences), Jinan, China. · Shandong Provincial Key Laboratory of Computing Power Internet and Service Computing, Shandong Fundamental Research Center for Computer Science, Jinan, China.
Abstract
The purpose of multimodal industrial anomaly detection is to detect complex geometric shape defects such as subtle surface deformations and irregular contours that are difficult to detect in 2D-based methods. However, current multimodal industrial anomaly detection lacks the effective use of crucial geometric information like surface normal vectors and 3D shape topology, resulting in low detection accuracy. In this paper, we propose a novel Geometric Prior-based Anomaly Detection network (GPAD). Firstly, we propose a point cloud expert model to perform fine-grained geometric feature extraction, employing differential normal vector computation to enhance the geometric details of the extracted features and generate geometric prior. Secondly, we propose a two-stage fusion strategy to efficiently leverage the complementarity of multimodal data as well as the geometric prior inherent in 3D points. We further propose attention fusion and anomaly regions segmentation based on geometric prior, which enhance the model's ability to perceive geometric defects. Extensive experiments show that our multimodal industrial anomaly detection model outperforms the State-of-the-art (SOTA) methods in detection accuracy on both MVTec-3D AD and Eyecandies datasets.
Figures & tables
| Method | Bagel | Cable Gland | Carrot | Cookie | Dowel | Foam | Peach | Potato | Rope | Tire | Mean | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3D | VoxelAE [ 46 ] | 69.3 / 26.0 | 42.5 / 34.1 | 51.5 / 58.1 | 79.0 / 35.1 | 49.4 / 50.2 | 55.8 / 23.4 | 53.7 / 35.1 | 48.4 / 65.8 | 63.9 / 1.5 | 58.3 / 18.5 | 57.1 / 34.8 |
| DepthGAN [ 46 ] | 53.0 / 11.1 | 37.6 / 7.2 | 60.7 / 21.2 | 60.3 / 17.4 | 49.7 / 16.0 | 48.4 / 12.8 | 59.5 / 0.3 | 48.9 / 4.2 | 53.6 / 44.6 | 52.1 / 7.5 | 52.3 / 14.3 | |
| DepthAE [ 46 ] | 46.8 / 14.7 | 73.1 / 6.9 | 49.7 / 29.3 | 67.3 / 21.7 | 53.4 / 20.7 | 41.7 / 18.1 | 48.5 / 16.4 | 54.9 / 6.6 | 56.4 / 54.5 | 54.6 / 14.2 | 54.6 / 20.3 | |
| FPFH [ 48 ] | 82.5 / 97.3 | 55.1 / 87.9 | 95.2 / 98.2 | 79.7 / 90.6 | 88.3 / 89.2 | 58.2 / 73.5 | 75.8 / 97.7 | 88.9 / 98.2 | 92.9 / 95.6 | 65.3 / 96.1 | 78.2 / 92.4 | |
| M3DM [ 4 ] | 94.1 / 94.3 | 65.1 / 81.8 | 96.5 / 97.7 | 96.9 / 88.2 | 90.5 / 88.1 | 76.0 / 74.3 | 88.0 / 95.8 | 97.4 / 97.4 | 92.6 / 95.0 | 76.5 / 92.9 | 87.4 / 90.6 | |
| Shape-Guided [ 3 ] | 98.3 / 97.4 | 68.2 / 87.1 | 97.8 / 98.1 | 99.8 / 92.4 | 96.0 / 89.8 | 73.7 / 77.3 | 99.3 / 97.8 | 97.9 / 98.3 | 96.6 / 95.5 | 87.1 / 96.9 | 91.6 / 93.1 |
| Method | Bagel | Cable Gland | Carrot | Cookie | Dowel | Foam | Peach | Potato | Rope | Tire | Mean |
|---|---|---|---|---|---|---|---|---|---|---|---|
| PatchCore+FPFH [ 48 ] | 99.6 | 99.2 | 99.7 | 99.4 | 98.1 | 97.4 | 99.6 | 99.8 | 99.4 | 99.5 | 99.2 |
| M3DM [ 4 ] | 99.5 | 99.3 | 99.7 | 98.5 | 98.5 | 98.4 | 99.6 | 99.4 | 99.7 | 99.6 | 99.2 |
| Shape-Guided [ 3 ] | - | - | - | - | - | - | - | - | - | - | 99.6 |
| 3DSR [ 2 ] | - | - | - | - | - | - | - | - | - | - | 99.5 |
| GPAD (Ours) | 99.6 | 99.6 | 99.9 | 98.7 | 99.8 | 99.9 | 99.8 | 99.4 | 99.5 | 99.6 | 99.6 |
| Category | M3DM [ 4 ] | 3DSR [ 2 ] | CFM [ 35 ] | 2M3DF [ 1 ] | GPAD (ours) |
|---|---|---|---|---|---|
| Can.C. | 62.4 | 65.1 | 68.0 | 75.3 | 71.0 |
| Cho.C. | 95.8 | 99.8 | 93.1 | 95.5 | 100 |
| Cho.P. | 95.8 | 90.4 | 95.2 | 93.7 | 92.8 |
| Conf. | 100 | 97.8 | 88.0 | 96.7 | 96.0 |
| Gum.B. | 88.6 | 87.5 | 86.5 | 90.1 | 79.5 |
| Haz.T. | 75.8 | 86.1 | 78.2 | 79.2 | 84.8 |
| Config. | Bagel | Cable Gland | Carrot | Cookie | Dowel | Foam | Peach | Potato | Rope | Tire | Mean |
|---|---|---|---|---|---|---|---|---|---|---|---|
| I-AUROC | |||||||||||
| w/o Norm | 99.9 | 95.3 | 100 | 99.5 | 99.5 | 99.4 | 98.6 | 98.0 | 100 | 95.2 | 98.5 |
| w/o GCA Fusion | 99.7 | 95.0 | 99.9 | 98.3 | 99.6 | 99.0 | 99.5 | 98.3 | 100 | 96.7 | 98.6 |
| w/o Geo Prior | 99.7 | 95.0 | 99.7 | 99.5 | 99.7 | 99.6 | 98.8 | 98.7 | 99.7 | 97.1 | 98.7 |
| w/o Depth | 99.3 | 93.7 | 99.4 | 98.7 | 99.2 | 98.7 | 99.2 | 98.3 | 99.1 | 97.5 | 98.3 |
| w/o Points | 99.1 | 92.7 | 99.3 | 98.8 | 99.5 | 98.4 | 97.4 | 97.1.2 | 99.7 | 96.1 | 97.8 |
| Num | Bagel | Cable Gland | Carrot | Cookie | Dowel | Foam | Peach | Potato | Rope | Tire | Mean |
|---|---|---|---|---|---|---|---|---|---|---|---|
| I-AUROC | |||||||||||
| 100 | 99.7 | 92.8 | 99.9 | 99.3 | 99.6 | 99.4 | 99.3 | 98.2 | 100 | 99.4 | 98.8 |
| 200 | 99.8 | 96.8 | 98.8 | 99.9 | 99.8 | 98.7 | 99.9 | 98.1 | 100 | 97.2 | 98.9 |
| 300 | 99.7 | 96.7 | 99.4 | 99.3 | 99.6 | 99.5 | 99.5 | 98.5 | 100 | 97.2 | 98.9 |
| 400 | 99.8 | 96.1 | 100 | 98.9 | 99.9 | 99.2 | 99.6 | 98.4 | 99.7 | 95.9 | 98.8 |
| 500 | 99.8 | 93.7 | 99.8 | 99.1 | 99.6 | 99.1 | 99.5 | 98.8 | 100 | 96.5 | 98.6 |
| Method | Memory Consumption | Inference | Mean |
|---|---|---|---|
| (MBs) | (FPS) | I-AUROC(%) | |
| BTF [ 51 ] | 228.984 | 3.91 | 86.5 |
| AST [ 52 ] | 463 | 4.78 | 93.7 |
| Shape-Guided [ 3 ] | 237.58 | 2.1 | 94.7 |
| M3DM [ 4 ] | 6528.7 | 0.514 | 94.5 |
| CPMF [ 7 ] | 2195 | 0.609 | 95.1 |