当前位置: 首页 > news >正文

华为第二批难题五:AI技术提升六面体网格生成自动化问题

有CAE开发商问及OCCT几何内核的网格方面的技术问题。其实,OCCT几何内核的现有网格生成能力比较弱。

HybridOctree_Hex的源代码,还没有仔细去学习。

“HybridOctree_Hex”的开发者说:六面体网格主要是用在数值模拟领域的,比如汽车飞机或者是医疗影像行业给病人核磁共振扫描后做数字孪生的。图形学领域由于主要是服务游戏和影视行业,一般只关注物体的表面,用三角形网格,因此不是这个软件的受众。

Marching Cubes算法和六面体网格划分在空间处理和结果表示上有所不同,前者是一种等值面的提取和可视化表示的算法,而后者是后续的空间的数值计算和分析。在比较复杂的网格上直接用Marching Cube生成的体积网格不仅有可能不是全六面体的(全六面体一般在数值模拟里精度最高最受青睐),而且在表面附近大概率是有自交叉或者是负雅可比的。我们这个算法主要是聚焦对表面区域网格质量的优化,同时确保所有点都贴合在原始表面上。你如果对六面体网格生成有兴趣的话,可以看看这篇综述:dl.acm.org/doi/pdf/10.1。

总的来说,四面体网格的自动生成已经被内嵌到一些商业软件里了(HyperMesh, ANSYS, ICEM, Cubit),一些自研的小软件也很好用(TetGen, TetWild)。六面体-四面体混合网格在之前提到的软件里也有比较成熟的解决方案。但是纯六面体网格目前还是一个开放问题,在速度-鲁棒-质量三角中没有任何一个算法能够通吃。目前比较有竞争力的算法有我们这种基于背景网格点的八叉树法(速度快,非常鲁棒),还有frame field算法(slides.games-cn.org/pdf)和基于polycube的算法(dl.acm.org/doi/pdf/10.1,质量高)。这三种算法在那个综述里都有介绍,后两种算法在可预见的几年里应该仍然会停留在实验室阶段,因为虽然其质量高,但剩下两个板子太短了,速度非常慢,鲁棒性上frame field无法保证切出来的每个多面体都是六面体,所以网格可能是六面体-四面体混合的。polycube算法在将规则的几何体变形贴合到输入形状时有大量的超参数要调教,在复杂的几何体上没有人为干预很有可能会失败。八叉树法最大的短板是网格内奇异点多,以及部分因为这个原因导致的网格质量差。我们这次的工作主要是解决了网格质量差的问题,利用能量最小化算法,证实了八叉树法生成的网格质量也可以提高到非常高,以至于和其他算法的网格质量在缩放雅可比这一最广泛使用的网格指标上分庭抗礼甚至超越。在我们这个算法之前,八叉树法赛道下的最好算法是onlinelibrary.wiley.com和dl.acm.org/doi/pdf/10.1这两篇。他们是用了表面映射技术,去搜索一个原始表面到core mesh表面(有棱有角的内部网格)的映射。结果表明我们新算法在速度和质量上都会比这种映射算法高/快很多

基于混合八叉树和能量最小化方法的六面体网格划分程序——“HybridOctree_Hex”。不仅功能强大,而且操作简单。

HybridOctree_Hex全六面体网格生成的五个步骤。

(a)从表面三角形(红色)初始化八叉树网格,自动识别大曲率和狭窄区域;

(b)将初始化的八叉树转换为强平衡八叉树,满足平衡规则和配对规则;

(c)使用预定义模板构建全六面体对偶网格;

(d)清除边界外和周围的元素;

(e)全局坐标优化

首先在(a)中,HybridOctree_Hex能够自动检测输入模型的曲率和狭窄区域,从而识别出关键表面特征,并据此初始化一个八叉树结构。这步操作相当关键,因为它能帮助我们快速找到模型中的重要信息。

接下来在(b)中,这款软件会构建一个强平衡八叉树。这一步是借鉴了我们之前的工作,通过一些特殊的规则来确保树结构满足平衡规则和配对规则。有了这个强平衡八叉树,我们就可以直接生成全六面体的对偶网格(c)。这里有个小技巧,我们预先定义了一些模板,这样就可以跳过复杂的切割和对偶构建步骤,提高了效率。

八叉树转换预定义模板。(a-e) 展示了强平衡的八叉树(第一行),混合对偶网格(第二行),以及转换模板(第三和第四行)

然后在(d)中,HybridOctree_Hex会移除网格外部和边界周围的部分,只保留内部网格。这个核心网格的边界点会与表面上的对应点相连,从而填充缓冲区并构建最终的网格。这里有一个小细节,我们从雅可比行列式的矢量三重积形式出发,对表面上会导致在填充缓冲区时形成低雅可比,甚至非流形网格的单元进行删除。这一步骤也是最终能够将最小缩放雅可比提高到0.5以上的关键。

(a)与组里之前的表面移除方法的对比。两种方法均去除的六边形为红色,之前的工作去除的六边形为绿色,通过我们的方法去除的六边形是蓝色。阴影的黄色三角形表示它们的法线满足我们的移除规则;(b)缓冲层的形成

最后在(e)中,为了将缓冲区的点全部投影到三角形网格边界上,并同时控制网格质量,HybridOctree_Hex还结合了Laplacian平滑算法和能量最小化算法。能量项由表面拟合度(此项最终需要严格降到0以确保对原始表面的还原)、Jacobian和缩放Jacobian三项组成,使用梯度下降算法进行优化。这里是我们文章的主要创新点,我们对雅可比行列式的性质进行了深入研究,详细内容可看文章。

我们用HybridOctree_Hex对几十个复杂的3D模型进行了处理,结果都非常满意。无论是模型的细节还原还是网格质量,都处理得相当到位。我们的质量优化算法能够将最小缩放雅可比提升到0.5以上,远远超过以往算法。我们在文中挑出了最难的12个模型进行展示。

(a)瓶子1;(b)兔子;(c)大卫;(d)变形的犰狳;(e)龙台;(f)石像鬼。最后一列显示了缩放后的雅可比直方图。红色条代表最小缩放雅可比,紫色条由于频率较高(≥ 3%)而被截断

(a)头部;(b)狮子重建;(c)红色圆形盒子;(d)拉姆西斯;(e)油泵;(f)泰国雕像

这一方法还存在一些缺陷。最大的缺陷是计算时间。虽然相比之前的方法,我们在时间上已经取得了提升,但当前的计算速度还无法满足工程实际需求。不过这里也有代码实现的问题。我们的代码在很多细节没有对时间和空间复杂度进行优化,更多是进行了可行性的研究,感兴趣的朋友可以深入研究代码细节!另一缺陷则是在于算法本身——雅可比行列式只是网格合格的必要不充分条件,因此在未来的改进中,需要在能量项中引入更加全面的指标来确保网格的可使用性。

[Submitted on 11 Jan 2024 (v1), last revised 14 Jan 2024 (this version, v2)]

HybridOctree_Hex: Hybrid Octree-Based Adaptive All-Hexahedral Mesh Generation with Jacobian Control

Hua Tong, Eni Halilaj, Yongjie Jessica Zhang

We present a new software package, "HybridOctree_Hex," for adaptive all-hexahedral mesh generation based on hybrid octree and quality improvement with Jacobian control. The proposed HybridOctree_Hex begins by detecting curvatures and narrow regions of the input boundary to identify key surface features and initialize an octree structure. Subsequently, a strongly balanced octree is constructed using the balancing and pairing rules. Inspired by our earlier preliminary hybrid octree-based work, templates are designed to guarantee an all-hexahedral dual mesh generation directly from the strongly balanced octree. With these pre-defined templates, the sophisticated hybrid octree construction step is skipped to achieve an efficient implementation. After that, elements outside and around the boundary are removed to create a core mesh. The boundary points of the core mesh are connected to their corresponding closest points on the surface to fill the buffer zone and build the final mesh. Coupled with smart Laplacian smoothing, HybridOctree_Hex takes advantage of a delicate optimization-based quality improvement method considering geometric fitting, Jacobian and scaled Jacobian, to achieve a minimum scaled Jacobian that is higher than 0.5. We empirically verify the robustness and efficiency of our method by running the HybridOctree_Hex software on dozens of complex 3D models without any manual intervention or parameter adjustment. We provide the HybridOctree_Hex source code, along with comprehensive results encompassing the input and output files and statistical data in the following repository

源码:stoneold/HybridOctree_Hex

难题五:AI技术提升六面体网格生成自动化问题

技术背景

1. 业务场景:在使用工业软件对各物理场问题分析过程中,相对于其他网格,六面体网格具有更好的计算精度、更高的计算效率、更强的抗畸变能力并能更自然地顺应边界和物理场的走向。目前,六面体网格主要依赖半自动半手工模式--扫掠法来得到。

2. 技术选题的关键性:六面体剖分以扫掠法为主,对一些复杂的工程问题,所需工作量要以人月甚至人年记。如能提升六面体网格生成自动化程度,将大幅减轻工程师的劳动强度,显著提升工作效率,缩短仿真时间和产品开发周期。

3. 技术选题的泛用性:六面体网格生成技术是工业软件和一些相关领域的通用技术,并不局限于某个特定的应用场景。

技术挑战

1. 设计基于AI的三维几何体分块算法,将物体分割为一些适合于扫掠的块。

2. 对于分割后剩余的不可扫掠块,设计AI指导下的空腔填充算法,以填充剩余块内部。

3. 空腔填充算法也应适用于四面体网格。

技术诉求

1. 可自动剖分模型的复杂程度:用基本体素进行10次以内布尔运算得出的几何模型(占比30%)。

2. 对更复杂模型可减少交互工作量30%以上。

3. 单元质量要求:雅可比值不低于0.1。

参考文献

[1] Pietroni N, Campen M, Sheffer A, et al. Hex-mesh generation and processing: a survey[J]. ACM TOG , 2022,42(2): 1-44.

[2] Fang X, Xu W, Bao H, and Huang J. All-Hex Meshing using Closed-Form Induced Polycube. ACM TOG , 2016; 35(4).

[3] Tautges TJ, Blacker T, Mitchell SA. The whisker weaving algorithm: A connectivity-based method for constructing all-hexahedral finite element meshes. IJNME, 1996; 39(19): 3327–3349.

[4] Price MA, Armstrong CG. Hexahedral mesh generation by medial surface subdivision: part II. Solids with flat and concave edges. IJNME, 1997; 40: 111-136.

[5] Livesu M, Pietroni N, Puppo E, Sheffer A, and Cignoni P. LoopyCuts: practical feature-preserving block decomposition for strongly hexdominant meshing. ACM TOG(SIGGRAPH) ; 2020: 39(4).

[6] Lu Y, Gadh R, Tautges TJ. Feature based hex meshing methodology: feature recognition and volume decomposition. Computer Aided Design, 2001; 33(3): 221–32.

[7] Lei, Na , et al. "Quadrilateral mesh generation II: Meromorphic quartic differentials and Abel-Jacobi condition." Computer Methods in Applied Mechanics and Engineering , 2020.

[8] Liu JF, Sun SL, Chen YQ. A new method of quality improvement for quadrilateral mesh based on small polygon reconnection, Acta Mechanica Sinica , 2012, 28(1):140-145.

[9] Biesbroeck A V , Shang F , Bassir D . CAD Model Segmentation Via Deep Learning[J]. International Journal of Computational Methods, 2020.

联系人:吴瑾    lion.wujin@huawei.com

相关文章:

华为第二批难题五:AI技术提升六面体网格生成自动化问题

有CAE开发商问及OCCT几何内核的网格方面的技术问题。其实,OCCT几何内核的现有网格生成能力比较弱。 HybridOctree_Hex的源代码,还没有仔细去学习。 “HybridOctree_Hex”的开发者说:六面体网格主要是用在数值模拟领域的,比如汽车…...

【FFmpeg】ffplay 命令行参数 ⑤ ( 设置音频滤镜 -af 参数 | 设置统计信息 -stats 参数 | 设置同步时钟类型 -sync 参数 )

文章目录 一、ffplay 命令行参数 - 音频滤镜1、设置音频滤镜 -af 参数2、常用的 音频滤镜 参数3、音频滤镜链 示例 二、ffplay 命令行参数 - 统计信息1、设置统计信息 -stats 参数2、关闭统计信息 -nostats 参数 三、ffplay 命令行参数 - 同步时钟类型1、设置同步时钟类型 -syn…...

vscode开发FPGA(0)--windows平台搭建

一、从官网下载安装VScode Download Visual Studio Code - Mac, Linux, Windows 二、安装配置插件 1. 安装Chinese(simplified)中文汉化包 2.安装Verilog-HDL/systemVerilog插件(支持verilog语法) 3.配置CTags Support插件(支持代码跳转) 1)在github下…...

Java String源码剖析+面试题整理

由于字符串操作是计算机程序中最常见的操作之一,在面试中也是经常出现。本文从基本用法出发逐步深入剖析String的结构和性质,并结合面试题来帮助理解。 String基本用法 在Java中String的创建可以直接像基本类型一样定义,也可以new一个 Str…...

探索未来:集成存储器计算(IMC)与深度神经网络(DNN)的机遇与挑战

开篇部分:人工智能、深度神经网络与内存计算的交汇 在当今数字化时代,人工智能(AI)已经成为科技领域的一股强大力量,而深度神经网络(DNN)则是AI的核心引擎之一。DNN是一种模仿人类神经系统运作…...

[C/C++] -- CMake使用

CMake(Cross-platform Make)是一个开源的跨平台构建工具,用于自动生成用于不同操作系统和编译器的构建脚本。它可以简化项目的构建过程,使得开发人员能够更方便地管理代码、依赖项和构建设置。 CMake 使用一个名为 CMakeLists.tx…...

笔记本选购配置参数详解

笔记本电脑的选购是一个技术活,涉及到众多的配置参数。本文将为您详细解析笔记本电脑的主要配置参数,帮助您在选购时做出明智的决策。 1. 处理器(CPU) 处理器是笔记本电脑的核心组件,负责执行计算任务…...

临睡之际的生死思索与生命哲学的启示

在人类生存体验中,有一种独特而深邃的感受——当人们准备进入梦乡时,会担忧第二天醒来是否还能感知到生命的律动。这种“入睡即未知”的心理状态,既是生命无常的深刻体现,也是对个体生命价值、生活态度及人生哲学的一种深度拷问。…...

QT学习(五)C++函数重载

一、 函数重载 在同一个作用域内,可以声明几个功能类似的同名函数, 这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同。您不能仅通过返回类型的不同来 重载函数。 下面的实例中,同名函数 print() 被用…...

微服务OAuth 2.1扩展额外信息到JWT并解析(Spring Security 6)

文章目录 一、简介二、重写UserDetailsService三、Controller解析JWT获取用户信息四、后记 一、简介 VersionJava17SpringCloud2023.0.0SpringBoot3.2.1Spring Authorization Server1.2.1Spring Security6.2.1mysql8.2.0 Spring Authorization Server 使用JWT时,前…...

Python@setter用法介绍

Pythonsetter是Python编程语言中的一个关键属性,它简化了Python开发者的编程过程,提高了编程效率。 一、Pythonsetter是什么 Pythonsetter是Python语言中的一个属性,它允许程序员设置Python中的类成员变量。在Python中,属性&…...

格子表单GRID-FORM | 文档网站搭建(VitePress)与部署(Github Pages)

格子表单/GRID-FORM已在Github 开源,如能帮到您麻烦给个星🤝 GRID-FORM 系列文章 基于 VUE3 可视化低代码表单设计器嵌套表单与自定义脚本交互文档网站搭建(VitePress)与部署(Github Pages) 效果预览 格…...

mac无法往硬盘里存东西 Mac硬盘读不出来怎么办 Mac硬盘格式 硬盘检测工具

mac有时候会出现一些问题,比如无法往硬盘里存东西,或者无法往硬盘上拷贝文件。这些问题会给用户带来很大的困扰,影响正常的工作和学习。那么,mac无法往硬盘里存东西,mac无法往硬盘上拷贝怎么办呢?软妹子将为…...

DataX源码分析 reader

系列文章目录 一、DataX详解和架构介绍 二、DataX源码分析 JobContainer 三、DataX源码分析 TaskGroupContainer 四、DataX源码分析 TaskExecutor 五、DataX源码分析 reader 六、DataX源码分析 writer 七、DataX源码分析 Channel 文章目录 系列文章目录前言Reader组件如何处理…...

openssl3.2 - exp - RAND_bytes_ex

文章目录 openssl3.2 - exp - RAND_bytes_ex概述笔记END openssl3.2 - exp - RAND_bytes_ex 概述 生成随机数时, 要检查返回值是否成功, 不能认为一定是成功的(官方文档上有说明). 生成随机数的API, 和库上下文有关系, 使用RAND_bytes_ex()比RAND_bytes()好些. 笔记 /*! * …...

Oracle中怎么设置时区和系统时间

在Oracle数据库中,设置时区和系统时间可以通过多种方法实现。下面是一些常见的方法: 1. 设置数据库的时区 Oracle数据库允许你为每个会话或整个数据库设置时区。 a. 为整个数据库设置时区 你可以使用ALTER DATABASE语句为整个数据库设置时区。例如&a…...

常见的物联网操作系统介绍

物联网(Internet of Things,IoT)是指将各种物理设备、车辆、家用电器、工业设备等通过网络连接起来,实现数据交换和通信的技术。物联网操作系统是管理这些设备并使其能够相互通信的软件平台。以下是一些常见的物联网操作系统&…...

二级C语言笔试10

(总分101,考试时间90分钟) 一、选择题 1. 设有如下关系表: A) TR∩S B) TR∪S C) TRS D) TR/S 2. 在一棵二叉树中,叶子结点共有30个,度为1的结点共有40个,则该二叉树中的总结点数共有( )个。 A) 89 …...

【WebSocket】微信小程序原生组件使用SocketTask 调用星火认知大模型

直接上代码 微信开发者工具-调试器-终端-新建终端 进行依赖安装 npm install base-64 npm install crypto-js 然后顶部工具栏依次点击 工具-构建npm // index.js const defaultAvatarUrl https://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRna42FI242Lcia07jQodd2FJGIYQfG0LAJGFxM4FbnQ…...

[1-docker-01]centos环境安装docker

官方参考文档 可以在官方docker桌面版本指导文档里找到适合自己的电脑平台进行参考,或者你是老司机的话直接自己上车。 如果不需要桌面版,也可以在官方docker engine版本指导文档里找到适合自己的平台进行参考,同样,老司机可以自…...

深度学习基础之《深度学习介绍》

一、深度学习与机器学习的区别 1、特征提取方面 机器学习:人工特征提取 分类算法 深度学习:没有人工特征提取,直接将特征值传进去 (1)机器学习的特征工程步骤是要靠手工完成的,而且需要大量领域专业知识…...

4核8g服务器能支持多少人访问?2024新版测评

腾讯云轻量4核8G12M轻量应用服务器支持多少人同时在线?通用型-4核8G-180G-2000G,2000GB月流量,系统盘为180GB SSD盘,12M公网带宽,下载速度峰值为1536KB/s,即1.5M/秒,假设网站内页平均大小为60KB…...

Linux中pipe管道操作

管道的读写操作: 读操作: ​​​有数据:read正常读,返回读出的字节数无数据:1 写段全部关闭:read解除阻塞,返回0,相当于文件读到了尾部 2 写段没有全部关闭&#xf…...

中年中产程序员从西安出发到海南三亚低成本吃喝万里行:西安-南宁-湛江-雷州-徐闻-博鳌-陵水-三亚-重庆-西安(2.游玩过程)

文章大纲 出发时间:Day1-1月25日星期四,西安飞南宁路途中:Day2-1月26日星期五,南宁-湛江-住雷州(曾经支教过的地方)【晚上买徐闻到海安新港】路途中:Day3-1月27日星期六,雷州-徐闻渡…...

day38 面向对象编程、构造函数等(纯概念)

目录 深入对象构造函数实例成员静态成员内置构造函数ObjectArray包装类型StringNumber 深入对象 了解面向对象的基础概念,能够利用构造函数创建对象。 构造函数 构造函数是专门用于创建对象的函数,如果一个函数使用 new 关键字调用,那么这…...

nginx用域名http://xx.com/aaa/代理一个网页http://ff.com但是请求资源时发生404

哎,还得是chatgpt,难道就没有人有这种使用场景吗?没查到一个配置是有效的。 我: 我配置了nginx反向代理,用域名http://xx.com/aaa/代理一个网页http://ff.com, 但是请求资源时发生404,如何解决&…...

NLP_词的向量表示Word2Vec 和 Embedding

文章目录 词向量Word2Vec:CBOW模型和Skip-Gram模型通过nn.Embedding来实现词嵌入Word2Vec小结 词向量 下面这张图就形象地呈现了词向量的内涵:把词转化为向量,从而捕捉词与词之间的语义和句法关系,使得具有相似含义或相关性的词语在向量空间…...

python:xml.etree 生成思维导图 Freemind文件

请参阅:java : pdfbox 读取 PDF文件内书签 或者 python:从PDF中提取目录 请注意:书的目录.txt 编码:UTF-8,推荐用 Notepad 转换编码。 xml 是 python 标准库,在 D:\Python39\Lib\xml\etree python 用 xm…...

Solidworks:从2D走向3D

Sokidworks 的强大之处在于三维实体建模,这个形状看似复杂,实际上只需要拉伸一次,再做一次减法拉伸就行了。第一次做三维模型,费了不少时间才搞明白。 接下来做一个稍微复杂一点的模型,和上面这个操作差不多&#xff0…...

【开源】JAVA+Vue.js实现高校学院网站

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 学院院系模块2.2 竞赛报名模块2.3 教育教学模块2.4 招生就业模块2.5 实时信息模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 学院院系表3.2.2 竞赛报名表3.2.3 教育教学表3.2.4 招生就业表3.2.5 实时信息表 四、系…...

题解19-24

48. 旋转图像 - 力扣(LeetCode) 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在** 原地** 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1&#xff1…...

基于图像掩膜和深度学习的花生豆分拣(附源码)

目录 项目介绍 图像分类网络构建 处理花生豆图片完成预测 项目介绍 这是一个使用图像掩膜技术和深度学习技术实现的一个花生豆分拣系统 我们有大量的花生豆图片,并以及打好了标签,可以看一下目录结构和几张具体的图片 同时我们也有几张大的图片&…...

【网络】:序列化和反序列化

序列化和反序列化 一.json库 二.简单使用json库 前面已经讲过TCP和UDP,也写过代码能够进行双方的通信了,那么有没有可能这种通信是不安全的呢?如果直接通信,可能会被底层捕捉;可能由于网络问题,一方只接收到…...

AJ-Report 【开源的一个BI平台】

AJ-Report是全开源的一个BI平台,酷炫大屏展示,能随时随地掌控业务动态,让每个决策都有数据支撑。     多数据源支持,内置mysql、elasticsearch、kudu驱动,支持自定义数据集省去数据接口开发,目前已支持30…...

Matplotlib核心:掌握Figure与Axes

详细介绍Figure和Axes(基于Matplotlib) 🌵文章目录🌵 🌳引言🌳🌳 一、Figure(图形)🌳🍁1. 创建Figure🍁🍁2. 添加Axes&am…...

问题:A注册会计师必须在期中实施实质性程序的情形是()。 #学习方法#其他

问题:A注册会计师必须在期中实施实质性程序的情形是()。 A.甲公司整体控制环境不佳 B.将期中实质性程序所获证据与期末数据进行比较 C.评估的认定层次重大错报风险很高 D.没有把握通过在期中…...

C#系列-C#EF框架返回单行记录(24)

在C#中&#xff0c;使用Entity Framework (EF)框架时&#xff0c;如果你想要执行一个查询并返回单行记录&#xff0c;你可以使用SingleOrDefault、FirstOrDefault、Single或First方法。这些方法适用于DbSet<T>对象&#xff0c;它们可以执行查询并返回单个实体或默认值&am…...

【PyTorch】张量(Tensor)的生成

PyTorch深度学习总结 第一章 Pytorch中张量(Tensor)的生成 文章目录 PyTorch深度学习总结一、什么是PyTorch&#xff1f;二、张量(Tensor)1、张量的数据类型2、张量生成和信息获取 总结 一、什么是PyTorch&#xff1f; PyTorch是一个开源的深度学习框架&#xff0c;基于Python…...

【5G NR】【一文读懂系列】移动通讯中使用的信道编解码技术-Viterbi译码原理

目录 一、引言 二、Viterbi译码的基本原理 2.1 卷积码与网格图 2.2 Viterbi算法的核心思想 2.3 路径度量与状态转移 三、Viterbi译码算法工作原理详解 3.1 算法流程 3.2 关键步骤 3.3 译码算法举例 3.4 性能特点 四、Viterbi译码的应用场景 4.1 移动通信系统 4.2 卫…...

矩阵在计算机图像处理中的应用

矩阵在计算机图像处理中是非常核心的概念&#xff0c;因为它们为表示和操作图像数据提供了一种非常方便和强大的方式。以下是矩阵在计算机图像处理中的一些关键作用&#xff1a; 图像表示&#xff1a;在计算机中&#xff0c;图像通常被表示为像素矩阵&#xff0c;也就是二维数组…...

Java实现教学资源共享平台 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 课程档案模块2.3 课程资源模块2.4 课程作业模块2.5 课程评价模块 三、系统设计3.1 用例设计3.2 类图设计3.3 数据库设计3.3.1 课程档案表3.3.2 课程资源表3.3.3 课程作业表3.3.4 课程评价表 四、系统展…...

Spring Boot(六十五):使用 ant.jar 执行 SQL 脚本文件

ant用处,主要用在编译java文件,打包,部署。打包:jar,war,ear包等。ant在项目中有很重要的作用。今天我们讲解它的另一个作用:执行 SQL 脚本文件。 1 引入依赖 <dependency><groupId>org.apache.ant</groupId><artifactId>ant</artifactId&g…...

161基于matlab的快速谱峭度方法

基于matlab的快速谱峭度方法&#xff0c;选择信号峭度最大的频段进行滤波&#xff0c;对滤波好信号进行包络谱分析。输出快速谱峭度及包络谱结果。程序已调通&#xff0c;可直接运行。 161 信号处理 快速谱峭度 包络谱分析 (xiaohongshu.com)...

CTFshow-WEB入门-信息搜集

web1&#xff08;查看注释1&#xff09; wp 右键查看源代码即可找到flag web2&#xff08;查看注释2&#xff09; wp 【CtrlU】快捷键查看源代码即可找到flag web3&#xff08;抓包与重发包&#xff09; wp 抓包后重新发包&#xff0c;在响应包中找到flag web4&#xff08;robo…...

django密码管理器(创建项目)

目录 创建项目 安装django 创建项目(django-admin) 创建管理员用户 创建数据库 创建项目 新建一个项目文件夹&#xff0c;如"密码管理器" 安装django 要先安装pip,pip安装地址:pypi.org、pypi.python.org、cheeseshop.python.org pip install django 创建项…...

Centos7之Oracle12c安装与远程连接配置

Centos7之Oracle12c安装与远程连接配置 文章目录 Centos7之Oracle12c安装与远程连接配置1.Oracle官网2. Centos7中安装Oracle12c(12.2.0.1.0)2.1 Introduction (介绍)2.2 Prerequisites(先决条件)2.3 Installation Steps(安装步骤)2.4 Oracle Installer Screens(Oracle安装程序…...

CVE-2022-25578 漏洞复现

CVE-2022-25578 路由/admin/admin.php是后台&#xff0c;登录账号和密码默认是admin、tao&#xff0c;选择文件管理。 是否还记得文件上传中的.htaccess配置文件绕过发&#xff0c;在这个文件中加入一句AddType application/x-httpd-php .jpg&#xff0c;将所有jpg文件当作php…...

Ubuntu22.04安装黑屏(进入U盘安装引导时 和 安装完成后)

一&#xff1a;进入U盘安转引导时黑屏 问题描述&#xff1a;选择’try or install ubuntu’&#xff0c;开始安装&#xff0c;出现黑屏。 解决方法&#xff1a;&#xff08;可行&#xff09; 安装时&#xff0c;先选择" try or install ubuntu", 此时不要按enter&a…...

一、DataX简介

DataX简介 一、什么是DataX二、DataX设计三、支持的数据源四、框架设计五、运行原理六、DataX和Sqoop对比 一、什么是DataX DataX是阿里巴巴开源的一个异构数据源离线同步工具&#xff0c;致力于实现包括关系型数据库&#xff08;MySQL、Oracle等&#xff09;、HDFS、Hive、OD…...

直播app开发,技术驱动的实时互动新纪元

随着互联网技术的快速发展&#xff0c;直播已成为我们日常生活的重要组成部分。从娱乐、教育到商业活动&#xff0c;直播的广泛应用正在改变着我们的生活和工作方式。在这一变革中&#xff0c;直播开发扮演着至关重要的角色。本文将探讨直播开发的核心理念、技术挑战以及未来的…...