Filter löschen
Filter löschen

Matlab codes to display a variable name with its value

3 Ansichten (letzte 30 Tage)
Abdulmu'min Musa
Abdulmu'min Musa am 17 Okt. 2019
Kommentiert: Looky am 17 Okt. 2019
i want a way in which i can display a variable together with its value. I have a code inwhich i am working on which can display the minimum value from some series of values of variable, but i want a code that can display the variable name of the minimum value together with the value.
here is the complete code below:
faceDatabase = imageSet('T8ATTMSE','recursive');
%Display Query Image and Database side by side
fprintf('Press Enter to select image')
pause;
[filename,pathname]=uigetfile({'*.jpg'},'Pick an image file');
galleryImage=imread([pathname,filename]);
figure;
for i=1:size(faceDatabase,2)
imageList(i)=faceDatabase(i).ImageLocation(1);
end
subplot(1,2,1);imshow(galleryImage);title('Selected Image');
subplot(1,2,2);montage(imageList);title('Database Image');
pause(0.002)
%Split Database into Training and Test sets
[training,test]=partition(faceDatabase,[0.6 0.4]);
%Extract and display Histogram of Oriented Gradient (HOG) features for
%single face
[hogFeature,visualization]=......
extractHOGFeatures(galleryImage);
figure;
imshow(galleryImage);title('Input face');
figure;
plot(visualization);title('HOG Feature');
%Extract HOG Features for Training Set
% trainingFeatures=zeros(size(training,2)*training(1).Count,139284);
trainingFeatures=[];
featureCount=1;
for i=1:size(training,2)
for j=1:training(i).Count
trainingFeatures(featureCount,:)=extractHOGFeatures(read(training(i),j));
trainingLabel{featureCount}=training(i).Description;
featureCount=featureCount+1;
end
personIndex{i}=training(i).Description;
end
queryFeatures = extractHOGFeatures(galleryImage);
A = queryFeatures;
C = double(A);
TF1 = trainingFeatures(1,:)+trainingFeatures(2,:)+trainingFeatures(3,:)+trainingFeatures(4,:);
TF2 = trainingFeatures(5,:)+trainingFeatures(6,:)+trainingFeatures(7,:)+trainingFeatures(8,:);
TF3 = trainingFeatures(9,:)+trainingFeatures(10,:)+trainingFeatures(11,:)+trainingFeatures(12,:);
TF4 = trainingFeatures(13,:)+trainingFeatures(14,:)+trainingFeatures(15,:)+trainingFeatures(16,:);
TF5 = trainingFeatures(17,:)+trainingFeatures(18,:)+trainingFeatures(19,:)+trainingFeatures(20,:);
TF6 = trainingFeatures(21,:)+trainingFeatures(22,:)+trainingFeatures(23,:)+trainingFeatures(24,:);
TF7 = trainingFeatures(25,:)+trainingFeatures(26,:)+trainingFeatures(27,:)+trainingFeatures(28,:);
TF8 = trainingFeatures(29,:)+trainingFeatures(30,:)+trainingFeatures(31,:)+trainingFeatures(32,:);
TF9 = trainingFeatures(33,:)+trainingFeatures(34,:)+trainingFeatures(35,:)+trainingFeatures(36,:);
TF10 = trainingFeatures(37,:)+trainingFeatures(38,:)+trainingFeatures(39,:)+trainingFeatures(40,:);
TF11 = trainingFeatures(41,:)+trainingFeatures(42,:)+trainingFeatures(43,:)+trainingFeatures(44,:);
TF12 = trainingFeatures(45,:)+trainingFeatures(46,:)+trainingFeatures(47,:)+trainingFeatures(48,:);
TF13 = trainingFeatures(49,:)+trainingFeatures(50,:)+trainingFeatures(51,:)+trainingFeatures(52,:);
TF14 = trainingFeatures(53,:)+trainingFeatures(54,:)+trainingFeatures(55,:)+trainingFeatures(56,:);
TF15 = trainingFeatures(57,:)+trainingFeatures(58,:)+trainingFeatures(59,:)+trainingFeatures(60,:);
TF16 = trainingFeatures(61,:)+trainingFeatures(62,:)+trainingFeatures(63,:)+trainingFeatures(64,:);
TF17 = trainingFeatures(65,:)+trainingFeatures(66,:)+trainingFeatures(67,:)+trainingFeatures(68,:);
TF18 = trainingFeatures(69,:)+trainingFeatures(70,:)+trainingFeatures(71,:)+trainingFeatures(72,:);
TF19 = trainingFeatures(73,:)+trainingFeatures(74,:)+trainingFeatures(75,:)+trainingFeatures(76,:);
TF20 = trainingFeatures(77,:)+trainingFeatures(78,:)+trainingFeatures(79,:)+trainingFeatures(80,:);
TF21 = trainingFeatures(81,:)+trainingFeatures(82,:)+trainingFeatures(83,:)+trainingFeatures(84,:);
TF22 = trainingFeatures(85,:)+trainingFeatures(86,:)+trainingFeatures(87,:)+trainingFeatures(88,:);
TF23 = trainingFeatures(89,:)+trainingFeatures(90,:)+trainingFeatures(91,:)+trainingFeatures(92,:);
TF24 = trainingFeatures(93,:)+trainingFeatures(94,:)+trainingFeatures(95,:)+trainingFeatures(96,:);
TF25 = trainingFeatures(96,:)+trainingFeatures(97,:)+trainingFeatures(99,:)+trainingFeatures(100,:);
TF26 = trainingFeatures(101,:)+trainingFeatures(102,:)+trainingFeatures(103,:)+trainingFeatures(104,:);
TF27 = trainingFeatures(105,:)+trainingFeatures(106,:)+trainingFeatures(107,:)+trainingFeatures(108,:);
TF28 = trainingFeatures(109,:)+trainingFeatures(110,:)+trainingFeatures(111,:)+trainingFeatures(112,:);
TF29 = trainingFeatures(113,:)+trainingFeatures(114,:)+trainingFeatures(115,:)+trainingFeatures(116,:);
TF30 = trainingFeatures(117,:)+trainingFeatures(118,:)+trainingFeatures(119,:)+trainingFeatures(120,:);
TF31 = trainingFeatures(121,:)+trainingFeatures(122,:)+trainingFeatures(123,:)+trainingFeatures(124,:);
TF32 = trainingFeatures(125,:)+trainingFeatures(126,:)+trainingFeatures(127,:)+trainingFeatures(128,:);
TF33 = trainingFeatures(129,:)+trainingFeatures(130,:)+trainingFeatures(131,:)+trainingFeatures(132,:);
TF34 = trainingFeatures(133,:)+trainingFeatures(134,:)+trainingFeatures(135,:)+trainingFeatures(136,:);
TF35 = trainingFeatures(137,:)+trainingFeatures(138,:)+trainingFeatures(139,:)+trainingFeatures(140,:);
TF36 = trainingFeatures(141,:)+trainingFeatures(142,:)+trainingFeatures(143,:)+trainingFeatures(144,:);
TF37 = trainingFeatures(145,:)+trainingFeatures(146,:)+trainingFeatures(147,:)+trainingFeatures(148,:);
TF38 = trainingFeatures(149,:)+trainingFeatures(150,:)+trainingFeatures(151,:)+trainingFeatures(152,:);
TF39 = trainingFeatures(153,:)+trainingFeatures(154,:)+trainingFeatures(155,:)+trainingFeatures(156,:);
TF40 = trainingFeatures(157,:)+trainingFeatures(158,:)+trainingFeatures(159,:)+trainingFeatures(160,:);
error1=immse(C,TF1);
error2=immse(C,TF2);
error3=immse(C,TF3);
error4=immse(C,TF4);
error5=immse(C,TF5);
error6=immse(C,TF6);
error7=immse(C,TF7);
error8=immse(C,TF8);
error9=immse(C,TF9);
error10=immse(C,TF10);
error11=immse(C,TF11);
error12=immse(C,TF12);
error13=immse(C,TF13);
error14=immse(C,TF14);
error15=immse(C,TF15);
error16=immse(C,TF16);
error17=immse(C,TF17);
error18=immse(C,TF18);
error19=immse(C,TF19);
error20=immse(C,TF20);
error21=immse(C,TF21);
error22=immse(C,TF22);
error23=immse(C,TF23);
error24=immse(C,TF24);
error25=immse(C,TF25);
error26=immse(C,TF26);
error27=immse(C,TF27);
error28=immse(C,TF28);
error29=immse(C,TF29);
error30=immse(C,TF30);
error31=immse(C,TF31);
error32=immse(C,TF32);
error33=immse(C,TF33);
error34=immse(C,TF34);
error35=immse(C,TF35);
error36=immse(C,TF36);
error37=immse(C,TF37);
error38=immse(C,TF38);
error39=immse(C,TF39);
error40=immse(C,TF40);
Z=min(error1:error40);
  4 Kommentare
Stephen23
Stephen23 am 17 Okt. 2019
Numbering variables like that is a sign that you are doing something wrong.
Copy-and-pasting code like that is a sign that you are doing something wrong.
The very inadvisable use of numbered variables means that this will not work:
Z=min(error1:error40);
and while it could be made to work, it would be complex and inefficient.
You should follow Looky's advice and keep your data in one array, then your task is easy.
Looky
Looky am 17 Okt. 2019
Since I don't have a clear idea how the data from extractHOGFeatures() looks, I can only make some guesses. Here is my idea:
lastIndex=40;
for k=1:lastIndex
trFe_Index=4*(k-1)+1;
TF(k,:) = sum(trainingFeatures(trFe_Index:trFe_Index+3,:),1);
errors(k)=immse(C,TF(k,:));
end
[Z,index]=min(errors);
sprintf('error%d', index)
Consider preallocation of TF and errors if you can. Change lastIndex to your liking.
Try if it works and if not come back with the error message, including in which line an error occurs.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Large Files and Big Data finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by