论文部分内容阅读
随着科技的迅猛发展,大数据、人工智能、分布式计算、区块链等技术的不断涌现,使得人们的学习和生活更加方便快捷。但在这些技术产生的背后离不开数字图像的分析和处理。数字图像从产生,到处理,再到传输,最后到显示或保存这一系列的过程中,难免受到各种外在因素的干扰,使其产生退化或者失真。所以为了使退化后的图像得到复原,对数字图像复原的研究和对复原方法的实现显得尤为重要。数字图像的复原技术发展至今,其国内外发展较成熟复原方法可以分为两个大的方向:第一方向采用空域滤波复原的方法,该方法通过统计分析领域内的像素点来进行图像的复原;第二方向采用频域滤波的方法,将图像变换到频域,采用频域运算后反变换得出复原图像。另外,可以按照对退化模型的先验知识是否充分来可为两个大类:第一大类是针对退化模型和原图像的先验的知识分析不充分的情况下的处理;第二大类为对退化模型和原图像有充足的先验知识,且能够准确估算各类参数,对于这类退化图像的处理就能够准确地复原图像,并能够抑制退化模型。对于这些成熟的复原方法,还存在有待改进的地方,使其具有更好的复原效果。由于当前比较成熟的复原理论和不断涌现的新复原方法,还处于理论分析阶段,和软件仿真阶段,大部分还适用于科学研究和学习使用,在实际工程项目中还没有广泛运用。对于这些复原方法,还仅仅停留在传统软件的处理方向上,比如具有强大分析功能的Matlab软件,也包括一些编程语言提供的基于图像处理的类库,如OpenCV,这些软件或者工具,都能够有效地进行数字图像的处理和复原,其操作简单。但是这些工具受到处理速度的甁颈,和处理的实时性和可移植性的缺点的影响,使得他们不能再实际的工程项目中很好地使用,比如军事设备上的通过FPGA采集的高速图像,并进行实时的处理分析,对于传统的软件很难实现。而相对于FPGA,经常能够看到它在数字图像的工程应用上的使用,其具有良好的优势,也广泛地运用于各个领域。为了验证上述研究的可行性,本课题采用了FPGA作为硬件实现,并通过编写硬件描述语言来实现上面分析的两方向的复原算法,其中采用了Virtex4芯片系列中的XC4VFX12芯片,其速度等级为12,并使用集成开发工具ISE14.7版本进行软件开发和实现,和仿真工具ModelSim进行仿真。基于FPGA的优势,本文从两个方面分析了其复原的具体步骤和方法。第一个方面为空域滤波复原,通过以被椒盐噪声污染的图像复原为例,分析使用FPGA实现自适应中值滤波的复原的具体步骤。该复原的算法的过程主要步骤有,从上位机读取被退化的图像,通过存储到存储器中,并初始化6个FIFO来实现像素数据的流动处理,最后通过计算的结果进行FIFO的缓冲,并通过串口传输到上位机,完成图像的复原。第二个方向为图像的频域滤波复原法,该方法采用去卷积滤波算法,通过以运动模糊的退化图像为例,分析了使用FPGA实现逆滤波复原的具体步骤和方法。该复原算法的过程大概可分为以下步骤,先通过估算方法,估算模糊的方向角和模糊的大小并确定退化模型的矩阵表达式,然后通过Xilinx ISE工具生成一维FFT IP核,用来实现二维FFT变换,先通过行变换,在再过列变换,最后通过将退化图像和退化模型变换到频域,进行点除运算,将运算的结果反变换到时域就可以得到运动复原的图像。最后计算复原图像和原图像的最小均方误差和峰值信噪比来客观评价复原的效果。最后分析FPGA实现的两个复原算法的复原效果,可以看出自适应中指复原能够有效抑制加性噪声的作用,且能够保证复原后图像大小的一致性和保持原图像信息不变性;对于运动模糊图像的复原,若知道退化模型和原图像的大小,则能有效地复原被退化的图像。另外,在高速硬件的支持下,能够有效提高其复原的速率,对于这些方面的改善,该课题取得了预期的效果。