一种适用于水面环境的点云数据投影方法、系统及装置

文档序号:29306882发布日期:2022-03-19 18:16阅读:197来源:国知局
一种适用于水面环境的点云数据投影方法、系统及装置

1.本发明涉及图像处理领域,特别涉及一种适用于水面环境的投影方法。


背景技术:

2.近年来,利用三维点云数据进行目标检测与识别的方法获得了长足发展,以pointnet、pointnet++为代表的点云特征提取神经网络以及以pointfusion、am3d为代表的点云数据与图像数据特征融合网络相继被提出,然而,在经典的数据融合算法中,将三维点云投影为点云鸟瞰图或点云前视图的方法会损失一部分点云信息。直接使用点云原始数据进行目标检测与分类的神经网络结构又难以融合三维点云数据与rgb图像数据。
3.并且由于海洋环境的复杂性,水面无人艇经常需要在上浪、逆光、复杂背景等恶劣条件下进行作业,这些情况下仅依赖光学信息的目标识别算法的准确性往往得不到保证。而适用于水面无人艇的三维点云数据投影方法的研究还未完善,为水面无人艇的多传感器数据融合算法的研究带来了困难。


技术实现要素:

4.本发明解决了水面无人艇三维点云投影损失一部分点云信息和直接融合三维点云数据与rgb图像数据困难的问题。
5.本发明提供的一种适用于水面环境的点云数据投影方法,包括:
6.处理点云数据,将点云数据转换为二值化栅格数据,利用二次扫描法处理点云数据的二值化栅格,形成水面三维点云滤波与水面三维点云簇;
7.根据张正友标定法投影处理水面三维点云簇,获得点云强度投影矩阵;
8.根据高斯滤波平滑处理点云强度投影矩阵的反射率强度异常点,获得平滑无孔洞的点云数据投影矩阵;
9.根据多传感器数据融合点云数据投影矩阵,获取点云距离投影矩阵;
10.根据水面三维点云簇的高度值作为水面目标尺寸的典型特征,根据点云簇的高度值投影至二维矩阵中,获取点云尺寸投影矩阵;
11.根据点云数据投影矩阵、点云距离投影矩阵和点云尺寸投影矩阵进行矩阵叠加,获取经典图像处理神经网络中的点云特征矩阵。
12.所述利用二次扫描法处理点云数据的二值化栅格,形成水面三维点云滤波与水面三维点云簇,包括:
13.扫描图像至当前像素(x,y)==1;
14.判断当前像素(x,y)==1是否含有云像素:
15.若含有云像素,建立含有云像素的数据栈;
16.若不含有云像素,返回扫描图像至当前像素(x,y)==1,重新判断,直到当前像素(x,y)==1含有云像素;
17.判断含有云像素的数据栈是否为空:
18.若含有云像素的数据栈为空,输出点云簇信息;
19.若含有云像素的数据栈不为空,弹出栈顶像素,并将含有该云像素的数据领域中含点云像素压入栈。
20.所述根据张正友标定法激光投影处理水面三维点云簇,获得点云强度投影矩阵,具体为:
21.p
uv
=k*ry*rz*(p
lidar
+t),
22.其中,p
uv
表示目标点在图像中的像素坐标;k表示相机内参矩阵,由标定获取k;ry,rz表示旋转矩阵;t表示激光雷达设备原点至相机设备原点的平移矩阵。
23.所述根据高斯滤波平滑处理激光投影的点云强度投影矩阵反射率强度异常点,获得平滑无孔洞的点云数据投影矩阵,包括:
24.激光投影处理的点云强度投影矩阵为:
[0025][0026]
其中,p
(u,v)
表示点云强度投影矩阵在(u,v)处的强度值;n表示点云强度投影矩阵在(u,v)处对应的三维点云个数;pi表示三维点云强度值;
[0027]
根据高斯滤波对点云强度投影矩阵进行平滑去噪处理:
[0028][0029]
其中,(x,y)为相对待平滑点的像素坐标,σ为高斯分布的标准差;
[0030]
根据高斯滤波平滑去噪处理的点云强度投影矩阵进行膨胀腐蚀运算,膨胀填充的像素值取值为像素点8邻域内非零像素的强度均值,具体为:
[0031][0032]
其中,p
(u,v)
为点云强度投影矩阵在(u,v)处的强度值;n为点(u,v)8邻域中非零点的个数;p
(i,j)
为点(u,v)8邻域的点云强度值。
[0033]
所述腐蚀与膨胀运算具体为:
[0034]
膨胀:
[0035]
腐蚀:
[0036]
其中,a为待处理的原始二维矩阵,b为卷积模板。
[0037]
所述根据多传感器数据融合点云数据投影矩阵,获取点云距离投影矩阵,包括:
[0038]
处理点云原始数据深度信息:
[0039][0040][0041]
其中,xi,yi,zi为原始点云i点在可见光相机随体坐标系下的坐标;di为原始点云i点距可见光相机随体坐标系原点的距离;n为点云距离投影矩阵在(u,v)处对应的三维点云的个数;d
(u,v)
点云距离投影矩阵在(u,v)处的值;
[0042]
采用高斯滤波与闭运算相结合的数据处理方式,对点云距离投影矩阵进行平滑处理,将大于255的值置为255,获取输入神经网络中的矩阵。
[0043]
本发明提供一种适用于水面环境的点云数据投影系统,所述点云数据投影系统包括:
[0044]
云数据处理单元,用于处理点云数据,将点云数据转换为二值化栅格数据,利用二次扫描法处理点云数据的二值化栅格,形成水面三维点云滤波与水面三维点云簇;
[0045]
点云强度投影矩阵获得单元,用于根据张正友标定法投影处理水面三维点云簇,获得点云强度投影矩阵;
[0046]
点云数据投影矩阵获得单元,用于根据高斯滤波平滑处理点云强度投影矩阵的反射率强度异常点,获得平滑无孔洞的点云数据投影矩阵;
[0047]
点云距离投影矩阵获得单元,用于根据多传感器数据融合点云数据投影矩阵,获取点云距离投影矩阵;
[0048]
点云尺寸投影矩阵获得单元,用于根据水面三维点云簇的高度值作为水面目标尺寸的典型特征,根据点云簇的高度值投影至二维矩阵中,获取点云尺寸投影矩阵;
[0049]
点云特征矩阵获得单元,用于根据点云数据投影矩阵、点云距离投影矩阵和点云尺寸投影矩阵进行矩阵叠加,获取经典图像处理神经网络中的点云特征矩阵。
[0050]
所述云数据处理单元包括下述子单元:
[0051]
扫描子单元,用于扫描图像至当前像素(x,y)==1;
[0052]
云像素判断子单元,用于判断当前像素(x,y)==1是否含有云像素:
[0053]
若含有云像素,建立含有云像素的数据栈;
[0054]
若不含有云像素,返回扫描图像至当前像素(x,y)==1,重新判断,直到当前像素(x,y)==1含有云像素;
[0055]
数据栈判断子单元,用于判断含有云像素的数据栈是否为空:
[0056]
若含有云像素的数据栈为空,输出点云簇信息;
[0057]
若含有云像素的数据栈不为空,弹出栈顶像素,并将含有该云像素的数据领域中含点云像素压入栈。
[0058]
本发明提供一种计算机可读存储介质,所述计算机可读存储介质用于储存计算机程序,所述计算机程序执行如上述步骤任一项所述的一种适用于水面环境的点云数据投影方法。
[0059]
本发明提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行上述步骤任一项中所述的一种适用于水面环境的点云数据投影方法。
[0060]
本发明的有益效果在于:
[0061]
(1)本发明通过将三维水面点云投影至二维图像像素坐标上,形成可以直接输入到经典图像处理神经网络中的点云特征矩阵的方法,避免了水面无人艇三维点云投影损失一部分点云信息的问题。
[0062]
(2)本发明充分利用水面点云的特征,对点云进行滤波、分簇、点云簇尺度提取、点云投影等操作,充分保留水面三维点云底层特征与抽象特征,形成可以直接输入至经典图像处理神经网络中的特征矩阵,充分融合了三维点云数据与rgb图像数据。且由于水体具有
吸收激光束能量的特性,水面点云数据与陆地点云数据相比,具有稀疏性更强、数据量较小、多以点云簇的形式存在的特点。因此水面无人艇使用点云数据过程中需要处理的数据量更小、点云分簇算法更易实现且效果更稳定。这就为水面无人艇进行水面目标识别的方法提供了有利条件。
[0063]
(3)本发明提供的是将三维水面点云投影至二维图像像素坐标上,形成可以直接输入到经典图像处理神经网络中的点云特征矩阵的方法,用于满足水面无人艇目标识别过程中多传感器数据融合的需求,提升水面无人艇目标检测与识别。
[0064]
本发明适用于智能无人船舶领域中。
附图说明
[0065]
图1为二次扫描法提取点云簇流程图;
[0066]
图2为本发明实施例所述的水面环境验证场景图;
[0067]
图3为本发明实施例所述的目标艇点云强度投影矩阵可视化;
[0068]
图4为本发明实施例所述的目标艇点云距离投影矩阵可视化;
[0069]
图5为本发明实施例所述的目标艇点云尺寸投影矩阵可视化。
具体实施方式
[0070]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。
[0071]
实施例一、本实施例所述的一种适用于水面环境的点云数据投影方法,包括:
[0072]
处理点云数据,将点云数据转换为二值化栅格数据,利用二次扫描法处理点云数据的二值化栅格,形成水面三维点云滤波与水面三维点云簇;
[0073]
根据张正友标定法投影处理水面三维点云簇,获得点云强度投影矩阵;
[0074]
根据高斯滤波平滑处理点云强度投影矩阵的反射率强度异常点,获得平滑无孔洞的点云数据投影矩阵;
[0075]
根据多传感器数据融合点云数据投影矩阵,获取点云距离投影矩阵;
[0076]
根据水面三维点云簇的高度值作为水面目标尺寸的典型特征,根据点云簇的高度值投影至二维矩阵中,获取点云尺寸投影矩阵;
[0077]
根据点云数据投影矩阵、点云距离投影矩阵和点云尺寸投影矩阵进行矩阵叠加,获取经典图像处理神经网络中的点云特征矩阵。
[0078]
本实施例中处理点云数据转变为二值化栅格达成水面三维点云滤波与分簇的目标,采用张正友标定法进行点云投影,采用高斯滤波与膨胀腐蚀相结合的方法进行数据平滑,更适用于水面目标检测任务的特定场景,水面三维点云数据特征损失极少、实时性高的优点。
[0079]
实施例二、参见图1和图2说明本实施例。本实施例是对实施例一所述的一种适用于水面环境的点云数据投影方法的进一步限定,所述利用二次扫描法处理点云数据的二值化栅格,形成水面三维点云滤波与水面三维点云簇,包括:
[0080]
扫描图像至当前像素(x,y)==1;
[0081]
判断当前像素(x,y)==1是否含有云像素:
[0082]
若含有云像素,建立含有云像素的数据栈;
[0083]
若不含有云像素,返回扫描图像至当前像素(x,y)==1,重新判断,直到当前像素(x,y)==1含有云像素;
[0084]
判断含有云像素的数据栈是否为空:
[0085]
若含有云像素的数据栈为空,输出点云簇信息;
[0086]
若含有云像素的数据栈不为空,弹出栈顶像素,并将含有该云像素的数据领域中含点云像素压入栈。
[0087]
本实施例中,采用二次扫描法应用于点云数据的二值化栅格,实现水面散乱干扰噪点的移除与点云分簇的功能,同时,二次扫描法只需要遍历一遍点云数据与二次扫描处理后的二维矩阵,对设备的算力要求极低,能够满足在小型化设备中实时处理激光雷达点云原始数据的要求。
[0088]
实施例三、参见图3说明本实施例。本实施例是对实施例一所述的一种适用于水面环境的点云数据投影方法的进一步限定,所述根据张正友标定法激光投影处理水面三维点云簇,获得点云强度投影矩阵,具体为:
[0089]
p
uv
=k*ry*rz*(p
lidar
+t),
[0090]
其中,p
uv
表示目标点在图像中的像素坐标;k表示相机内参矩阵,由标定获取k;ry,rz表示旋转矩阵;t表示激光雷达设备原点至相机设备原点的平移矩阵。
[0091]
本实施例中,通过上述计算,可实时获取初步匹配的视频数据流与点云数据流。
[0092]
实施例四、本实施例是对实施例一所述的一种适用于水面环境的点云数据投影方法的进一步限定,所述根据高斯滤波平滑处理激光投影的点云强度投影矩阵反射率强度异常点,获得平滑无孔洞的点云数据投影矩阵,包括:
[0093]
激光投影处理的点云强度投影矩阵为:
[0094][0095]
其中,p
(u,v)
表示点云强度投影矩阵在(u,v)处的强度值;n表示点云强度投影矩阵在(u,v)处对应的三维点云个数;pi表示三维点云强度值;
[0096]
根据高斯滤波对点云强度投影矩阵进行平滑去噪处理:
[0097][0098]
其中,(x,y)为相对待平滑点的像素坐标,σ为高斯分布的标准差;
[0099]
在项目实际应用过程中,为了简化运算步骤,加快运算速度,将滤波核取近似值模板当rgb图像的像素分辨率大于等于1600*900时,选用5*5的滤波核如下
[0100][0101]
当rgb图像的像素分辨率小于1600*900时,选用3*3的滤波核如下
[0102][0103]
根据高斯滤波平滑去噪处理的点云强度投影矩阵进行膨胀腐蚀运算,膨胀填充的像素值取值为像素点8邻域内非零像素的强度均值,具体为:
[0104][0105]
其中,p
(u,v)
为点云强度投影矩阵在(u,v)处的强度值;n为点(u,v)8邻域中非零点的个数;p
(i,j)
为点(u,v)8邻域的点云强度值。
[0106]
本实施例中,经过投影、高斯滤波、膨胀与腐蚀组成的闭运算处理以后,即可得到平滑无孔洞的点云强度投影矩阵,该矩阵可作为点云特征提取神经网络输入数据中的一层,该层数据代表了待检测目标的材质信息。
[0107]
实施例五、本实施例是对实施例四所述的一种适用于水面环境的点云数据投影方法的进一步限定,所述膨胀与腐蚀运算具体为:
[0108]
膨胀:
[0109]
腐蚀:
[0110]
其中,a为待处理的原始二维矩阵,b为卷积模板。
[0111]
本实施例中,通过膨胀与腐蚀运算来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。
[0112]
实施例六、参见图4说明本实施例。本实施例是对实施例四所述的一种适用于水面环境的点云数据投影方法的进一步限定,所述根据多传感器数据融合点云数据投影矩阵,获取点云距离投影矩阵,包括:
[0113]
处理点云原始数据深度信息:
[0114]
[0115][0116]
其中,xi,yi,zi为原始点云i点在可见光相机随体坐标系下的坐标;di为原始点云i点距可见光相机随体坐标系原点的距离;n为点云距离投影矩阵在(u,v)处对应的三维点云的个数;d
(u,v)
点云距离投影矩阵在(u,v)处的值;
[0117]
采用高斯滤波与闭运算相结合的数据处理方式,对点云距离投影矩阵进行平滑处理,将大于255的值置为255,获取输入神经网络中的矩阵。
[0118]
实施例七、参见图5说明本实施例。本实施例是对实施例四所述的一种适用于水面环境的点云数据投影方法的进一步限定,所述根据水面三维点云簇的高度值作为水面目标尺寸的典型特征,根据点云簇的高度值投影至二维矩阵中,获取点云尺寸投影矩阵;由于经过分簇与尺寸计算的点云高度值不存在高斯噪声的影响,因此该矩阵不需要进行滤波平滑操作,只需要进行先膨胀后腐蚀的闭运算。此外,由于绝大部分水面典型目标的高度均低于20米,因此,对投影与闭运算后的点云尺寸投影矩阵做20倍乘算,高于255的值记为255,使得点云尺寸投影矩阵的值也在0-255之间均匀分布。
[0119]
实施例八、一种基于数据驱动的无人飞行器传感器故障检测系统,所述点云数据投影系统包括:
[0120]
云数据处理单元,用于处理点云数据,将点云数据转换为二值化栅格数据,利用二次扫描法处理点云数据的二值化栅格,形成水面三维点云滤波与水面三维点云簇;
[0121]
点云强度投影矩阵获得单元,用于根据张正友标定法投影处理水面三维点云簇,获得点云强度投影矩阵;
[0122]
点云数据投影矩阵获得单元,用于根据高斯滤波平滑处理点云强度投影矩阵的反射率强度异常点,获得平滑无孔洞的点云数据投影矩阵;
[0123]
点云距离投影矩阵获得单元,用于根据多传感器数据融合点云数据投影矩阵,获取点云距离投影矩阵;
[0124]
点云尺寸投影矩阵获得单元,用于根据水面三维点云簇的高度值作为水面目标尺寸的典型特征,根据点云簇的高度值投影至二维矩阵中,获取点云尺寸投影矩阵;
[0125]
点云特征矩阵获得单元,用于根据点云数据投影矩阵、点云距离投影矩阵和点云尺寸投影矩阵进行矩阵叠加,获取经典图像处理神经网络中的点云特征矩阵。
[0126]
实施例九、本实施例是对实施例八所述的一种适用于水面环境的点云数据投影系统的进一步限定,云数据处理单元包括下述子单元:
[0127]
扫描子单元,用于扫描图像至当前像素(x,y)==1;
[0128]
云像素判断子单元,用于判断当前像素(x,y)==1是否含有云像素:
[0129]
若含有云像素,建立含有云像素的数据栈;
[0130]
若不含有云像素,返回扫描图像至当前像素(x,y)==1,重新判断,直到当前像素(x,y)==1含有云像素;
[0131]
数据栈判断子单元,用于判断含有云像素的数据栈是否为空:
[0132]
若含有云像素的数据栈为空,输出点云簇信息;
[0133]
若含有云像素的数据栈不为空,弹出栈顶像素,并将含有该云像素的数据领域中含点云像素压入栈。
[0134]
实施例十、一种计算机可读存储介质,所述计算机可读存储介质用于储存计算机程序,所述计算机程序执行如上述步骤任一项所述的一种适用于水面环境的点云数据投影方法。
[0135]
实施例十一、一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行上述步骤任一项中所述的一种适用于水面环境的点云数据投影方法。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1