需求问题

关于图像降噪处理:

非局部均值滤波(non-local mean filter)基于块(block-wise)的算法怎么实现?编程语言类型为 python

解释

对添加了噪声的图像做nlm滤波:对每一个像素点(记为当前点),设定一个以其为中心的大小为p1*p2 的当前块,然后再设定一个以其为中心的大小为 s1*s2 的搜索块(本身应该是全图,这也是“非局部”的意思,但为了计算效率一般选取一个合适大小的搜索块)。对于搜索块中的每一个像素点,都同样有一个和当前点一样的大小为 p1*p2 的小块,记做参考块。计算参考块与当前块的欧式距离,做一个变换即可得到一个权值,重复这一步就可以得到一个和搜索块一样大小的权值块,然后权值块与搜索块做卷积,得到的值就是当前点滤波后的值

尝试与实现

主要测试文件:

/Users/samliu/Documents/NLM_filter/hw5/simon.ipynb

参考资料