Contributor
Blaž Rolih

Add ensembling methods for tiling to Anomalib


Mentors
Dick Ameln, Samet Akcay
Organization
OpenVINO Toolkit
Technologies
python, pytorch, onnx, openvino, AnomaLib
Topics
computer vision, deep learning, anomaly detection, Ensemble Methods
When tackling the challenge of detecting defects in high-resolution images, we encounter many challenges. One significant problem is the difficulty in training models effectively, primarily due to memory limitations. The process of down-sampling these images to fit within memory capacities leads to the loss of crucial information, which can result in the oversight of small yet significant defects. To overcome these issues, we can employ a strategy involving a tiled ensemble mechanism. In this case, images are split into smaller, manageable tiles. Each of these tiles is then processed using a separate model, specifically trained for that tile position. This strategy enhances localization and improves the detection of small anomalies, while also satisfying memory limitations. Anomalib currently has a basic tiler. However, the advantages of locally-aware models, like Padim, are diminished without the support of a tiled ensemble. To address this problem, we introduce a tiled ensemble implementation that preserves the advantages of local awareness while also enhancing overall performance. This approach aims to incorporate Anomalib's existing features, while simultaneously providing users the flexibility to tailor specific steps within our pipeline. All the while, we ensure that our approach remains memory-efficient.