当前位置:网站首页>matlab让我的旧手机起死回生
matlab让我的旧手机起死回生
2022-08-04 05:35:00 【懂科研的程序员】
前不久有伙伴在Q群中询问用matlab调用网络摄像头的事,其实咱很久之前就分享过,由于看的人太少了就给删了。今天重新整理分享出来,本文的主角就是IP Webcam,通过它就可以轻松将智能手机转变成网络摄像头,这也是为啥将标题取为“matlab让我的旧手机起死回生”的原因。如果手中有闲置旧手机,安上IP Webcam,打开手机无线热点(无需使用数据流量和WiFi就能用,仅打开热点),旧手机里面变成一个全能监控王。接下来就一起来看看怎么操作的吧!
一、打开手机热点

二、启动IP WebCam软件

从上图中不难发现IP WebCam有丰富音视频设置功能,支持插件、动作与声音检测。
三、点击开启服务器

待开启服务器后,出现如下画面:

在电脑端打开浏览器,在浏览器中输入IPv4后面的网站即可读取音视频流数据了。下图是输入IP地址后的管理监控界面:

因为flash已经停更且存在安全风险,推荐视频栏选择浏览器,音频栏选择HTML5 Wav即可。点击双向音频,还支持通话,如下:

此外,新版本还支持读取传感器信息:

上面就是IP WebCam的简单使用教程。接下来介绍如何在matlab中实现对IP WebCam的调用。
~~IP WebCam高级功能服务地址列表~~
IP摄像头的服务地址列表:
http://192.168.0.101:8080/video 是 MJPEG URL.
http://192.168.0.101:8080/shot.jpg 获取最新一帧
http://192.168.0.101:8080/audio.wav 是WAV格式的音频流
http://192.168.0.101:8080/audio.aac 是AAC格式的音频流(如果硬件支持的话)
http://192.168.0.101:8080/audio.opus 是Opus格式的音频流
http://192.168.0.101:8080/focus 对焦摄像头
http://192.168.0.101:8080/nofocus 释放对焦这里通过读取图片的方式来实现在matlab中调用IP WebCam,调用相关源代码如下:
clc;clear;close all
% 定义IP地址
IP = '192.168.0.10:8080';
% 获取IP Webcam的图像
url = strcat('http://',IP,'/shot.jpg');
% 读取图像
pic = imread(url);
% 显示图像
fhandle = image(pic);
while(1)
pic = imread(url);
set(fhandle,'CData',pic);
% 刷新图像
drawnow;
end实际效果(因为微信平台限制GIF帧数和文件大小,删了不少帧)

MATLAB中文论坛的math教授分享过一款将摄像头用于安防的教程,并提供了源代码,感兴趣的伙伴可以去论坛找找。只要有了图像和视频数据,一切有关图像和视频处理的工具都可排上用场了。要是有时间,我也计划自己做一款实时视频图像处理工具。至于文中提到的IP WebCam,大家可自行谷歌搜索,在此就不分享了。
当然也可以通过官方的matlab app来实现对手机相机的读取。不过私下试了试,速度真的是很慢,延迟卡顿非常严重,而且还不能离线使用,即不能通过热点访问。要是大家感兴趣,可以为大家做一期使用官方app来调用的教程。今天的内容到此就结束了,希望能对小伙伴们有所帮助!
欲获取更多精彩内容,请持续关注懂科学的程序员公众号最新动态!
封面图片来源:由 FunkyFocus 在Pixabay上发布
边栏推荐
- DropBlock: 卷积层的正则化方法及复现代码
- Database document generation tool V1.0
- Flask request 返回网页中 checkbox 是否选中
- 基于爬行动物搜索RSA优化LSTM的时间序列预测
- 【C# - 爬虫】使用Selenium实现爬虫,获取近七天天气信息(包含完整代码)
- Database: Organize Four Practical SQL Server Scripting Functions
- 字符串的一些方法
- Microsoft computer butler 2.0 beta experience
- sql常用函数
- Based on the EEMD + + MLR GRU helped time series prediction
猜你喜欢

2DCNN, 1DCNN, BP, SVM fault diagnosis and result visualization of matlab

EfficientNet解读:神经网络的复合缩放方法(基于tf-Kersa复现代码)

基于EEMD+GRU+MLR的时间序列预测

误差指标分析计算之matlab实现【开源1.0.0版】

狗都能看懂的变化检测网络Siam-NestedUNet讲解——解决工业检测的痛点

在线公众号文章内容转音频文件实用小工具

DropBlock: 卷积层的正则化方法及复现代码

MAML原理讲解和代码实现

Database Skills: Organize SQL Server's Very Practical Scripts

如何画好业务架构图。
随机推荐
U-Net详解:为什么它适合做医学图像分割?(基于tf-Kersa复现代码)
QT signals 保存到 QMap
MySQL(4)
Jenkins pipeline 自动部署实践
缓存穿透、击穿、雪崩
数组的一些方法
bitnami/mongodb-sharded在AWS EKS扩展shard失败解决
把DocumentsandSettings迁移到别的盘
狗都能看懂的变化检测网络Siam-NestedUNet讲解——解决工业检测的痛点
VMD结合ISSA优化LSSVM功率预测
狗都能看懂的Self-Attention讲解
RuntimeError: You called this URL via POST, but the URL doesn‘t end in a slash and you have APPEND_S
A semi-supervised Laplace skyhawk optimization depth nuclear extreme learning machine for classification
读取JDBC配置文件
软件稳定性思考
网络端口大全
A priori box (Anchor) in target detection
Jackson 使用样例
数据库实体类对应daoimpl,基础的增删改查。
更改软件的默认安装位置