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

光学涡旋干涉仪

一、什么是涡旋干涉仪?

涡旋光束一般指电场含有螺旋相位因子exp(iℓθ)的光束,其中为拓扑荷数,θ为方位角,其波前为螺旋形,光束中心存在相位奇点,因此涡旋光束的光强轮廓是中心强度为零的圆环。早在1992年荷兰莱顿大学的Allen等就研究了电场复振幅中含有exp(iℓθ)的拉盖尔-高斯光束的特性,证明其每一个光子都携带有轨道角动量(OAM)其中为约化普朗克常量。涡旋光束因携带有轨道角动量,体现出与传统高斯光束截然不同的特性,在超大容量光通信、旋转体探测、光镊、激光加工和光学干涉计量等领域显示出重要的应用价值。

将涡旋光束作为干涉仪中感知相位变化的载体,即形成光学涡旋干涉仪(Optical Vortex Interferometer,OVI)。基于经典的迈克尔逊、马赫-曾德尔和萨格奈克等干涉结构,通过涡旋光束与其共轭光束(拓扑荷数符号相反)或平面波光束的同轴相干叠加,光学涡旋干涉仪产生同心花瓣状或螺旋状的涡旋干涉条纹。与高斯光束作为载体的经典干涉仪相比,光学涡旋干涉仪具有以下优点:

  • 光学涡旋干涉仪将轴向相位变化编码为涡旋干涉条纹的方位角旋转,且方位角具有天然的2π计量基准,因此相位解调可溯源;

  • 光学涡旋干涉仪允许直接从单幅涡旋干涉条纹的方位角旋转量确定相位变化或位移变化,因此具备了天然的动态相位解调能力;

  • 光学涡旋干涉仪的测量精度取决于方位角的测量精度,通过选取合适的拓扑荷数和面阵相机像素分辨率,位移测量精度可达皮米级。

由此可见,光学涡旋干涉仪的相位解调方法对实现高精度动态相位测量具有重要意义。下面我们将针对花瓣状和螺旋状两类常见的涡旋干涉条纹(图1),从强度、相位、频率三个方面对现有的相位解调方法进行归纳和总结,并介绍光学涡旋干涉仪的典型光路结构,及其在几何量和物理量测量方面的应用。

图片

图1 涡旋干涉条纹将相移编码为方位旋转角。左图为花瓣状条纹,右图为螺旋条纹

二、光学涡旋干涉仪相位解调方法

(一)强度解调

1.花瓣质心识别法

花瓣质心识别法一般先用相机捕获花瓣状干涉图,转换为灰度图,再提取各个花瓣的质心,从而确定条纹的中心点。通过中心点和形状最规则的一个花瓣的质心计算方位旋转角。对于连续采集的每一帧干涉图(图2),分别计算该花瓣的方位旋转角,将其解码为相移或位移,通过识别花瓣旋转方向来区分相移或位移的方向。

图片

图2 花瓣质心识别法

在花瓣质心识别法的基础上,可以连接条纹中心与花瓣质心构建网格,或连接任意两个花瓣的质心构建复杂网格,来确定方位旋转角,以提高测量分辨率(图3)。

图片

图3 花瓣质心构建网格识别法

还可以用圆环拟合所有花瓣的质心(图4),并取圆环上的像素强度绘制方位角强度曲线,计算花瓣旋转前后强度曲线峰谷的相对方位角变化,通过平均整个相对方位角变化来确定方位旋转角。

图片

图4 花瓣质心圆环拟合识别法

2.圆环互相关法

圆环互相关法(图5)是在花瓣状干涉条纹中选择一个特定直径的圆,提取花瓣旋转前后圆上的强度曲线,并计算它们的相关函数,通过相关函数的最大值得到花瓣旋转角度,将其转化为相移或位移的大小。也可选取多组不同半径圆的方位强度曲线,计算花瓣旋转角度的平均值以进一步提高测量准确性,实现亚纳米级位移测量。

图片

图5 圆环互相关法

3.反相关像素对差分法

花瓣状干涉图在方位角上有等间距的像素,显示出相同的强度(图6)。选取花瓣两侧各两个像素,构建相位正交反相关像素对。像素对的强度差可以消除来自激光源的共模噪声和直流漂移,同时使输入信号的幅度增加一倍。另外,将像素对的差分信号进行平均,可以实时地将热、声、气流波动等统计噪声以及探测器噪声大幅降低。

图片

图6 反相关像素对差分法

4.主成分分析法

图7所示,若将光学涡旋干涉仪中的一路涡旋光束替换为高斯光束,涡旋光束与高斯光束的同轴相干叠加产生螺旋干涉条纹。与花瓣状干涉条纹在方位角上呈现的明暗周期性不同,螺旋干涉条纹在相移作用下呈现出沿方位角旋转的连续螺旋条纹。制备由N个不同相移的螺旋干涉图组成的训练集,计算训练集协方差矩阵的特征值和特征向量。将具有两个最大特征值的特征向量用于表征两个主特征模式,并基于这两个主特征模式构造一个新的二维空间,将具有任意相移的螺旋干涉条纹投影到该空间实现相移测量,实现了更精细的相移分辨率。

图片

图7 主成分分析法

(二)相位解调

1.莫尔指针图像法

图8所示,在光学涡旋干涉仪出口处放置偏振相机,通过空间移相技术获得4个相位差为90°的相移干涉图。先利用四步相移算法和Zernike多项式重建相位图,再利用余弦函数将重建相位图转换为虚拟干涉图,然后乘以偏振相机采集到的螺旋干涉图获得莫尔条纹图,最后经过傅里叶变换和低通滤波提取莫尔条纹的中心频谱,经过逆傅里叶变换得到莫尔指针图像。莫尔指针图像有2条暗线,其中一条暗线作为指针,用以确定螺旋条纹的方位旋转角,从而获得相移或位移。

该方法除了适用于整数的拓扑荷数,也可推广到分数的拓扑荷数。例如,拓扑荷数为1.5时,在指针图像中存在一个静态的指针,其余的旋转指针可以用来计算方位旋转角,而静态指针则可作为校准和计算旋转周期的参考。

图片

图8 莫尔指针图像法

2.Radon变换法

Radon变换法(图9)是利用希尔伯特变换的线性性质和π/2相移算子,计算涡旋干涉图的相位图,提取相位图中的线,再利Radon变换将错线上所有的点投影到另一个平面上的同一点上,此时与Radon变换谱的峰值相对应的投影角给出了错线的角度。通过Radon变换谱的峰值的投影角度之差,可以得到线的角度差,从而得到干涉条纹的方位旋转角,进而获得相移或位移

图片

图9 Radon变换法

3.方位角复谱分析法

图10所示,选取花瓣强度峰值对应的半径,以此半径构建圆环,提取圆环上的像素强度得到方位角强度曲线。对方位角强度曲线进行傅里叶变换得到方位角复谱。方位角复谱中的振幅谱对相移不敏感,而相位谱对相移极其敏感。因此,可以利用方位角相位谱在基频处的相位差来反演相移,实现涡旋干涉图解调。

该方法还可进一步拓展到高径向阶数的涡旋干涉图解调中,通过对不同半径处的花瓣状干涉条纹进行方位角复谱分析,实现非均匀相移或位移的皮米级精度测量。

图片

图10 方位角复谱分析法

(三)旋转频率解调

1.基于离轴针孔的多普勒频移法

基于强度和相位的涡旋干涉图解调方法的灵敏度均受到相机空间离散采样的像素分辨率的限制(图11)。为了解决这个问题,在光学涡旋干涉仪出口处放置一个旋转的离轴针孔,后接一个采集镜头和一个点探测器。针孔相对于静态螺旋条纹以一定角速度旋转,通过针孔的光聚焦在探测器上,并记录下随时间周期性变化的光强。对强度信号进行傅里叶变换,则在基频fc处产生一个谱峰。当螺旋条纹旋转方向与离轴针孔旋转方向相反时,在基频右侧出现多普勒频移fD。若螺旋条纹和离轴针孔沿旋转方向相同,则fD出现在fc的左侧。相移或位移的速度越大,多普勒频移到基频的距离越远,再通过速度对时间的积分来反推相移或位移。

该方法避免了相机的空间离散采样问题,将二维涡旋干涉图的相位解调转换为随时间变化的一维强度信号的多普勒频移。优点是位移测量效率高,且对位移速度的测量没有上限。

图片

图11 基于离轴针孔的多普勒频移法

2.基于斩波器的多普勒频移法

因花瓣状条纹的离轴强度具有方位角周期性,频率解调也适用于花瓣状条纹。因此,可用旋转斩波器代替离轴针孔,经斩波器切割后的花瓣图经收集透镜聚焦在探测器上后再进行多普勒频移分析(图12)

图片

图12 基于斩波器的多普勒频移法

基于多普勒频移分析,还可以将匀速位移测量扩展到非匀速位移测量。但非匀速位移产生的一维强度信号为啁啾信号,此时的频率分析需要用到时-频变换技术(如:短时傅里叶变换、小波变换等),通过时-频谱确定任意时刻的多普勒频移(图13)。

图片

图13 基于时-频分析的非匀速位移的多普勒频移法

(四)非均匀相移测量中涡旋干涉图的解调方法

1.强度解调:等高线/中心线提取法

非均匀形变产生的涡旋干涉图比均匀位移产生的涡旋干涉图显示出更复杂的条纹。对于螺旋干涉图(图14)可以直接提取其等高线或中心线来重构形变轮廓。

图片

图14 螺旋卷曲方向相反的复杂螺旋干涉图

等高线由恒定强度的螺旋条纹形成(图15)。螺旋条纹顺时针和逆时针旋转会导致等高线在起点与终点之间显示出2π的不连续误差,该误差可以通过剪除不连续线段消除,由此得到平滑后的等高线,通过插值得到非均匀形变轮廓。

中心线由螺旋条纹的局部强度极值形成。具体地,可以通过从螺旋条纹的边缘逐步移除低强度的像素来构建,直到保留强度极值对应的骨架。与等高线相比,中心线避免了2π不连续性,相对误差更小。

图片

图15 螺旋干涉图的等高线(左)和中心线(右)提取法

2.相位解调:逆螺旋变换法

逆螺旋变换法(图16)首先采用多步移相算法提取螺旋干涉图的包裹相位图,通过二维相位解包裹算法得到具有错位的螺旋相位图。再由滤波函数exp(iθ)的傅里叶变换得到反卷积核,它将具有错位的螺旋相位图转换为标准的闭合相位图。逆螺旋变换法类似于莫尔指针图像法,都需要先进行多步移相来获得相位图。区别在于,莫尔指针图像只适用于均匀相移或位移的测量,而逆螺旋变换法采用二维相位解包裹和螺旋反卷积,允许重建任意形变轮廓。

图片

图16 逆螺旋变换法

3.相位解调:方位角复谱分析法

图17所示,在光学涡旋干涉仪中使用高径向阶数(p>>1)的拉盖尔-高斯光束,可将方位角复谱分析法从均匀位移测量扩展到非均匀形变测量。若位移是均匀的,则高阶花瓣状干涉条纹在不同半径处的花瓣具有相同的方位旋转角。若位移是非均匀且具有轴对称分布的,则不同半径处的花瓣具有不同的方位旋转角。

图片

图17 由均匀位移和非均匀轴对称形变引起的高阶花瓣干涉图的相位编码

提取不同半径处的圆环上的像素强度,得到方位角强度曲线(图18)。再对形变前后的各个半径上的方位角强度曲线进行复谱分析,利用相位谱在基频处的相位差得到各半径处的相移,从而获得各半径处相应的位移,进而重构形变轮廓。该方法相当于利用高阶干涉条纹的花瓣阵列对非均匀形变进行空间离散采样。

图片

图18 非均匀轴对称形变的方位角复谱分析法

4.旋转频率解调:多普勒频移分裂法

与前述多普勒频移法相似,对于匀速的非均匀轴对称形变,花瓣状干涉条纹在不同半径处的花瓣具有不同的旋转角,经斩波器调制后得到的一维强度信号表现出包络震荡的特点,表明该强度信号是由多频率分量组成,图19所示。经傅里叶变换后,频谱显示出相对于基频fc的多普勒频移,且分裂成多个谱峰fD(rj),分别对应不同半径处的形变速度。通过定位多普勒频移的各个谱峰,可计算出各半径处的形变。对于非匀速的轴对称形变,一维光强信号为啁啾信号,需通过时-频分析获得在任意时刻的多普勒频移分裂谱峰,从而获得各半径处的瞬时形变。

图片

图19 非均匀轴对称形变的多普勒频移分裂法

下图20,对涡旋干涉图解调方法从强度、相位和旋转频率三个方面进行了汇总,并给出了各种解调方法所适用的涡旋干涉条纹类型。

图片

图20 涡旋干涉图解调方法汇总

涡旋干涉仪的典型光路结构及应用领域

与用于位移和形变测量的标准干涉仪相比,光学涡旋干涉仪原则上仅用单幅涡旋干涉图就可以将测量精度提高到亚纳米甚至皮米级。下图21展示了一些代表性的光学涡旋干涉仪的光路结构,包括迈克尔逊涡旋干涉仪(a-c)、马赫-曾德尔涡旋干涉仪(d-l)、共路涡旋干涉仪(m、n)和分波前涡旋干涉仪(o)。

图片

图21 光学涡旋干涉仪的典型光路结构

除位移和形变测量外,光学涡旋干涉仪可通过测量花瓣状条纹在不同溶液流动池中的旋转角度来确定待测溶液折射率的变化。光学涡旋干涉仪在温度测量与应变测量中也具有广泛的应用,将温度变化或轴向应变作用于介质(如光纤),导致介质的折射率或光程变化,从而引起涡旋干涉仪的相移,通过识别涡旋干涉条纹的方位旋转角,实现高灵敏度测量。此外,涡旋干涉仪还成功应用于高灵敏度的磁场测量,激光诱导纳米级热透镜和热反镜的动态测量,以及旋转振动的检测等方面。下图22汇总了光学涡旋干涉仪的主要应用领域及其相应的光路结构。

图片

图22 光学涡旋干涉仪主要应用领域及相应的典型光路结构汇总

对于光学涡旋干涉仪的应用,除了自由空间光学装置外,光纤装置在扩展测量范围、压缩硬件和提高稳健性方面显示出巨大的潜力。一些特殊光纤具有良好的旋涡引导模式和保偏的特性,在遥感和内窥镜的应用中具有很大的吸引力。总之,随着涡旋干涉图解调技术的不断发展,光学涡旋干涉仪也将在动态测量领域发挥更大的价值。

参考文章来源:J.T. Dong, E.X. Zhao, L.Y. Xie, Y.Y. Li, Z.P. Tian, and X.L. Xie, "Optical vortex interferometer: An overview of interferogram demodulation methods for dynamic phase measurement," Optics and Lasers in Engineering 175, 108044 (2024).

相关文章:

光学涡旋干涉仪

一、什么是涡旋干涉仪? 涡旋光束一般指电场含有螺旋相位因子exp(iℓθ)的光束,其中ℓ为拓扑荷数,θ为方位角,其波前为螺旋形,光束中心存在相位奇点,因此涡旋光束的光强轮廓是中心强度为零的圆环。早在1992…...

Wireshark快速入门--对启动的后端程序进行抓包

怎么对自己启动的后端程序进行抓包? 1. 安装并启动 Wireshark 你要先从 Wireshark 官网 下载对应系统的安装包,然后进行安装。安装完成后,启动该软件。 可以快速入门可以参考博文:从零开始学 Wireshark:网络分析入门…...

ViTa-Zero:零样本视觉触觉目标 6D 姿态估计

25年4月来自Amazon 公司、Brown 大学和 Northestern 大学的论文“ViTa-Zero: Zero-shot Visuotactile Object 6D Pose Estimation”。 目标 6D 姿态估计是机器人技术中的一项关键挑战,尤其对于操作任务而言。虽然先前结合视觉和触觉(视觉触觉&#xff0…...

继承(c++版 非常详细版)

一. 继承的概念及定义 1.1 继承的概念 继承(inheritance)机制是⾯向对象程序设计使代码可以复⽤的最重要的⼿段,它允许我们在保持原有 类特性的基础上进⾏扩展,增加⽅法(成员函数)和属性(成员变量),这样产⽣新的类,称派⽣类。继…...

解锁服务器迁移的未来:《2025 服务器迁移效率白皮书》(附下载)

一、背景🏙️ 随着全球数字化转型的不断加速,企业在推动 IT 基础设施现代化过程中,面临着前所未有的服务器迁移挑战。传统的迁移工具和多云、混合云环境带来的复杂性,导致迁移效率低、成本高、人力投入大,从而严重阻碍…...

STM32的Flash映射双重机制

在STM32微控制器中,存在一个重要的内存映射特性:Flash存储器可以同时出现在两个不同的地址区域,而且可以通过重映射功能改变CPU启动时从哪个地址获取初始指令。 STM32的Flash映射双重机制 当描述"通常起始于地址0x00000000&#xff0c…...

简单了解跨域问题

什么是跨域? 跨域是浏览器基于同源策略的安全机制。 如何两个请求之间,域名,端口,协议三者中有任意一个不同,就会产生跨域问题。 跨域的解决方案 1. CORS(跨源资源共享) 后端通过设置响应头声…...

sql学习笔记(四)

今天看到一个sql题,“近30天,******”,这里需要用到一个函数,date_add,其作用是在指定日期基础上添加一个时间间隔。 语法(以mysql为例): DATE_ADD(date, INTERVAL value unit) d…...

基于 Java 的实现前端组装查询语句,后端直接执行查询方案,涵盖前端和后端的设计思路

1. 前端设计 前端负责根据用户输入或交互条件,动态生成查询参数,并通过 HTTP 请求发送到后端。 前端逻辑: 提供用户界面(如表单、筛选器等),让用户选择查询条件。将用户选择的条件组装成 JSON 格式的查询参数。发送 HTTP 请求(如 POST 或 GET)到后端。示例: 假设用…...

反射与注解实现动态功能扩展案例-插件系统

学海无涯,志当存远。燃心砺志,奋进不辍。 愿诸君得此鸡汤,如沐春风,事业有成。 若觉此言甚善,烦请赐赞一枚,共励学途,同铸辉煌! 开发一个需要高度扩展性的应用,比如Web框…...

auto(x) decay copy

该提案为auto又增加了两个新语法:auto(x) 和auto{x}。两个作用一样,只是写法不同,都 是为x 创建一份拷贝。 为什么需要这么个东西?看一个例子: void bar(const auto&);void foo(const auto& param) {auto co…...

基于STM32、HAL库的DS2411R安全验证及加密芯片驱动程序设计

一、简介: DS2411R是Maxim Integrated(现为Analog Devices)生产的一款1-Wire硅序列号芯片,具有以下特点: 64位唯一ROM序列号(包括8位家族码、48位序列号和8位CRC校验码) 工作电压范围:2.8V至5.25V 工作温度范围:-40C至+85C 采用TO-92或SOT-223封装 通过1-Wire协议通信…...

疫苗接种体系进入“全生命周期”时代:公共卫生治理再提速

疫苗接种体系进入“全生命周期”时代:公共卫生治理再提速 在防控重大传染病的国家公共卫生战略中,疫苗接种始终处于基础性、先导性地位。2025年4月25日是第39个全国儿童预防接种日,活动主题为“打疫苗、防疾病、保健康”。近年来&#xff0c…...

zynq 7010 PS 串口打印

前言 之前写过一篇文章《zynq 7010 PL 点灯例程》,介绍的是 zynq PL 部分的使用,今天这篇文章则是介绍 zynq PS 部分的使用。 在此之前,先总结点题外话 PL 编程,核心思想是生成 bitstream 文件,加载到 FPGA 运行PS …...

【补题】ACPC Kickoff 2025 F. Kinan The Bank Robber

题意:给出长度为n的序列,接下来给出了两个包裹,你可以选择把数字放进这两个包裹当中,要求你放的的方式,最终会让包裹内的数字双双互质,请你给出你的放法,如果没有输出-1 思路: 1.包…...

局域网传文件——基于flask实现

项目地址 git clone gitgitee.com:xhdx/co_-shared_-doc_in_-local_-net.git 所需python包 flask2.2.3 markdown3.4.1 bleach5.0.1 通过局域网的方式实现文件夹共享,共享的文件会放在uploads这个文件夹下: 运行界面: 包括预览、删除、下载等…...

苍穹外卖10

WebSocket WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信----浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。 HTTP协议和WebSocket协议对比: HTTP是短链接 WebSocke…...

第一天 车联网定义、发展历程与生态体系

前言 车联网(Internet of Vehicles, IoV)作为物联网(IoT)在汽车领域的延伸,正在彻底改变人们的出行方式。无论是自动驾驶、远程诊断,还是实时交通优化,车联网技术都扮演着核心角色。本文将从零…...

大模型(LLMs)强化学习—— PPO

一、大语言模型RLHF中的PPO主要分哪些步骤? 二、举例描述一下 大语言模型的RLHF? 三、大语言模型RLHF 采样篇 什么是 PPO 中 采样过程?介绍一下 PPO 中 采样策略?PPO 中 采样策略中,如何评估“收益”? …...

麻衣相法【麻衣相士】开篇

好久没有发布新的文章了,主要最近一方面没看书,时间基本都用来打游戏了;另一方面看的几本书实在是看不懂,就更不能写上来了。不过今天看到了《麻衣相法》这本书,就又点燃了本人的兴趣,以后失业了,可以摆个小摊子谋生! 话不多说,先把这本书开始的针对人的面部部位进行各…...

vLLM技术解析:大语言模型推理服务的性能革新引擎

vLLM大模型 vLLM(Vectorized Large Language Model Serving System)是由加州大学伯克利分校计算机系统研究团队开发的下一代大语言模型推理服务系统。作为专为现代化AI部署设计的开源框架,该系统通过突破性的内存架构创新和计算流程优化&…...

《无刷空心杯电机减速机选型及行业发展趋势》

无刷空心杯电机作为高精度驱动系统的核心部件,通常需搭配减速机以实现低转速、高扭矩输出。以下是当前主流的减速机类型、市场占比、参数对比及优劣势分析,结合行业数据与典型应用场景展开说明: 一、主流减速机类型及市场占比 1. 行星减速机 市场占比:约 45%-55%(工业自…...

Java锁的升级流程详解:无锁、偏向锁、轻量级锁、重量级锁

在Java中,为了在多线程并发场景下既保证线程安全,又尽可能提高性能,JVM针对synchronized实现了锁的优化升级机制。 锁可以从无锁逐步升级到偏向锁、轻量级锁,最后是重量级锁。 话不多说,发车! 一、无锁&am…...

terraform local-exec与remote-exec详解

在 Terraform 中,local-exec 和 remote-exec 是两种常用的 provisioner(资源调配器),用于在资源创建前后执行脚本或命令。它们的核心区别在于执行位置:local-exec 在运行 Terraform 的本地机器上执行命令,而…...

武装Burp Suite工具:APIKit插件_接口安全扫描.

武装Burp Suite工具:APIKit插件_接口安全扫描. API安全是指通过技术手段和管理措施保护应用程序接口(API)免受未授权访问、数据泄露或恶意攻击的防护体系,核心措施包括身份认证(如OAuth2.0/JWT)、权限控制…...

数据库系统概论|第三章:关系数据库标准语言SQL—课程笔记6

前言 经过前面几篇文章的介绍,已经完成了对于数据查询操作的介绍,接下来,本篇文章将介绍数据更新这一板块,包括插入数据、修改数据以及删除数据三种操作方法。 注:本文中所涉及的数据库前文中已经介绍(指…...

如何在idea中写spark程序

1. 安装配置 Java 和 Scala Java:确保已安装合适版本的 Java Development Kit(JDK),并配置好 JAVA_HOME 环境变量。Scala:由于 Spark 常用 Scala 语言编写,需安装 Scala 开发环境。可在 IDEA 中通过 Se…...

Linux428 chmod 0xxx 1xxx 2xxx 4xxx;umask;chown 属主属组 软件包rpm

sudo: 账户过期,或 PAM 配置缺少 sudo 使用的“account”节,联系您的系统管理员 这样子有没有用嘞 不行 为什么使用caozx26用户sudo修改了shop文件夹强制位,shop文件夹权限中不显示 成功了?真奇怪 查看文件夹权限用 -ld ch…...

基于强化学习的用于非刚性图像配准的引导式超声采集|文献速递-深度学习医疗AI最新文献

Title 题目 Guided ultrasound acquisition for nonrigid image registration usingreinforcement learning 基于强化学习的用于非刚性图像配准的引导式超声采集 01 文献速递介绍 超声成像通常用于引导手术和其他医疗程序,在这些过程中,临床医生会持…...

Shell脚本-嵌套循环应用案例

在Shell脚本编程中,嵌套循环是一种强大的工具,可以用于处理复杂的任务和数据结构。通过在一个循环内部再嵌套另一个循环,我们可以实现对多维数组、矩阵操作、文件处理等多种高级功能。本文将通过几个实际的应用案例来展示如何使用嵌套循环解决…...

QTableView复选框居中

目录 方法一:QSS方法2:自定义复选框委托类一、构造函数 CheckBoxDelegate()二、paint() 方法三、editorEvent() 方法四、关键设计要点五、扩展应用场景六、代码示例(补充) 方法一:QSS QTableView::indicator {position: relative…...

C语言教程(十八):C 语言共用体详解

一、共用体的定义 共用体的定义和结构体类似,使用 union 关键字,其基本语法如下: union 共用体名 { 数据类型 成员1; 数据类型 成员2; // 可以有更多成员 }; 以下是一个简单的共用体定义示例: union Data {int i;float f;char …...

企业办公系统开发如何重塑现代工作方式?

随着工作方式的革新,企业办公软件开发已成为提升组织效率的核心驱动力。从基础的文档处理到复杂的协同办公平台开发,现代办公系统正在彻底改变传统工作模式。本文将深入解析办公类软件的关键技术与发展趋势。 一、企业级办公系统开发的核心模块 专业的O…...

springboot 实现敏感信息脱敏

记录于2025年4月28号晚上--梧州少帅 1. 定义枚举类: public enum DesensitizeType {NAME, EMAIL } 2. 创建自定义注解: 用于标记需要脱敏的字段及其类型。 Retention(RetentionPolicy.RUNTIME) JacksonAnnotationsInside JsonSerialize(using Desen…...

JavaWeb学习打卡-Day5-Spring事务管理、SpringAOP

Spring事务管理 Transactional注解 位置:业务层(Service)的方法上、类上、接口上。作用:将当前方法交给spring进行事务管理,方法执行前,开启事务;成功执行完毕,提交事务&#xff1…...

项目立项管理

项目立项管理是对拟规划和实施的项目技术上的先进性、适用性,经济上的合理性、效益性,实施上的可能性、风险性以及社会价值的有效性、可持续性等进行全面科学的综合分析,为项目决策提供客观依据的一种技术经济研究活动。 一般包括项目建议与…...

一文梳理业财融合在财务管理中的运用!

目录 一、业财融合在财务管理中的运用概括 二、促进财务决策科学化 1. 传统财务决策的局限性 2. 业财融合助力财务决策科学化 三、加强成本控制 1. 传统成本控制的不足 2. 业财融合实现精准成本管控 四、优化资金管理 1. 传统资金管理的问题 2. 业财融合优化资金配置…...

C#核心知识

委托 如何声明一个委托:通过 【delegate 返回值类型 委托名称】 的格式来定义 如何使用一个委托:使用new关键字,并传入和声明委托的构造相同的方法名,比如:new 委托名称(与委托的参数和返回值相同的一个方法名) 如何…...

[多彩数据结构] 笛卡尔树

[多彩数据结构] 笛卡尔树 定义 笛卡尔树,就是一棵树(废话)中存两个信息,为 ( w , i ) (w,i) (w,i)。其中 k w e i g h t , i i d kweight,iid kweight,iid。 即 w w w 存的是节点的值, i i i 存的是编号。 每…...

【Spark入门】Spark RDD基础:转换与动作操作深度解析

目录 1 RDD编程模型概述 1.1 RDD操作分类 2 常用转换操作详解 2.1 基本转换操作 2.2 键值对转换操作 2.3 复杂转换操作 3 动作操作触发机制 3.1 常见动作操作 3.2 动作操作性能对比 4 RDD执行机制深度解析 4.1 惰性求值原理 4.2 任务生成过程 5 性能优化实践 5.1 …...

一文了解 模型上下文协议(MCP)

MCP(Model Context Protocol,模型上下文协议)是由Anthropic公司于2024年11月推出的一项开放标准协议,旨在解决大型语言模型(LLM)与外部数据源和工具之间的通信问题。其核心目标是通过提供一个标准化的接口&…...

每日算法-250428

每日算法 - 2024年4月28日 记录今天完成的几道 LeetCode 算法题。 1877. 数组中最大数对和的最小值 题目描述: 思路 贪心策略。 解题过程 为了最小化所有数对和中的最大值,直观的想法是避免让两个较大的数相加。因此,最优策略是将数组中最小的元素…...

【“星瑞” O6 评测】 — CPU llama.cpp不同优化速度对比

前言 随着大模型应用场景的不断拓展,arm cpu 凭借其独特优势在大模型推理领域的重要性日益凸显。它在性能、功耗、架构适配等多方面发挥关键作用,推动大模型在不同场景落地 1. Kleidi AI 简介 Arm Kleidi 成为解决这些挑战的理想方案,它能…...

Redis 常见问题深度剖析与全方位解决方案指南

Redis 是一款广泛使用的开源内存数据库,在实际应用中常会遇到以下一些常见问题: 1.内存占用问题 问题描述:随着数据量的不断增加,Redis 占用的内存可能会超出预期,导致服务器内存不足,影响系统的稳定性和…...

在g2o图优化框架中,顶点(Vertex)和边(Edge)的定义与功能的区别

在g2o图优化框架中,顶点(Vertex)和边(Edge)是构建优化问题的核心组件,两者的定义与功能存在以下关键区别: 1. 作用与本质差异 顶点(Vertex) 代表待优化的变量,例如: 位姿(如VertexSE3Expmap表示3D位姿,包含平移和旋转)空间点坐标(如VertexPointXYZ表示3D点)参数…...

stm32wb55rg (2) 阅读资料手册

阅读资料是嵌入式开发的必备技能,能够从资料中找到自己想要的技术信息,才是最为核心的技术能力。 nucleowb55rg板子的MCU为stm32wb55rg,这块板子的资料有很多,但有些内容可以边用边读,有些内容有必要预先掌握下。 下面…...

基于Python的携程国际机票价格抓取与分析

一、项目背景与目标 携程作为中国领先的在线旅行服务平台,提供了丰富的机票预订服务。其国际机票价格受多种因素影响,包括季节、节假日、航班时刻等。通过抓取携程国际机票价格数据,我们可以进行价格趋势分析、性价比评估以及旅行规划建议等…...

【LLM开发】Unigram算法

Unigram算法 参考:Unigram算法解释 参考书籍:How Can We Make Language Models Better at Handling the Diversity and Variability of Natural Languages Unigram 算法是一种基于概率的子词分词方法,与BPE算法、WordPiece算法不同&#xff…...

GD32F407单片机开发入门(十六)单片机IAP(在应用编程)详解及实战源码

文章目录 一.概要二.GD32F407VET6单片机IAP介绍1.GD32F407VET6单片机IAP基本原理2.GD32F407VET6单片机IAP基本流程3.Ymodem协议 三.配置一个BOOT工程四.配置一个APP工程五.工程源代码下载六.小结 一.概要 单片机上电或系统复位后,ARM Cortex-M4处理器先从0x0000 00…...

庙算兵棋推演AI开发初探(7-神经网络训练与评估概述)

前面我们提取了特征做了数据集、设计并实现了处理数据集的神经网络,接下来我们需要训练神经网络了,就是把数据对接好灌进去,训练后查看预测的和实际的结果是否一致——也就是训练与评估。 数据解析提取 数据编码为数据集 设计神经网络 -->…...