System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及托盘识别领域,尤其涉及一种托盘检测方法。
技术介绍
1、近年来,随着物流需求的快速增长,越来越多的工厂和仓库选择采用自动引导叉车(automated guided vehicle,agv)代替传统的人工叉车。agv具备自动导航、移动、避障、多传感器控制和装载运输等多种功能,能够实现短途运输和货物托盘的装卸。然而,如何实现对托盘以及货物进行准确检测和定位成为了agv面临的重要问题。
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、根据所述每个托盘的所述目标平面上的所述目标水平线和所述第一目标竖直线,确定所述每个托盘的所述目标平面上的第一参考点,其中,所述每个托盘的所述目标平面上的第一参考点为所述每个托盘的所述目标平面上的所述目标水平线和所述第一目标竖直本文档来自技高网...
【技术保护点】
1.一种托盘检测方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述根据所述一个或多个托盘中的每个托盘在所述彩色图像中的位置信息,确定所述每个托盘在所述深度图像中的位置信息之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述根据所述每个托盘对应的点云数据,确定所述每个托盘上的目标点和所述每个托盘的倾斜角,包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述每个托盘对应的点云数据,确定所述每个托盘中的目标平面的点云数据,包括:
5.根据权利要求3或4所述的方法,其特征在于,所述根据所述每个托盘的所述目标平面上的所述目标水平线、所述第一目标竖直线和所述第二目标竖直线,确定所述每个托盘上的目标点,包括:
6.根据权利要求5所述的方法,其特征在于,所述每个托盘的倾斜角为所述每个托盘的所述目标平面上的所述目标水平线与水平方向所成的夹角。
7.根据权利要求2至6任一项所述的方法,其特征在于,所述方法还包括:
8.一种托盘检测装置,其特征在于,所述装置包
9.一种计算设备,其特征在于,包括存储器和处理器,所述存储器用于存储指令,所述处理器用于执行所述存储器中存储的所述指令,以实现如权利要求1至7任一项所述的方法。
10.一种计算机存储介质,其特征在于,包括程序指令,当所述程序指令被计算设备执行时,使得所述计算设备执行如权利要求1至7任一项所述的方法。
11.一种叉车,其特征在于,包括叉取装置和如权利要求8所述的托盘检测装置,或者,包括所述叉取装置和如权利要求9所述的计算设备。
...【技术特征摘要】
1.一种托盘检测方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,在所述根据所述一个或多个托盘中的每个托盘在所述彩色图像中的位置信息,确定所述每个托盘在所述深度图像中的位置信息之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述根据所述每个托盘对应的点云数据,确定所述每个托盘上的目标点和所述每个托盘的倾斜角,包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述每个托盘对应的点云数据,确定所述每个托盘中的目标平面的点云数据,包括:
5.根据权利要求3或4所述的方法,其特征在于,所述根据所述每个托盘的所述目标平面上的所述目标水平线、所述第一目标竖直线和所述第二目标竖直线,确定所述每个托盘上的目标点,包括:
6.根据...
【专利技术属性】
技术研发人员:张豪,刘志刚,刘俊杰,涂兆诚,李芳,
申请(专利权)人:比亚迪股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。