图像缩放需要哪些参数和端口

文章目录

  视频缩放功能是将输入图像从一种分辨率转换到另一种分辨率输出,同时满足视频实时输入实时输出的要求。如果用FPGA实现该功能,需要涉及分辨率,缩放算法,数据位宽等等多种可变信息。那么该如何设置参数和端口,举例如下图所示。参数可配置,但不能动态修改。而端口可以动态修改,实时可变。

1.图像缩放参数

用FPGA实现的缩放功能,参数在生成模块时是可以配置的,但生成后就固定,不可以动态修改。参数表示的信息对实现缩放功能的资源,架构也都会有影响,那么以下信息适合用参数表示。

(1)颜色分量位宽DATA_BW

图像一般用RGB或YC444格式表示,每个颜色分量R,G,B,或者亮度Y和色度Cb,Cr表示的数据位宽,比如8bit,10bit,12bit等等。

(2)分量通道数NUM_CH

比如只有一个亮度分量,通道数就为1。或者有R,G,B分量,通道数就为3。

(3)每时钟像素数NUM_PPC

通常情况,1个时钟就1个像素,但在大分辨率下,时钟频率过高,就采取降时钟,扩位宽的方式处理,就出现1个时钟2个像素,或1个时钟4个像素情况。用Pixel Per Clock(PPC,每时钟像素)表示。

(4)缩放算法

不同的缩放算法,最近邻,双线性,双立方,lanczos等等,对设计架构影响比较大,所以一般用参数表示。

(5)输入最大宽度

决定了输入一行图像缓存的深度,也就决定了RAM资源的使用量,还有表示分辨率的bit位宽。

(6)输出最大宽度

决定了输出一行图像缓存的深度,也决定了RAM资源的使用量,还有表示分辨率的bit位宽。

(7)输入最大高度

对RAM资源的使用量不影响,但影响表示分辨率的bit位宽。

(8)输出最大高度

对RAM资源的使用量不影响,但影响表示分辨率的bit位宽。

2.图像缩放端口

端口与参数不同,在生成之后运行时也可以动态修改,而且端口信息的改变对缩放功能的资源,架构不会有影响。那么以下信息适合用端口表示。

(1)输入图像宽度

表示输入图像水平分辨率。比如1920x1080分辨率的1920值。

(2)输入图像高度

表示输入图像垂直分辨率。比如1920x1080分辨率的1080值。

(3)输入图像有效区宽度

比如输入图像1924x1084分辨率,但有效区为1920x1080,其中的1920值。为什么会有这种需求,因为大图像分块处理时,边缘处需扩展数据处理,这样才能保证缩放后拼接边缘过渡平滑。扩展处理时,有效区就与实际输入分辨率有差别。

(4)输入图像有效区高度

比如输入图像1924x1084分辨率,但有效区为1920x1080,其中的1080值。

(5)输入图像水平偏移

比如输入图像1924x1084分辨率,水平起始位置为4,即水平偏移为4。

(6)输入图像垂直偏移

比如输入图像1924x1084分辨率,垂直起始位置为4,即垂直偏移为4。

(7)输出图像宽度

表示缩放后输出图像水平分辨率,比如2560x1440分辨率的2560值。

(8)输出图像高度

表示缩放后输出图像垂直分辨率,比如2560x1440分辨率的1440值。

(9)水平缩放因子HSF

也叫水平插值步进,计算方法通常是用(vin_hor-1)/(vout_hor-1),再乘以放大比例,通常是65536,转成整数。

(10)垂直缩放因子VSF

也叫垂直插值步进,计算方法通常是用(vin_verr-1)/(vout_ver-1),再乘以放大比例,通常是65536,转成整数。

(11)水平初始相位HIPHASE

当做图像分块处理后再拼接时,缩放水平起始位置相位。计算方法,用水平缩放因子HSF乘以水平起始位置到有效区起始点距离HWIDTH,再对65536取模,即水平初始相位HIPHASE = (HSF*HWIDTH) % 65536。

(12)垂直初始相位VIPHASE

当做图像分块处理后再拼接时,缩放垂直起始位置相位。计算方法,用垂直缩放因子VSF乘以水平起始位置到有效区起始点距离VHEIGHT,再对65536取模,即水平初始相位VIPHASE = (VSF*VHEIGHT) % 65536。

  这里只列了一些常用的参数和端口,还有一些如系数位宽,相位数,lanczos的Tap数等并没有列出,这些往往是对图像质量有更高的要求时才会使用。

相关推荐
国产化嵌入式平台解决方案24 分钟前
从通用计算到实时协同:基于飞腾D3000M+FPGA的国产VPX计算平台设计
fpga开发·硬件架构·vpx6u
陈嘿萌1 小时前
ECCV 2026|MAVFusion:运动感知稀疏交互驱动的高效红外-可见光视频融合
人工智能·计算机视觉·图像融合·佛山大学·学术研究与理论基础·eccv2026
tju新生代魔迷1 小时前
Verilog HDL 学习笔记(十六)| 附录A:强度建模与高级线网类型
fpga开发
陈嘿萌2 小时前
ACM MM 2026 华北电力|连续融合空间实现实例级细粒度的可控红外与可见光图像融合
人工智能·计算机视觉·图像融合·学术研究与理论基础
陈嘿萌2 小时前
ECCV 2026|AerialMetric:一个全新的无人机单目深度估计数据集,面向真实世界航拍场景
人工智能·计算机视觉·学术研究与理论基础
潜心一志11 小时前
HALCON软件——基本架构,算子参数
学习·计算机视觉
minglie114 小时前
j2b描述smp协议
fpga开发
FPGA开源工坊18 小时前
FPGA开发技巧–BRAM资源优化
fpga开发
差不多的周周18 小时前
《HuMoCon:人类运动理解的概念发现》论文核心部分详解
人工智能·深度学习·计算机视觉·自然语言处理
Evand J19 小时前
【MATLAB例程,图像滤波降噪12】加权中值滑动窗口滤波(WMF)图像降噪,包含滤波质量评价。附代码下载链接
开发语言·图像处理·人工智能·计算机视觉·matlab·滑动窗口·滤波