图像平均及其在降噪方面的应用
图像平均以及图像平均在应对椒盐/高斯/相机噪声方面的对比分析
概述:
图像平均操作是减少图像噪声的一种简单方式。
我们可以简单地从图像列表中计算出一幅平均图像。
假设所有的图像具有相同的大小,我们可以将这些图像简单地相加,然后除以图像的数目,来计算平均图像。
算法步骤:
对列表中的数字图像进行图像平均的处理顺序如下:
a.输入或者获取文件名列表
b.读取路径列表中的图像文件,转化为数组进行相加
c.将累加结果除以图像数量,进行平均
d.将平均结果构建为图片
e.输出图像
编程实例:
# -*- coding: utf-8 -*-
from PIL import Image
from pylab import *
from numpy import*
import os
#通过目录路径获取其中具有特定后缀名(JPG)的文件名列表
def get_imlist(path):
return [os.path.join(path,f) for f in os.listdir(path) if f.endswith('.JPG')]
#读取路径列表中的图片,进行简单相加,并除以文件数量
def compute_average(imlist):
averageim = array(Image.open(imlist[0]), 'f')
for imname in imlist[1:]:
try:
averageim += array(Image.open(imname))
except:
print imname + '...skipped'