自定模型17種花卉

網路上有另一種辨識17種花卉的討論,請先安裝如下套件

pip install tensorflow matplotlib opencv-python

收集圖片

圖片資料集請下載 flowers_17.zip,然後解開後置於專案之下。

label.txt

flowers圖片共有17種,每種 80 張圖片,所以共有1360張圖片,1~80是水仙(Narcissus),81~160是雪花蓮(Snowdrop),請先於專案下新增 label.txt,然後輸入如下資料。

1       80      Narcissus
81      160     Snowdrop
161     240     LilyValley
241     320     Bluebell
321     400     Crocus
401     480     Iris
481     560     Tigerlily
561     640     Daffodil
641     720     Fritillary
721     800     Sunflower
801     880     Daisy
881     960     ColtsFoot
961     1040    Dandelion
1041    1120    Cowslip
1121    1200    Buttercup
1201    1280    Windflower
1281    1360    Pansy

分類訓練圖片及驗証圖片

將所有的圖片分類成 train_images及 test_images二個目錄,每個目錄又有17種花卉目錄。

新增 “分割資料.py” 檔,程式碼如下。

請注意, Linux 下使用 os.listdir() 並不會依檔案字母順序列出,所以在檔案存取時的順度要特別注意。

🔒 底下內容僅限會員閱讀。

立即登入

訓練模型

建立模型跟前一篇的 5 種花卉雷同。

🔒 底下內容僅限會員閱讀。

立即登入

辨識圖片

上述模型若是無法訓練的話,請由如下網址下載本人已訓練好的模型

下載模型 : model_flower_17.zip

將要辨識的圖片放在 ./images裏面,然後開始辨識。

🔒 底下內容僅限會員閱讀。

立即登入

list 相加與 np.r_ 效能

上述代碼中,原本是使用 np.r_ 建立陣列,但這種方式的效能極差,所以改用 list += 來加速。由如下程式碼可知,list 相加的效能確實高出許多

🔒 底下內容僅限會員閱讀。

立即登入

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *