【发布时间】:2020-04-15 23:02:40
【问题描述】:
我正在尝试使用 GCP Jupyter Notebook 进行一些实时网络摄像头视频处理。 我尝试了一些解决方案,包括下面我使用 openCV 但 openCV 根本不会读取它的解决方案。 我认为问题在于首先将网络摄像头视频源流式传输到虚拟机中,我不知道该怎么做。
有这个小部件吗? 附言还尝试了 ipywidgets ipywebrtc,但没有成功。
我这样做的原因是我的笔记本电脑不支持我的程序所需的 CUDA。
import cv2
from IPython.display import clear_output
import time
import PIL.Image
from io import StringIO
import IPython.display
import numpy as np
from IPython.display import HTML, Audio
from base64 import b64decode
import numpy as np
import io
VIDEO_HTML = """
<video autoplay
width=%d height=%d style='cursor: pointer;'></video>
<script>
var video = document.querySelector('video')
navigator.mediaDevices.getUserMedia({ video: true })
.then(stream=> video.srcObject = stream)
var data = new Promise(resolve=>{
video.onclick = ()=>{
var canvas = document.createElement('canvas')
var [w,h] = [video.offsetWidth, video.offsetHeight]
canvas.width = w
canvas.height = h
canvas.getContext('2d')
.drawImage(video, 0, 0, w, h)
video.srcObject.getVideoTracks()[0].stop()
video.replaceWith(canvas)
resolve(canvas.toDataURL('image/jpeg', %f))
}
})
</script>
"""
#Code doesnt work
cap = cv2.VideoCapture(display(HTML(VIDEO_HTML % (256,256,0.8))))
cap1 = VideoRecorder(stream=display(HTML(VIDEO_HTML % (256,256,0.8))));
【问题讨论】:
标签: python google-cloud-platform jupyter webcam