主要内容

伽马校正

这个例子展示了如何建模pixel-streaming伽马校正的硬件设计。模型比较结果从视觉上高密度脂蛋白工具箱™伽马校正器块帧生成的结果伽马块从计算机视觉的工具箱™。

这个示例模型提供了一个hardware-compatible算法。您可以在董事会实现这个算法使用Xilinx™Zynq™参考设计。看到伽马校正与Zynq-Based硬件(视觉HDL工具箱支持包Xilinx Z万博1manbetxynq-Based硬件)

结构的例子

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

GammaCorrectionHDL.slx系统如下所示。

不同的颜色线喂全画幅γ补偿Pixel-Streamγ补偿子系统显示图像的变化速率模型的流分支。这个速度过渡是因为像素流是在相同的时间发送完整的视频帧,因此以更高的速度传播。

在这个例子中,使用伽马校正正确的黑暗的图片。较暗的图像是由喂养视频源腐败块。的视频源输出240 p灰度视频,腐败块De-gamma操作适用于源视频感知黑暗。然后,下游全画幅γ补偿块或Pixel-Streamγ补偿子系统从损坏的视频中删除之前De-gamma操作恢复源视频。

源视频的一帧,其损坏的版本,和恢复的版本,显示在下图从左到右。

这是一个很好的实践开发行为系统使用块过程完整的图像帧,全画幅γ补偿块在这个例子中,在前进在FPGA-targeting设计工作。这样一个行为模型有助于验证视频处理设计。后来,它可以作为一个参考验证算法的实现有针对性的FPGA。具体来说,低PSNR值(峰值信噪比)的块结果验证部分在顶层模型的比较结果从帧处理与pixel-stream处理。

帧像素:生成一个像素流

的任务帧像素是将一帧图像像素流。模拟的影响水平和垂直消隐时间在现实生活中发现硬件视频系统、动态图像增强与非图像数据。流像素协议的更多信息,请参阅流像素接口。的帧像素块配置如图所示:

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

在这个例子中,活动视频区域的240 x320矩阵对应于黑暗的形象从上游腐败块。其他六个参数,即每行像素总数,总视频线,开始积极行,结束积极行,门廊,后门廊指定有多少非图像数据将增强的四周活动视频。有关更多信息,请参见帧像素块引用页面。

注意的样品时间视频源是由产品决定的每行像素总数总视频线

伽马校正

如下图所示,Pixel-Streamγ补偿子系统只包含一个伽马校正器块。

伽马校正器块接受像素流,以及总线包含五个同步信号,从帧像素块。它将相同的信号传递给下游像素帧块。这样信号束和维护对于pixel-stream处理是必要的。

像素帧:将像素流回全帧

作为一个同伴帧像素将一个完整的图像帧像素流,像素帧块,相对地,将像素流回的全部利用帧同步信号。因为的输出像素帧块是一个二维矩阵的一个完整的形象,不需要进一步进行总线包含五个同步信号。

数量的组件场和视频格式领域的像素,像素帧都设定在1和240 p,分别匹配视频源的格式。

图像查看器和结果验证

运行仿真时,三个图像将显示(参考图像所示“榜样”的结构部分):

  • 的源图像图片来源子系统

  • 黑暗中产生的形象腐败

  • 高密度脂蛋白输出生成的Pixel-Streamγ补偿子系统

这四个的存在单位延迟块在顶层模型是time-align二维矩阵的一个公平的比较。

在构建流媒体部分的设计,PSNR值块不断验证HDLOut结果对原始帧设计BehavioralOut。在仿真的过程中,这一点PSNR值块应该给输出,表示的输出图像全画幅γ补偿匹配的图像产生的流处理Pixel-Streamγ补偿模型。

探索的例子

示例允许您尝试不同伽马伽马值来检查他们的影响和De-gamma操作。具体地说,一个工作空间变量gammaValue美元创建一个初始值为2.2时打开模型。您可以修改它的值使用MATLAB命令行如下:

gammaValue = 4

更新后的gammaValue美元将传播到γ场的腐败块,全画幅γ补偿块,伽马校正器块内Pixel-Streamγ补偿子系统。关闭模型清理gammaValue美元从您的工作空间。

虽然概念上的逆伽马操作De-gamma,喂养图像伽马后跟De-gamma(或De-gamma第一然后γ)并不一定完全恢复原始图像。预计扭曲。衡量这一点,在我们的示例中,另一个PSNR值块之间放置SourceImageBehavioralOut。PSNR值越高,畸变引入了越少。理想情况下,如果HDL输出和源图像是相同的,PSNR值输出。在我们的例子中,这种情况只有当gammaValue美元= 1(即。,both Gamma and De-gamma blocks pass the source image through).

我们也可以使用伽马腐败源图像,使其更亮,后跟一个De-gamma校正图像恢复。

生成HDL代码并验证其行为

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

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

makehdl (“GammaCorrectionHDL / Pixel-Streamγ补偿”)

来推断一个RAM实现中使用一个查找表伽马校正器LUTRegisterResetType属性设置为none。要访问该属性,右键单击伽马校正器块内Pixel-Streamγ补偿,并导航到HDL编码- >高密度脂蛋白块属性……

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

makehdltb (“GammaCorrectionHDL / Pixel-Streamγ补偿”)