stereoscopic 3D

2018/08/21 23:21
阅读数 30

色分(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的速度高速刷新,人眼仍能感觉出左右图像在时间上的不同步,有闪烁感,容易引发眼睛疲惫

裸眼立体

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

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

 

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

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

 

展开阅读全文
php
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部