Name of saved image should be the same than read image

조회 수: 3 (최근 30일)
Veilchen1900
Veilchen1900 2016년 6월 11일
댓글: Veilchen1900 2016년 6월 12일
Hello! I read images using imread, remove the lens distortion and then write it to a new created folder.The code works but I don't have the original name of the images anymore. I want that the image name e.g. 20160406.png is the same for the new undistorted image. How can I do that?
This is my code:
z=dir('*.png');
NewFolder=mkdir('NewFolder');
for k = 1:numel(z)
X=imread(z(k).name);
Y=undistortImage(X,cameraParams);
imwrite(Y,['NewFolder/', num2str(k),'.png']);
end

채택된 답변

Image Analyst
Image Analyst 2016년 6월 11일
Try this:
files = dir('*.png');
if exist('NewFolder', 'dir')
NewFolder=mkdir('NewFolder');
end
for k = 1:numel(z)
% Get input base file name.
thisImage = imread(files(k).name);
% Correct the image.
correctedImage = undistortImage(thisImage, cameraParams);
% Create the output filename.
baseFileName = files(k).name; % Same as source filename.
fullOutputFileName = fullfile(NewFolder, baseFileName);
% Save the output image.
imwrite(correctedImage, fullOutputFileName);
end

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Image Processing Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by