1.本技术涉及字符识别领域,特别涉及一种三维字符的点云数据的获取方法以及系统。
背景技术:
2.在现代工业领域中,许多工件的表面存在加工出来的三维字符,这些字符可以用于表示一些工件信息,例如,工件的生产日期、生产批次及身份信息等。在自动识别工件上的三维字符时,需要先获取三维字符的相关信息。在获取工件上三维字符的相关信息,获取到三维字符的信息越准确,识别结果就越准。因此,如何从工件上准确地获取三维字符的信息是本领域亟待解决的技术问题。
技术实现要素:
3.本说明书实施例之一提供一种三维字符的点云数据的获取方法。所述三维字符的点云数据的获取方法包括:获取三维字符及其所在工件表面的整体点云数据;获取三维字符所在工件表面的三维模型信息;基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。
4.在一些实施例中,所述基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据包括:基于所述整体点云数据以及所述三维模型信息,确定所述整体点云数据中所述工件表面的点云数据;基于所述工件表面的点云数据确定所述三维字符的点云数据。
5.在一些实施例中,所述基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据包括:基于预设算法确定所述整体点云数据中与所述工件表面的三维模型信息匹配的基面点云数据;将距离所述基面点云数据超出预设阈值的点云数据,确定为三维字符的点云数据。
6.在一些实施例中,所述预设算法包括三维最佳匹配算法或最小二乘法空间匹配或切比雪夫算法。
7.在一些实施例中,所述工件表面的三维模型信息包括cad三维模型。
8.本说明书实施例之一提供一种三维字符的点云数据的获取系统,所述获取系统包括:点云数据获取模块,用于获取所述三维字符及其所在工件表面的整体点云数据。工件信息获取模块,用于获取所述三维字符所在工件表面的三维模型信息。点云数据确定模块,用于基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。
9.本说明书实施例之一提供一种三维字符的点云数据的获取装置,包括处理器,所述处理器用于执行本说明书实施例之一提供的三维字符的点云数据的获取方法。
10.本说明书实施例之一提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机执行本说明书实施例之一提供的三维字符的点云数据的获取方法。
附图说明
11.本说明书将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
12.图1是根据本技术的一些实施例所示的三维字符的点云数据的获取系统的应用场景示意图;
13.图2是根据本说明书一些实施例所示的三维字符的点云数据的获取系统的模块示意图;
14.图3是根据本技术的一些实施例所示的三维字符的点云数据的获取方法的示例性流程图;
15.图4是根据本技术的一些实施例所示的确定三维字符的点云数据的法的示例性流程图。
具体实施方式
16.为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
17.应当理解,本文使用的“系统”、“装置”、“单元”和/或“模块”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
18.如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
19.本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
20.在工业领域,工件上通常设置与用于识别工件信息的三维字符,例如,工件可以设置有铭牌,铭牌中刻印有用于表明工件信息的三维字符。然而,在获取三维字符时,往往是对三维字符所在区域进行点云数据获取,在获取三维字符的点云数据的同时,在点云数据中也会包含工件表面的点云数据。工件表面的点云数据可能会对三维字符的识别造成影响。例如,如果将获取到的三维字符的点云数据投影到投影面时,由于点云数据中存在工件表面的点云数据,如果进行直接投影则无法从投影结果中获取真实的三维字符的投影,无法进行后续识别。本说明书一个或多个实施例提供了一种三维字符的点云数据的获取方法和系统,基于本技术提供的方法与系统可以通过获取工件的三维模型信息(例如包括工件表面的三维模型信息以及位于工件表面的三维模型信息)与工件及其表面的三维字符的整
体点云数据,自动确定三维字符的点云数据,进而可以将包含将三维字符的点云数据从包含工件表面信息的整体点云数据中提取,避免工件表面的其他信息影响三维字符的识别结果,提高了字符识别过程中的精确度。
21.在一些实施例中,三维字符可以为在工件表面上的凸出和/或凹陷的字符。工件表面可以为平面或曲面。字符可以为文字、数字、图案、字符串、二维码、条形码等中的至少一种或其组合。例如,压印在液化气缸瓶上的标识编码、饮料瓶上的喷码、机械加工工件上通过冲头或激光加工出的字符串等。还例如,银行卡的卡号、电机外壳的铭牌上的钢印等。还例如,金属零件上的凹凸字符,示例地,航空发动机上的关键零部件上的凹凸字符、汽车发动机的关键零部件上的凹凸字符等。在一些实施例中,可以通过二维相机拍摄三维字符的图像,然后通过字符识别算法对该图像进行处理,以对三维字符进行识别。在一些实施例中,也可以识别三维字符的深度信息,然后基于深度信息识别三维字符。在一些实施例中,三维字符的深度信息可以是点云数据。在获取三维字符的点云数据时需要考虑到如何把三维字符的点云数据与工件表面的点云数据精确地区分开,从而提高三维字符的点云数据的获取精度,进而可以提高后续三维字符识别过程的精度。
22.图1是根据本技术一些实施例所示的三维字符的点云数据的获取系统的应用场景示意图。
23.如图1所示,三维字符的点云数据的获取系统100可以包括处理设备110、网络120、字符信息采集装置130、终端设备140和存储设备150。
24.在一些实施例中,三维字符的点云数据的获取系统100可以对三维字符的点云数据进行批量处理,以方便后续三维字符的识别过程,提高三维字符的识别效率,以对生产、生活提供帮助。
25.在一些实施例中,处理设备110可以用于处理与三维字符识别相关的信息和/或数据。例如,处理设备110可以控制字符信息采集装置130获取的三维字符的及其所在工件表面的整体点云数据。在一些实施例中,处理设备110获取所述三维字符所在工件表面的三维模型信息,并基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。
26.在一些实施例中,处理设备110可以是区域的或者远程的。例如,处理设备110可以通过网络120访问存储于字符信息采集装置130、终端设备140中的信息和/或资料。在一些实施例中,处理设备110可以直接与字符信息采集装置130、终端设备140连接以访问存储于其中的信息和/或资料。例如,处理设备110可以位于字符信息采集装置130中或与字符信息采集装置130直接连接。
27.在一些实施例中,处理设备110可以包含处理器。该处理器可以处理与三维字符识别有关的数据和/或信息以执行一个或多个本技术中描述的功能。例如,处理器可以接收字符信息采集装置130或终端设备140发送的三维字符识别请求信号,向字符信息采集装置130发送控制指令。又例如,处理器可以获取字符信息采集装置130采集的三维字符的图像,基于三维字符的深度信息识别三维字符后,向终端设备140发送三维字符的点云数据的获取结果。
28.网络120可促进三维字符的点云数据的获取系统100中数据和/或信息的交换。在一些实施例中,三维字符的点云数据的获取系统100中的一个或多个组件(例如,处理设备
110、字符信息采集装置130、终端设备140)可以通过网络120发送数据和/或信息给三维字符的点云数据的获取系统100中的其他组件。例如,字符信息采集装置130获取的三维字符的信息可以通过网络120传输至处理设备110。又例如,处理设备110中关于三维字符的点云数据的获取结果可以通过网络120传输至终端设备140。
29.字符信息采集装置130用于采集三维字符的相关信息。在一些实施例中,字符信息采集装置130可以获取三维字符的点云数据和/或二维图像深度信息。在一些实施例中,字符信息采集装置可以包括摄像装置和光源。光源可以用于照射光信息至工件上的凹凸字符,摄像装置可以用于采集照射到三维字符上的光信号。
30.在一些实施例中,摄像装置可以包括深度摄像头和/或平面摄像头。深度摄像头用于采集三维字符的深度信息。平面摄像头用于采集三维字符的二维图像。在一些实施例中,深度摄像头可以包括对三维字符的空间三维信息进行扫描以获取三维字符表面的位置信息深度信息(例如,点云数据)的传感器。例如,通过白光干涉对三维字符进行空间扫描的传感器。又例如,通过白光共焦对三维字符进行空间扫描的传感器。又例如,由投影仪投射特定的光信息(例如,纵横交错的激光线条、黑白方格、圆环等)到三维字符的结构光相机。在一些实施例中,深度摄像头还可以包括双目摄像机、tof(time of flight camera)相机等。在一些实施例中,字符信息采集装置130可以通过平面摄像头从不同角度采集三维字符的二维图像,然后对不同角度的二维图像进行图像处理,重建出三维字符对应的深度信息。在一些实施例中,平面摄像头可以包括黑白相机、彩色相机、扫描仪等或其任意组合。
31.在一些实施例中,终端设备140可以输入和/或输出相关信息或数据。在一些实施例中,用户可以通过终端设备140获取处理设备110识别三维字符的结果。例如,用户可以通过终端设备140查看处理设备110识别的与三维字符对应的二维图像。在一些实施例中,用户可以通过终端设备140设置字符信息采集装置130的图像获取参数。字符信息采集装置130的图像获取参数可以包括光源颜色参数、摄像头位置参数、摄像头拍摄角度参数等。例如,终端设备140可以与字符信息采集装置130通过网络120连接(例如,有线连接,无线连接),终端设备140可以上传图像获取参数至图像信息获取装置130。在一些实施例中,图像获取参数可以由用户手动输入至终端设备140。在一些实施例中,终端设备140可以是带有数据获取、存储和/或发送功能的便携式设备,例如,智能手机140-1、平板电脑140-2、笔记本电脑140-3、智能摄像头等或其任意组合。
32.存储设备150可以存储资料(例如,三维字符的点云数据、工件表面的三维模型信息等)和/或指令(例如,基于三维字符的点云数据与工件表面的三维模型信息的匹配指令、三维字符的点云数据提取指令)。在一些实施例中,存储设备150可以存储从字符信息采集装置130和/或终端设备140获取的资料(例如,可以存储有三维字符的点云数据、已提取出的三维字符的点云数据)。在一些实施例中,存储设备150可以存储供处理设备110执行或使用的信息和/或指令,以执行本技术中描述的示例性的方法。
33.在一些实施例中,存储设备150可以与网络120连接以实现与三维字符的点云数据的获取系统100的一个或多个组件(例如,处理设备110、字符信息采集装置130、终端设备140等)通讯。三维字符的点云数据的获取系统100的一个或多个组件可以通过网络120访问存储于存储设备150中的资料或指令。在一些实施例中,存储设备150可以直接与三维字符的点云数据的获取系统100中的一个或多个组件(如,处理设备110、字符信息采集装置130、
终端设备140)连接或通讯。在一些实施例中,存储设备150可以是处理设备110的一部分。在一些实施例中,处理设备110可以与字符信息采集装置130独立设置。在一些实施例中,处理设备110还可以位于字符信息采集装置130或终端设备140中。
34.应该注意的是,上述描述仅出于说明性目的而提供,并不旨在限制本技术的范围。对于本领域普通技术人员而言,在本技术内容的指导下,可做出多种变化和修改。可以以各种方式组合本技术描述的示例性的实施例的特征、结构、方法和其他特征,以获得另外的和/或替代的示例性的实施例。
35.图2是根据本技术一些实施例所示的基于点云数据的字符分割系统的模块示意图。本技术提供的基于三维字符的点云数据的获取方法以用于消除三维字符的点云数据中的工件表面信息。在一些实施例中,本技术提供的三维字符的点云数据的获取方法可以单独执行,以实现对获取三维字符点云数据的批量处理与储存。
36.如图1所示,三维字符的点云数据的获取系统200可以包括点云数据获取模块210、工件信息获取模块220以及点云数据确定模块230。
37.点云数据获取模块210可以用于获取所述三维字符及其所在工件表面的整体点云数据。其中,整体点云数据可以包含三维字符的点云数据以及工件表面的点云数据。
38.在一些实施例中,点云数据获取模块210可以通过字符信息采集装置130获取的工件表面的点云图像实现。在一些实施例中,待识别字符的点云数据可以预存在对应计算设备中,点云数据获取模块210可以通过调用对应的数据实现。在一些实施例中,在点云数据获取模块210获取点云数据前,可以通过计算设备对点云数据进行预处理,预处理可以包括校准基准面、去除表面噪声等操作。
39.工件信息获取模块220可以用于获取所述三维字符所在工件表面的三维模型信息。
40.在一些实施例中,三维模型信息可以用于描述三维字符所在的工件表面的结构信息。在一些实施例中,三维模型信息可以预存在存储设备150,可以通过调用与三维字符对应的三维模型信息实现工件信息获取模块220。在一些实施例中,工件表面的三维模型信息包括cad三维模型。
41.点云数据确定模块230可以用于基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。
42.在一些实施例中,可以基于三维模型信息从整体点云数据确定工件表面的点云数据,并将三维字符从整体点云数据提取出。其中,三维字符的点云数据可以理解为仅包含三维字符位置信息的点云数据。
43.在一些实施例中,点云数据确定模块230还可以进一步包括表面确定单元231以及字符分离单元232。
44.表面确定单元231可以用于基于所述整体点云数据以及所述三维模型信息,确定所述整体点云数据中所述工件表面的点云数据,其中,工件表面的点云数据是工件表面中出三维字符外的其他点云数据。在一些实施例中,表面确定单元231可以基于三维模型信息将三维字符范围外的点云数据作为工件表面的点云数据。
45.所述字符分离单元232,可以用于基于所述工件表面的点云数据确定所述三维字符的点云数据。在一些实施例中,三维字符的点云数据可以通过三维字符与工件表面的距
离确定,例如,可以先基于预设算法确定所述整体点云数据中与所述工件表面的三维模型信息匹配的基面点云数据;然后,将距离所述基面点云数据超出预设阈值的点云数据,确定为三维字符的点云数据。其中,所述预设算法包括三维最佳匹配算法或最小二乘法空间匹配或切比雪夫算法,基面可以工件表面所在的空间平面,基面点云数据是指整体点云数据中能够反映工件表面的点云数据。
46.需要注意的是,以上对于三维字符的点云数据的获取系统及其模块的描述,仅为描述方便,并不能把本说明书限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接。在一些实施例中,图2中披露的各个模块可以是一个系统中的不同模块,也可以是一个模块实现上述的两个或两个以上模块的功能。例如,各个模块可以共用一个存储模块,各个模块也可以分别具有各自的存储模块。诸如此类的变形,均在本说明书的保护范围之内。
47.图3是根据本技术的一些实施例所示的三维字符的点云数据的获取的示例性流程图。关于流程300的具体内容,请参见步骤310-330。
48.步骤310,获取三维字符及其所在工件表面的整体点云数据。在一些实施例中,步骤310可以由点云数据获取模块210执行。
49.本技术中三维字符可以为文字、数字、图案、字符串、二维码、条形码等中的至少一种或其组合。例如,压印在液化气缸瓶上的标识编码、饮料瓶上的喷码、机械加工工件上通过冲头或激光加工出的字符串等。还例如,银行卡的卡号、电机外壳的铭牌上的钢印等。还例如,金属零件上的凹凸字符,示例地,航空发动机上的关键零部件上的凹凸字符、汽车发动机的关键零部件上的凹凸字符等。
50.在一些实施例中,点云数据可以用于表示物体在三维空间的位置信息。在一些实施例中,点云数据可以包括平面位置信息以及深度位置信息。其中,平面位置信息可以是物体在某一平面上的坐标,深度位置信息可以是物体相对于该平面的高度信息或深度信息。
51.在一些实施例中,三维字符呈现在工件表面上,相对于工件表面向上凸起或向下凹陷。三维字符及其所在工件表面的整体点云数据可以包括三维字符的点云数据以及三维字符周围的工件表面的点云数据。例如,字符信息采集装置130可以获取被加工有三维字符的工件表面的点的信息,形成整体点云数据。整体点云数据包括三维字符所在的工件表面的三维点云数据及三维字符的点云数据。
52.在一些实施例中,步骤310可以通过字符信息采集装置130获取工件表面的整体点云数据实现。在一些实施例中,工件表面的整体点云数据可以预存在存储设备150,步骤310可以通过调用对应的存储设备150实现。
53.鉴于三维字符为主要识别内容,且工件表面可以包括三维字符,为是否包含三维字符,在本技术中工件表面的点云数据特指不包含三维字符的其他点云数据,工件表面的整体点云数据包含三维字符的点云数据以及工件表面的点云数据。
54.当字符信息采集装置130获取整体点云数据时,可以基于扫描位置以及扫描范围对工件表面进行扫描以获得工件表面的整体点云数据。其中,字符信息采集装置130的扫描位置以及扫描范围可以通过调整摄像装置的角度、高度等相关信息实现。
55.在一些实施例中,扫描位置以及扫描范围可以由工作人员人工确定。在一些实施
例中,可以基于三维字符在工件上的位置确定扫描位置以及扫描范围。例如,扫描位置可以为朝向三维字符的中心点方向,扫描范围(摄像装置的视野)可以为三维字符面积的400%。
56.在一些实施例中,字符信息采集装置130可以包括深度摄像头,直接获取三维字符的深度信息。在一些实施例中,字符信息采集装置130可以包括至少一个平面摄像头,以获取三维字符在不同角度的二维图像。在一些实施例中,字符信息采集装置130可以包括至少一个深度摄像头和/或至少一个平面摄像头。
57.在一些实施例中,点云数据获取模块210还可以先基于字符信息采集装置130获取的三维字符在不同角度的多张二维图像合成三维字符的三维图像,并将合成三维字符的三维图像的图像坐标系转换为点云坐标系,获取三维字符的点云数据。
58.在一些实施例中,字符信息采集装置130可以安装在某一固定设备上,也可以安装在某一移动设备上。例如,字符信息采集装置130还可以包括固定安装在不同位置的多个摄像头,字符信息采集装置130可以通过安装在不同位置的多个摄像头以获取三维字符在不同角度的多张二维图像。又例如,字符信息采集装置130还可以安装在拍摄角度调整件(例如,机械臂、手柄等)上,字符信息采集装置130可以控制拍摄角度调整件带动字符信息采集装置130移动,使得字符信息采集装置130可以在不同角度获取三维字符的二维图像。
59.步骤320,获取所述三维字符所在工件表面的三维模型信息。在一些实施例中,步骤320可以由工件信息获取模块220执行。
60.在一些实施例中,工件表面的三维模型信息可以为工件在三维建模软件中的模型信息,可以为用于建立三维字符所在工件表面的三维模型的信息。在一些实施例中,三维模型的文件格式可以包括但不限于obj格式、osgb(open scene gragh binary)格式、stl(stereolithography)格式等中的一个或多个。在一些实施例中,三维字符所在工件表面的三维模型信息的三维模型信息可以包括三维字符所在工件表面的cad三维模型。
61.在一些实施例中,存储设备150可以预存有三维字符所在工件表面的三维模型信息,工件信息获取模块220可以通过网络120从存储设备150中获取三维字符所在工件表面的三维模型信息。在另一些实施例中,工件信息获取模块220还可以通过网络120从终端设备140获取三维字符以及三维字符所在工件表面的三维模型信息。在一些实施例中,三维模型信息可以包括该模型中各个点的位置信息(例如,坐标)。对应地,工件表面的三维模型信息可以包括工件表面上若干点的位置信息(例如,组成工件表面的若干点的坐标)。三维字符以及三维字符所在工件表面的三维模型信息可以包括工件表面上以及位于该表面上的三维字符上若干点的位置信息(例如,若干点的坐标)。
62.在一些实施例中,可以根据工件类型信息从存储设备150中提取工件表面的三维模型信息,其中,工件表面的三维模型信息、工件表面的三维模型信息与工件类型信息的对应关系可以存储在存储设备150。
63.在一些实施例中,在执行步骤310前,可以先获取工件类型信息,其中,工件的类型信息可以包括三维字符在工件表面上的位置、三维字符的类型等信息,工件类型信息还可以用于三维字符后续识别。在一些实施例中,工件类型信息可以与存在存储设备150中,操作人员可以提前设置当前任务的工件类型。
64.为减少相关人员的操作量,提高字符识别过程的自动化程度。在一些实施例中,工件类型信息可以自动确定。
65.在一些实施例中,工件可以放置在特定位置上,设置在特定位置的字符信息采集装置130或字符信息采集装置130移动到特定位置时,处理设备110可以根据当前位置确定工件的类型信息。例如,在自动化码头中,集装箱上可以设置有身份铭牌以表征集装箱的物流信息,载具在运载集装箱时,可以根据集装箱的位置从自动化系统中读取集装箱的类型,进而确定集装箱上身份铭牌的位置并获取身份铭牌的点云数据。再例如,在批量识别工件时,工件可以安置在置物架上,设置在置物架的字符信息采集装置130或移动到置物架的可移动字符信息采集装置130可以根据置物架的编号确定置物架上工件的类型信息。
66.在一些实施例中,可以先采集工件的轮廓图像,并基于目标检测确定工件的类型信息。
67.在一些实施例中,工件表面的三维模型信息可以与工件类型对应,当确定工件类型后,工件信息获取模块220可以基于工件类型对应调用工件表面的三维模型信息。在一些实施例中,也可以根据该工件的编码信息来确定该工件表面和/或工件表面上三维字符的三维模型信息。具体的,在一些实施例中,存储设备中设置有与工件编码信息一一对应的三维模型信息(工件表面和/或工件表面上三维字符的三维模型信息)。处理设备可以先通过识别设备自动识别该工件的编码信息(例如,附在工件某一外表面上的二维码),然后基于该识别结果从存储设备中获取与之对应的工件表面的三维模型信息或工件表面及其三维字符的三维模型信息。
68.在一些实施例中,还可以通过人工操作在终端设备上选择与该工件表面以及三维字符对应的三维模型信息。例如,如果操作人员知晓该工件以及其三维字符的三维模型信息的数据编号为“#01”,则操作人员可以在终端设备中输入“#01”,以获取对应的三维模型信息。
69.步骤330,基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。在一些实施例中,步骤330可以由点云数据确定模块230执行。
70.在一些实施例中,工件表面的三维模型信息可以为工件整体(工件表面以及位于该表面上的三维字符)三维模型信息中与设置有三维字符那个表面的三维模型信息。在一些实施例中,可以基于获取到的整体点云数据以及获取到的三维模型信息,先确定工件表面的点云数据(即基面点云数据),从而可以提取出凹陷于或凸出于该基面点云数据的那部分点云数据作为三维字符的点云数据。
71.在一些实施例中,点云数据确定模块230可以基于所述整体点云数据以及所述三维模型信息,确定整体点云数据中工件表面的点云数据(即基面点云数据),然后基于工件表面的点云数据确定三维字符的点云数据。该方法具体可以参考本技术图4的相关描述。
72.在一些实施例中,点云数据确定模块230也可以直接根据工件表面的三维模型信息确定三维字符的点云数据。在一些实施例中,可以预先在工件表面的三维模型信息中做一些标记信息,该标记信息可以包括刚好罩住三维字符轮廓的框体,以及三维字符与工件表面的临界面。其中,刚好罩住三维字符轮廓的框体可以是一个刚好可以罩住所有三维字符的框体,也可以是多个刚好可以是若干个刚好可以罩住单个字符的框体。上述标记信息可以与三维模型信息一起进行存储。点云数据确定模块230在获取到工件表面的三维模型信息以及整体点云数据时,可以先将三维模型信息与整体点云数据进行对齐,然后再基于三维模型信息中的标记信息直接识别并提取出三维字符的点云数据。对齐可以理解为将三
维模型信息与整体点云数据进行最佳匹配,以使两者尽可能地重合。
73.图4是本说明书一些实施例中的三维字符的点云数据的法的示例性流程图。在一些实施例中,可以先确定工件表面的点云数据,然后确定三维字符的点云数据。关于流程400的具体内容,请参见步骤410-420。
74.步骤410,基于整体点云数据以及三维模型信息,确定整体点云数据中工件表面的点云数据。在一些实施例,步骤410可以由表面确定单元231执行。
75.在一些实施例中,表面确定单元231可以将整体点云数据与三维模型信息对齐。其中,对齐可以指通过调整三维模型信息或整体点云数据的位置,以使三维模型信息与整体点云数据重合。
76.在一些实施例中,表面确定单元231可以基于特征点将三维模型信息与工件表面的整体点云数据对齐。例如,工件表面可以存在多个特征点,例如,螺丝、螺母、焊接缝等零件可以作为工件表面的特征点,可以先从点云数据中识别特征点,按照点云数据中特征点的呈现方式调整三维模型信息的方向、位置以使特征点重合,从而实现三维模型信息与工件表面的整体点云数据的对齐。
77.在一些实施例中,在对齐后,表面确定单元231可以将整体点云数据中与三维模型信息中三维字符外的工件表面模型对齐的点云数据可以作为工件表面的点云数据。在一些实施例中,点云数据确定模块230可以从整体点云数据中删除工件表面的点云数据以得到三维字符的点云数据。
78.在一些实施例中,可以通过预设算法将整体点云数据与工件表面的三维模型信息进行最佳匹配,以确定整体点云数据中与工件表面的三维模型信息匹配的点云数据,即工件表面的点云数据(即基面点云数据)。基面点云数据是指整体点云数据中能够反映工件表面的点云数据。在一些实施例中,预设算法可以包括三维最佳匹配算法、最小二乘法空间匹配或切比雪夫算法等。
79.在一些实施例中,考虑到工件表面可能存在其他相对于工件表面凸起或下凹零件(例如,螺丝、螺母等),为避免其他零件干扰三维字符的识别结果。基面点云数据可以不包含工件表面上其他零件的点云数据,仅为工件表面的点云数据。
80.在一些实施例中,表面确定单元231可以基于预设算法确定整体点云数据中与工件表面的三维模型信息匹配的基面点云数据。其中,工件表面的三维模型信息可以包括工件表面上若干点的位置信息(例如,组成工件表面的若干点的坐标)。表面确定单元231可以基于位置信息拟合模型基面的空间函数,并基于预设算法将整体点云数据(或工件表面的点云数据)中满足基面的空间函数的点云数据作为基面点云数据。在一些实施例中,模型基面可以理解为三维模型信息中用于反映工件表面的数据信息或拟合面信息。在一些实施例中,三维模型信息的模型基面可以包括用于反映工件表面的若干点的位置信息(例如,坐标)所在面的空间约束关系(例如,平面函数)。
81.在一些实施例中,表面确定单元231可以基于匹配结果确定点云数据的基准点(例如,作为原点),并从整体点云数据中选取满足空间约束关系的点云数据作为工件表面的基面点云数据。
82.步骤420,基于工件表面的点云数据确定三维字符的点云数据。在一些实施例中,步骤420可以由字符分离单元232执行。
83.在一些实施例中,步骤420可以通过剔除工件表面的点云数据实现,即点字符分离单元232可以将整体点云数据中工件表面的点云数据(即基面点云数据)删除,将剩余的点云数据即为三维字符的点云数据。
84.在一些实施例中,字符分离单元232可以基于前述基面点云数据确定三维字符的点云数据,例如,字符分离单元232可以将距离基面点云数据超出预设阈值的点云数据,确定为三维字符的点云数据。
85.在一些实施例中,字符分离单元232可以基于三维字符的深度信息确定预设阈值,其中,三维字符的深度信息可以为三维字符相对于所在工件的表面凸出的高度和/或凹陷的深度。在一些实施例中,预设阈值可以为深度信息的10%~40%。在一些实施例中,预设阈值可以为深度信息的10%~30%。在一些实施例中,预设阈值可以为深度信息的10%~20%。在一些实施例中,预设阈值的取值范围可以包括50微米~1毫米。在一些实施例中,预设阈值的取值范围可以包括10微米~200微米。在一些实施例中,预设阈值的取值范围可以包括20微米~100微米。在一些实施例中,预设阈值的取值范围可以包括30微米~80微米。
86.根据前述内容可知,本说明书一些实施例可能带来的有益效果包括但不限于:(1)将整体点云数据中三维字符的点云数据单独提取,避免工件表面的其他零部件影响三维字符的识别结果。(2)可以根据整体工件(工件表面以及位于表面上的三维字符)的三维模型数据与获取到的整体工件的点云数据来确定工件表面数据,从而提取三维字符的点云数据,操作方便,提取结果准确。(3)可以自动确定工件的类型信息,方便批量自动化处理。(4)可以基于工件表面的弧度调整三维字符,进而提高三维字符识别的准确性。需要说明的是,不同实施例可能产生的有益效果不同,在不同的实施例里,可能产生的有益效果可以是以上任意一种或几种的组合,也可以是其他任何可能获得的有益效果。
87.上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和修正。该类修改、改进和修正在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
88.同时,本说明书使用了特定词语来描述本说明书的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
89.此外,除非权利要求中明确说明,本说明书所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本说明书流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本说明书实施例实质和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
90.同理,应当注意的是,为了简化本说明书披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本说明书实施例的描述中,有时会将多种特征归并至一个实施例、附
图或对其的描述中。但是,这种披露方法并不意味着本说明书对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
91.一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有
±
20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本说明书一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
92.针对本说明书引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本说明书作为参考。与本说明书内容不一致或产生冲突的申请历史文件除外,对本说明书权利要求最广范围有限制的文件(当前或之后附加于本说明书中的)也除外。需要说明的是,如果本说明书附属材料中的描述、定义、和/或术语的使用与本说明书所述内容有不一致或冲突的地方,以本说明书的描述、定义和/或术语的使用为准。
93.最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
技术特征:
1.一种三维字符的点云数据的获取方法,其特征在于,所述方法包括:获取三维字符及其所在工件表面的整体点云数据;获取三维字符所在工件表面的三维模型信息;基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。2.根据权利要求1所述的获取方法,其特征在于,所述基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据,包括:基于所述整体点云数据以及所述三维模型信息,确定所述整体点云数据中所述工件表面的点云数据;基于所述工件表面的点云数据确定所述三维字符的点云数据。3.根据权利要求2所述的获取方法,其特征在于,所述基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据,包括:基于预设算法确定所述整体点云数据中与所述工件表面的三维模型信息匹配的基面点云数据;将距离所述基面点云数据超出预设阈值的点云数据,确定为三维字符的点云数据。4.根据权利要求3所述的获取方法,其特征在于,所述预设算法包括三维最佳匹配算法或最小二乘法空间匹配或切比雪夫算法。5.根据权利要求1所述的获取方法,其特征在于,所述工件表面的三维模型信息包括cad三维模型。6.一种三维字符的点云数据的获取系统,其特征在于,所述系统包括:点云数据获取模块,用于获取所述三维字符及其所在工件表面的整体点云数据;工件信息获取模块,用于获取所述三维字符所在工件表面的三维模型信息;以及点云数据确定模块,用于基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。7.根据权利要求6所述的获取系统,其特征在于,所述点云数据确定模块还包括表面确定单元以及字符分离单元;所述表面确定单元,用于基于所述整体点云数据以及所述三维模型信息,确定所述整体点云数据中所述工件表面的点云数据;所述字符分离单元,用于基于所述工件表面的点云数据确定所述三维字符的点云数据。8.根据权利要求7所述的获取系统,其特征在于,所述表面确定单元还用于基于预设算法确定所述整体点云数据中与所述工件表面的三维模型信息匹配的基面点云数据;所述字符分离单元还用于将距离所述基面点云数据超出预设阈值的点云数据,确定为三维字符的点云数据。9.根据权利要求8所述的获取系统,其特征在于,所述预设算法包括三维最佳匹配算法或最小二乘法空间匹配或切比雪夫算法。10.根据权利要求6所述的获取系统,其特征在于,所述工件表面的三维模型信息包括cad三维模型。11.一种三维字符的点云数据的获取装置,所述装置包括处理器以及存储器;所述存储器用于存储指令,其特征在于,所述指令被所述处理器执行时,导致所述装置实现如权利要
求1至5中任一项所述三维字符的点云数据的获取方法对应的操作。12.一种计算机可读存储介质,其特征在于,所述存储介质存储计算机指令,当计算机读取存储介质中的计算机指令后,计算机运行如权利要求1至5中任意一项所述三维字符的点云数据的获取方法。
技术总结
本说明书实施例提供一种基于三维字符的点云数据的获取方法,该方法包括获取所述三维字符及其所在工件表面的整体点云数据。获取所述三维字符所在工件表面的三维模型信息。基于所述整体点云数据以及所述三维模型信息,确定所述三维字符的点云数据。所述三维字符的点云数据。所述三维字符的点云数据。
技术研发人员:王森 李志超 周驰东 徐洁 王曦宇 刘朋 魏绍飞
受保护的技术使用者:苏州泰德航空材料有限公司
技术研发日:2021.12.02
技术公布日:2022/3/8