how can i get the indexes
1 view (last 30 days)
Show older comments
|| I am working in CBIR by histogram color my prof just wants to test me if i understand it or no so it is not my final project
now I have file has 161 images inside and I have 10 query images
I have extracted histogram color for the images files and i put them in vectory then I compute Euclidean distance for each images for query image and images file and i put them all in vectory so now I have 10*161 .until here is my work is good ?? then now if I sort the vectory ok how could i get the reall index for the images have smallest Euclidean distance , I try to do this
[x, y] = sort[vectory4] and then take the index but it gave me the first 10 images in database not that i want .
hope anyone help me .
thank you ||*
2 Comments
Jan
on 18 Aug 2013
It is hard to estimate if "I have 10*161" is correct or not. Actually "10*161" is 1610, but you certainly mean a matrix. Afterwards you are looking for a kind of sorting. But what is "vector4"?
Accepted Answer
Image Analyst
on 18 Aug 2013
Did you look at the min function?
% Generate sample data.
array10by161 = randi(1000, [10, 161]);
% Find min distance for each image (each row)
% and it's location (column number)
[minDistances, indexOfMin] = min(array10by161, [], 2)
5 Comments
Image Analyst
on 21 Aug 2013
Well then, you're not building up your array properly. Isn't the row number the number of the image that you processed? So results from image #11 should have gone into row #11?
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!