首页 > 搜索 > 高效算法对数据分拣,基于稀疏实采数据的分拣场景平行数据集构建方法与流程

高效算法对数据分拣,基于稀疏实采数据的分拣场景平行数据集构建方法与流程

互联网 2020-10-20 07:41:08
在线算命,八字测算命理
基于稀疏实采数据的分拣场景平行数据集构建方法与流程

本发明涉及数据集构建方法,特别涉及一种基于稀疏实采数据的分拣场景平行数据集构建方法。

背景技术:

随着数字化时代的发展,数据越来越重要。但是数据采集却是一个巨大的挑战。现有的数据集采集方法多数都是通过人工进行采集并标注的,这使得采集和标注数据集既费时又费力,而且采集到的数据集的质量也不高,在各方面都有局限性,如采集的视角,包含的内容等。而使用工具软件采集的虚拟数据集(以下统称人工数据集)效率高却脱离现实,真实性和可靠性不高。因此,现有技术存在以下问题:

(1)真实数据集的采集效率低下,耗时耗力,内容单一。

(2)在人工数据集中没有以真实数据集为基础进行数据的采集和标注,使得只用工具软件采集的数据集脱离现实,真实性和可靠性不高。

(3)没有将真实数据集和人工数据集按照一定的规则混合一起使用,使得数据集存在局限性大、适用性差等问题。

技术实现要素:

为解决上述技术问题,本发明提供了一种基于稀疏实采数据的分拣场景平行数据集构建方法,以达到高效可靠的构建平行数据集的目的。

为达到上述目的,本发明的技术方案如下:

一种基于稀疏实采数据的分拣场景平行数据集构建方法,包括以下步骤:

第一步,生成真实数据集;

第二步,将真实数据集导入3D处理工具,构建人工分拣堆放场景;

第三步,图形渲染生成人工数据集;

第四步,将真实数据集和人工数据集按照场景和影响因素进行混合,类别相同的放在同一个文件夹中,形成虚实结合的平行数据集。

上述方案中,所述真实数据集的生成方法具体如下:

(1)使用多品类的物体,设置物体的摆放姿势,构造物体分拣堆放场景;

(2)设置相机的视角:斜视和垂直俯视,采集图像信息;

(3)分类存储生成的图像信息;

(4)数据集采用众包形式,利用LabelImage图片标注工具对采集到的图像进行标注,标注文件记录了图片名称、图片大小、不同物体的类别名称、包围盒内容;

(5)从规模、多样性和复杂程度分析真实数据集,如果不满足规模、多样性和复杂程度条件,过滤数据集,并重复执行步骤(2)、(3)和(4),直到满足规模、多样性和复杂程度。

上述方案中,所述3D处理工具包括Blender和Unreal Engine 4。

进一步的,采用Blender作为3D处理工具的人工数据集的构建方法具体如下:

(1)将真实数据集按原尺寸导入Blender,随机摆放物体模型并赋予不同的姿态,尽可能模拟物体随机放置时的情况,构建物体分拣堆放场景;

(2)编写Camera.py算法完成相机的初始化信息和Environment.py算法完成灯光的初始化信息;

(3)设置材质属性,对材质的阴影、透明度属性进行设定,对场景中的背景进行贴图、雕刻和纹理操作,使场景材质仿真现实的材质,设置图像分辨率;

(4)设置灯光属性,配置实际环境中的灯光类型、能量值和颜色,再根据环境添加灯光,设置采样值参数;

(5)编写Camera.py算法实现相机位置信息变更,相机转换矩阵处理,相机2D3D包围盒数据计算;设置相机的不同视角,视野中的主体一直是目标物体,实现多方位的采集图片,并实现世界坐标和相机坐标的转化;

(6)编写Environment.py算法设计不同的虚拟场景生成算法,模拟物体的分拣场景,渲染生成人工图像;

(7)编写Lable.py算法处理标注信息的生成,实现自动标注技术处理和标注采集的图像并获得相应的数据信息,图像数据文件的命名同图像命名,再分类输出至不同的文件夹;

(8)从规模、多样性和复杂程度分析真实数据集,如果不满足规模、多样性和复杂程度条件,过滤数据集,并重复执行步骤(2)-(7),直到满足规模、多样性和复杂程度。

进一步的,采用Unreal Engine 4作为3D处理工具的人工数据集的构建方法具体如下:

(1)将真实数据集按原尺寸导入Unreal Engine 4,构建物体分拣堆放场景,设置图像分辨率;

(2)设置模型的状态和姿态,随机摆放物体模型并赋予不同的姿态,尽可能模拟物体随机放置时的情况,使构建的物体分拣堆放场景更接近现实中的场景;

(3)设置模型所处的环境,使用不同的背景、光照、天气,模拟出在不同时间、不同天气、不同地方的视觉效果;

(4)设置相机的视角,利用蓝图节点设计相机的旋转和移动,使相机在旋转和移动的过程中进行全方位的图像采集,相机视野中的主体为物体模型;

(5)设置图片命名格式和图像文件命名格式,实现有规律的自动命名;再自动分类存储生成的图像和数据信息,并输出至不同的文件夹;

(6)编写boundingbox.py算法实现自动标注技术的检测和修改作用,检测采集的图像和数据信息,如果画出的包围盒没有将图片中的物体一个个包围,则图像和数据信息有误,利用boundingbox.py算法进行修改;

(7)从规模、多样性和复杂程度分析真实数据集,如果不满足规模、多样性和复杂程度条件,过滤数据集,并重复执行步骤(2)-(6),直到满足规模、多样性和复杂程度。

更进一步的技术方案中,复杂程度针对数据集中图像包含的信息,采用{easy,moderate,hard}表示,计算公式为ci表示第i张图像的复杂程度评估分数,且ci∈[0,1],α为权重,α∈[0,1],oij和sij分别表示第i张图像中第j个bounding box被遮挡的面积以及该bounding box的面积,mi和ni分别表示图像中被遮挡的bounding box数量以及bounding box的总数量;图像复杂程度划分di表示第i张图像的复杂程度评估结果。

通过上述技术方案,本发明提供的基于稀疏实采数据的分拣场景平行数据集构建方法是一种新型的数据集生成方法,是将真实数据集导入3D处理工具经过人工场景构建和图形渲染生成大量的人工数据集,再将真实数据集和人工数据集混合一起形成虚实结合的平行数据集。与现有技术相比,本发明的有益效果为:

(1)将真实数据集导入3D处理工具经过人工场景构建和图形渲染生成大量的人工数据集。通过3D处理工具采集数据,可以在较短的时间生成大量的数据,效率高的同时减少了人力和物力的损耗;可以从各个角度采集数据,增加了数据的多样性,同时,数据包含的内容也更加丰富。

(2)以真实数据集为基础形成的人工数据集还能解决只用工具软件采集的人工数据集存在的真实性和可靠性不高的问题。通过真实数据集和人工数据集的虚实结合,能有效解决真实数据集采集存在的效率低下,局限性大的问题。两者的结合使得数据集多样可靠、适用性好,也更适合神经网络的训练。

(3)使用自动标注技术能有效减少数据集标注的时间和花费的成本,提高数据标注的准确率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明实施例基于稀疏实采数据的分拣场景平行数据集构建方法的流程图;

图2为本发明实施例基于稀疏实采数据的分拣场景平行数据集构建方法中真实数据集的构建方法的流程图;

图3为本发明实施例基于稀疏实采数据的分拣场景平行数据集构建方法中采用Blender作为3D处理工具的人工数据集的构建方法的流程图;

图4为本发明实施例基于稀疏实采数据的分拣场景平行数据集构建方法中采用Unreal Engine 4作为3D处理工具的人工数据集的构建方法的流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

参见图1,本发明提供了一种基于稀疏实采数据的分拣场景平行数据集构建方法,包括以下步骤:

第一步,在某物流分拣中心的仓库中,采集单物体的场景,生成单物体的真实数据集;

第二步,将单物体场景的真实数据集导入3D处理工具,分别构建以仓库和货架为背景的物体分拣堆放场景;

第三步,图形渲染生成大量的人工数据集;

第四步,将真实数据集和人工数据集按照场景和影响因素进行混合,类别相同的放在同一个文件夹中,形成虚实结合的平行数据集。

如图2所示,本发明实施例基于稀疏实采数据的分拣场景平行数据集构建方法中真实数据集的构建方法含有以下步骤:

步骤一,在某物流分拣中心的仓库中,选择多处快递随机堆放的场景,快递数量为25-40左右;

步骤二,在场景中放置两台摄像机,相机距离物体的实际距离在1.2-2m左右,设置两种相机的视角:斜视45度和垂直俯视,设置图像分辨率为640x480,采集图像信息;

步骤三,分类存储生成的图像信息,采集图片的保存形式:场景编号_图片编号_图片属性.图片保存格式,如scene001_000001_rgb.jpg;

步骤四,数据集采用众包形式,利用LabelImage图片标注工具对采集到的图像进行标注,将图像中的物品用2D包围盒分别标注出来,并生成xml标注文件,文件中记录了图片名称、图片大小、不同物体的类别名称、包围盒等内容;

步骤五,从规模、多样性和复杂程度分析真实数据集。统计真实数据集的数量,查看场景的种类、物品的种类和尺寸、影响因素的种类,用计算复杂程度,根据统计三种复杂程度的数量。如果规模不满足2万张以上,场景、物品、影响因素单一,复杂程度没有包括上述三种复杂度(easy,moderate,hard),过滤数据集,并重复执行步骤二、步骤三和步骤四,直到满足规模、多样性和复杂程度,形成真实数据集。

参见图3,本发明实施例基于稀疏实采数据的分拣场景平行数据集构建方法中采用Blender作为3D处理工具的人工数据集的构建方法含有以下步骤:

步骤一,将真实数据集按原尺寸导入Blender,随机摆放不同尺寸的瓦楞纸箱、信封袋、塑料袋和编织袋,构建以仓库为背景的物体分拣堆放场景;

步骤二,编写Camera.py算法实现相机的初始化信息和Environment.py算法完成灯光的初始化信息。初始化相机默认的位置为世界坐标(0,0,0),删除默认灯光类型;

步骤三,设置材质属性,设置材质的阴影为无阴影,对场景中的背景进行贴图操作,设置图像分辨率为640x480;

步骤四,设置灯光属性,设置实际环境使用天光照明,并随机设置能量值,颜色选择PLAIN;添加POINT类型的灯光,不使用高光,设置使用光纤追踪,并随机设置采样值;

步骤五,编写Camera.py算法实现相机位置信息变更,相机转换矩阵处理,相机2D3D包围盒数据计算。设置相机的视角:俯视45度和俯视90度,视野中的主体一直是目标物体,实现多方位的采集图片,并实现世界坐标和相机坐标的转化;

步骤六,编写Environment.py算法设计不同的虚拟场景生成算法,设置多物体散落场景:随机的取出配置数量范围内的随机个数物体,物体可以重复,随机摆放在空中的某个坐标点,赋予随机的姿态,然后让blender模拟物体自由落体,最终物体掉落到规定的表面模型上,渲染生成人工图像;

步骤七,编写Lable.py算法处理标注信息的生成实现自动标注技术处理和标注采集的图像。像素标注、2D包围盒标注和3D包围盒标注,并获得相应的数据信息,如图像数据文件scene001_000001_rgb.json、相机数据文件_camera_settings.json、物体数据文件_object_settings.json和图像(RGB图、深度图和语义分割图)。图像的保存形式:场景编号_图片编号_图片属性.图片保存格式,如scene001_000001_rgb.jpg,图像数据文件的命名同图像命名,如scene001_000001_rgb.json,再分类输出至不同的文件夹;

步骤八,从规模、多样性和复杂程度分析真实数据集。统计真实数据集的数量,查看场景的种类、物品的种类和尺寸、影响因素的种类,用计算复杂程度复杂程度,根据统计三种复杂程度的数量。如果规模不满足5万张以上,场景、物品、影响因素单一,复杂程度没有包括上述三种复杂度(easy,moderate,hard),过滤数据集,并重复执行步骤二、步骤三、步骤四、步骤五、步骤六和步骤七,直到满足规模、多样性和复杂程度,形成真实数据集。

参见图4,本发明实施例所述基于稀疏实采数据的分拣场景平行数据集构建方法中,采用Unreal Engine 4作为3D处理工具的人工数据集的构建方法,含有以下步骤:

步骤一,将真实数据集按原尺寸导入Unreal Engine 4,随机摆放不同尺寸的瓦楞纸箱、信封袋、塑料袋和编织袋,构建以货架为背景的物体分拣堆放场景。设置图像分辨率为640x480;

步骤二,设置模型的状态和姿态。将一部分快递物品整齐的摆放在货架上,同时,地上散落着未整理的物品,模拟现实中快递分拣的场景;

步骤三,设置模型所处的环境。模拟晴天的早上太阳斜射入屋子,光线投射在货架上,在地上留下长长的影子的场景;

步骤四,设置相机的视角,利用蓝图节点设计相机的旋转和移动。使用两个相机,俯视45度和平视,相机绕z轴顺时针旋转,每次旋转3.6度,并向下移动,在这个过程中全方位的采集图像,相机视野中的主体为物体模型;

步骤五,将图片命名格式设置为场景编号_图片编号_图片属性.图片保存格式,如scene001_000001_rgb.jpg,图像数据文件的命名同图像命名scene001_000001_rgb.json,相机数据文件_camera_settings.json、物体数据文件_object_settings.json实现有规律的自动命名。再自动分类存储生成的图像(RGB图、深度图和语义分割图)和数据信息,并输出至不同的文件夹;

步骤六,编写boundingbox.py算法实现自动标注技术的检测和修改作用,检测采集的图像和数据信息,如2D包围盒、3D包围盒、图像数据文件、相机数据文件、物体数据文件和图像(RGB图、深度图和语义分割图)。如果画出的包围盒没有将图片中的物体一个个包围,则图像和数据信息有误,利用boundingbox.py算法进行修改;

步骤七,从规模、多样性和复杂程度分析真实数据集。统计真实数据集的数量,查看场景的种类、物品的种类和尺寸、影响因素的种类,用计算复杂程度复杂程度,根据统计三种复杂程度的数量。如果规模不满足5万张以上,场景、物品、影响因素单一,复杂程度没有包括上述三种复杂度(easy,moderate,hard),过滤数据集,并重复执行步骤二、步骤三、步骤四、步骤五、步骤六和步骤七,直到满足规模、多样性和复杂程度,形成真实数据集。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

免责声明:非本网注明原创的信息,皆为程序自动获取互联网,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责;如此页面有侵犯到您的权益,请给站长发送邮件,并提供相关证明(版权证明、身份证正反面、侵权链接),站长将在收到邮件12小时内删除。

相关阅读

一周热门

查看更多