激光条纹中心线提取算法FPGA实现方案

1 概述

激光条纹中心线提取是3D线激光测量领域一个较为基础且重要的算法。目前,激光条纹中心线提取已有多种成熟的算法,有很多相关的博客和论文。

激光条纹中心线提取的真实意义在于工程化和产品化的实际应用,而很多算法目前只能用于学术研究或理论实验,无法在应用端或产品端商用化落地。

常见的中心线提取算法有:

  • 边缘法
  • 中心法
  • 阈值法
  • 形态学细化法
  • 极值法
  • 灰度重心法
  • 曲线拟合法
  • Steger算法

上述这些算法中只有灰度重心法,曲线拟合法,Steger算法3种方法可以达到亚像素精度。

由于测量环境的影响,及被测物体表面材料及轮廓的多样性,实际成像的激光条纹会出现噪声、起伏、倾斜、重叠、间断、过曝、反光等现象。没有一种算法可以完全适应各种应用场景并解决所有这些问题。在实际应用时,往往需要以某一种算法为基础,配合设计多种策略进行排列组合使用,尽可能解决会影响测量结果的问题。

2 FPGA实现方案

笔者开发了一套已成熟商用化的FPGA版本的高性能中心线提取算法。性能指标可达市场一线3D线激光测量类产品,可适配各种分辨率及不同速度等级的CMOS图像传感器。例如:

横向分别率为2K量级,每个像素时钟输出8个像素点的CMOS图像传感器。如,安森美的PYTHON2000;索尼的IMX421。以Xilinx 7系列FPGA为例,资源消耗如下:

横向分别率为2K量级,每个像素时钟输出32个像素点的CMOS图像传感器。如,LUXIMA的LUX2810、LUX2100;E2V的Flash 2K。FPGA资源消耗如下:

横向分别率为4K量级,每个像素时钟输出64个像素点的CMOS图像传感器。如,E2V的Flash 4K。FPGA资源消耗如下:

若需项目合作请私信详询。

相关推荐
daxi15014 小时前
Verilog入门实战——第2讲:核心语法基础(数据类型+赋值语句)
fpga开发·fpga
嵌入式-老费18 小时前
Linux camera驱动开发(vivado hls不能导出ip的问题)
图像处理·fpga开发
Eloudy20 小时前
NetFPGA 快速入门指南
量子计算·fpga·nvqlink
sali-tec20 小时前
C# 基于OpenCv的视觉工作流-章36-骨架提取
图像处理·人工智能·opencv·算法·计算机视觉
学习永无止境@1 天前
Vivado FPGA输入时钟约束
开发语言·fpga开发·fpga
sali-tec2 天前
C# 基于OpenCv的视觉工作流-章35-组件连通
图像处理·人工智能·opencv·算法·计算机视觉
Eloudy2 天前
Quartus Prime Lite Edition 25.1 安装备忘
fpga
XINVRY-FPGA2 天前
XC7Z020-2CLG400I Xilinx AMDZynq-7000 FPGA
嵌入式硬件·fpga开发·arm·硬件工程·dsp开发·fpga
sali-tec2 天前
C# 基于OpenCv的视觉工作流-章34-投影向量
图像处理·人工智能·opencv·算法·计算机视觉