旋转float ndarray而不更改值

时间:2018-06-27 08:37:52

标签: python scipy rotation numpy-ndarray

我想像这样旋转一个numpy数组

[[0.    0.... 0.771... 0. 0.162 0. ...]
 [0.987 0.... 0.074    0. 0...  0. ...]
 [...]]

我正在使用 scipy.ndimage.rotate 。 这是我的代码:

matrix = read_mat_file(file_name).reshape((shape[0],shape[1]))
matrix_rot = scipy.ndimage.rotate(matrix, angle=60, reshape=False, mode='constant')

结果是:

[[ 0.00000000e+00  0.00000000e+00 ... 0.00000000e+00  0.00000000e+00]
 [ 0.00000000e+00  0.00000000e+00 ... 0.00000000e+00  0.00000000e+00]
 [ 0.00000000e+00  8.48601683e-01 ... 6.49464144e-02  3.33448905e-02]
 [-3.74391429e-02 -3.33013694e-02 ... -4.96632874e-02 -6.57955186e-04]
 [ 2.98892084e-03  1.71639726e-03 ... 9.86108733e-04  5.91683982e-04]
 [...]]

但是,我真正需要的是这样的东西:

[[0.    0.    ... 0.    ... 0. 0.074 ...  0. ...]
 [0.    0.771 ... 0.162 ... 0. 0.    ...  0. ...]
 [...]]

是什么原因造成的?我如何避免那些不必要的“小价值”?

谢谢!

0 个答案:

没有答案