dポイントプレゼントキャンペーン実施中!

 現在、顔画像認証についてMatlabで試行錯誤している者です。
 試作として以下に挙げる簡単なものは自作できたのですが、
データをさらに複数取り込みたいので、このような表記法だと、
後々手書きでは追いつかなくなってしまいます。
また、事象ごとに取り込む数が違うので、このままでは
1回の試行につき、ひとつ作っていかなければなりません。

 質問は、こういったコードをどのようにまとめたらよいのか、です。
for文を使うことまでは理解したのですが、
具体的な書き方がまったく解らないので、ご教授願えないでしょうか。

k1 = imread( 'sample01.bmp' );
k2 = imread( 'sample02.bmp' );
k3 = imread( 'sample03.bmp' );
k4 = imread( 'sample04.bmp' );
k5 = imread( 'sample05.bmp' );
k6 = imread( 'sample06.bmp' );
k7 = imread( 'sample07.bmp' );
k8 = imread( 'sample08.bmp' );
k9 = imread( 'sample09.bmp' );
k10 = imread( 'sample10.bmp' );
colormap(gray(256));
k1 = double(k1);
k2 = double(k2);
k3 = double(k3);
k4 = double(k4);
k5 = double(k5);
k6 = double(k6);
k7 = double(k7);
k8 = double(k8);
k9 = double(k9);
k10 = double(k10);
heikin = (k1+k2+k3+k4+k5+k6+k7+k8+k9+k10)/10;
image(heikin);

A 回答 (1件)

画像ファイルが sample01.bmp から sample10.cmp だとすると,


どちらかというと sample1.bmp sample2.bmp の方が楽です.
文字列の連結には,['abc',num2str(1),'.bmp'] なら 'abc1.bmp'
になります.

K1 = imread('sample10.bmp');
colomap(gray);
H = double(K1);
for J=1:9
K1 = imread(['sample0', num2str(J),'.bmp']);
colomap(gray);
H = H + double(K1);
end

H = H/10;
    • good
    • 2
この回答へのお礼

 ありがとうございます、大変参考になりました。

お礼日時:2008/12/02 16:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!