【发布时间】:2018-11-03 10:19:21
【问题描述】:
我使用 python 3.7 和 opencv 制作了一个简单的运动检测器程序,有没有办法使用 python 访问我手机的摄像头并使用蓝牙或移动热点将视频流式传输到我的笔记本电脑,以便我可以处理笔记本电脑上的数据?我基本上只是将手机用作可拆卸的相机。
【问题讨论】:
标签: android python-3.x
我使用 python 3.7 和 opencv 制作了一个简单的运动检测器程序,有没有办法使用 python 访问我手机的摄像头并使用蓝牙或移动热点将视频流式传输到我的笔记本电脑,以便我可以处理笔记本电脑上的数据?我基本上只是将手机用作可拆卸的相机。
【问题讨论】:
标签: android python-3.x
使用 IP 网络摄像头 Android 应用程序。 url 由 ip 网络摄像头给出 最后我为视频流添加了视频,或者你可以 网址 = 'http://192.168.137.138:8080/shot.jpg' 在 for 循环之前 cap.read()
这对我来说完美无缺,分辨率为 1280 x 720 注意你的 url ip 会改变,但在最后添加视频
import cv2
import numpy as np`
url = 'http://192.168.137.138:8080/video'
cap = cv2.VideoCapture(url)
while(True):
ret, frame = cap.read()
if frame is not None:
cv2.imshow('frame',frame)
q = cv2.waitKey(1)
if q == ord("q"):
break
cv2.destroyAllWindows()
【讨论】:
您可以使用 IP Webcam android 应用程序来做到这一点。
步骤-
Python 代码 -
import urllib
import cv2
import numpy as np
import ssl
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
url = 'Your URL'
while True:
imgResp = urllib3.urlopen(url)
imgNp = np.array(bytearray(imgResp.read()), dtype=np.uint8)
img = cv2.imdecode(imgNp, -1)
cv2.imshow('temp',cv2.resize(img,(600,400)))
q = cv2.waitKey(1)
if q == ord("q"):
break;
cv2.destroyAllWindows()
你可以在这里找到安卓应用程序 - IP Webcam
这个视频会更好地解释 - How to use with OpenCV
【讨论】:
urllib.urlopen(url) 不再工作,但除此之外它工作正常。你能解释一下ssl的用途吗?我试过删除它,它仍然有效......