1.1简介—无处不在的投影几何

我们都熟悉射影变换。当我们看一幅图,我们看到的方形不是方形,或圆形不是圆形。平面立体映射到图片上的变换是一个投影变换的例子。

因此投影变换时保留的几何属性是什么呢?当然,不是形状,例如圆形可能呈现出椭圆形。长度也不是,一个圆的两个垂直半径通过投影变换被不同程度的被拉伸。角度、距离、距离比率——都不被保留,通过投影变换几乎保留了极少的几何特征。然而,投影变换保留了平直度(笔直straightness)属性。事实证明,这是映射最基本的要求,我们可以定义一个平面的投影变换正如任意点在平面上的映射都将保留直线。

为了明白我们为什么需要投影变换,我们从熟悉的欧式几何开始。欧式几何描述了目标物体的角度和形状,有时欧式几何在一些主要方面比较麻烦,我们需要创造出一个例外来推出一些基本几何概念——如交叉线。任意两条直线(在此我们认为是二维几何平面)几乎会相交于一点,但有一对直线不会相交,我们称之为平行线。通常人们说平行线将会相交于无穷远处。然而,这并不能令人完全信服,因为它与“无穷并不存在,这只是一个方便的假设”这一说法冲突。我们可以通过增加在无穷远处平行线相交的点(称之为“理想点ideal points”)优化欧式几何平面从而绕开这些冲突并解决无穷远的问题。

通过在无穷远处增加这些点,熟悉的欧式几何空间被转换为一种新类型的几何对象,投影空间。这是非常有用的思维方式,因为我们熟悉欧式几何空间的属性,例如相关的距离、角度、点、线和入射(incidence)概念。因此投影空间就没什么神秘的,它仅仅是欧式几何空间的扩展,表示两条直线总会相交于一点,尽管有时神秘点在无穷远处。

坐标:在欧式几何的二维空间中,一个点被表示为实数的有序对偶(x,y),我们增加了另外坐标扩展成新的三元组坐标(x,y,1),用该三元组坐标代表该点原来的坐标(x,y)。这样做是没关系的,因为我们可以通过这种坐标表示方法表示出另一种坐标表示方法,只需要添加或者删除最后一个坐标。现在我们需要重点说明为什么最后一个坐标必须标为1——毕竟,其余两个坐标并不是很受约束。如果坐标是(x,y,2)呢?在这里,我们做一个定义,认为(x,y,1) 与(2x,2y,2)代表同一个点,同时对于非零值k,(kx,ky,k)也代表同一个点。点可以用等价的坐标来表示,即两个等价三元组坐标相差公倍数,它们被称为点的齐次坐标。给定一个三元组坐标(kx,ky,k),可以通过除以k值得到原始的二维坐标(x,y)。

读者也许明白尽管(x,y,1)代表点(x,y),但是没有点对应三元组坐标(x,y,0)。如果我们尝试除以最后一个坐标0,将得到在无穷远的点(x/0,y/0)。这解释了点如何在无穷远处出现,齐次坐标的最后一个坐标为0表示无穷远点。

我们知道了如何将二维欧式几何空间扩展为用齐次向量表示投影空间,便可以很清楚的知道在任意维度都可以做相同的扩展。欧式空间IRn可以被扩展到通过齐次向量表示点的投影空间IPn。无穷远的点在二维投影空间中形成线,通常称为无穷远直线,在三维空间中形成无穷平面。

齐次性:在传统的欧式几何中所有的点是一样的,是没有区别的,整个空间是齐次的。当坐标被增加,表面上看是挑选了一个点作为原点。然而,意识到这仅仅是一种特别的坐标表示框架被选择是非常重要的。我们也可以找到不同的方法表示以不同点作为原点的平面坐标。实际上,我们也可以考虑通过坐标轴平移或旋转到不同位置从而在欧式几何空间中改变坐标。我们也可以认为这是空间本身变换和旋转到不同位置的另一种方式,由此产生的操作被称为欧氏变换。

一种更为普遍的变换是IRn空间的线性变换,之后通过欧氏几何变换移动空间原点起源。我们可能认为这是空间平移、旋转,最后在不同的方向以不同的比例进行线性拉伸。这种变换结果被称为仿射变换(affine transformation)。

原创,转发请注明https://home.cnblogs.com/u/nannan-yhx/

有问题的地方欢迎指正~在此分享给大家。

Multiple View Geometry in Computer vision 1.1节部分翻译的更多相关文章

  1. Multiple View Geometry in Computer Vision Second Edition by Richard Hartley 读书笔记(二)

    // Chapter 2介绍的是2d下的投影变换,摘录下了以下定理 Result 2.1. The point x lies on the line l if and only if xTl = 0. ...

  2. Multiple View Geometry in Computer Vision Second Edition by Richard Hartley 读书笔记(一)

    var bdots = "../" var sequence = [ 'l1', 'l2', 'l3', 'l4' ]; Chapter1是个总览,引出了射影几何的概念,通过在欧式 ...

  3. Computer Vision Algorithm Implementations

    Participate in Reproducible Research General Image Processing OpenCV (C/C++ code, BSD lic) Image man ...

  4. Computer Vision Resources

    Computer Vision Resources Softwares Topic Resources References Feature Extraction SIFT [1] [Demo pro ...

  5. Computer Vision Tutorials from Conferences (3) -- CVPR

    CVPR 2013 (http://www.pamitc.org/cvpr13/tutorials.php) Foundations of Spatial SpectroscopyJames Cogg ...

  6. paper 156:专家主页汇总-计算机视觉-computer vision

    持续更新ing~ all *.files come from the author:http://www.cnblogs.com/findumars/p/5009003.html 1 牛人Homepa ...

  7. Analyzing The Papers Behind Facebook's Computer Vision Approach

    Analyzing The Papers Behind Facebook's Computer Vision Approach Introduction You know that company c ...

  8. Computer Vision Tutorials from Conferences (2) -- ECCV

    ECCV 2012 (http://eccv2012.unifi.it/program/tutorials/) Vision Applications on Mobile using OpenCVGa ...

  9. Computer Vision Tutorials from Conferences (1) -- ICCV

    ICCV 2013 (http://www.iccv2013.org/tutorials.php) Don't Relax: Why Non-Convex Algorithms are Often N ...

随机推荐

  1. 老王讲自制RPC框架.(一.前言与技术选型)

    (#)背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构 当网站流量很小时,只 ...

  2. JQuery_DOM 简介/设置元素及内容

    一.DOM 简介 1.D 表示的是页面文档Document.O 表示对象,即一组含有独立特性的数据集合.M表示模型,即页面上的元素节点和文本节点. 2.DOM 有三种形式,标准DOM.HTML DOM ...

  3. 【crawler】log4j:WARN No appenders could be found for logger (dao.hsqlmanager).

    This Short introduction to log4j guide is a little bit old but still valid. That guide will give you ...

  4. 整理mac上的php环境

    重装了一下mb,重新编译环境太麻烦了,所以整理一下mac系统自带php环境用: OS X yosemite 10.10.5  自带apache,php 1,让apache启用php模块 sudo vi ...

  5. 在myeclipse2014使用git上传github

    简介 首先在myeclipse中安装github客户端插件,这里就不说了,跟安装svn客户端插件一样的步骤 1.选中要push到github的工程右键team->share project-&g ...

  6. C#编码规范 转 http://www.cnblogs.com/wulinfeng/archive/2012/08/31/2664720.html

    C#编码规范   1  规范目的 ……………………………………………………… 3 2  适用范围 ……………………………………………………… 3 3  代码注释 ………………………………………………… ...

  7. (转)px、em、rem的区别和使用

    国内的设计师大都喜欢用px,而国外的网站大都喜欢用em和rem(国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位),那么三者有什么区别,又各自有什么优劣呢? 一.px特点 1. IE ...

  8. APACHE 在windows下的配置

    目前apache在windows下只支持到2.2 所以php必须下载相应的线程安全的 然后打开apache的配置页面 listen directory 和 load_module修改 httpd -k ...

  9. Powerdesigner SqlServer转Oracle(转)

    参考文章,原文地址:http://blog.csdn.net/cicada688/article/details/7802881 问题1:sqlserver数据库直接转oracle.字段类型由sql ...

  10. java向Excel文件写入数据

    /*使用之前要记得导入第三的jar包这个是我之前使用的时候那别人的东西自己修改了一下 还没来得及好好地封装一下还望见谅,注释我感觉写的挺清楚的就在不进行解释代码了*/package com.zzp.E ...