The present invention relates to coding and decoding methods for coding a picture based on prediction with reference to decoded pictures. In particular, the invention relates to moving picture coding and decoding methods employing a loop filter for reducing distortion caused by compression errors in motion compensation.
In general, a coding for compressing a moving picture reduces the amount of data by eliminating temporal as well as spatial redundancies. In inter-picture coding, which aims to reduce the temporal redundancy, a predictive image is obtained by performing motion estimation and motion compensation on a block-by-block basis with reference to forward and backward pictures so that a differential between the obtained predictive image and a current block to be coded is coded. A picture is decoded using the procedure almost reverse to the one used in the coding method.
A square-shaped noise called “block noise” may appear in a decoded picture as compression artifacts due to the motion compensation performed on a block-by-block basis. As a solution to the block noise, a loop filter is employed in the prior art, for example, the ITU-T Rec. H.264|ISO/IEC 14496-10 AVC Joint Final Committee Draft of Joint Video Specification (2002-8-10).
The filter 512 is a loop filter for reducing block noise in the picture decoded after having been coded through the subtracter 505, the orthogonal transformation unit 506, the quantization unit 507, the multiplexing unit 508, the inverse quantization unit 509, the inverse orthogonal transformation unit 510, and the adder 511.
The memory 501 temporally stores pictures filtered by the filter 512. Pictures reconstructed based on the filtered pictures include a picture for reference and a picture for output (also referred to as a picture for display). The picture for reference is referred to by the inter-picture prediction unit 502 as well as the intra-picture prediction unit 503 and then outputted according to a display order. The picture for output, on the other hand, is a picture to be outputted according to the display order and is not referred to. The “output” here means an output of a picture to be displayed on an external display device, but the picture shall be neither necessarily displayed by the picture coding apparatus 500 nor outputted outside. For example, a picture is displayed when monitored by the display device simultaneously at the time of coding. In other cases, however, the picture is not displayed.
The following describes an alignment of pictures showing reference relations between pictures used for prediction and an operation of storing pictures in the memory 501.
The arrows indicate reference relations used in the inter-picture predictive coding. For example, a reference picture for a picture P3 is a picture I0 while reference pictures for a picture P6 are the pictures I0 and P3.
According to such reference relations, the display order of the pictures differs from the coding order (i.e., an order of pictures in the stream). The lower part in the diagram shows a correlation between the pictures arrayed in display order and those arrayed in coding order (stream order). As shown in the diagram, the picture coding apparatus rearranges the pictures in display order to the pictures in coding order according to the picture alignment for prediction.
As shown in
In this way, not only reference pictures but also output pictures are stored in the memory 501. When the stored reference picture is outputted and is no longer referred to, the memory area holding the reference picture is used to store a new picture. When an output picture is outputted, the memory area holding the output picture is used to store a new picture.
As shown in the diagram, the picture coding apparatus 500 judges whether or not a reconstructed picture (to be referred to as a current picture hereinafter) is a reference picture (S10).
When judging that the current picture is a reference picture, the picture coding apparatus 500 judges whether or not the reference area has an empty area for storing a picture (S11) and when no free space is found, the picture firstly stored in the reference area is moved to a display area (S12). This move is explained as a case of the picture fP4 shown in (7) in
On the other hand, when judging that the current picture is not a reference picture in S10, the picture coding apparatus 500 judges whether or not the memory has an empty area (S15). When judging that no empty area is found, the picture coding apparatus 500 judges whether the current picture is a picture to be firstly outputted (displayed) (S16). When judging that the current picture is a picture to be firstly outputted, the picture coding apparatus 500 does not store but outputs (displays) the current picture (S17), and when judging that the current picture is not a picture to be firstly outputted, the picture coding apparatus 500 performs the area allocation processing (S15). Either after allocating the area in 518 or after judging that an empty area is found in S15, the picture coding apparatus 500 stores the current picture in the area (S19).
Thus, the picture coding apparatus 500 stores the picture reconstructed after filtering in the memory 501, either as a reference picture or as a picture for output so as to output it for display.
The picture coding apparatus 500 and the picture decoding apparatus 600 are thus structured for the case in which the pictures in coding order are rearranged in display order as shown in the picture alignments for prediction shown in
Such picture coding apparatus and the picture decoding apparatus in the prior art reduce the block noise for all the pictures by means of filtering. In addition, they improve the quality of pictures as well as the coding efficiency as the block noise is reduced also for reference pictures.
However, the related art has contained a problem of degrading the quality unique to films produced as film grains, when the material of pictures is film. This is because the film grains, appearing in a picture signal as a special signal component which has few spatio-temporal correlations between the pictures, are removed by a loop filter.
The picture coding apparatus without a loop filter as in MPEG-2 degrades coding efficiency (i.e., compression rate) when such film grains appear in the picture signal.
An aim of the present invention is to provide a picture coding method and a picture decoding method for efficient coding without impairing the quality of pictures in the case of films.
In order to achieve the above object, the picture coding method according to the present invention for predictively coding a picture with reference to pictures obtained from pictures coded and decoded, the method comprising: a filtering step of performing filtering processing on a decoded picture, a first determination step of determining a filtered picture as a reference picture, out of two pictures: a filtered picture and an unfiltered picture, said filtered picture being a filtered decoded picture and said unfiltered picture being said decoded picture; and a second determination step of determining an unfiltered picture as an output picture out of the two pictures.
The picture coding method further comprises a first storage step of storing the filtered picture in a memory as a reference picture; and a second storage step of storing the unfiltered picture in the memory as an output picture.
With the structure described above, the film grains are reduced for reference pictures so that coding efficiency is improved while the film grains are left for output pictures so that the quality of films is not degraded.
The picture coding method may further comprise a releasing step of releasing a memory area storing a reference picture which is no longer used for reference, said reference picture being one of the reference pictures stored in the memory.
In the releasing step, when a reference picture becomes a picture which is no longer used for reference, an area storing the reference picture is released, said reference picture being one of the reference pictures stored in the memory.
In the releasing step, when a reference picture becomes a picture which is no longer used for reference, an area storing the reference picture is released in a case in which an output picture is already outputted, said reference picture being one of the reference pictures stored in the memory, and said reference picture and output picture being originated from one decoded picture.
The picture coding method may further comprise a coding step of coding identification information indicating which of the unfiltered picture and the filtered picture is to be determined as an output picture.
With the structure as described above, the picture decoding apparatus can switch the picture either before or after the filtering into a picture for output by coding identification information depending on, for example, whether or not the material of pictures is film. As a result, pictures can be displayed with optimal quality according to the material.
The picture coding method and the picture decoding method used in the present invention have effects in coding pictures such as a film effectively without taking away the quality of such pictures. Also, the picture can be displayed with optimal quality depending on the material of the picture.
As for the picture coding apparatus, the picture decoding apparatus, the program and the stream according to the present invention, the descriptions are abbreviated as they respectively have the same structures, operations and effects as the method described above.
For further information about technical background to this application, Provisional Application No. 60/449,209 filed on Feb. 21, 2003, U.S. application Ser. No. 10/724,317 filed on Nov. 26, 2003, and Japanese Patent Application No. 2003-398981 filed on Nov. 28, 2003, are incorporated herein by reference.
These and other objects, advantages and features of the invention will become apparent from the following description thereof taken in conjunction with the accompanying drawings that illustrate a specific embodiment of the invention. In the Drawings:
FIGS. 12A˜12C are illustrations showing a storage medium for storing a program;
<Structure of Picture Coding Apparatus 100>
The memory 101 stores pictures both unfiltered and filtered by the filter 112. The pictures filtered by the filter 112 are used as reference pictures while the pictures that are not filtered are used as output pictures. The film grains are reduced for the reference pictures so that coding efficiency is improved. The film grains are left for the output pictures so that the quality of films is not degraded.
The inter-picture prediction unit 102 generates a predictive picture based on inter-picture prediction. That is to say, the inter-picture prediction unit 102 estimates a motion vector with reference to a reference picture stored in the memory 101 in units of blocks included in a current picture to be coded and generates a predictive picture based on the reference picture according to the motion vector. In this case, the inter-picture prediction unit 102 uses a single reference picture when the current picture is a P-picture and uses two reference pictures when the current picture is a B-picture.
The intra-picture coding unit 103 generates a predictive picture based on intra-picture prediction. That is to say, the intra-picture prediction unit 103 generates a predictive picture in units of blocks included in the current picture, an I-picture. In this case, the intra-picture prediction unit 103 refers to the pixels in the I-picture that is already decoded and stored in the memory 101.
When the current picture is either a P-picture or a B-picture, the switch 104 connects either to the side of the inter-picture prediction unit 102 or to the side of the intra-picture prediction unit 103, whichever having the smaller prediction error. When the current picture is an I-picture, the switch 104 connects to the side of the intra-picture prediction unit 103.
The subtracter 105 subtracts each of the pixel values in a current block to be coded from each of the pixel values in the predictive picture inputted either from the inter-picture prediction unit 102 or the intra-picture prediction unit 103 via the switch 104. The result obtained from the subtraction is called a prediction error.
The orthogonal transformation unit 106 performs orthogonal transformation to the prediction error outputted from the subtracter 105. The result obtained from the orthogonal transformation is called a coefficient block.
The quantization unit 107 quantizes the coefficient block outputted from the orthogonal transformation unit 106. The result obtained from the quantization is called a quantized coefficient block.
The multiplexing unit 108 variable length codes the quantized coefficient block outputted from the quantization unit 107 and further codes, as a stream, the variable length codes, the motion vector information indicating the motion vectors estimated by the inter-picture prediction unit 102, the intra-picture prediction mode information outputted from the intra-picture prediction unit 103, selection information indicating the switching operated by the switch 104, the filter application information relating to the picture to be stored in the memory 101, and others.
The inverse quantization unit 109 inverse quantizes the quantized coefficient block outputted from the quantization unit 107 to obtain a coefficient block.
The inverse orthogonal transformation unit 110 performs inverse orthogonal transformation on the coefficient block outputted from the inverse quantization unit 109 to obtain a prediction error.
The adder 111 adds each of the pixel values in the prediction error outputted from the inverse orthogonal transformation unit 110 to each of the pixel values of the predictive image inputted either from the inter-picture prediction unit 102 and the intra-picture prediction unit 103 via the switch 104. The result of the addition is a decoded block generated for the current block. The picture to which the filter is not applied is reconstructed by storing sequentially such decoded blocks in the memory 101.
The filter 112 performs filtering in order to reduce the block noise in the decoded block outputted from the adder 111. For example, the filter 112 performs filtering both in horizontal and vertical directions (e.g., the number of taps is several like 9 up to more than 10), for the pixels in the border of the decoded block outputted from the adder 111, using the pixel values in the decoded block which is already stored in the memory 101. The picture to which the filter is applied is thus reconstructed.
The control unit 113 controls the picture coding apparatus 100 on the whole. The control unit 113 controls particularly to store and output both the filtered and unfiltered pictures in and from the memory 101.
<First Example of Storing Pictures in the Memory 101>
In (1) of
In (2), the filtered picture fP3 and the unfiltered picture P3 are respectively reconstructed. The unfiltered picture P3 is stored in the display area while the filtered picture fP3 is stored in the reference area.
In (3), the unfiltered picture B1 is reconstructed. This picture is not a reference picture. The filtered picture fB1 is therefore not reconstructed. Firstly, the unfiltered picture I0 stored in the display area is outputted so that the area is released. The unfiltered picture B1 is then stored in the display area from which the picture I0 is released.
In (4), the unfiltered picture B2 is reconstructed. This picture is not a reference picture, therefore, the filtered picture fB2 is not reconstructed. Firstly, the unfiltered picture B1 is outputted from the display area so that the area is released. The unfiltered picture B2 is then stored in the display area from which the picture B1 is released.
In (5), the filtered picture fP6 and the unfiltered picture P6 are respectively reconstructed. Firstly, the unfiltered pictures B2 and P3 are sequentially outputted from the display area so that the areas are released. The unfiltered picture P6 is then stored in the released display area while the filtered picture fP6 is stored in the released reference area. Namely, the maximum number of pictures in the reference area is three while the number of pictures in the display area is one.
In (6), the unfiltered picture B4 is reconstructed. This picture is not a reference picture. The filtered picture fB4 is therefore not reconstructed. The reconstructed picture (B4) is not stored in the memory 101 but outputted.
In (7), the unfiltered picture B5 is reconstructed. This picture is not a reference picture. The filtered picture fB5 is therefore not reconstructed. The reconstructed picture (B5) is not stored in the memory 101 but outputted.
In (8), the filtered picture fP9 and the unfiltered picture P9 are respectively reconstructed. Firstly, the unfiltered picture P6 is outputted from the display area so that the area is released. The unfiltered picture P9 is then stored in the released display area while the filtered picture fP9 is stored in the reference area.
Thus, the picture coding apparatus 100 stores the filtered picture in the reference area as a reference picture and stores the unfiltered picture in the display area as a picture for output. Moreover, in the case of using the picture alignment for prediction employed in the first example (see
<Second Example of Storing Pictures in the Memory 101>
In (1) of
In (2), the filtered picture fP4 and the unfiltered picture P4 are respectively reconstructed. The unfiltered picture P4 is stored in the display area while the filtered picture fP4 is stored in the reference area.
In (3), the filtered picture fB2 and the unfiltered picture B2 are respectively reconstructed. Firstly, the unfiltered picture I0 is outputted so that the area is released. The unfiltered picture B2 is then stored in the display area while the filtered picture fB2 is stored in the reference area.
In (4), the unfiltered picture B1 is reconstructed. This picture is not a reference picture. The filtered picture fB1 is therefore not reconstructed. The reconstructed picture B1 is not stored in the memory 101 but outputted.
In (5), the unfiltered picture B3 is reconstructed. This picture is not a reference picture. The filtered picture fB3 is therefore not reconstructed. Firstly, the unfiltered picture B2 is outputted from the display area. The unfiltered picture B3 is then stored in the display area.
In (6), the filtered picture fP8 and the unfiltered picture P8 are respectively reconstructed. Firstly, the picture fI0 in the reference area is released (since the picture I0 is already displayed) and then the unfiltered picture B3 is outputted from the display area so that the area is released. The areas equivalent to two pictures are released so that the unfiltered picture P8 is stored in the display area while the filtered picture fP8 is stored in the reference area.
In (7), the filtered picture fB6 and the unfiltered picture B6 are respectively reconstructed. Firstly, the picture fP4 in the reference area is released (since the picture P4 is in the display area) and then the unfiltered picture P4 is released from the display area so that the area is released. The unfiltered picture B6 is then stored in the released display area while the filtered picture fB6 is stored in the reference area.
In (8), the unfiltered picture B5 is reconstructed. This picture is not a reference picture. The filtered picture fB5 is therefore not reconstructed. The reconstructed picture B5 is not stored in the memory 101 but outputted.
In (9), the unfiltered picture B7 is reconstructed. This picture is not a reference picture. The filtered picture fB7 is therefore not reconstructed. Firstly, the unfiltered picture B6 is outputted from the display area so that the area is released. The unfiltered picture B7 is then stored in the display area.
Thus, the picture coding apparatus 100 stores the filtered picture in the reference area as a reference picture and stores the unfiltered picture in the display area as a picture for output. Moreover, in the case of using the picture alignment for prediction employed in the second example shown in
<Third Example of Storing Pictures in the Memory 101>
In (1) of
In (2), the filtered picture fP4 and the unfiltered picture P4 are respectively reconstructed. The unfiltered picture P4 is stored in the display area while the filtered picture fP4 is stored in the reference area. The empty memory areas are getting fewer at this point in the third example, which is different from the second example.
In (3), the filtered picture fB2 and the unfiltered picture B2 are respectively reconstructed. The filtered picture fB2, being a reference picture, needs to be stored definitely. For this, the unfiltered picture I0 is outputted from the display area for release so that the picture fB2 is stored in the released area. However, the picture B2 cannot be stored at this point since there are no released areas, and the picture B1, which is the next picture to be displayed, is not yet reconstructed. Then, the reconstructed picture B2 is outputted, skipping the picture B1 that is to be displayed next.
In (4), the unfiltered picture B1 is reconstructed. This picture is not a reference picture. The filtered picture fB1 is therefore not reconstructed. Since no released areas are found at this point and the picture B2, whose position in display order is later than that of B1, is already outputted, the picture B1 is not stored.
In (5), the unfiltered picture B3 is reconstructed. This picture is not a reference picture. The filtered picture fB3 is therefore not reconstructed. The picture B2 to be displayed next is already displayed. The picture B3 is therefore outputted.
In (6), the filtered picture fP8 and the unfiltered picture P8 are respectively reconstructed. Firstly, the unfiltered picture P4 is outputted so that the area is released. The unfiltered picture P8 is stored in the display area while the picture I0 in the reference area is released (since the picture fI0 is already displayed) so that the filtered picture fP8 is stored in the released area in the reference area.
In (7), the filtered picture fB6 and the unfiltered picture B6 are respectively reconstructed. The filtered picture fB6, being a reference picture, needs to be stored definitely. The picture P8 whose position in display order is later than that of the picture B6 is stored in the display area so that the reconstructed picture B6 is outputted skipping the picture B5, the next picture to be displayed in display order. The picture fP4 in the reference area is released (since the picture P4 is already displayed) so that the picture fB6 is stored in the released area.
In (8), the unfiltered picture B5 is reconstructed. This picture is not a reference picture. The filtered picture fB5 is therefore not reconstructed. The picture B6 whose position in display order is later than that of the picture B5 is already outputted so that the reconstructed picture B5 is neither stored in the memory 101 nor outputted.
In (9), the unfiltered picture B7 is reconstructed. This picture is not a reference picture. The filtered picture fB7 is therefore not reconstructed. The unfiltered picture B7 is not stored in the memory 101 but outputted.
Thus, the picture coding apparatus 100 stores the filtered picture in the reference area as a reference picture and stores the unfiltered picture in the display area as a picture for output. The case of lacking the display area may occur since the memory 101 has fewer memory areas, compared to the second example. As a result, a part of the picture may not be outputted. This is a disadvantage of the picture coding apparatus 100, but an advantage is that all the pictures can be properly coded using fewer memory areas.
<First Memory Management Processing>
As shown in the diagram, the control unit 113 firstly judges whether or not the current picture is a reference picture (S50).
When judging that the current picture is a reference picture, the control unit 113 judges whether the reference area has an empty area for storing the picture (S51). When judging that no empty area is found, the control unit 113 releases the picture which is firstly stored within the reference area (S52). Either after judging that an empty area is found in S51 or after judging that the picture is released in S52, the control unit 113 stores the filtered current picture as a reference picture, either into the empty area or into the released area (S53).
When judging that the current picture is not a reference picture in S50, the control unit 113 judges whether or not the memory area including both reference area and display area has an empty area (S54). When judging that the memory has no empty area, the control unit 113 judges whether or not the current picture is a picture to be firstly outputted (displayed) (S55). When judging the current picture is to be firstly outputted, the control unit 113 does not store the unfiltered current picture in the memory 101 but outputs it (S56) and when the current picture is not a picture to be firstly outputted, the control unit 113 performs processing to allocate an area (S57). After the allocation of an area in S57 or after the finding of an empty area in S54, the control unit 113 stores the unfiltered current picture accordingly either in the allocated area or in the empty area (S58).
Thus, the control unit 113 stores the picture reconstructed after filtering as a reference picture and stores the picture reconstructed without filtering as a picture for output, respectively in the memory 101.
In the first memory management processing shown in
<Second Memory Management Processing>
In the second memory management processing, the memory area is released once at maximum for a reference picture (a reconstructed picture which is filtered) as in the case of the first memory management processing. The difference, however, is that the memory area is released for twice at maximum for a picture for output (a reconstructed picture which is not filtered). Namely, the total number of releasing processing in the first memory management processing is two at maximum: one time for storing a reference picture and the other time for storing a picture for output. In the second memory management processing, however, the releasing processing is performed for storing only a picture for output. Therefore, S67 is activated for two times at maximum for allocating a maximum of two memory areas: one time for a reference picture and the other time for an output picture. Although the second memory management processing has a different flow regarding this aspect, the same result as shown in FIGS. 2˜4 can be obtained.
As shown in
When judging that the current picture is a reference picture, the control unit 113 judges whether or not the reference area has an empty area (S61). When no empty area is found, the control unit 113 moves the picture that is firstly stored in the reference area (S62). The move here does not mean to transfer the picture between the memory areas but to change an attribute of the memory area from “for reference” to “for display”.
Either after judging that an empty area is found in S60 or after the picture is moved in S62, the control unit 113 stores the filtered current picture as a reference picture, either into the empty area or into the free space generated by the move (S63).
When judging that the current picture is not a reference picture in S60, the control unit 113 judges whether or not the memory area, which includes the reference area and the display area, has an empty area (S64). When judging that no empty area is found, the control unit 113 judges whether or not the current picture is a picture to be firstly outputted (displayed) (S65). When judging that the current picture is to be firstly outputted, the control unit 113 stores the unfiltered current picture into the memory 101 and outputs (displays) it (S66). When judging that the current picture is not to be firstly outputted, the control unit 113 performs the processing to allocate an area (S67) and returns to S64. When judging that an empty area is found in S64, the control unit 113 stores the unfiltered current picture into the display area (S68).
The area allocation processing shown in S67 and S68 is as same as the one shown in the flowchart in
<Structure of Picture Decoding Apparatus>
As is described above, with the picture coding apparatus and the picture decoding apparatus according to the present embodiment, the filtered pictures are used as reference pictures while the unfiltered pictures are used as output pictures. The block noise and the film grains are reduced for the reference pictures so that coding efficiency can be enhanced. Moreover, the film grains are remained for the output pictures so that the quality of films is not impaired.
The structures of the picture coding apparatus 100 and the picture decoding apparatus 200 according to the first embodiment are for the case in which the pictures are rearranged for display as seen in the picture alignments for prediction shown in
The memory 101 stores a filtered picture as a reference picture, but does not store an unfiltered picture.
The switch 114 receives a reconstructed picture (i.e., an unfiltered picture) from the adder 111 and a reconstructed picture (i.e., a filtered picture) from the filter 112 and outputs either of them selectively according to filter application information.
As is described above, with the picture coding apparatus 100a and the picture decoding apparatus 200a according to the present embodiment, the block noise and the film grains are reduced for the reference pictures since they are filtered so that coding efficiency is enhanced. In addition, the pictures can be outputted without degrading the quality of films in the case in which the material of pictures is film because the switches 114 and 214 select unfiltered pictures. When the material is something other than film, the switches 114 and 214 select a filtered picture so that a picture with less noise can be outputted and the optimal quality of the picture can be selected according to the material.
It should be noted that each of the above embodiments may have a structure for switching the pictures to be outputted according to the filter application information. An example of the filter application information in this case is shown in
It is explained in the each of the above embodiments that a reconstructed picture that is filtered is used as a reference picture and a reconstructed picture that is not filtered is used as an output picture. It may be switched between such method and the existing method in which the unfiltered reconstructed picture is used as a reference picture and the filtered reconstructed picture is used as an output picture, depending on a picture.
Namely, any of the following (1)˜(3) may be switched on a picture-by-picture basis.
(1) Storing two pictures: a filtered reconstructed picture as a reference picture; and an unfiltered reconstructed picture as an output picture.
(2) Storing one unfiltered reconstructed picture as a reference picture.
(3) Storing one filtered reconstructed picture as an output picture.
The flow shown in
Furthermore, it is also possible to assign codes corresponding to a display order of pictures like Picture Order Count (POC) to each of the pictures so that the flow shown in
Furthermore, the processing illustrated in the above embodiment can be carried out easily in an independent computer system by recording a program for realizing the picture coding method described in the above embodiments onto a recording medium such as a flexible disk or the like.
The disk FD is contained in a case F with a plurality of tracks Tr formed concentrically from the periphery to the inside on the surface of the disk FD, and each track is divided into 16 sectors Se in the angular direction. Thus, the picture coding method as the program mentioned above is recorded in an area assigned for it on the disk FD.
When the program is recorded on the flexible disk FD, the computer system Cs writes in the picture coding method as the program mentioned above via a flexible disk drive FDD. When the picture coding method is constructed in the computer system Cs using the program on the flexible disk FD, the program is read out from the flexible disk FD and then transferred to the computer system Cs by the flexible disk drive FDD.
It should be noted that, in the above explanation, the flexible disk FD is used as an example of a recording medium, but the same processing can also be performed using an optical disk. In addition, the recording medium is not limited to these mentioned above, but any other medium capable of recording a program such as an IC card and a ROM cassette can be employed.
The following is a description for the applications of the picture coding method illustrated in the above-mentioned embodiments and a system using them.
This content supply system ex100 is connected to apparatuses such as a computer ex111, a Personal Digital Assistant (PDA) ex112, a camera ex113, a cell phone ex114 and a cell phone with a camera ex115 via, for example, Internet ex101, an Internet service provider ex102, a telephone network ex104, as well as the cell sites ex107˜ex110.
However, the content supply system ex100 is not limited to the configuration shown in
The camera ex113 is an apparatus capable of shooting video such as a digital video camera. The cell phone ex114 may be a cell phone of any of the following system: a Personal Digital Communications (PDC) system, a Code Division Multiple Access (CDMA) system, a Wideband-Code Division Multiple Access (W-CDMA) system or a Global System for Mobile Communications (GSM) system, a Personal Handyphone System (PHS) or the like.
A streaming server ex103 is connected to the camera ex113 via the telephone network ex104 and also the cell site ex109, which realizes a live distribution or the like using the camera ex113 based on the coded data transmitted from the user. Either of the camera ex113, the server which transmits the data and the like may code the data. The moving picture data shot by a camera ex116 may be transmitted to the streaming server ex103 via the computer ex111. In this case, either the camera ex116 or the computer ex111 may code the moving picture data. An LSI ex117 included in the computer ex111 and the camera ex116 performs the coding processing. Software for coding and decoding pictures may be integrated into any type of recording medium (such as a CD-ROM, a flexible disk and a hard disk) that is a recording medium which is readable by the computer ex111 or the like. Furthermore, a cell phone with a camera ex115 may transmit the moving picture data. This moving picture data is the data coded by the LSI included in the cell phone ex115.
The content supply system ex100 codes contents (such as a music live video) shot by a user using the camera ex113, the camera ex116 or the like in the same way as shown in the above-mentioned embodiments and transmits them to the streaming server ex103, while the streaming server ex103 makes stream delivery of the content data to the clients at their requests. The clients include the computer ex111, the PDA ex112, the camera ex113, the cell phone ex114 and so on capable of decoding the above-mentioned coded data. In the content supply system ex100, the clients can thus receive and reproduce the coded data, and can further receive, decode and reproduce the data in real time so as to realize personal broadcasting.
When each apparatus in this system performs coding or decoding, the picture coding apparatus or the picture decoding apparatus shown in the above-mentioned embodiments can be used.
A cell phone will be explained as an example of such apparatus.
Next, the cell phone ex115 will be explained with reference to
When a call-end key or a power key is turned ON by a user's operation, the power supply circuit unit ex310 supplies the respective units with power from a battery pack so as to activate the digital cell phone with a camera ex115 as a ready state.
In the cell phone ex115, the audio processing unit ex305 converts the audio signals received by the audio input unit ex205 in conversation mode into digital audio data under the control of the main control unit ex311 including CPU, ROM and RAM, the modem circuit unit ex306 performs spread spectrum processing for the digital audio data, and the communication circuit unit ex301 performs digital-to-analog conversion and frequency conversion for the data, so as to transmit it via the antenna ex201. Also, in the cell phone ex115, the communication circuit unit ex301 amplifies the data received by the antenna ex201 in conversation mode and performs frequency conversion and the analog-to-digital conversion to the data, the modem circuit unit ex306 performs inverse spread spectrum processing of the data, and the audio processing unit ex305 converts it into analog audio data so as to output it via the audio output unit ex208.
Furthermore, when transmitting an e-mail in data communication mode, the text data of the e-mail inputted by operating the operation keys ex204 of the main body is sent out to the main control unit ex311 via the operation input control unit ex304. In the main control unit ex311, after the modem circuit unit ex306 performs spread spectrum processing of the text data and the communication circuit unit ex301 performs the digital-to-analog conversion and the frequency conversion for the text data, the data is transmitted to the cell site ex111 via the antenna ex201.
When picture data is transmitted in data communication mode, the picture data shot by the camera unit ex203 is supplied to the picture coding unit ex312 via the camera interface unit ex303. When it is not transmitted, it is also possible to display the picture data shot by the camera unit ex203 directly on the display unit ex202 via the camera interface unit ex303 and the LCD control unit ex302.
The picture coding unit ex312, which includes the picture coding apparatus as described for the present invention, compresses and codes the picture data supplied from the camera unit ex203 using the coding method employed by the picture coding apparatus as shown in the embodiments mentioned above so as to transform it into coded image data, and sends it out to the multiplexing/demultiplexing unit ex308. At this time, the cell phone ex115 sends out the audio received by the audio input unit ex205 during the shooting with the camera unit ex203 to the multiplexing/demultiplexing unit ex308 as digital audio data via the audio processing unit ex305.
The multiplexing/demultiplexing unit ex308 multiplexes the coded image data supplied from the picture coding unit ex312 and the audio data supplied from the audio processing unit ex305, using a predetermined method, then the modem circuit unit ex306 performs spread spectrum processing of the multiplexed data obtained as a result of the multiplexing, and lastly the communication circuit unit ex301 performs digital-to-analog conversion and frequency transform of the data for the transmission via the antenna ex201.
As for receiving data of a moving picture file which is linked to a Web page or the like in data communication mode, the modem circuit unit ex306 performs inverse spread spectrum processing for the data received from the cell site ex110 via the antenna ex201, and sends out the multiplexed data obtained as a result of the inverse spread spectrum processing.
In order to decode the multiplexed data received via the antenna ex201, the multiplexing/demultiplexing unit ex308 demultiplexes the multiplexed data into a bit stream of image data and that of audio data, and supplies the coded image data to the picture decoding unit ex309 and the audio data to the audio processing unit ex305, respectively via the synchronous bus ex313.
Next, the picture decoding unit ex309, including the picture decoding apparatus as described for the present invention, decodes the bit stream of the image data using the decoding method corresponding to the coding method as shown in the above-mentioned embodiments to generate reproduced moving picture data, and supplies this data to the display unit ex202 via the LCD control unit ex302, and thus the image data included in the moving picture file linked to a Web page, for instance, is displayed. At the same time, the audio processing unit ex305 converts the audio data into analog audio data, and supplies this data to the audio output unit ex208, and thus the audio data included in the moving picture file linked to a Web page, for instance, is reproduced.
It should be noted that the present invention is not limited to the above-mentioned system since ground-based or satellite digital broadcasting has been in the news lately and at least either the picture coding apparatus or the picture decoding apparatus described in the above-mentioned embodiments can be incorporated into a digital broadcasting system as shown in
Furthermore, the picture coding apparatus as shown in the above-mentioned embodiments can code picture signals and record them on the recording medium. As a concrete example, a recorder ex420 such as a DVD recorder for recording picture signals on a DVD disk ex421, a disk recorder for recording them on a hard disk can be cited. They can be recorded on an SD card ex422. When the recorder ex420 includes the picture decoding apparatus as shown in the above-mentioned embodiments, the picture signals recorded on the DVD disk ex421 or the SD card ex422 can be reproduced for display on the monitor ex408.
It should be noted that the structure without the camera unit ex203, the camera interface unit ex303 and the picture coding unit ex312, out of the components shown in
In addition, three types of implementations can be conceived for a terminal such as the cell phone ex114: a sending/receiving terminal implemented with both an encoder and a decoder, a sending terminal implemented with an encoder only, and a receiving terminal implemented with a decoder only.
As described above, it is possible to use the picture coding method described in the above-mentioned embodiments for any of the above-mentioned apparatuses and systems, and by thus doing, the effects described in the above-mentioned embodiments can be obtained.
From the invention thus described, it will be obvious that the embodiments of the invention may be varied in many ways. Such variations are not to be regarded as a departure from the spirit and scope of the invention, and all such modifications as would be obvious to one skilled in the art are intended for inclusion within the scope of the following claims.
The present invention is practicable as a coding method and a decoding method for performing predictive coding with reference to coded pictures. The methods can be employed, for example, by a web server which distributes video, a network terminal which receives it, a digital camera which can record and replay the video, a cell phone equipped with a camera, a DVD recorder/player, a PDA, a personal computer, or the like.
Number | Date | Country | Kind |
---|---|---|---|
2003-398981 | Nov 2003 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US04/04647 | 2/18/2004 | WO | 4/27/2005 |
Number | Date | Country | |
---|---|---|---|
60449209 | Feb 2003 | US | |
60449209 | Feb 2003 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10724317 | Nov 2003 | US |
Child | 10532845 | Apr 2005 | US |