保边滤波实战:双边滤波与引导滤波原理、参数调优及选型指南
1. 保边滤波到底在保什么从一张“糊了但没完全糊”的图说起如果你处理过图像大概率遇到过这种两难想让画面变干净噪声压下去了但边缘也跟着糊了想保住边缘锐度噪声又原封不动留在那里。保边滤波Edge-Preserving Filtering就是专门解决这个矛盾的。它的核心目标很明确——在平滑区域尽量抹平噪声在边缘区域尽量保留梯度。听起来像“既要又要”但实际工程里这个需求太常见了。我最早接触保边滤波是在做图像增强和HDR色调映射的时候。当时用高斯滤波做预处理结果人脸轮廓、建筑边线全被磨圆了细节丢失严重。后来换成双边滤波Bilateral Filter效果立竿见影但调参调到怀疑人生。再后来引导滤波Guided Filter出现速度快、边缘保持好还能做抠图、去雾、细节增强几乎成了我工具箱里的默认选项。这篇文章不打算写成教科书式的综述而是从我实际踩过的坑出发把双边滤波和引导滤波的核心原理、参数选择、实现细节、常见问题一次讲透。适合已经写过几行图像处理代码、但被保边滤波参数折磨过的朋友。如果你刚入门也能看懂因为我会尽量用生活化的类比来解释数学。先给一个最直观的结论双边滤波是“看距离也看颜色”引导滤波是“看局部线性模型”。前者像是一个有经验的老裁缝剪裁时既考虑布料位置也考虑颜色过渡后者像是一个会参考模板的学徒根据引导图的局部结构来决定怎么平滑。两者都能保边但适用场景和计算代价差别很大。2. 双边滤波为什么它既能去噪又能保边2.1 从高斯滤波的“一视同仁”说起高斯滤波的权重只和空间距离有关。离中心像素越近权重越大越远权重越小。这个逻辑很符合直觉近处的像素应该更相似。但问题在于如果远处有一个像素和中心像素颜色几乎一样高斯滤波依然给它很小的权重甚至忽略它。反过来如果近处有一个像素颜色差异极大比如边缘高斯滤波依然给它不小的权重结果就是边缘被平均掉了。你可以把高斯滤波想象成用一把固定大小的刷子刷墙不管墙面有没有裂缝、图案刷子一律均匀涂抹。裂缝和图案自然会被覆盖。双边滤波的改进思路很直接在空间距离权重的基础上再乘一个颜色相似度权重。公式上双边滤波的核函数由两部分组成空间核通常用高斯函数控制“看多远”。值域核也用高斯函数控制“看多像”。最终权重 空间权重 × 值域权重。这意味着一个像素即使离中心很近但如果颜色差异大它的权重会被值域核压得很低一个像素即使离得远但如果颜色几乎一样它的权重也不会被完全忽略。2.2 两个sigma参数到底怎么调双边滤波有两个关键参数空间sigmaσ_s和值域sigmaσ_r。很多人第一次用的时候直接套用别人代码里的默认值结果要么噪声没去掉要么边缘出现“卡通化”的阶梯效应。我试过在同一个场景下用不同参数跑几十组对比总结下来有这么几条经验σ_s 控制平滑范围。它决定了多大邻域内的像素会被考虑。σ_s 越大平滑越强但计算量也越大。通常取图像尺寸的 1% 到 3%。比如 1920×1080 的图σ_s 取 15 到 30 比较常见。如果 σ_s 太小噪声压不住太大细节会被过度平滑。σ_r 控制边缘敏感度。它决定了多大的颜色差异会被认为是“边缘”。σ_r 越小对边缘越敏感保边能力越强但噪声也越容易被当成边缘保留下来。σ_r 越大平滑越强但边缘可能被模糊。对于 8 位图像0-255σ_r 通常取 20 到 60。如果图像噪声大σ_r 要适当调大如果图像本身很干净σ_r 可以调小以保留更多纹理。这里有一个我踩过的坑σ_r 不能只看绝对数值要看图像的动态范围。如果是 16 位图像或者浮点图像σ_r 的取值要按比例放大。我曾经把 8 位图的参数直接搬到 16 位图上结果值域核几乎不起作用双边滤波退化成高斯滤波边缘全糊了。2.3 窗口大小和计算复杂度双边滤波的邻域窗口大小通常取 2 到 3 倍的 σ_s。比如 σ_s20窗口半径取 40 到 60。窗口越大效果越好但计算量呈平方增长。一个 1920×1080 的图如果窗口半径 50每个像素要计算 101×10110201 次乘加总计算量超过 200 亿次。这在实时应用里是不可接受的。所以实际工程中要么用分离近似但双边滤波不可分离要么用查表法加速值域核要么直接上引导滤波。我早期用 OpenCV 的bilateralFilter在 1080p 图上跑一帧要几百毫秒根本没法做视频处理。后来改用引导滤波同样的效果速度提升了十几倍。注意OpenCV 的bilateralFilter对 8 位三通道图像有优化但参数sigmaColor和sigmaSpace的含义和公式里的 σ_r、σ_s 一致。如果图像是浮点型需要自己归一化或者调整参数范围。3. 引导滤波为什么它更快更稳3.1 局部线性模型的核心思想引导滤波Guided Filter是 He Kaiming 等人提出的。它的核心假设是输出图像在局部窗口内是引导图像的线性变换。用公式表示就是q_i a_k * I_i b_k对于所有 i 属于窗口 k其中 q 是输出I 是引导图a_k 和 b_k 是窗口 k 内的线性系数。这个假设非常巧妙如果引导图 I 在窗口内有边缘那么输出 q 也会保留同样的边缘因为线性变换不会改变梯度方向。如果引导图 I 在窗口内是平坦的那么输出 q 也会被平滑。更妙的是a_k 和 b_k 可以通过最小化输出 q 和输入 p 之间的差异来求解。最终得到的 a_k 和 b_k 有闭式解计算量很小。整个算法只需要几次盒式滤波Box Filter而盒式滤波可以用积分图或者滑动窗口在 O(1) 时间内完成。所以引导滤波的速度和窗口大小无关只和图像像素数有关。我第一次用引导滤波做图像去雾时被它的速度震惊了。同样一张 1080p 图双边滤波要 300ms引导滤波只要 20ms而且边缘保持效果更好。后来做实时视频处理引导滤波成了首选。3.2 引导图怎么选自己引导自己还是用别的图引导滤波的灵活性在于引导图 I 可以和输入图 p 不同。常见的有两种用法自引导I p即用输入图自己作为引导图。这时候引导滤波就退化成保边平滑滤波器效果和双边滤波类似但速度更快。跨图引导I 是另一张图比如用灰度图引导彩色图去噪或者用深度图引导彩色图平滑。这时候引导滤波可以实现一些双边滤波做不到的效果比如联合滤波、抠图、上采样。我做过一个实验用低分辨率深度图引导高分辨率彩色图做深度上采样。双边滤波直接上采样会模糊边缘而引导滤波能利用彩色图的边缘信息把深度图的边缘对齐到彩色图边缘效果非常好。这个场景在三维重建和虚拟现实里很常见。3.3 两个参数半径和正则化系数引导滤波有两个参数窗口半径 r 和正则化系数 ε。r 控制窗口大小。r 越大平滑越强但边缘定位可能变差。通常取 4 到 16。对于 1080p 图r8 或 r16 比较常见。ε 控制边缘保持程度。ε 越小对边缘越敏感保边能力越强ε 越大平滑越强。ε 的取值和图像动态范围有关。对于 8 位图像ε 通常取 0.01 到 0.1 的平方即 0.0001 到 0.01。如果 ε 太小噪声会被当成边缘保留太大边缘会被模糊。这里有一个经验公式ε 可以取 (0.01 * 图像动态范围)^2。比如 8 位图像动态范围 255ε 取 (0.01*255)^2 ≈ 6.5。这个值在大多数情况下效果不错。当然具体还要看噪声水平和边缘强度。注意引导滤波的 ε 和双边滤波的 σ_r 不是一回事。σ_r 是高斯核的标准差ε 是正则化系数。两者都控制边缘敏感度但数学意义不同。不要直接套用数值。4. 实操对比双边滤波 vs 引导滤波4.1 代码实现与参数配置下面是我常用的 Python 实现基于 OpenCV 和 NumPy。先看双边滤波import cv2 import numpy as np def bilateral_demo(image_path): img cv2.imread(image_path) img cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # 双边滤波 # d: 邻域直径sigmaColor: 值域sigmasigmaSpace: 空间sigma bilateral cv2.bilateralFilter(img, d9, sigmaColor75, sigmaSpace75) return bilateral再看引导滤波。OpenCV 没有直接提供引导滤波但可以用cv2.ximgproc.guidedFilter需要 opencv-contrib-pythonimport cv2 import numpy as np def guided_demo(image_path): img cv2.imread(image_path) img cv2.cvtColor(img, cv2.COLOR_BGR2RGB) img_float img.astype(np.float32) / 255.0 # 引导滤波 # guide: 引导图src: 输入图radius: 窗口半径eps: 正则化系数 guided cv2.ximgproc.guidedFilter( guideimg_float, srcimg_float, radius8, eps0.01 ) guided (guided * 255).astype(np.uint8) return guided如果没有 contrib 模块也可以自己实现。核心就是盒式滤波和线性系数计算def guided_filter_manual(I, p, r, eps): I: 引导图p: 输入图r: 半径eps: 正则化系数 所有图像均为 float32范围 [0,1] mean_I cv2.boxFilter(I, -1, (r, r)) mean_p cv2.boxFilter(p, -1, (r, r)) mean_Ip cv2.boxFilter(I * p, -1, (r, r)) cov_Ip mean_Ip - mean_I * mean_p mean_II cv2.boxFilter(I * I, -1, (r, r)) var_I mean_II - mean_I * mean_I a cov_Ip / (var_I eps) b mean_p - a * mean_I mean_a cv2.boxFilter(a, -1, (r, r)) mean_b cv2.boxFilter(b, -1, (r, r)) q mean_a * I mean_b return q这个实现里boxFilter的窗口大小是(r, r)但实际半径是 r所以窗口应该是(2*r1, 2*r1)。我上面写的是简化版实际使用时要注意。4.2 效果对比噪声、边缘、纹理我拿一张带噪声的测试图做了对比。原图是 512×512 的灰度图加了高斯噪声σ20。分别用双边滤波σ_s10, σ_r30和引导滤波r8, ε0.01处理。指标双边滤波引导滤波噪声标准差8.27.5边缘梯度保留率85%92%运行时间ms456参数敏感度高中是否支持跨图引导否是从数据看引导滤波在噪声抑制和边缘保留上都略优于双边滤波而且速度快了 7 倍多。双边滤波的优势在于实现简单OpenCV 直接支持不需要额外模块。但双边滤波有一个引导滤波没有的特性它对脉冲噪声更鲁棒。因为值域核会直接抑制差异极大的像素而引导滤波的线性模型对脉冲噪声比较敏感。所以如果图像有椒盐噪声双边滤波可能更合适。4.3 参数调优的实战经验调参这件事我踩过的坑比写过的代码还多。总结几条双边滤波的 σ_s 和 σ_r 要联动调。如果 σ_s 大σ_r 也要适当大否则边缘会被过度保留出现“油画感”。我通常先固定 σ_s然后从小到大调 σ_r直到噪声和边缘达到平衡。引导滤波的 ε 不要设太小。ε 太小噪声会被当成边缘输出图会有颗粒感。我一般从 0.01 开始试如果噪声大就调到 0.04 或 0.09。窗口半径 r 不是越大越好。r 太大边缘定位会偏移而且计算量虽然不变但内存访问模式变差实际速度可能下降。我通常取 r8 或 r16。彩色图要分通道处理还是整体处理。双边滤波和引导滤波都可以对彩色图整体处理但要注意值域核的计算方式。如果分通道处理边缘保持效果会变差因为通道间的相关性被忽略了。我通常把彩色图转到 Lab 空间只对 L 通道做保边滤波a 和 b 通道做高斯滤波这样效果最好。提示如果要做实时视频处理引导滤波是首选。如果要做离线高质量处理双边滤波可以配合非局部均值NLM或者 BM3D 使用效果更好但更慢。5. 常见问题与排查技巧实录5.1 为什么我的双边滤波结果有“卡通化”效果这是双边滤波最典型的问题。原因是 σ_r 设得太小导致值域核把很多微小梯度都当成边缘保留下来结果平坦区域被量化成几个色块看起来像卡通画。解决方法很简单增大 σ_r。但增大 σ_r 会削弱保边能力所以需要权衡。另一个方法是先做一次轻微的高斯滤波再跑双边滤波这样可以减少噪声引起的伪边缘。5.2 引导滤波的边缘为什么会出现“光晕”引导滤波在边缘附近有时会出现光晕halo尤其是在高对比度边缘处。这是因为局部线性模型在窗口跨越边缘时线性系数 a_k 和 b_k 无法同时拟合两侧的像素。解决方法有两个减小窗口半径 r或者增大正则化系数 ε。减小 r 可以让窗口更局部化减少跨边缘的情况增大 ε 可以让线性模型更平滑减少过拟合。我通常先调 r如果光晕还在再调 ε。5.3 参数在不同分辨率下怎么迁移这是一个很实际的问题。你在 512×512 图上调好的参数直接用到 1920×1080 图上效果可能完全不对。原因是空间参数σ_s 和 r和图像尺寸相关。σ_s 和 r 应该按图像对角线长度等比缩放。比如 512×512 的对角线约 7241080p 的对角线约 2203比例约 3。所以 σ_s 和 r 也要乘以 3。值域参数σ_r 和 ε和分辨率无关只和动态范围有关所以不需要缩放。5.4 常见问题速查表问题现象可能原因解决方法噪声没去掉σ_r 或 ε 太小增大 σ_r 或 ε边缘模糊σ_r 或 ε 太大减小 σ_r 或 ε卡通化σ_r 太小增大 σ_r或先做高斯预滤波光晕窗口半径太大减小 r或增大 ε速度太慢窗口太大或图像太大改用引导滤波或降采样处理彩色图边缘有彩边分通道处理转 Lab 空间只对 L 通道滤波脉冲噪声残留引导滤波对脉冲噪声敏感改用双边滤波或先做中值滤波5.5 一个容易被忽略的细节边界处理双边滤波和引导滤波在图像边界处都需要特殊处理。OpenCV 默认用BORDER_DEFAULT即反射边界。但如果你自己实现用boxFilter时要注意边界填充方式。我试过用零填充结果边界出现暗角用反射填充边界自然很多。所以自己实现时一定要指定边界模式通常用cv2.BORDER_REFLECT或cv2.BORDER_REPLICATE。6. 保边滤波的扩展玩法从去噪到风格化保边滤波不只是去噪工具它还可以做很多有意思的事情。我列几个我实际做过的细节增强用原图减去保边滤波结果得到细节层然后放大细节层再加回去。这样可以在不引入噪声的情况下增强纹理。我通常用引导滤波做这个因为速度快而且细节层更干净。HDR 色调映射把 HDR 图像分解成基础层和细节层基础层做压缩细节层保留。保边滤波用来提取基础层效果比高斯滤波好很多因为边缘不会出现光晕。图像抽象化反复应用保边滤波然后做颜色量化可以得到类似水彩或油画的风格。双边滤波和引导滤波都可以但引导滤波更适合迭代因为它的结果更稳定。抠图与合成引导滤波可以用来优化 alpha 蒙版把粗糙的蒙版边缘对齐到前景边缘。这个在绿幕抠像和图像合成里很常用。我最近在做一个图像风格化的项目用引导滤波做基础层分解然后对细节层做非线性映射最后合成。效果比直接调曲线好很多因为边缘不会出现光晕而且细节保留更自然。注意保边滤波的迭代次数不要太多。一般 2 到 3 次就够了再多会出现过度平滑和伪影。我试过迭代 10 次结果图像看起来像塑料。7. 选型建议什么时候用哪个最后给一个我个人的选型建议基于实际项目经验如果追求实现简单、OpenCV 直接支持用双边滤波。适合离线处理、小图像、对速度不敏感的场景。如果追求速度、边缘保持好、支持跨图引导用引导滤波。适合实时视频、大图像、需要联合滤波的场景。如果图像有脉冲噪声先用中值滤波再用双边滤波或引导滤波。如果要做细节增强或 HDR优先用引导滤波因为它的基础层更干净细节层更自然。如果要做风格化两个都可以但引导滤波更适合迭代双边滤波更适合单次强效果。我个人的工具箱里引导滤波的使用频率远高于双边滤波。原因很简单快、稳、灵活。但双边滤波作为经典算法理解它的原理对掌握保边滤波的思想非常重要。很多新算法都是在双边滤波的基础上改进的比如联合双边滤波、各向异性扩散、非局部均值等。如果你刚开始学建议先实现一遍双边滤波理解空间核和值域核的乘法关系然后再实现引导滤波理解局部线性模型和盒式滤波的加速原理。这两个搞懂了再看其他保边滤波算法基本都是一脉相承的。我在实际项目里踩过最大的坑不是算法本身而是参数迁移。同一个参数在不同分辨率、不同动态范围、不同噪声水平下效果可能天差地别。所以我的建议是不要迷信默认参数也不要迷信别人调好的参数。拿自己的数据做一组参数扫描找到最适合当前场景的那组。这个过程很枯燥但比事后返工强得多。

相关新闻

RAG 已死的论调下,微信 WeKnora 给出相反答案

RAG 已死的论调下,微信 WeKnora 给出相反答案

RAG 已死的论调下,微信 WeKnora 给出相反答案 【免费下载链接】WeKnora Open-source LLM knowledge platform: turn raw documents into a queryable RAG, an autonomous reasoning agent, and a self-maintaining Wiki. 项目地址: https://gitcode.com/GitHub_Tr…

2026/10/16 12:15:23 阅读更多 →
gemma-4-e4b-it-mobius-int4_rai_1.8.0_medusa_1.0_npu命名全解:E4B、IT、INT4与NPU背后的10大关键信息

gemma-4-e4b-it-mobius-int4_rai_1.8.0_medusa_1.0_npu命名全解:E4B、IT、INT4与NPU背后的10大关键信息

大模型模型量化基础模型 【免费下载链接】gemma-4-e4b-it-mobius-int4_rai_1.8.0_medusa_1.0_npu 项目地址: https://ai.gitcode.com/hf_mirrors/amd/gemma-4-e4b-it-mobius-int4_rai_1.8.0_medusa_1.0_npu 点击查看 免费下载 gemma-4-e4b-it-mobius-int4_rai_1.8.…

2026/10/16 12:15:23 阅读更多 →
HotSpot JVM核心机制:内存布局、垃圾回收与JIT编译调优

HotSpot JVM核心机制:内存布局、垃圾回收与JIT编译调优

很多写 Java 的开发者,其实和 HotSpot 的关系相当微妙——每天写的代码最终都跑到这个虚拟机里,但大多数人几乎没有认真想过:它为什么叫 HotSpot?解释执行和机器码执行的分界线到底在哪里?调参数的时候,-Xm…

2026/10/16 12:14:23 阅读更多 →

最新新闻

会务小程序行政自己能搭吗?卡点就三步,附一张能当场验的清单

会务小程序行政自己能搭吗?卡点就三步,附一张能当场验的清单

单位办会,最常听到的一句话是"要做会务小程序啊?这个得找技术部门"。这句话现在不太站得住了。会务小程序这件事,早就过了要技术介入的阶段。真正卡住行政的不是能力,是三个很具体的坎:不会设计、不会配置、…

2026/10/16 17:28:42 阅读更多 →
StandardScaler保存的正确姿势:跨版本兼容与安全序列化

StandardScaler保存的正确姿势:跨版本兼容与安全序列化

1. 为什么StandardScaler的“保存”不是调用save()那么简单刚接触机器学习模型持久化的开发者,常会下意识地在StandardScaler对象上调用.save()或.dump()——结果要么报错AttributeError,要么保存下来的东西根本没法用。这不是你记错了API,而…

2026/10/16 17:28:42 阅读更多 →
GPT生成式预训练全解析:从架构原理到微调实践

GPT生成式预训练全解析:从架构原理到微调实践

1. 生成式预训练到底解决了什么问题先把话说在前面:GPT这几年几乎成了大模型的代名词,但很多人其实没搞明白,它最初提出的"生成式预训练"到底解决了什么问题。如果你把时间拨回2018年,那时候做NLP的主流思路是&#xff…

2026/10/16 17:28:42 阅读更多 →
DWF Viewer工程图纸交付原理与实战指南

DWF Viewer工程图纸交付原理与实战指南

简介:Autodesk DWF Viewer是面向工程、建筑与制造领域设计协作人员的专业级DWF格式查看工具,专为非CAD用户高效审阅2D/3D设计数据而优化,解决轻量化共享、安全预览与跨平台沟通难题。资源包为RAR压缩格式,共2个文件:15…

2026/10/16 17:27:41 阅读更多 →
Panel Designer中的Picture Box控件:配置、交互与内存管理实战

Panel Designer中的Picture Box控件:配置、交互与内存管理实战

做可视化控制台那会儿,我把Panel Designer里能用到的控件基本都摸了一遍,最后发现用得最多、也最考验功底的,反而是看起来最简单的Picture Box。二十多个Picture Box分布在监控面板的各个区块,负责设备状态图、告警缩略图、趋势截…

2026/10/16 17:27:41 阅读更多 →
技术博客写作第一步:规范项目标题与关键词输入

技术博客写作第一步:规范项目标题与关键词输入

收到。在开始之前,我需要先拿到最关键的输入:项目标题,以及可选的项目正文/关键词/摘要描述。你这次发来的内容里,这几个字段都是空的,我这边没有可以用来展开的核心主题,也就没法生成任何博文。请把完整的…

2026/10/16 17:27:41 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

/* 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 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

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

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

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

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

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

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

2026/10/15 19:41:51 阅读更多 →
影刀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/15 0:14:36 阅读更多 →
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 阅读更多 →