「技術分享」 用 Google Vision API 一秒辨識中卷、軟絲、花枝、魷魚,不再當菜市場冤大頭
這次想要利用 Google Vision API 做一個辨識中卷(透抽)、軟絲、花枝、魷魚的圖像辨識模型,非常適合沒有太多機器學習知識又需要上菜市場買菜的媽媽們閱讀。(我知道這個交集很可能是 null)
廢話不多說,Vision API 是 Google 開出來的一個服務,可以讓不會自己建立機器學習模型的人,也能輕易地建立一個圖片分類器。
想瞭解一下機器學習的可以看一下這一篇。
這次練習齁,大概有以下幾個步驟,
- 申請 GCP 專案並打開 GCP AutoML
- 蒐集這些十腳軟體動物的圖片
- 在 GCP 建立一個 storage bucket 並上傳圖片
- 打開 AutoML 頁面動一動你的手指完成模型
是不是非常簡單啊?
完成後,我們就可以去 Google 抓一些中卷、軟絲……等等的圖片,並將他們分別存入我們預先開好的資料夾。資料夾形式如下
seafood - cuttlefish
- neritic
- softneritic
- squid
- octopus
- cuttlefish 代表花枝
- neritic 代表中卷(透抽、小卷)
- softneritic 代表軟絲
- squid 代表魷魚
- octopus 代表章魚
抓圖片的時候,我是遇到了一些問題,就是太多圖片都是煮成料理的圖片,那將會影響我們圖像學習的效率,所以我挑了幾張,有興趣一起跟著做的來這邊下載吧!
解壓縮後應該會有五個已經有圖片的資料夾,另外加上一個 index.csv 還有 test.py。
index.csv 內容如下,
gs://first-850611-vcm/seafood/cuttlefish/0_demo.jpg,cuttlefish
gs://first-850611-vcm/seafood/cuttlefish/1_demo.jpg,cuttlefish
gs://first-850611-vcm/seafood/cuttlefish/2_demo.jpg,cuttlefish
gs://first-850611-vcm/seafood/cuttlefish/3_demo.jpg,cuttlefish
...
是待會要丟給 AutoML 的檔案。
test.py 則是為了要整理下載到的圖片以及產生 index.csv 所寫的 python 檔案。
如果你已經下載好我的壓縮檔案,恭喜你已經完成一半了!
第三步,我們要在 GCP Storage 開啟一個 bucket,名稱需要是
<your-project-id>-vcm
舉例來說,我開啟的 bucket 名稱就是 first-850611-vcm 這樣。
開啟後,我們在 first-850611-vcm 再建立一個名為 seafood 的資料夾,然後將 cuttlefish、neritic、softneritic、squid、octopus 還有 index.csv 都上傳上去 seafood 這個資料夾。
到這邊,我們完成了第三步!
最後一步,我們打開 AutoML 網頁,在右上角選擇你的專案名稱,並點擊 Get started with AutoML
接著我們點擊上方的 NEW DATASET 來增加要學習的資料。
輸入 Dataset name,隨意輸入可以辨識就好。
再選擇 Select a CSV 這個選項並且輸入
gs://<your-project-id>-vcm/seafood/index.csv
舉例來說像我就要輸入
gs://first-850611-vcm/seafood/index.csv
然後點擊 CREATE DATASET 等待訓練資料上傳。
上傳完後,將會顯示我們要訓練的圖片以及標籤!
跟著我們點擊上方的 TRAIN
他會警告說什麼,我們圖片太少啊~之類的。
身為一個工程師,贏要衝輸要縮,像這種就是沒在怕的硬訓練下去,一起勇敢地點下 START TRAINING
Training budget 選擇 free 方案,然後點擊 START
經歷了漫長的等待,我們 model 訓練好後,就可以點擊上方的 PREDICT 前往測試我們的 model 學習成果。
我們將分別上傳一張中卷和魷魚的照片來給 model 辨識。
我們的 model 預測的結果如下圖
可以看到,Google 真的是非常的厲害啊!!!!!!!!!!!
我們還要機器學習工程師幹嘛?機器學習工程師都可以辭職去當魚販惹QQ
好拉!不得不說,Vision AutoML 真的很強,在這種少量圖片的情況下,還可以有這樣精準的學習成果。
這麼有趣的東西,絕對不能讓他在這邊停止,下一章我們繼續研究怎麼串接這個 model 的 API 讓這個模型可以真正的被新手媽媽給使用,讓新手媽媽再也不怕被婆婆罵中卷買成魷魚,成為解決婆媳問題的一把屠龍刀!!
工商時間:
如果貴司有需要在 LINE 聊天機器人上做任何與機器學習整合的功能,如:圖片辨識、語音辨識甚至是影片辨識,歡迎寄信到以下信箱詢問。
service@oakmega.com