How can I make the code work for any format, not just .jpg?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hello - I found this code from http://matlab.wikia.com/wiki/FAQ#How_can_I_process_a_sequence_of_files.3F and although it says that any format should work, it will not read any .tif files. Instead it results in the following errors -
- Error using imread>get_format_info (line 491)Unable to determine the file format.
- Error in imread (line 354) fmt_s = get_format_info(fullname);
- Error in Line (line 16) imageArray = imread(fullFileName);
There are no errors when the code is used with .jpg files. Here is the code
% function Line(~,~)
% Specify the folder where the files live.
myFolder = 'C:\Users\Vicki\Documents';
% Check to make sure that folder actually exists. Warn user if it doesn't.
if ~isfolder(myFolder)
errorMessage = sprintf('Error: The following folder does not exist:\n%s', myFolder);
uiwait(warndlg(errorMessage));
return;
end
filePattern = fullfile(myFolder, '*.tif'); % Change to whatever pattern you need.
theFiles = dir(filePattern);
for k = 1 : length(theFiles)
baseFileName = theFiles(k).name;
fullFileName = fullfile(myFolder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
imageArray = imread(fullFileName);
end
end
end
Any help is much appreciated.
댓글 수: 3
OCDER
2018년 6월 27일
For debug, do this:
try
imageArray = imread(fullFileName);
catch
warning('Could not open: %s', fullFileName);
end
Which files are failing to open?
채택된 답변
Victoria
2018년 6월 27일
편집: Image Analyst
2018년 6월 28일
댓글 수: 6
Image Analyst
2018년 6월 29일
No, mixing file types would not cause the problem.
Some things to try if you want,or are curious and want to avoid the problem in the future:
- If you move the files back into the folder of the same name (if you still have it), does the problem reoccur?
- If you make a folder with that name on a different drive, or as a subfolder of another folder, do you see the problem with that image file?
- I could try to reproduce with the same image file (if you attach it) and a folder of the same name on my computer.
Otherwise, I guess it will have to remain a mystery.
추가 답변 (1개)
Image Analyst
2018년 6월 27일
My guess is that you really did . or * instead of *.tif and then you tried to read a non-image file. Or else the file has a .tif extension but is really NOT a tiff file. See if you can open the file in Photoshop or GIMP.
댓글 수: 2
참고 항목
카테고리
Help Center 및 File Exchange에서 File Operations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!