格拉姆角场(Gramian Angular Field, GAF)详解

格拉姆角场(Gramian Angular Field, GAF)详解

格拉姆角场(Gramian Angular Field, GAF)是一种于2015年被提出的时间序列可视化与特征编码技术。其核心思想是将一维时间序列转换为二维图像,并在此过程中保留原始序列的时间依赖关系与数值特征。目前,GAF已在故障诊断、生物电信号分析、射频信号识别等多个领域得到广泛应用。

GAF的实质是借助极坐标变换格拉姆矩阵的结构,将一维序列中的“时间–数值”映射为图像中的像素关联信息。生成的图像矩阵的行列索引直接对应时间顺序,使其能够兼容主流图像识别模型(如CNN),从而挖掘出时间序列中的深层特征。

一、GAF 的核心设计逻辑

传统的一维时间序列包含两类基本信息:数值大小(如振幅)和时间顺序(如信号随时间的变化趋势)。折线图等常规方法虽能展示趋势,却难以显式表达不同时刻之间的数值关联。GAF 通过以下三步逻辑实现信息的结构化编码:

  1. 数值归一化:将原始序列缩放至[-1, 1]区间,消除量纲与异常值影响,为极坐标变换提供基础;
  2. 极坐标转换:将时间索引映射为半径,数值大小映射为角度,建立 时间-数值 在极坐标系统中的对应关系;
  3. 格拉姆矩阵构建:基于极坐标角度,通过三角运算(如余弦和/差)构造 Gram 矩阵,将数值之间的时序关系转化为图像像素值。

二、GAF 的实现步骤(标准流程)

以任意 1 维时间序列 X=[x1,x2,...,xN]X = [x_1, x_2, ..., x_N]X=[x1​,x2​,...,xN​](N 为序列长度)为例。

步骤 1:数据归一化(Normalization)

将原始序列归一化至区间 [-1, 1] :

x~i=2(xi−min(X))max(X)−min(X)−1\Large \tilde{x}_i = \frac{2(x_i - min(X))}{max(X) - min(X)} - 1x~i​=max(X)−min(X)2(xi​−min(X))​−1

其中

  • min(X)min(X)min(X)、max(X)max(X)max(X)分别为原始序列的最小值和最大值;
  • x~i∈[−1,1]\tilde{x}_i \in [-1, 1]x~i​∈[−1,1],归一化后不仅消除了量纲影响,还确保后续角度计算时 arccos(x~i)arccos(\tilde{x}_i)arccos(x~i​) 有实数解。

步骤 2:极坐标编码(Polar Coordinate Encoding)

将归一化后的序列 X~=[x~1,x~2,...,x~N]\tilde{X} = [\tilde{x}_1, \tilde{x}_2, ..., \tilde{x}_N]X~=[x~1​,x~2​,...,x~N​]映射到极坐标系:

  • 半径(表示时间索引):

ri=iN,i=1,2,3...,N\large r_i = \frac{i}{N}, \quad i=1,2,3...,Nri​=Ni​,i=1,2,3...,N
时间越晚,半径越大,靠近单位圆边缘。
每个角度

Read more

3步解决VRChat跨语言交流难题:智能翻译工具实战指南

3步解决VRChat跨语言交流难题:智能翻译工具实战指南 【免费下载链接】VRCTVRCT(VRChat Chatbox Translator & Transcription) 项目地址: https://gitcode.com/gh_mirrors/vr/VRCT 在VRChat的全球虚拟社交中,你是否曾经因为语言障碍而错失与外国友人深入交流的机会?当日本玩家热情问候时,你只能尴尬地回复"Hello"?当韩国朋友分享有趣经历时,你却无法理解其中细节?VRCT作为专业的VRChat聊天框翻译与语音转录工具,为你提供完整的跨语言沟通解决方案。 问题场景:VRChat语言障碍的三大痛点 即时翻译需求 - 在实时对话中,逐字逐句复制到翻译软件再粘贴回游戏,严重破坏沉浸感 语音理解困难 - 即使看到对方在说话,也无法理解具体内容,错失重要社交信息 界面干扰问题 - 传统翻译工具需要频繁切换窗口,影响游戏体验 解决方案:VRCT智能翻译工具核心功能 VRCT通过三大核心功能彻底解决语言障碍问题: 实时双向翻译 - 支持英语、

【花雕学编程】Arduino BLDC 驱动方案 —— MimiClaw(迷你小龙虾)+ ESP32 嵌入式组合机器人

【花雕学编程】Arduino BLDC 驱动方案 —— MimiClaw(迷你小龙虾)+ ESP32 嵌入式组合机器人

这是一套面向无刷电机(BLDC)、高度集成、可快速开发、支持本地智能的机器人开发组合。它将 ESP32 高性能主控 + MimiClaw 智能控制框架 + Arduino 生态易用性 + BLDC 无刷电机驱动 融为一体,是目前创客、实验室、竞赛、小型机器人领域最实用、最稳定、性价比极高的嵌入式机器人方案。 一、核心定义(专业版一句话解释) MimiClaw(迷你小龙虾)+ ESP32是一套基于 Arduino 开发环境、面向 BLDC 无刷电机控制、支持本地智能决策的嵌入式机器人控制系统。它以 ESP32 为硬件核心,以 MimiClaw 为控制大脑,实现无刷电机驱动、传感器融合、自主决策、无线通信、多关节机器人控制一体化。 简单说:ESP32 = 身体与算力MimiClaw = 思考与逻辑BLDC 无刷驱动 = 动力系统Arduino

2023年电赛H题(信号分离装置)-FPGA+stm32解法

2023年电赛H题(信号分离装置)-FPGA+stm32解法

目录 前言 题目 解题思路 基本框架 代码思路 第一部分(FPGA的FIFO以及串口发送接收) 1.FIFO 2.(FPGA串口发送) 3.FPGA串口接收 4.总结 第二部分(stm32接收数据进行FFT识别波形以及频率并发送) 1.stm32串口接收 2.stm32进行FFT 3.stm32串口发送 第三部分(FPGA得到波形与频率后生成波形) 第四部分(FPGA锁相) 1.鉴相 2.环路滤波 3.反馈 第五部分(DAC输出) 第六部分(移相) 1.按键消抖 2.按键设置相位差 3.数码管显示相位 第七部分(FPGA代码总结) 后记 前言 本文章除开要求一使用的增益为一的加法器以外,其余皆由FPGA+

LazyLLM 多 Agent 应用全流程实践:从源码部署到可视化 Web 调试的低代码方案

LazyLLM 多 Agent 应用全流程实践:从源码部署到可视化 Web 调试的低代码方案

LazyLLM 多 Agent 应用全流程实践:从源码部署到可视化 Web 调试的低代码方案 前言:为什么选择 LazyLLM 构建多 Agent 大模型应用? LazyLLM 作为低代码构建多 Agent 大模型应用的开发工具,可大幅降低大模型应用的开发与部署门槛。本文聚焦其在豆包模型的落地实践,将从源码部署豆包文本模型的完整配置步骤入手,延伸至官方 WebModule 启动可视化 Web 界面的实操流程,并配套精准性、简洁度等多维度的部署测试说明,为开发者提供可直接对照的实操指南,助力高效完成豆包模型在 LazyLLM 框架下的部署与验证。 LazyLLM 整体架构解析:三层联动的多 Agent 运行体系 LazyLLM 的架构分为三层级递进结构,各层级分工明确且联动协同,实现从应用开发到落地执行的全流程覆盖:上层(LazyPlatform AI 大模型应用开发平台):核心含应用编排平台以可视化编排、发布、回流、调优的闭环完成应用构建迭代与平台管理模块通过租户、权限管理支撑多用户运维,是开发者的高效开发管理入口中层(