结构光三维测量(数字光栅投影)
结构光三维测量系统
目前对于三维视觉来说,有很多种技术,例如双目/多目视觉法、TOF法、散斑法、结构光等等,不同的方法有着各自不同的应用场景和范围。对于工业的产品测量、识别,检测来说,结构光方法是目前比较主流的方法。结构光方法拥有高精度、高密集点云、高速的优点,适用于三维重建、缺陷检测、智能抓取、人脸识别、视觉导航等一系列工作。
结构光主要分为点、线、面三类测量结构,本博客主要从面结构光(数字光栅投影测量)阐述其测量原理和重建效果,面结构光主要投影光栅图像到测量物体表面,然后光栅经过物体面型调制之后被相机采集,通过一系列解相位,然后经过系统标定好的参数,将相位转换为三维点云。
单目测量系统
单目测量系统,就是一个相机+一个投影仪的测量结构,该方法需要对投影仪进行标定,首先对光栅进行投影,然后求解相位信息,再把相位转换到三维点云。对于求解相位信息有很多种成熟的方法:例如(1)格雷码方法(2)多频外差方法(3)倍频法(4)phase-coding法等等。将相位转化为三维点云也有很多经典的方法,例如(1)相位差法(2)东南大学达飞鹏老师的8参数方法(3)反向相机方法。后两种方法最为灵活,应用相对也更为广泛,下面会具体进行描述。下图改自南理工左老师的论文图。
双目测量系统
双目测量系统,就是双目相机+一个投影仪的测量系统,该方法主要利用相位信息进行双目匹配,然后实现三维重建。该方法的好处就是对投影仪无需进行标定,且现有双目测量有很多优秀的库函数可以调用,例如Opencv中包含很多标定、匹配、畸变校正、立体校正的代码。
单目系统测量实例
下面结合具体的测量实例进行详细介绍,包含光栅生成,相位解包,和三维点云转换。
光栅生成
本次我们采用四步相移+格雷码的方法进行物体测量,四步相移为了求解包裹相位,但是包裹相位是一个一对多的映射函数,因此需要利用格雷码将包裹相位展开,求取一个一对一映射函数的绝对相位。四步相移的光栅的形式如下:
I
1
(
x
,
y
)
I_1(x,y)
I1(x,y) =
a
(
x
,
y
)
a(x,y)
a(x,y) +
b
(
x
,
y
)
b(x,y)
b(x,y)cos[
ϕ
(
x
,
y
)
\phi(x,y)
ϕ(x,y)]
I
2
(
x
,
y
)
I_2(x,y)
I2(x,y) =
a
(
x
,
y
)
a(x,y)
a(x,y) +
b
(
x
,
y
)
b(x,y)
b(x,y)cos[
ϕ
(
x
,
y
)
\phi(x,y)
ϕ(x,y)-
π
/
2
\pi/2
π/2]
I
3
(
x
,
y
)
I_3(x,y)
I3(x,y) =
a
(
x
,
y
)
a(x,y)
a(x,y) +
b
(
x
,
y
)
b(x,y)
b(x,y)cos[
ϕ
(
x
,
y
\phi(x,y
ϕ(x,y)-
π
\pi
π]
I
4
(
x
,
y
)
I_4(x,y)
I4(x,y) =
a
(
x
,
y
)
a(x,y)
a(x,y) +
b
(
x
,
y
)
b(x,y)
b(x,y)cos[
ϕ
(
x
,
y
)
\phi(x,y)
ϕ(x,y)-3
π
/
2
\pi/2
π/2]
利用四步相位我们可以求解包裹相位,
ϕ
(
x
,
y
)
\phi(x,y)
ϕ(x,y) = atan2[
I
1
(
x
,
y
)
I_1(x,y)
I1(x,y)-
I
3
(
x
,
y
)
I_3(x,y)
I3(x,y),
I
2
(
x
,
y
)
I_2(x,y)
I2(x,y)-
I
4
(
x
,
y
)
I_4(x,y)
I4(x,y)]
其中atan2[]是一个四象限反正切函数,于是我们就得到了包裹相位,其具体形式如下图所示,
可以看出x与y是一个一对多的函数,我们需要进行展开,此时我们需要一个条纹阶次
k
(
x
,
y
)
k(x,y)
k(x,y),然后通过下面的公式,完成相位展开
Φ
(
x
,
y
)
\Phi(x,y)
Φ(x,y) =
ϕ
(
x
,
y
)
\phi(x,y)
ϕ(x,y) + 2
π
×
k
(
x
,
y
)
\pi\times k(x,y)
π×k(x,y)
其展开的过程如下图所示,格雷码的作用就是为了求解这个条纹阶次
k
(
x
,
y
)
k(x,y)
k(x,y)。
格雷码是由0或1的码字构成的,因此每张格雷码可以区分出两个周期的阶次
k
(
x
,
y
)
k(x,y)
k(x,y),因此为了获取求解更多的阶次信息,更多的格雷码就需要,格雷码的数量n与阶次的关系为
2
n
2^n
2n。例如如下图的方式是三张格雷码光栅,第一个阶次的格雷码字为000,第二个为100,以此类推各个周期的格雷码都不相同,因此可以确定出8个阶次,结合包裹相位于是这样我们就可以得到绝对相位信息。
三维点云重建
本博客采用反向相机法将相位信息转化为三维点云,首先对圆形标定板进行了重建,其效果如下图所示,
利用50w分辨率相机对瓶盖进行三维重建,其纹理信息清晰可见
然后采用500w高分辨率相机对雕像进行三维重建,
如需了解更多,交流合作可以联系QQ:1091454117。