CN102944192B - 一种基于fpga的片上实时高速三维复现方法 - Google Patents
一种基于fpga的片上实时高速三维复现方法 Download PDFInfo
- Publication number
- CN102944192B CN102944192B CN201210397753.1A CN201210397753A CN102944192B CN 102944192 B CN102944192 B CN 102944192B CN 201210397753 A CN201210397753 A CN 201210397753A CN 102944192 B CN102944192 B CN 102944192B
- Authority
- CN
- China
- Prior art keywords
- fpga
- speed
- phase
- dimensional reproduction
- dimensional
- 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.)
- Active
Links
Abstract
一种基于FPGA的片上实时高速三维复现方法,它有五大步骤。本发明用于三维形貌测量的多频条纹图像数据处理与整体形貌的三维复现。基于FPGA的本方法,方法包括数据采集与预处理、标记背景、译码器解相、外差多频相展开立体匹配与三维复现。在进行相位解算是使用了预先固化在片内的解相译码器模块,克服了在泰勒级数运算造成的总体运算速度慢、资源消耗大的缺点,同时对于不同频率的条纹图像实现数据的实时处理。该方法具有速度快、功耗低、可靠性好的特点,可用于表面三维形貌的光学非接触测量。
Description
技术领域
本发明涉及一种基于FPGA的片上实时高速三维复现方法,用于对三维形貌测量时的条纹图像进行实时高速的相位解算与三维复现数据处理。本发明属于光学三维测量技术领域。
背景技术
按检测方法分,目前对物体三维形貌测量可分为接触式与非接触式两大类。虽然接触式测量有着精度高范围广的优点,但是由于要求测头与被测物接触,不可避免地会造成被测物表面的变形与损伤,因而不适合柔软物体的测量,而且当测头无法接触到物体时无法进行测量。与之相比,非接触式测量避免了与被测物直接接触,扫描速度也不受机械限制,测量环境要求也不高,可实现高温、高压等恶劣环境下的测量。目前主要的非接触式测量方法可分为激光扫描法、结构光法、立体视觉法以及工业CT法等。
在各种方法中,投影栅相位法具有结构简单、测量精度高、测量速度快的优点,一次测量中可以得到物体表面稠密的三维点云,可以有效适应工业需要。目前国内外研究投影栅相位法的相展开方法可分为三类:空间相展开法、时域相展开法以及外差多频相展开法。空间相展开发包括支切法、质量导向图法、最小断点法、标记法、区域相展开法、最小生成树法、遗传算法、细胞自动机法、Lp-Norm法等。这些方法虽然能够从不同程度上减少噪声对相展开结果的影响,但在处理遮挡、阴影等问题时依旧存在无法解决的问题。时域相展开法相比于空间相展开法,是将每个像素点按时间轴进行相位展开计算,从而使各个点的结算相对独立,低信噪比的区域不会影响其他点的计算,避免了空间相展开过程中传播误差所带来的不良影响。
目前在投影栅相位法的数据处理上,大都使用计算机对获得的数据进行处理。在使用计算机进行数据处理的过程中,数据的传输、存储与运算是减缓整体运算时间的主要原因;另外由于计算机无法进行并行计算,这也大大降低了运算速度。而相比之下,利用硬件化的FPGA进行数据处理,一方面可以减少由传感器到处理核心的传输、存储时间;另一方面可以实现左右相机图像数据的并行计算。这使得基于FPGA的三维复现方法的实时高速性有了保证。目前国内还没有此类基于FPGA的三维复现方法。
发明内容
本发明是一种基于FPGA的片上实时高速三维复现方法,用以克服现有非接触光学主动三维测量方法在在条纹图像在进行相位解算与三维复现时速度慢的问题。
本发明的技术解决方案为:一种基于FPGA的片上实时高速三维复现方法,该方法包括数据采集与预处理、标记背景、译码器解相、外差多频相展开立体匹配与三维复现。具体发明内容包括以下步骤:
步骤一:首先采集某一频率不同相移的条纹图像,依照该传感器的图像的传输形式在FPGA上对数据进行预处理后存储到RAM中。
步骤二:对于一组同一频率的条纹图像进行背景标记。利用公式4[B(x,y)]2=[g3(x,y)-g1(x,y)]2+[g0(x,y)-g2(x,y)]2与事先在FPGA中设定的阈值BT标记出有效的图像像素位置。上式中的符号说明如下:gi(x,y)表示第i幅图像在点(x,y)处的灰度值,B(x,y)表示点(x,y)处的背景参量。
步骤三:根据公式 将之前的计算结果整形化,在FPGA上进行硬件化的反正切译码,得到相位解算结果。
步骤四:在所有频率的条纹图像均获取且处理完成之后,利用公式进行外差相展开法,得到结果后存储到RAM中。上式中的符号说明如下:Φb(x,y)是相位展开前的条纹相位,λ1、λ2是不同周期条纹的周期长度。
步骤五:对于左右相机,以上步骤可以同时处理实现并行计算。得到结果之后,通过事先固化在FPGA中的相机标定结果,对左右相机的相展开结果进行立体匹配与三维复现。
其中,步骤一中所述的对数据进行预处理是将采集的某一频率的条纹图像存储到RAM中,以备在之后的运算中同时读取一个像素位置不同相移的数据。
其中,步骤二中所述的背景标记是指计算每个像素的调制度B(x,y),如果小于阈值BT,则说明是背景或噪声点,在解相时不予计算这个点。由于背景阈值是事先在FPGA中设计固化的,在比较时可以节省计算速度。
其中,步骤三中所述的整形化是指由于FPGA处理数据均是整形,因此根据需要的精度将量化成为整数,再通过反正切译码器计算Φ(x,y)。反正切译码器是事先在FPGA硬件中固化设计好的组合逻辑电路,在精度要求不变的情况下,相比泰勒级数运算有着速度快、功耗低的特点。
其中,步骤四中所述的外差相展开法,在公式计算的过程用,由于是关于条纹频率定值,使用FPGA硬件计算时可实现设计为常数,以加快运算速度。
其中,步骤五中所述的对于左右相机,以上步骤可以同时处理实现并行计算。由于在左右相机匹配的过程中需要用到相机标定结果,这是在计算过程中不变的。因此可以将其事先固化在FPGA中,以实现实时高速运算。
本发明的原理是:针对在以往解相方法数据传输存储速度慢、无法并行处理造成的总体运算速度慢的问题。本发明采用了使用基于FPGA的反正切译码器,将计算量较大的泰勒级数运算替换成硬件上快速高效的组合逻辑电路;以及将一些参数事先固化在FPGA中以加快运算速度;同时将条纹图像数据处理模块与数据预处理存储模块分开,实现了两部分同时工作,达到了实时高速运算处理的要求。
本发明与现有技术相比的优点在于:(1)采用硬件上的逻辑电路进行计算,有着速度快的优点。(2)采用左右相机数据并行计算,可实现数据实时处理。(3)在硬件设备的选择上可选择适应计算量的设备,避免了以往计算机计算时所消耗的额外资源。
附图说明
图1基于FPGA的片上实时高速相展开算法的流程图;
图2为反正切译码器基本时序图;
具体实施方式
基于FPGA的片上实时高速三维复现方法用于高速高动态三维形貌测量的图像数据处理与三维复现。方法包括数据采集与预处理、标记背景、译码器解相、外差多频相展开立体匹配与三维复现。该方法采用硬件上的逻辑电路进行计算,有着速度快的优点。采用左右相机数据并行计算,可实现数据实时处理。该方法具有速度快、功耗低、可靠性好的特点,可用于表面三维形貌的光学非接触测量。
见图1,本发明一种基于FPGA的片上实时高速三维复现方法,该方法具体实施步骤如下:
步骤一:首先采集某一频率不同相移的条纹图像,依照该传感器的图像的传输形式在FPGA上对数据进行预处理后存储到RAM中,以备在之后的运算中同时读取一个像素位置不同相移的数据。
步骤二:对于一组同一频率的条纹图像进行背景标记。利用公式4[B(x,y)]2=[g3(x,y)-g1(x,y)]2+[g0(x,y)-g2(x,y)]2与事先在FPGA中设定的阈值BT标记出有效的图像像素位置,如果像素值小于阈值BT,则说明是背景或噪声点,在解相时不予计算这个点。由于背景阈值是事先在FPGA中设计固化的,在比较时可以节省计算速度。上式中的符号说明如下:gi(x,y)表示第i幅图像在点(x,y)处的灰度值,B(x,y)表示点(x,y)处的背景参量。
步骤三:根据公式 将之前的计算结果在FPGA上进行硬件化的反正切译码,得到相位解算结果。整形化是指由于FPGA处理数据均是整形,因此根据需要的精度将量化成为整数,再通过反正切译码器计算Φ(x,y)。反正切译码器是事先在FPGA硬件中固化设计好的组合逻辑电路,在精度要求不变的情况下,相比泰勒级数运算有着速度快、功耗低的特点。反正切译码器时序图参见图2。
表1反正切译码器的典型数表
输入 | 输出 | 输入 | 输出 | 输入 | 输出 | 输入 | 输出 |
1 | 9 | 51 | 137 | 101 | 147 | 151 | 150 |
2 | 19 | 52 | 138 | 102 | 147 | 152 | 150 |
3 | 29 | 53 | 138 | 103 | 147 | 153 | 150 |
4 | 38 | 54 | 138 | 104 | 147 | 154 | 150 |
5 | 46 | 55 | 139 | 105 | 147 | 155 | 150 |
6 | 54 | 56 | 139 | 106 | 147 | 156 | 150 |
7 | 61 | 57 | 139 | 107 | 147 | 157 | 150 |
8 | 67 | 58 | 140 | 108 | 147 | 158 | 150 |
9 | 73 | 59 | 140 | 109 | 147 | 159 | 150 |
10 | 78 | 60 | 140 | 110 | 148 | 160 | 150 |
11 | 83 | 61 | 140 | 111 | 148 | 161 | 150 |
12 | 87 | 62 | 141 | 112 | 148 | 162 | 150 |
13 | 91 | 63 | 141 | 113 | 148 | 163 | 150 |
14 | 95 | 64 | 141 | 114 | 148 | 164 | 150 |
15 | 98 | 65 | 141 | 115 | 148 | 165 | 151 |
16 | 101 | 66 | 142 | 116 | 148 | 166 | 151 |
17 | 103 | 67 | 142 | 117 | 148 | 167 | 151 |
18 | 106 | 68 | 142 | 118 | 148 | 168 | 151 |
19 | 108 | 69 | 142 | 119 | 148 | 169 | 151 |
20 | 110 | 70 | 142 | 120 | 148 | 170 | 151 |
21 | 112 | 71 | 143 | 121 | 148 | 171 | 151 |
22 | 114 | 72 | 143 | 122 | 148 | 172 | 151 |
23 | 116 | 73 | 143 | 123 | 148 | 173 | 151 |
24 | 117 | 74 | 143 | 124 | 149 | 174 | 151 |
25 | 119 | 75 | 143 | 125 | 149 | 175 | 151 |
26 | 120 | 76 | 143 | 126 | 149 | 176 | 151 |
27 | 121 | 77 | 144 | 127 | 149 | 177 | 151 |
28 | 122 | 78 | 144 | 128 | 149 | 178 | 151 |
29 | 123 | 79 | 144 | 129 | 149 | 179 | 151 |
30 | 124 | 80 | 144 | 130 | 149 | 180 | 151 |
31 | 125 | 81 | 144 | 131 | 149 | 181 | 151 |
32 | 126 | 82 | 144 | 132 | 149 | 182 | 151 |
33 | 127 | 83 | 145 | 133 | 149 | 183 | 151 |
34 | 128 | 84 | 145 | 134 | 149 | 184 | 151 |
35 | 129 | 85 | 145 | 135 | 149 | 185 | 151 |
36 | 129 | 86 | 145 | 136 | 149 | 186 | 151 |
37 | 130 | 87 | 145 | 137 | 149 | 187 | 151 |
38 | 131 | 88 | 145 | 138 | 149 | 188 | 151 |
39 | 131 | 89 | 145 | 139 | 149 | 189 | 151 |
40 | 132 | 90 | 146 | 140 | 149 | 190 | 151 |
41 | 133 | 91 | 146 | 141 | 149 | 191 | 151 |
42 | 133 | 92 | 146 | 142 | 150 | 192 | 151 |
43 | 134 | 93 | 146 | 143 | 150 | 193 | 151 |
44 | 134 | 94 | 146 | 144 | 150 | 194 | 151 |
45 | 135 | 95 | 146 | 145 | 150 | 195 | 151 |
46 | 135 | 96 | 146 | 146 | 150 | 196 | 151 |
47 | 136 | 97 | 146 | 147 | 150 | 197 | 152 |
48 | 136 | 98 | 146 | 148 | 150 | 198 | 152 |
49 | 136 | 99 | 147 | 149 | 150 | 199 | 152 |
50 | 137 | 100 | 147 | 150 | 150 | 200 | 152 |
步骤四:在所有频率的条纹图像均获取且处理完成之后,利用公式进行外差相展开,得到结果后存储到RAM中。在公式计算的过程用,由于是关于条纹频率定值,使用FPGA硬件计算时可实现设计为常数,以加快运算速度。上式中的符号说明如下:Φb(x,y)是相位展开前的条纹相位,λ1、λ2是不同周期条纹的周期长度。
步骤五:对于左右相机,以上步骤可以同时处理实现并行计算。得到结果之后,通过事先固化在FPGA中的相机标定结果,对左右相机的相展开结果进行立体匹配与三维复现。由于在左右相机匹配的过程中需要用到相机标定结果,这是在计算过程中不变的。因此可以将其事先固化在FPGA中,以实现实时高速运算。
Claims (1)
1.一种基于FPGA的片上实时高速三维复现方法,其特征在于:该方法包括以下步骤:
步骤一:首先采集某一频率不同相移的条纹图像,依照该条纹图像的图像传输形式在FPGA上对数据进行预处理后存储到RAM中,以备在之后的运算中同时读取一个像素位置不同相移的数据;
步骤二:对于一组同一频率的条纹图像进行背景标记;利用公式4[B(x,y)]2=[g3(x,y)-g1(x,y)]2+[g0(x,y)-g2(x,y)]2与事先在FPGA中设定的阈值BT标记出有效的图像像素位置,如果像素值小于阈值BT,则说明是背景或噪声点,在解相时不予计算这个点;由于背景阈值是事先在FPGA中设计固化的,在比较时节省计算速度;上式中的符号说明如下:gi(x,y)表示第i幅图像在点(x,y)处的灰度值,B(x,y)表示点(x,y)处的背景参量;
步骤三:根据公式 将之前的计算结果在FPGA上进行硬件化的反正切译码,得到相位解算结果;整形化是指由于FPGA处理数据均是整形,因此根据需要的精度将量化成为整数,再通过反正切译码器计算Φ(x,y);反正切译码器是事先在FPGA硬件中固化设计好的组合逻辑电路,在精度要求不变的情况下,相比泰勒级数运算有着速度快、功耗低的特点;
步骤四:在所有频率的条纹图像均获取且处理完成之后,利用公式进行外差相展开,得到结果后存储到RAM中;在公式计算的过程用,由于是关于条纹频率定值,使用FPGA硬件计算时实现设计为常数,以加快运算速度;上式中的符号说明如下:Φb(x,y)是相位展开前的条纹相位,λ1、λ2是不同周期条纹的周期长度;
步骤五:对于左右相机,以上步骤同时处理实现并行计算;得到结果之后,通过事先固化在FPGA中的相机标定结果,对左右相机的相展开结果进行立体匹配与三维复现;由于在左右相机匹配的过程中需要用到相机标定结果,这是在计算过程中不变的;因此将其事先固化在FPGA中,以实现实时高速运算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210397753.1A CN102944192B (zh) | 2012-10-18 | 2012-10-18 | 一种基于fpga的片上实时高速三维复现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210397753.1A CN102944192B (zh) | 2012-10-18 | 2012-10-18 | 一种基于fpga的片上实时高速三维复现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102944192A CN102944192A (zh) | 2013-02-27 |
CN102944192B true CN102944192B (zh) | 2015-08-12 |
Family
ID=47727157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210397753.1A Active CN102944192B (zh) | 2012-10-18 | 2012-10-18 | 一种基于fpga的片上实时高速三维复现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102944192B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110440713A (zh) * | 2019-08-26 | 2019-11-12 | 西南交通大学 | 基于fpga的便携式光栅投影三维测量系统及测量方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694375A (zh) * | 2009-10-23 | 2010-04-14 | 北京航空航天大学 | 一种用于强反射表面三维形貌测量的立体视觉检测方法 |
CN101986098A (zh) * | 2010-09-21 | 2011-03-16 | 东南大学 | 基于三色光栅投影的傅里叶变换三维测量法 |
CN102203551A (zh) * | 2008-10-06 | 2011-09-28 | 曼蒂斯影像有限公司 | 用于提供三维和距离面间判定的方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3936270B2 (ja) * | 2002-10-03 | 2007-06-27 | 株式会社山武 | 3次元計測装置及び3次元計測方法 |
-
2012
- 2012-10-18 CN CN201210397753.1A patent/CN102944192B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102203551A (zh) * | 2008-10-06 | 2011-09-28 | 曼蒂斯影像有限公司 | 用于提供三维和距离面间判定的方法和系统 |
CN101694375A (zh) * | 2009-10-23 | 2010-04-14 | 北京航空航天大学 | 一种用于强反射表面三维形貌测量的立体视觉检测方法 |
CN101986098A (zh) * | 2010-09-21 | 2011-03-16 | 东南大学 | 基于三色光栅投影的傅里叶变换三维测量法 |
Also Published As
Publication number | Publication date |
---|---|
CN102944192A (zh) | 2013-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101475382B1 (ko) | 광학적 3차원 측량의 자기 적응 윈도우 푸리에 위상추출방법 | |
CN107301648B (zh) | 基于重叠区域边界角度的冗余点云去除方法 | |
CN104392488A (zh) | 针对激光扫描仪与三坐标测量臂的点云数据自动配准方法 | |
CN108061529A (zh) | 基于干涉图像自相关值曲率特征的表面粗糙度测量方法 | |
CN104330052A (zh) | 外差式三频不等步相移解相位方法 | |
CN109141291A (zh) | 一种快速相位解包裹算法 | |
CN108332685B (zh) | 一种编码结构光三维测量方法 | |
CN103149348B (zh) | 基于小波多尺度分析的先进陶瓷磨削表面损伤的评价方法 | |
CN106032976A (zh) | 基于波长选择的三条纹投影相位展开方法 | |
CN105069789A (zh) | 基于编码网格模板的结构光动态场景深度获取方法 | |
CN103236043B (zh) | 一种植物器官点云修复方法 | |
CN103942837A (zh) | 基于序列线性规划的叶片点云模型截面曲线直接构造方法 | |
CN102944192B (zh) | 一种基于fpga的片上实时高速三维复现方法 | |
CN105627935A (zh) | 产品料厚三维分析系统及方法 | |
CN105588518B (zh) | 基于双角度多频率条纹投影的三维形貌获取方法及装置 | |
CN103490830B (zh) | 基于物联网电力测温设备的去噪声射频频谱峰值获取方法 | |
CN105115441A (zh) | 一种回转体零件廓形的特征点提取及自动分段方法 | |
CN103697834A (zh) | 实时光学三维测量中动态场景无效点的自动识别与排除方法 | |
CN103020907B (zh) | 基于二维集合经验模态分解的dspi条纹滤波系统 | |
CN110823106B (zh) | 一种基于激光连续波调制原理的平板玻璃质量检测方法 | |
CN102768025B (zh) | 一种物体各点独立测量的多步变频率投影条纹测量方法 | |
Zhang et al. | Determination of edge correspondence using color codes for one-shot shape acquisition | |
CN114152203B (zh) | 基于相位编码结构光的轴承内外径尺寸测量方法 | |
CN105467383A (zh) | 一种tof技术中基于波形匹配的测距方法 | |
CN113340215B (zh) | 基于平行约束的平面间断差在线测量方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |