减少多视景显示器中感知的图像串扰的方法 【技术领域】
本发明涉及减少多视景 (multiview) 显示器中感知的图像串扰的方法。背景技术 多视景显示器受到被称为图像串扰或图像重影的干扰影响。 当一个视点接收到用 于另一视点的刺激时发生图像串扰。这在该图像上产生可感知或可见的阴影或重影, 其减 少甚至抑制了观看者的显示体验。
显示器中两种类型的图像串扰包括光学图像串扰和定时图像串扰。 定时图像串扰 指的是光源的定时和图像在显示面板上的呈现。因此, 如果第一视景图像不能在用于第二 图像的照明提供到显示面板之前消除, 则可从不正确的视点看到第一视景图像, 导致定时 图像串扰。
光学图像串扰指的是来自第一视景的光扩展、 漫射或以另外的方式传播到其他视 景中的任何非理想光学分布。例如, 如果来自第一视景图像的光强在第二视景图像的空间 或角度位置处为非零, 那么, 正如定时图像串扰一样, 可从不正确的视点看到第一视景图
像, 导致光学图像串扰。 发明内容 本发明涉及减少多视景显示器中感知的图像串扰的方法。具体地讲, 本发明提供 了调节多视景图像以减少多视景显示器中感知的图像串扰的方法。 该调节包括减式串扰减 少法, 其改变或修改每个图像视景的像素强度以使得所感知图像具有减少的感知图像串扰 量, 从而改善观看者的观看体验。在许多实施例中, 该调节通过软件执行, 所述软件通过将 已知的非常数串扰函数应用于水平显示尺寸来修改水平显示尺寸的至少所选像素的每个 多视景图像帧的颜色强度。
在第一实施例中, 所述方法包括向显示器提供图像流。所述显示器包括从显示器 的第一侧延伸到显示器的相对的第二侧的水平尺寸。所述图像流包括图像时间序列, 其中 至少第一图像视景和随后的第二图像视景以时间顺序方式显示在显示器上。 在显示器上显 示图像时间序列之前, 对图像时间序列进行调节以减少至少第一图像视景与第二图像视景 之间的感知的显示图像串扰。 所述调节包括根据针对水平尺寸的非常数串扰校正函数来修 改沿水平尺寸的至少所选像素的颜色强度。
在另一个实施例中, 所述方法包括向显示器提供图像流。所述显示器包括从显示 器的第一侧延伸到显示器的相对的第二侧的水平尺寸。所述图像流包括图像时间序列, 其 中至少第一图像视景和随后的第二图像视景以时间顺序方式显示在显示器上。 在显示器上 显示图像时间序列之前, 对图像时间序列进行调节以减少至少第一图像视景与第二图像视 景之间的感知的显示图像串扰。 所述调节包括根据针对水平尺寸的非常数串扰校正函数来 修改沿水平尺寸的至少所选像素的颜色强度, 并且对第一图像视景和第二图像视景的颜色 强度范围进行重新标度, 以使得修改的颜色强度处于该颜色强度范围之内。
在另一个实施例中, 一种减少多视景显示器中感知的图像串扰的方法包括向显示 器提供图像流。 所述显示器包括从显示器的第一侧延伸到显示器的相对的第二侧的水平尺 寸。所述图像流至少包括第一图像视景和第二图像视景。在第一图像视景和第二图像视景 显示在显示器上之前对第一图像视景和第二图像视景进行调节, 以减少在至少第一图像视 景与第二图像视景之间的感知的显示图像串扰。 所述调节包括根据针对水平尺寸的非常数 串扰校正函数来修改沿水平尺寸的至少所选像素的颜色强度。 附图说明 结合附图, 并参考下文对本发明的各种实施方案的详细描述, 可更加全面地理解 本发明, 其中 :
图 1 是示例性显示设备的示意性侧视图 ;
图 2A 和图 2B 是图 1 的示例性显示设备在操作时的示意性侧视图 ;
图 3 是另一示例性显示设备的示意性侧视图 ;
图 4A 和图 4B 是图 3 的示例性显示设备在操作时的示意性侧视图 ;
图 5 是一个示例性显示器的示意性前正视图 ;
图 6 是在第一方向和第二方向上沿水平像素行的%串扰的示例性曲线图 ;
图 7 是减少多视景显示器中感知的图像串扰的一个示例性方法的流程图 ; 以及
图 8 是减少多视景显示器中感知的图像串扰的另一示例性方法的流程图。
这些附图未必按比例绘制。附图中使用的相同标号指示相同部件。然而, 应该明 白, 使用标号指示给定附图中的部件并非意图限制在另一个附图中由相同标号进行标记的 部件。
具体实施方式
在下面的描述中参考了形成该说明书的一部分的附图, 其中以举例说明方式示出 了若干特定实施例。 应当理解, 在不脱离本发明的范围或精神的情况下, 可想到并做出其它 实施例。因此, 下面的详细描述并非意在进行限制。
本文采用的所有科技术语具有本领域中通常使用的含义, 除非另外指明。本文提 供的定义是为了有助于理解本文中频繁使用的特定术语, 而并非意在限制本发明的范围。
除非另外指明, 否则应当将说明书和权利要求中用来表述尺寸、 数量和物理特性 的所有数字理解为在所有实例中由术语 “约” 来修改。因此, 除非有相反的指示, 否则上述 说明书和附加权利要求中提出的数值参数均为近似值, 且根据本领域内的技术人员利用本 文所公开的教导内容获得的所需特性而有所不同。
用端点来详述的数值范围包括该范围内包含的所有数字 ( 例如, 1 至 5 包括 1、 1.5、 2、 2.75、 3、 3.80、 4 和 5) 及该范围内的任意范围。
本说明书和附加权利要求中使用的单数形式涵盖了具有多个指示物的实施例, 除 非内容明显指示其它。
术语 “自动立体显示” 指的是显示用户或观看者无需使用特殊头盔或眼镜就能观 看的三维图像。即使图像由平板装置产生, 这些方法也能让观看者产生深度感。术语立体 3D 显示包含自动立体显示装置领域, 但也包括需要特殊头盔 ( 例如快门眼镜或偏振眼镜 )来从平板显示器观看立体 3D 显示的立体 3D 显示器的情况。
液晶显示器是一种采样保持显示装置, 使得任何特定点处的图像保持稳定直到那 一点或像素在下一图像刷新时间 ( 典型地在 1/60 秒或更快的时间之内 ) 更新。在这种的 采样保持系统中, 在显示器的顺序刷新周期期间显示不同的图像 ( 特别是对 3D 显示而言, 左图像和右图像的交替显示 ) 需要对背光源谨慎排序, 以使得例如在显示用于右眼的数据 期间左眼光源不打开, 反之亦然。
本发明涉及减少在多视景显示器中感知的图像串扰的方法。 本发明提供调节图像 视景以减少多视景显示器中感知的图像串扰。该调节包括减式串扰减少法, 其改变或修改 每个图像视景的像素强度以使得所感知图像具有减少的感知图像串扰量, 从而改善观看者 的观看体验。 在许多实施例中, 该调节通过软件来执行, 所述软件通过将已知的非常数串扰 函数应用于水平像素行来修改至少所选水平像素行的至少所选像素的每个图像视景帧的 颜色强度 (color intensity)。在许多实施例中, 该串扰函数针对所选像素行按照经验确 定, 并且可沿像素行对于像素行的相对方向是不同的。可以按时间顺序显示修改的图像以 减少感知的图像串扰。本发明所公开的方法可被实施用于应对不均匀串扰和 / 或均匀串 扰。例如, 串扰校正算法可利用与任何特定显示位置处的串扰量有关的详细信息来逐像素 地校正串扰。 通过讨论下文提供的实施例, 可获得对本发明各个方面的理解, 尽管本发明并 不局限于此。 图 1 是示例性立体显示设备 10 的示意性侧视图。该显示设备包括液晶显示面板 20 和布置成为液晶显示面板 20 提供光的背光源 30, 液晶显示面板 20 具有小于 10 毫秒、 或 小于 5 毫秒、 或小于 3 毫秒的帧响应时间。背光源 30 包括右眼图像固态光源 32 和左眼图 像固态光源 34, 其能够以至少 90 赫兹的速率在右眼图像固态光源 32 和左眼图像固态光源 34 之间调制。在液晶显示面板 20 与背光源 30 之间设置有双面棱镜膜 40。
液晶显示面板 20 和 / 或背光源 30 可以具有任何可用的形状或结构。在许多实施 例中, 液晶显示面板 20 和背光源 30 具有正方形或长方形形状。然而, 在一些实施例中, 液 晶显示面板 20 和 / 或背光源 30 具有多于四条的边或为曲线形状。尽管图 1 涉及任何立体 3D 显示背光源, 包括那些需要快门眼镜或单个以上的光导以及相关的液晶显示面板, 然而 本发明对于自动立体显示器尤为有用。在其它实施例中, 显示器是 OLED 显示器、 等离子显 示器等。
同步驱动元件 50 电连接至背光源 30 的光源 32、 34 以及液晶显示面板 20。随着图 像帧以每秒 90 帧或更大的速率提供给液晶显示面板 20, 同步驱动元件 50 对右眼图像固态 光源 32 和左眼图像固态光源 34 的启用和禁用 ( 即调制 ) 进行同步, 以产生无闪烁的静止 图像序列、 视频流或计算机渲染图形。图像 ( 例如视频或计算机渲染图形 ) 源 60 连接到同 步驱动元件 50 并将图像帧 ( 例如右眼图像和左眼图像 ) 提供给液晶显示面板 20。
液晶显示面板 20 可以是帧响应时间小于 10 毫秒或小于 5 毫秒的任何透射型液 晶显示面板。帧响应时间小于 10 毫秒、 或小于 5 毫秒、 或小于 3 毫秒的市售透射型液晶 显示面板例如为 Toshiba Matsushita Display(TMD) 的光学补偿弯曲 (OCB) 模式面板 LTA090A220F(Toshiba Matsushita Display Technology Co., Ltd., Japan)。
背光源 30 可以是能够以至少 90 赫兹、 或 100 赫兹、 或 110 赫兹、 或 120 赫兹、 或大 于 120 赫兹的速率在右眼图像固态光源 32 与左眼图像固态光源 34 之间调制的任何可用的
背光源。图示的背光源 30 包括与右眼图像固态光源 32 相邻的第一光入射表面 31 和相对 的与左眼图像固态光源 34 相邻的第二光入射表面 33、 以及光出射表面 35。固态光源可以 是能够以至少 90 赫兹的速率调制的任何可用的固态光源。在许多实施例中, 固态光源是多 个发光二极管, 例如 Nichia NSSW020B(Nichia Chemical Industries, Ltd., Japan)。在其 它实施例中, 固态光源是多个激光二极管或有机发光二极管 ( 即 OLED)。 固态光源可以发出 任意数量的可见光波长, 例如白光、 红光、 蓝光和 / 或绿光。背光源可以是在两端具有光源 的单层光学透明材料, 或者是在每一层具有光源的两层 ( 或多层 ) 光学透明材料, 其针对每 一层优先提取所需方向上的光。
双面棱镜膜 40 可以是在第一侧上具有透镜状 (lenticular) 结构且在相背对侧上 具有棱镜结构的任何可用的棱镜膜。双面棱镜膜 40 将来自背光源的光以适当角度透射到 液晶显示面板 20, 以使得观看者在所显示图像中感知到深度。可用的双面棱镜膜在美国专 利申请公开 No.2005/0052750 和 No.2005/0276071 中有所描述, 其全部内容以引用方式并 入本文中。这些双面棱镜膜具有约 60 度的开角, 并且提供大约等于观看者双眼之间的距离 ( 即, 约 6 度 ) 的图像分离。
图像源 60 可以是能够提供图像帧 ( 例如第一图像视景和左图像视景 ) 的任何可 用的图像源, 例如视频源或计算机渲染图形源。在许多实施例中, 视频源可以提供 50 赫兹 至 60 赫兹或更高的图像帧。在许多实施例中, 计算机渲染图形源可以提供 100 赫兹至 120 赫兹或更高的图像帧。 计算机渲染图形源可以提供游戏内容、 医学成像内容、 计算机辅助设计内容等。 计 算机渲染图形源可以包括图形处理单元, 例如 NvidiaFX5200 图形卡 (graphics card), 、 Nvidia GeForce 9750 GTX 图形卡、 或者用于移动方案 ( 例如膝上型计算机 ) 的 Nvidia GeForce GO 7900 GS 图形卡。计算机渲染图形源还可以包含适当的立体驱动器软件, 例如 OpenGL、 DirectX、 或 Nvidia 专有 3D 立体驱动器。
视频源可以提供视频内容。视频源可以包括图形处理单元, 例如 Nvidia Quadro FX1400 图形卡。视频源还可以包含适当的立体驱动器软件, 例如 OpenGL、 DirectX、 或 Nvidia 专有 3D 立体驱动器。
同步驱动元件 50 可以包括任何可用的驱动元件, 其随着图像帧以每秒 90 帧或更 高的速率被提供给液晶显示面板 20, 对右眼图像固态光源 32 和左眼图像固态光源 34 的 启用和禁用 ( 即调制 ) 进行同步, 以产生无闪烁的视频或渲染计算机图形。同步驱动元件 50 可以包括耦接到定制固态光源驱动电子器件的视频接口, 例如 Westar VP-7 视频适配器 (Westar Display Technologies, Inc., St.Charles, Missouri)。
图 2A 和图 2B 是示例性立体显示设备 10 在操作时的示意性侧视图。在图 2A 中, 左眼图像固态光源 34 点亮, 而右眼图像固态光源 32 未点亮。在这种状态下, 从左眼图像固 态光源 34 发出的光透射穿过背光源 30, 穿过双面棱镜片 40 以及液晶面板 20, 从而向观看 者或观众的左眼 1a 提供第一图像视景 ( 即左眼图像 )。
在图 2B 中, 右眼图像固态光源 32 点亮, 而左眼图像固态光源 34 未点亮。在这种 状态下, 从右眼固态光源 32 发出的光透射穿过背光源 30, 穿过双面棱镜片 40 以及液晶面板 20, 从而向观看者或观众的右眼 1b 提供第二图像视景 ( 即右眼图像 )。
每秒向观看者提供至少 45 个左眼图像和至少 45 个右眼图像 ( 在右眼图像和左眼
图像之间交替, 并且图像可能是先前图像对的重复 ) 会给观看者提供无闪烁的 3D 图像。因 此, 当与光源 32 和 34 的切换同步地显示时, 来自计算机渲染图像或者从静止图像相机或视 频图像相机获取的图像的不同右和左视点图像对的显示使得观看者能够在视觉上融合这 两个不同的图像, 从而从平板显示器产生深度感。 该视觉上无闪烁操作的局限性在于 : 如上 所述, 在显示于液晶显示面板上的新图像稳定之前, 不应该开启背光源, 否则将会感知到串 扰和差的立体图像。
图 3 是示例性双视景 2D 显示设备 110 的示意性侧视图。该显示设备包括如上所 述的液晶显示面板 120 以及如上所述的布置成为液晶显示面板 120 提供光的背光源 130。 背光源 130 包括如上所述的右视景图像固态光源 132 和左视景图像固态光源 134, 其能够以 至少 90 赫兹的速率在右视景图像固态光源 132 与左视景图像固态光源 134 之间调制。在 液晶显示面板 120 与背光源 130 之间设置有双面棱镜膜 140。
同步驱动元件 150 电连接至背光源 130 的光源 132、 134 以及液晶显示面板 120。 同步驱动元件 150 如上所述对右视景图像固态光源 132 和左视景图像固态光源 134 的启用 和禁用 ( 即调制 ) 进行同步。如上所述, 图像 ( 例如视频或计算机渲染图形 ) 源 160 连接 至同步驱动元件 150 并为液晶显示面板 120 提供图像帧 ( 例如右视景图像和左视景图像 )。 背光源 130 可以是如上所述的任何可用的背光源。图示的背光源 130 包括与右视 景图像固态光源 132 相邻的第一光入射表面 131 和相对的与左视景图像固态光源 134 相邻 的第二光入射表面 133、 以及光出射表面 135。固态光源可以是如上所述的任何可用的固态 光源。
双面棱镜膜 140 可以是如上所述在第一侧上具有透镜状结构且在相背对侧上具 有棱镜结构的任何可用的棱镜膜。双面棱镜膜 140 将来自背光源的光以适当角度透射到液 晶显示面板 120, 以使得每个观看者感知到适当的显示图像。 可用的双面棱镜膜在美国专利 申请公开 No.2005/0052750 和 No.2005/0276071 中有所描述, 其全部内容以引用方式并入 本文中。尽管该参考文献描述了可用于 3D 图像的双面棱镜膜, 但是棱镜开角和间距可被修 改以分离每个图像视景的输出视角, 以分离两个图像视景以便于两个观看者观看。 例如, 棱 镜开角可以在 70 度至 89 度的范围内, 棱镜间距可以在 1 至 50 微米的范围内, 以形成每个 图像视景的适当输出视角以便于 2D 双视景显示。 在其它实施例中, 2D 多视景显示器不需要 双面棱镜膜, 如下文所述。
图像源 160 可以是如上文所述能够提供图像帧 ( 例如第一图像视景和左图像视 景 ) 的任何可用的图像源, 例如视频源或计算机渲染图形源。同步驱动元件 150 可以如上 所述包括任何可用的驱动元件, 其随着图像帧以每秒 90 帧或更高的速率被提供给液晶显 示面板 120, 对右视景图像固态光源 132 和左视景图像固态光源 134 的启用和禁用 ( 即调 制 ) 进行同步, 以产生无闪烁的视频或渲染的计算机图形。
图 4A 和图 4B 是示例性双视景显示设备 110 的示意性侧视图。在图 4A 中, 左视景 图像固态光源 134 点亮, 而右视景图像固态光源 132 未点亮。在这种状态下, 从左视景图像 固态光源 134 发出的光透射穿过背光源 130, 穿过双面棱镜片 140 以及液晶面板 120, 从而 向左边的观看者 100a 或观众 100a 提供第一图像视景 ( 即左视景图像 )。
在图 4B 中, 右视景图像固态光源 132 点亮, 而左视景图像固态光源 134 未点亮。 在 这种状态下, 从右视景固态光源 132 发出的光透射穿过背光源 130, 穿过双面棱镜片 140 和
液晶面板 120, 从而向右边的观看者 100b 或观众 100b 提供第二图像视景 ( 即右视景图像 )。
本文所述的减少感知的图像串扰的方法还可以应用于显示三个或更多个不同图 像视景的显示器。多视景 2D/3D 显示器的示例性实例在例如以下参考文献中有所描述 : IJzerman 等人的 “Design of 2D/3D Switchable Displays(2D/3D 可切换显示器的设计 )” , SID 2005 DIGEST, 第 98-101 页 ; 以及 Kim 等人的 “A 2.4inch 4-view 3D Display(2.4 英 寸 4 视景 3D 显示器 )” , IDW 2007, 第 2263-2266 页, 其全部内容以引用方式并入本文中。这 些显示器中的一些向显示屏同时提供多视景图像。
本发明描述了调节图像视景以减少多视景显示器中感知的图像串扰。 该调节包括 减式串扰减少法, 其改变或修改每个图像视景 ( 即图像视景中的一个或多个 ) 的像素强度 以使得所感知图像具有减少的感知图像串扰量, 从而改善观看者的观看体验。其主要想法 是从所显示图像中的至少所选像素或每个像素减去一定量的强度, 以补偿来自在前或后续 图像帧的感知到的图像强度泄漏。在一些实施例中, 图像颜色强度标度 (scale) 被重新标 度 (rescale), 以使得所显示像素具有这样的初始强度, 以允许将该初始强度修改到所需的 量。该方法可以经由软件方案来实现并实时地实施, 如下文所述。
这些方法包括向显示器提供图像流, 并调节图像流像素颜色强度以减少多视景显 示器中感知的图像串扰。图像流包括图像时间序列, 其中至少第一图像视景和随后的第二 图像视景以时间顺序方式或同时显示在显示器上。 按照显示器宽度或沿显示器水平尺寸的 函数 ( 非常数 ) 来确定并校正串扰。
在 Smit 等 人 的 期 刊 文 章 “Non-Uniform Crosstalk Reduction for Dynamic Scenes( 动 态 场 景 的 不 均 匀 串 扰 的 减 少 )” (IEEE Virtual Reality Conference 2007 March 10-14, 第 139-146 页 ) 中, 描述了一种以受荧光余辉 (phosphor after-glow) 影响 的立体 CRT 显示器的屏幕高度作为函数来减少不均匀串扰的方法, 其全部内容以引用方式 并入本文中。
参考图 5, 显示器 200 包括从显示器的第一侧 R 延伸到显示器的相对第二侧 L 的水 平尺寸 221、 222、 223( 即显示器的整个宽度 )。 水平尺寸 221、 222、 223 具有在其间限定长度 的第一端 221R、 222R、 223R 和相对第二端 221L、 222L、 223L。水平尺寸 221、 222、 223 由显示器 上从第一端至第二端 ( 或从第二端至第一端 ) 水平延伸过显示器的整个宽度的多个点、 像 素或区域来形成。 水平尺寸可以沿横跨显示器的直线 222 延伸或沿横跨显示器的斜线 221、 223 延伸。
图像或图像的时间序列在显示于显示器上之前被调节或修改, 以减少至少第一图 像视景与第二图像视景之间的感知的显示图像串扰。 该调节包括根据针对水平尺寸的非常 数串扰校正函数对沿水平尺寸的至少所选像素的颜色强度进行修改。
图 6 是在第一方向 DL 和第二方向 DR 上沿水平尺寸的百分比 (% ) 串扰的示例性 曲线图。在许多实施例中,%串扰是整个水平方向 DR 或 DL 或者水平尺寸长度的非常数函 数。在许多实施例中, %串扰是整个水平方向 DR 或 DL 或者水平尺寸长度的非线性函数。在 一些实施例中,%串扰是整个水平方向 DR 或 DL 或者水平尺寸长度的线性函数。在许多实 施例中, 在第一方向 DL 上沿水平尺寸的%串扰函数不同于在第二方向 DR 上沿水平尺寸的% 串扰函数。另外, 水平尺寸可以在第一方向 DL 和第二方向 DR 上沿水平尺寸具有不同的% 串扰。在许多实施例中, 这些在整个水平尺寸上的%串扰值针对特定显示器按照经验来确定, 然后通过曲线拟合分析提供可用于本文所述方法的函数或公式 ( 作为宽度或长度的函 数 )。
在一些实施例中, 每个颜色的颜色强度被重新标度, 使得每个颜色的修改后的强 度在该颜色的颜色强度范围内。所述颜色强度范围可以是任何可用的范围, 例如 0 到 63(6 位 )、 或 0 到 255(8 位 )、 0 到 1023(10 位 )、 或 12 位、 或 14 位或 16 位。因此, 例如, 如果所 需像素颜色强度为 10, 并且修改的像素颜色强度被设定为 0, 则可以将 8 位颜色强度重新标 度为 20 至 255。
图 7 是减少多视景显示器中感知的图像串扰的一个示例性方法的流程图 300。第 一步是在方框 310 处针对第一图像视景识别预期图像, 在第二方框 312 处针对第二图像视 景识别预期图像。在该实例中, 针对每个预期图像视景确定红色颜色强度值 310R、 312R、 绿 色颜色强度值 310G、 312G 以及蓝色颜色强度值 310B、 312B。颜色图 (color map) 可以是任何 可用的颜色图, 包括除示例性 RGB 颜色图之外的颜色图。
感知的图像 ( 方框 320、 322) 是针对每个颜色强度值, 以 1 减去预期图像视景的串 扰百分比加上非预期图像视景的串扰百分比的组合。 例如, 如果预期像素值为 10, 该特定显 示位置处的串扰量为 10%, 并且非预期图像像素值为 100, 那么预测的感知像素值将为 19。 因此, 校正的图像 ( 方框 330、 332) 等于预期图像加上预期图像与预测的感知图像 之间的差值。例如, 如果在预期图像中的给定像素处, 颜色强度应当为 10, 并且由于在该像 素处来自非预期图像的 10%串扰而预测该像素被感知为 19, 则校正的图像中的该像素将 为 1。
例如, 假设显示器具有到达观看者的均匀的 10%串扰, 则 “校正后” 是 90%的校正 预期图像与 10%的校正非预期图像的组合。其中未校正的预期像素值为 10, 未校正的非预 期像素值为 100。 由于 10%的串扰, 对第一图像预测的感知像素值= 0.9*10+0.1*100 = 19。 由于 10%的串扰, 对第二图像预测的感知像素值= 0.9*100+0.1*10 = 91。注意到对于第 一图像, 未校正预测感知像素值与预期像素值之差= 19-10 = 9, 因此第一图像的校正因子 (correction factor) 将为 -9。注意到对于第二图像, 未校正预测感知像素值与预期像素 值之差= 91-100 = -9, 因此第一图像的校正因子将为 9。因此对于第一图像, 由于 10%的 串扰, 校正后预测感知像素值= 0.9*(10-9)+0.1*(100+9) = 11.8。因此对于第二图像, 由 于 10%的串扰, 校正后预测感知像素值= 0.9*(100+9)+0.1*(10-9) = 98.2。这些校正后 预测感知像素值接近于预期值, 然而它们没有完全校正显示器中的串扰。有多种对其进行 改进的方式, 例如在校正后预测感知像素值不等于预期像素值时再次运行循环。
因此, 本方法的一个可能的实施包括 : 对于 i = 1:Image_height( 图像高度 ) ; 并 且对于 j = Image-width( 图像宽度 ) ; 其中 A =第一图像视景颜色强度 ; B =第二图像视景 颜色强度 ; k 和 l 是这样的函数 ( 即公式 ), 其以针对显示器的给定像素行在第一方向 ( 即 k) 和相对的第二方向 ( 即 l) 上水平地沿整个显示器的串扰来表征该显示器。
k = ((0.0000012712*(j)2)-(0.0001655478*(j))+(0.1049456489))
l = ((0.0000012712*(j)2)-(0.0011565091*(j))+(0.3625955732))
Perceived_A_Red(i, j) = ((1
k)*Intendedd_A_Red(i, j)+k*Intended_B_Red(i, j)Corrected_A_Red(i, j) = Intended_A_Red(i, j)+(Intended_A_Red(i, j)-Perceived_A_Red(i, j)))
图 8 是减少多视景显示器中感知的图像串扰的另一示例性方法的流程图 400。第 一步是在方框 410 处针对第一图像视景识别预期图像, 在方框 412 处针对第二图像视景识 别预期图像。在该实例中, 针对每个预期图像视景确定红色颜色强度值 410R、 412R、 绿色颜 色强度值 410G、 412G、 以及蓝色颜色强度值 410B、 412B。
随后, 在方框 415 和方框 417 处各自独立地对预期图像视景 410 和 412 的红色颜 色强度值 410R、 412R、 绿色颜色强度值 410G、 412G、 以及蓝色颜色强度值 410B、 412B 重新标度, 使得方框 430 和方框 432 处的校正图像保持原始颜色强度标度 ( 例如, 对于 8 位标度, 为0 至 255)。 该重新标度使得可以针对所有像素值减少感知的串扰 ( 即, 若不进行重新标度, 则 可能无法针对某些像素值减少感知的串扰 )。一个可能的实施包括 :
1)correction_factor = ((255-((255*(1-maximum_crosstalk_ percentage))+(crosstalk_percentage*0)))) ; 以及
2)Rescaler = 1-(2*maximum_crosstalk_percentage in thedisplay).
该实施假设最大重新标度是必要的。即, 该实施假设对于至少一个像素位置存在 这样的情况 : 预期图像值之一为 255, 并且第二预期图像中的对应像素值为 0。 因此, 该实施 可以通过以下公式来表征, 其中 A =第一图像视景颜色强度 ; B =第二图像视景颜色强度 : Rescaled_A_Red = intended_A_Red*Rescaler+correction factor
Rescaled_B_Red = intended_B_Red*Rescaler+correction factor
Rescaled_A_Green = intended_A_Green*Rescaler+correction
Factor
Rescaled_B_Green = intended_B_Green*Rescaler+correction factor
Rescaled_a_Blue = intended_A_Blue*Rescaler+correction factor
Rescaled_B_Blue = intended_B_Blue*Rescaler+correction factor
感知的图像 ( 方框 320、 322) 是针对每个颜色强度值, 以 1 减去重新标度的图像视 景的串扰百分比再加上重新标度的非预期图像视景的串扰百分比的组合。例如, 如果重新 标度的预期像素值为 10, 该特定显示位置处的串扰量为 10%, 并且重新标度的非预期图像 像素值为 100, 那么预测的感知像素值将为 19。
因此, 校正的图像 ( 方框 330、 332) 等于重新标度的预期图像加上该重新标度的预 期图像与预测的感知图像之间的差值。例如, 如果在重新标度的预期图像中的给定像素处 应当为 10, 并且由于来自非预期图像的 X 量的串扰而预测该像素被感知为 19, 则校正的图 像中的该像素将为 1。
因此, 该方法的一个可能的实施包括 : 对于 i = 1:Image_height ; 并且对于 j = Image-width ; k 和 l 是这样的函数 ( 即公式 ), 其以针对显示器的给定像素行在第一方向 ( 即 k) 和相对的第二方向 ( 即 l) 上水平地沿整个显示器的串扰来表征该显示器。
k = ((0.0000012712*(j)2)-(0.0001655478*(j))+(0.1049456489))
l = ((0.0000012712*(j)2)-(0.0011565091*(j))+(0.3625955732))
Perceived_A_Red(i, j) = ((1-k)*Rescaled_A_Red(i, j)+k*Rescaled_B_Red(i, j)
Corrected_A_Red(i ,j) = Rescaled_A_Red(i ,j)+(Rescaled_A_Red(i , j)-Perceived_A_Red(i, j)))
实例
下文是可用于实现减少多视景显示器中感知的图像串扰的至少所选方法的实例 软件程序代码。
---------------- 感知串扰减少方法 -----------------
下文是感知串扰减少方法的说明 : 确定左右视景的像素 (x, y, z) 的绝对差值, 设 置为 k。以 (100-k×(( 针对该视景的那部分显示器处的串扰百分比 )/255) 来定义同侧百 分比。
----------------- 载入立体像对 -----------------
globe = imread(’ GL_MMM0000.jpg’ ); intended_left = globe(:, 1:640, :) ; intended_right = globe(:, 641:1280, :) ;
intended_left = imread(’ map.tif’ );
intended_right = imread(’ mnt.tif’ );
crosstalk_percentage = .3626 ;
需要确定显示器中的最大串扰量, 见 i、 j、 k、 l 的计算。
------------------ 按像素调整图像尺寸至显示宽度 -----------------
intended_left = imresize(intended_left, [NaN 640]) ; intended_right = imresize(intended_right, [NaN 640]) ; intended_left = double(intended_left) ; intended_right = double(intended_right) ; altered_left = intended_left ; altered_right = intended_right ; ------------------- 分离成红色、 绿色、 蓝色组分 -----------------intended_left_r = intended_left(:, :, 1) ; intended_left_g = intended_left(:, :, 2) ; intended_left_b = intended_left(:, :, 3) ; intended_right_r = intended_right(:, :, 1) ; intended_right_g = intended_right(:, :, 2) ; intended_right_b = intended_right(:, :, 3) ; ------------------- 确定图像尺寸 ------------------Image_size = size(intended_left) ; Image_height = Image_size(1, 1) ; Image_width = Image_size(1, 2) ; Image_width_cropped = Image_width-50 ; -------------------- 定义新的左视景和右视景 ----------------Perceived_left_r = intended_left_r ; Perceived_right_r = intended_right_r ; Corrected_left_r = intended_left_r ; Corrected_right_r = intended_right_r ; Perceived_left_g = intended_left_g ;Perceived_right_g = intended_right_g ;
Corrected_left_g = intended_left_g ;
Corrected_right_g = intended_right_g ;
Perceived_left_b = intended_left_b ;
Perceived_right_b = intended_right_b ;
Corrected_left_b = intended_left_b ;
Corrected_right_b = intended_right_b ;
Predicted_left_r = intended_left_r ;
Perceived_after_correction_left_r = intended_left_r ;
Predicted_right_r = intended_right_r ;
Perceived_after_correction_right_r = intended_right_r ;
Predicted_left_g = intended_left_g ;
Perceived_after_correction_left_g = intended_left_g ;
Predicted_right_g = intended_right_g ;
Perceived_after_correction_right_g = intended_right_g ;
Predicted_left_b = intended_left_b ;
Perceived_after_correction_left_b = intended_left_b ;
Predicted_right_b = intended_right_b ;
Perceived_after_correction_right_b = intended_right_b ;
--- 重新标度 IntL 和 IntR, 以使得 CorL 和 CorR 处于 0 至 255 之间 --
重新标度因子 Rescaler = (max-(2*maximum_adjustment)/max。对于 36.26%的 最大串扰百分比, 适当的重新标度因子 Rescaler = ((255-(2*92.463))/255) = 0.2748。 偏移量 Offset = max_adjustment 或 92.463。
correction_factor = ((255-((255*(1-crosstalk_percentage))+(crosstalk_ percentage*0)))) ;
Rescaler = 1-(2*crosstalk_percentage) ;
Rescaled_left_r = intended_left_r.*Rescaler+correction_factor ;
Rescaled_right_r = intended_right_r.*Rescaler+correction_factor ;
Rescaled_left_g = intended_left_g.*Rescaler+correction_factor ;
Rescaled_right_g = intended_right_g.*Rescaler+correction_factor ;
Rescaled_left_b = intended_left_b.*Rescaler+correction_factor ;
Rescaled_right_b = intended_right_b.*Rescaler+correction_factor ;
------------------ 确定两个视景的感知和校正值 --------------
这部分代码 1) 根据先前确定或预测的串扰百分比公式, 逐像素地 ( 水平地沿整个 显示器 ) 预测如果呈现重新标度的左右视景, 每个视野内将会感知到什么 ; 2) 确定适当的 校正视景图像 ; 步骤 3) 和 4) : 在感知串扰校正之后预测每个视野内将会看到什么的两个方 法可不予考虑并且仅出于理论目的而计算。当前, 显示器仅显示大约中间的 520 个像素, 因 此仅对那些像素进行串扰测量, 因此仅通过适当的重新标度校正那些像素。
for i = 1:Image_height ;for j = 51:Image_width_cropped ; k = ((0.0000012712*(j-50)^2)-(0.0001655478*(j-50))+ (0.1049456489)) ; l = ((0.0000012712*(j-50)^2)-(0.0011565091*(j-50))+ (0.3625955732)) ; Perceived_left_r(i, j) = ((1-k)*Rescaled_left_r(i, j)+ k*Rescaled_right_r(i, j)) ; Corrected_left_r(i, j) = (Rescaled_left_r(i, j)+ (Rescaled_left_r(i, j)-Perceived_left_r(i, j))) ; Perceived_right_r(i, j) = ((1-l)*Rescaled_right_r(i, j)+ l*Rescaled_left_r(i, j)) ; Corrected_right_r(i, j) = (Rescaled_right_r(i, j)+ (Rescaled_right_r(i, j)-Perceived_right_r(i, j))) ; Perceived_after_correction_left_r(i, j) = ((1k)*Corrected_left_r(i, j)+k*Corrected_right_r(i, j)) ; Perceived_after_correction_right_r(i, j) = ((1l)*Corrected_right_r(i, j)+l*Corrected_left_r(i, j)) ; Perceived_left_g(i, j) = ((1-k)*Rescaled_left_g(i, j)+ k*Rescaled_right_g(i, j)) ; Corrected_left_g(i, j) = (Rescaled_left_g(i, j)+ (Rescaled_left_g(i, j)-Perceived_left_g(i, j))) ; Perceived_right_g(i, j) = ((1-l)*Rescaled_right_g(i, j)+ l*Rescaled_left_g(i, j)) ; Corrected_right_g(i, j) = (Rescaled_right_g(i, j)+ (Rescaled_right_g(i, j)-Perceived_right_g(i, j))) ; Perceived_after_correction_left_g(i, j) = ((1k)*Corrected_left_g(i, j)+k*Corrected_right_g(i, j)) ; Perceived_after_correction_right_g(i, j) = ((1l)*Corrected_right_g(i, j)+l*Corrected_left_g(i, j)) ; Perceived_left_b(i, j) = ((1-k)*Rescaled_left_b(i, j)+ k*Rescaled_right_b(i, j)) ; Corrected_left_b(i, j) = (Rescaled_left_b(i, j)+ (Rescaled_left_b(i, j)-Perceived_left_b(i, j))) ; Perceived_right_b(i, j) = ((1-l)*Rescaled_right_b(i, j)+ l*Rescaled_left_b(i, j)) ; Corrected_right_b(i, j) = (Rescaled_right_b(i, j)+ (Rescaled_right_b(i, j)-Perceived_right_b(i, j))) ; Perceived_after_correction_left_b(i, j) = ((1k)*Corrected_left_b(i, j)+k*Corrected_right_b(i, j)) ;Perceived_after_correction_right_b(i, j) = ((1l)*Corrected_right_b(i, j)+l*Corrected_left_b(i, j)) ; Predicted_left_r(i, j) = ((1-k)*Corrected_left_r(i, j)+ k*Rescaled_right_r(i, j)) ; Predicted_right_r(i, j) = ((1-l)*Corrected_right_r(i, j)+ l*Rescaled_left_r(i, j)) ; Predicted_left_g(i, j) = ((1-k)*Corrected_left_g(i, j)+ k*Rescaled_right_g(i, j)) ; Predicted_right_g(i, j) = ((1-l)*Corrected_right_g(i, j)+ l*Rescaled_left_g(i, j)) ; Predicted_left_b(i, j) = ((1-k)*Corrected_left_b(i, j)+ k*Rescaled_right_b(i, j)) ; Predicted_right_b(i, j) = ((1-l)*Corrected_right_b(i, j)+ l*Rescaled_left_b(i, j)) ; endend-------------------- 恢复原始文件格式 ------------------
再一次, Predicted( 预测 ) 和 Perceived_after_correction( 校正后感知 ) 步骤 可以忽略。
Corrected_left_r = uint8(Corrected_left_r) ;
Corrected_right_r = uint8(Corrected_right_r) ;
Corrected_left_g = uint8(Corrected_left_g) ;
Corrected_right_g = uint8(Corrected_right_g) ;
Corrected_left_b = uint8(Corrected_left_b) ;
Corrected_right_b = uint8(Corrected_right_b) ;
Predicted_left_r = uint8(Predicted_left_r) ;
Predicted_right_r = uint8(Predicted_right_r) ;
Predicted_left_g = uint8(Predicted_left_g) ;
Predicted_right_g = uint8(Predicted_right_g) ;
Predicted_left_b = uint8(Predicted_left_b) ;
Predicted_right_b = uint8(Predicted_right_b) ;
Perceived_left_r = uint8(Perceived_left_r) ;
Perceived_right_r = uint8(Perceived_right_r) ;
Perceived_left_g = uint8(Perceived_left_g) ;
Perceived_right_g = uint8(Perceived_right_g) ;
Perceived_left_b = uint8(Perceived_left_b) ;
Perceived_right_b = uint8(Perceived_right_b) ;
Perceived_after_correction_left_r = uint8(Perceived_after_correction_ left_r) ;
Perceived_after_correction_right_r = uint8(Perceived_after_correction_right_r) ;
Perceived_after_correction_left_g = uint8(Perceived_after_correction_ left_g) ;
Perceived_after_correction_right_g = uint8(Perceived_after_ correction_right_g) ;
Perceived_after_correction_left_b = uint8(Perceived_after_correction_ left_b) ;
Perceived_after_correction_right_b = uint8(Perceived_after_ correction_right_b) ;
---------------------- 组合 r、 g、 b 层 -----------------
再 一 次, Predicted( 预 测 )、 Perceived( 感 知 ) 和 Perceived_after_ correction( 校正后感知 ) 步骤可以忽略。
altered_left(:, :, 1) = Corrected_left_r ;
altered_left(:, :, 2) = Corrected_left_g ;
altered_left(:, :, 3) = Corrected_left_b ; altered_right(:, :, 1) = Corrected_right_r ;
altered_right(:, :, 2) = Corrected_right_g ;
altered_right(:, :, 3) = Corrected_right_b ;
predicted_left(:, :, 1) = Predicted_left_r ;
predicted_left(:, :, 2) = Predicted_left_g ;
predicted_left(:, :, 3) = Predicted_left_b ;
predicted_right(:, :, 1) = Predicted_right_r ;
predicted_right(:, :, 2) = Predicted_right_g ;
predicted_right(:, :, 3) = Predicted_right_b ;
Perceived_left(:, :, 1) = Perceived_left_r ;
Perceived_left(:, :, 2) = Perceived_left_g ;
Perceived_left(:, :, 3) = Perceived_left_b ;
Perceived_right(:, :, 1) = Perceived_right_r ;
Perceived_right(:, :, 2) = Perceived_right_g ;
Perceived_right(:, :, 3) = Perceived_right_b ;
Perceived_after_correction_left(:, :, 1) = Perceived_after_correction_ left_r ;
Perceived_after_correction_left(:, :, 2) = Perceived_after_correction_ left_g ;
Perceived_after_correction_left(:, :, 3) = Perceived_after_correction_ left_b ;
Perceived_after_correction_right(:, :, 1) = Perceived_after_correction_ right_r ;
Perceived_after_correction_right(:, :, 2) = Perceived_after_correction_
right_g ;
Perceived_after_correction_right(:, :, 3) = Perceived_after_correction_ right_b ;
------------------- 将图像写入文件 ---------------
不需要写入 Perceived 、 Predicted 或 Predicted_after_correction。
imwrite(uint8(altered_left), ’ CPCR_map.tif’ , ’ TIFF’ );
imwrite(uint8(altered_right), ’ CPCR_mnt.tif’ , ’ TIFF’ );
imwrite(uint8(Perceived_left), ’ CPCR_map_perceived.tif’ , ’ TIFF’ );
imwrite(uint8(Perceived_right), ’ CPCR_mnt_perceived.tif’ , ’ TIFF’ );
imwrite(uint8(predicted_left), ’ CPCR_map_predicted.tif’ , ’ TIFF’ );
imwrite(uint8(predicted_right), ’ CPCR_mnt_predicted.tif’ , ’ TIFF’ );
imwrite(uint8(Perceived_after_correction_left), ’ CPCR_map_predicted_ afterPCR.tif’ , ’ TIFF’ );
imwrite(uint8(Perceived_after_correction_right), ’ CPCR_mnt_predicted_ afterPCR.tif’ , ’ TIFF’ );
因此, 公开了 “减少多视景显示器中感知的图像串扰的方法” 的实施例。本领域技 术人员将理解, 能够以除本发明所公开实施例之外的实施例来实施。本发明所公开的实施 例意在说明而不是限制, 本发明仅由所附权利要求书及其等同物来限制。