一种基于FPGA的缩放后图像存储方法技术

技术编号:26347091 阅读:46 留言:0更新日期:2020-11-13 21:30
本发明专利技术公开了一种基于FPGA的缩放后图像存储方法,包括如下步骤:(1)FPGA对外接动态随机存储器进行初始化;(2)从视频源获取原图像并将原图像缩放;(3)将缩放后图像缓存K个字节数据到FPGA内部储存器FIFO;(4)将FIFO中的K个字节数据存储到外部存储器DDR4中;(5)FIFO从DDR4中读取m个存储数据;(6)读取图像数据并显示。本发明专利技术采用存储在DDR4外部存储器中,减小了FPGA片内存储器的使用,增加了图像数据缓存空间,可以处理需要大量缓存数据的图像;采用读写速度快的DDR4,避免了由于读取速度太慢导致数据丢失,提高了图像数据处理效率。

【技术实现步骤摘要】
一种基于FPGA的缩放后图像存储方法
本专利技术涉及缩放后图像存储方法,尤其涉及一种基于FPGA的缩放后图像存储方法。
技术介绍
随着对图像数据质量要求越来越高,需要将原图像数据进行缩放处理,目前对于图像缩放处理的算法种类是比较多的,但总的来说都是通过插值算法实现的,其中的算法包括:最近邻插值算法、双线性插值算法和立方卷积插值算法,目前使用最多的算法是采用双线性插值算法。现有技术在利用FPGA通过双线性插值算法得到图像数据缩放后,主要将是图像数据存储在FPGA内的FIFO中,虽然在一定程度上提高了读写速度,但FPGA内的FIFO内存有限,不能处理需要大量缓存数据的图像。
技术实现思路
专利技术目的:本专利技术的目的是提供一种快速有效、缓存大量图像数据的基于FPGA的缩放后图像存储方法。技术方案:本专利技术所述的缩放后图像存储方法,包括如下步骤:(1)FPGA对外接动态随机存储器进行初始化;(2)从视频源获取原图像并将原图像缩放;(3)将缩放后图像缓存K个字节数据到FPGA内部储存器FIFO;(4)将FIFO中的K个字节数据存储到外部存储器DDR4中;(5)FIFO从DDR4中读取m个存储数据;(6)读取图像数据并显示。步骤(2)中,采用双线性插值算法将原图像缩放。步骤(3)中,将缩放后的图像数据以预定放入速度放入K个字节图像缓存数据到FPGA内部储存器异步时钟FIFO内;在放入数据同时进行计数,当计满K个字节数据时,存满信号使能,将计数器清零,当读空信号使能时,开始重新计数;当检测到FIFO存满信号置1时,DDR4开始以预定读取速度从FPGA内部存储器异步时钟FIFO中读取K个字节缓存数据;每次按照预定放入速度存入FIFO中K个字节,如果当缩放后的图像数据不够K个字节时,即缩放后的图像分辨率不是K个整数倍,补q个0凑够K个字节按照预定放入速度放入FIFO中。计算q的步骤如下:(3-1)将计数器N,累加器Y清零;(3-2)累加器Y加K,计数器N加1;(3-3)将累加器和计数器数据存储到对应的寄存器中;(3-4)在比较器中比较累加器中的Y与乘法器产生的数据。步骤(4)中,当检测到FIFO存满信号置1时,DDR4开始以预定读取速度从FPGA内部存储器异步时钟FIFO中读取K个字节缓存数据。步骤(5)中,当内部存储器FIFO需要从外部存储器读取数据时,将异步时钟FIFO按照预定读取速度从DDR4中读取m个缓存数据,将数据缓存在FIFO中。步骤(6)中,各通道图像的显示接口从对应的各通道缓存FIFO里面读取图像数据并显示出来。有益效果:本专利技术与现有技术相比,其显著效果如下:1、采用存储在DDR4外部存储器中,减小了FPGA片内存储器的使用,增加了图像数据缓存空间,可以处理需要大量缓存数据的图像;2、采用读写速度快的DDR4,避免了由于读取速度太慢导致数据丢失,提高了图像数据处理效率。附图说明图1为本专利技术的图像源缩放示意图;图2为本专利技术的图像数据流示意图;图3为本专利技术的计算q和N的流程示意图。具体实施方式下面结合说明书附图和具体实施方式对本专利技术做进一步详细描述。本专利技术所述的数据储存方法,如图1所示,具体步骤如下:(1)FPGA对外接动态随机存储器进行初始化,并使外接动态随机存储器能正常读取数据。(2)如图2所示,从视频源获取原图像分辨率为W1*H1,通过双线性插值算法将原图像缩放成分辨率为W2*H2。(3)将缩放后的图像数据以预定放入速度放入K个字节图像缓存数据到FPGA内部储存器异步时钟FIFO内,在放入数据同时进行计数,当计满K个字节数据时,存满信号使能,将计数器清零,当读空信号使能时,开始重新计数。每次按照预定放入速度存入FIFO中K个字节,如果当缩放后的图像W2*H2最后数据不够K个字节时,即缩放后的图像分辨率为W2*H2不是K个整数倍,补q个0凑够K个字节按照预定放入速度放入FIFO中。如图3所示为本专利技术的图像数据流,计算q步骤如下:(3-1)首先将计数器N,累加器Y清零;(3-2)累加器Y加K,计数器N加1;(3-3)将累加器和计数器数据存储到对应的寄存器中;(3-4)在比较器中比较累加器中的Y与乘法器产生的数据W2*H2,如果Y小于W2*H2,重复(3-3);如果Y大于或等于W2*H2,则输出缓存次数N,q=Y-W2*H2,则缩放图像W2*H2存储到FIFO中N次,最后一次不足的数据补q个0。当检测到FIFO存满信号置1时,DDR4开始以预定读取速度从FPGA内部存储器异步时钟FIFO中读取K个字节缓存数据。(4)当检测到FIFO存满信号置1时,DDR4开始以预定读取速度从FPGA内部存储器异步时钟FIFO中读取K个字节缓存数据。(5)当内部存储器FIFO需要从外部存储器读取数据时,将异步时钟FIFO按照预定读取速度从DDR4中读取m个缓存数据,将数据缓存在FIFO中。(6)各通道图像的显示接口从对应的各通道缓存FIFO里面取图像数据并显示出来。本文档来自技高网...

【技术保护点】
1.一种基于FPGA的缩放后图像存储方法,其特征在于,包括如下步骤:(1)FPGA对外接动态随机存储器进行初始化;(2)从视频源获取原图像并将原图像缩放;(3)将缩放后图像缓存K个字节数据到FPGA内部储存器FIFO;(4)将FIFO中的K个字节数据存储到外部存储器DDR4中;(5)FIFO从DDR4中读取m个存储数据;(6)读取图像数据并显示。/n

【技术特征摘要】
1.一种基于FPGA的缩放后图像存储方法,其特征在于,包括如下步骤:(1)FPGA对外接动态随机存储器进行初始化;(2)从视频源获取原图像并将原图像缩放;(3)将缩放后图像缓存K个字节数据到FPGA内部储存器FIFO;(4)将FIFO中的K个字节数据存储到外部存储器DDR4中;(5)FIFO从DDR4中读取m个存储数据;(6)读取图像数据并显示。


2.根据权利要求1所述的基于FPGA的缩放后图像存储方法,其特征在于,所述步骤(2)中,采用双线性插值算法将原图像缩放。


3.根据权利要求1所述的基于FPGA的缩放后图像存储方法,其特征在于,所述步骤(3)中,将缩放后的图像数据以预定放入速度放入K个字节图像缓存数据到FPGA内部储存器异步时钟FIFO内;在放入数据同时进行计数,当计满K个字节数据时,存满信号使能,将计数器清零,当读空信号使能时,开始重新计数;
每次按照预定放入速度存入FIFO中K个字节,如果当缩放后的图像数据不够K个字节时,即缩放后的图像分辨率不是K个整数倍,补q个0凑够K个字节按照预定放入速度放入FIFO中...

【专利技术属性】
技术研发人员:严飞马可刘银萍夏金锋蔡静怡孙舒陈伟
申请(专利权)人:南京信息工程大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1