PatchCore异常检测在VisionMaster部署
在工业视觉质检领域,"无监督异常检测"早已不是新鲜概念。当缺陷样本稀缺、标注成本高昂成为行业普遍痛点时,"仅用正常样本建模"的方法彻底颠覆了传统监督学习的范式。其中,PatchCore(2022CVPR)凭借其稳定的性能和成熟的落地生态,长期占据着工业界"基准模型"的地位,成为无数企业落地异常检测的首选。

原理分析

PatchCore 的核心思想可以概括为:"用最具代表性的正常特征,覆盖所有可能的正常模式"。它通过 "记忆" 正常样本的特征分布,来识别任何偏离这种分布的异常。

1.特征提取与库构建阶段

使用在ImageNet上预训练的CNN(如 ResNet-50)或自监督模型(如DINOv3)作为特征提取器

将正常图像分割成大小相同的局部patch,提取每个patch的深度特征

通过贪心Coreset采样算法,从数百万个原始特征中筛选出最具代表性的 1%-25%

构建一个紧凑的记忆库,用于后续的异常检测

2.异常检测阶段

●     对测试图像执行相同的patch分割和特征提取操作

●     计算每个测试patch特征与记忆库中所有特征的欧氏距离

●     取最小距离作为该patch的异常分数,距离越大表示异常程度越高

●     融合所有patch的分数生成最终的异常图和图像级异常分数

3.模型输出

●     pred_score,代表整张图的异常分数

●     pred_label,整张图的异常分类(OK/NG)

●     anomaly_map,整张图的异常概率图

●     pred_mask,正常图的预测掩码

VM部署使用方法

环境配置

①将建模好的模型权重转换为onnx模型,再用tensorrt模型转换工具转换为engine模型。

②结合VM自定义模块开发工具,将导出的C++工程封装TRT推理流程

③将模块和环境DLL文件分别安装在如C:\Program Files\VisionMaster4.3.0\Applications\Module(sp)\x64\Recognition和C:\Program Files\VisionMaster4.3.0\Applications\PublicFile\x64下,打开VM即可测试。

运行演示

第一次运行

版权声明:本文为V社区用户原创内容,转载时必须标注文章的来源(V社区),文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:v-club@hikrobotics.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
上一篇

PPOCRv6制作自定义模块在VisonMaste中部署

下一篇

RobotPilot:软件使用基础介绍

评论请先登录 登录
全部评论 1

dl模块自带的无监督应该就是patchcore

2026-10-12 16:02:07 佐治亚
回复
  • 1
Lv.0
0
关注
0
粉丝
0
创作
0
获赞
相关阅读
  • 【轮廓匹配-落地篇】工业模板匹配落地手册:参数、陷阱与验收
    2026-09-28 浏览 0
  • VM3D各类缺陷检测方法原理与示例
    2026-09-23 浏览 0
  • 五轴联动点胶项目经验分享
    2026-09-23 浏览 0
  • ID2000X(R)M用户手册全面升级:从"能看懂"到"真好用"
    2026-10-08 浏览 0
  • 听说不参加启智杯比赛也能拿奖金?
    2026-09-28 浏览 0

请升级浏览器版本

您正在使用的浏览器版本过低,请升级最新版本以获得更好的体验。

推荐使用以下浏览器