CN110264527A - 基于zynq的实时双目立体视觉输出方法 - Google Patents

基于zynq的实时双目立体视觉输出方法 Download PDF

Info

Publication number
CN110264527A
CN110264527A CN201910531853.0A CN201910531853A CN110264527A CN 110264527 A CN110264527 A CN 110264527A CN 201910531853 A CN201910531853 A CN 201910531853A CN 110264527 A CN110264527 A CN 110264527A
Authority
CN
China
Prior art keywords
camera
real
parameter
zynq
stereo 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
Application number
CN201910531853.0A
Other languages
English (en)
Inventor
罗炬锋
翟华伟
张力
崔笛扬
李丹
邱云周
郑春雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHANGHAI INTERNET OF THINGS CO Ltd
Original Assignee
SHANGHAI INTERNET OF THINGS CO Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHANGHAI INTERNET OF THINGS CO Ltd filed Critical SHANGHAI INTERNET OF THINGS CO Ltd
Priority to CN201910531853.0A priority Critical patent/CN110264527A/zh
Publication of CN110264527A publication Critical patent/CN110264527A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • G06T7/85Stereo camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20228Disparity calculation for image-based rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

本发明涉及一种基于ZYNQ的实时双目立体视觉输出方法,包括以下步骤:利用标定板完成双目相机的离线标定,获得相机的内部参数、外部参数和畸变参数;基于离线标定的相机的内部参数、外部参数和畸变参数,从图像采集模块在FPGA平台上进行实时图片校正;输入校正后的图片,在FPGA平台上进行立体匹配算法实现,计算出视差图,并进行输出。本发明能够实时获取视差图,便于后续应用的二次开发。

Description

基于ZYNQ的实时双目立体视觉输出方法
技术领域
本发明涉及计算机视觉应用技术领域,特别是涉及一种基于ZYNQ的实时双目立体视觉输出方法。
背景技术
双目立体视觉是计算机视觉研究领域的一个重要分支。双目立体视觉基于仿生学原理,利用位置不同的两个摄像头拍摄两张图像。根据两幅图建立特征点间的对应关系,从中提取出环境的三维信息以获得能够观测距离的视差图。与其他三维场景感知方法相比,立体视觉在安全性,检测特性,成本及适用范围等都具有许多优点,非常适合于制造现场的在线、非接触产品检测和质量控制以及运动物体的实时监测和跟踪等。因此双目立体视觉被广泛应用于视觉导航、目标检测与跟踪、目标测量、目标识别以及三维场景感知等场合。在智能机器人,自动汽车驾驶,人机界面以及安防等诸多应用领域都起到了重要的作用。
双目立体视觉的相关算法实现复杂,计算量大,复杂的处理算法使得用CPU的指令集串行处理运算速度缓慢,无法达到实时效果。通常采用的是GPU加速或者FPGA加速实现。采用GPU处理的方法有一定的加速比,但处理帧率低、一般需要大体积的服务器,能耗也相当高。相比之下FPGA的并行计算和低功耗等特点,更适合嵌入式设备的实时性实现。
发明内容
本发明所要解决的技术问题是提供一种基于ZYNQ的实时双目立体视觉输出方法,能够实时获取视差图(深度图),便于后续应用的二次开发。
本发明解决其技术问题所采用的技术方案是:提供一种基于ZYNQ的实时双目立体视觉输出方法,包括以下步骤:
(1)利用标定板完成双目相机的离线标定,获得相机的内部参数、外部参数和畸变参数;
(2)基于离线标定的相机的内部参数、外部参数和畸变参数,从图像采集模块在FPGA平台上进行实时图片校正;
(3)输入校正后的图片,在FPGA平台上进行立体匹配算法实现,计算出视差图,并进行输出。
所述步骤(1)中的离线标定的具体步骤如下:首先需要一个标准黑白格的标定板,所述标定板由大小相同的正方形黑白格交替排列得到;利用图像采集程序采集图片,将已经定制好的双目相机放在固定位置上进行固定,调整好相机的焦距,通过标定板的旋转拍摄在不同角度下的左右图像;通过在不同角度下的标定板上角点位置获得不同的方程组组合,求解出相机的相关参数。
所述通过在不同角度下的标定板上角点位置获得不同的方程组组合,求解出相机的相关参数具体为:将已经获取的成对图像添加到MATLAB标定工具箱中,并确定黑白格的边距长度;然后对每一对图像进行角点确认,MATLAB标定工具箱自动生成方程组并求解出相机的内部参数、外部参数和畸变参数。
所述步骤(2)中在FPGA平台上进行实时图片校正时采用HLS高层综合对校正算法进行硬件IP核设计,并将其放置于FPGA中进行实现。
所述校正算法具体为:将两个图像的像素坐标系通过共同的内参矩阵转换到相机坐标系;分别将左右相机坐标系通过旋转矩阵进行调节得到新的相机坐标系;针对新的相机坐标系分别进行左右相机的去畸变操作;用相机的内参矩阵分别将左右相机坐标系重新转换到图像像素坐标系;分别用左右原图像的像素点对新的左右图像的像素点采用插值法进行极线校正。
所述步骤(3)中在FPGA平台上进行立体匹配算法实现时,将立体匹配算法优化成特征提取、获取初始匹配代价、匹配代价聚合以及视差精细化四个部分,且这四个部分之间不涉及迭代和反复。
所述立体匹配算法依次包括双边滤波计算、彩色图转灰度图计算、Census变化匹配代价计算、AD匹配代价计算、匹配代价聚合处理以及视差精细化处理。
有益效果
由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:本发明基于ZYNQ FPGA平台上实现了双目立体视觉系统,针对双目立体匹配算法复杂,计算量大的特点,优化设计适应于FPGA并行处理的结构,使得通过ZYNQ的FPGA平台的系统处理速度完全可以达到实时性的要求,可以将其应用到高级辅助驾驶中,有一定的应用价值。
附图说明
图1是本发明的流程图;
图2是本发明中的双目相机标定板示意图。
具体实施方式
下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。
本发明的实施方式涉及一种基于ZYNQ的实时双目立体视觉输出方法,包括以下步骤:利用标定板完成双目相机的离线标定,获得相机的内部参数、外部参数和畸变参数;基于离线标定的相机的内部参数、外部参数和畸变参数,从图像采集模块在FPGA平台上进行实时图片校正;输入校正后的图片,在FPGA平台上进行立体匹配算法实现,计算出视差图,并进行输出。整个双目立体视觉输出流程如图1所示。
在进行双目立体视觉系统实现前,需要对双目立体相机进行标定,获取双目相机的内外参数。在相机标定之前,首先需要完成相机图像采集的程序编码。在Linux系统中利用V4L2系统视频采集驱动接口来操作摄像头的Video设备,对其进行文件打开,设备初始化,打开视频流,采集数据帧,关闭视频流,关闭设备等操作完成摄像头图像采集保存的功能。
为获得高精度的相机参数,采用张正友相机标定法进行立体相机标定。首先需要一个有标准黑白格的标定板,如图2所示。标定板是由大小相同的正方形黑白格交替排列得到的,目的是为了在相机标定的时候更好的找到角点(即四块黑白格交接的地方)的位置,从而可以确定它在不同坐标系下的对应位置。利用图像采集程序采集图片,将已经定制好的双目相机放在固定位置上不动,调整好镜头的焦距,之后不再更改摄像头的位置和焦距,在光线均匀的时候通过标定板的旋转拍摄在不同角度下的左右图像。通过在不同角度下的标定板上角点位置可以获得不同的方程组组合,这样就可以求解出相机的相关参数。具体为,将已经保存下的成对图像添加到MATLAB标定工具箱中,并确定黑白格的边距长度。然后对每一对图像进行角点确认,工具箱就可以自动生成方程组并求解出相机的相关参数。采用MATLAB标定工具箱标定可以通过人工和程序共同确定标定板中角点位置,可以多次实验标定取最优结果。这样降低了标定误差,从而可以获得更精准的相机内外参数。
基于标定获得双目相机的内外参数后,需要在FPGA平台上进行实时校正处理,消除或减少图片畸变。实时校正的处理按照如下步骤开展:1)将两个图像的像素坐标系通过共同的内参矩阵转换到相机坐标系;2)分别将左右相机坐标系通过旋转矩阵进行调节得到新的相机坐标系;3)针对新的相机坐标系分别进行左右相机的去畸变操作;4)用相机的内参矩阵分别将左右相机坐标系重新转换到图像像素坐标系;5)分别用左右原图像的像素点对新的左右图像的像素点采用插值法进行极线校正。
该校正算法需要在FPGA上实时处理,采用HLS高层综合软件C语言来进行硬件算法设计,并且设计完成后可直接打包封装成可供硬件通路使用的IP核,从而避免了用复杂而又难以理解的硬件描述语言来设计IP。根据HLS的这个优势可以直接按照上述的算法步骤进行算法程序编写。
经过校正之后的图片基本消除了畸变,因此图片中的像素位置与实际空间位置有了固定的映射关系,利用双目立体匹配算法求取出左右相机的视差值,获得目标的深度信息。双目立体匹配方法采用了双边滤波计算,彩色图转灰度图计算,Census变化匹配代价计算,AD匹配代价计算,匹配代价聚合处理以及视差精细化处理这些步骤。并基于这些计算步骤优化设计适应于FPGA的并行处理。为了避免底层复杂的硬件描述语言来设计算法IP核,采用了高层综合工具HLS使用软件C代码来完成相关算法硬件IP核的设计与实现。
不难发现,本发明基于FPGA搭建实时双目立体视觉系统。主要包括相机标定、立体校正、立体匹配、PL和PS的数据交互支持二次开发或显示等。首先,相机标定要获得摄像头的内部参数、外部参数和畸变参数,为后续的模块打下基础。这些参数的准确度是系统效果优越性的基础核心。其次,立体校正是将双目图像同一行上的像素点严格对齐。成熟的方法是使用OpenCV设计好的相关函数来加以实现,但是就双目系统而言软件实现会降低系统的处理速度。因此本发明结合OpenCV库中的相关函数底层实现和标定获得的精准参数设计立体校正算法并改用FPGA硬件加以实现。立体匹配是根据校正后的结果做相应像素点之间的位差,从而形成视差图。关于立体匹配算法的研究一直是双目视觉的热点,不少人针对不同的应用场景设计了相应的立体匹配算法,但多数设计不具有通用性并且没有很好的鲁棒性测试。本发明基于算法思想设计了在该双目立体视觉系统有良好表现形式的立体视觉算法。因为立体校正和三维立体匹配在算法的设计和处理上相对复杂耗时,因此将其在FPGA上实现,为了能够避免底层复杂的硬件描述语言来设计算法IP核,本发明采用了高层综合工具HLS使用软件C代码来完成相关算法硬件IP核的设计与实现。由此可见,本发明基于ZYNQ FPGA平台上实现了双目立体视觉系统,针对双目立体匹配算法复杂,计算量大的特点,优化设计适应于FPGA并行处理的结构,使得通过ZYNQ的FPGA平台的系统处理速度完全可以达到实时性的要求,可以将其应用到高级辅助驾驶中,有一定的应用价值。

Claims (7)

1.一种基于ZYNQ的实时双目立体视觉输出方法,其特征在于,包括以下步骤:
(1)利用标定板完成双目相机的离线标定,获得相机的内部参数、外部参数和畸变参数;
(2)基于离线标定的相机的内部参数、外部参数和畸变参数,从图像采集模块在FPGA平台上进行实时图片校正;
(3)输入校正后的图片,在FPGA平台上进行立体匹配算法实现,计算出视差图,并进行输出。
2.根据权利要求1所述的基于ZYNQ的实时双目立体视觉输出方法,其特征在于,所述步骤(1)中的离线标定的具体步骤如下:首先需要一个标准黑白格的标定板,所述标定板由大小相同的正方形黑白格交替排列得到;利用图像采集程序采集图片,将已经定制好的双目相机放在固定位置上进行固定,调整好相机的焦距,通过标定板的旋转拍摄在不同角度下的左右图像;通过在不同角度下的标定板上角点位置获得不同的方程组组合,求解出相机的相关参数。
3.根据权利要求2所述的基于ZYNQ的实时双目立体视觉输出方法,其特征在于,所述通过在不同角度下的标定板上角点位置获得不同的方程组组合,求解出相机的相关参数具体为:将已经获取的成对图像添加到MATLAB标定工具箱中,并确定黑白格的边距长度;然后对每一对图像进行角点确认,MATLAB标定工具箱自动生成方程组并求解出相机的内部参数、外部参数和畸变参数。
4.根据权利要求1所述的基于ZYNQ的实时双目立体视觉输出方法,其特征在于,所述步骤(2)中在FPGA平台上进行实时图片校正时采用HLS高层综合对校正算法进行硬件IP核设计,并将其放置于FPGA中进行实现。
5.根据权利要求4所述的基于ZYNQ的实时双目立体视觉输出方法,其特征在于,所述校正算法具体为:将两个图像的像素坐标系通过共同的内参矩阵转换到相机坐标系;分别将左右相机坐标系通过旋转矩阵进行调节得到新的相机坐标系;针对新的相机坐标系分别进行左右相机的去畸变操作;用相机的内参矩阵分别将左右相机坐标系重新转换到图像像素坐标系;分别用左右原图像的像素点对新的左右图像的像素点采用插值法进行极线校正。
6.根据权利要求1所述的基于ZYNQ的实时双目立体视觉输出方法,其特征在于,所述步骤(3)中在FPGA平台上进行立体匹配算法实现时,将立体匹配算法优化成特征提取、获取初始匹配代价、匹配代价聚合以及视差精细化四个部分,且这四个部分之间不涉及迭代和反复。
7.根据权利要求6所述的基于ZYNQ的实时双目立体视觉输出方法,其特征在于,所述立体匹配算法依次包括双边滤波计算、彩色图转灰度图计算、Census变化匹配代价计算、AD匹配代价计算、匹配代价聚合处理以及视差精细化处理。
CN201910531853.0A 2019-06-19 2019-06-19 基于zynq的实时双目立体视觉输出方法 Pending CN110264527A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910531853.0A CN110264527A (zh) 2019-06-19 2019-06-19 基于zynq的实时双目立体视觉输出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910531853.0A CN110264527A (zh) 2019-06-19 2019-06-19 基于zynq的实时双目立体视觉输出方法

Publications (1)

Publication Number Publication Date
CN110264527A true CN110264527A (zh) 2019-09-20

Family

ID=67919403

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910531853.0A Pending CN110264527A (zh) 2019-06-19 2019-06-19 基于zynq的实时双目立体视觉输出方法

Country Status (1)

Country Link
CN (1) CN110264527A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111445380A (zh) * 2020-03-19 2020-07-24 熵智科技(深圳)有限公司 基于zynq实现实时双目立体匹配的方法及装置
CN111553296A (zh) * 2020-04-30 2020-08-18 中山大学 一种基于fpga实现的二值神经网络立体视觉匹配方法
CN112146589A (zh) * 2020-09-16 2020-12-29 天津大学 一种基于zynq平台的三维形貌测量系统及方法
WO2021138993A1 (zh) * 2020-01-10 2021-07-15 大连理工大学 一种多波段立体相机的视差图像融合方法
CN114765660A (zh) * 2020-12-30 2022-07-19 浙江舜宇智能光学技术有限公司 用于tof摄像模组的图像标定方法及fpga芯片

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106887023A (zh) * 2017-02-21 2017-06-23 成都通甲优博科技有限责任公司 用于双目摄像机标定的标定板及其标定方法和标定系统
CN107830990A (zh) * 2017-10-31 2018-03-23 武汉精测电子集团股份有限公司 一种基于fpga平台的自动光学检测系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106887023A (zh) * 2017-02-21 2017-06-23 成都通甲优博科技有限责任公司 用于双目摄像机标定的标定板及其标定方法和标定系统
CN107830990A (zh) * 2017-10-31 2018-03-23 武汉精测电子集团股份有限公司 一种基于fpga平台的自动光学检测系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张珉璐等: "双目视觉技术在稻田养殖区域测量中的应用", 《安徽农业科学》 *
裴明敬等: "基于FPGA 的图像畸变矫正研究", 《重庆科技学院学报》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021138993A1 (zh) * 2020-01-10 2021-07-15 大连理工大学 一种多波段立体相机的视差图像融合方法
US11948333B2 (en) 2020-01-10 2024-04-02 Dalian University Of Technology Disparity image fusion method for multiband stereo cameras
CN111445380A (zh) * 2020-03-19 2020-07-24 熵智科技(深圳)有限公司 基于zynq实现实时双目立体匹配的方法及装置
CN111553296A (zh) * 2020-04-30 2020-08-18 中山大学 一种基于fpga实现的二值神经网络立体视觉匹配方法
CN112146589A (zh) * 2020-09-16 2020-12-29 天津大学 一种基于zynq平台的三维形貌测量系统及方法
CN114765660A (zh) * 2020-12-30 2022-07-19 浙江舜宇智能光学技术有限公司 用于tof摄像模组的图像标定方法及fpga芯片

Similar Documents

Publication Publication Date Title
CN111414798B (zh) 基于rgb-d图像的头部姿态检测方法及系统
CN110264527A (zh) 基于zynq的实时双目立体视觉输出方法
CN107766855B (zh) 基于机器视觉的棋子定位方法、系统、存储介质及机器人
CN109255813B (zh) 一种面向人机协作的手持物体位姿实时检测方法
CN106780619B (zh) 一种基于Kinect深度相机的人体尺寸测量方法
CN105758426B (zh) 移动机器人的多传感器的联合标定方法
CN104331896B (zh) 一种基于深度信息的系统标定方法
CN104537707B (zh) 像方型立体视觉在线移动实时测量系统
CN107560592B (zh) 一种用于光电跟踪仪联动目标的精确测距方法
CN103838437A (zh) 基于投影图像的触控定位控制方法
WO2023273093A1 (zh) 一种人体三维模型获取方法、装置、智能终端及存储介质
CN109615664B (zh) 一种用于光学透视增强现实显示器的标定方法与设备
CN111028205B (zh) 一种基于双目测距的眼睛瞳孔定位方法及装置
WO2016030305A1 (en) Method and device for registering an image to a model
CN106155299B (zh) 一种对智能设备进行手势控制的方法及装置
WO2021238171A1 (zh) 图像配准方法及其相关的模型训练方法、设备、装置
CN113850865A (zh) 一种基于双目视觉的人体姿态定位方法、系统和存储介质
CN109887071A (zh) 一种3d电子内镜系统及三维重建方法
CN106485207A (zh) 一种基于双目视觉图像的指尖检测方法及系统
CN112348890B (zh) 一种空间定位方法、装置及计算机可读存储介质
CN106500625A (zh) 一种远心立体视觉测量装置及其应用于物体三维形貌微米级精度测量的方法
EP3622481A1 (en) Method and system for calibrating a velocimetry system
CN111080776A (zh) 人体动作三维数据采集和复现的处理方法及系统
CN109308472B (zh) 一种基于虹膜投影匹配函数的三维视线估计方法
CN113487726B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190920