基於Halcon深度學習異常值檢測方法


  Halcon在19.11版本中推出了深度學習異常值檢測方法,該方法屬於無監督式的深度學習方法,使用該算法可以在只有正樣本的情況下訓練模型。據官方介紹,該方法具有以下優點:

  1 無需標注

  2 只需少量正樣本即可進行訓練

  3 可以在CPU下進行訓練

  4 具有較快的推斷速度

  官方的例程中,分為四個步驟:

  1 數據准備

  通過read_dl_dataset_anomaly 和  split_dl_dataset 讀取與分割樣本, set_dl_model_param設置模型的一些初始化參數,

  2 模型訓練

  通過set_dict_tuple 和 create_dl_train_param設置訓練的超參數(例如正則化噪聲、每個epoch大小等);之后 train_dl_model訓練模型得到結果,通過write_dl_model進行保存。之后通過compute_dl_anomaly_thresholds計算分類閾值,這個算子比較關鍵,可以得出訓練時的分類標准(異常值分割閾值和分類閾值)這兩個值作為后續的判定標准。

    3 模型評估 (個人感覺作用不大)

  4 模型推理

  read_dl_samples讀取數據,apply_dl_model初始化模型,通過threshold_dl_anomaly_results得到模型推理的值,通過與之前訓練得到閾值進行比較,從而得到最終的判定結果。

   友情提示:在一個蘋果客戶的項目中試驗使用過,但效果並不理想,也可能是蘋果的要求比較嚴(′⌒`),該方法還是比較適合缺陷較為明顯的項目。

        

  所在公司以Halcon為主,個人同時也在學習使用OpenCV(畢竟是免費的嘛),會不定期分享一些案例與學習心得,大家相互學習,交流!

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM