筆記。這個存儲庫不再由我積極維護。但是,如果其他人願意進行更改,請提出一個拉動請求,我會盡快將更改合併。愉快的編碼! :)
該存儲庫說明瞭如何使用Google Cloud上使用Google的1年學分在Google Cloud上使用的GPU實時進行對象檢測。我們只使用一個You Gout Gool曾經的臨床檢測來檢測,可以在Web瀏覽器中可視化,如下所示。

對象檢測是一個困難且計算上昂貴的問題,並不是每個人都可以訪問GPU來進行實時對象檢測。此外,還有其他選擇。例如,TensorFlow提供了輕量級的Mobilenet型號(請參閱此處),但它們是以降低精度為代價的。對象檢測也可以在iOS/Android上使用,但它們面臨著前面提到的相同問題。
Webrtchacks也提出了一個有趣的解決方案。我自己測試了它,它運行良好。但是,該解決方案將網絡攝像頭視頻發送為一系列編碼的JPG圖像,從而導致該解決方案中不存在的大量帶寬使用和延遲。
在雲上進行對象檢測會消除這些問題。更重要的是,由於您可以選擇要使用的GPU,因此您可以運行很多“重”的深神經網絡,同時仍然可以實現接近實時準確性。
已經驗證了以下模型的推理/測試,所有延遲均小於100 ms。延遲將取決於Google Cloud Server的位置以及您所在的位置(稍後將詳細介紹)。
WebRTC的asyncio實現。 AIORTC必鬚根據其指示安裝,並且在此存儲庫之前工作。這是我編制的步驟的摘要:通過在Google Cloud Shell中運行以下內容來創建虛擬機的實例。用項目的名稱替換您的YOUR_PROJECT_NAME應該部署VM。
gcloud beta compute --project=YOUR_PROJECT_NAME instances create instance-1 --zone=us-east1-b --machine-type=n1-standard-2 --subnet=default --network-tier=PREMIUM --maintenance-policy=TERMINATE --service-account=740303654106-compute@developer.gserviceaccount.com --scopes=https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring.write,https://www.googleapis.com/auth/servicecontrol,https://www.googleapis.com/auth/service.management.readonly,https://www.googleapis.com/auth/trace.append --accelerator=type=nvidia-tesla-p100,count=1 --tags=http-server,https-server --image=c2-deeplearning-tf-1-12-cu100-20181120 --image-project=ml-images --boot-disk-size=60GB --boot-disk-type=pd-standard --boot-disk-device-name=instance-1如下所示,打開新創建實例的SSH終端。還請注意外部IP 。您需要以後需要它。 
您將得到一個提示,要求安裝NVIDIA驅動程序。輸入y 。 
安裝FFMPEG和其他軟件包。
sudo apt install ffmpegsudo apt install libavdevice-dev libavfilter-dev libopus-dev libvpx-dev pkg-config安裝完成後,請克隆GIT存儲庫並安裝依賴項。拿一杯咖啡。這將需要幾分鐘。
cd ~git clone https://github.com/omarabid59/YOLO_Google-Cloud.gitcd ~/YOLO_Google-Cloudpip3 install -r requirements.txtmkdir -p ~/YOLO_Google-Cloud/mlserver/modelcd ~/YOLO_Google-Cloud/mlserver/modelwget https://raw.githubusercontent.com/pjreddie/darknet/master/cfg/yolov3.cfgwget https://pjreddie.com/media/files/yolov3.weightswget https://raw.githubusercontent.com/pjreddie/darknet/master/data/coco.namesnohup python3 ~/YOLO_Google-Cloud/mlserver/mlserverclient.py &cd ~/YOLO_Google-Cloud/webserver/ && python3 httpserver.py
YOUR_IP_ADDRESS是您在步驟2中獲得的。https://YOUR_IP_ADDRESS:8889就是這樣!請記住,完成實驗後立即關閉Google Cloud VM,以避免使用Google信用並收取費用(如果您超出了信用額度)