python 旋转矩阵(array)

作者: 松山剑客 | 来源:发表于2018-08-28 10:16 被阅读1次

python中将array类型的矩阵逆时针旋转90°,即:
\left[ \begin{matrix} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{matrix} \right] \rightarrow \left[ \begin{matrix} 3 & 6 & 9\\ 2 & 5 & 8 \\ 1 & 4 & 7 \end{matrix} \right]
代码为:

import numpy as np


def rotate(array):
    temp = np.zeros_like(array.transpose())
    for j in range(len(array)):
        for i in range(len(array[0])):
            temp[i][j] = array[j][len(array[0])-i-1]
    return temp

if __name__ =='__main__':
    a = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])
    b = rotate(a)
    print(a,b)

PS:

  1. numpyarray一旦定义,其类型即为确定的int32 或者float64。定义后无法通过赋值改变类型,如
a = numpy.array([1,2,3])
print(a)
a[0] = 2.5
print(a)

可能我们会认为第二个输出为[2.5,2,3],但输出其实是[2,2,3],这是因为一开始a的数据类型就是int32,使用dtype可查看array类型。

array的类型

这一点需要注意,和我们传统认为的python是弱类型不同


弱类型
  1. array转换数据类型 float -> int
array.astype(np.int32)
Out[10]: array([1, 2, 3, 4, 5], dtype=int32)

相关文章

  • python 旋转矩阵(array)

    在python中将array类型的矩阵逆时针旋转90°,即:代码为: PS: numpy 中array一旦定义,其...

  • 【2020-11-17】 |探索卡片| 二维数组

    旋转矩阵[https://leetcode-cn.com/leetbook/read/array-and-stri...

  • opencv图像旋转矩阵

    在Python opencv中图像旋转矩阵可以用来旋转源图片到目标图片、旋转源坐标点到目标坐标点。根据图像旋转矩阵...

  • 正确使用OpenCV和Python旋转图像

    使用OpenCV和Python旋转图像 其中,旋转矩阵中前两列控制旋转,最后一列控制其位置(即平移) 我们先定义了...

  • numpy矩阵操作

    python中矩阵运算要用到numpy库,记录一下常用和用到的函数。 首先要变成一个numpy的array 矩阵换...

  • 基本变换矩阵

    1 平移变换 平移矩阵 T 平移后的新点 2 旋转矩阵 旋转矩阵用、、 分别表示 对一个绕任意轴旋转角度的旋转矩阵...

  • 矩阵旋转

    python矩阵旋转方法: 一、方法论: 方法1、先逆序,再行列交换: zip(*matrix[::-1]) 方法...

  • Python旋转矩阵数组

    问题: 假设有一个3*3的二维数组,如下 现在,请你用最简单的方式顺时针翻转数组90°,使之成为如下 解法: 思路...

  • Python实现旋转矩阵

    要求:给一个n×n的数组,旋转90度。 手动画个丑图: 简单思路(顺时针):如图四个红框为一个layer,每次旋转...

  • LeetCode | 面试题 01.07. 旋转矩阵【Pytho

    LeetCode 面试题 01.07. 旋转矩阵【Medium】【Python】【数学】 问题 力扣 给你一幅由 ...

网友评论

    本文标题:python 旋转矩阵(array)

    本文链接:https://www.haomeiwen.com/subject/pscfwftx.html