1.MTF介绍

MTF(Modulation Transfer Function)模量传递函数。MTF是camera成像对比度和分辨率的综合表现。从另一个角度来看,camera成像过程可以简单看成下图:

简单来,物体经过camera系统之后形成图象。我们用Io表示物体表面的最大亮度与最小亮度的差,Ii表示图象最大亮度与最小亮度之差。那么MTF表征的量就是Ii/Io,如果是理想情况下,Ii等于Io,
MTF的值就是等于1,但是在实际的成像系统中,这个是不可能发生的。同样的,在成像系统中,Ii的值不可能为0。所以说,MTF的值的范围为0~1.

2.camera MTF测试方法

一般来说,MTF测试的方法分为

1.用人眼来看:人眼来看的方法就是camera拍摄12233 chart得到的图片中的黑白线对,看人眼可以辨识黑白线对的极限。这部分就不具体介绍了。

2.按照MTF的定义也就是最大亮度值减最小亮度值的差来求camera的MTF值。具体如下:

使用上图做为camera拍摄的图卡,其中图中灰色部分为灰度值为0和灰度值为255的象素点间隔组成的图象。然后取红框部分区域进行计算,红框大小可根据实际情况来取。计算公式:(Lmax - Lmin)/(Lmax + Lmin),其中L为灰度值。通过这个公式就可以求出五个区域的MTF值。这种方法算法实现简单,但是误差会比较大。

3.SFR

SFR(spatial frequency response)空间频率响是MTF的一种测试算法,光线经过成像系统,其振幅和相位都会发生变化。于是便可以使用傅里叶变换将时域变换到频域进行分析。SFR测试算法的大致流程如下:

待测Camera去拍摄带倾斜边缘的图卡(该图卡可自己定制),然后获取倾斜边缘的的边缘拓展函数(ESF),微分得到线拓展函数(LSF),最后求离散傅里叶变换得到MTF。具体计算过程可参考ISO12233文档。

camera测试之MTF的更多相关文章

  1. Camera测试之Color & Lens shading Test

    测试目的:测试摄像头成像的均匀性 测试主要设备:均匀光源(DNP灯箱),色温照度计 测试环境:将灯箱光源调至600±100lux 测试注意事项:保证均匀的光源 测试原理: 造成摄像头成像不均匀的原因有 ...

  2. camera测试之颜色还原

    测试目的:camera对色彩的还原能力 测试主要设备:24色色卡,灯箱 测试环境:1.D65/CW/A光源,照度为600±100lux,整个chart表面的亮度值相差小于10% 2.D65光源,照度为 ...

  3. Android自动化测试之Monkeyrunner学习笔记(一)

    Android自动化测试之Monkeyrunner学习笔记(一) 因项目需要,开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括Monkey.Monkeyr ...

  4. MTF测试图卡规格

    1.Imatest Chart Finder计算图卡大小 测试camera MTF时,需要知道所需要的图卡的大小,Imatest提供了一个网页,只要输入sensor的像素, 镜头的视场角,还有镜头到图 ...

  5. 常见camera测试卡

    常见camera测试卡     版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/luckywang1103/article/details/87166 ...

  6. 【转】camera tuning

    chromatix项目必须包含有效的 ADC image.png filcker: 交流电照明灯发出的光会一定频率的抖动导致sensor图像出现行方向的水波纹,称之为filcker.目前主要的交流电频 ...

  7. [转]camera的构成

    camera的构成 拍摄景物通过镜头,将生成的光学图像投射到传感器上,然后光学图像被转换成电信号,电信号再经过模数转换变为数字信号,数字信号经过DSP加工处理,再被送到电脑中进行处理,最终转换成手机屏 ...

  8. [Unity3D]巧妙利用父级子级实现Camera场景平面漫游

    本文系作者原创,转载请注明出处 入门级的笔者想了一上午才搞懂那个欧拉角的Camera旋转..=.= 在调试场景的时候,每次都本能的按下W想前进,但是这是不可能的(呵呵) 于是便心血来潮想顺便添加个Ke ...

  9. [游戏开发-学习笔记]菜鸟慢慢飞(四)-Camera

    游戏开发中,主相机应该是最重要的GameObject之一,毕竟游戏呈现给玩家,就是通过它. 相机的使用,在不同的游戏中,有很大的不同.这里总结一下自己学到的一些相关知识. 固定位置-游戏过程中相机的T ...

随机推荐

  1. 当padding/margin的取值形式为百分比时。。。。。

    一个基础却又容易混淆的css知识点:当margin/padding取形式为百分比的值时,无论是left/right,还是top/bottom,都是以父元素的width为参照物的!也许你会说,left/ ...

  2. Shell条件测试和流程控制-4

  3. [转] Vmware vs Virtualbox vs KVM vs XEN: virtual machines performance comparison

    http://www.ilsistemista.net/index.php/virtualization/1-virtual-machines-performance-comparison.html? ...

  4. 玩转Kafka的生产者——分区器与多线程

    上篇文章学习kafka的基本安装和基础概念,本文主要是学习kafka的常用API.其中包括生产者和消费者, 多线程生产者,多线程消费者,自定义分区等,当然还包括一些避坑指南. 首发于个人网站:链接地址 ...

  5. ZJOI2019二试游记

    ZJOI2019二试游记 Day -2 今天就要去被虐了!开一篇占个坑.禁赛警告 Day -1 早上zzy,下午zzq,无限懵逼... 过来的时候Sooke,memset0,老K坐我旁边,瑟瑟发抖.. ...

  6. [Postman]捕获HTTP请求(14)

    如果您使用API​​构建客户端应用程序 - 移动应用程序,网站或桌面应用程序 - 您可能希望查看应用程序中发送和接收的实际HTTP请求流量.在某些情况下,您可能会发现甚至没有记录的API.Postma ...

  7. mybatis foreach报错It was either not specified and/or could not be found for the javaType Type handler

    或许是惯性思维,在mybatis使用foreach循环调用的时候,很多时候都是传一个对象,传一个List的情况很少,所以写代码有时候会不注意就用惯性思维方法做了. 今天向sql传参,传了一个List作 ...

  8. 转转hybrid app web静态资源离线系统实践

    一.前言 目前的转转app是一个典型的hybrid app,采用的是业内主流的做法: 客户端内有大量业务页面使用webview内加载h5页面承载. 其优点是显而易见的,即:web页面上线频度满足快速迭 ...

  9. jsbridge的js封装

    /*注意:源生app需要配置jsbridge的环境,而在前端页面中需要下方封装代码,既可以达到调用app方法的功能和注册供app调用的方法1.注册方法:注册后,供app调用,注册时,同名函数,下一个会 ...

  10. SpringBoot2.1整合finereport10(帆软报表)

    最近,公司采购了帆软的系统,领导安排要与公司的SpringBoot框架进行整合.费了一番牛劲,终于整合成功,下面分享一下我的经验. 首先,我的开发环境是Intellij IDEA,使用的SpringB ...