主要内容

双边滤波Zynq-Based硬件

这个例子显示了如何目标双边滤波算法Zynq®硬件使用视觉HDL工具箱™支持包Xilinx®Zynq-Based硬件。金宝app

所需产品:下载188bet金宝搏

  • 金宝app仿真软件®

  • 视觉HDL工具箱

  • 计算机视觉工具箱™

  • 高密度脂蛋白编码器™

  • 高密度脂蛋白编码器为金宝appXilinx Zynq平台支持包

可选地,生成、编译和目标Zynq手臂®软件生成模型:

  • 嵌入式编码器®

  • 嵌入式编码器为Xilinx Z金宝appynq平台支持包

介绍

这个例子遵循算法详细的开发流程为Zynq-Based硬件开发视觉算法的例子。如果您还没有这样做,请通过这个例子来更好地了解所需的工作流。

该算法对应于视觉HDL工具箱的例子,使用双边滤波生成卡通形象。Zynq-Base金宝appd视觉硬件的支持包,你会得到一个硬件参考设计,允许容易集成的目标算法的视觉系统。

设置

如果您尚未这样做,通过指导运行安装向导部分Zynq支持包安装。金宝app您可能已经完成了这一步当你安装这个包的支持。金宝app

在MATLAB选项卡,环境部分的将来发布,点击附件>管理插件。定位视觉HDL工具箱支持包Xilinx Z金宝appynq-Based硬件,然后单击设置

引导安装向导执行一些初始设置步骤,并确认目标可以引导和主机和目标可以交流。

有关更多信息,请参见步骤1。安装检查表

Pixel-Stream模型

这个模型提供了一个pixel-stream针对高密度脂蛋白的算法的实现。致力于完整的图像,而是HDL-ready算法适用于pixel-streaming接口。这个模型使用一个图像大小块,允许将源视频帧大小为更好的模拟性能。或者,您可能想要执行一个视频帧的作物。阴影区域的块与像素流信号转换为目标做准备。

视频源这个示例的源视频来自要么从多媒体文件块,从一个多媒体文件,读取视频数据或从视频捕捉块,捕捉生活视频帧从一个HDMI源连接到Zynq-based硬件。配置源,右键单击变体选择左下角的图标图片来源块,选择标签模式积极的选择,选择文件HW

对于这个算法,模型配置为上市:

  • 一个像素的RGB格式。该算法写入一个RGB像素格式,和两个从多媒体文件视频捕捉块配置为在这种格式提供视频帧。其他受支持的金宝app像素格式YCbCr 4:2:2, Y。

算法配置该算法,除了处理双边滤波的图像也有一些控制。

  • cGradientThresh是一个配置选项调整梯度阈值。

  • cOverlayColor是一个配置选项来调整边缘的颜色。

  • pbEdgeOnly连接到一个按钮在黑板上显示结果没有显示原始图像边缘。

目标后,cGradientThreshcOverlayColor从仿真软件模型参数可控金宝app外部模式目标硬件执行。pbEdgeOnly控制端口是一个纯硬件连接在有针对性的设计。这个端口可以运行在任何期望的速度包括像素时钟频率。

然而,cGradientThreshcOverlayColor值控制的嵌入式处理器(或主机外部模式目标硬件模式)。因为无论是主持人还是嵌入式CPU可以更新这些控件在像素时钟频率,速度上的帧速率。样品的时间常数模块连接到这些控件将在执行frameSampleTime

有两件事需要注意的模拟输出:

  1. 在模拟输出的第一帧,视频显示范围显示一个黑色的形象。这种情况表明,没有图像数据是可用的。这种行为是因为pixel-streaming算法必须缓冲的输出形式显示之前一枚。

  2. 在第二次模拟框架,pixel-streaming输出的视频显示范围是不正确的cGradientThresh配置模型的模型参数值。金宝app这种差异是由于算法使用初始cGradientThresh的价值0。当你使用率转换块中配置单位延迟模式的输入值只有注册后输出一个完整的样本输入的速度。在这种情况下,输入速率对应于一个视频帧。在这最初的过渡时期,块将输出初始条件(一个值0)。这些块必须确保单频中的所有模块子系统,HDL代码生成所需。有关更多信息,请参见率转换(金宝app模型)

您可以运行这个没有硬件仿真。修改当前帧大小为模拟性能,改变帧大小的价值图像大小,图像帧的像素,图像像素坐标系块。外框尺寸越低,仿真运行得越快。最低帧大小是240 p。

目标的算法

满意后像素流算法模拟,你可以目标像素算法的FPGA Zynq董事会。

为了目标,建立Xilinx工具链通过调用hdlsetuptoolpath。例如:

> > hdlsetuptoolpath (“ToolName”,“Xilinx Vivado”,“路径”,“C: \ Xilinx \ Vivado \ 2020.2 \ bin \ vivado.bat ');

执行hdlsetuptoolpath(高密度脂蛋白编码器)为更多的信息。

通过右键单击启动针对工作流双边滤波算法子系统和选择高密度脂蛋白HDL代码>工作流顾问

  • 在步骤1.1中,选择IP核心代工作流和从列表中选择您的目标平台。

  • 在步骤1.2中,选择RGB参考设计匹配的像素格式双边滤波算法子系统。其他港口的硬件用户逻辑映射到可用的硬件接口。对于这个示例,映射pbEdgeOnly按钮0。同样,地图cGradientThreshcOverlayColorAXI4-Lite软件控制。

  • 第二步准备设计一代通过做一些设计检查。

  • 第三步生成HDL代码的IP核心。

  • 第四步将新生成的IP核心集成到更大的视觉Zynq参考设计。

按顺序执行每一步体验完整的工作流程,或者,如果你已经熟悉,准备和HDL代码生成阶段,在目录中右键单击步骤4.1左边和选择选择任务运行

  • 在步骤4.2中,工作流模型生成一个目标硬件接口,如果嵌入式程序员Zynq支持包已经安装,Zynq软件界面模型。金宝app点击运行这个任务按钮使用默认设置。

步骤4.3和4.4

其余的工作流程生成一个FPGA比特流,下载到目标,重新启动。

因为这个过程可能需要20 - 40分钟,你可以选择跳过这一步使用预生成的比特流对于这个示例附带的产品,放置在SDCard期间设置。

注意:这个比特流生成与HDMI像素时钟约束为148.5 MHz最高分辨率为1080 p高清电视在60帧每秒。Zynq硬件上运行这个例子与更高的分辨率,从下拉列表中选择源视频分辨率值在步骤1.2。

使用这个预生成的比特流执行以下:

> > vz = visionzynq ();> > changeFPGAImage (vz“visionzynq-zedboard-hdmicam-bilateral_filter.bit”);

使用另一个平台的比特流,取代“zedboard”与平台的名字。

或者,您可以继续步骤4.3和4.4。

使用高密度脂蛋白的生成模型工作流顾问

步骤4.2生成的两个或四个模型取决于嵌入式安装编码器:有针对性的硬件接口的模型和相关的库模型,和一个软件界面的模型和相关的库模型。有针对性的硬件接口的模型可以用于控制仿真软件模型的参考设计没有嵌入式编码器。金宝app软件界面的模型支持完整的软件针对Zynq当嵌入式编码器和Zyn金宝appq(嵌入式编码器)支持包安装,使外部模式模拟,Processor-in-the-loop,全面部署。

图书馆创建模型,对硬件生成模型的任何更改传播到任何自定义目标存在的硬件仿真或软件界面模型。

针对硬件接口模型:在这个模型中,您可以调整的配置参考设计和阅读或硬件的驱动控制港口用户逻辑。这些配置更改影响的设计虽然在目标系统上运行。您还可以显示视频捕获目标设备。

软件界面模型:在这个模型中,您可以运行在外部模式控制的配置参考设计,和读或驱动任何控制端口的硬件用户逻辑连接AXI-Lite寄存器。这些配置更改影响的设计虽然在目标系统上运行。您可以使用这个模型完全部署软件设计。(这个模型生成只有嵌入式编码器和嵌入式编码Zynq支持包安装)。金宝app