热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

计算机双目视觉视觉角匹配算法

1背景HaaS智能门禁等应用场景需要用到双目视觉,让门禁系统可以拒绝打印图片,手机屏幕,面具,3D头套等非活体攻击。这里

 

1 背景

HaaS智能门禁等应用场景需要用到双目视觉,让门禁系统可以拒绝打印图片,手机屏幕,面具,3D头套等非活体攻击。

这里先从计算机双目视觉的设计出发,看看出现过的不同的变种,以及用来解决的问题。

1.1 对称双目视觉

计算机的双目视觉一开始的设计就是对称双目视觉,模拟自然界中生物的双目视觉来得到只有双目才能实现的立体视觉能力,比如获取目标的深度信息。

自然界中草食动物一般是两只眼睛长在脸两边,两只眼睛的视野几乎能覆盖360°,为了能够看到四面八方的捕猎者。模拟草食动物的视野的就是全景相机。

肉食动物的眼睛一般是长在脸的前面,为了能够确定猎物空间位置用于捕猎。模拟肉食动物的视野的就是3D相机。

1.2 非对称双目视觉

随后计算机的双目视觉派生出了非对称双目视觉的设计,包括广角+长焦,彩色+黑白,彩色+红外等等。

广角+长焦相机是现今手机上很常见的组合,通过裁切来实现模拟变焦。

彩色+黑白相机是华为手机曾经使用过的设计,用高像素的黑白相机提供亮度信息,低像素的彩色相机提供颜色信息,理论上由于人眼对亮度敏感度大于颜色敏感度,这样可以在有限的成本下实现比较好的画质。

彩色+红外相机则是在普通相机的基础上增加了夜视和活体检测的功能。由于人体无时无刻不在向外散发红外线,所以红外相机可以不利来光线检测到人体,以及通过红外线来判断彩色摄像头拍摄到的图像是来自一个真人,还是一张图片,或者手机屏幕。

2 用来解决什么问题

双目计算机视觉拟合算法是用来解决什么问题的。

在各种不同的双目视觉场景下,都希望知道两个摄像头的视场角的空间关系,来进行双目视觉的计算。

比如,在彩色摄像头的一个区域发现了一张人脸,那么要知道这个人脸所在的区域,对应到红外摄像头上,是那一块区域,我们才能去进行活体计算。

也就是说,需要可靠的双目视觉视场角匹配算法,产品才能最终落地。

2.1 理想情况下,两个摄像头的空间关系

红色和蓝色的方锥分别是左右两个摄像头的取景范围

 

那么在这样的情况下,在某景深下,同一个物件在两个摄像头中的成像就是这样的映射关系:

(即使在理想情况下,同一个物件不同景深下的两个摄像头的映射关系也不一样)

 

2.2 考虑到生产工艺的问题

由于生产工艺所限,两个摄像头在间距,垂直高度,上下角度,左右角度上都会出现一些偏差,并且每台设备的偏差都不一样。

(为了表现偏差的影响,下图中画的比较夸张)

 

那么在考虑到生产工艺之后,在某景深下,同一个物件在两个摄像头中的成像就是这样的映射关系:

 

2.3 进一步考虑到摄像头的光学畸变

在单个摄像头的成像上大概是这个样子:

 

光学畸变分为径向畸变和切向畸变,如果想要用数学方法来拟合极其困难。

本文就不加以展开,参考论坛上其他文章。

在上图的空间关系的基础上,考虑到两个摄像头不同的区域的光学畸变的影响也不同,建立空间映射关系就变的非常复杂。

3 如何解决问题

3.1 建立固定距离的纠偏的模型

由于光学畸变导致空间数学建模变的非常复杂,而实际应用场景往往对一定距离范围内(比如0.5米-1.5米)的摄像头的视场角中心(中心25%)区域比较关心,可以采用多项式拟合的方式来建立在某个特定的距离下从摄像头A到摄像头B的映射关系,这样能保证中心区域相当精准,而边缘区域的误差也在可以接受的范围内。

在足够的采样点的情况下,更高次的多项式能够更精准的拟合结果。但是实际我们采用了3次多项式,因为在不使用高精度数学库的情况float型的精度也就只能保证3次多项式的结果足够精准了。

比如3次多项式拟合摄像头A当中点(Xa, Ya)到摄像头B当中点(Xb, Yb)的函数如下:

Xb = Xa^3 * P3 + Xa^2 * P2 + Xa * P1 + P0

Yb = Ya^3 * Q3 + Ya^2 * Q2 + Ya * Q1 + Q0

而其中P3~P0,Q3~Q0就是拟合过程中需要计算出的参数。

3.2 计算出固定距离的拟合参数

将一张棋盘格图纸放在两个摄像头都能完整拍摄到的地方,且尽量铺满图像。

如下图左边为红外摄像头的图像,右边为彩色摄像头的图像。

 

然后找到两边棋盘格的17*31个内顶点(opencv有现成的函数findChessboardCorners()),这样就找到了摄像头A的527个位置点以及他们分别映射到摄像头B的位置点。

然后通过最小二乘法或者其他多项式拟合算法分别对X轴和Y轴计算,算出P3~P0,Q3~Q0这8个拟合参数。

本文就不加以展开,参考论坛其他文章。

3.3 应用固定距离的拟合参数

对摄像头A的图像的每个位置点,应用拟合函数,生成在摄像头B的图像中的对应位置点。

下图是在摄像头B的图像基础上画上了计算结果来验证拟合参数。

红圈是摄像头A的图像中的某个位置点

蓝圈是根据摄像头A的图像中的该位置点拟合出来的摄像头B中的对应位置点的估算位置

红圈和蓝圈用红线相连

绿圈是摄像头B中的对应位置点的实际位置

结果可见,在固定距离下,拟合的效果还是相当精确,差异都是像素级别。对于人脸识别等场景做人脸匹配,已经完全足够了。

3.4 完善非标准距离的拟合精度

多项式拟合是在固定距离拟合的,那么一旦目标离开估计距离较远就会产生比较大的偏差。

如果想要降低距离产生的误差,可以在多个距离标定多套参数,然后根据距离插值。

比如当前目标距离是0.75米,那么把0.5m的拟合参数算出来的结果和1.0m的拟合参数算出来的结果取平均值即可。

但这由引出了一个问题,如何知道双目系统中某个目标的距离,方法一般有:

激光测距等硬件,非常精准,但是需要额外的硬件成本

根据标的物在两个摄像头视场角的相对位置估算距离,这个方案精确度一半,且对算力要求比较高

对于人脸识别等特殊场景,只要是成年人,不论男女胖瘦,人的五官所占区域都差不多大小(胖人的脸大但五官并不大),可以使用五官的尺寸来估算人脸的距离,这个方案精确度较低,且识别目标仅限成年人,但几乎没有额外成本。

4 总结

工程学的一种思想就是,没有最好的方案,只有最合适的方案。在开发成本,运行成本,维护成本,偏差范围这几个因素之前,达到一个局部最优解。


推荐阅读
  • 魅族Flyme 7正式发布:全面解析与亮点介绍
    在22日晚的发布会上,魅族不仅推出了m15、15和15 Plus三款新机型,还正式发布了全新的Flyme 7系统。Flyme 7在保持流畅体验的基础上,进一步增强了功能性和实用性,为用户带来更加丰富的使用体验。首批适配包已准备就绪,将逐步推送给现有设备。 ... [详细]
  • 对于众多创业公司而言,选择小程序或小视频的发展方向至关重要。本文将深入分析小程序和小视频的特点、优势及局限,帮助创业者做出更明智的选择。 ... [详细]
  • 本文详细探讨了OpenCV中人脸检测算法的实现原理与代码结构。通过分析核心函数和关键步骤,揭示了OpenCV如何高效地进行人脸检测。文章不仅提供了代码示例,还深入解释了算法背后的数学模型和优化技巧,为开发者提供了全面的理解和实用的参考。 ... [详细]
  • 近期,为编制《2018中国人工智能应用与生态研究报告》,中国软件网对国内人工智能产业的应用现状、平台建设和生态系统进行了深入调研。本报告详细分析了当前人工智能企业的发展阶段,并对其未来前景进行了全面评估。研究发现,人工智能技术在多个领域取得了显著进展,但同时也面临诸多挑战,如数据安全、技术成熟度和人才短缺等。报告还探讨了政策支持、行业合作和技术突破对推动人工智能产业发展的关键作用。 ... [详细]
  • 本文通过思维导图的形式,深入解析了大型网站技术架构的核心原理与实际案例。首先,探讨了大型网站架构的演化过程,从单体应用到分布式系统的转变,以及各阶段的关键技术和挑战。接着,详细分析了常见的大型网站架构模式,包括负载均衡、缓存机制、数据库设计等,并结合具体案例进行说明。这些内容不仅有助于理解大型网站的技术实现,还能为实际项目提供宝贵的参考。 ... [详细]
  • Android平台下的人脸识别应用:FaceU的深度解析与技术探讨
    FaceU是一款由今日头条脸萌团队开发的拍照相机应用,支持iOS和Android平台。自2014年底启动开发以来,FaceU通过其创新的人脸识别技术和丰富的滤镜效果,在2015年9月迅速获得了用户的广泛认可。本文将深入解析FaceU的技术架构和实现方法,探讨其在Android平台下的应用前景和优化策略。 ... [详细]
  • 独家解析:深度学习泛化理论的破解之道与应用前景
    本文深入探讨了深度学习泛化理论的关键问题,通过分析现有研究和实践经验,揭示了泛化性能背后的核心机制。文章详细解析了泛化能力的影响因素,并提出了改进模型泛化性能的有效策略。此外,还展望了这些理论在实际应用中的广阔前景,为未来的研究和开发提供了宝贵的参考。 ... [详细]
  • 浅析卷积码的应用及其优势:探讨卷积编码在通信系统中的关键作用与特性
    本文详细介绍了卷积编码的基本原理,并深入分析了其在通信系统中的应用及其显著优势。卷积编码通过在编码过程中引入冗余信息,有效提高了数据传输的可靠性和抗干扰能力,成为现代通信系统中不可或缺的关键技术。文章还探讨了卷积编码在不同场景下的具体实现方法及其性能特点。 ... [详细]
  • 在2019年寒假强化训练中,我们深入探讨了二分算法的理论与实践应用。问题A聚焦于使用递归方法实现二分查找。具体而言,给定一个已按升序排列且无重复元素的数组,用户需从键盘输入一个数值X,通过二分查找法判断该数值是否存在于数组中。输入的第一行为一个正整数,表示数组的长度。这一训练不仅强化了对递归算法的理解,还提升了实际编程能力。 ... [详细]
  • Cosmos生态系统为何迅速崛起,波卡作为跨链巨头应如何应对挑战?
    Cosmos生态系统为何迅速崛起,波卡作为跨链巨头应如何应对挑战? ... [详细]
  • 业务团队与独立团队在数据分析领域的效能对比:谁更胜一筹?
    业务团队与独立团队在数据分析领域的效能对比:谁更胜一筹? ... [详细]
  • 2012年9月12日优酷土豆校园招聘笔试题目解析与备考指南
    2012年9月12日,优酷土豆校园招聘笔试题目解析与备考指南。在选择题部分,有一道题目涉及中国人的血型分布情况,具体为A型30%、B型20%、O型40%、AB型10%。若需确保在随机选取的样本中,至少有一人为B型血的概率不低于90%,则需要选取的最少人数是多少?该问题不仅考察了概率统计的基本知识,还要求考生具备一定的逻辑推理能力。 ... [详细]
  • 腾讯优图技术突破,人脸识别准确率跃升至99.80%新高
    近日,腾讯优图实验室在国际知名的人脸识别基准测试LFW中取得重大突破,其在无约束条件下的人脸验证测试中,准确率达到了前所未有的99.80%。这一成就标志着人脸识别技术在复杂环境下的应用迈上了新台阶,为未来的智能安防、身份认证等领域提供了强有力的技术支持。 ... [详细]
  • 面部识别技术面临关键转折点:伦理与应用的平衡挑战
    面部识别技术正面临一个关键的转折点,其伦理与应用之间的平衡问题日益凸显。近日,该技术再次遭遇重大事件。本周二,由90个倡议组织组成的联盟发布了一份联合声明,呼吁全球范围内暂停使用面部识别技术,直到制定出明确的监管框架。这一举措反映了社会各界对隐私保护和技术滥用的担忧,同时也引发了关于如何在保障公共安全和维护个人隐私之间找到合理平衡的广泛讨论。 ... [详细]
  • 本文探讨了一种创新的RGBD多模态融合技术在人脸识别中的应用,该方法通过深度学习算法有效整合了不同模态数据的共有及独特特征,显著增强了系统的识别精度与鲁棒性。此技术特别适用于需要高安全性和准确性的多模态交互场景,如智能监控和身份验证系统。 ... [详细]
author-avatar
qaz2502919927
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有