纯净、安全、绿色的下载网站

首页

当前位置:首页IT学院IT技术

numpy矩阵翻转旋转 使用numpy实现矩阵的翻转(flip)与旋转

patrickpdx   2021-06-03 我要评论
想了解使用numpy实现矩阵的翻转(flip)与旋转的相关内容吗,patrickpdx在本文为您仔细讲解numpy矩阵翻转旋转的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:numpy翻转,矩阵翻转,矩阵旋转,下面大家一起来学习吧。

numpy.flip(m, axis=None)

Reverse the order of elements in an array along the given axis.

The shape of the array is preserved, but the elements are reordered.

把m在axis维度进行切片,并把这个维度的index进行颠倒

示例

随机生成一个二维数组

import  numpy as np
a=np.random.randint(1,9,size=9).reshape((3,3))

[[5 8 6]
[3 1 7]
[8 7 8]]

axis=0:上下翻转,意味着把行看成整体,行的顺序发生颠倒,每一行的元素不发生改变

print(np.flip(a,axis=0))

[[8 7 8]
[3 1 7]
[5 8 6]]

axis=1:左右翻转,意味着把列看成整体,列的顺序发生颠倒,每一列的元素不发生改变

print(np.flip(a,axis=1))

[[6 8 5]
[7 1 3]
[8 7 8]]

Numpy矩阵的旋转

使用skimage.io读出来的图片是numpy.darray格式,掌握numpy矩阵的旋转与翻转,可实现数据增广(data augmentation)。

可用rot90函数实现,例子如下:

import numpy as np
mat = np.array([[1,3,5],
                [2,4,6],
                [7,8,9]
                ])
print mat, "# orignal"
mat90 = np.rot90(mat, 1)
print mat90, "# rorate 90 <left> anti-clockwise"
mat90 = np.rot90(mat, -1)
print mat90, "# rorate 90 <right> clockwise"
mat180 = np.rot90(mat, 2)
print mat180, "# rorate 180 <left> anti-clockwise"
mat270 = np.rot90(mat, 3)
print mat270, "# rorate 270 <left> anti-clockwise"

如果mat是图片,那么可视化效果更好。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。


相关文章

猜您喜欢

  • C语言数据存储 C语言数据(整数、浮点数)在内存中的存储

    想了解C语言数据(整数、浮点数)在内存中的存储的相关内容吗,一朵花花在本文为您仔细讲解C语言数据存储的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:c语言数据在内存中的存储形式,C语言数据存储类型,c语言存储类型有哪些,下面大家一起来学习吧。..
  • React Native与IOS端之间的交互 详解React Native与IOS端之间的交互

    想了解详解React Native与IOS端之间的交互的相关内容吗,Grewer在本文为您仔细讲解React Native与IOS端之间的交互的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:React,IOS,下面大家一起来学习吧。..

网友评论

Copyright 2022 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们