输出可视化图像的方法

发布时间:2026/9/15 19:33:11
输出可视化图像的方法 一、添加工具在tools文件夹下添加 inference.py 工具脚本输出纯黑白掩码和原图叠加可视化图。importosimportargparseimportnumpyasnpfromPILimportImagefrommmseg.apisimportinit_model,inference_modeldefparse_args():parserargparse.ArgumentParser(description批量推理并生成分割可视化结果)parser.add_argument(config,help模型配置文件路径)parser.add_argument(checkpoint,help训练好的权重文件路径)parser.add_argument(--input,requiredTrue,help输入图片路径支持单张图片或文件夹)parser.add_argument(--output-dir,requiredTrue,help结果输出目录)parser.add_argument(--out-type,defaultboth,choices[mask,show,both],help输出类型mask纯黑白掩码show原图叠加图both两种都输出默认both)parser.add_argument(--mask-color,nargs3,typeint,default[0,255,0],help叠加掩码颜色默认绿色 R G B)parser.add_argument(--alpha,typefloat,default0.5,help叠加透明度默认0.5)parser.add_argument(--device,defaultcuda:0,help推理设备默认cuda:0)argsparser.parse_args()returnargsdefget_image_list(input_path):获取所有待推理图片路径img_list[]ifos.path.isfile(input_path):img_list.append(input_path)else:fornameinsorted(os.listdir(input_path)):ifname.lower().endswith((.png,.jpg,.jpeg,.tif,.bmp)):img_list.append(os.path.join(input_path,name))returnimg_listdefmain():argsparse_args()os.makedirs(args.output_dir,exist_okTrue)# 初始化模型modelinit_model(args.config,args.checkpoint,deviceargs.device)# 获取所有图片img_listget_image_list(args.input)print(f共找到{len(img_list)}张待推理图片)forimg_pathinimg_list:img_nameos.path.basename(img_path)print(f正在处理:{img_name})# 读取原图original_imgImage.open(img_path).convert(RGB)original_npnp.array(original_img)# 模型推理resultinference_model(model,img_path)pred_maskresult.pred_sem_seg.data[0].cpu().numpy().astype(np.uint8)# 1. 保存纯黑白掩码ifargs.out_typein[mask,both]:mask_save_pathos.path.join(args.output_dir,fmask_{img_name})Image.fromarray(pred_mask*255).save(mask_save_path)# 2. 保存原图叠加可视化图ifargs.out_typein[show,both]:mask_layernp.zeros_like(original_np)mask_layer[pred_mask1]args.mask_color overlay_nporiginal_np.copy()overlay_np[pred_mask1](original_np[pred_mask1]*(1-args.alpha)mask_layer[pred_mask1]*args.alpha).astype(np.uint8)show_save_pathos.path.join(args.output_dir,fshow_{img_name})Image.fromarray(overlay_np).save(show_save_path)print(f处理完成结果已保存至:{args.output_dir})if__name____main__:main()输入图片在data文件夹下新建一个paper_vis_dataset用来存放需要需要处理的图片data/└── paper_vis_dataset/✅ 新建专门放你挑的8张图 ├── image/放8张测试原图4物候期×2张 └── mask_show/放对应的8张真值标签图文件名和image里一一对应image放原图mask_show放标签可视化图片模型预测时只输入原图mask_show真值叠加图只是方便输出结果后对比命令python tools/inference.py configs/my_projects/stage3_finetune_mlpgate.py work_dirs/stage3_finetune_mlpgate/best_mIoU_iter_40000.pth--inputdata/paper_vis_dataset/image --output-dir paper_vis_show --out-type show我使用的模型是MLPGateFusion的stage 3的最好的40000次权重做的python tools/inference.py\configs/my_projects/stage3_finetune_mlpgate.py\work_dirs/stage3_finetune_mlpgate/best_mIoU_iter_40000.pth\--inputdata/paper_vis_dataset/image\--output-dir paper_vis_show最后输出结果在项目根目录下会出现一个paper_vis_show文件夹里面会有两部分掩码图像和叠加效果图原本是只需要掩码图像但是AI给出的inference脚本会同时输出叠加效果图就是绿色的图片后续有时间可对inference脚本进行简化。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询