Project Icon

AnomalyGPT

突破性工业异常检测方法

AnomalyGPT是一种创新的工业异常检测方法,结合了大型视觉语言模型技术。该方法无需手动设置阈值,能自动检测工业图像中的异常,并指出其位置和特征。AnomalyGPT通过预训练的图像编码器和语言模型,利用模拟异常数据来分析工业图像及相关描述。此外,它还可以仅凭少量正常样本就能识别新类型的异常。

准备数据:

  1. 克隆代码仓库:

    git clone https://github.com/CASIA-IVA-Lab/AnomalyGPT.git
    
  2. 安装所需的包:

    pip install -r requirements.txt
    
  3. 下载ImageBind预训练模型:

  4. 准备Vicuna检查点:

    • 请按照此处提供的说明准备预训练的Vicuna模型。
  5. 准备PandaGPT权重:

    • 您可以在下表中获取使用不同策略训练的PandaGPT权重。在我们的实验和在线演示中,由于计算资源的限制,我们使用了Vicuna-7B和openllmplayground/pandagpt_7b_max_len_1024。如果切换到Vicuna-13B,预计会有更好的结果。
    • 请将下载的7B/13B delta权重文件(pytorch_model.pt)放在./pretrained_ckpt/pandagpt_ckpt/7b/./pretrained_ckpt/pandagpt_ckpt/13b/目录中。
    • 然后,您可以从下表下载AnomalyGPT权重,并将其放在./code/ckpt/目录中。

3.2 Training Configurations:

有关如何配置训练设置的详细信息,请参阅./code/config.py中的注释。主要配置包括数据集路径、训练参数、模型设置等。

3.3 Training AnomalyGPT:

要训练您自己的AnomalyGPT,请运行以下命令:

cd ./code/
python train.py

训练过程包括数据准备、模型训练和评估等步骤。训练完成后,模型权重将保存在[./code/ckpt/]目录中。

你可以根据需要调整训练配置,并参考[./code/config.py]中的注释进行设置。如有任何疑问,欢迎随时与我们联系。 你可以从[此链接]下载MVTec-AD数据集, 并从[此链接]下载VisA。你也可以从[此处]下载PandaGPT的预训练数据。下载后,请将数据放置在[./data]目录下。

[./data]目录应该如下所示:

data
|---pandagpt4_visual_instruction_data.json
|---images
|-----|-- ...
|---mvtec_anomaly_detection
|-----|-- bottle
|-----|-----|----- ground_truth
|-----|-----|----- test
|-----|-----|----- train
|-----|-- capsule
|-----|-- ...
|----VisA
|-----|-- split_csv
|-----|-----|--- 1cls.csv
|-----|-----|--- ...
|-----|-- candle
|-----|-----|--- Data
|-----|-----|-----|----- Images
|-----|-----|-----|--------|------ Anomaly 
|-----|-----|-----|--------|------ Normal 
|-----|-----|-----|----- Masks
|-----|-----|-----|--------|------ Anomaly 
|-----|-----|--- image_anno.csv
|-----|-- capsules
|-----|-----|----- ...

3.2 训练配置

下表显示了我们实验中使用的训练超参数。这些超参数是根据我们的计算资源(即2个RTX3090 GPU)进行选择的。

基础语言模型纪元数量批量大小学习率最大长度
Vicuna-7B50161e-31024

3.3 训练AnomalyGPT

要在MVTec-AD数据集上训练AnomalyGPT,请运行以下命令:

cd ./code
bash ./scripts/train_mvtec.sh

训练脚本的关键参数如下:

  • --data_path: 用于pandagpt4_visual_instruction_data.json文件的数据路径。
  • --image_root_path: PandaGPT训练图像的根路径。
  • --imagebind_ckpt_path: ImageBind检查点的路径。
  • --vicuna_ckpt_path: 保存预训练的Vicuna检查点的目录。
  • --max_tgt_len: 训练实例的最大序列长度。
  • --save_path: 保存训练后的delta权重的目录。这个目录将自动创建。
  • --log_path: 保存日志的目录。这个目录将自动创建。

请注意,纪元数量可以在./code/config/openllama_peft.yaml文件的epochs参数中设置,学习率可以在./code/dsconfig/openllama_peft_stage_1.json文件中设置。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号