CN115359111A - 一种体积测量方法、装置、设备及计算机可读存储介质 - Google Patents
一种体积测量方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115359111A CN115359111A CN202210817217.6A CN202210817217A CN115359111A CN 115359111 A CN115359111 A CN 115359111A CN 202210817217 A CN202210817217 A CN 202210817217A CN 115359111 A CN115359111 A CN 115359111A
- Authority
- CN
- China
- Prior art keywords
- target object
- plane
- calculating
- volume
- irregular
- 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.)
- Pending
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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- 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/10004—Still image; Photographic image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Quality & Reliability (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
本申请提供了一种体积测量方法、装置、设备及计算机可读存储介质,该体积测量方法包括:控制深度相机拍摄目标物体,得到目标物体的第一深度图像;去除第一深度图像中的背景,得到第二深度图像;检测第二深度图像中目标物体的平面;计算目标物体的平面的平整度和矩形度;根据平整度和矩形度,判断目标物体为规则物体或非规则物体;若目标物体为规则物体,根据规则物体计算方法计算目标物体的体积;若目标物体为非规则物体,且深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算目标物体的体积。通过本申请方案的实施,可以测量规则物体和非规则物体的体积,提高了物体体积测量的灵活性。
Description
技术领域
本申请涉及机器视觉技术领域,尤其涉及一种体积测量方法、装置、设备、及计算机可读存储介质。
背景技术
随着物流行业的不断发展,提高仓储空间的利用率对于节省物流成本有着积极作用,从而如何测量物体体积成为值得考虑的问题。
在实际应用中,出于人工手动测量物体体积的操作较为繁琐且测量误差较大,目前技术人员通常采用机器视觉方式来进行体积测量,也即采集物体的图像/视频信息,然后根据图像/视频信息来识别物体的体积,有效提高了物体体积测量的便捷性,但是,目前基于机器视觉的物体体积测量方法通常仅能针对某种特定形状的物体进行体积测量,而在实际应用中物体的形状多种多样,并无法满足多样化的物体体积测量场景,体积测量的局限性较高。
发明内容
本申请实施例提供了一种体积测量方法、装置、设备及计算机可读存储介质,至少能够解决相关技术中基于机器视觉的物体体积测量方法通常仅能针对某种特定形状的物体进行体积测量,而无法满足多样化的物体体积测量场景的问题。
本申请实施例第一方面提供了一种体积测量方法,包括:控制深度相机拍摄目标物体,得到所述目标物体的第一深度图像;去除所述第一深度图像中的背景,得到第二深度图像;检测所述第二深度图像中所述目标物体的平面;计算所述目标物体的平面的平整度和矩形度;根据所述平整度和所述矩形度,判断所述目标物体为规则物体或非规则物体;若所述目标物体为规则物体,根据规则物体计算方法计算所述目标物体的体积;若所述目标物体为非规则物体,且所述深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算所述目标物体的体积。
本申请实施例第二方面提供了一种体积测量装置,包括:控制模块,用于控制深度相机拍摄目标物体,得到所述目标物体的深度图像;去除模块,用于去除所述第一深度图像中的背景,得到第二深度图像;检测模块,用于检测所述第二深度图像中所述目标物体的平面;第一计算模块,计算所述目标物体的平面的平整度和矩形度;判断模块,用于根据所述平整度和所述矩形度,判断所述目标物体为规则物体或非规则物体;第二计算模块,若所述目标物体为规则物体,用于根据规则物体计算方法计算所述目标物体的体积;第三计算模块,若所述目标物体为所述非规则物体,且所述深度相机的拍摄角度在预设角度范围内,用于根据非规则物体计算方法计算所述目标物体的体积。
本申请实施例第三方面提供了一种电子设备,包括:深度相机、存储器及处理器,其中,深度相机用于采集深度图像;处理器用于执行存储在存储器上的计算机程序,处理器执行计算机程序时,实现上述本申请实施例第一方面提供的体积测量方法中的各步骤。
本申请实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,实现上述本申请实施例第一方面提供的体积测量方法中的各步骤。
由上可见,根据本申请方案所提供的体积测量方法、装置、设备及计算机可读存储介质,根据深度图像中目标物体的平面的平整度和矩形度,判定目标物体为规则物体或非规则物体,判定结果更加准确;若目标物体为规则物体,根据规则物体计算方法计算目标物体的体积;若目标物体为非规则物体,且深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算目标物体的体积。通过本申请方案的实施,先对物体形态进行识别,然后适应于物体形态采用相应体积测量策略实现物体体积的测量,提高了物体体积测量的灵活性,有效拓展了基于机器视觉的物体体积测量方法的适用场景。
附图说明
图1为本申请第一实施例提供的一种体积测量方法的基本流程示意图;
图2为本申请第一实施例提供的另一种体积测量方法的基本流程示意图;
图3为本申请第三实施例提供的体积测量装置的程序模块示意图;
图4为本申请第四实施例提供的电子设备的结构示意图。
具体实施方式
为使得本申请的发明目的、特征、优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了解决相关技术中基于机器视觉的物体体积测量方法通常仅能针对某种特定形状的物体进行体积测量,而无法满足多样化的物体体积测量场景的问题,本申请第一实施例提供了一种体积测量方法,如图1为本实施例提供的体积测量方法的基本流程图,该体积测量方法包括以下的步骤:
步骤101、控制深度相机拍摄目标物体,得到所述目标物体的第一深度图像。
具体的,可以采用结构光深度相机、飞行时间深度相机或双目立体深度相机等深度相机拍摄目标物体,得到包含目标物体的第一深度图像。第一深度图像携带有目标物体的深度数据,具体地,第一深度图像中每个像素点的数据包括像素坐标和像素值,像素值是像素点的灰度值,像素值可以表明目标物体上与该像素点对应的点的深度值。应当说明的是,本实施例的深度相机优选的按照从顶部往下的方向采集目标物体的深度图像,如此获取到的深度图像包括目标物体更多的特征,深度相机可以垂直于地面并安装在目标物体的旁边。还应当说明的是,深度相机体积小重量轻,可以手持或固定安装,使用灵活,且仅需拍摄一帧图像即可实现体积测量,测量效率高。
步骤102、去除第一深度图像中的背景,得到第二深度图像。
具体地,在步骤101之前,体积测量方法还包括步骤:控制深度相机拍摄没有目标物体时的深度图像,以标定目标物体所处的背景及放置目标物体的放置平面。具体地,由于测量的物体包括规则物体和不规则物体,而不规则物体的形状、线条等不规则,容易受到背景的干扰,不容易从深度图像中提取不规则物体。因此,为了准确地提取到目标物体,可以预先对目标物体所在的场景进行标定,获取到场景中的背景信息及放置平面信息。在得到第一深度图像后,根据预先标定的背景去除第一深度图像中的背景,进而可以得到第二深度图像,第二深度图像包括目标物体和放置平面。需要说明的是,放置平面为放置目标物体的表面,例如,目标物体放置在地上时,则放置平面为地面;目标物体放置在桌面上时,则放置平面为桌面。在上述标定背景及地面的步骤与获取第一深度图像的步骤下,深度相机的拍摄角度及位置保持不变,以便于准确去除第一深度图像中的背景。
步骤103、检测第二深度图像中目标物体的平面。
具体地,通过平面检测算法等方式可以检测第二深度图像中所有满足预设条件的平面。由于第二深度图像中已经没有背景,第二深度图像中检测到的平面包括目标物体的平面及放置平面,预先已经标定了放置平面,则可以进一步准确检测出目标物体的平面。
在本实施例一些实施方式中,若步骤103中未检测到目标物体的平面,则提示测量失败,停止执行后续步骤,以避免执行无效数据处理过程。另外,当确定未检测到目标物体的平面时,可以进一步输出提示信息,以向操作人员提示测量失败解决方案,例如,可以输出未检测到目标物体的提示或调整目标物体的放置状态(例如角度、位置等)的提示。
步骤104、计算目标物体的平面的平整度和矩形度。
在实际应用中,规则物体的表面平整程度较高且面型近似矩形,由此,本实施例结合物体平面的平整度以及矩形度对物体形态进行确定。物体形态包括规则形态以及不规则形态,平整度用于表征物体表面的平整程度,矩形度反映物体表面对其外接矩形的充满程度,用于表征物体表面与矩形的相似程度。通过平面的平整度和矩形度可以判断该平面是否为规则平面,并且确定的物体形态更加准确。
在本实施例的一些实施方式中,上述计算目标物体的平面的平整度和矩形度的步骤,包括:检测目标物体的每个平面上的所有点;根据所有点中的至少部分点确定每个平面的平面空间方程;根据每个平面的平面空间方程,确定基准平面;根据基准平面及基准平面上的点,计算基准平面的平整度及矩形度。
具体的,在检测到目标物体的各个平面后,可以检测归属于每个平面的所有点,然后可以根据各个平面上的部分点或者所有点计算得到各个平面的平面空间方程,本实施例的平面空间方程也即空间中所有处于同一平面的点所对应的方程,通过平面空间方程可以确定各个平面的空间属性,空间属性包括该平面在目标物体上的空间方位,例如是目标物体的顶面、左侧面、右侧面、前面、背面等,然后根据各个平面的空间属性确定基准平面。
在本实施例中,基于目标物体所有平面的平面空间方程获取基准平面,然后针对基准平面进行平整度以及矩形度计算。在实际应用中,深度相机所拍摄的单张深度图像中通常无法完整覆盖到物体所有面,深度相机一般位于目标物体的侧上方,拍摄得到的目标物体所有面中,上表面所携带的特征信息通常最多,由此,可以根据各个平面的平面空间方程确定目标物体的上表面,本实施例优选地可以将目标物体的上表面作为基准平面。
在本实施例的一些实施方式中,也可以根据各个平面中所包括的特征信息的数量确定基准平面,例如,特征信息最丰富的平面为基准平面。
进一步地,在本实施例的一些实施方式中,上述根据基准平面及基准平面上的所有点,计算基准平面的平整度及矩形度的步骤,包括:获取基准平面上的所有点至基准平面的距离;根据所有点至基准平面的距离,计算基准平面的平整度;将基准平面上的所有点投影至基准平面,得到多个第一投影点;根据多个第一投影点,计算基准平面的矩形度。
具体的,在本实施例中,优选地可以将基准平面上所有点与基准平面的距离进行标准差计算,将标准差作为基准平面的平整度,另外,将基准平面上的所有点投影至基准平面得到多个投影点,然后基于全部的或者部分数量的投影点的数据计算基准平面的矩形度。应当说明的是,本实施例采用标准差法计算平整度以及采用投影法计算矩形度均仅为优选示例,在实际应用中还可以根据实际需求采用其它手段实现,本实施例对此不做唯一限定。其中,上述实施例所述的基准平面上所有点指的是属于基准平面的点,该点可能位于基准平面上方、或下方或者位于基准平面内。
步骤105、根据平整度和矩形度,判断目标物体为规则物体或非规则物体。
具体地,上述根据平整度和矩形度,判断目标物体为规则物体或非规则物体的步骤包括:若基准表面所计算的平整度及矩形度均满足预设条件,例如平整度大于预设第一阈值、矩形度大于预设第二阈值,则说明基准表面平整程度较高且接近矩形,那么即可判定目标物体是规则物体,反之,若两者之一不满足条件,则判定目标物体是非规则物体。
当然,在一些实施方式中,在判断目标物体为规则物体或非规则物体时,也可以计算检测到的目标物体的每个平面的平整度和矩形度,在所有平面的平整度和矩形度均满足要求时,才确认目标物体为规则物体。其中,每个平面的平整度和矩形度的计算和基准平面的平行度和矩形度的计算类似,在此不做赘述。
在本实施例一些实施方式中,上述步骤102之前还包括:获取目标物体的物体规格,根据物体规格调整深度相机与目标物体的相对距离。
具体地,在实际应用中,目标物体的类型有所不同,从而其规格大小也有所区别,在实际应用中,若不考量物体规格差异的因素固定设置物体的拍摄距离,则可能导致所获取的深度图像难以满足体积测量要求,例如,在获取目标物体的深度图像时,若目标物体的规格较大,则可能无法获取到完整的目标物体,若目标物体的规格较小,则可能导致所获取的图像中物体细节较为模糊。基于此,本实施例根据目标物体的规格动态确定深度相机的拍摄距离,拍摄距离与目标物体的规格呈正相关关系,从而可以实现复杂体积测量场景下深度图像拍摄的有效性。需要说明的是,调整深度相机与目标物体的相对距离包括移动深度相机、移动目标物体、既移动深度相机又移动目标物体中的一种。
更具体地,在本实施例一些实施方式中,深度相机在获取目标物体的深度图像时,若识别到目标物体距离深度相机较近时或较远时,发出提示以提醒用户移动深度相机和/或目标物体、或自动移动深度相机和/或目标物体,使得深度相机与目标物体之间的距离适中。
步骤106、若目标物体为规则物体,根据规则物体计算方法计算目标物体的体积。
步骤107、若目标物体为非规则物体,且深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算目标物体的体积。
具体的,在本实施例中,针对不同形态的目标物体分别配置有相应的体积测量策略,当确定物体形态之后,可以适应性调用相应体积测量策略,由此除了可以对规则物体实现体积测量,还可以对多样化的不规则物体实现体积测量,有效提升了在灵活多变的实际应用场景中进行体积测量的可实施性。
其中,针对规则物体,其具体计算方法包括:计算目标物体的上表面的面积;计算上表面与放置平面的相对距离,作为目标物体的高度;基于面积及相对距离计算目标物体的体积。
应当理解的是,规则物体不仅限于长方体、正方体、圆柱体,还可以包括多棱柱、棱锥等。在本实施例中,先对规则物体上表面的面积进行计算,例如针对长方体,计算上表面两组相对边之间的相对距离,作为目标物体的长和宽,两者相乘即可得到上表面的面积,接下来,再基于上表面的平面空间方程和放置平面的平面空间方程计算两个平面之间的相对距离,作为目标物体的高,最后,将所计算的长、宽、高相乘,得到规则物体的体积。
具体的,在实际应用中,不同深度相机拍摄角度所能拍摄到的物体平面有所不同,对于规则物体,由于物体平面相对规则,深度相机所拍摄的任意平面均可提供体积测量的有效特征信息,而对于非规则物体,需要基于特定平面所提供的特征信息才能实现体积计算,由此,本实施例针对非规则物体的体积计算,在判定目标物体为非规则物体时,获取深度相机的拍摄角度,并判定深度相机拍摄角度是否处于预设角度范围,在预设角度范围内时,才计算目标物体的体积,避免了深度相机未在预设角度范围内进行体积测量而导致体积测量结果存在较大误差甚至计算不出来体积,提升了体积测量的精度。需要说明的是,深度相机的拍摄角度指的是深度相机与目标物体的放置平面之间的夹角。
本实施例优选地,预设角度范围可以预置为90°±a,也即非规则物体的深度相机拍摄角度需满足垂直角度附近,深度相机垂直拍摄可以较完整的拍摄到目标物体,使得所拍摄的图像中包括非规则物体的有效特征信息,保证后续体积计算的准确性。需要说明的是,深度相机垂直拍摄指的是深度相机竖直放置平面放置。在一个例子中,a≤5°,例如a为1°、2°、3°等。
在本实施例一些实施方式中,上述获取深度相机的拍摄角度的具体实现方式包括:获取目标物体所有平面的平面空间方程;结合所有平面的平面空间方程对应的法向量获取深度相机的拍摄角度。具体的,在本实施例中,可以通过计算深度图像中目标物体的每个平面的法向量,然后通过部分平面或所有平面的法向量,计算深度相机的拍摄角度。每个平面的法向量可以通过每个平面的平面空间方程计算得到。
在本实施例另一些实施方式中,深度相机的拍摄角度也可以通过深度相机内的惯性测量单元(Inertial Measurement Unit,IMU)、陀螺仪等器件获取得到,可以理解,深度相机的拍摄角度的获取方式在此不做限制。
在本实施例一些实施方式中,上述根据非规则物体计算方法计算目标物体的体积的步骤,包括:从第二深度图像中提取归属于目标物体的像素点;将目标物体的所有像素点分割成多个不相交的多边形点集;计算每个多边形点集在放置平面的投影面积,以及计算每个多边形点集的中心点至放置平面的距离,放置平面为放置目标物体的平面;基于每个多边形点集的投影面积以及距离,分别计算每个多边形投影形成的多面体的体积;将所有多面体的体积进行求和,得到目标物体的体积。
具体的,在相关技术中,即使对于不规则物体,通常仅是粗略的根据物体的长宽高来计算物体体积,并没有考虑物体不规则时物体上表面的点到地面的距离不一,所导致的估算误差较大的情况。基于此,针对不规则物体的体积测量,在本实施例中,从深度图像中提取出归属于目标物体的像素点,然后将这些像素点分割成若干个不相交的多边形,每个多边形内可包括多个像素点,然后求出每个多边形投影在放置平面的面积,以及每个多边形的中心点到放置平面的距离,该距离作为多边形投影至放置平面形成的多面体的高,再将面积与高相乘即可得到每个多面体的体积,最后,对构成完整目标物体的所有多面体的体积求和,即可得到目标物体的体积,由此,可以有效提升不规则物体的体积测量的准确性。其中,多个多边形的形状及面积可相同或不同,多边形可以是三角形、矩形、正方形、五边形等,在一个例子中,可以选择将像素点分割成若干个不相交的三角形点集。
在本实施例另一些实施方式中,上述根据非规则物体计算方法计算目标物体的体积的步骤,包括:根据第二深度图像计算目标物体的三维点云;将三维点云投影至放置平面,得到多个第二投影点;根据多个第二投影点确定多个第二投影点的最小外接矩形;计算最小外接矩形的长度和宽度,及并计算目标物体对应的三维点云至放置平面的最大距离;基于最小外接矩形的长度和宽度以及最大距离计算目标物体的体积。
具体的,针对不规则物体的体积测量,本实施例还可以根据第二深度图像计算目标物体的三维点云。在本实施例一些实施方式中,首先根据深度图像得到三维点云,例如,将深度图像经过坐标转换等方式转换为三维点云,然后进行点云分割,将完整三维点云中的背景点云进行去除,再对剩余的三维点云进行聚类处理,最后得到目标物体的三维点云。在本实施例另一些实施方式中,先结合深度图像以及二维图像(彩色图像或红外图像)生成目标物体的三维点云,然后对三维点云进行点云分割,最后再对剩余的三维点云进行聚类处理,得到目标物体的三维点云。在实际应用中,可以采用K均值聚类算法等聚类算法对剩余三维点云进行聚类处理,得到目标物体的三维点云。在本实施例又一些实施方式中,在得到完整的三维点云后,去除背景点云和放置平面的点云后剩下的点云即为目标物体的三维点云。
然后将目标物体的三维点云投影到放置平面(例如地面平面),然后可以通过算法等方式求得其最小外接矩形,将最小外接矩形的长和宽分别作为目标物体的长和宽,并且,计算目标物体的每个三维点云至放置平面的距离,从多个距离中获取最大距离作为目标物体的高,最后将长、宽、高相乘,得到不规则物体的体积。本实施方式通过将目标物体的点云投影至放置平面,后根据投影得到的点确定最小外接矩形,可以使得计算得到的目标物体的长度和宽度更加准确,进而目标物体的体积测量更加准确。当然,在其它的一些实施方式中,也可以计算多个距离的均值作为目标物体的近似高,具体可以根据非规则物体的不规则程度选择合适的计算方式。
在本实施例的一些实施方式中,在目标物体为非规则物体,且深度相机的拍摄角度不在预设角度范围内时,体积测量方法还包括步骤:发出提示,该提示用于提示测量失败并提示调整所述深度相机的拍摄角度。
具体的,在本实施例中,若针对非规则物体的深度相机拍摄角度不合规,则从拍摄的深度图像中无法获取有效特征数据进行体积计算,由此,本实施例输出测量错误信息,以向用户提示错误。本实施例针对非规则物体的深度相机拍摄角度不在预设角度范围的情况,可以及时发出测量失败的提示,并且可以提示用户调整深度相机的拍摄角度,以使深度相机在无法测量时可以及时发现并可以得到及时的调整,提升了测量的效率。
在本实施例另一些实施方式中,若目标物体为非规则物体,且深度相机的拍摄角度不在预设角度范围,体积测量方法还包括步骤:根据拍摄角度与预设角度范围,调整深度相机的拍摄角度。
具体的,本实施例针对非规则物体的深度相机拍摄角度不在预设角度范围的情况,可以基于当前拍摄角度以及标准角度计算角度调整值,然后生成相应的深度相机拍摄角度控制指令,控制深度相机调整机构根据该指令对应调整拍摄角度,以满足有效实现非规则物体体积测量的拍摄要求。
在一些测量场景下,需要测量体积的目标物体有规则物体也有不规则物体。而在另一些测量场景中,需要测量体积的目标物体大多数或者均为规则物体,规则物体的特征和轮廓均比较规则,比较容易提取,可以采取更高效的体积测量方法。因此,在本实施例一些实施方式中,有第一模式和第二模式两种测量模式,在第一模式下,可以测量规则物体和不规则物体的体积,在第二模式下,只能测量规则物体的体积,通过设置两种模式可以使应用场景更加丰富。其中,测量模式可以是用户预先设定的,用户可以根据测量场景中目标物体的形态分布选择合适的测量模式。为此,本实施例还提供了另一种体积测量方式,该体积测量方法还包括以下步骤:
步骤001:获取测量模式。
具体地,当上述步骤001获取到测量模式为第一模式时,执行上述步骤101至步骤107、及步骤101至步骤107分别包括的子步骤、以及上述所述的体积测量方法中的其它步骤。例如,若获取到测量模式为第一模式,则控制深度相机拍摄目标物体,得到目标物体的第一深度图像;去除第一深度图像中的背景,得到第二深度图像;检测第二深度图像中目标物体的平面;计算目标物体的平面的平整度和矩形度;根据平整度和矩形度,判断目标物体为规则物体或非规则物体;若目标物体为规则物体,根据规则物体计算方法计算目标物体的体积。若目标物体为非规则物体,且深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算目标物体的体积。
当上述步骤001获取到测量模式为第二模式时,体积测量方法还包括以下步骤:
步骤201、控制深度相机拍摄目标物体,得到目标物体的第三深度图像。
步骤202、检测第三深度图像中目标物体的平面。
步骤203、计算目标物体的平面的平整度和矩形度。
步骤204、根据平整度和矩形度,判断目标物体为规则物体或非规则物体。
步骤205、若目标物体为规则物体,根据规则物体计算方法计算目标物体的体积。
步骤206、若目标物体为为非规则物体,提示测量失败和/或调整测量模式。
具体地,规则物体有比较明显的规则平面,比较容易识别深度图像中规则物体的平面,因此,在第二模式下,获取到第三深度图像后,直接检测第三深度图像中目标物体的平面,而无需标定目标物体所处的背景及放置平面,也无需去除第三深度图像中的背景。如此,在第二模式下体积测量方法简易,体积测量效率较高,适用于只需要目标物体均为或者大多数为规则物体的场景。
步骤201的具体内容和上述步骤101相同或相似,步骤202的具体内容和上述步骤103相同或相似,步骤203的具体内容和上述步骤104相同或相似,步骤204的具体内容和上述步骤105相同或相似,步骤205的具体内容和上述步骤106相同或相似,因此,步骤201、步骤202、步骤203、步骤204及步骤205在此不详细描述,可以参考上述步骤101、步骤103、步骤104、步骤105及步骤106的内容。
在第二模式下,如果根据平整度和矩形度判定目标物体为非规则物体时,由于第二模式下无法测量非规则物体的体积,则提示测量失败或自动调整测量模式为第一模式,或者先提示测量失败后自动调整测量模式为第一模式,或者提示测量失败并提示用户需重新设定测量模式。在切换至第一模式后,可以执行上述第一模式下的体积测量方法的步骤。
基于上述本申请实施例的技术方案,根据深度图像中目标物体的平面的平整度和矩形度,判定目标物体为规则物体或非规则物体,判定结果更加准确;若目标物体为规则物体时,根据规则物体计算方法计算目标物体的体积;若目标物体为非规则物体,且深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算目标物体的体积。通过本申请方案的实施,先对物体形态进行识别,然后适应于物体形态采用相应体积测量策略实现物体体积的测量,提高了物体体积测量的灵活性,有效拓展了基于机器视觉的物体体积测量方法的适用场景。
本申请第二实施例提供了一种细化的体积测量方法,第二实施例中被测量的目标物体放置在地面上,该体积测量方法包括:
步骤301、获取测量模式。
若获取到的测量模式为第一模式,执行下述步骤302至步骤320;若获取到的测量模式为第二模式,执行下述步骤321、步骤322、步骤306至步骤312、步骤318至步骤320、或执行下述步骤321、步骤322、步骤306至步骤312及步骤323。
步骤302、控制深度相机拍摄无目标物体的深度图像,标定目前物体所处的背景及放置平面。
步骤303、控制深度相机拍摄目标物体,得到深度图像。
步骤304、去除深度图像中的背景。
步骤305、检测去除背景深度图像中目标物体的每个平面及属于每个平面的所有点。
步骤306、计算得到每个平面的平面空间方程。
步骤307、判断是否有平面;若无,执行步骤308,若有,执行步骤309。
步骤308、提示测量失败。
步骤309、根据每个平面的平面空间方程找到目标物体的上平面。
步骤310、计算上平面的所有点到上平面的距离,并计算所有距离的标准差,得到上表面的平整度。
步骤311、将上表面的所有点投影至上表面,得到多个投影点,并根据多个投影点计算上表面的矩形度。
步骤312、基于标准差以及矩形度判定目标物体是否为不规则物体;若是,则执行步骤313,若否,则执行步骤318。
根据标准差和矩形度来判断目标物体的物体形态,判定结果更加准确。
步骤313、获取深度相机相对于目标物体的拍摄角度。
步骤314、若拍摄角度满足垂直拍摄角度,则从深度图像中提取归属于目标物体的像素点;若拍摄角度不满足垂直拍摄角度,则提示测量失败。
在本实施例中,在判断物体是非规则时,会获取深度相机拍照角度,仅在垂直拍摄状态下继续执行非规则物体的体积计算流程,避免当非垂直拍照时,无法拍全物体细节,导致体积计算不准确的问题,则当非垂直拍照时,提示测量失败。
步骤315、将目标物体的所有像素点分割成多个不相交的三角形点集。
步骤316、计算各三角形点集在地面平面的投影面积,以及计算各三角形点集的中心点至地面平面的距离。
步骤317、基于各三角形点集的投影面积以及中心点至地面平面的距离,分别计算各三角形投影形成的三棱柱的体积,并将所有三棱柱的体积进行求和,得到不规则形态的目标物体的体积。
应当说明的是,各三棱柱由各三角形投影生成。在本实施例中,从深度图像中提取出属于目标物体的像素点,然后将这些像素点分割成若干个不相交的三角形,求出每个三角形投影在地面的面积,以及每个三角形的中心点到地面的距离,得到每个三棱柱的体积,对所有三棱柱的体积求和,即可得到物体体积,由此,可以有效提升不规则物体的体积测量的准确性。
步骤318、根据上表面的四条边的直线方程分别确定两对平行线之间的相对距离,得到规则形态的目标物体的长度和宽度。
步骤319、计算目标物体的上表面与地面平面之间的相对距离,得到目标物体的高度。
步骤320、基于目标物体的长度、宽度以及高度计算规则形态的目标物体的体积。
本实施例中,在目标物体为规则物体时,通过计算目标物体的长度、宽度及高度,计算得到目标物体的体积,测量体积的效率较高。
步骤321、控制深度相机拍摄目标物体,得到深度图像。
步骤322、检测深度图像中目标物体的每个平面及属于每个平面的所有点。
执行上述步骤306至步骤312。
若步骤312的判定结果为规则物体,执行上述步骤318至步骤320;若步骤312的判定结果为不规则物体,执行步骤323:提示测量失败。
具体的,本实施例针对规则形态以及不规则形态的物体分别配置有不同的体积测量算法,以适应于更多样化的体积测量场景。并且,配置有两种测量模式,可以根据测量场景进行选择,提升了测量效率。
应当理解的是,第一实施例和第二实施例中各步骤的序号的大小并不意味着步骤执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成唯一限定。
图3为本申请第三实施例提供的一种体积测量装置。该体积测量装置可用于实现前述实施例中的体积测量方法,该体积测量装置主要包括:
控制模块401,用于控制深度相机拍摄目标物体,得到目标物体的深度图像;
去除模块402,用于去除第一深度图像中的背景,得到第二深度图像;
检测模块403,用于检测第二深度图像中目标物体的平面;
第一计算模块404,计算目标物体的平面的平整度和矩形度;
判断模块405,用于根据平整度和矩形度,确定目标物体为规则物体或非规则物体;
第二计算模块406,用于若目标物体为规则物体,根据规则物体计算方法计算目标物体的体积;
第三计算模块407,用于若目标物体为非规则物体,且深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算目标物体的体积。
在本实施例的一些实施方式中,体积测量装置还包括获取模块,获取模块用于获取测量模式,测量模式包括测量规则物体和不规则物体的第一模式、及只测量规则物体的第二模式。测量模式为第二模式时,控制模块还用于控制深度相机拍摄目标物体,得到目标物体的第三深度图像。检测模块还用于检测第三深度图像中目标物体的平面。
在本实施例的一些实施方式中,体积测量装置还包括提示模块,提示模块用于若测量模式为第二模式,且根据平整度和矩形度判断目标物体为非规则物体,则提示测量失败和/或调整测量模式。
在本实施例的一些实施方式中,若目标物体为非规则物体,且深度相机的拍摄角度不在预设角度范围内,提示模块还用于发出测量失败并调整深度相机的拍摄角度的提示。
进一步地,在本实施例的一些实施方式中,第一计算模块在执行上述计算目标物体的平面的平整度和矩形度的功能时,具体用于:检测每个平面上的所有点;根据所有点确定每个平面的平面空间方程;根据每个平面的平面空间方程,确定基准平面;根据基准平面及基准平面上的所有点,计算基准平面的平整度及矩形度。
进一步地,在本实施例的一些实施方式中,判定模块在执行上述根据平整度和矩形度,确定目标物体为规则物体或非规则物体的功能时,具体用于:若平整度和矩形度均满足预设条件,判定目标物体为规则物体;若平整度和矩形度至少之一不满足预设条件,判定目标物体为非规则物体。
进一步地,在本实施例的一些实施方式中,第一计算模块在执行上述计根据基准平面及基准平面上的所有点,计算基准平面的平整度及矩形度的功能时,具体用于:获取基准平面上的所有点至基准平面的距离;根据所有点至基准平面的距离,计算基准平面的平整度;将基准平面上的所有点投影至基准平面,得到多个第一投影点;根据多个第一投影点,计算基准平面的矩形度。
在本实施例的一些实施方式中,第二计算模块具体用于:计算目标物体的上表面的面积、及上表面与放置平面的相对距离;基于面积及相对距离计算目标物体的体积。
在本实施例的一些实施方式中,第三计算模块具体用于:从第二深度图像中提取归属于目标物体的像素点;将目标物体的所有像素点分割成多个不相交的多边形点集;计算每个多边形点集在放置平面的投影面积,以及计算每个多边形点集的中心点至放置平面的距离;其中,放置平面为放置目标物体的平面;基于每个多边形点集的投影面积以及距离,分别计算每个多边形投影形成的多面体的体积;将所有多面体的体积进行求和,得到目标物体的体积。
在本实施例的另一些实施方式中,第三计算模块具体用于:根据第二深度图像计算目标物体的三维点云;将三维点云投影至放置平面,得到多个第二投影点;其中,放置平面为放置目标物体的平面;根据多个第二投影点确定多个第二投影点的最小外接矩形;计算最小外接矩形的长度和宽度,并计算目标物体的三维点云至放置平面的最大距离;基于最小外接矩形的长度和宽度及最大距离计算目标物体的体积。
在本实施例的一些实施方式中,控制模块还用于:控制深度相机拍摄没有目标物体时的深度图像,以标定目标物体所处的背景及放置目标物体的放置平面。
在本实施例的一些实施方式中,体积测量装置还包括调整模块,若目标物体为非规则物体,且深度相机的拍摄角度不在预设角度范围内,调整模块用于根据拍摄角度与预设角度范围调整深度相机的拍摄角度。
应当说明的是,第一、二实施例中的体积测量方法均可基于本实施例提供的体积测量装置实现,所属领域的普通技术人员可以清楚的了解到,为描述的方便和简洁,本实施例中所描述的体积测量装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
根据本实施例所提供的体积测量装置,根据深度图像中目标物体的平面的平整度和矩形度,判定目标物体为规则物体或非规则物体,判定结果更加准确;若目标物体为规则物体时,根据规则物体计算方法计算目标物体的体积;在目标物体为非规则物体,且深度相机的拍摄角度在预设角度范围内时,根据非规则物体计算方法计算目标物体的体积;在目标物体为非规则物体时,且深度相机的拍摄角度不在预设角度范围,则提示错误。通过本申请方案的实施,先对物体形态进行识别,然后适应于物体形态采用相应体积测量策略实现物体体积的测量,提高了物体体积测量的灵活性,有效拓展了基于机器视觉的物体体积测量方法的适用场景。
图4为本申请第四实施例提供的一种电子设备。电子设备可以是手机、电脑等智能终端,该电子设备可用于实现前述实施例中的体积测量方法,进而实现对目标物体的体积测量,该电子设备主要包括:存储器501、处理器502、深度相机503及存储在存储器501上并可在处理器502上运行的计算机程序504,存储器501、深度相机503和处理器502通信连接。深度相机503用于采集深度图像,处理器502执行该计算机程序504时,实现前述实施例中的体积测量方法,其中,处理器502的数量可以是一个或多个。
存储器501可以是高速随机存取记忆体(RAM,Random Access Memory)存储器,也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。存储器501用于存储可执行程序代码,处理器502与存储器501耦合。
进一步的,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是设置于上述各实施例中的电子设备中,该计算机可读存储介质可以是前述图4所示实施例中的存储器。
该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述实施例中的体积测量方法。进一步的,该计算机可存储介质还可以是U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本申请所提供的体积测量方法、装置、设备及计算机可读存储介质的描述,对于本领域的技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
Claims (12)
1.一种体积测量方法,其特征在于,包括:
控制深度相机拍摄目标物体,得到所述目标物体的第一深度图像;
去除所述第一深度图像中的背景,得到第二深度图像;
检测所述第二深度图像中所述目标物体的平面;
计算所述目标物体的平面的平整度和矩形度;
根据所述平整度和所述矩形度,判断所述目标物体为规则物体或非规则物体;
若所述目标物体为规则物体,根据规则物体计算方法计算所述目标物体的体积;
若所述目标物体为非规则物体,且所述深度相机的拍摄角度在预设角度范围内,根据非规则物体计算方法计算所述目标物体的体积。
2.根据权利要求1所述的体积测量方法,其特征在于,在所述控制深度相机拍摄目标物体,得到所述目标物体的第一深度图像的步骤之前,所述的体积测量方法包括:
获取测量模式,所述测量模式包括测量规则物体和不规则物体的第一模式、及只测量规则物体的第二模式;
若测量模式为所述第一模式,则执行权利要求1所述的步骤;
若测量模式为所述第二模式,则控制所述深度相机拍摄所述目标物体,得到所述目标物体的第三深度图像;
检测所述第三深度图像中所述目标物体的平面;
计算所述目标物体的平面的平整度和矩形度;
根据所述平整度和所述矩形度,判断所述目标物体为规则物体或非规则物体;
若所述目标物体为规则物体,根据所述规则物体计算方法计算所述目标物体的体积。
3.根据权利要求2所述的体积测量方法,其特征在于,若所述测量模式为所述第二模式,且根据所述平整度和所述矩形度判断所述目标物体为非规则物体,所述的体积测量方法还包括:
提示测量失败和/或调整测量模式。
4.根据权利要求1或2所述的体积测量方法,其特征在于,所述计算所述目标物体的平面的平整度和矩形度的步骤,包括:
检测每个所述平面上的所有点;
根据所述所有点中的至少部分点确定每个所述平面的平面空间方程;
根据每个所述平面的所述平面空间方程,确定基准平面;
根据所述基准平面及所述基准平面上的所有点,计算所述基准平面的平整度及矩形度;
所述根据所述平整度和所述矩形度,判断所述目标物体为规则物体或非规则物体的步骤包括:
若所述平整度和所述矩形度均满足预设条件,判定所述目标物体为规则物体;
若所述平整度和所述矩形度至少之一不满足预设条件,判定所述目标物体为非规则物体。
5.根据权利要求4所述的体积测量方法,其特征在于,所述根据所述基准平面及所述基准平面上的所有点,计算所述基准平面的平整度及矩形度的步骤,包括:
获取所述基准平面上的所有点至所述基准平面的距离;
根据所述所有点至所述基准平面的距离,计算所述基准平面的平整度;
将所述基准平面上的所有点投影至所述基准平面,得到多个第一投影点;
根据多个所述第一投影点,计算所述基准平面的矩形度。
6.根据权利要求1所述的体积测量方法,其特征在于,所述根据非规则物体计算方法计算所述目标物体的体积的步骤,包括:
从所述第二深度图像中提取归属于所述目标物体的像素点;
将所述目标物体的所有像素点分割成多个不相交的多边形点集;
计算每个所述多边形点集在放置平面的投影面积,以及计算每个所述多边形点集的中心点至所述放置平面的距离;其中,所述放置平面为放置所述目标物体的平面;
基于每个所述多边形点集的所述投影面积以及所述距离,分别计算每个所述多边形投影形成的多面体的体积;
将所有所述多面体的体积进行求和,得到所述目标物体的体积;
或,
所述根据非规则物体计算方法计算所述目标物体的体积的步骤,包括:
根据所述第二深度图像计算所述目标物体的三维点云;
将所述三维点云投影至放置平面,得到多个第二投影点;其中,所述放置平面为放置所述目标物体的平面;
根据所述多个第二投影点确定所述多个第二投影点的最小外接矩形;
计算所述最小外接矩形的长度和宽度,并计算所述目标物体的三维点云至所述放置平面的最大距离;
基于所述最小外接矩形的长度和宽度及所述最大距离计算所述目标物体的体积。
7.根据权利要求1或2所述的体积测量方法,其特征在于,所述根据规则物体计算方法计算所述目标物体的体积的步骤,包括:
计算所述目标物体的上表面的面积、并计算所述上表面与放置所述目标物体的放置平面的相对距离;
基于所述面积及所述相对距离计算所述目标物体的体积。
8.根据权利要求2所述的体积测量方法,其特征在于,在所述获取测量模式的步骤之后,若获取到所述测量模式为所述第一模式,在所述控制深度相机拍摄目标物体,得到所述目标物体的深度图像的步骤之前,所述体积测量方法还包括:
控制所述深度相机拍摄没有目标物体时的深度图像,以标定所述目标物体所处的背景及放置所述目标物体的放置平面。
9.根据权利要求1所述的体积测量方法,其特征在于,若所述目标物体为所述非规则物体,且所述深度相机的拍摄角度不在所述预设角度范围内,所述体积测量方法还包括:
根据所述拍摄角度与所述预设角度范围调整所述深度相机的拍摄角度,或,发出测量失败并调整所述深度相机的拍摄角度的提示。
10.一种体积测量装置,其特征在于,包括:
控制模块,用于控制深度相机拍摄目标物体,得到所述目标物体的深度图像;
去除模块,用于去除所述第一深度图像中的背景,得到第二深度图像;
检测模块,用于检测所述第二深度图像中所述目标物体的平面;
第一计算模块,计算所述目标物体的平面的平整度和矩形度;
判断模块,用于根据所述平整度和所述矩形度,判断所述目标物体为规则物体或非规则物体;
第二计算模块,用于在所述目标物体为规则物体时,根据规则物体计算方法计算所述目标物体的体积;
第三计算模块,用于在所述目标物体为所述非规则物体,且所述深度相机的拍摄角度在预设角度范围内时,根据非规则物体计算方法计算所述目标物体的体积。
11.一种电子设备,其特征在于,包括深度相机、存储器及处理器,其中:
所述深度相机用于采集深度图像;
所述处理器用于执行存储在所述存储器上的计算机程序;
所述处理器执行所述计算机程序时,实现权利要求1至9中任意一项所述方法中的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至9中的任意一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210817217.6A CN115359111A (zh) | 2022-07-12 | 2022-07-12 | 一种体积测量方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210817217.6A CN115359111A (zh) | 2022-07-12 | 2022-07-12 | 一种体积测量方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115359111A true CN115359111A (zh) | 2022-11-18 |
Family
ID=84032097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210817217.6A Pending CN115359111A (zh) | 2022-07-12 | 2022-07-12 | 一种体积测量方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115359111A (zh) |
-
2022
- 2022-07-12 CN CN202210817217.6A patent/CN115359111A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11145038B2 (en) | Image processing method and device for adjusting saturation based on depth of field information | |
CN107392958B (zh) | 一种基于双目立体摄像机确定物体体积的方法及装置 | |
US8447099B2 (en) | Forming 3D models using two images | |
US8452081B2 (en) | Forming 3D models using multiple images | |
CN111274943B (zh) | 一种检测方法、装置、电子设备及存储介质 | |
CN111652086B (zh) | 人脸活体检测方法、装置、电子设备及存储介质 | |
CN106991378B (zh) | 基于深度的人脸朝向检测方法、检测装置和电子装置 | |
CN110798677B (zh) | 三维场景建模方法及装置、电子装置、可读存储介质及计算机设备 | |
CN111307039A (zh) | 一种物体长度识别方法、装置、终端设备和存储介质 | |
US11062521B2 (en) | Virtuality-reality overlapping method and system | |
US20190122429A1 (en) | Method and device for three-dimensional modeling | |
CN113822942A (zh) | 一种基于二维码的单目摄像头测量物体尺寸的方法 | |
CN113902652B (zh) | 散斑图像校正方法、深度计算方法、装置、介质及设备 | |
CN113920275B (zh) | 三角网格构建方法、装置、电子设备及可读存储介质 | |
CN112802114A (zh) | 多视觉传感器融合装置及其方法和电子设备 | |
CN110800020B (zh) | 一种图像信息获取方法、图像处理设备及计算机存储介质 | |
CN113435367A (zh) | 社交距离评估方法、装置及存储介质 | |
CN112446926A (zh) | 一种激光雷达与多目鱼眼相机的相对位置标定方法及装置 | |
CN115359111A (zh) | 一种体积测量方法、装置、设备及计算机可读存储介质 | |
CN116630423A (zh) | 一种基于orb特征的微小型机器人多目标双目定位方法及系统 | |
CN113723380B (zh) | 基于雷达技术的人脸识别方法、装置、设备和存储介质 | |
CN111524180B (zh) | 物体体积计算方法、装置、电子设备及存储介质 | |
CN113256811B (zh) | 建筑物建模方法、设备和计算机可读存储介质 | |
CN109389032B (zh) | 图片真实性的确定方法、装置、电子设备及可读存储介质 | |
CN112229381A (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 |