CN117290389A - 数据标注方法、装置、电子设备及存储介质 - Google Patents
数据标注方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117290389A CN117290389A CN202311120714.1A CN202311120714A CN117290389A CN 117290389 A CN117290389 A CN 117290389A CN 202311120714 A CN202311120714 A CN 202311120714A CN 117290389 A CN117290389 A CN 117290389A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- data
- target
- cloud data
- information
- 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
- 238000002372 labelling Methods 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000006243 chemical reaction Methods 0.000 claims abstract description 36
- 238000013507 mapping Methods 0.000 claims description 33
- 238000007405 data analysis Methods 0.000 claims description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 17
- 238000007906 compression Methods 0.000 claims description 14
- 230000006835 compression Effects 0.000 claims description 13
- 230000009466 transformation Effects 0.000 claims description 7
- 239000002699 waste material Substances 0.000 abstract description 5
- 238000004590 computer program Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 238000007781 pre-processing Methods 0.000 description 11
- 230000004927 fusion Effects 0.000 description 7
- 230000006837 decompression Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据标注方法、装置、电子设备及存储介质,该方法包括:获取针对目标点云数据的数据请求信息;基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据;对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;基于多个标注位置点,生成待标注图片中的目标标注框。本方案通过将目标点云数据存储在后端缓存数据库中,不需要在前端对大量的点云数据进行读取及缓存,避免了对设备性能的影响以及对前端内存空间的浪费;同时,由于将目标点云数据存储在缓存数据库中,提高了读取目标点云数据的速度,进而提高进行数据标注的效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据标注方法、装置、电子设备及存储介质。
背景技术
随着人工智能技术的发展,无人驾驶汽车取得了广泛的关注。无人驾驶汽车的关键技术主要包括环境感知、定位导航、规划决策、车辆控制等。其中,环境感知首先需要多种传感器来获取周围环境信息,具体地,无人驾驶汽车可以通过车载摄像头、激光雷达、毫米波雷达等传感器感知周围环境,从而实时监测车辆的变化情况,并根据获得的周围环境信息做出决策,从而形成安全合理的路径规划。
相关技术中,由于感知系统对数据标注的需求很大,更具体地,障碍物识别、跟踪等均需要对不同传感器采集到的多传感器融合数据进行自动标注,即采用不同传感器之间相互标注的方式实现,从而对基于机器学习的感知系统进行训练和测试。
然而,采用传统的数据标注方法对多传感器融合数据进行标注的效率较低。
发明内容
本发明旨在至少解决现有技术中存在的技术问题,为此,本发明第一方面提出一种数据标注方法,该方法包括:
获取针对目标点云数据的数据请求信息;
基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据;
对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;
基于多个标注位置点,生成待标注图片中的目标标注框。
在一种可能的实施方式中,数据请求信息包括目标点云数据所属的目标数据集的第一属性信息、及目标点云数据所属的目标帧点云文件的第二属性信息,基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据,包括:
将第一属性信息及第二属性信息进行拼接,生成目标关键字;
基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据。
在一种可能的实施方式中,该方法还包括:
从预设点云数据库中获取原始点云数据;
对原始点云数据采用预设压缩算法进行压缩处理,生成压缩后的点云数据;
将压缩后的点云数据按照第一预设存储结构保存至缓存数据库中;其中,第一预设存储结构中的关键字是基于第一属性信息及第二属性信息确定的,第一预设存储结构中的关键字对应的值为压缩后的点云数据;
相应地,基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据,包括:
基于目标关键字,从缓存数据库中获取与目标关键字对应的压缩后的点云数据;
对目标关键字对应的压缩后的点云数据进行解压缩处理,生成目标点云数据。
在一种可能的实施方式中,该方法还包括:
针对不同数据集中的多帧点云文件,获取各数据集的第一属性信息、及各帧点云文件的第二属性信息;
基于第一属性信息及第二属性信息,将原始点云数据按照第二预设存储结构存储至预设点云数据库中。
在一种可能的实施方式中,该方法还包括:
针对各帧点云文件,获取点云文件的第一数据格式信息;
基于第一预设映射关系获取与第一数据格式信息对应的数据读写方式,通过数据读写方式读取点云文件,得到原始点云数据。
在一种可能的实施方式中,标注位置点包括第一类标注位置点、第二类标注位置点,基于多个标注位置点,生成待标注图片中的目标标注框,包括:
将第一类标注位置点按照预设顺序依次连接,得到第一矩形框;将第二类标注位置点按照预设顺序依次连接,得到第二矩形框;
将第一矩形框与第二矩形框中的预设对应位置处的顶点相互连接,生成待标注图片中的目标标注框。
在一种可能的实施方式中,对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点,包括:
针对预设数量的标注点云数据,获取各标注点云数据在世界坐标系下的第一坐标信息;
对第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息;
基于各第二坐标信息,生成待标注图片中的多个标注位置点。
在一种可能的实施方式中,对第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息,包括:
基于第二预设映射关系,从预设点云数据库中获取目标点云数据所属的目标帧点云文件对应的相机参数信息;
基于相机参数信息对第一坐标信息进行坐标转换,生成第二坐标信息。
在一种可能的实施方式中,该方法还包括:
针对各帧点云文件对应的相机参数文件,获取相机参数文件的第二数据格式信息;
基于第三预设映射关系获取与第二数据格式信息对应的数据解析方式,通过数据解析方式解析相机参数文件,得到相机参数信息;
将各相机参数信息与各帧点云文件按照第二预设映射关系对应存储至预设点云数据库中。
本发明第二方面提出一种数据标注装置,该装置包括:
第一获取模块,用于获取针对目标点云数据的数据请求信息;
第二获取模块,用于基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据;
转换模块,用于对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;
生成模块,用于基于多个标注位置点生成待标注图片中的目标标注框。
在一种可能的实施方式中,数据请求信息包括目标点云数据所属的目标数据集的第一属性信息、及目标点云数据所属的目标帧点云文件的第二属性信息,上述第二获取模块具体用于:
将第一属性信息及第二属性信息进行拼接,生成目标关键字;
基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据。
在一种可能的实施方式中,上述数据标注装置还用于:
从预设点云数据库中获取原始点云数据;
对原始点云数据采用预设压缩算法进行压缩处理,生成压缩后的点云数据;
将压缩后的点云数据按照第一预设存储结构保存至缓存数据库中;其中,第一预设存储结构中的关键字是基于第一属性信息及第二属性信息确定的,第一预设存储结构中的关键字对应的值为压缩后的点云数据;
相应地,上述第二获取模块还用于:
基于目标关键字,从缓存数据库中获取与目标关键字对应的压缩后的点云数据;
对目标关键字对应的压缩后的点云数据进行解压缩处理,生成目标点云数据。
在一种可能的实施方式中,上述数据标注装置还用于:
针对不同数据集中的多帧点云文件,获取各数据集的第一属性信息、及各帧点云文件的第二属性信息;
基于第一属性信息及第二属性信息,将原始点云数据按照第二预设存储结构存储至预设点云数据库中。
在一种可能的实施方式中,上述数据标注装置还用于:
针对各帧点云文件,获取点云文件的第一数据格式信息;
基于第一预设映射关系获取与第一数据格式信息对应的数据读写方式,通过数据读写方式读取点云文件,得到原始点云数据。
在一种可能的实施方式中,标注位置点包括第一类标注位置点、第二类标注位置点,上述生成模块具体用于:
将第一类标注位置点按照预设顺序依次连接,得到第一矩形框;将第二类标注位置点按照预设顺序依次连接,得到第二矩形框;
将第一矩形框与第二矩形框中的预设对应位置处的顶点相互连接,生成待标注图片中的目标标注框。
在一种可能的实施方式中,上述转换模块具体用于:
针对预设数量的标注点云数据,获取各标注点云数据在世界坐标系下的第一坐标信息;
对第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息;
基于各第二坐标信息,生成待标注图片中的多个标注位置点。
在一种可能的实施方式中,上述转换模块还用于:
基于第二预设映射关系,从预设点云数据库中获取目标点云数据所属的目标帧点云文件对应的相机参数信息;
基于相机参数信息对第一坐标信息进行坐标转换,生成第二坐标信息。
在一种可能的实施方式中,上述数据标注装置还用于:
针对各帧点云文件对应的相机参数文件,获取相机参数文件的第二数据格式信息;
基于第三预设映射关系获取与第二数据格式信息对应的数据解析方式,通过数据解析方式解析相机参数文件,得到相机参数信息;
将各相机参数信息与各帧点云文件按照第二预设映射关系对应存储至预设点云数据库中。
本发明第三方面提出一种电子设备,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的数据标注方法。
本发明第四方面提出一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的数据标注方法。
本发明实施例具有以下有益效果:
本发明实施例提供的数据标注方法、装置、电子设备及存储介质,该方法包括:获取针对目标点云数据的数据请求信息;基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据;对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;基于多个标注位置点,生成待标注图片中的目标标注框。本方案通过将目标点云数据存储在后端缓存数据库中,基于数据请求信息可以直接从缓存数据库中获取到相应的点云数据,不需要在前端即浏览器端对大量的点云数据进行读取及缓存,避免了由于前端读取点云数据时计算量较大导致的对设备性能的影响,也避免了缓存读取到的点云数据时对浏览器端内存空间的浪费;同时,由于将目标点云数据存储在缓存数据库中,提高了读取目标点云数据的速度,进而提高进行数据标注的效率。并且,单帧点云以条带化层级存入点云数据库,热数据通过基于netty的多路复用的方式传输给前端。减少了前端的计算压力,让标注的交互体验更加顺滑,解决海量标注数据带来的延时、卡顿问题。
附图说明
图1为本申请实施例提供的一种计算机设备的框图;
图2为本发明实施例提供的一种数据标注方法的步骤流程图;
图3为本发明实施例提供的一种存储至预设点云数据库的步骤流程图;
图4为本发明实施例提供的一种获取目标点云数据的步骤流程图;
图5为本发明实施例提供的一种得到原始点云数据的步骤流程图;
图6为本发明实施例提供的一种存储原始点云数据的步骤流程图;
图7为本发明实施例提供的一种存储原始点云数据的示意图;
图8为本发明实施例提供的一种存储相机参数信息的步骤流程图;
图9为本发明实施例提供的一种生成第二坐标信息的步骤流程图;
图10为本发明实施例提供的另一种生成第二坐标信息的步骤流程图;
图11为本发明实施例提供的一种生成目标标注框的步骤流程图;
图12为本发明实施例提供的一种目标标注框的示意图;
图13为本发明实施例提供的一种数据标注的整体框架图;
图14为本发明实施例提供的一种数据标注装置的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的区域。
相关技术中,由于感知系统对数据标注的需求很大,更具体地,障碍物识别、跟踪等均需要对不同传感器采集到的多传感器融合数据进行自动标注,即采用不同传感器之间相互标注的方式实现,从而对基于机器学习的感知系统进行训练和测试。在自动驾驶场景中,激光雷达生成的点云数据可用于测量物体的形状和轮廓,并估算出周围物体的位置和速度,但由于激光雷达生成的点云数据缺少RGB数据中存在的纹理和颜色信息,无法精确地识别出路上的汽车、行人、障碍物、信号灯等。而2D视觉图像含有丰富的语义信息,能和3D点云数据进行融合,从而使自动驾驶系统可以精确地了解周围环境,并做出准确决策。因此,目前无人驾驶数据标注项目已从2D图像和3D点云单独标注转到2D-3D融合标注进程中。关于2D-3D融合标注项目,客户定制化程度较高。在一段时间后,标注需求因算法的提升会发生改变。
其中,由于传感器的设备型号、规格、数据预处理的格式等方面存在差异,实际采集的点云文件会具有多种格式,相机参数文件的格式也会变化,目前没有一种通用的数据适配工具来解析相应格式的数据文件。另外,由于标注单帧点云数据的数据量非常大,每天都会生成大量的点云数据以及一些从外部获取的数据,每次通过前端即浏览器端读取点云文件,使得前端的计算和缓存量比较大,浪费时间和空间,影响性能和用户体验,并且由于前端没有数据存储的功能,导致前端对各种点云文件读写的能力有限。最后,由于2D-3D融合标注的过程中,3D转2D的计算量和计算频率比较大,自动标注会有一些延迟和卡顿。以上均导致了对多传感器融合数据进行自动标注的效率较低,
有鉴于此,本申请提供一种数据标注方法、装置、电子设备及存储介质,通过将目标点云数据存储在后端缓存数据库中,基于数据请求信息可以直接从缓存数据库中获取到相应的点云数据,不需要在前端即浏览器端对大量的点云数据进行读取及缓存,避免了由于前端读取点云数据时计算量较大导致的对设备性能的影响,也避免了缓存读取到的点云数据时对浏览器端内存空间的浪费;同时,由于将目标点云数据存储在缓存数据库中,提高了读取目标点云数据的速度,进而提高进行数据标注的效率。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。另外,“基于”或“根据”的使用意味着开放和包容性,因为“基于”或“根据”一个或多个所述条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出所述的值。
本申请提供的数据标注方法可以应用于计算机设备(电子设备)中,计算机设备可以是服务器,也可以是终端,其中,服务器可以为一台服务器也可以为由多台服务器组成的服务器集群,本申请实施例对此不作具体限定,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
以计算机设备是服务器为例,图1示出了一种服务器的框图,如图1所示,服务器可以包括通过系统总线连接的处理器和存储器。其中,该服务器的处理器用于提供计算和控制能力。该服务器的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序以及数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机程序被处理器执行时以实现一种数据标注方法。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,可选地服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
需要说明的是,本申请实施例的执行主体可以是计算机设备,也可以是数据标注装置,下述方法实施例中就以计算机设备为执行主体进行说明。
图2为本发明实施例提供的一种数据标注方法的步骤流程图。如图2所示,该方法包括以下步骤:
步骤202、获取针对目标点云数据的数据请求信息。
其中,前端即浏览器端需要进行数据标注时,需要先发送一条数据请求信息,即发送websocket请求,websocket是一种用于浏览器的实时通讯协议,可以做到数据的实时推送。
数据请求信息可以包括目标点云数据所属的目标数据集的第一属性信息、及目标点云数据所属的目标帧点云文件的第二属性信息。其中,第一属性信息可以包括但不限于目标数据集的ID信息,第二属性信息可以包括但不限于目标帧点云文件的时间点信息、文件头的描述信息等。
步骤204、基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据。
其中,在获取到数据请求信息后,可以通过预先构建的一个点云预加载推送微服务,根据该数据请求信息从缓存数据库中获取与数据请求信息对应的目标点云数据。
可选地,点云预加载推送微服务可以采用netty基于epoll的多路复用的I/O模型来应对大量的websocket请求,简言之,就是使用一个或者几个线程来处理多个websocket请求,从而能够快速获取到目标点云数据。netty是一个java开源框架,netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。epoll是linux内核中的一种I/O事件通知机制,可以监控多个I/O事件,并在事件发生时通知应用程序进行处理。
缓存数据库可以是Redis缓存数据库,Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,其中key为关键字,value为关键字对应的值。实际业务中采集到的多帧点云文件可以通过预处理后得到原始点云数据,再将原始点云数据先存储至预设点云数据库中,然后再进行压缩处理后存储至缓存数据库中。
在一些可选地实施例中,如图3所示,图3为本发明实施例提供的一种存储至预设点云数据库的步骤流程图,包括:
步骤302、从预设点云数据库中获取原始点云数据。
步骤304、对原始点云数据采用预设压缩算法进行压缩处理,生成压缩后的点云数据。
步骤306、将压缩后的点云数据按照第一预设存储结构保存至缓存数据库中。
其中,预设点云数据库用于保存对实际业务中采集到的多帧点云文件通过预处理后的原始点云数据。对获取到的原始点云数据可以采用预设压缩算法进行压缩处理后,生成压缩后的点云数据。预设压缩算法可以是Zstd(Zstandard,简称Zstd)压缩算法,Zstd压缩算法是一种高效无损的压缩算法,具体压缩的过程可以参考现有理论知识,在此不再赘述。当然,预设压缩算法也可以是其他类型的压缩算法,可以通过压缩效果选择一个最优的算法,本申请实施例对此不作具体限定。
第一预设存储结构中的关键字key是基于第一属性信息及第二属性信息确定的,第一预设存储结构中的关键字key对应的值value为压缩后的点云数据。压缩后的点云数据可以以哈希表HASH(indexed,data)的方式存入分布式Redis缓存数据库,其中,HASH(indexed,data)的方式即为通过键值对(key-value)存储数据的结构。
相应地,基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据可以包括:基于目标关键字,从缓存数据库中获取与目标关键字对应的压缩后的点云数据,对目标关键字对应的压缩后的点云数据进行解压缩处理,生成目标点云数据。
其中,基于目标关键字可以从缓存数据库中快速查找到与目标关键字对应的压缩后的点云数据。接着,可以采用预设解压缩算法对目标关键字对应的压缩后的点云数据进行解压缩处理,生成目标点云数据。这里对预设解压缩算法也不作具体限定,也可以基于解压缩的效果选择一个最优的算法。
另外,缓存数据库中的压缩后的点云数据还可以在数据标注过程完成并且对应的业务项目完成之后,可以进行自动清理,由于预设点云数据库中还存有一份原始点云数据,这样在后续还要使用该点云数据时,可以按照上述方式重新载入缓存数据库中,缓存数据库中的压缩后的点云数据称作热数据,预设点云数据库中的原始点云数据为冷数据,这样可以达到冷热数据分流的目的,保证了数据的可靠性与安全性。
本实施例中,通过将原始点云数据进行压缩后存储至缓存数据库中,减小了原始点云数据的数据量,从而可以快速存储至缓存数据库。另外,通过键值对存储数据的结构对原始点云数据进行存储,便于后续快速查找到对应的目标点云数据,进而提高后续数据标注的效率,并且解决了对海量点云数据进行标注时带来的延时、卡顿问题,使得数据标注的交互体验更加顺滑。
在一些可选地实施例中,根据数据请求信息从缓存数据库中获取目标点云数据时,如图4所示,图4为本发明实施例提供的一种获取目标点云数据的步骤流程图,包括:
步骤402、将第一属性信息及第二属性信息进行拼接,生成目标关键字。
步骤404、基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据。
其中,点云预加载推送微服务可以将数据请求信息中的第一属性信息及第二属性信息进行拼接,生成目标关键字。由于缓存数据库中的原始点云数据是过键值对(key-value)存储数据的结构进行存储的,从而基于目标关键字,可以直接从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据。
本实施例中,通过目标关键字可以快速查找到对应的目标点云数据,进而提高后续数据标注的效率。另外,相较于直接从预设点云数据库中读取磁盘文件来获取目标点云数据,由于从缓存数据库的数据是存储在缓存和非磁盘里面的,使得读取数据的时间大大降低,提高了获取目标点云数据的效率。
在一些可选地实施例中,实际业务中采集到的多帧点云文件可以通过预处理后得到原始点云数据,再将原始点云数据先存储至预设点云数据库中时,可选地,采集人员采集到的数据文件上传至标注平台后,数据文件以及目录结构会保存在预设点云数据库PostgresSQL中,PostgresSQL是一种对象-关系型数据库,也是目前功能最强大、特性最丰富和最复杂的自由软件数据库系统,具体的数据文件会上传至对象存储服务(ObjectStorage Service,简称OBS)。其中,数据文件可以包括多帧点云文件,也可以包括图片、相机参数文件。管理员可以先创建单帧连续帧点云预处理任务,即对每一帧点云文件依次进行预处理,发布任务后,发送消息给Kafka,点云服务消费消息进行预处理。Kafka是一种分布式的流处理平台,它的核心是一个高吞吐量的发布-订阅消息系统。
在进行预处理时,可以根据预处理任务对应存储路径从OBS中下载数据文件到本地新建的mesh文件夹下,数据提供方会提前在注册配置中心配置这个数据集的点云文件、相机参数文件、图片的相对路径以及点云文件格式,并且在注册配置中心推送相机参数文件的配置信息。
在一些可选地实施例中,通过预处理任务得到原始点云数据时,如图5所示,图5为本发明实施例提供的一种得到原始点云数据的步骤流程图,包括:
步骤502、针对各帧点云文件,获取点云文件的第一数据格式信息。
步骤504、基于第一预设映射关系获取与第一数据格式信息对应的数据读写方式,通过数据读写方式读取点云文件,得到原始点云数据。
其中,点云文件的第一数据格式信息可以包括但不限于pcd、bin、text等格式,从注册配置中心获取点云文件格式得到第一数据格式信息后,基于第一预设映射关系获取与第一数据格式信息对应的数据读写方式,通过数据读写方式读取该点云文件,得到原始点云数据。可选地,可以调用python服务中预置的对应读写点云工具读取该点云文件。第一预设映射关系是预先设置的第一数据格式信息与数据读写方式的对应关系。
本实施例中,通过根据不同的第一数据格式信息来选择对应的数据读取方式,来对不同格式的点云文件进行解析,提高了解析点云文件的灵活性,进而也提高了得到原始点云数据的效率,从而为后续提高数据标注的效率做下基础。
在另一些可选地实施例中,将原始点云数据存储至预设点云数据库时,如图6所示,图6为本发明实施例提供的一种存储原始点云数据的步骤流程图,包括:
步骤602、针对不同数据集中的多帧点云文件,获取各数据集的第一属性信息、及各帧点云文件的第二属性信息。
步骤604、基于第一属性信息及第二属性信息,将原始点云数据按照第二预设存储结构存储至预设点云数据库中。
其中,第一属性信息可以包括但不限于目标数据集的ID信息,第二属性信息可以包括点不限于目标帧点云文件的时间点信息、文件头的描述信息等。第一属性信息可以保存在mesh表中,第二属性信息可以保存在index表中,具体的原始点云数据可以保存在patch表中。从而将一个数据集下的所有点云文件按照mesh表、index表、patch表三个维度存储至预设点云数据库中,第二预设存储结构即为这三个维度构成的存储结构。如图7所示,图7为本发明实施例提供的一种存储原始点云数据的示意图。mesh1和mesh2为两个不同的数据集,index1和index2存放了数据集mesh1下的点云文件,index3和index4存放了数据集mesh2下的点云文件,并且都有对应的保存原始点云数据的patch表。
另外,还可以按照对象-关系型数据库postgis的插件pgpointcloud提供的geometry类型将原始点云数据的经纬度存储至预设点云数据库中。postgis是对象-关系型数据库系统PostgreSQL的一个扩展,具有管理空间数据库的能力。Pgpointcloud是一种将很多个点存储在一个点集里面的插件。geometry类型是用于存放原始点云数据的经纬度的字段类型。
另外,在将原始点云数据进行存储时,还可以采用多线程并行处理的方式,提高存储原始点云数据的效率。
本实施例中,通过基于第一属性信息及第二属性信息,将原始点云数据按照第二预设存储结构存储至预设点云数据库中,可以对原始点云数据进行更便捷的统一管理与维护,另外,基于第二预设存储结构还可以提高后续查询原始点云数据的效率。
在一些可选地实施例中,上述预处理任务还包括对相机参数文件的预处理,如图8所示,图8为本发明实施例提供的一种存储相机参数信息的步骤流程图,包括:
步骤802、针对各帧点云文件对应的相机参数文件,获取相机参数文件的第二数据格式信息。
步骤804、基于第三预设映射关系获取与第二数据格式信息对应的数据解析方式,通过数据解析方式解析相机参数文件,得到相机参数信息。
步骤806、将各相机参数信息与各帧点云文件按照第二预设映射关系对应存储至预设点云数据库中。
其中,相机参数文件中可以包括相机内参、外参,还可以包括畸变参数,这些参数的具体内容为现有理论知识,在此不再赘述。每一帧点云文件都有对应的相机参数信息,即存在第二预设映射关系。
相机参数文件的第二数据格式信息可以从册配置中心推送的相机参数文件的schema配置信息获取到。schema配置信息通常定义了数据文件的格式,包括字段类型的定义、搜索类型的定义等。
从注册配置中心获取schema配置信息得到第二数据格式信息后,基于第三预设映射关系获取与第二数据格式信息对应的数据解析方式,通过数据解析方式解析该相机参数文件,得到相机参数信息。可选地,获取到schema配置信息后,可以通过json-schema技术解析,从而获取到第二数据格式信息,然后基于对应的数据解析方式解析指定相对路径下的相机参数文件,从而得到相机参数信息,最后再将各相机参数信息与各帧点云文件按照第二预设映射关系对应存储至预设点云数据库中。
本实施例中,通过根据不同的第二数据格式信息来选择对应的数据解析方式,来对不同格式的相机参数文件进行解析,提高了解析相机参数文件的灵活性,进而也提高了后续进行数据标注的效率。另外,将各相机参数信息与各帧点云文件按照第二预设映射关系进行存储,后续在使用对应规格的相机参数信息时,可以直接从数据库中获取,不需要对变化的数据格式重新进行适配与解析,提高了使用相机参数信息的便捷性。
步骤206、对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点。
其中,获取到目标点云数据后,可以在前端浏览器页面上渲染3D点云,接着可以先标注点云3D立体框,即在3D点云中绘制3D立体框,基于该标注点云3D框从目标点云数据中确定出预设数量的标注点云数据。可选地,在前端进行数据标注时,由于点云目标识别时按照物理的3D立体框进行标注的,可以用8个点表示,前端可以按照{front:[1,2,3,4]}{back:[1,2,3,4]}这种格式将8组标注点云数据回传给后端,后端分别对每个标注点云数据进行坐标转换,即进行3D转2D的计算,从而生成待标注图片中的多个标注位置点。
在一些可选地实施例中,如图9所示,图9为本发明实施例提供的一种生成第二坐标信息的步骤流程图,包括:
步骤902、针对预设数量的标注点云数据,获取各标注点云数据在世界坐标系下的第一坐标信息。
步骤904、对第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息。
步骤906、基于各第二坐标信息,生成待标注图片中的多个标注位置点。
其中,各标注点云数据在世界坐标系下的第一坐标信息(Xw,Yw,Zw)可以从预设点云数据库中获取到,也可以通过计算得到,例如,若采集到的各标注点云数据不是世界坐标系下的坐标信息,则需要进行坐标系的转换,从而得到第一坐标信息。将第一坐标信息进行坐标转换后,可以生成像素坐标系下的第二坐标信息(u,v)。
在一些可选地实施例中,在对第一坐标信息进行坐标转换时,可以基于目标点云数据所属的目标帧点云文件对应的相机参数信息,并基于第三预设映射关系获取与该相机参数信息的第二数据格式信息对应的数据解析方式,通过该数据解析方式实时解析相机参数文件,得到具体的相机参数信息,从而基于该相机参数信息对第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息。
在另一些可选地实施例中,如图10所示,图10为本发明实施例提供的另一种生成第二坐标信息的步骤流程图,包括:
步骤1002、基于第二预设映射关系,从预设点云数据库中获取目标点云数据所属的目标帧点云文件对应的相机参数信息。
步骤1004、基于相机参数信息对第一坐标信息进行坐标转换,生成第二坐标信息。
其中,可以基于第二预设映射关系,直接从预设点云数据库中获取目标点云数据所属的目标帧点云文件对应的相机参数信息,从而基于公式(1)对第一坐标信息进行坐标转换,生成第二坐标信息。
其中,Zc为相机坐标系的中Z轴上的值,f为相机焦距,dx为像素点在u轴方向上的物理尺寸,dy为像素在v轴方向上的物理尺寸,(u0,v0)为图像平面中心点的坐标,R为旋转矩阵,T为平移矩阵。
上述世界坐标系可以先转换到相机坐标系,相机坐标系可以再转换到图像坐标系,最后图像坐标系可以转换到像素坐标系,从而得到最终的公式(1),即可计算得到第二坐标信息。计算过程就是标注点云数据的世界坐标系坐标经过齐次化,经外参矩阵变换及内参矩阵变换(畸变处理过程),求得相片的像素坐标系坐标,另外要以列为基准,删除投影图像点钟深度Z<0(在投影图像后方的点),然后固定投影范围,过滤投影超出相片范围的点,补位像素坐标轴上的点,这个是整个计算过程。各个坐标系之间具体的转换过程可以参考现有理论知识,在此不再赘述。
本实施例中,通过直接基于第二预设映射关系从数据库中获取,不需要对变化的数据格式重新进行适配与解析,提高了使用相机参数信息的便捷性,从而提高了进行坐标转换的效率,进而提高了后续数据标注的效率。
步骤208、基于多个标注位置点,生成待标注图片中的目标标注框。
其中,在得到多个标注位置点后,前端可以对多个标注位置点采用相应的连接规则进行连接后,生成待标注图片中的目标标注框。
在一些可选地实施例中,如图11所示,图11为本发明实施例提供的一种生成目标标注框的步骤流程图,包括:
步骤1102、将第一类标注位置点按照预设顺序依次连接,得到第一矩形框;将第二类标注位置点按照预设顺序依次连接,得到第二矩形框。
步骤1104、将第一矩形框与第二矩形框中的预设对应位置处的顶点相互连接,生成待标注图片中的目标标注框。
其中,标注位置点可以包括第一类标注位置点及第二类标注位置点,由于前端就是按照约定的格式{front:[1,2,3,4]}{back:[1,2,3,4]}将8组标注点云数据传给后端进行坐标转换计算的,{front:[1,2,3,4]}即为第一类标注位置点,{back:[1,2,3,4]}即为第二类标注位置点。请参考图12,图12为本发明实施例提供的一种目标标注框的示意图。该目标标注框用于对目标车辆进行标注,前端获取到多个标注位置点后,由于前端是预先知道该目标车辆的车头位置及车尾位置的,那么abcd即为第一类标注位置点,且与{front:[1,2,3,4]}中的标注点云数据是对应的,a′b′c′d′即为第二类标注位置点,且与{back:[1,2,3,4]}中的标注点云数据是对应的。
从而前端在待标注图片上,分别针对于第一类标注位置点及第二类标注位置点,自动将abcd这四个标注位置点按照预设顺序依次连接,得到第一矩形框;将第二类标注位置点按照预设顺序依次连接,得到第二矩形框。其中,预设顺序可以是顺时针方向,也可以是逆时针方式。
接着,可以将第一矩形框与第二矩形框中的预设对应位置处的顶点相互连接,生成待标注图片中的目标标注框,预设对应位置处的顶点也是根据前端向后端按照约定的格式传数据时的顺序确定的,即第一类标注位置点与第二类标注位置点中的第一个数据是对应的,依次类推。预设对应位置的顶点即为a与a′对应,b与b′对应,c与c′对应,d与d′对应,这些对应关系前端也是已知的,从而可以自动将第一矩形框与第二矩形框中的对应顶点相互连接起来,就得到待标注图片上的目标标注框。
需要说明的是,请继续参考图12,生成的目标标注框称作伪3D框,因为待标注图片是一个二维平面,为了表示出立体框的形式,看不见的位置可以采用虚线连接,即图12中有三条虚线连接的位置。
另外,在3D点云中画3D立体框时,可以任意选择标注点云数据,从而后端会实时对标注点云数据进行坐标转换,从而在待标注图片上实时展示出相应的标注位置点。
本实施例中,通过分别采用第一类标注位置点和第二类标注位置点先得到两个矩形框,再基于两个矩形框得到最后的目标标注框,这些过程均由前端自动完成,不需要人工在待标注图片上绘制目标标注框,提高了数据标注的效率以及准确性;另外,采用该方式生成目标标注框的过程简单易操作,进一步提高了数据标注的效率。
本发明实施例提供的数据标注方法包括:获取针对目标点云数据的数据请求信息;基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据;对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;基于多个标注位置点,生成待标注图片中的目标标注框。本方案通过将目标点云数据存储在后端缓存数据库中,基于数据请求信息可以直接从缓存数据库中获取到相应的点云数据,不需要在前端即浏览器端对大量的点云数据进行读取及缓存,避免了由于前端读取点云数据时计算量较大导致的对设备性能的影响,也避免了缓存读取到的点云数据时对浏览器端内存空间的浪费;同时,由于将目标点云数据存储在缓存数据库中,提高了读取目标点云数据的速度,进而提高进行数据标注的效率。
图13为本发明实施例提供的一种数据标注的整体框架图,通过将目标点云数据存储在后端缓存数据库中,基于数据请求信息可以直接从缓存数据库中获取到相应的点云数据,不需要在前端即浏览器端对大量的点云数据进行读取及缓存,避免了由于前端读取点云数据时计算量较大导致的对设备性能的影响,也避免了缓存读取到的点云数据时对浏览器端内存空间的浪费;同时,由于将目标点云数据存储在缓存数据库中,提高了读取目标点云数据的速度,进而提高进行数据标注的效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
图14为本发明实施例提供的一种数据标注装置的结构框图。
如图14所示,该数据标注装置1400包括:
第一获取模块1402,用于获取针对目标点云数据的数据请求信息。
第二获取模块1404,用于基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据。
转换模块1406,用于对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点。
生成模块1408,用于基于多个标注位置点生成待标注图片中的目标标注框。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。上述数据标注装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块的操作。
在本申请的一个实施例中,提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取针对目标点云数据的数据请求信息;
基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据;
对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;
基于多个标注位置点,生成待标注图片中的目标标注框。
在本申请的一个实施例中,数据请求信息包括目标点云数据所属的目标数据集的第一属性信息、及目标点云数据所属的目标帧点云文件的第二属性信息,处理器执行计算机程序时还实现以下步骤:
将第一属性信息及第二属性信息进行拼接,生成目标关键字;
基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
从预设点云数据库中获取原始点云数据;
对原始点云数据采用预设压缩算法进行压缩处理,生成压缩后的点云数据;
将压缩后的点云数据按照第一预设存储结构保存至缓存数据库中;其中,第一预设存储结构中的关键字是基于第一属性信息及第二属性信息确定的,第一预设存储结构中的关键字对应的值为压缩后的点云数据;
相应地,基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据,包括:
基于目标关键字,从缓存数据库中获取与目标关键字对应的压缩后的点云数据;
对目标关键字对应的压缩后的点云数据进行解压缩处理,生成目标点云数据。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
针对不同数据集中的多帧点云文件,获取各数据集的第一属性信息、及各帧点云文件的第二属性信息;
基于第一属性信息及第二属性信息,将原始点云数据按照第二预设存储结构存储至预设点云数据库中。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
针对各帧点云文件,获取点云文件的第一数据格式信息;
基于第一预设映射关系获取与第一数据格式信息对应的数据读写方式,通过数据读写方式读取点云文件,得到原始点云数据。
在本申请的一个实施例中,标注位置点包括第一类标注位置点、第二类标注位置点,处理器执行计算机程序时还实现以下步骤:
将第一类标注位置点按照预设顺序依次连接,得到第一矩形框;将第二类标注位置点按照预设顺序依次连接,得到第二矩形框;
将第一矩形框与第二矩形框中的预设对应位置处的顶点相互连接,生成待标注图片中的目标标注框。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
针对预设数量的标注点云数据,获取各标注点云数据在世界坐标系下的第一坐标信息;
对第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息;
基于各第二坐标信息,生成待标注图片中的多个标注位置点。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
基于第二预设映射关系,从预设点云数据库中获取目标点云数据所属的目标帧点云文件对应的相机参数信息;
基于相机参数信息对第一坐标信息进行坐标转换,生成第二坐标信息。
在本申请的一个实施例中,处理器执行计算机程序时还实现以下步骤:
针对各帧点云文件对应的相机参数文件,获取相机参数文件的第二数据格式信息;
基于第三预设映射关系获取与第二数据格式信息对应的数据解析方式,通过数据解析方式解析相机参数文件,得到相机参数信息;
将各相机参数信息与各帧点云文件按照第二预设映射关系对应存储至预设点云数据库中。
上述实施例提供的计算机设备,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取针对目标点云数据的数据请求信息;
基于数据请求信息,从缓存数据库中获取与数据请求信息对应的目标点云数据;
对目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;
基于多个标注位置点,生成待标注图片中的目标标注框。
在本申请的一个实施例中,数据请求信息包括目标点云数据所属的目标数据集的第一属性信息、及目标点云数据所属的目标帧点云文件的第二属性信息,计算机程序被处理器执行时还实现以下步骤:
将第一属性信息及第二属性信息进行拼接,生成目标关键字;
基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
从预设点云数据库中获取原始点云数据;
对原始点云数据采用预设压缩算法进行压缩处理,生成压缩后的点云数据;
将压缩后的点云数据按照第一预设存储结构保存至缓存数据库中;其中,第一预设存储结构中的关键字是基于第一属性信息及第二属性信息确定的,第一预设存储结构中的关键字对应的值为压缩后的点云数据;
相应地,基于目标关键字,从缓存数据库中获取与目标关键字对应的目标值作为目标点云数据,包括:
基于目标关键字,从缓存数据库中获取与目标关键字对应的压缩后的点云数据;
对目标关键字对应的压缩后的点云数据进行解压缩处理,生成目标点云数据。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
针对不同数据集中的多帧点云文件,获取各数据集的第一属性信息、及各帧点云文件的第二属性信息;
基于第一属性信息及第二属性信息,将原始点云数据按照第二预设存储结构存储至预设点云数据库中。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
针对各帧点云文件,获取点云文件的第一数据格式信息;
基于第一预设映射关系获取与第一数据格式信息对应的数据读写方式,通过数据读写方式读取点云文件,得到原始点云数据。
在本申请的一个实施例中,标注位置点包括第一类标注位置点、第二类标注位置点,计算机程序被处理器执行时还实现以下步骤:
将第一类标注位置点按照预设顺序依次连接,得到第一矩形框;将第二类标注位置点按照预设顺序依次连接,得到第二矩形框;
将第一矩形框与第二矩形框中的预设对应位置处的顶点相互连接,生成待标注图片中的目标标注框。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
针对预设数量的标注点云数据,获取各标注点云数据在世界坐标系下的第一坐标信息;
对第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息;
基于各第二坐标信息,生成待标注图片中的多个标注位置点。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
基于第二预设映射关系,从预设点云数据库中获取目标点云数据所属的目标帧点云文件对应的相机参数信息;
基于相机参数信息对第一坐标信息进行坐标转换,生成第二坐标信息。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:
针对各帧点云文件对应的相机参数文件,获取相机参数文件的第二数据格式信息;
基于第三预设映射关系获取与第二数据格式信息对应的数据解析方式,通过数据解析方式解析相机参数文件,得到相机参数信息;
将各相机参数信息与各帧点云文件按照第二预设映射关系对应存储至预设点云数据库中。
上述实施例提供的计算机存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的区域。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利区域的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护区域。因此,本申请的保护区域应以所附权利要求为准。
Claims (12)
1.一种数据标注方法,其特征在于,所述方法包括:
获取针对目标点云数据的数据请求信息;
基于所述数据请求信息,从缓存数据库中获取与所述数据请求信息对应的目标点云数据;
对所述目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;
基于所述多个标注位置点,生成所述待标注图片中的目标标注框。
2.根据权利要求1所述的方法,其特征在于,所述数据请求信息包括所述目标点云数据所属的目标数据集的第一属性信息、及所述目标点云数据所属的目标帧点云文件的第二属性信息,所述基于所述数据请求信息,从缓存数据库中获取与所述数据请求信息对应的目标点云数据,包括:
将所述第一属性信息及所述第二属性信息进行拼接,生成目标关键字;
基于所述目标关键字,从缓存数据库中获取与所述目标关键字对应的目标值作为所述目标点云数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
从预设点云数据库中获取原始点云数据;
对所述原始点云数据采用预设压缩算法进行压缩处理,生成压缩后的点云数据;
将所述压缩后的点云数据按照第一预设存储结构保存至所述缓存数据库中;其中,所述第一预设存储结构中的关键字是基于所述第一属性信息及所述第二属性信息确定的,所述第一预设存储结构中的关键字对应的值为所述压缩后的点云数据;
相应地,所述基于所述目标关键字,从缓存数据库中获取与所述目标关键字对应的目标值作为所述目标点云数据,包括:
基于所述目标关键字,从缓存数据库中获取与所述目标关键字对应的压缩后的点云数据;
对所述目标关键字对应的压缩后的点云数据进行解压缩处理,生成所述目标点云数据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
针对不同数据集中的多帧点云文件,获取各所述数据集的第一属性信息、及各帧所述点云文件的第二属性信息;
基于所述第一属性信息及所述第二属性信息,将所述原始点云数据按照第二预设存储结构存储至所述预设点云数据库中。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
针对各帧所述点云文件,获取所述点云文件的第一数据格式信息;
基于第一预设映射关系获取与所述第一数据格式信息对应的数据读写方式,通过所述数据读写方式读取所述点云文件,得到所述原始点云数据。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述标注位置点包括第一类标注位置点、第二类标注位置点,所述基于所述多个标注位置点,生成所述待标注图片中的目标标注框,包括:
将所述第一类标注位置点按照预设顺序依次连接,得到第一矩形框;将所述第二类标注位置点按照预设顺序依次连接,得到第二矩形框;
将所述第一矩形框与所述第二矩形框中的预设对应位置处的顶点相互连接,生成所述待标注图片中的目标标注框。
7.根据权利要求1-5任一项所述的方法,其特征在于,所述对所述目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点,包括:
针对所述预设数量的标注点云数据,获取各所述标注点云数据在世界坐标系下的第一坐标信息;
对所述第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息;
基于各所述第二坐标信息,生成所述待标注图片中的多个标注位置点。
8.根据权利要求7所述的方法,其特征在于,所述对所述第一坐标信息进行坐标转换,生成像素坐标系下的第二坐标信息,包括:
基于第二预设映射关系,从预设点云数据库中获取所述目标点云数据所属的目标帧点云文件对应的相机参数信息;
基于所述相机参数信息对所述第一坐标信息进行坐标转换,生成所述第二坐标信息。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
针对各帧点云文件对应的相机参数文件,获取所述相机参数文件的第二数据格式信息;
基于第三预设映射关系获取与所述第二数据格式信息对应的数据解析方式,通过所述数据解析方式解析所述相机参数文件,得到所述相机参数信息;
将各所述相机参数信息与所述各帧点云文件按照所述第二预设映射关系对应存储至所述预设点云数据库中。
10.一种数据标注装置,其特征在于,所述装置包括:
第一获取模块,用于获取针对目标点云数据的数据请求信息;
第二获取模块,用于基于所述数据请求信息,从缓存数据库中获取与所述数据请求信息对应的目标点云数据;
转换模块,用于对所述目标点云数据中预设数量的标注点云数据进行坐标转换,生成待标注图片中的多个标注位置点;
生成模块,用于基于所述多个标注位置点生成所述待标注图片中的目标标注框。
11.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1-9任一项所述的方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1-9任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311120714.1A CN117290389A (zh) | 2023-08-31 | 2023-08-31 | 数据标注方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311120714.1A CN117290389A (zh) | 2023-08-31 | 2023-08-31 | 数据标注方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117290389A true CN117290389A (zh) | 2023-12-26 |
Family
ID=89256209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311120714.1A Pending CN117290389A (zh) | 2023-08-31 | 2023-08-31 | 数据标注方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117290389A (zh) |
-
2023
- 2023-08-31 CN CN202311120714.1A patent/CN117290389A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8194940B1 (en) | Automatic media sharing via shutter click | |
CN106294798A (zh) | 一种基于缩略图的图像分享方法和终端 | |
CN112927363B (zh) | 体素地图构建方法及装置、计算机可读介质和电子设备 | |
US9436708B2 (en) | Method and system for providing a federated wide area motion imagery collection service | |
CN112270710A (zh) | 位姿确定方法、位姿确定装置、存储介质与电子设备 | |
CN112800255A (zh) | 数据标注、对象跟踪方法、装置、设备和存储介质 | |
CN104520848A (zh) | 按照出席者搜索事件 | |
Bauer et al. | UASOL, a large-scale high-resolution outdoor stereo dataset | |
CN111815738A (zh) | 一种构建地图的方法和装置 | |
Lu et al. | Multi-scale feature progressive fusion network for remote sensing image change detection | |
CN116188660B (zh) | 一种基于流式渲染的点云数据处理方法及相关装置 | |
CN117149777A (zh) | 一种数据查询方法、装置、设备及存储介质 | |
Bae et al. | Fast and scalable 3D cyber-physical modeling for high-precision mobile augmented reality systems | |
CN110377776B (zh) | 生成点云数据的方法和装置 | |
CN115002196B (zh) | 一种数据处理方法、装置、车端采集设备 | |
CN116664465A (zh) | 一种多模态图像融合方法、装置及计算机设备 | |
CN117290389A (zh) | 数据标注方法、装置、电子设备及存储介质 | |
Moon et al. | Big Data Architecture Design for the Development of Hyper Live Map (HLM) | |
CN112070175B (zh) | 视觉里程计方法、装置、电子设备及存储介质 | |
CN112328073B (zh) | 基于增强现实设备的评标方法、装置、系统和计算机设备 | |
KR102542363B1 (ko) | 3차원 공간에서 객체를 인식하는 방법 | |
CN112749292B (zh) | 用户标签生成方法及装置、计算机装置和存储介质 | |
Wang et al. | A 3d reconstruction system for large scene based on rgb-d image | |
SHI et al. | Local Scenario Perception and Web AR Navigation | |
Leia et al. | Mobile-based 3D Reconstruction of Building Environment |
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 |