Feature matching using Euclidean
1 view (last 30 days)
Show older comments
I am now doing copy move image forgery detection using DCT. Now I have some problem for matching part. It lagging for loading whole data since I am using looping to get the similarity between two row vector. Any idea to change my code in better way. Here is my code for the matching part.
z=0;
for num=1:group
for a=mS(num):mE(num)-1
for b=a+1:mE(num)
z=z+1;
Dsimilar(z,1) = norm(sort(a,:)-sort(b,:))
end
end
end
0 Comments
Accepted Answer
Walter Roberson
on 13 May 2015
That is not a valid calling form for the sort() function, so that code will not execute.
Why would you want to sort a single integer anyhow?
3 Comments
Walter Roberson
on 13 May 2015
norm() by default calculates the 2-norm, which is the Euclidean length of the vector. Which is sqrt(sum(x.^2)) . You can calculate a lot of euclidean lengths at once. For example,
for a = Ms(num):Me(num)+1
Ta = repmat(sortZZ(a,:), Me(num)-a, 1);
Tb = sortZZ(a+1:me(num),:);
norms = sqrt(sum((Ta - Tb).^2, 2));
Dsimilar = [Dsimilar; norms(:)];
end
More Answers (0)
See Also
Categories
Find more on Logical in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!