论文部分内容阅读
图像透视变换主要应用于图像识别和自动目标识别等图像处理系统中,具有广泛的应用需求和场景。目前多用于导航系统,虚拟现实系统,道路标线识别,车牌识别,条形码识别等多方面领域,对计算的实时性提出较高要求。作为图像几何变换中最复杂的的一种,图像透视变换综合了图像几何变换中的旋转,缩放,切变等操作。算法特点是计算复杂,参数关系复杂,步骤多,像素映射关系较为多变。因而目前透视变换算法多使用软件实现,少数使用FPGA硬件实现。ASIC,即专用集成电路,是专门为某种用途或算法而设计的集成电路。因其具有定制性的特点,因而对于某种特定算法而言,相比于通用型的嵌入式CPU,DSP和FPGA等通用型芯片,ASIC在计算性能和生产成本上往往更有优势。本文在对图像透视变换算法进行详细分析的基础上,提出一种针对透视变换算法的硬件处理架构。在此基础上,完成了算法仿真,使用verilog硬件描述语言完成了该架构的RTL设计,进行了电路功能仿真和验证。针对该算法提出了一种多bank缓存管理方式,每个bank使用多个片上单口sram实现。与其他透视变换硬件实现相比较,该结构用单口sram替换双口sram,可大大减少缓存面积和成本,同时并未牺牲计算性能。另外,针对复杂的坐标变换过程专门设计了坐标计算的电路结构,节省了硬件资源同时提高处理速度。同时还对架构进行了参数化的设计,使ASIC能对不同行列数,不同像素位宽的图像进行扩展设计。通过数字电路功能仿真,得知该结构在100MHz时钟频率下,对512*512图像进行透视变换处理,单帧图像处理时间约为3.78ms,数据通过率为76.4M像素/s,可满足大部分图像处理系统的实时性要求。