当前位置: 首页 > news >正文

社区论坛网站建设百度快速排名提升

社区论坛网站建设,百度快速排名提升,深圳做棋牌网站建设多少钱,ps怎么做网站特效文章目录 仿射变换坐标变换的逻辑scipy实现 仿射变换 前面提到的平移、旋转以及缩放,都可以通过一个变换矩阵来实现,以二维空间中的变换矩阵为例,记点的坐标向量为 ( x , y , 1 ) (x,y,1) (x,y,1),则平移矩阵可表示为 [ 1 0 T x …

文章目录

    • 仿射变换
    • 坐标变换的逻辑
    • scipy实现

仿射变换

前面提到的平移、旋转以及缩放,都可以通过一个变换矩阵来实现,以二维空间中的变换矩阵为例,记点的坐标向量为 ( x , y , 1 ) (x,y,1) (x,y,1),则平移矩阵可表示为

[ 1 0 T x 0 1 T y 0 0 1 ] \begin{bmatrix} 1&0&T_x\\0&1&T_y\\0&0&1 \end{bmatrix} 100010TxTy1

旋转矩阵可表示为

[ cos ⁡ θ sin ⁡ θ − sin ⁡ θ cos ⁡ θ ] \begin{bmatrix} \cos\theta&\sin\theta\\-\sin\theta&\cos\theta \end{bmatrix} [cosθsinθsinθcosθ]

scipy.ndimage中,提供了专门的仿射变换函数affine_transform,用于坐标的仿射变换。

坐标变换的逻辑

假设现在有一个矩阵

[ a b c d ] \begin{bmatrix}a&b\\c&d\end{bmatrix} [acbd]

a , b , c , d a,b,c,d a,b,c,d的坐标为 ( 0 , 0 ) , ( 1 , 0 ) , ( 0 , 1 ) , ( 1 , 1 ) (0,0),(1,0),(0,1),(1,1) (0,0),(1,0),(0,1),(1,1),那么假设现在给出一个变换矩阵

M = [ 1 1 1 1 ] M=\begin{bmatrix}1&1\\1&1\end{bmatrix} M=[1111]

则坐标 ( 0 , 1 ) (0,1) (0,1)变为

[ 0 1 ] [ 1 1 1 1 ] = [ 1 1 ] \begin{bmatrix}0&1\end{bmatrix}\begin{bmatrix}1&1\\1&1\end{bmatrix}=\begin{bmatrix}1&1\end{bmatrix} [01][1111]=[11]

从而 ( 1 , 1 ) (1,1) (1,1)处的值变为 c c c。另一方面 ( 1 , 0 ) (1,0) (1,0)坐标也变为 ( 1 , 1 ) (1,1) (1,1),所以 ( 1 , 1 ) (1,1) (1,1)处也可能为 b b b

scipy实现

仿射变换函数支持output, order, mode, cval以及prefilter这5个参数,此外,二者均支持output_shape参数,用于调整输出的数组维度。除了这些参数之外,仿射变换的定义式为affine_transform(input, matrix, offset=0.0, ),其中matrix为变换矩阵,当输入不同维度的矩阵时,含义不同,设 n n n为输入数组的维度,则matrix的矩阵维度及其含义如下

  • n × n n\times n n×n 对每一个输出轴进行线性变换
  • ( n + 1 ) × ( n + 1 ) (n+1)\times (n+1) (n+1)×(n+1) 此时,offset参数将不起作用,相当于把最后一个维度的参数作为偏移量
  • n × ( n + 1 ) n\times (n+1) n×(n+1) offset参数亦不起作用,但相当于最后一行的偏移量设为0。
  • n n n 输入为一个向量,表示进行针对对角线的变换

下面仍以对仿射变换进行一个演示

import numpy as np
import matplotlib.pyplot as plt
from scipy.ndimage import *ori = np.eye(20)
ori[10, :] = 1.0a,b = 0.9,1.1
fDct = {"ori" : ori,"vector" : affine_transform(ori, [a, b], offset=(-10,-10)),"mat" : affine_transform(ori, [[a, b],[-b, a]], offset=(-10,10)),
}fig = plt.figure()
for i, key in enumerate(fDct):fig.add_subplot(1, 3, i+1)plt.imshow(fDct[key], cmap='gray_r')plt.title(key)plt.show()

效果如下

在这里插入图片描述

http://www.mmbaike.com/news/29944.html

相关文章:

  • xyz域名注册局官方网站郑州网站制作
  • 一个电子商务网站的用户购买行为监测报告文档格式怎么做?网站外链怎么发布
  • 做网站用什么编程语言好seo优化上海牛巨微
  • 塔城地区建设工程信息网站整站优化seo
  • 海外仓一件代发平台aso优化师
  • 隧道建设网站无法登录网站建设网站定制
  • 单页面网站 万网x3哈尔滨百度搜索排名优化
  • 局网站建设自查数字营销公司排行榜
  • 济宁网站建设济宁百度推广app怎么收费
  • 网站到底备案好不好长沙seo
  • 交互式网站是什么意思拉新推广怎么找渠道
  • 珠海网站制作前端性能优化
  • 海口快速建站公司推荐网站服务器多少钱一年
  • 福建省建设局网站百度关键词搜索量排行
  • 做网站要会写什么免费舆情监测平台
  • 石家庄现在有疫情吗重庆小潘seo
  • 中企动力做网站5个月了海外网络推广
  • 怎样做医疗网站不违法百度软文推广公司
  • 花钱做网站注意什么百度指数查询官网大数据
  • 成都市规划建设委员会网站谷歌seo是指什么意思
  • 微信投票网站制作公司网站建设
  • 域名对网站有什么影响吗电商是做什么的
  • 域名未绑定 网站过期 以及其他原因seo查询站长工具
  • 做微商网站无锡今日头条新闻
  • asp做微网站设计千锋教育靠谱吗
  • 青岛专业做商业房的网站维普网论文收录查询
  • 怎么做互联网推广seo培训课程
  • 做旅游网站的研究意义seo网站
  • 七星彩网站开发如何让新网站被收录
  • 网站做的比较好的贸易公司搜索引擎优化方法包括