线性分式变换(linear fractional transformation)的名称来源于其定义的形式:(ax+b)/(cx+d),其中分子分母是线性的,然后最外层是一个分式形式,所以叫做这个名字,但是这个名字其实基本没有对其几何的或者(可能的)物理内涵进行任何的解释或者表达,根据《Convex Optimization》中Remark 2.2对其的解释,这个线性分式变换可以分解为:P^-1QP(x),其中x就是初始的n维变量,首先P是一个逆透视变换(perspective transformation是透视变换,会将一个维度,那么逆透视变换自然是升一个维度了),称为投影变换(projective transformation,很明显这里的投影变换是升维度变换,和我以前常遇到的降维度变换不同,或许投影变换既可以表示升维度也可以降维度),经过第一个P就变成了n+1维变量,然后Q是一个矩阵变换,既然是矩阵变换那就存在非常多的可能性了,其中可以包括(平移、旋转、缩放、倒置等),然后将变换后的n+1维变量再进行一次透视变换(降一个维度,既然P是逆透视变换,那么P^-1自然就是透视变换了),又变成了n维的变量。可见这个线性分式变换的目的就是把变量提高一个维度(以统一的方式,也就是透视变换的方式,这种方式可以维持凸性和仿射性),然后在这个高维度的空间中对其进行一些处理(这个就需要由Q=[a,b;c,d]来决定了),然后再用同样的方式将其送回到原来的维度空间。这个过程,特别是透视变换中对变量最后一项元素必须等于1的强调,让我想起了在黄家祥论文中看到过的四元数变换,其实归根结底他想做的是,对三维空间变量进行一系列的操作(平行、旋转、缩放等),但是却硬是将变量变成了四维的(这个过程很简单,原来的三维变量最后加一项元素,这个元素就是1),这样的好处是什么呢,据我观察就是变换矩阵变得简单了。这其实是很有道理的,一个直观的理解就是,例如在二维平面xy(空间)中,我们想把一个封闭圆形内的一个三角形移到圆形外,这几乎是不可能的任务,非常难,但是如果在三维空间中这就非常简单了,只要将这个三角形在第三个维度z进行一个平移,然后再在二维平面xy的任意方向上进行平移, 然后再将这个三角形在z方向进行平移,将其还原到原来的xy平面内,就实现了二维平面内无法完成的任务。这个例子说明,在低维空间内很难(甚至不可能)的事情,在高维(甚至只需要高一个维度)空间中就会变得简单很多。我们将这个例子与线性分式变换进行对比发现了一些非常相似的地方,首先由二维空间到三维空间的出现,其实就是将变量进行了升维操作,也就对应于逆透视变换P,然后再三维空间的一系列操作就对应于Q,再然后由三维空间的消失恢复到二维空间就对应于透视变换P^-1,可以发现,在这个过程中,透视变换的主要作用其实就是一个规范化的升维(降维)操作。其实关于这个例子,我最初想到的是刘慈欣先生《三体》里地球的远航舰队碰到四维时空碎片时的情节,通过”四维空间通道“,一艘舰船里的人神不知鬼不觉得到了另一艘舰上,真是让人神迷的描述啊。后来由此很自然得想到了《兔子洞里到底是什么》里关于高维空间与低维空间关系的介绍。

线性分式变换(linear fractional transformation)的更多相关文章

  1. <<Differential Geometry of Curves and Surfaces>>笔记

    <Differential Geometry of Curves and Surfaces> by Manfredo P. do Carmo real line Rinterval I== ...

  2. <Differential Geometry of Curves and Surfaces>(by Manfredo P. do Carmo) Notes

    <Differential Geometry of Curves and Surfaces> by Manfredo P. do Carmo real line Rinterval I== ...

  3. H∞一般控制问题的鲁棒叙述性说明

    Robust Control System:反馈控制有承受一定类不确定能力的影响,这一直保持在这种不确定的条件(制)稳定.动态特性(灵敏度)和稳态特性(逐步调整)的能力. 非结构不确定性(Unstru ...

  4. martini-拓扑映射

    如何为一个新的分子创建拓扑文件? 这是martini应用的关键.http://jerkwin.github.io/2016/08/31/Martini%E5%B8%B8%E8%A7%81%E9%97% ...

  5. (邹博ML)凸优化

    目录 凸集的基本概念 凸函数的基本概念 凸优化的一般提法 凸集基本概念 思考两个不能式 两个正数的算术平均数大于等于几何平均数 给定可逆对称阵Q,对于任意向量x,y,有: 思考凸集和凸函数 在机器学习 ...

  6. 【线性代数】7-2:线性变化的矩阵(The Matrix of a Linear Transformation)

    title: [线性代数]7-2:线性变化的矩阵(The Matrix of a Linear Transformation) categories: Mathematic Linear Algebr ...

  7. 【线性代数】7-1:线性变换思想(The Idea of a Linear Transformation)

    title: [线性代数]7-1:线性变换思想(The Idea of a Linear Transformation) categories: Mathematic Linear Algebra k ...

  8. linear map (also called a linear mapping, linear transformation or, in some contexts, linear function

    Linear map - Wikipedia https://en.wikipedia.org/wiki/Linear_map

  9. Linear Algebra From Data

    Linear Algebra Learning From Data 1.1 Multiplication Ax Using Columns of A 有关于矩阵乘法的理解深入 矩阵乘法理解为左侧有是一 ...

随机推荐

  1. WPF 主题切换(Z)

    using System; using System.Windows; using Assergs.Windows; namespace XMLSpy.WPF.Util{ /// <summar ...

  2. from表单如果未指定action,submit提交时候会执行当前url

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  3. CSS 清除默认样式

    通常有以下几句就够了: *{margin:0;padding:0} li{list-style:none} img{vertical-align:top;border:none} 如果你想写全也可以: ...

  4. 修复win10升级时断电inaccessible boot device

    代码提示0xc0000001 这里的解决方法对系统以及个人的没有文件丢失的影响,没有重装以及重置上丢失东西的顾虑 解决方法: WINDOWS/system32/config/RegBack/SYSTE ...

  5. 如何编写稳定流畅的iOS移动端应用

    原文链接:http://www.jianshu.com/p/f4adce56166f 不忘初心 在过去几年间,移动应用以雷霆之势席卷全球.我们在工作和休闲时间中使用互联网的方式,已经随着移动应用的前进 ...

  6. myeclipse maven 安装

    myeclipse 上安装 Maven3   环境准备: JDK 1.6.45 Maven 3.0.5 myeclipse 8.5 安装 Maven 之前要求先确定你的 JDK 已经安装配置完成.Ma ...

  7. 12/13 Oracle连接报错

    1.oracle连接错误the network adapter could not establish the connection参考:http://blog.sina.com.cn/s/blog_ ...

  8. make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl] 错误 1,make: *** [out/host/linux-x86/obj/lib/libESR_Portable.so] 错误 1

    错误3: g++: g++: selected multilib '32' not installed selected multilib '32' not installed make: *** [ ...

  9. 【leetcode】Pascal's Triangle II

    题目简述: Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3, Retur ...

  10. Linux init

    -bash: netstat: command not found #pacman -S net-tools