ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

图片放大为什么越放越糊?AI变清晰又是怎么补回来的

2026/9/6 10:24:53 拓冰建站 浏览量
图片放大为什么越放越糊?AI变清晰又是怎么补回来的 放大一张小图边缘糊成一片马赛克——这几乎人人遇到过。可换成 AI「变高清」同一张图却能清楚不少。为什么普通放大越放越糊AI 又凭什么能补回来先做个能自己复现的实验造一张有细线栅格、文字和斜线的图我用代码合成的测试图缩到边长的四分之一再用双三次插值放大回原尺寸跟原图逐像素比。我算了两个数PSNR 和高频能量相邻像素灰度差的绝对值均值衡量边缘和纹理还剩多少。4× 那组PSNR 只有 17.4 dB高频能量掉到原图的 20.5%2× 那组好一些也就 51.8%。桌面 Chromium 上跑的数字只对这张图负责但趋势很稳定缩小再放大边缘和细纹大部分回不来了。回不来的原因不复杂。图缩到四分之一时那些细线、字的锐边所携带的高频信息在低分辨率的像素里已经不存在了。插值放大做的事是在现有像素之间按数学公式填过渡色——它能让边缘看起来平滑但没法凭空造出原来那条线。丢掉的信息不在图里插值就变不出来。超分走的是另一条路那超分模型凭什么能补因为它不做插值它做的是「见过很多真实照片之后的猜测」。图映这条线上跑的是 Real-ESRGAN、SwinIR 和官方 Real-HAT-GAN 这几个模型。它们在大量「清晰图—退化图」的配对上训练过学到的是「这种模糊、这种噪声、这种压缩块效应背后大概率对应什么样的清晰结构」。推理时看到一张糊图它不是去平滑而是按学过的规律把可能的结构补上去。所以同样是放大插值是铺开已有像素超分是补出新结构——补的这部分正好是插值丢掉的那 80%。这里我得说清自己的边界超分模型不是我做的我在这个产品里碰的是模型加载和分块推理调度那一层模型内部怎么补结构我只能讲到「它是学出来的」这个程度。分块推理是被内存逼出来的从加载调度这层能讲的是另一件事为什么大图不会一次占满内存。一张几千像素的图整个塞进模型推理显存和 JS 堆很容易爆浏览器直接崩给你看。图映的做法是在独立 Worker 里分块每块按模型自己的窗口大小读一小片加上四周一圈上下文一起算但只把中央预测可靠的区域写进最终图边缘那圈上下文不足的不混回去。每块算完就释放 Tensor 和临时画布处理完、换图、退出都会终止 Worker。模型文件留在浏览器磁盘缓存里那是为了下次不用重下跟「持续占着推理内存」是两回事——这个区分值得讲清楚不然容易被理解成一直在吃内存。至于每个模型都校验固定字节数和 SHA-256、校验不过不进推理这条是加载链路的硬约束模型文件几十到几百 MB半路坏一块推出来的东西没法看还不如直接拦住。五档在补什么以及一条不能越的线五档不是质量高低排排坐是补的侧重不同快速高清给预览用保真高清偏文字、建筑、线条这类规则结构老照片完整修复管的是全图层次的恢复双模型自然精修连续照顾人物和背景两种材质高阶自然精修单独跑官方 Real-HAT-GAN Sharper用大有效区加四周上下文裁切拼接面向高性能桌面恢复更连续的自然纹理。选哪档先看你这张图丢的是规则结构还是自然纹理再看设备扛不扛得住。倍数上移动端和本来就大的图优先 2×小图和高性能桌面才上 4×。最后是那条不能越的线也是我觉得这个功能最该被讲清楚的地方超分补出来的细节是模型推测的不是原图真有的。它适合视觉增强——图看着更清楚、更舒服但不能用于证件、司法取证、历史考据或者 OCR 原文核验这类场景因为那些场景要的是「原图真实是什么」而模型给的是「大概率是什么」。这两件事在别的地方可以混在这里不行。已经丢掉的真实细节没有谁能证明它被准确恢复了页面上也把这条边界写得很明白。