发明内容
本发明的目的在于提供一种多源数据标注方法、系统、电子设备和存储介质,基于2D图像数据和深度学习的数据标注技术进行半自动图像标注技术,利用深度学习技术先对待标注数据进行预标注,再对预标注图像自动加工,去除大量噪声点,最后交由标注人员使用特定工具快速地发现和修正预标注图中的缺陷,从而达到缩减标注时间的目的,解决现有技术存在的缺憾。
本发明提供了下述方案:
一种具有环绕视场的多源数据标注方法,其特征在于,所述多源数据标注方法包括:
对传感器进行数据准备,对待标注数据进行类型命名和添加编号;
调整3D点云可视化界面中的点云数据的观测视角,使选择框包括全部包含标注的点云数据,给标注选定好的点云数据赋予类型标签及编号;
3D点云标注选择框自动映射为RGB图像标注选择框;
选定两帧数据进行标注,两帧数据之间的其余数据帧自动补全;根据两帧数据的标注信息,采用插值算法对其余数据帧的标注信息进行补齐和显示;
将标注数据进行保存和导出。
进一步的,在传感器进行数据准备的过程中,所有传感器数据经过时间戳同步处理,以采集车辆中心为坐标系,获取各个传感器之间的空间位置关系,构成传感器外参矩阵。
进一步的,在3D点云标注过程中,将3D点云可视化界面分为不同视角的视图:自由选择观测角度的点云可视化全局视图、选中选择框后显示的局部点云主视图、俯视图和侧视图,调整选择的位置和尺寸,各个不同视角的视图之间自动实时同步。
进一步的,采用多传感器三维坐标转换方式,将选择框自动映射为RGB图像标注选择框;
空间顶点坐标依次进行坐标齐次化和相机坐标系投影计算,得到相机坐标系下的三维矩形框数据;
再经过图像坐标系的投影计算,在RGB数据可视化界面中看到3D点云标注选择框;
进行逆计算,调整RGB数据可视化界面的标注矩形框,自动映射为3D点云标注矩形框。
进一步的,采用插值算法对其余数据帧的标注信息进行补齐和显示,通过三维矩形框数据计算出当前标注物体的位置和航向角度,选定且标注两帧数据帧。
进一步的,利用Slerp插值算法对两帧之间的其余数据帧进行标注插值和映射。
一种具有环绕视场的多源数据标注系统,其特征在于,所述多源数据标注系统包括:
命名编号模块,用于对待标注数据进行类型命名和添加编码;
点云数据标注模块,调整3D点云可视化界面中的点云数据的观测视角,使选择框包括全部包含标注的点云数据,给标注选定好的点云数据赋予类型标签及编号;
点云标注映射模块,用于3D点云标注选择框自动映射为RGB图像标注矩形框;
数据帧自动补全模块,用于选定两帧数据进行标注,两贴数据之间的其余数据帧自动补全;
存储导出模块,用于将标注数据进行保存和导出。
进一步的,在所述数据帧自动补全模块中,采用插值算法对其余数据帧的标注信息进行补齐和显示。
一种电子设备,其特征在于,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行所述方法的步骤。
一种计算机可读存储介质,其特征在于,其存储有可由电子设备执行的计算机程序,当所述计算机程序在所述电子设备上运行时,使得所述电子设备执行所述方法的步骤。
本发明与现有技术相比具有以下的优点:本发明支持同时标注多视角RGB图像数据和3D点云数据,多源数据的同时标注调整有助于提高人工标注的精确度;利用空间坐标系原理构建不同传感器标注数据之间的联系,避免传统联合标定的复杂流程;利用插值算法辅助多数据帧的半自动化标注,大大减少人工标注的工作量和时间成本;基于web和开源3D引擎设计该数据标注工具,打破现有数据标注工具的局限性,满足未来多源数据标注的发展需求。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的主要思想,是提供一种具有环绕视场的多源数据标方法和系统,可以标注2D图像和3D点云,而且可以通过构建传感器数据之间的关联,基于已标注的传感器数据,推算出另一种传感器的标注结果,大大提高了数据标注工具对不同传感器的兼容性和适用性。同时,该数据标注工具具有自动插值功能,可以实现半自动化数据标注,仅需任意选定两帧数据,完成标注后即可自动进行两帧之间其余数据的标注工作,降低了手动标注的工作量,极大地提高了数据标定的效率,数据标注工具界面如图1所示。
本发明能够跨平台使用,减少额外的系统资源要求和复杂的环境配置,在下面公开的实施例中,本发明采用web技术实现整个工具的功能开发,仅需一个浏览器即可运行标注程序,无需考虑底层系统配置等问题。传统的数据标注工具之所以不具有3D点云数据的标注功能,是因为3D点云数据的数据量大而且无序,不利于操作人员准确地执行标注工作;本发明基于WebGL和Potree开源3D解决方案,实现整个数据标注工具的实时数据可视化和点云标注计算功能。
Potree是一种基于WebGL的3D点云数据可视化解决方案,包含点云数据转化,数据操作以及进行可视化的源码。该解决方案的主要优势在于对点云数据进行了多尺度的管理,在数据传输和可视化上都做了优化。它是一套开源的系统,基于Three.js,由奥地利维也纳理工大学的Harvest4D项目贡献。本发明设计的数据标注工具除了可以使用Potree这一解决方案外,其他的开源3D解决方案同样是可以适用的,比如Blend4Web和PCL,同样是可以用于Web端的点云数据处理和计算。
需要说明的是:需要本发明的实施例以web浏览器作为载体运行标注程序,但并不意味着本发明的运行平台局限于web浏览器,以web浏览器为例对本发明进行描述,只是示意性的,而非局限性的,不能认为本发明只运行在web浏览器上,也不能认为web浏览器是本发明的唯一运行平台。
实施例1:具有环绕视场的多源数据标注方法,多源数据标注方法包括:
对传感器进行数据准备,对待标注数据进行类型命名和添加编号,所有的传感器数据帧在同一时刻下需要命名一致,可以根据自定义序号或时间戳进行命名;
调整3D点云可视化界面中的点云数据的观测视角,使选择框包括全部包含标注的点云数据,给标注选定好的点云数据赋予类型标签及编号;
3D点云标注选择框自动映射为RGB图像标注矩形框;通过调整RGB数据可视化界面的矩形框,同样也可以自动映射到3D点云可视化界面上;
选定两帧数据进行标注,两帧数据之间的其余数据帧自动补全;根据两帧数据的标注信息,采用插值算法对其余数据帧的标注信息进行补齐和显示;
在本发明中,3D点云标注选择框、3D点云标注选择框、三维矩形框和RGB图像标注矩形框等概念具有等同意义,都是用于框定选择的控件,类似用于框定选择的控件通常都是矩形的,但并不意味着选择框的形状仅局限于矩形框,在一些特殊的场合,选择框可以根据实际情况采用任何一种形状。
优选的,在传感器进行数据准备的过程中,所有传感器数据经过时间戳同步处理,保证数据输出的时间一致性,以采集车辆中心为坐标系,可以采用外部物理测量的方式或外参联合标定,获取各个传感器之间的空间位置关系,构成传感器外参矩阵。
优选的,在3D点云标注过程中,将3D点云可视化界面分为不同视角的视图:自由选择观测角度的点云可视化全局视图、选中矩形框后显示的局部点云主视图、俯视图和侧视图,调整选择的位置和尺寸,各个不同视角的视图之间自动实时同步,在数据标注过程中,通过优先对3D点云数据进行标注,通过自动映射至各个视角下的RGB数据中,实现高效的多源数据标注操作。为了达到具有环绕视场的效果,数据标注工具输入的RGB相机数据至少要求有四路以上,可以构成类似全景环绕图像的效果,具有一定比例的重合视场。
优选的,采用多传感器三维坐标转换方式,将选择框自动映射为RGB图像标注选择框:
空间顶点坐标依次进行坐标齐次化和相机坐标系投影计算,得到相机坐标系下的三维矩形框数据,再经过图像坐标系的投影计算,在RGB数据可视化界面中看到3D点云标注选择框。进行逆计算,调整RGB数据可视化界面的标注矩形框,自动映射为3D点云标注矩形框。
优选的,采用插值算法对其余数据帧的标注信息进行补齐和显示,通过三维矩形框数据计算出当前标注物体的位置和航向角度,选定且标注两帧数据帧。
优选的,利用Slerp插值算法对两帧之间的其余数据帧进行标注插值和映射。
将标注数据进行保存和导出。
实施例2:本实施例是在实施例1的基础之上做出的进一步改进,本实施例的其他内容与实施例1相同,限于篇幅不再进行赘述,在实质内容不发生冲突矛盾的前提下,本实施例还能够与其他实施例相互结合,形成更多的实施例:
对传感器进行数据准备时,提前准备好待标注数据,根据传感器类型进行不同命名,存在多个相同传感器数据的情况下需添加顺序编号;所有的传感器数据帧在同一时刻下需要命名一致,可以根据自定义序号或时间戳进行命名;
实施例3:本实施例是在实施例1的基础之上做出的进一步改进,本实施例的其他内容与实施例1相同,限于篇幅不再进行赘述,在实质内容不发生冲突矛盾的前提下,本实施例还能够与其他实施例相互结合,形成更多的实施例。
调整数据标注工具的3D点云可视化界面中点云数据的观测视角至俯视视角,随后在该界面中拖拉出一个矩形框选中标注点云数据;根据被选中的点云的三视图,观测点云的形状及分布,调整矩形框的三维尺寸和位置,保证整个矩形框可以全部包含标注的点云数据;最后给标注选定好的点云数据赋予类型标签及编号,如图2所示。
实施例4:本实施例是在实施例1的基础之上做出的进一步改进,本实施例的其他内容与实施例1相同,限于篇幅不再进行赘述,在实质内容不发生冲突矛盾的前提下,本实施例还能够与其他实施例相互结合,形成更多的实施例。
数据标注工具的RGB数据可视化界面在完成3D点云标注操作后,会自动显示选定矩形框在标注物体的图像数据上;存在一个视角的RGB数据就会显示该视角下的标注矩形框,多个视角的RGB数据也是同样会显示同一个标注矩形框;对比3D点云的标注结果,通过调整RGB数据可视化界面的矩形框,同样也可以自动映射到3D点云可视化界面上,如图3所示。
实施例5:本实施例是在实施例1的基础之上做出的进一步改进,本实施例的其他内容与实施例1相同,限于篇幅不再进行赘述,在实质内容不发生冲突矛盾的前提下,本实施例还能够与其他实施例相互结合,形成更多的实施例。
在传感器数据帧序列中,可以选定两帧数据进行手动标注,随后这两帧之间的其余数据帧可以全选,选择半自动标注模式,工具会自动根据选定两帧数据的标注信息采用插值算法对其余数据帧的标注信息进行补齐和显示,如图4所示;所有的传感器数据帧序列标注完成后,可以将全部的标注数据以Json或XML的格式进行保存导出。
实施例6:本实施例是在实施例1-5的基础之上做的进一步改进,适用于每个实施例中适用的部分,在实质内容不发生冲突矛盾的前提下,本实施例还能够与其他实施例相互结合,形成更多的实施例,例如:本实施例中任一自然段中均涉及一个关键技术点,任何一个自然段均可以单独提炼出来与其他实施例组合形成新的实施例。
在传感器数据准备过程中,所有的传感器数据均需要经过时间戳同步处理,保证数据输出的时间一致性;以采集车辆中心为坐标系,可以采用外部物理测量的方式或外参联合标定,获取各个传感器之间的空间位置关系,构成传感器外参矩阵;
在3D点云标注过程中,3D点云可视化界面分为四个部分,分别是可自由选择观测角度的点云可视化全局视图、选中矩形框后显示的局部点云主视图、俯视图和侧视图;四个点云可视化界面均可以调整矩形框位置和尺寸且可以自动实时同步到其他视图中;在数据标注过程中,通过优先对3D点云数据进行标注,通过自动映射至各个视角下的RGB数据中,实现高效的多源数据标注操作;
在RGB数据可视化和调整过程中,为了达到具有环绕视场的效果,数据标注工具输入的RGB相机数据至少要求有四路以上,可以构成类似全景环绕图像的效果,具有一定比例的重合视场;
在RGB数据可视化和调整过程中,3D点云标注矩形框自动映射为RGB图像标注矩形框的计算过程,采用多传感器三维坐标转换技术;3D点云标注矩形框包含八个三维空间顶点数据,根据这八个数据可以计算出该矩形框的尺寸及质心坐标,因此在映射到RGB图像的过程中,首先需要对这八个空间顶点坐标依次进行坐标齐次化和相机坐标系投影计算;计算后得到相机坐标系下的三维矩形框数据,需要再经过图像坐标系的投影计算才可以最终在RGB数据可视化界面中看到3D点云标注矩形框;调整RGB数据可视化界面的标注矩形框自动映射为3D点云标注矩形框为上述计算过程的逆计算即可;
在半自动标注插值计算中,选定且标注完毕的两帧数据帧可以通过三维矩形框数据计算出当前标注物体的位置和航向角度,以四元数的形式表示和计算;
为了保证自动插值计算得到的标注信息连续平滑,本发明利用Slerp插值算法对两帧之间的其余数据帧进行标注插值和映射,这种插值算法是四元数的一种线性插值运算,主要用于在两个表示旋转的四元数之间平滑差值,保证标注插值数据平滑自然;
本发明在上述具有环绕视场的多源数据标注方法的基础之上,还披露了一个与多源数据标注方法对应的多源数据标注系统,该多源数据标注系统包括:
命名编号模块,用于对待标注数据进行类型命名和添加编码;
点云数据标注模块,调整3D点云可视化界面中的点云数据的观测视角,使选择框包括全部包含标注的点云数据,给标注选定好的点云数据赋予类型标签及编号;
点云标注映射模块,用于3D点云标注选择框自动映射为RGB图像标注矩形框;
数据帧自动补全模块,用于选定两帧数据进行标注,两贴数据之间的其余数据帧自动补全;
存储导出模块,用于将标注数据进行保存和导出。
优选的,在数据帧自动补全模块中,采用插值算法对其余数据帧的标注信息进行补齐和显示。
需要强调的是,虽然本发明的多源数据标注系统在架构图中只披露了命名编号模块、点云数据标注模块、点云标注映射模块、数据帧自动补全模块和存储导出模块,但并不意味着多源数据标注系统仅仅局限于上述功能模块,相反,本专利所要表达的意思,在上述模块的基础之上本领域技术人员可以结合现有技术任意添加一个或多个功能模块,形成无穷多个实施例或技术方案,也就是说本系统是开放式而非封闭式的,不能因为本实施例仅仅披露了个别基本功能模块,就认为本专利权利要求的保护范围局限于所公开的基本功能模块。
本发明还公开了与多源数据标注方法、系统对应的电子设备和存储介质,电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器中存储有计算机程序,当程序被处理器执行时,使得处理器执行环绕视场的多源数据标注方法的步骤。计算机可读存储介质内存储有可由电子设备执行的计算机程序,当程序在电子设备上运行时,使得电子设备执行多源数据标注方法的步骤。
电子设备包括硬件层,运行在硬件层之上的操作系统层,以及运行在操作系统上的应用层。该硬件层包括中央处理器(CPU,Central Processing Unit)、内存管理单元(MMU,Memory Management Unit)和内存等硬件。该操作系统可以是任意一种或多种通过进程(Process)实现电子设备控制的计算机操作系统,例如,Linux操作系统、Unix操作系统、Android操作系统、iOS操作系统或windows操作系统等。
并且在本发明实施例中该电子设备可以是智能手机、平板电脑等手持设备,也可以是桌面计算机、便携式计算机等电子设备,本发明实施例中并未特别限定,只要能够通过运行记录有本发明实施例中的CPU更换方法的代码的程序,实现CPU更换即可。
本发明实施例中的电子设备控制的执行主体可以是电子设备,或者是电子设备中能够调用程序并执行程序的功能模块。
电子设备可以获取到存储介质对应的固件,存储介质对应的固件由供应商提供,不同存储介质对应的固件可以相同可以不同,在此不做限定。
电子设备获取到存储介质对应的固件后,可以将该存储介质对应的固件写入存储介质中,具体地是往该存储介质中烧入该存储介质对应固件。
将固件烧入存储介质的过程可以采用现有技术实现,在本发明实施例中不做赘述。
电子设备还可以获取到存储介质对应的重置命令,存储介质对应的重置命令由供应商提供,不同存储介质对应的重置命令可以相同可以不同,在此不做限定。
此时电子设备的存储介质为写入了对应的固件的存储介质,电子设备可以在写入了对应的固件的存储介质中响应该存储介质对应的重置命令,从而电子设备根据存储介质对应的重置命令,对该写入对应的固件的存储介质进行重置。根据重置命令对存储介质进行重置的过程可以现有技术实现,在本发明实施例中不做赘述。
综上实施例公开的内容可以看出,本发明公开的数据标注同时标注多视角RGB图像数据和3D点云数据,多源数据的同时标注调整有助于提高人工标注的精确度;利用空间坐标系原理构建不同传感器标注数据之间的联系,避免传统联合标定的复杂流程;利用插值算法辅助多数据帧的半自动化标注,大大减少人工标注的工作量和时间成本;基于web和开源3D引擎设计该数据标注工具,打破现有数据标注工具的局限性,满足未来多源数据标注的发展需求。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。