打印

基于FPGA的机器视觉设计

[复制链接]
2060|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wmsk|  楼主 | 2013-5-21 21:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
机器视觉就是用机器代替人眼来做测量和判断。机器视觉作为人类视觉与大脑的延伸,是衡量现代工业自动化程度的标志之一。近年来,随着计算机技术尤其是多媒体技术和数字图像处理及分析理论的成熟,以及大规模集成电路的迅速发展,机器视觉技术得到了广泛的应用研究,取得了巨大的经济与社会效益。
机器视觉系统主要由3部分组成:图像的获取、图像的处理和分析、输出或显示。本文介绍了基于FPGA的一种机器视觉系统,该系统采用Gige Vision摄像机来获取图像,在FPGA中采用了Gige Vision IP核,根据TCP/IP传送协议实现了FPGA与PC机的数据通讯。
1 FPGA实现机器视觉的优势
随着机器视觉系统应用中分辨率的提高和压缩算法的进步,对系统性能和构架灵活性提出了更高的要求,以实现系统的快速更新。可选择的系统构架包括标准单元ASIC,ASSP以及各种可编程解决方案,如数字信号处理器(DSP)或媒体处理器和FPGA。每种构架都具有各自的优缺点,最终选择取决于终端设备要求和解决方案的可用性。理想构架应具有以下特点:高性能、灵活性、易升级性、低开发成本以及具有随着应用成熟和产量增加向更低成本迁移的能力。FPGA具有并行运算、反复使用、大量可使用的软核的优势,是实现机器视觉理想构架的合理选择。
FPGA是小批量系统提高集成度、可靠性的最佳选择之一。随着VLSI工艺的不断提高,单一芯片内部已可以容纳上百万个晶体管,这使得FPGA芯片所能实现的功能也越来越强,同时也可以实现系统集成。
FPGA有大量软核,可以方便进行二次开发。FPGA甚至包含单片机和DSP软核,并且IO数仅受FPGA自身IO限制,所以,FPGA又是单片机和DSP的超集。也就是说,单片机和DSP能实现的功能,FPGA一般都能实现。在SoC设计中,基于FPGA器件设计工艺的发展使得越来越多的功能集成到一个芯片成为可能。为实现这一目标,有一种非常实用的SoC设计方法,称为基于核的设计,它将系统的功能划分为不同的核。采用IP(Intellectual Property)核来完成特定的设计功能。本文就是采用了Gige Vision的IP核来完成主要部分设计的。
2 机器视觉系统设计
2.1 设计原理
系统原理框图如图1所示。

这个解决方案基于Xilinx低功耗低成本的Spartan 3E FPGA芯片上实现,它提供了整合CameraLink,Gige Vision IP,千兆以太网MAC的平台和可选的Visual Applets软件。
2.2 视频输入模块
在ITS及安防行业,现在主要使用的是模拟摄像机,也有部分厂家推出了网络摄像机(Pcamera)。GigeVision摄像机与他们之间的对比如表1所示。

从以上的对比表可以看出,Gige Vision摄像机的主要优点是:
(1)逐行扫描;
(2)高清晰,缓高分辨率达到4百万像素;
(3)帧率高:最高帧率达到200 f/s;
(4)数据未经压缩,无损失;
(5)可以根据需要输出部分扫描数据;
(6)可以通过软件自动改变摄像机参数,适应变化的现场环境;
(7)后期应用开发方便。
基于Gige Vision摄像机的优点,本系统采用GigeVision摄像机。

相关帖子

沙发
wmsk|  楼主 | 2013-5-21 21:47 | 只看该作者
2.3 FPGA中使用的模块
FPGA中使用Camera Link来进行与相机的互连。Camera Link是一个应用于高端机器视觉的强大的数据通道。它使用一个专门的电缆连接和标准化的通信协议。Camera Link支持大量的数据和高数据传输率,适合今天的图像数据传输的要求。
在系统中Xilinx FPGA中使用的Gige Vision是一种由AIA(Automated Imaging AsSoCiation)开发的相机接口标准。这是一项开放性的标准,它能让来自不同厂家的摄像机与应用软件通过吉比特以太网实现相互间的无间合作。Gige Vision使用了一个标准的千兆以太网连接同其高带宽(1 Gb/s)实现了未经压缩图像和数据的实时传输。使用Gige Vision IP是实现高性能机器视觉应用的理想解决方案。一个吉比特以太网相机使用Camera Link与Gige Vision相连。
Gige Vision是一种实现单/多相机与单/多计算机相连接进行数据集中和分布式处理的理想标准。使用标准千兆以太网允许使用标准电缆和连接器,从而降低材料费和整合成本以及后续增长以太网带宽的可扩展性。
本方案中使用的Gige Vision IP核是根据的GigeVision规范1.0版的Gige Vision数据流协议的硬件实现。它是由Xilinx的合作伙伴Feith Sensor-to-Image。GmhH发开的。因为通过硬件来实现数据流通道可以达到千兆以太网的最大吞吐量。IP核的结构如图2所示。

Gige Vision的核心由内存控制器、吉比特以太网MAC、控制微处理器和一个视频处理单元组成。
Gige Vision核提供了吉比特以太网MAC接入系统的其余部分,处理Gige Vision数据流通道,对GigeVision通道再发送申请包进行解码,并提供一个嵌入式CPU的网络接口。CPU处理了除Gige Vision数据流控制以外的所有网络协议。内存控制器作为特殊的视频帧缓冲区,它不是缓冲输入的视频帧,而是把它们分成可供网络传输和实现Gige Vision数据流协议的部分处理包重发送功能的较小区域。
FPGA中与计算机相连的部分使用的是FingerLakes Engineering为Xilinx开发的Phantom TriMode MAC IP核。它与Gige Vision IP核集成在一起,充分应用1 Gb/x Rx/Tx速率,支持IPv4,IPv6,Jumbo Packet和MDIO。Phantom核具有独特的重新计时路径,从而能降低时钟缓冲器计数值同时简化核的集成度,对于低成本的Spartan器件和高性能的Virtex构架都是理想的选择。
2.4 主机接口设计
本方案中使用吉比特以太网与计算机连接,计算机上需安装Visual Applets软件。
Visual Applets是由Silicon Software开发的一款软件,可完全兼容Xilinx的FPGA。Visual Applets完成了一个极其强大、灵活、快速和优化的Gige Vision开发平台,它使不熟悉FPGA的机器视觉专家也能简单地操作这个系统。
Silicon Software开发的Visual Applets为最先进的FPGA设计工具,经由易学易用的图形接口,可以开发出图像处理专用的FPGA confi guration,即所谓的applet。
借由Visual Applets可以:
(1)使影像卡变成一个高效能的影像处理器;
(2)现代FPGA的潜能可由任何使用者自行发挥;
(3)影像处理的解决方案可在数分钟内完成;
(4)达成硬件阶层的快速开发。
使用Visual Applets,不必拥有较深的硬件知识,如数字电路、时间分析、FPGA硬件设计语言。使用VisuaI Applets只要将各个处理模块之问作链接,各种链接的兼容性可实时显示,各模块间能以不同的位相关系作链接,同时也能评估系统需求资源与数据带宽分析,甚至于分析每个模块连接点之间的流量,快速找到设计瓶颈。设计完成后,产生编译档只要几分钟的时间,期间不需要任何人工动作,Applet可立即在microDisplay中使用并进行参数设定,同时也会自动产生一个Visual C++ SDK project。
3 结语
本文根据以FPGA芯片为核心设计了一种通用的机器视觉系统,可以应用到产品生产线、车辆智能监控管理等各种场合。采用最新的高性能视觉标准和国际知名大公司开发的IP核以及主机Visual Applets软件的使用极大地提升了系统的性能、可靠性。

使用特权

评论回复
板凳
qin552011373| | 2013-5-22 22:29 | 只看该作者
好帖子啊

使用特权

评论回复
地板
GoldSunMonkey| | 2013-5-23 21:53 | 只看该作者
我来顶啦

使用特权

评论回复
5
Tianya283| | 2013-5-26 23:05 | 只看该作者
不错不错啊

使用特权

评论回复
6
GoldSunMonkey| | 2013-5-26 23:14 | 只看该作者
Tianya283 发表于 2013-5-26 23:05
不错不错啊

使用特权

评论回复
7
GoldSunMonkey| | 2013-5-26 23:14 | 只看该作者

使用特权

评论回复
8
xjsxjtu| | 2013-5-28 23:05 | 只看该作者
学习啦

使用特权

评论回复
9
流浪的乌龟| | 2014-3-30 21:18 | 只看该作者
帖子很好,可惜我是菜鸟,做不出来

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

411

帖子

1

粉丝