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

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深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

MYSQL关联关系查询方式

《MYSQL关联关系查询方式》文章详细介绍了MySQL中如何使用内连接和左外连接进行表的关联查询,并展示了如何选择列和使用别名,文章还提供了一些关于查询优化的建议,并鼓励读者参考和支持脚本之家... 目录mysql关联关系查询关联关系查询这个查询做了以下几件事MySQL自关联查询总结MYSQL关联关系查询

Go中sync.Once源码的深度讲解

《Go中sync.Once源码的深度讲解》sync.Once是Go语言标准库中的一个同步原语,用于确保某个操作只执行一次,本文将从源码出发为大家详细介绍一下sync.Once的具体使用,x希望对大家有... 目录概念简单示例源码解读总结概念sync.Once是Go语言标准库中的一个同步原语,用于确保某个操

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

使用C#如何创建人名或其他物体随机分组

《使用C#如何创建人名或其他物体随机分组》文章描述了一个随机分配人员到多个团队的代码示例,包括将人员列表随机化并根据组数分配到不同组,最后按组号排序显示结果... 目录C#创建人名或其他物体随机分组此示例使用以下代码将人员分配到组代码首先将lstPeople ListBox总结C#创建人名或其他物体随机分组

基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(五):Blender锥桶建模

前言 本系列教程旨在使用UE5配置一个具备激光雷达+深度摄像机的仿真小车,并使用通过跨平台的方式进行ROS2和UE5仿真的通讯,达到小车自主导航的目的。本教程默认有ROS2导航及其gazebo仿真相关方面基础,Nav2相关的学习教程可以参考本人的其他博客Nav2代价地图实现和原理–Nav2源码解读之CostMap2D(上)-CSDN博客往期教程: 第一期:基于UE5和ROS2的激光雷达+深度RG

韦季李输入法_输入法和鼠标的深度融合

在数字化输入的新纪元,传统键盘输入方式正悄然进化。以往,面对实体键盘,我们常需目光游离于屏幕与键盘之间,以确认指尖下的精准位置。而屏幕键盘虽直观可见,却常因占据屏幕空间,迫使我们在操作与视野间做出妥协,频繁调整布局以兼顾输入与界面浏览。 幸而,韦季李输入法的横空出世,彻底颠覆了这一现状。它不仅对输入界面进行了革命性的重构,更巧妙地将鼠标这一传统外设融入其中,开创了一种前所未有的交互体验。 想象

POJ1269 判断2条直线的位置关系

题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。如果相交还要求出交点坐标。 解题思路: 先判断两条直线p1p2, q1q2是否共线, 如果不是,再判断 直线 是否平行, 如果还不是, 则两直线相交。  判断共线:  p1p2q1 共线 且 p1p2q2 共线 ,共线用叉乘为 0  来判断,  判断 平行:  p1p