Sortieren von Punkten nach der Entfernung zu einem bestimmten Punkt x,y hier in meinem Fall (x=0,y=o)Python

Python-Programme
Anonymous
 Sortieren von Punkten nach der Entfernung zu einem bestimmten Punkt x,y hier in meinem Fall (x=0,y=o)

Post by Anonymous »

Ich möchte ein Array „a“ ​​(wie unten angegeben) nach der Entfernung vom Ursprung oder einem Punkt (in meinem Fall 0,0) sortieren (vom kürzesten zum längsten) und es in einem ähnlichen Array-Typ „b“ speichern oder das Array „a“ ​​ersetzen.

Die unten angegebenen Punkte sind 3D-Numpy-Arrays

Code: Select all

[[[  510.    11.]]

[[  651.   276.]]

[[  269.    70.]]

[[  920.    26.]]

[[  513.    21.]]

[[ 1197.   620.]]

[[  407.   268.]]

[[  452.    35.]]

[[  435.     3.]]

[[  520.    20.]]

[[ 1151.   499.]]

[[  104.    26.]]

[[  754.    28.]]

[[  263.   111.]]

[[  731.    12.]]

[[  972.   200.]]

[[ 1186.   614.]]

[[  437.     2.]]

[[ 1096.    68.]]

[[  997.   201.]]

[[ 1087.   200.]]

[[  913.   201.]]

[[ 1156.   510.]]

[[  994.   230.]]

[[  793.    29.]]

[[  514.    19.]]]
Ich kann keine hilfreichen Informationen zu dieser Art der Sortierung von 3D-NP-Arrays finden

ps: Diese Punkte 'a' wurden von Goodfeaturestotrack, OPEN CV, Python 3.6 erhalten

und wie löscht man ein Array in den Nulltyp?

Code: Select all

 #this is  clustering algorithm
for index in range(len(a): #a is the above matrix 3d np array
#find distance was already defined and is euclidean distance formula
if findDistance(a[index][0], a[index][1], a[index + 1][0], a[index + 1][1]) < 3: #calculation euclidean distance between ai and ai+1
c.append(index)
if findDistance(a[index][0], a[index][1], a[index + 1][0], a[index + 1][1]) > 3: #calculation euclidean distance between ai and ai+1
if len(c) > 10:
cp = np.insert(cp, c, 0)

c = [] # should clear c **is this correct ??**

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post