곡선 간의 유사성 측정?


17

두 가지 정렬 된 점 세트- 사용자 아래의 점 과 교사 아래의 점 사이의 유사성 측정을 계산하고 싶습니다 .

! [예] (http://i50.tinypic.com/2uj0580.jpg)

점은 3D 공간의 곡선이지만 그림과 같이 2 차원으로 플롯하면 문제가 단순화되었다고 생각했습니다. 점이 겹치면 유사성이 100 % 여야합니다.


스케일링, 회전 및 / 또는 변환을 설명해야합니까?
— nico

아니요, 그것들을 고려할 필요는 없습니다.
— Alex

내가 적용 할 것이라는 것을 의미합니다.
— Alex

답변:


11

궤적 또는 곡선을 비교하고 있습니다. 이것은 연구 주제입니다. EMS가 말한 바와 같이 Procrustes 분석 과 역동적 인 타임 워핑 은 무역의 도구입니다. 커브를 정렬 한 후에는 거리를 측정하고 싶을 수 있습니다 (예 : Fréchet distance) . 일부 데이터를 공유하려면 데이터 자체에 균열이 생길 수 있습니다.

관련 독서 :

시간 차원을 무시하는 경우 :

다변량 가우스 밀도에 사용자와 교사를 맞출 수 있고 제품의 양을 쉽게 찾을 수 있습니다. 정확도를 높이려면 비모수 밀도 추정값을 대신 사용할 수 있습니다.


제안 해 주셔서 감사합니다. 문제를 업데이트했습니다. 지금은 더 간단 할 수 있으니 한번 봐주세요.
— Alex

다변량 가우시안 밀도에 사용자와 교사를 맞출 수 있고 제품의 양을 찾을 수 있습니다. 아주 쉽습니다 . 올바른 학습 자료를 알려 주시겠습니까? 정말 초보자입니다.
— Sibbs Gambling

정렬 된 커브에 대해 유클리드 거리가 충분합니까?
— Vladimir Chupakhin

나는 유사성을 비교 상관 계수를 사용하고 0과 1 결과 클램프
— M.kazem Akhgary

3

Procrustes distance 또는 동적 시간 왜곡 에 따른 거리를 고려할 수 있습니다 (차원 중 하나가 "시간"이 아니더라도이 변형 아이디어를 계속 사용할 수 있습니다). 비디오의 점 궤적에 의해 새겨진 3D 공간 곡선 간의 유사성을 측정하기위한 동적 시간 왜곡의 사용 사례 를 보려면 Tracklet에 대한 최근의 작업을 참조하십시오 .

Matlab 또는 Python 용 PyGeometry 라이브러리 와 같은 Procrustes 거리 계산 기능이 내장 된 라이브러리가 많이 있습니다 .


2

원래 게시물은 3D에서 ORDERED 포인트 간의 메트릭을 요청했습니다. 이러한 메트릭은 Frechet 거리입니다. 치수 중 하나로서 시간에 대한 언급은 없었으므로 모든 치수는 거리 단위가 있다고 가정합니다 (즉, 단위가 혼합되지 않음). 이것은 최근 MathWorks 파일 교환에 업로드 된 기능을 수정하여 수행 할 수 있습니다 (Frechet 거리 계산 : http://www.mathworks.com/matlabcentral/fileexchange/38714 ). 이 루틴은 평면의 점을 위해 작성되었지만 3D 점으로의 확장은 간단합니다.


1
Frechet 거리가 주문 쌍 사이에 있습니까? 위키 피 디아 페이지는 하나 개의 경로에있는 지점이 다른 여러 지점에 일치 할 수 있다고 말한다. 또한 이러한 측정 항목이 둘 이상 있어야합니다. 순서 쌍 사이의 거리의 합은 어떻습니까?
— naught101

1

엑스와이디H(엑스,와이)=최대{저녁을 먹다엑스∈엑스INF와이∈와이||엑스−와이||,저녁을 먹다와이∈와이INF엑스∈엑스||엑스−와이||}.


나는 이것이 매우 다루기 쉬운 접근법이라고 생각하지 않습니다. 당신이 모든 것을 교체하여 대략적인 것을 의미하지 않는 한저녁을 먹다 과 INF 와 최대 과 분.. 그러나 Hausdorff 거리는 이것들에 의해 거의 근사치가되지 않습니다. 실제로 거리를 (소프트웨어로) 계산하는 방법은 무엇입니까?
— ely

1
@EMS 이것에 대해 두 가지 방법이 있습니다. 엑스 과 와이이산 점 세트로, 일을 더 단순하게 만듭니다. 2. 또는 각 점 세트에 대해 볼록 껍질의 형태를 생각해 봅니다 (필요한지 확실하지 않음). [this] [1]과 같은 것을 사용하여 거리. [1] : cg.cs.uni-bonn.de/aigaion2root/attachments/guthe-2005-fast.pdf
— TenaliRaman

링크에 감사합니다. Tony Chan의 책에서 컴퓨터 비전에서 Hausdorff 거리 만 보았습니다. 더 많은 계산 방법을 사용하는 것이 좋습니다.
— ely

1

유사성은 두 객체 또는 두 피처 간의 관계 강도를 반영하는 수량입니다. 이 수량의 범위는 일반적으로 -1 ~ +1 또는 0 ~ 1로 정규화됩니다. 아래 방법 중 하나를 사용하여 두 형상의 거리를 계산해야합니다.

  1. 간단한 매칭 거리
  2. 자카드의 거리
  3. 해밍 거리
  4. 자카드 계수
  5. 간단한 매칭 계수

선의 경우 각도 (a) 및 길이 (l) 속성 또는 L1 = P1 (x1, y1)로 표시 할 수 있습니다. 아래 P2 (x2, y2)는 a 및 l과 유사합니다.

이제 각도와 길이의 각도를 측정하십시오

  • A_user = 20 및 Length_User = 50
  • A_teacher30 및 Length_Teacher = 55
  • 이제 값을 정규화하십시오.

유클리드 거리 사용

유사성 = SquareRoot ((A_user-A_teacher30) ^ 2 + (Length_User-Length_Teacher) ^ 2)

유사성 측정을 제공합니다. 문제와 기능에 따라 위에서 언급 한 방법을 사용할 수도 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.