主要内容

除噪声和图像锐化

这个例子展示了如何使用视觉HDL工具箱™实现图像增强的fpga模块。

视觉HDL工具箱提供了视频处理算法设计生成可读,synthesizable硬件描述语言(VHDL)和Verilog代码(HDL编码™)。生成的HDL代码可以处理1080 p视频60帧每秒的速度。

计算机视觉的工具箱™产品模型在高抽象层次。块和对象执行帧处理,操作在一个图像帧。然而,FPGA和ASIC系统执行pixel-stream处理,操作在一个图像像素。

从物理系统往往包含输入图像模糊和噪声等障碍。一个对象的结果集中在一个模糊的形象。死亡或像素摄像机或视频传感器,或从硬件组件热噪声,导致图像中的噪声。这个例子中去除噪声和提高输入图像,它可以使用在早期的处理链为后续处理提供更好的初始条件。这个例子使用了两个pixel-stream过滤块从视觉上高密度脂蛋白的工具箱。中值滤波去除噪声和图像滤波器提高图像。验证pixel-stream设计,生成的结果与帧块从计算机视觉的工具箱。

模型概述

NoiseRemovalAndSharpeningHDLExample.slx系统显示。

计算机视觉工具箱块操作整个框架。视觉HDL工具箱块的像素数据流操作,一次一个像素。转换块视觉HDL工具箱,像素和像素帧,使您能够模拟streaming-pixel设计和帧比较设计。

线的颜色的差异喂帧行为模型和Pixel-Stream HDL模型子系统显示图像的变化速率模型的流分支。这个速度过渡是因为像素流是在相同的时间发送完整的视频帧,因此以更高的速度传播。打开视图的颜色和样品时间信息,在左边的面板,单击样品时间图标并选择颜色

下面的图显示了图像源子系统。

图像源阻止进口一个灰度图像,然后利用MATLAB功能块叫模糊和添加噪声模糊图像和注入满头花白的噪音。的imfilter3×3的平均内核函数使用一个模糊的图像。满头花白噪声注入通过调用imnoise命令。噪声密度定义为组合的比例数量的盐和胡椒像素总像素在图像。这个密度值指定的噪声密度不变,而且必须在0和1之间。图像源子系统输出帧图像的二维矩阵。

下图显示帧的结构行为模型子系统,由框架中值滤波器和二维滤波器从计算机视觉的工具箱。中值滤波去除噪声和二维滤波器配置为锐化图像。

下面的显示器显示一帧视频模糊和噪声来源,de-noised版本中值滤波后,磨2 d冷杉滤波后输出。

Pixel-Stream HDL模型子系统使用视觉HDL工具箱来实现基于流媒体的中值滤波器和二维冷杉过滤器。验证子系统比较结果从帧处理与pixel-stream处理。这两个子系统被描述在接下来的两个部分。

Pixel-Streaming HDL设计

帧的像素块帧图像转换为一个像素流块以来视觉HDL工具箱操作流输入信号所需的FPGA硬件。模拟的影响水平和垂直消隐时间中发现视频系统基于fpga和asic的活性与非图像数据图像增强。流像素协议的更多信息,请参阅流像素接口(视觉HDL工具箱)。帧的像素块配置如图所示:

组件的数量为灰度图像输入字段设置为1,和240 p视频格式字段匹配的视频源。

在这个例子中,活动视频区域对应于240 x320矩阵的模糊和噪声图像从上游图像源子系统。其他六个参数,即总每行像素,总视频线,线开始活跃,结束活动,和门廊,门廊指定多少非图像的像素将被添加的四周活动视频。有关更多信息,请参见帧像素(视觉HDL工具箱)块引用页面。

注意所需的样品时间内视频源图像源是由产品总每行像素和总视频线。

Pixel-Stream HDL模型子系统包含流媒体的实现中值滤波器和二维滤波器从视觉HDL工具箱,如下图所示。您可以生成从Pixel-Stream高密度脂蛋白HDL代码模型子系统使用HDL编码器™。

中值滤波器(视觉HDL工具箱)块是用来去除椒盐噪声。基于滤波器系数,图像滤波(视觉HDL工具箱)块可以用于模糊、锐化或恢复中值滤波后图像的边缘检测。在这个例子中,图像过滤配置为一个图像锐化。

验证Pixel-Stream处理设计

为了与帧的输出滤波器的计算机视觉工具箱,模型将像素流数据回全帧使用像素帧块。组件的数量字段和视频格式字段的两帧像素和像素帧都设定在1和240 p,分别匹配视频源的格式。

帧的像素块的输出是一个二维矩阵的一个完整的图像。这使我们能够比较HDL模型和行为模型的帧域,如验证子系统所示所示。

峰值信噪比(PSNR),计算参考图像和流之间的图像处理。理想情况下,比例应该是正无穷,表明全画幅行为模型的输出图像匹配Pixel-Stream高密度脂蛋白的生成模型。

生成HDL代码并验证其行为

检查并生成HDL代码中引用这个例子中,您必须有一个高密度脂蛋白编码器许可证。

生成HDL代码,使用以下命令:

makehdl (“NoiseRemovalAndSharpeningHDLExample / Pixel-Stream HDL模型”);

生成测试台上,使用以下命令:

makehdltb (“NoiseRemovalAndSharpeningHDLExample / Pixel-Stream HDL模型”);