文档章节

矩阵旋转90度,180度,270度

元禛慎独
 元禛慎独
发布于 2017/03/26 16:44
字数 233
阅读 26
收藏 0

将矩阵逆时针旋转90度,180度,270度

矩阵旋转的关键在于构建一个反对角矩阵B, 形如:

In [707]: B
Out[707]: 
array([[0, 0, 1],
       [0, 1, 0],
       [1, 0, 0]])

假设目标矩阵为A:

In [708]: A=np.arange(1,10).reshape(3,3)

In [709]: A
Out[709]: 
array([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])

1、将A逆时针旋转90度:(AB).T

In [710]: np.dot(A,B).T
Out[710]: 
array([[3, 6, 9],
       [2, 5, 8],
       [1, 4, 7]])

2、将A逆时针旋转180度:(BAB)

In [711]: np.dot(B,np.dot(A,B))
Out[711]: 
array([[9, 8, 7],
       [6, 5, 4],
       [3, 2, 1]])


3、将矩阵逆时针旋转270度:(A.T)B

In [712]: np.dot(A.T,B)
Out[712]: 
array([[7, 4, 1],
       [8, 5, 2],
       [9, 6, 3]])

注,BA,即A左乘B,是将A的行进行上下交换

        AB,A右乘B,是对A的列进行左右交换

构建B:

B=np.zeros_like(A)
for i in range(len(A)):
    B[0][len(A)-1-i]=1

 

© 著作权归作者所有

共有 人打赏支持
元禛慎独
粉丝 3
博文 209
码字总数 60366
作品 0
朝阳
程序员
安卓平台的视频方向修正问题

由于Android的开放性,不同的设备存在一些差异,某些设备所采集的视频数据显示出来在方向上存在一定的误差,这通常与硬件设备的驱动相关,新增加的API接口便是在远程显示时,可以支持手工来修...

AnyChat
2014/12/16
68
0
[iOS]关于视频方向的若干问题

版本: OS X 10.10.5 Xcode 6.4(6E35b) iOS >= 7 一、MOV/MP4视频文件中的Rotation元数据 iOS上内置相机应用录制的mov/mp4视频可能产生一个Rotation元数据,表示录制视频时摄像头旋转到了多少...

TomatosX
2015/09/04
595
1
高仿简书App登录注册3D旋转

常常会登录简书App看文章和技术博客,很喜欢简书App清新的设计。今天,仿着简书登录注册页面的3d翻转效果做了一个,虽然不是高大上的技术,但是总能让人眼前一亮。 github代码直通车 简书效果...

翻滚吧李博
2017/11/29
0
0
Windows Mobile下横竖屏切换

我们可以通过API用编程的方式切屏,用到的API:ChangeDisplaySettingsEx 旋转90度代码如下: DEVMODE devmode = {0}; devmode.dmSize = sizeof(DEVMODE); devmode.dmDisplayOrientation = DM......

长平狐
2012/08/13
90
0
Android相机重力感应图标旋转

相机拍摄都有横屏拍摄和竖屏拍摄,横竖屏切换,图标也会跟着重力方向旋转,于是也做了一个相机旋转效果。 代码在这里面 啥也不说了,先上效果图: 演示 在Android平台中,传感器框架通常是使...

翻滚吧李博
2017/12/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

异步化,高并发大杀器

今天来聊聊如何让项目异步化的一些事。 在进入正文之前,顺便给大家推荐一个Java架构方面的交流学习群:698581634,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分...

Java大蜗牛
18分钟前
0
0
织梦dedecms安全设置

网站本身做好防范: 1、修改默认后台名。 打开网站根目录,找到[dede],这个文件夹就是后台的路径,可以随意修改,比如修改为[adminbuy],此时后台登陆的路径为:http://www.*****.com/admi...

雨季2014
18分钟前
0
0
完美Python入门基础知识点总结,看完你的Python就完全入门了!

Python标识符 在 Python 里,标识符有字母、数字、下划线组成。 在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。 Python 中的标识符是区分大小写的。 以下划线...

糖宝lsh
25分钟前
0
0
Java关于前后台传输中文乱码以及Excel下载乱码解决

针对乱码,一般情况是前后台以及中间件编码格式不同导致.故需要保证编码格式相同即可. 1.前台页面格式指定,这里用的是jsp,故需要将pageEncoding指定为"UTF-8" 2.指定服务器编码格式,比如用的t...

勤奋的蚂蚁
27分钟前
0
0
Flutter组件 - Flexible

Flexible是一个控制Row、Column、Flex等子组件如何布局的组件。 Flexible组件可以使Row、Column、Flex等子组件在主轴方向有填充可用空间的能力(例如,Row在水平方向,Column在垂直方向),但是...

一箭落旄头
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部