Ich habe ein Array von 56 Bildern mit jeweils 2 Kanälen für die Pixel. So ist seine Form (1200, 800, 52, 2). Ich muss einen KNeighborsClassifier tun, und es muss abgeflacht werden, so dass alle Pixel in allen 52 Bildern in einer Spalte sind. Also Form (1200 * 800 * 52,2). Dann, nachdem die Klassifizierung durchgeführt wurde, muss ich wissen, dass ich sie in der richtigen Reihenfolge umformen kann.Unshape und umgestalten ein numpy Array?
Als ersten Schritt versuche ich, das gleiche Array zu entformen und zu verändern und zu versuchen, es so zu machen wie das Original.
Hier ist, was ich habe versucht, die nicht zu funktionieren scheint:
In [55]: Y.shape
Out[55]: (1200, 800, 2, 52)
In [56]: k = np.reshape(Y,(1200*800*52,2))
In [57]: k.shape
Out[57]: (49920000, 2)
In [58]: l = np.reshape(k,(1200,800,52,2))
In [59]: l.shape
Out[59]: (1200, 800, 52, 2)
In [60]: assert l == Y
/Users/alex/anaconda2/bin/ipython:1: DeprecationWarning: elementwise == comparison failed; this will raise an error in the future.
#!/bin/bash /Users/alex/anaconda2/bin/python.app
---------------------------------------------------------------------------
AssertionError Traceback (most recent call last)
<ipython-input-60-9faf5e8e20ba> in <module>()
Edit: ich einen Fehler in k und Y die Formen. hier ist die korrigierte Version, noch mit einem Fehler, obwohl
In [78]: Y.shape
Out[78]: (1200, 800, 2, 52)
In [79]: k = np.reshape(Y,(1200*800*52,2))
In [80]: k.shape
Out[80]: (49920000, 2)
In [81]: l = np.reshape(k,(1200,800,2,52))
In [82]: assert Y == l
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-82-6f6815930213> in <module>()
----> 1 assert Y == l
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
'Y' hat Form' (1200, 800, 2, 52) ', aber' L' hat Form '(1200, 800, 52, 2)' die beiden sind nicht gleich, weil die Formen nicht übereinstimmen. – unutbu
oops. Ich habe die Frage und den Code aktualisiert. Ein anderer Fehler tritt auf, aber die Neugestaltung scheint immer noch nicht zu funktionieren. – BigBoy1337