非视线成像 - 把墙角变为相机

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

be21b093acc03374274b4ce9bb06e49c.png

我已经为你介绍了基于飞秒摄影、基于WIFI、以及基于角膜成像的非视线成像技术。这些技术都有一个淳朴的初衷,希望能够在视线成像无法触达的时候,能够观察到隐藏的场景,从而可以帮助行车安全、反恐防暴、消防救灾等等。

d833065f369b9eeea9343e22b1a59af3.png

然而,不管是飞秒摄影,还是WIFI,都需要有专门的设备来发射信号,这些设备要么在特定场景容易收到干扰,要么就是特别昂贵。而角膜成像也仅仅在特殊情况下有用。那么,有没有一种可能,能够完全不用主动发射任何信号,通过被动观察可见场景,就能推断出隐藏场景的情况呢?

今天我就来介绍一种仅仅通过摄像机观察到的微弱图像变化,就能推断出隐藏场景中有没有人,有几个人,这些人大概有多远的技术——这就是所谓的“墙角相机”

【本文同步发表在我的微信公众号和知乎专栏“计算摄影学”,欢迎扫码关注,转载请注明作者和来源】

我们照例,先来看看美女视频,有请模特Sunny妹出场:

这个技术来自MIT,论文如下:

9cdbfe84044464fe79867c0814c1081b.png

这里的领衔作者Katherine也是个大美女:

也许你现在还不知道她是谁,但如果告诉你,正是她带领的团队拍摄了第一张“黑洞”的照片,你就一定会哇哦了!

bf75dd3af64a84eb385f0c12f5d09240.png
第1张黑洞照片

好了,不谈美女了(Doge),我们来看看墙角相机技术背后的原理吧:

一. 基本原理

1.1 墙角相机的四大组成部分

让我们先来看看墙角相机有哪些组成部分。下图是整个墙角相机的示意图,我们看到了几个重要的组成部分:

  • 相机

  • 有倒角的墙面

  • 相机能观察到的区域(对我们来说最重要的是红色扇形区域)

  • 被墙挡住的隐藏场景

我们的目的就是要通过分析相机观察到的红色区域的信息,得出关于隐藏场景的重要信息,例如隐藏场景有没有人,有几个人,距离拐角有多远,等等。我想你已经通过文章一开始的视频展示中看到了墙角相机的威力。

15962d6ed1716439f57d472b10f63b8a.png

作者在视频中展示了一个墙角相机系统,这里一个单反对着前方的地面

948ad0b65a82ccfe3eab1e8365aa53fb.png a75f7536be1d45bc52b520459cb75d13.png

拐角另外一边是一个走廊,有光线从走廊外照射进来。我们可以观察到地面上的光线有轻微的渐变现象,这是因为墙角挡住了另外一个方向的光,但地面又是漫反射表面导致的。

8c0056601e86743a83f3d80c18b03671.png

当有人在被遮挡住的走廊上走动时,地面的光影会发生轻微的改变,作者就是想通过这种改变来对隐藏区域加以分析。

2f3ce42b8421708a11fdd8277fe126d8.png

1.2 观测区域与光线的微小变化引起的图像变化

接着我们看看下面这个示意图,假设你站在下图中的p点四处张望,你将可以看到下图中浅棕色的部分,但无法直接观察到灰色的部分。此时射线op与墙面的夹角为theta度

11c7d52a594a2c4c06c80bc034eb373c.png

如果你沿着p点所在的圆弧继续行走到达p1点,你将可以观察到更多的区域,如下图所示:

340ddcaf1e4e4cfaaea3d4791b017ad7.png

这说明什么呢?说明p点、p1点其实接受到了来自于被墙面遮挡住的一部分区域的信息!如果我们用一个相机观察p点和p1点的地面,是可以收获到一点点墙后的信息的。进一步讲,如果能够整合下图中红色扇形区域的地面反射信息,就能够获得被墙挡住的区域的信息——这真是个精妙的想法!

e03163bafeadcff89069be706f6dd732.png

作者们的论文题图中也展示了这个思想,其中(a)图展示摄像头观察地面。在(b)图中,假设有一个第三方观察者沿着一个圆弧绕着墙角移动,就能随着移动观察到墙后面不同范围的场景。而(c)图则是摄像头观察到的扇形区域。当墙后面有人在运动时,对光线造成了遮挡,导致摄像头看到的画面会出现肉眼难以察觉的微小变化(图c),图(d)通过对图像内容增强展示了这种变化,而图e则是通过本文的方法重建出来的1D信号——它说明墙后有两个人在走动,且她们不断在改变相对墙面的角度。

a0a51dd9b3a87e956942740a89bfe2ea.png

我们可以通过下面的视频加深认知:

8feff119aafc507626f55e730beb3325.png

3bb167b67afdd44e0a7d93029b8b86f4.png

5d64e056ca533ee5dbdafa89f48a14f6.png

c6bc63422c938a5fa4c2766849df12fc.png

0ed9d7dbe5a5e3f12f919d2560da8ee1.png

1.3 表达与求解隐藏区域信息

首先来看看作者论文中的定义:

cfa7681fc3b53369e26ab5b802cce5bb.png

6fdab1a5cf146caf5ea530728c6d29a2.png

062a5f86ffc53ead13339ff2d9b1abf1.png

b0709e407960419fc03b1e94aced5ae8.png

bef4c11cc2bff8e9e33b93d391753ac9.png

1.4 作者的更多示例展示:

诚如你看到的,我们得到的x的各个元素描述了被墙遮挡的区域每个不同的角度的信号,这也是你从视频一开始看到的曲线图中能得到的信息。我们可以看看作者更多示例:

比较有趣的是,通过上述视频你可以看到,当只有1个人在隐藏区域走动时,我们看到了单条曲线。而如果有两个人走动时,我们会看到两条交织在一起的曲线。这里曲线纵向是时间轴,而横向则表示被人挡住的光线的入射角度。曲线的波形和视频中两位姑娘的走动方式也是吻合的。

c3d002749b4c92fe9daf56a70ab14d07.png

在视频中,你可以看到不管是室内,还是室外,还是不同的天气情况下,作者得到的结果都挺不错的。不管我自己复现过程中发现,光照、地面材质、选取的拍摄设备、超参数的设置等的影响还是挺大的。像我开头展示的视频,就是反复选择了好几处拍摄地点后才挑选出来的。

二. 扩展:立体墙角相机

比较有趣的是,作者说一对墙角相机还能组合到一起,形成立体墙角相机

611450871db7b9ba8f1b10acde96cab0.png

这里不同的地面阴影区域反映了不同的隐藏区域的信息。

6417c0e553a4b934e9420ddf134abbc6.png

如果将这些信息组合起来,就可以获取到隐藏区域人物的位置了

cfd2bc7b33d5f7f93697b4dc1e5d2728.png

通过下面这个视频,你可以理解的更深入:

三. 总结

今天我为你介绍了一种非常有趣的非视线成像方案:墙角相机。这种方法不仅仅有趣,更关键是它是完全被动式的,不需要像WIFI、TOF这样的额外信号源,这就使得它在某些情况下非常有用。我没有去查询当前这个技术的进一步研究和应用,但我非常认可作者的观点:这个技术为汽车行人安全、搜救和公共安全开辟了潜在的应用领域。

虽然理论比较复杂,但实际计算过程却比较简单。作者还开源了自己的实现,你可以下载后自己测试自己拍摄的墙角视频,正如我所做的一样。再次感谢Katherine和她的研究团队!

再次感谢模特Sunny出镜!

四. 参考资料

  1. CMU 2017 Fall Computational Photography Course 15-463, Lecture 26

  2. 墙角相机项目官网:people.csail.mit.edu/kl 我引用了其中的:

    1. 论文

    2. 论文插图

    3. 使用其中代码验证了自己拍摄的视频

  3. 前面的几篇NLOS文章:基于飞秒摄影、基于WIFI、以及基于角膜成像的非视线成像技术

  4. Katherine L. Bouman的照片来自于:actitudfem.com/tecnolog

本文仅做学术分享,如有侵权,请联系删文。

3D视觉精品课程推荐:

1.面向自动驾驶领域的多传感器数据融合技术

2.面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)
3.彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进
4.国内首个面向工业级实战的点云处理课程
5.激光-视觉-IMU-GPS融合SLAM算法梳理和代码讲解
6.彻底搞懂视觉-惯性SLAM:基于VINS-Fusion正式开课啦
7.彻底搞懂基于LOAM框架的3D激光SLAM: 源码剖析到算法优化
8.彻底剖析室内、室外激光SLAM关键算法原理、代码和实战(cartographer+LOAM +LIO-SAM)

9.从零搭建一套结构光3D重建系统[理论+源码+实践]

10.单目深度估计方法:算法梳理与代码实现

11.自动驾驶中的深度学习模型部署实战

12.相机模型与标定(单目+双目+鱼眼)

13.重磅!四旋翼飞行器:算法与实战

14.ROS2从入门到精通:理论与实战

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

3276096b4d05e5d51d14d2bba2cedb9f.png

▲长按加微信群或投稿

923748a4cb1ba56f1258ac39c34b6a19.png

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

5986cd898fa23291aa8fd44715817fbd.png

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值