SOPC技术在视觉测量中的设计方案与应用

发布者:cw57324588最新更新时间:2009-09-02 来源: EDN China关键字:SOPC  FPGA  视觉测量 手机看文章 扫描二维码
随时随地手机看文章

  1引言

  视觉测量技术是以机器视觉技术为基础,融合电子技术、计算机技术、近景摄影测量技术、图像处理技术为一体的测量技术,其基本任务是以测量为目的,从图像信息出发计算三维空间中物体的几何信息。其中,图像处理技术是视觉测量系统中最重要的一部分,也是本文的研究重点。

  传统的视觉测量系统主要是在 PC机上采用软件方式实现,由于其专用性不够高,因此处理速度较慢。近年来,基于 FPGA的 SOPC技术的出现,使 FPGA高效的硬件并行信号处理能力和软件控制的灵活性完美的结合到一起。在 SOPC系统中,对速度要求高的算法可以采用自定义硬件逻辑的方法实现;而用硬件难以实现的复杂算法以及控制流程可以在 Nios II核中以软件方式实现。因此基于 SOPC技术的系统具有很好的实时性、灵活性以及可扩展性。设计者可以自由的进行软硬协同设计,并且可以在设计的各个阶段不受限制的修改设计而无需重新构建硬件平台。

  本文所讨论的 SOPC系统是大尺寸三维视觉测量系统的一部分,以 PCI板卡的形式内嵌在 PC机中。在整个大尺寸三维视觉测量系统中,采用数字相机从不同位置拍摄多幅图像,经过特征点提取、点中心的二维坐标计算、特征点匹配、三维拼接、面形拟合等步骤,得到被测物体的三维面形信息。点中心的计算精度直接影响测量精度,且其计算速度一直是系统的瓶颈之一。为提高处理速度和计算精度,采用 SOPC系统完成特征点提取和点中心计算,其结果通过 PCI总线上传给 PC机,由其上的软件模块完成后续的计算和处理工作。

  2 SOPC系统的总体设计方案

  本系统采用加拿大 SBS公司的 TSUNAMI A40系列开发板,其核心的 FPGA模块是 Altera公司的 Stratix EP1S40芯片。

  2.1  系统算法的基本原理

  系统算法实现流程如图 1所示。首先,针对本系统图像处理的要求与算法实现特点进行软硬件划分。图像预处理部分所需要处理的数据量比较大,但算法相对简单,可以通过 FPGA自定义相应的 IP模块,采用硬件的方式实现;后续处理部分由于算法相对复杂,用硬件实现比较困难,而且其数据处理量不大,所以采用在 Nios II软核中以软件的方式实现。最后编写系统控制软件对整个系统进行控制使软硬件协同工作。

  2.2 系统硬件的设计方案

  如图 2所示,本系统硬件开发板通过 PCI桥与 PC机相连,原始图片保存在 PC机中。 PCI-Avalon桥是 PC机与 FPGA开发板的通信接口,图像数据经过 PCI-Avalon桥进入系统处理模块。Sdram管理控制器用来管理和控制 Sdram中的数据存取。控制电路用来控制与协调各个外设的运行,实现状态控制与数据传输等基本操作,包括读取 Sdram中保存的图像数据,控制图像处理各模块。 Sdram用来保存图像数据。原始图像数据最初由 PC机下载到 Sdram中,再通过 Sdram管理控制器传输给各处理模块依次处理。处理后的图像数据仍然通过 Sdram管理控制器返回 Sdram中保存。最后通过 PCI桥把最终图像返回到 PC机。

[page]

  2.3 系统软件的设计

  本系统的控制流程相对简单,因此在 Nios II软核中没有内嵌操作系统,而是通过 IO操作调用中断的方式实现运行状态的控制、数据通信、协调外设等基本操作,控制系统各硬件模块,使系统软硬件协同工作。整个系统搭建成功之后,在 PC机上编写应用程序对整个SOPC系统的运行进行控制。

  3 系统算法的具体实现

  3.1 滤波模块

  根据所采集到的图像的特点,本文采用 3×3的模板实现中值滤波,这种方法不仅可以滤除图像中的噪声,而且可以将边缘信息很好的保留下来。一般求取中值的方法是采用取冒泡法排序,但这种算法并不适合硬件实现。考虑到硬件实现的特点和效率,本文采用了一种全新的求取中值的算法,其原理如图 3所示。其中 max、mid、min分别表示三输入的最大值、中值和最小值比较器。最后经几轮比较后求得中值。

  3.2 边缘提取模块及二值化模块

  边缘提取采用 Roberts算子。 Roberts边缘检测算子利用局部差分算子寻找边缘,其计算由式 1给出。

  由于待处理图像特征明显,采用经验阈值法对图像进行二值化,算法简单、实现方便。

  3.3 边缘细化模块

  本文的边缘是建立在二值化之后的,因此处理的图像都是二值化的,边缘非常清晰,不需要太复杂的算法。这里采用两个 3×3模板作乘积,如图所示, X为待处理像素。如果模板乘积不为 0,于是中心象素为 1,反之为 0,即点的周围有灰度为 0的象素,则保留此点,否则剔除。如此很容易得到二值化后点的单象素边缘。

   3.4 后续处理部分

  后续处理部分由于其数据处理量并不大且算法比较复杂,所以在本系统中,这部分算法在 NiosⅡ中以软件的方法实现。由于篇幅所限,在此不作详细介绍。

  4 系统测试结果的分析与总结

  图 4为原始图像。图 5为处理后的最终图像,点中心已经标注如图所示。

  经测试,本系统所有算法用 C语言在 PC机(配置: Pentium( R) 4 CPU 3.00GHz, 512MB内存)上实现,所需时间为 2\'12",而本系统仅需 30",其中主要耗时为 NiosII软件处理部分,系统的硬件算法部分所耗时间不到 1"。

  本文作者创新点:一是采用 FPGA设计硬件模块实现图像预处理算法,这是视觉测量系统在处理效率上的创新;二是在系统中加入Nios II CPU,用以 FPGA难以实现的算法,从而使基于 SOPC技术的视觉测量系统更具灵活性,这是视觉测量系统在灵活性方面的创新。基于以上两点创新设计的视觉测量系统兼顾了效率和灵活性,为视觉测量系统的设计和研究提供了一种新的思路。

关键字:SOPC  FPGA  视觉测量 引用地址:SOPC技术在视觉测量中的设计方案与应用

上一篇:基于FPGA和MV-D1024E相机的图像采集系统
下一篇:Fnac实验室选用泰克PQA500图像质量分析仪

推荐阅读最新更新时间:2024-03-30 22:09

PSD813F2在FPGA配置中的应用
摘要:可编程外围器件PSD应用于单片机系统后,简化了单片机外围电路的设计,增加了系统的可靠性;利用PSD与单片机组成的系统,通过计算机串口对FPGA进行实时在线编程、仿真和配置。 关键词:可编程外围器件(PSD) 在应用可编程(IAP) 可编程门阵列(FPGA) 随着单片机的广泛应用,其性能不断提高,集成度也日益提高。然而,传统的单片机系统设计需要众多分离器件(如地址锁存器、译码器、RAM、EPROM、PLD等),使得系统复杂、可靠性低,并且调试繁琐、效率较低。可编程门阵列(FPGA)需要外置存储器,且配置存储器多为OTP型,价格较高;加之,利用FPGA的JTAG口配置FPGA距离有限,调试不甚方便。 本文主要介绍一种基于闪
[半导体设计/制造]
基于FPGA的Viterbi译码器设计及实现
  卷积码是广泛应用于卫星通信、无线通信等各种通信系统的信道编码方式。Viterbi算法是一种最大似然译码算法。在码的约束度较小时,它比其它概率译码算法效率更高、速度更快,译码器的硬件结构比较简单。随着可编程逻辑技术的不断发展,其高密度、低功耗、使用灵活、设计快速、成本低廉、现场可编程和反复可编程等特性,使FPGA逐步成为Viterbi译码器设计的最佳方法。项目目的是用FPGA实现一个Viterbi译码器。   一、译码器功能分析   译码器是一种具有“翻译”功能的逻辑电路,这种电路能将输入二进制代码的各种状态,按照其原意翻译成对应的输出信号。Viterbi译码器是以Viterbi算法为基础设计的一种译码器,译码器主要由五部分组成
[电源管理]
基于<font color='red'>FPGA</font>的Viterbi译码器设计及实现
基于FPGA的三相函数信号发生器设计
基于 FPGA 的三相函数信号发生器以DDS为核心,在Altera公司CycloneⅡ系列EP2C8T144C8上实现正弦波、方波、三角波和锯齿波信号的产生,利用 单片机 PICl8F4550 控制 波形的频率及相位差。同时 单片机 通过DAC0832 控制 波形数据转换DAC902参考电压实现在波形幅度的控制,D/A输出的波形经过放大、滤波后输出。波形参数的输入输出通过触摸屏和液晶屏实现,测试结果显示该系统具有较高的精度和稳定性。 模拟 函数信号发生器输出波形易受输入波形的影响,难以实现移相控制,移相角度随所接负载和时间等因素的影响而产生漂移,频率、幅度的调节均依赖电位器实现,因此精度难以保证,也很难达到满意的效果。基于FPG
[模拟电子]
基于FPGA的气溶胶粒径信息存储系统的设计与实现
摘 要: 利用电子学时间多道存储技术,结合大规模可编程逻辑控制器FPGA和高速大容量双端口内存芯片,设计了一种高速大容量气溶胶粒子信息分类计数存储系统,实现了气溶胶粒子的快速识别与分类存储。时间多道系统存储容量高达32 768道,每道计数深度65 536个(16 bit)。 关键词: 气溶胶; 空气动力学粒径; FPGA;多道存储技术  大气气溶胶在大气辐射、空气污染、大气物理化学性质、人类健康状况等方面扮演着重要角色,是衡量大气污染状况的重要指标 。研究表明,气溶胶粒子因其空气动力学粒径不同而滞留在人体呼吸道的不同部位,大于5 μm的气溶胶粒子滞留在上呼吸道,小于5 μm多滞留在气管、支气管和肺泡内,对人类的健康危害很大
[嵌入式]
基于<font color='red'>FPGA</font>的气溶胶粒径信息存储系统的设计与实现
HDTV接收机吕Viterbi译码器的FPGA实现
    摘要: 在对Viterbi译码算法性能进行Matlab软件仿真的基础上,结合数字HDTV地面广播COFDM传输系统中FEC模块内码解码的具体要求,采用FPGA技术实现了Viterbi译码电路。并通过系统调测验证了设计的合理性与可靠性。     关键词: Viterbi译码 FPGA 收缩卷积码 高清晰度数字电视(HDTV) 高清晰度数字电视(HDTV)技术是当今世界上最先进的图像压缩编码技术和数字通信技术的结合。它代表一个国的科技综合实力,蕴藏着巨大的市场潜力。数字电视地面广播编码正交频分复用(CMOFDM)传输系统以其较强的抗多径干扰性能、易于实现移动接收等优点在HDTV的研究中占有很重要的地位。而
[应用]
基于FPGA的NCO设计方案
随着数字通信技术的飞速发展,软件无线电的应用愈加的广泛, 而影响软件无线电性能的关键器件数控振荡器NCO(Numerical CONtrolled Oscillator) 的设计至关重要直接数字频率合成(DDS)技术是一种从相位概念出发直接合成所需要的波形的新的全数字频率合成技术。同传统的频率合成技术相比,DDS 技术具有频率精度高、转换时间短、频谱纯度高以及频率相位易编程、输出的频率稳定度与系统的时钟稳定度相同等一系列优点, 广泛应用于现代各种通信系统中,包括数字上下变频、中频变换、频率合成以及扩频系统和各种频率相位数字调制解调系统中。   在软件无线电及通信领域, 经常使用正交的数字信号;针对此类应用, 本文给出了一种基于
[嵌入式]
基于<font color='red'>FPGA</font>的NCO设计方案
BittWare扩展了基于Intel® Agilex™ FPGA的IA系列加速器产品线
BittWare扩展了基于Intel® Agilex™ FPGA的IA系列加速器产品线,以应对数据密集型计算、网络和存储工作负载 新罕布什尔州康科德 – 2021年6月25日 –Molex莫仕公司旗下的BittWare是致力于边缘计算和云计算应用企业级加速器的领先供应商,宣布扩展其采用Intel® Agilex™ FPGA的IA-系列FPGA加速器。BittWare的IA系列FPGA加速器旨在帮助客户开发和部署下一代边缘和云计算应用,在降低风险的同时具有更大的灵活性和计算速度。 新的IA-420F超薄PCIe卡和IA-220-U2计算存储处理器加入了IA-840F,提供了常见的三种尺寸供数据中心和网络基础设施选择。这三款产
[嵌入式]
BittWare扩展了基于Intel® Agilex™ <font color='red'>FPGA</font>的IA系列加速器产品线
ARM7与FPGA相结合应用于工控和故障检测
工业控制中往往需要完成多通道故障检测及多通道命令控制(这种多任务设置非常普遍),单独的CPU芯片由于其外部控制接口数量有限而难以直接完成多路检控任务,故利用ARM芯片与FPGA相结合来扩展检控通道是一个非常好的选择。这里介绍用Atmel公司ARM7处理器(AT91FR40162)和ALTERA公司的低成本FPGA芯片(cyclone2)结合使用完成多通道检控任务的一种实现方法。 各部分功能简介 图1为此系统的结构连接框图。如图所示,ARM芯片与FPGA芯片之间通过数据总线、地址总线及读写控制线相连,而与终端PC则通过串口通信;FPGA与目标设备通过命令控制总线和故障检测总线相连。 图1 系统结构框图 1
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved