Quantify Similarity Between Curve Shapes
18 views (last 30 days)
Show older comments
Hi
I have several plots of some data that I collect everyday. I need some method to quantify the similarity between their shapes only without considering the Y-axis values. I can see from the figures below that the difference between the first and the last points is around 2.8 for both. X-axis values are the same for both curves. This is one set of curves:
Fig(1)
Fig(2)
If I calculate 2-D correlation (corr2) for these two vectors, I get a value of around 0.97. Is corr2 an accurate measure of similarity?
Any help would be greatly appreciated!
0 Comments
Answers (2)
Eduardo Esteban Ibáñez
on 9 Feb 2022
Hello,
I have the same trouble. In my opinion, I think that cross correlation isn't the best method to calculate similarity in two random vectors, because it works better with signals comparisons with possitive and negative amplitudes. Did you find solution for your problem ?
Thanks!!
Best regards
0 Comments
MahdiH
on 12 May 2022
I suggest using Procrustes analysis. let's say the top curve is "a" and the bottom one is "b", then:
[d,Z,tr] = procrustes(a,b);
Where d is the dis-similarity between a and b.
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!