立体摄像深度感知的FPGA实现

发布者:Shuangfei最新更新时间:2011-03-31 来源: elecfans关键字:立体摄像  深度感知  FPGA 手机看文章 扫描二维码
随时随地手机看文章
    针对立体摄像的深度感知,FPGA解决方案能使处理器的时间得到缓解,减少或除去器件的成本,例如MPU、DSP、激光器和昂贵的镜头。通过提供给机器人其环境中的差异测绘,FPGA使机器人中的CPU专注于重要的高层任务,例如建图和定位。

  差异测绘

  加深度感知到机器人的常用技术是用两个水平放置的独立摄像机,互相之间平行分开放置。用差异测绘算法对两个摄像机进行比较,见图1。

  

差异测绘计算

 

  图1 差异测绘计算

  简单来说,差异是指右面和左面图像之间的差别。物体越接近摄像机,两个图像之间的差异越大。

  你可以自己来做一个实验,对着你的脸水平地向上握住一支笔,不停地眨你的左眼和右眼。移动的笔越接近你的脸,你眨眼时觉得移动越多。做更多的移动时,物体越接近你的眼睛,图像中的差异越大。

  如图1所示,从两个图像之间物体的位置算出差异:d=x1-x2。为了计算点M的实际坐标,可通过左面和右面的摄像机来进行计算:

  X=Bx1/d

  Y=By1/d

  Z=fB/d

  相关的问题

  计算差异测绘依赖于相关的图像,以及左面图像和右面图像的匹配性质。逐点计算相关的像素的计算量是很大的,因此用其它算法来简化这个问题。有一种方法称为图像点相关,仔细检查左面图像的像素块,称为点,然后在右面图像中寻找相同的点。其它的方法包括边沿检测和匹配。一旦定位了相应的图像,就可进行差异计算。

  失真与曝光问题

  如果使用高质量的摄像机,可以忽略镜头失真。为了省钱,使用便宜的CMOS 或者CCD摄像机,或者低成本广角镜头。这些较低质量的产品会引入失真或曝光问题。

  镜头会引起比例和定位失真,例如白点效应,靠近图像外面的物体出现弯曲状,使用众所周知的图像处理算法可以进行补偿。针对移动或者其它几何算法,纠正白点的一种方法是使用坐标的查找表重测图像中的像素。

  在非常明亮和非常暗的环境中,其它的算法需要可靠地捕获图像中的详细特征。例如,针对不同的区域确定最佳的曝光设置,使用区域的合成图像可以补偿缺少背景亮度。

  用含有嵌入式DSP的FPGA的解决方案

  本文中阐述的深度感知算法计算复杂,以实时的视频速率来实现。系统设计者必须评估CPU/软件、ASIC, ASSP(例如DSP处理器)和FPGA解决方案,确定哪个是最佳的,以及FPGA价格。

  图2展示了提出的FPGA协处理器解决方案,解决失真、曝光、通信和针对深度感知差异测绘算法。这个方法使CPU腾出时间,允许DSP处理器处理更多的串行任务。

  

FPGA支持计算量大的差异测绘算法

 

  图2 FPGA支持计算量大的差异测绘算法

[page]

 

    通常选择FPGA时,需要评估三个电路方面的需求:

  ●针对利用并行特性的协处理功能,DSP的功能和性能。

  ●DDR(双数据速率)和LVDS(低电压差分信号)支持接口至片外SDRAM缓冲存储器,直接连接到来自摄像机的图像数据。

  ●安全方案以保护知识产权。

  对于图像处理算法,传统的DSP处理器的并行功能有限,每个DSP芯片只有1到4个乘法器,见图3中的左面。因此DSP用很高的时钟速率来进行补偿,时钟速率高达1GHz或更高,以达到高的吞吐量。需要很快完成的复杂串行任务的DSP算法应该用DSP处理器实现。

  然而,许多深度感知图像处理功能需要大量的并行处理,例如线性插值技术,媒体滤波器和几何估计。与DSP芯片比较,FPGA可以用并行来执行串行功能,以加速系统性能,见图3的右面所示。例如图像对应是很简单的算法,比较大量的像素值,或者两个图像之间的像素点。为了得到有效均方差的和(SSD),图像对应算法必须对图像中的像素进行百万次计算,对串行执行功能的DSP芯片来说这是一个挑战性的任务。

  具有DSP功能的FPGA包含几个乘法器块,但是一些FPGA还有嵌入式加法器、减法器和大大增加处理性能的累加器。尽管低成本FPGA以低于300MHz系统时钟频率工作,但用片内多个DSP块以并行方式实现多个DSP功能可以达到高的DSP吞吐量(3,000 MMAC)。

  存储器和DDR

  由于有多个乘法器,利用FPGA并行的灵活性有益于存储器的访问。能够容易地并行访问各种存储器。片内分布式存储器可以用来建立小的高性能便笺,针对去除白点使用坐标的查找表,对于在图像中再测绘像素是很有用的。片内较大的嵌入式存储器块能构建较大的高性能存储器,用于FIFO和线缓冲器。

  片外存储器DDR II SDRAM可以提供大的高性能存储器。针对常用于图像处理,存储整个帧的DDR SDRAM,FPGA可以为DDR SDRAM提供存储器控制和接口。

  较低的时钟速度(100MHz以下),DDR存储器控制器接口是容易做的,可用FPGA中的通用I/O和逻辑实现。然而在较高的频率,拥有专门电路的FPGA要求稳健的DDR存储器接口。不是所有FPGA器件都有这些专门电路的,实现高速DDR存储器接口的成本和复杂性差别很大,取决于特殊的FPGA。

  LVDS

  针对摄像机和通过LVDS接口的视频芯片集的深度感知,例如摄像机链接, FPGA接口图像处理引擎。LVDS是低噪声、低功耗,小摆幅差分信号用于通过铜线传送高速(每秒吉比特)数据。

  作为一个用于视频接口的例子是7:1 LVDS接口,有多个LVDS信号对用于数据传送,一个信号对用于时钟。对一些FPGA来说,这是本身的I/O接口。视频数据通过3个LVDS对进入FPGA,I/O结构对这个包进行解串,然后把FPGA中并行的数据送到逻辑阵列。

  安全性

  因为自主的机器人有时用于军事应用,在配置期间FPGA不应对系统引入额外的脆弱性。对于基于SRAM的FPGA,配置数据来自外部的非易失存储器。有些FPGA拥有内置的128位AES解密引擎,防止黑客通过逆向工程来获取FPGA中的功能。

  只要密钥是未知的,AES配置位流加密提供了保护措施。然而,非易失FPGA完全去除了这种安全性的风险。一些非易失FPGA在同一芯片上组合了Flash和SRAM。上电后SRAM获得工作配置。这种技术提供了高配置安全性,同时又利用了SRAM无限次重构的优点。

  结语

  支持DSP、差分信号LVDS和DDR II存储器接口的FPGA使得机器人的实时感知成为可能。

  对于机器人的立体视觉应用,针对实时图像处理实现,CPU、DSP处理器和FPGA协处理器的组合能够对性能和价格做出最佳的平衡。FPGA能够处理高度并行差异测绘和深度感知算法。DSP进行较少并行处理、高速和简单代码的更加复杂的功能。CPU做需要灵活性和高层软件实行的那些部分。

  基于Flash,非易失LatticeXP2 FPGA支持许多需求,包括LVDS、内置DDRII存储器和完整特性的DSP块,以及大量的可编程逻辑和存储器块支持接口和其它的定制功能。许多DSP知识产权核和MATLAB SIMULINK使设计更加便利。Lattice还有基于7:1 LVDS视频接口的参考设计和平台。免费参考设计IP提供的一些功能是色深度转换、亮度、对比度和视频覆盖。

关键字:立体摄像  深度感知  FPGA 引用地址:立体摄像深度感知的FPGA实现

上一篇:Altera创新光纤领域,为业界开拓新篇章
下一篇:可编程模拟器件在接收机动态可重构结构应用

推荐阅读最新更新时间:2024-05-02 21:19

基于FPGA的彩色LED大屏幕控制系统
  LED(Light Emitting Diode)大屏幕作为现代信息发布的重要媒体,正受到社会各界尤其是商业界和广告界的极大重视。随着科技的进步,全彩LED显示屏(RGB三基色)逐渐得到普及应用。LED大屏幕是21世纪广告业发展的趋势,是具有音视频功能的户内外广告展示设备,属国际领先的高科技产品。不仅外观新颖独特,其面积可随意调整,能播放音视频广告节目,而且四面还可装固定灯箱广告位,现各地政府都鼓励推行使用户外LED大屏幕,陆续取消帆布广告、灯箱广告审批。   本方案采用Actel的FPGA实现对彩色LED屏的控制,对于系统的可靠性大大增强,而且低成本的单芯片大大减轻了系统的成本。   1.概述   1.1 功能概述
[电源管理]
基于<font color='red'>FPGA</font>的彩色LED大屏幕控制系统
基于FPGA的数字音频广播信道编码器的实现
    摘要: 介绍了数字音频广播(DAB)信道编码的原理和关键技术,并应用单片FLEX10K100系列FPGA实现DAB信道编码器。     关键词: 数字音频广播(DAB) 信道编码 FPGA 1 数字音频广播(DAB)发射系统及信道编码器 DAB是继调幅和调频广播之后的第三代广播体系。与模拟广播相比它不仅可以提供高质量的声音信号(CD音质),也可以提供数据、图像等多种其他附加服务。它可以保护在高速移动接收时的声音质量,具有很强的抗干扰能力,在同要瓣频带宽度和环境下,DAB可以提供高质量的多种多样的广播节目。    
[应用]
易灵思 Trion® Titanium FPGA 系列问市, 实现3 倍性能提升
Trion Titanium FPGA 是基于16纳米工艺节点,并采用易灵思的 “Quantum™ 计算架构”。“Quantum 计算架构”是受到了易灵思第一代 Trion FPGA 之基础“Quantum 架构”的启发,在其可交换逻辑和路由的“随变单元” (XLR) 中增添了额外的计算和路由功能。增强的计算能力,加上利用16纳米工艺实现的 3 倍性能(Fmax) 的提升,使得 Trion Titanium FPGA 非常适合计算加速的应用,而路由灵活性的增加则提供了前所未有的资源利用率。 凭借16纳米工艺节点和“ Quantum 计算架构”的 2 倍效率提升,Titanium FPGA 在极小的晶片尺寸内纳入了极强的处理能力
[嵌入式]
电子工程师:未来数字设计将成主流
  不断竞争、融合的FPGA、DSP及ASIC是什么样的状况?且让我们听听工程师的意见: 电子工程世界: 能否结合您的设计经验,讲解一下FPGA、DSP和ASIC各自的特点和区别? 西安方诚科技有限责任公司硬件工程师王伙荣: FPGA的特点:它是可编程门列阵列,用户可对FPGA内部的逻辑模块和I/O模块重新配置,以实现用户的逻辑。设计的灵活性很高。对FPGA内部逻辑设计与软件编程有着本质的区别,程序由综合器综合成电路,而不是由处理器一条一条执行。目前,FPGA的设计范围局限于数字设计。   DSP的特点:DSP是一个处理器,有其自己的指令系统。计算机的算法可以很方便的移植到DSP上。   ASIC的特点:功耗
[焦点新闻]
基于CPLD的MIDI播放器设计方案
引言 大规模可编程逻辑器件 CPLD 和 FPGA 是当今应用最广泛的两类可编程逻辑器件,电子设计工程师利用它可以在办公室或实验室设计出所自己所需要的专用芯片和专用产品,从而大大缩短了产品上市时间,降低了开发成本。此外,可编程逻辑器件还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改,这样就极大的提高了电子系统设计的灵活性和通用性。 1 工作原理 MIDI音乐是Windows下的一种合成音乐,由于它通过记谱的方式来记录一段音乐,因此与wave 音乐相比,它可以极大的减少存储容量。MIDI音乐的基本原理:组成乐曲的每一个音符的频率值(音调)及其持续的时间(音长)是乐曲能连续演奏的两个基本数据,因此
[嵌入式]
基于Altera和Xilinx FPGA的POWERLINK从站方案
        通过基于FPGA的POWERLINK从站,贝加莱现在可以为自动化组件制造商提供一个理想的解决方案,将实时以太网连接添加到贝加莱广泛的产品中去。这种统一的解决方案可以在所有低成本的产品上实现,如带有极少电子零件的紧凑型传感器、功能强大的驱动器和模块化I/O总线连接模块等。         新的以太网连接包含一个参考设计,该设计可以加速产品Time-to-market,并且使POWERLINK技术的所有特点都易于使用。用户不需要掌握POWERLINK本身的详细知识。交付中包含一个简单的API,它可以与一个串口(SPI)或一个8/16-bit µC接口一起使用,允许任意主机处理器如ARM、x86或DSP连接到一个PO
[嵌入式]
基于FPGA的DDS 信号发生器(三)
1 DDS原理 1.1 书上的解释 DDS(Direct Digital Synthesizer)技术是一种全新的频率合成方法,是从相位概念出发直接合成所需波形的一种频率合成技术,通过控制相位的变化速度,直接产生各种不同频率、不同波形信号的一种频率合成方法。 系统的核心是相位累加器,其内容会在每个时钟周期(system clock)更新。相位累加器每次更新时,存储在Δ相位寄存器中的数字字M就会累加至相位寄存器中的数字。假设Δ相位寄存器中的数字为00…01(即M=1),相位累加器中的初始内容为00…00。相位累加器每个时钟周期都会按00…01(M=1)更新。如果累加器为32位宽,则在相位累加器返回至00…00前需要2^32(超过
[测试测量]
基于<font color='red'>FPGA</font>的DDS 信号发生器(三)
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved