位置 1 のインデックスが無効です。配列インデックスは正の整数または logical 値でなければなりません。
조회 수: 4 (최근 30일)
이전 댓글 표시
% 画像が格納されているフォルダのパス
folderPath = 'minikadid';
% フォルダ内の画像ファイルの一覧を取得
fileList = dir(fullfile(folderPath, '*.png')); % 画像ファイルの拡張子に合わせて変更
% CSVファイルのパス
%csvFilePath = fullfile(folderPath, 'ssim_values.csv');
csvFilePath = 'ssim_values.csv';
% ファイルを開いてヘッダーを書き込み
csvFile = fopen(csvFilePath, 'w');
fprintf(csvFile, 'Image,SSIM value\n');
% 画像ごとにSSIM値を計算し表示
for i = 1:length(fileList)
if rem(i, 5) == 1
% 参照画像の指定(変更)
imagePath = fullfile(folderPath, fileList(i).name);
refImage = imread(imagePath);
end
% 画像の読み込み
imagePath = fullfile(folderPath, fileList(i).name);
image = imread(imagePath);
% SSIM値の計算
ssimValue = ssim(image, refImage);
% CSVファイルに書き込み
fprintf(csvFile, '%s,%f\n', fileList(i).name, ssimValue);
end
% ファイルを閉じる
fclose(csvFile);
上記のコードで、「SSIM値の計算」とコメントアウトされている部分のコードが「位置 1 のインデックスが無効です。配列インデックスは正の整数または logical 値でなければなりません。」というエラーが出てしまいます。なぜでしょうか?以前は同じコードで動いていたはずなんですが、、、
댓글 수: 0
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 イメージの画質에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!