PatchCore-Inspection 开源项目教程
patchcore-inspection项目地址:https://gitcode.com/gh_mirrors/pa/patchcore-inspection
项目介绍
PatchCore-Inspection 是由 Amazon Science 开发的一个用于工业异常检测的开源项目。该项目基于 Roth 等人的研究,旨在实现 "Total Recall" 在工业异常检测中的应用。PatchCore 通过提取和记忆预训练的局部聚合训练补丁特征来识别异常,适用于多种工业场景。
项目快速启动
环境准备
在开始之前,请确保您的环境中已安装以下依赖:
- Python 3.x
- PyTorch
- Click
- Faiss
克隆项目
首先,克隆项目到本地:
git clone https://github.com/amazon-science/patchcore-inspection.git
cd patchcore-inspection
训练模型
使用提供的脚本进行模型训练:
python bin/run_patchcore.py \
--gpu <gpu_id> \
--seed <seed> \
--save_patchcore_model \
--log_online \
--log_group IM224_WR50_L2-3_P01_D1024-1024_PS-3_AN-1_S0 \
--log_project MVTecAD_Results
评估模型
评估预训练的 PatchCore 模型:
python bin/load_and_evaluate_patchcore.py \
--gpu <gpu_id> \
--seed <seed> \
--savefolder <savefolder> \
patch_core_loader "$[model_flags[@]]" \
--faiss_on_gpu \
dataset \
--resize 366 \
--imagesize 320 \
"$[dataset_flags[@]]" \
mvtec \
$datapath
应用案例和最佳实践
应用案例
PatchCore 在多个工业场景中表现出色,例如:
- 瓶子检测:识别瓶子表面的缺陷。
- 电缆检测:检测电缆的异常。
- 胶囊检测:识别胶囊的缺陷。
最佳实践
- 数据准备:确保数据集的质量和多样性。
- 参数调优:根据具体应用场景调整模型参数。
- 模型集成:使用多个 PatchCore 模型的集成来提高检测性能。
典型生态项目
PatchCore-Inspection 项目与其他开源项目结合使用,可以进一步增强其功能和应用范围:
- MVTec AD:一个广泛使用的异常检测数据集,适用于训练和评估 PatchCore 模型。
- PyTorch:深度学习框架,用于实现和训练 PatchCore 模型。
- Faiss:用于高效的相似性搜索和聚类,提升 PatchCore 的性能。
通过结合这些生态项目,PatchCore-Inspection 可以更好地服务于工业异常检测的需求。
patchcore-inspection项目地址:https://gitcode.com/gh_mirrors/pa/patchcore-inspection