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

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

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

Project Cover

Kimi

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

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

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

Project Cover

AIWritePaper论文写作

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

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