Swift4 Day48:影像識別——花(1/2)
2017.9.5
作品:影像辨識:花
心得:最近去了故宮黑客松,花了很多時間討論跟比賽有點忙碌,好久沒更新部落格了!這次要做的是花的影像辨識,超酷的,不過加上開始在新創實習,下班開始寫寫寫到2點左右就快不行了,所以只能分成兩篇介紹,今天先介紹比較淺的從設定到UIImagePickerController而已,如果可以的話希望變強之後找到iOS實習就能一直做自己喜歡的事了!
Core ML 是蘋果在 WWDC 2017 發表的機器學習框架 (Machine Learning Framework),開發人員可以藉由 Core ML 的輔助,快速將已完成訓練的機器學習模型 (model) 整合進 app 中,讓 app 也能具備人工智慧的學習及預測能力。延伸閱讀:Core ML 機器學習框架是什麼?、core ML官方文件
我們這次使用python來作為與coreML溝通的工具,由於python2跟3的改版很大且不相容,而這次使用的版本限定為2.7。
利用pyhon2.7環境安裝ML檔案
先確認自己的電腦是否有pip.py,打開終端機輸入pip -v
有安裝狀況
沒安裝狀況
1.下載 get-pip.py.儲存在桌面
2.輸入cd desk
3.輸入sudo python get-pip.py等他跑完就裝好了
4.輸入cd ~
5.輸入sudo pip install virtualenv
6.輸入mkdir Environments,開一個叫做Environments的資料夾
7.輸入cd Environments,移轉到Environments
8.輸入virtualenv — python=/usr/bin/python2.7 python27,建立一個python27在Environments資料夾
9.輸入source python27/bin/activate,看到我在用python2.7的開發環境了。
10.輸入pip install -U coremltools,安裝pip
11.輸入deactivate離開2.7開發環境
12.下載編譯器Atom
13.設一個名為Flower classification的資料夾在桌面
14.設一個convert-script.py的檔案在Flower classification裡
15.解壓縮這個檔案放入Flower classification
16.在convert-script.py輸入以下內容,參考文件
17.在終端機輸入cd /Users/______/Environments(可用拖曳的方式)
18.輸入source python27/bin/activate,因為ML只能在python2.7版本使用
19.會看到程式前面顯示(python27),然後cd /Users/zhangshuhan/Desktop/Flower\ Classification
20.輸入python convert-script.py,讓它安裝
21.如果有錯就確認步驟16的每個字是否正確,成功就會發現ML安裝好了
Xcode裡設定UIImagePickerController
- 將FlowerClassifier.mlmodel,拖曳放入Xcode裡面
- 加入一個Navigation Controller
- 加一個Navigation item用相機的圖案,然後加一個Image View設定Auto layout,把兩個都設定到程式碼
- 到Info加一個Privacy — Camera Usage Description
- 輸入以下程式碼,可以達到以下效果
明天會繼續補上的!
——9/6更新——
我遇到error了😭
想問Core ML的Model Class如何從Interface generation only available with valid target改成swift
爬文兼問人中😢