System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于FPGA的面结构光三维测量方法技术_技高网

一种基于FPGA的面结构光三维测量方法技术

技术编号:42068930 阅读:6 留言:0更新日期:2024-07-19 16:51
本发明专利技术公开了一种基于FPGA的面结构光三维测量方法,包括:启动配置FPGA的嵌入式系统、高速接口工业相机参数、加载DMA驱动配置传输参数,各个部分连接上位机;高速接口工业相机输出图像数据到FPGA端,FPGA端对图像数据进行数据重组及串并转换;对串并转换后的图像数据进行缓存,输出多帧图像数据;对多帧图像数据进行计算得到包裹相位,采用循环互补格雷码展开得到绝对相位数据,根据绝对相位数据获得点云数据;以DMA方式缓存点云数据至DDR外部存储空间,通过以太网发送数据至上位机。本发明专利技术提供可动态场景测量的完整方案,整个系统搭建在ZYNQ芯片上,具有强大的计算力和灵活性,具有较大的工程应用价值。

【技术实现步骤摘要】

本专利技术涉及机器视觉领域,特别涉及一种基于fpga的面结构光三维测量方法。


技术介绍

1、面结构光测量方案相较于传统的接触式测量方案具有高精度、低延时和全场测量的优势,其被广泛地运用于工业检测、消费电子、生物医疗和精密测量的领域。随着测量场景的要求进一步提高,对结构光的测量精度和测量速度也愈发严格。在一些测量场景下,希望针对高速运动物体进行三维形貌的获取,传统的测量方案为基于处理器或者嵌入式的实现方式,受限于数据传输的带宽限制以及处理速度,难以高速地采集图像和实时处理数据,随着算法复杂度的提升,这样的实现方案已经不能满足测量要求。

2、而fpga(可编程逻辑器件)具备编程灵活性、架构并行性、低延迟高吞吐量的特点,所以基于fpga的面结构光系统解决方案具有较大的优势,对整个系统的实时可靠性要求更高。在fpga设计中也需要综合考虑算法优化、硬件资源利用、实时性能、环境适应性等方面的因素,以满足具体应用的要求。


技术实现思路

1、为了克服现有技术的上述缺点与不足,本专利技术的目的在于提供一种基于fpga的面结构光三维测量方法。

2、本专利技术利用fpga的并行化提高面结构光中的编解码算法速度,解决基于处理器设计下实现的高速、固定延时问难题,利用优化技术提高算法硬件架构的处理带宽;同时提出与算法模块对应的高速缓存模块和通信模块解决方案,在保证面结构光的高精度同时提高数据处理速度和通信的可靠性。

3、本专利技术的目的通过以下技术方案实现:

4、一种基于fpga的面结构光三维测量方法,包括:

5、启动配置fpga的嵌入式系统、高速接口工业相机参数、加载dma驱动配置传输参数,各个部分连接上位机;

6、高速接口工业相机输出图像数据到fpga端,fpga端对图像数据进行数据重组及串并转换;

7、对串并转换后的图像数据进行缓存,输出多帧图像数据;

8、对多帧图像数据进行计算得到包裹相位,进一步采用循环互补格雷码展开得到绝对相位数据,根据绝对相位数据获得点云数据;

9、以dma方式缓存点云数据至ddr外部存储空间,在嵌入式系统进行存储映射后通过以太网发送数据上位机。

10、进一步,所述高速接口工业相机输出图像数据到fpga端,对图像数据进行数据重组及串并转换,具体为:

11、高速接口工业相机与fpga端之间通过full模式下的cameralink接口进行传输,图像数据是以8个像素点差分数据输入fpga,将图像数据解码后分离数据信号和时钟信号,然后将数据信号转换为并行的64bit数据。

12、进一步,所述对串并转换后的图像数据进行缓存,输出多帧数据,具体为:

13、设计fifo,将图像数据从相机时钟域传输至fpga的时钟域;

14、采用两段式乒乓缓存控制器,其缓存地址区域分为奇数组缓存区和偶数组缓存区,所述奇数组缓存区和偶数组缓存区的读写具有耦合关系;

15、利用mig控制器,对缓存区进行读写。

16、进一步,所述奇数组缓存区和偶数组缓存区的读写具有耦合关系,具体是指:

17、奇数组缓存区和偶数组缓存区的图像数据容量相等,且设置两组中相同位置的某一帧图像为读出时的共享帧;

18、当其中一个缓存区在写入图像数据时,同时另一个缓存区读出数据,读出图像数据包括共享帧和所读缓存区域的全部数据。

19、进一步,所述fifo为伪双口模式,写入端口数据宽度64bit,读出端口为128bit;并设计行缓存时序以实现连续读写的功能。

20、进一步,对多帧图像数据进行相移法计算得到包裹相位,进一步采用循环互补格雷码展开得到绝对相位数据。

21、进一步,根据绝对相位数据获得点云数据,具体是采用单目结构光三维重建算法。

22、进一步,所述ddr外部存储空间设置两块ddr,每块ddr的缓存区域为五块,单块地址连续,相邻两块通过指针连接,通过硬件中断切换块的首地址。

23、进一步,采用两个同步fifo实现读写数据缓存,fifo深度和读写端口宽度依据读写的控制策略:写数据量到达阈值则读至空状态,以实现针对解码后数据的行缓存。

24、进一步,所述dma的计算公式为:

25、m=d×f×t

26、m为带宽,d为数据位宽,f为运行的时钟频率,t为数据传输率,此带宽量应小于单通道axi_hp允许的最大带宽。

27、与现有技术相比,本专利技术具有以下优点和有益效果:

28、(1)本专利技术基于fpga的相移法结合循环互补格雷码的编解码算法具备高精度,高吞吐量,高实时性的特点,并行化流水线式的设计大大减少该模块的编解码延时,对于高速测量场景具有良好的适应性,编解码速率延时固定,不受系统调度的影响,使整个算法可在测量时保持稳定的动态性能。

29、(2)本专利技术基于pl端ddr3的高速帧缓存方案充分利用了外部存储器与fpga内部存储器的传输带宽设计连续的读写策略,以实现灰度图像的实时输入和动态缓存,以最小的数据延时提供给算法模块,保证系统在动态测量时保持图像数据流的实时性能。

30、(3)本专利技术基于ps端ddr3设计软硬件协作的dma通信架构。实现海量数据的暂存,以便提供给软件分析数据。操作系统对多任务的处理性能使其可对缓存的数据进行多种复杂计算。此部分的设计完全兼容前端的高速缓存和算法的实时性能。

31、(4)本专利技术基于fpga的面结构光三维测量方案具有良好的完整性,从测量硬件到后续点云处理都已经验证成功,基于zynq的方案相较于fpga具备更大的应用潜力。

本文档来自技高网...

【技术保护点】

1.一种基于FPGA的面结构光三维测量方法,其特征在于,包括:

2.根据权利要求1所述的面结构光三维测量方法,其特征在于,所述高速接口工业相机输出图像数据到FPGA端,对图像数据进行数据重组及串并转换,具体为:

3.根据权利要求1所述的面结构光三维测量方法,其特征在于,所述对串并转换后的图像数据进行缓存,输出多帧数据,具体为:

4.根据权利要求3所述的面结构光三维测量方法,其特征在于,所述奇数组缓存区和偶数组缓存区的读写具有耦合关系,具体是指:

5.根据权利要求3所述的面结构光三维测量方法,其特征在于,所述FIFO为伪双口模式,写入端口数据宽度64bit,读出端口为128bit;并设计行缓存时序以实现连续读写的功能。

6.根据权利要求1所述的面结构光三维测量方法,其特征在于,对多帧图像数据进行相移法计算得到包裹相位,进一步采用循环互补格雷码展开得到绝对相位数据。

7.根据权利要求6所述的面结构光三维测量方法,其特征在于,根据绝对相位数据获得点云数据,具体是采用单目结构光三维重建算法。

8.根据权利要求1所述的面结构光三维测量方法,其特征在于,所述DDR外部存储空间设置两块DDR,每块DDR的缓存区域为五块,单块地址连续,相邻两块通过指针连接,通过硬件中断切换块的首地址。

9.根据权利要求8所述的面结构光三维测量方法,其特征在于,采用两个同步FIFO实现读写数据缓存,FIFO深度和读写端口宽度依据读写的控制策略:写数据量到达阈值则读至空状态,以实现针对解码后数据的行缓存。

10.根据权利要求1所述的面结构光三维测量方法,其特征在于,所述DMA的计算公式为:

...

【技术特征摘要】

1.一种基于fpga的面结构光三维测量方法,其特征在于,包括:

2.根据权利要求1所述的面结构光三维测量方法,其特征在于,所述高速接口工业相机输出图像数据到fpga端,对图像数据进行数据重组及串并转换,具体为:

3.根据权利要求1所述的面结构光三维测量方法,其特征在于,所述对串并转换后的图像数据进行缓存,输出多帧数据,具体为:

4.根据权利要求3所述的面结构光三维测量方法,其特征在于,所述奇数组缓存区和偶数组缓存区的读写具有耦合关系,具体是指:

5.根据权利要求3所述的面结构光三维测量方法,其特征在于,所述fifo为伪双口模式,写入端口数据宽度64bit,读出端口为128bit;并设计行缓存时序以实现连续读写的功能。

6.根据权利要求1所述的面结构光三维测量方法,其特征在于...

【专利技术属性】
技术研发人员:陈忠胡天龙郝煜亚张宪民
申请(专利权)人:华南理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1