CableInspect-AD: An Expert-Annotated Anomaly Detection Dataset
<|reference_start|>CableInspect-AD: An Expert-Annotated Anomaly Detection Dataset: Machine learning models are increasingly being deployed in real-world contexts. However, systematic studies on their transferability to specific and critical applications are underrepresented in the research literature. An important example is visual anomaly detection (VAD) for robotic power line inspection. While existing VAD methods perform well in controlled environments, real-world scenarios present diverse and unexpected anomalies that current datasets fail to capture. To address this gap, we introduce $\textit{CableInspect-AD}$, a high-quality, publicly available dataset created and annotated by domain experts from Hydro-Qu\'ebec, a Canadian public utility. This dataset includes high-resolution images with challenging real-world anomalies, covering defects with varying severity levels. To address the challenges of collecting diverse anomalous and nominal examples for setting a detection threshold, we propose an enhancement to the celebrated PatchCore algorithm. This enhancement enables its use in scenarios with limited labeled data. We also present a comprehensive evaluation protocol based on cross-validation to assess models' performances. We evaluate our $\textit{Enhanced-PatchCore}$ for few-shot and many-shot detection, and Vision-Language Models for zero-shot detection. While promising, these models struggle to detect all anomalies, highlighting the dataset's value as a challenging benchmark for the broader research community. Project page: https://mila-iqia.github.io/cableinspect-ad/.<|reference_end|>
@article{arodi2024cableinspect-ad:,
    title={CableInspect-AD: An Expert-Annotated Anomaly Detection Dataset},
    author={Akshatha Arodi, Margaux Luck, Jean-Luc Bedwani, Aldo Zaimi, Ge Li,
  Nicolas Pouliot, Julien Beaudry, Ga'etan Marceau Caron},
    journal={arXiv preprint arXiv:2409.20353},
    year={2024},
    archivePrefix={arXiv},
    eprint={2409.20353},
    primaryClass={cs.CV cs.LG}
}