System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及结构光重建,具体涉及一种三维点云过滤方法及电子设备。
技术介绍
1、随着三维扫描技术的快速发展,基于结构光的三维重建方法在众多领域得到了广泛的应用。基于结构光的三维重建方法通过投射结构光(一般是光平面阵列)到待测物体上,并通过双目系统从不同角度获取投射在待测物体上的结构光的图像进行处理,得到待测物体的三维点云,从而根据待测物体的三维点云重建出待测物体的三维模型。在实际应用中,由于环境光干扰和被测物体表面散射等因素,获取的结构光的图像中常常存在异常的光斑,这些异常光斑会导致得到的三维点云中存在异常点。
2、因此,在现有技术中,通常会在图像处理层面对获取的结构光的图像进行处理。一般的处理方法往往依赖于图像处理层面的算法,例如阈值分割、形态学操作和光流法等,以识别并去除那些不符合预期结构光图案的光斑。这些方法在一定程度上能够减少异常光斑对三维点云的影响,进而减少三维点云中的异常点。
3、然而,由于环境光的动态变化和物体表面复杂的散射特性,异常光斑的形态和分布往往难以被精确预测和完全过滤,还是会导致得到的三维点云中存在一些异常点。
技术实现思路
1、针对现有技术存在的不足,本申请提供了一种三维点云过滤方法及电子设备,通过根据每个光平面的光平面表达式对对应的待过滤的三维点云中的点进行过滤,得到过滤后的三维点云,能够根据成像的几何原理准确地过滤掉三维点云中的异常点。
2、为解决上述问题,本专利技术提供如下技术方案:
3、第一方面,本
4、通过双目系统获取光平面阵列发射器投射的光平面阵列的第一图像;
5、基于所述第一图像计算得到所述光平面阵列中的每个所述光平面对应的光平面表达式;
6、控制所述光平面阵列发射器向待测物体投射所述光平面阵列,通过所述双目系统获取投射在所述待测物体上的光平面阵列的第二图像;
7、根据所述第二图像获取待过滤的三维点云,其中,所述待过滤的三维点云中的每个点对应一个所述光平面;
8、根据每个所述光平面的光平面表达式对对应的所述待过滤的三维点云中的点进行过滤,得到过滤后的三维点云。
9、在一些实施方式中,所述基于所述第一图像计算得到所述光平面阵列中的每个所述光平面对应的光平面表达式,包括:
10、识别所述第一图像中的多个条纹中心;
11、识别所述第一图像中的每个所述条纹中心的条纹特征,其中,每个所述条纹中心代表一个光平面;
12、根据每个所述条纹中心的条纹特征确定每个所述条纹中心对应的光平面的编码;
13、根据多个所述光平面的编码和所述第一图像计算得到每个所述光平面的拟合点集;
14、基于每个所述光平面的拟合点集对每个所述光平面进行平面拟合,得到每个所述光平面对应的光平面表达式。
15、在一些实施方式中,所述识别所述第一图像中的多个条纹中心,包括:
16、逐一遍历所述第一图像中的像素点,当所述像素点的亮度值大于预设亮度阈值,将所述像素点确定为属于光条纹的像素点,当所述像素点的亮度值不大于所述预设亮度阈值,将所述像素点确定为不属于所述光条纹的像素点;
17、基于所有所述属于光条纹的像素点和所述不属于光条纹的像素点确定多条光条纹的区域;
18、根据每条所述光条纹的区域中的所有像素点的亮度值和坐标得到每条所述光条纹的条纹中心,得到所述多个条纹中心。
19、在一些实施方式中,所述多个条纹中心代表的多个光平面的颜色满足预设规则,每个所述条纹中心的颜色与相邻的所述条纹中心的颜色不同,所述根据每个所述条纹中心的条纹特征确定每个所述条纹中心对应的光平面的编码,包括:
20、根据所述预设规则、所述多个条纹中心的颜色和每个所述条纹中心在所述第一图像中的位置确定每个所述条纹中心对应的光平面的编码,得到多个所述光平面的编码。
21、在一些实施方式中,所述第一图像包括用所述双目系统中的第一相机获取的第一子图像和用所述双目系统中的第二相机获取的第二子图像,所述根据多个所述光平面的编码和所述第一图像计算得到每个所述光平面的拟合点集,包括:
22、获取极线方程和所述极线方程中的基础矩阵;
23、逐一遍历在所述第一子图像中的每个所述条纹中心,根据在所述第一子图像中的当前所述条纹中心中的每个第一像素点的坐标、所述极线方程和所述基础矩阵计算得到在所述第二子图像中的与每个所述第一像素点匹配的第二像素点的坐标;
24、根据所述第一相机的光心在空间中的坐标、每个所述第一像素点在空间中的坐标、所述第二相机的光心在空间中的坐标、与每个所述第一像素点匹配的第二像素点在空间中的坐标确定当前所述条纹中心对应的光平面的拟合点集中的每个拟合点在空间中的坐标,得到当前所述条纹中心对应的光平面的拟合点集;
25、当遍历完在所述第一图像中的所有所述条纹中心,得到每个所述光平面的拟合点集。
26、在一些实施方式中,所述基于每个所述光平面的拟合点集对每个所述光平面进行平面拟合,得到每个所述光平面对应的光平面表达式,包括:
27、逐一遍历每个所述光平面的拟合点集,令n=1,从当前所述光平面的拟合点集中随机选取预设数量的多个拟合点作为多个样本点,其中,n为正整数;
28、根据所述多个样本点进行平面拟合,得到第一平面对应的光平面表达式;
29、计算当前所述光平面的拟合点集中的每个拟合点到所述第一平面的第一距离;
30、当所述第一距离大于第一预设阈值时,确定所述拟合点为在所述第一平面上的点,将所述拟合点加入第一点集;
31、判断n是否大于第二预设阈值,若n不大于所述第二预设阈值,令n=n+1,返回执行步骤从当前所述光平面的拟合点集中随机选取预设数量的多个拟合点作为多个样本点;
32、若n大于所述第二预设阈值,得到多个所述第一平面和多个所述第一平面的第一点集;
33、将多个所述第一点集中点的数量最多的所述第一点集作为目标点集;
34、根据所述目标点集中的所有点进行平面拟合,得到当前所述光平面对应的光平面表达式;
35、当遍历完每个所述光平面的拟合点集,得到每个所述光平面对应的光平面表达式。
36、在一些实施方式中,所述根据所述目标点集中的所有点进行平面拟合,得到当前所述光平面对应的光平面表达式,包括:
37、将所述目标点集中的所有点的平均坐标点作为当前所述光平面的初始计算点;
38、根据所述目标点集中的所有点计算得到当前所述光平面的初始法向量;
39、根据所述目标点集中的所有点、当前所述光平面的初始计算点和当前所述光平面的初始法向量构造代价函数;
40、计算得到使所述代价函数的值最小的当前所述光平面的优化计算点和优化法向量;
41、根据当本文档来自技高网...
【技术保护点】
1.一种三维点云过滤方法,其特征在于,包括:
2.根据权利要求1所述的三维点云过滤方法,其特征在于,所述基于所述第一图像计算得到所述光平面阵列中的每个所述光平面对应的光平面表达式,包括:
3.根据权利要求2所述的三维点云过滤方法,其特征在于,所述识别所述第一图像中的多个条纹中心,包括:
4.根据权利要求2所述的三维点云过滤方法,其特征在于,所述多个条纹中心代表的多个光平面的颜色满足预设规则,每个所述条纹中心的颜色与相邻的所述条纹中心的颜色不同,所述根据每个所述条纹中心的条纹特征确定每个所述条纹中心对应的光平面的编码,包括:
5.根据权利要求2所述的三维点云过滤方法,其特征在于,所述第一图像包括用所述双目系统中的第一相机获取的第一子图像和用所述双目系统中的第二相机获取的第二子图像,所述根据多个所述光平面的编码和所述第一图像计算得到每个所述光平面的拟合点集,包括:
6.根据权利要求2所述的三维点云过滤方法,其特征在于,所述基于每个所述光平面的拟合点集对每个所述光平面进行平面拟合,得到每个所述光平面对应的光平面表达式,包括:<
...【技术特征摘要】
1.一种三维点云过滤方法,其特征在于,包括:
2.根据权利要求1所述的三维点云过滤方法,其特征在于,所述基于所述第一图像计算得到所述光平面阵列中的每个所述光平面对应的光平面表达式,包括:
3.根据权利要求2所述的三维点云过滤方法,其特征在于,所述识别所述第一图像中的多个条纹中心,包括:
4.根据权利要求2所述的三维点云过滤方法,其特征在于,所述多个条纹中心代表的多个光平面的颜色满足预设规则,每个所述条纹中心的颜色与相邻的所述条纹中心的颜色不同,所述根据每个所述条纹中心的条纹特征确定每个所述条纹中心对应的光平面的编码,包括:
5.根据权利要求2所述的三维点云过滤方法,其特征在于,所述第一图像包括用所述双目系统中的第一相机获取的第一子图像和用所述双目系统中的第二相机获取的第二子图像,所述根据多个所述光平面的编码...
【专利技术属性】
技术研发人员:吴刚,祝敏航,陈冬灵,
申请(专利权)人:杭州云甲数字技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。