阅读背景:

Matlab实现批量化图像平均

来源:互联网 

具体代码如下:

function [] = fun () paths = ['G:\路径1\';'G:\路径2\';'G:\路径3\']; % 路径需为目录 n = size(paths,1); % 目录个数 for i=1:n % 遍历每一个目录 path = paths(i,:); % 目录 files = dir(path); % 列出指定目录下所有子文件夹和文件 % 获取指定目录下的文件个数 size0 = size(files); length = size0(1); % 假设指定目录下全部为图片文件 % 由3开始是为了跳过./和../ a = strcat(path,files(3,1).name); % 第一张图片 b = imread(a); sum = uint32(b); % 总和 % 遍历所有图片并加到sum上 for i=4:length fileName = strcat(path,files(i,1).name); original_picture = imread(fileName); sum=imadd(sum,uint32(original_picture)); % perform addition without overflow end sum = imdivide(sum,length - 2); % 计算均值 sum_image = uint8(sum); % 转为8bit % 保存图像到当前目录,并命名为sum_imag.bmp % 图像格式根据需求修改 imwrite(sum_image,[path,'sum_image.bmp'],'bmp'); end end function [] = fun () paths = ['G:\路径1\';'G



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: