用户故事

麻省理工学院CSAIL研究人员开发了视频处理算法来放大微小的移动和颜色变化

挑战

分析视频,以检测和放大不可察觉的运动和变化的颜色

解决方案

用Matlab来发展和完善空间分解和时间滤波算法,并行计算工具箱,以加速其执行和MATLAB编译器将其打包作为独立软件

结果

  • 与其他研究人员合作提高
  • 多个实验并行进行
  • 与其他编程语言集成启用

“对于我们集团,MATLAB的主要优点包括可以快速原型我们的算法的能力,调试他们用伟大的可视化工具,然后轻松地与他人分享在视觉研究社区的代码。”

迈克尔·鲁宾斯坦,麻省理工学院计算机科学和人工智能实验室

利用欧拉视频放大技术实现人体脉冲的可视化。


麻省理工学院计算机科学和人工智能实验室(CSAIL)的研究人员已经开发出视频放大的算法,使觉察不到的变化,如运动和色彩变化肉眼可见。该小组最初开发通过检测皮肤颜色由每个脉冲的细微变化来测量从一个视频流的心跳的技术。他们随后将它用于许多其他应用,包括研究振动的物体的视频重建环境声音或估计对象的材料特性。

CSAIL团队使用了MATLAB®开发、改进和部署它们视频放大算法

“像许多研究团队和大学,我们看重的是能力,快速测试的想法,”迈克尔·鲁宾斯坦,CSAIL附属研究机构说。“有了MATLAB我可以很快写一个原型算法,看看它是否工作。然后我可以与学生和合作者进一步建立共享和完善的原型“。

挑战

摄像机不是用来检测分钟颜色变化或振动,其中许多出现在视频记录在强度极小变化的最佳的传感器。为了检测这些微妙的信号,球队需要执行该会集结单个像素尺寸空间滤波算法。他们还需要时间滤波算法来分析这些聚集如何随时间变化。

在开发出初始算法后,团队需要通过使用多个计算核心来处理多帧或并行测试算法的多个配置来加速它们的执行。此外,研究人员希望与其他视觉研究人员分享他们的代码,并使任何人都能使用他们的方法处理视频。

解决方案

CSAIL的研究人员开发了视频放大算法的MATLAB,并行计算工具箱™加速他们,并与MATLAB编译器™部署它们。

在MATLAB与图像处理工具箱工作™,该球队实施了分析每个像素周围的区域中的几个秤在帧中的该点,以产生颜色的精确测量的初始空间分解算法。为了提高精度,他们后来更新该算法使用在变化(空间)相位图像的子带,从本地小波计算施加到框架,而不是直接使用的颜色。

空间分解算法的部分是基于在另一所大学的研究人员编写的代码。该小组将这一代码,这既包括MATLAB和MEX功能,到他们的MATLAB实现。

用于时间滤波算法,小组使用MATLAB和DSP系统工具箱™到傅立叶变换以及巴特沃斯和其它带通滤波器应用于通过空间分解所产生的信号。这种过滤使算法着眼于运动或颜色变化的特定频率范围中的研究人员想放大或分析噪声降低。

在算法开发过程中,团队在MATLAB中生成图形来可视化信号。

使用并行计算工具箱,该团队通过在24核计算机上同时处理多帧来加快算法的执行。他们还并行进行了多个实验,以快速测试和调整算法参数。

在与其他研究人员分享了他们的结果和MATLAB代码后,CSAIL研究人员使用MATLAB编译器为Windows创建了独立版本的算法®, Linux®,以及Mac OS X操作系统。任何人都可以使用这些版本,即使他们没有安装MATLAB。

结果

  • 与其他研究人员的合作得到了改善。“计算机视觉社区的许多研究人员使用MATLAB,”鲁宾斯坦说。MATLAB代码通常比c++代码更容易阅读,因此学生或其他受项目启发的研究人员可以下载代码并理解它。对我们来说,编译任何人都可以使用的可执行文件很简单。”
  • 多个实验并行进行。“我们研究的一个重要组成部分正试图和测试应用不同的想法和算法,它更好地工作,指出:”鲁宾斯坦。“并行计算工具箱给了我们一个非常简单的,易于接受的方式只是通过改变一个循环的parforloop并行运行或处理多个帧的多个实验并行频繁。”
  • 支持与其他编程语言集成。“我们使用许多MATLAB函数提供了我们的需要足够的性能,”鲁宾斯坦说。“如果我们需要加快算法的特定部分,MATLAB给我们的灵活性,它写在C ++和它作为一个MEX功能,它可以从MATLAB代码可以方便地调用。”

麻省理工学院是世界上提供MATLAB和Simulink校园访问的1300所大学之一。金宝app通过校园范围许可,研究人员、教师和学生可以访问最新版本的产品的公共配置,以便在教室、家中、实验室或实地使用。下载188bet金宝搏