基于学习的网格特征边界边识别

合集下载

图像边缘检测的方法

图像边缘检测的方法

图像边缘检测的方法图像边缘检测是在计算机视觉领域中一项重要的任务,它可以用来提取图像中物体的轮廓或边界信息。

常用的图像边缘检测方法包括基于梯度的方法、基于边缘模型的方法和基于机器学习的方法。

1. 基于梯度的方法基于梯度的方法通过计算图像中灰度的梯度来检测图像的边缘。

常用的基于梯度的方法包括Sobel算子、Prewitt算子和Canny算子。

(1)Sobel算子:Sobel算子是一种常用的边缘检测算子,它通过在图像中滑动一个3x3的卷积核来计算图像灰度的梯度。

它分别计算水平和垂直方向上的梯度,并将两个方向上的梯度相加得到最终的边缘强度。

(2)Prewitt算子:Prewitt算子与Sobel算子类似,也是通过计算图像灰度的水平和垂直方向上的梯度来检测边缘。

不同之处在于Prewitt算子使用了不同的卷积核,其效果也有所差异。

(3)Canny算子:Canny算子是一种边缘检测算法,它通过多个步骤来获得较为准确的边缘结果。

首先,它使用高斯滤波器对图像进行平滑处理,然后计算图像灰度梯度的幅值和方向。

接着,通过非极大值抑制来细化边缘。

最后,使用双阈值处理来检测和连接真正的边缘。

2. 基于边缘模型的方法基于边缘模型的方法是利用边缘在图像中的几何特征来进行检测。

常用的基于边缘模型的方法包括Hough变换和边缘跟踪算法。

(1)Hough变换:Hough变换是一种广泛应用于边缘检测的方法,它可以将图像中的边缘表示为参数空间中的曲线或直线。

通过在参数空间中寻找曲线或直线的交点,可以得到图像中的边缘。

(2)边缘跟踪算法:边缘跟踪算法是一种基于像素领域关系的边缘检测方法。

它首先选择一个起始点作为边缘点,然后根据一定的规则选择下一个与当前点相邻的点作为新的边缘点,并将其加入到边缘集合中。

通过不断跟踪边缘点,可以得到完整的边缘。

3. 基于机器学习的方法基于机器学习的方法是近年来较为流行的一种图像边缘检测方法。

它利用大量的已标注的训练数据来训练模型,然后使用训练好的模型对新的图像进行边缘检测。

yolov8 实例分割算法

yolov8 实例分割算法

yolov8 实例分割算法Yolov8实例分割算法引言实例分割是计算机视觉领域中的一项重要任务,旨在将图像中的每个像素与特定的实例对象相对应。

Yolov8是一种流行的实例分割算法,它基于深度学习和目标检测技术,能够高效准确地识别和分割图像中的物体。

本文将介绍Yolov8实例分割算法的原理、特点以及应用领域。

一、Yolov8算法原理Yolov8算法是基于深度学习的实例分割算法,其核心思想是将图像分割为一系列网格,并为每个网格预测物体的类别和边界框。

Yolov8的主要步骤如下:1. 网络架构:Yolov8采用了Darknet-53作为其主干网络,该网络由53个卷积层组成,能够有效提取图像的特征。

2. 特征提取:Yolov8通过在Darknet-53网络中的不同层级提取特征,以获得多尺度的特征图。

这些特征图将用于检测不同大小的物体。

3. 边界框预测:对于每个网格,Yolov8通过卷积层预测多个边界框,每个边界框包含物体的位置和大小信息。

同时,为每个边界框预测物体的类别概率。

4. 非极大值抑制:为了消除重叠的边界框,Yolov8使用非极大值抑制算法,选择具有最高置信度的边界框,并抑制与其重叠度高于阈值的边界框。

5. 实例分割:最后,Yolov8根据边界框的位置和大小信息,将图像中的像素分配给特定的实例对象,实现实例分割的目标。

二、Yolov8算法特点Yolov8算法具有以下特点:1. 高效性:Yolov8采用了一种单阶段的检测方法,通过在整个图像上进行预测,而不需要候选区域提取的过程,因此具有较高的检测效率。

2. 准确性:Yolov8基于深度学习的方法,能够学习到更丰富的特征表示,提高物体检测和分割的准确性。

3. 多尺度检测:Yolov8通过多尺度的特征图进行物体检测,能够检测不同大小的物体,并具有较好的尺度适应性。

4. 实时性:Yolov8在保持较高准确性的同时,能够在实时场景下进行实例分割,适用于各种实时应用场景。

图像识别中的边缘检测方法综述(三)

图像识别中的边缘检测方法综述(三)

图像识别中的边缘检测方法综述引言:图像边缘检测是计算机视觉领域的基础任务之一,在目标检测、图像分割和特征提取等应用中起着重要作用。

边缘是图像中亮度、颜色或纹理等特征发生突变的区域,是图像中物体轮廓的重要线索。

本文将综述图像识别中常用的边缘检测方法,并对比其优劣,以期对该领域的研究提供一定的参考。

一、传统边缘检测方法Sobel算子Sobel算子是一种常用的基于梯度计算的边缘检测算法。

它通过计算图像中每个像素点的梯度幅值和方向来实现边缘检测。

然而,Sobel算子对噪声敏感,且只能检测垂直和水平方向的边缘,不能满足复杂场景的需求。

Canny算子Canny算子是一种基于多阶段操作的边缘检测算法,首先利用高斯滤波器对图像进行平滑处理,然后计算梯度幅值和方向,再进行非极大值抑制、双阈值处理和边缘连接等步骤。

Canny算子具有良好的抗噪能力和边缘定位精度,广泛应用于图像识别中。

二、深度学习边缘检测方法基于卷积神经网络的边缘检测随着深度学习的兴起,基于卷积神经网络的边缘检测方法也逐渐成为研究热点。

通过搭建深层卷积神经网络模型,可以实现端到端的边缘检测任务。

这些方法可以自动学习图像的特征表示,具有较好的泛化能力和鲁棒性。

基于生成对抗网络的边缘检测生成对抗网络(GAN)是一种用于生成数据的模型,近年来也被应用于图像边缘检测任务中。

通过训练生成器和判别器两个网络之间的博弈过程,生成对抗网络可以学习到图像的边缘特征,并生成高质量的边缘图像。

这些方法可以有效解决传统边缘检测方法无法处理的复杂场景。

三、边缘检测方法的评价指标为了评估不同边缘检测方法的性能,通常可以使用一些常见的评价指标。

其中最常用的指标是精度和召回率,它们分别表示检测到的边缘与真实边缘之间的重叠程度。

其他指标还包括F1分数、平均绝对误差和均方误差等。

结论:本文综述了图像识别中常用的边缘检测方法,包括传统方法和深度学习方法。

传统方法如Sobel算子和Canny算子具有一定的局限性,而基于卷积神经网络和生成对抗网络的方法具有更好的性能和泛化能力。

三维封闭三角网格孔洞边界识别算法 - 计算机工程

三维封闭三角网格孔洞边界识别算法 - 计算机工程

—177—三维封闭三角网格孔洞边界识别算法孔令霞,姚 远,胡庆夕(上海大学快速制造工程中心,上海 200444)摘 要:针对三维封闭三角网格模型的缺失实体孔洞,提出一种边界识别算法。

以手绘曲线作为输入,结合轮廓线法得到目标孔洞的近似边界点集,生成连续的孔洞轮廓线。

按照曲线点集并以孔洞轮廓线辅助搜索孔洞的上边界,根据上边界向下搜索得到孔洞的下边界。

该算法可用于满足二维流形、可定向及封闭的三角网格模型上孔洞边界的定位,能够简化孔洞边界的定位过程,提高设计系统的易用性。

关键词:封闭网格;曲线平滑;轮廓线渲染;边界识别Hole Boundary Identification Algorithmfor 3D Closed Triangle MeshKONG Ling-xia, YAO Yuan, HU Qing-xi(Engineering Center for Rapid Manufacturing, Shanghai University, Shanghai 200444, China)【Abstract 】An entity hole boundary identification algorithm for 3D closed triangle mesh hole is presented in this paper. The area sounding the hole is selected by a smoothed curve which is dragged by the mouse. By using the dot product between the triangle normal and the viewing direction, the model silhouettes, and a continuous hole silhouette can be obtained. The 3D hole boundaries of the inner surface and the outer surface can be searched according to the curve point set and the hole silhouette. This whole flow is used to simplify the interactive operation for the identification of hole boundaries on the model which is a 2-manifold, oriented, closed and non-simple connected triangle mesh, which can improve the convenience for design system.【Key words 】closed mesh; curve smooth; silhouettes rendering; boundary identification计 算 机 工 程 Computer Engineering 第36卷 第18期Vol.36 No.18 2010年9月September 2010·图形图像处理· 文章编号:1000—3428(2010)18—0177—03文献标识码:A中图分类号:TP3911 概述孔洞是曲面的重要特征之一。

一种新的基于网格的边界点检测算法

一种新的基于网格的边界点检测算法

的执行效率。最后通过仿 真试验 表明本 方法是有效 的
可行的 。
不多 , 主要 有 B R E 算法和 B I 算法。 O DR R M
参 考文献…中 B R E 界 点检测该 算法 有以 下 O 边界 点是分 布于稠 密分布 的数据 边缘 的数 据点。 在数据挖 掘应 用 方面 , 需要 注 意 , 界 点不 同 于孤 立 边 点。孤 立点是分 布于稀 疏 区域 的点, 边界 点是 分布 而 于稠密区域边 缘的点 。
该算 法的主要思想 :
S p: t 1找出对象 P的 E s e p 邻域 内密度吸 引点 o ,以
・ -
王X I l其中, 是该单元格中样品的个数, 表示第 i I n i 维
l ≤d X 表示第 i ≤i , 个样品 的第 i 个属性 , 离度量 使 距 用欧几里德距离 。
定义 7 格 gi 坐标 表示为 ( . x …x : r d x, . …x ) _ 与 d 格 gi 坐标表示为 ( l Y …Y j I ri d Y jp . …Y 的相邻 面满足 以 l r d 下条件 : ( )格 gi 与格 gi 是相邻格。 1 r d r d ( )格 gi 与格 gi 的坐 标 中有 且仅 有 一个 r 2 r d r d 满足 x = I l ≤d 。 ” Y 【 ≤r ) r
向量 p o为 始 向量 ;
Se 2 搜 索对象 P的 Es邻域 内异与对 象 P O的 tp : p ,
— —
_
任 意对象 q 判断向量 p , o与 p q的内积是 否大于 0 若 , 大于 0, 对象 q为正半邻 域的对象 , 否则为 负半邻域 的 对象 , 并统计各个邻域内对象个数 ; Se 3 再依 据边界度 6 正半邻域 的对象个数 与负 tp : ( 半邻域 的对象个数之 比乘 以两个邻域 内的对象个数 正

yolo识别原理

yolo识别原理

yolo识别原理YOLO(You Only Look Once)是一种基于深度学习的目标检测算法,其原理是通过对图像进行全局分析,同时预测图像中的多个目标及其位置。

相较于传统的目标检测算法,YOLO具有较高的实时性和准确性。

YOLO的核心思想是将目标检测任务转化为单个神经网络的回归问题。

该网络将输入图像分成SxS个网格,每个网格负责预测出一个或多个目标的边界框和类别概率。

每个边界框由5个参数来描述:目标的中心坐标、宽度、高度以及包含目标的置信度。

类别概率则表示该边界框中包含的目标属于不同类别的概率。

YOLO通过卷积神经网络提取图像特征,利用全连接层将特征映射到边界框参数和类别概率上。

在训练阶段,通过与真实边界框进行比较,计算预测边界框与真实边界框之间的损失,然后使用反向传播算法更新网络参数。

在测试阶段,根据预测边界框的置信度和类别概率进行筛选,将置信度高的边界框作为最终的目标检测结果。

YOLO的优点之一是速度快。

由于YOLO将目标检测任务转化为单个神经网络的回归问题,整个图像只需要经过一次前向传播即可得到目标检测结果,因此可以实时地检测图像中的目标。

此外,YOLO在提取图像特征的同时进行目标检测,避免了多次重复的特征提取过程,进一步提高了检测速度。

YOLO的另一个优点是准确性高。

由于YOLO将目标检测任务视为全局回归问题,对整个图像进行分析,因此可以捕捉到目标的全局上下文信息,从而提高了检测的准确性。

此外,YOLO还采用了多尺度训练和测试策略,通过在不同尺度下训练网络和检测目标,使得YOLO对于不同大小的目标具有较好的适应性。

然而,YOLO也存在一些缺点。

首先,YOLO在检测小目标时存在较大的误差,这是因为较小的目标在图像中所占比例较小,容易被分配到较低分辨率的网格中,导致目标检测的精度下降。

其次,YOLO对于密集目标的检测效果较差,当多个目标密集排列在一起时,网络往往只能检测到其中的一部分目标。

VTK图形基本操作进阶_网格模型的特征边与封闭性检测

VTK图形基本操作进阶_⽹格模型的特征边与封闭性检测1.封闭性检测由于受原始数据、重建⽅法的限制,得到的⽹格模型并不是封闭的。

有时为了显⽰或者处理某些要求,需要⽹格必须是封闭的。

封闭性⽹格应该⽐较好理解,⽐如⼀个球形⽹格。

1.1⽹格模型边的分类之前也有提到过边界边的概念:如果⼀条边只被⼀个多边形包含,那么这条边就是边界边。

是否存在边界边是检测⼀个⽹格模型是否封闭的重要特征。

vtkFeatureEdges是⼀个⾮常重要的类,该类能够提取多边形⽹格模型中四种类型的边。

边界边:只被⼀个多边形或者⼀条边包围的边。

⾮流形边:被三个或者三个以上多边形包围的边;特征边:需要设置⼀个特征⾓的阈值,当包含同⼀条边的两个三⾓形的法向量的夹⾓⼤于该阈值时,即为⼀个特征边。

流⾏边:只被两个多边形包含的边。

1.2 ⽹格封闭性判断可以通过使⽤vtkFeatureEdges类检测是否存在边界边,洁⼉判断⽹格是否封闭。

⽰例代码如下:1 #include <vtkAutoInit.h>2 VTK_MODULE_INIT(vtkRenderingOpenGL);3 VTK_MODULE_INIT(vtkRenderingFreeType);4 VTK_MODULE_INIT(vtkInteractionStyle);56 #include <vtkSmartPointer.h>7 #include <vtkSphereSource.h>8 #include <vtkIdTypeArray.h>9 #include <vtkSelectionNode.h>10 #include <vtkSelection.h>11 #include <vtkExtractSelection.h>12 #include <vtkDataSetSurfaceFilter.h>13 #include <vtkInformation.h>14 #include <vtkProperty.h>15//⽣成带孔洞的⽹格球16void GenerateData(vtkSmartPointer<vtkPolyData> input)17 {18 vtkSmartPointer<vtkSphereSource> sphereSource =19 vtkSmartPointer<vtkSphereSource>::New();20 sphereSource->Update();2122//提供了插⼊和检索值的⽅法,并会⾃动调整⼤⼩以保存新数据23 vtkSmartPointer<vtkIdTypeArray> ids =24 vtkSmartPointer<vtkIdTypeArray>::New();25 ids->SetNumberOfComponents(1);26 ids->InsertNextValue(2);27 ids->InsertNextValue(10);2829//选择树中的节,⽤于存储选择结果30 vtkSmartPointer<vtkSelectionNode> selectionNode =31 vtkSmartPointer<vtkSelectionNode>::New();32 selectionNode->SetFieldType(vtkSelectionNode::CELL);33 selectionNode->SetContentType(vtkSelectionNode::INDICES);34 selectionNode->SetSelectionList(ids);35 selectionNode->GetProperties()->Set(vtkSelectionNode::INVERSE(), 1);3637 vtkSmartPointer<vtkSelection> selection =38 vtkSmartPointer<vtkSelection>::New();39 selection->AddNode(selectionNode);4041//从vtkdataset提取⼦集,删除操作42 vtkSmartPointer<vtkExtractSelection> extractSelection =43 vtkSmartPointer<vtkExtractSelection>::New();44 extractSelection->SetInputData(0, sphereSource->GetOutput());45 extractSelection->SetInputData(1, selection);46 extractSelection->Update();4748//vtkDataSetSurfaceFilter是更快版本的vtkgeometry滤波器49//但它没有⼀个选择范围。

图像识别中的边缘检测方法综述(四)

图像识别中的边缘检测方法综述引言:图像识别是计算机视觉领域的重要研究方向之一,在许多实际应用中都起着重要的作用。

边缘检测是图像处理中的一项基本任务,它能够帮助我们识别图像中的物体边界,并进一步进行目标检测、分割等处理。

随着深度学习等技术的发展,图像边缘检测方法也得到了长足的进步和发展。

本文将综述图像识别中的边缘检测方法。

一、经典边缘检测算法Roberts算子Roberts算子是一种经典的边缘检测算法,它通过计算图像中每个像素的梯度来检测边缘。

该算法简单高效,但对于噪声敏感,容易产生误检测。

Sobel算子Sobel算子是另一种常用的边缘检测算法,它通过在图像中应用一组卷积核来计算每个像素的梯度。

Sobel算子相比于Roberts算子能够更好地抑制噪声,对于边缘检测效果较好。

Canny边缘检测算法Canny边缘检测算法是一种经典且广泛应用的边缘检测算法,它结合了梯度信息和非极大值抑制,能够检测出图像中的细微边缘,并且对噪声具有较好的抑制效果。

Canny算法的核心思想是通过非极大值抑制和双阈值处理来提取图像的边缘。

二、基于深度学习的边缘检测方法基于卷积神经网络的边缘检测方法随着深度学习的发展,基于卷积神经网络的边缘检测方法逐渐成为主流。

这类方法通过训练神经网络来学习图像中的边缘特征,从而实现边缘检测。

常用的网络结构有U-Net、FCN等,它们在边缘检测任务上取得了很好的效果。

基于生成对抗网络的边缘检测方法生成对抗网络(GAN)是一种强大的生成模型,近年来在图像生成任务上取得了巨大的成功。

借助GAN的生成能力,研究人员提出了基于生成对抗网络的边缘检测方法。

这类方法能够生成真实感边缘,并且对于复杂场景中的边缘检测效果优于传统的算法。

三、边缘检测方法的评价指标在比较不同边缘检测方法时,我们需要一些评价指标来度量算法的性能。

常用的评价指标包括精确率、召回率、F1-score等。

其中精确率表示检测出的边缘中正确的比例,召回率表示样本中正确检测出的边缘比例,F1-score是精确率和召回率的调和平均值。

基于网格熵的边界点检测算法

(colfI om t nadE gne n,Z egh uU i rt,Z eghuH nn4 0 5 ,C i ) Sho frai n nier g hnzo n e i o n o i v sy hnzo ea 5 0 2 hn a
A b tac : I r e odee tt o nd r o ns o lse s efci ey te c n pto rd— nr p d a g i e r p - s r t n o d rt tc he b u a y p i t fcu tr fe tv l , h o ce fg i e to y an rd-nto y
据 点 的边 界 度 , 据 边 界 度 进 行 边 界 点 的 提 取 。它 解 决 了 根
类别 中个体的相似度尽可能大 , 而不 同类 别 中个体 的相似
度 尽 可 能小 。 目前 已 经 提 出 了 大 量 聚 类 算 法 , 对 聚类 边 界 但
点的研究还较 少。边 界点是 位于分布 稠密 的数 据 ( 如聚类 ) 边缘的数据对象 , 它们可能具有两个或两个 以上聚类的特征 , 它们可能蕴含着某些重要 的 、 有趣 的特征。边 界点在 实际应 用中具有很高 的研究 价值 , 例如 在疾病 防治 领域 ( 边界 点代 表那些 本应该患有某种疾病而事 实上没有患病 的人群 , 对其 研究可能会揭示 出该疾病更深层 次的患病机理 , 助于对其 有
a d ef in l n v r u aa es n f c e t o a o s d ts t、 i y i
Ke o d y w r s:bo n r o ns g i e to y; cu tr u day p i t; rd— nr p lse s
聚类分析 是数据挖 掘 中非常 活跃 的研 究领 域 。聚类 是 将 给定 的数 据 集 划 分成 不 同类 别 ( 称 为 一 个 聚 类 ) 使 同 或 ,

了解计算机视觉技术中的边界提取算法

了解计算机视觉技术中的边界提取算法计算机视觉技术中的边界提取算法是一项关键技术,它在图像和视频处理中起着重要的作用。

边界提取算法可以用于对象检测、形状分析、图像分割和目标识别等诸多领域。

本文将介绍常用的边界提取算法,包括基于梯度的算法、基于模型的算法和基于深度学习的算法等。

在计算机视觉中,边界是表示图像信息变化的重要特征。

不同于图像中的纹理和颜色信息,边界提供了图像中物体之间的分离信息。

因此,边界提取算法可以帮助我们更好地理解图像中的物体结构和形状。

最常用的边界提取算法之一是基于梯度的算法,例如Sobel算子和Canny边缘检测算法。

Sobel算子是一种简单而有效的边缘检测算法,它通过计算图像中像素灰度值的梯度来检测边界。

Sobel算子将图像分别在水平和垂直方向进行卷积运算,然后通过两个方向上的梯度值来计算边缘的强度和方向。

相比之下,Canny边缘检测算法更加复杂且准确。

Canny算法首先对图像进行高斯滤波,以平滑图像并降低噪声。

然后,它计算图像的梯度,并根据梯度的幅值和方向来确定边界。

最后,Canny算法利用非极大值抑制和双阈值策略来精确地检测边界,从而提高边缘检测的准确性和稳定性。

除了基于梯度的算法,基于模型的算法也被广泛应用于边界提取。

基于模型的算法通过拟合图像边界的数学模型来提取边界。

例如,Hough变换是一种经典的基于模型的算法,它用于检测图像中的直线和圆。

Hough变换通过在参数空间中检测图像变换的最高累加值来识别边界形状。

另一种常见的基于模型的边界提取算法是活动轮廓模型(Active Contour Model),也称为“蛇”模型。

活动轮廓模型基于图像的灰度分布和边缘梯度信息来定义能量函数,然后使用优化算法来调整轮廓的位置和形状,以逐步逼近图像中的边界。

近年来,随着深度学习的快速发展,基于深度学习的边界提取算法也取得了显著的进展。

深度学习模型可以通过大量的标注数据进行训练,学习到复杂的图像特征和边界表达,从而实现更准确的边界提取。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Keywords
Triangular Mesh Model, Feature Boundary Edge, Machine Learning, Curvature, BP-AdaBoost Classifier
基于学习的网格特征边界边识别
张百云,张应中,罗晓芳
大连理工大学机械工程学院,辽宁 大连 收稿日期:2018年4月4日;录用日期:2018年4月19日;发布日期:2018年4月26日
DOI: 10.12677/csa.2018.84054
489
计算机科学与应用
张百云 等
征的数值描述。本文给定射线精度 α = 4 ,张角 θ = 30 ,120 计算得到形状直径函数(SDF) [ 前面已经介绍,特征边界线与应用或者是语义相关,有领域知识的人可以感受模型的几何特征的变 化,结合识别的需求,确定特征边界线。 在三角网格模型中,复杂的几何表面被离散为小的三角面片,通常三角面片的边是局部几何变化集 中处, 因此本文选择三角形一条边作为分析和处理单元, 特征边界的边都是由一组三角形边组成。 这样, 特征边界线识别问题可以转化为三角面边的二元分类问题,即如果是边界,则分类值为 1,否则为−1。
Learning-Based Identification for Feature Boundary Edges of Meshes
Baiyun Zhang, Yingzhong Zhang, Xiaofang Luo
School of Mechanical Engineering, Dalian University of Technology, Dalian Liaoning Received: Apr. 4 , 2018; accepted: Apr. 19 , 2018; published: Apr. 26 , 2018
3. 基于学习的特征边界识别
3.1. 识别方法的总体方案
根据上述特征边界线分析,采用传统的单一几何特征和阈值方法很难准确识别实际所需要的特征边 界。本文提出基于学习的特征边界识别方法,识别的总体方案如图 2 所示。 从图 2 可以看出,基于学习的特征边界识别方法由如下两部分组成: 1) 特征边界识别学习模型 基于学习的识别方法的中心点是将特征边界识别形式化为一个边界的分类问题。首先收集一批相同 工程意义的零件网格模型,并且通过人工识别标记需要识别的边界,分类模型通过对已标记的网格模型 进行学习训练,学习就是通过输入一组训练数据集产生一个分类函数。训练数据集由一组正确标记网格 边计算得到的几何特征向量,分类器选择 AdaBoost,AdaBoost 是一种迭代算法,其核心思想是针对同一 个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强 分类器)。 2) 特征边界识别模型 训练好的边界识别模型就可以作为识别模型,去识别实际中需要识别网格模型。当然,开始识别的 结果还比较粗糙,需要对边界不断细化。本文不作详细介绍,重点论述学习模型。
Computer Science and Application 计算机科学与应用, 2018, 8(4), 487-495 Published Online April 2018 in Hans. /journal/csa https:///10.12677/csa.2018.84054


特征边界边识别是复杂三角网格模型后续应用的基础,采用单一阈值和判定规则很难识别符合实际要求
文章引用: 张百云, 张应中, 罗晓芳. 基于学习的网格特征边界边识别[J]. 计算机科学与应用, 2018, 8(4): 487-495. DOI: 10.12677/csa.2018.84054
张百云 等
的特征边。对特征边界线的几何特征的深入分析,基于机器学习的方法,提出和实现一个基于学习的三 角网格模型特征边界边识别方法。该方法将特征边界线识别形式化为三角边的分类问题;分析和构建了 一个由三角边两面角、边顶点邻域曲率及形状直径等特征组成的17维特征向量;通过人工标注获取特征 向量训练数据集,训练通用BP-AdaBoost分类器,获得能够识别特征边界线的分类器;对待识别的三角 网格模型进行特征边识别。经过实例验证,识别结果符合预期。
特征面之间交线构成特征边界线。因此特征边界线的确定也是与不同的应用相关的。
2.2. 特征边界线的几何特征
2.2.1. 主要几何特征 特征边界线一般是几何表面变化的交线,经过多年的计算机图形学研究和发展,研究和总结了大量 关于几何表面的描述特征,主要特征如下: 1) 二面角(Dihedral angle):两个三角形面之间的夹角。在三角网格模型中,通常特征边界边处的二 面角都小于平坦处的二面角,即二面角小于某一给定阈值的边可能是边界边,反之,则不是。 2) 曲率(Curvature):曲线的曲率就是针对曲线上某个点的切线方向角对弧长的转动率,通过微分来 定义,它表明了曲线偏离直线的程度,曲率是几何体不平坦程度的一种衡量。在三维欧氏空间中的曲线 和曲面的曲率有平均曲率、主曲率和高斯曲率三个基本要素。 平均曲率:是空间上曲面上某一点任意两个相互垂直的正交曲率的平均值。如果一组相互垂直的正 交曲率可表示为 K1,K2,那么平均曲率则为:K = (K1 +K2 )/2。 主曲率:过曲面上某个点上具有无穷个正交曲率,其中存在一条曲线使得该曲线的曲率为极大,这 个曲率为极大值 Kmax,垂直于极大曲率面的曲率为极小值 Kmin。这两个曲率属性为主曲率。它们代表着 法曲率的极值。 高斯曲率:两个主曲率的乘积 Kmax×Kmin,即为高斯曲率,又称总曲率,反映某点上总的完全程度。 由曲面论可知,在三角网格模型中,特征边界边处边界边顶点的曲率较大,因此需要计算边界边顶 点或者附近顶点的曲率。 曲率计算离不开曲面拟合, 本文中采用二阶邻域曲面拟合法。 曲率估计算法在文献[9] [10]的基础上, 经过比较采用 Taubin 曲率估计算法,得到最大曲率 K1 和最小曲率 k2。计算得到反应曲面弯曲程度的高 斯曲率 KG、描述一个曲面嵌入周围空间的平均曲率 Km、描述一个体素周围体积的局部解剖学形状的形 状指数(Shape Index)SI 和反映曲面凹凸程度的曲度(Curvedness) CV。 3) 形状直径:SDF [11]定义在三维模型表面每个点上的一个实值函数,它反映了网格表面上每个面 到网格对面的距离。在三角网格模型中,特征边界边处边界边顶点的形状直径较大。 三维模型可以看作是由多个二维网格表面围成具有一定体积的特定空间,SDF 就是定义在这些网格 表面的标量函数,它将三维模型的体积信息映射到其包围的二维网格表面上,以实现对三维模型形状特
DOI: 10.12677/csa.2018.84054 488 计算机科学与应用
张百云 等
特征边界线
(a) 渲染图
(b) 线框图
Figure 1. Triangular mesh model and feature boundary line of gear parts 图 1. 齿轮零件三角网格模型和特征边界线
Open Access
1. 引言
随着 CAD/CAM 及数字几何获取技术的发展,大量的复杂形体通过激光采样获取,采样获取的点云 数据一般转换为三角网格表示。三角网格模型[1]是三维空间中由一系列相互连接的平面三角片组成的一 种曲面离散逼近表达形式;三角网格模型后续中的一个重要应用是重构或识别这种由离散的、低级几何 表示的三角网格模型为高层次的设计、制造特征,或者分割为有意义的部件;特征识别或者部件分割的 一个最基本工作是网格特征边界线的识别和提取。 为此国内外对三角网格模型的特征线识别开展了大量的研究[2] [3] [4],但大多数都是通过计算某些 几何特征值,例如曲率,二面角,形状直径等, 通过设置阈值和判定规则来判定网格边是否是特征边界。 在规则和边界突出的模型中,这些方法有一定的适应性。然而对于扫描获取的点云网格,由于采样模型 的粗糙度和洁净程度、采样噪音、数据计算误差等因素,使得点云网格崎岖不平,并且网格十分密集, 很难判定某个网格边就是特征边;此外在一些曲面过渡边界也很难用单个或少量几何特征值去判定,判 定阈值也难以确定。目前一些学者把机器学习的方法应用到三角模型的分割、特征识别领域[5] [6] [7], 基于数据驱动的识别方法可以不依赖于硬的代码规则或显式的编程指令,将人对形状的边界认知融合到 分类器中,从而实现更接近实际的特征边界识别结果。 本文深入分析特征边界几何特征,在文献基础[8]上开展基于数据驱动和学习的特征边界识别方法的 研究,实现采用 AdaBoost 算法的基于学习的特征边界边识别方法。该算法在三角网格数据模型的基础上 省略了对特征点的判断,而是直接判断三角网格模型的三角边是否为特征边,提高了效率,识别结果更 接近实际边界。
th th th
Abstract
Feature boundary edge recognition is the basis for subsequent applications of complex triangular mesh models. It is difficult to identify feature edges that can meet actual requirements by using single threshold and decision rules. In this paper, the geometric characteristics of the feature boundary edge are analyzed. Based on the machine learning method, a learning-based method for identifying feature boundary edges of triangular mesh model is proposed and implemented. In this method, the feature boundary edge recognition is formalized as the classification problem of triangular edges. A 17-dimensional eigenvector to describe the geometric characteristics of feature boundary edges is analyzed and constructed, which consists of a dihedral angle, curvatures and a shape diameter. The eigenvector training data set is obtained by manual annotation, and is inputted into the general BP-AdaBoost classifier to train it in order to make it have the capability to identify feature boundary edges. The trained BP-AdaBoost classifier can identify the feature boundary edges correctly. It is proved by examples that the identification result is in line with the expectation.
相关文档
最新文档