FROM: http://blog.csdn.net/david__jiang/article/details/6707613

一、概念

立体匹配算法主要是通过建立一个能量代价函数,通过此能量代价函数最小化来估计像素点视差值。立体匹配算法的实质就是一个最优化求解问题,通过建立合理的能量函数,增加一些约束,采用最优化理论的方法进行方程求解,这也是所有的病态问题求解方法。

二、主要立体匹配算法分类

1)根据采用图像表示的基元不同,立体匹配算法分为:

A、区域立体匹配算法(可获取稠密视差图。缺点:受图像的仿射畸变和辐射畸变影响较大;像素点约束窗口的大小与形状选择比较困难,选择过大,在深度不连续处,视差图中会出现过度平滑现象;选择过小,对像素点的约束比较少,图像信息没有得到充分利用,容易产生误匹配。)

B、基于特征的立体匹配算法(可获得稀疏的视差图,经差值估计可获得稠密视差图。可提取点、线、面等局部特征,也可提取多边形和图像结构等全局特征。缺点:特征提取易受遮挡、光线、重复纹理等影响较大;差值估计计算量大)

C、基于相位立体匹配算法(假定在图像对应点中,其频率范围内,其局部相位是相等的,在频率范围内进行视差估计)

2)依据采用最优化理论方法的不同,立体匹配算法可以分为:

A、局部的立体匹配算法

B、全局的立体匹配算法

三、匹配基元(match primitive)

目前匹配算法中所采用的匹配基元可以分成两大类:

1)在所有图象像素点上抽取量测描述子

A、像素灰度值(最简单、直接,但必须在同一光照条件下获得)

B、局部区域灰度函数(主要是利用求得在各种大小不同窗口中灰度分布的导数信息,描述像素点周围的结构矢量。)

C、卷积图象符号(利用各种大小算子与图象进行卷积,用灰度梯度局部极大值或极小值作为特征信息,描述整个图像)

2)图像特征

A、过零点

B、边缘(由于边缘是图像特征位置的标志,对灰度值的变化不敏感,边缘是图像匹配的重要特征和描述子)

C、角点(虽然其没有明确的数学定义,但大家普遍认为角点,即二维图像亮度变化剧烈的点或边缘曲线上曲率极值点)

四、区域匹配算法

基本原理是给定在一幅图像上的某一点,选取该像素点邻域内的一个子窗口,在另一幅图像中的一个区域内,根据某种相似性判断依据,寻找与子窗口图像最为相似的子图,而其匹配的子图中对应的像素点就为该像素的匹配点。

一般单纯的区域匹配都遇到如下限制:

1)针对弱纹理或存在重复纹理的区域,匹配结果不好

2)该算法不适应于深度变化剧烈的场景

3)对光照、对比度和噪声比较敏感

4)子窗体的大小很难选择

五、特征匹配算法

特征的匹配算法,主要是基于几何特征信息(边缘、线、轮廓、兴趣点、角点和几何基元等),针对几何特征点进行视差估计,所以先要提取图像的特征点,尽
而利用这些特征点的视差值信息来重建三维空间场景。

匹配所需要的主要步骤:图像预处理、提取特征、特征点的匹配获取稀疏视差图,如果想得到稠密的视差图,需要采用插值的方法。

六、全局匹配算法

全局立体匹配算法主要是采用了全局的优化理论方法估计视差,建立全局能量函数,通过最小化全局能量函数得到最优视差值。

全局匹配算法得到的结果比较准确,但是其运行时间比较长,不适合实时运行。主要的算法有图割(graph cuts)、信念传播(belief propagation)、动态规划等算法。

七、局部匹配算法(个人觉得跟区域匹配类似,角度不同而已)

主要是采用局部优化方法进行视差值估计,局部立体匹配算法有 SAD,SSD 等算法,与全局立体匹配算法一样,也是通过能量最小化方法进行视差估计,但是,在能量函数中,只有数据项,而没有平滑项。

主要分为三类:自适应窗体立体匹配算法、自适应权值的立体匹配算法和多窗体立体匹配算法。

八、立体匹配约束

1)极线约束
2)唯一性约束

3)视差连续性约束

4)顺序一致性约束

5)相似性约束

九、相似性判断标准

1)像素点灰度差的平方和,即 SSD

2)像素点灰度差的绝对值和,即 SAD

3)归一化交叉相关,简称 NCC

4) 零均值交叉相关,即 ZNCC

5)Moravec 非归一化交叉相关,即 MNCC

6)Kolmogrov-Smrnov 距离,即 KSD

7)Jeffrey 散度

8)Rank 变换(是以窗口内灰度值小于中心像素灰度值的像素个数来代替中心像素的灰度值)

9)Census 变换(是根据窗口内中心像素灰度与其余像素灰度值的大小关系得一串位码,位码长度等于窗口内像素个数减一)

十、评价参数

立体匹配算法是一个病态问题,一般通过建立能量函数,利用最小化能量函数,和一些约束条件,采用最优化理论方法进行求解方程。

公认的定量评价参数有:均方根误差(Root-mean-squared)和误匹配率(percentage of bad matching pixels)

立体匹配十大概念综述相关推荐

  1. 立体匹配十大概念综述---立体匹配算法介绍

    from:https://blog.csdn.net/wintergeng/article/details/51049596 一.概念 立体匹配算法主要是通过建立一个能量代价函数,通过此能量代价函数最 ...

  2. 研究人脸识别的十大概念

    本文简要的介绍了一些主要的人脸技术的概念,目的是让非研究的同事,对各项技术能解决的问题有所了解. 1. 人脸检测 "人脸检测(Face Detection)"是检测出图像中人脸所在 ...

  3. 干货丨从概念到案例:初学者须知的十大机器学习算法

    本文先为初学者介绍了必知的十大机器学习(ML)算法,并且我们通过一些图解和实例生动地解释这些基本机器学习的概念.我们希望本文能为理解机器学习(ML)基本算法提供简单易读的入门概念. 机器学习模型 在& ...

  4. 从概念到案例:初学者须知的十大机器学习算法

    本文先为初学者介绍了必知的十大机器学习(ML)算法,并且我们通过一些图解和实例生动地解释这些基本机器学习的概念.我们希望本文能为理解机器学习基本算法提供简单易读的入门概念. 机器学习模型 在<哈 ...

  5. 【高项】十大管理部分:5*10*47 ITTO详表(含关键概念解释)

    [软考-信息系统项目管理师-第三版教材]十大管理部分:51047 ITTO详表(含输入输出及工具技术的关键概念解释)

  6. Elasticsearch(一)——Es安装(三个必安工具、安装各种类型分词器)、Es 十大核心概念、通过 Kibana 操作 Es(中文分词、Es各种索引命令操作)

    Elasticsearch(一)--Es安装(三个必安工具.安装各种类型分词器).Es 十大核心概念.通过 Kibana 操作 Es(中文分词.Es各种索引命令操作) 一.Elasticsearch ...

  7. “AI+”概念是什么?(附十大概念股)

          所谓AI即人工智能(Artificial Intelligence),英文缩写为AI.它是研究.开发用于模拟.延伸和扩展人的智能的理论.方法.技术及应用系统的一门新的技术科学. 而AI应用 ...

  8. 数据挖掘经典十大算法_对基本概念的理解

    数据挖掘经典十大算法 一.十大经典算法 二.信息量 信息量是对信息的度量,例如时间的度量是秒,我们考虑一个离散的随机变量x时,当我们观察到的这个变量的一个具体值的时候,我们接收到的多少信息 用信息量来 ...

  9. 年末回顾:2021年 AI 领域十大研究趋势及必读论文

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 编 | 小轶,Yimin_饭煲 在本文中,我们将梳理近百篇的最新深度学习论文,以总结出 ...

最新文章

  1. A Guide to Python's Magic Methods
  2. vsftp 添加虚拟帐号
  3. 间接寻址级别不同_详解西门子间接寻址之地址寄存器间接寻址
  4. 第七周linux内核分析
  5. 创建线程都有哪些方式?— Callable篇
  6. LeetCode 2104. 子数组范围和(单调栈)
  7. PXE自动化安装系统工具介绍与部署
  8. 新计算机主板不亮,电脑组装完毕之后点不亮怎么办 新电脑组装好开不了机的解决办法...
  9. 2021-2025年中国云计算数据中心IT资产处置(ITAD)行业市场供需与战略研究报告
  10. PyTorch学习—13.优化器optimizer的概念及常用优化器
  11. jqGrid复制表格数据到另外一张表中
  12. Go语言使用PostgreSQL数据库
  13. 跨境电商erp系统一套多少钱,电商erp系统多少钱一年
  14. 安装系统时,提示无法安装到这个磁盘,选中的磁盘具有MBR分区表,在EFI系统上,windows只能安装到GPT磁盘的问题
  15. php 图片折角处理,如何使用CSS3实现折角效果
  16. 【CozeTalk】关于“富人思维”
  17. Java实现短信验证码--(完整教程)
  18. RAID不同模式之间的区别
  19. 微库为8亿会员的微信“偷偷”干了什么?
  20. 进制转换与位运算的运用

热门文章

  1. iptables的地址取反操作
  2. python github登陆_用Python模拟登陆GitHub并获取信息
  3. Infortrend的EonStor DS与GS强势进军银行领域
  4. 写给初学大数据的你,从零开始学习大数据开发的完整学习路线
  5. HTML5 通过 FileReader 实现文件上传
  6. This text field does not specify an inputType or a hint
  7. crontab命令使用文档.txt
  8. 自动识别文字的编码以及读取所有文本——VB2005
  9. RocketMQ架构模块解析
  10. VMware 下扩展linux硬盘空间