人类3D的感觉是什么

2023-05-16

目录

一、人是如何“看”到3d物体的

1,眼睛的对焦距离

2,两只眼睛同时观看物体的差别

3,眼睛在移动中观测物体的差别

4,特定物体的大小

5,物体的几何形变

6,光影,遮罩而产生的层次感

7,被观测物体的运动

8,大脑的想象

需要强调的两个概念

二、简单解释一下生活中的常见现象

1,一幅画

2,2d电影

3,3d电影

4,2d和3d游戏

5,一只眼睛的人

参考


一、人是如何“看”到3d物体

人看到的世界是3d的,无非是因为你能真切的感受到每一个物体的距离,几何形状,大小。这是一个很复杂的计算过程,大致包含如下几个方面:

1,眼睛的对焦距离

人眼对焦和相机的光学变焦原理是一样的,只是人眼对焦非常精准迅速。观察一个物体时,根据眼睛的对焦距离就可以判断出物体距离眼睛的距离。

2,两只眼睛同时观看物体的差别

这应该是最直接的效果,也是3d电影的基本原理。比如一个正方体的盒子放在眼前,我们能立刻判断出它的几何形状,“这个东西是正方体”,因为我们左眼和右眼从两个角度看到的影像是不同,(你可以保持脑袋不懂,分别闭上左眼和右眼来实际看一下,看近处的物体比较明显)。然后大脑通过很复杂的运算就可以得出物体的形状。

3,眼睛在移动中观测物体的差别

这个原理同上一条。区别是,在上一条中,两只眼睛同时看到不同角度的影像,在这一条中,是通过移动眼睛的位置来看到不同的角度影像。而且角度可能更大,可以完全达到2的所有效果。这一条和上一条都可以总结为“观测角度的不同而看到不同的影像”。

区别于第7条,这是人眼的主动移动,而不是被观测物体或者摄像头位置的移动。

4,特定物体的大小

物体的远近不同导致看到的相对大小不同。比如一个人,一座房子,一辆车子等常见物体,我们知道他的实际大小大致是多少。看到的越小,说明其距离我们越远。

5,物体的几何形变

比如,我们看一条笔直的马路,一个正方体等物体,由于其不同位置和我们眼睛的距离不同而会产生几何形变,可以参见素描中的透视效果,这也是素描画出立体感物体的基本原理之一。

6,光影,遮罩而产生的层次感

比如物体a把物体b挡住了一部分,我们会认为物体a在物体b前面,也就是a离我们的眼睛更近。

对于光影效果,比如同一个路灯下,ab两个物体,其中一个影子几乎很短,另外一个影子很长(这个长短是相对于ab物体自身而言,不是绝对长度),则可以认为a物体离路灯很近,而b物体离得远。

7,被观测物体的运动

这点实际上也包含了上述的几点,被观测的物体的运动会不断的产生眼睛对焦距离的变化,几何形变,相对大小的变化,光影效果和遮罩的变化,以及观测角度的变化。

8,大脑的想象

终极武器,这是人最难以用机器模拟的特点。人最大的特点就是拥有丰富的想象力,而且这个想象力是无处不在的。比如你看到一只猫卧在地上,你会更具生活经验想象出它应该有四条腿缩在身子下面;你看到一个人的左半边,你会不由自主的在脑海中把它的右半边被挡住的耳朵胳膊等补上去。

这个想象力大部分时候是准的,但是偶尔也会出错⋯⋯最典型的应用就是魔术,魔术不是让观众看到了假的,二是诱导力观众的想象力,使观众把看不到的或者看不清的或者没注意看的东西在大脑中靠想象力补出来。

比如最简单的硬币魔术,把一个硬币藏在另一个硬币后面而感觉上是变出了一个硬币。因为背后的硬币被前面的完全挡住了,综合我们以上所有的判断方法也无法看到被挡住的硬币,此时,大脑会根据生活经验而想象出这个硬币背面没有东西,这个想象是潜意识的,不由自主的。然后结果就感觉变出一个硬币好神奇,实际上是自己骗自己罢了(简单的解释下,别喷我啊)。

可能不全暂时总结这么多,凡是能够影响到我们判断物体的距离,形状和大小的因素其实都可以算在里面。比如快速运动的星体产生的红移其实也可以是一个因素,不过地球上很少见跑得这么快的东西,或者声音等因素也可以产生影响。

需要强调的两个概念

1,我们一般说的3d是“真实的感受到3d",也就是左眼和右眼可以看到不同角度的画面,只有这样才是有”真实3d“的感觉,也就是只有满足第2,3条才是我们一般所说的”3d“。如果是多个不同物体,那么满足条件1也能显得更真实。

但是实际上上面说的其他一些原因也可以使我们”感觉“到物体的大小,远近,形状等因素,虽然我们不把这些因素当做真正的3d来看,但是绝对可以促使大脑把我们所看到非3d物体想象成3d的,虽然我们清楚那不是3d的。就如同我们明知一幅画是2d的,但是我们看到这幅画却可以想象出3d的场景一样。

总结就是:1,2,3条是”真实的3d“感受的基础,”4-8“都是促使大脑想象3d场景的基础。

2,我们日常生活中所说的2d和3d是一个相对概念。3d就是相对2d更真实一些,仅此而已;而那个2d的定义就是:当出现一个比我们一直看到的更真实的东西时,我们把新的东西叫3d,对应以前那个旧的就是2d了。这从以下的3d游戏和2d电影的对比就可以看出来,他们的视觉效果其实是一样的,但是一个被称为3d,一个被称为2d。只是因为3d游戏相对于2d游戏更真实,所以叫它3d;而2d电影相对于3d电影更不真实,所以叫他2d。

二、简单解释一下生活中的常见现象

1,一幅画

一幅画毫无疑问是个纯2d的东西,左眼和右眼看到的画面是一样的,因此我们可以直观的感受到这是一幅画,它是一个平面。对于一幅画,上述1,2,3,7条它是无法满足的,但是剩下的4,5,6,8条却是可以模拟的。因此,2d的一幅画里面的一棵树,人看这也能”感觉到“它的大小,形状(立体形状),离我们的远近,甚至可以感觉到它在运动。

所以在绘画中,物体的透视结构,光影效果和颜色的运用是非常重要的,因为这是一2d幅画促使大脑想象3d场景的唯一方法。

补充说明下,纸的3d和画面内容的3d是两个东西。

因为画面内容不满足条件2,而且这个纸张的本身是满足条件2的(显然,纸是个现实存在的物体,毫无疑问是3d的,我们左右眼看到的纸是不同的,可以立刻判断出它的几何形状),所以我们知道这张画画用的纸其实就是一个平面物体。但是由于画面内容使用了上述的其他一些因素,可以使我们想象到画面的内容它要表达的3d场景。

2,2d电影

和画相比,2d的电影多了一条,就是第7条,被观测物体的运动。2d电影里面因为物体的运动和摄像镜头的运动,使得它比静态的画面更能使人感受到”3d“的效果。比如2d电影里面的一辆车在往前开,窗户外马路边的树飞速倒退,远一点的房子退的慢一点,更远的山几乎没有动,这个强烈的视觉效果 可以促使大脑构想一个3d的场景:车在马路上飞驰,马路两旁有很多树,马路不远处有很多房子,更远处有绵延的群山。

3,3d电影

3d电影之所以区别于2d电影,是因为它是唯一满足条件2的,由于左右眼看到了两个角度的不同画面,因此有”真实“的3d感。当然,它也同时满足2d电影所满足的一切条件。但是它不满足1,3两条:

对于1,现实生活中我们看不同距离的物体,晶状体会调节曲度而实现对焦,但是看3d电影,对焦点永远是在银幕上,不远电影里面放的是远处的还是近处的。所以我们的眼睛会处在一种不同于一般情况下的工作状态,晶状体不用收缩了,一直保持不动。个人猜测这是造成看完3d电影眼睛疲劳或者疼痛的主要原因(除去眼镜和画面质量等因素)。

对于2,我们不能在看3d电影时主动移动自己的位置来看到不同的画面,只能靠镜头的移动。我们无法跑到右边看就看到画面的右侧。但是看电影时一般大家都是坐着不动的,这个一点倒显得无所谓。如果你想试验一下,从银幕正前方一直跑到90度的侧面,就可以明显感受到这个电影的"3d"效果也很假,也是一个平面而已。

顺便说一下3d电影的实现原理:用横向和纵向的两种偏振光把两个角度拍摄的画面同时放映在屏幕上,因此不带眼镜看到的是重叠在一起的模糊画面。然后通过3d眼镜分别在左眼和右眼处过滤掉另外一个画面,所以左眼和右眼看到的画面是不同的。红蓝3d眼镜也是类似的原理,用带颜色的镜片过滤而不是偏振光过滤。

4,2d和3d游戏

2d游戏能达到的效果就是:4568四条,第7条几乎不满足。因为2d游戏都是由一张张静态的图片组成,显然满足图片所满足的4568条。但是第7条很难满足,因为第七条需要变化,而且这个变化是非常复杂的。比如:我在一条路上走,前方的树逐渐变大,向两边靠,然后消失,树枝树叶的相对大小,面向我们的角度和相对我们的位置都会不断变化,两颗树的相对位置也会不断变化,互相间的遮挡也会不断变化,光线透过树叶的缝隙也会不断变化,这些是非常复杂的数学计算才能做到的,是一个简单的图片拼接无法完成的,因此2d游戏不满足第7条。但是简单的效果,比如物体越走越远就会越变越小,可以通过缩小图片来实现,所以说”几乎“不满足第7条。

相对的,3d游戏就是完全满足了第7条。因为它利用3d引擎做3d建模,完全模拟了一个3d场景,然后通过复杂的计算得到这个场景投影到特定角度的2d画面,这个计算是动态的,比如每分钟计算60次。所以,在3d游戏中可以看到由于镜头或者物体的移动而产生的各种复杂的变化,因此完全可以满足第7条。

可以发现,3d游戏和2d电影满足的条件是一样的,唯一的区别是在3d游戏中你可以控制镜头的方向,在2d电影中不行。但是一个叫3d,一个叫2d。(不管内部实现,3d游戏的内部实现远比2d电影复杂,记录的信息也比2d电影多很多,只是说我们看到画面的的效果是一样的)。

5,一只眼睛的人

很明显,一只眼睛的人除了不满足条件2之外,满足其他一切条件。特别是第1,3两条,完全足够我们看到”真实的3d“世界。而且一只眼睛的人由于无法满足条件2,而只能满足几乎等价的条件3。因此可以猜测的一点是:一只眼睛的人有时需要移动自己的眼睛的位置来判断物体物体的3d效果,可能这已经是习惯,是不由自主的做出的动作(不过也可能他早已习惯了利用其他7条而不需要条件2)。比如:他看到远处一棵树和一辆车,分辨的不是很清楚,就左右移动一下脑袋,然后车和树以及背景的相对位置会发生变化,而且这种变化与物体的形状和远近是密切相关的,因此就可以”看的更清楚“。

参考

3D 电影是怎么实现的? - 知乎

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

人类3D的感觉是什么 的相关文章

  • Windows无法访问Ubuntu Samba 解决方案

    好久没用Windows访问Ubuntu的共享文件 xff0c 忘记了密码 xff0c 重装Samba后提示Windows无法访问 可以打开文件但是无法访问 查看log var log samba log 192 168 1 39 smbd
  • keil C数组声明问题

    C语言中 xff0c 我们声明一个一维数组 xff0c 可以用以下几种方法 int buf 3 int buf 61 0 int buf 3 61 1 2 3 但是今天在keil中 使用int buf 61 0 这种方式进行声明 xff0c
  • 初学QML之qmlRegisterType

    qmlRegisterType 是一个可以将C 43 43 实现的类在QML中调用的 xff0c 连接C 43 43 和QML的一个工具 首先来看QtAssistant的介绍 int qmlRegisterType const char u
  • 在IDEA中引入jQuery无效

    在idea开发前端页面中 xff0c 引入jQuery后 xff0c 使用 会出现下划线 xff0c 提示未定义 虽然不影响使用 xff0c 运行后可以得到正常结果 xff0c 但还是看的很不爽 解决办法 xff1a Preferences
  • Asterisk WebRTC 搭建指南

    1 WebRTC简介 WEBRTC是一个开源项目 xff0c 其宗旨是让WEB浏览器通过简单的JavaScript具备实时通信 Real Time Communications RTC 的能力 WEBRTC目前支持JS和HTML5 xff0
  • UDP三种通讯方式

    单播 xff1a 单播用于两个主机之间的端对端通信 组播 xff1a 组播用于对一组特定的主机进行通信 广播 xff1a 广播用于一个主机对整个局域网上所有主机上的数据通信 单播实现 发送端 public class SendDemo pu
  • ArduPilot——如何对飞控LOG进行简易振动分析

    版权声明 xff1a 本文为博主原创博文 xff0c 未经允许不得转载 xff0c 若要转载 xff0c 请说明出处并给出博文链接 首先 xff0c 你得先有一架可以飞的且刷的是ArduPilot飞控代码的无人机和地面站Misson Pla
  • SITL Simulator —— ArduPilot —— Windows

    版权声明 xff1a 本文为博主原创博文 xff0c 未经允许不得转载 xff0c 若要转载 xff0c 请说明出处并给出博文链接 参考网页 xff1a http ardupilot org dev docs sitl native on
  • ArduCopter——ArduPilot——航点导航WPNav(一)

    版权声明 xff1a 本文为博主原创博文 xff0c 未经允许不得转载 xff0c 若要转载 xff0c 请说明出处并给出博文链接 现如今 xff0c 四旋翼飞行器已经从几年前的遥控航模变成真正可以超视距操控的无人机 xff0c 离不开伟大
  • 多频超声波清洗换能器用于高精密清洗系统

    多频超声波清洗换能器因加工方式和工作要求不同 xff0c 超声波换能器的工作方式可分为连续工作和脉冲式工作 xff0c 不同的工作方式对换能器的要求是不同的 连续式工作是不停机工作 xff0c 工作电流不是很大 xff0c 一般使用在清洗方
  • 超声波发生器电源控制电路线路板设计

    超声波发生器电源控制电路线路板是由匹配电容 xff0c 驱动变压器 xff0c 高功率的IGBT功率管 xff0c 匹配电感盒MOS管组成 xff0c 所有的组件一目了然 xff0c 零部件少 xff0c 故障率低 xff0c 造价成本低
  • 洗碗机超声波换能器振子设计

    超声波的声波是一种可以穿透液体和固体的声学化学能量 xff0c 超声波的污染非常小穿透力强 xff0c 所以人们就想到了用它来清洗餐具 xff0c 于是乎超声波洗碗机就应运而生了 洗碗机超声波换能器振子作为超声波洗碗机的三大组件之一 xff
  • 超声波清洗机电路板线路板设计

    在我们日常生活中遇见的超声波清洗设备 xff0c 大多是使用低频率或低功率的超声波 xff0c 而且由于被清洗件尺寸往往较小 xff0c 所以清洗槽的尺寸往往也较小 xff0c 清洗槽内壁高度一般不高于400mm 这类清洗机清洗物品涉及范围
  • 在Mac中开发STM32单片机

    想要在Mac下开发32单片机 xff0c 又不想装虚拟机的同学可以看看 使用工具 xff1a CLion xff08 JetBrains家族一员 xff09 STM32CubeMX xff08 配置芯片 xff0c 生成初始化代码 xff0
  • 超声波电路板驱动线路设计

    超声波电路板驱动线路通电交流电压220V 10 xff0c 电源电压需稳定 体积小 占用空间小 功率大 清洗效果好 自动化程度高 超声波电路板驱动线路驱动超声清洗换能器依次启动低频初洗 中频精洗 换水 高频漂洗 排水等工序 超声波发生器的输
  • 小型超声波PCB电路板设计

    小型超声波PCB电路板通过自动频率跟踪技术 PWM调功控制技术 电容阻抗匹配技术来匹配超声波清洗换能器 小型超声波PCB电路板在驱动负载工作时 xff0c 负载参数会发生变化 xff0c 这就是需要小型超声波PCB电路板能及时捕捉到新的谐振
  • 压电陶瓷超声波换能器设计

    压电陶瓷超声波换能器是值由电能通过压电陶瓷片转化为机械能 xff0c 通过结构件放大传播出去的一种机械运动 压电陶瓷超声波换能器的压电陶瓷片尺寸越大 xff0c 输出的功率越大 xff0c 相应的频率越低 xff0c 而尺寸越小频率相对应的
  • 数字式小型超声波清洗机设计

    数字式小型超声波清洗机可以超声 加热 定时LED数码显示 xff0c 整机为不锈钢结构 使用新型加热方式 xff0c 有效提升加热效果 xff1b 结构工艺上提升防漏水等级 xff0c 同时兼容无效热能导出结构 xff1b 压花处理不锈钢工

随机推荐

  • 超声波清洗振板盒带发生器设计

    超声波清洗振板盒带发生器投入式清洗 xff0c 方便携带移动使用 xff1b 时间可调 xff1a 1 99分钟可调 xff0c 可常开 xff1b 功率可调 xff1a 10 100 可调 xff1b 304外壳 xff1a SUS304
  • PE塑料超声波焊接机设备设计

    聚乙烯 xff08 polyethylene xff0c 简称PE xff09 是乙烯经聚合制得的一种热塑性树脂 在工业上 xff0c 也包括乙烯与少量 烯烃的共聚物 聚乙烯无臭 xff0c 无毒 xff0c 手感似蜡 xff0c 具有优良
  • jetson nx fan auto pwm

    参考 xff1a Jetson Nano PWM自动调速 Ay yzx的博客 CSDN博客 代码 xff1a usr bin env python import os import commands from the path of thi
  • 关于github px4 gps 驱动的开发的总结

    源码编译上边已经写过文章了 遇到的几个问题 1 解决虚拟机不能共享文件夹的问题 一开始虚拟机的更新 vmware tools 是灰色的 xff0c 不能点 xff0c 然后通过关掉虚拟机 xff0c 然后再开启的时候 xff0c 在没有启动
  • 解决Android Studio 安装gradle失败、很慢

    拉取新的项目工程是 xff0c 总是会遇到gradle 下载特别特别慢 xff0c 而且经常都是等了很久最终还以失败告终 这时 xff0c 我们可以使用浏览器自己去下载gradle xff0c 或者找同事要一份相同版本的gradle xff
  • 基于数传电台的多主通讯系统的实现

  • JNI基础简介

    导读 在前面的几篇文章中 xff0c 笔者介绍了C 43 43 中的指针 引用 智能指针 多线程 类型转换 异常处理等相关知识点 xff0c 如果想要熟练掌握 xff0c 并能在实际项目中运用 xff0c 光是看肯定是毫无用处 xff0c
  • C++ class

    namespace 在变量或函数前面加上命名空间 xff0c 用来区分其它位置中的同名函数或变量 span class token macro property span class token directive keyword incl
  • realsense r200使用过程记录

    realsense r200 相机 采用的结构光 43 双目立体视觉 xff0c 使用可以使用室外场景 xff0c 但是有些注意的事项 xff0c 该款相机在sdk 方面貌似总有些bug 相比之前的测过的zed astra kinectv1
  • 从io模型到ppc,tpc,reactor,preactor

    所有的系统I O都分为两个阶段 xff1a 等待就绪和操作 读就是等待系统可读和真正的读 写就是等待系统可写和真正的写 1 网络io模型 这是我们常见的一张图 1 传统的bio 就是同步阻塞的 当调用socket read的时候 会阻塞 直
  • ip校验和 及 udp校验和 的计算方法

    一 ip校验和的计算 计算方法 1 ip包头 共20个字节 按照每16个bit作为一个值依次进行相加 2 将计算结果的进位加到低16位上 3 将结果取反 ip包头的内存内容 eg 45 00 00 20 0F B8 00 00 80 11
  • 轻量化固态激光雷达的三维定位与建图

    点云PCL免费知识星球 xff0c 点云论文速读 文章 xff1a Lightweight 3 D Localization and Mapping for Solid State LiDAR 作者 xff1a Han Wang Chen
  • 嵌入式Linux下CAN接口socket发送调试

    1 简介 最近在做嵌入式linux can通讯的调试 xff0c 需要用到扩展帧 xff0c 参照示例代码和linux库改为扩展帧格式发送 参考链接 链接 https blog csdn net toradexsh article deta
  • 矩阵转置与矩阵相乘

    1 转置矩阵 1 1转置矩阵简介 把矩阵A的行换成同序数的列得到的新矩阵 xff0c 叫做A的转置矩阵 Transpose of a Matrix xff0c 记作ATAT 例如 xff1a 因此 xff0c 转置矩阵的特点 xff1a x
  • Python+Opencv:解决打开摄像头慢的问题,现在秒开视频

    前言 打开摄像头非常慢 大概需要5 11秒才能输出视频 这个问题困扰了我很久 一直没得到解决 今天终于得到解决 实现了秒开 值得记录和庆贺一下 我的开发环境 不同的开发环境可能不会遇到我这样的问题 1 操作系统是windows10 64位
  • WAP网页游戏

    最近利用空余时间开发了一款类似3GQQ家园的网页游戏 使用apache 43 mysql 43 php 游戏地址 xff1a www cmdandxgz top bug可能很多 xff0c 正在测试 游戏页面如下
  • WPS里公式居中、编号右对齐

    WPS里 xff0c 我目前没找到公式自动编号的方式 xff0c 在此提供一种还算编辑的手动编号并右对齐的方式 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 6
  • 【计算机视觉基础】8.内部参数描述

    目录 1 Film Coords gt Pixel Coords 2 变换 2 1 平移 2 2 尺度变换 2 3 旋转 2 4 刚体运动 2 5 刚体 43 尺度变换 2 6 仿射变换 2 7 投影变换 3 2D变换总结如下图 1 Fil
  • 【计算机视觉基础】5.投影变换扩展(单应性Homograph估计)

    1 投影变换 投影变换分为平行投影 xff08 正交投影 xff09 和中心投影 xff08 透视投影 xff09 xff0c 投影变换是联系三维空间物体与二维图形的桥梁 基础的变换参考之前的博客 计算机视觉基础 3 矩阵变换图形 xff0
  • 人类3D的感觉是什么

    目录 一 人是如何 看 到3d物体的 1 xff0c 眼睛的对焦距离 2 xff0c 两只眼睛同时观看物体的差别 3 xff0c 眼睛在移动中观测物体的差别 4 xff0c 特定物体的大小 5 xff0c 物体的几何形变 6 xff0c 光