蓝牙核心规范v5.4解析:从广播编码到PAwR的四大增量
简介蓝牙核心协议v5.4官方规范文档由蓝牙特别兴趣小组于2023年1月发布是确保不同蓝牙设备无缝协同工作的基础性技术文件。面向蓝牙协议栈开发工程师、物联网硬件设计人员、无线通信测试人员及相关专业学习者帮助解决设备间通信方式、数据格式、连接建立与管理机制等核心问题的理解和实现难题。资源压缩包内为单个PDF完整规范大小约22.08MB便于离线查阅和全文检索。文档围绕协议分层展开包含物理层、链路层、网络层等模块并详细定义了高速传输、精确距离测量、低功耗优化、新增广播数据包类型与广播通道映射、加密算法及安全机制升级等关键特性同时明确了蓝牙SIG的版权限制和多种实现选项的设计灵活性。目前已有476人学习下载。系统阅读这份规范可建立蓝牙5.4的完整协议架构认知理解新版本在传输效率、定位精度、功耗控制、连接扩展与数据安全方面的改进细节适合作为蓝牙产品研发、协议测试及学术研究的一手参考资料。1. 蓝牙核心协议为什么“同一标准”里藏着两套完全不同的系统同一个蓝牙标志既能出现在十几块钱的防丢器上也能出现在上千元的降噪耳机上但这两类设备内部的通信机制几乎是两种生物。经典蓝牙BR/EDR走的是“连接导向”的点对点链路低功耗蓝牙LE走的是“广播导向”的轻量交互。蓝牙核心协议 v5.4 这份 2023 年 1 月 31 日发布的规范并没有把这两套系统合并反而在 LE 这条线上继续加码——加密广播数据、带响应的周期广播PAwR、广播编码方案选择每一刀都砍在物联网最痛的地方大规模组网、明文广播被嗅探、长距离覆盖。搞懂这份协议不是去背卷目录而是理解 Bluetooth SIG 如何在“向后兼容”和“新增能力”之间反复权衡。开发者最常见的问题——“为什么我的连接老是断”“为什么广播数据只能发 31 字节”——答案全藏在这套协议的组织方式里。2. 双栈架构Host 与 Controller 的边界为什么规范要拆成 7 卷2.1 物理上切一刀HCI 是芯片与协议栈之间的契约蓝牙规范里最容易被忽略却最关键的设计是 Host 与 Controller 的强制分离。Controller 负责射频、跳频、链路层的时序细节Host 负责逻辑链路、属性协议、安全管理等上层逻辑。两者之间的接口叫 HCIHost Controller Interface它既是一组逻辑命令也可以映射到 UART、USB、SDIO 等物理传输上。这个切分不是出于技术洁癖而是生态博弈的结果。芯片厂商只想交付射频和链路层协议栈厂商想在不碰硬件的情况下支持新特性。某开发者早期调试一个自定义协议栈时遇到过“连接建立慢 200 毫秒”的问题抓包发现 Controller 返回的 LE Connection Complete 事件里Supervision Timeout 被设成了 20 秒而 Host 侧默认配置是 2 秒。HCI 的职责就是在两端之间传递这类参数任何一个版本不匹配都会出现“命令下发成功、行为完全不是预期”的玄学问题。v5.4 规范中 HCI 部分继续承担这种契约角色。比如 PAwR 相关的 HCI 命令要求 Controller 上报 Periodic Advertising 子事件的实际调度情况Host 无法自行推算出射频层的真实时序只能依赖事件回调。理解这层边界读规范时就不会把 Host 的 GATT 层和 Controller 的链路层混为一谈。2.2 卷结构即架构从 Vol 0 到 Vol 7 的高效阅读路径蓝牙核心规范 v5.4 的物理组织方式本身就是架构图。Vol 0 是总目录和合规要求Vol 1 是架构总述Vol 2 到 Vol 7 按协议栈纵向切分。如果你做 LE 开发最值得啃的是 Vol 6LE Controller它包含物理层和链路层规范其次是 Vol 3 的 Part F属性协议和 Part GGATT 规范。很多初学者从 Vol 1 开始逐页读三天后放弃。我一般建议倒着读先看你项目的报错现象比如“GATT 写入失败”回查 Vol 3 的 ATT 层错误码定义再顺藤摸瓜到 Vol 6 的链路层寻找到对应的 PDU 格式。v5.4 的每卷开头都有独立的详细目录配合 PDF 书签跳转比线性阅读高效得多。Vol 4 的 HCI 规范里事件报文和命令报文的参数表非常详细适合作为调试时的字典。2.3 LE Controller 内部的物理层与链路层分工LE 控制器内部不是一块铁板。物理层负责调制、解调、信道编码链路层维护状态机、生成和解析链路层数据包。v5.4 对物理层的修改集中在编码方案选择上——在广播 PDU 中可以显式标注编码类型接收端据此选择解调路径。链路层的数据包格式里Access Address、PDU、CRC 三段的职责完全不同。Access Address 用于相关性检测PDU 是真正的内容载体。广播 PDU 的 header 里有一个重要的位叫 ChSel表示发射端是否使用信道选择算法 #2这个位在 v5.3 的 AdvDataInfo 扩展中有了新的含义。v5.4 在广播加密背景下PDU 的 payload 段被重新定义了语义原来的 AdvData 字段被拆成 IV、加密数据和 MIC 三部分。这一层的每个字节变化都会向上传导到 GATT 层的行为理解链路层是排查一切诡异问题的起点。3. v5.4 的四个增量广播编码选择、加密广播数据、PAwR 与 GATT 安全等级3.1 广播编码选择为什么广播也要区分速率和距离v5.4 新增的 Coding Scheme Selection on Advertising解决了广播链路“一套参数打天下”的尴尬。LE 长距离LE Coded物理层支持两种编码S2 和 S8S8 的覆盖距离更远但速率只有 125 kbpsS2 速率 500 kbps 但距离短一些。v5.4 之前广播端一旦选择了 Coded PHY就只能用一种编码接收端无法预知这次的广播用的是哪种。新机制允许广播端在广播事件中动态携带编码方案信息接收端通过 AdvDataInfov5.3 引入的字段区分不同的编码从而决定何时进入解调流程。这相当于在射频层面做了一次“自适应速率协商”。某团队在做仓储标签项目时把标签放在金属货架深处原来 S8 才能穿透但广播事件里混着 S2 的包读卡器白白在 S8 的路径上等待吞吐量下降了四成。有了编码选择字段接收端可以提前切换解调路径。3.2 加密广播数据广播不再是明文裸奔传统 BLE 广播的最大痛点是数据全裸——任何人在广播范围内用抓包器都能读到厂商自定义数据。v5.4 的 Encrypted Advertising DataEAD提供了标准化的加密方案。核心结构是广播 PDU 的 AdvData 字段被重新组装为 Length、Type0x31、IV、随机数、密文、MIC 六段。EAD 的加密密钥不是临时协商的而是由广播端和接收端预先共享的。常见的做法是通过 LE Secure Connections 配对后导出的 LTK长期密钥再用 KDF 派生一个专门的广播密钥。解密流程是接收端先用 IV 和随机数构造 Nonce对密文做 AES-CCM 解密再校验 MIC。任何一段被篡改MIC 校验直接失败。实际踩坑点在于广播包长度上限。EAD 的 IV 占 4 字节、MIC 占 4 字节、随机数占 4 字节相当于加密开销就把原来的 31 字节有效载荷吃掉三分之一。所以 v5.4 也同步支持了扩展广播Extended Advertising最大 1650 字节但前提是 Controller 支持 LEGA 物理层。如果设备不支持扩展广播EAD 只适合传短消息。3.3 PAwR把单向广播升级成双向会话Periodic Advertising with Responses 是 v5.4 里最重的机制。传统周期广播是单向的广播端在固定间隔发数据接收端被动接收。PAwR 在广播事件中预留了响应时隙接收端可以在指定子事件Subevent里回复数据广播端再统一处理。PAwR 的数据结构分两层外层是周期广播的 AUX_SYNC_IND PDU内层按子事件序号划分时隙。每个 PAwR 事件最多可以配置 255 个子事件每个子事件对应一组接收端。广播端通过 HCI 命令LE Set Periodic Advertising Subevent Data下发各子事件的数据接收端在属于自己的子事件窗口内发送AUX_SYNC_SUBEVENT_RSP响应。本质上这是用时分复用把单信道变成多用户轮询系统。某电子货架标签项目用 PAwR 管理 2000 个标签广播端每 100 毫秒一个事件每个事件分配 20 个子事件每个子事件覆盖 100 个标签。标签只在对应子事件窗口醒来功耗比传统“每标签独立连接”的方案低了一个数量级。但 PAwR 对时钟同步要求极高标签的睡眠时钟漂移超过子事件窗口的一半就会错过响应时隙。3.4 LE GATT Security Levels Characteristic把安全等级写进特征声明GATT 层过去的安全表达很隐晦Server 在特征声明里写权限位Client 读的时候才知道要不要配对。v5.4 新增的 LE GATT Security Levels Characteristic允许 Server 显式声明自身要求的 LE 安全级别1-4 级Client 在发起读写之前就能决定是否建立加密连接。这个特性对多服务端场景非常实用。某可穿戴设备同时暴露心率服务和固件升级服务心率服务允许未配对读取固件升级必须加密。过去 Client 只能试探性读取收到 Insufficient Authentication 错误再触发配对浪费一次往返。有了安全等级特征Client 可提前获取安全策略。这里 Level 1-4 与配对策略的对应关系是Level 1 无安全Level 2 未认证加密Level 3 认证加密Level 4 带输入输出能力的认证加密。4. 链路层时序连接建立、周期广播与 PAwR 子事件的调度机制4.1 广播链路层状态机Advertising、Scanning、Initiating 的切换链路层状态机的核心是五个状态Standby、Advertising、Scanning、Initiating、Connection。广播端在 Advertising 状态周期发 ADV_IND扫描端在 Scanning 状态发 SCAN_REQ 获取额外数据主动连接方在 Initiating 状态监听特定的 ADV_IND然后发 CONNECT_REQ。状态切换的关键参数有三个广播间隔advInterval、扫描窗口scanWindow、连接超时connSupervisionTimeout。某开发者调试时发现设备连接后 3 秒必断排查到最后是 Controller 固件里把 connSupervisionTimeout 配成了 2 秒而 Host 侧的链路监控超时是 10 秒。HCI 命令可以配但两端必须对齐。4.2 连接建立的握手时序ADV_IND → SCAN_REQ → CONNECT_REQ一次完整的连接建立涉及三次交互。广播端在 37/38/39 三个信道上依次发 ADV_IND扫描端收到后如果广播 PDU 里 SCAN_REQ 位被置位就回 SCAN_REQ 获取扫描响应数据连接发起方则直接发 CONNECT_REQ里面包含初始连接参数连接间隔、从机延迟、监督超时、跳频增量。v5.4 的链路层对 CONNECT_REQ 的解析增加了对 Channel Selection Algorithm #2 的支持校验。如果发起端声明支持算法 #2接收端必须按新算法计算跳频序列否则链路建立后数据信道会错乱。这属于“规范变了但固件没跟上”的经典翻车场景。4.3 周期广播的数据同步AUX_SYNC_IND 如何携带映射信息周期广播和普通广播的差异在于“可预约性”。广播端的周期广播事件固定在每个间隔的相同偏移处接收端通过 AUX_SYNC_IND PDU 里的 Aux Offset 字段找到真正的数据 PDU。v5.4 的 PAwR 在 AUX_SYNC_IND 里额外携带子事件数量、子事件间隔和响应窗口长度。下面的伪代码展示了接收端如何根据 AUX_SYNC_IND 定位自己的响应子事件# 接收端解析 PAwR 子事件的伪代码 def parse_pawr_event(pdu): # 从 AUX_SYNC_IND 的 Aux Offset 字段定位主数据包 main_data_offset pdu.aux_offset # 子事件数量决定时隙划分粒度 subevent_count pdu.subevent_count # 子事件间隔相邻子事件起始位置的间距 subevent_interval pdu.subevent_interval # 每个子事件内的响应窗口长度 response_slot_duration pdu.response_slot_duration # 判断当前设备属于第几个子事件 my_index device_id % subevent_count # 计算本设备对应子事件在时间轴上的起点 my_subevent_start ( pdu.event_start_time my_index * subevent_interval ) # 只有落在响应窗口内才能发送 AUX_SYNC_SUBEVENT_RSP if now_in_window(my_subevent_start, response_slot_duration): send_response(pdu.subevent_data[my_index])这里最容易被忽略的是 device_id 到子事件的映射规则。规范允许广播端通过 HCI 命令自定义映射表接收端不能默认取模。某智能货架项目里标签子事件配置是手动分配的但升级固件后映射表错位大量标签在错误时隙醒来既收不到数据也发不出响应。解决方法是让广播端在下发子事件数据时携带显式的 Subevent Index接收端只认索引不做任何推导。4.4 PAwR 的响应处理广播端如何管理上千个终端的并发回复广播端在同一周期事件内可能收到多个子事件的响应。Controller 通过 HCI 的LE Periodic Advertising Report事件把响应数据逐条上报给 Host每条带 Subevent Index 和 TxPower 字段。Host 侧需要自己维护一张“子事件 → 设备”的映射表。处理并发响应的常见实现思路是广播端维护一个环形缓冲区每个子事件响应对应一个槽位事件结束后统一处理。某团队做过压力测试250 个子事件全部有响应时HCI 事件会密集到每毫秒一条如果 Host 的接收线程没有及时读取Controller 的 HCI 缓冲区溢出后直接丢弃事件表现为“响应数量随机变少”。规避方法是在 HCI 层启用事件过滤只上报指定子事件的响应。5. 实现避坑读 v5.4 规范和写协议栈时最容易翻车的六个细节5.1 连接参数更新请求被拒客户端调整连接间隔服务端不理现象手机端发起连接参数更新请求希望把连接间隔从 30 毫秒降到 15 毫秒设备端无响应连接保持原参数。原因v5.4 链路层对连接参数更新有最小时序约束。从连接建立到允许首次更新必须经过至少 5 个连接事件。此外服务端的 GAP 层配置了最小连接间隔为 20 毫秒15 毫秒请求超出约束Controller 直接丢弃。解决先检查 HCI 事件LE Connection Update Complete里返回的 Error Code确认是 0x0DInvalid Parameters还是 0x0ERemote User Terminated Connection。如果是服务端约束问题在 GAP 初始化时把GAP_CONN_PARAM_MIN_INTERVAL放宽或者改为接受请求后再由服务端主动发起更新。5.2 广播数据超过 31 字节就发不出去Legacy Advertising 的硬上限现象把 50 字节的厂商数据填进广播包调用 HCI 命令时返回 Error Code 0x07Command Disallowed广播始终起不来。原因Legacy Advertising PDU 的 AdvData 段最长 31 字节这是物理层 PDU 类型决定的不是软件限制。v5.3 之后虽然有了扩展广播如果 Controller 不支持 LEGA 物理层老命令照旧只有 31 字节。解决确认 Controller 支持 Extended Advertising使用LE Set Extended Advertising Parameters并指定 Secondary Channel 的 PHY 为 LE 1M 或 LE Coded。但注意只有 31 字节的 legacy 广播对老手机兼容性最好早期 iOS 版本对扩展广播解析有 bug新项目也要保留一个 legacy 广播通道。5.3 加密广播解密失败MIC 校验不通过密钥派生上下文不一致现象接收端用配对时导出的 LTK 派生广播密钥解密时连续报 MIC 错误数据全丢。原因EAD 的密钥派生依赖一个“广播密钥种子”这个种子是广播端在配对后通过私有 GATT 服务下发的。如果广播端重启后重新生成了种子但接收端还拿旧种子解密必然失败。规范并没有规定种子的同步机制这属于实现者自定义的协议空隙。解决在广播端增加一个种子版本号字段随 EAD 的随机数一起广播接收端解密前先比较版本版本不匹配就触发重新读取种子的流程。同时确认两端的 AES-CCM Nonce 构造顺序一致这是最常见的不兼容来源。5.4 PAwR 响应永远收不到没有配置响应窗口的最大重试次数现象标签在子事件窗口内发了响应但广播端上报的事件里永远没有该标签的响应数据。原因PAwR 规范允许接收端在一个响应窗口内重发多次但重发次数受限于Response Slot Delay和Response Slot Duration。如果窗口只有 300 微秒而物理层需要 400 微秒才能完成一次 PDU 发送响应直接被链路层丢弃。解决检查广播端的子事件配置把 Response Slot Duration 调到至少两倍于 AUX_SYNC_SUBEVENT_RSP PDU 的空中时间。用 1M PHY 时一个 16 字节的响应 PDU 加空口前导码约 200 微秒窗口设 500 微秒才稳妥。5.5 GATT 读特征没触发安全请求安全等级特征没被正确声明现象客户端读取设备端的敏感特征时没有收到配对请求而是直接返回了数据明文。原因Server 在声明 LE GATT Security Levels Characteristic 时值设置成了 Level 1无安全要求但特征权限位里却写了需要加密。v5.4 的新特性允许在 Server 端用两个维度描述安全权限位用于 ATT 层强制等级特征用于应用层提示。两者不一致时不同的协议栈实现会选择信任权限位导致安全等级特征形同虚设。解决把等级特征的值与权限位统一。比如特征权限位要求认证加密0x1C 的 ENABLE_READ | AUTHENTICATION_REQUIRED等级特征就填 0x03Level 3。同一 GATT 服务里不涉及安全的特征不要引用这个等级特征避免客户端误判。6. 设计取舍选项机制、向后兼容与协议的“债务”v5.4 在机制层面有一个值得玩味的共性几乎每个新特性都是“选项”而非“强制”。Coding Scheme Selection 是选项EAD 是选项PAwR 是选项。规范用大段篇幅定义各种选项的排列组合却很少说“你必须实现哪一条”。这种设计直接体现了 PCLA 许可框架下的思路给不同定位的产品留出裁剪空间同时保证最基础的互操作性。代价也是明显的。协议栈开发者面对的是一张越来越大的“特性矩阵图”为了实现一个 PAwR得同时处理扩展广播、周期广播、Coded PHY、多信道通信四组 HCI 命令。某团队在移植协议栈时发现支持 PAwR 所需的 Controller 固件改动量是支持 v5.2 ISO 信道的一大半。这也是为什么很多低端芯片只宣称“BLE 5.4 Ready”实际只实现了 EAD 和 GATT 安全等级因为完全体 v5.4 的实现成本太高。混合版本互通是另一层隐患。规范的 “Mixing of Specification Versions” 章节处理过这类问题一个 v5.3 的接收端遇到 v5.4 的广播包可能直接跳过新的字段也可能解析失败。某开发者做过兼容性实验把 EAD 的 Type 值定为 0x31构建广播包发给一台旧协议栈的设备旧设备把这个类型当作未知类型直接丢弃不会崩溃但如果把 Type 值沿用旧类型旧设备会尝试解密反而产生严重丢包。从那以后我每次设计新的广播协议都会强制走一遍“老三件”排查先确认接收端的最低协议版本再核对广播 PDU 里新增字段的 Type 值不能与历史值冲突最后用一台老芯片做一次实机兼容性测试。这套习惯看起来笨但省掉了无数次“新功能上线后旧设备集体掉线”的血泪教训。协议规范永远在向前演进而真正的工程能力体现在你如何守住向后兼容的那条底线。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

纹理映射中的摩尔纹与毛刺:从混叠原理到MipMap和各向异性过滤解决方案

纹理映射中的摩尔纹与毛刺:从混叠原理到MipMap和各向异性过滤解决方案

最近有个做渲染的朋友给我发来一段录屏,问我"为什么远处广场砖地面像水波一样荡来荡去,近处人物衣服边缘又像锯齿一样一跳一跳的"。他说自己已经换了8K贴图,问题不但没解决,波浪纹反而更明显了。这个问题其实很典型&…

2026/10/18 6:42:54 阅读更多 →
高分遥感影像预处理全流程与实操指南

高分遥感影像预处理全流程与实操指南

1. 高分遥感数据预处理到底在解决什么问题做高分遥感这一行,最磨人的往往不是算法调参,而是影像预处理。我接手的项目里,十有八九的原始数据都不能直接用:辐射值漂移、大气雾霾、几何偏移、条带噪声、波段错位……这些干扰要是不在…

2026/10/18 6:42:54 阅读更多 →
论文写作工具选型实战:从文献管理到LaTeX排版的完整工作流

论文写作工具选型实战:从文献管理到LaTeX排版的完整工作流

1. 论文工具选型的核心逻辑:先搞清楚你在写作流程的哪个环节说句实话,这几年帮学生、同行改论文,最常遇到的一个问题不是"论文写不出来",而是"工具用不对"。有人用Word的自动编号折腾一天,有人在L…

2026/10/18 6:42:54 阅读更多 →

最新新闻

从“人工走查”到“机器把关”:open-code-review规则引擎实战拆解

从“人工走查”到“机器把关”:open-code-review规则引擎实战拆解

1. 从“走个过场”到“机器把关”的转变做研发管理这几年,我最头疼的事情里,代码评审绝对排前三。不是评审本身没用,而是它太容易流于形式了。团队里大家平时都忙,PR(Pull Request)一多起来,Rev…

2026/10/19 4:04:32 阅读更多 →
Diff驱动的开源代码评审工作流:LLM Agent+CLI工程实践

Diff驱动的开源代码评审工作流:LLM Agent+CLI工程实践

1. 项目概述:这不是一个“工具”,而是一套可落地的开源代码评审工作流你有没有过这样的经历:团队里新同学提交了PR,你点开GitHub页面,盯着满屏红色和绿色的diff发呆——不是不想看,是真不知道从哪下手。一行…

2026/10/19 4:04:32 阅读更多 →
Delphi静默在线升级源码:轻量级自动更新实战方案

Delphi静默在线升级源码:轻量级自动更新实战方案

简介:本资源是一套完整的Delphi自动在线升级程序源码,面向Windows桌面应用开发者,尤其适用于需长期维护、频繁迭代的商业软件项目,解决版本更新不及时、用户手动安装繁琐、更新过程不可控等核心痛点。压缩包共49个文件&#xff0c…

2026/10/19 4:04:32 阅读更多 →
open-code-review:基于CLI+Diff+LLM Agent的开源代码审查协议栈

open-code-review:基于CLI+Diff+LLM Agent的开源代码审查协议栈

1. 项目概述:这不是又一个代码审查工具,而是一次开发协作范式的重新定义“open-code-review”这个名字乍看平平无奇,甚至有点像某个被遗忘在 GitHub 某个角落的冷门仓库。但如果你最近刷过技术社区、看过几篇 LLM 工程化落地的实践笔记&#…

2026/10/19 4:04:32 阅读更多 →
基于CNN的橘子新鲜度图像分类实战:数据增强与PyTorch实现

基于CNN的橘子新鲜度图像分类实战:数据增强与PyTorch实现

1. 题目拆解与项目定位1.1 “识别橘子是否新鲜”到底在解决什么问题第一次看到这个题目的时候,我的第一反应是:这不就是一个典型的图像二分类问题嘛。但仔细想想,里面还是有不少门道的。表面上看,“橘子是否新鲜”就是在问“这张图…

2026/10/19 4:04:32 阅读更多 →
Autoware.Universe高精地图路径硬约束解析:为何必须用~/autoware-map

Autoware.Universe高精地图路径硬约束解析:为何必须用~/autoware-map

简介:本资源是面向自动驾驶开发者与ROS2初学者的Autoware.Universe环境验证实践包,聚焦高精地图部署这一关键前置环节,解决安装后‘能否跑通样例’的核心验证问题。压缩包为15.15MB的zip文件,共含4个核心文件:2个yaml配…

2026/10/19 4:03:30 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →