j'ai bmp dans le dossier d'image sur mon nom de computer.I il 1.bmp à 100.bmp .Toutes les taille est 576 * 768Accelerating chiffres de terrain d'économie que l'image bitmap dans Matlab
Je lis un Les coordonnées des pixels de la région rectangulaire changent de 182 à 281 verticalement et de 426 à 639 horizontalement. Je sauvegarde les graphiques qui représentent l'échange de valeurs de pixels entre les images dans toutes les coordonnées de pixels dans le rectangle. région à un autre fichier
fichierMon m est ci-dessous:
pixvalue=zeros(100);
j=1 ;% will represent pixel coordinate sequence
% find pizel coordinates in rectangular region
for y=182:281
for x=426:639
for i=1:100
% read images
s = sprintf('C:\\images\\%d.bmp', i);
A = imread(s);
A=double(A);
pixvalue(i)= A(y,x);
end
s2=sprintf('%d.plot', j);
f=figure('visible','off'),
plot(pixvalue);
xlabel('images');
ylabel('pixvalue');
title(s2);
s3=sprintf('C:\\registration\\%d.bmp', j);
%% save figures as 8 bit bitmap to file
print(f,'-dbmp256',s3);
j=j+1;
end
end
Malheureusement, ce code a fonctionné vey vey lent !! Comment puis-je l'accélérer?
Cordialement ...
ufukgun, il y a un problème ici. Les images renvoyées par IMREAD sont des matrices 2-D (ou potentiellement 3-D). Vous auriez à les stocker dans un tableau multidimensionnel ou un tableau de cellules ... quelque chose comme ça pour les images en 2D: A (:,:, i) = imread (s); – gnovice
oui vous avez raison. mais je pense qu'il devrait automatiquement le stocker dans un tableau multidimensionnel. en fait je n'ai pas matlab sur mon ordinateur maintenant, donc je réponds comme je me souviens .. – ufukgun