这个例子展示了如何通过使用OpenCV进口国当在录制的视频中检测到车辆和行人时,该模型会在车辆和行人上放置绿色和红色的轮廓。
首先将OpenCV函数导入到Simulink®中金宝app在Simulink中安装和使用OpenCV的计算机视觉工具箱接口金宝app.该应用程序创建了一个Simulink金宝app库,其中包含了一个子系统和一个用于指定OpenCV函数的C Caller块。然后,在预先配置的Simulink模型中使用该子系统来接受录制的视频,用于车辆和行人检测。金宝app
你学习如何:
导入OpenCV函数到Simulink库中。金宝app
在Simulink模型中使用生成库中的块。金宝app
要构建OpenCV库,请为您的操作系统识别一个兼容的c++编译器,如使用OpenCV库的函数的可移植C代码生成.属性配置标识的编译器墨西哥人设置c++
命令。有关更多信息,请参见选择一个c++编译器.
在本例中,使用Simulink模型实现了一个车辆和行人检测器金宝appVehiclePedestrianDetector.slx
.
在这个模型中subsystem_slwrap_drawDetect
子系统驻留在Vehicle_Pedestrian_Detector_Lib
图书馆。您将创建subsystem_slwrap_drawDetect
通过使用OpenCV进口国子系统从“从多媒体文件”块中接收视频。
要访问示例文件夹的路径,在MATLAB®命令行,输入:
OpenCV金宝appSimulinkExamples;
每个子文件夹包含运行示例所需的所有支持文件。金宝app
在继续执行这些步骤之前,请确保将示例文件夹复制到可写文件夹位置,并将当前工作文件夹更改为…\ Vehicle_Pedestrian_Detector例子
.所有的输出文件都保存在这个文件夹中。
1.开始OpenCV进口国应用程序,点击应用程序基于MATLAB Toolstrip。在欢迎页中,指定项目名称作为Vehicle_Pedestrian_Detector
.确保项目名称不包含任何空格。点击下一个.
2.在指定OpenCV库中,指定这些文件位置,然后单击下一个.
项目的根文件夹:指定示例文件夹的路径。此路径是存放示例文件的可写项目文件夹的路径。所有的输出文件都保存在这个文件夹中。
源文件:指定路径. cpp
文件位于您的项目文件夹中的vehiclePedestrianDetector.cpp
.
包含文件:指定路径. hpp
位于项目文件夹中的头文件为vehiclePedestrianDetector.hpp
.
3.分析库以找到要导入的函数和类型。分析完成后,单击下一个.选择drawdetect
功能和点击下一个.
4.从要导入的内容中选择I / O型为img
作为输入
,出
作为输出
然后点击下一个.
5.在Create Si金宝appmulink Library中,配置OpenCV类型的默认值。默认情况下,为OpenCV函数创建一个c调用程序块在生成的Simulink库中创建C Caller块和子系统。金宝app
6.选择配置库以使用Simulink。金宝appImageType信号配置要使用的生成库子系统金宝app仿真软件。ImageType
信号。
7.集Simlink默认颜色格式。ImageType信号来RGB
,这是图像的默认颜色格式。
8.集Simulink的默认数组布局。金宝appImageType信号来列为主
,它是图像的默认数组布局。
9.要创建Simulink库金宝app,单击下一个.
一个金宝app模型库Vehicle_Pedestrian_Detector_Lib
从您的OpenCV代码创建到项目根文件夹。您可以使用任何这些块进行模型模拟。在本例中,子系统subsystem_slwrap_drawDetect
使用。
使用生成的子系统subsystem_slwrap_drawDetect
使用Simulin金宝appk模型:
1.在MATLAB当前文件夹中,右键单击VehiclePedestrianDetector.slx
模型和点击开放从上下文菜单。将生成的子系统从库拖到模型中。在“从多媒体文件”和“视频查看器”块之间插入子系统。
2.双击子系统并配置以下参数值:
行:180
列:320
渠道:3.
基本类型:uint8
3.点击应用,然后单击好吧.
在Simuli金宝appnk工具条上,在模拟选项卡上,单击运行来模拟模型。仿真完成后,Video Viewer块显示视频输入中检测到的车辆和行人的视频。
ToOpenCV|FromOpenCV|金宝app仿真软件。ImageType