文章目录

  • ​​基础操作​​
  • ​​插入元素​​
  • ​​计算两点距离​​
  • ​​矩阵操作​​
  • ​​矩阵旋转​​
  • ​​矩阵镜像(flip)​​

基础操作

插入元素

  • ​np.insert​
np.insert(arr, obj, values, axis)
#arr原始数组,可一可多,obj插入元素位置,values是插入内容,axis是按行按列插入。

计算两点距离

  • 欧式距离:
vec1 # [N, 2]
vec2 # [N, 2]
np.sqrt(np.sum(np.square(vec1-vec2), axis=-1))
>>> pts
array([[144.63920581, 1.33333333],
[183.29429398, 357.41075286],
[178.0554849 , 352.42292716],
[176.00022123, 339.53192254],
[137.78552082, 1.33333333]])
>>> np.sqrt(np.sum(np.square(pts[:-1]-pts[1:]), axis=-1))
array([358.16943552, 7.23350025, 13.05381587, 340.35077357])

矩阵操作

示例图像(后续效果演示均以此图像为基准):

gt_map.shape # (3, 200, 400)

numpy——矩阵用法总结_python

矩阵旋转

  • ​numpy.rot90(m, k=1, axes=(0, 1))​
  • ​m​​:输入矩阵;
  • ​k​​:顺时针(正数)/逆时针(负数)旋转的次数;
  • ​axes​​:旋转哪维度(图片一般为两个);
# 旋转90度
gt_map = np.rot90(gt_map, k=1, axes=[1,2])
gt_map.shape # (3, 400, 200)

numpy——矩阵用法总结_基础操作_02

矩阵镜像(flip)

  • ​numpy.flip(m, axis=None)​
  • ​m​​:输入矩阵;
  • ​axis​​:指定维度;
# 继续将上图进行短边镜像
gt_map.shape # (3, 400, 200)
gt_map = np.flip(gt_map, axis=[2])

numpy——矩阵用法总结_矩阵旋转_03