imread('image.bmp') 正常,但 imread('image..bmp') 或路徑中包含雙點號會報錯「文件格式無法識別」。
MATLAB 根據擴展名判斷解碼器,..bmp 不被識別為有效 BMP 擴展名。
fullfile(path, ['image' '.' ext]) 中 ext 若已含點號會導致雙點。fullfile 構建路徑,避免手動拼接。imread(fullpath) 直接讀取,MATLAB 會自動檢測文件頭。filename = 'image.bmp'; % 單點號
img = imread(fullfile(folder, filename));
% 或
[~, name, ext] = fileparts(fullpath); % ext 包含點號
img = imread(fullpath); % 直接讀取,無需擴展名