python函数图像平移_旋转、缩放和平移二维坐标?
下面是一个关于矩阵的解决方案(这对于这种计算是有意义的,最后,二维坐标是一列的矩阵!)我是说
缩放非常简单,只需将矩阵的每个元素乘以缩放因子即可:scaled = copy.deepcopy(original)
for i in range(len(scaled[0])):
scaled[0][i]=scaled[0][i]*scaleFactor
scaled[1][i]=scaled[1][i]*scaleFactor
移动是很容易的,你所要做的就是把偏移量加到矩阵的每个元素上,下面是一个使用矩阵乘法的方法:import numpy as np
# Matrix multiplication
def mult(matrix1,matrix2):
# Matrix multiplication
if len(matrix1[0]) != len(matrix2):
# Check matrix dimensions
print 'Matrices must be m*n and n*p to multiply!'
else:
# Multiply if correct dimensions
new_matrix = np.zeros(len(matrix1),len(matrix2[0]))
for i in range(len(matrix1)):
for j in range(len(matrix2[0])):
for k in range(len(matrix2)):
new_matrix[i][j] += matrix1[i][k]*matrix2[k][j]
return new_matrix
然后创建翻译矩阵import numpy as np
TranMatrix = np.zeros((3,3))
TranMatrix[0][0]=1
TranMatrix[0][2]=Tx
TranMatrix[1][1]=1
TranMatrix[1][2]=Ty
TranMatrix[2][2]=1
translated=mult(TranMatrix, original)
最后,旋转有点难(你知道你的旋转角度吗?)以下内容:import numpy as np
RotMatrix = np.zeros((3,3))
RotMatrix[0][0]=cos(Theta)
RotMatrix[0][1]=-1*sin(Theta)
RotMatrix[1][0]=sin(Theta)
RotMatrix[1][1]=cos(Theta)
RotMatrix[2][2]=1
rotated=mult(RotMatrix, original)
进一步了解我所做的工作:
所以基本上,如果在代码中插入这些操作,将向量乘以旋转/平移矩阵,就可以了
编辑
python函数图像平移_旋转、缩放和平移二维坐标?相关推荐
- python图像卷积_图像处理——卷积原理、二维卷积python实现
一:什么是卷积 离散卷积的数学公式可以表示为如下形式: f(x) = - 其中C(k)代表卷积操作数,g(i)代表样本数据, f(x)代表输出结果. 举例如下: 假设g(i)是一个一维的函数,而且代 ...
- 请用python代码表示什么_深度解析什么是二维码?用Python 5行代码生成个性二维码...
二维码满天飞, 随便扫一扫就能扫到不一样的内容. 有没有好奇什么是二维码? 又是怎么生成的呢? 今天我们就用python 5行代码 生成一个二维码,并且是个性的二维码,想你所想的,先看效果图,准备好微 ...
- Python函数图像工具--用于更便捷地得到各种数学函数的图像信息
宣传一哈:Python函数图像工具来啦! Python函数图像工具--用于更便捷地得到各种数学函数的图像信息 Python函数图像工具--用于更便捷地得到各种数学函数的图像信息-Python文档类资源 ...
- Python使用tsne进行高维数据可视化实战:二维可视化、三维可视化
Python使用tsne进行高维数据可视化实战:二维可视化.三维可视化 # 绘制二维可视化图像并添加标签字符函数 def plot_embedding(data, label, title):x_mi ...
- Python教你几行代码生成一个自己的二维码名片
Python教你几行代码生成一个自己的二维码名片 第一步:安装相关的库文件: 要导入一库文件 from seqno import helpers#安装库seqno: pip install seqno ...
- java坐标移动题目case_用java怎样编写一个二维坐标平移程序
展开全部 java编写二维坐标平移程序,主要是e69da5e887aa62616964757a686964616f31333337626231通过类继承Point2D,使用里面的方法来平移,如下代码: ...
- 优酷视频怎么转二维码_优酷视频转二维码
有的人想将自己制作的视频分享出去,那么该如何将视频转换成二维码来分享呢?其实方法很简单,直接在视频界面中就能生成,这里和大家讲讲. 01. 登录自己的优酷帐号,然后点击右上角的上传按钮. 优酷视频怎么 ...
- python 可视化 二维坐标标注等等
python 可视化 二维坐标标注等等 - 蔡军帅 - 博客园https://www.cnblogs.com/caiyishuai/p/9607250.html 大佬的分享,在这里方便自己总结学习,因 ...
- python函数图像平移_[Python图像处理]六.图像缩放,图像旋转,图像翻转与图像平移...
图像缩放 图像缩放主要是调用resize()函数实现,result = cv2.resize(src, dsize[, result[.fx, fy[,interpolation]]]) 其中src ...
最新文章
- 微生物绝对定量or相对定量,你选对了吗
- CentOS 安装python3.6
- springboot token_Springboot接口幂等性基于token实现方案
- Surface Pro 4 和 Surface Book 使用名为 Surface UEFI(统一可扩展固件接口)的新固件接口...
- 函数使用了堆栈的字节超过_在C语言中如何访问堆栈?
- hadoop--hadoop集群常用脚本
- 做一个项目,平时都用到哪些工具提高效率(中)
- 关于 V C++ 中 Error 6 fatal error C1075的解决办法
- zynq中mgtx应用_【干货分享】ZYNQ常用外设设计 (上)
- 使用innotop监测mysql
- Exynos1080处理器性能与功耗究竟怎么样?
- POJ3461 【KMP(粗糙模板)】
- (转)专访Palantir创始人:如何接二连三创出独角兽公司?
- 研究生们都在推荐哪些好用的论文在线翻译软件?
- 网易云音乐ncm格式转换mp3格式工具
- PASCAL VOC2012数据集内容解读
- BeyondCompare3提示许可密钥过期完美解决方法
- 基于单片机的电子秤(数码管)系统设计(#0416)
- 【详解】视频、音频格式有哪些?
- TwinCAT 3 故障程序