# Azue Computer Vision Api AI 影像辨識使用範例 ## 需求 在it邦幫忙看到[一篇問題](https://ithelp.ithome.com.tw/questions/10207835?sc=nl.daily) 要怎麼判斷圖片的盒子是否有放白色墊子,不限語言不限方法 * 放白色墊子的殼子 ![](https://i.imgur.com/3Cjcizy.png) * 沒放白色墊子 ![](https://i.imgur.com/i2tn4sJ.png) --- ## 事前評估 我想嘗試用AzureAI判斷,可以使用 Azure 的 自訂視覺 https://azure.microsoft.com/zh-tw/services/cognitive-services/custom-vision-service/#overview 價格 (免費版) 最多 2 個專案 免費 2 TPS 每月最多 1 小時的訓練 每專案 5,000 個免費訓練影像 每月 10,000 個預測 免費的拿來當教學,這個輛應該是撐得住,不用真的花我的錢 --- ## 蒐集圖片資料 AI需要準備一些訓練樣本,於是用Google智慧鏡頭找有放白色墊子的圖(訓練樣本) ![](https://i.imgur.com/DXzMjGA.jpg) 一樣用Google智慧鏡頭找沒有放白色墊子的圖,但是看了一下感覺不是我們要的 ![](https://i.imgur.com/c4pz7eh.jpg) 改用google圖片搜尋 **黑色方粉餅盒** 總算有比較像的東西了 ![](https://i.imgur.com/8lTKjhl.jpg) ## 樣本蒐集完畢 上面是有東西(白or沒那麼白)的粉餅盒 下面是沒有的粉餅盒,甚至有透明、鏡子或圓形的進來鬧場 ![](https://i.imgur.com/80gjKJu.png) --- ## 建立自訂視覺AI專案 要進去的話,在[自訂視覺介紹](https://azure.microsoft.com/zh-tw/services/cognitive-services/custom-vision-service/#overview)這一頁往下捲可以看到 登入自訂視覺入口網站 就是了 ![](https://i.imgur.com/Yqam15J.png) 或是直接進到[自訂視覺入口網站](https://www.customvision.ai/projects),進去後裡面都還是空的,先選 New Project 開專案 ![](https://i.imgur.com/uGTGd0e.png) ## 進到完整的開專案畫面 選資源比較詳細寫在下面,這邊關鍵是 * 選分類類型,一張圖只有一個tag標記(有白色墊子or沒有白色墊子) * 圖片適用的AI類型,不知道盒子算什麼,就選第一個General(A2)省事 ![](https://i.imgur.com/jprIjtY.png) ## 開 Resource 的畫面,選 create new 會有這個新視窗要選 關鍵是 Kind 服務類型選 Training,地點選 中南美洲 才有 F0 免費的可以用,選 S0 要錢請有心理準備 ![](https://i.imgur.com/p07mXYx.png) ## 沒有 resource group (資源群組) 隨便開一個 記得一樣選中南美洲,免得跨區傳送資料要錢 ![](https://i.imgur.com/WOxXoUn.png) --- ## 專案開好後 --- ## 進到專案裡面,準備來分析圖片 通常這種顏色比較亮的按鈕大概會是主要功能,從這幾個開始用 ![](https://i.imgur.com/IaiZYIO.png) ## 把Y的圖全部傳進去(之後準備加tag標記) ![](https://i.imgur.com/6sDN151.png) ## 像這樣打上Tag ![](https://i.imgur.com/ssY16Es.png) ## 一堆圖標好tag了,換N的再來一次,但是 Add image 換位置了 ![](https://i.imgur.com/Rb063Zz.jpg) ## YN 都有了,來train訓練模型了 ![](https://i.imgur.com/kTkrNDg.jpg) ## 快速或進階,才幾筆而已就快速吧 ![](https://i.imgur.com/bX62h7w.png) ## 等待訓練中 ![](https://i.imgur.com/B4JS29p.png) ## 等待訓練過程來準備測試樣本 測試樣本就不從YN裡面找了,再去挖幾個出來 這裡使用的概念是 2個比較相近的+2個也符合有放東西但樣子有點奇怪的的來干擾AI ![](https://i.imgur.com/AQQ1iJa.png) ## 準備無效樣本 為了避免AI亂分,要再找一些很明顯不是Y也不是N,請AI不要把這些不相關的混進去 於是找了 * 空的黑便當盒 * 有料的白便當盒 * 很彩色的米白便當盒 * 童顏巨乳 (為了學術用途) ![](https://i.imgur.com/VrjEKMb.png) ## AI訓練完成,開心的測試時間 ![](https://i.imgur.com/t81sT31.png) ## 預期 N 的,除了一個來干擾的圓形粉餅盒,其餘都有90%以上的信心程度 ![](https://i.imgur.com/jaxOSxc.png) ## 預期 Y 的,全部都有97%以上的信心程度 ![](https://i.imgur.com/p1QKBBk.png) ## 預期來干擾的,只有黑色便當盒被分到N(沒有圓形粉餅)其他都不到90%的信心程度 ![](https://i.imgur.com/pKVJUaw.png) ## 結論 本次花費人工時間,含搜尋樣本約1.5小時 (寫這篇的時間) 得知使用 自訂視覺 Customvision.AI Azure Vision AI,若設定有白色圓形粉餅的信心程度,可以使用 90% Y有粉餅作為分水嶺,AI可自動判斷 但 **純黑方形的空便當盒** 或 **偏粉白色的童顏巨乳** 可能會造成AI有機會誤判 以上結論供各位參考,然後AI為了避免持續付費已經砍了,就不開放各位demo使用了 但是訓練用的圖片可以開放給各位使用,請參考以下網址 https://imgur.com/a/qboUrju