YOLO_Online 將深度學習最火的目標檢測做成在線服務實戰乾貨經驗分享

歡迎大家關注我們的網站和系列教程:http://www.tensorflownews.com/,學習更多的機器學習、深度學習的知識!也可以搜索公眾號:磐創AI,關注我們的文章。

第一次接觸 YOLO 這個目標檢測項目的時候,我就在想,怎麼樣能夠封裝一下讓普通人也能夠體驗深度學習最火的目標檢測項目,不需要關注技術細節,不需要裝很多軟體。只需要網頁就能體驗呢。

在踩了很多坑之後,終於實現了。。。

效果:

1.上傳文件

2.選擇了一張很多狗的圖片

3.YOLO 一下

技術實現

  1. web 用了 Django 來做界面,就是上傳文件,保存文件這個功能。
  2. YOLO 的實現用的是 keras-yolo3,直接導入yolo 官方的權重即可。
  3. YOLO 和 web 的交互最後使用的是 socket。

tip0:

最理想的情況就是 YOLO 的模型和參數只載入一次,然後目標檢測就很快。

這個比較容易實現,py 代碼中先載入模型,再寫處理邏輯。

tip1:

Django 中 Keras 初始化會有 bug,原計劃是直接在 Django 裡面用 keras,後來發現坑實在是太深了。

最後 Django 是負責拿文件,然後用 socket 把文件名傳給 yolo。

tip2:

說好的在線服務,為什麼沒有上線呢?買了騰訊雲 1 CPU 2 G 內存,部署的時候發現 keras 根本起不來,直接被 Killed 。

解決,只好本地運行然後截圖了,這個服務對於硬體的要求還是挺高的。

tip3:

YOLO 的識別是需要一定的時間的,做成 web 的服務,上傳完文件之後,並不能馬上識別出來,有一定的延遲。

解決,正在嘗試 web 端只負責接收圖片,然後 GPU 伺服器負責處理 YOLO 相關的任務,然後再把處理過的圖片返回到 web 端。

最後,對深度學習感興趣,熱愛Tensorflow的小夥伴,歡迎關注我們的網站!http://www.tensorflownews.com。我們的公眾號:磐創AI。

——————————————————廣告——————————————————

七月在線機器學習集訓營火熱報名中,掃描下方二維碼,添加客服人員微信,可領取免費試聽課程和課程優惠券:


推薦閱讀:

【問答系統】中國面積大還是美國面積大?
可視化展示神經網路是如何將分類正確率提升的
Machine Learning 機器學習筆記
初級智能機器人與高級智能機器人有什麼區別?

TAG:機器學習 | 深度學習DeepLearning | 計算機視覺 |