一种包裹外接体积测量方法、系统、存储介质及移动终端与流程

文档序号:16742852发布日期:2019-01-28 13:11阅读:146来源:国知局
一种包裹外接体积测量方法、系统、存储介质及移动终端与流程

本发明属于图像处理技术领域,特别涉及一种包裹外接体积测量方法、系统、存储介质及移动终端。



背景技术:

随着全球一体化的不断推进,以及计算机技术的快速发展。以互联网产业为基础的线上购物,为每一个人都带来了巨大的便利。伴随着互联网购物的快速扩张,物流包裹的吞吐量呈现出了几何式的增长。对于物流企业来说,在包裹的运输成本当中,重量只是其中的一小部分。如果可以对包裹体积进行合理的安排,可以为物流企业带来巨大的帮助。

目前,市面上的包裹一般分为两类,一种是物流公司或大型电商平台,其会使用自有包装盒进行包装之后的规则立方体包裹;另一种是小型或个人用户使用一些非规则的外包装进行包装后,产生的不规则形状的非立方体包裹。

对于规则的立方体包裹,其占用的体积就是其实际的体积;但是对于不规则形状的非立方体包裹,装箱时占用的体积(即包裹在空间中需要占用的最小立方体积)往往要大于其实际体积,通常称为最小外接体积。

为了合理、最优化的进行装箱,在装箱之前需要对包裹进行最小外接体积的测量。对于规则体积的包裹,可以很快的计算出包裹的体积,以降低物流运输的成本。而对于非规则的包裹,其包裹的尺寸并不是规则的立方体,则不能快速的测出包裹的体积。

现有技术中,通常会使用基于类kinect-fusion的3d重建算法对被检测包裹进行3d重建。例如,现有专利cn106803267a中,其首先使用tsdf算法建立全局数据立方体;然后使用raycasting算法对三维点云进行重建;再通过icp算法,预测点云数据,计算点云配准矩阵;最后将每一帧获取的点云数据进行融合,从而获得被测包裹的3d重建结果,再计算出重建包裹的最小外接体积。此种方法,从硬件设计上来说,重建包裹的三维点云通常需要大量的迭代计算,这对于设备的计算要求很高,而当前的手持设备还达不到实时性的体验要求。并且,重建包裹需要从多角度且多次获得包裹的各帧信息,这就需要包裹运动速度或相机的扫描速度不能过快,从使用者的角度来说,其测量过程的要求较高,导致了测量的时间长、速度慢且精度不高。



技术实现要素:

本发明的目的是提供一种包裹外接体积测量方法、系统、存储介质及移动终端,实现提高测量精度,简化测量要求的目的。

第一方面,提供一种包裹外接体积测量方法,包括:

获取三维点云,所述三维点云包括所述待测包裹对应的点云及支持面对应的点云,所述支持面为所述待测包裹放置的表面;

分割出所述三维点云中所述支持面对应的点云;

对分割出所述支持面对应的点云后的三维点云进行聚类,得到目标点云,所述目标点云为所述待测包裹对应的点云;

分别对所述支持面和所述目标点云进行旋转,使得所述支持面与世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行;

遍历旋转后的所述目标点云中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴和z轴上的最大值和最小值的集合,组合所述集合中的点,得到所述目标点云的外接框;

根据所述外接框计算所述待测包裹的高度;

对所述目标点云沿z轴方向在x轴与y轴组成的平面上进行投影,获得所述待测包裹的最大投影截面;

对所述最大投影截面进行旋转,得到所述最大投影截面的最小外接框;

根据所述最大投影截面的最小外接框以及所述待测包裹的高度计算所述待测包裹的最小外接体积。

进一步地,分割出所述三维点云中所述支持面对应的点云包括:

对所述三维点云进行平面拟合,找出支持点的数量最大的多个平面;

分别计算所述多个平面到相机中心的距离;

选取距离所述相机中心最远的平面,作为所述支持面,并获取所述支持面的平面方程;

根据所述支持面的平面方程,在所述三维点云中分割出所述支持面对应的点云。

进一步地,分别对所述支持面和所述目标点云进行旋转,使得所述支持面与世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行包括:

根据所述支持面的平面方程,计算所述支持面与世界坐标系的x轴和y轴组成的平面的夹角;

根据所述夹角,分别对所述支持面和所述目标点云进行旋转,使得所述支持面与所述世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行。

进一步地,对所述最大投影截面进行旋转,得到所述最大投影截面的最小外接框包括:

计算所述最大投影截面的特征矩阵,并得到所述特征矩阵的最大特征值对应的第一特征向量和第二大特征值对应的第二特征向量;

根据所述第一特征向量和所述第二特征向量,旋转所述最大投影截面,使得所述最大投影截面的两个主方向分别与所述世界坐标系的x、y轴平行;

遍历旋转后的所述最大投影截面中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴上的最大值和最小值的集合,组合所述集合中的点,得到所述最大投影截面的最小外接框。

进一步地,所述根据所述外接框计算所述待测包裹的高度包括:

计算所述目标点云的外接框远离所述支持面的一面到所述支持面的距离,得到所述待测包裹的高度值。

第二方面,还提供一种包裹外接体积测量系统,包括:

三维点云获取模块,用于获取三维点云,所述三维点云包括所述待测包裹对应的点云及支持面对应的点云,所述支持面为所述待测包裹放置的表面;

点云图像处理模块,用于分割出所述三维点云中所述支持面对应的点云;

目标点云获取模块,用于对分割出所述支持面对应的点云后的三维点云进行聚类,得到目标点云,所述目标点云为所述待测包裹对应的点云;

点云旋转模块,用于分别对所述支持面和所述目标点云进行旋转,使得所述支持面与世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行;

外接框获取模块,用于遍历旋转后的所述目标点云中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴和z轴上的最大值和最小值的集合,组合所述集合中的点,得到所述目标点云的外接框;

高度计算模块,用于根据所述外接框计算所述待测包裹的高度;

目标点云投影模块,用于对所述目标点云沿z轴方向在x轴与y轴组成的平面上进行投影,获得所述待测包裹的最大投影截面;

最小外接框获取模块,用于对所述最大投影截面进行旋转,得到所述最大投影截面的最小外接框;

包裹外接体积计算模块,用于根据所述最大投影截面的最小外接框以及所述待测包裹的高度计算所述待测包裹的最小外接体积。

进一步地,所述点云图像处理模块包括:

平面拟合单元,用于对所述三维点云进行平面拟合,找出支持点的数量最大的多个平面;

距离计算单元,用于分别计算所述多个平面到相机中心的距离;

支持面获取单元,用于选取距离所述相机中心最远的平面,作为所述支持面,并获取所述支持面的平面方程;

支持面分割单元,用于根据所述支持面的平面方程,在所述三维点云中分割出所述支持面对应的点云。

进一步地,所述点云旋转模块包括:

平面夹角计算单元,用于根据所述支持面的平面方程,计算所述支持面与世界坐标系的x轴和y轴组成的平面的夹角;

旋转单元,用于根据所述夹角,分别对所述支持面和所述目标点云进行旋转,使得所述支持面与所述世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行。

进一步地,所述最小外接框获取模块包括:

特征矩阵计算单元,用于计算所述最大投影截面的特征矩阵,并得到所述特征矩阵的最大特征值对应的第一特征向量和第二大特征值对应的第二特征向量;

最大投影截面旋转单元,用于根据所述第一特征向量和所述第二特征向量,旋转所述最大投影截面,使得所述最大投影截面的两个主方向分别与所述世界坐标系的x、y轴平行;

最小外接框获取单元,用于遍历旋转后的所述最大投影截面中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴上的最大值和最小值的集合,组合所述集合中的点,得到所述最大投影截面的最小外接框。

进一步地,所述高度计算模块包括:

高度计算单元,用于计算所述目标点云的外接框远离所述支持面的一面到所述支持面的距离,得到所述待测包裹的高度值。

第三方面,还提供一种存储介质,所述存储介质存储有多条指令,所述多条指令被一个或者多个处理器执行,以实现本发明包裹外接体积测量方法的步骤。

第四方面,还提供一种移动终端,包括:

存储介质,存储多条指令;

摄像头,实现所述存储介质存储的对应的摄像头执行指令;

处理器,实现所述存储介质存储的对应的处理器执行指令;

其中:所述摄像头和所述处理器用于执行所述存储介质存储的指令,以实现本发明包裹外接体积测量方法的步骤。

通过本发明提供的一种包裹外接体积测量方法、系统、存储介质及移动终端,能够带来以下有益效果:

本发明先分割出支持面对应的点云,然后对分割后的三维点云进行聚类得到目标点云,再旋转支持面和目标点云,使支持面与世界坐标系的z轴垂直,使目标点云与世界坐标系的z轴平行,再根据目标点云在世界坐标系中的坐标集合,得到目标点云的外接框,根据目标点云的外接框即可计算出待测包裹的高度;然后在根据目标点云的最大投影截面的最小外接框,计算出待测包裹的截面积,最后根据待测包裹的高度和截面积计算出待测包裹的最小外接体积;本发明无需从多角度且多次获得包裹的各帧信息,也不需要进行大量的迭代计算,不仅可降低对测量过程的要求以及对设备的计算要求,而且简化了测量步骤,提高了测量效率;同时,本发明将支持面对应的点云进行分割,能够使得支持面上的物体与支持面相互独立,不再相互连通,降低因为点云互通导致的干扰,提高待测包裹的尺寸测量精准度和可靠性。

附图说明

下面将以明确易懂的方式,结合附图说明优选实施方式,对一种包裹外接体积测量方法、系统、存储介质及移动终端的上述特性、技术特征、优点及其实现方式予以进一步说明。

图1是本发明一种包裹外接体积测量方法的第一实施例的流程示意图;

图2是本发明一种包裹外接体积测量方法的第二实施例的流程示意图;

图3是本发明一种包裹外接体积测量方法的第三实施例的流程示意图;

图4是本发明一种包裹外接体积测量方法的第四实施例的流程示意图;

图5是本发明一种包裹外接体积测量系统的一个实施例的结构示意框图;

图6是本发明一种包裹外接体积测量系统的点云图像处理模块的结构示意框图;

图7是本发明一种包裹外接体积测量系统的点云旋转模块的结构示意框图;

图8是本发明一种包裹外接体积测量系统的最小外接框获取模块的结构示意框图;

图9是本发明一种移动终端的一个实施例的结构示意图。

具体实施方式

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。

为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。

根据本发明提供的第一实施例,如图1所示,

s100获取三维点云,所述三维点云包括所述待测包裹对应的点云及支持面对应的点云,所述支持面为所述待测包裹放置的表面;

具体地,获取三维点云的方式有很多,例如通过深度相机进行拍摄待测包裹得到深度图像,然后将深度图像进行转换得到三维点云,拍摄时,从相机取景框的中心对准待测包裹,从上向下拍摄,获得当前视角内的图像;在实际拍摄时,虽然很难保证相机取景框的中心正好对准待测包裹,但是一般会使摄像头尽量对准待测包裹,所以会认为离相机取景框的中心更近的物体为待测包裹。同时,获取的三维点云,通常包括了待测包裹对应的点云及支持面对应的点云。支持面为待测包裹放置的表面,如放置待测包裹的地面、平台等支撑平面;当然,三维点云中可能还包括在支持面上的其他物体所对应的点云。

s200分割出所述三维点云中所述支持面对应的点云;

具体地,为了得到待测包裹的点云,需要先将代表地面或者桌面等放置平台的支持面对应的点云进行分割,使得支持面上的所有物体对应的点云与支持面相互独立,不再相互连通,便于后续对待测包裹或者其他物品对应的点云进行聚类和识别。支持面点云的分割能够降低因为点云的互通而导致的分隔干扰,可提升待测包裹的尺寸测量的精准度和可靠性。

s300对分割出所述支持面对应的点云后的三维点云进行聚类,得到目标点云,所述目标点云为所述待测包裹对应的点云;

具体地,分割支持面对应的点云后,需要对点云进行聚类处理,以得到待测包裹对应的点云,即为目标点云。

优选地,s300对分割出所述支持面对应的点云后的三维点云进行聚类,得到目标点云,所述目标点云为所述待测包裹对应的点云具体包括:

s310对分割出所述支持面对应的点云后的三维点云进行聚类,得到多类点云;

s320计算每一类点云到所述三维点云的中心点的距离;

s330选出距离所述三维点云的中心点最近的一类点云,即为所述目标点云。

具体地,为了准确获取到待测包裹对应的目标点云,先对分割出支持面点云的三维点云进行聚类,得到多类点云,然后从多类点云中提取出目标点云,由于拍摄待测包裹时,会尽量对准待测包裹进行拍摄,使得相机取景框的中心对准被测包裹,所以聚类时,距离相机中心点最近的一类点云即为目标点云,因此,本方法只需要计算每一类点云的中心与相机中心点的距离,然后选取距离相机中心点最近的点云,即可得到待测包裹的目标点云,不仅计算方法简单,可简化运算流程,而且准确率较高。

s400分别对所述支持面和所述目标点云进行旋转,使得所述支持面与世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行;

具体地,旋转支持面和目标点云,使支持面与世界坐标系中的z轴垂直,目标点云与世界坐标系中的z轴平行。可以理解,在拍摄待测包裹时,待测包裹与地面或平台接触的面与地面平行,待测包裹整体近似垂直地放置在地面或平台上,所以,旋转支持面和目标点云后,支持面与世界坐标系中的z轴垂直时,目标点云与世界坐标系中的z轴近似平行。

s500遍历旋转后的所述目标点云中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴和z轴上的最大值和最小值的集合,组合所述集合中的点,得到所述目标点云的外接框;

具体地,对旋转后的目标点云进行遍历操作,得到点云中的点的坐标分别在世界坐标系的x轴、y轴和z轴上的最大值和最小值的集合,然后根据集合中的点组合出8个顶点,构成目标点云的外接框。

s600根据所述外接框计算所述待测包裹的高度;

具体地,由于在拍摄时,是从上往下拍摄包裹的,只能看到包裹的上表面,上表面下的部分是空洞,因此,此处获得的目标点云的外接框并不是包裹的最小外接框,不能直接根据该外接框计算得到包裹的最小外接体积,只能根据外接框计算得到包裹的高度。

s700对所述目标点云沿z轴方向在x轴与y轴组成的平面上进行投影,获得所述待测包裹的最大投影截面;

具体地,将目标点云在xy平面上进行投影,其投影的目的是为了获得被测包裹的最大截面,此截面决定了待测包裹的截面积。

s800对所述最大投影截面进行旋转,得到所述最大投影截面的最小外接框;

具体地,将投影后的最大投影截面进行旋转,以将最大投影截面从相机坐标系转换为世界坐标系,然后获取最大投影截面的最小外接框。

s900根据所述最大投影截面的最小外接框以及所述待测包裹的高度计算所述待测包裹的最小外接体积。

具体地,得到最大投影截面的最小外接框和待测包裹的高度后,根据最小外接框的面积与待测包裹的高度值即可计算出待测包裹的最小外接体积。

可选的,在步骤s100和步骤s200之间还包括步骤:s110对所述三维点云中的点云进行稀疏处理,去除所述三维点云中的冗杂点云。本步骤中,对三维点云进行稀疏处理的程度可以依据保障三维点云中的物品形状在大小保持不变的情况下,去除冗杂点云(包括干扰点云、噪声点云等等),从而使得待测包裹外接体积测量在保持精度的情况下,加快计算速度,提高计算效率。

本发明先测出包裹的高度值,然后计算出包裹的最大投影截面积,即可计算出包裹的最小外接体积,该计算方法可用于测量不规则非立方体包裹的最小外接体积,在测量包裹最小外接体积时,无需从多角度且多次获得包裹的各帧信息,也不需要进行大量的迭代计算,不仅可降低对测量过程的要求以及对设备的计算要求,而且简化了测量步骤,提高了测量效率;同时,本发明将支持面对应的点云删除,能够使得支持面上的物体与支持面相互独立,不再相互连通,降低因为点云互通导致的干扰,提高待测包裹的尺寸测量精准度和可靠性。

本发明可部署在手持智能终端上,智能终端可以集成或外接双目相机以及深度相机。移动终端可以运行android系统,本发明可通过android系统的app形式,快速部署在智能终端上,通过使用者对待测包裹的扫描,实时快速第给出待测包裹的体积信息。由于体积的限制,集成在智能终端上的双目相机或是深度相机可能存在测量上的限制,此时,可通过外接更大的相机,满足大体积包裹的测量需要。

根据本发明提供的第二实施例,如图2所示,一种包裹外接体积测量方法,本实施例是上述第一实施例的优选实施例,与上述第一实施例的区别在于,步骤s200分割出所述三维点云中所述支持面对应的点云具体包括:

s210对所述三维点云进行平面拟合,找出支持点的数量最大的多个平面;

s220分别计算所述多个平面到相机中心的距离;

s230选取距离所述相机中心最远的平面,作为所述支持面,并获取所述支持面的平面方程;

s240根据所述支持面的平面方程,在所述三维点云中分割出所述支持面对应的点云。

具体的,本实施例是上述第一实施例的优化实施例,与上述第一实施例相同的步骤对应的说明在此不再一一赘述。本实施例中对步骤s200分割出三维点云中所述支持面对应的点云进行了细化,本实施例中,可以采用平面拟合的方法在三维点云中查找到代表支持面的平面。例如:

s1、从三维点云中随机选择三个不共线的点的数据,根据这三个随机获取的点的数据拟合生成一个平面n1,计算在容忍误差内满足这个平面n1的支持点的数量为s1;

s2、重新再随机选取三个不共线的点的数据,根据这三个重新随机获取的点的数据拟合生成一个平面n2,计算在容忍误差内满足这个平面n2的支持点的数量为s2,判断s2是否大于s1,如果大于则记录平面n2;

s3、循环反复执行步骤s2,当迭代即反复次数达到预设迭代次数时,记录支持点的数量最大的平面m;

对剩余的点(三维点云减去平面m上的支持点剩余的点)继续重复步骤s1至s3,也会得到一个支持点的数量最大的平面;再对剩余的点继续重复步骤s1至s3,可得到多个支持点的数量最大的平面。

重复上述步骤,得到多个支持点的数量最大的多个平面后,计算每个平面到相机中心的距离,选择距离相机中心最远的平面为支持面p。这是因为,在相机视角中,待测包裹始终处于支持面上,而支持面下并不再存在其他的平面,相机从上向下拍摄,支持面一定位于距离相机最远的那个平面上,因此,距离相机中心最远的平面即为支持面p;然后该离相机中心最远的平面平面方程即为支持面的平面方程,如支持面p的平面方程为ax+by+cz+d=0,根据该支持面的平面方程进行分割出支持面对应的点云,其中f(a,b,c)为支持面的法向量。

根据上述方法找出支持面的平面方程后,根据该平面方程获取支持面对应的点云,并分割出代表地面或者桌面等放置平台的支持面对应的点云,能够使得支持面上的所有物体对应的点云相互独立,不再相互连通,便于后续对待测包裹或者其他物品对应的点云进行聚合、分类和识别。

根据本发明提供的第三实施例,如图3所示,一种包裹外接体积测量方法,本实施例是上述第一实施例或第二实施例的优选实施例,与上述第一实施例或第二实施例的区别在于,步骤s400分别对所述支持面和所述目标点云进行旋转,使得所述支持面与世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行具体包括:

s410根据所述支持面的平面方程,计算所述支持面与世界坐标系的x轴和y轴组成的平面的夹角;

s420根据所述夹角,分别对所述支持面和所述目标点云进行旋转,使得所述支持面与所述世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行。

具体地,可根据支持面的平面方程的参数,计算支持面与世界坐标系中的x轴和y轴组成的平面的夹角,如支持面的平面方程为ax+by+cz+d=0,将支持面的参数组成的向量与上述计算出的夹角(向量形式)相乘,得到一个新的参数向量,该新的参数向量即为旋转后的支持面的平面方程的参数,即相当于将支持面进行旋转,且经过上述旋转后,支持面与世界坐标系中的z轴垂直。同理,根据上述计算出的夹角,将目标点云的矩阵与该夹角相乘,即相当于将目标点云进行旋转,且旋转后的目标点云与世界坐标系中的z轴近似平行。通过将目标点云旋转后,即可方便的得到目标点云的外接框,从而可计算出待测包裹的高度。

优选地,步骤s600根据所述外接框计算所述待测包裹的高度具体包括:

计算所述目标点云的外接框远离所述支持面的一面到所述支持面的距离,得到所述待测包裹的高度值。

具体地,将目标点云和支持面旋转后,将目标点云和支持面从相机坐标系转换到世界坐标系,然后根据目标点云的点的坐标得到目标点云的外接框,在实际情况中,包裹的最大高度即为包裹远离支持面的一端到支持面的距离,因此,在得到目标点云的外接框后,包裹的高度值即为目标点云的外接框远离支持面的一面倒支持面的距离。

根据本发明提供的第四实施例,如图4所示,一种包裹外接体积测量方法,本实施例是上述第一实施例至第三实施例中任一实施例的优选实施例,与上述第一实施例或第二实施例或第三实施例的区别在于,步骤s800对所述最大投影截面进行旋转,得到所述最大投影截面的最小外接框具体包括:

s810计算所述最大投影截面的特征矩阵,并得到所述特征矩阵的最大特征值对应的第一特征向量和第二大特征值对应的第二特征向量;

s820根据所述第一特征向量和所述第二特征向量,旋转所述最大投影截面,使得所述最大投影截面的两个主方向分别与所述世界坐标系的x、y轴平行;

s830遍历旋转后的所述最大投影截面中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴上的最大值和最小值的集合,组合所述集合中的点,得到所述最大投影截面的最小外接框。

具体地,获得目标点云在xy平面上的最大投影截面后,对最大投影截面使用主成份分析方法(pca),首先计算得到最大投影截面的特征矩阵,然后得到组成特征矩阵的其中两个特征向量,即最大特征值对应的第一特征向量和第二大特征值对应的第二特征向量,第一特征向量和第二特征向量代表了最大投影截面在相机坐标系中的两个主方向。最大投影截面在旋转前是处于相机坐标系下,为了方便计算最大投影截面的点的坐标,我们需要将最大投影截面从相机坐标系转换为世界坐标系,而为了将最大投影截面从相机坐标系转换为世界坐标系,需要先获得最大投影截面的两个主方向,即第一特征向量和第二特征向量。

得到第一特征向量和第二特征向量后,根据第一特征向量和第二特征向量,在xy平面上旋转最大投影截面,使得最大投影截面的两个主方向分别与目标平面的两个坐标轴平行,即将最大投影截面从相机坐标系转换为世界坐标系。旋转时,先将最大投影截面与第一特征向量相乘,然后再与第二特征向量相乘,即使得最大投影截面的两个主方向分别与x轴、y轴平行了。

将最大投影截面从相机坐标系转换为世界坐标系后,遍历旋转后的最大投影截面中的点,得到点的坐标分别在世界坐标系的x轴、y轴上的最大值和最小值的集合,组合集合中的点,得到最大投影截面的最小外接框,再根据最大投影截面的最小外接框,计算得到待测包裹的截面积,根据待测包裹的截面积和高度值计算得到待测包裹的最小外接体积。

根据本发明提供的第五实施例,如图5所示,

一种包裹外接体积测量系统,包括:

三维点云获取模块100,用于获取三维点云,所述三维点云包括所述待测包裹对应的点云及支持面对应的点云,所述支持面为所述待测包裹放置的表面;

具体地,获取三维点云的方式有很多,例如通过深度相机进行拍摄待测包裹得到深度图像,然后将深度图像进行转换得到三维点云,拍摄时,从相机取景框的中心对准待测包裹,从上向下拍摄,获得当前视角内的图像;在实际拍摄时,虽然很难保证相机取景框的中心正好对准待测包裹,但是一般会使摄像头尽量对准待测包裹,所以会认为离相机取景框的中心更近的物体为待测包裹。同时,获取的三维点云,通常包括了待测包裹对应的点云及支持面对应的点云。支持面为待测包裹放置的表面,如放置待测包裹的地面、平台等支撑平面;当然,三维点云中可能还包括在支持面上的其他物体所对应的点云。

点云图像处理模块200,用于分割出所述三维点云中所述支持面对应的点云;

具体地,为了得到待测包裹的点云,需要先将代表地面或者桌面等放置平台的支持面对应的点云进行分割,使得支持面上的所有物体对应的点云与支持面相互独立,不再相互连通,便于后续对待测包裹或者其他物品对应的点云进行聚类和识别。支持面点云的分割能够降低因为点云的互通而导致的分隔干扰,可提升待测包裹的尺寸测量的精准度和可靠性。

目标点云获取模块300,用于对分割出所述支持面对应的点云后的三维点云进行聚类,得到目标点云,所述目标点云为所述待测包裹对应的点云;

具体地,分割支持面对应的点云后,需要对点云进行聚类处理,以得到待测包裹对应的点云,即为目标点云。

优选地,目标点云获取模块300包括:

点云聚类单元,用于对分割出所述支持面对应的点云后的三维点云进行聚类,得到多类点云;

点云距离计算单元,用于计算每一类点云到所述三维点云的中心点的距离;

目标点云选取单元,用于选出距离所述三维点云的中心点最近的一类点云,即为所述目标点云。

具体地,为了准确获取到待测包裹对应的目标点云,先对分割出支持面点云的三维点云进行聚类,得到多类点云,然后从多类点云中提取出目标点云,由于拍摄待测包裹时,会尽量对准待测包裹进行拍摄,使得相机取景框的中心对准被测包裹,所以聚类时,距离相机中心点最近的一类点云即为目标点云,因此,本方法只需要计算每一类点云的中心与相机中心点的距离,然后选取距离相机中心点最近的点云,即可得到待测包裹的目标点云,不仅计算方法简单,可简化运算流程,而且准确率较高。

点云旋转模块400,用于分别对所述支持面和所述目标点云进行旋转,使得所述支持面与世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行;

具体地,旋转支持面和目标点云,使支持面与世界坐标系中的z轴垂直,目标点云与世界坐标系中的z轴平行。可以理解,在拍摄待测包裹时,待测包裹与地面或平台接触的面与地面平行,待测包裹整体近似垂直地放置在地面或平台上,所以,旋转支持面和目标点云后,支持面与世界坐标系中的z轴垂直时,目标点云与世界坐标系中的z轴近似平行。

外接框获取模块500,用于遍历旋转后的所述目标点云中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴和z轴上的最大值和最小值的集合,组合所述集合中的点,得到所述目标点云的外接框;

具体地,对旋转后的目标点云进行遍历操作,得到点云中的点的坐标分别在世界坐标系的x轴、y轴和z轴上的最大值和最小值的集合,然后根据集合中的点组合出8个顶点,构成目标点云的外接框。

高度计算模块600,用于根据所述外接框计算所述待测包裹的高度;

具体地,由于在拍摄时,是从上往下拍摄包裹的,只能看到包裹的上表面,上表面下的部分是空洞,因此,此处获得的目标点云的外接框并不是包裹的最小外接框,不能直接根据该外接框计算得到包裹的最小外接体积,只能根据外接框计算得到包裹的高度。

目标点云投影模块700,用于对所述目标点云沿z轴方向在x轴与y轴组成的平面上进行投影,获得所述待测包裹的最大投影截面;

具体地,将目标点云在xy平面上进行投影,其投影的目的是为了获得被测包裹的最大截面,此截面决定了待测包裹的截面积。

最小外接框获取模块800,用于对所述最大投影截面进行旋转,得到所述最大投影截面的最小外接框;

具体地,将投影后的最大投影截面进行旋转,以将最大投影截面从相机坐标系转换为世界坐标系,然后获取最大投影截面的最小外接框。

包裹外接体积计算模块900,用于根据所述最大投影截面的最小外接框以及所述待测包裹的高度计算所述待测包裹的最小外接体积。

具体地,得到最大投影截面的最小外接框和待测包裹的高度后,根据最小外接框的面积与待测包裹的高度值即可计算出待测包裹的最小外接体积。

可选的,本系统还包括:点云稀疏处理模块,用于对所述三维点云中的点云进行稀疏处理,去除所述三维点云中的冗杂点云。通过对点云进行稀疏处理,适当减少点云数据的处理量,避免点云数量过多,从而在最大程度保证测量精度的情况下提升效率。

本发明先测出包裹的高度值,然后计算出包裹的最大投影截面积,即可计算出包裹的最小外接体积,该计算方法可用于测量不规则非立方体包裹的最小外接体积,在测量包裹最小外接体积时,无需从多角度且多次获得包裹的各帧信息,也不需要进行大量的迭代计算,不仅可降低对测量过程的要求以及对设备的计算要求,而且简化了测量步骤,提高了测量效率;同时,本发明将支持面对应的点云删除,能够使得支持面上的物体与支持面相互独立,不再相互连通,降低因为点云互通导致的干扰,提高待测包裹的尺寸测量精准度和可靠性。

本发明可部署在手持智能终端上,智能终端可以集成或外接双目相机以及深度相机。本发明可通过app形式,快速部署在智能终端上,通过使用者对待测包裹的扫描,实时快速第给出待测包裹的体积信息。由于体积的限制,集成在智能终端上的双目相机或是深度相机可能存在测量上的限制,此时,可通过外接更大的相机,满足大体积包裹的测量需要。

根据本发明提供的第六实施例,如图6所示,本实施例是上述第五实施例的优化实施例,主要改进点在于,点云图像处理模块200包括:

平面拟合单元210,用于对所述三维点云进行平面拟合,找出支持点的数量最大的多个平面;

距离计算单元220,用于分别计算所述多个平面到相机中心的距离;

支持面获取单元230,用于选取距离所述相机中心最远的平面,作为所述支持面,并获取所述支持面的平面方程;

支持面分割单元240,用于根据所述支持面的平面方程,在所述三维点云中分割出所述支持面对应的点云。

本实施例中的各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

根据本发明提供的第七实施例,如图7所示,本实施例是上述第五实施例或第六实施例的优化实施例,主要改进点在于,点云旋转模块400包括:

平面夹角计算单元410,用于根据所述支持面的平面方程,计算所述支持面与世界坐标系的x轴和y轴组成的平面的夹角;

旋转单元420,用于根据所述夹角,分别对所述支持面和所述目标点云进行旋转,使得所述支持面与所述世界坐标系中的z轴垂直,并使得所述目标点云和所述世界坐标系中的z轴平行。

优选地,高度计算模块600包括:

高度计算单元,用于计算所述目标点云的外接框远离所述支持面的一面到所述支持面的距离,得到所述待测包裹的高度值。

本实施例中的各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

根据本发明提供的第八实施例,如图8所示,本实施例是上述第六实施例至第七实施例中任一实施例的优化实施例,主要改进点在于,最小外接框获取模块800包括:

特征矩阵计算单元810,用于计算所述最大投影截面的特征矩阵,并得到所述特征矩阵的最大特征值对应的第一特征向量和第二大特征值对应的第二特征向量;

最大投影截面旋转单元820,用于根据所述第一特征向量和所述第二特征向量,旋转所述最大投影截面,使得所述最大投影截面的两个主方向分别与所述世界坐标系的x、y轴平行;

最小外接框获取单元830,用于遍历旋转后的所述最大投影截面中的点,得到所述点的坐标分别在所述世界坐标系的x轴、y轴上的最大值和最小值的集合,组合所述集合中的点,得到所述最大投影截面的最小外接框。

本实施例中的各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本实施例中的各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

优选地,上述第一至第八实施例中,本发明可部署在手持智能终端上,智能终端可以集成或外接双目相机以及深度相机。移动终端可以运行android系统,本发明可通过android系统的app形式,快速部署在智能终端上,通过使用者对待测包裹的扫描,实时快速第给出待测包裹的体积信息。由于体积的限制,集成在智能终端上的双目相机或是深度相机可能存在测量上的限制,此时,可通过外接更大的相机,满足大体积包裹的测量需要。

本发明第九实施例,一种存储介质,所述存储介质存储有多条指令,所述多条指令被一个或者多个处理器执行,以实现上述第一实施例至第五实施例中任一实施例的包裹外接体积测量方法的步骤。

本发明第十实施例,如图9所示,一种移动终端,包括:

存储介质1,存储多条指令;

摄像头2,实现所述存储介质1储存的对应的摄像头执行指令;

处理器3,实现所述存储介质1储存的对应的处理器执行指令;

其中:所述摄像头2和所述处理器3用于执行所述存储介质1存储的指令,以实现上述第一实施例至第五实施例中任一实施例的包裹外接体积测量方法的步骤。

具体的,本实施例中,移动终端包括:存储器1、一个或多个(图中仅示出一个)处理器3,一个或多个(图中仅示出一个)摄像头2,一个或多个摄像头;这些组件通过一条或多条通讯总线信号线相互通讯。

摄像头可以是深度相机,双目相机或者深度摄像头等等。可以理解,图9所示的结构仅仅为示意,并不是对移动终端的结构造成限定,移动终端还可以包括比图9所示更多或者更少的组件,或者具有与图9所示不同的装置。图9所示的各组件可以采用硬件、软件或其组合实现。

本发明所述的包裹体积的测量方法的步骤可参见前面的方法实施例部分,为减少重复,此处不再赘叙。

存储器可用于存储软件程序以及模块,如本发明实施例中的包裹体积的测量方法及系统实施例对应的程序指令/模块,处理器通过允许存储在存储器内的软件程序/模块,从而执行各种功能应用以及数据处理,即实现上述的包裹体积的测量方法/系统。

存储器可包括高速随机存储器,还可包括非易失性存储器,比如一个或多个磁性存储装置、闪存或者其他非易失性固态存储器。所述的存储介质可为磁碟、光盘、只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)等。

处理器运行存储器内的各种软件、指令一致性移动终端的各种功能以及进行数据处理。摄像头用于拍摄视频,相当于是移动终端的眼睛,比如采用ccd摄像头等。

存储器可用于存储软件程序以及模块,如本发明实施例中的包裹体积的测量方法及系统实施例对应的程序指令/模块,处理器通过允许存储在存储器内的软件程序/模块,从而执行各种功能应用以及数据处理,即实现上述的包裹体积的测量方法/系统。

存储器可包括高速随机存储器,还可包括非易失性存储器,比如一个或多个磁性存储装置、闪存或者其他非易失性固态存储器。所述的存储介质可为磁碟、光盘、只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)等。

处理器运行存储器内的各种软件、指令一致性移动终端的各种功能以及进行数据处理。摄像头用于拍摄视频,相当于是移动终端的眼睛,比如采用ccd摄像头等。

本发明实施例中,包裹体积的测量方法及系统、存储介质与移动终端属于同一构思,在移动终端上,通过处理器执行存储介质中存储的指令,可以运行相应的包裹体积的测量方法实施例中提供的方法,其具体实现过程详见前面的包裹体积的测量方法实施例,此处不再赘述。

需要说明的是,本领域普通测试人员可以理解实现本发明实施例包裹体积的测量方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,计算机程序可存储于一计算机可读取存储介质中,如存储在移动终端的存储器中,并被该移动终端内的至少一个处理器执行,在执行过程中可包括如包裹体积的测量方法实施例的流程。

应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1