3
我有numpy的差異的奇怪行爲的情況下:numpy的差異怪異的行爲
a = list(img_arr[y_coord_1,:])
print a
print np.diff(a)
>>[62, 62, 62, 62, 62, 62, 62, 62, 63, 62, 96, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 66, 63, 64, 64, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 64, 65, 65, 64, 63, 63, 63, 63, 63, 63, 63, 64, 64, 63, 63, 63, 63, 63, 64, 65, 65, 64, 63, 63, 63, 63]
>>[ 0 0 0 0 0 0 0 1 255 34 2 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 224 253 1 0 255
0 0 0 0 0 0 0 0 0 1 1 0 255 255 0 0 0 0
0 0 1 0 255 0 0 0 0 1 1 0 255 255 0 0 0]
現在,當我在終端運行此我得到
array([ 0, 0, 0, 0, 0, 0, 0, 1, -1, 34, 2, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32, -3, 1,
0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
0, -1, -1, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0,
0, 0, 0, 1, 1, 0, -1, -1, 0, 0, 0])
什麼樣的正確答案事情可能會導致此 - 我在這個腳本中使用其他一些編譯庫,如果這相關
編輯:我剛剛發現它的負數是錯誤的 - 而上限是非常可疑欠條。看起來像一個dtype問題。
什麼是'a.dtype'?它是否是'np.uint8'? –
這是正確的問題。這是一個溢出錯誤 - 因爲之前沒有發現它而感到很愚蠢。我認爲list命令會轉換回python浮點數或其他東西 – user3684792
在'np.uint8'數組上調用'list()'會給你一個'np.uint8'標量值列表。您需要顯式地將您的數組轉換爲有符號整數類型。 –