所以我尝试将我的 Android 手机用作网络摄像头,使用 OpenCV 在 Python 中进行图像处理。我已经在我的电脑上安装了客户端,并且能够毫无问题地从我的手机(通过 USB)流式传输视频。但问题是当我尝试在我的代码中使用这个提要时,它给我一个错误。
这是我要执行的操作。
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
cap.release()
cv2.destroyAllWindows()
所以在上面的代码中我得到了以下错误:
[ WARN:0] videoio(MSMF): can't grab frame. Error: -2147483638
当我尝试打印“ret”时,它打印出“False”。 我不知道如何解决这个错误。请注意,我正在尝试通过 USB 数据线进行流式传输。谢谢。
最佳答案
DroidCam 被视为网络摄像机,如果它通过 USB 连接,您可以使用 127.0.0.1(或本地主机)作为 IP。试试这个:
import numpy as np
import cv2
cap = cv2.VideoCapture('http://localhost:4747/mjpegfeed')
while(True):
ret, frame = cap.read()
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
如果它不起作用,请尝试本教程。选项卡“通过 USB 连接(高级)”。 https://www.dev47apps.com/droidcam/connect/
关于android - 如何在 Python 中使用我的 DroidCam 视频源(通过 USB)使用 OpenCV 进行图像处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54060907/