SlideShare a Scribd company logo
图像拼接算法研究

演讲人:江琳 吴艳娜
指导教师:回玒
学院:信息安全工程学院
          !
•  图像拼接的应用!
图像拼接简 •  技术简介!
  介!


      •  柱面投影!
      •  特征点提取和描述算法介绍!
      •  匹配算法!
图像配准! •  总结!



      •  图像坐标变换模型!
      •  图像插值!
图像融合! •  边界过渡与光照调整!




 演示!
应⽤用
图像配准技术
前提与假设

"   拍摄图像的摄像机中心固定。摄像机除了绕纵轴水平方
 向旋转外,没有其他旋转或平移。


"   所拼接图像有一定的重合区域。
图像配准

"   柱面投影

"   特征点提取和描述算法介绍

"   特征点匹配

"   方案比较

"   小结
柱⾯面投影

"   符合以上条件的图像,必须经过预处理,才能进行特征
 点的提取和匹配。否则会出现图像的一端放大失真的现
 象。


"   为解决这个问题,我们将图片投影在一个柱面上。
柱⾯面投影

投影公式如下:!


     ⎧                      C
                        c−
     ⎪                       2 ) + f ⋅ arctg ( C )
     ⎪c ' = f ⋅ arctn(
     ⎪                    f                   2f
     ⎪
     ⎨                          R
                        f (r − )
     ⎪                          2         R
     ⎪        r'=                       +
     ⎪                     C 2       2    2
                      (c − ) + f
     ⎪
     ⎩                      2
柱⾯面投影
图像配准

"   柱面投影

"   特征点提取和描述算法介绍

"   特征点匹配

"   方案比较

"   小结
"   要匹配两幅图像的特征点,有以下步骤:




   提取        描述          匹配
Harris算法提取⾓角点

        ⎡ ⎛ ∂I ⎞2        ⎛ ∂I ⎞ ⎛ ∂I ⎞ ⎤
        ⎢ ⎜ ⎟            ⎜ ⎟ ⎜ ⎟ ⎥
        ⎢    ⎝ ∂x ⎠      ⎝ ∂x ⎠ ⎝ ∂y ⎠ ⎥
    H = ⎢                               2    ⎥ ∗ L
        ⎢⎛ ∂I ⎞ ⎛ ∂I ⎞     ⎛ ∂I ⎞ ⎥
        ⎢⎜ ∂y ⎟ ⎜ ∂x ⎟
        ⎣ ⎝ ⎠ ⎝ ⎠
                                ⎜ ⎟ ⎥
                                ⎝ ∂y ⎠ ⎦


      R	
  =	
  det(H)	
  -­‐	
  k(trace(H))	
  2	
  
      !


                I(x,y) ------------点(x,y)处的灰度值
                ∂I/∂x	
  -­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐图像在x方向的一阶导数	
  
                ∂I/∂y-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐-­‐图像在y方向的一阶导数	
  
                L ----------------线性低通高斯模板
                det(H)-----------矩阵H的行列式
                trace(H)--------矩阵H的迹
                k-------------------阈值系数!
Harris算法提取⾓角点
描述特征点——Hu不变矩

"   选择以特征点为中心半径为r的圆形区域	
  

"   分别计算该区域的红,绿,蓝三种分量的七维Hu不变矩,	
  

"   将这三个Hu矩合并为一个21维的特征向量;	
  
	
  
特征点提取和描述——SIFT算法

"   构造高斯金字塔和高斯差分金字塔!
特征点提取和描述——SIFT算法




                        提取稳定
检测极值点       筛选极值点
                        的极值点

在高斯差分金字塔分层结构中,样本像素点需
        提取出图像中的极值点作为候选特征点,并在
要和它相邻的8个像素点以及上下相邻图像层
        这些特征点中筛选掉低对比度和处于边缘的特
中的各9个像素点共26个点进行比较。
        征点。!
如果样本像素点是27个点中最大或最小的,则
视为极值点。!
特征点提取和描述——SIFT算法

               关键点!
特征点提取和描述——SIFT算法



                   关键点!
特征点提取和描述⽅方案

"   由以上3中算法,我们得到两种方案:

"   1. Harris算法提取特征点,Hu不变矩描述特征点,得到
 21维特征向量。


"   2. SIFT算法提取和描述特征点,得到128维特征向量。
图像配准

"   柱面投影

"   特征点提取和描述算法介绍

"   特征点匹配

"   方案比较

"   小结
特征点匹配

"   假设其特征向量为Vl(i),通过下式所表示两特征向量各维
 的相对距离之和作为这两个特征点的相似性度量S:
           21
                   Vl (i ) − Vr (i )
        S =∑
          i =1   Vl (i ) + Vr (i ) + ε
"   S越小,相似度越高。!
特征点匹配

"   1. 图1中的特征点p1(i)与图2中的所有特征点计算S,找
  出图2中的p2(j)、p2(k),使得S最小和次小。若S(ij) <
  T*S(ik),则认为p2(j)是p1(i)的匹配点,其中T为一阈值。


"   2. 反过来,在图1中找p2(j)的匹配点,若也是p1(i),则认
  为p1(i)和p2(j)匹配。!
图像配准

"   柱面投影

"   特征点提取和描述算法介绍

"   特征点匹配

"   方案比较

"   小结
⽅方案⽐比较

"   我们对两套方案的时间开销在matlab上进行了比较,一
 定程度上可以说明这两种算法的运算复杂度。!
⽅方案⽐比较结果


            方案一!              方案二!


提取特征点用时!    3.327s(harris)!


特征点数!       159!              1600!


生成特征矩阵耗时!   0.288s!           6.167s(包括提取特征
                              点)!
匹配耗时!       0.044s!           3.846s!


匹配点对数!      30!               219!
匹配⽅方案——⽐比较结果

"   方案二比方案一提取的特征点多,前者约为后者的10倍。
 同时得到的匹配点对数也多。
"   匹配点多可以使得匹配更加精确,但也是运算速度大大
 减慢。
"   根据这两个方案的特点,我们得出以下结论:
"   对于尺度大小相当、相似度较高的图像拼接,可应用方
 案一;
"   对于尺度大小相差较大、相似度较低的图像,可应用方
 案二。!
利⽤用空间⽅方向约束剔除误差匹配

"   对于摄像机绕其中心在某一平面旋转而不发生绕主轴旋
 转而拍摄的两幅图像,当两幅图在有重叠部分的一端排
 在一起时,正确匹配点之间线段的倾斜角和长度都极为
 相近;


"   在获得初始匹配集后可以利用倾斜角和距离去除误匹配
 点;
图像配准

"   柱面投影

"   特征点提取和描述算法介绍

"   特征点匹配

"   方案比较

"   小结
"   图像配准一般还有RANSAC提取最大内点集、引导匹配
 等过程。但考虑到本课题所针对的图像特点,不再采取
 这几个方法。程序中这些方法的函数已写出,供以后进
 一步改进算法。



"   至此,图像配准过程结束。得到的返回值为连接线水平
 长度的平均值,供图像融合使用。!
图像融合⽅方法
图像融合⽅方法



图像坐标     图像的插     过渡与光
                  照调整      成果展示
变换模型      值

三种常见变换   最邻近点插值   线性加权方法
8-参数     法        光照调整局限
前向映射与逆   双线性插值法   性
向映射
图像坐标变换模型

"   如果对同一个物体在不同的方向进行拍摄,获得两幅图
 片,其中一幅图像可以通过对应的二维映射变换得到另
 一幅图
" 一般的投影变换形式
" 基本变换有刚性变换,仿射变换及投影变换!
⼀一般投影变换形式




X’=MX其中X’和X是两幅图像中的同一景物,
M矩阵为投影变换矩阵。
常⻅见的三种图像变换模型
8-参数模型

"   给定了从同一个观察点但是不同方向上拍摄的两幅图像,
 则两幅重叠图像的关系可以通过一个平面的投影运动模
 型描述。
"   平面投影变换通过下面公式把一幅图像变换成了另一幅:
通过齐次变换得到方程:!




"   解出上式中的8个系数,就确定了两幅图像之间的投影关
 系,从而完成具有相同场景的两幅图像之间的转换!
"   由于图像的像素点坐标都是整数表示,而映射后的像素
 的坐标不能保证是整数,若进行简单取舍,则图像中会
 出项明显“空洞”和“重叠”。!
图像变化——前向与逆向映射




"   设变换前输入的像素
 坐标是(x, y),相应
 的变换后输出图像的
 像素坐标为(u, v),
 变换的前向映射和逆
 向映射分别定义为:
前向映射


"   前向映射扫描输入的图像,把每个图像像素(x,
 y)的亮度值按照上式拷贝到(u, v)指定的像素位
 置!
逆向映射


"   逆向映射从输出图像点(u, v)出发,通过(U-1,
  V-1),找到它在输入图像中的位置(x, y),并把该
  位置处像素的亮度值传给图像中的(u, v)像素点。!
"   如图所示,逆向映射避免了空洞的出现,它保证了输
 出图像的点都可以被扫描到。!
图像的插值




"   两种方法:最邻近点插值法和双线性插值法!
最邻近点插值法

"   插值点的灰度值与其最邻近点的灰度值相同
"   优点:简单、快速!
⽅方法:
"   采用这种插值法引入的误差比较大,常出现马赛克
 现象!
双线性插值法

"   根据输入图像网格上的像素值来确定差值点的灰度值!
⽅方法:
光照调整

"   由于光照条件不同,采集的原始图像在亮度上会有较大
 变化,因此直接拼接会在图像的重叠区域产生亮度的跳
 变,给人不真实的感。为了在最终拼合的图像中得到流
 畅的效果,必须对其进行预处理。!
常⽤用⽅方法

"   均值、方差是颜色传输中常用的两个统计参数,可使用
 这两个参数对待拼接图像进行调整,将一幅图像的统计
 特征赋给待拼接的另外一幅,最终使二者整体亮度一致。!
具体过程
效果与局限性


"   差值相差较大的话,
  会导致灰度值超出阈
  值(0,255)而导致
  失真


"   无法自动判别出以哪
  一幅图为参照图
改良算法的提出


²    将调整系数设为
      两幅图像素平均
      值之差的一半	
  
²    一幅图减去这个
      系数,另一幅图
      加上这个系数	

光照调整的局限性


"   如果原始照片曝光不合适,大片像素点全白或全黑,则
    光照调整后的效果不佳
"   调整范围如果较大的话,会导致灰度值超出阈值(0,
    255)而导致失真




²    照片光照水平相差不大时,用线性加权的融合方法过渡
      即可	

接缝过渡

"   线性加权融合法
"   I(x,y) = w(x,y)IL(x,y)+(1-w(x,y))IR(x,y)

"   W(x,y)为加权函数,其取值与该点到拼接中线的距离线
   性相关。!
成果演⽰示
Demo演示
Image Stitching Method

More Related Content

What's hot

Processing 03
Processing 03Processing 03
Processing 03
信嘉 陳
 
第2讲 课件
第2讲  课件第2讲  课件
第2讲 课件p26chan
 
Processing 08
Processing 08Processing 08
Processing 08
信嘉 陳
 
Multi Camera Prmandoc
Multi Camera PrmandocMulti Camera Prmandoc
Multi Camera Prmandoc
guestb02e87
 
A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE
A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE     A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE
A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE Jian Michael
 
電腦輔助繪製基地地質圖之方法(正式版)
電腦輔助繪製基地地質圖之方法(正式版)電腦輔助繪製基地地質圖之方法(正式版)
電腦輔助繪製基地地質圖之方法(正式版)
家駿 陳
 
Polar exercise1
Polar exercise1Polar exercise1
Polar exercise1
Alisha Smile
 
Polar exercise2
Polar exercise2Polar exercise2
Polar exercise2
Alisha Smile
 
实验二New
实验二New实验二New
实验二NewZheng Li
 
Ppt 157-163
Ppt 157-163Ppt 157-163
Ppt 157-163
hungchiayang1
 
第七章 图[1]
第七章 图[1]第七章 图[1]
第七章 图[1]
Wang Yizhe
 
Ppt 167-173
Ppt 167-173Ppt 167-173
Ppt 167-173
hungchiayang1
 
Flow
FlowFlow
Polar example
Polar examplePolar example
Polar example
Alisha Smile
 
矩陣 轉換
矩陣   轉換矩陣   轉換
矩陣 轉換
River Wang
 
中國古籍善本書目分類表報告
中國古籍善本書目分類表報告中國古籍善本書目分類表報告
中國古籍善本書目分類表報告
心瑜 楊
 

What's hot (19)

Processing 03
Processing 03Processing 03
Processing 03
 
第2讲 课件
第2讲  课件第2讲  课件
第2讲 课件
 
Processing 08
Processing 08Processing 08
Processing 08
 
浅析Flash特效开发 陈勇
浅析Flash特效开发 陈勇浅析Flash特效开发 陈勇
浅析Flash特效开发 陈勇
 
Multi Camera Prmandoc
Multi Camera PrmandocMulti Camera Prmandoc
Multi Camera Prmandoc
 
A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE
A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE     A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE
A ROBUST MODELING FOR MULTIPLE NONLINEAR REGRESSION USING BEZIER SURFACE
 
電腦輔助繪製基地地質圖之方法(正式版)
電腦輔助繪製基地地質圖之方法(正式版)電腦輔助繪製基地地質圖之方法(正式版)
電腦輔助繪製基地地質圖之方法(正式版)
 
Polar exercise1
Polar exercise1Polar exercise1
Polar exercise1
 
Polar exercise2
Polar exercise2Polar exercise2
Polar exercise2
 
实验二New
实验二New实验二New
实验二New
 
Ppt 157-163
Ppt 157-163Ppt 157-163
Ppt 157-163
 
第七章 图[1]
第七章 图[1]第七章 图[1]
第七章 图[1]
 
2 2空間向量
2 2空間向量2 2空間向量
2 2空間向量
 
Ppt 167-173
Ppt 167-173Ppt 167-173
Ppt 167-173
 
Flow
FlowFlow
Flow
 
Polar example
Polar examplePolar example
Polar example
 
Isometric位图引擎技巧 史珉
Isometric位图引擎技巧 史珉Isometric位图引擎技巧 史珉
Isometric位图引擎技巧 史珉
 
矩陣 轉換
矩陣   轉換矩陣   轉換
矩陣 轉換
 
中國古籍善本書目分類表報告
中國古籍善本書目分類表報告中國古籍善本書目分類表報告
中國古籍善本書目分類表報告
 

Similar to Image Stitching Method

第2讲 课件
第2讲  课件第2讲  课件
第2讲 课件p26chan
 
一种基于拟合函数的图形识别算法
一种基于拟合函数的图形识别算法一种基于拟合函数的图形识别算法
一种基于拟合函数的图形识别算法
Lixun Peng
 
How to transfer the paper to the box ?
How to transfer the paper to the box ?How to transfer the paper to the box ?
How to transfer the paper to the box ?
Deloitte Consulting
 
201012 687
201012 687201012 687
201012 687axiuluo
 
Ch5 範例
Ch5 範例Ch5 範例
Ch5 範例
hungchiayang1
 
ncuma_pylab.pptx
ncuma_pylab.pptxncuma_pylab.pptx
ncuma_pylab.pptx
NCU MCL
 
MATLAB_曲面作图
MATLAB_曲面作图MATLAB_曲面作图
MATLAB_曲面作图byron zhao
 
基于HTML5的canvas实例分享
基于HTML5的canvas实例分享基于HTML5的canvas实例分享
基于HTML5的canvas实例分享
xizhilang6688
 
Pseudo Random Code
Pseudo Random CodePseudo Random Code
Pseudo Random Code
Pei-Che Chang
 
指考甲公式
指考甲公式指考甲公式
指考甲公式
zoayzoay
 
ncuma_數值積分法.pptx
ncuma_數值積分法.pptxncuma_數值積分法.pptx
ncuma_數值積分法.pptx
NCU MCL
 
Learning to Rank: An Introduction to LambdaMART
Learning to Rank: An Introduction to LambdaMARTLearning to Rank: An Introduction to LambdaMART
Learning to Rank: An Introduction to LambdaMART
Julian Qian
 
EOS_2015_Fall Team1 - 拉亞計畫
EOS_2015_Fall  Team1 - 拉亞計畫EOS_2015_Fall  Team1 - 拉亞計畫
EOS_2015_Fall Team1 - 拉亞計畫
nctusee
 
建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架
ZhenChen57
 
Ccd application
Ccd applicationCcd application
Ccd application
daniel wang
 
深度學習方法與實作
深度學習方法與實作深度學習方法與實作
深度學習方法與實作
Fuzhou University
 
Ihome inaction 篇外篇之fp介绍
Ihome inaction 篇外篇之fp介绍Ihome inaction 篇外篇之fp介绍
Ihome inaction 篇外篇之fp介绍
dennis zhuang
 
分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏
Shaoning Pan
 
第七章 图[3]
第七章 图[3]第七章 图[3]
第七章 图[3]
Wang Yizhe
 

Similar to Image Stitching Method (20)

第2讲 课件
第2讲  课件第2讲  课件
第2讲 课件
 
一种基于拟合函数的图形识别算法
一种基于拟合函数的图形识别算法一种基于拟合函数的图形识别算法
一种基于拟合函数的图形识别算法
 
How to transfer the paper to the box ?
How to transfer the paper to the box ?How to transfer the paper to the box ?
How to transfer the paper to the box ?
 
201012 687
201012 687201012 687
201012 687
 
Ch5 範例
Ch5 範例Ch5 範例
Ch5 範例
 
ncuma_pylab.pptx
ncuma_pylab.pptxncuma_pylab.pptx
ncuma_pylab.pptx
 
MATLAB_曲面作图
MATLAB_曲面作图MATLAB_曲面作图
MATLAB_曲面作图
 
基于HTML5的canvas实例分享
基于HTML5的canvas实例分享基于HTML5的canvas实例分享
基于HTML5的canvas实例分享
 
Pseudo Random Code
Pseudo Random CodePseudo Random Code
Pseudo Random Code
 
指考甲公式
指考甲公式指考甲公式
指考甲公式
 
ncuma_數值積分法.pptx
ncuma_數值積分法.pptxncuma_數值積分法.pptx
ncuma_數值積分法.pptx
 
Learning to Rank: An Introduction to LambdaMART
Learning to Rank: An Introduction to LambdaMARTLearning to Rank: An Introduction to LambdaMART
Learning to Rank: An Introduction to LambdaMART
 
EOS_2015_Fall Team1 - 拉亞計畫
EOS_2015_Fall  Team1 - 拉亞計畫EOS_2015_Fall  Team1 - 拉亞計畫
EOS_2015_Fall Team1 - 拉亞計畫
 
建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架建造与理解-用Python实现深度学习框架
建造与理解-用Python实现深度学习框架
 
Ccd application
Ccd applicationCcd application
Ccd application
 
深度學習方法與實作
深度學習方法與實作深度學習方法與實作
深度學習方法與實作
 
Ihome inaction 篇外篇之fp介绍
Ihome inaction 篇外篇之fp介绍Ihome inaction 篇外篇之fp介绍
Ihome inaction 篇外篇之fp介绍
 
直线和圆
直线和圆直线和圆
直线和圆
 
分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏分布式计算与Hadoop - 刘鹏
分布式计算与Hadoop - 刘鹏
 
第七章 图[3]
第七章 图[3]第七章 图[3]
第七章 图[3]
 

Image Stitching Method