标准的镜头质量评测方法——MTF(Modulation Transfer Function)

2024-06-20 21:38

本文主要是介绍标准的镜头质量评测方法——MTF(Modulation Transfer Function),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

https://zhuanlan.zhihu.com/p/21318769;

这话和星座一样准,认识的几个常旅客都喜欢带着相机出门

今天就来聊聊选镜头的重要指标之一 MTF,不想看科普的可以直接拖到最后看结论

人眼评价镜头可能会众说纷纭,MTF图提供了一种把镜头质量 量化 的标准方法

在各种镜头页面中都会看到类似这样的图

 

纵坐标是 MTF 的对比度, 取值 = 拍摄画面 / 实际画面

MTF 为 100% 也就是最高的时候表示最佳画质,成像和真实完全一样,还原能力100%

MTF 全称是 Modulation Transfer Function(调制传递函数)

最佳光圈

索尼和佳能一般都会提供最大光圈和F8两种光圈的 MTF,因为 F8 约等于大部分镜头的最佳光圈

 

最佳光圈的质量总是比最大光圈的成像质量高,不然也不叫最佳光圈了。。当你不知道用啥光圈的时候,F8也是一个选择

F8的曲线通常会反映镜头理想条件下的最高性能,如果没有特殊要求,光圈尽量就保持在这附近

有专家这么解释

大于F8会因为镜头玻璃组边缘的影响出现相差色差降低画质,小于F8会受到光的衍射现象影响降低画质

边缘成像

为什么全画幅横坐标最长是20mm多呢?

 

全画幅尺寸是 36 x 24,斜对角是 43mm,从中心点到最远处就是一半距离也就是21.6mm

而 APS-C 画幅显示12mm多,画幅尺寸是 24.9 × 16.6,对角线 29.3mm,因此横坐标最长 29.3 / 2 = 14.6mm

 

不管是什么镜头都是边缘成像比中心要差

边角成像质量可以区分高端镜头和普通镜头,因为高端镜头总是更在意细节,但实际在照片上并没有太大区别

空间频率

空间频率测试的是镜头对不同密度的黑白条纹样张的还原和解析能力

 

空间频率的描述单位是“线对/毫米”,写作 lp/mm

低频表示画面的 反差 表现,样张是1毫米10条线的黑白条纹,黑白是否分明看的就是它

高频表示画面的 精细 程度,样张是1毫米30条线的黑白条纹,评测的是分辨率

 

10线和30线评测已经时代久远,能看清高频30线对现代的镜头来说也是易如反掌

索尼蔡司授权的镜头用了10,20,40线标准,索尼在设计GM镜头(最高端镜头)的时候用了50线,他们未来的目标是100线

实线和虚线

MTF 中还有两种线,虚线和实线,用来评判镜头虚化的能力

实线表示径向值,简称 M(Meridional) 或 R(Radial)

虚线表示切向值,简称 S(Sagittal) 或T(Tangential)

 

虚线和实线越接近越好,两者距离反映出镜头像散的特性,距离越大像散越大

两条线越接近,代表镜头的散镜越漂亮,从焦内到焦外的过度更自然

MTF 评分的意义

  • 100% 就是说好的不能再好了

  • 80% 认为是 相当好 的镜头

  • 60% 表示60分及格

结论

  1. 各种线越高越好,越平越好

  2. 现代的镜头都很高级了,差距很小,三千的镜头拍出的照片未必比一万多的镜头差,花三倍的价格可能只换来30%的性能优势

  3. 对于常旅客来说,体积和重量可能成为更重要的选择指标

这篇关于标准的镜头质量评测方法——MTF(Modulation Transfer Function)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1079326

相关文章

Python中使用defaultdict和Counter的方法

《Python中使用defaultdict和Counter的方法》本文深入探讨了Python中的两个强大工具——defaultdict和Counter,并详细介绍了它们的工作原理、应用场景以及在实际编... 目录引言defaultdict的深入应用什么是defaultdictdefaultdict的工作原理

使用Python进行文件读写操作的基本方法

《使用Python进行文件读写操作的基本方法》今天的内容来介绍Python中进行文件读写操作的方法,这在学习Python时是必不可少的技术点,希望可以帮助到正在学习python的小伙伴,以下是Pyth... 目录一、文件读取:二、文件写入:三、文件追加:四、文件读写的二进制模式:五、使用 json 模块读写

Oracle数据库使用 listagg去重删除重复数据的方法汇总

《Oracle数据库使用listagg去重删除重复数据的方法汇总》文章介绍了在Oracle数据库中使用LISTAGG和XMLAGG函数进行字符串聚合并去重的方法,包括去重聚合、使用XML解析和CLO... 目录案例表第一种:使用wm_concat() + distinct去重聚合第二种:使用listagg,

Java后端接口中提取请求头中的Cookie和Token的方法

《Java后端接口中提取请求头中的Cookie和Token的方法》在现代Web开发中,HTTP请求头(Header)是客户端与服务器之间传递信息的重要方式之一,本文将详细介绍如何在Java后端(以Sp... 目录引言1. 背景1.1 什么是 HTTP 请求头?1.2 为什么需要提取请求头?2. 使用 Spr

Java如何通过反射机制获取数据类对象的属性及方法

《Java如何通过反射机制获取数据类对象的属性及方法》文章介绍了如何使用Java反射机制获取类对象的所有属性及其对应的get、set方法,以及如何通过反射机制实现类对象的实例化,感兴趣的朋友跟随小编一... 目录一、通过反射机制获取类对象的所有属性以及相应的get、set方法1.遍历类对象的所有属性2.获取

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

Python实现数据清洗的18种方法

《Python实现数据清洗的18种方法》本文主要介绍了Python实现数据清洗的18种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录1. 去除字符串两边空格2. 转换数据类型3. 大小写转换4. 移除列表中的重复元素5. 快速统

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作

Python中lambda排序的六种方法

《Python中lambda排序的六种方法》本文主要介绍了Python中使用lambda函数进行排序的六种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录1.对单个变量进行排序2. 对多个变量进行排序3. 降序排列4. 单独降序1.对单个变量进行排序