在任一三角形网中,若某结点位于以某约束边界线段为直径的圆内或圆上,而且该点对该约束边可见,就称该点侵入(encroach)了该约束边,该约束边称为被侵入边(encroached segment)[3]。

Delaunay优化算法是通过不断插入结点,使所有三角形都满足用户指定的形状或尺寸要求。在插入结点时根据以下两点进行:

1) 如果一条约束边被侵入,就在其中点处插入一个结点,将该约束边分割为两条较小的约束边,并通过对角线交换恢复Delaunay三角化(如图3,其中粗实线代表约束边);

2) 如果某三角形形状或尺寸不满足要求,称该三角形为坏三角形,在其外接圆圆心处插入结点,并恢复Delaunay三角化,如图4。由Delaunay三角形空外接圆性质,该操作必然使得该三角形被删除;但如果插入点侵入某约束边,就不插入该点,而是分割所有被该点侵入的约束边。

图3 分割被侵入约束边

图4 去除坏三角形

可以证明[5],如果T是所有边界由约束边组成的某平面区域的Delaunay三角剖分,且T没有被侵入约束边,则T中任意三角形的外接圆圆心必然位于T 内。因此,分割被侵入约束边实质是清除了外接圆圆心在剖分域外的三角形,使得随后处理坏三角形

Delaunay优化算法相关推荐

  1. 在几何图形中均匀随机取点算法总结及Delaunay三角剖分算法介绍

    在工作中遇到一个需求,需要在圆形 矩形,三角形内随机,尽量均匀取点作为位置信息,但是random得到的信息有时候不是很满意. 这里讨论一下 第一种错误思路: 根据圆的解析式 (假设圆心在原点)我们可以 ...

  2. Delaunay三角剖分算法初探

    Delaunay三角网在空间邻近分析上是一种较好的支持模型, 广泛应用于空间聚类.多边形群的合并.人像关键点提取.形态分析中. 问题:一堆二维点中寻找一个与目标点最近(欧氏距离最小)的点. 1. 三角 ...

  3. 从 SGD 到 Adam —— 深度学习优化算法概览 各种优化器 重点

    20210701 https://blog.51cto.com/u_15064630/2571266 [机器学习基础]优化算法详解 详细 https://blog.csdn.net/u01338501 ...

  4. 梯度优化算法Adam

    最近读一个代码发现用了一个梯度更新方法, 刚开始还以为是什么奇奇怪怪的梯度下降法, 最后分析一下是用一阶梯度及其二次幂做的梯度更新.网上搜了一下, 果然就是称为Adam的梯度更新算法, 全称是:自适应 ...

  5. PyTorch-Adam优化算法原理,公式,应用

    概念:Adam 是一种可以替代传统随机梯度下降过程的一阶优化算法,它能基于训练数据迭代地更新神经网络权重.Adam 最开始是由 OpenAI 的 Diederik Kingma 和多伦多大学的 Jim ...

  6. 梯度下降优化算法概述

    本文原文是 An overview of gradient descent optimization algorithms,同时作者也在 arXiv 上发了一篇同样内容的 论文. 本文结合了两者来翻译 ...

  7. Adam那么棒,为什么还对SGD念念不忘 (1) —— 一个框架看懂优化算法

    机器学习界有一群炼丹师,他们每天的日常是: 拿来药材(数据),架起八卦炉(模型),点着六味真火(优化算法),就摇着蒲扇等着丹药出炉了. 不过,当过厨子的都知道,同样的食材,同样的菜谱,但火候不一样了, ...

  8. 梯度下降优化算法综述与PyTorch实现源码剖析

    现代的机器学习系统均利用大量的数据,利用梯度下降算法或者相关的变体进行训练.传统上,最早出现的优化算法是SGD,之后又陆续出现了AdaGrad.RMSprop.ADAM等变体,那么这些算法之间又有哪些 ...

  9. Adam那么棒,为什么还对SGD念念不忘 (3)—— 优化算法的选择与使用策略

    在前面两篇文章中,我们用一个框架梳理了各大优化算法,并且指出了以Adam为代表的自适应学习率优化算法可能存在的问题.那么,在实践中我们应该如何选择呢? 本文介绍Adam+SGD的组合策略,以及一些比较 ...

最新文章

  1. c类事业编计算机岗面试题,事业单位综合应用C类:让人头疼的摘要题到底怎么写?...
  2. js获取checkbox多选表单
  3. linux内核模块配置,如何为linux内核模块开发配置clang_complete?
  4. 求解10的75次方问题
  5. C++中的数组与指针
  6. 如何用控制台启动一个wcf服务
  7. web-midi-api
  8. 《神经网络与深度学习》编程笔记
  9. [JS真好玩] 掘金创作者必备: 监控每天是谁取关了你?
  10. React(10)-组件通信(important)
  11. putc与stdin,stdout,stderr
  12. 华为手机怎样无线与电脑连接服务器,华为手机如何与电脑远程连接服务器
  13. httpd模块支持https请求模块mod_ssl
  14. Qt实现 QOpenGL绘制彩色三角形
  15. 啥叫一个好售前​顾问
  16. 艾伟_转载:自用扩展方法分享
  17. 20步打造完美网站布局设计
  18. 商城项目-SPU和SKU数据结构
  19. 基于C#的软件加密、授权与注册
  20. html怎么设计为中文字体,css中怎么设置字体?

热门文章

  1. 2015年9月13日和15日【shell、sedawk 的使用(一)】-JY1506402-19+liuhui880818
  2. Web渗透信息收集篇
  3. 矢量图,PDF,裁切
  4. 论游戏凉得最快的几种方式:肝氪外挂拖时间?玩家的热情你耗不起
  5. 深度学习-数据集收集
  6. ElasticSearch(6.8.6)-es重建索引
  7. C#学习七(包含File字节流,list泛型集合、拆装箱、ictionary字典,文件流FileStream、StreamReader和StreamWrite、多态)
  8. redis如何保证数据一致性
  9. 关于软件设计:简述软件设计的23种模式
  10. 学习笔记11--局部轨迹直接构造法