CN117474969A - 三维点云数据处理系统 - Google Patents
三维点云数据处理系统 Download PDFInfo
- Publication number
- CN117474969A CN117474969A CN202310889014.2A CN202310889014A CN117474969A CN 117474969 A CN117474969 A CN 117474969A CN 202310889014 A CN202310889014 A CN 202310889014A CN 117474969 A CN117474969 A CN 117474969A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- luminance information
- cloud data
- items
- controller
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 41
- 238000003384 imaging method Methods 0.000 claims description 60
- 230000006870 function Effects 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 3
- 238000000034 method Methods 0.000 description 67
- 230000008569 process Effects 0.000 description 37
- 238000010586 diagram Methods 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 17
- 230000015572 biosynthetic process Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000003860 storage Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000010363 phase shift Effects 0.000 description 4
- 238000003754 machining Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000003786 synthesis reaction Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000005555 metalworking Methods 0.000 description 2
- 230000000877 morphologic effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/543—Depth or shape recovery from line drawings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20192—Edge enhancement; Edge preservation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30136—Metal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30164—Workpiece; Machine component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
一种三维点云数据处理系统(10)包括:一个或多个相机(24),其对对象(100)进行成像以获取一项或多项亮度信息(32);以及控制器(12),其根据一项或多项亮度信息(32)计算对象(100)的点云数据(40)。控制器(12)根据一项或多项亮度信息(32)中的至少一者计算围绕对象(100)并且通过组合一个或多个矩形形成的至少一个BB(50),并且基于至少一个BB(50)和一项或多项亮度信息(32)计算点云数据(40)。
Description
相关申请的交叉引用
本申请要求于2022年7月25日提交的日本专利申请第2022-118246号的优先权,该日本专利申请的全部内容(包括说明书、权利要求、附图和摘要)以引用的方式并入本文。
技术领域
本说明书公开了三维点云数据处理系统,该三维点云数据处理系统根据通过对对象进行成像而获得的图像数据来生成指示对象的三维形状的三维点云数据。
背景技术
近年来,提出了用于基于通过对对象进行成像而获得的图像数据来生成指示对象的三维形状的三维点云数据(下文中简称为“点云数据”)的技术。这种点云数据例如可以在机床中用于测量工件的三维形状,并且该形状测量的结果可以用于检测刀具与工件之间的干涉、生成刀具路径、测量加工准确度、以及确定存在或不存在对象。
附带地,当生成点云数据时,通过从图像数据中提取指示对象表面的点而获得的点数据(下文中,从图像数据中提取的点数据被称为“初级点数据”)被变换到世界坐标系(每个系统仅一个坐标系;例如,在机床的情况下,是机器坐标系或工作坐标系)中。然而,从图像数据提取的初级点数据包括与对象无关的许多点,即,许多噪声。当存在大量的这种噪声时,无法准确地掌握对象的形状,并且数据尺寸变得非常大。因此,提出了用于从点云数据中去除噪声的许多技术。
例如,JP2020-144686A公开了一种技术,该技术预先存储对象的设计形状数据,将设计形状数据与点云数据进行比较,并从点云数据中去除噪声。
另外,WO2015/061400提出了一种技术,该技术根据点云数据创建XZ剖视图,从XZ横截面估计地层表面(stratum surface),并且将地层之下的点作为噪声去除。另外,JP2005-024370A公开了一种技术,该技术旋转点云数据,根据旋转后的数据确定地层表面,并且将与地层表面具有大标准偏差的点云作为噪声去除。
引用列表
专利文献1:JP2020-144686A
专利文献2:WO2015/061400
专利文献3:JP2005-024370A
然而,在JP2020-144686A所公开的技术中,必须预先具有设计形状数据,并且难以在没有设计形状数据的情况下针对对象生成点云数据。另外在WO2015/061400和JP2005-024370A所公开的技术中,存在噪声去除处理由于用于估计地层和计算标准偏差的计算量增加而花费时间过长的问题。
因此,本说明书公开了能够以较小的计算量生成点云数据的三维点云数据处理系统。
发明内容
本说明书所公开的三维点云数据处理系统包括:一个或多个成像设备,其对对象进行成像以获取一项或多项亮度信息;以及控制器,其根据一项或多项亮度信息计算对象的三维点云数据。控制器根据一项或多项亮度信息中的至少一者计算围绕对象并且通过组合一个或多个矩形形成的至少一个BB(边界框),并且基于至少一个BB和一项或多项亮度信息计算三维点云数据。
在这种情况下,一项或多项亮度信息可以包括通过从第一方向对对象成像获得的第一亮度信息和通过从不同于第一方向的第二方向对对象成像获得的第二亮度信息。
另外,控制器可以根据第二亮度信息计算围绕对象的第二BB以及计算通过在第二方向上推出第二BB而获得的第二BB推出空间,并且将根据第一亮度信息计算的点中的位于第二BB推出空间外部的点作为噪声去除。
另外,一项或多项亮度信息可以包括通过从第一方向对对象成像获得的第一亮度信息。控制器可基于第一亮度信息计算围绕对象的第一BB,将形成第一亮度信息的多个像素值中的位于第一BB外部的像素值作为噪声去除,并基于噪声去除之后的第一亮度信息计算三维点云数据。
另外,控制器可以用作AI,该AI预先被机器训练以至少接收至少一个BB和一项或多项亮度信息作为其输入,并且输出指示在形成一项或多项亮度信息的多个像素中的每一者中存在或不存在有效点的信息。
另外,控制器可以用作AI,该AI预先被机器训练以至少接收至少一个BB和一项或多项亮度信息作为其输入,并输出指示在通过以3D矩阵划分三维空间而形成的多个网格空间中的每一者中存在或不存在有效点的信息。
另外,一项或多项亮度信息还可以包括一项或多项额外亮度信息。控制器可基于根据一项或多项额外亮度信息计算的一个或多个额外BB、第二BB和第一亮度信息来计算三维点云数据。
根据本说明书中公开的技术,通过组合一个或多个矩形获得的BB具有简化的形状,并且计算量小。通过基于BB和亮度信息生成点云数据,可以以较小的计算量生成点云数据。
附图说明
将基于以下附图描述本公开的一个或多个实施例,附图中:
图1是示出了三维点云数据处理系统的配置的示意图;
图2是示出了三维点云数据处理系统的配置的框图;
图3是描述了创建三维模型的总体流程的图;
图4是描述了高准确度噪声去除的示意图;
图5是示出了对象的示例的图;
图6是示出了BB的示例的图;
图7是示出了如何计算另一BB的图;
图8是示出了BB的另一个示例的图;
图9是描述了使用BB的二维噪声去除的示意图;
图10是描述了BB推出空间的示意图;
图11是描述了三维噪声去除的示意图;
图12是描述了三维噪声去除的示意图;
图13是描述了BB推出空间的坐标变换的图;
图14是示出了CAD数据生成过程的前半部分的流程的流程图;
图15是示出了CAD数据生成过程的后半部分的流程的流程图;
图16是示出了CAD数据生成过程的前半部分的流程的另一示例的流程图;
图17是例示了AI配置的示例的图;以及
图18是示出了CAD数据生成过程的前半部分的流程的又一示例的流程图。
具体实施方式
实施例
下文中,将参考附图描述三维点云数据处理系统10的配置。图1是示出了三维点云数据处理系统10的配置的示意图。在图1的示例中,三维点云数据处理系统10与机床80结合使用。
为了制造加工品机床80对工件执行预定的加工。虽然对机床80的类型没有特别限制,但是机床80可以是例如对金属工件执行金属加工(例如切削或冲压)的金属加工机。在图1中,机床80是具有主轴81和刀架的车床。在以下的描述中,将由该机床80处理的工件视为用于形状测量的对象100。然而,用于形状测量的对象100并不限于工件,也可以是例如刀具和夹具的其他构件。
这种机床80包括数字控制器82。数字控制器82是这样一种装置,其分析加工程序(也被称为“NC程序”),并且为了操作机床80而利用包括信息(例如数值和代码)的数值信息来指示工件的刀具路径、加工所需的工作过程等。基于指示工件(即,对象100)的形状的CAD数据44,该数字控制器82检查刀具与工件之间的干涉,生成刀具路径,确定加工准确度,确定对象100的形状是否与参考形状匹配,并且确定对象100是否处于预定位置。这种数字控制器82在物理上是包括处理器和存储器的计算机。另外,在机床80中设置有用于向操作者呈现信息并接收来自操作者的指令的操作面板84。数字控制器82可以通过有线或无线通信与三维点云数据处理系统10的控制器12通信。
三维点云数据处理系统10生成指示对象100的形状的CAD数据44和点云数据40,并且包括控制器12和成像单元22。成像单元22对对象100进行成像。通过由成像单元22成像而获得的图像数据30被发送到控制器12。图像数据30是针对多个像素的每一者记录亮度值的信息,即亮度信息32。
控制器12控制成像单元22的成像处理,并基于所获得的图像数据30生成点云数据40(图1中未示出)和CAD数据44。所生成的CAD数据44被发送到数字控制器82。
接着,将更详细地描述三维点云数据处理系统10的配置。图2是示出了三维点云数据处理系统10的配置的框图。如图2所示且如上所述,三维点云数据处理系统10包括控制器12和成像单元22。
控制器12物理上是包括处理器14、存储器16、通信I/F 18和UI装置20的计算机。“计算机”还包括微控制器,在该微控制器中,计算机系统集成到单个集成电路中。另外,处理器14指代广义上的处理器,并且包括通用处理器(例如中央处理单元(CPU))和专用处理器(例如图形处理单元(GPU)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)和可编程逻辑器件)。
存储器16存储各种数据,并且包括由处理器14直接访问的主存储设备和通过输入/输出通道访问的辅助存储设备。主存储设备例如是半导体存储器。辅助存储设备例如是半导体存储器或磁存储设备。
通信I/F 18通过有线通信或无线通信向其它外部电子设备发送数据和从其它外部电子设备接收数据。通信I/F 18例如与数字控制器82和成像单元22通信。UI装置20向操作者呈现各种信息,并接收来自操作者的指令。UI装置20包括例如输出设备(例如显示器和扬声器)以及输入设备(例如键盘、鼠标、麦克风和触摸面板)。另外,尽管在该示例中UI装置20被描述为控制器12的部件,但是UI装置20的一部分或全部可以被配置为与控制器12完全不同的另一装置。例如,UI装置20的一些功能可以通过由操作者拥有的并且能够与控制器12通信的信息终端(例如智能电话)的用户界面来实现。另外,控制器12不必是单个计算机,并且可以通过组合多个物理上分离的计算机来配置。
成像单元22对存在于机床80的加工室中的对象100进行成像。如图2所示,成像单元22包括相机24和光源26。相机24对对象100进行成像以生成图像数据30。由相机24获得的图像数据30被发送到控制器12。另外,相机24的数量可以是一个或多个。
光源26照射对象100。光源26可以是简单地照射对象100的灯,或者可以是向对象100发射预定图案光的投影仪。
接着,将参考图3描述由三维点云数据处理系统10生成对象100的点云数据40的原理。当生成对象100的点云数据40时,控制器12驱动成像单元22获取对象100的图像数据30。此时,对象100相对于相机24的相对姿态被改变,使得可以针对对象100的所有表面获得图像数据30,从而执行多次成像。另外,为了改变对象100相对于相机24的相对姿态,可以移动对象100,或者可以移动相机24。在该示例中,驱动保持对象100的主轴81以改变对象100相对于相机24的姿态。
控制器12基于所获得的图像数据30(即,亮度信息32)生成对象100的点云数据40。在图3的示例中,根据通过从第一方向对对象100进行成像获得的图像数据30a和通过从不同于第一方向的第二方向对对象100进行成像获得的图像数据30b生成对象100的点云数据40a和40b,并且基于点云数据40a和40b生成对象100的CAD数据44。
当生成点云数据40时,针对形成图像数据30的各个像素指定存在或不存在形成对象100的外表面的点(下文中,称为“有效点”)以及当存在有效点时它们的坐标。在此,所指定的坐标是以相机24的光轴为参考的相机坐标系中的坐标。通过计算这种有效点,可以获得相机坐标系中的点云数据40。
当针对多项图像数据30a和30b中的每一者获得相机坐标系中的点云数据40a和40b时,基于点云数据40a和40b生成指示对象100的形状的CAD数据44。当生成CAD数据44时,执行从图像数据30a和30b计算的数据项的合成、从点云数据到网格数据的转换、以及从网格数据到实体数据的转换。其中,数据合成可以在转换为网格数据之前执行,或者可以在转换为网格数据之后执行。即,可以将多项点云数据40a和40b变换到世界坐标系中并合成,并且可以在合成之后从点云数据40计算一项网格数据。替代性地,作为另一种形式,可以将多项点云数据40a和40b中的每一者转换成网格数据,然后可以将多项网格数据变换到世界坐标系中并合成。
通过使用光切断法、相移法、三角法、立体法或其组合来计算点云数据40。另外,当使用光切断法或相移法时,光源26向对象100发射适合于这些方法的图案光。另外,当使用三角法时,成像单元22利用被布置为彼此隔开的两个或更多个相机24同时对一个对象100进行成像。
附带地,简单地从图像数据30提取的点云数据40包括与对象100无关的许多点,即,所谓的噪声。为了去除这种噪声,已经提出了许多噪声去除技术。图4是示出了高准确度噪声去除技术的示例的图像图。在该高准确度噪声去除技术中,将其中布置点云数据40的空间划分成以3D矩阵布置的多个网格空间46,并且针对各个网格空间46计算点的密度。然后,对于密度等于或小于预定值的网格空间46,将网格空间46内部的点视为噪声并删除。在图4的示例中,由于网格空间46a具有高的点密度,因此将网格空间46a中的点确定为有效点。另一方面,由于网格空间46b具有低的点密度,因此将网格空间46b中的点作为噪声去除。
根据这种高准确度噪声去除技术,可以以高准确度去除噪声。然而,存在计算量增加并且获取最终点云数据40花费时间的问题。因此,在该示例中,在应用高准确度噪声去除技术之前,通过使用稍后描述的边界框50(下文中,称为“BB 50”)来预先执行粗略噪声去除。下文中,使用该BB 50的噪声去除技术将被称为“BB型噪声去除”。
首先,将描述BB型噪声去除中使用的BB 50。图5是对象100的透视图,图6是通过对对象100进行成像而获得的图像数据30的示意图。BB 50是围绕对象100的图形,并且通过组合一个或多个矩形来形成。在图6的示例中,通过将由沿着对象100的最右边缘的线、沿着对象100的最上边缘的线、沿着对象100的最左边缘的线和沿着对象100的最下边缘的线形成的矩形S向外偏移预定量而获得的图形被提取为BB 50。
另外,可以通过组合两个或更多个矩形来形成BB 50。例如,如图7所示,提取围绕整个对象100的第一矩形BX1,然后计算在第一矩形BX1内不存在对象100(即,没有亮度)的角区域BX2。此后,如图8所示,可基于区域BX2将第一矩形BX1划分成多个矩形BX3、BX4和BX5。然后,可以获取三个矩形BX3、BX4和BX5作为最终BB 50。
另外,当计算BB 50时,可以对图像数据30执行一个或多个图像处理,使得可以清楚地指定对象100存在的范围。例如,可以使图像数据30经受边缘增强、过度曝光、二值化处理、形态处理、斑点处理及其组合。例如,当使图像数据30经受边缘增强和过度曝光且然后经受二值化处理和形态处理时,图像数据30所示的对象变为连续的黑块。控制器12提取围绕连续黑块的外接矩形作为BB 50。当在一个图像数据30中存在多个黑块时,针对多个块中的每一者计算外接矩形,并且提取多个矩形中的最大矩形作为BB 50。另外,当对象100的背景在计算BB 50的过程中成为障碍时,可以预先存储背景图像数据,并且可以在通过使用减法从图像数据30中去除背景之后计算BB 50。
由于BB 50是指示对象100存在于其中的范围的框,因此可以将位于BB 50外部的点作为与对象100无关的噪声去除。因此,在该示例中,根据图像数据30指定对象100的BB50,并且将从BB 50外部的像素的信息或亮度信息32计算的点作为噪声去除。
噪声去除处理大致分为仅利用一项图像数据30完成的二维噪声去除处理和通过使用通过从不同方向成像获得的两项或更多项图像数据30执行的三维噪声去除处理。
首先,将参考图9描述二维噪声去除处理。在这种情况下,控制器12从一项图像数据30(下文中,称为“第一图像数据30f”或“第一亮度信息32f”)来计算围绕第一图像数据30f所示的对象100的第一BB 50f。此后,控制器12将从第一亮度信息32f计算的点或位于第一BB 50f外部的像素值(即,像素的亮度值)作为噪声去除。控制器12对通过成像获得的所有项图像数据30执行该处理。二维噪声去除处理可以在计算点云数据40之前执行,或者可以在计算点云数据40之后执行。另外,在这种情况下,点云数据40可以在相机坐标系中表达,或者可以变换到世界坐标系中。在图9的示例中,由于当从第一成像方向(即,z1方向)观察时黑点或像素值位于第一BB 50f外部,因此黑点或像素值被视为噪声。
在此,第一BB 50f具有由平行于相机坐标系的直线形成的简化形状。与对象100本身的外形相比,可以非常容易地计算这种简化形状的第一BB 50f。另外,与用于确定点或像素是否在对象100的外形内部的计算量相比,用于确定点或像素是否在第一BB 50f内部的计算量可以大大减少。因此,与使用对象100本身的外形去除噪声时的计算量相比,使用第一BB 50f去除噪声时的计算量可以大大减少。
然而,由于第一BB 50f本身仅具有二维信息,因此第一BB 50f单独不能去除三维噪声。因此,在该示例中,通过进一步使用成像方向与第一亮度信息32f的成像方向不同的第二亮度信息32s来执行三维噪声去除处理。这将参考图10和图11进行描述。控制器12根据一项图像数据30(下文中,称为“第一图像数据30f”或“第一亮度信息32f”)计算点云数据40。本文所提及的点云数据40可以是在相机坐标系中表达的点云数据,或者可以是在世界坐标系中表达的点云数据。另外,控制器12从通过从不同于第一图像数据30f的方向对对象100进行成像获得的另一图像(下文中,称为“第二图像数据30s”或“第二亮度信息32s”)计算围绕对象100的第二BB 50s和第二BB推出空间52s。图10是示出了第二BB 50s和第二BB推出空间52s的示意图。
下文中,将第一亮度信息32f中的相机坐标系称为第一相机坐标系(x1,y1,z1),将第二亮度信息32s中的相机坐标系称为第二相机坐标系(x2,y2,z2)。如图9所示,第一BB50f是平行于第一相机坐标系的x1-y1平面的二维图形。另外,如图10所示,第二BB 50s是平行于第二相机坐标系的x2-y2平面的二维图形。另外,第二BB推出空间52s具有在z2方向上长的三维形状。
当可以计算第二BB推出空间52s时,控制器12将第二BB推出空间52s叠加在根据第一亮度信息32f计算的点云数据40上。当点云数据40在第一相机坐标系中表达时,将第二BB推出空间52s坐标变换到第一相机坐标系中,然后叠加在点云数据40上。当点云数据40变换到世界坐标系中时,将第二BB推出空间52s坐标变换到世界坐标系中,然后叠加在点云数据40上。
图13示出了第二BB推出空间52s如何坐标变换到第一相机坐标系中。在图13中,为了便于解释,将第二相机坐标系相对于第一相机坐标系旋转90°。如图13所示,假定第二BB推出空间52s在第二相机坐标系中具有x2方向为a、y2方向为b、z2方向为无限尺寸的形状。当第二BB推出空间52s被坐标变换到第一相机坐标系中时,第二BB推出空间52s具有z1方向为a、y1方向为b、x1方向为无限尺寸的形状。
图11示出了第二BB推出空间52s叠加在从第一亮度信息32f计算的点云数据40上的状态。另外,在图11中,预先对根据第一亮度信息32f计算的点云数据40执行使用第一BB50f的二维噪声去除处理。控制器12将从第一亮度信息32f计算的多项点云数据40中位于第一BB推出空间52s外部的点视为噪声,并删除这些点。在图11的示例中,将点云中的黑点作为噪声去除。
如上所述,通过将根据第二亮度信息32s计算的第二BB推出空间52s叠加在根据第一亮度信息32f计算的点云数据40上,可以三维地去除包括在点云中的噪声。另一方面,第二BB推出空间52s具有简化形状,在该形状中,第二BB 50s沿一个方向推出。因此,可以以相对小的计算量来执行用于计算第二BB推出空间52s的计算和用于确定点是否位于第二BB推出空间52s外部的计算。因此,根据该示例,可以在短时间内三维地去除噪声。
在此,仅第二BB推出空间52s叠加在从第一亮度信息32f计算的点云数据40上。然而,可以基于通过从另一方向成像获得的额外亮度信息来计算额外BB推出空间,并且除了第二BB推出空间52s之外,额外BB推出空间可以叠加在从第一亮度信息32f计算的点云数据40上。例如,如图12所示,可以根据通过从第三成像方向成像获得的第三亮度信息计算第三BB推出空间52t,并且第三BB推出空间52t可以叠加在根据第一亮度信息32f计算的点云数据40上。然后,在点云中,可以将位于第三BB推出空间52t外部的点作为噪声去除。在图12的示例中,通过另外叠加第三BB推出空间52t,将交叉点作为噪声新去除。
另外,这种额外亮度信息的项数没有特别限制。然而,理论上,通过使作为噪声去除目标的第一亮度信息32f的成像方向、第二亮度信息32s的成像方向和一项额外亮度信息的成像方向彼此垂直,可以利用少量数据三维地有效去除噪声。
接着,将参考图14和图15描述通过使用BB型噪声去除来生成对象100的CAD数据44的处理。当生成CAD数据44时,首先,初始化三维点云数据处理系统10(S10)。在该初始化中,例如,执行相机24或光源26的操作参数的设置以及相机坐标系与世界坐标系之间的坐标对准。随后,操作者设置对象100,使得其可以由相机24成像(S12)。在该示例中,对象100附接到机床80的主轴81。
在该状态下,控制器12调整对象100的姿态(S14)。具体地,控制器12指示机床80使对象100成为预定的姿态。响应于该指示,机床80通过使主轴81旋转来调整对象100的姿态,使得相机24能够从任意方向对对象100进行成像。
当能够调整对象100的姿态时,通过相机24对对象100进行成像(S16)。将通过成像获得的图像数据30从相机24发送到控制器12,并且作为亮度信息32存储在存储器16中,以便与关于成像位置或成像方向的信息相关联。控制器12根据所获得的亮度信息32生成点云数据40(S18)。具体地,通过使用例如光切断法、相移法、三角法或其组合,控制器12确定针对各个像素存在或不存在有效点以及当存在有效点时有效点在相机坐标系中的z方向位置。如上所述获得的一组点是点云数据40。另外,当使用光切断法或相移法时,光源26向对象100发射适合于这些方法的图案光。
随后,控制器12检查是否已经对对象100的所有必要表面进行了成像(S20)。在许多情况下,要成像的表面的数量是对象100的顶面、底面、右侧面和左侧面中的两个到四个表面。然而,为了提高准确度,可以对更多数量的表面进行成像。另外,待成像的表面不需要彼此垂直,并且可以是其间具有任何角度的表面。
当存在不能被成像的表面时,过程返回到改变对象100的姿态的步骤S14,然后对对象100进行成像并生成点云数据40(S16和S18)。另一方面,当完成所有表面的成像时,控制器12从获得的点云数据40中去除噪声(S22至S28)。
具体地,首先,控制器12针对各项所获得的图像数据30计算BB 50(S22)。随后,对针对各项图像数据30获得的点云数据40执行背景噪声去除处理(S24)。在背景噪声去除处理中,预先获取在没有对象100的情况下捕获的背景图像数据,并且基于背景图像数据与实际图像数据30之间的比较将图像数据30中作为背景的区域指定为背景区域。此后,从根据图像数据计算的点云数据40中集体地删除背景区域中的点。在步骤S24中,对获得的所有多项图像数据30执行背景噪声去除处理。另外,可以省略背景噪声去除处理。
然后,控制器12通过应用BB型噪声去除来去除点云数据40所包括的噪声(S26)。具体地,控制器12将从第一亮度信息32f获得的多项点云数据40f中的当从第一成像方向观察时位于第一BB 50f外部的点作为噪声去除。另外,点云数据40f是执行上述背景噪声去除处理后的点云数据。
另外,控制器12在第二成像方向上推出从第二亮度信息32s计算的第二BB 50s,以计算第二BB推出空间52s。此后,控制器12变换第二BB推出空间52s的坐标,然后将第二BB推出空间52s叠加在点云数据40f上。然后,控制器12将多项点云数据40中位于第二BB推出空间52s外部的点作为噪声去除。另外,通过使用额外的BB推出空间来执行类似的处理。
控制器12针对所有项的亮度信息32顺序地改变第一亮度信息32f、第二亮度信息32s和额外亮度信息的分配,以使用BB 50执行二维噪声去除处理和三维噪声去除处理。例如,在第一噪声去除处理中,利用作为“第一亮度信息32f”通过第一成像获得的亮度信息、作为“第二亮度信息32s”通过第二成像获得的亮度信息、以及作为“额外亮度信息”通过第三成像获得的亮度信息,来执行噪声去除。在第二噪声去除处理中,利用作为“第一亮度信息32f”通过第二成像获得的亮度信息、作为“第二亮度信息32s”通过第三成像获得的亮度信息、以及作为“额外亮度信息”通过第一成像获得的亮度信息,来执行噪声去除。
当BB型噪声去除完成时,极大地减少了包括在点云数据40中的噪声,并且也极大地减少了形成点云数据40的点的数量和数据尺寸。在该状态下,控制器12对点云数据40应用高准确度噪声去除(S28)。在高准确度噪声去除中,如上所述并且如图4所示,在点云数据40上叠加多个网格空间46,并且从各个网格空间46中的点的密度去除噪声。高准确度噪声去除往往需要大量的计算和长的计算时间。然而,在该示例中,由于预先执行背景噪声去除和BB型噪声去除以去除大部分噪声,因此减少了数据量。因此,可以显著缩短用于高准确度噪声去除的处理时间。
在完成高准确度噪声去除之后,控制器12抽取形成点云数据40的点到生成CAD数据44所需的程度(S30)。然后,控制器12从针对各项亮度信息32获得的多项点云数据40生成网格数据,并且将网格数据转换成实体模型,即CAD数据44(S30至S42)。在合成了针对各项亮度信息32获得的多项点云数据40之后,可以生成网格数据(S34和S36)。替代性地,作为另一种形式,可以将多项点云数据40中的每一者转换成网格数据,并且可以合成所获得的多项网格数据(S38和S40)。在任何情况下,最终获得指示对象100的三维形状的一项网格数据和CAD数据44(S42)。点云数据40可被体素化而不是被网格化,并且体素化的数据可被转换成CAD数据44。所生成的CAD数据44通过通信I/F 18发送到机床80。
当合成点云数据40或网格数据时,需要将各项点云数据40或网格数据变换到世界坐标系中。对于该坐标变换,需要准确地获取对象100的成像方向。该成像方向可以根据从机床80(即,用于保持对象100的装置)发送的机床位置信息(例如主轴81的旋转角度)来确定,或者可以根据平面方程来确定。在平面方程中,在对象100上或者在位置和姿态相对于对象100不变的参考对象上设置参考标记。然后,根据对象100的捕获图像中的参考标记的位置和形状来确定对象100的姿态。
接着,将描述用于生成CAD数据44的处理的另一示例。在图14和图15中,在生成所有项点云数据40之后应用BB型噪声去除。然而,BB型噪声去除可以在生成点云数据40的过程期间应用。
例如,可以执行图16中的步骤S50至S60,而不是图14中的步骤S14至S26。在这种情况下,控制器12在改变对象100的姿态的同时对对象100进行成像(S50至S54)。当完成所有必要表面的成像时,控制器12针对多项亮度信息32中的每一者计算BB 50和BB推出空间52(S56)。
随后,控制器12将第一BB 50f叠加在第一亮度信息32f上,并删除位于第一BB 50f外部的像素值(S58)。即,在从第一亮度信息32f生成点云数据40f之前,删除不需要的信息。因此,可以大大减少用于生成点云数据40f的下一处理所需的计算量。控制器12通过改变第一亮度信息32f的分配对所有项的亮度信息32执行这种二维噪声去除处理。即,在第一二维噪声去除处理中,将在第一成像中获得的亮度信息设置为“第一亮度信息32f”,并且在第二二维噪声去除处理中,将在第二成像中获得的亮度信息设置为“第一亮度信息32f”。
当针对所有项亮度信息32完成了二维噪声去除处理时,控制器12生成点云数据40并执行三维噪声去除处理(S60)。即,基于亮度信息32,控制器12确定针对各个像素存在或不存在有效点以及有效点在相机坐标系中的z方向位置。此时,控制器12进一步确定各个有效点是否位于BB推出空间52(即,第二BB推出空间52s或额外BB推出空间)外部,该BB推出空间根据具有与目标亮度信息32(即,第一亮度信息32f)的成像角度不同的成像角度的亮度信息32(即,第二亮度信息32s或额外亮度信息)来计算。当有效点位于BB推出空间52外部且具有不同成像角度时,控制器12确定有效点是噪声并去除有效点。另一方面,当有效点位于BB推出空间52内部且具有不同成像角度时,控制器12将该点存储为形成点云数据40的一个点。当完成三维噪声去除处理时,过程进行到图15中的步骤S28。
如上所述,通过在生成点云数据40之前(即在亮度信息32的状态下)使用BB 50二维地去除噪声,可以大大减少用于生成点云数据40的计算时间。另外,通过在生成点云数据40的过程中使用BB推出空间52三维地去除噪声,可以减少点云数据40的数据量。因此,可以减少稍后执行的高准确度噪声去除或CAD数据生成所需的计算量和计算时间。
接着,将描述用于生成CAD数据44的处理的又一示例。在上述示例中,控制器12通过针对各个点或像素执行单独计算来执行噪声去除。然而,可以构造预先训练的AI,并且可以通过使用该AI来去除噪声。具体地,AI是受监督的学习器,其被预先训练以接收第一BB50f、第二BB 50s和第一亮度信息32f作为其输入,并输出从第一亮度信息32f生成的点云数据40。这种AI可以被构造为控制器12的功能。例如,如图17所示,AI 60可以是三层神经网络或四层或更多层的深度神经网络,其具有一个输入层62、一个或多个中间层64和一个输出层66。在图17的示例中,第一成像位置、第二成像位置、第一亮度信息32f、第一BB 50f、第二BB 50s、第二BB推出空间52s是输入值。输出值是形成第一亮度信息32f的多个像素中的每一者的有效点的存在概率、或者在将三维空间划分为多个网格空间46时的多个网格空间46中的每一者中的有效点的存在概率。当输出各个像素的有效点的存在概率时,控制器12针对存在概率等于或大于预定值的像素计算存在于各个像素中的点的z方向位置,并且生成点云数据40。另外,当输出各个网格空间46中的有效点的存在概率时,控制器12通过假定网格空间46中有存在概率等于或大于预定值的点来生成点云数据40。
当通过使用AI 60执行噪声去除时,例如,执行图18中的步骤S70至S80,而不是执行图14中的步骤S14至S26。即,控制器12在改变对象100的姿态的同时对对象100进行成像(S70和S72),并且根据所获得的亮度信息32计算BB 50和BB推出空间52(S74)。当获得所有表面的亮度信息32时,控制器12将获得的亮度信息32、获得各项亮度信息32时的成像位置、各项亮度信息32的BB 50和BB推出空间52输入AI 60(S78)。此后,基于从AI 60输出的输出值生成点云数据40(S80)。此后,过程进行到图15中的步骤S28。
从以上描述中可以清楚地看出,通过构造接收第一亮度信息32f和第二BB 50s作为其输入并输出各个像素或网格空间46的有效点的存在概率的AI 60,可以简化用于生成点云数据40的处理和噪声去除处理。
另外,到目前为止描述的配置都是示例,并且可以改变其他配置,只要基于至少一个或多个亮度信息32和一个或多个BB 50来生成点云数据40即可。例如,虽然在该示例中将对象100附接到机床80并通过使用机床80的功能改变对象100的姿态,但是也可以通过与机床80无关的装置保持对象100。另外,代替移动对象100,可以移动相机24。另外,在到目前为止的说明中,执行使用BB 50的二维噪声去除和使用BB推出空间52的三维噪声去除。然而,可以仅执行使用BB 50的二维噪声去除和使用BB推出空间52的三维噪声去除中的一者。
附图标记列表
10:三维点云数据处理系统
12:控制器
14:处理器
16:存储器
18:通信I/F
20:UI装置
22:成像单元
24:相机
26:光源
30:图像数据
32:亮度信息
40:点云数据
44:CAD数据
46:网格空间
50:BB
52:BB推出空间
62:输入层
64:中间层
66:输出层
80:机床
81:主轴
82:数字控制器
84:操作面板
100:对象
Claims (7)
1.一种三维点云数据处理系统,包括:
一个或多个成像设备,其对对象进行成像以获取一项或多项亮度信息;和
控制器,其根据所述一项或多项亮度信息计算所述对象的三维点云数据,
其中,所述控制器根据所述一项或多项亮度信息中的至少一者计算围绕所述对象并且通过组合一个或多个矩形形成的至少一个BB,并且基于所述至少一个BB和所述一项或多项亮度信息计算所述三维点云数据。
2.根据权利要求1所述的三维点云数据处理系统,其特征在于,
所述一项或多项亮度信息包括通过从第一方向对所述对象成像获得的第一亮度信息和通过从不同于所述第一方向的第二方向对所述对象成像获得的第二亮度信息。
3.根据权利要求2所述的三维点云数据处理系统,其特征在于,
所述控制器根据所述第二亮度信息计算围绕所述对象的第二BB以及计算通过在所述第二方向上推出所述第二BB而获得的第二BB推出空间,并且将根据所述第一亮度信息计算的点中的位于所述第二BB推出空间外部的点作为噪声去除。
4.根据权利要求1至3中任一项所述的三维点云数据处理系统,其特征在于,
所述一项或多项亮度信息包括通过从第一方向对所述对象成像获得的第一亮度信息,并且
所述控制器基于所述第一亮度信息计算围绕所述对象的第一BB,将形成所述第一亮度信息的多个像素值中的位于所述第一BB外部的像素值作为噪声去除,并且基于噪声去除之后的所述第一亮度信息计算所述三维点云数据。
5.根据权利要求1或2所述的三维点云数据处理系统,其特征在于,
所述控制器用作AI,所述AI预先被机器训练以至少接收所述至少一个BB和所述一项或多项亮度信息作为其输入,并且输出指示在形成所述一项或多项亮度信息的多个像素中的每一者中存在或不存在有效点的信息。
6.根据权利要求1或2所述的三维点云数据处理系统,其特征在于,
所述控制器用作AI,所述AI预先被机器训练以至少接收所述至少一个BB和所述一项或多项亮度信息作为其输入,并且输出指示在通过以3D矩阵划分三维空间而形成的多个网格空间中的每一者中存在或不存在有效点的信息。
7.根据权利要求3所述的三维点云数据处理系统,其特征在于,
所述一项或多项亮度信息还包括一项或多项额外亮度信息,并且
所述控制器基于根据所述一项或多项额外亮度信息计算的一个或多个额外BB、所述第二BB和所述第一亮度信息计算所述三维点云数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022118246A JP2024015880A (ja) | 2022-07-25 | 2022-07-25 | 三次元点群データ処理システム |
JP2022-118246 | 2022-07-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117474969A true CN117474969A (zh) | 2024-01-30 |
Family
ID=89429732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310889014.2A Pending CN117474969A (zh) | 2022-07-25 | 2023-07-19 | 三维点云数据处理系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240029355A1 (zh) |
JP (1) | JP2024015880A (zh) |
CN (1) | CN117474969A (zh) |
DE (1) | DE102023117385A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4427656B2 (ja) | 2003-07-01 | 2010-03-10 | 学校法人東京電機大学 | 測量データの処理方法 |
US20150108689A1 (en) | 2013-10-22 | 2015-04-23 | D And D Manufacturing | Plastic molding apparatus with an adjustable barrel and associated methods |
JP7278462B2 (ja) | 2018-05-23 | 2023-05-19 | 三菱電機株式会社 | 加熱調理器 |
JP2020144686A (ja) | 2019-03-07 | 2020-09-10 | 株式会社日立システムズ | モデル作成システム、モデル作成方法 |
-
2022
- 2022-07-25 JP JP2022118246A patent/JP2024015880A/ja active Pending
-
2023
- 2023-06-30 DE DE102023117385.5A patent/DE102023117385A1/de active Pending
- 2023-07-19 CN CN202310889014.2A patent/CN117474969A/zh active Pending
- 2023-07-21 US US18/356,737 patent/US20240029355A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102023117385A1 (de) | 2024-01-25 |
US20240029355A1 (en) | 2024-01-25 |
JP2024015880A (ja) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4677536B1 (ja) | 3次元物体認識装置及び3次元物体認識方法 | |
CN111783820B (zh) | 图像标注方法和装置 | |
KR100762670B1 (ko) | 스테레오 이미지로부터 디스패리티 맵을 생성하는 방법 및장치와 그를 위한 스테레오 매칭 방법 및 장치 | |
JP4785880B2 (ja) | 三次元オブジェクト認識のためのシステムおよび方法 | |
CN113065546B (zh) | 一种基于注意力机制和霍夫投票的目标位姿估计方法及系统 | |
JP7339316B2 (ja) | ビジョンシステムにより画像特徴におけるエッジと法線を同時に考慮するためのシステム及び方法 | |
US10682764B2 (en) | 3D segmentation for robotic applications | |
JP6503153B2 (ja) | ビジョンシステムにおいて3dアライメントアルゴリズムを自動選択するためのシステム及び方法 | |
JP2007179452A (ja) | 3次元形状データの作成方法、3次元形状データの作成装置、及び、3次元形状データの作成プログラム | |
CN112651881B (zh) | 图像合成方法、装置、设备、存储介质以及程序产品 | |
WO2012100225A1 (en) | Systems and methods for generating a three-dimensional shape from stereo color images | |
CN114022542A (zh) | 一种基于三维重建的3d数据库制作方法 | |
KR20190060679A (ko) | 이동 객체의 자세 학습 방법 및 장치 | |
CN115601430A (zh) | 基于关键点映射的无纹理高反物体位姿估计方法及系统 | |
Pacheco et al. | Reconstruction of high resolution 3D objects from incomplete images and 3D information | |
JP2006107145A (ja) | 顔形状モデリングシステムおよび顔形状モデリング方法 | |
KR20220161340A (ko) | 이미지 처리 시스템 및 방법 | |
CN117474969A (zh) | 三维点云数据处理系统 | |
JP7298687B2 (ja) | 物体認識装置及び物体認識方法 | |
KR20210018114A (ko) | 교차 도메인 메트릭 학습 시스템 및 방법 | |
Sánchez-Ferreira et al. | Development of a stereo vision measurement architecture for an underwater robot | |
JP2017182113A (ja) | ワーク判定装置及び方法 | |
JP2001109879A (ja) | 画像処理装置および方法、並びに媒体 | |
KR20080044221A (ko) | 컴퓨터를 이용한 3차원 이미지의 형상화 처리방법 | |
JPH0981737A (ja) | 三次元物体モデル生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |