色分(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. [Java]LeetCode278. 第一个错误的版本 | First Bad Version

    You are a product manager and currently leading a team to develop a new product. Unfortunately, the ...

  2. RabbitMQ 学习笔记

    环境: MacOS 10.14 Node.js 8.9.1 零.背景 目前有个上线应用会接受多个请求,且每个请求的处理时间可能很久,可能到数小时,所以就想采用异步机制,至于复杂的运算就用消息队列(MQ ...

  3. Kubernetes 笔记 07 豌豆荚之旅(二)

    本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...

  4. MySQL优化之推荐使用规范

    一.基础规范 使用InnoDB存储引擎支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 推荐使用utf8mb4字符集无需转码,无乱码风险, 支持emoji表情以及部分不常见汉字 ...

  5. 【Spark篇】---Spark初始

    一.前述 Spark是基于内存的计算框架,性能要优于Mapreduce,可以实现hadoop生态圈中的多个组件,是一个非常优秀的大数据框架,是Apache的顶级项目.One stack  rule  ...

  6. api-ms-win-crt-process-l1-1-0.dll 丢失的处理,遇到问题和完美解决

    api-ms-win-crt-process-l1-1-0.dll 丢失的处理 简介 在换了新电脑后,一些环境需要重新搭建,本以为是个小case,没想到竟然遇到了各种拦路虎. 在成功安装Python3 ...

  7. redis 系列13 集合对象

    一. 集合对象概述 这里的集合是string类型的无序集合,在集合对象中集合成员是唯一的,这就意味着集合中不能出现重复的数据.集合是通过哈希表实现的,集合中最大的成员数为 232-1 (4294967 ...

  8. 使用dotnet build时复制引用dll到生成目录

    默认配置下dotnet build只会输出项目代码的dll,依赖用的是dotnet缓存中的dll,只有dotnet publish才会把依赖的dll一起输出到生成目录. 在项目csproj文件中添加以 ...

  9. .net core高性能通讯开源组件BeetleX

    BeetleX beetleX是基于dotnet core实现的轻量级高性能的TCP通讯组件,使用方便.性能高效和安全可靠是组件设计的出发点!开发人员可以在Beetlx组件的支持下快带地构建高性能的T ...

  10. Linux 虚拟内存

    查看进程占用内存情况: ps -aux VSZ表示占用虚拟内存单位KBRSS表示占用物理内存单位KB 添加swap文件大小为4G 内部存储块每块1M dd if=/dev/zero of=/swap ...