因爲你已經在第二軸一個元素的三維數組:
In [26]: A = [[[1, 2]], [[3, 4]], [[5, 6]], [[7, 8]]]
In [27]: A[0]
Out[27]: [[1, 2]]
而當你想通過A[0][1]
訪問第二項就提出了一個IndexError:
In [28]: A[0][1]
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-28-99c47bb3f368> in <module>()
----> 1 A[0][1]
IndexError: list index out of range
您可以使用np.squeeze()
爲了減小尺寸,並將陣列轉換爲二維陣列:
In [21]: import numpy as np
In [22]: A = np.array([[[1, 2]], [[3, 4]], [[5, 6]], [[7, 8]]])
In [33]: A = np.squeeze(A)
In [34]: A
Out[34]:
array([[1, 2],
[3, 4],
[5, 6],
[7, 8]])
你呢!這正是我想要的。出於好奇的一個問題。爲什麼該功能創建了一個3D數組呢? – Adam
@Adam我認爲這是'goodFeaturesToTrack'的功能,你可以在文檔中找到更多的細節。 – Kasramvd
我會做的。再次感謝您的詳細解答。 – Adam