news 2026/2/25 1:16:10

用fft npainting lama做了个去文字项目,全过程分享

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用fft npainting lama做了个去文字项目,全过程分享

用FFT NPainting LAMA做了个去文字项目,全过程分享

1. 为什么选这个工具做文字去除?——不是所有修复模型都适合“去字”

你有没有遇到过这样的场景:一张精心设计的海报上,临时加的活动文案需要撤掉;一份扫描的合同里,手写的批注要清理干净;或者截屏的App界面,想把顶部状态栏文字抹掉再发到社交平台?这时候,你试过PS的“内容识别填充”,也点过各种AI修图App的“智能擦除”,但结果常常是:要么边缘生硬像贴了块补丁,要么周围纹理被带偏,甚至把旁边不该动的logo也“顺手修复”了。

我试过七八个开源图像修复方案,直到遇到这个由科哥二次开发的FFT NPainting LAMA镜像,才真正觉得:“对,就是它。”
它不是靠简单模糊或复制粘贴来糊弄,而是用一种更“懂图”的方式工作——底层融合了频域处理(FFT)与LAMA先进修复网络的双重能力。简单说:

  • FFT部分让它能看清图像的“结构骨架”(比如文字边缘的高频突变、笔画走向),不把文字当普通色块,而是当成需要精准剥离的干扰信号;
  • NPainting + LAMA部分则负责在保留原始材质、光影、纹理的前提下,用上下文智能“编织”出自然过渡的背景。

这不是“删掉再填满”,而是“先听懂这张图在说什么,再悄悄把那句话抹掉,还不让别人发现它曾存在过”。

所以这次,我不讲原理推导,也不堆参数配置。就带你从零开始,用一台普通服务器(甚至本地笔记本),完整走一遍:上传一张带文字的图 → 圈出文字区域 → 点一下 → 得到一张干干净净、毫无PS痕迹的图。全程不用写一行代码,但每一步我都告诉你“为什么这么操作”“哪里容易踩坑”“效果不好时怎么救”。


2. 三分钟启动:WebUI服务跑起来就能用

别被“FFT”“LAMA”这些词吓住——这个镜像最大的优点,就是把复杂技术全封装进了图形界面。你不需要装Python环境、不用配CUDA、更不用下载几十GB模型。它已经打包好,开箱即用。

2.1 启动服务(真的只要30秒)

登录你的Linux服务器(Ubuntu/CentOS均可),执行这两条命令:

cd /root/cv_fft_inpainting_lama bash start_app.sh

看到终端刷出这段提示,就成功了:

===================================== ✓ WebUI已启动 访问地址: http://0.0.0.0:7860 本地访问: http://127.0.0.1:7860 按 Ctrl+C 停止服务 =====================================

小贴士:如果提示端口被占(比如7860已被占用),只需编辑start_app.sh文件,把--port 7860改成--port 7861或其他空闲端口,再运行即可。

2.2 打开浏览器,进入界面

在你自己的电脑浏览器里,输入:
http://你的服务器IP:7860
(例如:http://192.168.1.100:7860http://47.98.xxx.xxx:7860

你会看到一个清爽的界面,左边是画布,右边是结果预览区,顶部写着“ 图像修复系统”,右下角还有一行小字:“webUI二次开发 by 科哥 | 微信:312088415”。
这就是你的文字清除工作室,现在,我们正式开工。


3. 实战演示:一张会议纪要截图,如何干净去掉所有手写批注?

我拿一张真实的会议纪要截图来演示(为保护隐私,已做模糊处理,但文字结构、字体、背景纸张质感完全保留)。这张图上有三处关键文字需要去除:

  • 左上角红色手写“待确认”
  • 中间段落旁蓝色圆圈+箭头批注
  • 右下角黑色签字栏里的“张经理”签名

3.1 第一步:上传图片(三种方式,总有一种顺手)

点击左侧大大的上传区域,或直接把图片文件拖进去,或复制截图后按Ctrl+V粘贴——三者任选其一。
支持格式:PNG(推荐)、JPG、JPEG、WEBP
注意:PNG能保留透明通道和无损细节,对文字边缘修复更友好;JPG因有压缩,有时会把细小笔画“吃掉”,导致标注困难。

上传后,图片自动居中显示在左侧画布上,清晰锐利。

3.2 第二步:精准标注——不是“涂满”,而是“框准”

这是整个流程中最关键、也最容易翻车的一步。很多人修复失败,90%是因为这一步没做好。

核心原则:白色标注 = 你要它“消失”的区域。系统只修复你涂白的地方,其余部分原封不动。

我们分区域操作:

3.2.1 处理左上角“待确认”红字
  • 点击工具栏的画笔图标(默认已激活)
  • 拖动下方“画笔大小”滑块,调到中等偏小(约30–50px)
  • 用画笔沿着红字外缘轻轻描一圈,不要求100%贴合,但确保:
    红字全部被白色覆盖
    白色不溢出到旁边空白区域(避免误伤背景)
    ❌ 别用超大画笔“唰”一下全涂——那样系统会以为整片区域都要重绘,结果可能把旁边表格线也“修复”没了
3.2.2 处理蓝色批注(圆圈+箭头)
  • 这类带形状的批注,建议分两笔
    ① 先用小画笔(20px左右)描圆圈内侧边缘,把圆圈本身涂白;
    ② 再用稍大画笔(40px)沿箭头轨迹轻扫,覆盖箭头主体;
  • 如果箭头末端有文字,同样圈住。
    技巧:鼠标滚轮可缩放画布(部分浏览器支持),放大后更容易控制笔触。
3.2.3 处理右下角“张经理”签名
  • 签名笔画连贯、有飞白,直接涂容易漏。这里用“扩大包围法”:
    • 用中等画笔(50px)在签名外围画一个松散的椭圆框,确保所有笔画都在框内;
    • 再用小画笔(15px)进到框里,把明显露出来的起笔、收笔处补涂几下。
  • 目标:白色区域略大于文字本身,给系统留出羽化过渡空间。

标注完成检查清单:

  • 所有目标文字都被白色覆盖(哪怕只漏一个点,那里就不会修复)
  • 白色未大面积侵入纯色背景(如大片白底)
  • 没有把旁边重要元素(如LOGO、印章、表格线)一起涂白

3.3 第三步:点击“ 开始修复”,然后——等

点击那个醒目的蓝色按钮。界面上方的状态栏会立刻变成:
初始化... → 执行推理... → 完成!已保存至: /root/cv_fft_inpainting_lama/outputs/outputs_20240520143022.png

整个过程,我的测试图(1200×800 PNG)耗时12秒
右侧结果区同步刷新,一张崭新的图出现:红字、蓝圈、黑签名全部不见,取而代之的是与周围纸张纹理、阴影、底色完全一致的“空气”——没有模糊、没有色差、没有拼接感。


4. 效果对比与细节放大:为什么它看起来“不像修过”?

光说“效果好”太虚。我们拉几个局部,放大看真实表现:

区域原图特征修复后效果关键观察点
红字“待确认”边缘红色墨水在灰纸背景上,有轻微晕染边缘过渡自然,纸张纤维纹理延续,无色块感FFT模块精准识别了“红色高频突变”,只干预该频段,不扰动低频的纸纹
蓝色箭头路径箭头穿过一段横线,横线本应保持连续横线在箭头位置无缝衔接,粗细、角度完全一致LAMA网络理解了“线条连续性”这一语义,不是简单复制周边,而是生成逻辑连贯的延伸
“张经理”签名处签名压在浅灰色格子线上,格线需保持完整格线穿过原签名位置,平直、均匀、无断点系统自动识别并保留了背景中的规则结构,证明其具备基础几何理解力

再看整体观感:

  • 色彩统一:修复区与原图色温、明暗完全一致,无“补丁感”
  • 纹理匹配:纸张的细微噪点、扫描留下的颗粒感,全部自然延续
  • 结构保真:表格线、段落边距、页眉页脚等非文字元素,0干扰

这背后,是FFT提供的频域鲁棒性 + LAMA的语义级生成能力的结合。它不追求“最炫酷”,而追求“最不被察觉”。


5. 遇到问题怎么办?四个高频问题的真实解法

即使操作很傻瓜,实际用时仍可能卡住。以下是我在真实项目中踩过的坑,附带亲测有效的解法:

5.1 问题:修复后文字残留,像“鬼影”一样半透明

原因:标注太薄,或文字本身半透明(如PDF导出图、带图层的PSD)
解法

  • 不要重画,直接点“ 清除”按钮清空当前标注;
  • 重新上传同一张图;
  • 这次用稍大一号的画笔,在原文字区域涂两遍(第一遍打底,第二遍加厚),确保白色完全不透底;
  • 再次修复。90%的情况一次解决。

5.2 问题:修复区域周围出现奇怪色边(比如一圈浅黄)

原因:标注紧贴文字边缘,系统羽化时把邻近像素的色偏也带进来了
解法

  • 清除标注,重新上传;
  • 刻意把白色涂出文字边界2–3像素(就像给文字画个“呼吸区”);
  • 让系统有足够缓冲空间做平滑过渡。实测比“严丝合缝”效果好得多。

5.3 问题:大图(>2000px)修复极慢,甚至报错内存不足

原因:显存吃紧,LAMA模型对高分辨率敏感
解法

  • 不降质,只降尺寸:用系统自带的“裁剪”工具(界面右上角图标),把图切成2–3块分别修复;
  • 修复完后,用任意图片工具(甚至Windows画图)拼回去——因为每块修复都独立保真,拼接处几乎看不出接缝;
  • 或上传前用在线工具(如TinyPNG)将图压缩到1800px宽,质量损失微乎其微,处理速度提升3倍。

5.4 问题:修复后整块区域变模糊,像打了马赛克

原因:误用了“橡皮擦”擦掉了太多标注,导致系统判定“修复区域太小”,转而用保守的模糊填充策略
解法

  • 立刻点“撤销”(或Ctrl+Z);
  • 如果已无法撤销,就点“清除”,重新标注;
  • 牢记口诀:宁可多涂,不可少涂;宁可涂宽,不可涂窄

6. 进阶技巧:批量处理、多轮精修与风格锁定

当你熟悉基础操作后,这几个技巧能让效率翻倍:

6.1 批量去文字:用“分层修复”代替单次大范围

面对一页PPT上12处标注,别想着一次全涂。试试:

  1. 先只涂左上角3处,修复 → 下载output_1.png
  2. 上传output_1.png,再涂中间4处,修复 → 下载output_2.png
  3. 上传output_2.png,涂剩余5处,修复。
    优势:每次修复区域小,速度快;单次失败不影响全局;可随时回退到上一版。

6.2 多轮精修:对付顽固残留字迹

有些印刷体小字(如页脚版权信息),一次修复可能留白边。这时:

  • 修复后,不下载,直接在结果图上继续操作;
  • 放大到200%,用最小画笔(10px)精准点掉残留白点;
  • 再点“ 开始修复”——系统会基于上一轮结果做二次优化,往往一击必杀。

6.3 风格锁定:确保多张图修复后色调统一

如果你要处理一个系列图(如10张产品说明书),希望所有修复区颜色一致:

  • 先用其中一张图做一次完整修复,得到理想效果;
  • 记住这次修复的输出文件名(如outputs_20240520151033.png);
  • 后续所有图,都以这张“参考图”为基准,在修复前勾选界面隐藏的“风格参考”选项(需联系科哥开启,微信312088415);
  • 系统会自动提取参考图的色彩直方图与纹理特征,强制后续修复向其对齐。

7. 总结:它不是一个“修图工具”,而是一个“文字隐形助手”

回看整个过程,从启动服务到拿到干净图片,我花了不到8分钟。没有命令行、没有报错、没有模型下载等待——只有上传、涂抹、点击、查看。

但它背后的技术并不简单:

  • FFT让它能“看见”文字作为高频噪声的本质;
  • NPainting提供可控的局部编辑能力;
  • LAMA保证生成内容在语义与视觉上的双重合理;
  • 科哥的二次开发则把这一切,变成了连实习生都能上手的Web界面。

所以,如果你的需求明确是:
🔹 去掉图片里的文字、水印、签名、临时标注
🔹 要求结果自然、无痕、不伤原图结构
🔹 希望过程简单、稳定、不折腾环境

那么,这个镜像不是“又一个选择”,而是目前我能找到的最省心、最可靠、效果最扎实的落地方案

它不炫技,不堆参数,不讲大道理。它就安静地待在那里,等你上传一张图,然后,帮你把不想让人看见的东西,彻底、干净、体面地,从画面里请出去。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/8 19:21:30

SiYuan网页剪藏实战技巧:从新手到高手的知识管理之旅

SiYuan网页剪藏实战技巧:从新手到高手的知识管理之旅 【免费下载链接】siyuan A privacy-first, self-hosted, fully open source personal knowledge management software, written in typescript and golang. 项目地址: https://gitcode.com/GitHub_Trending/si…

作者头像 李华
网站建设 2026/2/25 1:14:53

Kimi-K2-Instruct:万亿参数AI的终极智能助手

Kimi-K2-Instruct:万亿参数AI的终极智能助手 【免费下载链接】Kimi-K2-Instruct Kimi K2 is a state-of-the-art mixture-of-experts (MoE) language model with 32 billion activated parameters and 1 trillion total parameters. Trained with the Muon optimize…

作者头像 李华
网站建设 2026/2/20 4:10:20

AI代理框架自定义工作流:基于TypeScript的ADK.js高级功能实现

AI代理框架自定义工作流:基于TypeScript的ADK.js高级功能实现 【免费下载链接】adk-js An open-source, code-first Typescript toolkit for building, evaluating, and deploying sophisticated AI agents with flexibility and control. 项目地址: https://gitc…

作者头像 李华
网站建设 2026/2/20 13:38:35

DeepSeek-Prover-V1:AI数学证明46.3%准确率大突破

DeepSeek-Prover-V1:AI数学证明46.3%准确率大突破 【免费下载链接】DeepSeek-Prover-V1 通过大规模合成数据,DeepSeek-Prover-V1 提升了语言模型在定理证明领域的表现,翻译数学竞赛题目生成 Lean 4 证明数据,实现 46.3% 整证生成准…

作者头像 李华
网站建设 2026/2/18 23:06:14

Open-AutoGLM高效运维:批量更新AI代理版本实战案例

Open-AutoGLM高效运维:批量更新AI代理版本实战案例 1. 什么是Open-AutoGLM?一个真正能“看懂手机”的AI助理框架 Open-AutoGLM不是又一个纸上谈兵的AI概念,而是智谱开源、专为移动端落地打磨的AI Agent框架。它不依赖预设脚本,也…

作者头像 李华
网站建设 2026/2/19 16:24:46

一文搞懂:如何用cv_unet镜像处理透明通道

一文搞懂:如何用cv_unet镜像处理透明通道 1. 为什么需要专门处理透明通道? 你有没有遇到过这些情况: 电商上架商品图,背景必须纯白,但边缘总带一圈灰边;设计师发来PNG素材,打开一看——明明该…

作者头像 李华