在Android设备上使用MATLAB函数块检测视频中物体的边界
本示例向您展示如何通过使用MATLAB®函数块和Simulink®Android设备支持包来识别Android™设备上的实时视频流中的对象边界。识别物体边界的过程被称为边缘检测.本例实现了Sobel边缘检测算法来识别物体的边界。
在这个例子中,你将学习如何:
从Android设备上的摄像头获取实时视频流。
利用MATLAB函数块对采集的视频进行Sobel边缘检测算法的实现。
在Android设备上显示边缘强调的对象。
所需的产品2022世界杯八强谁会赢?
要运行模型,请下载并安装Simulink®Android™设备支持包.
所需的硬件
带摄像头的安卓设备
USB电缆
步骤1:连接Android设备进行边缘检测
在开始本示例之前,我们建议您完成Android设备入门的例子。
1.将USB数据线的micro-USB一端连接到Android设备,将USB数据线的普通USB一端连接到计算机。
2.使用硬件设置界面,配置Android网络。
步骤2:打开并配置边缘检测Simulink模型
打开边缘检测模型。
open_system (“androidEdgeDetection”);
模型主要由以下几个块组成:
相机:此块捕获来自Android设备摄像头的实时图像。该块输出图像像素的红色、绿色和蓝色组件,作为uint8值的矩阵。
滑块:该块在生成的应用程序的用户界面上添加一个滑块。可以向左拖动滑块减小阈值,向右拖动滑块增大阈值。
MATLAB函数:该块是实现Sobel边缘检测算法的自定义块。该算法通过近似图像的梯度幅值来寻找图像中的边缘。当双击块时,可以看到该算法由两个二维过滤器组成,一个用于计算列方向的梯度,另一个用于计算行方向的梯度。两个过滤器都使用3 × 3内核。
视频显示:该块显示生成的应用程序上的边缘强调对象。
步骤3:更改模型配置参数设置
1.在建模在工具条的选项卡上,选择模型设置.
2.在“配置参数”对话框中,选择硬件实现.
3.设置硬件板参数Android设备
.属性中的参数将自动填充硬件板设置使用设备的默认值。
4.从组列表下目标硬件资源中,选择设备的选择.
5.从设备列表,选择你的Android设备。如果您的设备不在列表中,请单击刷新.
请注意:如果单击后设备仍未列出刷新,确保已启用USB调试您的设备上的选项。要启用USB调试,输入androidhwsetup
在MATLAB®命令窗口,并按照屏幕上的指示。
5.点击应用.点击好吧以保存更改。
步骤4:在Android设备上部署边缘检测Simulink模型
在硬件选项卡中的Simulink模型模式部分中,选择在船上跑然后点击构建、部署和启动.当支持包生成代码时,模型窗口的左下角显示状态。生成成功后,支持包将加载并在设备上运行该代码。生成的应用程序开始从摄像头获取实时视频,在获取的图像上运行Sobel算法,然后在设备上显示边缘强调的对象。控件更改阈值阈值滑块按要求。
其他可以尝试的事情
将边缘检测算法替换为其他性能更好的算法。