-
首先下载Droidcam,分别对应PC和手机:Dev47Apps官网
可以先预览一下软件内的效果:
采用数据线连接一定要开启usb调试,选择管理文件.
使用无线的话要位于同一局域网 -
如何在matlab中调用
1 首先安装工具箱MATLAB Support Package for IP Cameras
2 手机和电脑处于同一局域网下,打开APP,查看自己的IP(不要和电脑端Droidcam连接)
3 运行代码:
cam = ipcam('你的IP/video/mjpg.cgi')
preview(cam)
%然后就可以picture = camera.snapshot获得图片再进行识别等操作
比如我的URL是http://172.18.165.177:4747,就填
cam = ipcam('http://172.18.165.177:4747/video/mjpg.cgi')
- 如何在python中调用
import cv2
cv2.namedWindow("camera", 1)
# 开启ip摄像头
video = "http://192.168.31.42:4747/video/mjpg.cgi" # 依然是: 你的IP/video/mjpg.cgi
capture = cv2.VideoCapture(video)
while True:
success, img = capture.read()
cv2.imshow("camera", img)
# 按esc键退出,注意,应当在摄像头窗口按键,不是在终端命令行窗口
key = cv2.waitKey(10)
if key == 27:
print("esc break...")
break
capture.release()
cv2.destroyWindow("camera")
----------------------------分割线------------------------------
以下是我查找的过程,啥用也没有,不用看了…
Google上搜的前两种方法都没成功,不过还是贴上吧,大家可以试试说不定就可以,我看论坛都成功了,可能我有什么环境装的不对(OS Generic Video Interface什么的都安了)。
最后一个方法我的可用
1、IP摄像头
url = 'http://<ip 地址>/shot.jpg';%例如url = 'http://172.18.207.217:4747/shot.jpg';
ss = imread(url);
fh = image(ss);
while(1)
ss = imread(url);
set(fh,'CData',ss);
drawnow;
end
我用不了,显示无法识别url,去掉shot.jpg后可以识别,手机端也打开了,但电脑仍无法显示
反正浏览器显示正常
2、usb摄像头
能检测到我的摄像头
webcamlist
ans =
2×1 cell 数组
{'Lenovo EasyCamera'}
{'DroidCam Source 3'}
摄像头详细信息:
Name: 'DroidCam Source 3'
AvailableResolutions: {'640x480'}
Resolution: '640x480'
Zoom: 5000
BrightnessMode: 'auto'
Focus: 5000
ColorEnable: 1
ContrastMode: 'auto'
Contrast: 5000
ZoomMode: 'auto'
FocusMode: 'auto'
Brightness: 5000
预览失败了
cam=webcam(2)
preview(cam)%或者I=snapshot(cam)。。。
然而我的却仍无法显示,倒是正常检测到了摄像头并preview了一个奇怪的东西出来
只要安装这个软件,即便不插手机也能检测到,可能检测的只是…
3、还是IP摄像头
误打误撞,终于成功了,还是mathworks大法好啊
首先安装MATLAB Support Package for IP Cameras
运行代码:
cam = ipcam('你的IP/video/mjpg.cgi')
preview(cam)
%然后就可以snapshot等等
比如我的URL是http://172.18.165.177:4747,
然后要在后面加/video/mjpg.cgi才行(不是加video.mjpeg)。(尽管URL有两个,有一个没有/video)