CN111696152A - 检测包裹堆垛的方法、装置、计算设备、系统及存储介质 - Google Patents
检测包裹堆垛的方法、装置、计算设备、系统及存储介质 Download PDFInfo
- Publication number
- CN111696152A CN111696152A CN202010534847.3A CN202010534847A CN111696152A CN 111696152 A CN111696152 A CN 111696152A CN 202010534847 A CN202010534847 A CN 202010534847A CN 111696152 A CN111696152 A CN 111696152A
- Authority
- CN
- China
- Prior art keywords
- stack
- height
- layer
- cloud data
- point cloud
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Geometry (AREA)
- Finance (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Length Measuring Devices With Unspecified Measuring Means (AREA)
Abstract
本申请提出了检测包裹堆垛的方法、装置、计算设备、系统及存储介质,能够提高检测包裹堆垛的准确度。其中,一种检测包裹堆垛的方法,包括:获取第N层堆垛的第一深度图像,N为正整数,所述第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像;生成第一深度图像对应的第一点云数据;根据所述第一点云数据,确定第N层堆垛的体积;根据各层堆垛的体积,确定包裹堆垛的总体积。
Description
技术领域
本申请涉及物流自动化技术领域,特别涉及检测包裹堆垛的方法、装置、计算设备、系统及存储介质。
背景技术
在物流的应用场景中,需要将多个包裹堆积成垛,形成包裹堆垛。包裹堆垛的体积需要进行测量。
目前,为了对包裹堆垛进行体积测量,通常在多层堆垛堆积完成之后,测量包裹堆垛轮廓确定包裹堆垛的总体积。例如,通过卷尺等方式进行测量。
然而,测量堆积完成之后包裹堆垛的总体积的方式存在较大测量误差。
因此,如何提高对包裹堆垛的体积的测量准确度是需要解决的技术问题。
发明内容
本申请提出了检测包裹堆垛的方法、装置、计算设备、系统及存储介质,能够提高对包裹堆垛的检测准确度。
根据本申请一个方面,提供一种检测包裹堆垛的方法,包括:
获取第N层堆垛的第一深度图像,所述N为正整数,所述第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像;
生成第一深度图像对应的第一点云数据;
根据第一点云数据,确定第N层堆垛的体积;
根据各层堆垛的体积,确定包裹堆垛的总体积。
在一些实施例中,所述获取第N层堆垛的第一深度图像,包括:
在接收到来自触发器的表示第N层堆垛完成堆积的触发信号时,将深度相机当前采集的深度图像作为第N层堆垛对应的所述第一深度图像,所述N为正整数;或者
在堆积第N层堆垛过程中,当深度相机采集的多帧深度图像相同时,确定完成对第N层堆垛的堆积,并将所述多帧深度图像之一作为所述第一深度图像。
在一些实施例中,所述根据第一点云数据,确定第N层堆垛的体积,包括:
在所述第一点云数据中去除第N层堆垛之外的点,得到第N层堆垛的第二点云数据;
根据所述第二点云数据,确定第N层堆垛的体积。
在一些实施例中,在所述第一点云数据中去除第N层堆垛之外的点,得到第N层堆垛的第二点云数据,包括:
根据载物平台的高度,确定第一层堆垛对应的高度阈值,所述高度阈值高于或等于所述载物平台的高度、并且低于所述载物平台的高度与单个包裹的高度之和,所述载物平台用于逐层堆积包裹;
根据第一层堆垛对应的高度阈值,将第一层堆垛的第一点云数据中低于第一层堆垛对应的高度阈值的点去除掉,得到第一层堆垛的第二点云数据;
依次类推,在N大于1时,根据当包裹堆积到第N-1层高时该包裹堆垛的总高度,确定第N层堆垛对应的高度阈值,所述第N层堆垛对应的高度阈值高于或等于当包裹堆积到第N-1层高时该包裹堆垛的总高度、并且低于当包裹堆积到第N-1层高时该包裹堆垛的总高度与单个包裹的高度之和;
根据第N层堆垛对应的高度阈值,将第N层堆垛的第一点云数据中低于第N层堆垛对应的高度阈值的点去除掉,得到第N层堆垛的第二点云数据。
在一些实施例中,所述根据所述第二点云数据,确定第N层堆垛的体积,包括:
根据第一点云数据的高度分布,确定与第一点云数据中最多点对应的高度值;
根据所述高度值,确定当包裹堆积到第N层高时该包裹堆垛的总高度;
计算当包裹堆积到第N层高时该包裹堆垛的总高度与当包裹堆积到第N-1层高时该包裹堆垛的总高度之间的差值,并将该差值作为第N层堆垛的单层高度根据所述第二点云数据,确定第N层堆垛的底面积,所述底面积用于描述所述第N层堆垛在预定平面内的投影面积,所述预定平面与载物平台所处平面重合或平行;
根据所述底面积和所述单层高度,确定第N层堆垛的体积。
在一些实施例中,根据所述第二点云数据,确定第N层堆垛的底面积,包括:
确定第二点云数据在像素坐标系中掩码图;
确定掩码图中连通区域;
将连通区域的边界点投影到世界坐标系中,得到连通区域对应的包裹区域;
根据包裹区域的尺寸,确定包裹区域的面积,并将其作为所述底面积;或者,
在预定平面内布置栅格阵列,所述预定平面与载物平台所处平面重合或平行;
将所述第二点云数据投影至预定平面,得到所述第二点云数据的投影点;
对预定平面进行栅格化处理,并确定每个栅格是否包含所述投影点;
确定包含投影点的栅格的总面积,并将其作为所述底面积。
在一些实施例中,所述根据所述第二点云数据,确定第N层堆垛的体积之前,进一步包括:
基于当包裹堆积到第N层高时包裹堆垛的总高度,确定第N层堆垛的高度保留范围,所述高度保留范围包括所述当包裹堆积到第N层高时包裹堆垛的总高度;
过滤掉所述第二点云数据中高度处于所述高度保留范围之外的点。
在一些实施例中,所述根据所述高度值,确定当包裹堆积到第N层高时包裹堆垛的总高度,包括:
以所述高度值为基准,确定包含所述高度值的高度区间,计算所述高度区间内点的高度均值,并将高度均值作为当包裹堆积到第N层高时包裹堆垛的总高度;或者
将所述高度值作为所述当包裹堆积到第N层高时包裹堆垛的总高度。
在一些实施例中,上述方法进一步包括:
确定单个包裹的体积;
根据所述总体积和所述单个包裹的体积,确定包裹堆垛中包裹的数量。
在一些实施例中,上述方法进一步包括:
确定载物平台在所述世界坐标系中坐标;
获取深度相机对未放置包裹的载物平台拍摄的第三深度图像;
根据第三深度图像和载物平台在所述世界坐标系中的坐标,确定所述深度相机的外参。
在一些实施例中,所述生成第一深度图像对应的第一点云数据,包括:
根据第一深度图像、所述深度相机的内参和所述外参,生成在世界坐标系下的第一点云数据。
根据本申请一个方面,提供一种检测包裹堆垛的装置,包括:
图像获取单元,获取第N层堆垛的第一深度图像,所述N为正整数,所述第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像;
映射单元,生成第一深度图像对应的第一点云数据;
体积确定单元,根据第一点云数据,确定第N层堆垛的体积,并根据各层堆垛的体积,确定包裹堆垛的总体积。
根据本申请一方面,提供一种计算设备,包括:存储器;处理器;程序,存储在该存储器中并被配置为由所述处理器执行,所述程序包括用于执行根据本申请的检测包裹堆垛的方法的指令。
根据本申请一方面,提供一种存储介质,存储有程序,所述程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行根据本申请的检测包裹堆垛的方法。
根据本申请一方面,提供一种检测包裹堆垛的系统,包括:载物平台,用于逐层堆积包裹;深度相机,布置在所述载物平台上方;计算设备,用于执行检测包裹堆垛方法。
综上,根据本申请实施例的检测包裹堆垛的方案,可以在逐层堆积包裹的过程中,获取堆积每层堆垛时的深度数据,进而获取每层堆垛的点云数据,从而能够确定每层堆垛的体积,并将各层堆垛的体积之和作为总体积。这样,本申请的检测包裹堆垛的方案,通过自动检测每层堆垛的体积,减轻了上下层包裹相互遮挡带来的对体积测量的影响,能够提高包裹堆垛检测的准确度。
附图说明
图1A示出了根据本申请一些实施例的检测包裹堆垛的系统的示意图;
图1B示出了根据本申请一些实施例的相机坐标系和世界坐标系的示意图;
图2A示出了根据本申请一些实施例的检测包裹堆垛的方法200的流程图;
图2B示出了一层堆垛的示意图;
图2C示出了二层堆垛的示意图;
图2D示出了三层堆垛的示意图;
图2E示出了根据本申请一些实施例的确定单层包裹体积的方法的流程图;
图2F示出了第一层堆垛对应的第一点云数据;
图2G示出了第二层堆垛对应的第一点云数据;
图2H示出了第二层堆垛对应的第二点云数据;
图3示出了根据本申请一些实施例的检测包裹的方法300的流程图;
图4A示出了单层堆垛的示意图;
图4B示出了根据本申请一些实施例的确定单个包裹的体积的方法400的流程图;
图5示出了根据本申请一些实施例的获取第一深度图像的方法500的流程图;
图6示出了根据本申请一些实施例的获取第一深度图像的方法600的流程图;
图7示出了根据本申请一些实施例的获取第二点云数据的方法700的流程图;
图8示出了根据本申请一些实施例的确定单层堆垛的体积的方法800的流程图;
图9A示出了根据本申请一些实施例的确定单层堆垛的底面积的方法900的流程图;
图9B示出了根据本申请一些实施例的掩码图;
图9C示出了连通区域投影至世界坐标系后得到的包裹区域的示意图;
图10示出了根据本申请一些实施例的确定单层堆垛的底面积的方法1000的流程图;
图11示出了根据本申请一些实例的过滤第二点云数据的方法1100的流程图;
图12示出了根据本申请一些实施例的检测包裹堆垛的装置1200的示意图;
图13示出了根据本申请一些实施例的计算设备的示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请进一步详细说明。
图1A示出了根据本申请一些实施例的检测包裹堆垛的系统的示意图。如图1A所示,检测包裹堆垛的系统包括载物平台110、深度相机120和计算设备130。载物平台110用于逐层堆积包裹。载物平台110例如为托盘或者用于堆积包裹的地面区域。深度相机120例如可以通过支架140部署在载物平台110的上方。深度相机120的视野覆盖载物平台110。在一些实施例中,系统100还可以包括触发器150。触发器150例如安装在支架140上。
深度相机120例如可以是结构光相机、时间飞行(Time of Flight,缩写为ToF)相机、双目视觉(Stereo)相机等。深度相机120可以对载物平台区域进行图像采集,并向计算设备130实时输出深度图像。深度相机120的相机坐标系例如为图1B中坐标系O1(X1,Y1,Z1)。例如,包裹堆垛160上一个点a1在相机坐标系中坐标假设为(x0,y0,z0)。点a1在深度图像中对应的像素点为P1。像素点P1的数据例如为(u,v,z)。其中,(u,v)为P1的像素坐标。z为深度值。计算设备130可以根据深度相机120的内参,根据(u,v,z)确定(x0,y0,z0)。换言之,深度图像中像素点P1的深度值为对应的点a1在相机坐标系Z1上的坐标值。Z1坐标轴平行于深度相机120的镜头方向(即视野方向)。在一些实施例中,本申请实施例可以根据下述方式计算(x0,y0,z0)。
x0=(u-u0)*z/f,y0=(v-v0)*z/f,z0=z,其中u0 v0 f为相机内参。f为焦距。u0,v0表示深度相机的主点的坐标。主点为深度相机的主光轴与成像平面的交点。载物平台110上可以建立世界坐标系(也可以称系统坐标系)。例如图1B示出了世界坐标系O2(X2,Y2,Z2)。世界坐标系的X2Y2平面平行于载物平台110的载物平台或者与载物平台110共面。载物平台110的高度以及各层堆垛的高度均可以标识为坐标轴Z2上的坐标值。
触发器150与计算设备130连接。在载物平台上完成一层堆垛的堆积时,工作人员可以对触发器150进行触发操作。响应于触发操作,触发器150可以向计算设备130发送表示一层堆垛完成堆积的触发信号。这样,计算设备130可以根据触发信号,确定一层堆垛完成堆积。
计算设备130例如可以是服务器、笔记本电脑和平板电脑等智能设备。计算设备130可以根据来自深度相机120的深度图像,确定载物平台110上包裹堆垛的体积。
图2A示出了根据本申请一些实施例的检测包裹堆垛的方法200的流程图。方法200可以由计算设备130执行。
在步骤S201中,获取第N层堆垛的第一深度图像。第N层堆垛的第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像。本申请的实施例可以在载物平台110上逐层堆积包裹。N为正整数。例如,在堆积第一层堆垛时,步骤S201可以获取第一层堆垛对应的第一深度图像。在堆积第二层堆垛时,步骤S201可以获取第二层堆垛对应的第一深度图像。总之,方法200可以针对每层堆垛,执行步骤S201,从而能够获取到每层堆垛的第一深度图像。例如,图2B示出了一层堆垛的示意图。步骤S201可以将对图2B中载物平台拍摄的深度图像作为第一层堆垛的第一深度图像。图2C示出了两层堆垛的示意图。步骤S201可以将对图2C中载物平台拍摄的深度图像作为第二层堆垛的第一深度图像。图2D示出了三层堆垛的示意图。步骤S201可以将对图2D中载物平台拍摄的深度图像作为第三层堆垛的第一深度图像。
在步骤S202中,生成第一深度图像对应的第一点云数据。例如,步骤S202可以生成世界坐标系下的第一点云数据。世界坐标系例如为图1B中三维坐标系O2,但不限于此。基于深度相机的内参和外参,步骤S202可以根据第一深度图像,确定第一点云数据。第一点云数据中点与第一深度图像中像素点对应。
在步骤S203中,根据第一点云数据,确定第N层堆垛的体积。
在步骤S204中,根据各层堆垛的体积,确定包裹堆垛的总体积。
综上,根据本申请实施例的检测包裹堆垛的方法200,可以在逐层堆积包裹的过程中,获取堆积每层堆垛时的深度数据,进而获取每层堆垛的点云数据,从而能够确定每层堆垛的体积,并将各层堆垛的体积之和作为总体积。这样,本申请的检测包裹堆垛的方法200,通过自动检测每层堆垛的体积,减轻了上下层包裹相互遮挡带来的对体积测量的影响,能够提高包裹堆垛检测的准确度。
在一些实施例中,步骤S203可以包括步骤S2031和S3032。
如图2E所示,在步骤S2031中,在第一点云数据中去除第N层堆垛之外的点,得到第N层堆垛的第二点云数据。这里,为了获取与第N层堆垛相关的点云数据,步骤S2031可以对第一点云数据中点进行过滤。例如,步骤S2031可以去除掉处于第N层堆垛之下的干扰点,从而获取用于表征第N层堆垛外表面的第二点云数据。这里,第二点云数据包括第N层堆垛上表面的点和一部分处于包裹侧面的点。在一些实施例中,第N层堆垛例如包括多个包裹。第N层堆垛的第二点云数据可以认为是对第N层中包裹形成的堆垛层的外表面的采样数据。
为了更形象说明步骤S2031过滤点的过程,下面结合图2F至2H进行说明。
图2F示出了第一层堆垛对应的第一点云数据。第一点云数据中区域205表示第一层包裹对应的第二点云数据,区域206表示载物平台对应的点云数据。步骤S2031可以滤除区域206,得到第一层堆垛对应第二点云数据。
图2G示出了第二层堆垛对应的第一点云数据。图2G中区域207为第二层堆垛的第二点云数据,区域208表示第一层堆垛表面的点云数据,区域209表示载物平台对应的点云数据。步骤S2031可以去除掉区域208和209,得到图2H所示的第二点云数据207。
在步骤S2032中,根据第二点云数据,确定第N层堆垛的体积。这里,根据第二点云数据可以确定第N层堆垛的尺寸信息,进而确定第N层堆垛的体积。
图3示出了根据本申请一些实施例的检测包裹堆垛的方法300的流程图。方法300例如可以由计算设备130执行。
在步骤S301中,确定载物平台在世界坐标系中坐标。世界坐标系例如为图1B中坐标系O2。步骤S301可以确定载物平台中一个或多个参考点的坐标。参考点例如为载物平台的4个角点。载物平台在世界坐标系中高度例如为0。
在步骤S302中,获取深度相机对未放置包裹的载物平台拍摄的第三深度图像。
在步骤S303中,根据第三深度图像和载物平台在世界坐标系中的坐标,确定深度相机的外参。深度相机的外参包括旋转矩阵和平移矩阵。深度相机的外参例如可以表示为矩阵形式。外参的矩阵例如为TC。
例如,载物平台上一个点Q的在世界坐标系中坐标为(x,y,z)。点Q在第一深度图像中对应像素点P的信息为[uk,vk,wk]T。其中,(uk,vk)表示像素点P的像素坐标。wk表示深度值。
像素点P与点Q的数学关系可以用如下公式表示。
[uk,vk,wk]T=KC[I|0]TCM
其中,KC表示深度相机的内参,TC表示深度相机的外参。I为正交矩阵,M表示点Q在世界坐标系中坐标。
综上,方法300通过步骤S301至S303,可以对深度相机的外参进行标定。另外说明的是,计算设备也可以采用标定板等方式对深度相机的外参进行标定。
在一些应用场景中,载物平台上放置的包裹的外形尺寸相同。为了根据总体积确定包裹堆垛的包裹总数,方法300可以执行步骤S304,确定单个包裹的体积。
在一些实施例中,计算设备可以存储单个包裹的设计尺寸或者体积。步骤S304可以本地读取单个包裹的设计尺寸,并计算单个包裹的体积。或者,步骤S304可以本地读取单个包裹的体积。
在一些实施例中,计算设备可以根据包裹的深度图像,计算单个包裹的体积。如图4A所示,载物平台110上可以放置预设包裹数量的单层堆垛。这里,放置单层堆垛是为了测量单个包裹的体积。单层堆垛可以是一个或多个包裹。步骤S304例如可以实施为方法400。
如图4B所示,在步骤S401中,获取单层堆垛的第一深度图像,即获取载物平台上放置的一层包裹的第一深度图像。
在步骤S402中,根据单层堆垛的第一深度图像,生成在世界坐标系下与单层堆垛对应的第一点云数据。
对于与单层堆垛对应的第一点云数据,方法400可以执行步骤S403,去除单层堆垛之下的点,得到与单层堆垛对应的第二点云数据。
在步骤S404中,根据与单层堆垛对应的第二点云数据,确定单层堆垛的总体积。
在步骤S405中,根据单层堆垛的总体积和单层堆垛包括的包裹数量,确定单个包裹的体积。这里单个包裹的体积为单层堆垛中包裹的体积均值。综上,方法400通过计算多个包裹的体积均值,可以提高对单个包裹的体积测量结果的准确度。
如上所述,步骤S304可以在进行逐层堆垛之前,先确定单个包裹的体积。
在步骤S305中,获取在堆积第N层堆垛时拍摄的第一深度图像。N为正整数,取值范围为包裹堆垛的层数范围。在堆积第N层堆垛时拍摄的第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像。例如,包裹堆垛有10层。N取值为1至10。在逐层堆积包裹时,方法300通过多次执行步骤S305,可以获取各层堆垛的第一深度图像。
在一些实施例中,步骤S305可以在第N层堆垛完成堆积时,获取第N层堆垛的第一深度图像。例如,每次工作人员完成堆垛时,可以对触发器进行触发操作。触发器可以向计算设备发送表示第N层堆垛完成堆积的触发信号。步骤S305例如可以实施为方法500。
如图5所示,在步骤S501中,接收到来自触发器的触发信号。在一些实施例中,触发器每次发送的触发信号可以是相同的信号。计算设备可以根据已接收触发信号的次数,确定完成堆积的堆垛的层数。例如,计算设备在第一次接收到触发信号时,确定第一层堆垛完成堆积。在第二次接收到触发信号时,计算设备确定第二层堆垛完成堆积,依次类推。在一些实施例中,触发器发送的触发信号包括序号标识。序号标识可以表示触发器发出的触发信号的发送序号。例如,序号标识为数字信息。序号标识与完成堆积的堆垛层的层数相同。这样,计算设备可以根据序号标识确定完成堆积的堆垛层的层数。
在步骤S502中,在接收到表示第N层堆垛完成堆积的触发信号时,将深度相机当前采集的深度图像作为第一深度图像。综上,方法500可以根据触发器的触发信号,确定第N层堆垛是否完成堆积,进而在第N层堆垛完成堆积时获取第N层堆垛的第一深度图像。
在一些实施例中,步骤S305可以根据深度图像确定第N层堆垛是否完成堆积。例如,步骤S305可以实施为方法600。
在堆积第N层堆垛过程中,方法600可以执行步骤S601,获取深度相机采集的多帧深度图像。
在步骤S602中,确定多帧深度图像是否相同。这里,步骤S602可以判断连续的多帧(例如为3帧)深度图像是否相同。对于多帧深度图像,步骤S602可以判断每帧深度图像中各像素点的深度值是否与其他深度图像中相应位置的像素点的深度值相同。换言之,步骤S602可以判断不同深度图像在相同像素坐标处的深度值是否相同。如果多帧深度图像在相同像素坐标处的深度值相同。步骤S602可以确定多帧深度图像相同。这里,多帧深度图像相同可以表明第N层堆垛的包裹数量没有变化。
当步骤S602深度相机采集的多帧深度图像相同时,方法600可以执行步骤S603,确定完成对第N层堆垛的堆积,将多帧深度图像之一作为第一深度图像。换言之,如果连续多帧深度图像没有什么变化,步骤S603可以确定第N层堆垛没有增加新的包裹,即确定第N层堆垛完成堆积。另外,多帧深度图像的最早采集时间点可以作为完成第N层堆垛的堆积的时刻。多帧深度图像的最早采集的图像帧与最晚采集的图像帧之间时差为第一时长。
综上,方法600可以根据深度图像是否有变化,确定第N层堆垛是否完成堆积。
需要说明的是,在单层堆垛的堆积过程中,任意相邻两次堆积操作的时差不超过第二时长。单次堆积操作可以放置至少一个包裹。本申请的实施例可以设置第一时长大于第二时长。这样,方法600可以在单层堆垛完成堆积之前避免出现多帧深度图像相同的情况,从而能够准确判断单层堆垛是否堆积完成。
在一些实施例中,完成第N层堆垛的堆积的时刻与堆积第N+1层堆垛的第一个包裹的时刻之间的时差为第三时长。计算设备可以在第N层堆垛完成堆积后,间隔预定时长后再重新执行方法600,以便判断第N+1层堆垛是否完成堆积。本申请的实施例可以设置预定时长大于第二时长。另外说明的是,本申请实施例在第N层堆垛完成堆积的预定时长之后重新执行方法600时,可以将当前时刻新采集的深度图像作为第一帧深度图像,并判断第一帧深度图像以及之后的深度图像是否存在连续多帧深度图像相同。
在预定时长不超过第三时长的场景中,第三时长与预定时长之差小于第一时长。本申请实施例可以避免在第N层堆垛完成堆积后的预定时长内重复执行方法600,从而避免在该预定时长内重复执行方法600引起的判断错误(即避免在该预定时长内执行方法600而确定第N+1层堆垛完成堆积的情况出现)。
在预定时长大于第三时长的场景中,预定时长与第三时长之差小于堆积第N+1层堆垛的总时长。这样,本申请实施例可以避免在完成第N层堆垛的堆积的时刻与堆积第N+1层堆垛的第一个包裹的时刻之间的时间段内重复执行方法600,从而避免在该时间段内重复执行方法600引起的判断错误。
在一些实施例中,计算设备可以在确定N层堆垛完成堆积后,可以继续采集深度图像,并判断当前采集的深度图像是否与第N层堆垛的第一深度图像是否相同,在确定当前采集的深度图像与第N层堆垛的第一深度图像不同时(即在开始堆积第N+1层堆垛时),计算设备可以继续执行方法600,即获取第N+1层堆垛的第一深度图像。
综上,计算设备130可以多次执行步骤S305,而获取各层堆垛对应的第一深度图像。
以第N层堆垛为例,在获取到第N层堆垛的第一深度图像时,方法300可以执行步骤S306。
在步骤S306中,生成第一深度图像对应的第一点云数据。例如,步骤S306可以生成世界坐标系下的第一点云数据。世界坐标系例如为图1B中三维坐标系O2,但不限于此。基于深度相机的内参和外参,步骤S306根据第一深度图像,确定第一点云数据。第一点云数据中点与第一深度图像中像素点对应。
在步骤S307中,在第一点云数据中去除第N层堆垛之外的点,得到第N层堆垛的第二点云数据。这里,为了获取与第N层堆垛相关的点云数据,步骤S307可以对第一点云数据中点进行过滤。例如,步骤S307可以去除掉处于第N层堆垛之下的干扰点,从而获取用于表征第N层堆垛外表面的第二点云数据。第N层堆垛例如包括一个或多个包裹。
在一些实施例中,步骤S307可以实施为方法700。
如图7所示,在步骤S701中,根据载物平台的高度,确定第一层堆垛对应的高度阈值。第一层堆垛对应的高度阈值高于或等于载物平台的高度、并且低于载物平台的高度与单个包裹的高度之和。在包裹为长方体,单个包裹的高度例如为长方体的最短边长。在包裹为麻袋等不规则形状时,单个包裹的高度例如为本申请实施例要堆积的包裹中最低包裹的(最小)高度。在一个例子中,可以设置第一层堆垛对应的高度阈值等于载物平台的高度与一大于1且接近于1的常数的乘积,例如,高度阈值=载物平台的高度*1.05。
在步骤S702中,根据第一层堆垛对应的高度阈值,将第一层堆垛的第一点云数据中低于第一层堆垛对应的高度阈值的点去除掉,得到第一层堆垛的第二点云数据。在一些应用场景中,载物平台对应的点云数据的高度存在一定波动。高度阈值略高于载物平台的高度,通过基于高度阈值进行点过滤,步骤S702可以充分过滤从载物平台高度至高度阈值的范围内的干扰点,从而提高对第一点云数据的去噪效果。
另外,依次类推,在N大于1时,方法可以执行步骤S703,根据当包裹堆积到第N-1层高时该包裹堆垛的总高度确定第N层堆垛对应的高度阈值。第N层堆垛对应的高度阈值高于或等于当包裹堆积到第N-1层高时该包裹堆垛的总高度。并且,第N层堆垛对应的高度阈值低于当包裹堆积到第N-1层高时该包裹堆垛的总高度与单个包裹的高度之和。在一些实施例中,步骤S703可以设置第N层堆垛对应的高度阈值等于当包裹堆积到第N-1层高时该包裹堆垛的总高度与一大于1且接近于1的常数的乘积,例如,第N层堆垛对应的高度阈值=当包裹堆积到第N-1层高时该包裹堆垛的总高度*1.05。当包裹堆积到第N-1层高时该包裹堆垛的总高度为第N-1层堆垛的顶部在世界坐标系中高度。换言之,第N-1层堆垛的高度是计算设备确定的第N-1层堆垛中各包裹的统一高度值。
在步骤S704中,根据第N层堆垛对应的高度阈值,将第N层堆垛的第一点云数据中低于第N层堆垛对应的高度阈值的点去除掉,得到第N层堆垛的第二点云数据。
综上,方法700可以对每层堆垛包裹的第一点云数据进行去噪处理,从而得到每层堆垛包裹的第二点云数据。
在步骤S308中,根据第二点云数据,确定第N层堆垛的体积。这里,第二点云数据可以确定第N层堆垛的尺寸信息,进而确定第N层堆垛的体积。
在步骤S309中,根据各层堆垛的体积,确定包裹堆垛的总体积。
在步骤S310中,根据总体积和单个包裹的体积,确定包裹的数量。另外,步骤S310还可以根据各层堆垛的体积,计算每一层堆垛中的包裹数量。
在一些实施例中,步骤S308可以实施为方法800。
如图8所示,在步骤S801中,根据第一点云数据的高度分布,确定与第一点云数据中最多点对应的高度值。例如,第一点云数据的数据规模为2000。其中,有1200个点的高度值相同。步骤S801可以将该1200个点的高度值作为与最多点对应的高度值。另外说明的是,第一点云数据中一个点高度例如可以用该点在世界坐标系O2中坐标轴Z2上的坐标值表示。换言之,第一点云数据中一个点的高度是该点到X2Y2平面的距离(即点到载物平台的距离)。
在步骤S802中,根据高度值,确定当包裹堆积到第N层高时包裹堆垛的总高度。例如,步骤S802可以将该高度值作为当包裹堆积到第N层高时包裹堆垛的总高度。又例如,步骤S802以该高度值为基准,确定包含该高度值的高度区间。高度值例如为h0,步骤S802可以将h0作为高度区间的中间值。另外,步骤S802可以计算高度区间内点的高度均值,并将高度均值作为当包裹堆积到第N层高时包裹堆垛的总高度。
综上,方法800可以通过分析点云数据的高度分布,进而采用一个统一高度值表征当包裹堆积到第N层高时包裹堆垛的总高度。当包裹堆积到第N层高时包裹堆垛的总高度实际上是第N层堆垛中各包裹顶部的统一高度。
在步骤S803中,计算当包裹堆积到第N层高时包裹堆垛的总高度与当包裹堆积到第N-1层高时包裹堆垛的总高度之间的差值,并将该差值作为第N层堆垛的单层高度。
在步骤S804中,根据第二点云数据,确定第N层堆垛的底面积。底面积用于描述第N层堆垛在预定平面内的投影面积。预定平面与载物平台所处平面重合或平行。
在步骤S805中,根据底面积和单层高度,确定第N层堆垛的体积。
综上,方法800可以利用点云数据确定第N层堆垛的高度尺寸和第N层堆垛的顶部区域对应的点云数据(即第三点云数据),进而确定第N层堆垛的体积。
在一些实施例中,步骤S804可以实施为方法900。
如图9A所示,在步骤S901中,确定第二点云数据在像素坐标系中掩码图。这里,掩码图为二值图像。掩码图中像素点的取值为0和1。其中,掩码图中取值为1的像素点对应第三点云数据。
在步骤S902中,确定掩码图中连通区域。例如图9B示出了掩码图中一个连通区域的示意图。在一些实施例中,在第N层堆垛排列整齐并且紧密时,第N层堆垛中包裹可以被认为是一个整体。相应的,掩码图中通常有一个连通区域。在第N层堆垛中包裹之间存在间隙时,掩码图中通常有多个连通区域。
在步骤S903中,将连通区域的边界点投影到世界坐标系中,得到每个连通区域对应的包裹区域。包裹区域高度为第N层堆垛的高度。这里,连通区域的边界点投影到世界坐标系之后,得到连通区域的边界对应的离散点。步骤S903可以将离散点的外包框确定的区域作为包裹区域。这里包裹区域可以表示第N层堆垛的上表面。例如图9C示出了连通区域投影至世界坐标系后得到的包裹区域的示意图。如图9C所示,区域906为包裹区域,对应第N层堆垛的第二点云数据。
在步骤S904中,根据包裹区域的尺寸,确定包裹区域的面积,并将其作为底面积。
综上,方法900可以通过处理掩码图的方式确定第N层堆垛在于高度方向垂直的平面内的投影区域(即包裹区域),从而确定第N层堆垛的底面积。
在一些实施例中,步骤S804可以实施为方法1000。
如图10所示,在步骤S1001中,将第三点云数据投影至预定平面,得到第三点云数据的投影点,预定平面平行于载物平台。预定平面例如为X2Y2平面。
在步骤S1002中,对预定平面进行栅格化处理,并确定每个栅格是否包含投影点。
在步骤S1003中,确定包含投影点的栅格的总面积,并将其作为底面积。这里,包含投影点的栅格的总面积可以认为是第N层堆垛在预定平面内的投影面积。
综上,方法1000通过栅格化点云数据的投影点的方式,可以确定单层堆垛在预定平面内的投影面积,从而确定单层堆垛的底面积。
在一些实施例中,方法300在执行步骤S308之前,还可以对第二点云数据进行过滤处理。第N层堆垛对应的第一点云数据主要包括第N层堆垛顶部的点和第N层堆垛的侧面的点,图11示出了根据本申请一些实例的过滤第二点云数据的方法1100的流程图。
如图11所示,在步骤S1101中,基于当包裹堆积到第N层高时该包裹堆垛的总高度,确定第N层堆垛的高度保留范围。在一些实施例中,当包裹堆积到第N层高时该包裹堆垛的总高度可以处于高度保留范围中。第N层堆垛的高度例如为高度保留区间的中间值。
在步骤S1102中,过滤掉第二点云数据中处于高度保留范围之外的点。这里,高度保留范围内的点主要是第N层堆垛的顶部点。高度保留范围之外的点主要包括第N层堆垛中处于包裹侧面的点。综上,通过高度保留范围对第二点云数据进行过滤,步骤S1102可以去除掉第N层堆垛中处于包裹侧面的点,而使得过滤后的第二点云数据表征第N层堆垛的顶部区域(即上表面)。
图12示出了根据本申请一些实施例的检测包裹堆垛的装置1200的示意图。检测包裹堆垛的装置1200例如可以部署在计算设备130中。装置1200可以包括图像获取单元1201、映射单元1202、过滤单元1203和体积确定单元1204。
图像获取单元1201获取在堆积第N层堆垛时拍摄的第一深度图像。N为正整数。第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像。
映射单元1202,生成第一深度图像对应的第一点云数据。例如,根据第一深度图像、深度相机的内参和外参,映射单元1202可以生成在世界坐标系下的第一点云数据。
体积确定单元1203根据第一点云数据,确定第N层堆垛的体积,并根据各层堆垛的体积,确定包裹堆垛的总体积。装置1200更具体的实施方式与方法200类似,这里不再赘述。
综上,根据本申请实施例的检测包裹堆垛的装置1200,可以在逐层堆积包裹的过程中,获取堆积每层堆垛时的深度数据,进而获取每层堆垛的点云数据,从而能够确定每层堆垛的体积,并将各层堆垛的体积之和作为总体积。这样,本申请的检测包裹堆垛的装置1200,通过自动检测每层堆垛的体积,减轻了上下层包裹相互遮挡带来的对体积测量的影响,能够提高包裹堆垛检测的准确度。
在一些实施例中,为了获取在堆积第N层堆垛时拍摄的第一深度图像,图像获取单元1201可以在接收到来自触发器的表示第N层堆垛完成堆积的触发信号时,将深度相机当前采集的深度图像作为所述第一深度图像。
在一些实施例中,在堆积第N层堆垛过程中,当深度相机采集的多帧深度图像相同时,图像获取单元1201可以确定完成对第N层堆垛的堆积,将多帧深度图像之一作为第一深度图像。
在一些实施例中,体积确定单元1203可以根据载物平台的高度,确定第一层堆垛对应的高度阈值。高度阈值高于或等于载物平台的高度、并且低载物平台的高度与单个包裹的高度之和载物平台用于逐层堆积包裹。根据第一层堆垛对应的高度阈值,体积确定单元1203可以将第一层堆垛的第一点云数据中低于第一层堆垛对应的高度阈值的点去除掉,得到第一层堆垛的第二点云数据。
依次类推,在N大于1时,体积确定单元1203可以根据当包裹堆积到第N-1层高时该包裹堆垛的总高度,确定第N层堆垛对应的高度阈值。第N层堆垛对应的高度阈值高于或等于当包裹堆积到第N-1层高时该包裹堆垛的总高度。并且,第N层堆垛对应的高度阈值低于当包裹堆积到第N-1层高时该包裹堆垛的总高度与单个包裹的高度之和。根据第N层堆垛对应的高度阈值,体积确定单元1203可以将第N层堆垛的第一点云数据中低于第N层堆垛对应的高度阈值的点去除掉,得到第N层堆垛的第二点云数据。
体积确定单元1203可以根据第一点云数据的高度分布,确定对应点数量最多的高度值。
根据高度值,体积确定单元1203可以确定当包裹堆积到第N层高时该包裹堆垛的总高度。例如,以高度值为基准,体积确定单元1203可以确定包含高度值的高度区间,计算高度区间内点的高度均值,并将高度均值作为当包裹堆积到第N层高时该包裹堆垛的总高度。又例如,体积确定单元1203可以将高度值作为当包裹堆积到第N层高时该包裹堆垛的总高度。
体积确定单元1203可以计算当包裹堆积到第N层高时该包裹堆垛的总高度与当包裹堆积到第N-1层高时该包裹堆垛的总高度之间的差值,并将该差值作为第N层堆垛的单层高度。基于当包裹堆积到第N层高时该包裹堆垛的总高度,体积确定单元1203可以确定第N层堆垛的高度保留范围,高度保留范围包括当包裹堆积到第N层高时该包裹堆垛的总高度。通过过滤掉所述第二点云数据中高度处于所述高度保留范围之外的点,体积确定单元1203得到第三点云数据。根据第三点云数据和第N层堆垛的单层高度,体积确定单元1203确定第N层堆垛的体积。
在一些实施例中,体积确定单元1203可以确定第三点云数据在像素坐标系中掩码图。体积确定单元1203可以确定掩码图中连通区域。在此基础上,体积确定单元1203可以将连通区域的边界点投影到所述世界坐标系中,得到连通区域对应的包裹区域。根据包裹区域的尺寸,体积确定单元1203可以确定包裹区域的面积。根据第N层堆垛的单层高度和包裹区域的面积,体积确定单元1204可以确定第N层堆垛的体积。
在一些实施例中,体积确定单元1203可以将第三点云数据投影至预定平面,得到第三点云数据的投影点。预定平面平行于载物平台。体积确定单元1203可以对预定平面进行栅格化处理,并确定每个栅格是否包含投影点。体积确定单元1203确定包含投影点的栅格的总面积,并且将总面积与第N层堆垛的单层高度之积作为第N层堆垛的体积。
在一些实施例中,体积确定单元1203可以确定单个包裹的体积。根据总体积和单个包裹的体积,体积确定单元1203可以确定包裹堆垛中包裹的数量。
在一些实施例中,映射单元1202可以确定载物平台在世界坐标系中坐标。
图像获取单元1201可以获取深度相机对未放置包裹的载物平台拍摄的第三深度图像。根据第三深度图像和载物平台在世界坐标系中的坐标,映射单元1202可以确定深度相机的外参。
图13示出了根据本申请一些实施例的计算设备的示意图。如图13所示,该计算设备包括一个或者多个处理器(CPU)1302、通信模块1304、存储器1306、用户接口1310,以及用于互联这些组件的通信总线1308。
处理器1302可通过通信模块1304接收和发送数据以实现网络通信和/或本地通信。
用户接口1310包括一个或多个输出设备1312,其包括一个或多个扬声器和/或一个或多个可视化显示器。用户接口1310也包括一个或多个输入设备1314。用户接口1310例如可以接收遥控器的指令,但不限于此。
存储器1306可以是高速随机存取存储器,诸如DRAM、SRAM、DDR RAM、或其他随机存取固态存储设备;或者非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备,或其他非易失性固态存储设备。
存储器1306存储处理器1302可执行的指令集,包括:
操作系统1316,包括用于处理各种基本系统服务和用于执行硬件相关任务的程序;
应用1318,包括用于实现上述检测包裹堆垛的各种程序,例如可以包括检测包裹堆垛的装置1200。这种程序能够实现上述各实例中的处理流程,比如可以包括检测包裹堆垛的方法。
另外,本申请的每一个实施例可以通过由数据处理设备如计算机执行的数据处理程序来实现。显然,数据处理程序构成了本发明。此外,通常存储在一个存储介质中的数据处理程序通过直接将程序读取出存储介质或者通过将程序安装或复制到数据处理设备的存储设备(如硬盘和或内存)中执行。因此,这样的存储介质也构成了本发明。存储介质可以使用任何类型的记录方式,例如纸张存储介质(如纸带等)、磁存储介质(如软盘、硬盘、闪存等)、光存储介质(如CD-ROM等)、磁光存储介质(如MO等)等。
因此本申请还公开了一种非易失性存储介质,其中存储有程序。该程序包括指令,所述指令当由处理器执行时,使得计算设备执行根据本申请的检测包裹堆垛的方法。
另外,本申请所述的方法步骤除了可以用数据处理程序来实现,还可以由硬件来实现,例如,可以由逻辑门、开关、专用集成电路(ASIC)、可编程逻辑控制器和嵌微控制器等来实现。因此这种可以实现本申请所述方法的硬件也可以构成本申请。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (14)
1.一种检测包裹堆垛的方法,其特征在于,包括:
获取第N层堆垛的第一深度图像,所述N为正整数,所述第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像;
生成第一深度图像对应的第一点云数据;
根据第一点云数据,确定第N层堆垛的体积;
根据各层堆垛的体积,确定包裹堆垛的总体积。
2.如权利要求1所述的方法,其特征在于,所述获取第N层堆垛的第一深度图像,包括:
在接收到来自触发器的表示第N层堆垛完成堆积的触发信号时,将深度相机当前采集的深度图像作为第N层堆垛对应的所述第一深度图像,所述N为正整数;或者
在堆积第N层堆垛过程中,当深度相机采集的多帧深度图像相同时,确定完成对第N层堆垛的堆积,并将所述多帧深度图像之一作为所述第一深度图像。
3.如权利要求1所述的方法,其特征在于,所述根据第一点云数据,确定第N层堆垛的体积,包括:
在所述第一点云数据中去除第N层堆垛之外的点,得到第N层堆垛的第二点云数据;
根据所述第二点云数据,确定第N层堆垛的体积。
4.如权利要求3所述的方法,其特征在于,在所述第一点云数据中去除第N层堆垛之外的点,得到第N层堆垛的第二点云数据,包括:
根据载物平台的高度,确定第一层堆垛对应的高度阈值,所述高度阈值高于或等于所述载物平台的高度、并且低于所述载物平台的高度与单个包裹的高度之和,所述载物平台用于逐层堆积包裹;
根据第一层堆垛对应的高度阈值,将第一层堆垛的第一点云数据中低于第一层堆垛对应的高度阈值的点去除掉,得到第一层堆垛的第二点云数据;
依次类推,在N大于1时,根据当包裹堆积到第N-1层高时该包裹堆垛的总高度,确定第N层堆垛对应的高度阈值,所述第N层堆垛对应的高度阈值高于或等于当包裹堆积到第N-1层高时该包裹堆垛的总高度、并且低于当包裹堆积到第N-1层高时该包裹堆垛的总高度与单个包裹的高度之和;
根据第N层堆垛对应的高度阈值,将第N层堆垛的第一点云数据中低于第N层堆垛对应的高度阈值的点去除掉,得到第N层堆垛的第二点云数据。
5.如权利要求3所述的方法,其特征在于,所述根据所述第二点云数据,确定第N层堆垛的体积,包括:
根据第一点云数据的高度分布,确定与第一点云数据中最多点对应的高度值;
根据所述高度值,确定当包裹堆积到第N层高时该包裹堆垛的总高度;
计算当包裹堆积到第N层高时该包裹堆垛的总高度与当包裹堆积到第N-1层高时该包裹堆垛的总高度之间的差值,并将该差值作为第N层堆垛的单层高度;
根据所述第二点云数据,确定第N层堆垛的底面积,所述底面积用于描述所述第N层堆垛在预定平面内的投影面积,所述预定平面与载物平台所处平面重合或平行;
根据所述底面积和所述单层高度,确定第N层堆垛的体积。
6.如权利要求5所述的方法,其特征在于,根据所述第二点云数据,确定第N层堆垛的底面积,包括:
确定第二点云数据在像素坐标系中掩码图;确定掩码图中连通区域;将连通区域的边界点投影到世界坐标系中,得到连通区域对应的包裹区域;根据包裹区域的尺寸,确定包裹区域的面积,并将其作为所述底面积;或者,
在预定平面内布置栅格阵列,所述预定平面与载物平台所处平面重合或平行;将所述第二点云数据投影至预定平面,得到所述第二点云数据的投影点;对预定平面进行栅格化处理,并确定每个栅格是否包含所述投影点;确定包含投影点的栅格的总面积,并将其作为所述底面积。
7.如权利要求5所述的方法,其特征在于,所述根据所述第二点云数据,确定第N层堆垛的体积之前,进一步包括:
基于当包裹堆积到第N层高时该包裹堆垛的总高度,确定第N层堆垛的高度保留范围,所述高度保留范围包括所述当包裹堆积到第N层高时该包裹堆垛的总高度;
过滤掉所述第二点云数据中高度处于所述高度保留范围之外的点。
8.如权利要求5所述的方法,其特征在于,所述根据所述高度值,确定当包裹堆积到第N层高时该包裹堆垛的总高度,包括:
以所述高度值为基准,确定包含所述高度值的高度区间,计算所述高度区间内点的高度均值,并将高度均值作为当包裹堆积到第N层高时包裹堆垛的总高度;或者
将所述高度值作为所述当包裹堆积到第N层高时包裹堆垛的总高度。
9.如权利要求1所述的方法,其特征在于,进一步包括:
确定单个包裹的体积;
根据所述总体积和所述单个包裹的体积,确定包裹堆垛中包裹的数量。
10.如权利要求1所述的方法,其特征在于,进一步包括:
确定载物平台在世界坐标系中坐标;
获取深度相机对未放置包裹的载物平台拍摄的第三深度图像;
根据第三深度图像和载物平台在所述世界坐标系中的坐标,确定所述深度相机的外参;
其中,所述生成第一深度图像对应的第一点云数据,包括:根据第一深度图像、所述深度相机的内参和所述外参,生成在所述世界坐标系下的第一点云数据。
11.一种检测包裹堆垛的装置,其特征在于,包括:
图像获取单元,获取第N层堆垛的第一深度图像,所述N为正整数,所述第一深度图像为完成第N层堆垛后、开始第N+1层堆垛前采集的包裹堆垛的俯视图像;
映射单元,生成第一深度图像对应的第一点云数据;
体积确定单元,根据第一点云数据,确定第N层堆垛的体积,并根据各层堆垛的体积,确定包裹堆垛的总体积。
12.一种计算设备,其特征在于,包括:
存储器;
处理器;
程序,存储在该存储器中并被配置为由所述处理器执行,所述程序包括用于执行权利要求1-10中任一项所述方法的指令。
13.一种存储介质,存储有程序,所述程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行如权利要求1-10中任一项所述的方法。
14.一种检测包裹堆垛的系统,其特征在于,包括:
载物平台,用于逐层堆积包裹;
深度相机,布置在所述载物平台上方;
计算设备,用于执行权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010534847.3A CN111696152B (zh) | 2020-06-12 | 2020-06-12 | 检测包裹堆垛的方法、装置、计算设备、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010534847.3A CN111696152B (zh) | 2020-06-12 | 2020-06-12 | 检测包裹堆垛的方法、装置、计算设备、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111696152A true CN111696152A (zh) | 2020-09-22 |
CN111696152B CN111696152B (zh) | 2023-05-12 |
Family
ID=72480761
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010534847.3A Active CN111696152B (zh) | 2020-06-12 | 2020-06-12 | 检测包裹堆垛的方法、装置、计算设备、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111696152B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112330693A (zh) * | 2020-11-13 | 2021-02-05 | 北京伟景智能科技有限公司 | 一种煤矸石检测方法及系统 |
WO2022106858A3 (en) * | 2020-11-23 | 2022-06-30 | Botsandus Ltd | A method for measuring and analysing packages for storage |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160019688A1 (en) * | 2014-07-18 | 2016-01-21 | University Of Georgia Research Foundation, Inc. | Method and system of estimating produce characteristics |
CN106846484A (zh) * | 2017-02-20 | 2017-06-13 | 深圳市唯特视科技有限公司 | 一种基于双视图三维重建的食物体积估计方法 |
CN108416804A (zh) * | 2018-02-11 | 2018-08-17 | 深圳市优博讯科技股份有限公司 | 获取目标物体体积的方法、装置、终端设备及存储介质 |
CN108537834A (zh) * | 2018-03-19 | 2018-09-14 | 杭州艾芯智能科技有限公司 | 一种基于深度图像的体积测量方法、系统及深度相机 |
CN108627092A (zh) * | 2018-04-17 | 2018-10-09 | 南京阿凡达机器人科技有限公司 | 一种包裹体积的测量方法、系统、储存介质及移动终端 |
WO2019154541A1 (en) * | 2018-02-09 | 2019-08-15 | Bayerische Motoren Werke Aktiengesellschaft | Methods and apparatuses for object detection in a scene represented by depth data of a range detection sensor and image data of a camera |
CN110321836A (zh) * | 2019-07-01 | 2019-10-11 | 芜湖启迪睿视信息技术有限公司 | 一种基于图像和激光点云图的输送物料检测方法 |
CN110425980A (zh) * | 2019-08-12 | 2019-11-08 | 深圳市知维智能科技有限公司 | 仓储设施内容物的体积的测量方法和系统 |
US20200086509A1 (en) * | 2018-09-13 | 2020-03-19 | The Charles Stark Draper Laboratory, Inc. | Food-Safe, Washable, Thermally-Conductive Robot Cover |
-
2020
- 2020-06-12 CN CN202010534847.3A patent/CN111696152B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160019688A1 (en) * | 2014-07-18 | 2016-01-21 | University Of Georgia Research Foundation, Inc. | Method and system of estimating produce characteristics |
CN106846484A (zh) * | 2017-02-20 | 2017-06-13 | 深圳市唯特视科技有限公司 | 一种基于双视图三维重建的食物体积估计方法 |
WO2019154541A1 (en) * | 2018-02-09 | 2019-08-15 | Bayerische Motoren Werke Aktiengesellschaft | Methods and apparatuses for object detection in a scene represented by depth data of a range detection sensor and image data of a camera |
CN108416804A (zh) * | 2018-02-11 | 2018-08-17 | 深圳市优博讯科技股份有限公司 | 获取目标物体体积的方法、装置、终端设备及存储介质 |
CN108537834A (zh) * | 2018-03-19 | 2018-09-14 | 杭州艾芯智能科技有限公司 | 一种基于深度图像的体积测量方法、系统及深度相机 |
CN108627092A (zh) * | 2018-04-17 | 2018-10-09 | 南京阿凡达机器人科技有限公司 | 一种包裹体积的测量方法、系统、储存介质及移动终端 |
US20200086509A1 (en) * | 2018-09-13 | 2020-03-19 | The Charles Stark Draper Laboratory, Inc. | Food-Safe, Washable, Thermally-Conductive Robot Cover |
CN110321836A (zh) * | 2019-07-01 | 2019-10-11 | 芜湖启迪睿视信息技术有限公司 | 一种基于图像和激光点云图的输送物料检测方法 |
CN110425980A (zh) * | 2019-08-12 | 2019-11-08 | 深圳市知维智能科技有限公司 | 仓储设施内容物的体积的测量方法和系统 |
Non-Patent Citations (1)
Title |
---|
刘玉身 等: "使用拟蒙特卡罗方法计算点模型的体积", 计算机辅助设计与图形学学报 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112330693A (zh) * | 2020-11-13 | 2021-02-05 | 北京伟景智能科技有限公司 | 一种煤矸石检测方法及系统 |
CN112330693B (zh) * | 2020-11-13 | 2023-12-29 | 北京伟景智能科技有限公司 | 一种煤矸石检测方法及系统 |
WO2022106858A3 (en) * | 2020-11-23 | 2022-06-30 | Botsandus Ltd | A method for measuring and analysing packages for storage |
GB2616777A (en) * | 2020-11-23 | 2023-09-20 | Dexory Ltd | A method for measuring and analysing packages for storage |
Also Published As
Publication number | Publication date |
---|---|
CN111696152B (zh) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11300964B2 (en) | Method and system for updating occupancy map for a robotic system | |
CN108074267B (zh) | 交点检测装置及方法、摄像头校正系统及方法及记录介质 | |
CN106033621B (zh) | 一种三维建模的方法及装置 | |
CN111696152B (zh) | 检测包裹堆垛的方法、装置、计算设备、系统及存储介质 | |
WO2016073108A1 (en) | Non-parametric method of and system for estimating dimensions of objects of arbitrary shape | |
CN113449532B (zh) | 检测包裹的方法、装置、计算设备、物流系统及存储介质 | |
CN112883820B (zh) | 基于激光雷达点云的道路目标3d检测方法及系统 | |
CN108474658A (zh) | 地面形态检测方法及系统、无人机降落方法和无人机 | |
CN111539943B (zh) | 基于多相机的锂电池极片堆叠位置测量方法、装置及系统 | |
CN109918977A (zh) | 确定空闲车位的方法、装置及设备 | |
CN109029250A (zh) | 一种基于三维相机检测包裹尺寸的方法、装置以及设备 | |
WO2021136509A1 (zh) | 检测包裹的方法、装置、计算设备、物流系统及存储介质 | |
CN109658497B (zh) | 一种三维模型重建方法及装置 | |
CN108122280A (zh) | 一种三维点云的重建方法及装置 | |
CN114862929A (zh) | 三维目标检测方法、装置、计算机可读存储介质及机器人 | |
CN111415420A (zh) | 空间信息确定方法、装置及电子设备 | |
CN113610933A (zh) | 一种基于双目区域视差的原木堆垛动态检尺系统和方法 | |
CN115908913A (zh) | 基于rgbd的包裹类别检测方法及电子设备 | |
CN114519712A (zh) | 一种点云数据处理方法、装置、终端设备及存储介质 | |
WO2022147655A1 (zh) | 定位方法、空间信息获取方法、装置、拍摄设备 | |
CN113379826A (zh) | 物流件的体积测量方法以及装置 | |
CN109000560B (zh) | 基于三维相机检测包裹尺寸的方法、装置以及设备 | |
CN112734827A (zh) | 一种目标检测方法、装置、电子设备和存储介质 | |
CN113129255B (zh) | 检测包裹的方法、计算设备、系统及存储介质 | |
CN113052912A (zh) | 摄像机标定方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 310051 room 304, B / F, building 2, 399 Danfeng Road, Binjiang District, Hangzhou City, Zhejiang Province Applicant after: Hangzhou Hikvision Robot Co.,Ltd. Address before: 310051 room 304, B / F, building 2, 399 Danfeng Road, Binjiang District, Hangzhou City, Zhejiang Province Applicant before: HANGZHOU HIKROBOT TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |