一种用于开放式车厢的装载控制方法、系统和存储介质与流程

文档序号:33026988发布日期:2023-01-20 19:49阅读:27来源:国知局
一种用于开放式车厢的装载控制方法、系统和存储介质与流程

1.本发明涉及三维检测技术领域,尤其涉及一种用于开放式车厢的装载控制方法、系统和存储介质。


背景技术:

2.在水泥厂家等企业中,袋装物料的车厢装卸是企业生成出货的重要环节之一。为了提高工作效率往往使用自动装卸设备代替人工进行转运。作业中自动装卸设备需要准确的知道车厢尺寸和定位信息才可以顺利完成自动化作业。目前行业内在对水泥袋等袋装物料进行装车作业时,都是针对空车进行装车,但实际上车厢内已有货物的情况也时有发生,如不同种类袋装物料混装等。但因车厢内已有的袋装物料多少未知,物料的高度也不尽相同,已有货物有低于侧护栏的也有高于侧护栏的,这样给车辆的尺寸测量带来很大的不确定。只有主动识别出待装载车厢内,才能根据有无货物旋转后续测量方式。但由于车厢底部又往往不是绝对平整的,会存在倾斜、局部坑洼变形或异物等各种形态,给准确识别车厢底部是否存在袋装货物带来了困难。而传统的通过工业相机拍摄车厢内图片,再通过图片分析车厢内是否有袋装物料的方式,会由于图像识别技术对亮度敏感性,在不同天气、白天和晚上亮度差异很大的工况下,在几米到十几米的范围很难稳定光源亮度,从而导致工业相机识别不稳定,最终无法保证能在各类工作环境中均能准确识别待装载车辆的车厢内情况。


技术实现要素:

3.本发明针对现有技术中的不足,提供了一种用于开放式车厢的装载控制方法,用于识别待装载车辆的车厢内是否已存在袋装货物,包括如下步骤:s1,获取待装载车辆的三维点云数据,调整三维点云视角并通过姿态转换成显示车辆侧部的二维侧面图像;s2,识别所述二维侧面图像上的车厢区域,在所述车厢区域的水平等差位置依次获取车厢底部每一等差点的纵坐标并进行处理后组成测量数组;s3,沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值,获取各纵坐标差值中的正负值个数、以及各纵坐标差值中的数值大于预设值的波纹个数;s4,如果所述正负值个数小于测量数组中元素个数的一半且波纹个数大于测量数组的元素个数的预设倍数,则计算所述测量数组的标准差,如果所述标准差大于参照值则判定该车厢区域已存在袋装货物。
4.优选的,所述步骤s2还包括:s21,识别所述二维侧面图像上的车厢区域,获取待装载车厢车头和车尾的坐标,在车头至车尾间等差位置依次测量出车厢底部每一等差点的纵坐标并组成原始数组;s22,获取所述原始数组中每一元素与该原始数组中位数的距离值,删除所述原始数组中距离值大于阈值对应数组元素后形成测量数组。
5.优选的,所述步骤s3还包括:s31,沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值,其中,为测量数组内的元素个数,为测量数组内第个元素的值,依次判断的正负,当时正负值个数自加1;当 时正负值个数自减1,的初始值为零;s32,获取待装载的袋装货物的厚度信息,根据所述厚度信息在车厢数据库中查询用来判断车厢底部波纹幅度非车底凹凸面的码放厚度参数,依次判断的绝对值,当时波纹个数自加1。
6.优选的,所述步骤s4包括:s41,根据待装载的袋装货物尺寸信息在车厢数据库中查询用来判断车厢底部波纹为袋装货物的预设比例、以及判断判断车厢内存在袋装物料的测量数组标准差的参照值;s42,如果所述正负值个数小于测量数组中元素个数的一半,且波纹个数大于测量数组中元素个数的预设比例,则计算所述测量数组的标准差, ,若标准差大于参照值时则判定该车厢区域已存在袋装货物,若标准差不大于参照值则判定该车厢区域尚未存在袋装货物。
7.优选的,该用于开放式车厢的装载控制方法还包括:当所述正负值个数不小于测量数组中元素个数的一半时,判定该车厢区域中未存在袋装货物且所述车厢底部存在倾斜;当所述正负值个数小于测量数组中元素个数的一半,但波纹个数小于测量数组中元素个数的预设比例时,则判定该车厢区域底部存在局部形变或车厢底部存在异物。
8.本发明还公开了一种用于开放式车厢的装载控制系统,用于识别待装载车辆的车厢内是否已存在袋装货物,包括:三维获取模块,用于获取待装载车辆的三维点云数据,调整三维点云视角并通过姿态转换成显示车辆侧部的二维侧面图像;数组采集模块,用于识别所述二维侧面图像上的车厢区域,在所述车厢区域的水平等差位置依次获取车厢底部每一等差点的纵坐标并进行处理后组成测量数组;差值计算模块,用于沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值,获取各纵坐标差值中的正负值个数、以及各纵坐标差值中的数值大于预设值的波纹个数;判断模块,用于在正负值个数小于测量数组中元素个数的一半且波纹个数大于测量数组的元素个数的预设倍数,则计算所述测量数组的标准差,如果所述标准差大于参照值则判定该车厢区域已存在袋装货物。
9.优选的,所述数组采集模块包括:车厢获取模块,用于识别所述二维侧面图像上的车厢区域,获取待装载车厢车头和车尾的坐标,在车头至车尾间等差位置依次测量出车厢
底部每一等差点的纵坐标并组成原始数组;误差剔除模块,用于获取所述原始数组中每一元素与该原始数组中位数的距离值,删除所述原始数组中距离值大于阈值对应数组元素后形成测量数组。
10.优选的,所述差值计算模块包括:波纹判断模块,用于沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值,其中,为测量数组内的元素个数,为测量数组内第个元素的值,依次判断的正负,当 时正负值个数自加1;当 时正负值个数自减1,的初始值为零;幅度判断模块,用于获取待装载的袋装货物的厚度信息,根据所述厚度信息在车厢数据库中查询用来判断车厢底部波纹幅度非车底凹凸面的码放厚度参数,依次判断的绝对值,当时波纹个数自加1。
11.本发明还公开了一种用于开放式车厢的装载控制装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一方法的步骤。
12.本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一方法的步骤。
13.本发明公开的用于开放式车厢的装载控制方法、系统和存储介质,通过获取待装载车辆的三维点云数据,然后调整三维点云视角并通过姿态转换成显示车辆侧部的二维侧面图像,在所述车厢区域的水平等差位置依次获取车厢底部每一等差点的纵坐标并进行处理后组成测量数组,根据测量数据前后相邻两个元素的纵坐标差值的情况来判断该车厢区域内是否存在袋装货物,能适应各种车型且防止干扰造成的误判,从而准确判断出待装载车辆车厢内是否已存在袋装货物,解决了现有自动装车行业内只能装载空车的问题,实现现有装车系统对已装有货物车辆进行装车作业的功能拓展。
14.本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
15.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:图1为本发明一实施例公开的用于开放式车厢的装载控制方法的流程示意图。
16.图2为本发明一实施例公开的待装载车辆的三维点云数据示意图。
17.图3为本发明一实施例公开的待装载车辆侧面二维图像。
18.图4为本发明一实施例公开的步骤s2的具体流程示意图。
19.图5为本发明一实施例公开的二维图像等差点获取示意图。
20.图6为本发明一实施例公开的车厢边沿识别示意图。
具体实施方式
21.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
22.除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”或者“一”等类似词语也不表示数量限制,而是表示存在至少一个。
23.本实施例公开了一种用于开放式车厢的装载控制方法,该方法可用于在货车车厢规格尺寸未知,袋装物料多少未知的情况下,基于3d点云数据通来识别待装载车辆的车厢内是否已存在袋装货物,如附图1所示,该方法具体可包括如下内容。
24.步骤s1,获取待装载车辆的三维点云数据,调整三维点云视角并通过姿态转换成显示车辆侧部的二维侧面图像。
25.具体的,附图2为待装载车辆的三维点云数据,从图中可看出该车厢内已有袋装物料。调整三维点云的视角,经过从三维车辆系统中获得的姿态转换阵例如,转换成侧面的视角,如附图3所示,袋装物料平铺到车斗内,侧面观察底部呈现波纹状。
26.步骤s2,识别所述二维侧面图像上的车厢区域,在所述车厢区域的水平等差位置依次获取车厢底部每一等差点的纵坐标并进行处理后组成测量数组。在将3d点云轮廓转换成2d图像后,再针对2d图像进行测量,通过算法判断车斗内是否有袋装物料。
27.如附图4所示,该步骤s2还可包括如下内容。
28.步骤s21,识别所述二维侧面图像上的车厢区域,获取待装载车厢车头和车尾的坐标,在车头至车尾间等差位置依次测量出车厢底部每一等差点的纵坐标并组成原始数组。
29.如附图5所示,测量出车头和车尾的具体坐标,并在车头到车尾等差位置测量出车厢底部每一个点的坐标。由车斗底部等差位置测量出的每一个点的坐标构成的原始数组,通过对该数组算法分析,就可对车厢内是否有袋装物料进行判断。
30.步骤s22,获取所述原始数组中每一元素与该原始数组中位数的距离值,删除所述原始数组中距离值大于阈值对应数组元素后形成测量数组。
31.具体的,计算原始数组中每一个元素距该数组中位数的距离值,算出距离大于阈值的元素,余下的数组就能较好的反应真实情况。
32.数组减去数组中位数得到数组 ,数组保留小于阈值的元素,保留的元素构成新数组即测量数组
,数组消除了数组中的干扰点,从而保证后续判断更加准确。
33.步骤s3,沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值,获取各纵坐标差值中的正负值个数、以及各纵坐标差值中的数值大于预设值的波纹个数。
34.在本实施例中,该步骤s3可以具体包括以下内容。
35.步骤s31,沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值 ,其中,为测量数组内的元素个数,为测量数组内第个元素的值,依次判断的正负,当时正负值个数自加1;当 时正负值个数自减1,的初始值为零。
36.具体的,该步骤可用于车厢波纹状的初步识别:测量数组邻位相减值为,当大于0时自加1,当小于0时自减1。如果是车厢图像为波纹状,则的值会接近于0。而如果是平直的,则测量数组呈现递增或者递减,的值会比较大,因此的值可作为初步判断波纹状的判断条件。计算测量数组数组中每相邻元素的差值,,当,增加1,当,减少1。
37.步骤s32,获取待装载的袋装货物的厚度信息,根据所述厚度信息在车厢数据库中查询用来判断车厢底部波纹幅度非车底凹凸面的码放厚度参数,依次判断bi的绝对值,当时波纹个数自加1。
38.具体的,该步骤可用于车厢波纹状幅度值的计算。在真实情况下车厢的底部都不是绝对平直的,因此哪怕车厢底部是水平的没有发生倾斜,测量数组的每一个元素也有大小不同的区别。在本实施例中,如果查询后获得该码放厚度参数为5mm,则当的绝对值大于5mm时自加1,值越大则表示幅度越大,值越小则表示幅度越小,即时,值增加1。
39.步骤s4,如果所述正负值个数小于测量数组中元素个数的一半且波纹个数大于测量数组的元素个数的预设倍数,则计算所述测量数组的标准差,如果所述标准差大于参照值则判定该车厢区域已存在袋装货物。
40.在本实施例中,步骤s4还可以包括如下内容。
41.步骤s41,根据待装载的袋装货物尺寸信息在车厢数据库中查询用来判断车厢底部波纹为袋装货物的预设比例、以及判断判断车厢内存在袋装物料的测量数组标准差的参照值。在本实施例中,根据待装载的袋装货物尺寸信息在数据库中查询获知用来判断车
厢底部波纹为袋装货物的预设比例设定为数组中元素个数的0.7倍,参照值则为2.8。
42.步骤s42,如果所述正负值个数小于测量数组中元素个数的一半,且波纹个数大于测量数组中元素个数的预设比例,则计算所述测量数组的标准差,,若标准差大于参照值时则判定该车厢区域已存在袋装货物,若标准差不大于参照值则判定该车厢区域尚未存在袋装货物。
43.在本实施例中,当值小于数组长度的一半,且值大于数组长度的0.7倍时,说明车厢底部呈现锯齿状并且锯齿状够大,然后再计算测量数组的标准差,如果标准差大于2.8,则可以准确判定车厢内为有袋装货物,而如果标准差小于或等于2.8,则可以判定车厢内无袋装货物即为空车斗。
44.即当时计算数组的标准差,当,则可以判定为车斗内有袋装物料。当,则可以判定为空车斗。
45.在本实施例中,该用于开放式车厢的装载控制方法,还可以包括如下内容。
46.步骤s51,当所述正负值个数不小于测量数组中元素个数的一半时,判定该车厢区域中未存在袋装货物且所述车厢底部存在倾斜。
47.具体的,空车倾斜的情况时,数组的相邻位相减,差值会一直是大于0或者是小于0的。通过前面的步骤得到,当值条件时,大概率可以判定是该车厢的车厢内为空,但车厢底部存在倾斜。因此在前面的步骤中取取的情况规避掉了因这种情况造成的干扰。在本步骤中,如果判定该车厢底部存在倾斜,则可放出提示信息确认车厢是否未收放平整。因为一些类型的货车车厢是升降车斗,可能因车厢未放平导致车厢底部出现倾斜。
48.步骤s52,当所述正负值个数小于测量数组中元素个数的一半,但波纹个数小于测量数组中元素个数的预设比例时,则判定该车厢区域底部存在局部形变或车厢底部存在异物。
49.具体的,即当,但时,则可判定为车厢底部存在小的
形变,可能是车厢底部的几个小坑洼、局部变形或异物。
50.最后,在通过上述各步骤判断出车厢底部是否存在货物后,即可根据车厢内的不同情况来使用不同的预设方法来推断车厢内的空间。例如如果判断为空车厢且车厢内不存在倾斜或异物等,则测量直接从车斗长宽和起始位置时,在将车厢三维数据转换成俯视的二维图像后,如附图6所示,直接截取车厢部分进行厢体边沿识别,即使护栏有些形变也能准确测量车辆尺寸,将物料准确放入车厢内。而在通过上述各步骤判断出车厢底部存在货物后,尤其是当袋装货物接近或超过护栏上侧时,护栏或受货物影响或被货物覆盖,使得不能准确截取到上图,从而使得如果还是采用上述常规方式将导致测量结果不正确。因此在识别到车厢内有袋装货物后,就可以根据有袋装物料的情况使用对应的存在货物的另一预设方法对车厢尺寸进行测量,例如截取物料部分,测量外廓并对测量位置向内按预设值进行适当偏移来获取推测的车厢护栏边界,从而实现对车辆尺寸的正常测量。
51.因此为了实现对车辆尺寸进行准确测量,识别车厢内有无袋装物料这个前提条件对车辆尺寸的准确测量至关重要。如果不能识别则只能人为规定来车必须是空车。
52.上述实施例描述的用于开放式车厢的装载控制方法,通过获取待装载车辆的三维点云数据,然后调整三维点云视角并通过姿态转换成显示车辆侧部的二维侧面图像,在所述车厢区域的水平等差位置依次获取车厢底部每一等差点的纵坐标并进行处理后组成测量数组,根据测量数据前后相邻两个元素的纵坐标差值的情况来判断该车厢区域内是否存在袋装货物,能适应各种车型且防止干扰造成的误判,从而准确判断出待装载车辆车厢内是否已存在袋装货物,解决了现有自动装车行业内只能装载空车的问题,实现现有装车系统对已装有货物车辆进行装车作业的功能拓展。
53.在另一实施例中,还公开了一种用于开放式车厢的装载控制系统,用于识别待装载车辆的车厢内是否已存在袋装货物,包括:三维获取模块,用于获取待装载车辆的三维点云数据,调整三维点云视角并通过姿态转换成显示车辆侧部的二维侧面图像;数组采集模块,用于识别所述二维侧面图像上的车厢区域,在所述车厢区域的水平等差位置依次获取车厢底部每一等差点的纵坐标并进行处理后组成测量数组;差值计算模块,用于沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值,获取各纵坐标差值中的正负值个数、以及各纵坐标差值中的数值大于预设值的波纹个数;判断模块,用于在正负值个数小于测量数组中元素个数的一半且波纹个数大于测量数组的元素个数的预设倍数,则计算所述测量数组的标准差,如果所述标准差大于参照值则判定该车厢区域已存在袋装货物。
54.优选的,所述数组采集模块包括:车厢获取模块,用于识别所述二维侧面图像上的车厢区域,获取待装载车厢车头和车尾的坐标,在车头至车尾间等差位置依次测量出车厢底部每一等差点的纵坐标并组成原始数组;误差剔除模块,用于获取所述原始数组中每一元素与该原始数组中位数的距离值,删除所述原始数组中距离值大于阈值对应数组元素后形成测量数组。
55.优选的,所述差值计算模块包括:波纹判断模块,用于沿同一方向获取测量数组内前后相邻两个元素的纵坐标差值 ,其中,为测量数组内的元素个数,为测量数组内第个元素的值,依次判断的正负,当 时正负值
个数自加1;当 时正负值个数自减1,的初始值为零;幅度判断模块,用于获取待装载的袋装货物的厚度信息,根据所述厚度信息在车厢数据库中查询用来判断车厢底部波纹幅度非车底凹凸面的码放厚度参数,依次判断的绝对值,当时波纹个数自加1。
56.需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的用于开放式车厢的装载控制系统而言,由于其与实施例公开的用于开放式车厢的装载控制方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
57.需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的用于开放式车厢的装载控制系统而言,由于其与实施例公开的对用于开放式车厢的装载控制方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
58.在另一些实施例中,还提供了一种用于开放式车厢的装载控制装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述各实施例中描述的用于开放式车厢的装载控制方法的各个步骤。
59.其中用于开放式车厢的装载控制装置可包括但不仅限于,处理器、存储器。本领域技术人员可以理解,所述示意图仅仅是用于开放式车厢的装载控制装置的示例,并不构成对用于开放式车厢的装载控制装置设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述用于开放式车厢的装载控制装置设备还可以包括输入输出设备、网络接入设备、总线等。
60.所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器 (digital signal processor,dsp)、专用集成电路 (application specific integrated circuit,asic)、现成可编程门阵列 (field-programmable gate array,fpga) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述用于开放式车厢的装载控制装置设备的控制中心,利用各种接口和线路连接整个用于开放式车厢的装载控制装置设备的各个部分。
61.所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述用于开放式车厢的装载控制装置设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card, smc),安全数字(secure digital, sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
62.所述用于开放式车厢的装载控制装置如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执
行时,可实现上述各个用于开放式车厢的装载控制方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
63.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
64.总之,以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所作的均等变化与修饰,皆应属本发明专利的涵盖范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1