ATSAnomaly 異常偵測

適合僅使用正常 OK 圖片建立特徵庫,再判斷新圖片是否偏離正常分佈的場景。當前實現基於 PatchCore 方法,不按普通分類方式進行多輪梯度訓練。

訓練與校準資料

訓練目錄只放 OK 圖片。獨立校準目錄也只放 OK 圖;留空時按內容去重,固定隨機種子 42,留出約 20% 做校準,至少需要 3 張不同圖片。校準圖不參與特徵庫構建,訓練與獨立校準之間內容重複會報錯。

僅用 OK 圖估計閾值,不能據此聲稱已測得缺陷召回率、誤檢率或生產精度;需要獨立 OK/NG 測試樣本驗證業務效果。

構建參數

參數 作用
骨幹 ResNet18(較快)或 Wide ResNet50-2(高容量),使用隨附預訓練權重且凍結參數
影像尺寸 預設 256;完整圖片縮放為正方形,不中心裁掉邊緣,可能改變長寬比;64~1024 且為 32 的倍數
提取批大小 預設 2,範圍 1~16;決定特徵提取批次,顯示記憶體不足時減小
核心集保留比例 預設 0.01;從候選特徵中保留的比例,不是保留訓練圖片的比例
候選特徵上限 預設 50000,超出時有界抽樣,限制參與核心集選擇的候選數量
核心集特徵上限 預設 5000,限制最終記憶庫特徵數

最終核心集數量為 min(核心集特徵上限, max(1, int(候選特徵數 × 保留比例)))。特徵庫和影像尺寸增大通常會增加記憶體、顯示記憶體及推論計算量。

此頁面沒有學習率、最佳化器、epochs 或早停參數;進度分為正常特徵提取、核心集取樣和 OK 閾值校準三個階段。

閾值與推論

模型儲存為 model.patchcore.pt,推論位於本頁面的“異常推論驗證”。支援單圖或圖片資料夾。

異常分數是特徵距離,不是機率,不要求落在 0~1。構建時用 OK 校準分數估計影像級和像素級閾值。推論閾值倍率預設 1:小於 1 更敏感,大於 1 更寬鬆。影像分數達到影像閾值判為 NG,像素遮罩由像素閾值決定,二者不是同一個統計量。

結果包括 OK/NG、異常分數、熱力圖、疊加圖、遮罩、原始分數圖及 JSON/CSV。輸出目錄不得位於輸入圖片目錄中,防止結果再次被當作輸入。

當前模型格式不是通用 ONNX、普通分類 PT 或經典推論模型;不要在主“模型推論驗證”裡選擇它。CPU 和單張 NVIDIA GPU 均使用獨立異常偵測環境。

完整範圍見異常偵測參數表。