这台相机没镜头!美国教授新发明,一块玻璃可成像,拍照给计算机看

简介:

在我们印象里,相机总是逃不开这玩意:

0cf09a7aeb62478805263b02ec48486239c27232

凸透镜成像原理。

从傻瓜照相机到手机摄像头,都拥有一个凸透镜作为镜头。

但是有人偏偏觉得,不需要镜头也能造出相机。

他还真造出来了。犹他大学副教授Rajesh Menon研发了一种新型相机,没有镜头,只要一块玻璃(非凸透镜)就可以实现。

区别是,别人用的是穿过玻璃凸透镜的折射光线,Menon用的则是在没能从玻璃里出来的反射光线。

“非人”的相机

Menon的灵感来自于计算机视觉技术的发展。他发现,许多照片和视频都不是拍来给人看的,而是直接交给各种工业生产中的传感器来“查看”。

也就是说,虽然人类更喜欢看高分辨率的清晰照片,但如果一张照片是给计算机看的,那么这张照片就不需要高分辨率和图像保真度,哪怕只是一张简单、模糊的照片,也足够计算机提取出它需要的信息。

想想就非常省存储空间。

因此,Menon觉得,可以根据机器“看图”的需求,来生产一种专门给机器做的相机。

新相机原理:折射

当光线进入玻璃的时候,大部分光都穿过两层玻璃和空气的分界,使人能看到玻璃后面的景象。

而一小部分光线则在进入玻璃后,开始在玻璃的两侧反射。Menon就用到了这些反射的光线。

7ac050c58483e9f64542abae6f360f26a26d2873

反射的光线终将反射到玻璃的边缘。于是,Menon将一个CMOS传感器(640×480像素,提供8位分辨率)连接到有机玻璃板的边缘,使它们平滑接触,然后连接到成像设备上,之后在有机玻璃板周边的其余部分放置反光带。

CMOS传感器压在玻璃边缘可以检测到进入玻璃的光在多次反射后的信号,之后对这些探测到的光信号进行处理,就可以实现成像,玻璃也就随之成了类似相机镜头的存在。

a297023f4831f34d964fd71d278790fadd2ed4d7

在实验中,Menon准备了一个32×32的LED板,一共有1024个LED发光二极管。

之后,一个个分别点亮1024个二极管,记下此时CMOS传感器得到的信号。

之后,LED板上的1024个“像素”无论呈现怎样的图形,CMOS传感器都可以监测到它们发出的信号,并且推算出LED板上的原始图形。

a78b28777e764f3a6985676fb2617fbd17792bb4

上图是这个相机的效果。左侧是LED板上的原始图像,中间是CMOS传感器信号得出的点扩散函数,右边就是效果图啦。

用途:VR/AR眼动仪&家庭安全相机

目前,Menon的团队正在开发一种机器学习算法来研究更复杂的图像,不限于LED板上的图像,还可能有手写数字的拍摄识别。

不过,这种神奇的相机究竟可以拿来做什么呢?

Menon预计这项技术的首批应用可能是VR/AR眼镜。因为在VR/AR设备中,生成和显示图像就已经需要巨大的硬件设备了,如果需要实现眼动追踪的话,加一台眼动追踪相机可能太麻烦了,所以这款相对轻量级的相机可以提供足够的信息来跟踪用户的眼球运动。

另外,Menon认为未来这项技术也可以用在家庭安全相机上。如果在家中装一个摄像头,可能太过明显,引起窃贼注意。所以,不妨在房间的窗户上安装这套设备,可以实现神不知鬼不觉的了解家中一切动向。

论文传送门

Computational imaging enables a “see-through” lens-less camera
Ganghun Kim and Rajesh Menon
https://www.osapublishing.org/oe/abstract.cfm?uri=oe-26-18-22826


原文发布时间为:2018-08-30

本文作者:关注前沿科技

本文来自云栖社区合作伙伴“量子位”,了解相关信息可以关注“量子位”。

相关文章
|
监控 Serverless 测试技术
Serverless 应用引擎常见问题之生成的图片的oss地址配成自定义的域名如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
210 0
|
安全 Linux 网络安全
Kali渗透测试:使用browser_autopwn2模块进行渗透攻击
Kali渗透测试:使用browser_autopwn2模块进行渗透攻击
234 0
|
前端开发 JavaScript 开发者
Angular状态管理神器ngrx Store:从零开始的实践指南与进阶优化秘籍,让你的前端应用状态井井有条、高效运行的绝招大揭秘
【8月更文挑战第31天】状态管理在现代Web应用开发中至关重要,特别是在构建大型、复杂的Angular应用时。ngrx Store借鉴Redux的设计理念,提供集中式状态管理和可预测的数据流,有助于增强应用的可维护性和可测试性。
490 0
构建 CRM 企业核心竞争力:多维度组织支撑策略
在当今商业环境中,CRM行业面临机遇与挑战。企业需建立多维度支撑体系,涵盖销售绩效、目标管理、产品价格及线索客户资源分配等方面。通过量化评估销售绩效、制定明确目标、优化产品价格策略、合理分配客户资源,结合CRM系统跟踪管理,企业能在激烈竞争中脱颖而出,实现客户关系深度管理和业务持续增长。
|
传感器 开发者
【STM32基础 CubeMX】外部中断
【STM32基础 CubeMX】外部中断
614 44
|
算法 IDE 编译器
调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配
调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配
|
前端开发 JavaScript
移动端webApp自适应布局解决方案
移动端webApp自适应布局解决方案
159 0
|
Java 测试技术 数据库连接
python接口自动化(二十一)--unittest简介(详解)
前边的随笔主要介绍的requests模块的有关知识个内容,接下来看一下python的单元测试框架unittest。熟悉 或者了解java 的小伙伴应该都清楚常见的单元测试框架 Junit 和 TestNG,这个招聘的需求上也是经常见到的。
331 1
python接口自动化(二十一)--unittest简介(详解)