关键词:
图像缩放
图像质量评价
四点分段二次插值
硬件设计
功能仿真
摘要:
在诸如手机、电视等消费电子领域中,终端设备所呈现的图像画质直观反映了其性能的优劣。这些设备图像处理芯片中所使用的缩放算法直接决定了图像的画质分辨率,因此研究缩放技术具有广泛产业背景。在这些消费领域中,缩放芯片既要保证显示效果的质量,又要考虑硬件实现成本的合理性,所以研究主要集中在图像缩放算法分析比较及其硬件设计上。本文首先通过探究图像缩放原理,得到理想插值缩放函数Sinc,但理想Sinc插值在空域上无限拓展,物理上不可实现,所以不同的缩放算法采用各种逼近拟合Sinc幅频特性的方式来实现图像缩放。因此,本文使用MATLAB比对不同缩放算法的幅频特性曲线来作为算法比较的理论依据。同时,由于图像缩放显示效果的评判具有很强的主观不确定性,本文建立了将主观评分DMOS与客观评分PSNR、MSE相结合的图像质量统一评价体系作为仿真实验的科学指标依据。其次,本文根据硬件设计的具体功能指标,在权衡了算法效果、实现复杂度以及芯片硬件资源这些具体指标要求后,提出了四点分段二次插值缩放算法方案,并使用拉普拉斯锐化算法作为图像后处理模块以补足图像高频信息。最后,通过MATLAB得到幅频特性并设计了分段二次插值算法与三种经典缩放算法横向仿真比较实验。在理论和仿真实验双重依据下,得出本文的四点分段二次插值方案在缩放效果仅次于双三次插值,但硬件资源使用及速度上远优于双三次插值。根据提出的四点分段二次插值缩放算法,本文给出先水平后垂直的二次缩放内核架构,论述了整个缩放架构的模块功能、工作流程和数据流向,并且自顶向下开始,对各个关键子模块硬件结构中的关键技术问题进行详细分析。在时钟模块中,针对时序约束分析了帧同步和异步FIFO不上溢不下溢的具体计算公式;在行缓存模块中,针对读写数据控制,分析了读写状态机并设计了行更新数据累加器line_updata_Acc来控制缓存数据;在浮点数定点化误差分析中,针对内插小数偏移量和中间计算数据的定点策略,设计了从4bit到11bit定点数与浮点数的仿真比较实验,根据实验数据,在保证数据不产生误差的前提下,采用了最节省硬件位宽资源的定点方案。同时,由于传统FIR插值滤波器在不同缩放比例时需要存储大量的滤波器系数,本文提出了基于FARROW结构的内插滤波器优化设计,使得当缩放比例在不大于1的分数范围内变化时,只需要改变分数内插偏移量而原滤波器系数无需重新计算,大大节省了滤波器系数存储资源。最后,根据硬件功能验证原理,搭建验证平台,使用Modelsim对各关键功能模块进行功能仿真,同时将输出结果与MATLAB算法模型进行数据比对。根据仿真验证的波形、覆盖率报告分析、MATLAB结果比对、DMOS、PSNR、MSE以及硬件资源门数的计算,硬件设计完成了功能指标要求且硬件成本远优于缩放效果最好的双三次插值。