How do I setup ROI once and it will apply to all other images?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Shu Yi Ho
le 17 Juil 2019
Modifié(e) : Walter Roberson
le 17 Juil 2019
The current program I have set each and every image ROI which is very impratical.
How can I only setup once and apply to all other images?
imageFolder = dir('C:\Users\85042513\MATLAB\Projects\BAT CVE\Images\OK\*.jpg');
for i=1:length(imageFolder)
filename = strcat('C:\Users\85042513\MATLAB\Projects\BAT CVE\Images\OK\',imageFolder(i).name);
originalImage = imread(filename);
% REGION OF INTEREST
f = figure('Name','Image','NumberTitle','off');
imshow(originalImage);
rect = getrect(f); % select roi with mouse
ori_roi = originalImage( rect(2) : (rect(2)+rect(4)) , rect(1) : (rect(1)+rect(3)) , : ); % store roi in matrix
end
0 commentaires
Réponse acceptée
Walter Roberson
le 17 Juil 2019
Modifié(e) : Walter Roberson
le 17 Juil 2019
imageFolder = dir('C:\Users\85042513\MATLAB\Projects\BAT CVE\Images\OK\*.jpg');
numfiles = length(imageFolder);
ori_roi = cell(numfiles, 1);
i = 1;
filename = strcat('C:\Users\85042513\MATLAB\Projects\BAT CVE\Images\OK\',imageFolder(i).name);
originalImage = imread(filename);
% REGION OF INTEREST
f = figure('Name','Image','NumberTitle','off');
imshow(originalImage);
rect = getrect(f); % select roi with mouse
ori_roi{i} = originalImage( rect(2) : (rect(2)+rect(4)) , rect(1) : (rect(1)+rect(3)) , : ); % store roi in matrix
for i=2:length(imageFolder)
filename = strcat('C:\Users\85042513\MATLAB\Projects\BAT CVE\Images\OK\',imageFolder(i).name);
originalImage = imread(filename);
ori_roi{i} = originalImage( rect(2) : (rect(2)+rect(4)) , rect(1) : (rect(1)+rect(3)) , : ); % store roi in matrix
end
0 commentaires
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!