# Patent

## Title
Encoding and decoding architectures for format compatible 3D video delivery

## Abstract

Encoding and decoding architectures for 3D video delivery are described, such as 2D compatible 3D video delivery and frame compatible 3D video delivery. The architectures include pre-processing stages to pre-process the output of a base layer video encoder and/or decoder and input the pre-processed output into an enhancement layer video encoder and/or decoder of one or more enhancement layers. Multiplexing methods of how to combine the base and enhancement layer videos are also described.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
The present disclosure claims priority to U.S. Patent Provisional Application No. 61/223,027, filed 4 Jul. 2009, hereby incorporated by reference in its entirety.


FIELD
This disclosure relates to image processing and video compression. More particularly, embodiments of the present disclosure relate to encoding and decoding systems and methods for 3D video delivery, such as 2D compatible and frame compatible 3D video delivery.
BACKGROUND
The provision of a stereoscopic (3D) user experience is a long held goal of both content providers and display manufacturers. Recently, the urgency of providing a stereoscopic experience to home users has increased with the production and tentative release of multiple 3D movies or other 3D material (e.g., concerts or documentaries).
To ensure rapid adoption among consumers, the ideal solutions should be those that can be implemented with minimal or no alteration to existing playback devices such as set-top boxes, DVD, and Blu-ray disc players, as well as existing 3D capable displays, such as digital light processing (DLP) displays by Samsung and Mitsubishi, some Plasma displays, and polarized based and frame sequential LCD displays.
One possible method for the delivery of 3D content that has these properties is the consideration of creating, coding, and delivering 3D video content by multiplexing the two views into a single frame configuration using a variety of filtering, sampling, and arrangement methods. Sampling could, for example, be horizontal, vertical, or quincunx, while an offset, e.g. a sampling offset, could also be considered between the two views allowing better exploitation of redundancies that may exist between the two views.
Similarly, arrangements could include side by side, over-under, line-interleaved, and checkerboard packing among others, as shown in FIGS. 1-6. Unfortunately, these methods do not provision for the delivery of full resolution stereoscopic material, which can impact quality and experience, and essentially can be an issue for many applications.
The desire for full resolution has lead to some systems that utilize two separate and independent bitstreams, each one representing a different view, like the simulcast 3D video delivery architecture shown in FIG. 8. Unfortunately, the complexity of this method, its bandwidth requirements, i.e. redundancies between the two views are not exploited, but also the fact that this method is not backwards compatible with legacy devices and can have considerable implications to the entire delivery system, has not lead to its adoption.
An extension of this method, that tries to exploit some of the redundancies that may exist between the two views was proposed and adopted as a profile of the Multiview Video Coding (MVC) extension of the MPEG-4 AVC/H.264 video coding standard, i.e. the Stereo High profile, that provisions for the encoding and delivery of stereoscopic material. An example of the MVC based 3D video delivery architecture is shown in FIG. 9. Redundancies are exploited using only translational motion compensation based methods, while the system is based on “intelligent” reference buffer management, i.e. in which order references from the base or enhancement layers are added in the enhancement layer buffer and considered for prediction, for performing prediction compared to the original design of MPEG-4 AVC. Unfortunately, even though coding efficiency was somewhat improved (i.e., 20-30% over simulcast), complexity issues, incompatibility with legacy devices (only 2D support is provided), and the not so significant performance benefits presented using such method still make it as a somewhat unattractive solution.



BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated into and constitute a part of this specification, illustrate one or more embodiments of the present disclosure and, together with the description of example embodiments, serve to explain the principles and implementations of the disclosure.
FIG. 1 shows a checkerboard interleaved arrangement for the delivery of stereoscopic material.
FIG. 2 shows a horizontal sampling/column interleaved arrangement for the delivery of stereoscopic material.
FIG. 3 shows a vertical sampling/row interleaved arrangement for the delivery of stereoscopic material.
FIG. 4 shows a horizontal sampling/side by side arrangement for the delivery of stereoscopic material.
FIG. 5 shows a vertical sampling/over-under arrangement for the delivery of stereoscopic material.
FIG. 6 shows a quincunx sampling/side by side arrangement for the delivery of stereoscopic material.
FIG. 7 shows a frame compatible 3D video delivery architecture.
FIG. 8 shows a simulcast 3D video delivery architecture.
FIG. 9 shows an MVC based 3D video delivery architecture.
FIG. 10 shows an example of 3D capture.
FIG. 11 shows pre-processing stages located between a base layer and an enhancement layer, and between a first enhancement layer and a second enhancement layer of a frame compatible 3D architecture.
FIG. 12 shows pre-processing stages located between the base layer and the enhancement layer of the video encoder, and the base layer and the enhancement layer of the video decoder of a 2D compatible 3D architecture, in accordance with the present disclosure.
FIG. 13 shows a more detailed diagram of the pre-processing stage of FIG. 12 on the encoder side.
FIG. 14 shows a more detailed diagram of the pre-processing stage of FIG. 11 on the encoder side.
FIG. 15 shows a more detailed diagram of the pre-processing stage of FIG. 11 on the decoder side.
FIG. 16 shows an example of pre-processing technique for a horizontal sampling and side by side packing arrangement.
FIG. 17 and FIG. 18 show examples of pre-processing stages according to the present disclosure.



DESCRIPTION OF EXAMPLE EMBODIMENTS
Overview
Embodiments of the present disclosure relate to image processing and video compression.
According to a first embodiment, a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video encoding system is provided, comprising: a base layer, comprising a base layer video encoder; at least one enhancement layer, associated with the base layer, the enhancement layer comprising an enhancement layer video encoder; and at least one pre-processing module, i) to pre-process the output of the base layer video encoder and input the pre-processed output into the enhancement layer video encoder and/or ii) to pre-process the output of one enhancement layer video encoder of one enhancement layer and input the pre-processed output into another enhancement layer video encoder of another enhancement layer.
According to a second embodiment, a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video decoding system is provided, comprising: a base layer, comprising a base layer video decoder; at least one enhancement layer, associated with the base layer, the enhancement layer comprising an enhancement layer video decoder; and at least one pre-processing module, i) to pre-process the output of the base layer video decoder and input the pre-processed output into the enhancement layer video decoder and/or ii) to pre-process the output of one enhancement layer video decoder of one enhancement layer and input the pre-processed output into another enhancement layer video decoder of another enhancement layer.
According to a third embodiment, a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video system is provided, comprising: a base layer, comprising a base layer video encoder and a base layer video decoder; at least one enhancement layer, associated with the base layer, the enhancement layer comprising an enhancement layer video encoder and an enhancement layer video decoder; at least one encoder pre-processing module, i) to pre-process the output of the base layer video encoder and input the pre-processed output into the enhancement layer video encoder and/or ii) to pre-process the output of one enhancement layer video encoder of one enhancement layer and input the pre-processed output into another enhancement layer video encoder of another enhancement layer; and at least one decoder pre-processing module, i) to pre-process the output of the base layer video decoder and input the pre-processed output into the enhancement layer video decoder and/or ii) to pre-process the output of one enhancement layer video decoder of one enhancement layer and input the pre-processed output into another enhancement layer video decoder of another enhancement layer.
According to a fourth embodiment, a frame compatible three-dimensional (3D) video encoding system is provided, comprising: a base layer, comprising a base layer video encoder and a base layer multiplexer, the base layer multiplexer receiving an input indicative of a plurality of views and forming a multiplexed output connected with the base layer video encoder; and at least one enhancement layer, associated with the base layer, the at least one enhancement layer comprising an enhancement layer video encoder and an enhancement layer multiplexer, the enhancement layer multiplexer receiving an input indicative of the plurality of views and forming a multiplexed output connected with the enhancement layer video encoder, wherein the base layer video encoder is directly connected with the enhancement layer video encoder.
According to a fifth embodiment, a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video encoding method is provided, comprising: base layer video encoding a plurality of images or frames; enhancement layer video encoding the plurality of images or frames; pre-processing base layer video encoded images or frames; and adopting the pre-processed base layer video encoded images or frame for the enhancement layer video encoding.
According to a sixth embodiment, a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video decoding method is provided, comprising: base layer video decoding a plurality of images or frames; pre-processing base layer video decoded images or frames; adopting the pre-processed base layer video decoded images or frames for enhancement layer video decoding; and enhancement layer video decoding the plurality of images or frames;
According to a seventh embodiment, a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video method is provided, comprising: base layer video encoding a plurality of images or frames; enhancement layer video encoding the plurality of images or frames; pre-processing base layer video encoded images or frames; adopting the pre-processed base layer video encoded images or frame for the enhancement layer video encoding; base layer video decoding a plurality of images or frames; pre-processing base layer video decoded images or frames; adopting the pre-processed base layer video decoded images or frames for enhancement layer video decoding; and enhancement layer video decoding the plurality of images or frames;
According to an eighth embodiment, an encoder for encoding a video signal according to the method of the fifth embodiment is provided.
According to a ninth embodiment, an apparatus for encoding a video signal according to the method of the fifth embodiment is provided.
According to a tenth embodiment, a system for encoding a video signal according to the method of the fifth embodiment is provided.
According to an eleventh embodiment, a decoder for decoding a video signal according to the method of the sixth embodiment is provided.
According to a twelfth embodiment, an apparatus for decoding a video signal according to the method of the sixth embodiment is provided.
According to a thirteenth embodiment, a system for decoding a video signal according to the method of the sixth embodiment is provided.
According to a fourteenth embodiment, a computer-readable medium containing a set of instructions that causes a computer to perform the method or methods recited above is provided.
Embodiments of the present disclosure will show techniques that enable frame compatible 3D video systems to achieve full resolution 3D delivery, without any of the drawbacks of the 2D compatible 3D delivery methods (e.g., MVC). Furthermore, decoder complexity, in terms of hardware cost, memory, and operations required will also be considered. Furthermore, improvements over the existing 2D compatible 3D delivery methods are also shown.
1. 2D Compatible 3D Delivery
Applicants have observed that the MVC extension of the MPEG-4 AVC/H.264 standard constrains prediction between the base and enhancement layers (see FIG. 9) to only utilize translational block based methods, which also include the optional consideration of illumination compensation methods, i.e. weighted prediction.
This can severely affect coding performance since correlation between the two layers is not fully exploited. In general, especially for the scenario of stereo, i.e. left and right view, coding, the two stereo views are characterized more by an affine/geometric “motion” relationship due to the placement of the two cameras used to capture or generate (e.g., in the scenario of a computer generated 3D video sequence) the 3D content, which can not be captured well using translational (vertical and horizontal only) motion compensation mechanisms. This is also true for the multiview case, where more than two views for a scene are available. Reference is made to the example shown in FIG. 10.
The content may also have differences in focus or illumination because of the camera characteristics, which again make prediction less accurate. Furthermore, the MVC specification only accounts for 2D compatible 3D video coding systems and has no provision for frame compatible arrangements such as those shown in FIG. 7 of the present application.
To provide a solution to the first problem, i.e. inaccurate prediction from the base to the enhancement layer, a pre-processing stage is introduced between the base and enhancement layer encoders and decoders in accordance with an embodiment of the present disclosure to process or refine the first encoded view for prediction before encoding the second view. In particular, in accordance with such embodiment, data from the base layer are pre-processed and altered using some additional parameters that have been signaled in the bitstream. The pictures thus generated can be available for prediction, if desired. Such process can be used globally or regionally and is not limited to a block-based process.
Reference can be made, for example to FIG. 12, where a 3D pre-processor (1210) is shown on the encoding side between base layer video encoder (1220) and enhancement layer video encoder (1230), and a 3D-pre-processor (1240) is shown on the decoding side between base layer video decoder (1250) and enhancement layer video decoder (1260).
The role of this pre-processing stage is to process and adjust the characteristics of the base layer video to better match those of the enhancement layer video. This can be done, for example, by considering pre-processing mechanisms such as filtering (e.g., a sharpening or a low pass filter) or even other more sophisticated methods such as global/region motion compensation/texture mapping.
These methods require the derivation of parameters appropriate for each of them, such as i) the filters, ii) the filter coefficients/length that should be used, and/or iii) the global motion compensation correction parameters that should be applied to the image to generate the new prediction.
A set of parameters could be derived for the entire video, scene, or image. However, multiple parameters could also be used within an image. Parameters, in this scenario, could be assigned for different regions of an image. The number, shape, and size of the regions could be fixed or could also be adaptive. Adaptive regions could be derived given pre-analysis of the content (e.g., a segmentation method), and/or could be user-specified, in which case signaling of the characteristics of the regions (e.g., shape and size) can be signaled within the bitstream.
As an example, a system may signal that each frame is split in N×M rectangular regions, or could signal explicitly the shape of each region using a map description. Determination and signaling of such information could follow the description presented in U.S. Provisional Application 61/170,995 filed on Apr. 20, 2009, for “Directed Interpolation and Data Post-Processing”, which is incorporated herein by reference in its entirety.
According to one embodiment, an encoder can evaluate all or a subset of possible pre-processing methods that could be used by the system, by comparing the output of each method compared to the predicted signal (enhancement layer). The method resulting in best performance, e.g. best in terms of complexity, quality, resulting coding efficiency, among others, or a combination of all of these parameters using methods such as Lagrangian optimization, can be selected at the encoder. Reference can be made, for example to FIGS. 3 to 5 of the above mentioned U.S. Provisional 61/170,995, incorporated herein by reference in its entirety.
According to another embodiment, multiple parameters that correspond to the same region in the image could also be signaled to generate multiple different potential predictions for the enhancement layer. Reference can be made, for example, to FIG. 17 and FIG. 18 of the present disclosure. FIG. 17 shows a pre-processing system with N filter consideration/signaling. Multiple filters can be selected for a single region by selecting the M best filters that provide the best desired performance which can be defined as quality, cost, enhancement layer coding performance, etc. FIG. 18 shows pre-processing with multi-parameter consideration.
Similarly to MVC, where the base layer is added in the reference buffer of the enhancement layer for prediction purposes (see FIG. 9), the new processed images, e.g., after filtering or global motion compensation correction, are also added in the reference buffer of the enhancement layer, as shown in FIG. 13, where the output of pre-processor (1310) is connected to the reference buffer (1320) of the enhancement layer. According to some embodiments of the present disclosure, the reference buffer (1320) may already include other references such as previously encoded and decoded pictures from the enhancement layer or even pictures generated from processing previously encoded and decoded base layer pictures.
As noted above, for every previously decoded base layer picture, one or more new processed reference pictures can be generated and added in the enhancement layer buffer (1330) as additional reference pictures. All of these references could be considered for prediction using motion compensation methods and mechanisms such as the reference index concept/signaling that is available within codecs such as MPEG-4 AVC (Advanced Video Coding). For example, assuming that a base layer picture has been processed to generate two different reference picture instances, refb0 and refb1, and also refe, which corresponds to the previously encoded enhancement layer picture, is available as a reference, one can assign reference indices (ref_idx) 0, 1, and 2 to these pictures respectively. If a macroblock in the current enhancement layer picture selects refb0 then ref_idx=0 is signaled in the bitstream. Similarly, ref_idx 1 or 2 are signaled for MBs selecting refb1 and refe respectively.
The availability of such processed reference pictures in the enhancement layer buffer involves the consideration of i) appropriate memory management and ii) reference ordering operations in both the encoder and the decoder as is also done in MPEG-4 AVC and its SVC and MVC extensions.
Memory management operations take into consideration which references are removed or added in the reference buffer for prediction, while reference ordering takes into consideration the order of how references are considered for motion compensation, which itself affects the number of bits that will be used when signaling that reference.
Default memory management and reference ordering operations could be considered based on the systems expectation of which is likely to be the least useful (for memory management) or most correlated reference (for reference ordering). As an example, a first-in first-out (FIFO) approach could be considered for memory management, while also both base and enhancement layer pictures corresponding to the same time instance are removed at the same time. On the other hand, base layer information from previous pictures need not be retained after it was used, therefore saving memory. Alternative or additional memory management techniques can include adaptive memory management control.
Similarly, for default ordering, the base layer reference that corresponds to the current time as the current enhancement layer to be encoded could be placed in the beginning of the reference list for prediction, while the rest of the references can be ordered according to temporal distance, coding order, and/or layer relationships. For example, and assuming a single processed reference from the base layer, a default reference order can be as follows:

    
    
        a) place processed base layer reference, if available, as first reference in list (ref_idx=0)
        b) proceed with alternating order and add enhancement layer and previously processed base layer reference pictures in reference buffer according to their temporal distance. If two pictures have the same temporal direction, then determine order according to direction of reference (past or future compared to current picture). If picture/slice type allows one list, then past pictures take precedence over future, while if picture/slice type allows two lists, then for the first list past pictures take precedence over future, while for the second list future pictures take precedence over past.

When multiple references from the base layer are available the default order can also be affected, for example, by the order these references are specified in the bitstream.

    
    


The above rules could be specified by the system. The person skilled in the art will also understand that such operations can apply to multiple reference lists, such as in the case of the two prediction lists available in B slices of MPEG-4 AVC/H.264. Explicit memory management and reference ordering operations could also be utilized, which allow further flexibility to be added to the system, since the system can select a different mechanism for handling references for an instance, given reasons such as coding performance and error resiliency among others. In particular, alternatively or in addition to a default ordering, users may wish to specify their own ordering mechanism and use reordering instructions that are signaled in the bitstream, similarly to what is available already in MPEG-4 AVC, that specify exactly how each reference is placed in each reference list.
2. Frame Compatible 3D Delivery
The above approach can be extended to frame compatible 3D delivery, generally shown in FIG. 7 of the present application. In this scenario, instead of having a base layer that corresponds to a single view, the base layer now corresponds to two views that have been previously subsampled using a variety of methods and multiplexed using a variety of arrangements. As mentioned earlier, subsampling could include horizontal, vertical, or quincunx among others, and multiplexing could include side by side, over-under, line or column interleaved, and checkerboard among others.
Reference can be made, for example, to the embodiment of FIG. 11, where a base layer 3D multiplexer (1110) connected with a base layer video encoder (1120) and an enhancement layer 3D multiplexer (1130) connected with an enhancement layer video encoder (1140) are shown.
In this scenario, instead of missing information for one of the two views, what are essentially missing are resolution and/or high frequency information for both views. Therefore, what is desired by such system is the ability, if desired, to add back the missing information to the signal.
In the simplest embodiment of such a system, subsampling can be performed using basic pixel decimation (1111), (1112), (1131), (1132), i.e. without necessarily the consideration of any filtering, where the base layer corresponds to one set of pixels in the image and the enhancement layer corresponds to another set without filtering.
For example, for the horizontal sampling+side by side arrangement, the left view samples in the base layer correspond to the even samples in the original left view frame, the right view samples in the base layer correspond to the odd samples in the original right view frame, while the left and right view samples in the enhancement layer correspond to the remaining, i.e. odd and even samples, in their original frames respectively.
In this scenario, very high correlation exists between the base and enhancement layers which cannot be exploited as efficiently using the prediction methods provided by MVC.
Similarly to what previously done for the 2D compatible system embodiments, a pre-processing stage (1150) is introduced that processes the base layer information, before utilizing this information as a potential prediction for the enhancement layer.
A further embodiment of the present disclosure provides for a frame compatible 3D architecture similar to the one shown in FIG. 11, with frame compatible signals but without 3D pre-processors (or with 3D-processors operating in a “pass-through mode”) and with the presence of data multiplexing at the input (1110), (1130) and data remultiplexing at the output (1170), (1100).
More specifically, apart from filtering and global motion compensation correction that were discussed in the previous section, fixed or adaptive interpolation techniques that account for the characteristics of the sampling and arrangement methods used by the content, can be utilized to process the base layer.
For example, processing could include separable or non-separable interpolation filters, edge adaptive interpolation techniques, filters based on wavelet, bandlet, or ridgelet methods, and inpainting among others.
Other methods that try to enhance resolution or can help with predicting missing frequency information could also be used. Methods that consider information from both views, such as copying the data from the base layer right view to predict the enhancement layer left view, can also be used. Similarly to what discussed above, these methods could be again applied at the sequence, scene, image, or/and region level, while multiple such parameters could be signaled to allow the generation of multiple potential references for prediction. Regions, as in the case of the 2D compatible system, can be predefined or signaled within a bitstream.
It should be noted that it is not necessary for the enhancement layer to utilize the entire or even any part of a prediction/reference picture. In other words, the enhancement layer encoder (1140) can consider the processed images from the base layer for prediction, but only if desired. For example, the user may select to predict the entire enhancement layer from a previously decoded enhancement layer picture, or if multiple pre-processed base layer pictures are available, the encoder can select only one of them (e.g. in view of a rate distortion criterion) or any combination of two reference pictures, assuming the presence of a bi-predictive coding. The same can also occur at the region level.
For example, the entire or part of the top half of a base layer processed image was used to predict the current enhancement layer picture, but instead for the bottom part the encoder selected to use again a previous enhancement layer picture. Additional, block (e.g. for MPEG-2 or MPEG-4 AVC like codecs) or other local motion compensation methods (e.g. a motion compensated method utilized by a future codec) could be used as part of the enhancement layer codec, which may determine that a different prediction, e.g. temporal, may provide better performance.
However, such prediction samples could also be combined together in a bi-predictive or even a multi-hypothesis motion compensated framework again at the block or region level, resulting in further improved prediction.
It should be apparent, similarly to how references are processed in MVC, that each reference in the systems and methods according to the present disclosure could be further interpolated (e.g., using the MPEG-4 AVC/H.264 interpolation filters) and utilized with reference re-ordering and weighted prediction when used for prediction.
FIG. 14 and FIG. 15 show in detail the pre-processing module (1410) on the encoder side and the pre-processing module (1510) on the decoder side.
The design and selection of the pre-processing method can be part of an encoder and can be based on user input or other criteria such as cost, complexity, and coding/quality performance.
An example of such process is shown in FIG. 16. After a prediction reference from the base layer is created, as stated above, this reference (1610) and all other references (1620) (e.g. previously coded pictures from the enhancement layer or past or differently processed prediction references from the base layer) are considered within a motion compensated architecture to refine the prediction (1630) of the enhancement layer at a lower level, e.g. block or region.
While the process according to the present disclosure is similar to how MPEG-4 AVC/H.264 and its MVC and SVC extensions also perform prediction, better references are used herein in view of the presence of a pre-processing stage. After such prediction is performed, the residual for the enhancement layer can be computed, transformed, quantized and encoded, with any additional overhead such as motion information, using methods similar to those used in the MPEG-4 AVC codec.
Other methods or future codecs can also be utilized to encode such information. This residual can be dequantized, inversed transformed and then added back to the prediction to reconstruct the enhancement layer signal.
According to a further embodiment of the present disclosure, optional in-loop filtering (as shown in FIG. 14 and FIG. 15), such as deblocking, that applies only on the enhancement layer could be used to reduce artifacts, such as blockiness. It should be noted that the enhancement layer in this scenario is in a similar packing arrangement as that of the base layer. For display purposes, the base and enhancement layer data would need to be re-multiplexed together as to generate two separate, full resolution, left and right images. Re-multiplexing could be done by using simple interleaving of the base and enhancement layers. As shown in FIG. 11, re-multiplexing of the base and enhancement layer data occurs through multiplexers (1170) and (1100).
In an alternative embodiment, the base layer information is also filtered prior to combining it, e.g. replacing half of the samples or averaging half of the samples, with the samples from the enhancement layer. Reference can be made to filters GLB2 and GLE of FIG. 11, where GLB2 can be averaged with GLE in such alternative embodiment.
In a different embodiment, generation of the base layer video could occur through the use of filtering (e.g., to reduce aliasing) prior to decimation. In this scenario, and excluding compression impact, a single layer approach may not be able to generate a true full resolution image. Such single layer can, however, help reconstruction of some of the lost frequencies or accurate reconstruction of half of the resolution of the original signal.
To alleviate for this problem, an additional, 3rd layer can be introduced that tries to correct for any errors introduced by the prior filtering in the base layer. Reference can be made to layer (1160) of FIG. 11. Similar methods could be used for predicting the signal in this new layer from data in both the base and enhancement layers. The person skilled in the art will understand that data from the base layer could be good enough predictors for this new layer without processing or with very little processing.
However, it is possible that the enhancement layer may be of higher quality and could provide additional information that could be also utilized for the prediction of this layer. Therefore, in the present disclosure, apart from prediction references coming from the base layer and previously reconstructed references from this third (second enhancement) layer, references generated using pre-processing of the second (first enhancement) layer, or references using pre-processing while considering both base and first enhancement layer could be used. Therefore, embodiments of the present disclosure can be provided where there is more than one pre-processing stage on the encoding side and more than one pre-processing stage on the decoding side.
In an example, the prediction reference could be generated using edge adaptive interpolation of the enhancement layer while the edge adaptive decisions could be based also on the edges and samples of the base layer. Weighted averaging of an interpolated enhancement layer and the original or filtered base layer could generate a different prediction. Other mechanisms to generate a prediction picture for this enhancement layer could also be used, as discussed above, also including methods employing wavelet interpolation, inpainting and others.
Therefore, according to the teachings of the present disclosure, delivery of 3D content is extended using frame compatible methods, i.e. Checkerboard video delivery, side by side, over-under, etc, to support full resolution through the introduction of additional enhancement layers. These additional enhancement layers can provide apart from additional resolution and/or quality, additional functionalities such as improved streaming and complexity scalability.
The teachings provided in the present disclosure can also be seen as extensions of existing scalable video coding technologies such as the Scalable Video Coding (SVC) and Multiview Video Coding (MVC) extensions of the MPEG-4 AVC standard, however, with the consideration of improved methods for predicting from one layer to the next.
This advantage can result in improvements in coding efficiency, while having similar, and in some cases reduced complexity compared to these technologies. Although some embodiments can be based on the MPEG-4 AVC/H.264 video coding standard, the techniques presented in the present disclosure are codec agnostic and other video coding standards and codecs such as MPEG-2 and VC-1 can be applied to them.
Possible applications of the teachings of the present disclosure are stereoscopic (3D) format video encoders and decoders that can be applied, by way of example and not of limitation, to Blu-ray video discs, broadcast and download/on demand systems, satellite systems, IPTV systems, and mobile devices that support 3D video.
The methods and systems described in the present disclosure may be implemented in hardware, software, firmware or combination thereof. Features described as blocks, modules or components may be implemented together (e.g., in a logic device such as an integrated logic device) or separately (e.g., as separate connected logic devices). The software portion of the methods of the present disclosure may comprise a computer-readable medium which comprises instructions that, when executed, perform, at least in part, the described methods. The computer-readable medium may comprise, for example, a random access memory (RAM) and/or a read-only memory (ROM). The instructions may be executed by a processor (e.g., a digital signal processor (DSP), an application specific integrated circuit (ASIC), or a field programmable logic array (FPGA)).
An embodiment of the present invention may relate to one or more of the example embodiments, enumerated below.
1. A two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video encoding system, comprising:
a base layer, comprising a base layer video encoder;
at least one enhancement layer, associated with the base layer, the enhancement layer comprising an enhancement layer video encoder; and
at least one pre-processing module, i) to pre-process the output of the base layer video encoder and input the pre-processed output into the enhancement layer video encoder and/or ii) to pre-process the output of one enhancement layer video encoder of one enhancement layer and input the pre-processed output into another enhancement layer video encoder of another enhancement layer.
2. A two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video decoding system, comprising:
a base layer, comprising a base layer video decoder;
at least one enhancement layer, associated with the base layer, the enhancement layer comprising an enhancement layer video decoder; and
at least one pre-processing module, i) to pre-process the output of the base layer video decoder and input the pre-processed output into the enhancement layer video decoder and/or ii) to pre-process the output of one enhancement layer video decoder of one enhancement layer and input the pre-processed output into another enhancement layer video decoder of another enhancement layer.
3. A two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video system, comprising:
a base layer, comprising a base layer video encoder and a base layer video decoder;
at least one enhancement layer, associated with the base layer, the enhancement layer comprising an enhancement layer video encoder and an enhancement layer video decoder;
at least one encoder pre-processing module, i) to pre-process the output of the base layer video encoder and input the pre-processed output into the enhancement layer video encoder and/or ii) to pre-process the output of one enhancement layer video encoder of one enhancement layer and input the pre-processed output into another enhancement layer video encoder of another enhancement layer; and
at least one decoder pre-processing module, i) to pre-process the output of the base layer video decoder and input the pre-processed output into the enhancement layer video decoder and/or ii) to pre-process the output of one enhancement layer video decoder of one enhancement layer and input the pre-processed output into another enhancement layer video decoder of another enhancement layer.
4. The 3D video system of Enumerated Example Embodiment 1 or 3, wherein the pre-processed output of the pre-processing module further depends on video information coming from a plurality of views.
5. The 3D video system of Enumerated Example Embodiment 4, wherein the plurality of views are a first view and a second view.
6. The 3D video system of Enumerated Example Embodiment 4, wherein the plurality of views are more than two views.
7. The 3D video system according to any one of the previous Enumerated Example Embodiments, wherein the pre-processing module comprises at least one of filtering, global motion compensation, region motion compensation, and texture mapping techniques.
8. The 3D video system according to Enumerated Example Embodiment 7, wherein the pre-processing module comprises parameters to be used with the at least one of the filtering, global motion compensation, region motion compensation, and texture mapping techniques.

9. The 3D video system according to Enumerated Example Embodiment 8, wherein the parameters are a set of parameters for an entire video, scene, image or region.

10. The 3D video system according to Enumerated Example Embodiment 8, wherein the parameters are multiple parameters, differently assigned for different regions of a video, scene or image.

11. The 3D video system according to Enumerated Example Embodiment 10, wherein number, shape and size of the regions is fixed.

12. The 3D video system according to Enumerated Example Embodiment 10, wherein number, shape and size of the regions is adaptive.

13. The 3D video system according to Enumerated Example Embodiment 10, wherein the regions are adaptive regions.

14. The 3D video system according to Enumerated Example Embodiment 13, wherein the adaptive regions are obtained through pre-analysis of video content.

15. The 3D video system according to Enumerated Example Embodiment 14, wherein the pre-analysis of the video content is a segmentation method.

16. The 3D video system according to Enumerated Example Embodiment 13, wherein features of the adaptive regions are user-specified.

17. The 3D video system according to Enumerated Example Embodiment 16, wherein the user-specified features of the adaptive regions are signaled within an image bitstream.

18. The 3D video system according to Enumerated Example Embodiment 16 or 17, wherein the user-specified features of the adaptive regions comprise at least one of region shape and region size.

19. The 3D video system according to Enumerated Example Embodiment 18, wherein the user-specified features of the adaptive regions comprise signaling that each frame is split in a plurality of rectangular regions.

20. The 3D video system according to Enumerated Example Embodiment 18, wherein the user-specified features of the adaptive regions comprise signaling region shape of each region using a map description.

21. The 3D video system according to any one of the previous Enumerated Example Embodiments, further comprising a pre-processing encoder connected with the pre-processing module, the pre-processing encoder adapted to select one of a plurality of pre-processing techniques to be used by the pre-processing module.

22. The 3D video system of Enumerated Example Embodiment 21, further comprising a pre-processing decoder connected at the output of the pre-processing module.

23. The 3D video system according to Enumerated Example Embodiment 21 or 22, wherein selection among the plurality of pre-processing techniques is based on one or more parameters selected to satisfy one or more among complexity, quality, and resulting coding efficiency criteria.

24. The 3D video system according to Enumerated Example Embodiment 21 or 22, wherein selection among the plurality of pre-processing techniques is performed through a Lagrangian optimization method.

25. The 3D video system according to any one of Enumerated Example Embodiments 1 to 20, further comprising a pre-processing encoder connected with the pre-processing module, the pre-processing encoder adapted to select one of a plurality of predictions generated through multiple parameters.

26. The 3D video system according to Enumerated Example Embodiment 25, further comprising a pre-processing decoder connected with the output of the pre-processing module.

27. The 3D video system according to any one of the previous Enumerated Example Embodiments, wherein

the base layer video encoder comprises a base layer encoding reference buffer
the enhancement layer video encoder comprises an enhancement layer encoding reference buffer, and
a pre-processing module of the at least one pre-processing module is connected between the base layer encoding reference buffer and the enhancement layer encoding reference buffer.
28. The 3D video system according to any one of the previous Enumerated Example Embodiments, wherein
the base layer video decoder comprises a base layer decoding reference buffer
the enhancement layer video decoder comprises an enhancement layer decoding reference buffer, and
the pre-processing module is connected between the base layer decoding reference buffer and the enhancement layer decoding reference buffer.
29. The 3D video system according to Enumerated Example Embodiments 27 or 28, wherein the enhancement layer encoding reference buffer and the enhancement layer decoding reference buffer comprise one or more processed reference pictures.
30. The 3D video system according to Enumerated Example Embodiment 29, wherein memory management techniques or reference ordering operations are applied to the enhancement layer encoding reference buffer and the enhancement layer decoding reference buffer.
31. The 3D video system according to any one Enumerated Example Embodiments 28 to 30, wherein in-loop filtering is applied to the enhancement layer encoding reference buffer and the enhancement layer decoding reference buffer.
32. The 3D video system according to Enumerated Example Embodiment 30, wherein the memory management techniques comprise at least one of a first frame-in-first frame-out (FIFO) approach, discarding previous frames approach, and adaptive memory management control.

33. The 3D video system according to Enumerated Example Embodiment 30, wherein the reference ordering operations comprise placing at a beginning of a reference list a base layer reference corresponding to a current time as a current enhancement layer to be encoded, and ordering the remaining reference according to an ordering parameter.

34. The 3D video system according to Enumerated Example Embodiment 33, wherein the ordering parameter is selected from temporal distance, coding order, layer relationships, and/or coding prediction efficiency criteria.

35. The 3D video system of any one of the previous Enumerated Example Embodiments, wherein the 3D video system is a 2D compatible video system, wherein the base layer corresponds to a single view.

36. The 3D video system of any one of the previous Enumerated Example Embodiments, wherein the 3D video system is a frame compatible video system, wherein the base layer and the enhancement layer correspond to two views, each of the base layer encoder and enhancement layer encoder comprising

a subsampler to subsample the two views, and
a multiplexer to multiplex the two subsampled views.
37. The 3D video system of Enumerated Example Embodiment 36, wherein subsampler subsamples according to a technique selected from horizontal, vertical, or quincunx subsampling.
38. The 3D video system according to Enumerated Example Embodiment 36 or 37, wherein the multiplexer multiplexes according to a technique selected from a side by side, over-under, line interleaved, column interleaved, and checkerboard technique.
39. The 3D video system according to any one of Enumerated Example Embodiments 36 to 38, wherein the pre-processing module is based on a fixed or adaptive interpolation technique.
40. The 3D video system according to Enumerated Example Embodiment 39, wherein the interpolation technique is selected from separable interpolation filters, edge adaptive interpolation techniques, wavelet-based filters, bandlet-based filters, ridgelet-based filters, and inpainting.

41. The 3D video system according to any one of Enumerated Example Embodiments 36 to 38, wherein the pre-processing module is based on resolution enhancement techniques, missing frequency information predicting techniques or techniques considering information from both views.

42. The 3D video system according to Enumerated Example Embodiment 41, wherein the techniques considering information from both views comprise copying data from a base layer first view to predict an enhancement layer second view.

43. The 3D video system according to Enumerated Example Embodiment 41 or 42, wherein the techniques are applied at a level selected from a sequence level, scene level, image level, and region level.

44. The 3D video system according to Enumerated Example Embodiment 43, wherein the regions of the region level are predefined regions or regions signaled within a bitstream.

45. The 3D video system according to any one of Enumerated Example Embodiments 41 to 44, wherein the techniques comprise signaling of parameters to allow generation of multiple potential references for prediction.

46. The 3D video system according to any one of Enumerated Example Embodiments 36 to 45, further comprising a base layer decoder, an enhancement layer decoder, a base layer demultiplexer connected with the base layer decoder, and an enhancement layer demultiplexer connected with the enhancement layer decoder.

47. The 3D video system according to any one of Enumerated Example Embodiments 36 to 46, further comprising a base layer decoder and an enhancement layer decoder, and at least one additional multiplexer to multiplex base layer decoded data with enhancement layer decoded data of a same view.

48. The 3D video system according to Enumerated Example Embodiment 47, wherein the at least one additional multiplexer are two additional multiplexers, a first additional multiplexer being a left view multiplexer and a second additional multiplexer being a right view multiplexer.

49. The 3D video system according to Enumerated Example Embodiment 47, further comprising a base layer filtering stage and an enhancement layer filtering stage to respectively filter the base layer decoded data and the enhancement layer decoded data before being multiplexed in the at least one additional multiplexer.

50. The 3D video system of any one of the previous Enumerated Example Embodiments, wherein the pre-processed output of the pre-processing module further depends on previously coded pictures from the enhancement layer or past or differently processed prediction references from the base layer.

51. The 3D video system of any one of the previous Enumerated Example Embodiments, wherein the pre-processing module is based on resolution enhancement techniques, missing frequency information predicting techniques or techniques considering information from a plurality of views.

52. The 3D video system of Enumerated Example Embodiment 51, wherein the techniques comprise signaling of parameters to allow generation of multiple potential references for prediction.

53. The 3D video system according to any one of the previous Enumerated Example Embodiments, further comprising an additional enhancement layer comprising an additional enhancement layer video encoder and an additional enhancement layer pre-processor connected with the additional enhancement layer video encoder.

54. The 3D video system according to Enumerated Example Embodiment 53, wherein the additional enhancement layer pre-processor is connected with the enhancement layer video encoder.

55. The 3D video system according to Enumerated Example Embodiment 54, wherein the additional enhancement layer comprises an additional enhancement layer video encoder connected with the additional enhancement layer pre-processor.

56. The 3D video system according to Enumerated Example Embodiment 55, wherein

the enhancement layer further comprises an enhancement layer video decoder,
the additional enhancement layer further comprises an additional enhancement layer video decoder,
the 3D video system further comprising a further pre-processing module between the enhancement layer video decoder and the additional enhancement layer video decoder.
57. The 3D video system according to Enumerated Example Embodiment 56, wherein the additional enhancement layer further comprises an additional enhancement layer demultiplexer connected with the additional enhancement layer video decoder.
58. The 3D video system according to any one of Enumerated Example Embodiments 53 to 57, further comprising an enhancement layer video decoder, an additional enhancement layer video decoder, and at least one additional multiplexer to multiplex enhancement layer decoded data with additional enhancement layer decoded data of a same view.

59. The 3D video system according to Enumerated Example Embodiment 58, wherein the at least one additional multiplexer are two additional multiplexers, a first additional multiplexer being a left view multiplexer and a second additional multiplexer being a right view multiplexer.

60. A frame compatible three-dimensional (3D) video system, comprising:

a base layer, comprising a base layer video encoder and a base layer multiplexer, the base layer multiplexer receiving an input indicative of a plurality of views and forming a multiplexed output connected with the base layer video encoder; and
at least one enhancement layer, associated with the base layer, the at least one enhancement layer comprising an enhancement layer video encoder and an enhancement layer multiplexer, the enhancement layer multiplexer receiving an input indicative of the plurality of views and forming a multiplexed output connected with the enhancement layer video encoder,
wherein the base layer video encoder is directly connected with the enhancement layer video encoder.
61. The frame compatible 3D video system of Enumerated Example Embodiment 60, wherein direct connection between the base layer video encoder and the enhancement layer video encoder is obtained through a pre-processor operating in a pass-through mode.
62. A two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video encoding method, comprising:
base layer video encoding a plurality of images or frames;
enhancement layer video encoding the plurality of images or frames;
pre-processing base layer video encoded images or frames; and
adopting the pre-processed base layer video encoded images or frame for the enhancement layer video encoding.
63. A two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video decoding method, comprising:
base layer video decoding a plurality of images or frames;
pre-processing base layer video decoded images or frames;
adopting the pre-processed base layer video decoded images or frames for enhancement layer video decoding; and
enhancement layer video decoding the plurality of images or frames.
64. A two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video method, comprising:
base layer video encoding a plurality of images or frames;
enhancement layer video encoding the plurality of images or frames;
pre-processing base layer video encoded images or frames;
adopting the pre-processed base layer video encoded images or frame for the enhancement layer video encoding;
base layer video decoding a plurality of images or frames;
pre-processing base layer video decoded images or frames;
adopting the pre-processed base layer video decoded images or frames for enhancement layer video decoding; and
enhancement layer video decoding the plurality of images or frames.
65. An encoder for encoding a video signal according to the method recited in Enumerated Example Embodiment 62.
66. An apparatus for encoding a video signal according to the method recited in Enumerated Example Embodiment 62.
67. A system for encoding a video signal according to the method recited in Enumerated Example Embodiment 62.
68. A decoder for decoding a video signal according to the method recited in Enumerated Example Embodiment 63.
69. An apparatus for decoding a video signal according to the method recited in Enumerated Example Embodiment 63.
70. A system for encoding a video signal according to the method recited in Enumerated Example Embodiment 63.
71. A computer-readable medium containing a set of instructions that causes a computer to perform the method recited in one or more of Enumerated Example Embodiments 62-64.
The examples set forth above are provided to give those of ordinary skill in the art a complete disclosure and description of how to make and use the embodiments of the encoding and decoding architectures for format compatible 3D video delivery of the disclosure, and are not intended to limit the scope of what the inventors regard as their disclosure. Modifications of the above-described modes for carrying out the disclosure may be used by persons of skill in the video art, and are intended to be within the scope of the following claims. All patents and publications mentioned in the specification may be indicative of the levels of skill of those skilled in the art to which the disclosure pertains. All references cited in this disclosure are incorporated by reference to the same extent as if each reference had been incorporated by reference in its entirety individually.
It is to be understood that the disclosure is not limited to particular methods or systems, which can, of course, vary. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only, and is not intended to be limiting. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” include plural referents unless the content clearly dictates otherwise. The term “plurality” includes two or more referents unless the content clearly dictates otherwise. Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the disclosure pertains.
A number of embodiments of the disclosure have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the present disclosure. Accordingly, other embodiments are within the scope of the following claims.

## Claims

1. A two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video decoding method, comprising:
performing a first enhancement layer video decoding of an initial plurality of encoded images or frames, each image or frame comprising two or more views, to form first enhancement layer reconstructed images or frames;
storing, in a first enhancement layer decoding reference buffer, the first enhancement layer reconstructed images or frames;
pre-processing first enhancement layer video reconstructed images or frames;
storing, in second enhancement layer decoding reference buffer, the pre-processed first enhancement layer reconstructed images or frames for second enhancement layer video decoding;
performing a second enhancement layer video decoding the initial plurality of images or frames based on the pre-processed first enhancement layer reconstructed images or frames; and
decomposing a checkerboard interleaved frame into upconverted component planes, wherein all of the two or more views are decoded and processed in each of the first enhancement layer and the second enhancement layer.

2. The two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video decoding method of claim 1, wherein at least one encoder pre-processing module iii) receives input from a first enhancement layer decoding reference buffer and transmits one output to an input of one second enhancement layer decoding reference buffer.

3. The method of claim 1, wherein the two or more views are interleaved in a checkerboard pattern.

4. A decoder for decoding a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video signal, the decoder comprising:
a first decoding component function for performing a first enhancement layer video decoding an initial plurality of encoded images or frames, each image or frame comprising two or more views, to form a first enhancement layer reconstructed images or frames;
a first storage component function for storing, in a first enhancement layer decoding reference buffer, the first enhancement layer reconstructed images or frames;
a pre-processing component function for pre-processing first enhancement layer video reconstructed images or frames;
a second storage component function for storing, in a second enhancement layer decoding reference buffer, the pre-processed first enhancement layer reconstructed images or frames for second enhancement layer video decoding; and
a second decoding component function for performing second enhancement layer video decoding the initial plurality of images or frames based on the pre-processed first enhancement layer reconstructed images or frames, and for decomposing a checkerboard interleaved frame into upconverted component planes, wherein all of the two or more views are decoded and processed in each of the first enhancement layer and the second enhancement layer.

5. The decoder of claim 4, wherein the two or more views are interleaved in a checkerboard pattern.

6. An apparatus for decoding a two-dimensional (2D) compatible or frame compatible three-dimensional (3D) video signal, the apparatus comprising:
a first decoding component for performing first enhancement layer video decoding an initial plurality of encoded images or frames, each image or frame comprising two or more views, to form first enhancement layer reconstructed images or frames;
a first storage component for storing, in a first enhancement layer decoding reference buffer, the first enhancement layer reconstructed images or frames;
a pre-processing component for pre-processing first enhancement layer video reconstructed images or frames refining views of the first enhancement layer video reconstructed images or frames for prediction;
a second storage component for storing, in a second enhancement layer decoding reference buffer, the pre-processed first enhancement layer reconstructed images or frames for second enhancement layer video decoding; and
a second decoding component for performing second enhancement layer video decoding the initial plurality of images or frames based on the pre-processed first layer reconstructed images or frames and for decomposing a checkerboard interleaved frame into upconverted component planes,
wherein all of the two or more views are decoded and processed in each of the first enhancement layer and the second enhancement layer.

7. The apparatus of claim 6, wherein the two or more views are interleaved in a checkerboard pattern.

8. A non-transitory computer-readable medium containing a set of instructions that causes a computer to perform a process for decoding a two-dimensional (2D) compatible or frame compatible three-dimensional (3D), wherein the process comprises the steps of:
first enhancement layer video decoding an initial plurality of encoded images or frames, each image or frame comprising two or more views, to form first enhancement layer reconstructed images or frames;
storing, in an first enhancement layer decoding reference buffer, the first enhancement layer reconstructed images or frames;
pre-processing first enhancement layer video reconstructed images or frames;
storing, in a second enhancement layer decoding reference buffer, the pre-processed first enhancement layer reconstructed images or frames for second enhancement layer video decoding;
second enhancement layer video decoding the initial plurality of images or frames based on the pre-processed first enhancement layer reconstructed images or frames; and,
decomposing a checkerboard interleaved frame into upconverted component planes,
wherein all views of the initial plurality of encoded images or frames are decoded and processed in each of the first enhancement layer and the second enhancement layer.

9. The non-transitory computer-readable medium of claim 8, wherein the two or more views are interleaved in a checkerboard pattern.