Matlab codes to display a variable name with its value

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 个评论

There are ways to achieve what you are asking for but I would suggest a different approach.
My suggestion:
Join all TF* variables into one matrix, also make error1 to error40 into one vector errors.
Then you can write
[Z, index]=min(errors);
and output the index, which will tell you the number of the error variable.
This would be the clean and nice looking solution.
If you need help doing that, just ask.
Pls help, how do i do that. I mean joining all TF into one matrix and also error1 to error40 into one matrix. I maybe able to do it but it may took me some time and i urgently need it down. Thanks.
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.
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.

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Environment and Settings 的更多信息

评论:

2019-10-17

Community Treasure Hunt

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

Start Hunting!

Translated by