메모. 이 저장소는 더 이상 적극적으로 유지되지 않습니다. 그러나 다른 사람들이 변경하고 싶다면 풀 요청을 입력하시면 최대한 빨리 변경 사항을 통합하기 위해 최선을 다하겠습니다. 행복한 코딩! :)
이 저장소는 Google Cloud에서 Google의 1 년 크레딧을 사용하여 무료로 제공되는 GPU를 사용하여 실시간으로 객체 감지를 수행 할 수있는 방법을 보여줍니다. 우리는 아래와 같이 웹 브라우저에서 시각화 할 수있는 객체 감지를 위해 Archictecture를 한 번만 보았습니다.

객체 감지는 어렵고 계산적으로 비싼 문제이며 모든 사람이 실시간 객체 감지를 수행하기 위해 GPU에 액세스 할 수있는 것은 아닙니다. 또한 대안이 있습니다. 예를 들어, Tensorflow는 경량 모빌 레넷 모델을 제공하지만 (여기 참조) 정확도가 감소하는 비용으로옵니다. 객체 감지는 iOS/Android에서도 사용할 수 있지만 앞에서 언급 한 것과 동일한 문제에 직면 해 있습니다.
WebrtChacks에는 흥미로운 솔루션이 제시되었습니다. 나는 그것을 직접 테스트했고 그것은 잘 작동합니다. 그러나이 솔루션은 웹캠 비디오를 일련의 인코딩 된 JPG 이미지로 보내서이 솔루션에 존재하지 않는 상당한 대역폭 사용 및 대기 시간을 초래합니다.
클라우드에서 객체 감지를 수행하면 이러한 문제가 발생합니다. 또한 사용하려는 GPU를 선택할 수 있으므로 실시간 정확도에 가까워지면서 여전히 "무거운"딥 신경망을 실행할 수 있다는 것입니다.
다음 모델에 대한 추론/테스트는 모두 100ms 미만의 대기 시간으로 검증되었습니다. 대기 시간은 Google Cloud Server의 위치와 위치에 따라 다릅니다 (나중에 자세한 내용).
WebRTC 의 asyncio 구현을 사용합니다. AIORTC는 명령에 따라 설치해야 하며이 저장소를 사용할 수 있기 전에 작업해야합니다. 다음은 내가 컴파일 한 단계에 대한 요약입니다. Google Cloud Shell에서 다음을 실행하여 가상 머신 인스턴스를 만듭니다. VM을 배포 해야하는 프로젝트 이름으로 YOUR_PROJECT_NAME 교체하십시오.
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 크레딧 사용을 피하고 청구되는 경우 (크레딧을 초과하는 경우)