Biện pháp tương đồng giữa các đường cong?


17

Tôi muốn tính toán độ tương tự giữa hai tập hợp điểm được đặt hàng --- những điểm dưới Người dùng so với những điểm dưới Giáo viên :

! [Ví dụ] (http://i50.tinypic.com/2uj0580.jpg)

Các điểm là các đường cong trong không gian 3D, nhưng tôi đã nghĩ rằng vấn đề được đơn giản hóa nếu tôi vẽ chúng theo 2 chiều như trong hình. Nếu các điểm trùng nhau, độ tương tự phải là 100%.


Bạn có cần tính đến tỷ lệ, xoay và / hoặc dịch không?
nico

Không, tôi không cần phải đưa chúng vào tài khoản.
Alex

có nghĩa là tôi sẽ áp dụng chăm sóc điều đó.
Alex

Câu trả lời:


11

Bạn đang so sánh quỹ đạo , hoặc đường cong . Đây là một chủ đề nghiên cứu. Phân tích Procrustescong vênh thời gian động , như EMS nói, là công cụ của thương mại. Khi bạn đã căn chỉnh các đường cong bạn sẽ muốn đo khoảng cách, hãy nói khoảng cách Fréchet . Nếu bạn muốn chia sẻ một số dữ liệu của mình, chúng tôi có thể tự bẻ khóa nó.

Đọc có liên quan:

Nếu bạn bỏ qua kích thước thời gian:

Bạn có thể phù hợp với Người dùng và Giáo viên để tăng mật độ Gaussian đa biến và tìm khối lượng sản phẩm của họ - điều đó khá dễ dàng. Nếu bạn muốn độ chính xác cao hơn, bạn có thể sử dụng ước tính mật độ không theo tỷ lệ thay thế.


Cảm ơn bạn Emre cho đề nghị của bạn! Tôi đã cập nhật vấn đề - Tôi nghĩ bây giờ có thể đơn giản hơn vì vậy hãy xem qua.
Alex

Bạn có thể phù hợp với Người dùng và Giáo viên để tăng mật độ Gaussian đa biến và tìm khối lượng sản phẩm của họ - điều đó khá dễ dàng Bạn có thể vui lòng chỉ cho tôi các tài nguyên chính xác để tìm hiểu điều này không? Người mới thực sự ở đây.
Đánh bạc Sibbs

Khoảng cách Euclide sẽ đủ cho các đường cong thẳng hàng?
Vladimir Chupakhin

Tôi đã sử dụng các hệ số tương quan để so sánh sự tương đồng và kẹp kết quả giữa 0 và 1.
M.kazem Akhÿ

3

Bạn có thể xem xét khoảng cách Procrustes hoặc một số khoảng cách dựa trên độ cong thời gian động (ngay cả khi một trong các kích thước của bạn không phải là "thời gian" mỗi se, bạn vẫn có thể sử dụng ý tưởng chuyển đổi này). Xem tác phẩm gần đây này trên Tracklets để biết trường hợp sử dụng minh họa về độ cong thời gian động để đo độ tương tự giữa các đường cong không gian 3D được khắc theo quỹ đạo điểm trong video.

Có nhiều thư viện với tính toán khoảng cách Procrustes tích hợp, chẳng hạn như Matlab hoặc thư viện PyGeometry cho Python.


2

Bài đăng gốc yêu cầu một số liệu giữa các điểm ĐẶT HÀNG trong 3D. Số liệu duy nhất như vậy là khoảng cách Frechet. Không có đề cập đến thời gian là một trong các kích thước, vì vậy tôi cho rằng tất cả các kích thước đều có đơn vị khoảng cách (nghĩa là các đơn vị không bị trộn lẫn). Điều này có thể được thực hiện bằng cách sửa đổi một chức năng được tải lên gần đây để trao đổi tệp MathWorks (tính toán khoảng cách Frechet: http://www.mathworks.com/matlabcentral/fileexchange/38714 ). Các thói quen này được viết cho các điểm trong mặt phẳng, nhưng việc mở rộng thành các điểm 3D rất đơn giản.


1
Bạn có chắc khoảng cách Frechet là giữa các cặp được đặt hàng không? các trang wikipedia nói rằng một điểm trong một con đường có thể được kết hợp với nhiều điểm trong khác. Ngoài ra, chắc chắn có nhiều hơn một số liệu như vậy. Thế còn tổng khoảng cách giữa các cặp theo thứ tự?
ness101

1

Khoảng cách Hausdorff có thể là những gì bạn đang tìm kiếm. Hausdorff Khoảng cách giữa hai tập hợp điểm và được xác định là, .XYdH(X,Y)=max{supxXinfyY||xy||,supyYinfxX||xy||}


Tôi không nghĩ rằng đây là một cách tiếp cận rất dễ hiểu. Trừ khi bạn có ý định xấp xỉ điều này bằng cách thay thế tất cả và bằng và .. nhưng khoảng cách của Hausdorff sẽ không được xấp xỉ bằng những điều này trong nhiều trường hợp. Làm thế nào để bạn đề xuất để thực sự tính toán (trong phần mềm) khoảng cách như vậy? inf max minsupinfmaxmin
ely

1
@EMS Có hai cách để giải quyết vấn đề này, 1. hoặc coi và là các tập hợp điểm rời rạc, làm cho mọi thứ đơn giản hơn 2. hoặc cố gắng đưa ra một số dạng vỏ lồi cho mỗi bộ điểm (không hoàn toàn chắc chắn liệu đây có phải là cần thiết) và một cái gì đó như [này] [1] có thể được sử dụng để tính khoảng cách. [1]: cg.cs.uni-bonn.de/aigaion2root/attachments/guthe-2005-fast.pdfYXY
TenaliRaman

Cảm ơn bạn đã liên kết, tôi chỉ thấy khoảng cách của Hausdorff trong tầm nhìn máy tính trong cuốn sách của Tony Chan. Thật tuyệt khi thấy các cách tiếp cận tính toán hơn.
ely

1

Sự tương đồng là số lượng phản ánh sức mạnh của mối quan hệ giữa hai đối tượng hoặc hai tính năng. Đại lượng này thường có phạm vi từ -1 đến +1 hoặc được chuẩn hóa thành 0 đến 1. Hơn bạn cần tính khoảng cách của hai tính năng theo một trong các phương pháp dưới đây:

  1. Khoảng cách kết hợp đơn giản
  2. Khoảng cách của Jaccard
  3. Khoảng cách hamming
  4. Hệ số của Jaccard
  5. hệ số khớp đơn giản

Đối với dòng ... bạn có thể biểu diễn nó theo các thuộc tính góc (a) và độ dài (l) hoặc L1 = P1 (x1, y1), P2 (x2, y2) bên dưới là sự tương đồng với a và l.

Bây giờ đo góc cho góc và độ dài

  • A_user = 20 và length_User = 50
  • A_teacher30 và Length_Teacher = 55
  • Bây giờ, bình thường hóa các giá trị.

Sử dụng khoảng cách euclide

độ tương tự = SquareRoot ((A_user - A_teacher30) ^ 2 + (length_User - length_Teacher) ^ 2)

đưa ra các biện pháp tương tự. Bạn cũng có thể sử dụng các phương pháp được đề cập ở trên dựa trên vấn đề và các tính năng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.