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

2011-03-31 19:11:43来源: elecfans
    针对立体摄像的深度感知,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支持计算量大的差异测绘算法

[1] [2]

关键字:立体摄像  深度感知  FPGA

编辑:北极风 引用地址:http://www.eeworld.com.cn/FPGA/2011/0331/article_1978.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
立体摄像
深度感知
FPGA

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 

夏宇闻老师专栏

你问我答FPGA设计

北京航空航天大学教授,国内最早从事复杂数字逻辑和嵌入式系统设计的专家。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved