2016-06-22 5 views
-1

MATLABで画質メトリックVIFを計算したい。したがって、をダウンロードしました。今、私は関数vif = vifvec(img1, img2)を使うことができました。しかし、私には2つのディレクトリ(サブディレクトリを含む)があり、そこにはたくさんのイメージがあります。これらのフォルダをループして画像を正しく比較するにはどうすればよいですか?ディレクトリを繰り返し、2つの画像を比較する[MATLAB]

答えて

-1

使用dir

ImageFolder1 = dir([pwd '/subfolder1/*.png']) % Or whatever file extension 
ImageFolder2 = dir([pwd '/subfolder2/*.png']) 

今あなたができる構造ImageFolder1ImageFolder2の内容をループ。

+0

ありがとうございました! このようなもの: k = 1の場合:length(ImageFolder1) img1 = ImageFolder1(k); これは正しい方法ですか? –

+0

@JoeyDoey多かれ少なかれ。構造が実際にどのようなものを含んでいるかをよく見て、それをかなりそのように呼び出すことはできません。 'ImageFolder'に含まれているすべてのものをループしますが、まだ各イメージをワークスペースにロードする必要があります。私はコードであなた自身の試みを提供していないので、あなたのためにすべてのことを綴るつもりはありません。 – Adriaan

+0

'vifp_mscale; ImageFolder1 = dir([pwd 'path_to_directory \ *。png']); ImageFolder2 = dir([pwd 'path_to_directory \ *。png']); k = 1:length(ImageFolder1) img1 = load(ImageFolder1(k).name); img2 = load(ImageFolder2(k).name); vif = vifvec(img1、img2); end' これは正しいですか? –

関連する問題