用傅里叶变换合成混合图像:近看爱因斯坦,远看梦露
来源:www.jeremykun.com — 2014-09-29
📋 概述
这篇文章把达芬奇《蒙娜丽莎》那个「直视时消失、用余光才看得见」的微笑,和达利那幅退后二十米就变成林肯肖像的画,接到了同一个数学解释上。2006 年 Oliva、Torralba 与 Schyns 提出「混合图像」:把一张图的高频成分和另一张图的低频成分叠加,近看细节时看见前者,退远或眯眼时只剩轮廓,于是看见后者,最著名的例子是近看爱因斯坦、远看梦露。原因在傅里叶频谱的几何:靠近原点的低频系数对应图像里平缓的变化,外围的高频系数对应边缘与锐变。所以要做混合图像,只需对两张图分别做二维 DFT,乘上高斯型低通 / 高通滤波器,再反变换相加。作者给出 numpy 实现(fft2、fftshift、按坐标乘滤波器、ifft2),并指出低通滤波其实就是 Photoshop 里的高斯模糊;把两张玛丽莲相加能还原原图。他还发现反过来搭配高、低频并不好看,说明「谁提供高频、谁提供低频」的选择本身就是这门手艺的核心。文末提出三个延伸方向:视频逐帧混合、换用其他变换、以及把一维信号混合——比如做成戴不戴耳罩听起来不同的混音歌曲。
🔑 核心要点
- 混合图像的原理只是频谱分工:一张图贡献高频(边缘、细节),另一张贡献低频(平缓轮廓),相加即成
- 频谱网格里,靠近原点的系数对应图像中平缓的变化,越靠外越对应锐变与边缘,这就是「近看 / 远看」的几何基础
- 滤波器就是高斯函数:低通直接乘 g(x,y),高通乘 1-g(x,y),过渡的平滑程度由 σ 控制
- 低通这一步其实就是熟悉的操作:对频谱乘高斯再做逆变换,等价于 Photoshop 里的高斯模糊
- 代码极短:fft2 → fftshift → 与滤波器逐点相乘 → ifftshift → ifft2,全部靠 numpy 数组运算
- 搭配方向不能随便反:把提供高频与提供低频的两张图对调,结果在技术上成立但明显难看,说明这个选择本身就是艺术
💡 金句
把两张图的高频与低频拼起来,然后艺术就在于调参,让平均出来的那张图看起来对。
👍 0
👎 0
← 返回 Lobsters 首页