Creating Full View Panoramic Image Mosaics and Environment Maps
In ACM SIGGRAPH, pages 251–258, 1997
Proceeding SIGGRAPH '97 Proceedings of the 24th annual conference on Computer graphics and interactive techniques

本文针对全景图拼接问题提出了一个新颖的方法。
当前主流拼接算法要求相机的运动受限制: require pure horizontal camera panning
panning 是什么了? 简单来说就是相机固定,在水平方向内转动
In video technology, panning refers to the horizontal scrolling of an image wider than the display

本文提出的算法放宽了约束,只要求没有太大的运动视差
our system does not require any controlled motions or constraints on how the images are taken (as long as there is no strong motion parallax)

手持相机得到的图像可以被很好的拼接起来。

我们使用一组映射来表示我们的 image mosaics,所以不存在singularity problems ,singularity problems 存在于 cylindrical or spherical maps 的 top 和 bottom 位置。 我们的算法是快速鲁棒的,因为它直接求解 3D 旋转矩阵,而不是广义 8 参数 planar perspective transforms,我们也给出计算相机焦距 focal length 的方法。

2 Cylindrical and spherical panoramas
Cylindrical panoramas 圆柱形全景 经常被使用,因为构建它比较简单。为了构建一个圆柱全景图,相机固定在一个 leveled tripod 上面,拍摄得到图像序列。如果相机的焦距或 field of view 已知,那么 每个 perspective 图像可以被 warped 到 圆柱坐标体系内。


Figure 1a shows two overlapping cylindrical images—notice how horizontal lines become curved.

当我们将输入图像全部映射到圆柱坐标或球型坐标体系内, constructing the panoramic mosaics becomes a pure translation problem 图像全景拼接问题就变为一个单纯的平移问题

Ideally, to build a cylindrical or spherical panorama from a horizontal panning sequence, only the unknown panning angles need to be recovered

在实际问题中,我们也需要考虑垂直方向小的扰动位移。
In practice, small vertical translations are needed to compensate for vertical jitter and optical twist.

Therefore, both a horizontal translation t x and a vertical translation t y are estimated for each input image.
所以对每个输入图像,我们需要估计一直水平位移和一个垂直位移

To recover the translational motion, we estimate the incremental translation δt = (δt x ,δt y ) by minimizing the intensity error
between two images
最优化问题通过泰勒级数展开,通过简单的最小二乘求解 simple least-squares solution
使用 cylindrical or spherical coordinates 创建全景图存在几个问题:
1)相机运动约束较强 it can only handle the simple case of pure panning motion
2) cylindrical or spherical coordinates 在顶部和底部误差较大
even though it is possible to convert an image to 2D spherical or cylindrical coordinates for a known tilting angle, ill-sampling at north pole and south pole causes big registration errors
3)相机焦距的获取有点难度
it requires knowing the focal length (or equivalently, field of view)

3 Perspective (8-parameter) panoramas
针对 cylindrical or spherical coordinates 的问题,有学者提出了 使用 full planar perspective motion models, The planar per-
spective transform warps an image into another using 8 parameters

The 8-parameter perspective transformation recovery algorithm works well provided that initial estimates of the correct transformation are close enough.

运动模型的变量多,所以导致 8-parameter perspective transformation recovery algorithm 收敛很慢,有时得到局部最优解
However, since the motion model contains more free parameters than necessary, it suffers from slow convergence and sometimes gets stuck in local minima

4 Rotational (3-parameter) panoramas
这里我们提出使用 3个参数的 the 3-parameter rotational model

Figure 2 shows how our method can be used to register four images with arbitrary (non-panning) rotation. Compared to the 8-parameter perspective model, it is much easier and more intuitive to interactively adjust images using the 3-parameter rotational model

5 Estimating the focal length
相机焦距的估计: A convenient way to obtain this estimate to deduce the value from one or more perspective
transforms computed using the 8-parameter algorithm

Alternative techniques for estimating the focal length are presented in [8, 16, 13, 10]

Once an initial set of f estimates is available, we can improve these estimates as part of the image registration process, using the same kind of least squares approach as for the rotation [15]

11

图像拼接--Creating full view panoramic image mosaics and environment maps相关推荐

  1. 微软沈向洋自述:我职业生涯里的七堂课

    注:公司邮箱中收到微软公关发来的沈向洋博士的职业生涯七堂课,有所得而有所思,故转于自己博客中. 述 | 沈向洋博士,微软全球执行副总裁,微软人工智能及微软研究事业部负责人 以下为正文: 从卡内基 - ...

  2. 微软全球执行副总裁沈向洋:你给自己的定位是什么,你就会得到什么

    来源:AI 科技评论 摘要:沈向洋,美国国家工程院院士.微软全球执行副总裁.ACM/IEEE Fellow.多年来,沈向洋专注于计算机视觉和计算机图形学的研究,并领导和开发了 Bing 搜索.目前,他 ...

  3. 微软沈向洋自述:在实现职业目标的道路上,我得到了七个教训

    点击我爱计算机视觉标星,更快获取CVML新技术 最近微软沈向洋的离职成为科技圈最热门的话题,本文为沈博士在LinkedIn 上分享的自己在实现职业目标的道路上得到的七个教训,相信对大部分年轻人有帮助. ...

  4. 【opencv-python】全景图像拼接

    参考资料 Panoramic Image Mosaic R. Szeliski and H.-Y. Shum. Creating full view panoramic image mosaics a ...

  5. android view使用方法,Android View构造方法第三参数使用方法详解

    我们都知道,在Android中要使用一个View,一般会有两种方式: 在XML文件中配置: 直接在代码中new一个View的对象. 我们今天讨论的内容就是围绕着View的构造方法的. 1.实例 首先我 ...

  6. numpy.ndarray.view()(懵逼,看不太懂???)(view不会开辟新的内存空间)

    from numpy\core_multiarray_umath.py def view(self, dtype=None, type=None): # real signature unknown; ...

  7. android 首页布局变换,Android XML布局与View之间的转换

    Android的布局方式有两种,一种是通过xml布局,一种是通过java代码布局,两种布局方式各有各的好处,当然也可以相互混合使用.很多人都习惯用xml布局,那xml布局是如何转换成view的呢?本文 ...

  8. SQL View 的使用语法与原则

    1. View只是存储下来的sql 语句 Views are nothing but saved SQL statements, and are sometimes referred as " ...

  9. opencv实现几幅图像拼接成一整幅大图

    opencv实现几幅图像拼接成一整幅大图 标签: 博客opencv 2013-10-22 12:05 9846人阅读 评论(3) 收藏 举报 本文章已收录于: 分类: opencv(14) 作者同类文 ...

最新文章

  1. 关于比特币现金的一些误区
  2. C#编程(四十五)----------格式字符串
  3. SQL Server数据库表锁定原理以及如何解除表的锁定转
  4. 【Python】7000字,7幅图,这样就可以拿下Python字典?
  5. pwm一个时间单位_解读:什么是PWM“死区”?
  6. 使用 AngularJS 和 ReactJS 的经验
  7. 如何根据一个ABAP类方法的名称反差到类名称
  8. 【Flink】flink zookeeper HA 实现分析
  9. 一年了,写点关于人生的东西吧
  10. ubuntu中wps缺失字体
  11. Yii-- DeleteAll连表删除报错问题的解决方法
  12. 软件测试python测试步骤_软件测试员必备基础:3分钟带你入门自动化测试!
  13. 关于DTC诊断故障码的获取与清除(ISO14229系列之14、19服务)
  14. 2022年Java常用的框架汇总,你常用哪一个?
  15. 计算机管理属性被禁用,win7命令提示符提示已被系统管理员停用?
  16. 使用apache的ftpserver搭建ftp服务器
  17. 图片存base64后展示问题
  18. 连线9宫格可实现手势密码等
  19. 案例:电商交易数据分析
  20. 2021-05-13 python样条插值(一)

热门文章

  1. c语言程序设计编辑与调试环境实验报告,01程序设计基础实验报告_C语言程序设计基础.doc...
  2. MPB:南农成艳芬组-瘤胃微生物体外发酵过程与注意事项
  3. 华西生物医学大数据中心俞鹏课题组博士后招聘启事
  4. 今年1篇Science,2篇NBT,2篇MP,1篇PNAS等11篇文章,遗传发育所白洋组在植物微生物组取得系列进展!
  5. QIIME 2用户文档. 6沙漠土壤分析Atacama soil(2018.11)
  6. 公共基因表达数据分析系统genevestigator,再也不愁表达数据的查询和比较了
  7. html动画效果开源代码,8款强大的CSS3/HTML5动画及应用源码
  8. iar代码优化影响运行速度吗_Java 性能优化:教你提高代码运行的效率
  9. R语言使用timeROC包计算存在竞争情况下的生存资料多个标记物在相同时间下的cox及协变量分析AUC值、并可视化多个标记物在相同时间下的ROC值、多指标的ROC曲线(Time-dependent R
  10. pandas使用sort_index函数按照索引排序对dataframe的数据行进行排序(sort dataframe rows by index)