CN112102393A - 物件体积测算方法、装置、计算机设备及存储介质 - Google Patents

物件体积测算方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112102393A
CN112102393A CN202010954525.4A CN202010954525A CN112102393A CN 112102393 A CN112102393 A CN 112102393A CN 202010954525 A CN202010954525 A CN 202010954525A CN 112102393 A CN112102393 A CN 112102393A
Authority
CN
China
Prior art keywords
volume
calculating
acquiring
traversal
point
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
Application number
CN202010954525.4A
Other languages
English (en)
Inventor
姚存
刘振东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Abbott Robot Technology Co ltd
Original Assignee
Hangzhou Abbott Robot Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Abbott Robot Technology Co ltd filed Critical Hangzhou Abbott Robot Technology Co ltd
Priority to CN202010954525.4A priority Critical patent/CN112102393A/zh
Publication of CN112102393A publication Critical patent/CN112102393A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection

Abstract

本发明涉及物件体积测算方法、装置、计算机设备及存储介质,该方法包括获取物件底面的光栅数据;根据物件底面的光栅数据获取物件底面的点阵图;根据物件底面的点阵图获取物件的轮廓图;根据物件的轮廓图计算底面的中心,以得到物件中心;按照物件中心旋转物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;根据物件的高度以及物件底面的最小外接矩形计算物件的体积;反馈物件的体积至终端,以进行体积重量的计算。本发明实现对规则或不规则的物件体积的测算,无需人工测量,实现自动测量快递物件的尺寸,操作简单,效率高,且适用于不规则物体的最小外切体积的获取,测量精度高。

Description

物件体积测算方法、装置、计算机设备及存储介质
技术领域
本发明涉及物件体积测算方法,更具体地说是指物件体积测算方法、装置、计算机设备及存储介质。
背景技术
在物流和快递行业中,常常需要对快递物件进行体积测量,以进行物件体积重量的计算,具体地,快递公司会对长、宽、高三边中任一单边达到60cm或以上的物件进行计算体积重量,而在测量体积时通常采用人工测量的方式进行,对于一些不规则的物体的最小外切体积测量较为麻烦,也就是目前对于快递物件的体积测量难,且操作繁琐,效率低。
因此,有必要设计一种新的方法,实现自动测量快递物件的尺寸,操作简单,效率高,且适用于不规则的物体的最小外切体积的获取,测量精度高。
发明内容
本发明的目的在于克服现有技术的缺陷,提供物件体积测算方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:物件体积测算方法,包括:
获取物件底面的光栅数据;
根据物件底面的光栅数据获取物件底面的点阵图;
根据物件底面的点阵图获取物件的轮廓图;
根据物件的轮廓图计算底面的中心,以得到物件中心;
按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;
获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;
根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积;
反馈所述物件的体积至终端,以进行体积重量的计算。
其进一步技术方案为:所述根据物件底面的光栅数据获取物件底面的点阵图,包括:
将物件底面的光栅数据转换为字节数组;
将字节数组插入预设缓存数组的尾部;
通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
其进一步技术方案为:所述根据物件底面的点阵图获取物件的轮廓图,包括:
从物件底面的点阵图其中一个点出发进行深度优先遍历;
判断遍历的点是否是物件的边缘点;
若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内;
判断遍历是否结束;
若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图;
若遍历未结束,则执行所述从物件底面的点阵图其中一个点出发进行深度优先遍历。
其进一步技术方案为:所述判断遍历的点是否是物件的边缘点之后,还包括:
若遍历的点不是物件的边缘点,则执行所述判断遍历是否结束。
其进一步技术方案为:所述反馈所述物件的体积至终端,以进行体积重量的计算,包括:
获取物件的条码以及重量;
将物件的条码、重量以及体积打包,以得到数据包;
将所述数据包发送至终端,以进行体积重量的计算。
本发明还提供了物件体积测算装置,包括:
底面数据获取单元,用于获取物件底面的光栅数据;
点阵图获取单元,用于根据物件底面的光栅数据获取物件底面的点阵图;
轮廓图获取单元,用于根据物件底面的点阵图获取物件的轮廓图;
中心计算单元,用于根据物件的轮廓图计算底面的中心,以得到物件中心;
矩形计算单元,用于按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;
高度计算单元,用于获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;
体积计算单元,用于根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积;
反馈单元,用于反馈所述物件的体积至终端,以进行体积重量的计算。
其进一步技术方案为:所述点阵图获取单元包括:
数据转换子单元,用于将物件底面的光栅数据转换为字节数组;
插入子单元,用于将字节数组插入预设缓存数组的尾部;
比例调整子单元,用于通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
其进一步技术方案为:所述轮廓图获取单元包括:
遍历子单元,用于从物件底面的点阵图其中一个点出发进行深度优先遍历;
点判断子单元,用于判断遍历的点是否是物件的边缘点;
添加子单元,用于若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内;
遍历判断子单元,用于判断遍历是否结束;若遍历未结束,则执行所述从物件底面的点阵图其中一个点出发进行深度优先遍历;
边框获取子单元,用于若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过获取物件底面的光栅数据后,进行点阵图的确定,再对点阵图内的每个点进行遍历,由此确定底面的轮廓,进而获取物件底面的最小外接矩形,再根据获取到的侧面光栅数据所确定的物件高度,根据底面的最小外接矩形和物件高度之积确定体积,采用光栅器件扫描物件和后台测算的方式,可实现对规则或者不规则的物件体积的测算,无需人工测量,实现自动测量快递物件的尺寸,操作简单,效率高,且适用于不规则的物体的最小外切体积的获取,测量精度高。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的物件体积测算方法的应用场景示意图;
图2为本发明实施例提供的物件体积测算方法的流程示意图;
图3为本发明实施例提供的物件体积测算方法的子流程示意图;
图4为本发明实施例提供的物件体积测算方法的子流程示意图;
图5为本发明实施例提供的物件体积测算方法的子流程示意图;
图6为本发明实施例提供的物件体积测算装置的示意性框图;
图7为本发明实施例提供的物件体积测算装置的点阵图获取单元的示意性框图;
图8为本发明实施例提供的物件体积测算装置的轮廓图获取单元的示意性框图;
图9为本发明实施例提供的物件体积测算装置的反馈单元的示意性框图;
图10为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的物件体积测算方法的应用场景示意图。图2为本发明实施例提供的物件体积测算方法的示意性流程图。该物件体积测算方法应用于服务器,该服务器与终端以及光栅器件进行数据交互,通过光栅器件扫描物件的底面和侧面,以获取对应的光栅数据,并根据底面光栅数据进行处理和相关数据的计算,结合侧面的光栅数据,便可计算得到物件的体积,不管是规则还是不规则的物件都可以快速且自动地测量体积。
图2是本发明实施例提供的物件体积测算方法的流程示意图。如图2所示,该方法包括以下步骤S110至S180。
S110、获取物件底面的光栅数据。
在本实施例中,光栅数据是指利用光栅器件扫描物件底面所得到数据。
S120、根据物件底面的光栅数据获取物件底面的点阵图。
在本实施例中,物件底面的点阵图是指物件底面像素的单个点组成的图像。
在一实施例中,请参阅图3,上述的步骤S120可包括步骤S121~S123。
S121、将物件底面的光栅数据转换为字节数组。
在本实施例中,字节数组是指将光栅数据转换为字节类型所构成的数组。
S122、将字节数组插入预设缓存数组的尾部。
在本实施例中,预设缓存数组是指用于暂存数组的缓存。
S123、通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
通过串口读取光栅数据,转化为字节数组,插入到预设缓存数组尾部,通过最近邻插值法,将预设缓存数组的长宽比例调整为实际情况下的长宽比例,即可获取到光栅点阵图的原始数组。
MergeData(arr,ref result);
arr1=PreProcess(arr)//数据预处理,arr为光栅数据;
append arr1 onto the end of result。
具体地,先对光栅数据进行预处理后,根据移动速度和底面的光栅数据获取地面点阵图,采用光栅器件扫描的方式获取光栅数据并进行对应的处理,自动测量体积,无需人工参与计算,可提高整个测量的准确率和效率。
S130、根据物件底面的点阵图获取物件的轮廓图。
在本实施例中,物件的轮廓图是指由物件底面的边缘点构成的边框图。
在一实施例中,请参阅图4,上述的步骤S130可包括步骤S131~S135。
S131、从物件底面的点阵图其中一个点出发进行深度优先遍历。
在本实施例中,对物件底面的点阵图内的任何一个点都进行遍历,以筛选出处于物件底面边缘的点,由此确认物件底面的轮廓图。
S132、判断遍历的点是否是物件的边缘点;
S133、若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内。
在本实施例中,边缘缓存是指用于存储位于物件底面边缘的点的相关信息,包括点的坐标等。
S134、判断遍历是否结束;
S135、若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图。
在本实施例中,根据边缘缓存内的点的坐标确定一个边框的坐标,由此确定物件的轮廓图。
若遍历未结束,则执行所述步骤S131;
若遍历的点不是物件的边缘点,则执行所述步骤S134。
由物件底面的点阵图内的一个点出发,深度优先遍历,判断遍历的点是否为物件底面边缘,如果在物件底面边缘,则将该点添加到边缘缓存中,遍历结束后,缓存中的数据即为物件底面的轮廓点阵图。
//将点阵图转换为轮廓点阵图,x为任意物件的点的横坐标,y为任意物件的点的纵坐标,data为点阵图,返回值为轮廓点阵图;
GetContour(x,y,data);
DFS(x,y,data,ref countour)//深度优先遍历;
return countour;
//深度优先遍历获取边框坐标数据,x为任意物件内的点的横坐标,y为任意物件内的点的纵坐标,data为点阵图,contour为轮廓数据
DFS(x,y,data,ref contour);
If IsBorder(x,y,data)//判断是否为轮廓数据;
append(x,y)onto the end of contour;
If IsInside(x,y,data)//判断坐标是否被物件包含;
DFS(x+1,y,data,ref contour);
DFS(x-1,y,data,ref contour);
DFS(x,y+1,data,ref contour);
DFS(x,y-1,data,ref contour)。
无需人工确定物件的边缘,采用自动化确定物件边缘的点,避免出现遗漏,且避免了人工确定物件轮廓的误差。
S140、根据物件的轮廓图计算底面的中心,以得到物件中心。
在本实施例中,物件中心是指物件底面的中心点。
//根据轮廓数据计算中心点,contour为轮廓数据,返回值为中心点坐标;
CaculateCentre(Contour);
x=AverageXaxis(Contour);
y=AverageYaxis(Contour);
return(x,y)。
S150、按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形。
//获取最小底面积,contour为轮廓数据,midX为中心点横坐标,midY为中心点纵坐标,返回值为最小面积;
GetMinArea(contour,midX,midY);
let m be the length of contour;
let result be max of int;
for i=0to 90;
rotateContour=rotate(contour,i,midX,midY);//获取旋转后的轮廓图;
result=Min(result,GetArea(rotateContour));//获取轮廓图下水平长方形面积;
return result。
S160、获取物件侧面的光栅数据,并根据物件侧面计算物件的高度。
在本实施例中物件的高度是指通过物件侧面的光栅数据进行预处理后得到的高度值。
//获取高度数据,arr为侧面光栅数据,返回值为高度;
GetHeight(arr);
arr1=PreProcessHeight(arr);
return CaculateHeight(arr1)。
S170、根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积。
在本实施例中,物件的体积是指物件的高度以及物件底面的最小外接矩形之积。
CaculateVolume(area,height);
return area*height。
S180、反馈所述物件的体积至终端,以进行体积重量的计算。
在一实施例中,请参阅图5,上述的步骤S180可包括步骤S181~S183。
S181、获取物件的条码以及重量。
在本实施例中,每个物件均带有条形码,且可通过称重器获取物件的重量。
S182、将物件的条码、重量以及体积打包,以得到数据包。
在本实施例中,数据包是指通过指定的格式将物件的条码、重量以及体积进行组合所形成一个包。
在本实施例中,可采用物件的条码+重量+体积的排布格式进行打包。
S183、将所述数据包发送至终端,以进行体积重量的计算。
当终端获取到数据包后,可根据物件的条码确定物件的类型,再根据实际的重量以及体积进行体积重量的确定,再由此确定物流费用。
只需将物件放置在设备上,就可以准确获得物件的尺寸,解决了体积测量难,操作繁琐的问题,并且可以测量不规则物体的最小外切体积。应用于物流和快递行业的货物体积测量,仓储管理等领域。测量精度高,成本低,提高了物流,仓储自动化程度。物件的体积测量不再依赖人工完成,而是采用全自动的方式进行,不仅提高了测量效率,还避免了人工测量所产生的误差。
上述的物件体积测算方法,通过获取物件底面的光栅数据后,进行点阵图的确定,再对点阵图内的每个点进行遍历,由此确定底面的轮廓,进而获取物件底面的最小外接矩形,再根据获取到的侧面光栅数据所确定的物件高度,根据底面的最小外接矩形和物件高度之积确定体积,采用光栅器件扫描物件和后台测算的方式,可实现对规则或者不规则的物件体积的测算,无需人工测量,实现自动测量快递物件的尺寸,操作简单,效率高,且适用于不规则的物体的最小外切体积的获取,测量精度高。
图6是本发明实施例提供的一种物件体积测算装置300的示意性框图。如图6所示,对应于以上物件体积测算方法,本发明还提供一种物件体积测算装置300。该物件体积测算装置300包括用于执行上述物件体积测算方法的单元,该装置可以被配置于服务器中。具体地,请参阅图6,该物件体积测算装置300包括底面数据获取单元301、点阵图获取单元302、轮廓图获取单元303、中心计算单元304、矩形计算单元305、高度计算单元306、体积计算单元307以及反馈单元308。
底面数据获取单元301,用于获取物件底面的光栅数据;点阵图获取单元302,用于根据物件底面的光栅数据获取物件底面的点阵图;轮廓图获取单元303,用于根据物件底面的点阵图获取物件的轮廓图;中心计算单元304,用于根据物件的轮廓图计算底面的中心,以得到物件中心;矩形计算单元305,用于按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;高度计算单元306,用于获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;体积计算单元307,用于根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积;反馈单元308,用于反馈所述物件的体积至终端,以进行体积重量的计算。
在一实施例中,如图7所示,所述点阵图获取单元302包括数据转换子单元3021、插入子单元3022以及比例调整子单元3023。
数据转换子单元3021,用于将物件底面的光栅数据转换为字节数组;插入子单元3022,用于将字节数组插入预设缓存数组的尾部;比例调整子单元3023,用于通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
在一实施例中,如图8所示,所述轮廓图获取单元303包括遍历子单元3031、点判断子单元3032、添加子单元3033、遍历判断子单元3034以及边框获取子单元3035。
遍历子单元3031,用于从物件底面的点阵图其中一个点出发进行深度优先遍历;点判断子单元3032,用于判断遍历的点是否是物件的边缘点;若遍历的点不是物件的边缘点,则执行所述判断遍历是否结束;添加子单元3033,用于若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内;遍历判断子单元3034,用于判断遍历是否结束;若遍历未结束,则执行所述从物件底面的点阵图其中一个点出发进行深度优先遍历;边框获取子单元3035,用于若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图。
在一实施例中,如图9所示,所述反馈单元308包括信息获取子单元3081、打包子单元3082以及发送子单元3083。
信息获取子单元3081,用于获取物件的条码以及重量;打包子单元3082,用于将物件的条码、重量以及体积打包,以得到数据包;发送子单元3083,用于将所述数据包发送至终端,以进行体积重量的计算。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述物件体积测算装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述物件体积测算装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图10所示的计算机设备上运行。
请参阅图10,图10是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器,其中,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图10,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种物件体积测算方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种物件体积测算方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
获取物件底面的光栅数据;根据物件底面的光栅数据获取物件底面的点阵图;根据物件底面的点阵图获取物件的轮廓图;根据物件的轮廓图计算底面的中心,以得到物件中心;按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积;反馈所述物件的体积至终端,以进行体积重量的计算。
在一实施例中,处理器502在实现所述根据物件底面的光栅数据获取物件底面的点阵图步骤时,具体实现如下步骤:
将物件底面的光栅数据转换为字节数组;将字节数组插入预设缓存数组的尾部;通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
在一实施例中,处理器502在实现所述根据物件底面的点阵图获取物件的轮廓图步骤时,具体实现如下步骤:
从物件底面的点阵图其中一个点出发进行深度优先遍历;判断遍历的点是否是物件的边缘点;若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内;判断遍历是否结束;若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图;若遍历未结束,则执行所述从物件底面的点阵图其中一个点出发进行深度优先遍历。
在一实施例中,处理器502在实现所述判断遍历的点是否是物件的边缘点步骤之后,还实现如下步骤:
若遍历的点不是物件的边缘点,则执行所述判断遍历是否结束。
在一实施例中,处理器502在实现所述反馈所述物件的体积至终端,以进行体积重量的计算步骤时,具体实现如下步骤:
获取物件的条码以及重量;将物件的条码、重量以及体积打包,以得到数据包;将所述数据包发送至终端,以进行体积重量的计算。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
获取物件底面的光栅数据;根据物件底面的光栅数据获取物件底面的点阵图;根据物件底面的点阵图获取物件的轮廓图;根据物件的轮廓图计算底面的中心,以得到物件中心;按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积;反馈所述物件的体积至终端,以进行体积重量的计算。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据物件底面的光栅数据获取物件底面的点阵图步骤时,具体实现如下步骤:
将物件底面的光栅数据转换为字节数组;将字节数组插入预设缓存数组的尾部;通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据物件底面的点阵图获取物件的轮廓图步骤时,具体实现如下步骤:
从物件底面的点阵图其中一个点出发进行深度优先遍历;判断遍历的点是否是物件的边缘点;若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内;判断遍历是否结束;若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图;若遍历未结束,则执行所述从物件底面的点阵图其中一个点出发进行深度优先遍历。
在一实施例中,所述处理器在执行所述计算机程序而实现所述判断遍历的点是否是物件的边缘点步骤之后,还实现如下步骤:
若遍历的点不是物件的边缘点,则执行所述判断遍历是否结束。
在一实施例中,所述处理器在执行所述计算机程序而实现所述反馈所述物件的体积至终端,以进行体积重量的计算步骤时,具体实现如下步骤:
获取物件的条码以及重量;将物件的条码、重量以及体积打包,以得到数据包;将所述数据包发送至终端,以进行体积重量的计算。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.物件体积测算方法,其特征在于,包括:
获取物件底面的光栅数据;
根据物件底面的光栅数据获取物件底面的点阵图;
根据物件底面的点阵图获取物件的轮廓图;
根据物件的轮廓图计算底面的中心,以得到物件中心;
按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;
获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;
根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积;
反馈所述物件的体积至终端,以进行体积重量的计算。
2.根据权利要求1所述的物件体积测算方法,其特征在于,所述根据物件底面的光栅数据获取物件底面的点阵图,包括:
将物件底面的光栅数据转换为字节数组;
将字节数组插入预设缓存数组的尾部;
通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
3.根据权利要求1所述的物件体积测算方法,其特征在于,所述根据物件底面的点阵图获取物件的轮廓图,包括:
从物件底面的点阵图其中一个点出发进行深度优先遍历;
判断遍历的点是否是物件的边缘点;
若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内;
判断遍历是否结束;
若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图;
若遍历未结束,则执行所述从物件底面的点阵图其中一个点出发进行深度优先遍历。
4.根据权利要求3所述的物件体积测算方法,其特征在于,所述判断遍历的点是否是物件的边缘点之后,还包括:
若遍历的点不是物件的边缘点,则执行所述判断遍历是否结束。
5.根据权利要求1所述的物件体积测算方法,其特征在于,所述反馈所述物件的体积至终端,以进行体积重量的计算,包括:
获取物件的条码以及重量;
将物件的条码、重量以及体积打包,以得到数据包;
将所述数据包发送至终端,以进行体积重量的计算。
6.物件体积测算装置,其特征在于,包括:
底面数据获取单元,用于获取物件底面的光栅数据;
点阵图获取单元,用于根据物件底面的光栅数据获取物件底面的点阵图;
轮廓图获取单元,用于根据物件底面的点阵图获取物件的轮廓图;
中心计算单元,用于根据物件的轮廓图计算底面的中心,以得到物件中心;
矩形计算单元,用于按照物件中心旋转所述物件以计算物件底面的外接矩形以及物件底面的最小外接矩形;
高度计算单元,用于获取物件侧面的光栅数据,并根据物件侧面计算物件的高度;
体积计算单元,用于根据物件的高度以及物件底面的最小外接矩形计算所述物件的体积;
反馈单元,用于反馈所述物件的体积至终端,以进行体积重量的计算。
7.根据权利要求6所述的物件体积测算装置,其特征在于,所述点阵图获取单元包括:
数据转换子单元,用于将物件底面的光栅数据转换为字节数组;
插入子单元,用于将字节数组插入预设缓存数组的尾部;
比例调整子单元,用于通过最近邻插值法将预设缓存数组的长宽比例调整为物件底面的长宽比例,以得到物件底面的点阵图。
8.根据权利要求7所述的物件体积测算装置,其特征在于,所述轮廓图获取单元包括:
遍历子单元,用于从物件底面的点阵图其中一个点出发进行深度优先遍历;
点判断子单元,用于判断遍历的点是否是物件的边缘点;
添加子单元,用于若遍历的点是物件的边缘点,则将遍历的点添加至边缘缓存内;
遍历判断子单元,用于判断遍历是否结束;若遍历未结束,则执行所述从物件底面的点阵图其中一个点出发进行深度优先遍历;
边框获取子单元,用于若遍历结束,则获取边缘缓存内的点所构成的边框,以得到物件的轮廓图。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至5中任一项所述的方法。
CN202010954525.4A 2020-09-11 2020-09-11 物件体积测算方法、装置、计算机设备及存储介质 Pending CN112102393A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010954525.4A CN112102393A (zh) 2020-09-11 2020-09-11 物件体积测算方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010954525.4A CN112102393A (zh) 2020-09-11 2020-09-11 物件体积测算方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN112102393A true CN112102393A (zh) 2020-12-18

Family

ID=73750866

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010954525.4A Pending CN112102393A (zh) 2020-09-11 2020-09-11 物件体积测算方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112102393A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030062774A (ko) * 2002-01-19 2003-07-28 한국전자통신연구원 3차원 물체 치수 측정 시스템 및 방법
CN106152947A (zh) * 2015-03-31 2016-11-23 北京京东尚科信息技术有限公司 测量物体尺寸的设备、方法和装置
CN110490833A (zh) * 2018-05-09 2019-11-22 北京中航安通科技有限公司 一种目标物体的体积测量方法及装置
CN110910445A (zh) * 2019-11-26 2020-03-24 深圳市丰巢科技有限公司 一种物件尺寸检测方法、装置、检测设备及存储介质
CN111504182A (zh) * 2020-04-10 2020-08-07 四川超影科技有限公司 一种利用二维码辅助校准的物体体积视觉测量方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030062774A (ko) * 2002-01-19 2003-07-28 한국전자통신연구원 3차원 물체 치수 측정 시스템 및 방법
CN106152947A (zh) * 2015-03-31 2016-11-23 北京京东尚科信息技术有限公司 测量物体尺寸的设备、方法和装置
CN110490833A (zh) * 2018-05-09 2019-11-22 北京中航安通科技有限公司 一种目标物体的体积测量方法及装置
CN110910445A (zh) * 2019-11-26 2020-03-24 深圳市丰巢科技有限公司 一种物件尺寸检测方法、装置、检测设备及存储介质
CN111504182A (zh) * 2020-04-10 2020-08-07 四川超影科技有限公司 一种利用二维码辅助校准的物体体积视觉测量方法

Similar Documents

Publication Publication Date Title
US20100021068A1 (en) System and method for extracting boundary elements of an object
EP1091320A2 (en) Processing multiple digital images
US20080189081A1 (en) System and method for analyzing geometric deviations of a physical object
CN104933749B (zh) 图形图元的裁剪
CN111008560A (zh) 一种牲畜的重量确定方法、装置、终端及计算机存储介质
JP2003529114A (ja) 光学スキャナとそのためのソフトウエア
US20090289953A1 (en) System and method for adjusting view of a measuring report of an object
CN111316330A (zh) 用于对点云进行上采样的方法和装置
KR0180253B1 (ko) 도형 묘화 장치 및 도형 묘화 방법
CN108596876B (zh) 一种自动设置检测区域的方法
US8503756B2 (en) System and method for verifying manufacturing consistency of manufactured items
CN112102393A (zh) 物件体积测算方法、装置、计算机设备及存储介质
CN112085752B (zh) 一种图像的处理方法、装置、设备及介质
CN111611935B (zh) 一种cad图纸中相似矢量图的自动识别方法
CN106910196B (zh) 一种图像检测方法及装置
US7379599B1 (en) Model based object recognition method using a texture engine
CN111121640A (zh) 一种车辆尺寸检测方法和装置
CN115937593A (zh) 一种模型法建立方法、物体检测方法及相关设备
US11625890B2 (en) Geometry buffer slice tool
CN115187515A (zh) 图像处理设备、方法、装置和可读存储介质
CN115035070A (zh) 一种确定cbct图像中种植体位置的方法及装置
US9123122B2 (en) Removing an object support from imaging data
CN109214398B (zh) 一种从连续图像中量测杆体位置的方法和系统
JPH0636048A (ja) ボリュームデータクリッピング方式
CN111553903B (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