CN116484585A - 缺陷样本数据集的仿真生成方法、计算机可读存储介质 - Google Patents
缺陷样本数据集的仿真生成方法、计算机可读存储介质 Download PDFInfo
- Publication number
- CN116484585A CN116484585A CN202310301707.5A CN202310301707A CN116484585A CN 116484585 A CN116484585 A CN 116484585A CN 202310301707 A CN202310301707 A CN 202310301707A CN 116484585 A CN116484585 A CN 116484585A
- Authority
- CN
- China
- Prior art keywords
- node
- defect
- sampling
- outsourcing
- dimensional model
- 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
- 230000007547 defect Effects 0.000 title claims abstract description 252
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000004088 simulation Methods 0.000 title claims abstract description 38
- 238000003860 storage Methods 0.000 title claims description 8
- 238000005094 computer simulation Methods 0.000 claims abstract description 13
- 238000012946 outsourcing Methods 0.000 claims description 192
- 238000005070 sampling Methods 0.000 claims description 188
- 230000003287 optical effect Effects 0.000 claims description 32
- 239000000463 material Substances 0.000 claims description 31
- 230000001133 acceleration Effects 0.000 claims description 21
- 230000005484 gravity Effects 0.000 claims description 14
- 230000010354 integration Effects 0.000 claims description 11
- 239000011159 matrix material Substances 0.000 claims description 8
- 230000003068 static effect Effects 0.000 claims description 6
- 238000005286 illumination Methods 0.000 claims description 5
- 239000002131 composite material Substances 0.000 claims description 4
- 230000001131 transforming effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 2
- 238000004519 manufacturing process Methods 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 28
- 238000004364 calculation method Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000013136 deep learning model Methods 0.000 description 6
- 238000003384 imaging method Methods 0.000 description 5
- 241000208199 Buxus sempervirens Species 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000853 adhesive Substances 0.000 description 1
- 230000001070 adhesive effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012634 optical imaging Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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/005—Tree description, e.g. octree, quadtree
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/14—Force analysis or force optimisation, e.g. static or dynamic forces
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种缺陷样本数据集的仿真生成方法,包括:获取无缺陷样本的三维模型;将一个或多个预设的三维模型作为缺陷元模型,根据预设的受力状态,对每个缺陷元模型进行动力学仿真,生成对应的缺陷模型;将生成的缺陷模型与无缺陷样本的三维模型进行融合得到缺陷样本的三维模型。由于基于物理仿真的方式生成缺陷样本数据集,使得生成的缺陷数据集更加符合物理规律,具有一定的先验知识,更加贴近于实际生产过程的缺陷数据。
Description
技术领域
本发明涉及智能制造技术领域,具体涉及缺陷样本数据集的仿真生成方法、计算机可读存储介质。
背景技术
缺陷检测是工业制造中常见的流程,在新能源、3C电子、半导体等行业,缺陷检测都是不可或缺的重要流程。随着制造的智能化与工艺的复杂程度的增加,使用人工进行缺陷检测的方法已经逐步被自动化检测所替代,其中基于深度学习的缺陷检测技术在各个行业正在逐步取得更广泛的应用。
基于深度学习进行缺陷检测有一个关键的步骤就是使用足够的缺陷样本数据进行深度学习模型的训练,而实际生产过程中产生的缺陷产品远少于正常产品,因此收集缺陷样本数据较为困难,导致这一步骤在实际项目工程的落地应用中存在周期长、成本高、不确定性增大等缺点。为了解决这个问题,需要有一项技术能够在非生产阶段生成深度学习模型所需要的各种缺陷的数据集。
为了解决生成缺陷样本数据集的这个问题,目前有人尝试使用生成对抗神经网络来进行缺陷图像的生成,这种方法解决了自动生成大量图像数据的问题,但是这种方法生成的数据集存在随机性高、与实际缺陷相差偏大的问题,导致深度学习模型训练后依然存在缺陷识别率不高的问题。
发明内容
本发明主要解决的技术问题是现有缺陷样本数据的生成方法所生成的缺陷样本数据与实际缺陷数据相差偏大。
根据第一方面,一种实施例中提供一种缺陷样本数据集的仿真生成方法,所述数据集包括缺陷样本的三维模型,所述仿真生成方法包括:
获取无缺陷样本的三维模型;
将一个或多个预设的三维模型作为缺陷元模型,根据预设的受力状态,对每个所述缺陷元模型进行动力学仿真,生成对应的缺陷模型;
将生成的所述缺陷模型与所述无缺陷样本的三维模型进行融合得到缺陷样本的三维模型。
一种实施例中,所述缺陷元模型具有预设的初始参数,所述初始参数包括材质参数;所述受力状态包括受压力、粘力和重力;对所述缺陷元模型进行动力学仿真包括:
对所述缺陷元模型的节点进行采样得到采样节点;
将各采样节点的位置作为其初始位置,并设置各采样节点的初始速度和质量;
根据所述材质参数和各采样节点的质量,计算各采样节点的压力、粘力和重力;
根据各采样节点的压力、粘力和重力计算各采样节点的合成加速度;
根据各采样节点的合成加速度,采用数值积分的方式迭代更新各采样节点的速度和位置,直至达到预设的停止条件。
一种实施例中,所述对所述缺陷元模型的节点进行采样得到采样节点包括:
根据以下公式计算所述缺陷元模型每个节点的近似曲率值:
其中pi表示第i个节点,ei,l表示节点pi的第l个最近邻节点与其构成的空间向量,<>表示内积;
对所述缺陷元模型的每个节点进行最邻近搜索,确定在采样半径r范围内的所有节点的数量Np;
对所述缺陷元模型进行栅格化划分,选择每个栅格中近似曲率值最大的Ns个节点作为该栅格的采样节点,其中
其中栅格中节点的个数为Nc+1,为栅格中第i个节点在采样半径r范围内的所有节点的数量。
一种实施例中,所述材质参数包括材料的原始静态密度ρ0和与材质相关的刚性系数k,采样节点的压力通过以下方式计算得到:
获取各采样节点在采样半径r范围内的n+1个最邻近节点其中n为不小于0的整数,pj表示采样节点的第j个最邻近节点;
根据以下公式计算得到各采样节点的密度:
其中ρi表示第i个采样节点的密度,mj表示节点pj的质量,核函数Wρ(pj-pi,r)为采样节点pi、pj和采样半径r的函数,表示为:
其中|| ||表示范数;
利用材料的原始静态密度ρ0、与材质相关的刚性系数k、各采样节点的质量、密度和最邻近节点计算各采样节点的压力Fi press,其中Fi press表示第i个采样节点的压力。
一种实施例中,采样节点的压力Fi press由以下公式确定:
其中Ei表示节点pi处的压强,且Ei=k[(ρi/ρ0)2-1],表示梯度算子,核函数Ws(pj-pi,r)为采样节点pi、pj和采样半径r的函数,表示为:
一种实施例中,所述材质参数还包括与材质相关的摩擦系数μ,采样节点的粘力Fi viscosity由以下公式确定:
其中vi表示采样节点pi的速度,表示拉普拉斯算子,核函数Wv(pi-pj,r)为采样节点pi、pj和采样半径r的函数,表示为:
一种实施例中,采样节点的合成加速度由以下公式确定:
其中表示第i个采样节点的合成加速度,Fi resultant表示第i个采样节点的合力,且
Fi resultant=ρig+Fi press+Fi viscosity,
其中Fi viscosity表示第i个采样节点的粘力,g表示重力加速度。
一种实施例中,所述根据各采样节点的合成加速度,采用数值积分的方式迭代更新各采样节点的速度和位置,直至达到预设的停止条件,包括:
根据以下公式迭代更新节点的速度和位置,直至达到预设的截止时间:
pi(t+Δt)=pi(t)+Δt*vi(t+Δt),
其中t表示时间,vi(t)表示采样节点pi在时刻t的速度,Δt为预设的时间步长,表示采样节点pi在时刻t的合成加速度,pi(t)表示采样节点pi在时刻t的位置。
一种实施例中,所述将生成的所述缺陷模型与所述无缺陷样本的三维模型进行融合得到缺陷样本的三维模型,包括:
设置缺陷在无缺陷样本的三维模型中可能存在的区域;
生成所述缺陷模型的一个随机的姿态;
将所述缺陷模型置于所设置的区域中,并根据生成的姿态进行变换;
遍历变换后的所述缺陷模型的所有节点,对于每一个节点,在所述无缺陷样本的三维模型中进行最邻近搜索,当该节点与搜索到的最邻近节点的距离大于r时,将该节点加入所述无缺陷样本的三维模型中,当该节点与最邻近节点的距离小于r时,计算该节点与最邻近节点连线的中心位置,将最邻近节点的位置更新为该中心位置。
一种实施例中,所述仿真生成方法还包括:
设置一个或多个虚拟传感器;
获取缺陷样本的三维模型的最小外包树,所述最小外包树的根节点为缺陷样本的三维模型的外包盒,树中各父节点的子节点为对父节点进行划分得到的外包盒,叶子节点为无法继续划分的外包盒;
根据所述最小外包树中的外包盒与所述虚拟传感器的相对位置,计算得到缺陷样本的三维模型在所述虚拟传感器中所形成的颜色图像、法向图和深度图中的一者或多者,所述缺陷样本数据集还包括所述颜色图像、法向图和/或深度图。
一种实施例中,所述虚拟传感器包括第一虚拟传感器,所述第一虚拟传感器具有多个像素点,所述颜色图像通过以下方式计算得:
设置缺陷样本的三维模型基于预设的第一虚拟传感器的相对空间位置;
根据缺陷样本的三维模型的最小外包树选择若干外包盒,根据各外包盒中节点的近似曲率值对外包盒进行空间采样,得到虚拟的光场采样点;
根据预设的虚拟光源位置与光照参数获得所有光场采样点的光场函数值,并获取所有光场采样点的最小外包树;
遍历所述第一虚拟传感器的所有像素点,对每个像素点执行像素值获取步骤,以获得各像素点的像素值;
由各像素点的像素值组成缺陷样本的颜色图像;
所述像素值获取步骤包括:
获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线及其连续多次的反射直线与缺陷样本的三维模型的交点;
在光场采样点的最小外包树中查找每个交点的预设个数的最邻近光场采样点,利用这些光场采样点的光场函数值计算得到像素点的像素值。
一种实施例中,所述获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线及其连续多次的反射直线与缺陷样本的三维模型的交点,包括:
获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒;
遍历这些最小外包盒中所有节点,找出距离第一虚拟相机光心最近的节点作为直线与缺陷样本的三维模型的交点,并将此节点加入候选点集,再以此节点的法向量为对称轴获取前一条直线的对称直线作为新的直线,计算新的直线与缺陷样本的三维模型的交点并加入候选点集,直至新的直线与缺陷样本的三维模型无任何交点为止,其中所获得的新的直线作为前一条直线的反射直线。
一种实施例中,所述在光场采样点的最小外包树中查找每个交点在空间中最邻近的预设个数的光场采样点,利用这些光场采样点的光场函数值计算得到像素点的像素值,包括:
按后入先出的顺序遍历候选点集,对于候选点集中的每个节点,在光场采样点的最小外包树中查找与其在空间中最邻近的三个光场采样点,根据此三个光场采样点的光场函数值计算得到节点的光场数据;
根据候选点集中所有节点的光场数据计算得到像素点的像素值。
一种实施例中,所述根据缺陷样本的三维模型的最小外包树选择若干外包盒,根据各外包盒中节点的近似曲率值对外包盒进行空间采样,得到虚拟的光场采样点,包括:
获取缺陷样本的三维模型的最小外包树的次底层节点外包盒;
对每个外包盒,统计其中所有节点的平均近似曲率值并计算得到采样间隔比率/>然后以步长/>对外包盒进行空间采样得到虚拟的光场采样点,其中ki为外包盒中第i个节点的近似曲率值,nB为外包盒中节点的数量,λ为预设的虚拟光场的采样比率值,l、w、h分别为外包盒的长、宽、高。
一种实施例中,所述虚拟传感器包括第二虚拟传感器,所述第二虚拟传感器具有多个像素点,所述法向图通过以下方式计算得到:
设置缺陷样本的三维模型基于预设的第二虚拟传感器的相对空间位置;
遍历所述第二虚拟传感器的所有像素点,对于每个像素点,获取预设的第二虚拟相机的光心与该像素点形成的直线,计算直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层搜索缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,遍历这些最小外包盒中所有节点,找出距离第二虚拟相机光心最近的节点,利用该节点以及与该节点最邻近的三个节点拟合一平面,将该平面的法向量作为该像素点的像素值;
由第二虚拟传感器各像素点的像素值组成缺陷样本的法向图。
一种实施例中,所述虚拟传感器包括第三虚拟传感器,所述第三虚拟传感器具有多个像素点,所述深度图通过以下方式计算得到:
设置缺陷样本的三维模型基于预设的第三虚拟传感器的相对空间位置;
遍历所述第三虚拟传感器的所有像素点,对于每个像素点,获取预设的第三虚拟相机的光心与该像素点形成的直线,计算直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层搜索缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,遍历这些最小外包盒中所有节点,找出距离第三虚拟相机光心最近的节点,计算此节点与第三虚拟相机光心的距离,将该距离作为该像素点的像素值;
由第三虚拟传感器各像素点的像素值组成缺陷样本的深度图。
一种实施例中,所述获取缺陷样本的三维模型的最小外包树包括:
根节点获取步骤,将缺陷样本的三维模型的所有节点组成的集合作为待求节点集合执行外包盒计算步骤,将获得的外包盒作为缺陷样本的三维模型的最小外包树的根节点;将根节点作为当前外包树节点;
子节点划分步骤,获取当前外包树节点的中心点,并以当前外包树节点的外包主方向为中心点的法向量,根据中心点及其法向量构造一切分平面,将当前外包树节点所包含的缺陷样本的三维模型的节点划分为两个子集,分别将这两个子集作为待求节点集合执行外包盒计算步骤,将得到的两个外包盒作为当前外包树节点的两个子节点;
当前外包树节点更新步骤,分别将两个子节点作为新的当前外包树节点;
重复执行所述子节点划分步骤和所述当前外包树节点更新步骤,直至当前外包树节点无法继续划分为止;
其中外包盒计算步骤包括:计算待求节点集合关于空间的协方差矩阵,并据此计算得到待求节点集合的特征方向,以特征方向为外包主方向计算得到待求节点集合的外包盒。
根据第二方面,一种实施例中提供一种计算机可读存储介质,所述介质上存储有程序,所述程序能够被处理器执行以实现如上述第一方面所述的仿真生成方法。
依据上述实施例的缺陷样本数据集的仿真生成方法,通过将一个或多个预设的三维模型作为缺陷元模型,根据预设的受力状态,对每个缺陷元模型进行动力学仿真,生成对应的缺陷模型;将生成的缺陷模型与无缺陷样本的三维模型进行融合得到缺陷样本的三维模型。由于采用了基于物理仿真的方式生成缺陷样本数据集,使得生成的缺陷数据集更加符合物理规律,具有一定的先验知识,更加贴近于实际生产过程的缺陷数据。
附图说明
图1为一种实施例的缺陷样本数据集的仿真生成方法的流程图;
图2为一种实施例中对缺陷元模型进行动力学仿真的流程图;
图3为一种实施例的样本图像生成步骤的流程图;
图4为一种实施例中构建缺陷样本的三维模型的最小外包树的流程图;
图5为一种实施例的颜色图像的计算方法的流程图;
图6为一种实施例的像素值获取步骤的流程图;
图7为一种实施例中计算第一虚拟相机的光心与像素点形成的直线及其连续多次的反射直线与缺陷样本的三维模型的交点的流程图;
图8为一种实施例中直线与缺陷样本的三维模型的最小外包树中的外包盒相交的示意图;
图9为一种实施例的法向图的计算方法的流程图;
图10为一种实施例的深度图的计算方法的流程图。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
本文中为部件所编序号本身,例如“第一”、“第二”等,仅用于区分所描述的对象,不具有任何顺序或技术含义。而本申请所说“连接”、“联接”,如无特别说明,均包括直接和间接连接(联接)。
本发明提供一种缺陷样本数据集的仿真生成方法,该方法基于物理仿真的方式生成缺陷样本数据,使得生成的缺陷样本数据集更加符合物理规律,从而使得利用该缺陷样本数据集训练后的深度学习模型在实际生产中的缺陷检测准确率大大提高。所生成的缺陷样本数据集包括缺陷样本的三维模型,在有的实施例中还可以包括根据缺陷样本的三维模型生成的缺陷样本的具有一致性的多模态数据,例如颜色图像、法向图和深度图等。
请参考图1,一种实施例中缺陷样本数据集的仿真生成方法包括步骤110~130,下面具体说明。
步骤110:获取无缺陷样本的三维模型。
这里的样本指用作样品的物体或工业产品,可以是电子元器件、玩具、机械部件等等。无缺陷样本指没有缺陷的物体或工业产品。无缺陷样本的三维模型可以通过读入无缺陷样本的stl模型文件或者其他格式三维模型文件获得。
三维模型通常由空间中物体表面的离散点组成,具体可以是点云等。
步骤120:将一个或多个预设的三维模型作为缺陷元模型,根据预设的受力状态,对每个缺陷元模型进行动力学仿真,生成对应的缺陷模型。
工业生产上大多数缺陷是由于原始材料受外力作用产生形变形成的,本发明模拟这一过程构建缺陷模型,缺陷模型用于模拟不同类型的缺陷。
其中缺陷元模型模拟初始的材料,可根据实际工程经验构建,当需要使缺陷样本具有多种缺陷时,可设置多个缺陷元模型。受力状态指缺陷元模型受到何种力作用,可以是受压力、推力、拉力、粘力、重力等。根据受力状态对缺陷元模型进行动力学仿真,模拟受力产生形变的过程,从而得到缺陷模型。为了便于进行仿真,还可以预先设置缺陷元模型的一些物理参数,例如初始几何形状(包括长方体、椭球、圆柱、任意不规则形状等)、材质参数等。
本发明一种实施例中,预先设置缺陷元模型的初始参数,初始参数至少包括材质参数,并且设置缺陷元模型的受力状态包括受压力、粘力和重力,基于此进行动力学仿真。请参考图2,该实施例中对缺陷元模型进行动力学仿真的过程包括步骤121~125。
步骤121:对缺陷元模型的节点进行采样得到采样节点。
三维模型中的节点即指组成三维模型的点,例如点云结构中的点。对缺陷元模型的节点采样的方式可以是网格采样或者均匀随机采样等。本实施例还提供一种自适应采样方式。具体地,首先计算每个节点的近似曲率值,计算公式为:
其中pi表示第i个节点,ei,l表示节点pi的第l个最近邻节点与其构成的空间向量,<>表示内积。并且对每个节点进行最邻近搜索,确定在采样半径r范围内的所有节点的数量Np,采样半径r可根据实际需要设置。然后对缺陷元模型进行栅格化划分,统计每个栅格中的所有节点及其近似曲率值,选择每个栅格中近似曲率值最大的Ns个节点作为该栅格的采样节点,其中
其中栅格中节点的个数为Nc+1,为栅格中第i个节点在采样半径r范围内的所有节点的数量。
本实施例提供的三维模型的自适应采样方法,由于近似曲率值大的节点更具有特征代表性,因此通过保留近似曲率值大的节点,减少计算量,可以在提高计算效率的同时有效保持三维模型的关键几何特征。
步骤122:将各采样节点的位置作为其初始位置,并设置各采样节点的初始速度和质量。
步骤123:根据材质参数和各采样节点的质量,计算各采样节点的压力、粘力和重力。
可以理解,在设置材质参数时,可以设置与压力、粘力和重力相关的材质参数,则结合采样节点的质量,可计算出采样节点的压力、粘力和重力。
一种实施例中,材质参数可以包括材料的原始静态密度ρ0和与材质相关的刚性系数k,采样节点的压力可以通过以下方式计算得到:获取各采样节点在采样半径r范围内的n+1个最邻近节点其中n为不小于0的整数,pj表示采样节点的第j个最邻近节点;利用各采样节点的质量和最邻近节点/>计算各采样节点的密度ρi,其中ρi表示第i个采样节点的密度,一种实施例中可根据以下公式计算得到各采样节点的密度:
其中mj表示节点pj的质量,核函数Wρ(pj-pi,r)为采样节点pi、pj和采样半径r的函数,表示为:
其中|| ||表示范数;最后利用材料的原始静态密度ρ0、与材质相关的刚性系数k、各采样节点的质量、密度和最邻近节点计算各采样节点的压力Fi press,其中Fi press表示第i个采样节点的压力。
一种实施例中,采样节点的压力Fi press具体由以下公式确定:
其中Ei表示节点pi处的压强,其可由EOS(Equation Of State,状态方程)方法直接计算得到,即Ei=k[(ρi/ρ0)2-1],表示梯度算子,核函数Ws(pj-pi,r)为采样节点pi、pj和采样半径r的函数,表示为:
一种实施例中,材质参数还可以包括与材质相关的摩擦系数μ,在获得了采样节点的密度的基础上,采样节点的粘力Fi viscosity可以由以下公式确定:
其中vi表示采样节点pi的速度,表示拉普拉斯算子,核函数Wv(pi-pj,r)为采样节点pi、pj和采样半径r的函数,表示为:
步骤124:根据各采样节点的压力、粘力和重力计算各采样节点的合成加速度。
由于已经计算出了采样节点的压力、粘力和重力,因此可以得到采样节点的合力,将合力除以密度则得到了合成加速度,用公式表示为:
其中表示第i个采样节点的合成加速度,Fi resultant表示第i个采样节点的合力,且
Fi resultant=ρig+Fi press+Fi viscosity,
其中g表示重力加速度,ρi g表示采样节点pi的重力。
步骤125:根据各采样节点的合成加速度,采用数值积分的方式迭代更新各采样节点的速度和位置,直至达到预设的停止条件。
可以理解,根据节点的合成加速度,可以采用数值积分的方式获得节点速度的改变量,据此可更新节点的速度,节点的位置同理。数值积分可以采用半隐式欧拉积分、显式欧拉积分或Verlet积分等。以半隐式欧拉积分为例,可根据以下公式迭代更新节点的速度和位置,直至达到预设的截止时间:
pi(t+Δt)=pi(t)+Δt*vi(t+Δt),
其中t表示时间,vi(t)表示节点pi在时刻t的速度,Δt为预设的时间步长,表示节点pi在时刻t的合成加速度,pi(t)表示节点pi在时刻t的位置。
至此则完成了对缺陷元模型的动力学仿真,停止迭代时得到的三维模型即为缺陷模型。
步骤130:将生成的缺陷模型与无缺陷样本的三维模型进行融合得到缺陷样本的三维模型。
具体地,首先设置缺陷在无缺陷样本的三维模型中可能存在的区域,并生成缺陷模型的一个随机的姿态;然后将缺陷模型置于所设置的区域中,并根据生成的姿态进行变换;遍历变换后的缺陷模型的所有节点,对于每一个节点,在无缺陷样本的三维模型中进行最邻近搜索,当该节点与搜索到的最邻近节点的距离大于r时,将该节点加入无缺陷样本的三维模型中,当该节点与最邻近节点的距离小于r时,计算该节点与最邻近节点连线的中心位置,即连线的中点位置,将最邻近节点的位置更新为该中心位置。其中r即为步骤123中的采样半径。经过上述操作得到的三维模型则为缺陷样本的三维模型。
本发明一些实施例中,在获得缺陷样本的三维模型后,还可以通过设置虚拟的光源和传感器对缺陷样本的三维模型进行成像,获得缺陷样本图像。通过模拟不同的成像方式,可以生成不同类型的缺陷样本图像,例如缺陷样本的颜色图像、法向图、深度图等,由于通过同一三维模型生成这些图像,因此它们具有良好的一致性。
请参考图3,本发明一种实施例的缺陷样本数据集的仿真生成方法还包括样本图像生成步骤,该步骤包括步骤210~230,下面具体说明。
步骤210:设置一个或多个虚拟传感器。
虚拟传感器是在三维模型中虚构的传感器,用于模拟现实世界中的传感器,对缺陷样本的三维模型进行成像以获取缺陷样本图像。与现实世界中的传感器相同,虚拟传感器也具有多个像素点,由各像素点的像素值组成一幅图像。根据所生成的图像的数量、种类可以设置一个或多个虚拟传感器。不同的图像可以采用不同的虚拟传感器。在生成一张图像时,可以使用一个虚拟传感器进行成像,也可以使用多个虚拟传感器进行成像。
步骤220:获取缺陷样本的三维模型的最小外包树。
为了提高搜索最小外包盒的效率,本步骤中先构建缺陷样本的三维模型的最小外包树。最小外包树的节点为外包盒,根节点为缺陷样本的三维模型的外包盒,树中各父节点的子节点为对父节点进行划分得到的外包盒,叶子节点为无法继续划分的外包盒,即最小外包盒。划分的方式可视具体情况选择,例如可以沿外包盒轴向进行划分,或者将外包盒中包含的点平均划分为两个点集等。
请参考图4,本发明一种实施例中提供一种构建缺陷样本的三维模型的最小外包树的方法,该方法包括步骤221~224,其中步骤221为根节点获取步骤,步骤222为外包盒计算步骤,步骤223为子节点划分步骤,步骤224为当前外包树节点更新步骤,下面具体说明。
步骤221:将缺陷样本的三维模型的所有节点组成的集合作为待求节点集合执行步骤222,将获得的外包盒作为缺陷样本的三维模型的最小外包树的根节点,然后将根节点作为当前外包树节点执行步骤223。
步骤222:计算待求节点集合关于空间的协方差矩阵,并据此计算得到待求节点集合的特征方向,以特征方向为外包主方向计算得到待求节点集合的外包盒。
具体地,根据以下公式计算待求节点集合关于空间的协方差矩阵Σ:
其中(x,y,z)表示节点的空间坐标,σ()是计算协方差的算子。
然后计算协方差矩阵Σ的最大特征值对应的特征向量ρ,特征向量ρ的方向就是待求节点集合的特征方向。再以该特征方向为外包主方向求得待求节点集合的外包盒,具体求法可参考现有技术。
步骤223:获取当前外包树节点的中心点,并以当前外包树节点的外包主方向为中心点的法向量,根据中心点及其法向量构造一切分平面,将当前外包树节点所包含的缺陷样本的三维模型的节点划分为两个子集,分别将这两个子集作为待求节点集合执行步骤222,将得到的两个外包盒作为当前外包树节点的两个子节点,执行步骤224。
其中当前外包树节点的中心点为当前外包树节点所包含的所有模型节点的均值位置,即对当前外包树节点所包含的所有模型节点的x坐标、y坐标和z坐标分别取均值,得到的坐标即为当前外包树节点的中心点。
步骤224:分别将两个子节点作为新的当前外包树节点,执行步骤223。
重复执行步骤223和步骤224,直至步骤224中获得的当前外包树节点无法继续划分为止,则完成了缺陷样本的三维模型的最小外包树的构建,例如当前外包树节点只包含一个缺陷样本的三维模型的节点时,则无法继续划分。
步骤230:根据最小外包树中的外包盒与虚拟传感器的相对位置,计算得到缺陷样本的三维模型在虚拟传感器中所形成的颜色图像、法向图和深度图中的一者或多者,那么缺陷样本数据集相应地还可以包括颜色图像、法向图和/或深度图。
可以理解,在获知最小外包树中的外包盒与虚拟传感器的相对位置后,可以根据光学成像原理计算虚拟传感器上的像素点感受到缺陷样本的三维模型上何处的点反射的光线,计算相应的像素值,从而进行成像,这一过程可参考现实世界的成像过程。对于像素值的计算,对于颜色图像可以根据缺陷样本上的点的光场函数值计算,对于法向图可以根据点的法向量计算,对于深度图可以根据点与虚拟相机的距离计算。虚拟相机是在三维模型中虚构的相机,用于模拟现实世界中的相机,每个虚拟传感器可设置一个对应的虚拟相机。
为了便于区分,将用来生成颜色图像的虚拟传感器称为第一虚拟传感器,将用来生成法向图的虚拟传感器称为第二虚拟传感器,将用来生成深度图的虚拟传感器称为第三虚拟传感器。
下面对一些实施例中颜色图像、法向图和深度图的计算方法进行详细说明。
请参考图5,本发明一种实施例中提供一种颜色图像的计算方法,该实施例中步骤210中设置的虚拟传感器包括第一虚拟传感器,该计算方法包括步骤310~350,下面具体说明。
步骤310:设置缺陷样本的三维模型基于预设的第一虚拟传感器的相对空间位置。
步骤320:根据缺陷样本的三维模型的最小外包树选择若干外包盒,根据各外包盒中节点的近似曲率值对外包盒进行空间采样,得到虚拟的光场采样点。
可根据需采样得到的光场采样点的数量选择外包盒进行空间采样,例如可选择最小外包树最底层节点外包盒或次底层节点外包盒等。一种实施例中,为了保持较好的效果并且减少光场采样点的个数,可获取缺陷样本的三维模型的最小外包树的次底层节点外包盒进行空间采样。
一种实施例中,根据各外包盒中节点的近似曲率值对外包盒进行空间采样具体可以是:对每个外包盒,统计其中所有节点的平均近似曲率值并计算得到采样间隔比率/>然后以步长/>对外包盒进行空间采样得到虚拟的光场采样点,其中ki为外包盒中第i个节点的近似曲率值,nB为外包盒中节点的数量,λ为预设的虚拟光场的采样比率值,l、w、h分别为外包盒的长、宽、高。
步骤330:根据预设的虚拟光源位置与光照参数获得所有光场采样点的光场函数值,并获取所有光场采样点的最小外包树。
虚拟光源是在三维模型中虚构的光源,其在三维空间中形成一虚拟光场,光照参数可以包括光线方向、波长、强度等,根据虚拟光源位置与光照参数则可得到三维空间中一点的光场函数值。光场采样点的最小外包树的获取方式可与缺陷样本的三维模型的最小外包树的获取方式相同,请参考步骤220。通过构建光场采样点的最小外包树,可提高查找光场采样点的效率。
步骤340:遍历第一虚拟传感器的所有像素点,对每个像素点执行像素值获取步骤,以获得各像素点的像素值。
步骤350:由第一虚拟传感器各像素点的像素值组成缺陷样本的颜色图像。
对于上述的像素值获取步骤,请参考图6,一种实施例中可包括步骤341和步骤342。
步骤341:获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线及其连续多次的反射直线与缺陷样本的三维模型的交点。
虚拟相机是在三维模型中虚构的相机,可预先设置其位置,则其光心与像素点形成的直线的位置可确定。又由于步骤310中已设置缺陷样本的三维模型基于第一虚拟传感器的相对空间位置,那么缺陷样本的三维模型与直线的相对位置也可确定,因此借助最小外包树,可计算直线与缺陷样本的三维模型的最小外包树中哪些节点相交,进而得到直线与缺陷样本的三维模型的交点。
由于反射光线也可能在传感器中成像,因此本发明将反射光线也考虑进来,使仿真效果更好,除了获取第一虚拟相机的光心与像素点形成的直线与缺陷样本的三维模型的交点,还获取该直线的反射直线与缺陷样本的三维模型的交点。由于光线可能在缺陷样本表面发生连续多次的反射,因此需获取直线连续多次的反射直线与缺陷样本的三维模型的交点。反射直线可根据反射定律求解。
请参考图7,一种实施例中步骤341包括步骤3411~3414,下面具体说明。
步骤3411:获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒。直线与缺陷样本的三维模型的最小外包树的最初相交外包为最小外包树的根节点外包盒,通过最小外包树逐层进行搜索,可以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒。
请参考图8,图8中的矩形表示外包盒,外包盒0为根节点外包盒,外包盒1和外包盒2为外包盒0的子节点,外包盒3和外包盒4为外包盒1的子节点,外包盒5和外包盒6为外包盒2的子节点,外包盒3、4、5和6为最小外包盒。直线l1为第一虚拟相机的光心与像素点形成的直线。则直线l1与缺陷样本的三维模型的最小外包树的最初相交外包为外包盒0,相交的最小外包盒为外包盒3和外包盒4。
步骤3412:遍历这些最小外包盒中所有节点,找出距离第一虚拟相机光心最近的节点作为直线与缺陷样本的三维模型的交点,并将此节点加入候选点集,再以此节点的法向量为对称轴获取前一条直线的对称直线作为新的直线。
其中以交点的法向量为对称轴获取前一条直线的对称直线作为新的直线,是为了模拟光线在缺陷样本表面发生反射的情形,所获得的新的直线作为前一条直线的反射直线。
步骤3413:判断新的直线是否与缺陷样本的三维模型相交,若相交则执行步骤3414,若直线与缺陷样本的三维模型无任何交点则执行步骤342。其中直线与缺陷样本的三维模型相交是指直线与缺陷样本的三维模型的最小外包树中任一外包盒相交。
步骤3414:计算该直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与该直线相交的最小外包盒,然后执行步骤3412。
步骤342:在光场采样点的最小外包树中查找每个交点的预设个数的最邻近光场采样点,利用这些光场采样点的光场函数值计算得到像素点的像素值。
最邻近光场采样点的个数可根据实际需要设置,例如设置为三个、四个等。可以通过对这些光场采样点的光场函数值取平均值或者加权求和等方式计算得到像素点的像素值。
在图7所示的获取直线及其连续多次的反射直线与缺陷样本的三维模型的交点的方法的基础上,步骤342具体可以是:按后入先出的顺序遍历候选点集,对于候选点集中的每个节点,在光场采样点的最小外包树中查找与其在空间中最邻近的三个光场采样点,根据此三个光场采样点的光场函数值计算得到节点的光场数据;根据候选点集中所有节点的光场数据计算得到像素点的像素值。
由于在实际场景中,光线是从光源发出,经物体反射后在传感器成像的,而在前面将节点加入候选点集的过程中是从接近传感器一端开始寻找的,因此这里逆序(即后入先出)遍历候选点集,以更接近真实情形。节点的光场数据可以是对最邻近的三个光场采样点的光场函数值取平均或者加权求和等计算得到。像素点的像素值也可以是对候选点集中所有节点的光场数据取平均或者加权求和等计算得到。
请参考图9,本发明一种实施例中提供一种法向图的计算方法,该实施例中步骤210中设置的虚拟传感器包括第二虚拟传感器,该计算方法包括步骤410~430,下面具体说明。
步骤410:设置缺陷样本的三维模型基于预设的第二虚拟传感器的相对空间位置。
步骤420:遍历第二虚拟传感器的所有像素点,对于每个像素点,获取预设的第二虚拟相机的光心与该像素点形成的直线,计算直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,遍历这些最小外包盒中所有节点,找出距离第二虚拟相机光心最近的节点,利用该节点以及与该节点最邻近的三个节点拟合一平面,将该平面的法向量作为该像素点的像素值。
其中关于搜索缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,可参考上文步骤3411,在此不再赘述。
步骤430:由第二虚拟传感器各像素点的像素值组成缺陷样本的法向图。
请参考图10,本发明一种实施例中提供一种深度图的计算方法,该实施例中步骤210中设置的虚拟传感器包括第三虚拟传感器,该计算方法包括步骤510~530,下面具体说明。
步骤510:设置缺陷样本的三维模型基于预设的第三虚拟传感器的相对空间位置。
步骤520:遍历第三虚拟传感器的所有像素点,对于每个像素点,获取预设的第三虚拟相机的光心与该像素点形成的直线,计算直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,遍历这些最小外包盒中所有节点,找出距离第三虚拟相机光心最近的节点,计算此节点与第三虚拟相机光心的距离,将该距离作为该像素点的像素值。
其中关于搜索缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,可参考上文步骤3411,在此不再赘述。
步骤530:由第三虚拟传感器各像素点的像素值组成缺陷样本的深度图。
本发明的缺陷样本数据集的仿真生成方法可以同时包括上述颜色图像的计算方法、法向图的计算方法、深度图的计算方法中的一个或多个,相应地,缺陷样本数据集可以包括颜色图像、法向图、深度图中的一种或多种。
依据上述实施例的缺陷样本数据集的仿真生成方法,通过将一个或多个预设的三维模型作为缺陷元模型,根据预设的受力状态,对每个缺陷元模型进行动力学仿真,生成对应的缺陷模型;将生成的缺陷模型与无缺陷样本的三维模型进行融合得到缺陷样本的三维模型。采用了基于物理仿真的方式生成缺陷样本数据集,使得生成的缺陷数据集更加符合物理规律,具有一定的先验知识,更加贴近于实际生产过程的缺陷数据。利用该缺陷样本数据集训练后的深度学习模型在实际生产中的缺陷检测准确率得到了提高。
一些实施例中,还可以利用所生成的三维模型生成缺陷样本的具有一致性的多模态数据,包括颜色图像、法向图和深度图等,使得用于缺陷检测的深度学习模型的训练数据具有更多样化的选择,帮助提高最终的缺陷检测的鲁棒性。
一种实施例中还提供一种三维模型的自适应采样方法,由于近似曲率值大的节点更具有特征代表性,因此通过保留近似曲率值大的节点,减少了计算量,可以在提高计算效率的同时有效保持三维模型的关键几何特征。
本领域技术人员可以理解,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的***进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。
Claims (18)
1.一种缺陷样本数据集的仿真生成方法,所述缺陷样本数据集包括缺陷样本的三维模型,其特征在于,所述仿真生成方法包括:
获取无缺陷样本的三维模型;
将一个或多个预设的三维模型作为缺陷元模型,根据预设的受力状态,对每个所述缺陷元模型进行动力学仿真,生成对应的缺陷模型;
将生成的所述缺陷模型与所述无缺陷样本的三维模型进行融合得到缺陷样本的三维模型。
2.如权利要求1所述的仿真生成方法,其特征在于,所述缺陷元模型具有预设的初始参数,所述初始参数包括材质参数;所述受力状态包括受压力、粘力和重力;对所述缺陷元模型进行动力学仿真包括:
对所述缺陷元模型的节点进行采样得到采样节点;
将各采样节点的位置作为其初始位置,并设置各采样节点的初始速度和质量;
根据所述材质参数和各采样节点的质量,计算各采样节点的压力、粘力和重力;
根据各采样节点的压力、粘力和重力计算各采样节点的合成加速度;
根据各采样节点的合成加速度,采用数值积分的方式迭代更新各采样节点的速度和位置,直至达到预设的停止条件。
3.如权利要求2所述的仿真生成方法,其特征在于,所述对所述缺陷元模型的节点进行采样得到采样节点包括:
根据以下公式计算所述缺陷元模型每个节点的近似曲率值:
kpi=<ei,1×ei,2,ei,2×ei,3>+<ei,2×ei,3,ei,3×ei,1>+<ei,3×ei,1,ei,1×ei,2>,
其中pi表示第i个节点,ei,l表示节点pi的第l个最近邻节点与其构成的空间向量,<>表示内积;
对所述缺陷元模型的每个节点进行最邻近搜索,确定在采样半径r范围内的所有节点的数量Np;
对所述缺陷元模型进行栅格化划分,选择每个栅格中近似曲率值最大的Ns个节点作为该栅格的采样节点,其中
其中栅格中节点的个数为Nc+1,Npi为栅格中第i个节点在采样半径r范围内的所有节点的数量。
4.如权利要求2所述的仿真生成方法,其特征在于,所述材质参数包括材料的原始静态密度ρ0和与材质相关的刚性系数k,采样节点的压力通过以下方式计算得到:
获取各采样节点在采样半径r范围内的n+1个最邻近节点其中n为不小于0的整数,pj表示采样节点的第j个最邻近节点;
根据以下公式计算得到各采样节点的密度:
其中ρi表示第i个采样节点的密度,mj表示节点pj的质量,核函数Wρ(pj-pi,r)为采样节点pi、pj和采样半径r的函数,表示为:
其中|| ||表示范数;
利用材料的原始静态密度ρ0、与材质相关的刚性系数k、各采样节点的质量、密度和最邻近节点计算各采样节点的压力Fi press,其中Fi press表示第i个采样节点的压力。
5.如权利要求4所述的仿真生成方法,其特征在于,采样节点的压力Fi press由以下公式确定:
其中Ei表示节点pi处的压强,且Ei=k[(ρi/ρ0)2-1],▽表示梯度算子,核函数Ws(pj-pi,r)为采样节点pi、pj和采样半径r的函数,表示为:
6.如权利要求4所述的仿真生成方法,其特征在于,所述材质参数还包括与材质相关的摩擦系数μ,采样节点的粘力Fi viscosity由以下公式确定:
其中vi表示采样节点pi的速度,表示拉普拉斯算子,核函数Wv(pi-pj,r)为采样节点pi、pj和采样半径r的函数,表示为:
7.如权利要求4所述的仿真生成方法,其特征在于,采样节点的合成加速度由以下公式确定:
其中表示第i个采样节点的合成加速度,Fi resultant表示第i个采样节点的合力,且
Fi resultant=ρig+Fi press+Fi viscosity,
其中Fi viscosity表示第i个采样节点的粘力,g表示重力加速度。
8.如权利要求2所述的仿真生成方法,其特征在于,所述根据各采样节点的合成加速度,采用数值积分的方式迭代更新各采样节点的速度和位置,直至达到预设的停止条件,包括:
根据以下公式迭代更新采样节点的速度和位置,直至达到预设的截止时间:
pi(t+Δt)=pi(t)+Δt×vi(t+Δt),
其中t表示时间,vi(t)表示采样节点pi在时刻t的速度,Δt为预设的时间步长,表示采样节点pi在时刻t的合成加速度,pi(t)表示采样节点pi在时刻t的位置。
9.如权利要求4所述的仿真生成方法,其特征在于,所述将生成的所述缺陷模型与所述无缺陷样本的三维模型进行融合得到缺陷样本的三维模型,包括:
设置缺陷在无缺陷样本的三维模型中可能存在的区域;
生成所述缺陷模型的一个随机的姿态;
将所述缺陷模型置于所设置的区域中,并根据生成的姿态进行变换;
遍历变换后的所述缺陷模型的所有节点,对于每一个节点,在所述无缺陷样本的三维模型中进行最邻近搜索,当该节点与搜索到的最邻近节点的距离大于r时,将该节点加入所述无缺陷样本的三维模型中,当该节点与最邻近节点的距离小于r时,计算该节点与最邻近节点连线的中心位置,将最邻近节点的位置更新为该中心位置。
10.如权利要求1所述的仿真生成方法,其特征在于,还包括:
设置一个或多个虚拟传感器;
获取缺陷样本的三维模型的最小外包树,所述最小外包树的根节点为缺陷样本的三维模型的外包盒,树中各父节点的子节点为对父节点进行划分得到的外包盒,叶子节点为无法继续划分的外包盒;
根据所述最小外包树中的外包盒与所述虚拟传感器的相对位置,计算得到缺陷样本的三维模型在所述虚拟传感器中所形成的颜色图像、法向图和深度图中的一者或多者,所述缺陷样本数据集还包括所述颜色图像、法向图和/或深度图。
11.如权利要求10所述的仿真生成方法,其特征在于,所述虚拟传感器包括第一虚拟传感器,所述第一虚拟传感器具有多个像素点,所述颜色图像通过以下方式计算得到:
设置缺陷样本的三维模型基于预设的第一虚拟传感器的相对空间位置;
根据缺陷样本的三维模型的最小外包树选择若干外包盒,根据各外包盒中节点的近似曲率值对外包盒进行空间采样,得到虚拟的光场采样点;
根据预设的虚拟光源位置与光照参数获得所有光场采样点的光场函数值,并获取所有光场采样点的最小外包树;
遍历所述第一虚拟传感器的所有像素点,对每个像素点执行像素值获取步骤,以获得各像素点的像素值;
由各像素点的像素值组成缺陷样本的颜色图像;
所述像素值获取步骤包括:
获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线及其连续多次的反射直线与缺陷样本的三维模型的交点;
在光场采样点的最小外包树中查找每个交点的预设个数的最邻近光场采样点,利用这些光场采样点的光场函数值计算得到像素点的像素值。
12.如权利要求11所述的仿真生成方法,其特征在于,所述获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线及其连续多次的反射直线与缺陷样本的三维模型的交点,包括:
获取预设的第一虚拟相机的光心与像素点形成的直线,计算该直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒;
遍历这些最小外包盒中所有节点,找出距离第一虚拟相机光心最近的节点作为直线与缺陷样本的三维模型的交点,并将此节点加入候选点集,再以此节点的法向量为对称轴获取前一条直线的对称直线作为新的直线,计算新的直线与缺陷样本的三维模型的交点并加入候选点集,直至新的直线与缺陷样本的三维模型无任何交点为止,其中所获得的新的直线作为前一条直线的反射直线。
13.如权利要求12所述的仿真生成方法,其特征在于,所述在光场采样点的最小外包树中查找每个交点在空间中最邻近的预设个数的光场采样点,利用这些光场采样点的光场函数值计算得到像素点的像素值,包括:
按后入先出的顺序遍历候选点集,对于候选点集中的每个节点,在光场采样点的最小外包树中查找与其在空间中最邻近的三个光场采样点,根据此三个光场采样点的光场函数值计算得到节点的光场数据;
根据候选点集中所有节点的光场数据计算得到像素点的像素值。
14.如权利要求11所述的仿真生成方法,其特征在于,所述根据缺陷样本的三维模型的最小外包树选择若干外包盒,根据各外包盒中节点的近似曲率值对外包盒进行空间采样,得到虚拟的光场采样点,包括:
获取缺陷样本的三维模型的最小外包树的次底层节点外包盒;
对每个外包盒,统计其中所有节点的平均近似曲率值并计算得到采样间隔比率/>然后以步长/>对外包盒进行空间采样得到虚拟的光场采样点,其中ki为外包盒中第i个节点的近似曲率值,nB为外包盒中节点的数量,λ为预设的虚拟光场的采样比率值,l、w、h分别为外包盒的长、宽、高。
15.如权利要求10所述的仿真生成方法,其特征在于,所述虚拟传感器包括第二虚拟传感器,所述第二虚拟传感器具有多个像素点,所述法向图通过以下方式计算得到:
设置缺陷样本的三维模型基于预设的第二虚拟传感器的相对空间位置;
遍历所述第二虚拟传感器的所有像素点,对于每个像素点,获取预设的第二虚拟相机的光心与该像素点形成的直线,计算直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,遍历这些最小外包盒中所有节点,找出距离第二虚拟相机光心最近的节点,利用该节点以及与该节点最邻近的三个节点拟合一平面,将该平面的法向量作为该像素点的像素值;
由第二虚拟传感器各像素点的像素值组成缺陷样本的法向图。
16.如权利要求10所述的仿真生成方法,其特征在于,所述虚拟传感器包括第三虚拟传感器,所述第三虚拟传感器具有多个像素点,所述深度图通过以下方式计算得到:
设置缺陷样本的三维模型基于预设的第三虚拟传感器的相对空间位置;
遍历所述第三虚拟传感器的所有像素点,对于每个像素点,获取预设的第三虚拟相机的光心与该像素点形成的直线,计算直线与缺陷样本的三维模型的最小外包树的最初相交外包,从最初相交外包开始逐层进行搜索,以获得缺陷样本的三维模型的最小外包树中与直线相交的最小外包盒,遍历这些最小外包盒中所有节点,找出距离第三虚拟相机光心最近的节点,计算此节点与第三虚拟相机光心的距离,将该距离作为该像素点的像素值;
由第三虚拟传感器各像素点的像素值组成缺陷样本的深度图。
17.如权利要求10所述的仿真生成方法,其特征在于,所述获取缺陷样本的三维模型的最小外包树包括:
根节点获取步骤,将缺陷样本的三维模型的所有节点组成的集合作为待求节点集合执行外包盒计算步骤,将获得的外包盒作为缺陷样本的三维模型的最小外包树的根节点;将根节点作为当前外包树节点;
子节点划分步骤,获取当前外包树节点的中心点,并以当前外包树节点的外包主方向为中心点的法向量,根据中心点及其法向量构造一切分平面,将当前外包树节点所包含的缺陷样本的三维模型的节点划分为两个子集,分别将这两个子集作为待求节点集合执行外包盒计算步骤,将得到的两个外包盒作为当前外包树节点的两个子节点;
当前外包树节点更新步骤,分别将两个子节点作为新的当前外包树节点;
重复执行所述子节点划分步骤和所述当前外包树节点更新步骤,直至当前外包树节点无法继续划分为止;
其中外包盒计算步骤包括:计算待求节点集合关于空间的协方差矩阵,并据此计算得到待求节点集合的特征方向,以特征方向为外包主方向计算得到待求节点集合的外包盒。
18.一种计算机可读存储介质,其特征在于,所述介质上存储有程序,所述程序能够被处理器执行以实现如权利要求1-17中任一项所述的仿真生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310301707.5A CN116484585A (zh) | 2023-03-13 | 2023-03-13 | 缺陷样本数据集的仿真生成方法、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310301707.5A CN116484585A (zh) | 2023-03-13 | 2023-03-13 | 缺陷样本数据集的仿真生成方法、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116484585A true CN116484585A (zh) | 2023-07-25 |
Family
ID=87212855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310301707.5A Pending CN116484585A (zh) | 2023-03-13 | 2023-03-13 | 缺陷样本数据集的仿真生成方法、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116484585A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117974910A (zh) * | 2024-03-29 | 2024-05-03 | 南京航空航天大学苏州研究院 | 图像仿真、伪随机缺陷数据集生成及微纳缺陷检测方法 |
-
2023
- 2023-03-13 CN CN202310301707.5A patent/CN116484585A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117974910A (zh) * | 2024-03-29 | 2024-05-03 | 南京航空航天大学苏州研究院 | 图像仿真、伪随机缺陷数据集生成及微纳缺陷检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7078392B2 (ja) | 深度センサノイズ | |
Dimitrov et al. | Vision-based material recognition for automated monitoring of construction progress and generating building information modeling from unordered site image collections | |
CN105378796B (zh) | 可伸缩体积3d重构 | |
JP7343963B2 (ja) | 画像を入力とする関数を学習するためのデータセット | |
US11436795B2 (en) | Learning a neural network for inference of editable feature trees | |
US11210866B2 (en) | Forming a dataset for inference of editable feature trees | |
CN107038751A (zh) | 从2d图像进行3d建模对象的识别 | |
JP6888484B2 (ja) | 検索プログラム、検索方法、及び、検索プログラムが動作する情報処理装置 | |
JP2014096152A (ja) | ポイントクラウド内の埋め戻しポイント | |
JP7294788B2 (ja) | 3d配置のタイプに応じた2d画像の分類 | |
US11328182B2 (en) | Three-dimensional map inconsistency detection using neural network | |
JP2021131854A (ja) | 変形の基礎学習 | |
CN116484585A (zh) | 缺陷样本数据集的仿真生成方法、计算机可读存储介质 | |
JP2022184829A (ja) | 3d形状最適化のためのディープパラメータ化 | |
Wong et al. | Not seeing is also believing: Combining object and metric spatial information | |
CN107016732A (zh) | 使用描述符的3d对象定位 | |
Ul Islam et al. | Learning typical 3D representation from a single 2D correspondence using 2D-3D transformation network | |
CN107066926A (zh) | 使用描述符的3d对象定位 | |
Shui et al. | Automatic planar shape segmentation from indoor point clouds | |
Tang et al. | Skeleton-guided generation of synthetic noisy point clouds from as-built BIM to improve indoor scene understanding | |
US20240028784A1 (en) | Segmenting a building scene | |
Varga et al. | Contribution to generative modelling and classification of 3d images | |
Prasad | Deep learning frameworks for point cloud reconstruction | |
Ellefi et al. | A Bit on the Right, A Bit on the Left: Towards Logical Bundle Adjustment | |
EP4152270A1 (en) | Method of generating an interactive three-dimensional simulation of a section of an industrial facility |
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 |