THREE DIMENSIONAL IMAGE DISPLAY

In one example, a method for displaying three dimensional images can include generating a three dimensional image. The method can also include detecting a field of view of a user based on a position and orientation of the head of the user. The method can also include separating the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of a plurality of display panels. Furthermore, the method can include modifying the plurality of frames based on a depth of each pixel in the three dimensional image. Additionally, the method can include displaying the three dimensional image using the plurality of display panels.

TECHNICAL FIELD

This disclosure relates generally to a three dimensional display and specifically, but not exclusively, to generating a three dimensional display using a number of display panels.

BACKGROUND

Computing devices can be electronically coupled to any suitable display device to display images. In some examples, the display device can generate a two dimensional image or a three dimensional image. Generating a three dimensional image may rely upon stereoscopic displays using an active shutter system or a polarized three dimensional display system. In some examples, three dimensional displays can also use autostereoscopy techniques, such as parallax barriers, to display three dimensional images.

In some cases, the same numbers are used throughout the disclosure and the figures to reference like components and features. Numbers in the100series refer to features originally found inFIG. 1; numbers in the200series refer to features originally found inFIG. 2; and so on.

DESCRIPTION OF THE EMBODIMENTS

As discussed above, computing devices can display three dimensional images using various techniques. However, many techniques include generating stereoscopic images with glasses or active shutter systems to provide different images to each eye. The techniques described herein use any suitable number of display panels and a reimaging plate to project a three dimensional image. In some embodiments, the three dimensional image is generated based on separating or splitting a three dimensional image into separate two dimensional images to be displayed on each display panel without generating separate left eye images and right eye images. The separate two dimensional images can be blended, in some examples, based on a depth of each pixel in the three dimensional image. In some embodiments, pixels can also be rendered as transparent to avoid displaying occluded or background objects.

In some embodiments described herein, a system for displaying three dimensional images can include a backlight panel to project light through a plurality of display panels and a processor to generate a three dimensional image. The processor can also detect a center of a field of view of a user based on a facial characteristic of the user. Additionally, the processor can separate the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels. Furthermore, the processor can modify the plurality of frames based on a depth of each pixel in the three dimensional image and display the three dimensional image using the plurality of display panels. The techniques described herein can enable a three dimensional object to be viewed without stereoscopic glasses.

Reference in the specification to “one embodiment” or “an embodiment” of the disclosed subject matter means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the disclosed subject matter. Thus, the phrase “in one embodiment” may appear in various places throughout the specification, but the phrase may not necessarily refer to the same embodiment.

FIG. 1illustrates a block diagram of a three dimensional display using multiple display panels. In some embodiments, the three dimensional display device100can include a backlight panel102, and display panels104,106, and108. The three dimensional display device100can also include a reimaging plate110.

In some embodiments, the backlight panel102can include at least two scattering diffusors and at least one dual brightness enhancing film (DBEF) layer. The scattering diffusors can make emitted light uniform across the backlight panel102. In some examples, the DBEF layer can focus light into a more narrow emission profile, which can double the apparent brightness of the backlight panel102. In some embodiments, the backlight panel102can use light emitting diodes (LEDs), among others, to project light through the display panels104,106, and108. In some embodiments, the backlight panel102can be replaced with an organic light-emitting diode (OLED) or micro-LEDs, among others. For example, OLED and micro-LED embodiments may not use a backlight panel. In some examples, each display panel104,106, and108can be a liquid crystal display, or any other suitable display, that does not include polarizers. In some embodiments, as discussed in greater detail below in relation toFIG. 5, each of the display panels104,106, and108can be rotated in relation to one another to remove any Moiré effect. In some embodiments, the reimaging plate110can generate a three dimensional image112based on the display output from the displays104,106, and108. In some examples, the reimaging plate110can include a privacy filter to limit a field of view for individuals located proximate a user of the three dimensional display device100and to prevent ghosting, wherein a second unintentional image can be viewed by a user of the three dimensional display device100. The unintentional images can result from unintentional reflections by the reimaging plate outside of a forty-five degree viewing angle. The reimaging plate110can be placed at any suitable angle in relation to display panel108. For example, the reimaging plate110may be placed at a forty-five degree angle in relation to display panel108to project or render the three dimensional image112.

In some embodiments, the three dimensional display device100can include any suitable number of polarizers. For example, linear polarizers can be placed between the backlight panel102and the display panel104, between the display panel104and the display panel106, and between the display panel106and display panel108. Additionally, a linear polarizer can reside between the display panel108and the reimaging plate110or a user. Accordingly, the backlight panel102can project light through any suitable number of linear polarizers.

It is to be understood that the block diagram ofFIG. 1is not intended to indicate that the three dimensional display device100is to include all of the components shown inFIG. 1. Rather, the three dimensional display device100can include fewer or additional components not illustrated inFIG. 1(e.g., additional polarizers, additional display panels, etc.). In some examples, the three dimensional display device100may include two or more display panels.

FIG. 2is a block diagram of an example of a computing device electronically coupled to a three dimensional display using multiple display panels. The computing device200may be, for example, a mobile phone, laptop computer, desktop computer, or tablet computer, among others. The computing device200may include processors202that are adapted to execute stored instructions, as well as a memory device204that stores instructions that are executable by the processors202. The processors202can be single core processors, multi-core processors, a computing cluster, or any number of other configurations. The memory device204can include random access memory, read only memory, flash memory, or any other suitable memory systems. The instructions that are executed by the processors202may be used to implement a method that can generate a three dimensional image.

The processors202may also be linked through the system interconnect206(e.g., PCI®, PCI-Express®, NuBus, etc.) to a display interface208adapted to connect the computing device200to a three dimensional display device100. As discussed above, the three dimensional display device100may include a backlight panel, any number of display panels, any number of polarizers, and a reimaging plate. In some embodiments, the three dimensional display device100can be a built-in component of the computing device200. The three dimensional display device100can include light emitting diodes (LEDs), active matrix organic light-emitting diodes (AMOLEDs), and micro-LEDs, among others.

In addition, a network interface controller (also referred to herein as a NIC)210may be adapted to connect the computing device200through the system interconnect206to a network (not depicted). The network (not depicted) may be a cellular network, a radio network, a wide area network (WAN), a local area network (LAN), or the Internet, among others.

The processors202may be connected through a system interconnect206to an input/output (I/O) device interface212adapted to connect the computing device200to one or more I/O devices214. The I/O devices214may include, for example, a keyboard and a pointing device, wherein the pointing device may include a touchpad or a touchscreen, among others. The I/O devices214may be built-in components of the computing device200, or may be devices that are externally connected to the computing device200.

In some embodiments, the processors202may also be linked through the system interconnect206to any storage device216that can include a hard drive, an optical drive, a USB flash drive, an array of drives, or any combinations thereof. In some embodiments, the storage device216can include any suitable applications. In some embodiments, the storage device216can include an image creator218, user detector220, an image modifier222, and an image transmitter224. In some embodiments, the image creator218can generate a three dimensional image. For example, the image creator218can generate a three dimensional image using any suitable modeling and rendering software techniques. The user detector220can detect a center of a field of view of a user based on a facial characteristic of the user. For example, the user detector220may detect facial characteristics, such as eyes, to determine a user's gaze. In some embodiments, the user detector220can determine a field of view of the user based on a distance between the user and the display device100and a direction of the user's eyes. The user detector220can also determine a center of the field of view to enable a three dimensional image to be properly displayed.

In some embodiments, the image modifier222can separate the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels. For example, each frame can correspond to a display panel that is to display a two dimensional image split from the three dimensional image based on a depth of the display panel. In some examples, determining portions of the three dimensional image to be displayed by each display panel can be dependent on the field of view of the user. In some embodiments, the image modifier222can also modify the plurality of frames based on a depth of each pixel in the three dimensional image. For example, the image modifier222can detect depth data, which can indicate a depth of pixels to be displayed within the three dimensional display device100. For example, depth data can indicate that a pixel is to be displayed on a display panel of the three dimensional display device100closest to the user, a display panel farthest from the user, or any display panel between the closest display panel and the farthest display panel. In some examples, the image modifier222can modify or blend pixels based on the depth of the pixels and modify pixels to prevent occluded background objects from being displayed. Blending techniques and occlusion techniques are described in greater detail below in relation toFIG. 3. Furthermore, the image transmitter224can display the three dimensional image using the plurality of display panels. For example, the image transmitter224can transmit the modified plurality of frames to the corresponding display panels in the three dimensional display device100.

It is to be understood that the block diagram ofFIG. 2is not intended to indicate that the computing device200is to include all of the components shown inFIG. 2. Rather, the computing device200can include fewer or additional components not illustrated inFIG. 2(e.g., additional memory components, embedded controllers, additional modules, additional network interfaces, etc.). Furthermore, any of the functionalities of the image creator218, user detector220, image modifier222, and image transmitter224may be partially, or entirely, implemented in hardware and/or in the processor202. For example, the functionality may be implemented with an application specific integrated circuit, logic implemented in an embedded controller, or in logic implemented in the processors202, among others. In some embodiments, the functionalities of the image creator218, user detector220, image modifier222, and image transmitter224can be implemented with logic, wherein the logic, as referred to herein, can include any suitable hardware (e.g., a processor, among others), software (e.g., an application, among others), firmware, or any suitable combination of hardware, software, and firmware.

FIG. 3illustrates a process flow diagram for generating a three dimensional image to be displayed by a three dimensional display with multiple display panels. The method300illustrated inFIG. 3can be implemented with any suitable computing component or device, such as the computing device200ofFIG. 2and the three dimensional display device100ofFIG. 1.

At block302, the image creator218can generate a three dimensional image. For example, the image creator218can use any suitable image rendering software to create a three dimensional image. In some examples, the image creator218can detect a two dimensional image and generate a three dimensional model from the two dimensional image. For example, the image creator218can transform the two dimensional image by generating depth information for the two dimensional image to result in a three dimensional image. In some examples, the image creator218can also detect a three dimensional image from any camera device that captures images in three dimensions.

At block304, the user detector220can detect a center of a field of view of a user based on a facial characteristic or a position and orientation of the head of the user. In some embodiments, the user detector220can use any combination of sensors and cameras to detect a presence of a user proximate a three dimensional display device. In response to detecting a user, the user detector220can detect facial features of the user, such as eyes, and an angle of the eyes in relation to the three dimensional display device. The user detector220can detect the field of view of the user based on the direction in which the eyes of the user are directed and a distance of the user from the three dimensional display device. In some embodiments, the user detector220can also detect a center of the field of view for the user to enable the three dimensional display device to accurately display the three dimensional image.

At block306, the image modifier222can separate the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels. For example, the image modifier222can generate a frame buffer that includes a frame to be displayed by each display panel in the three dimensional display device. Each frame can correspond to a different depth of the three dimensional image to be displayed. For example, a portion of the three dimensional image closest to the user can be split or separated into a frame to be displayed by the display panel closest to the user. In some embodiments, the image modifier222can use the field of view of the user to separate the three dimensional image. For example, the field of view of the user can indicate depth values for pixels from the three dimensional image, which can indicate which frame is to include the pixels. The frame buffer is described in greater detail below in relation toFIG. 4.

At block308, the image modifier222can modify the plurality of frames based on a depth of each pixel in the three dimensional image. For example, the image modifier222can blend the pixels in the three dimensional image to enhance the display of the three dimensional image. The blending of the pixels can enable the three dimensional display device to display an image with additional depth features. For example, edges of objects in the three dimensional image can be displayed with additional depth characteristics based on blending pixels. In some embodiments, the image modifier222can blend pixels based on formulas presented in Table 1 below.

In Table 1, the Z value indicates a depth of a pixel to be displayed and values T0, T1, and T2correspond to depth thresholds indicating a display panel to display the pixels. For example, T0can correspond to pixels to be displayed with the display panel closest to the user, T1can correspond to pixels to be displayed with the center display panel between the closest display panel to the user and the farthest display panel to the user, and T2can correspond to pixels to be displayed with the farthest display panel from the user. In some embodiments, each display panel includes a corresponding pixel shader, which is executed for each pixel or vertex of the three dimensional model. Each pixel shader can generate a color value to be displayed for each pixel.

In some embodiments, the image modifier222can detect that a pixel value corresponds to at least two of the display panels, detect that the pixel value corresponds to an occluded object, and modify the pixel value by displaying transparent pixels on one of the display panels nearest to the user. An occluded object, as referred to herein, can include any background object that should not be viewable to a user. In some examples, the pixels with Z<T0can be sent to the pixel shader for each display panel. The front display panel pixel shader can render a pixel with normal color values, which is indicated with a blend value of one. In some examples, the middle or center display panel pixel shader and back display panel pixel shader also receive the same pixel value. However, the center display panel pixel shader and back display panel pixel shader can display the pixel as a transparent pixel by converting the pixel color to white. For example, display panels in a three dimensional display device can be illuminated by a single backlight with white light. In some examples, when a pixel of a display panel is rendered as black, a nematic liquid crystal in a display panel can orient in a position which blocks light in phase with a rear polarizer by placing the liquid crystal out of phase with a front polarizer. When the pixel is set to white, the liquid crystal of the display panel can shift ninety degrees in orientation, which allows light from the backlight to pass through. A pixel on the front and middle display panels could be perceived as “transparent” if the pixel allows light to pass through from the rear panel, which is already a color due to the color filters on the back display panel. In some embodiments, setting a pixel to white is the same as allowing light to pass through a pixel. Displaying a black pixel can prevent occluded pixels from contributing to an image. Therefore, for a pixel rendered on a front display panel, the pixels directly behind the front pixel may not provide any contribution to the perceived image. The occlusion techniques described herein prevent background objects from being displayed if a user should not be able to view the background objects.

Still at block308, in some embodiments, the image modifier222can also blend a pixel value between two of the plurality of display panels. For example, the image modifier222can blend pixels with a pixel depth Z between T0and T1to be displayed on the front display panel and the middle display panel. For example, the front display panel can display pixel colors based on values indicated by dividing a second threshold value (T1) minus a pixel depth by the second threshold value minus a first threshold value (T0). The middle display panel can display pixel colors based on dividing a pixel depth minus the first threshold value by the second threshold value minus the first threshold value. The back display panel can render a white value to indicate a transparent pixel.

In some embodiments, when the pixel depth Z is between T1and T2, the front display panel can render a pixel color based on a zero value for alpha. In some examples, setting alpha equal to zero effectively discards a pixel which does not need to be rendered and has no effect on the pixels located farther away from the user or in the background. The middle display panel can display pixel colors based on values indicated by dividing a third threshold value (T2) minus a pixel depth by the third threshold value minus a second threshold value (T0). The back display panel can display pixel colors based on dividing a pixel depth minus the second threshold value by the third threshold value minus the second threshold value. In some embodiments, if a pixel depth Z is greater than the third threshold T2, the pixels can be discarded from the front and middle display panels, while the back display panel can render normal color values. Discarding a pixel, as referred to herein, can occur when a pixel shader does not generate output for a pixel. In some embodiments, the blending techniques of block308are not applied to embodiments in which the display panels are comprised of OLED display panels or micro-LED display panels.

At block310, the image transmitter224can display the three dimensional image using the plurality of display panels. For example, the image transmitter224can send the pixel values generated based on Table 1 to the corresponding display panels of the three dimensional display device. For example, each pixel of each of the display panels may render a transparent color of white, a normal pixel color corresponding to a blend value of one, a blended value between two proximate display panels, or a pixel may not be rendered. In some embodiments, the image transmitter224can update the pixel values at any suitable rate and using any suitable technique.

The process flow diagram ofFIG. 3is not intended to indicate that the operations of the method300are to be executed in any particular order, or that all of the operations of the method300are to be included in every case. Additionally, the method300can include any suitable number of additional operations. For example, the user detector220can also detect a movement of a user in a two dimensional plane proximate the plurality of display panels, and regenerate the three dimensional image based on the movement of the user. In some embodiments, the image modifier222can regenerate the three dimensional image by modifying the depth of pixels determined at block308based on a new position of the user following the movement. In some embodiments, the image transmitter224can display a crosshair and circle for each of the display panels to enable alignment of the plurality of display panels prior to displaying a three dimensional image. Following alignment of the plurality of display panels, the user detector2220can use a location of a user as an initial viewing point and create a viewing frustum. A viewing frustum, as referred to herein, can include a region of a three dimensional image that is to be displayed based on the position and orientation of the user. In some examples, the user's position is tracked and the viewing frustum is updated thereby updating a rendering of a three dimensional model or image.

FIG. 4is an example three dimensional frame buffer. The frame buffer400illustrates an example image of a teapot to be displayed by a three dimensional display device100. In some embodiments, the computing device200ofFIG. 2can generate the three dimensional image of a teapot as a two dimensional image comprising at least three frames, wherein each frame corresponds to a separate display panel. For example, frame buffer400can include a separate two dimensional image for each display panel of a three dimensional display device. In some embodiments, frames402,404, and406are included in a two dimensional rendering of the frame buffer400. For example, the frames402,404, and406can be stored in a two dimensional environment that has a viewing region three times the size of the display panels. In some examples, the frames402,404, and406can be stored proximate one another such that frames402,404, and406can be viewed and edited in rendering software simultaneously.

In the example ofFIG. 4, the frame buffer400includes three frames402,404, and406that can be displayed with three separate display panels. As illustrated inFIG. 4, the pixels to be displayed by a front display panel that is closet to a user are separated into frame402. Similarly, the pixels to be displayed by a middle display panel are separated into frame404, and the pixels to be displayed by a back display panel farthest from a user are separated into frame406.

In some embodiments, the blending techniques and occlusion modifications described in block308ofFIG. 3above can be applied to frames402,404, and406of the frame buffer400as indicated by arrow408. The result of the blending techniques and occlusion modification is a three dimensional image410displayed with multiple display panels of a three dimensional display device.

It is to be understood that the frame buffer400can include any suitable number of frames depending on a number of display panels in a three dimensional display device. For example, the frame buffer400may include two frames for each image to be displayed, four frames, or any other suitable number.

FIG. 5is an example image depicting alignment and calibration of a three dimensional display using multiple display panels. The alignment and calibration techniques can be applied to any suitable display device such as the three dimensional display device100ofFIG. 1.

In some embodiments, each display panel of a three dimensional display device can be rotated to avoid a Moiré effect. In some examples, a calibration system500can use any suitable alignment indicators, such as crosshairs502A and502B and circles504A and504B, to determine how to rotate or calibrate each display panel. For example, the crosshairs502A and502B can indicate if two display panels are to be rotated forwards or backwards in relation to each other. In some examples, the crosshairs502A and502B can include a center point at a predetermined distance from a user. For example, the predetermined distance can be equal to an arm's length, or any other suitable distance. In some embodiments, the circles504A and504B can indicate if a display panel is to be shifted or rotated in a parallel direction to the three dimensional display device. For example, the circles504A and504B can indicate if a display panel is to be rotated such that a top and bottom of a display panel are rotated clockwise or counterclockwise around a center of the display panel.

It is to be understood that the block diagram ofFIG. 5is not intended to indicate that the calibration system500is to include all of the components shown inFIG. 5. Rather, the calibration system500can include fewer or additional components not illustrated inFIG. 5(e.g., additional display panels, additional alignment indicators, etc.).

FIG. 6is an example block diagram of a non-transitory computer readable media for generating a three dimensional image to be displayed by a three dimensional display with multiple display panels. The tangible, non-transitory, computer-readable medium600may be accessed by a processor602over a computer interconnect604. Furthermore, the tangible, non-transitory, computer-readable medium600may include code to direct the processor602to perform the operations of the current method.

The various software components discussed herein may be stored on the tangible, non-transitory, computer-readable medium600, as indicated inFIG. 6. For example, an image creator606can generate a three dimensional image using any suitable modeling and rendering software techniques. A user detector608can detect a center of a field of view of a user based on a facial characteristic of the user. For example, the user detector608may detect facial characteristics, such as eyes, or any other suitable facial feature, to determine a field of view of a user. In some embodiments, an image modifier610can separate the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels. For example, each frame can correspond to a display panel that is to display a two dimensional image split from the three dimensional image based on a depth of the display panel. The image modifier610can also modify the plurality of frames based on a depth of each pixel in the three dimensional image. For example, the image modifier610can apply any suitable blending or occlusion techniques described herein. Furthermore, an image transmitter612can display the three dimensional image using the plurality of display panels. For example, the image transmitter can transmit the modified plurality of frames to the corresponding display panels in the three dimensional display device.

It is to be understood that any suitable number of the software components shown inFIG. 6may be included within the tangible, non-transitory computer-readable medium600. Furthermore, any number of additional software components not shown inFIG. 6may be included within the tangible, non-transitory, computer-readable medium600, depending on the specific application.

In some examples, a system for displaying three dimensional images can include a backlight panel to project light through a plurality of display panels and a processor to generate a three dimensional image. The processor can also detect a field of view of a user based on a facial characteristic of the user and separate the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels. Additionally, the processor can modify the plurality of frames based on a depth of each pixel in the three dimensional image and display the three dimensional image using the plurality of display panels.

The system of Example 1, wherein the plurality of panels comprise three liquid crystal display (LCD) panels, three micro-LED display panels, or three organic light-emitting diode display panels.

The system of Example 2, wherein a first linear polarizer resides between the backlight panel and a first of the LCD panels, a second linear polarizer resides between the first of the LCD panels and a second of the LCD panels, a third linear polarizer resides between the second of the LCD panels, and a third of the LCD panels, and a fourth linear polarizer resides between the third of the LCD panels and a user.

The system of Example 3, comprising a reimaging plate located at a forty-five degree angle to the third of the LCD panels.

The system of Example 1, wherein the processor can detect that a pixel value corresponds to at least two of the display panels, detect that the pixel value corresponds to an occluded object, and modify the pixel value by displaying transparent pixels on one of the display panels farthest from the user.

The system of Example 1, wherein the processor is to blend a pixel value between two of the plurality of display panels.

The system of Example 1, wherein the processor is to generate the three dimensional image as a two dimensional image comprising at least two frames, wherein each frame corresponds to a separate display panel.

The system of Example 1, wherein the processor is to display a pair of crosshairs with a center point at a predetermined distance from the user and circle for each of the display panels to enable alignment of the plurality of display panels.

The system of Example 1, wherein the processor is to detect a movement of the user in a two dimensional plane proximate the plurality of display panels, and regenerate the three dimensional image based on the movement of the user.

The system of Example 1, wherein the pixels of the three dimensional image that are displayed on each of the plurality of display panels are based on a depth threshold.

In some embodiments, a method for displaying three dimensional images can include generating a three dimensional image and detecting a field of view of a user based on a facial characteristic of the user. The method can also include separating the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of a plurality of display panels and modifying the plurality of frames based on a depth of each pixel in the three dimensional image. Furthermore, the method can include displaying the three dimensional image using the plurality of display panels.

The method of Example 11, comprising displaying the three dimensional image with three liquid crystal display (LCD) panels, three micro-LED display panels, or three organic light-emitting diode display panels.

The method of Example 12, wherein displaying the three dimensional image comprises projecting light through a first linear polarizer that resides between a backlight panel and a first of the LCD panels, a second linear polarizer that resides between the first of the LCD panels and a second of the LCD panels, a third linear polarizer that resides between the second of the LCD panels, and a third of the LCD panels, and a fourth linear polarizer that resides between the third of the LCD panels and a user.

The method of Example 13, wherein displaying the three dimensional image comprises projecting the three dimensional image through a reimaging plate located at a forty-five degree angle to the third of the LCD panels.

The method of Example 11 comprising detecting that a pixel value corresponds to at least two of the display panels, detecting that the pixel value corresponds to an occluded object, and modifying the pixel value by displaying transparent pixels on one of the display panels farthest from the user.

The method of Example 11 comprising blending a pixel value between two of the plurality of display panels.

The method of Example 11 comprising generating the three dimensional image as a two dimensional image comprising at least two frames, wherein each frame corresponds to a separate display panel.

The method of Example 11 comprising displaying a pair of crosshairs with a center point at a predetermined distance from the user and circle for each of the display panels to enable alignment of the plurality of display panels.

The method of Example 11 comprising detecting a movement of the user in a two dimensional plane proximate the plurality of display panels, and regenerate the three dimensional image based on the movement of the user.

In some embodiments, a non-transitory computer-readable medium for display three dimensional images can include a plurality of instructions that in response to being executed by a processor, cause the processor to generate a three dimensional image and detect a center of a field of view of a user based on a facial characteristic of the user. The plurality of instructions can also cause the processor to separate the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels, modify the plurality of frames based on a depth of each pixel in the three dimensional image, and display the three dimensional image using the plurality of display panels.

The non-transitory computer-readable medium of Example 20, wherein the plurality of instructions cause the processor to generate the three dimensional image as a two dimensional image comprising at least two frames, wherein each frame corresponds to a separate display panel.

The non-transitory computer-readable medium of Example 20, wherein the plurality of instructions cause the processor to detect a movement of the user in a two dimensional plane proximate the plurality of display panels, and regenerate the three dimensional image based on the movement of the user.

In some embodiments, a system for displaying three dimensional images can include a backlight panel to project light through a plurality of display panels and a processor comprising means for generating a three dimensional image and means for detecting a field of view of a user based on a facial characteristic of the user. The processor can also comprise means for separating the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels, means for modifying the plurality of frames based on a depth of each pixel in the three dimensional image, and means for displaying the three dimensional image using the plurality of display panels.

The system of Example 23, wherein the plurality of panels comprise three liquid crystal display (LCD) panels, three micro-LED display panels, or three organic light-emitting diode display panels.

The system of Example 24, wherein a first linear polarizer resides between the backlight panel and a first of the LCD panels, a second linear polarizer resides between the first of the LCD panels and a second of the LCD panels, a third linear polarizer resides between the second of the LCD panels, and a third of the LCD panels, and a fourth linear polarizer resides between the third of the LCD panels and a user.

The system of Example 25 comprising a reimaging plate located at a forty-five degree angle to the third of the LCD panels.

The system of Example 23, wherein the processor comprises means for detecting that a pixel value corresponds to at least two of the display panels, means for detecting that the pixel value corresponds to an occluded object, and means for modifying the pixel value by displaying transparent pixels on one of the display panels farthest from the user.

The system of Example 23, 24, 25, 26, or 27, wherein the processor comprises means for blending a pixel value between two of the plurality of display panels.

The system of Example 23, 24, 25, 26, or 27, wherein the processor comprises means for generating the three dimensional image as a two dimensional image comprising at least two frames, wherein each frame corresponds to a separate display panel.

The system of Example 23, 24, 25, 26, or 27, wherein the processor comprises means for displaying a pair of crosshairs with a center point at a predetermined distance from the user and circle for each of the display panels to enable alignment of the plurality of display panels.

The system of Example 23, 24, 25, 26, or 27, wherein the processor comprises means for detecting a movement of the user in a two dimensional plane proximate the plurality of display panels, and regenerating the three dimensional image based on the movement of the user.

The system of Example 23, 24, 25, 26, or 27, wherein the pixels of the three dimensional image that are displayed on each of the plurality of display panels are based on a depth threshold.

In some embodiments, a method for displaying three dimensional images can include generating a three dimensional image and detecting a field of view of a user based on a facial characteristic of the user. The method can also include separating the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of a plurality of display panels and modifying the plurality of frames based on a depth of each pixel in the three dimensional image. Furthermore, the method can include displaying the three dimensional image using the plurality of display panels.

The method of Example 33, comprising displaying the three dimensional image with three liquid crystal display (LCD) panels, three micro-LED display panels, or three organic light-emitting diode display panels.

The method of Example 34, wherein displaying the three dimensional image comprises projecting light through a first linear polarizer that resides between a backlight panel and a first of the LCD panels, a second linear polarizer that resides between the first of the LCD panels and a second of the LCD panels, a third linear polarizer that resides between the second of the LCD panels, and a third of the LCD panels, and a fourth linear polarizer that resides between the third of the LCD panels and a user.

The method of Example 35, wherein displaying the three dimensional image comprises projecting the three dimensional image through a reimaging plate located at a forty-five degree angle to the third of the LCD panels.

The method of Example 33 comprising detecting that a pixel value corresponds to at least two of the display panels, detecting that the pixel value corresponds to an occluded object, and modifying the pixel value by displaying transparent pixels on one of the display panels farthest from the user.

The method of Example 33, 34, 35, 36, or 37 comprising blending a pixel value between two of the plurality of display panels.

The method of Example 33, 34, 35, 36, or 37 comprising generating the three dimensional image as a two dimensional image comprising at least two frames, wherein each frame corresponds to a separate display panel.

The method of Example 33, 34, 35, 36, or 37 comprising displaying a pair of crosshairs with a center point at a predetermined distance from the user and circle for each of the display panels to enable alignment of the plurality of display panels.

The method of Example 33, 34, 35, 36, or 37 comprising detecting a movement of the user in a two dimensional plane proximate the plurality of display panels, and regenerate the three dimensional image based on the movement of the user.

In some embodiments, a non-transitory computer-readable medium for display three dimensional images can include a plurality of instructions that in response to being executed by a processor, cause the processor to generate a three dimensional image and detect a center of a field of view of a user based on a facial characteristic of the user. The plurality of instructions can also cause the processor to separate the three dimensional image into a plurality of frames based on the field of view of the user, wherein each frame corresponds to one of the display panels, modify the plurality of frames based on a depth of each pixel in the three dimensional image, and display the three dimensional image using the plurality of display panels.

The non-transitory computer-readable medium of Example 42, wherein the plurality of instructions cause the processor to generate the three dimensional image as a two dimensional image comprising at least two frames, wherein each frame corresponds to a separate display panel.

The non-transitory computer-readable medium of Example 42 or 43, wherein the plurality of instructions cause the processor to detect a movement of the user in a two dimensional plane proximate the plurality of display panels, and regenerate the three dimensional image based on the movement of the user.

Although an example embodiment of the disclosed subject matter is described with reference to block and flow diagrams inFIGS. 1-6, persons of ordinary skill in the art will readily appreciate that many other methods of implementing the disclosed subject matter may alternatively be used. For example, the order of execution of the blocks in flow diagrams may be changed, and/or some of the blocks in block/flow diagrams described may be changed, eliminated, or combined.

In the preceding description, various aspects of the disclosed subject matter have been described. For purposes of explanation, specific numbers, systems and configurations were set forth in order to provide a thorough understanding of the subject matter. However, it is apparent to one skilled in the art having the benefit of this disclosure that the subject matter may be practiced without the specific details. In other instances, well-known features, components, or modules were omitted, simplified, combined, or split in order not to obscure the disclosed subject matter.

Various embodiments of the disclosed subject matter may be implemented in hardware, firmware, software, or combination thereof, and may be described by reference to or in conjunction with program code, such as instructions, functions, procedures, data structures, logic, application programs, design representations or formats for simulation, emulation, and fabrication of a design, which when accessed by a machine results in the machine performing tasks, defining abstract data types or low-level hardware contexts, or producing a result.

Program code may represent hardware using a hardware description language or another functional description language which essentially provides a model of how designed hardware is expected to perform. Program code may be assembly or machine language or hardware-definition languages, or data that may be compiled and/or interpreted. Furthermore, it is common in the art to speak of software, in one form or another as taking an action or causing a result. Such expressions are merely a shorthand way of stating execution of program code by a processing system which causes a processor to perform an action or produce a result.

Program code may be stored in, for example, volatile and/or non-volatile memory, such as storage devices and/or an associated machine readable or machine accessible medium including solid-state memory, hard-drives, floppy-disks, optical storage, tapes, flash memory, memory sticks, digital video disks, digital versatile discs (DVDs), etc., as well as more exotic mediums such as machine-accessible biological state preserving storage. A machine readable medium may include any tangible mechanism for storing, transmitting, or receiving information in a form readable by a machine, such as antennas, optical fibers, communication interfaces, etc. Program code may be transmitted in the form of packets, serial data, parallel data, etc., and may be used in a compressed or encrypted format.

Program code may be implemented in programs executing on programmable machines such as mobile or stationary computers, personal digital assistants, set top boxes, cellular telephones and pagers, and other electronic devices, each including a processor, volatile and/or non-volatile memory readable by the processor, at least one input device and/or one or more output devices. Program code may be applied to the data entered using the input device to perform the described embodiments and to generate output information. The output information may be applied to one or more output devices. One of ordinary skill in the art may appreciate that embodiments of the disclosed subject matter can be practiced with various computer system configurations, including multiprocessor or multiple-core processor systems, minicomputers, mainframe computers, as well as pervasive or miniature computers or processors that may be embedded into virtually any device. Embodiments of the disclosed subject matter can also be practiced in distributed computing environments where tasks may be performed by remote processing devices that are linked through a communications network.

Although operations may be described as a sequential process, some of the operations may in fact be performed in parallel, concurrently, and/or in a distributed environment, and with program code stored locally and/or remotely for access by single or multi-processor machines. In addition, in some embodiments the order of operations may be rearranged without departing from the spirit of the disclosed subject matter. Program code may be used by or in conjunction with embedded controllers.

While the disclosed subject matter has been described with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications of the illustrative embodiments, as well as other embodiments of the subject matter, which are apparent to persons skilled in the art to which the disclosed subject matter pertains are deemed to lie within the scope of the disclosed subject matter.