如何构建一个仿真软件模型,该模万博1manbetx型可以生成HDL编码调整图像或视频吗?

8视图(30天)
我想调整由FPGA图像或视频。我只知道但不能生成HDL代码大小的块。任何人都可以教我或给我一些主意吗?

接受的答案

赛斯Popinchalk
赛斯Popinchalk 2011年3月25日
如果你是按比例缩小,可以使用一个简单的方法来re-sample信号。你可以调整1/2或1/3,等通过选择每2日或3日样本。
为了实现比例2/3或4/5,您可以实现插值算法,选择interpolant点信号和计算。这可能是计算昂贵的根据所选择的算法。
另一个选择是使用直接查找表(一天)。聪明,你应该能够实现将采样和upsampling行为。

更多的答案(3)

汇宝
汇宝 2011年3月30日
视频和图像处理的调整块Blockset不生成HDL代码。但是你可以自己使用仿真软件HDL万博1manbetx编码器来实现算法。
如果你想调整静态图像,即。,你的输入图像存储在内存和输出图像将被保存到内存,设计简单。你只需要几个步骤。
  1. 计算输出像素的位置。如果我们假设你的比例因子s,然后(i, j) th像素定位(我* s, j *年代)。
  2. 计算插值权重。有几种方法可以选择,例如,最近邻,双线性,双三次的,等等。作为一个例子,双线性方法的权重将(装天花板(我* s)——我* s))和(我* s -层(我* s))在第一维度。
  3. 旋卷权重插值的图像像素值的输出。
注意,输出像素位置和在水平和垂直方向插值权重是重复的。所以你可以减少计算通过计算整个图像在一个方向上,然后另一个方向。正如赛斯指出的那样,您可以使用查找表加快计算速度。你也可以生成代码的调整块的实现细节。
如果你想调整图像流,即。,你收到输入图像的一个像素在某个时钟频率和你想要输出的像素大小图像在不同的时钟频率,设计将更具挑战性。因为你提到了FPGA,我想这是你想要的设计实现。对于本设计,您可以使用相同的权重计算静态图像,但需要小心时钟频率,缓冲区,和像素位置。你可以尝试以下步骤。
  1. 在输入时钟频率,节省几行输入图像的像素。缓冲线的数量是一样的你的滤波器长度。
  2. 在一个中间时钟频率,插入像素在水平方向。中间时钟频率可以从输入计算时钟频率和比例因子,例如,s * clk_in。结果保存到另一个行缓冲。
  3. 输出时钟频率,插入垂直方向的像素。
我上面没有提及的是,你需要计算像素为了知道当前的像素在哪里,你需要实现一个缓冲区读/写控制器。

Kiran Kintali
Kiran Kintali 2019年3月4日
共享一个高密度脂蛋白编码器友好模型转换720 x1280 HDMI输入信号240 x320视频信号在Zynq ZC702 PL的一面,和缩放图像转移到手臂进一步图像处理的手臂。因此,缩放后的图像只能是在手臂一边。该模型使用的参考设计CVST支持包Zynq需要相同的图像大小HDMI输入和HDMI输出。万博1manbetx
希望这是有帮助的。

史蒂夫Kuznicki
史蒂夫Kuznicki 2019年3月5日
HDL代码生成——这实际上取决于如果你想调整向上或向下。如果您正在使用一个实时视频信号(水平和垂直消隐),那么您还需要重新生成这些适当的控制信号。在这种情况下,你不能只是re-sample输入建议。也像上面提到的,你需要确定你需要1)保持相同的帧速率或fps,和2)保持相同的输出帧尺寸(放大/缩小)。如果你需要调整下一个整数的因素,你可以调整你的“有效的”控制信号(使每n个有效像素,每个m线)。调整“向上”是更加困难,需要缓冲线并进行插值。它将帮助如果你能分享开始分辨率和目标分辨率。