色分(Anaglyph)模式:典型的如红蓝立体,是利用红镜片只允许红光通过,蓝镜片只允许蓝光通过的原理,将两幅视差的图片(一张红色、一张蓝色)叠加构成一张立体图片

由于红蓝立体去掉了绿色分量,会导致最后看到的立体图片不是正常彩色的立体图像,所有在实际中,一般会使用红-蓝绿(全彩)来制作立体图片(如下图)

由于人的两只眼睛对视觉的贡献是不一样的(主眼对视觉贡献大),而且在视觉空间不同区域两只眼睛贡献系数也不一样(靠左区域,左眼的视觉贡献越大;靠右区域,右眼的视觉贡献越大)

因此,色分模式不能在各视觉方向上很好地还原整副图片的颜色,特别是视线的左右边缘处会出现全红和全蓝的现象。

但这种立体模式的好处是不需要显示设备的支持,只需要有一个红蓝眼睛就可以了;而且对立体图片压缩、放大缩小也不是特别敏感

左右图片见:https://www.mtbs3d.com/gallery/albums%2Favatarthegame3d%2FAvatar29_50.jpg

左右图片见:https://www.mtbs3d.com/gallery/albums/avatarthegame3d/Avatar33_50.jpg

交错立体模式(偏振立体模式):分为行交错立体(水平交错立体,行偏振立体)和列交错立体(垂直交错立体,列偏振立体),依赖于显示设备,然后通过偏光镜来形成立体

将左眼和右眼看到的具有视差的图像分别显示到奇数行(列)和偶数行(列),再配合偏光镜进行相反过滤,让左眼只看到奇数行(列)的图像,右眼只看到偶数行(列)的图像

如果图片的奇数行(列)对应到显示设备的偶数行(列),使得左眼看到了右眼的图像,右眼看到左眼的图像,这也会导致无法看到正确的立体

这时可以,将图片水平方向(垂直方向)偏移一个像素来让图片的奇偶行(列)与显示设备的奇偶行(列)对应上,或者使用立体软件进行左右眼交换之后再查看图片

由于左图的像素在奇数行(列)中,右图的像素在偶数行(列)中,因此要用1:1的大小去观察这样的立体图片,否则就会有问题(放大或缩小图片都会使得奇数行和偶数行之间的像素发生插值重计算混合在一起)

并且最好是使用bmp等无损压缩的格式来存储该立体图像,因为有损压缩格式也会使奇数行和偶数行之间的像素发生插值重计算混合在一起

还有一点需要注意的是,桌面分辨率要与显示设备的物理分辨率一致(即把桌面分辨率设置为最大),游戏则需要设置成窗口模式或者与显示设备的物理分辨率一致的全屏模式,否则也会看不到立体

另外,这种立体方式在视觉上会降低行方向或列方向的dpi为原来的1/2,有像素颗粒感

https://www.mtbs3d.com/articles/game-reviews/2761-Avatar--The-Game

更多Avatar游戏的立体截图见:https://www.mtbs3d.com/gallery/thumbnails.php?album=157

快门立体

通过提高显示设备的刷新率(如:120Hz),让左右图像以帧序列快速交替刷新,然后负责接收的3D眼镜进行同步刷新,来实现左右眼观看对应的图像。

即使以120Hz的速度高速刷新,人眼仍能感觉出左右图像在时间上的不同步,有闪烁感,容易引发眼睛疲惫

裸眼立体

利用的是显示屏光栅折射特性,让处于不同角度的左右眼看到不同的画面,这种对观察者所处位置及离屏幕的距离都有较高的要求

为了解决这个问题,可通过追踪观察者左右眼球的位置、视线方向、瞳孔焦距来动态地调整显示屏光栅折射方向;然而这种对追踪的实时性以及调整显示屏光栅的精度有极高的要求

如何分辨出那个是左眼图像,那个是右眼图像?

找立体图片上远景的地方,在左边的是左眼图像,在右边的是右眼图像

stereoscopic 3D的更多相关文章

  1. {ICIP2014}{收录论文列表}

    This article come from HEREARS-L1: Learning Tuesday 10:30–12:30; Oral Session; Room: Leonard de Vinc ...

  2. FFMpeg ver 20160219-git-98a0053 滤镜中英文对照 2016.02.21 by 1CM

    FFMpeg ver 20160219-git-98a0053 滤镜中英文对照 2016.02.21 by 1CM T.. = Timeline support 支持时间轴 .S. = Slice t ...

  3. FFMpeg ver 20160213-git-588e2e3 滤镜中英文对照

    1 FFMpeg ver 20160213-git-588e2e3 滤镜中英文对照 2016.02.18 by 1CM 2 T.. = Timeline support 3 支持时间轴 4 .S. = ...

  4. FFMpeg 滤镜中英文对照

    FFMpeg ver 20160213-git-588e2e3 滤镜中英文对照 2016.02.17 by 1CM T.. = Timeline support 支持时间轴 .S. = Slice t ...

  5. cg tut

    Gesture Drawing with Alex Woo Gesture Drawing with Alex Woo and Louis Gonzales http://eisneim.com/?p ...

  6. 【多媒体封装格式详解】---MKV

    http://blog.csdn.net/tx3344/article/details/8162656# http://blog.csdn.net/tx3344/article/details/817 ...

  7. 多媒体封装格式----mkv

    Matroska 开源多媒体容器标准.MKV属于其中的一部分.Matroska常见的有.MKV视频格式.MKA音频格式..MKS字幕格式..MK3D files (stereoscopic/3D vi ...

  8. VR/AR工作原理、目前存在的技术问题

    http://blog.csdn.net/liulong1567/article/details/50686558 摘要: 这些挑战,每一个都还需要很多努力才能解决.目前它们很多都还不到量变(只是需要 ...

  9. Getting Started with the Intel Media SDK

    By Gael Hofemeier on March 19, 2015 Follow Gael on Twitter: @GaelHof Media SDK Developer’s Guide Med ...

随机推荐

  1. [Swift]LeetCode740. 删除与获得点数 | Delete and Earn

    Given an array nums of integers, you can perform operations on the array. In each operation, you pic ...

  2. Vue实现移动端页面切换效果

    找了好多博客实现效果都……emmm…… 应用Vue自带的过渡 < 进入/离开 & 列表过渡 >和 嵌套路由 和 fixed定位实现 其实还是挺简单的. 在子页面把整个页面做绝对定位 ...

  3. 网络协议 5 - ICMP 与 ping:投石问路的侦察兵

        日常开发中,我们经常会碰到查询网络是否畅通以及域名对应 IP 地址等小需求,这时候用的最多的应该就是 ping 命令了. 那你知道 ping 命令是怎么工作的吗?今天,我们就来一起认识下 pi ...

  4. SpringBoot入门教程(二)CentOS部署SpringBoot项目从0到1

    在之前的博文<详解intellij idea搭建SpringBoot>介绍了idea搭建SpringBoot的详细过程, 并在<CentOS安装Tomcat>中介绍了Tomca ...

  5. nginx部署~dotnetCore+mvc网站502

    这个不是nginx的问题,也不是dotnet core的问题,也不是mvc的问题,更不是防火墙的问题! 原因在于这个SeLinux 把它关了就可以了 setsebool -P httpd_can_ne ...

  6. Java IO模型

    Linux的内核将所有外部设备都看做一个文件来操作,对一个文件的读写操作会调用内核提供的系统命令,返回一个file descriptor(fd,文件描述符).而对一个Socket的读写也会有相应的描述 ...

  7. C#2.0之可空类型

    可空类型Nullable<T> 在C#2.0之前 ,值类型一直不可以为null,但是实际开发中常常会有这样的需求,比如结束时间. 为什么不可以为null 对于引用类型来说,null代表着空 ...

  8. 机器学习之决策树一-ID3原理与代码实现

    决策树之系列一ID3原理与代码实现 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/9429257.html 应用实 ...

  9. ASP.NET Core 框架源码地址

    ASP.NET Core 框架源码地址 https://github.com/dotnet/corefx 这个是.net core的 开源项目地址 https://github.com/aspnet  ...

  10. Linux 进程管理工具 supervisord 安装及使用

    Supervisor是用Python实现的一款非常实用的进程管理工具 1.安装过程非常简单 安装python 安装meld3-0.6.8.tar.gz 安装supervisor-3.0a12.tar. ...