自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 联邦学习技术原理、经典算法与应用场景

本文全面介绍了联邦学习(Federated Learning)这一创新的分布式机器学习范式。联邦学习通过“数据不动模型动”的核心机制,在保护数据隐私的前提下实现多方协作训练AI模型,有效解决了数据孤岛与隐私保护的双重挑战。核心内容概述:技术原理:采用本地训练、加密参数上传、全局聚合迭代的工作流程,结合同态加密、差分隐私等隐私保护技术三大算法框架:横向联邦学习(特征相同、用户不同)、纵向联邦学习(用户重叠、特征不同)、迁移联邦学习(用户特征均不同)应用领域。

2026-06-11 09:57:57 407

原创 可信执行环境(Trusted Execution Environment, TEE)技术解析与应用2026

可信执行环境(TEE)作为一种基于硬件的安全计算架构,已成为解决"数据使用中"安全问题的关键技术。它通过硬件级别的强制隔离,实现了从"边界防护"向"执行可信"的范式转变,为金融支付、医疗数据、AI计算和云计算等领域提供了强大的安全保障。TEE的主要优势在于其硬件辅助隔离、数据机密性、代码完整性、认证能力以及最小化TCB等特性,使其能够抵御操作系统、虚拟机监控程序甚至云服务商的攻击。然而,TEE也存在一些局限性,如硬件依赖、性能开销、TCB范围限制和侧信道攻击风险等,这些都需要在设计和应用中加以考虑。

2026-06-11 09:38:10 816

原创 Linux系统及Ubuntu常用指令

Linux系统与Ubuntu常用指令指南摘要 本文系统介绍了Linux操作系统及其热门发行版Ubuntu。Linux凭借开源、稳定、安全等优势,广泛应用于服务器、嵌入式等领域。Ubuntu作为易用的Linux发行版,提供桌面版、服务器版等多种选择,26.04 LTS版本强化了硬件兼容性与安全性。文章核心部分分类详解Linux指令,涵盖文件管理(如ls/cp)、系统监控(top/df)、用户权限(chmod)、软件包管理(apt)、网络配置(ip)等11大类常用命令,并附实用示例。

2026-06-09 16:34:20 367

原创 后量子密码算法:协同签名研究综述

本文综述了2023-2026年后量子协同签名算法的研究进展,重点分析了基于格、哈希、编码、多变量和同源曲线等五种技术路线的方案。研究表明,格基算法(如Dilithium、Falcon)在综合性能上表现最优,已具备实际应用条件;哈希基方案(如SPHINCS+)理论安全性最强但效率较低;同源曲线方案签名尺寸最小但计算效率有待提升。文章还探讨了后量子协同签名的理论基础与发展历程,指出NIST标准化进程推动了该领域的快速发展。未来研究需在安全性证明、计算效率优化和应用场景适配等方面进一步突破。

2026-06-09 13:51:22 563

原创 【概念与应用】轻量级加密算法LEA、动态脱敏算法DDA、零知识证明ZKP和优化协同交互协议OCIP

本文系统阐述了LEA、DDA、ZKP和OCIP四项关键技术及其协同应用框架。LEA作为轻量级加密标准,采用ARX结构为物联网等资源受限环境提供高效加密;DDA实现基于角色的实时数据脱敏;ZKP在不泄露隐私信息的前提下验证交易合法性;OCIP则优化云-边-链三方协同效率。四者形成分层协作框架:LEA和DDA构成数据保护层,ZKP提供逻辑证明层,OCIP作为协同优化层,共同构建适用于电动汽车充电证书隐私保护等场景的完整安全解决方案。该技术组合在保证数据安全的同时,显著提升了系统协同效率。

2026-06-09 11:43:34 478 1

原创 同态加密(Homomorphic Encryption, HE)

同态加密是一种允许直接对密文进行计算的密码学技术,解密后结果与明文计算一致,实现了"数据可用不可见"。主要分为部分同态加密(PHE)、些许同态加密(SHE)和全同态加密(FHE),典型算法包括Paillier(加法同态)和CKKS(支持浮点运算)。虽然能提供强大的隐私保护,但存在计算开销大、密文膨胀等问题。当前研究聚焦性能优化、硬件加速和跨技术融合,应用时需根据计算复杂度选择合适方案:PHE适合简单加法聚合,FHE用于复杂敏感计算。实际应用建议使用成熟库如Microsoft SEAL或TenSEAL。

2026-06-03 15:56:53 528

原创 GD32F4系列微控制器上电启动流程

GD32F470微控制器启动流程解析 GD32F470系列基于Cortex-M4内核的启动过程分为三个阶段: 硬件复位:上电后POR电路复位芯片,BOOT引脚决定启动源(FLASH/系统存储器/SRAM),内核从映射地址读取初始栈指针和复位向量; 启动程序执行:跳转至Reset_Handler,初始化系统时钟、重定位中断向量表,拷贝.data段、清零.bss段,并设置堆栈; C环境建立:通过__main完成C库初始化,最终调用用户main函数。

2026-06-03 14:15:48 480

原创 小学生扫盲-大语言模型(LLM)

大语言模型的研究已进入追求效率、深化能力、拓展边界的“深水区”。未来,模型架构会持续进化以突破计算限制;多模态理解与生成能力将更加成熟;而作为AI智能体的“大脑”,LLM将更深入地与现实世界互动。跟踪顶级会议与平台:关注等会议的论文,日常浏览arXiv并筛选cs.CL和cs.AI类别。善用开源社区与工具:以为核心平台,尝试其模型、数据集和演示空间。使用网站追踪最新论文及其官方代码。实践与复现。

2026-06-02 17:24:58 383

原创 上海先辑HPM6750evk2+rttread的启动流程

摘要:本文详细解析了RT-Thread操作系统在HPM6750 RISC-V MCU上的启动流程与移植要点。通过分析链接文件(flash_rtt.ld)和启动文件(start.S、vectors.S、startup.c),揭示了从芯片上电到RT-Thread内核初始化的完整链条,包括关键环节如汇编环境初始化、数据段搬运、中断向量表设置等。

2026-06-02 17:22:21 514

原创 Transformer基础知识

Transformer是AI领域的革命性架构,彻底改变了序列建模方式。其核心创新是完全依赖自注意力机制,摒弃传统RNN/CNN结构,实现高效并行化和长程依赖捕获。架构包含编码器(双向处理输入)和解码器(自回归生成输出),均通过多头注意力、位置编码、前馈网络等组件堆叠而成。关键特性包括:完全并行计算、任意位置直接交互、卓越的可扩展性。Transformer已成为NLP、CV等多领域的通用基础架构,催生了BERT、GPT等大模型。开源实现如PyTorch官方教程和Hugging Face库是深入学习的优质资源。

2026-05-09 10:44:03 385

原创 人工智能AI-扫盲

维度人工智能机器学习神经网络深度学习定位目标/领域方法/子领域一种算法模型一种技术流派核心模拟人类智能从数据中学习模仿神经元连接多层的神经网络关系总称,包含一切AI的核心实现路径ML的一种强大模型NN的深度化发展历史角色提出愿景与目标提供方法论突破提供生物启发模型引爆当前AI革命类比“制造能飞的机器”“研究空气动力学”“设计机翼的一种方案”“现代喷气式机翼方案”发展逻辑驱动力:从AI的愿景驱动,发展到ML的数据驱动,再到DL的算力与架构驱动。技术突破。

2026-05-09 10:40:25 667

原创 SOTA与消融实验

本文介绍了深度学习中两个关键概念:SOTA(State-Of-The-Art)和消融实验。SOTA指特定任务和数据集上当前最优的模型,具有动态性和条件限制,需在公平对比下验证。它不同于Baseline和Novelty概念,强调性能最优而非单纯创新。消融实验则是通过系统移除模型组件来验证各部分的贡献,类比于分析菜肴秘方中每种调料的作用。它是验证创新有效性、分解性能贡献、增强论文可信度的核心方法,通过控制变量实验量化评估各模块的必要性。两者共同构成了深度学习研究的方法论基础。

2026-03-02 21:15:29 863

原创 深度学习算法缝合与炼丹

本文系统介绍了深度学习图像分割的研究流程,重点阐述了算法整合与实验优化的科学方法。

2026-03-02 21:14:19 909

原创 计算机视觉CV的常见方向

计算机视觉的研究方向非常广泛,已经从基础的“看清”发展到深度的“理解”。:在选定大方向后,可以优先关注顶级会议(CVPR, ICCV, ECCV, NeurIPS, ICML)的最新论文,或关注。下面针对图中部分核心及前沿方向,提供更详细的技术要点与趋势解读。上的相关预印本,这是追踪最新进展最直接的方式。(重建、SLAM、NeRF)(视觉-语言、视觉-语音)(语义、实例、全景分割)(GANs、扩散模型)”(SIFT、点云配准)“图像生成(AIGC)(动作识别、行为分析)(增强、去噪、修复)

2026-02-10 23:15:27 1132

原创 小学生必须掌握的Python语法

摘要:本文系统介绍了Python从入门到精通的学习路径,分为基础核心、进阶核心和高级精通三个阶段。基础阶段涵盖变量、数据类型、流程控制等语法基础;进阶阶段讲解函数、面向对象编程和文件处理;高级阶段深入装饰器、并发编程等特性。文章通过大量代码示例和表格对比,清晰展示了Python核心概念和应用场景,为学习者提供了循序渐进的知识框架和实践指导。

2026-02-10 23:13:27 636

原创 BERT模型

从 BERT 的全称,Bidirectional Encoder Representation from Transformer(来自 Transformer 的双向编码器表征),可以看出 BERT 是基于 Transformer 模型的,但是只是其中的编码器。BERT 如此成功的一个原因之一是它是基于上下文(context-based)的嵌入模型,不像其他流行的嵌入模型,比如 word2vec,是上下文无关的(context-free)。

2026-02-01 21:42:15 101

原创 一维卷积神经网络 (1D CNN)

总的来说,1D CNN是处理局部模式显著的序列数据(如传感器信号、音频、文本)的首选工具。它凭借高效、简洁的特点,在众多工业与科研场景中扮演着关键角色。如果你的数据是时间序列、传感器信号、音频波形,并且核心模式主要体现在短时局部片段中(例如心电图的某个异常波形、某个关键词的音频片段),那么1D CNN通常是非常合适且高效的起点。如果你的任务需要建模非常长的序列,并且序列中元素间的长距离依赖关系至关重要(例如理解整段文章的上下文逻辑),那么你可能需要优先考虑,或者将1D CNN与注意力机制结合。

2026-02-01 21:25:11 1716 1

原创 差分隐私深度学习(DP-DL)简要理解

差分隐私深度学习是目前在敏感数据上训练实用AI模型时,提供严格隐私保证的黄金标准方法。它通过梯度裁剪和噪声注入,在模型效用与隐私保护强度之间进行根本性权衡。最新研究趋势提升效用:研究自适应的裁剪阈值、更优的噪声分布、与非凸优化理论结合以减小精度损失。与其他技术结合:与同态加密安全多方计算结合,构建多层防御的隐私计算体系;与联邦学习深度集成,实现端到端的隐私保护。自动化与工具化:研究自动调整隐私参数,降低工程师的使用门槛。总而言之,当你需要在利用数据训练强大模型的同时,

2026-02-01 21:04:52 817

原创 生成对抗网络GAN的简要理解

本文介绍了快速排序算法,这是一种高效的排序方法。其核心思想是选取一个基准元素,通过递归地将数组划分为小于基准和大于等于基准的两部分,最终实现整个数组的排序。文章提供了该算法的Python实现代码示例。

2026-02-01 20:36:33 991

原创 SCons 从入门到精通详细总结(基础-典藏)

SCons是一个基于Python的跨平台软件构建工具,具有自动依赖分析、多语言支持和灵活配置等特点。本文全面介绍了SCons的使用方法,包括:1)基础入门(安装、项目结构、简单构建);2)中级特性(依赖管理、多目录项目、条件构建);3)高级功能(自定义构建器、并行控制、缓存机制);4)实际项目配置示例。文章详细讲解了环境变量设置、构建目标定义、文件操作等核心功能,并提供了C/C++项目的完整配置示例,涵盖不同平台和构建类型的处理方式。通过Python脚本描述构建过程,SCons提供了比传统Make工具更强大

2026-01-06 18:58:36 1488

原创 基于PX4的bootloader和uploader介绍(典藏)

PX4开源飞控系统由飞控软件和QGroundControl地面站组成,支持多种无人机类型。其核心组件包括Bootloader和Uploader:Bootloader是设备端底层软件,负责硬件初始化、固件验证和更新;Uploader是外部工具,用于传输固件并协调升级流程。二者通过通信协议协同工作,共同实现PX4系统的启动和固件更新功能。开发中需重点关注Bootloader的bl.c等源码和Uploader的px_uploader.py脚本。

2026-01-06 18:55:45 1233

原创 多线程编程(含用例、值典藏)

本文介绍了线程的基本概念及其在不同系统中的状态转换。线程是操作系统调度的最小单位,共享进程资源但保持独立执行。文章详细对比了Java和Linux系统中的线程状态及其转换关系,并分析了多线程编程的优势与风险。关键点包括:线程相比进程更轻量级且资源共享,但需注意同步问题;Java线程有6种状态,Linux线程则有5种主要状态;多线程能提升性能但增加程序复杂度。合理使用线程可提高程序响应性和并行效率,但需谨慎处理同步与死锁问题。

2025-12-01 11:34:19 814

原创 多进程编程(典藏、含用例代码)

进程是操作系统进行资源分配和调度的基本单位,是程序的一次动态执行实例。进程由代码段、数据段、堆和栈组成,具有动态性、并发性、独立性等特征。进程状态包括创建、就绪、运行、阻塞/挂起和终止,各状态间可相互转换。进程管理通过进程控制块(PCB)实现,包含进程标识符、状态、调度信息等。进程调度分为长期、中期和短期调度,涉及上下文切换过程。进程的优点包括隔离性强、稳定性高,缺点是创建开销大、通信复杂。

2025-12-01 09:23:37 1046

原创 RT-Thread实时操作系统介绍(典藏、含用例代码)

RT-Thread是中国自主研发的开源实时操作系统(RTOS),具备高度可裁剪性、丰富组件生态和多架构支持等特点。其系统架构采用分层设计,包含内核层、组件层和软件包层,支持灵活配置。线程管理方面提供五种状态(初始、就绪、运行、挂起、关闭)及动态转换机制,确保高效调度。任务创建支持动态和静态两种方式,动态创建通过rt_thread_create()函数实现,自动分配内存并指定优先级、栈大小等参数。RT-Thread广泛应用于物联网、工业控制等领域,装机量已超10亿台设备。

2025-11-27 10:05:30 1643

原创 程序:text段、data段、bss段

C语言程序的内存布局包含三个关键段:text段存储只读的机器指令;data段存储已初始化的全局和静态变量;bss段存储未初始化或零值的全局和静态变量,由系统自动初始化为零。text段在磁盘文件中存储,data段存储初始值,而bss段仅记录大小信息。这些段的生命周期贯穿整个程序运行期,地址分布相邻,与堆栈区域形成对比。通过示例程序可验证各段变量的存储位置特征。

2025-11-25 17:20:32 441

原创 基于rt-thread实现高效工作队列的方法、原理、接口介绍(包含源码)

本文深入分析了FMT-Firmware中的工作队列(WorkQueue)模块,该模块是一个基于"生产者-消费者"模型的异步任务调度系统。核心设计采用最小堆实现优先级队列,支持延迟任务和周期性任务调度。模块包含工作项(WorkItem)和工作队列(WorkQueue)两个核心数据结构,通过RT-Thread信号量保证线程安全。系统默认创建高/低优先级两个队列,工作线程采用事件循环机制,在无任务时自动挂起以节省资源。该设计具有高效调度(O(log n))、线程安全、灵活配置等优点,实现了任务提交与执行的解耦。

2025-08-27 11:01:15 1049

原创 无人机(飞行器)的常见飞行模型和飞行阶段

本文系统阐述了飞行模式与飞行阶段的定义及关系。飞行模式是飞控系统的底层控制策略,决定飞行器如何响应指令(如手动模式、自稳模式、自主任务模式等);飞行阶段则描述任务流程中的宏观状态(如起飞、爬升、巡航、降落等)。两者呈层次关系:飞行模式服务于飞行阶段,共同构成完整的飞行任务管理。理解二者的区别与联系对无人机安全操控和任务规划至关重要,其中飞行模式是控制工具,飞行阶段是任务蓝图。

2025-08-27 00:49:30 1536

原创 遥控器:sbus协议详解(含C语言源码)

SBUS协议是一种用于遥控设备的串行数字通信协议,采用反相逻辑UART信号,通过单线传输16个通道的控制信息。其核心特性包括:100kbps波特率、8E2数据格式、25字节数据帧结构,包含11位/通道的控制数据及状态标志。协议支持故障安全检测,更新速率为14ms(标准模式)或7ms(快速模式)。实际应用中需注意硬件反相处理,并正确解析数据帧中的位拼接信息。该协议广泛应用于飞控系统,实现高效可靠的遥控通信。

2025-08-27 00:21:39 2487

原创 FMT的目录结构、启动运行流程和任务的详细介绍(FMT-firmware源码)

Firmament (FMT) 是一款基于模型设计 (Model Based Design, MBD) 的开源自驾仪,可被用来快速构建无人机、车辆、船舶、机器人等的无人控制系统。基于模型设计 (MBD) 方法允许高效快速地开发高质量的控制系统,适用于各种无人控制平台,包括航空器、地面车辆、船舶和机器人。其中,FMT-Firmware代码结构较为复杂,要理解代码就要分清楚代码的目录结构、main函数启动,以及任务的定义,接下来将从这三个方面进行介绍。若有错误之处,请大家批评指正。

2025-08-15 21:06:26 1204

原创 惯性测量单元(IMU)-QMI8658A驱动开发简要介绍

QMI8658(A系列)是一款国产六轴姿态传感器,也是一款低噪声、高带宽的六轴惯性测量单元(IMU),主要包含三轴陀螺仪和三轴加速计,还包括温度计。所以该传感器就是读取六轴数据就可以了,姿态解算自己在控制端实现,因为目前attitude engine无法使用了。QMI8658A数据手册地址QMI8658C数据手册地址QMI8658在典型传感器模式下,输出原始传感器值,使用寄存器配置和读取传感器的采集的数据,其思路为:上电->复位->陀螺仪校准->自检->配置传感器->读取传感器数据。使用配置的寄存器如下。

2025-08-01 21:07:53 3684

原创 气压计SPL07驱动开发简要介绍

支持存储最近32次气压或温度的测量结果。按照采样频率的不同,这32个结果中压力、温度的结果值个数不一样。比如,气压的采样频率是温度的3倍,那么这32个结果中有24个为气压数值,8个温度数值。SPL07 是一款高精度、低功耗的微型数字气压传感器。SPL07-003 既是压力传感器,也是温度传感器。当有新的测量结果可用或者FIFO满了时,就会在引脚SDO产生中断信号。支持IIC接口和SPI接口(4线SPI和3线SPI)。支持三种工作模式:待机模式、命令模式和后台模式。默认是采用IIC接口通信。

2025-08-01 15:13:37 646

原创 C语言实现RK3588(ubuntu)的串口和网口通信程序

在上述代码中有信号处理函数,处理SIGINT信号。printf("\n服务器终止中...\n");exit(0);现在简要介绍一下SIGINT和SIGSTP信号。SIGINT 和 SIGTSTP 是 UNIX /类UNIX 系统中的两种不同的信号,它们用于进程间通信和控制。

2025-08-01 14:44:14 1209

原创 【飞控系统】简要理解

无人机飞控系统由感知层、决策层和执行层组成。感知层通过IMU、GPS等传感器获取飞行数据;决策层运用PID控制算法和卡尔曼滤波处理数据;执行层通过电机和舵机执行飞行指令。这三层结构协同工作,使无人机实现精准控制和智能飞行。

2025-07-27 23:34:45 963

原创 【git版本管理】常用指令和基础教程

在软件开发过程中,git是最常见的协作、版本控制软件,在工作和学习中经常用到;本文将简要介绍git的基本概念和常用命令。

2025-07-27 22:20:19 462

原创 vs、vscode工具使用

常见工具使用技巧等。

2023-10-24 16:11:44 425

原创 C语言用十六进制的方式打印字符串(密文字符串打印查看)

密码算法处理后的数据D,如果使用普通的printf函数打印D,不能正确显示数据;其原因有1.ASCII编码的字符分为可显示字符和非可显示字符,2. 遇到00后会默认结束,等。所以要查看密文数据D,应该用十六进制的方式打印查看;其函数为PrintHex,具体如下。

2023-10-24 15:41:23 1222

原创 【新手】shell编程简介及快速入门

shell编程的基础介绍,适合初学者学习交流,我也是学习后留一笔记。

2023-08-27 21:57:17 209

原创 linux开发环境基础搭建

Makefile带来自动化编译,一旦写好,只需要一个make指令,整个工程完全自动编译,极大的提高了软件开发的效率。注,make工具需要提前安装好哦。gdb是有GNU软件系统社区提供的调试工具,同GCC配套组成了一套完整的开发环境,GDB是linux和许多类Unix系统中的标准开发环境。调试的可执行程序理论上应该由类似如下质量生成,理论上。其中,-g选项的作用是在可执行文件中假如源代码信息;-wall选项是打开所有warning;-O选项是关掉编译器优化选项。......

2022-07-20 22:12:12 1389

原创 【留下笔记】实习过程中查询过的问题,留下来

C语言数组名和指针?答:数组名可以当做指针使用,因为数组名可以表示改数组第一个元素的地址;但不能将数组名理解成指针,两者区别很大。内存申请相关函数:malloc、ralloc、freevoid * malloc(size_t size); //申请size个字节的内存空间void *realloc(void * prt,size_t size ); //跳帧之前malloc、calloc、realloc所分配ptr所指向的内存卡大小。char c = ‘我’ 正确吗?错误,一个char

2022-01-19 14:55:11 875

原创 查看C语言函数/程序运行时间与linux下获取秒级、微秒级精确时间的方法

前言获得函数的运行时间,在测试和验证函数接口中经常用到。近日,check测试单元对项目的函数接口测试时莫名其妙的报错【(after this point) Test timeout expired】,寻找了很多方法都没解决问题。最后,决定对函数运行时间的判断,果然发现其中新增函数的运行时间极长,分析其需要等待某些资源,最终解决问题。通过网上各种方法的寻找,这些方法的介绍比较散乱,实际可用性较低;因此,本文将介绍三种简单的程序运行时间的获取方法,直接使用,拒绝套路。第一种:直接使用linux下的time命

2022-01-17 15:57:36 3847 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除