Patent Document

BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     The present invention relates to a motion picture encoding device and a motion picture decoding device, which have an inter-field prediction mode.  
         [0003]     2. Description of the Related Art  
         [0004]     Generally, motion picture data is large in size. Therefore, when motion picture data is transmitted from a transmitting device to a receiving device or when it is stored in a storage device, highly efficient encoding is applied to motion picture data. In this case, “highly efficient encoding” is an encoding process of converting a specific data string into another data string, and compressing the amount of data.  
         [0005]     There are two types of motion picture data: one is mainly composed of only frames and the other is composed of fields. A prior art for compressing a field image is mainly described below.  
         [0006]     As the highly efficient encoding method of motion picture data, a frame/field prediction encoding is known.  
         [0007]      FIG. 1  shows a block diagram of the configuration of the frame/field predictive encoding device.  
         [0008]     This encoding method utilizes the fact that a plurality of segments of motion picture data has high correlation in a time direction with each other. The operation shown in  FIG. 1  is roughly described below. A subtracter  39  generates a differential image between an inputted original image and a predicted image, and an orthogonal transform unit  31 , a quantization unit  32  and a coefficient entropy encoding unit  40  encode the differential image. An inverse quantization unit  33  and an inverse orthogonal transform unit  34  reproduce the differential image from the output of the quantization unit  32 . Then, a decoded image generation unit  35  decodes the encoded image using the reproduced differential image reproduced by the decoded image generation unit  35  and the predicted image used at the time of encoding. A decoded image storage unit  36  stores the reproduced image. Then, motion vector calculation unit  37  calculates a motion vector between the reproduced image and a subsequent input image, and a predicted image generation unit  38  generates a predicted image using the motion vector. The generated motion vector is encoded by a vector entropy encoding unit  41  and is outputted through a MUX  42  together with the encoded coefficient data encoded by the coefficient entropy encoding unit  40 . In other words, since in motion picture data, there is generally high similarity between frame/field data at a specific time and frame/field data at a subsequent time, the inter-frame/field predictive encoding method utilizes such a property. For example, in a data transmission system adopting the inter-frame/field predictive encoding method, a transmitting device generates motion vector data indicating displacement from previous frame/field image to a target frame/field image, and differential data between a predicted image in the target frame/field which is generated from the previous frame/field image using its motion vector data and a real image in the target frame/field, and transmits the motion vector data and the differential data to a receiving device. The receiving device reproduces the image in the target frame/field from the received motion vector data and differential data.  
         [0009]     So far, the summary of the frame/field predictive encoding has been described with reference to  FIG. 1 . Next, frame predictive encoding and field predictive encoding are described below.  
         [0010]      FIGS. 2 and 3  show a format used to encode a field image that is commonly used in ISO/IEC MPEG-2/MPEG-4 (hereinafter called “MPEG-2” and “MPEG-4”, respectively) and the final committee draft of ITU-T H.264/ISO/IEC MPEG-4 Part. 10 (Advanced video coding (AVC)) (“Joint Final Committee Draft (JFCD) of Joint Video Specification(ITU-TREC, H.264|SO/IEC 14496-10 AVC)”, JVT-D157, or ISO/IEC JTC1/SO29/WG11 MPEG02/N492, July 2002, Klagenfurt, AT)(hereinafter called “AVC FCD”), which ITU-T and ISO/IEC jointly were standardizing as of August 2002. Specifically, each frame is composed of two fields: a top field and a bottom field.  FIG. 2  shows the respective positions of a luminance pixels and a chrominance pixels, and a field to which each pixel belongs. As shown in  FIG. 2 , odd number-ordered luminance lines, such as a first luminance line ( 50   a ), a third luminance line ( 50   b ), a fifth luminance line ( 50   c ), a seventh luminance line ( 50   d ), etc., belong to the top field, and even number-ordered lines, such as a second luminance line ( 51   a ), a fourth luminance line ( 51   b ), a sixth luminance line ( 51   c ), a eighth luminance line ( 51   d ), etc., belong to the bottom field. Similarly, odd number-ordered chrominance lines, such as a first chrominance line ( 52   a ), a third chrominance line ( 52   b ), etc., belong to the top field, and even number-ordered chrominance line, such as a second chrominance ( 53   a ), a fourth chrominance line, etc., belong to the bottom field.  
         [0011]     Each of the top and bottom fields indicates an image at a different time. Next, the time/spatial disposition of the top and bottom fields is described with reference to  FIG. 3 .  
         [0012]     In FIGS.  3  and after, the technology of the present invention relates to the vertical component of a motion vector. Therefore, in this specification, horizontal pixel components are not shown, and all the horizontal components of the motion vector are assumed to be 0 for convenience sake. However, in order to show conventional problems and the effects of the present invention, the positional relation between luminance and chrominance in each field is accurately shown.  
         [0013]     In  FIG. 3 , the vertical and horizontal axes represent the pixel position of a vertical component in each field and the elapse of time, respectively. Since there is no positional change in a field of the horizontal component of each image, in  FIG. 3 , its horizontal pixel component is not shown nor is described.  
         [0014]     As shown in  FIG. 3 , the pixel position of a chrominance component deviates from the pixel position in a field of a luminance component by a quarter vertical pixel. This is because relationship of pixel positions as shown in  FIG. 2  is achieved when a frame is constructed from both Top and Bottom fields. If it is based on a NTSC format, each time interval between adjacent top and bottom fields ( 64   a :  65   a ,  65   a :  64   b , etc.) is approximately 1/60 seconds. Each time interval between two consecutive top fields ( 64   a :  64   b , etc.) or between two consecutive bottom field ( 65   a :  65   b , etc.) are approximately 1/30 seconds.  
         [0015]     Next, the frame predictive encoding mode of a field image and its field prediction, which is adopted in MPEG-2 and AVC FCD, are described.  
         [0016]      FIG. 4  shows a method for constructing a frame using two consecutive fields (adjacent top and bottom fields) in a frame predictive mode.  
         [0017]     As shown in  FIG. 4 , a frame is reconstructed by two time-consecutive fields (top and bottom fields).  
         [0018]      FIG. 5  shows a frame predictive mode.  
         [0019]     In  FIG. 5  it is assumed that each frame, such as  84   a ,  84   b ,  84   c , etc., is already reconstructed by two consecutive fields (top and bottom fields), as shown in  FIG. 4 . In this frame predictive mode, a frame to be encoded which is composed of top and bottom fields is encoded. As a reference image, one reference frame is constructed by two consecutive fields (top and bottom fields) stored for reference use, and is used to predict the target frame to be encoded. Then, these two frame images are encoded according to the process flow shown in  FIG. 1 . In the expression method of a motion vector of this frame predictive encoding mode, a zero vector, that is, (0,0) indicates a pixel located in the same spatial position. Specifically, the motion vector (0,0) of a luminance pixel  82  that belongs to frame#2 ( 84   b ) indicates the pixel position  81  of frame#1 ( 84   a ).  
         [0020]     Next, a field predictive encoding mode is described.  
         [0021]      FIG. 6  shows a predictive method in an inter-field predictive mode.  
         [0022]     In a field predictive mode, an encoding target is one top field ( 94   a ,  94   b , etc.) or bottom field ( 95   a ,  95   b , etc.) that is inputted as an original image. As a reference image, a top field or bottom field that is stored before can be used. In this case, it is generally defined that the fact that an original image field parity and a reference field parity are the same means that the original image field and the reference field both are top fields or bottom fields. For example, in a prediction  90  between fields with the same parity shown in  FIG. 6 , an original image field ( 94   b ) and a reference field ( 94   a ) both are top fields. Similarly, it is generally defined that the fact that an original image field parity and a reference field parity are different means that one of original image and reference fields is a top field and the other is a bottom field. For example, in a prediction  91  between different parity fields shown in  FIG. 6 , the original image field is a bottom field ( 95   a ) and the reference field is a top field ( 94   a ) . Then, these original image and reference fields are encoded according to the process flow shown in  FIG. 1 .  
         [0023]     In the prior art, in both frame and field modes, a motion vector is calculated based on a pixel position in each frame/field. Here, a conventional motion vector calculation method and a conventional pixel corresponding method used when a motion vector is given are described.  
         [0024]      FIG. 7  defines the coordinates of a frame/field image widely used in MPEG-2 coding, MPEG-1 coding, AVC FCD coding, etc. White circles in  FIG. 7  are pixel definition positions in target frames/fields. In the coordinates of this frame/field image, the upper left corner is designated as the origin (0,0), and values 1, 2, 3, etc., are sequentially assigned to both horizontal and vertical pixel definition positions. Specifically, the coordinates of a pixel that are located at the n-th horizontal position and the m-th vertical position are (n,m). Similarly, the coordinates of a position interpolated among the pixels are also defined. Specifically, since a position  180  marked with a black circle in  FIG. 7  is located at 1.5 pixels in the horizontal direction from the pixel located in the upper left corner and at 2 pixels in the vertical direction, the coordinates of the position  180  is expressed as (1.5, 2). In a field image, there are only a half of the pixels of a frame image in the vertical direction. However, even in this case, the coordinates of a pixel are defined in the same way as in  FIG. 7 , based on pixel positions located in each field.  
         [0025]     Next, the definition of a motion vector between fields is described using the coordinate system shown in  FIG. 7 .  
         [0026]      FIG. 8  shows a conventional calculation method of a motion vector between corresponding pixels between fields. The definition of a motion vector requires the position of a coding field and the position of a reference field. A motion vector is defined between these two points. Thus, a motion vector between a coding field coordinates  201  (X s ,Y s ) and a reference field coordinates  202  (X d ,Y d ) is calculated. In the conventional calculation method of a motion vector between pixels corresponding to between-fields, a motion vector is calculated by the same method described below, regardless of whether the coding field or reference field is a top field or a bottom field. Specifically, coding field coordinates  201  (X s ,Y s ) and reference field coordinates  202  (X d ,Y d ) are inputted to a motion vector calculation unit  200 , and as a motion vector  203  between these two points, (X d −X s ,Y d −Y s ) is given.  
         [0027]      FIG. 9  shows a conventional method for calculating a pixel that is pointed by a motion vector defined between fields. In this case, it is assumed that a motion vector is calculated by the method shown in  FIG. 8 . The calculation of reference frame/field coordinates requires a coding frame/field position and a motion vector. In the case shown in  FIG. 9 , it is assumed that a motion vector  211  (X,Y) is given for coding field coordinates  212  (X s ,Y s ), and reference field coordinates can be calculated using both the motion vector  212  (X,Y) and the coding field coordinates  212  (X s , Y s ). In the conventional calculation method of a motion vector between corresponding pixels between fields, a reference field position is calculated by the same method described below, regardless of whether the coding field or reference field is a top field or a bottom field. Specifically, a motion vector  211  (X,Y) and coding field coordinates  212  (X s ,Y s ) are inputted to a pixel corresponding unit  210 , and as reference field coordinates  213 , coordinates (X s +X,Y s +Y) is given.  
         [0028]     The definition of the relation between a vector and a pixel position applies to both a luminance component and chrominance component. In MPEG-1/MPEG-2/AVC FCD, which all are general motion picture encoding methods, only the vector of a luminance component is encoded, and the vector of a chrominance component is calculated by scaling down the luminance component. Particularly, in AVC FCD, since the number of vertical pixels and that of horizontal pixels of a chrominance component are a half of those of a luminance component, respectively, it is specified that a motion vector used to calculate the predictive pixel of a chrominance component should be obtained by accurately scaling down the motion vector of the luminance component to a half.  
         [0029]      FIG. 10  shows a conventional method for calculating a chrominance motion vector using a luminance motion vector.  
         [0030]     Specifically, if a luminance motion vector  221  and a chrominance motion vector  222  are (MV_x,MV_y) and (MVC_x, MVC_y), respectively, a chrominance motion vector generation unit  220  can calculate a chrominance motion vector  222  according to the following equation. 
 
( MVC   —   x, MVC   —   y )=( MV   —   x/ 2, MV   —   y/ 2)  (1) 
 
 This conventional calculation method can be used regardless of whether a motion vector is used for predicttion between fields with the same parity or between fields with different parity. 
 
         [0031]     In AVC FCD, as the accuracy of the motion vector of a luminance component, ¼ pixel accuracy can be applied. Therefore, as a result of equation (1), as the accuracy of the motion vector of a chrominance component, a vector having ⅛ pixel accuracy, that is, accuracy at the decimal fraction, can be used.  
         [0032]      FIG. 11  shows the calculation method of the interpolated pixel of a chrominance component that is defined in AVC FCD.  
         [0033]     In  FIG. 11 , a black circle and a white circle represent an integer pixel and an interpolated pixel, respectively. In this case, the horizontal coordinate of an interpolated pixel G(256) is obtained by internally dividing each horizontal coordinate between points A(250) and C(252) at a ratio α:1−α, and the vertical coordinate can be obtained by internally dividing each vertical coordinate between points A(250) and B(251) at β:1−β. In this case, α and β are a value between 0 and 1. An interpolated pixel G(256) defined by such positions can be roughly calculated as follows using integer pixels A(250), B(251), C(252) and D(253), which are located around the interpolated pixel G(256), and using α and β. 
 
 G =(1−α)·(1−β)· A +(1−α)·β· B +α·(1−β)· C+α·β·D   (2) 
 
         [0034]     The interpolated pixel calculation method of a chrominance component, using the method shown in  FIG. 11  is just one example, and there is no problem in using another calculation method.  
         [0035]     In the case of this field encoding mode, in a prediction in which an original image field and a reference field are different, that is, between fields with different parity, the respective zero vectors of the motion vector of a luminance component and that of a chrominance component are not parallel in the definition of AVC FCD. Specifically, if a prediction is made using the motion vector of a chrominance component calculated using the motion vector of a luminance component according to the conventional definition, a pixel located in a position spatially deviated from that of the luminance component is to be referenced. This fact is described below with reference to  FIG. 12 . In  FIG. 12 , it is assumed that a top field  130 , a bottom field  131  and a top field  132  continue timewise. In this case, bottom field  131  is to be encoded using top field  130 . In this inter-field encoding, the vertical motion vector in the same line of each field is defined to be zero. Therefore, if a zero vector (0,0) is assigned to a luminance pixel  133   a  that belongs to the second line of bottom field  131 , this pixel can be predicted from a pixel  135   a  in top field  130  .Similarly, when a zero vector (0,0) is assigned to a chrominance pixel  133   a  which belongs to the first line of the bottom field  131 , this pixel is predicted from the pixel  137   a  which is in the first line of chrominance of the top field  130 . Similarly, a luminance pixel  133   b  in the third line and a chrominance pixel  134   b , which belong to top field  132  are predicted from pixels  135   b  in the third line of luminance and  137   b  in the second line of chrominance in bottom field  131 , respectively. Since essentially it is preferable that a chrominance motion vector and a luminance motion vector are parallel, chrominance pixels  134   a  and  134   b  should be predicted from the positions  136   a  and  136   b , respectively, if a luminance motion vector is as it is.  
         [0036]     As described earlier, in a prediction between fields with different parity, the fact that the respective zero vectors of luminance and chrominance are not parallel is explained. In the case of AVC FCD, this fact causes the following problems for all vectors in a prediction between fields with different parity.  FIGS. 13 and 14  show such problems. Problems in the case of AVC FCD are described below. In the explanation below, a horizontal component of a motion vector is set to zero in all cases for brevity.  
         [0037]      FIG. 13  shows a conventional problem caused if a chrominance motion vector is conventionally calculated using a luminance motion vector when a reference field and a coding field are a bottom field and a top field, respectively. In AVC FCD, since, as is clear from equation (1), it is specified that the number of vertical and horizontal pixels of a chrominance component are a half of those of a luminance component, a motion vector used to calculate the predictive pixel of a chrominance should be scaled down to a half of the motion vector of a luminance component. This is regardless of whether a motion vector is used for predicttion between frames, between fields with the same parity or between fields with different parity.  
         [0038]     It is shown below that this definition causes a problem when a chrominance motion vector is calculated using a luminance motion vector defined between fields with different parity. In  FIG. 13 , a coding field top field luminance pixel  140  in the first line has (0,1) as a predictive vector, and as a result, it points a bottom reference field luminance pixel position  141  in the second line as a predictive value.  
         [0039]     In this case, a chrominance motion vector that belongs to the same block is calculated to be (0,1/2), according to equation (1). If a prediction is made using motion vector (0,1/2) as a predictive value of a coding field top field chrominance-pixel  142  in the first line, a pixel position  143  is used as predicted value, which shifts downward by half a pixel from a pixel in the first line of a bottom reference field chrominance component.  
         [0040]     In this case, a luminance motion vector (0,1) and a chrominance vector (0,1/2) are not parallel. It is preferable to use a bottom reference field chrominance predictive pixel position  145  to which a chrominance motion vector parallel to a luminance motion vector is applied.  
         [0041]      FIG. 14  shows a conventional problem caused if a chrominance motion vector is calculated using a luminance motion vector when a reference field and a coding field are a top field and a bottom field, respectively. As described in  FIG. 13 , in  FIG. 14 , a bottom coding field luminance pixel  150  in the first line has (0,1) as a predictive vector, and as a result, it points a reference top field luminance pixel position  151  in the second line as a predictive value.  
         [0042]     In this case, a chrominance motion vector that belongs to the same block is calculated to be (0,1/2), according to equation (1). If a prediction is made using motion vector (0,1/2) as a predictive value of a bottom coding field chrominance pixel  152 , a pixel position  153  is used as predicted value which is shifted by half a pixel from a top reference field chrominance pixel position  153  in the first line.  
         [0043]     In this case, a luminance motion vector (0,1) and a chrominance vector (0,1/2) are not parallel. It is preferable to use a top reference field chrominance predictive pixel position  155  to which a chrominance motion vector parallel to a luminance motion vector is applied.  
         [0044]     As described above, if a reference field parity and a coding field parity are different, according to the conventional predictive method, a pixel located in the position of a luminance component spatially deviated from that of the chrominance component is to be referenced, and a predictive image, in which a pixel located in the position of a luminance component is spatially deviated from that of the chrominance component, is generated not only for a zero vector but for all the vectors. Note that, in the above explanation, vector are said to be parallel or not parallel by considering the case where the direction in time of a luminance motion vector and a chrominance motion vector, that is, time direction from coding field to reference field in included in a motion vector. The same is true below.  
       SUMMARY OF THE INVENTION  
       [0045]     It is an object of the present invention to provide a motion picture encoding device and a motion picture decoding device capable of particularly improving predictive efficiency of a chrominance component and improving encoding efficiency accordingly, in encoding between different field images.  
         [0046]     The motion picture encoding device of the present invention for making the inter-field motion compensation of a motion picture signal composed of a plurality of fields comprises a plurality of chrominance motion vector generation units generating a chrominance motion vector using a luminance motion vector in a motion picture encoding device; and a selection unit selecting one of the chrominance motion vector generation units used to generate a chrominance vector, using the reference field parity and coding field parity of a motion vector. The chrominance motion vector generation unit selected by the selection unit generates the chrominance predictive vector, based on the motion vector information of luminance information.  
         [0047]     The motion picture decoding device of the present invention for making the inter-field motion compensation of a motion picture signal composed of a plurality of fields comprises a plurality of chrominance motion vector generation units generating a chrominance motion vector from a luminance motion vector; and a selection unit selecting one of the chrominance motion vector generation units used to generate a chrominance vector, using the reference field parity and coding field parity of a motion vector. The chrominance motion vector generation unit selected by the selection unit generates the chrominance predictive vector, based on the motion vector information of luminance information.  
         [0048]     According to the present invention, since a chrominance motion vector which is generated by a suitable method based on parities of a encoding/decoding field and a reference field, is used, the discrepancy of the chrominance motion vector caused by the difference of arrangement, or the way of assignment to a top and a bottom field of luminance pixels and chrominance pixels, is resolved.  
         [0049]     Additionally, by the present invention, a chrominance motion vector which is parallel to a luminance motion vector is obtained even in the case of fields with different parity, and the problem of a shift of reference pixel position between luminance components and chrominance components in the conventional method, is resolved.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0050]      FIG. 1  shows the configuration of an inter-frame predictive encoding device;  
         [0051]      FIG. 2  shows the respective positions of luminance and chrominance pixels and a field to which each of them belongs;  
         [0052]      FIG. 3  shows the respective vertical time and spatial positions of luminance and chrominance pixels in a field image;  
         [0053]      FIG. 4  shows the relation between a field and a frame in a frame encoding mode;  
         [0054]      FIG. 5  shows a predictive method in an inter-frame predictive encoding mode;  
         [0055]      FIG. 6  shows a predictive method in an inter-field predictive mode;  
         [0056]      FIG. 7  shows the coordinates of a field image;  
         [0057]      FIG. 8  shows the conventional calculation method of a motion vector between corresponding pixels between fields;  
         [0058]      FIG. 9  shows the conventional calculation method of a pixel pointed by a motion vector;  
         [0059]      FIG. 10  shows a conventional method for calculating a chrominance motion vector, using a luminance motion vector;  
         [0060]      FIG. 11  shows the calculation method of an interpolated pixel of a chrominance component;  
         [0061]      FIG. 12  shows the principle of conventional direct mode for explaining a zero vector between fields with different parity;  
         [0062]      FIG. 13  shows a conventional problem caused if a chrominance motion vector is calculated using a luminance motion vector when a reference field and a coding field are a bottom field and a top field, respectively;  
         [0063]      FIG. 14  shows a conventional problem caused if a chrominance motion vector is calculated using a luminance motion vector when a reference field and a coding field are a top field and a bottom field, respectively;  
         [0064]      FIG. 15  shows the method for generating a chrominance motion vector, using a luminance motion vector in the present invention;  
         [0065]      FIG. 16  shows the operation of one preferred embodiment of the first chrominance motion vector generation unit of the present invention;  
         [0066]      FIG. 17  shows the operation of one preferred embodiment of the second chrominance motion vector generation unit of the present invention;  
         [0067]      FIG. 18  is the operation of one preferred embodiment of the third chrominance motion vector generation unit of the present invention;  
         [0068]      FIG. 19  is the operation of one preferred embodiment of the selection unit of the present invention;  
         [0069]      FIG. 20  is one example of the present invention which calculates a chrominance motion vector using a luminance motion vector when a reference field and a coding field are bottom and top fields, respectively; and  
         [0070]      FIG. 21  is one example of the present invention which calculates a chrominance motion vector using a luminance motion vector when a reference field and a coding field are top and bottom fields, respectively.  
         [0071]      FIG. 22  shows the operation of another preferred embodiment of the first chrominance motion vector generation unit of the present invention;  
         [0072]      FIG. 23  shows the operation of another preferred embodiment of the second chrominance motion vector generation unit of the present invention;  
         [0073]      FIG. 24  is the operation of another preferred embodiment of the third chrominance motion vector generation unit of the present invention; 
     
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0074]     Firstly, the principle of coding in the present invention is described.  
         [0075]     The motion picture encoding device of the present invention for making the inter-field motion compensation of a motion picture signal composed of a plurality of fields comprises a plurality of chrominance motion vector generation units generating a chrominance motion vector using a luminance motion vector; and a selection unit selecting one of the chrominance motion vector generation units used to generate a chrominance vector, using the respective parity of the reference field and a coding field of a motion vector. The chrominance motion vector generation unit selected by the selection unit generates the chrominance predictive vector, based on the motion vector information of luminance information.  
         [0076]     If a chrominance motion vector from a coding field to a reference field is parallel to a luminance motion vector from the coding field to the reference field, the spatial shift of the luminance motion vector and that of the chrominance motion vector become the same, that is, the relation of the spatial positions of the luminance motion vector and the chrominance motion vector is preserved, then the color displacement between fields disappears.  
         [0077]     Here, the important thing is that, in conventional method, even if the luminance motion vector is parallel to the chrominance motion vector based on a mathematical expression, each does not become parallel when those vectors are mapped on relations between luminance pixels and between chrominance pixels which compose each field.  
         [0078]     The plurality of chrominance motion vector generation units include the three following types.  
         [0079]     A first chrominance motion vector generation unit is selected by the selection unit when a reference field and a coding field have the same parity. A second chrominance motion vector generation unit is selected by the selection unit when a reference field and a coding field are a top field and a bottom field, respectively. A third chrominance motion vector generation unit is selected by the selection unit when a reference field and a coding field are a bottom field and a top field, respectively.  
         [0080]     A method for calculating a chrominance motion vector parallel to a luminance motion vector depends on the coding field parity and reference field parity of a luminance motion vector. The calculation method differs in the following three case: a case where the coding field parity and reference field parity are the same, a case where the coding field and reference field are top and bottom fields, respectively, and a case where the coding field and reference field are bottom and top fields, respectively. Therefore, in the present invention, an optimal one is selected from the three types of chrominance motion vector generation units calculating a chrominance motion vector parallel to a luminance motion vector, depending on the coding field and the reference field, and a chrominance motion vector is generated.  
         [0081]     Specifically, if the reference field parity and coding field parity are the same, the first chrominance motion vector generation unit calculates a chrominance motion vector as follows, assuming that a luminance motion vector indicating the vertical displacement of one luminance pixel of a field image by the value “1” of the vector component as units and a chrominance motion vector indicating the vertical displacement of one chrominance pixel of a field image by the value “1” of the vector component as units are MVy and MVCy, respectively. 
 
 MVCy=Mvy/ 2  (3) 
 
         [0082]     If the reference field parity and coding field parity are top and bottom fields, respectively, the second chrominance motion vector generation unit calculates a chrominance motion vector as follows, assuming that a luminance motion vector indicating the vertical displacement of one luminance pixel of a field image by the value “1” of the vector component as units and a chrominance motion vector indicating the vertical displacement of one chrominance pixel of a field image by the value “1” of the vector component as units are MVy and MVCy, respectively. 
 
 MVCy=Mvy/ 2+0.25  (4) 
 
         [0083]     If the reference field parity and coding field parity are bottom and top fields, respectively, the third chrominance motion vector generation unit calculates a chrominance motion vector as follows, assuming that a luminance motion vector indicating the vertical displacement of one luminance pixel of a field image by the value “1” of the vector component as units and a chrominance motion vector indicating the vertical displacement of one chrominance pixel of a field image by the value “1” of the vector component as units are MVy and MVCy, respectively. 
 
 MVCy=Mvy/ 2−0.25  (5) 
 
         [0084]     Sometimes, the respective units of luminance and chrominance vectors vary, depending on its definition. In the case that it is defined that a luminance motion vector indicates the displacement of one luminance moving pixel when the component of the luminance motion vector changes by value 4 and that a chrominance motion vector indicates the displacement of one chrominance moving pixel when the component of the chrominance motion vector changes by value 8, if the reference field parity and coding field parity are the same, the first chrominance motion vector generation unit calculates a chrominance motion vector as follows, assuming that aluminance motion vector and a chrominance motion vector are MVy and MVCy, respectively. 
 
 MVCy=Mvy   (6) 
 
         [0085]     In the same definition, if the parity of reference field and coding field are top and bottom fields, respectively, the second chrominance motion vector generation unit calculates a chrominance motion vector as follows, assuming that a luminance motion vector and a chrominance motion vector are MVy and MVCy, respectively. 
 
 MVCy=Mvy+ 2  (7) 
 
         [0086]     In the same definition, if the reference field parity and coding field parity are bottom and top fields, respectively, the third chrominance motion vector generation unit calculates a chrominance motion vector as follows, assuming that a luminance motion vector and a chrominance motion vector are MVy and MVCy, respectively. 
 
 MVCy=Mvy− 2  (8) 
 
         [0087]     The motion picture decoding device of the present invention basically has the same functions as the motion picture encoding device, and operates in the same way.  
         [0088]     The preferred embodiments of the encoding device are mainly described below. The encoding device has the configuration described above. Since the present invention relates to the vertical component of a motion vector, it is assumed for convenience sake that the horizontal components of all the motion vectors are 0. In this case, the decoding device has the same configuration as the encoding device.  
         [0089]     Preferred embodiments are described below assuming that AVC FCD is adopted.  
         [0090]      FIG. 15  shows a method for calculating a chrominance motion vector using a luminance motion vector. The preferred embodiment of a device generating a chrominance motion vector using a luminance motion vector in a field prediction comprises three types of chrominance motion vector generation units and one selection unit.  
         [0091]     The operation of the present invention shown in  FIG. 15  is described below. Firstly it is assumed that a given luminance motion vector  231  is (MV_x,MV_y). This luminance vector is inputted to all of a first chrominance motion vector generation unit  233 , a second chrominance motion vector generation unit  234  and a third chrominance motion vector generation unit  235 . Then, their respective outputs are inputted to a selection unit  230 . The selection unit  230  selects one of the respective outputs of the first, second and third chrominance motion vector generation units, based on information about the coding field parity  237  of the inputted motion vector and its reference field parity  238 , and outputs it as a color motion vector  232  (MVC_x,MVC_y).  
         [0092]      FIG. 16  shows the operation of the first chrominance motion vector generation unit. In this preferred embodiment, a luminance motion vector  261  (MV_x,MV_y) is inputted to a first chrominance motion vector generation unit  260 , and a first chrominance motion vector candidate  262  (MVC 1 _x, MVC 1 _y) is outputted. The chrominance motion vector generation unit  260  calculates the first chrominance motion vector candidate  262  as follows using the luminance motion vector  261 . 
 ( MvC 1 —   x, MVC 1 —   y )=( MV   —   x/ 2,  MV   —   y/ 2)  (9)  
 Then, the calculated first chrominance motion vector candidate  262  is outputted to the selection unit. 
 
         [0093]      FIG. 17  shows the operation of the second chrominance motion vector generation unit. In this preferred embodiment, a luminance motion vector  271  (MV_x,MV_y) is inputted to a second chrominance motion vector generation unit  270 , and a second chrominance motion vector candidate  272  (MVC2_x, MVC2_y) is outputted. The chrominance motion vector generation unit  270  calculates the second chrominance motion vector candidate  272  as follows using the luminance motion vector  271 . 
 ( MVC 2 —   x, MVC 2 —   y )=( MV   —   x/ 2,  MV   —   y/ 2+1/4)  (10)  
 Then, the calculated second chrominance motion vector candidate  272  is outputted to the selection unit. 
 
         [0094]      FIG. 18  shows the operation of the third chrominance motion vector generation unit. In this preferred embodiment, a luminance motion vector  281  (MV_x,MV_y) is inputted to a third chrominance motion vector generation unit  280 , and a third chrominance motion vector candidate  282  (MVC2_x, MVC2_y) is outputted. The chrominance motion vector generation unit  280  calculates the third chrominance motion vector candidate  282  as follows using the luminance motion vector  281 . 
 ( MVC 3 —   x,MVC 3 —   y )=( MV   —   x/ 2, MV   —   y/ 2−1/4)  (11)  
 Then, the calculated third chrominance motion vector candidate  282  is outputted to the selection unit. 
 
         [0095]      FIG. 19  shows the operation of one preferred embodiment of the selection unit  240  of the present invention. Firstly, in this preferred embodiment, a condition judgment table  241  is used for judgment of the coding field parity  247  of a motion vector and its reference field parity  248 , and the selection information  249  of a chrominance motion vector generation unit to be selected is outputted. In this preferred embodiment, if the reference field and coding field are the same, this condition judgment table  241  is used for outputting selection information indicating the selection of a first chrominance motion vector candidate  244 . If reference field and coding field are top and bottom fields, respectively, the condition judgment table  241  is used for outputting selection information indicating the selection of a second chrominance motion vector candidate  245 . If reference field and coding field are bottom and top fields, respectively, the condition judgment table  241  is used for outputting selection information indicating the selection of a third chrominance motion vector  246  candidate.  
         [0096]     In this case, the first, second or third chrominance motion vector candidates  244 ,  245  and  246  are connected to  262  shown in  FIG. 16, 272  shown in  FIG. 17  and  282  shown in  FIG. 18 , respectively. Then, a selector  243  selects one of the first, second and third chrominance motion vector candidates  244 ,  245  and  246 , based on the selection information  249 , and outputs (MVC_x,MVC_y) as its chrominance motion vector  242 .  
         [0097]      FIG. 20  shows the operation of the present invention to calculate a chrominance vector using aluminance vector in the case where reference field and coding field are bottom and top fields, respectively. In the example shown in  FIG. 20 , a luminance motion vector (MV_x,MV_y) used to predict a top coding field pixel  160  is assumed to be (0,1). In this case, a reference field bottom field luminance pixel position  161  is selected for the prediction of a luminance pixel  160 . The calculation process of a chrominance motion vector to be used to predict a top coding field chrominance pixel  162  is described below with reference to  FIG. 15 .  
         [0098]     Firstly, in  FIG. 20 , reference field and coding field are bottom and top fields, respectively. In this case, the condition judgment table  241  shown in  FIG. 19  is used for selecting selection information  249  about the third chrominance motion vector candidate. According to equation (11), the third chrominance motion vector candidate is calculated as follows.  
                     (     MVC3_x   ,   MVC3_y     )     =     (       MV_x   /   2     ,       MV_y   /   2     -     1   /   4         )                 =     (       0   /   2     ,       1   /   2     -     1   /   4         )                 =     (     0   ,     1   /   4       )                   (   12   )             
 
 Then, this value is outputted as the chrominance motion vector  242  shown in  FIG. 19 . If this vector (0,1/4) is applied to the top coding field chrominance pixel  162 , a bottom reference field chrominance pixel position  163  is used as a predicted value. In  FIG. 20 , the vertical positional relation between pixels corresponds to a real pixel. As is clear from  FIG. 20 , a luminance motion vector (0,1) and a chrominance motion vector (0,1/4) are parallel. Thus, the color deviation between luminance and chrominance components, which is a conventional problem, can be solved by the present invention. 
 
         [0099]     Similarly,  FIG. 21  shows the operation of the present invention to calculate a chrominance vector using a luminance vector in the case where reference field and coding field are top and bottom fields, respectively.  
         [0100]     In the example shown in  FIG. 21 , a luminance motion vector (MV_x,MV_y) used to predict a bottom coding field pixel  170  is assumed to be (0,1). In this case, a top reference field luminance pixel position  171  is selected for the prediction of a luminance pixel  170 . The calculation process of a chrominance motion vector to be used to predict a bottom coding field chrominance pixel  172  is described below with reference to  FIG. 15 .  
         [0101]     Firstly, in  FIG. 21 , reference field and coding field are top and bottom fields, respectively. In this case, the condition judgment table  241  shown in  FIG. 19  is used for selecting selection information  249  about the second chrominance motion vector candidate. According to equation (10), the candidate second chrominance motion vector is calculated as follows.  
                     (     MVC2_x   ,   MVC2_y     )     =     (       MV_x   /   2     ,       MV_y   /   2     +     1   /   4         )                 =     (       0   /   2     ,       1   /   2     +     1   /   4         )                 =     (     0   ,     3   /   4       )                   (   13   )             
 
 Then, this value is outputted as the chrominance motion vector  242  shown in  FIG. 19 . If this vector (0,3/4) is applied to the bottom coding field chrominance pixel  172 , a top reference field chrominance pixel position  173  is used as a predictive position. In  FIG. 21 , the vertical positional relation between pixels corresponds to a real one. As is clear from  FIG. 21 , a luminance motion vector (0,1) and a chrominance motion vector (0,3/4) are parallel. Thus, the color deviation between luminance and chrominance components, which is a conventional problem, can be solved by the present invention. 
 
         [0102]     Although in the examples shown in  FIGS. 20 and 21 , the prediction of a specific vector is described, in a prediction between other parity fields, a prediction in which there is no deviation between luminance and chrominance can also realized by applying this preferred embodiment.  
         [0103]     When the reference field parity and coding field parity are the same, such color deviation does not occur. Therefore, the result of the first chrominance motion vector generation unit  233  of the present invention which has the same configuration as a chrominance motion vector generation unit  220  is selected from the conventional luminance motion vector shown in  FIG. 10 , and is used as a color motion vector  232 . Since in this case, a chrominance motion vector calculated by the present invention is the same as conventional one, the description of this preferred embodiment is omitted here.  
         [0104]     In another aspect of the present invention, equations (9), (10) and (11) vary depending on the units of luminance and chrominance motion vectors.  
         [0105]      FIGS. 22 through 24  show another embodiment of the first chrominance motion vector generation unit, the second chrominance motion vector generation unit and the third chrominance motion vector generation unit of the present invention.  
         [0106]     In the case that it is defined that a luminance motionvector indicates the displacement of one luminance moving pixel when the value of the luminance motion vector changes by four and that a chrominance motion vector indicates the displacement of one chrominance moving pixel when the value of the chrominance motion vector changes by eight, a chrominance motion vector generation unit  260   a  calculates a candidate first chrominance motion vector  262   a  using a luminance motion vector  261   a  as follows. 
 
( MVC 1 —   x,MVC 1 —   y )=( MV   —   x,MV   —   y )  (14) 
 
 Then, the calculated first chrominance motion vector candidate  262   a  is outputted to a selection unit. 
 
         [0107]     The chrominance motion vector generation unit  270   a  calculates a second chrominance motion vector candidate  272   a  using a luminance motion vector  271   a  as follows. 
 
( MVC 2 —   x,MVC 2 —   y )=( MV   —   x,MV   —   y+ 2)  (15) 
 
 Then, the calculated second chrominance motion vector candidate  272   a  is outputted to a selection unit. 
 
         [0108]     The chrominance motion vector generation unit  280   a  calculates a third chrominance motion vector candidate  282   a  using a luminance motion vector  281   a  as follows. 
 
( MVC 3 —   x,MVC 3 —   y )=( MV   —   x,MV   —   y− 2)  (16) 
 
 Then, the calculated third chrominance motion vector candidate  282   a  is outputted to a selection unit. 
 
         [0109]     Although this preferred embodiment is described assuming that it adopts AVC FCD, this is just one preferred embodiment, and the format for encoding a field image is not limited to this.  
         [0110]     According to the present invention, a chrominance motion vector parallel to a luminance motion vector can also be calculated in fields with different parity, and the deviation in a reference pixel position between luminance and chrominance components, which are the conventional problem, can be solved accordingly.

Technology Category: 5