卷积运算后特征图大小计算全解析:公式、边界与实战避坑
做深度学习的迟早都要和“卷积运算”硬碰硬。模型跑不通的时候报错信息十有八九都会落在特征图维度上而“特征图大小计算”这个看似简单的算术问题恰恰是很多人卡壳的地方。这篇是“卷积运算和运算后特征图大小计算”的第二篇重点放在公式怎么用、边界情况怎么处理以及在真实模型调参时怎么用手算来少走弯路。如果你正准备手写卷积模块、搭一个自定义网络或者只是在追网络结构代码时被一长串input_shape、output_shape绕晕这篇都值得看完。我不打算堆太多数学推导而是用实际调模型时最容易碰到的情形来拆解每一步都给出能直接上手用的结论。1. 先搞懂卷积运算的本质尺寸变化才有依据1.1 卷积在算什么一个局部加权求和过程很多入门教程喜欢把卷积描述成“滤波器扫描图像”这个说法对但不够到底。卷积本质上是局部加权求和一个尺寸为 K×K 的小窗口按顺序滑过输入特征图每停在一个位置就把窗口内覆盖到的输入值和窗口对应的权重一一相乘再把 K×K 个乘积加起来得到输出特征图上的一个像素值。我用一个生活化例子来理解可以把卷积想象成手电筒照过一面墙手电筒的照射范围就是卷积核墙就是输入特征图。每往右挪一步就是步长手电筒光圈大小就是核大小为了让墙的边缘也能被照到我们在墙外边临时补一圈假墙这就是填充。你每照一个位置只根据光圈内的东西得到一个读数这个读数就是输出像素。理解了这一点尺寸变化就很好理解了输出特征图上能放多少个“读数”取决于手电筒能在墙上一共停多少个有效位置。这个有效位置的数量直接由核大小、步长、填充三者决定和输入的具体像素值没有关系。所以特征图尺寸计算是纯几何问题跟图像内容无关这是它能够被公式统一描述的原因。1.2 滑窗机制步长、感受野与边界填充的配合滑窗机制是卷积的核心执行方式。拿一个具体的例子来走一遍输入是 5×5卷积核是 3×3步长为 1不做填充。窗口从左上角开始覆盖第 1 到 3 行、第 1 到 3 列得到一个输出值接着向右移动一格覆盖第 1 到 3 行、第 2 到 4 列再得到一个输出值继续右移覆盖第 1 到 3 行、第 3 到 5 列。到这一步窗口的右侧已经贴到输入边界再往右就没法完整覆盖 3 列了所以这一行只能产出 3 个值。同理纵向也只能产生 3 个值最终输出是 3×3。这里有个特别容易被忽略的点输出尺寸不是“输入尺寸减核尺寸”这么简单而是要考虑窗口一共能启动多少次。当步长为 2 时窗口每移动一次跨过两个像素位置更稀疏输出会进一步变小。而填充的作用是允许窗口从输入边界“外面一点”开始滑相当于在数学上扩展了输入的可滑动范围从而让输出尺寸不至于缩得那么快甚至能做到输入输出尺寸不变。我把这三者的关系用一句话总结输出尺寸等于“窗口能完整放置的起始位置个数”起始位置必须在扩展后的有效区域内并且相邻起始位置之间间隔为步长。1.3 从公式到直觉特征图尺寸变化的三要素尽管公式后面还会展开讲但你需要先在脑子里建立一个直觉框架特征图尺寸变不变、变大还是变小归根到底只看三个量——核大小、步长、填充量以及后来会遇到的空洞率。核越大卷积一次看的信息越多但输出往往收缩得越明显步长越大输出越稀疏尺寸成比例缩小填充越多相当于给输入“镶边”可以在一定程度上抵消核和步长带来的收缩。为什么三个量里没有一个直接叫“输入尺寸”因为输入尺寸只决定了可滑动总范围而真正决定每一步走多远、窗口多大、能不能从边缘外开始是由核、步长、填充决定的。这就像一条跑道的总长度决定了你最多能跑几个桩点但桩点之间间隔多远、起点能不能画在跑道外才真正决定桩点数量。有了这个直觉你在设计网络结构时就不会再犯那种低级错误比如只有输入数据和核大小却完全没交代步长和填充策略。这三要素缺一个特征图尺寸就算不出来。2. 特征图尺寸计算完整公式与边界情况2.1 标准卷积的尺寸公式与向下取整问题标准卷积层的特征图尺寸公式几乎所有教材都会给H_out floor((H_in 2P - K) / S) 1其中 H_in 是输入高度K 是核大小P 是单侧填充大小S 是步长。宽度 W 同理。这里最关键的是那个向下取整的 floor很多人在这上面栽跟头。我用一个具体例子说明输入高度 H_in 6核大小 K 3步长 S 2不做填充 P 0。套公式(6 - 3) / 2 1.5向下取整得到 1再加 1 得到 2所以输出高度是 2。为什么是 2 而不是向上取整到 3因为窗口起点位置分别是第 0 位和第 2 位如果还想取第 3 个位置起点就得是第 4 位但 3×3 窗口起点在第 4 位时窗口覆盖到第 6 位正好越界无法完整放置所以只能停在第 2 位一共两个起点位置。向下取整不是数学上的严谨问题而是物理约束窗口不能跑到输入边界外面去。但在带填充的情况下扩展后的边界决定了窗口可以越界多少公式里的 2P 就是在处理这个边界扩展。如果你对“算出来带小数”感到困惑最简单的心法是先算窗口可移动的总距离再用步长看能切出多少个完整的间隔。2.2 填充模式带来的尺寸差异VALID 与 SAME不同深度学习框架对卷积填充有两种常见模式很多误算特征图尺寸都是因为混用了这两者的经验公式。第一种是“无填充”模式对应 P 0输出尺寸严格按上面公式算特征图会明显变小。第二种是“保持尺寸”模式它的设计目标不是无脑补零而是让输出尺寸能维持在一个可预期的数值上。在这类模式下框架会自动计算填充量。输出尺寸通常可以近似写成H_out ceil(H_in / S)也就是说输入高度除以步长后向上取整。当 S 1 时输出尺寸等于输入尺寸这就是标准卷积里常用的“尺寸不变”配置。当 S 2 时输出高度约等于输入高度的一半但具体到奇数输入就会向上取整。比如输入 5步长 2在保持尺寸模式下输出是 3。很多人会在这里搞混明明手动填了 P 1为什么输出还是和自己预期不一致因为保持尺寸模式下的 P 不是随便填的 1而是根据核大小和步长自动算出来的。如果你用的接口暴露了自动填充参数就要优先相信打印出来的实际输出形状而不是自己套标准卷积公式。如果必须在手动模式下计算通常框架给出的计算公式和 2.1 节是一致的只是 P 可能来自外部配置。2.3 空洞卷积的尺寸计算等效核尺寸是关键空洞卷积也叫膨胀卷积常被用于图像分割和目标检测它可以在不增加参数量和计算量的前提下扩大感受野。它和标准卷积的尺寸计算核心区别在于核的实际可见范围变大了但参与计算的权重数量不变。空洞率 d 会让一个 K×K 的卷积核在空间上“撑开”等效核尺寸为K_eff (K - 1) × d 1比如一个 3×3 的核空洞率 d 2等效核尺寸就是 (3 - 1)×2 1 5。也就是说它实际覆盖的范围和 5×5 卷积核一样大但只有 9 个位置有权重其余位置都是空洞。计算输出尺寸的时候把公式里的 K 换成等效核尺寸即可H_out floor((H_in 2P - K_eff) / S) 1我用一个例子验证输入 7×73×3 核空洞率 2步长 1无填充。等效核是 5公式为 (7 - 5)/1 1 3输出 3×3。如果误把原来的 K3 代入你会得到 5直接多算了整整一层。这个点在高分辨率特征图上做预测的任务里尤其重要因为一个格子往往对应输入图像里一大片区域尺寸算错会导致后续上采样对齐失败。2.4 转置卷积的尺寸计算反直觉的放大机制转置卷积经常被叫成“反卷积”但它不是卷积的逆运算只是在形状上恢复放大的效果。它的尺寸变化规则和普通卷积相反公式是H_out (H_in - 1) × S - 2P K如果还有 output_padding就再加它。举例输入 4×4核 3步长 2填充 1output_padding 为 0。输出高度为 (4 - 1)×2 - 2×1 3 7。同样宽度也是 7。这个公式看起来简单但使用的时候有两个常见坑。第一个是 output_padding 到底加在哪它不是额外贴一圈边而是保证输出尺寸能够被整除到目标大小。比如从 7×7 上采样到 8×8步长为 2 的计算结果可能是 7此时加一个 output_padding 就把尺寸补到 8。第二个坑是转置卷积的输出尺寸变大并不代表每个像素都来自真实的新增信息更多是学习到的上采样映射所以在分割任务里它经常需要配合跳跃连接来恢复细节。转置卷积的尺寸计算虽然容易混淆但只要记住一个原则就行把普通卷积的公式反过来用并且始终以最终输出 shape 为准。3. 实操环节手算、验证与模型设计中的尺寸推演3.1 一个完整的手算案例从 224 一路下采样在真实模型设计里特征图尺寸通常是逐层变化的。我以一个 224×224 的输入为例设计三条卷积路径第一层核 3×3步长 2填充 1。代入公式(224 2×1 - 3)/2 1 112输出 112×112。这个倍数关系很常见卷积加步长 2 基本就是为了做“下采样”。第二层继续用相同的参数输入 112输出 (112 2 - 3)/2 1 56。第三层同样降一半得到 28。如果是不同参数组合比如核 5、步长 1、填充 2(224 4 - 5)/1 1 224尺寸保持不变。所以核 5 配填充 2和核 3 配填充 1同样可以做到“不改变空间尺寸”。设计网络结构时利用这个对应关系可以灵活切换感受野而不破坏后续层级的尺寸对齐。我把这类手算做成一张表方便对照输入尺寸核大小步长填充输出尺寸2243211121123215656321282245122242831026这张表看起来枯燥但它能帮你建立对网络层级变化的直观感觉。每次动手搭网络前先把这类表列出来比写完代码再调试要省力太多。3.2 用一行代码快速验证计算结果手算容易出错但好在我们可以用一个非常简单的函数来验证。不需要任何复杂库普通 Python 就能写def conv_out_size(h_in, k, s, p, d1): k_eff (k - 1) * d 1 h_out (h_in 2 * p - k_eff) // s 1 return h_out # 例子输入 224核 3步长 2填充 1 print(conv_out_size(224, 3, 2, 1)) # 112这段代码只负责做整数运算和公式一一对应。如果换成转置卷积就写另一行def conv_transpose_out_size(h_in, k, s, p, output_padding0): return (h_in - 1) * s - 2 * p k output_padding # 例子输入 4核 3步长 2填充 1 print(conv_transpose_out_size(4, 3, 2, 1)) # 7我实际调模型的经验是光靠代码验证还不够还要在定义网络时打印出每一层输出的 shape。尤其是在一个结构很深的网络里某一层的维度稍微差一点后面全连接层就会报维度不匹配。先手算一遍再加打印验证双保险。3.3 反推输入尺寸倒着设计网络结构的技巧有些时候你是反过来设计网络的比如分割网络里的 U 形结构后半部分需要把特征图尺寸恢复到和输入一致。这时已知输出尺寸和卷积参数需要反推输入尺寸。普通卷积的反推公式是H_in (H_out - 1) × S K - 2P转置卷积的话反推公式则对应 2.4 节公式的逆运算。在实际项目中我惯用做法是先把目标尺寸写出来再根据对称结构从两端同时往中间推。前端下采样时记录每一步的尺寸变化后端上采样时照着同一组参数反向恢复中间一旦对不上大概率是某个填充或者步长没对齐。另一个非常实用的技巧是“尺寸不变卷积配置”当核大小是奇数时令 S 1、P (K - 1) // 2输入输出尺寸完全一致。K3 就对应用 P1K5 对应 P2。很多主干网络大量使用这种配置来堆叠深度你又想增大感受野又不想让特征图缩小这就是标准答案。3.4 串联池化与全连接层时的整体推演池化层虽然不是卷积但它的尺寸变化逻辑和卷积很像。常见最大池化参数是核 2、步长 2效果就是空间尺寸直接减半。举例输入 28×28经过一次池化变成 14×14两次池化变成 7×7。池化层没有可学习的填充策略所以计算通常简单得多。但要特别注意全连接层出现的位置。全连接层要求输入是一个固定维度的向量它会把特征图展平。假设某一层输出是 4×4×64展平后得到 4×4×64 1024 个数值全连接层第一层必须是 1024 维输入。如果前面任何一层的卷积步长、填充算错导致特征图变成 3×3×64 576那全连接层的维度就全错。我自己就踩过这个坑某次设计一个用于彩色图像分类的小型网络从输入 64×64 出发连续四层卷积加池化手算时忘了某一层的边界处理结果实际特征图比预期小了一块全连接层运行时报维度不匹配。最后排查时一层层打印才发现是第三层的填充配置没有让尺寸保持住。这类问题的教训很直接手写网络结构时不能只算卷积层要把池化、展平、全连接串成一条完整链路。任何一个中间环节的尺寸变化都会传导到最终维度。4. 常见问题与避坑经验4.1 特征图尺寸总和差 1别被整除“骗”了很多人算出来的特征图尺寸比别人代码里的尺寸少 1 或多 1就是因为忽略了向下取整。比如输入 7、核 3、步长 2、填充 0(7 - 3)/2 2.0输出为 3算起来没毛病。可输入变成 8 时(8 - 3)/2 2.5向下取整得到 2输出就是 3。如果心里默认四舍五入就会得到 4差别立刻出现。向下取整的本质在于窗口不能“半个身子”探出边界。遇到尺寸不整除时输出取小的一侧。这个规则对于池化层同样适用。如果你写代码时遇到总和差 1最有效的方法是把表达式里的除法换成整型除法也就是先做减法和乘法最后再整除看结果是否一致。4.2 填充策略不同经验公式不能乱套“填充为 1”在不同框架或不同配置下含义可能略有区别。有的接口用显式的 P 值每边补几圈就是几有的接口用策略字符串比如“无填充”和“保持尺寸”这时 P 不是固定的。经验公式的适用前提是 P 明确如果用的是保持尺寸策略直接套公式反而容易出错。我建议遇到这种情况直接用打印验证来确认。因为在自动填充策略下规则的细节很容易被记错而打印真实输出 shape 永远不会骗人。你只需在构建网络时加一行中间结果输出几秒钟就能定位。4.3 步长与核大小设计不当会让输出“消失”一个更隐蔽的问题是输出尺寸小于等于 0。比如输入 3×3核 7×7无填充步长 1(3 - 7)/1 1 -3输出维度竟然是负的。有些框架在这种情况下会直接报错有些则会给出非常奇怪的形状或后续操作失败。我看过一些新手代码网络写成后总是出现负数维度或零维度报错排查后发现是输入图片太小而卷积核太大。解决办法很简单在模型最开始加一个尺寸保护判断如果计算出的输出尺寸小于 1就自动调整卷积参数或增加填充。尤其是做小尺寸图像任务时输入往往只有几十像素核大小一定不能盲目参照大图像任务来定。4.4 快速心算与一排代码走查网络结构的技巧调模型时我不建议每次都套公式硬算。更高效的方式是用几个默认值做心算核 3、步长 1、填充 1尺寸不变。核 3、步长 2、填充 1尺寸近似减半奇数输入向上取整。核 3、步长 1、填充 0尺寸减 2。核 5、步长 2、填充 2尺寸近似减半。这套心算规则能让你在读别人代码时快速判断某一层大致把特征图缩小了多少倍。如果心算结果和预期不一致再回到公式细算。如果心算没发现问题但运行时报错那就用批量打印 shape 的方式扫一遍把每个中间结果都打出来一眼就能看到是哪一层出了岔子。我把常见现象整理成速查表方便你对照排查现象可能原因排查方法输出比预期小 1步长无法整除时用四舍五入替代向下取整换成整除运算重新计算输出不变但和手算不一致自动填充策略下 P 不是固定值打印实际输出 shape维度为 0 或负数核大小接近或超过输入且无填充增加填充或缩小核全连接层维度不匹配卷积池化某一步尺寸被算错从第一层开始逐层打印 shape分割任务上采样错位转置卷积 output_padding 缺失检查恢复尺寸是否为目标值最后再分享一个我自己的习惯每次写好一个带卷积结构的模型第一件事不是直接训练而是先用假数据跑一次前向把每一层的输出尺寸打印出来对照设计表逐层核对。很多问题在正式训练前就能被提前拦下比起训练到一半再报错能省下大把时间。你现在只要把 2.1 节那个公式真正想明白再加一套打印 shape 的调试流程以后不管遇到什么卷积变体都不会在特征图尺寸上迷失方向。

相关新闻

lift 生产部署指南:vLLM Docker 一键启动与 10 种 GPU 显存自动调优

lift 生产部署指南:vLLM Docker 一键启动与 10 种 GPU 显存自动调优

【免费下载链接】lift Extract structured data from documents quickly and accurately. 项目地址: https://gitcode.com/gh_mirrors/lift21/lift 点击查看 免费下载 lift 是一个 9B 视觉语言模型项目,专门用于从 PDF 和图片中快速提取结构化 JSON 数据…

2026/10/17 3:39:55 阅读更多 →
用Elasticsearch当PHP项目的查询CDN:原理、场景与最佳实践

用Elasticsearch当PHP项目的查询CDN:原理、场景与最佳实践

做 PHP 这么多年,第一次听到同事说“用 Elasticsearch 当 CDN”的时候,我愣了一下:一个是搜索引擎,一个是内容分发网络,怎么画等号?后来他把架构图拉出来,我才发现这不但是个合理的类比&#xf…

2026/10/17 3:39:55 阅读更多 →
前端Mock数据实战:手写请求拦截器与模拟后端接口

前端Mock数据实战:手写请求拦截器与模拟后端接口

1. 为什么前端开发离不开 Mock 数据做过前后端分离项目的人都有一个共同体会:后端接口没写好,前端页面就得干等着。尤其是现在主流的开发模式,前端用 React、Vue、Angular 搭 SPA,后端可能还在设计数据库表结构,两边进…

2026/10/17 3:39:55 阅读更多 →

最新新闻

雷达点云地面过滤:为什么Ray Filter比RANSAC更适配激光扫描物理特性

雷达点云地面过滤:为什么Ray Filter比RANSAC更适配激光扫描物理特性

简介:本资源是一个面向ROS机器人开发者的点云地面滤除实践项目,聚焦于自动驾驶与移动机器人环境感知中的关键预处理环节——利用Ray Filter算法高效分离地面与非地面点云。项目基于PCL库实现,封装为可直接编译运行的ROS节点,适用于…

2026/10/17 6:47:00 阅读更多 →
代码审查实战:open-code-review 打造高效流程与自动化落地

代码审查实战:open-code-review 打造高效流程与自动化落地

1. 代码审查这件事,为什么总让人又爱又恨代码审查(Code Review)在软件研发流程里算是个“老生常谈”的话题。每个人都知道它重要,团队规范里也写着“合入前必须走 Review”,但真正执行起来,问题一大堆&…

2026/10/17 6:47:00 阅读更多 →
SpringBoot+Vue打造知识产权管理系统:从表结构到权限模型的完整实践

SpringBoot+Vue打造知识产权管理系统:从表结构到权限模型的完整实践

前一阵子我接手了一个内部的知识产权管理系统,用 SpringBoot Vue 把专利、商标、软著这些档案管起来。做完之后最大的感受是:这种系统门槛不高,但坑都在“业务规则”上,比如年费哪天该交、官文在谁手里、状态流转谁有权操作。本文…

2026/10/17 6:47:00 阅读更多 →
国产AI算力生态崛起的背后:从单卡性能到集群部署的全栈解析

国产AI算力生态崛起的背后:从单卡性能到集群部署的全栈解析

算力展我逛了整整一天,最大的感受不是“又出了多少块新卡”,而是整个国产化AI算力生态的玩法变了。过去我们说国产芯片,习惯性先看单卡算力、显存容量,跟国际主流产品拉个参数表;但这届展会上,几乎每家展台…

2026/10/17 6:47:00 阅读更多 →
Flink Agents 与 AI 流式应用 —— 第 2 章 环境准备与第一个流式 Agent

Flink Agents 与 AI 流式应用 —— 第 2 章 环境准备与第一个流式 Agent

Flink Agents 与 AI 流式应用 —— 第 2 章 环境准备与第一个流式 Agent 章节定位:动手开始。本章从环境搭建到跑通第一个"Kafka 告警事件 → Agent 诊断 → 输出处置动作"的完整链路,目标 30 分钟见效。核心信息已按官方 0.3.x 文档核实&…

2026/10/17 6:47:00 阅读更多 →
RSA部分密钥泄露与多指数攻击:格基约化如何还原私钥

RSA部分密钥泄露与多指数攻击:格基约化如何还原私钥

2. 从“单指数”到“多指数”:攻击面究竟在哪2.1 部分密钥泄露不是纸面威胁最早接触到RSA部分密钥泄露这个方向,是在一次评估任务里。某客户设备的内存转储样本里,能看到私钥的一个片段——不是完整的那串十六进制,而是中间一段连…

2026/10/17 6:46:00 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 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/16 21:54:38 阅读更多 →
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/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练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/16 14:23:36 阅读更多 →