CN108322725A - 一种基于fpga的视觉融合方法 - Google Patents
一种基于fpga的视觉融合方法 Download PDFInfo
- Publication number
- CN108322725A CN108322725A CN201810169447.XA CN201810169447A CN108322725A CN 108322725 A CN108322725 A CN 108322725A CN 201810169447 A CN201810169447 A CN 201810169447A CN 108322725 A CN108322725 A CN 108322725A
- Authority
- CN
- China
- Prior art keywords
- data
- fpga
- gray feature
- fusion method
- vision
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于FPGA的视觉融合方法,包括如下步骤:建立一个以FPGA为运算处理核心的视觉系统,立体相机的左右视图通过SERDES接口输入;系统包括6块1024K×8比特容量的外部SRAM,其中每2个SRAM组成一组乒乓缓存,实现左右视图以及视差图无缝传输和流水处理。本发明能够满足高速运算和高速传输图像的要求,具备多种通用接口和富余的硬件资源,可以进一步扩展加强。同时Census立体融合是一种非参数化的融合方法,对亮度不均、增益等情况更为鲁棒,提高了系统的精度。与传统的通用处理器相比,本发明充分利用并行计算及合理的流水线设计,把算法直接映射到结构上,大大提高了系统的运算速度,满足高分辨率、高精度和高速的要求。
Description
技术领域
本发明涉及一种视觉融合方法,具体是一种基于FPGA的视觉融合方法。
背景技术
立体视觉系统的主要任务是获取场景三维信息,在移动机器人、目标跟踪、三维重建等领域得到了广泛应用。在立体视觉系统中,立体融合是关键核心。一般来说,室外无人车以及月球车等移动机器人所处的场景通常缺乏规则的点、线等特征,并且由于场景的不确定性和光照等因素的影响,特征提取往往不稳定,且只能得到稀疏的视差图,必须经过插值才能得到致密的视差图进而重建场景。因此,实时立体视觉系统中更倾向于采用区域匹配算法。
另外,应用于无人车导航系统的立体视觉还需要满足实时性、鲁棒性等要求。实时性即要求算法运算速度快,能在车辆移动过程中及时获取场景信息,以便车辆做出行进、避障等决策。区域匹配算法通常运算量较大,以N×N大小的灰度图像,相关窗口尺寸为w×w,视差搜索范围D为例,直接计算的复杂度为O(N2w2D)。通过一定的优化技巧虽然可以减小冗余计算,复杂度可降至O(N2D),但对于通用处理器而言,仍旧无法满足实时性要求,因此需要采用硬件加速技术或设计专用硬件电路。鲁棒性要求主要源于无人车的行驶环境复杂,路面、光照等条件均有较大的不确定性,立体视觉算法在各种条件下都要保持有效。
对于立体融合实时性的研究,已有大量学者提出了解决方案,其中最著名的NASA火星车使用RAD6000计算机,最高频率为25MHz,完成一次256×256图对的匹配需30s。与指令系统相比,FPGA硬件系统虽然没有通用处理器编程方便,但可以充分利用并行性计算体系结构及合理的流水线设计,把算法直接映射到结构上,大大提高系统的运算速度与精度。
发明内容
本发明的目的在于提供一种基于FPGA的视觉融合方法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种基于FPGA的视觉融合方法,包括如下步骤:建立一个以FPGA为运算处理核心的视觉系统,立体相机的左右视图通过SERDES接口输入;系统包括6块1024K×8比特容量的外部SRAM,其中每2个SRAM组成一组乒乓缓存,实现左右视图以及视差图无缝传输和流水处理;Nand-Flash ROM芯片用于存放系统离线标定得到的校正参数,上电初始化过程中将校正参数从Flash ROM中拷贝到SDRAM中以提高参数输入的速率,实时完成图像校正;系统以太网作为上行视差输出和下行校正参数输入的接口,实现千兆/百兆数据传输与长距离传输;系统预留2路并口IO,通过FIFO与外设连接,用于检测结果、输出中间数据或扩展功能使用;获取黑白背景图像并预存,提取背景图像的灰度特征数据,建立背景图像灰度特征矩阵;采集实时图像,并提取所采集到的实时图像的灰度特征,建立实时图像灰度特征矩阵;将所提取的实时图像的灰度特征与预存的背景图像灰度特征数据进行对比,计算所提取的实时图像的灰度特征与背景图像灰度特征的相似度。
作为本发明进一步的方案:还包括构建一个窗口大小为9×9的寄存器组,每个寄存器组存储相应窗口位置的像素灰度值,通过比较窗口内除了中心外所有寄存器的灰度值与中心寄存器的灰度值,得到对应中心点像素的Census变换后的80比特编码流。
作为本发明进一步的方案:寄存器组缓存输出不同视差的匹配代价,以立体相机中左图为基准的匹配采用串行比较结构,以立体相机中右图为基准的匹配采用并行比较结构,实现相关匹配和左右一致性校验,有效降低误匹配率。
作为本发明再进一步的方案:所述的图像校正、Census变换以及Census变换后的80比特编码流为:它们所涉及到的数据在进行下一步运算时均存储于数据缓存模块,对于宽度为N个像素的图像和高度为w的窗口,数据缓存模块采用至少N×(w+1)个数据空间的简单双口RAM,具有一个读数据端口和一个写数据端口,并设读地址指针和写地址指针,数据缓冲模块按列读出,按行写入,通过控制读写地址确保读无读写冲突,当w行内所有窗口操作都完成并且新的一行也写入后,抛弃最早的一行数据。
与现有技术相比,本发明的有益效果是:本发明能够满足高速运算和高速传输图像的要求,具备多种通用接口和富余的硬件资源,可以进一步扩展加强。同时Census立体融合是一种非参数化的融合方法,对亮度不均、增益等情况更为鲁棒,提高了系统的精度。与传统的通用处理器相比,本发明充分利用并行计算及合理的流水线设计,把算法直接映射到结构上,大大提高了系统的运算速度,满足高分辨率、高精度和高速的要求。
具体实施方式
下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中,一种基于FPGA的视觉融合方法,包括如下步骤:建立一个以FPGA为运算处理核心的视觉系统,立体相机的左右视图通过SERDES接口输入;系统包括6块1024K×8比特容量的外部SRAM,其中每2个SRAM组成一组乒乓缓存,实现左右视图以及视差图无缝传输和流水处理;Nand-Flash ROM芯片用于存放系统离线标定得到的校正参数,上电初始化过程中将校正参数从Flash ROM中拷贝到SDRAM中以提高参数输入的速率,实时完成图像校正;系统以太网作为上行视差输出和下行校正参数输入的接口,实现千兆/百兆数据传输与长距离传输;系统预留2路并口IO,通过FIFO与外设连接,用于检测结果、输出中间数据或扩展功能使用;获取黑白背景图像并预存,提取背景图像的灰度特征数据,建立背景图像灰度特征矩阵;采集实时图像,并提取所采集到的实时图像的灰度特征,建立实时图像灰度特征矩阵;将所提取的实时图像的灰度特征与预存的背景图像灰度特征数据进行对比,计算所提取的实时图像的灰度特征与背景图像灰度特征的相似度。
还包括构建一个窗口大小为9×9的寄存器组,每个寄存器组存储相应窗口位置的像素灰度值,通过比较窗口内除了中心外所有寄存器的灰度值与中心寄存器的灰度值,得到对应中心点像素的Census变换后的80比特编码流。
寄存器组缓存输出不同视差的匹配代价,以立体相机中左图为基准的匹配采用串行比较结构,以立体相机中右图为基准的匹配采用并行比较结构,实现相关匹配和左右一致性校验,有效降低误匹配率。
作为本发明再进一步的方案:所述的图像校正、Census变换以及Census变换后的80比特编码流为:它们所涉及到的数据在进行下一步运算时均存储于数据缓存模块,对于宽度为N个像素的图像和高度为w的窗口,数据缓存模块采用至少N×(w+1)个数据空间的简单双口RAM,具有一个读数据端口和一个写数据端口,并设读地址指针和写地址指针,数据缓冲模块按列读出,按行写入,通过控制读写地址确保读无读写冲突,当w行内所有窗口操作都完成并且新的一行也写入后,抛弃最早的一行数据。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (4)
1.一种基于FPGA的视觉融合方法,其特征在于,包括如下步骤:建立一个以FPGA为运算处理核心的视觉系统,立体相机的左右视图通过SERDES接口输入;系统包括6块1024K×8比特容量的外部SRAM,其中每2个SRAM组成一组乒乓缓存,实现左右视图以及视差图无缝传输和流水处理;Nand-Flash ROM芯片用于存放系统离线标定得到的校正参数,上电初始化过程中将校正参数从Flash ROM中拷贝到SDRAM中以提高参数输入的速率,实时完成图像校正;系统以太网作为上行视差输出和下行校正参数输入的接口,实现千兆/百兆数据传输与长距离传输;系统预留2路并口IO,通过FIFO与外设连接,用于检测结果、输出中间数据或扩展功能使用;获取黑白背景图像并预存,提取背景图像的灰度特征数据,建立背景图像灰度特征矩阵;采集实时图像,并提取所采集到的实时图像的灰度特征,建立实时图像灰度特征矩阵;将所提取的实时图像的灰度特征与预存的背景图像灰度特征数据进行对比,计算所提取的实时图像的灰度特征与背景图像灰度特征的相似度。
2.根据权利要求1所述的基于FPGA的视觉融合方法,其特征在于,还包括构建一个窗口大小为9×9的寄存器组,每个寄存器组存储相应窗口位置的像素灰度值,通过比较窗口内除了中心外所有寄存器的灰度值与中心寄存器的灰度值,得到对应中心点像素的Census变换后的80比特编码流。
3.根据权利要求2所述的基于FPGA的视觉融合方法,其特征在于,寄存器组缓存输出不同视差的匹配代价,以立体相机中左图为基准的匹配采用串行比较结构,以立体相机中右图为基准的匹配采用并行比较结构,实现相关匹配和左右一致性校验,有效降低误匹配率。
4.根据权利要求2所述的基于FPGA的视觉融合方法,其特征在于,所述的图像校正、Census变换以及Census变换后的80比特编码流为:它们所涉及到的数据在进行下一步运算时均存储于数据缓存模块,对于宽度为N个像素的图像和高度为w的窗口,数据缓存模块采用至少N×(w+1)个数据空间的简单双口RAM,具有一个读数据端口和一个写数据端口,并设读地址指针和写地址指针,数据缓冲模块按列读出,按行写入,通过控制读写地址确保读无读写冲突,当w行内所有窗口操作都完成并且新的一行也写入后,抛弃最早的一行数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810169447.XA CN108322725A (zh) | 2018-02-28 | 2018-02-28 | 一种基于fpga的视觉融合方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810169447.XA CN108322725A (zh) | 2018-02-28 | 2018-02-28 | 一种基于fpga的视觉融合方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108322725A true CN108322725A (zh) | 2018-07-24 |
Family
ID=62900975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810169447.XA Pending CN108322725A (zh) | 2018-02-28 | 2018-02-28 | 一种基于fpga的视觉融合方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108322725A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109509218A (zh) * | 2019-01-31 | 2019-03-22 | 深兰人工智能芯片研究院(江苏)有限公司 | 基于fpga获取视差图的方法、装置 |
CN109739651A (zh) * | 2019-01-08 | 2019-05-10 | 中国科学技术大学 | 一种低资源消耗的立体匹配硬件架构 |
CN109743562A (zh) * | 2019-01-10 | 2019-05-10 | 中国科学技术大学 | 基于Census算法的匹配代价计算电路结构及其工作方法 |
CN111783967A (zh) * | 2020-05-27 | 2020-10-16 | 上海赛昉科技有限公司 | 一种适用于专用神经网络加速器的数据双层缓存方法 |
CN114463405A (zh) * | 2022-01-26 | 2022-05-10 | 熵智科技(深圳)有限公司 | 面扫线激光3d相机加速方法、装置、系统及fpga |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101841730A (zh) * | 2010-05-28 | 2010-09-22 | 浙江大学 | 一种基于fpga的实时立体视觉实现方法 |
CN103049737A (zh) * | 2012-12-04 | 2013-04-17 | 中国核电工程有限公司 | 基于fpga的人员闸门视觉识别控制方法及系统 |
CN103220545A (zh) * | 2013-04-28 | 2013-07-24 | 上海大学 | 一种立体视频实时深度估计系统硬件实现方法 |
CN105049826A (zh) * | 2015-07-23 | 2015-11-11 | 南京大学 | 基于fpga的实时立体视频融合转换方法 |
-
2018
- 2018-02-28 CN CN201810169447.XA patent/CN108322725A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101841730A (zh) * | 2010-05-28 | 2010-09-22 | 浙江大学 | 一种基于fpga的实时立体视觉实现方法 |
CN103049737A (zh) * | 2012-12-04 | 2013-04-17 | 中国核电工程有限公司 | 基于fpga的人员闸门视觉识别控制方法及系统 |
CN103220545A (zh) * | 2013-04-28 | 2013-07-24 | 上海大学 | 一种立体视频实时深度估计系统硬件实现方法 |
CN105049826A (zh) * | 2015-07-23 | 2015-11-11 | 南京大学 | 基于fpga的实时立体视频融合转换方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739651A (zh) * | 2019-01-08 | 2019-05-10 | 中国科学技术大学 | 一种低资源消耗的立体匹配硬件架构 |
CN109739651B (zh) * | 2019-01-08 | 2023-06-16 | 中国科学技术大学 | 一种低资源消耗的立体匹配硬件架构 |
CN109743562A (zh) * | 2019-01-10 | 2019-05-10 | 中国科学技术大学 | 基于Census算法的匹配代价计算电路结构及其工作方法 |
CN109509218A (zh) * | 2019-01-31 | 2019-03-22 | 深兰人工智能芯片研究院(江苏)有限公司 | 基于fpga获取视差图的方法、装置 |
CN109509218B (zh) * | 2019-01-31 | 2019-10-22 | 深兰人工智能芯片研究院(江苏)有限公司 | 基于fpga获取视差图的方法、装置 |
CN111783967A (zh) * | 2020-05-27 | 2020-10-16 | 上海赛昉科技有限公司 | 一种适用于专用神经网络加速器的数据双层缓存方法 |
CN111783967B (zh) * | 2020-05-27 | 2023-08-01 | 上海赛昉科技有限公司 | 一种适用于专用神经网络加速器的数据双层缓存方法 |
CN114463405A (zh) * | 2022-01-26 | 2022-05-10 | 熵智科技(深圳)有限公司 | 面扫线激光3d相机加速方法、装置、系统及fpga |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108322725A (zh) | 一种基于fpga的视觉融合方法 | |
CN101841730A (zh) | 一种基于fpga的实时立体视觉实现方法 | |
US11488418B2 (en) | Three-dimensional (3D) pose estimation from a monocular camera | |
US10692244B2 (en) | Learning based camera pose estimation from images of an environment | |
CN107025668B (zh) | 一种基于深度相机的视觉里程计的设计方法 | |
CN108242079B (zh) | 一种基于多特征视觉里程计和图优化模型的vslam方法 | |
CN104881666B (zh) | 一种基于fpga的实时二值图像连通域标记实现方法 | |
CN109544636A (zh) | 一种融合特征点法和直接法的快速单目视觉里程计导航定位方法 | |
WO2019029099A1 (zh) | 基于图像梯度联合优化的双目视觉里程计算方法 | |
CN103489214A (zh) | 增强现实系统中基于虚拟模型预处理的虚实遮挡处理方法 | |
CN108447097A (zh) | 深度相机标定方法、装置、电子设备及存储介质 | |
CN108520554A (zh) | 一种基于orb-slam2的双目三维稠密建图方法 | |
CN112489083B (zh) | 基于orb-slam算法的图像特征点跟踪匹配方法 | |
CN108615246A (zh) | 提高视觉里程计系统鲁棒性和降低算法计算消耗的方法 | |
CN109974743A (zh) | 一种基于gms特征匹配及滑动窗口位姿图优化的rgb-d视觉里程计 | |
CN107564065B (zh) | 一种协作环境下人机最小距离的测算方法 | |
TW202110106A (zh) | 具有差動高速鏈路之改良信號雜訊比的雙電壓源收發器 | |
CN111899280A (zh) | 采用深度学习和混合型位姿估计的单目视觉里程计方法 | |
CN109658337A (zh) | 一种图像实时电子消旋的fpga实现方法 | |
CN104254868A (zh) | 使用至少一个较高帧速率图像流提高图像流帧速率的方法和装置 | |
CN111260553A (zh) | 一种基于远距离无损视频传输的国产视觉计算系统 | |
CN104463962B (zh) | 基于gps信息视频的三维场景重建方法 | |
CN106681697B (zh) | 一种cuda架构下目标访问计算并行实现方法 | |
CN111812978A (zh) | 一种多无人机协作slam方法与系统 | |
WO2023160445A1 (zh) | 即时定位与地图构建方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180724 |