need help for take data from loop
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
christiano doni
le 6 Avr 2015
Commenté : christiano doni
le 6 Avr 2015
I have scrip data like this
clear all;close all;clc
c1=imread('1200TIM-20150401-0010_20150401-1054015001500-1','png');
a1=double(c1);
a1=reshape(a1,2229000,[]);
c2=imread('1200TIM-20150401-0020_20150401-1054015001500-1','png');
a2=double(c2);
a2=reshape(a2,2229000,[]);
c3=imread('1200TIM-20150401-0030_20150401-1054015001500-1','png');
a3=double(c3);
a3=reshape(a3,2229000,[]);
and I have matrix
a1=(2229000,3); a2=(2229000,3); a3=(2229000,3);
and i want to make 3 matrix data like this
red=[a1(:,1),a2(:,1),a3(:,1)]
green=[a1(:,2),a2(:,2),a3(:,2)]
blue=[a1(:,3),a2(:,3),a3(:,3)]
*my questions is how to make loop for red, grean and blue because data a1, a2 until a100, i try *
for i=1:1:3; red(:,i)=['a'num2str(i)(:,1)]; end
but its not working here
0 commentaires
Réponse acceptée
Philipp Maier
le 6 Avr 2015
Modifié(e) : Philipp Maier
le 6 Avr 2015
for i=1:1:3;
red(:,i)= eval(['a' num2str(i) '(:,1)'])';
end
Since I do not have the PNG-files that you are reading , I tested the code with three random variables:
a1 = rand(2229000,3);
a2 = rand(2229000,3);
a3 = rand(2229000,3);
Plus de réponses (1)
Jan
le 6 Avr 2015
No, do not do this. It might work in this specific case, but it is in general an evil method and it produces more troubles than it solves. The problem is discussed several times a day and therefore you find it in the frequently asked questions also: http://www.mathworks.com/matlabcentral/answers/57445-faq-how-can-i-create-variables-a1-a2-a10-in-a-loop .
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!