光场相机频域重聚焦原理
之前有和大家聊过光场相机的空域重聚焦原理,而我们知道对于信号处理而言,频域处理也是很常见的。对于光场重聚焦如何在频域进行表征呢?
Ng最早提出了频率域重对焦图像算法,算法核心是围绕傅里叶切片定理进行展开。我们知道傅里叶切片定理最重要的作用就是降维,对于四维光场数据为了方便对多维数据处理,首先需要将二维傅里叶切片定理延展至多维,然后降维至四维进行四维光场数据处理,就可以实现在频率域对光场重聚焦图像的处理。
由二维傅里叶切片定理可知:物体f(x,y)在角度θ下的平行投影的傅里叶变换,等于在同一角度下进行f(x,y)二维傅里叶变换的一条直线。假设f(x,y)平行于y轴可以得到一次投影,表示为:h(x,0)
其中
对上式进行傅里叶变换可得:
如果原函数f(x,y)进行傅里叶变换,当V=0时,可得
由上述推导可以知道傅里叶切片定理表明二维函数在一维方向上积分投影的傅里叶变换等于该二维函数傅里叶变换的一维切片。
将傅里叶切片定理推广至N维空间:设f是N维函数,对f进行坐标变换后将其积分投影至M维进行傅里叶变换,那么这个变换等于对函数求傅里叶变换,然后进行坐标逆变换,最后取该变换的M维切片,用算子简化表示如下:
其中
表示N维到M维的积分投影过程
表示将N维函数降维到M维过程
表示对N维函数进行傅里叶变换
之前我们知道重聚焦空域表达式为:
结合上述两式进行变换后可以得到:
其中Bα表示坐标变换矩阵:由重聚焦的空域变换可以知道变换前后(u,v,s,t)=Bα(u,v,s',t')
由上面的推导我们得到傅里叶切片成像定理:传统图像是光场的四维傅里叶变换的二维切片的逆二维傅里叶变换。
光场相机频域重聚焦原理相关推荐
- matlab光场成像,光场相机重聚焦原理③——Matlab光场工具包使用重聚焦及多视角效...
光场相机重聚焦原理③--Matlab光场工具包使用重聚焦及多视角效 光场相机重聚焦原理③--Matlab光场工具包使用.重聚焦及多视角效果展示 目录 1.从相机里导出白图像(White Images) ...
- code epi 光场_光场相机视觉测量误差分析
0 引言 光场相机[作为一种新型相机,将计算和成像相结合,在它的主透镜和传感器之间放置微透镜阵列,相对于传统相机可以通过单次曝光就能同时获取光辐射的空间信息和角度信息.光场相机具有重聚焦.多视角等特点 ...
- lytro 光场相机 重聚焦
本人刚开始接触机器视觉领域就是学习解压lytro光场相机,lytro光场相机是有ng博士创立的lytro公司制造的.根据ng的论文描述,光场重聚焦主要通过空域和频域傅里叶变换来实现.而且ng认为频域的 ...
- 光场相机重聚焦原理②——Lytro Illum记录光场
目录 1.光场相机内部如何记录光线的方向? 2.Lytro illum中光场如何参数化表示? 3.Lytro illum如何实现重聚焦? 上一节中大概讲述了光场相机和光场的参数化表示,这一节就说一下光 ...
- 光场成像2.0——聚焦型光场相机
光场2.0 1. 发展历程 由于光场1.0从结构上子图像的分辨率严重依赖MLA子透镜的数量,因此分辨率一直受限,限制了光场1.0结构的广泛应用.针对此不足,在2008年,又一篇伟大的论文出现了,该论文 ...
- 获取rawimage的像素点函数_光场相机数据二次开发基础-使用LFtoolbox解码lfp文件
使用LFtoolbox解码lfp文件 1. 配置文件路径 必须按照这个路径配置文件夹.Bxxxxx表示的是相机的序列号,我们相机的是B5151502360:这个文件夹里放从相机内导出的白图像数据.白图 ...
- lytro原始图片重聚焦
lytro相机ccd得到的图片是具有六边形间隔效应的网格状图片,通过内部的白图像我们可以得到相机微透镜阵列的中心,从而在进行重聚焦时,可以在源图像上面进行. 基本方法是光线追踪算法,假定每个像素代表一 ...
- 光场相机1.0与光场相机2.0
光场相机1.0与光场相机2.0 plenoptic camera 1.0 plenoptic camera 2.0 演化思路 参考文献 目前有两类光场相机,光场相机1.0和光场相机2.0.他们 ...
- 光场相机重聚焦原理③——Matlab光场工具包使用、重聚焦及多视角效果展示
目录 1.从相机里导出白图像(White Images): 2.处理白图像: 3.利用白图像对光场文件进行解码得到rawImage: 4.对rawImage进行去马赛克操作(demosaic): 5. ...
最新文章
- 色彩(颜色)空间原理(下)
- R构建径向核支持向量机分类器实战代码(Radial kernel Support Vector Classifier)
- Matlab怎么计算信号的能量,用Matlab求离散讯号的能量与功率怎么编程
- VSTO Office二次开发PPTRibbonX命令操作及对象添加
- 数据库面试题【二、MYSQL的两种存储引擎区别(事务、锁级别等等)】
- 在项目中使用 calendar_date_select
- 【PAT甲级 排序】1096 Consecutive Factors (20 分) C++ 全部AC
- PE文件格式(加密与解密3)(一)
- [react] 展示组件和容器组件有什么区别?
- 【华为云技术分享】使用sqoop导入mysql数据到hive中
- python爬取json数据_Python爬取数据保存为Json格式的代码示例
- Session自定义存储及分布式存储
- mybatis 之 parameterType=list1
- docker pipework
- DW-办公自动化02(Excel)
- 新浪微博技术架构分析
- C++ friend和protected
- 《Web 测试精要》- 第6章:浏览器控制台与调试方法
- 怎么改变html无序列表的字号,html无序列表代码 html5 无序列表的行距怎么设置
- MFC 基于VLC的视频播放器(三)---界面设计以及对话框接受文件的拖拽
热门文章
- Bochs出现'keyboard_mapping' is deprecated - use 'keyboard' option instead.解决方法
- 中国农药制剂行业销售渠道与十四五前景动态预测报告2021-2027年版
- McNay Art Museum【McNay艺术博物馆】
- 一文读懂基于Redis的Amazon MemoryDB数据库
- react生态下jest单元测试
- 百度智能云对象存储BOS批量下载文件方法
- 基于PanoSim仿真开发平台AEB算法的实现和FCW的构想
- 网络切片技术缺点_一文读懂网络切片和服务质量(QoS)的差异
- UG NX 12 曲面
- python实现递归二叉树排序