本公开涉及但不限于计算机领域,尤其涉及一种托盘的识别方法及装置、计算机设备、存储介质。
背景技术:
1、随着物流技术的蓬勃发展,托盘载物运输技术在智能仓储、物流运输等领域中发挥着越来越重要的作用,而托盘载物运输技术的核心是托盘的检测与识别。因此,如何在工业场景中实现托盘的智能识别备受关注。
2、相关技术中,需要对大量数据进行场景训练才能实现托盘识别,对托盘识别设备的计算能力、硬件资源均有较高要求,导致托盘识别设备的量产成本高。
技术实现思路
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、基于所述第二点云数据进行边缘拟合,确定所述托盘的轮廓信息;
28、基于所述托盘的轮廓信息,确定所述托盘的中心点信息;
29、对所述第二点云数据进行平面拟合,确定所述托盘的第二拟合平面;
30、基于所述第二拟合平面,确定所述托盘与所述深度相机之间的角度信息。
31、第二方面,本公开实施例提供一种托盘识别装置,所述装置包括:
32、获取模块,用于基于深度相机获取包含所述托盘的第一点云数据;
33、确定模块,用于基于所述第一点云数据进行梯度计算,确定所述第一点云数据中属于所述托盘在目标平面的第二点云数据;其中,所述目标平面为所述托盘朝向所述深度相机的平面;
34、定位模块,用于基于所述第二点云数据,对所述托盘进行定位。
35、在一些实施例中,所述确定模块,还用于将所述第一点云数据中目标方向的距离做平面映射,得到第一平面图像;其中,所述目标方向为表征所述托盘和所述深度相机之间距离的方向;对所述第一平面图像中各像素点进行梯度计算,得到各所述像素点的梯度计算结果;基于所述梯度计算结果,确定所述第一点云数据中所述托盘在所述目标平面的候选区对应的第三点云数据;基于所述第三点云数据进行拟合,确定所述目标平面上属于所述托盘的所述第二点云数据。
36、在一些实施例中,所述确定模块,还用于基于各所述像素点的梯度值,确定所述梯度值小于预设梯度阈值的目标像素点;基于所述第一平面图像中的所述目标像素点,确定所述第一点云数据中属于所述托盘的候选区域的第三点云数据。
37、在一些实施例中,所述确定模块,还用于对所述第一平面图像中的所述目标像素点进行直方图统计,得到直方图统计结果;将所述直方统计结果中占比最大的距离,确定为所述托盘与所述深度相机之间的间距值;将所述第一点云数据中,目标方向的距离与所述间距值之间的差异在预设差异范围内的点,确定为所述第三点云数据。
38、在一些实施例中,所述确定模块,还用于基于所述第三点云数据进行边缘拟合,确定所述第三点云数据中属于所述托盘在目标平面上拟合边缘范围内的第四点云数据;对所述第四点云数据进行平面拟合,确定所述目标平面上属于所述托盘的所述第二点云数据。
39、在一些实施例中,所述确定模块,还用于将所述第三点云数据中目标方向的距离做平面映射,得到第二平面图像;对所述第二平面图像中的各像素点进行边缘拟合,估计所述托盘的托盘孔;基于所述托盘孔的估计结果,确定所述第三点云数据中属于所述托盘在目标平面上拟合边缘范围内的第四点云数据。
40、在一些实施例中,所述确定模块,还用于对所述第四点云数据进行平面拟合,确定所述托盘的第一拟合平面;将所述第四点云数据中与所述托盘的第一拟合平面之间的距离小于预设距离阈值的点确定为所述第二点云数据。
41、在一些实施例中,所述定位模块,还用于基于所述第二点云数据进行边缘拟合,确定所述托盘的轮廓信息;基于所述托盘的轮廓信息,确定所述托盘的中心点信息;对所述第二点云数据进行平面拟合,确定所述托盘的第二拟合平面;基于所述第二拟合平面,确定所述托盘与所述深度相机之间的角度信息。
42、第三方面,本公开实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面中所述的方法。
43、第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现第一方面中所述的方法。
44、本公开的实施例提供的技术方案可以包括以下有益效果:
45、本公开实施例中,获取包含托盘在内的第一点云数据,并基于第一点云数据进行梯度计算,确定第一点云数据中属于托盘在目标平面的第二点云数据,并基于第二点云数据对托盘进行定位的方式,是采用传统图像处理的方式,利用梯度计算可以快速准确地确定第一点云数据中不在托盘目标平面上的点云数据并进行剔除,实现托盘的高精度识别;无需基于大量数据进行深度学习、模型匹配等,减小托盘识别设备对计算机或芯片计算力的要求,使托盘识别技术的工业落地更加容易、落地成本更低。
46、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。