[MYAI Studio SDK] Image-Object-Detection-YOLOv4-Tiny-CPP-Jupyter

YOLOv4 Tiny 演算法可以應用在工廠瑕疵檢測、醫療影像分析、生物影像分析、工安影像分析、口罩影像分析等。

inference.png

[操作步驟及說明]

1_annotation_pascal_voc_xml.ipynb

開啟標記軟體。準備 png 或 jpg 影像進行標記,影像建議長寬比例一樣。

2_prepare_config_file.ipynb

設定參數。classes= 4 : 偵測類別數。

開啟 data/yolov4-tiny.cfg,搜尋 "classes =",在 anchors = 下面,共有 個地方需要設定類別數。

接著搜尋 #filters =(classes + 5)x3  #255,修改此字串下方的 filters=,例如 : 4 類別,則 filters=27,共有 個地方需要設定。

設定類別名稱,請在 data/label.names 設定類別名稱,類別名稱需與標註時所用的類別名稱一模一樣。

3_prepare_image_txt.ipynb

將標記好的 voc xml 轉換成 yolo 格式。

4_prepare_train_txt.ipynb

準備訓練影像清單。

  • image_path = "data/train/images" : 訓練影像路徑。
  • txt = "data/train.txt" : 輸出的訓練影像清單。

5_prepare_val_txt.ipynb

準備驗證影像清單。

  • image_path = "data/val/images" : 驗證影像路徑。
  • txt = "data/val.txt" : 輸出的驗證影像清單。

99_calculate_anchors.ipynb

訓練之前請記得執行此 ipynb。-width 320 -height 320 為要訓練影像的大小 (可修改),如果實際影像非尺寸會進行縮放,建議影像的長寬要等比例。

執行後,請複製視窗上面的

anchors =  32, 57,  40,180, 149, 69, 124,146,  74,294, 148,284

將此組數字貼在 data/yolov4-tiny.cfg 裡面的所有 anchors,共有 2 個地方需修改。接著,修改cfg 裡面的 width=320、height=320,需要與此 ipynb 設定的值一樣。

6_train_CPU.ipynb

6_train_GPU.ipynb

訓練,如果裝置支援 GPU 加速運算請選擇 6_train_GPU,反之請選擇 6_train_CPU。

model/yolov4-tiny_best.weights :以此模型接續訓練。如果不接續請刪除此參數。

os.system("start src/darknet/build/darknet/x64/darknet_no_gpu.exe detector train data/voc.data data/yolov4-tiny.cfg model/yolov4-tiny_best.weights -map -clear")

7_inference_CPU.ipynb

7_inference_GPU.ipynb

推論單張影像。

  • model/yolov4-tiny_best.weights : 推論的模型。
  • data/test/images/inclusion-2.jpg : 推論的影像。

8_inference_webcam_CPU.ipynb

8_inference_webcam_GPU.ipynb

使用 webcam 推論。-c 0 為 webcam 裝置 id。

9_inference_folder_1_CPU.ipynb

9_inference_folder_1_GPU.ipynb

推論資料夾內的影像與計算正確率。

偵測出來的類別名 = 圖檔名的類別名稱 => 正確。

圖檔名格式為 : 類別名稱-xxx.png。

  • image_path = "data/test/images" : 推論資料夾 (jpg、png)。
  • model_path = "model/yolov4-tiny_best.weights" : 推論的模型。

10_inference_api_CPU.ipynb

10_inference_api_GPU.ipynb

11_inference_api_browser.ipynb

推論的 API,運行 10_inference_api_CPU.ipynb 開啟 server,接著運行 11_inference_api_browser.ipynb,跳出瀏覽器,可以選擇圖片進行推論。 

  • --port 8801 : 開啟的 port。
  • --model_file model/yolov4-tiny_best.weights : 推論的模型。
  • --threshold 0.7 : 推論閾值,數值越高,要求的相似程度越嚴格。

12_inference_folder_demo_GPU.ipynb

12_inference_folder_demo_CPU.ipynb

循環推論 data/plate/test 資料夾內的圖片。

這個 SDK 內建於 AppForAI 人工智慧開發工具

單獨購買價格:5,000元,永久授權,單一 SDK 授權,單機授權,一次下載,無更新服務,一年電子郵件範例諮詢服務。如果是軟體客製化問題,請購買我們的客製化顧問服務點數。

聯絡我們、購買方式、客戶服務


請參閱以下網址:

https://tw.myai168.com/article/index?sn=11056

延伸閱讀

1.
MYAI Studio for Windows 人工智慧開發工具

2.
MYAI Studio for Linux 人工智慧開發工具

3.
人工智慧電腦 - AI PC - 人工智慧 深度學習 機器學習 GPU 電腦 (工作站、伺服器、筆記型電腦) 提供線上估價,可刷卡付費

感謝客戶們的支持

臺灣大學、清華大學、陽明交通大學、成功大學、臺北醫學大學、高雄醫學大學、臺北護理健康大學、中國醫藥大學、國防醫學院、中興大學、中央大學、中山大學、中正大學、政治大學、暨南大學、嘉義大學、宜蘭大學、臺北教育大學、聯合大學、淡江大學、逢甲大學、長庚大學、義守大學、實踐大學、大同大學、中原大學、東吳大學、慈濟大學、慈濟科大、臺科大、北科大、臺中科大、雲林科大、勤益科大、虎尾科大、屏東科大、高雄科大、朝陽科大、明志科大、明新科大、南臺科大、亞東科大、中國科大、體育大學、國防大學、海軍軍官學校、陸軍專科學校、羅東高中、鼓山高中、高雄女中、臺大醫院、成大醫院、榮民總醫院、長庚醫院、慈濟醫院、義大醫院、亞東醫院、聯興國際醫院、中山科學研究院、國防部軍備局、法務部調查局、工研院、資策會、原子能委員會核能研究所、農業委員會特有生物研究保育中心、勞動部勞動研究所、紡織研究所、金屬工業研究發展中心、台灣儀器科技研究中心、車輛測試中心、中華電信、台灣自來水公司、台積電、聯電、南亞科、華邦電子、精材科技、華信光電、友達光電、群創光電、瀚宇彩晶、台塑、台塑石化、台塑網、南亞塑膠、台灣化學纖維、中國石油、羅技電子、義隆電子、隆達電子、達方電子、中磊電子、光紅建聖、鴻海、大聯大、世平興業、盟立自動化、迅得機械、南茂科技、順達科技、致伸科技、英特盛、豐興鋼鐵、中宇環保工程、竹陞科技、研揚科技、敦陽科技、竑騰科技、先豐通訊、神達電腦、神通電腦、百佳泰、科音國際、峰安車業、鴻鵠國際、藍海智慧、凸版蓋特資訊、遠傳電信、精誠軟體服務、酷媽、雄獅旅遊、北港武德宮、西螺福興宮等。