[已解决] 简化代码

[复制链接]
Nowadays 发表于 2013-9-13 20:48:12
I=cell(19,n);
L=cell(19,n);
I{1}=imread('000.bmp');
L{1}=dither(I{1});
I{2}=imread('001.bmp');
L{2}=dither(I{2});
I{3}=imread('002.bmp');
L{3}=dither(I{3});
I{4}=imread('003.bmp');
L{4}=dither(I{4});
I{5}=imread('004.bmp');
L{5}=dither(I{5});
I{6}=imread('005.bmp');
L{6}=dither(I{6});
I{7}=imread('006.bmp');
L{7}=dither(I{7});
I{8}=imread('007.bmp');
L{8}=dither(I{8});
I{9}=imread('008.bmp');
L{9}=dither(I{9});
I{10}=imread('009.bmp');
L{10}=dither(I{10});
I{11}=imread('010.bmp');
L{11}=dither(I{11});
I{12}=imread('011.bmp');
L{12}=dither(I{12});
I{13}=imread('012.bmp');
L{13}=dither(I{13});
I{14}=imread('013.bmp');
L{14}=dither(I{14});
I{15}=imread('014.bmp');
L{15}=dither(I{15});
I{16}=imread('015.bmp');
L{16}=dither(I{16});
I{17}=imread('016.bmp');
L{17}=dither(I{17});
I{18}=imread('017.bmp');
L{18}=dither(I{18});
I{19}=imread('018.bmp');
L{19}=dither(I{19});
求解如何简化这段代码

最佳答案


kaaaf123 发表于 2013-9-13 21:57:07
不知道你的n是多少,就当是1把
I = cellfun(@imread,regexp(sprintf('%03d.bmp ',1:19),'\S+','match'),'un',0)';
L = cellfun(@dither,I,'un',0);

也可以
eval(sprintf('I{%d,1}=imread(''%03d.bmp'');L{%d,1}=dither(I{%d});',ones(4,1)*(19:-1:1)))

第一种会好一些
回复此楼

1 条回复


kaaaf123 发表于 2013-9-13 21:57:07
不知道你的n是多少,就当是1把
I = cellfun(@imread,regexp(sprintf('%03d.bmp ',1:19),'\S+','match'),'un',0)';
L = cellfun(@dither,I,'un',0);

也可以
eval(sprintf('I{%d,1}=imread(''%03d.bmp'');L{%d,1}=dither(I{%d});',ones(4,1)*(19:-1:1)))

第一种会好一些
回复此楼
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表