發表文章

目前顯示的是 10月, 2024的文章

AI時代的網站與手機App建置與開發Part26 - ML.NET與人臉辨識

圖片
  ·        摘要 人臉辨識的應用很廣泛 , 例如應用在海關的出入境管制 , 企業的門禁系統 , 判斷人臉是否配戴眼鏡 , 口罩等配件 , 或是手機登入管制 , 都是人臉識別常見的應用場合 .  圖 :  人臉識別示意圖 在本篇文章中 , 我們將使用 Microsoft ML.NET 搭配 Facenet.onnx 人臉辨識模型執行人臉辨識 . . ·        準備訓練資料 首先請準備兩張欲判斷是否為同一個人的人臉照片 , 加入到 Visual Studio 專案中名稱為 Faces 的資料夾中 , 並到 [ 屬性 ] 視窗將兩張人臉照片的 [ 複製到輸出目錄 ] 屬性的內容值設定為 : 有更新時才複製 . 圖 1 所示即為欲判斷是否為同一個人的兩張人臉照片 , 讀者可以使用自行提供的人臉照片 : 圖 1: 欲判斷是否為同一個人的兩張人臉照片 ·        準備人臉辨識 模型 首先請啟動瀏覽器 , 瀏覽至 faceNet.onnx, 下載名稱為 faceNet.onnx 的人臉辨識模型 ( 下載網址 : https://github.com/NicolasSM-001/faceNet.onnx- ). 請將人臉辨識模型加入到 Visual Studio 專案中名稱為 Models 資料夾中 , 並到 [ 屬性 ] 視窗將 faceNet.onnx 檔案的 [ 複製到輸出目錄 ] 屬性的內容值設定為 : 有更新時才複製 . ·        定義抽取人臉特徵向量的類別 public class OnnxModelExtractor : IDisposable {   private InferenceSession _session; // 存放抽取人臉特徵向量的模型的變數   private string _inputName;         // 存...

AI時代的網站與手機App建置與開發Part25 - ML.NET與聲音異常偵測

圖片
  ·        摘要 將異常偵測應用在聲音資料能夠預警機器運作的失誤 , 例如預警馬逹 , 幫浦 , 閥門開關 , 齒輪 , 滑軌 , 或是風扇的運作是否異常 , 或是預警汽機車 , 輪船 , 甚至飛機的引擎狀態等等 , 對於 24 小時不間斷的生產線能夠提供重要的營運支援 . 圖 : 機械運作聲音異常預警示意圖 在本篇文章中 , 我們將使用 Microsoft ML.NET 搭配 Librosa 聲音處理程式庫執行聲音的異常偵測 , 期能利用 AI 模型支援 24 小時不間斷的營運作業 . ·        準備訓練資料 首先請啟動瀏覽器 , 瀏覽至 MIMII DUE: Sound Dataset for Malfunctioning Industrial Machine Investigation and Inspection with Domain Shifts due to Changes in Operational and Environmental Conditions, 下載訓練聲音資料集 ( 下載網址 : https://zenodo.org/records/4740355 ). 本篇文章將會從上述的下載網址下載幫浦 (Pump) 運作的聲音檔案 , 然後將其中的 10 個正常的幫浦運作聲音檔案加入到名稱為 NormalSounds 的資料夾中 , 再將其中的 10 個異常的幫浦運作聲音檔案加入到名稱為 AbnormalSounds 的資料夾中 ( 讀者可以視需要加入更多的聲音檔案 , 以提升訓練的機器學習模型的準確度 ),  做好之後 , 請到 [ 屬性 ] 視窗將所有的聲音檔案的 [ 複製到輸出目錄 ] 屬性的內容值設定為 : 有更新時才複製 . ·        實作取得聲音檔案特徵向量的 Python 程式 import librosa import pandas as pd import...