深度差与人眼注视物体模糊程度的关系

2023-10-19 03:40

本文主要是介绍深度差与人眼注视物体模糊程度的关系,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

深度差与人眼注视物体模糊程度的关系

    • 人眼成像与相机的区别
    • 人眼成像模糊程度与深度差关系
    • 参考链接

之前我们讨论了图像深度差与模糊度的关系:https://blog.csdn.net/qq_41452267/article/details/104492162
本节我们讨论人眼成像模糊程度与深度差的关系。

人眼成像与相机的区别

    首先我们要明白一个问题:人眼与相机成像原理都是凸透镜成像,但是人眼既不是变焦镜头也不是定焦镜头:人眼的晶状体相当于一个变焦透镜,视网膜相当于底片。同一个人的晶状体中心到视网膜的距离,也就是眼轴长度,大致是固定的。
    人眼对焦是靠睫状肌的拉伸来改变晶状体的形状,也就是改变其焦距(或者说屈光度)来实现。如下图所示(引自wiki):
在这里插入图片描述
具体而言:
看远处物体,睫状肌放松,晶状体扁平,屈光度最小,焦距最大,如左图。
看近处物体,睫状肌收缩,晶状体变凸,屈光度变大,焦距变短,从而在眼轴长度不变的情况下,保证成像在视网膜上,如右图。
    摄影爱好者都知道,镜头焦距长,成像大,视野窄;焦距短,成像小,视野广,于是比较疑惑为什么人眼变焦,我们却没有感受到成像大小和视野的变化?
答案是因为:人眼视野不变,只是因为人眼轴长度不变,而不是焦距不变。(屏上的)像(斑)大小本质上和焦距并没有关系,只和透镜中心到屏幕的距离有关。焦距只负责成像清晰与否,和成像(斑)大小无关。和人眼不同,所有变焦镜头都是焦距变大(小),(有效)透镜中心到屏幕距离也随之变大(小),而不是固定。这是造成变焦镜头「长焦拉近、视野缩小」的原因,也是很多摄影爱好者类比人眼时误解的地方。总之,摄影上「长焦拉近」,本质并不是因为焦距变长了,而只是因为我们把屏幕放远了。只要透镜到屏幕距离固定,不管焦距怎么变,成像(斑)大小都不变。
    人眼轴长度固定,自然成像大小也是固定的,只不过这个像/斑不在对焦面上,模糊了而已。从这个意义上,人眼看东西大小不变,正是人眼轴长度固定的最佳佐证。另一方面,人眼进化出调节晶状体屈光度(变焦)而不是眼轴长度,,否则人眼对焦,两个大眼珠子在那一胀一胀……

人眼成像模糊程度与深度差关系

    知道了人眼成像的原理后,结合1/L+1/u=1/ f ,因为像距v不变,我们可以根据要注视物体的深度L计算出此时眼睛的焦距f:
在这里插入图片描述
将其带入我们之前图像深度差与模糊度的关系中推得的公式及光圈F=f/d有:
前景深:
在这里插入图片描述
后景深:
在这里插入图片描述
其中v为人眼轴长,d为瞳孔张开程度,L为物距。
人眼的参数有:
人眼像素:5亿7600万像素
人眼感光度:ISO 1-800
人眼动态范围:1000000,动态视频连续记录
人眼目标焦距:16.7mm广角双镜头
人眼图像焦距:22.3mm 立体成像
人眼光圈值:f3.2

参考链接

https://www.zhihu.com/question/20689640
https://zhidao.baidu.com/question/71974732.html

这篇关于深度差与人眼注视物体模糊程度的关系的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

java中新生代和老生代的关系说明

《java中新生代和老生代的关系说明》:本文主要介绍java中新生代和老生代的关系说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、内存区域划分新生代老年代二、对象生命周期与晋升流程三、新生代与老年代的协作机制1. 跨代引用处理2. 动态年龄判定3. 空间分

深度解析Java DTO(最新推荐)

《深度解析JavaDTO(最新推荐)》DTO(DataTransferObject)是一种用于在不同层(如Controller层、Service层)之间传输数据的对象设计模式,其核心目的是封装数据,... 目录一、什么是DTO?DTO的核心特点:二、为什么需要DTO?(对比Entity)三、实际应用场景解析

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

深度解析Python装饰器常见用法与进阶技巧

《深度解析Python装饰器常见用法与进阶技巧》Python装饰器(Decorator)是提升代码可读性与复用性的强大工具,本文将深入解析Python装饰器的原理,常见用法,进阶技巧与最佳实践,希望可... 目录装饰器的基本原理函数装饰器的常见用法带参数的装饰器类装饰器与方法装饰器装饰器的嵌套与组合进阶技巧

深度解析Spring Boot拦截器Interceptor与过滤器Filter的区别与实战指南

《深度解析SpringBoot拦截器Interceptor与过滤器Filter的区别与实战指南》本文深度解析SpringBoot中拦截器与过滤器的区别,涵盖执行顺序、依赖关系、异常处理等核心差异,并... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现

深度解析Spring AOP @Aspect 原理、实战与最佳实践教程

《深度解析SpringAOP@Aspect原理、实战与最佳实践教程》文章系统讲解了SpringAOP核心概念、实现方式及原理,涵盖横切关注点分离、代理机制(JDK/CGLIB)、切入点类型、性能... 目录1. @ASPect 核心概念1.1 AOP 编程范式1.2 @Aspect 关键特性2. 完整代码实

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

Spring Boot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)

《SpringBoot拦截器Interceptor与过滤器Filter深度解析(区别、实现与实战指南)》:本文主要介绍SpringBoot拦截器Interceptor与过滤器Filter深度解析... 目录Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现与实

MyBatis分页插件PageHelper深度解析与实践指南

《MyBatis分页插件PageHelper深度解析与实践指南》在数据库操作中,分页查询是最常见的需求之一,传统的分页方式通常有两种内存分页和SQL分页,MyBatis作为优秀的ORM框架,本身并未提... 目录1. 为什么需要分页插件?2. PageHelper简介3. PageHelper集成与配置3.