CSPNet 演算法優化深度學習網路結構,除了準確度是世界第一之外,還能在邊緣運算嵌入式系統上維持超高的推論速度,可應用在工廠瑕疵檢測、車流分析、人流分析、安全監控、醫療影像分析、生物影像分析、工安影像分析、口罩影像分析等領域,實在是非常厲害,台灣之光。
將 CSPNet 演算法包裝成 APP 工具,不需寫程式即可進行 AI 訓練及推論,支援最新 RTX-3090-24G GPU 及 CUDA 11.0 。
使用 CSPResNeXt50 進行影像分類,範例是使用鋼板瑕疵分類。此 APP 可以讓您自行替換成自己的影像來完成影像分類。
[操作步驟及說明]
開啟 APP,請參閱 LEADERG-APP 操作說明。
APP 主要分成四大使用功能,資料準備、訓練、推論、其它。
資料準備 :
1. 選擇要進行 AI 學習的數據集。
如果要訓練自己的影像,請點選 browse 開啟檔案位置,建議先複製一個預設的數據集資料夾與將其改為自己的數據名稱。
接著找到 train、val、test 資料夾,刪除資料夾內的舊影像與替換成自己需訓練、推論、測試的影像。
注意 :
- 影像檔名需要符合規定 : 影像檔名前面需加上 [類別名稱-],例如 : inclusion-1.jpg 的 inclusion 為此張影像的類別名稱。
- 影像長寬建議相同,也就是正方形,如果不相同可以縮放或裁切等方式。
- 圖檔與其附檔名須為 .jpg 或 .png 或 .jpeg。
2. 設定類別數量與類別名稱。
- 設定類別數量,點擊 [Classes num] 開啟文字檔,找到 classes = 4,數字 4 即為自己數據的類別數量。例如 : 訓練的影像有 5 個類別 => classes = 5。
- 設定類別名稱,點擊 [Classes name] 開啟文字檔,設定訓練的類別名稱。
- 設定路徑。請將 train、valid、labels、backup 中的 data/plate,修改為 data/資料夾名稱。例如 : 在上一步建立自己樣本資料夾名稱為 pcb ,此步需要將
- train = data/plate/train.txt => train = data/pcb/train.txt
- valid = data/plate/valid.txt => valid = data/pcb/valid.txt
- labels = data/plate/label.names => labels = data/pcb/label.names
- backup = data/plate/model => backup = data/pcb/model
- cfg 設定。點擊 [99. edit CSPNet.cfg] 後,找到 [avgpool],其下方有一個 filters=4,數字 4 即為自己數據的類別數量。例如 : 訓練的影像有 5 個類別 => filters=5。
3. 點擊 [1. prepare train txt] 與 [2. prepare val txt] 即可自動生成訓練與驗證用的影像清單。
訓練:
如果第一次訓練使用預設的則可;如果非第一次訓練且已有訓練好的模型,要接續訓練請將 model/csresnext50-omega_best.weights 複製一個與命名為 pretrain.weights 取代掉原本的 pretrain.weights。
您的裝置如果有支援 NVIDIA GPU 加速運算,請點擊 [3. train (GPU)] ;未支援NVIDIA GPU 加速運算,請點擊 [3. train (CPU)]。
推論:
推論有提供推論單張影像或整個資料夾。
請選擇一個訓練效果較佳的模型或直接選擇 csresnext50-omega_final.weights,如果還沒產出 csresnext50-omega_final.weights,但覺得模型已收斂可以使用,也可以選擇 csresnext50-omega_last.weights。
接著將選擇的模型改名為 csresnext50-omega_best.weights 取代掉原本的模型。 (模型放置於 model 資料夾、副檔名為 .weights)
1. 推論單張影像 : 您的裝置如果有支援 NVIDIA GPU 加速運算,請點擊 [4. inference (GPU)] ;未支援NVIDIA GPU 加速運算,請點擊 [4. inference (CPU)]。
接著請選擇要進行推論的一張影像,按下 [Open] 開啟來進行推論與顯示結果。
2. 推論資料夾 : 您的裝置如果有支援 NVIDIA GPU 加速運算,請點擊 [5. inference_folder (GPU)] ;未支援NVIDIA GPU 加速運算,請點擊 [5. inference_folder (CPU)]。
接著請選擇要進行推論的資料夾,按下 [Open] 開啟來進行推論與顯示結果。
請在顯示的結果圖上,按下鍵盤任意鍵來切換下一張影像。
其它:
1. 點擊 [99. edit CSPNet.cfg],開啟 CSPNet 網路結構文字檔。
2. 點擊 [99. browse data],開啟 data 資料夾。