WO2011142291A1 - 動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム - Google Patents

動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム Download PDF

Info

Publication number
WO2011142291A1
WO2011142291A1 PCT/JP2011/060522 JP2011060522W WO2011142291A1 WO 2011142291 A1 WO2011142291 A1 WO 2011142291A1 JP 2011060522 W JP2011060522 W JP 2011060522W WO 2011142291 A1 WO2011142291 A1 WO 2011142291A1
Authority
WO
WIPO (PCT)
Prior art keywords
encoding
picture
parameter
quantization
coding
Prior art date
Application number
PCT/JP2011/060522
Other languages
English (en)
French (fr)
Inventor
正樹 北原
清水 淳
尚紀 小野
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US13/695,865 priority Critical patent/US9179149B2/en
Priority to CA2798354A priority patent/CA2798354C/en
Priority to EP11780548.1A priority patent/EP2571268B1/en
Priority to RU2012147239/08A priority patent/RU2527740C2/ru
Priority to JP2012514773A priority patent/JP5286581B2/ja
Priority to BR112012028576A priority patent/BR112012028576A2/pt
Priority to KR1020127029220A priority patent/KR101391661B1/ko
Priority to ES11780548T priority patent/ES2773329T3/es
Priority to CN201180022987.1A priority patent/CN102870415B/zh
Publication of WO2011142291A1 publication Critical patent/WO2011142291A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/177Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a group of pictures [GOP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/198Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including smoothing of a sequence of encoding parameters, e.g. by averaging, by choice of the maximum, minimum or median value

Definitions

  • the present invention relates to a moving image code for encoding a video signal so as not to cause a failure of a virtual buffer such as a coded picture buffer (CPB) in a virtual decoder and to prevent deterioration of image quality.
  • a virtual buffer such as a coded picture buffer (CPB) in a virtual decoder
  • CPB coded picture buffer
  • the present application is Japanese Patent Application No. 2010-109874, Japanese Patent Application No. 2010-109875, Japanese Patent Application No. 2010-109876, Japanese Patent Application No. 2010-109877, Japanese Patent Application filed in Japan on May 12, 2010 Claims priority to 2010-109878, the contents of which are incorporated herein.
  • a virtual decoder HRD Hypothetical Reference Decoder
  • the H.264 encoder needs to perform encoding so that the virtual decoder does not fail.
  • the present invention is a technique for reducing image quality deterioration while suppressing CPB failure of a virtual decoder, specifically, CPB underflow.
  • Figure 1 shows a conceptual diagram of CPB underflow.
  • an encoded stream is input to the CPB at that bit rate (reference code RS1 in FIG. 1).
  • the data amount of the encoded stream in the CPB at each time is referred to as “remaining code amount”.
  • the virtual decoder extracts the encoded stream corresponding to each picture from the CPB. In that case, the CPB remaining code amount is instantaneously reduced by the code amount corresponding to the picture.
  • FIG. 1 shows an example of a fixed bit rate, the same applies to a variable bit rate.
  • CPB underflow refers to a situation where the coded stream of the picture is insufficient in the CPB when the virtual decoder tries to extract the coded stream of the picture from the CPB.
  • H. In encoding based on H.264, it is necessary to verify the CPB state while performing encoding, and to create a stream that does not cause CPB underflow.
  • the CPB of the virtual decoder is H.264.
  • the following non-patent document 1 describes further details.
  • CPB Conceptual buffer
  • MPEG Motion Picture Experts Group
  • VBV Video Buffering Verifier
  • Video signal encoding methods include techniques of 1-pass encoding and multi-pass encoding.
  • the 1-pass encoding generally, pictures of an input video are sequentially encoded.
  • multi-pass encoding an input video is encoded a plurality of times.
  • the second encoding is performed using the result of the first encoding.
  • the conventional technique of 1-pass coding will be described as “conventional technique a”
  • the conventional technique of 2-pass coding will be described as “conventional technique b”.
  • a quantization parameter that generates the maximum code amount that can be used for encoding the remaining video of the GOP is estimated from the remaining code amount of the CPB, and this is used to encode the encoding target picture.
  • the present invention solves the above-mentioned problems, and reduces the CPB underflow with a smaller amount of computation than the conventional two-pass coding (conventional technology b), while the conventional one-pass coding (conventional technology a).
  • the purpose is to reduce such a large image quality degradation.
  • the encoding order picture group is a collection of pictures that are configured by a predetermined number of pictures and that are continuous in the encoding order.
  • a typical coding order picture group is GOP (Group Of Pictures).
  • FIGS. 2A to 2C Schematic diagrams of the coding order picture group are shown in FIGS. 2A to 2C.
  • I is a picture to be subjected to intra prediction encoding (I picture)
  • P is a picture to be forward predictive encoding (P picture)
  • B is a target of bidirectional predictive encoding. Represents a picture (B picture).
  • the display order of pictures is, for example, I ⁇ B ⁇ P ⁇ B ⁇ P ⁇ B... As shown in FIG. 2A.
  • the coding order picture group referred to in the present invention is GOP
  • the coding order picture group is a picture group of I ⁇ P ⁇ B ⁇ P ⁇ ... ⁇ B ⁇ P (immediately before I) as shown in FIG. It becomes.
  • the coding order picture group has a 13 picture configuration
  • 13 pictures consecutive in the coding order as shown in FIG. 2C are the coding order picture group referred to in the present invention.
  • a group of pictures obtained by dividing a picture sequence of an input video into a picture group that is continuous in a coding order and is configured by a predetermined number is called a coding order picture group.
  • the “picture” is a frame when the video is in the progressive format, and is a frame in which one field or a top field and a bottom field are combined in the case of the interlace format.
  • the quantization statistic is a statistic obtained from the quantization parameter or quantization step used for encoding each macroblock of the picture. For example, the quantization parameter of the macroblock of the picture, the average of the quantization step, or the median.
  • the encoding of the input video proceeds in units of encoding order pictures. However, each time an input picture is encoded, it is checked whether the quantization statistic of the picture exceeds a predetermined threshold, and if the quantization statistic exceeds a predetermined threshold, an encoding parameter is generated.
  • the encoding order picture group being encoded is re-encoded by changing the code amount to be small.
  • the trigger for outputting the encoding result from the output buffer is when the encoding of the encoding order picture group is completed.
  • the coding parameters to be changed include, for example, quantization parameters and prefilter strength, and one or more of these are changed.
  • quantization parameters and prefilter strength For example, in the case of a quantization parameter, the step size of the quantization parameter is increased so that the generated code amount of the encoding parameter is reduced.
  • the filter strength of the pre-filter for the input video is changed, the generated code amount can be reduced by changing the blurring degree to a greater extent.
  • the encoding parameter at the time of normal encoding means an encoding parameter determined when the state is not re-encoding.
  • the encoding parameter is not necessarily returned to the value at the time of normal encoding, but the remaining code amount of the CPB is checked, and the remaining code amount is a predetermined threshold value. Only in the above case, the encoding parameter may be returned to the normal encoding value, and when the remaining code amount is small, the encoding parameter may not be returned to the normal encoding value. In this way, the possibility of continuous re-encoding can be reduced.
  • the encoding parameter is basically returned to the encoding parameter value at the time of normal encoding.
  • the encoding order picture group is re-encoded, Each time the quantization statistic of the picture exceeds a predetermined threshold, and if the quantization statistic exceeds the predetermined threshold, the head of the encoding order picture group currently being encoded is checked. It is also possible to re-encode by changing the encoding parameter from this picture. That is, as long as the re-encoding condition that the quantization statistic exceeds a predetermined threshold is satisfied, encoding is repeated a plurality of times for the same encoding order picture group.
  • the value of the retry count is increased when re-encoding occurs, and encoding of the encoding order picture group is completed Decrease the retry count value.
  • the value of the encoding parameter described above is set according to the size of the retry count, and a value that reduces the generated code amount as the retry count increases is used.
  • the encoding parameter is a quantization parameter
  • the step size is increased as the retry count is increased.
  • the encoding parameter is the filter strength of the prefilter, the blurring degree is increased as the retry count is increased.
  • the video to be encoded has a complex part and a simple part.
  • the more complicated the video the greater the amount of change in the generated code amount due to the change of the encoding parameter.
  • the amount of fluctuation in image quality is large. If re-encoding for one encoding order picture group is determined only once, when the re-encoding condition that the quantization statistic exceeds a predetermined threshold is satisfied and re-encoding is performed In order to prevent the re-encoding condition from being satisfied again, it is necessary to greatly change the encoding parameter at the time of re-encoding from the encoding parameter before the re-encoding. In this case, when a relatively complicated portion of the video is a target of re-encoding, there is a possibility that a large image quality deterioration occurs.
  • the encoding order picture group is repeatedly encoded, the retry count is managed, and the encoding parameter is set according to the size of the retry count.
  • the change amount of the encoding parameter is suppressed to be small, and encoding is performed with an appropriate encoding parameter.
  • image quality degradation can be further reduced.
  • the number of re-encoding operations for one encoding order picture group is managed by a parameter called retry count, and when re-encoding occurs, the retry count value is increased, and encoding of the encoding order picture group is completed. Reduce the retry count value.
  • the CPB remaining code amount is set to a predetermined threshold value when encoding of the encoding order picture group is completed. Only in the above case, the retry count may be reduced.
  • the retry count is decreased to the next encoding-order picture group. Reduce the impact of image quality degradation. However, if the CPB remaining code amount is less than the predetermined amount, the retry count is not reduced. This reduces the possibility that re-encoding will occur in the encoding of the next encoding order picture group.
  • the coding order picture group is a collection of pictures that are composed of a predetermined number of pictures starting from an intra-screen predictive coding picture (I picture) and are consecutive in the coding order.
  • the encoding order picture group does not necessarily have to be a GOP, but the leading picture of the encoding order picture group is an intra-picture prediction encoding picture (I picture).
  • FIG. 2D shows an example in which the coding order picture group has a 20-picture configuration for 2 GOPs.
  • the encoding of the input video proceeds in units of encoding order pictures. However, each time an input picture is encoded, it is checked whether the quantization statistic of the picture exceeds a predetermined threshold, and if the quantization statistic exceeds a predetermined threshold, an encoding parameter is generated. The code amount is changed so as to decrease, and re-encoding is performed from the position of the encoding order picture group set as a retry point (described later). The output result of the encoding result from the output buffer is when the encoding of the encoding-order picture group is completed and it is determined that re-encoding is not performed.
  • the coding parameters to be changed include, for example, quantization parameters and prefilter strength, and one or more of these are changed.
  • quantization parameters and prefilter strength For example, in the case of a quantization parameter, the step size of the quantization parameter is increased so that the generated code amount of the encoding parameter is reduced.
  • the filter strength of the pre-filter for the input video is changed, the generated code amount can be reduced by changing the blurring degree to a greater extent.
  • the encoding parameter at the time of normal encoding means an encoding parameter determined when the state is not re-encoding.
  • the encoding parameter is not necessarily returned to the value at the time of normal encoding, but the remaining code amount of the CPB is checked, and the remaining code amount is a predetermined threshold value. Only in the above case, the encoding parameter may be returned to the normal encoding value, and when the remaining code amount is small, the encoding parameter may not be returned to the normal encoding value. In this way, the possibility of continuous re-encoding can be reduced.
  • the above-mentioned retry point is position information indicating from which picture re-encoding is started when it becomes necessary to re-encode due to a quantization statistic exceeding a predetermined threshold in a certain picture.
  • the retry point is basically the first picture of the encoding order picture group that is currently encoded, but may be the first picture of the encoding order picture group encoded one time before.
  • the opportunity to update the retry point is as follows. (1) If the remaining CPB code amount is equal to or greater than a predetermined threshold when encoding of the encoding order picture group is completed, the retry point is set to the first picture (I picture) of the next encoding order picture group . (2) When the encoding order picture group has been encoded and the CPB residual code amount is smaller than a predetermined threshold, the retry point remains unchanged and the process proceeds to the encoding of the first picture in the next encoding order picture group. . If the quantization statistic does not exceed a predetermined threshold in the encoding of the leading picture of the encoding order picture group, the retry point is set to the leading picture of the encoding order picture group that is currently encoded.
  • the processing configuration becomes simpler than the present invention.
  • this technology is referred to as “related technology”.
  • image quality degradation can be reduced by re-encoding only the coding order picture group including the picture in which the quantization occurs only when the quantization statistic exceeds a predetermined threshold. it can.
  • the second aspect of the present invention makes it possible to reduce image quality degradation of a decoded image more effectively than this related technique.
  • an I picture has a larger amount of generated code than other picture types. Therefore, when the amount of remaining CPB code is small at the time when encoding of a certain coding order picture group is completed, in the conventional rate control, in order to suppress the generated code amount, The quantization parameter value used for encoding is increased. In such a case, in the related technique, re-encoding occurs due to the increase in the quantization parameter of the I picture, but re-encoding starts from the first picture of the encoding-order picture group currently being encoded. Therefore, it is necessary to avoid the establishment of the re-encoding condition with only the I picture itself. In this case, there is a problem that the image quality of the I picture itself is greatly deteriorated. Furthermore, since the I picture is referred to in the subsequent encoding of the P picture and B picture, the encoding efficiency of these P picture and B picture also deteriorates.
  • the second aspect of the present invention when the amount of remaining CPB code is small, when the re-encoding condition is satisfied in the first I picture of the next encoding order picture group, Return to the previous coding order picture group and re-encode from the beginning. Therefore, it is possible to avoid the occurrence of large image quality deterioration in the first picture of the coding order picture group, and to reduce the image quality deterioration.
  • the frame of the input video is not always encoded twice as in the conventional two-pass encoding, but the principle is one-pass encoding.
  • re-encoding is performed retroactively for a plurality of pictures.
  • the quantization statistic exceeds a predetermined threshold in coding of the pictures in the coding order picture group
  • re-encoding is performed retroactively to a certain picture in the coding order picture group.
  • Do. Which picture is to be re-encoded is determined in advance according to the amount of available memory.
  • the maximum number of pictures that can be traced during re-encoding is defined as “maximum inter-picture distance”.
  • the outline of processing in the third aspect of the present invention is as follows. First, the maximum number of pictures that can be traced at the time of re-encoding is obtained based on information on the amount of available memory given from the outside, and this value is stored as the maximum inter-picture distance.
  • re-encoding it is necessary to store the video signal of the picture to be encoded in the input buffer, and it is determined that the re-encoding is not performed in the output buffer. It is necessary to hold the encoded stream of the encoding result until the output of the result is completed. If there is a sufficient amount of memory that can be used, the re-encoding condition is satisfied by having the input buffer and the output buffer each have a memory capacity equivalent to the number of pictures in the encoding order picture group. The time re-encoding can be performed from the top of the encoding order picture group with the encoding order picture group as a unit.
  • the maximum inter-picture distance which is the maximum number of pictures that can be traced back during re-encoding, is calculated from the amount of memory that can be used in advance.
  • the encoding of the input video proceeds with the encoding order picture group as a unit. However, each time an input picture is encoded, it is checked whether the quantization statistic of the picture exceeds a predetermined threshold, and if the quantization statistic exceeds a predetermined threshold, an encoding parameter is generated.
  • the encoding order picture group being encoded is re-encoded by changing the code amount to be small. However, as to which picture of the encoding order picture group being encoded, the picture is to be re-encoded to satisfy the following three conditions. Condition 1: The picture is included in the encoding order picture group being encoded.
  • Condition 2 The picture is included in the maximum inter-picture distance on the basis of a picture whose quantization statistic exceeds a predetermined threshold.
  • Condition 3 A picture farthest from a picture whose quantization statistics exceed a predetermined threshold among pictures satisfying conditions 1 and 2.
  • the retry point is, for example, the first picture in the current coding order picture group if the first picture within the maximum inter-picture distance is in the previous coding order picture group, otherwise the maximum The first picture at the inter-picture distance, that is, the oldest coded picture separated by the maximum inter-picture distance.
  • coding parameters to be changed at the time of re-encoding for example, there are quantization parameters and prefilter strength, and one or more of these are changed.
  • quantization parameters and prefilter strength For example, in the case of a quantization parameter, the step size of the quantization parameter is increased so that the generated code amount of the encoding parameter is reduced.
  • the filter strength of the pre-filter for the input video is changed, the generated code amount can be reduced by changing the blurring degree to a greater extent.
  • the image quality degradation is reduced to the next encoding by returning the encoding parameter to the encoding parameter value at the time of normal encoding. Suppresses spreading to the forward picture group.
  • the encoding parameter at the time of normal encoding means an encoding parameter determined when the state is not re-encoding.
  • the encoding parameter is not necessarily returned to the value at the time of normal encoding, but the remaining code amount of the CPB is checked, and the remaining code amount is a predetermined threshold value. Only in the above case, the encoding parameter may be returned to the normal encoding value, and when the remaining code amount is small, the encoding parameter may not be returned to the normal encoding value. In this way, the possibility of continuous re-encoding can be reduced.
  • the coding order picture group is returned to the beginning, and the CPB residual code Since re-encoding is performed so that the amount increases, image quality degradation in a complicated scene can be reduced as compared with the conventional technique a of 1-pass encoding.
  • the present invention reduces image quality degradation by partially re-encoding only when necessary, the conventional technique b of 2-pass encoding in which all frames of an input video are encoded twice; The amount of calculation is small in comparison.
  • the amount of change in the encoding parameter at the time of re-encoding can be suppressed to be small, and deterioration in image quality due to re-encoding can be reduced.
  • the encoding parameter is kept the same as that at the time of re-encoding, so that the occurrence of re-encoding can be suppressed.
  • the encoding order picture group set as a retry point Since the re-encoding is performed so that the CPB residual code amount further increases, image quality deterioration in a complicated scene can be reduced as compared with the conventional technique a of 1-pass encoding.
  • the present invention reduces image quality degradation by partially re-encoding only when necessary, the conventional technique b of 2-pass encoding in which all frames of an input video are encoded twice; The amount of calculation is small in comparison.
  • the present invention can prevent the image quality of the first I picture in the coding order picture group from greatly deteriorating even when coding of the coding order picture group is completed and the amount of remaining CPB code is small. it can.
  • the present invention even if the encoding process shifts from a simple scene of a video to a complicated scene and the image quality deteriorates due to insufficient CPB remaining code amount, it is set as a retry point in the encoding order picture group.
  • re-encoding is performed so that the CPB residual code amount further increases, so that it is possible to reduce image quality degradation in a complicated scene as compared with the conventional technique a of 1-pass encoding.
  • the present invention reduces image quality degradation by partially re-encoding only when necessary, the conventional technique b of 2-pass encoding in which all frames of an input video are encoded twice; The amount of calculation is small in comparison.
  • re-encoding is performed from a retry point determined according to the amount of memory required for re-encoding, the memory can be effectively used.
  • FIG. 3 is a process flowchart showing the moving picture coding control method according to the first embodiment of the present invention.
  • a picture next to a picture that has been encoded in the input video signal is set as an encoding target (step S1).
  • the input picture set as the encoding target is defined as H.264. H.264 and other predetermined encoding methods (step S2). It is determined whether or not the quantization statistic of the picture when the input picture is encoded exceeds a predetermined threshold (step S3). If the quantization statistic exceeds the predetermined threshold, the processing is performed. Proceed to step S7.
  • step S4 it is determined whether or not the final picture has been encoded. If the encoding is completed up to the final picture, the encoding process is terminated.
  • step S5 it is determined whether or not the encoding order picture group has been encoded. If the encoding order picture group has not been encoded, the process returns to step S1, and the encoding process is continued in the same manner for the next picture.
  • the encoding parameter is changed by re-encoding (retry) of the encoding order picture group, the encoding parameter is returned to the value at the time of normal encoding ( In step S6), the process returns to step S1, and the encoding process is performed from the first picture in the next encoding order picture group.
  • step S7 it is determined whether or not the current coding-order picture group has been re-encoded (retry has been completed) (step S7). ). If the retry has been completed, no further re-encoding is performed, and the process proceeds to step S4 to continue the encoding process.
  • the first picture of the current coding order picture group is set as a coding target in order to re-encode the current coding order picture group (step S8). Then, change one or more of the two encoding parameters (quantization parameter, prefilter strength) (the quantization parameter changes the step size more greatly, and in the case of the filter strength, the blurring degree changes more greatly) ( In step S9), the process returns to step S2, and the encoding order picture group being encoded is re-encoded.
  • the two encoding parameters quantization parameter, prefilter strength
  • the encoding order picture group (for example, GOP) is encoded twice.
  • the video can be changed from a simple scene to a complex scene.
  • the amount of calculation can be reduced as compared with the conventional technique b in which all the pictures of the input video are encoded twice, while reducing the deterioration of the image quality when moving to.
  • FIG. 4 is a process flowchart showing a video encoding control method according to a modification of the present embodiment.
  • the process of step S6 shown in FIG. 3 can be replaced with the processes of steps S61 to S63 shown in FIG. Processes other than step S6 are the same as those in FIG.
  • step S61 it is determined whether or not the encoding parameter has been changed by retry. If the encoding parameter has not been changed by retry, the process returns to step S1 in FIG. If the coding parameter has been changed by retrying, it is next determined whether or not the CPB remaining code amount is equal to or greater than a predetermined threshold (step S62). If the CPB residual code amount is less than the predetermined threshold value, the encoding parameter remains in the state used for re-encoding, and the encoding parameter is restored to the original default encoding only when the CPB residual code amount is equal to or larger than the predetermined threshold value Return to the parameter (step S63). Thereafter, the process returns to step S1 in FIG. 3 and proceeds to encoding of the next encoding order picture group.
  • the encoding parameter is set to the value at the time of normal encoding only when the CPB remaining code amount exceeds a predetermined amount when the encoding of the encoding order picture group is completed as described above. Return to value. This is due to the following reason. Even if encoding of the encoding order picture group is completed, if the CPB residual code amount is small, the generated encoding amount increases when the encoding parameter is returned to the value at the time of normal encoding. When the picture group is encoded, the possibility that the quantization statistic of the encoded picture exceeds a predetermined threshold again increases. In the process of FIG. 4, when the CPB residual code amount is small, the encoding parameter is not changed. Therefore, compared with the process of FIG. As a result, the amount of calculation is further reduced.
  • the encoding parameter is changed during re-encoding.
  • a pre-filter is applied to the input video during encoding, and the encoding parameters to be changed are a quantization parameter and a pre-filter strength. Both of these two encoding parameters may be changed, or only one of them may be changed.
  • Quantization parameters are re-encoded with a larger quantization parameter by adding a predetermined offset value to the quantization parameter value during normal encoding.
  • a Gaussian filter is used in this embodiment.
  • the Gaussian filter can be created by sampling a Gaussian distribution represented by the following equation with respect to x and y.
  • the type of the low pass filter is not limited.
  • how to increase the degree of blurring during re-encoding may be arbitrarily determined in advance.
  • the default encoding parameter ⁇ 0 may be changed in accordance with the complexity of each picture, and ⁇ 1 may be a value obtained by adding a predetermined offset to ⁇ 0 .
  • quantization statistics in this embodiment, an average value of quantization parameters of each macroblock of a picture is used.
  • Encoding is H.264. It is assumed that encoding according to the H.264 standard is performed. Further, in this embodiment, the encoding order picture group is GOP, and a conceptual diagram of the GOP at the time of encoding is shown in FIG. One GOP is composed of 10 pictures, and B pictures and P pictures are alternately arranged with the I picture at the head in the display order.
  • FIG. 6 shows an example of the apparatus configuration of this embodiment.
  • the input buffer 10 accumulates the input video signal and outputs the video signal to be encoded to the encoding unit 20. Further, when the input buffer 10 receives information (retry information) indicating that re-encoding is performed because the quantization statistic of the picture has exceeded a predetermined threshold from the quantization statistic calculation unit 40 described later, The video signal is output again to the encoding unit 20 from the first picture of the GOP being encoded. When the GOP encoding is completed without receiving the retry information, the input buffer 10 discards the stored video signal of the GOP.
  • retry information information indicating that re-encoding is performed because the quantization statistic of the picture has exceeded a predetermined threshold from the quantization statistic calculation unit 40 described later
  • the encoding unit 20 encodes the video signal input from the input buffer 10 and outputs the encoded stream to the output buffer 30. Further, the encoding unit 20 outputs the quantization parameter (quantization parameter information) of each macroblock when the input video signal is encoded to the quantization statistic calculation unit 40. Furthermore, when receiving the retry information from the quantization statistic calculation unit 40, the encoding unit 20 receives the video signal from the first picture of the GOP being encoded again from the input buffer 10, and also sets the parameter adjustment unit 50. Since the encoding parameter for re-encoding is input from, re-encoding is performed using the input encoding parameter for re-encoding.
  • the output buffer 30 outputs the encoded stream of the GOP when all the encoded streams of the GOP are accumulated. On the other hand, when receiving the retry information from the quantization statistic calculation unit 40, the output buffer 30 The encoded stream accumulated for the GOP is discarded.
  • the quantization statistic calculation unit 40 uses the quantization parameter information input from the encoding unit 20 to obtain a quantization statistic that changes in units of pictures. When the quantization statistic exceeds a predetermined threshold value, the quantization statistic calculation unit 40 outputs the retry information to the input buffer 10, the encoding unit 20, the parameter adjustment unit 50, and the output buffer 30 for quantization. Notify that the statistic exceeds a predetermined threshold.
  • the parameter adjustment unit 50 When the parameter adjustment unit 50 receives the retry information from the quantization statistic calculation unit 40, the parameter adjustment unit 50 inputs the encoding parameter for re-encoding to the encoding unit 20 as described above. As a result, the encoding unit 20 encodes the same GOP using an encoding parameter with a small generated code amount at the time of re-encoding.
  • a process for encoding a certain GOP will be described in three cases as follows.
  • a default encoding parameter is used, and filtering processing by the prefilter unit 21 is applied to a picture to be encoded with a prefilter strength corresponding to the default encoding parameter, and a DCT ( The Discrete Cosine Transform) coefficient is a quantization parameter according to the default encoding parameter, and is quantized by the quantization unit 22.
  • DCT The Discrete Cosine Transform
  • the quantization statistic calculation unit 40 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 20. In this example, since the quantization statistic does not exceed a predetermined threshold, the quantization statistic calculation unit 40 does not output retry information (S3). If the encoding target picture is the last picture in the input video signal, the output buffer 30 outputs the stored encoded stream, and the encoding process is completed (S4). Alternatively, if the encoding target picture is the last picture of the GOP, the output buffer 30 outputs the stored encoded stream, and the input buffer 10 discards the stored picture, and the first GOP The process proceeds to a picture encoding process (S5). Here, since re-encoding has not occurred in the GOP, the process proceeds to the encoding process of the first picture of the next GOP without changing the encoding parameter (S6).
  • the quantization statistic calculation unit 40 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 20. As a result, when the quantization statistic calculation unit 40 detects that the quantization statistic exceeds a predetermined threshold for the picture, the quantization statistic calculation unit 40 includes the encoding unit 20 and the parameter adjustment unit 50. The retry information is output to the input buffer 10 and the output buffer 30 (S3).
  • the input buffer 10 When retrying has not yet occurred for the GOP being encoded (S7), the input buffer 10 outputs the accumulated first picture of the GOP being encoded to the encoding unit 20 (S8), and parameter adjustment The unit 50 outputs the encoding parameter for re-encoding to the encoding unit 20 (S9). Further, the output buffer 30 discards the encoded stream of the GOP being encoded. Then, the encoding unit 20 encodes the leading picture of the input GOP using the re-encoding encoding parameter.
  • the encoding parameter for re-encoding is used in encoding, and the pre-filter strength corresponding to the encoding parameter for re-encoding (the blurring degree is greater than the default encoding parameter) is applied to the picture to be encoded.
  • a pre-filtering process by the filter unit 21 is applied.
  • the DCT coefficient generated in this picture is quantized by the quantization unit 22 with a quantization parameter (a quantization step size larger than the default encoding parameter) according to the re-encoding encoding parameter.
  • pictures of the GOP are sequentially input from the input buffer 10 to the encoding unit 20, and the encoding unit 20 performs encoding processing.
  • the encoding of the last picture of the GOP is completed (S5)
  • the encoded stream of the GOP is output from the output buffer 30, and the encoding unit 20 sets the encoding parameter as a default encoding parameter ( S6)
  • the process proceeds to the next GOP encoding process.
  • the operation when the encoding of the last picture of the input video is completed is the same as in the case 1 described above.
  • Fig. 7 shows a conceptual diagram of changing the encoding parameters when re-encoding is performed.
  • a re-encoding encoding parameter that suppresses the generated code amount is set, and GOP2 Are re-encoded from the first I picture.
  • the encoding parameter for re-encoding is returned to the default encoding parameter in the next GOP3 encoding, and the encoding process is continued. ing.
  • FIG. 8 shows a conceptual diagram of the transition of the remaining CPB code amount when re-encoding is performed.
  • the portion indicated by the bold line is the CPB remaining code amount after re-encoding.
  • the degree of blurring is increased by the pre-filter, and the quantization parameter is made larger than the default encoding parameter. Therefore, the generated code amount is suppressed, and the transition of the remaining CPB code amount is as shown in FIG. 8, for example. .
  • the CPB residual code amount in a picture that has undergone re-encoding increases at the time of re-encoding and that the picture quality is greatly deteriorated in the picture.
  • FIG. 9 shows a conceptual diagram of transition of quantization statistics when re-encoding is performed.
  • the quantization statistic of the picture that has started re-encoding becomes large.
  • the CPB residual code amount is increased as shown in FIG. Since there is a margin, the quantization statistic is smaller in the picture where re-encoding has occurred than before re-encoding.
  • FIG. 10 shows a conceptual diagram of the transition of the quantization statistic when re-encoding is performed and it is not possible to avoid the quantization statistic exceeding the threshold even by re-encoding.
  • Case 3 can occur, for example, as shown in FIG. 10, when the quantization statistics are already large at the head of the GOP at which re-encoding is started.
  • the quantization statistic calculation unit 40 detects that the quantization statistic exceeds a predetermined threshold, and the operation for re-encoding the GOP is the same as in case 2. If the quantization statistic exceeds a predetermined threshold during the re-encoding of the GOP (S3, S7), the re-encoding is not performed and the encoding process is continued (the process proceeds to S4).
  • the reference code RS10 indicates that the quantization statistic cannot be prevented from exceeding the threshold even after re-encoding.
  • the quantization parameter becomes larger at the time of re-encoding than at the time of normal encoding, so that at the time of re-encoding, the quantization statistic of the past picture in the encoding order rather than the picture that triggered re-encoding May exceed the threshold.
  • the quantization statistic threshold is modified to a value equal to the quantization statistic threshold. May be.
  • the quantization during re-encoding Set the parameter value equal to the normal encoding value.
  • FIG. 11 is a process flowchart showing the moving picture coding control method according to the present embodiment.
  • a picture next to a picture that has been encoded in the input video signal is set as an encoding target (step S101).
  • the input picture set as the encoding target is defined as H.264. H.264 and other predetermined encoding methods (step S102). It is determined whether or not the quantization statistic of the picture when the input picture is encoded exceeds a predetermined threshold (step S103). If the quantization statistic exceeds the predetermined threshold, the processing is performed. Proceed to step S108.
  • step S104 it is determined whether or not the final picture has been encoded. If the quantization statistic does not exceed the predetermined threshold value, it is determined whether or not the final picture has been encoded (step S104). If the encoding is completed up to the final picture, the encoding process is terminated.
  • step S105 it is determined whether encoding of the encoding order picture group has been completed. If the encoding order picture group has not been encoded, the process returns to step S101 to continue the encoding process for the next picture in the same manner.
  • the retry count is 1 or more, the retry count is decreased by 1 (step S106). Note that the initial value of the retry count is zero.
  • an encoding parameter predetermined according to the retry count is set (step S107), the process returns to step S101, and the encoding process starts from the first picture in the next encoding order picture group. I do.
  • step S108 it is determined whether or not the current retry count value is a predetermined maximum value (step S108). If the retry count is the maximum value, no further re-encoding is performed, the process proceeds to step S104, and the encoding process is continued as it is.
  • the first picture of the current encoding order picture group is set as an encoding target in order to re-encode the current encoding order picture group (step S109). Then, the retry count is increased by 1 (step S110). Then, based on the retry count, change one or more of the two encoding parameters (quantization parameter, prefilter strength) (the quantization parameter changes the step size more greatly, and in the case of filter strength, the blurring degree is changed). (Changed more greatly) (step S111), the process returns to step S102 to re-encode the encoding order picture group being encoded.
  • this embodiment is basically a single encoding process, and only when the re-encoding condition is satisfied, the encoding order picture group Each picture of (for example, GOP) is repeatedly encoded with the generated code amount being suppressed in stages until the re-encoding condition is not satisfied.
  • encoding is performed with an encoding parameter that suppresses the generated code amount determined according to the retry count. Therefore, it is possible to reduce the amount of calculation compared to the conventional technique b in which all the pictures of the input video are encoded twice, and it is possible to reduce deterioration in image quality due to re-encoding.
  • the encoding parameter is changed according to the retry count at the time of re-encoding.
  • a pre-filter is applied to the input video during encoding, and the encoding parameters to be changed are a quantization parameter and a pre-filter strength. Both of these two encoding parameters may be changed, or only one of them may be changed.
  • a predetermined offset value that increases stepwise according to the retry count is added to the quantization parameter value determined during normal encoding, and re-encoding is performed with a larger quantization parameter.
  • a Gaussian filter is used in this embodiment.
  • the Gaussian filter can be created by sampling a Gaussian distribution represented by the following equation with respect to x and y.
  • g (x, y) ⁇ 1 / (2 ⁇ 2 ) ⁇ ⁇ exp ⁇ (x 2 + y 2 ) / (2 ⁇ 2 ) ⁇
  • the greater the value of ⁇ the greater the degree of blurring.
  • the degree of blurring increases, the high frequency components decrease, and the amount of generated code during encoding decreases. Details of the Gaussian filter are described in Non-Patent Document 2 described above, for example.
  • the Gaussian filter is not applied.
  • the type of the low pass filter is not limited.
  • the default encoding parameter ⁇ 0 may be changed according to the complexity of each picture, and ⁇ c may be obtained by adding a predetermined offset to ⁇ c ⁇ 1 .
  • quantization statistics in this embodiment, an average value of quantization parameters of each macroblock of a picture is used.
  • the encoding method is H.264. It is assumed that encoding according to the H.264 standard is performed.
  • the encoding order picture group is GOP.
  • a conceptual diagram of the GOP at the time of encoding is as shown in FIG.
  • One GOP is composed of 10 pictures, and B pictures and P pictures are alternately arranged with the I picture at the head in the display order.
  • FIG. 12 shows an apparatus configuration example of this embodiment.
  • the input buffer 110 accumulates the input video signal and outputs the video signal to be encoded to the encoding unit 120. Further, when the input buffer 110 receives information (retry information) indicating that re-encoding is performed because the quantization statistic of the picture has exceeded a predetermined threshold from the quantization statistic calculation unit 140 described later, The video signal is output again to the encoding unit 120 from the first picture of the GOP being encoded. When the GOP encoding is completed without receiving the retry information, the input buffer 110 discards the stored video signal of the GOP.
  • retry information information indicating that re-encoding is performed because the quantization statistic of the picture has exceeded a predetermined threshold from the quantization statistic calculation unit 140 described later
  • the encoding unit 120 encodes the video signal input from the input buffer 110 and outputs the encoded stream to the output buffer 130. Further, the encoding unit 120 outputs the quantization parameter (quantization parameter information) of each macroblock when the input video signal is encoded to the quantization statistic calculation unit 140. Furthermore, when receiving the retry information from the quantization statistic calculation unit 140, the encoding unit 120 receives the video signal from the first picture of the GOP being encoded again from the input buffer 110 and also sets the parameter adjustment unit 160. Since the encoding parameter for re-encoding is input from, re-encoding is performed using the input encoding parameter for re-encoding.
  • the output buffer 130 outputs the encoded stream of the GOP when all the encoded streams of the GOP are accumulated. On the other hand, when receiving the retry information from the quantization statistic calculation unit 140, the output buffer 130 The encoded stream accumulated for the GOP is discarded.
  • the quantization statistic calculation unit 140 uses the quantization parameter information input from the encoding unit 120 to obtain a quantization statistic that changes in units of pictures. When the quantization statistic exceeds a predetermined threshold, the quantization statistic calculation unit 140 outputs retry information to the input buffer 110, the encoding unit 120, the retry count management unit 150, and the output buffer 130, That the statistic has exceeded a predetermined threshold.
  • the parameter adjustment unit 160 When the parameter adjustment unit 160 receives the retry count from the retry count management unit 150, the parameter adjustment unit 160 inputs an encoding parameter determined according to the retry count to the encoding unit 120. As a result, the encoding unit 120 performs encoding using an encoding parameter in which the generated code amount decreases as the number of repetitions of re-encoding increases for the same GOP.
  • the retry count management unit 150 introduces the concept of retry count that increases when re-encoding occurs and decreases when GOP encoding is completed. Manage counts.
  • the retry count has a predetermined upper limit value, for example, an upper limit value of “3”, and the same GOP may be re-encoded until the upper limit value is reached.
  • the offset value of the quantization parameter at the time of encoding and the filter strength of the pre-filter change according to the retry count value.
  • re-encoding encoding parameters corresponding to the retry counts 1, 2, and 3 are prepared in advance as an encoding parameter table. Then, the encoding parameter obtained from the encoding parameter table may be used for re-encoding.
  • a process for encoding a certain GOP will be described in three cases as follows.
  • the prefilter unit 121 applies the encoding target picture with the prefilter strength corresponding to the default encoding parameter.
  • a filtering process is applied.
  • the DCT coefficient generated in this picture is quantized by the quantization unit 122 with a quantization parameter according to the default encoding parameter.
  • the retry count is 1 or more, encoding is performed by pre-filtering and quantization processing based on the filter strength and the quantization parameter determined according to the retry count.
  • the quantization statistic calculation unit 140 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 120. In this example, since the quantization statistic does not exceed a predetermined threshold, the quantization statistic calculation unit 140 does not output retry information (S103). If the encoding target picture is the last picture in the input video signal, the output buffer 130 outputs the stored encoded stream, and the encoding process is completed (S104). Alternatively, if the encoding target picture is the last picture of the GOP, the output buffer 130 outputs the stored encoded stream, and the input buffer 110 discards the stored picture, and the first GOP of the next GOP is output. The process proceeds to picture coding processing (S105 to S107).
  • the retry count management unit 150 determines whether the retry count is 0, except when the retry count is 0. The value is decremented by 1 from the retry count (S106). The retry count may not be zero when re-encoding occurs in a GOP prior to the GOP that has currently been encoded. The retry count management unit 150 notifies the parameter adjustment unit 160 of the retry count after the change, and the parameter adjustment unit 160 sets the encoding parameter corresponding to the notified retry count in the encoding unit 120 and sets the next GOP. Encoding of the first picture is started.
  • Case 2 will be described in which the quantization statistic exceeds a predetermined threshold value a plurality of times in GOP encoding, but the quantization statistic can be prevented from exceeding the threshold value by re-encoding.
  • a case will be described in which the retry count at the start of GOP encoding is 1, and re-encoding is performed twice with the same GOP.
  • the input buffer 110 stores the picture and inputs the picture to the encoding unit 120 as an encoding target picture (S101). Then, the encoding unit 120 encodes the picture, outputs the encoded stream to the output buffer 130 (the output buffer 130 does not output the encoded stream and stores the encoded stream), and stores quantization parameter information regarding the picture. It outputs to the quantization statistic calculation part 140 (S102).
  • an encoding parameter corresponding to retry count 1 is used.
  • the quantization statistic calculation unit 140 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 120. As a result, when the quantization statistic calculation unit 140 detects that the quantization statistic exceeds a predetermined threshold for the picture, the quantization statistic calculation unit 140 includes the encoding unit 120 and the retry count management unit. 150, the retry information is output to the input buffer 110 and the output buffer 130 (S103).
  • the input buffer 110 Since the current retry count is 1 and has not reached the upper limit of 3 (S108), the input buffer 110 outputs the accumulated first picture of the GOP being encoded to the encoding unit 120 (S109). ). On the other hand, the retry count is incremented by 1 in the retry count management unit 150, and the retry count having a value of 2 is output to the parameter adjustment unit 160 (S110).
  • the parameter adjustment unit 160 reads the encoding parameter when the retry count is 2 from the encoding parameter table, and sets the encoding parameter in the encoding unit 120 (S111).
  • the output buffer 130 discards the encoded stream of the GOP being encoded.
  • the retry count management unit 150 decrements the retry count by 1, and the retry count becomes 2, so that the code of the next GOP Will be promoted.
  • the operations of the input buffer 110 and the output buffer 130 at this time are the same as in the above-described example.
  • FIG. 13 shows a conceptual diagram of retry count and coding parameter transition in the case 2 example.
  • the quantization statistic exceeds a predetermined threshold in the encoding of the sixth picture, so the retry count is 2
  • the quantization statistic does not exceed the predetermined threshold value. Therefore, when the GOP2 encoding is completed, 1 is subtracted from the retry count, and the encoding parameter with the retry count of 2 is used. Processing has shifted to GOP3 encoding.
  • the conceptual diagram of the transition of the CPB residual code amount when re-encoding is performed is as shown in FIG.
  • the portion indicated by the bold line is the CPB remaining code amount after re-encoding.
  • the degree of blurring is increased by the pre-filter, and the quantization parameter is made larger than the default encoding parameter. Therefore, the generated code amount is suppressed, and the transition of the remaining CPB code amount is as shown in FIG. 8, for example. .
  • the CPB residual code amount in a picture that has undergone re-encoding increases at the time of re-encoding and that the picture quality is greatly deteriorated in the picture.
  • the conceptual diagram of the transition of the quantization statistics when re-encoding is performed is as shown in FIG.
  • the quantization statistic of the picture that has started re-encoding becomes large.
  • the CPB residual code amount is increased as shown in FIG. Since there is a margin, the quantization statistic is smaller in the picture where re-encoding has occurred than before re-encoding.
  • the retry count management unit 150 sets the retry count to the upper limit value. It is detected that this has been reached (S108), and the encoding process proceeds without re-encoding.
  • FIG. Case 3 The conceptual diagram of the transition of the quantization statistic when re-encoding is performed and it cannot be avoided that the quantization statistic exceeds the threshold even by re-encoding is as shown in FIG. Case 3 can occur, for example, as shown in FIG. 10, when the quantization statistics are already large at the head of the GOP at which re-encoding is started.
  • the quantization parameter becomes larger at the time of re-encoding than at the time of normal encoding, so that at the time of re-encoding, the quantization statistic of the past picture in the encoding order rather than the picture that triggered re-encoding May exceed the threshold.
  • the offset value of the quantization parameter corresponding to each value of the retry count may be determined as follows.
  • the quantization parameter offset value (this is a predetermined value) corresponding to the maximum value of the retry count (3 in the above embodiment) is added to the quantization parameter at the time of normal encoding, and the value is quantized.
  • the threshold value of the quantization statistic is exceeded, the offset value of the quantization parameter corresponding to the maximum value of the retry count is corrected so that the value is equal to the threshold value.
  • an offset value corresponding to another retry count value is determined (for example, in the case of the above-described embodiment, when the offset value corresponding to the maximum retry count value is A).
  • the offset values of the retry counts 0, 1, and 2 may be equally divided into 0, A / 3, 2 ⁇ (A / 3), respectively.
  • FIG. 14 is a process flowchart showing the moving picture coding control method according to the present embodiment.
  • a picture next to a picture that has been encoded in the input video signal is set as an encoding target (step S201).
  • the input picture set as the encoding target is defined as H.264. H.264 and other predetermined encoding methods (step S202). It is determined whether or not the quantization statistic of the picture when the input picture is encoded exceeds a predetermined threshold (step S203), and if the quantization statistic exceeds the predetermined threshold, the processing is performed. Proceed to step S208.
  • step S204 it is determined whether or not the final picture has been encoded. If the quantization statistic does not exceed the predetermined threshold value, it is determined whether or not the final picture has been encoded (step S204). If the encoding is completed up to the final picture, the encoding process is terminated.
  • step S205 it is determined whether encoding of the encoding order picture group has been completed. If the encoding order picture group has not been encoded, the process returns to step S201, and the encoding process is continued in the same manner for the next picture.
  • step S206 When encoding of the encoding-order picture group is completed, it is determined whether the following condition is satisfied, and the retry count is decreased by 1 only when the condition is satisfied (step S206).
  • -Condition 1 Retry count is 1 or more.
  • Condition 2 CPB residual code amount is not less than a predetermined threshold. When the retry count is 0, or when the remaining CPB code amount is smaller than a predetermined threshold, the retry count is not decreased and remains unchanged.
  • step S207 an encoding parameter predetermined according to the retry count is set (step S207), the process returns to step S201, and the encoding process starts from the first picture in the next encoding order picture group. I do.
  • step S208 If it is detected in step S203 that the quantization statistic exceeds a predetermined threshold value, it is determined whether the current retry count value is a predetermined maximum value (step S208). If the retry count is the maximum value, re-encoding is not performed, and the process proceeds to step S204, where the encoding process is continued.
  • the first picture of the current encoding order picture group is set as an encoding target in order to re-encode the current encoding order picture group (step S209). Then, the retry count is increased by 1 (step S210). Then, based on the retry count, change one or more of the two encoding parameters (quantization parameter, prefilter strength) (the quantization parameter changes the step size more greatly, and in the case of filter strength, the blurring degree is changed). (Changed more greatly) (step S211), the process returns to step S202, and the encoding order picture group being encoded is re-encoded.
  • quantization parameter quantization parameter changes the step size more greatly, and in the case of filter strength, the blurring degree is changed.
  • this embodiment is basically a single encoding process, and only when the re-encoding condition is satisfied, the encoding order picture group Each picture of (for example, GOP) is repeatedly encoded with the generated code amount being suppressed in stages until the re-encoding condition is not satisfied.
  • encoding is performed with an encoding parameter that suppresses the generated code amount determined according to the retry count. Therefore, it is possible to reduce the amount of calculation compared to the conventional technique b in which all the pictures of the input video are encoded twice, and it is possible to reduce deterioration in image quality due to re-encoding.
  • the encoding parameter is changed according to the retry count at the time of re-encoding.
  • a pre-filter is applied to the input video during encoding, and the encoding parameters to be changed are a quantization parameter and a pre-filter strength. Both of these two encoding parameters may be changed, or only one of them may be changed.
  • a predetermined offset value that increases stepwise according to the retry count is added to the quantization parameter value determined during normal encoding, and re-encoding is performed with a larger quantization parameter.
  • a Gaussian filter is used in this embodiment.
  • the Gaussian filter can be created by sampling a Gaussian distribution represented by the following equation with respect to x and y.
  • g (x, y) ⁇ 1 / (2 ⁇ 2 ) ⁇ ⁇ exp ⁇ (x 2 + y 2 ) / (2 ⁇ 2 ) ⁇
  • the greater the value of ⁇ the greater the degree of blurring.
  • the degree of blurring increases, the high frequency components decrease, and the amount of generated code during encoding decreases. Details of the Gaussian filter are described in Non-Patent Document 2 described above, for example.
  • the Gaussian filter is not applied.
  • the type of the low pass filter is not limited.
  • the default encoding parameter ⁇ 0 may be changed according to the complexity of each picture, and ⁇ c may be obtained by adding a predetermined offset to ⁇ c ⁇ 1 .
  • quantization statistics in this embodiment, an average value of quantization parameters of each macroblock of a picture is used.
  • the encoding method is H.264. It is assumed that encoding according to the H.264 standard is performed.
  • the encoding order picture group is GOP.
  • a conceptual diagram of the GOP at the time of encoding is as shown in FIG.
  • One GOP is composed of 10 pictures, and B pictures and P pictures are alternately arranged with the I picture at the head in the display order.
  • FIG. 15 shows an example of the apparatus configuration of this embodiment.
  • the input buffer 210 accumulates the input video signal and outputs the video signal to be encoded to the encoding unit 220. Further, when the input buffer 210 receives information (retry information) indicating that re-encoding is performed because the quantization statistic of the picture has exceeded a predetermined threshold from the quantization statistic calculation unit 240 described later, The video signal is output again to the encoding unit 220 from the first picture of the GOP being encoded. When the GOP encoding is completed without receiving retry information, the input buffer 210 discards the stored video signal of the GOP.
  • retry information information indicating that re-encoding is performed because the quantization statistic of the picture has exceeded a predetermined threshold from the quantization statistic calculation unit 240 described later
  • the encoding unit 220 encodes the video signal input from the input buffer 210 and outputs the encoded stream to the output buffer 230. Also, the encoding unit 220 outputs the quantization parameter (quantization parameter information) of each macroblock when the input video signal is encoded to the quantization statistic calculation unit 240. Also, the encoding unit 220 notifies the CPB state prediction unit 260 of the CPB remaining code amount information when the GOP encoding is completed.
  • the encoding unit 220 receives the video signal from the first picture of the GOP being encoded again from the input buffer 210 and also sets the parameter adjustment unit 270. Since the encoding parameter for re-encoding is input from, re-encoding is performed using the input encoding parameter for re-encoding.
  • the output buffer 230 outputs the encoded stream of the GOP when all the encoded streams of the GOP are accumulated. On the other hand, when receiving the retry information from the quantization statistic calculation unit 240, the output buffer 230 The encoded stream accumulated for the GOP is discarded.
  • the quantization statistic calculation unit 240 uses the quantization parameter information input from the encoding unit 220 to obtain a quantization statistic that changes in units of pictures. When the quantization statistic exceeds a predetermined threshold, the quantization statistic calculation unit 240 outputs retry information to the input buffer 210, the encoding unit 220, the retry count management unit 250, and the output buffer 230, That the statistic has exceeded a predetermined threshold.
  • the retry count management unit 250 When the retry count management unit 250 receives the retry information from the quantization statistic calculation unit 240, the retry count management unit 250 adds 1 to the current retry count value and notifies the parameter adjustment unit 270 of the updated retry count. In addition, when the GOP being encoded is completed without receiving retry information from the quantization statistic calculation unit 240, if the retry count value is 1 or more, the retry count management unit 250 sets the retry count. 1 is subtracted from the count value, and the updated retry count is notified to the parameter adjustment unit 270.
  • the retry count management unit 250 subtracts 1 from the retry count even if the retry count is 1 or more. do not do. Even when the retry count is 0, the retry count management unit 250 notifies the parameter adjustment unit 270 of the current retry count value without subtracting 1 from the retry count.
  • the CPB state prediction unit 260 determines whether the CPB residual code amount is equal to or greater than a predetermined threshold based on the CPB residual code amount information notified from the encoding unit 220 when the GOP encoding is completed, When the CPB remaining code amount is equal to or larger than the threshold, the retry count management unit 250 is notified that the encoding parameter is changed as parameter change presence / absence information. On the other hand, when the CPB remaining code amount is smaller than the threshold, the CPB state prediction unit 260 notifies the retry count management unit 250 that the coding parameter is not changed as the parameter change presence / absence information.
  • the parameter adjustment unit 270 When the parameter adjustment unit 270 receives the retry count from the retry count management unit 250, the parameter adjustment unit 270 inputs an encoding parameter determined according to the retry count to the encoding unit 220. As a result, the encoding unit 220 performs encoding using an encoding parameter that reduces the generated code amount as the number of repetitions of re-encoding increases for the same GOP.
  • the retry count management unit 250 introduces the concept of a retry count that increases when re-encoding occurs and decreases when GOP encoding is completed. Manage counts.
  • the retry count has a predetermined upper limit value, for example, an upper limit value of “3”, and the same GOP may be re-encoded until the upper limit value is reached.
  • the offset value of the quantization parameter at the time of encoding and the filter strength of the pre-filter change according to the retry count value.
  • re-encoding encoding parameters corresponding to the retry counts 1, 2, and 3 are prepared in advance as an encoding parameter table. Then, the encoding parameter obtained from the encoding parameter table may be used for re-encoding.
  • a process for encoding a certain GOP will be described in three cases as follows.
  • the prefilter unit 221 applies the encoding target picture with the prefilter strength corresponding to the default encoding parameter.
  • a filtering process is applied.
  • the DCT coefficient generated in this picture is quantized by the quantization unit 222 with a quantization parameter according to the default encoding parameter.
  • the retry count is 1 or more, encoding is performed by pre-filtering and quantization processing based on the filter strength and the quantization parameter determined according to the retry count.
  • the quantization statistic calculation unit 240 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 220. In this example, since the quantization statistic does not exceed a predetermined threshold, the quantization statistic calculation unit 240 does not output retry information (S203). If the encoding target picture is the last picture in the input video signal, the output buffer 230 outputs the stored encoded stream, and the encoding process is completed (S204). Alternatively, if the encoding target picture is the last picture of the GOP, the output buffer 230 outputs the stored encoded stream, and the input buffer 210 discards the stored picture, and the first GOP of the next GOP is output. The process proceeds to picture coding processing (S205 to S207).
  • the encoding unit 220 when the GOP encoding is completed without the quantization statistic exceeding the predetermined threshold, the encoding unit 220, when the GOP encoding is completed, the CPB residual code amount information Is notified to the CPB state prediction unit 260.
  • the CPB state prediction unit 260 determines whether or not the CPB residual code amount is equal to or larger than a predetermined threshold. If the CPB residual code amount is equal to or larger than the threshold, the retry count management unit changes the coding parameter as parameter change presence / absence information. 250 is notified. On the other hand, when the CPB remaining code amount is smaller than the threshold value, the retry count management unit 250 is notified that the coding parameter is not changed as the parameter change presence / absence information. The retry count management unit 250 decrements the value from the current retry count by 1 only when the parameter change presence / absence information indicates that the encoding parameter is to be changed (S206).
  • the retry count may not be 0 when re-encoding occurs in a GOP before the GOP that has been encoded.
  • the retry count management unit 250 changes the retry count according to the notification of the parameter change presence / absence information from the CPB state prediction unit 260 and notifies the parameter adjustment unit 270 of the changed retry count.
  • the parameter adjustment unit 270 sets the encoding parameter corresponding to the notified retry count in the encoding unit 220, and starts encoding the first picture of the next GOP.
  • Case 2 will be described in which the quantization statistic exceeds a predetermined threshold value a plurality of times in GOP encoding, but the quantization statistic can be prevented from exceeding the threshold value by re-encoding.
  • a case will be described in which the retry count at the start of GOP encoding is 1, and re-encoding is performed twice with the same GOP.
  • the input buffer 210 stores the picture and inputs the picture to the encoding unit 220 as an encoding target picture (S201). Then, the encoding unit 220 encodes the picture, outputs the encoded stream to the output buffer 230 (the output buffer 230 does not output the encoded stream and accumulates it), and stores quantization parameter information regarding the picture. It outputs to the quantization statistic calculation part 240 (S202).
  • an encoding parameter corresponding to retry count 1 is used.
  • the quantization statistic calculation unit 240 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 220. As a result, when the quantization statistic calculation unit 240 detects that the quantization statistic exceeds the predetermined threshold for the picture, the quantization statistic calculation unit 240 includes the encoding unit 220 and the retry count management unit. 250, the retry information is output to the input buffer 210 and the output buffer 230 (S203).
  • the input buffer 210 Since the current retry count is 1 and has not reached the upper limit of 3 (S208), the input buffer 210 outputs the accumulated first picture of the GOP being encoded to the encoding unit 220 (S209). ). On the other hand, the retry count is incremented by 1 in the retry count management unit 250, and the retry count having a value of 2 is output to the parameter adjustment unit 270 (S210).
  • the parameter adjustment unit 270 reads the encoding parameter when the retry count is 2 from the encoding parameter table, and sets the encoding parameter in the encoding unit 220 (S211).
  • the output buffer 230 discards the encoded stream of the GOP being encoded.
  • the encoding unit 220 unless the quantization statistic exceeds a predetermined threshold, GOP pictures are sequentially input from the input buffer 210, and encoding proceeds.
  • the quantization statistic exceeds the predetermined threshold again with the same GOP, the retry count is incremented by 1 and becomes 3 by the same process as described above.
  • the encoding unit 220 when the quantization statistic does not exceed the predetermined threshold any more, the encoding unit 220 notifies the CPB state prediction unit 260 of the CPB remaining code amount information.
  • the CPB state prediction unit 260 sets the parameter change presence / absence information as “changed” when the CPB residual code amount is equal to or greater than a predetermined threshold, and sets the parameter change presence / absence information as “no change” otherwise. Notification to the unit 250.
  • the retry count is reduced by 1 by the retry count management unit 250, the retry count becomes 2, and encoding of the next GOP proceeds.
  • the operations of the input buffer 210 and the output buffer 230 at this time are the same as in the above-described example. If the parameter change presence / absence information is “no change”, the retry count remains 3, and the encoding of the next GOP proceeds.
  • the conceptual diagram of the retry count and the encoding parameter transition in the case 2 example is as shown in FIG.
  • the quantization statistic does not exceed the predetermined threshold, it is determined whether the CPB remaining code amount is equal to or larger than the predetermined threshold.
  • the CPB remaining code amount is equal to or greater than a predetermined threshold, 1 is subtracted from the retry count when the GOP2 encoding is completed, and the next GOP3 encoding is processed using an encoding parameter with a retry count of 2. Has migrated.
  • the conceptual diagram of the transition of the CPB residual code amount when re-encoding is performed is as shown in FIG.
  • the portion indicated by the bold line is the CPB remaining code amount after re-encoding.
  • the degree of blurring is increased by the pre-filter, and the quantization parameter is made larger than the default encoding parameter. Therefore, the generated code amount is suppressed, and the transition of the remaining CPB code amount is as shown in FIG. 8, for example. .
  • the CPB residual code amount in a picture that has undergone re-encoding increases at the time of re-encoding and that the picture quality is greatly deteriorated in the picture.
  • the conceptual diagram of the transition of the quantization statistics when re-encoding is performed is as shown in FIG.
  • the quantization statistic of the picture that has started re-encoding becomes large.
  • the CPB residual code amount is increased as shown in FIG. Since there is a margin, the quantization statistic is smaller in the picture where re-encoding has occurred than before re-encoding.
  • the retry count management unit 250 sets the retry count to the upper limit value. It is detected that this has been reached (S208), and the encoding process proceeds without re-encoding.
  • FIG. Case 3 The conceptual diagram of the transition of the quantization statistic when re-encoding is performed and it cannot be avoided that the quantization statistic exceeds the threshold even by re-encoding is as shown in FIG. Case 3 can occur, for example, as shown in FIG. 10, when the quantization statistics are already large at the head of the GOP at which re-encoding is started.
  • the quantization parameter becomes larger at the time of re-encoding than at the time of normal encoding, so that at the time of re-encoding, the quantization statistic of the past picture in the encoding order rather than the picture that triggered re-encoding May exceed the threshold.
  • the offset value of the quantization parameter corresponding to each value of the retry count may be determined as follows.
  • the quantization parameter offset value (this is a predetermined value) corresponding to the maximum value of the retry count (3 in the above embodiment) is added to the quantization parameter at the time of normal encoding, and the value is quantized.
  • the threshold value of the quantization statistic is exceeded, the offset value of the quantization parameter corresponding to the maximum value of the retry count is corrected so that the value is equal to the threshold value.
  • an offset value corresponding to another retry count value is determined (for example, in the case of the above-described embodiment, when the offset value corresponding to the maximum retry count value is A).
  • the offset values of the retry counts 0, 1, and 2 may be equally divided into 0, A / 3, 2 ⁇ (A / 3), respectively.
  • FIG. 16 is a process flowchart showing the moving picture coding control method according to the present embodiment.
  • a picture next to a picture that has been encoded in the input video signal is set as an encoding target (step S301).
  • the input picture set as the encoding target is defined as H.264.
  • H.264 or other predetermined encoding methods are used (step S302). It is determined whether or not the quantization statistic of the picture when the input picture is encoded exceeds a predetermined threshold (step S303), and if the quantization statistic exceeds the predetermined threshold, the processing is performed. The process proceeds to step S311.
  • step S304 it is determined whether or not the final picture has been encoded. If the quantization statistic does not exceed the predetermined threshold value, it is determined whether or not the final picture has been encoded (step S304). If the encoding is completed up to the final picture, the encoding process is terminated.
  • step S305 it is determined whether the encoded picture is the first I picture in the encoding order picture group. If the current encoded picture is the first I picture in the encoding order picture group, the I picture is set as a retry point (step S306). This is because, in step S309, which will be described later, when the CPB residual code amount is less than the predetermined threshold value, the retry point remains set at the head of the previous coding-order picture group, so that the next I picture is reproduced again. This is a process for updating the retry point after confirming that the encoding condition (quantization statistic exceeds a predetermined threshold) is not satisfied. If a retry point is set in step S310, the retry point is reset at the same position, but there is no inconvenience in processing. Thereafter, the process returns to step S301 to proceed with encoding of the next picture.
  • step S307 it is next determined whether or not the encoding order picture group has been encoded. If the encoding order picture group has not been encoded, the process returns to step S301, and the encoding process is continued in the same manner for the next picture.
  • the encoding parameter is changed by re-encoding (retry) of the encoding order picture group, the encoding parameter is returned to the value at the time of normal encoding (Ste S308).
  • step S309 it is determined whether or not the CPB remaining code amount is equal to or larger than a predetermined threshold. If the CPB remaining code amount is equal to or larger than the predetermined threshold, the retry point is set to the first I picture of the next coding order picture group (step S310). Thereafter, the processing returns to step S301, and encoding is performed in order from the beginning of the next encoding order picture group.
  • the retry point is not updated, and the process returns to step S301 to proceed to the encoding of the next encoding order picture group.
  • step S303 If it is detected in step S303 that the quantization statistic exceeds a predetermined threshold, it is determined whether or not the current coding-order picture group has been re-encoded (retry has been completed) (step S311). ). If the retry has been completed, no further re-encoding is performed, the process proceeds to step S304, and the encoding process is continued as it is.
  • step S312 If it has not been retried, the picture at the retry point is set as an encoding target in order to re-encode the current encoding order picture group (step S312). Then, change one or more of the two encoding parameters (quantization parameter, prefilter strength) (the quantization parameter changes the step size more greatly, and in the case of the filter strength, the blurring degree changes more greatly) ( In step S313), the process returns to step S302 to re-encode the encoding order picture group being encoded.
  • the two encoding parameters quantization parameter, prefilter strength
  • the encoding order picture group (for example, GOP) is encoded twice only when the quantization statistic exceeds a predetermined threshold.
  • encoding is performed with an encoding parameter that suppresses the generated code amount. Only when the re-encoding condition is satisfied, only the encoding order picture group in which it is satisfied can be re-encoded (except that the previous encoding order picture group may be re-encoded. Yes), image quality deterioration is reduced while suppressing CPB underflow. Therefore, the amount of calculation can be reduced as compared with the conventional technique b in which all the pictures of the input video are encoded twice.
  • FIG. 17 is a process flowchart showing a video encoding control method according to a modification of the present embodiment.
  • the process of step S308 shown in FIG. 16 may be replaced with the processes of steps S381 to S383 shown in FIG. Processes other than step S308 are substantially the same as those in FIG.
  • step S381 it is determined whether the encoding parameter has been changed by retry. If the encoding parameter has not been changed by retry, the process proceeds to step S309. If the coding parameter has been changed by retry, it is next determined whether or not the remaining CPB code amount is equal to or greater than a predetermined first threshold (step S382). If the CPB residual code amount is less than the predetermined threshold value, the encoding parameter remains in the state used for re-encoding, and the encoding parameter is restored to the original default encoding only when the CPB residual code amount is equal to or larger than the predetermined threshold value. The parameters are returned (step S383).
  • step S309 it is determined whether or not the CPB residual code amount is equal to or larger than a predetermined second threshold.
  • This process and the process of step S310 are the same as the processes of steps S309 and S310 shown in FIG. is there. Note that the first threshold value and the second threshold value may be the same value or different values.
  • the encoding parameter is set at the time of normal encoding. Return to value. This is due to the following reason. Even if encoding of the encoding order picture group is completed, if the CPB residual code amount is small, the generated encoding amount increases when the encoding parameter is returned to the value at the time of normal encoding. The possibility that the re-encoding condition is satisfied by encoding the pictures of the group of pictures increases. In the process of FIG. 17, when the CPB residual code amount is small, the encoding parameter is not changed. Therefore, compared with the process of FIG. 16, the occurrence of re-encoding in the encoding of the next encoding order picture group is suppressed. As a result, the amount of calculation is further reduced.
  • the encoding parameter is changed during re-encoding.
  • a pre-filter is applied to the input video during encoding, and the encoding parameters to be changed are a quantization parameter and a pre-filter strength. Both of these two encoding parameters may be changed, or only one of them may be changed.
  • Quantization parameters are re-encoded with a larger quantization parameter by adding a predetermined offset value to the quantization parameter value during normal encoding.
  • a Gaussian filter is used in this embodiment.
  • the Gaussian filter can be created by sampling a Gaussian distribution represented by the following equation with respect to x and y.
  • g (x, y) ⁇ 1 / (2 ⁇ 2 ) ⁇ ⁇ exp ⁇ (x 2 + y 2 ) / (2 ⁇ 2 ) ⁇
  • the greater the value of ⁇ the greater the degree of blurring.
  • the degree of blurring increases, the high frequency components decrease, and the amount of generated code during encoding decreases. Details of the Gaussian filter are described in Non-Patent Document 2 described above, for example.
  • the Gaussian filter is not applied.
  • the type of the low pass filter is not limited.
  • how to increase the degree of blurring during re-encoding may be arbitrarily determined in advance.
  • the default encoding parameter ⁇ 0 may be changed in accordance with the complexity of each picture, and ⁇ 1 may be a value obtained by adding a predetermined offset to ⁇ 0 .
  • quantization statistics in this embodiment, an average value of quantization parameters of each macroblock of a picture is used.
  • Encoding is H.264. It is assumed that encoding according to the H.264 standard is performed.
  • the encoding order picture group is GOP.
  • a conceptual diagram of the GOP at the time of encoding is as shown in FIG.
  • One GOP is composed of 10 pictures, and B pictures and P pictures are alternately arranged with the I picture at the head in the display order.
  • FIG. 18 shows an example of the apparatus configuration of this embodiment.
  • the input buffer 310 accumulates the input video signal and outputs the video signal to be encoded to the encoding unit 320. Further, when the input buffer 310 receives information (retry information) indicating that re-encoding is performed because the quantization statistic of the picture has exceeded a predetermined threshold from the quantization statistic calculation unit 340 described later, The video signal is output again to the encoding unit 320 from the first picture of the GOP set as the retry point. Further, when retry point information is input from the retry point management unit 360, the input buffer 310 discards the stored video signal of the GOP before the retry point.
  • retry information information
  • the encoding unit 320 encodes the video signal input from the input buffer 310 and outputs the encoded stream to the output buffer 330. Also, the encoding unit 320 outputs the quantization parameter (quantization parameter information) generated when the input video signal is encoded to the quantization statistic calculation unit 340. Furthermore, when receiving the retry information from the quantization statistic calculation unit 340, the encoding unit 320 receives the video signal from the first picture of the GOP indicated by the retry point from the input buffer 310 again, and the parameter adjustment unit 370. Since the encoding parameter for re-encoding is input from, re-encoding is performed using the input encoding parameter for re-encoding. Also, the encoding unit 320 outputs information on the CPB remaining code amount at the time when the GOP encoding is completed to the CPB state prediction unit 350.
  • the output buffer 330 Based on the retry point information from the retry point management unit 360, the output buffer 330 outputs an encoded stream that is determined to be output, that is, an encoded stream that is determined to be unnecessary to be re-encoded. . On the other hand, when receiving the retry information from the quantization statistic calculation unit 340, the output buffer 330 discards the encoded stream accumulated for the GOP being encoded.
  • the quantization statistic calculation unit 340 uses the quantization parameter information input from the encoding unit 320 to obtain a quantization statistic that changes in units of pictures. When the quantization statistic exceeds a predetermined threshold, the quantization statistic calculation unit 340 outputs the retry information to the input buffer 310, the encoding unit 320, the parameter adjustment unit 370, and the output buffer 330, and performs quantization. Notify that the statistic exceeds a predetermined threshold.
  • the CPB state prediction unit 350 determines whether or not the CPB residual code amount is equal to or larger than a predetermined threshold. If the CPB residual code amount is equal to or larger than the threshold, the retry point management unit 360 determines the retry point of the next GOP. Information indicating the first I picture of the GOP is notified as retry point change presence / absence information. Conversely, when the CPB remaining code amount is smaller than the threshold, the CPB state prediction unit 350 indicates that the retry point of the first picture of the next GOP is the first picture (I picture) of the GOP immediately before the GOP. Information is notified to the retry point management unit 360 as retry point change presence / absence information.
  • the retry point management unit 360 When the retry change presence / absence information indicates that the retry point is the first picture of the immediately preceding GOP in the first picture of the GOP to be encoded, the retry point management unit 360 notifies the input buffer 310 of the retry point. When the re-encoding does not occur in the encoding of the first picture, the input buffer 310 is notified that the retry point becomes the first picture of the GOP currently encoded from the encoding of the next picture. When the retry change presence / absence information indicates that the retry point is the first picture of the GOP to be encoded, the retry point management unit 360 notifies the input buffer 310 and the output buffer 330 of the retry point.
  • notification information is referred to as retry point information.
  • the input buffer 310 inputs the video signal from the picture based on the retry point information to the encoding unit 320 at the time of re-encoding, and the output buffer 330 is determined to be output based on the retry point information. Output only stream.
  • the parameter adjustment unit 370 When the parameter adjustment unit 370 receives retry information from the quantization statistic calculation unit 340, the parameter adjustment unit 370 inputs the encoding parameter for re-encoding to the encoding unit 320 as described above. As a result, the encoding unit 320 encodes the same GOP using an encoding parameter with a small generated code amount at the time of re-encoding.
  • a process for encoding a certain GOP will be described with the first GOP as GOP 1 and the next GOP as GOP 2 in the following four cases.
  • the filtering process by the prefilter unit 321 is applied to the encoding target picture with the prefilter strength corresponding to the default encoding parameters.
  • the DCT coefficient generated in this picture is quantized by the quantization unit 322 with a quantization parameter according to the default encoding parameter.
  • the quantization statistic calculation unit 340 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 320. In this example, since the quantization statistic does not exceed a predetermined threshold, the quantization statistic calculation unit 340 does not output retry information (S303). If the encoding target picture is the last picture in the input video signal, the output buffer 330 outputs the stored encoded stream, and the encoding process is completed (S304).
  • the retry point management unit 360 sets the first picture (I picture) of GOP1 as a retry point (S306), and the encoding unit 320 then The encoding of the picture is advanced.
  • the parameter adjustment unit 370 encodes the encoding parameter by default encoding when the encoding parameter for re-encoding is used in re-encoding.
  • the parameter is changed (S308).
  • the encoding unit 320 outputs the CPB remaining code amount information to the CPB state prediction unit 350, and the CPB state prediction unit 350 determines whether the CPB remaining code amount is equal to or greater than a predetermined threshold (S309).
  • the CPB state prediction unit 350 notifies the retry point management unit 360 of the determination result as the above-described retry point change presence / absence information.
  • the retry point management unit 360 indicates in the input buffer 310 that the retry point is the first picture of GOP1. Notify as.
  • the process proceeds to the encoding process of the first I picture of GOP2 (S302).
  • the quantization statistic does not exceed a predetermined threshold in the encoding of the I picture (S303)
  • the retry point management unit 360 Notifies the input buffer 310 and the output buffer 330 that the retry point is the first picture of GOP2 (S306). That is, when re-encoding occurs in subsequent GOP2 pictures, re-encoding is performed from the first picture of GOP2.
  • retry point change presence / absence information indicating that the retry point is changed is sent from the CPB state prediction unit 350 to the retry point management unit 360. Then, the retry point management unit 360 notifies the input buffer 310 that the retry point is the first picture of GOP2 as retry point information (S310). In this case, re-encoding is performed from the first picture of GOP2 even if the quantization statistic exceeds the predetermined threshold in any picture of GOP2.
  • the input buffer 310 sequentially inputs pictures to the encoding unit 320 from the first picture of GOP1, and the encoding unit 320 performs re-encoding.
  • the encoding parameter for re-encoding set from the parameter adjustment unit 370 is used (S313).
  • the pre-filter unit 321 applies a pre-filtering process to the encoding target picture with a pre-filter strength corresponding to the encoding parameter for re-encoding (a degree of blurring is greater than the default encoding parameter).
  • the DCT coefficient generated in this picture is quantized by the quantization unit 322 with a quantization parameter (a quantization step size is larger than the default encoding parameter) according to the re-encoding encoding parameter.
  • the retry point is set to the first picture of GOP1 or the first picture of GOP2 according to the CPB residual code amount at that time, The encoding process for the first picture proceeds.
  • the conceptual diagram of the change of the encoding parameter when re-encoding is performed on the intermediate picture of GOP2 is as shown in FIG.
  • a re-encoding encoding parameter that suppresses the generated code amount is set, and the head of GOP2 is set.
  • the quantization statistic does not exceed the predetermined threshold due to re-encoding, the encoding parameter for re-encoding is returned to the default encoding parameter in the next GOP3 encoding, and the encoding process is continued.
  • the conceptual diagram of the transition of the CPB residual code amount when re-encoding is performed is as shown in FIG.
  • the portion indicated by the bold line is the CPB remaining code amount after re-encoding.
  • the degree of blurring is increased by the pre-filter, and the quantization parameter is made larger than the default encoding parameter. Therefore, the generated code amount is suppressed, and the transition of the remaining CPB code amount is as shown in FIG. 8, for example. .
  • the CPB residual code amount in a picture that has undergone re-encoding increases at the time of re-encoding and that the picture quality is greatly deteriorated in the picture.
  • the conceptual diagram of the transition of the quantization statistics when re-encoding is performed is as shown in FIG.
  • the quantization statistic of the picture that has started re-encoding becomes large.
  • the CPB residual code amount is increased as shown in FIG. Since there is a margin, the quantization statistic is smaller in the picture where re-encoding has occurred than before re-encoding.
  • FIG. Case 4 The conceptual diagram of the transition of the quantization statistic when re-encoding is performed and it cannot be avoided that the quantization statistic exceeds the threshold even by re-encoding is as shown in FIG. Case 4 may occur when the quantization statistic is already large at the beginning of the GOP at which re-encoding is started, as shown in FIG. 10, for example.
  • the quantization statistic calculation unit 340 detects that the quantization statistic exceeds a predetermined threshold, and the operation for re-encoding GOP2 is the same as in case 3. If the quantization statistic exceeds a predetermined threshold during re-encoding of GOP2 (S303, S311), the re-encoding is not performed and the encoding process is continued (transition to S304).
  • the quantization parameter becomes larger at the time of re-encoding than at the time of normal encoding, so that at the time of re-encoding, the quantization statistic of the past picture in the encoding order is higher than the picture that triggered the re-encoding. May exceed the threshold. To reduce the possibility that this will occur, if the quantization parameter during re-encoding is larger than the quantization statistic threshold, the re-encoding quantization parameter is modified to a value equal to the quantization statistic threshold. May be.
  • the quantization during re-encoding Set the parameter value equal to the normal encoding value.
  • FIG. 19 is a process flowchart showing the moving picture coding control method according to the present embodiment.
  • NM is called the inter-picture distance for the Mth picture and the Nth picture (N> M) in the coding order.
  • the maximum inter-picture distance which is the maximum inter-picture distance that can be traced back within the memory limit at the time of re-encoding, is obtained and stored based on information on the amount of available memory given from the outside (S400).
  • the next picture after the picture that has been encoded in the input video signal (the leading picture of the input video signal at the start of encoding) is set as an encoding target (step S401).
  • the input picture set as the encoding target is defined as H.264. H.264 or other predetermined encoding method is used (step S402). It is determined whether or not the quantization statistic of the picture when the input picture is encoded exceeds a predetermined threshold (step S403). If the quantization statistic exceeds the predetermined threshold, the processing is performed. The process proceeds to step S407.
  • step S404 it is determined whether or not the final picture has been encoded. If the quantization statistic does not exceed the predetermined threshold value, it is determined whether or not the final picture has been encoded (step S404). If the encoding is completed up to the final picture, the encoding process is terminated.
  • step S405 it is determined whether or not encoding of the encoding order picture group has been completed. If the encoding order picture group has not been encoded, the process returns to step S401, and the encoding process is continued in the same manner for the next picture.
  • the encoding parameter is changed by re-encoding (retry) of the encoding order picture group, the encoding parameter is returned to the value at the time of normal encoding ( In step S406), the process returns to step S401, and the encoding process is performed from the first picture in the next encoding order picture group.
  • step S403 If it is detected in step S403 that the quantization statistic exceeds a predetermined threshold value, it is determined whether or not the current coding-order picture group has been re-encoded (retry has been completed) (step S407). ). If the retry has been completed, no further re-encoding is performed, and the process proceeds to step S404 to continue the encoding process.
  • a retry point is set to re-encode the pictures in the current encoding order picture group. That is, the farthest picture included in the encoding order picture group being encoded within the range of the maximum inter-picture distance calculated in step S400 is set as an encoding target (step S408). Then, change one or more of the two encoding parameters (quantization parameter, prefilter strength) (the quantization parameter changes the step size more greatly, and in the case of the filter strength, the blurring degree changes more greatly) ( In step S409), the process returns to step S402 to re-encode from the pictures in the encoding order picture group set as the retry point.
  • the two encoding parameters quantization parameter, prefilter strength
  • the encoding order picture group for example, A plurality of pictures in (GOP) are encoded twice.
  • the encoding order picture group for example, A plurality of pictures in (GOP) are encoded twice.
  • the encoding order picture group for example, A plurality of pictures in (GOP) are encoded twice.
  • the CPB residual code amount further increases.
  • FIG. 20 is a process flowchart showing a moving picture coding control method according to a modification of the present embodiment.
  • the process of step S406 shown in FIG. 19 can be replaced with the processes of steps S461 to S463 shown in FIG. Processing other than step S406 is the same as that in FIG.
  • step S461 it is determined whether or not the encoding parameter has been changed by retry. If the encoding parameter has not been changed by retry, the processing returns to step S401 in FIG. If the coding parameter has been changed by retry, it is next determined whether or not the CPB remaining code amount is equal to or greater than a predetermined threshold (step S462). If the CPB residual code amount is less than the predetermined threshold value, the encoding parameter remains in the state used for re-encoding, and the encoding parameter is restored to the original default encoding only when the CPB residual code amount is equal to or larger than the predetermined threshold value. Return to the parameter (step S463). Thereafter, the process returns to step S401 in FIG. 19 and proceeds to encoding of the next encoding order picture group.
  • the encoding parameter is returned to the normal encoding value only when the CPB remaining code amount exceeds a predetermined amount when the encoding of the encoding order picture group is completed. This is due to the following reason. Even if encoding of the encoding order picture group is completed, if the CPB residual code amount is small, the generated encoding amount increases when the encoding parameter is returned to the value at the time of normal encoding. When the picture group is encoded, the possibility that the quantization statistic of the encoded picture exceeds a predetermined threshold again increases. In the process of FIG. 20, when the CPB residual code amount is small, the encoding parameter is not changed. Therefore, compared to the process of FIG. 19, the occurrence of re-encoding in the encoding of the next encoding order picture group is suppressed. As a result, the amount of calculation is further reduced.
  • the encoding parameter is changed during re-encoding.
  • a pre-filter is applied to the input video during encoding, and the encoding parameters to be changed are a quantization parameter and a pre-filter strength. Both of these two encoding parameters may be changed, or only one of them may be changed.
  • Quantization parameters are re-encoded with a larger quantization parameter by adding a predetermined offset value to the quantization parameter value during normal encoding.
  • a Gaussian filter is used in this embodiment.
  • the Gaussian filter can be created by sampling a Gaussian distribution represented by the following equation with respect to x and y.
  • g (x, y) ⁇ 1 / (2 ⁇ 2 ) ⁇ ⁇ exp ⁇ (x 2 + y 2 ) / (2 ⁇ 2 ) ⁇
  • the greater the value of ⁇ the greater the degree of blurring.
  • the degree of blurring increases, the high frequency components decrease, and the amount of generated code during encoding decreases. Details of the Gaussian filter are described in Non-Patent Document 2 described above, for example.
  • the Gaussian filter is not applied.
  • the type of the low pass filter is not limited.
  • how to increase the degree of blurring during re-encoding may be arbitrarily determined in advance.
  • the default encoding parameter ⁇ 0 may be changed in accordance with the complexity of each picture, and ⁇ 1 may be a value obtained by adding a predetermined offset to ⁇ 0 .
  • quantization statistics in this embodiment, an average value of quantization parameters of each macroblock of a picture is used.
  • Encoding is H.264. It is assumed that encoding according to the H.264 standard is performed.
  • the encoding order picture group is GOP.
  • a conceptual diagram of the GOP at the time of encoding is as shown in FIG.
  • One GOP is composed of 10 pictures, and B pictures and P pictures are alternately arranged with the I picture at the head in the display order.
  • FIG. 21 shows an apparatus configuration example of this embodiment.
  • the maximum inter-picture distance determining unit 500 is notified of the usable memory amount from the outside (usable memory amount information), and obtains the maximum inter-picture distance that can be traced back at the maximum when re-encoding based on this.
  • the input video signal of the GOP being encoded is stored in the input buffer 410 and the encoded stream of the GOP being encoded is stored in the output buffer 430.
  • the maximum inter-picture distance determination unit 500 starts from the case where the GOP length is set to the maximum inter-picture distance, and reduces the maximum inter-picture distance value while reducing the amount of necessary memory in the worst case of the input buffer 410 and the output buffer 430, and the like.
  • the inter-picture distance at which the sum of the used memory amounts becomes equal to or less than the usable memory amount is determined, and the maximum inter-picture distance is determined.
  • the required memory amount of the input buffer 410 is as follows.
  • the required memory amount of input buffer (maximum distance between pictures + 1) x (data amount of one picture)
  • the required memory amount of the output buffer 430 is the maximum code amount that can be generated without causing CPB underflow under the restrictions of the size of the CPB and the bit rate. Specifically, when the CPB residual code amount is equal to the CPB size immediately before the start of the GOP code, and all the data input to the CPB according to the bit rate is used up (the CPB residual code amount is 0 after GOP encoding). Is the maximum amount of code that can be generated. As a calculation formula in terms of the number of bits, the required memory capacity of the output buffer is as follows.
  • Required memory size of output buffer (bit rate / number of pictures per second) ⁇ (maximum inter-picture distance + 1) + (size of CPB in number of bits)
  • H. In the case of H.264, it is necessary to leave the decoded image created during the GOP encoding as a reference image in preparation for re-encoding (if not, it is necessary to encode from the retry point at the time of re-encoding. No reference image). Since pictures in the GOP do not refer to pictures prior to the GOP, the reference picture is stored in the DPB (Decoded Picture Buffer) as long as I and P pictures are presupposed. In all situations, there will be enough memory.
  • DPB Decoded Picture Buffer
  • FIG. 22 is a conceptual diagram for explaining the required memory amount.
  • the GOP has a 10-picture configuration and the maximum inter-picture distance is 6.
  • the maximum number of pictures to be held in the input buffer 410 is seven.
  • the decoded images of the first I picture and the next P picture also need to be stored in the memory as reference images.
  • two DPBs of the first I picture and the second P picture reference numeral RS22 in FIG. 22
  • the number of pictures to be held in the input buffer 410 is reduced by three. In other words, the smaller the maximum inter-picture distance, the greater the amount of memory for the reference image. .
  • a memory for the motion vector may be necessary.
  • the necessary memory is calculated depending on the encoder configuration. The maximum inter-picture distance is determined by obtaining the inter-picture distance whose sum is less than the usable memory amount.
  • the maximum inter-picture distance determination unit 500 is not notified of the amount of available memory from the outside and the maximum inter-picture distance is calculated, but the maximum inter-picture distance is calculated externally, and the maximum inter-picture distance is determined. You may make it give to the distance determination part 500 between pictures.
  • the maximum inter-picture distance determination unit 500 notifies the retry point management unit 460 of the determined maximum inter-picture distance information.
  • the input buffer 410 accumulates the input video signal and outputs the video signal to be encoded to the encoding unit 420. Further, when the input buffer 410 receives information (retry information) indicating that re-encoding is performed when the quantization statistic exceeds a predetermined threshold from the quantization statistic calculation unit 440 described later, The video signal is output again from the retry point picture notified from the point management unit 460 to the encoding unit 420. Further, when the retry point information is notified from the retry point management unit 460, the input buffer 410 discards the stored video signal data corresponding to the pictures before the retry point.
  • retry information information indicating that re-encoding is performed when the quantization statistic exceeds a predetermined threshold from the quantization statistic calculation unit 440 described later.
  • the video signal is output again from the retry point picture notified from the point management unit 460 to the encoding unit 420. Further, when the retry point information is notified from the retry point management unit 460
  • the encoding unit 420 encodes the video signal input from the input buffer 410 and outputs the encoded stream to the output buffer 430. Also, the encoding unit 420 outputs the quantization parameter (quantization parameter information) generated when the input video signal is encoded to the quantization statistic calculation unit 440 when the encoding of the picture is completed. At the same time, information indicating that the picture has been encoded (encoding completed picture information) is output to the retry point management unit 460. Further, when receiving the retry information from the quantization statistic calculation unit 440, the encoding unit 420 receives the video signal from the retry point picture in the GOP being encoded again from the input buffer 410 and adjusts the parameters. Since the encoding parameter for re-encoding is input from the unit 450, re-encoding is performed using the input encoding parameter for re-encoding.
  • the output buffer 430 stores the encoded stream that is the GOP encoding result and, when notified of the retry point information from the retry point management unit 460, corresponds to the pictures before the retry point that have been stored so far.
  • the encoded stream is output and the data is removed from the output buffer 430.
  • the encoded stream accumulated for the GOP being encoded is discarded.
  • the quantization statistic calculation unit 440 uses the quantization parameter information input from the encoding unit 420 to obtain a quantization statistic that changes in units of pictures. When the quantization statistic exceeds a predetermined threshold, the quantization statistic calculation unit 440 outputs the retry information to the input buffer 410, the encoding unit 420, the parameter adjustment unit 450, and the output buffer 430, and performs quantization. Notify that the statistic exceeds a predetermined threshold.
  • the parameter adjustment unit 450 When receiving the retry information from the quantization statistic calculation unit 440, the parameter adjustment unit 450 inputs the encoding parameter for re-encoding to the encoding unit 420 as described above. As a result, the encoding unit 420 encodes the same GOP using an encoding parameter with a small generated code amount at the time of re-encoding.
  • the retry point management unit 460 indicates where the retry point becomes when the quantization statistic exceeds a predetermined threshold in the encoding of the next picture based on the encoding complete picture information and the maximum inter-picture distance information.
  • the retry point information is notified to the input buffer 410 and the output buffer 430.
  • a process for encoding a certain GOP will be described in three cases as follows.
  • default encoding parameters are used, and a filtering process by the prefilter unit 421 is applied to a picture to be encoded with a prefilter strength corresponding to the default encoding parameters. Also, the DCT coefficient generated in this picture is quantized by the quantization unit 422 with a quantization parameter according to the default encoding parameter.
  • the quantization statistic calculation unit 440 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 420. In this example, since the quantization statistic does not exceed a predetermined threshold, the quantization statistic calculation unit 440 does not output retry information (S403). If the encoding target picture is the final picture in the input video signal, the output buffer 430 outputs the stored encoded stream, and the encoding process is completed (S404). Alternatively, if the current picture to be encoded is the last picture of the GOP, the output buffer 430 outputs the stored encoded stream, the input buffer 410 discards the stored picture, and the processing is performed on the next GOP. The process proceeds to the first picture encoding process (S405). Here, since re-encoding has not occurred in the GOP, the process proceeds to the encoding process of the first picture of the next GOP without changing the encoding parameter (S406).
  • the quantization statistic calculation unit 440 calculates a quantization statistic for the picture based on the quantization parameter information input from the encoding unit 420. As a result, when the quantization statistic calculation unit 440 detects that the quantization statistic exceeds a predetermined threshold for the picture, the quantization statistic calculation unit 440 includes the encoding unit 420 and the parameter adjustment unit 450. The retry information is output to the input buffer 410 and the output buffer 430 (S403).
  • the input buffer 410 When retry has not yet occurred for the GOP being encoded (S407), the input buffer 410 outputs the picture at the position indicated by the retry point in the GOP being stored to the encoder 420 ( In step S408, the parameter adjustment unit 450 outputs the encoding parameter for re-encoding to the encoding unit 420 (S409). Furthermore, the output buffer 430 discards the encoded stream of the GOP being encoded. Then, the encoding unit 420 encodes the picture after the retry point input using the encoding parameter for re-encoding.
  • the encoding parameter for re-encoding is used in encoding, and the pre-filter strength corresponding to the encoding parameter for re-encoding (the blurring degree is greater than the default encoding parameter) is applied to the picture to be encoded.
  • a pre-filtering process by the filter unit 421 is applied.
  • the DCT coefficient generated in this picture is quantized by the quantization unit 422 with a quantization parameter (a quantization step size is larger than the default encoding parameter) according to the re-encoding encoding parameter.
  • the pictures of the GOP are sequentially input from the input buffer 410 to the encoding unit 420, and the encoding unit 420 performs the encoding process.
  • the encoding unit 420 sets the encoding parameter to the default encoding parameter ( S406), the process proceeds to the encoding process of the next GOP.
  • the operation when the encoding of the last picture of the input video is completed is the same as the case 1 described above.
  • the conceptual diagram of changing the encoding parameter when re-encoding is performed is as shown in FIG.
  • a re-encoding encoding parameter that suppresses the generated code amount is set, and the maximum Re-encoding is performed from the first I picture of GOP2 within the distance between pictures. Since the quantization statistic does not exceed a predetermined threshold due to re-encoding, in the next GOP3 encoding, the encoding parameter for re-encoding is returned to the default encoding parameter and the encoding process is continued. .
  • the conceptual diagram of the transition of the CPB residual code amount when re-encoding is performed is as shown in FIG.
  • the portion indicated by the bold line is the CPB remaining code amount after re-encoding.
  • the degree of blurring is increased by the pre-filter, and the quantization parameter is made larger than the default encoding parameter. Therefore, the generated code amount is suppressed, and the transition of the remaining CPB code amount is as shown in FIG. 8, for example. .
  • the CPB residual code amount in a picture that has undergone re-encoding increases at the time of re-encoding and that the picture quality is greatly deteriorated in the picture.
  • the conceptual diagram of the transition of the quantization statistics when re-encoding is performed is as shown in FIG.
  • the quantization statistic of the picture that has started re-encoding becomes large.
  • the CPB residual code amount is increased as shown in FIG. Since there is a margin, the quantization statistic is smaller in the picture where re-encoding has occurred than before re-encoding.
  • FIG. 23 is a diagram for explaining the memory reduction of the input buffer and the output buffer by limiting the retry point with the maximum inter-picture distance.
  • a retry point is set according to the present embodiment will be described as “Case A”.
  • a picture that starts re-encoding when a quantization statistic exceeds a predetermined threshold may be always set as the first picture of a coding-order picture group (for example, GOP). . This is called “Case B”.
  • the currently encoded picture is the ninth B picture of GOP2 and the maximum inter-picture distance is “5” as shown in FIG.
  • the retry point becomes the fourth picture (P picture) of GOP2, and the three pictures from the beginning of GOP2 before that are not used for re-encoding. For this reason, the data in the input buffer 410 and the output buffer 430 corresponding to these pictures need not be retained and can be discarded (reference numeral RS23 in FIG. 23).
  • these pictures are stored in the input buffer 410 and the output buffer 430 from the start of encoding the first picture of GOP2 until the end of encoding of the last picture of GOP2. Since it is necessary to hold data corresponding to the above, the amount of memory required increases.
  • the maximum inter-picture distance is calculated and the retry point is set, so that the amount of memory can be reduced as compared with Case B.
  • FIG. Case 3 The conceptual diagram of the transition of the quantization statistic when re-encoding is performed and it cannot be avoided that the quantization statistic exceeds the threshold even by re-encoding is as shown in FIG. Case 3 can occur, for example, as shown in FIG. 10, when the quantization statistics are already large at the head of the GOP at which re-encoding is started.
  • the quantization statistic calculation unit 440 detects that the quantization statistic exceeds a predetermined threshold, and the operation for re-encoding the GOP is the same as in case 2. If the quantization statistic exceeds a predetermined threshold during the re-encoding of the GOP (S403, S407), the re-encoding is not performed and the encoding process is continued (the process moves to S404).
  • the quantization parameter becomes larger at the time of re-encoding than at the time of normal encoding, so that at the time of re-encoding, the quantization statistic of the past picture in the encoding order rather than the picture that triggered re-encoding May exceed the threshold.
  • the quantization statistic threshold is modified to a value equal to the quantization statistic threshold. May be.
  • the quantization during re-encoding Set the parameter value equal to the normal encoding value.
  • the above-described video encoding control process can be realized by a computer and a software program, and the program can be recorded on a computer-readable recording medium or provided through a network.
  • the present invention can be used for, for example, a moving image encoding technique for encoding a video signal. According to the present invention, it is possible to encode a video signal so that a virtual buffer such as an encoded picture buffer in a virtual decoder does not break down and deterioration in image quality does not increase.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

 CPB(符号化ピクチャバッファ)のアンダーフローを抑制しつつ画質劣化の少ない動画像符号化を,従来の2パス符号化よりも少ない演算量で実現する。デコーダにおける仮想バッファが破綻しないように発生符号量を制御して入力映像信号を符号化する動画像符号化制御方法は,所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである符号化順ピクチャ群の各ピクチャについて,所定の符号化パラメータに従って順次符号化するステップと,ピクチャの符号化ごとに,ピクチャの符号化において利用した量子化パラメータ情報をもとにピクチャの量子化統計量を算出し,量子化統計量が所定の閾値を超えたか否かを検査するステップと,量子化統計量が所定の閾値を超えた場合に,符号化パラメータを符号化による発生符号量が減少するように変更し,符号化中の符号化順ピクチャ群の先頭のピクチャから変更後の符号化パラメータを用いて再符号化するステップとを有する。

Description

動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム
 本発明は,仮想デコーダにおける符号化ピクチャバッファ(CPB:Coded Picture Buffer)等の仮想バッファの破綻が生じないように,かつ画質の劣化が大きくならないように映像信号を符号化するための動画像符号化技術に関するものである。
 本願は,2010年5月12日に日本へ出願された日本特願2010-109874号,日本特願2010-109875号,日本特願2010-109876号,日本特願2010-109877号,日本特願2010-109878号に対して優先権を主張し,それらの内容をここに援用する。
 映像信号の符号化では,デコーダを破綻させないように符号化を行う必要がある。H.264符号化方式では,デコーダをモデル化した仮想デコーダHRD(Hypothetical Reference Decoder)を規定している。H.264の符号化器は,仮想デコーダを破綻させないように符号化をする必要がある。本発明は,仮想デコーダのCPBの破綻,具体的にはCPBのアンダーフローを抑制しつつ,画質の劣化を軽減するための技術である。
 図1に,CPBアンダーフローの概念図を示す。固定ビットレートの場合,そのビットレートでCPBに符号化ストリームが入力される(図1の参照符号RS1)。各時刻におけるCPB内の符号化ストリームのデータ量を「残符号量」と呼ぶ。仮想デコーダは,各ピクチャに対応した符号化ストリームをCPBから引き抜く。その際には,瞬時に当該ピクチャに対応した符号量分だけCPB残符号量が減少する。図1では,固定ビットレートの場合の例を示したが,可変ビットレートの場合も同様である。
 CPBアンダーフローとは,図1に示すように,仮想デコーダがピクチャの符号化ストリームをCPBから引き抜こうとしたときに,CPB内に当該ピクチャの符号化ストリームが不足している状況をいう。H.264に基づく符号化では,符号化を行いながらCPBの状態を検証し,CPBアンダーフローを生じさせないストリームを作成する必要がある。前述のように,仮想デコーダのCPBは,H.264において規格化されており,さらなる詳細は,例えば下記の非特許文献1に記載されている。
 なお,他の符号化標準においてもCPBと同じ概念が規定されている。例えばMPEG(Moving Picture Experts Group)-2では,VBV(Video Buffering Verifier)があり,このようなデコーダのバッファモデルを,ここでは「仮想バッファ」と総称する。以下の説明における「CPB」は「仮想バッファ」という言葉で読み替えて,広義に解釈することができる。
 映像信号の符号化方法には,1パス符号化とマルチパス符号化という技術がある。1パス符号化では,一般的に入力映像のピクチャを逐次的に符号化していく。一方でマルチパス符号化では,入力映像を複数回符号化する。2パス符号化では,1回符号化した結果を利用して,2回目の符号化を行う。以下,1パス符号化の従来技術を「従来技術a」,2パス符号化の従来技術を「従来技術b」として説明する。
 <従来技術a>
 1パス符号化では,入力されるピクチャを逐次的に符号化するため,符号化対象ピクチャより未来のピクチャの性質が分からない。そこで,過去に符号化したピクチャの発生符号量等から未来のピクチャの複雑度を推定し,CPBアンダーフローを抑制する。例えば,特許文献1の技術では,各ピクチャの符号化前に,過去に符号化した結果から得られた映像の複雑度を,GOP(Group Of Pictures)の残りの映像の複雑度の推定値とする。その複雑度の推定値を前提として,CPBの残符号量からGOPの残りの映像の符号化に利用できる最大の符号量を発生させる量子化パラメータを推定し,これを符号化対象ピクチャの符号化の量子化パラメータの下限値として利用することで,CPBアンダーフローを抑制する。このため,単純なシーンから複雑なシーンに移るような場合においては,単純なシーンの符号化時には未来も同等であるとして符号量を発生させ,複雑なシーンでは,CPBに画質を保つために必要な残符号量がなく,大きな量子化パラメータを利用して符号化することになる。結果として,画質が大きく劣化する問題がある。
 <従来技術b>
 2パス符号化では,入力映像の全ピクチャを符号化し,その際に発生した各ピクチャの符号量を2回目の符号化で利用する。この方法では,1パス符号化の場合と異なり,2回目の符号化時に映像の各部分の複雑さが分かることから,画質の劣化を抑えつつCPBアンダーフローを抑制できることを期待できる。例えば特許文献2の技術では,1回目の符号化で各フレームの複雑度を求め,各フレームの割り当て符号量を求める。そして,この割り当て符号量でCPBアンダーフローが生じるか否かを検証し,CPBアンダーフローが生じる場合には割り当て符号量を修正する。このように,各フレームの複雑度が分かっているため,CPBアンダーフローを抑制しつつも画質を保つことが期待できる。しかしながら,この方法は入力映像の全フレームを2回符号化するため,多くの演算量を要するという問題がある。
日本特開2006-295535号公報 日本特開2003-018603号公報
角野,菊池,鈴木,"改訂三版H.264/AVC教科書",インプレスR&D発行,2009, pp.189-191.
 前述した従来技術aでは,既に符号化済みの情報のみを利用して符号化制御を行うため,CPBアンダーフロー抑制による大きな画質劣化が避けられないという問題がある。画質劣化に対する単純な回避方法としては,量子化パラメータの上限閾値を設定することも考えられる。しかし,この対処方法では,CPBアンダーフローを誘発することになる。
 一方で,従来技術bによれば,画質劣化を抑えつつCPBアンダーフローを抑制することができるものの,演算量が多いという問題がある。
 本発明は,上記課題の解決を図り,従来の2パス符号化(従来技術b)よりも少ない演算量で,CPBアンダーフローを抑制しつつも,従来の1パス符号化(従来技術a)で生じるような大きな画質劣化を軽減することを目的とする。
 本発明を説明するにあたり,「符号化順ピクチャ群」と「量子化統計量」を定義する。符号化順ピクチャ群は,所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである。典型的な符号化順ピクチャ群の例はGOP(Group Of Pictures) である。
 符号化順ピクチャ群の概念図を図2A~図2Cに示す。図2A~図2Cにおいて,Iは画面内予測符号化の対象となるピクチャ(Iピクチャ),Pは順方向予測符号化の対象となるピクチャ(Pピクチャ),Bは双方向予測符号化の対象となるピクチャ(Bピクチャ)を表している。
 ピクチャの表示順が,例えば図2Aに示すように,I→B→P→B→P→B……の順であったとする。本発明でいう符号化順ピクチャ群をGOPとした場合,符号化順ピクチャ群は,図2Bに示すように,I→P→B→P→…→B→P(Iの直前)のピクチャ群となる。例えば,符号化順ピクチャ群を13ピクチャ構成とした場合には,図2Cに示すような符号化順で連続した13ピクチャが本発明でいう符号化順ピクチャ群となる。
 以上のように,入力映像のピクチャ列を,符号化順で連続し,所定の枚数で構成されるピクチャ群に分割したピクチャの集まりを符号化順ピクチャ群という。なお,ここで「ピクチャ」とは,映像がプログレッシブ形式の場合にはフレームであり,インターレース形式の場合には,1つのフィールドもしくはトップフィールドとボトムフィールドとを1つにしたフレームである。
 また,量子化統計量は,ピクチャの各マクロブロックの符号化に利用された量子化パラメータまたは量子化ステップから求める統計量である。例えば,ピクチャのマクロブロックの量子化パラメータもしくは量子化ステップの平均,メディアンである。
 本発明の第1の観点では,符号化順ピクチャ群を単位として,入力映像の符号化を進める。ただし,入力ピクチャを符号化するごとに,当該ピクチャの量子化統計量が所定の閾値を超えるかどうかをチェックし,量子化統計量が所定の閾値を超えた場合には,符号化パラメータを発生符号量が少なくなるように変更して,符号化中の符号化順ピクチャ群を再符号化する。符号化結果の出力バッファからの出力契機は,符号化順ピクチャ群の符号化が完了したときとする。
 変更する符号化パラメータとしては,例えば量子化パラメータやプレフィルタ強度があり,これらの1つ以上を変更する。例えば,量子化パラメータの場合には,量子化パラメータのステップサイズをより大きくして,符号化パラメータを発生符号量が少なくなるようにする。また,入力映像に対するプレフィルタのフィルタ強度を変更する場合,ぼかし度合いをより大きく変更することにより,発生符号量を少なくすることができる。
 符号化順ピクチャ群の再符号化が完了した場合,符号化パラメータを通常の符号化時の符号化パラメータ値に戻す。これにより,発生符号量が少なくなるように符号化パラメータを変更したことによる画質の劣化が,次の符号化順ピクチャ群にまで波及するのを抑止する。ここで,通常の符号化時の符号化パラメータとは,再符号化ではない状態のときに定められる符号化パラメータという意味である。
 または,符号化順ピクチャ群の再符号化が完了した場合に,必ず符号化パラメータを通常の符号化時の値に戻すのではなく,CPBの残符号量を調べ,残符号量が所定の閾値以上のときにだけ符号化パラメータを通常の符号化時の値に戻し,残符号量が少ないときには,符号化パラメータを通常の符号化時の値に戻さないようにしてもよい。こうすれば,再符号化が連続して生じる可能性を小さくすることができる。
 さらに本発明の第1の観点において,基本的には符号化パラメータを通常の符号化時の符号化パラメータ値に戻すが,符号化順ピクチャ群の再符号化の際にも,各ピクチャの符号化ごとに,当該ピクチャの量子化統計量が所定の閾値を超えるかどうかをチェックし,量子化統計量が所定の閾値を超えた場合には,現在符号化中の符号化順ピクチャ群の先頭のピクチャから符号化パラメータを変更して再符号化するようにしても良い。すなわち,量子化統計量が所定の閾値を超えるという再符号化条件が成立する限り,同じ符号化順ピクチャ群について複数回符号化を繰り返す。
 このとき,1つの符号化順ピクチャ群の再符号化回数をリトライカウントというパラメータで管理し,再符号化が生じたらリトライカウントの値を増やし,符号化順ピクチャ群の符号化が完了したときにリトライカウントの値を減らす。前述した符号化パラメータの値は,リトライカウントの大きさに応じて設定し,リトライカウントが大きいほど発生符号量が少なくなる値を用いる。符号化パラメータが量子化パラメータの場合には,リトライカウントが大きいほどステップサイズを大きくし,符号化パラメータがプレフィルタのフィルタ強度の場合には,リトライカウントが大きいほどぼかし度合いを大きくする。
 通常,符号化対象となる映像には,複雑な部分と単純な部分がある。一般的に映像の複雑な部分ほど,符号化パラメータの変更による発生符号量の変動量が大きい。また,画質の変動量も大きい。もし,1つの符号化順ピクチャ群に対する再符号化は1回だけと定めた場合,量子化統計量が所定の閾値を超えるという再符号化条件が成立して再符号化を行っているときに,再び再符号化条件が成立しないようにするためには,再符号化時の符号化パラメータを再符号化前の符号化パラメータから大きく変更したものにする必要がある。この場合,映像の比較的複雑な部分が再符号化の対象となったときに,大きな画質劣化が生じるおそれがある。
 そこで,前述のように再符号化条件が成立する限り,符号化順ピクチャ群を繰り返し符号化することとし,リトライカウントを管理して,リトライカウントの大きさに応じて符号化パラメータを設定する。これにより,符号化パラメータの変化量を小さく抑えて,適切な符号化パラメータで符号化する。その結果,画質劣化をより小さくすることができる。
 あるいは,上記同様に,1つの符号化順ピクチャ群の再符号化回数をリトライカウントというパラメータで管理し,再符号化が生じたらリトライカウントの値を増やし,符号化順ピクチャ群の符号化が完了したときにリトライカウントの値を減らす。
 ただし,符号化順ピクチャ群の符号化が完了したときにリトライカウントの値を無条件に減らすのではなく,符号化順ピクチャ群の符号化が完了した時点で,CPB残符号量が所定の閾値以上の場合にだけ,リトライカウントを減らすようにしても良い。
 すなわち,再符号化時にリトライカウントを増やして符号化した後,符号化順ピクチャ群の符号化が完了した時点で,基本的にはリトライカウントを減らすことにより,次の符号化順ピクチャ群への画質劣化の影響を少なくする。ただし,CPB残符号量が所定量未満であれば,リトライカウントを減らさないようにする。これにより,次の符号化順ピクチャ群の符号化においても再符号化が生じる可能性を小さくする。
 本発明の第2の観点では,符号化順ピクチャ群は,画面内予測符号化ピクチャ(Iピクチャ)を先頭とする所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである。
 本発明の第2の観点では,符号化順ピクチャ群は必ずしもGOPでなくてもよいが,符号化順ピクチャ群の先頭ピクチャは,画面内予測符号化ピクチャ(Iピクチャ)とする。図2Dは,符号化順ピクチャ群を2GOP分の20ピクチャ構成とした場合の例を示している。
 本発明の第2の観点では,符号化順ピクチャ群を単位として,入力映像の符号化を進める。ただし,入力ピクチャを符号化するごとに,当該ピクチャの量子化統計量が所定の閾値を超えるかどうかをチェックし,量子化統計量が所定の閾値を超えた場合には,符号化パラメータを発生符号量が少なくなるように変更して,リトライポイント(後述)として設定された符号化順ピクチャ群の位置から再符号化する。符号化結果の出力バッファからの出力契機は,符号化順ピクチャ群の符号化が完了し,再符号化しないことが確定したときとする。
 変更する符号化パラメータとしては,例えば量子化パラメータやプレフィルタ強度があり,これらの1つ以上を変更する。例えば,量子化パラメータの場合には,量子化パラメータのステップサイズをより大きくして,符号化パラメータを発生符号量が少なくなるようにする。また,入力映像に対するプレフィルタのフィルタ強度を変更する場合,ぼかし度合いをより大きく変更することにより,発生符号量を少なくすることができる。
 符号化順ピクチャ群の再符号化が完了した場合,符号化パラメータを通常の符号化時の符号化パラメータ値に戻す。これにより,発生符号量が少なくなるように符号化パラメータを変更したことによる画質の劣化が,次の符号化順ピクチャ群にまで波及するのを抑止する。ここで,通常の符号化時の符号化パラメータとは,再符号化ではない状態のときに定められる符号化パラメータという意味である。
 または,符号化順ピクチャ群の再符号化が完了した場合に,必ず符号化パラメータを通常の符号化時の値に戻すのではなく,CPBの残符号量を調べ,残符号量が所定の閾値以上のときにだけ符号化パラメータを通常の符号化時の値に戻し,残符号量が少ないときには,符号化パラメータを通常の符号化時の値に戻さないようにしてもよい。こうすれば,再符号化が連続して生じる可能性を小さくすることができる。
 以上の処理により,例えば符号化処理が映像の単純なシーンから複雑なシーンに移り,CPB残符号量が足りなくて画質が悪化しても,リトライポイントとして設定された符号化順ピクチャ群の位置に戻り,CPB残符号量がより増加するように再符号化を行うことにより,複雑なシーンでの画質劣化を軽減することができる。
 前述したリトライポイントとは,あるピクチャで量子化統計量が所定の閾値を超えることにより再符号化する必要が生じた場合に,どのピクチャから再符号化を開始するのかを示す位置情報である。
 リトライポイントは,基本的には現在符号化している符号化順ピクチャ群の先頭ピクチャであるが,1つ前に符号化した符号化順ピクチャ群の先頭ピクチャの場合もある。リトライポイントを更新する契機は,以下のとおりである。
(1)符号化順ピクチャ群の符号化が完了した時点で,CPB残符号量が所定の閾値以上あった場合,リトライポイントを次の符号化順ピクチャ群の先頭ピクチャ(Iピクチャ)に設定する。
(2)符号化順ピクチャ群の符号化が完了した時点で,CPB残符号量が所定の閾値より小さかった場合,リトライポイントはそのままで次の符号化順ピクチャ群の先頭ピクチャの符号化に進む。その符号化順ピクチャ群の先頭ピクチャの符号化で量子化統計量が所定の閾値を超えなかった場合,リトライポイントを現在符号化した符号化順ピクチャ群の先頭ピクチャに設定する。
 以上のようにリトライポイントを設定する理由について説明する。リトライポイントを常に現在符号化している符号化順ピクチャ群の先頭に設定すれば,処理構成が本発明より簡明になる。以下,この技術を「関連技術」という。関連技術の場合にも,量子化統計量が所定の閾値を超えた場合に限り,それが生じたピクチャを含む符号化順ピクチャ群だけを再符号化することで,画質劣化を軽減することができる。本発明の第2の観点は,この関連技術よりもさらに効果的に復号画像の画質劣化を軽減することを可能としている。
 周知のようにIピクチャは他のピクチャタイプと比較して発生符号量が多い。したがって,ある符号化順ピクチャ群の符号化が完了した時点でのCPB残符号量が少ない場合,従来から行われているようなレート制御では,発生符号量を抑えるために,次のIピクチャの符号化に利用する量子化パラメータの値を大きくする形になる。このような場合,上記関連技術では,当該Iピクチャの量子化パラメータが大きくなった影響で再符号化が生じるが,再符号化を現在符号化中の符号化順ピクチャ群の先頭ピクチャから開始するため,符号化は当該Iピクチャそのものだけで再符号化条件の成立を回避する必要がある。この場合,当該Iピクチャそのものの画質が大きく劣化する問題がある。さらに,Iピクチャは以降のPピクチャ,Bピクチャの符号化において参照されるため,これらのPピクチャ,Bピクチャの符号化効率も悪化する。
 そこで,本発明の第2の観点では,CPB残符号量が少ない場合,次の符号化順ピクチャ群の先頭のIピクチャで再符号化条件が成立したときには,設定されたリトライポイントにより,その1つ前の符号化順ピクチャ群に戻って,その先頭から再符号化する。したがって,符号化順ピクチャ群の先頭ピクチャに大きな画質劣化が生じることを回避することができ,画質劣化を軽減できる。
 本発明の第3の観点では,CPBアンダーフローを抑制するために,従来の2パス符号化のように入力映像のフレームを常に2回符号化するのではなく,原則は1パスの符号化とし,あるピクチャの符号化において,量子化統計量が所定の閾値を超えるという再符号化条件が成立した場合に限り,複数ピクチャだけ遡って再符号化することを基本とする。
 本発明の第3の観点では,符号化順ピクチャ群のピクチャの符号化において量子化統計量が所定の閾値を超えたときに,符号化順ピクチャ群内のあるピクチャまで遡って再符号化を行う。どのピクチャまで遡って再符号化を行うかは,利用可能なメモリ量によって予め決定される。ここで,再符号化時に遡れる最大のピクチャ数を「最大ピクチャ間距離」と定義して説明する。
 本発明の第3の観点における処理概要は,以下のとおりである。最初に,外部から与えられた利用可能なメモリ量の情報に基づき,再符号化時に遡れる最大のピクチャ数を求めて,最大ピクチャ間距離とし,この値を記憶する。
 これは以下の理由による。再符号化のためには,入力バッファに符号化対象のピクチャの映像信号を保存しておく必要があり,また,出力バッファには,再符号化しないことが確定して出力バッファからの符号化結果の出力が終わるまで,符号化結果の符号化ストリームを保持しておく必要がある。もし,使用可能なメモリ量が十分に存在する場合には,入力バッファと出力バッファのそれぞれに符号化順ピクチャ群のピクチャ数分のメモリ容量を持たせておくことにより,再符号化条件の成立時の再符号化を,符号化順ピクチャ群を単位として,符号化順ピクチャ群の先頭から行うことができる。
 しかし,必ずしもメモリが必要なだけ使えるとは限らないので,事前に使用可能なメモリ量から,再符号化時に遡れる最大のピクチャ数である最大ピクチャ間距離を算出しておく。
 本発明の第3の観点では,符号化順ピクチャ群を単位として,入力映像の符号化を進める。ただし,入力ピクチャを符号化するごとに,当該ピクチャの量子化統計量が所定の閾値を超えるかどうかをチェックし,量子化統計量が所定の閾値を超えた場合には,符号化パラメータを発生符号量が少なくなるように変更して,符号化中の符号化順ピクチャ群を再符号化する。ただし,符号化中の符号化順ピクチャ群のどのピクチャまで遡って再符号化するかについては,次の3条件を満たすピクチャとする。
・条件1:当該ピクチャが,符号化中の符号化順ピクチャ群に含まれること。
・条件2:当該ピクチャが,量子化統計量が所定の閾値を超えたピクチャを基準として,最大ピクチャ間距離に含まれること。
・条件3:条件1,2を満たすピクチャの中で,量子化統計量が所定の閾値を超えたピクチャから最も遠いピクチャであること。
 この再符号化を開始するピクチャをリトライポイントという。リトライポイントは,例えば最大ピクチャ間距離にある先頭のピクチャが1つ前の符号化順ピクチャ群内であれば,現在符号化中の符号化順ピクチャ群の先頭ピクチャであり,そうでなければ最大ピクチャ間距離にある先頭のピクチャ,すなわち最大ピクチャ間距離だけ離れた時間的に最も古く符号化されたピクチャとなる。
 再符号化時に変更する符号化パラメータとしては,例えば量子化パラメータやプレフィルタ強度があり,これらの1つ以上を変更する。例えば,量子化パラメータの場合には,量子化パラメータのステップサイズをより大きくして,符号化パラメータを発生符号量が少なくなるようにする。また,入力映像に対するプレフィルタのフィルタ強度を変更する場合,ぼかし度合いをより大きく変更することにより,発生符号量を少なくすることができる。
 再符号化により,現在符号化中の符号化順ピクチャ群の符号化が完了した場合,符号化パラメータを通常の符号化時の符号化パラメータ値に戻すことにより,画質の劣化が次の符号化順ピクチャ群にまで波及するのを抑止する。ここで,通常の符号化時の符号化パラメータとは,再符号化ではない状態のときに定められる符号化パラメータという意味である。
 または,符号化順ピクチャ群の再符号化が完了した場合に,必ず符号化パラメータを通常の符号化時の値に戻すのではなく,CPBの残符号量を調べ,残符号量が所定の閾値以上のときにだけ符号化パラメータを通常の符号化時の値に戻し,残符号量が少ないときには,符号化パラメータを通常の符号化時の値に戻さないようにしてもよい。こうすれば,再符号化が連続して生じる可能性を小さくすることができる。
 本発明によれば,符号化処理が映像の単純なシーンから複雑なシーンに移り,CPB残符号量が足りなくて画質が悪化しても,符号化順ピクチャ群の先頭に戻り,CPB残符号量がより増加するように再符号化を行うため,1パス符号化の従来技術aと比較して複雑なシーンでの画質劣化を軽減することができる。また,本発明は,必要なときにだけ部分的に再符号化することで画質劣化を軽減するものであるので,入力映像の全フレームを2回符号化する2パス符号化の従来技術bと比較して演算量が少ない。
 特に,本発明は,リトライカウントを管理することにより,再符号化時における符号化パラメータの変化量を小さく抑えて,再符号化による画質の劣化を小さくすることができる。
 また,再符号化後のCPB残符号量が少ない場合には,符号化パラメータを再符号化時と同じに保つので,再度の再符号化の発生を抑制することができる。
 また,本発明によれば,符号化処理が映像の単純なシーンから複雑なシーンに移り,CPB残符号量が足りなくて画質が悪化しても,リトライポイントとして設定された符号化順ピクチャ群の先頭に戻り,CPB残符号量がより増加するように再符号化を行うため,1パス符号化の従来技術aと比較して複雑なシーンでの画質劣化を軽減することができる。また,本発明は,必要なときにだけ部分的に再符号化することで画質劣化を軽減するものであるので,入力映像の全フレームを2回符号化する2パス符号化の従来技術bと比較して演算量が少ない。
 特に本発明は,符号化順ピクチャ群の符号化が完了してCPB残符号量が少ないような場合にも,符号化順ピクチャ群の先頭のIピクチャの画質が大きく劣化するのを防ぐことができる。
 また,本発明によれば,符号化処理が映像の単純なシーンから複雑なシーンに移り,CPB残符号量が足りなくて画質が悪化しても,符号化順ピクチャ群においてリトライポイントとして設定されたピクチャに戻って,CPB残符号量がより増加するように再符号化を行うため,1パス符号化の従来技術aと比較して複雑なシーンでの画質劣化を軽減することができる。また,本発明は,必要なときにだけ部分的に再符号化することで画質劣化を軽減するものであるので,入力映像の全フレームを2回符号化する2パス符号化の従来技術bと比較して演算量が少ない。また,再符号化に必要なメモリ量に応じて定められたリトライポイントから再符号化が行われるため,メモリの有効活用が可能になる。
CPBアンダーフローを説明するための図である。 符号化順ピクチャ群の概念図である。 符号化順ピクチャ群の概念図である。 符号化順ピクチャ群の概念図である。 符号化順ピクチャ群の概念図である。 本発明の第1実施形態に係る動画像符号化制御方法を示す処理フローチャートである。 本発明の第1実施形態に係る動画像符号化制御方法の変形例の処理フローチャートである。 GOPの概念図である。 本発明の第1実施形態に係る動画像符号化装置の構成例を示す図である。 再符号化が行われた際の符号化パラメータの変更の概念図である。 再符号化が行われた際のCPB残符号量の遷移の概念図である。 再符号化が行われた際の量子化統計量の遷移の概念図である。 再符号化しても量子化統計量が所定の閾値を超えるのを回避できなかった場合の量子化統計量の遷移の概念図である。 本発明の第2実施形態に係る動画像符号化制御方法の処理フローチャートである。 本発明の第2実施形態に係る動画像符号化装置の構成例を示す図である。 リトライカウント,符号化パラメータの推移の概念図である。 本発明の第3実施形態に係る動画像符号化制御方法の処理フローチャートである。 本発明の第3実施形態に係る動画像符号化装置の構成例を示す図である。 本発明の第4実施形態に係る動画像符号化制御方法を示す処理フローチャートである。 本発明の第4実施形態に係る動画像符号化制御方法の変形例の処理フローチャートである。 本発明の第4実施形態に係る動画像符号化装置の構成例を示す図である。 本発明の第5実施形態に係る動画像符号化制御方法を示す処理フローチャートである。 本発明の第5実施形態に係る動画像符号化制御方法の変形例の処理フローチャートである。 本発明の第5実施形態に係る動画像符号化装置の構成例を示す図である。 参照画像用の必要メモリ量を説明する概念図である。 リトライポイントを最大ピクチャ間距離で制限することによる入力バッファと出力バッファのメモリ削減を説明する図である。
[第1実施形態]
 以下,本発明の第1実施形態を,図面を用いて詳細に説明する。図3は,本発明の第1実施形態に係る動画像符号化制御方法を示す処理フローチャートである。
 まず,入力映像信号における符号化が終了したピクチャの次のピクチャを符号化対象として設定する(ステップS1)。符号化対象として設定した入力ピクチャを,H.264その他の所定の符号化方式により符号化する(ステップS2)。入力ピクチャを符号化した際の当該ピクチャの量子化統計量が所定の閾値を超えているかどうかを判定し(ステップS3),量子化統計量が所定の閾値を超えている場合には,処理がステップS7へ進む。
 量子化統計量が所定の閾値を超えていなければ,最終ピクチャの符号化が完了したかどうかを判定し(ステップS4),最終ピクチャまで符号化が完了したならば符号化処理を終了する。
 そうでなければ,符号化順ピクチャ群の符号化が完了したかどうかを判定する(ステップS5)。符号化順ピクチャ群の符号化が完了していなければ,処理がステップS1へ戻り,次のピクチャについて同様に符号化処理を続ける。符号化順ピクチャ群の符号化が完了した場合,符号化パラメータが符号化順ピクチャ群の再符号化(リトライ)で変更されていれば,符号化パラメータを通常の符号化時の値に戻し(ステップS6),処理がステップS1へ戻って,次の符号化順ピクチャ群の先頭のピクチャから符号化処理を行う。
 ステップS3において量子化統計量が所定の閾値を超えていることが検出された場合,現在の符号化順ピクチャ群は再符号化が行われたかどうか(リトライ済みかどうか)を判定する(ステップS7)。リトライ済みの場合,さらに再符号化を行わず,処理がステップS4へ進んでそのまま符号化処理を継続する。
 リトライ済みでない場合,現在の符号化順ピクチャ群の再符号化のため,現在の符号化順ピクチャ群の先頭のピクチャを符号化対象として設定する(ステップS8)。そして,2つの符号化パラメータ(量子化パラメータ,プレフィルタ強度)のうち1つ以上を変更し(量子化パラメータはステップサイズをより大きく変更し,フィルタ強度の場合はぼかし度合いをより大きく変更)(ステップS9),処理がステップS2へ戻って,符号化中の符号化順ピクチャ群を再符号化する。
 すなわち,入力映像の全フレームを2回符号化する従来技術bと異なり,符号化したピクチャの量子化統計量が大き過ぎる場合に限り,符号化順ピクチャ群(例えばGOP)を2回符号化する。2回目の符号化時には,CPB残符号量がより増加する符号化パラメータを用いて,現在符号化中の符号化順ピクチャ群のみを再符号化することで,映像が単純なシーンから複雑なシーンに移るときの画質の劣化を軽減しつつ,入力映像の全てのピクチャを2回符号化する従来技術bと比較して演算量を削減できる。
 図4は,本実施形態の変形例に係る動画像符号化制御方法を示す処理フローチャートである。本実施形態は,図3に示すステップS6の処理を,図4に示すステップS61~S63の処理に置き換えて実施することもできる。ステップS6以外の処理は,図3と同様である。
 図3のステップS5の処理の後,符号化パラメータがリトライで変更されているかどうかを判定する(ステップS61)。符号化パラメータがリトライで変更されていなければ,処理が図3のステップS1へ戻る。符号化パラメータがリトライで変更されていれば,次にCPB残符号量が所定の閾値以上かどうかを判定する(ステップS62)。CPB残符号量が所定の閾値未満であれば,符号化パラメータを再符号化で用いた状態のままとし,CPB残符号量が所定の閾値以上の場合にだけ符号化パラメータを元のデフォルト符号化パラメータに戻す(ステップS63)。その後に,処理が,図3のステップS1へ戻り,次の符号化順ピクチャ群の符号化に移る。
 図4に示す変形例では,以上のように符号化順ピクチャ群の符号化が完了した時点でCPB残符号量が所定量を超えている場合にだけ,符号化パラメータを通常の符号化時の値に戻す。これは次の理由による。符号化順ピクチャ群の符号化が完了したとしても,CPB残符号量が少ない場合,符号化パラメータを通常の符号化時の値に戻すと発生符号量がより多くなるため,次の符号化順ピクチャ群の符号化で,再度,符号化したピクチャの量子化統計量が所定の閾値を超える可能性が高まる。図4の処理では,CPB残符号量が少ない場合には,符号化パラメータを変更しないため,図3の処理に比べて,次の符号化順ピクチャ群の符号化における再符号化の発生が抑制され,演算量がさらに削減されることになる。
 以上のように本実施形態では,再符号化時に符号化パラメータを変更する。ここでは,符号化時に入力映像に対してプレフィルタを適用するものとし,変更する符号化パラメータとしては,量子化パラメータとプレフィルタ強度とする。この2つの符号化パラメータの双方を変更してもよいし,いずれか一方だけを変更してもよい。
 量子化パラメータについては,通常の符号化時の量子化パラメータ値に対して,所定のオフセット値を足し,より大きい量子化パラメータで再符号化する。
 プレフィルタについては,本実施形態では,ガウシアンフィルタを利用するものとする。ガウシアンフィルタは,次式で示されるガウス分布をx,yについてサンプリングすることによって作成できる。
 g(x,y)={1/(2πσ)}×exp{-(x+y)/(2σ)}
 上記の式から分かるように,σの値が大きいほど,ぼかし度合いが大きくなる。ぼかし度合いが大きいほど,高周波数成分が減るため,符号化時の発生符号量が減ることになる。ガウシアンフィルタの詳細は,例えば以下の非特許文献2に記載されている。
〔非特許文献2〕:奥富,小沢,清水,堀,“デジタル画像処理”,財団法人画像情報教育振興協会,2006,pp.108-110.
 σ=0の場合には,ガウシアンフィルタをかけないものとし,例えばデフォルト符号化パラメータはσ=0,再符号化用符号化パラメータはσ>0とする。なお,本実施形態ではローパスフィルタの種類は問わない。また,再符号化時のぼかし度合いの強め方も予め任意に定めてよい。例えば,デフォルト符号化パラメータのσは,ピクチャごとの複雑度に応じて変更し,σはσに所定のオフセットを足したものであるような構成でもよい。
 また,量子化統計量としては,本実施形態では,ピクチャの各マクロブロックの量子化パラメータの平均値を利用するものとする。
 符号化は,H.264の規格に従った符号化を行うものとする。また,本実施形態では,符号化順ピクチャ群はGOPとし,符号化する際のGOPの概念図を図5に示す。1つのGOPは10ピクチャで構成され,表示順で,Iピクチャを先頭にBピクチャとPピクチャとが交互に並ぶものとする。
 本実施形態の装置構成例を,図6に示す。入力バッファ10は,入力される映像信号を蓄積するとともに,符号化部20に符号化対象の映像信号を出力する。さらに,入力バッファ10は,後述の量子化統計量計算部40から,ピクチャの量子化統計量が所定の閾値を超えたため,再符号化を行うことを示す情報(リトライ情報)を受けた場合,符号化中のGOPの先頭のピクチャから映像信号を再度,符号化部20に出力する。また,リトライ情報を受けずにGOPの符号化が完了した場合,入力バッファ10は,蓄積していた当該GOPの映像信号を破棄する。
 符号化部20は,入力バッファ10から入力された映像信号を符号化し,符号化ストリームを出力バッファ30に出力する。また,符号化部20は,入力された映像信号を符号化した際の各マクロブロックの量子化パラメータ(量子化パラメータ情報)を量子化統計量計算部40に出力する。さらに,符号化部20は,量子化統計量計算部40からリトライ情報を受けた場合,符号化中のGOPの先頭ピクチャからの映像信号が入力バッファ10から再度入力されるとともに,パラメータ調整部50から再符号化用符号化パラメータが入力されるため,入力された再符号化用符号化パラメータを利用して再符号化を行う。
 出力バッファ30は,GOPの符号化ストリームが全て蓄積された段階で,当該GOPの符号化ストリームを出力し,一方で,量子化統計量計算部40からリトライ情報を受けた場合,符号化中のGOPについて蓄積した符号化ストリームを破棄する。
 量子化統計量計算部40は,符号化部20から入力される量子化パラメータ情報を利用して,ピクチャ単位で変化する量子化統計量を求める。そして,量子化統計量が所定の閾値を超えた場合,量子化統計量計算部40は,リトライ情報を入力バッファ10,符号化部20,パラメータ調整部50,出力バッファ30に出力し,量子化統計量が所定の閾値を超えたことを通知する。
 パラメータ調整部50は,量子化統計量計算部40からリトライ情報を受けた場合,前述のように再符号化用符号化パラメータを符号化部20に入力する。これにより,符号化部20は,再符号化時には,同じGOPについて,発生符号量が小さくなる符号化パラメータを用いて符号化をすることになる。
 本実施形態における符号化処理の流れについて,図3のフローチャートに沿って説明する。以下の説明では,S1,S2,…といったように,文章中に図3のフローチャートとの対応を記載する。
 あるGOPの符号化を行う処理について,以下のように3つのケースに場合分けをして説明する。
・[ケース1]:GOPの符号化において量子化統計量が所定の閾値を超えることはなかった。
・[ケース2]:GOPの符号化において量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた。
・[ケース3]:GOPの符号化において量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった。
 [ケース1の処理例]
 まず,GOPの符号化において量子化統計量が所定の閾値を超えることがなかった場合のケース1について説明する。GOPのピクチャが入力バッファ10に入力されると,入力バッファ10は当該ピクチャを蓄積するとともに,符号化部20に当該ピクチャを符号化対象ピクチャとして入力する(S1)。そして,符号化部20は当該ピクチャを符号化し,出力バッファ30に符号化ストリームを出力するとともに(出力バッファ30は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部40に出力する(S2)。
 ここで,符号化においてはデフォルト符号化パラメータが利用され,デフォルト符号化パラメータに対応したプレフィルタ強度で符号化対象ピクチャに,プレフィルタ部21によるフィルタリング処理が適用され,本ピクチャで発生したDCT(Discrete Cosine Transform)係数は,デフォルト符号化パラメータに従った量子化パラメータで,量子化部22により量子化される。
 量子化統計量計算部40は,当該ピクチャについて,符号化部20から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この例では量子化統計量が所定の閾値を超えることがないため,量子化統計量計算部40は,リトライ情報の出力はしない(S3)。符号化対象ピクチャが入力映像信号中の最終ピクチャであれば,出力バッファ30は蓄積している符号化ストリームを出力し,符号化処理が完了する(S4)。あるいは,符号化対象ピクチャがGOPの最終ピクチャであれば,出力バッファ30は蓄積していた符号化ストリームを出力するとともに,入力バッファ10は蓄積していたピクチャを破棄し,次のGOPの最初のピクチャの符号化処理に移る(S5)。ここで,当該GOPでは再符号化が生じなかったため,符号化パラメータに変更を加えずに,次のGOPの最初のピクチャの符号化処理に移る(S6)。
 [ケース2の処理例]
 次に,GOPの符号化において量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた場合のケース2について説明する。GOPのピクチャが入力バッファ10に入力されると,入力バッファ10は当該ピクチャを蓄積するとともに,符号化部20に当該ピクチャを符号化対象ピクチャとして入力する(S1)。そして,符号化部20は当該ピクチャを符号化し,出力バッファ30に符号化ストリームを出力するとともに(出力バッファ30は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部40に出力する(S2)。ここで,符号化においてはデフォルト符号化パラメータが利用される。
 量子化統計量計算部40は,当該ピクチャについて,符号化部20から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この結果,当該ピクチャについて,量子化統計量が所定の閾値を超えることを,量子化統計量計算部40が検知した場合,量子化統計量計算部40は,符号化部20,パラメータ調整部50,入力バッファ10,出力バッファ30にリトライ情報を出力する(S3)。
 符号化中のGOPについてまだリトライが発生していない場合(S7),入力バッファ10は,蓄積していた符号化中のGOPの先頭ピクチャを符号化部20に出力するとともに(S8),パラメータ調整部50は,符号化部20に再符号化用符号化パラメータを出力する(S9)。さらに,出力バッファ30は,符号化中のGOPの符号化ストリームを破棄する。そして,符号化部20は,再符号化用符号化パラメータを利用して入力されたGOPの先頭のピクチャを符号化する。
 ここで,符号化においては再符号化用符号化パラメータが利用され,再符号化用符号化パラメータに対応したプレフィルタ強度(デフォルト符号化パラメータよりぼかし度合いが大きい)で符号化対象ピクチャに,プレフィルタ部21によるプレフィルタリング処理が適用される。また,本ピクチャで発生したDCT係数は,再符号化用符号化パラメータに従った量子化パラメータ(デフォルト符号化パラメータより量子化ステップサイズが大きい)で,量子化部22により量子化される。
 この後,当該GOPのピクチャが順次入力バッファ10から符号化部20に入力され,符号化部20により符号化処理が行われる。そして,GOPの最終ピクチャの符号化が完了した場合(S5),出力バッファ30から当該GOPの符号化ストリームが出力されるとともに,符号化部20は符号化パラメータをデフォルト符号化パラメータに設定し(S6),次のGOPの符号化処理に進む。なお,入力映像の最終ピクチャの符号化が完了した場合の動作は,前述のケース1の場合と同様である。
 再符号化が行われた際の符号化パラメータの変更の概念図を図7に示す。図7の例では,2番目のGOP2の6ピクチャ目の符号化で量子化統計量が所定の閾値を超えたので,発生符号量を抑制する再符号化用符号化パラメータを設定して,GOP2の先頭のIピクチャから再符号化している。その後,再符号化により量子化統計量が所定の閾値を超えることがなかったので,次のGOP3の符号化では,再符号化用符号化パラメータをデフォルト符号化パラメータに戻し,符号化処理を続けている。
 再符号化が行われた際のCPB残符号量の遷移の概念図を図8に示す。太線で示した部分が再符号化後のCPB残符号量である。再符号化では,プレフィルタでぼかし度合いを強め,量子化パラメータもデフォルト符号化パラメータよりも大きくするため,発生符号量が抑えられ,CPB残符号量の遷移が,例えば図8に示すようになる。この結果,再符号化が生じたピクチャにおいてのCPB残符号量が,再符号化時には増加し,当該ピクチャで大きな画質劣化が生じることを回避できる。
 さらに,図9に再符号化が行われた際の量子化統計量の遷移の概念図を示す。図9に示すように,再符号化時に符号化パラメータを変更するため,再符号化を開始したピクチャの量子化統計量が大きくなるものの,その影響で図8に示すようにCPB残符号量に余裕が出るため,再符号化が生じたピクチャにおいては,量子化統計量が再符号化前より小さくなる。
 [ケース3の処理例]
 最後に,GOPの符号化において量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合のケース3について説明する。
 図10に,再符号化が行われ,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合の量子化統計量の遷移の概念図を示す。ケース3は,例えば図10に示すように,再符号化を開始するGOPの先頭において,すでに量子化統計量が大きい場合に生じ得る。この場合,量子化統計量計算部40によって量子化統計量が所定の閾値を超えたことが検知され,GOPの再符号化を行う動作はケース2と同様である。このGOPの再符号化中に量子化統計量が所定の閾値を超えた場合(S3,S7),さらに再符号化を行わず,そのまま符号化処理を継続する(処理がS4へ移行)。図10において,参照符号RS10は,再符号化しても量子化統計量が閾値を超えるのを回避できなかったことを示している。
 なお,再符号化時に通常の符号化時よりも量子化パラメータが大きくなることにより,再符号化時に,再符号化のきっかけとなったピクチャよりも符号化順で過去のピクチャで量子化統計量が閾値を超えることも起こりえる。これが生じる可能性を低減するため,再符号化時の量子化パラメータが量子化統計量の閾値よりも大きくなる場合,再符号化時の量子化パラメータを量子化統計量の閾値と等しい値に修正してもよい。ただし,再符号化時の量子化パラメータが通常の符号化時よりも小さくならないように,通常の符号化時の量子化パラメータが量子化統計量以上の場合には,再符号化時の量子化パラメータの値を通常の符号化時の値と等しくする。
[第2実施形態]
 以下,本発明の第2実施形態を,図面を用いて詳細に説明する。図11は,本実施形態に係る動画像符号化制御方法を示す処理フローチャートである。
 まず,入力映像信号における符号化が終了したピクチャの次のピクチャを符号化対象として設定する(ステップS101)。符号化対象として設定した入力ピクチャを,H.264その他の所定の符号化方式により符号化する(ステップS102)。入力ピクチャを符号化した際の当該ピクチャの量子化統計量が所定の閾値を超えているかどうかを判定し(ステップS103),量子化統計量が所定の閾値を超えている場合には,処理がステップS108へ進む。
 量子化統計量が所定の閾値を超えていなければ,最終ピクチャの符号化が完了したかどうかを判定し(ステップS104),最終ピクチャまで符号化が完了したならば符号化処理を終了する。
 そうでなければ,符号化順ピクチャ群の符号化が完了したかどうかを判定する(ステップS105)。符号化順ピクチャ群の符号化が完了していなければ,処理がステップS101へ戻り,次のピクチャについて同様に符号化処理を続ける。符号化順ピクチャ群の符号化が完了した場合,リトライカウントが1以上であれば,リトライカウントを1だけ減らす(ステップS106)。なお,リトライカウントの初期値は0である。その後,リトライカウントに基づき,あらかじめリトライカウントに応じて定められた符号化パラメータを設定し(ステップS107),処理がステップS101へ戻って,次の符号化順ピクチャ群の先頭のピクチャから符号化処理を行う。
 ステップS103において量子化統計量が所定の閾値を超えていることが検出された場合,現在のリトライカウントの値が,あらかじめ定められた最大値になっているかどうかを判定する(ステップS108)。リトライカウントが最大値の場合,さらに再符号化を行わず,処理がステップS104へ進んでそのまま符号化処理を継続する。
 リトライカウントが最大値に到達していない場合,現在の符号化順ピクチャ群の再符号化のため,現在の符号化順ピクチャ群の先頭のピクチャを符号化対象として設定する(ステップS109)。そして,リトライカウントを1だけ増やす(ステップS110)。その後,リトライカウントに基づき,2つの符号化パラメータ(量子化パラメータ,プレフィルタ強度)のうち1つ以上を変更し(量子化パラメータはステップサイズをより大きく変更し,フィルタ強度の場合はぼかし度合いをより大きく変更)(ステップS111),処理がステップS102へ戻って,符号化中の符号化順ピクチャ群を再符号化する。
 本実施形態は,入力映像の全フレームを2回符号化する従来技術bと異なり,基本的には1回の符号化処理とし,再符号化条件が成立した場合に限り,符号化順ピクチャ群(例えばGOP)の各ピクチャを再符号化条件が成立しなくなるまで発生符号量を段階的に抑えて繰り返し符号化する。2回目以降の符号化時には,リトライカウントに応じて定められた発生符号量を抑制する符号化パラメータで符号化を行う。したがって,入力映像の全てのピクチャを2度符号化する従来技術bと比較して演算量を削減できるとともに,再符号化による画質の劣化も小さくすることができる。
 以上のように本実施形態では,再符号化時に符号化パラメータをリトライカウントに応じて変更する。ここでは,符号化時に入力映像に対してプレフィルタを適用するものとし,変更する符号化パラメータとしては,量子化パラメータとプレフィルタ強度とする。この2つの符号化パラメータの双方を変更してもよいし,いずれか一方だけを変更してもよい。
 量子化パラメータについては,通常の符号化時に定められる量子化パラメータ値に対して,リトライカウントに応じて段階的に大きくなる所定のオフセット値を足し,より大きい量子化パラメータで再符号化する。
 プレフィルタについては,本実施形態では,ガウシアンフィルタを利用するものとする。ガウシアンフィルタは,次式で示されるガウス分布をx,yについてサンプリングすることによって作成できる。
 g(x,y)={1/(2πσ)}×exp{-(x+y)/(2σ)}
 上記の式から分かるように,σの値が大きいほど,ぼかし度合いが大きくなる。ぼかし度合いが大きいほど,高周波数成分が減るため,符号化時の発生符号量が減ることになる。ガウシアンフィルタの詳細は,例えば上述した非特許文献2に記載されている。
 σ=0の場合には,ガウシアンフィルタをかけないものとし,例えばデフォルト符号化パラメータはσ=0,再符号化用符号化パラメータは,リトライカウントの値をcとすると,σとする。σは,cの値が大きいほど大きな値とする。0<σ<σ<……である。なお,本実施形態ではローパスフィルタの種類は問わない。また,例えばデフォルト符号化パラメータのσは,ピクチャごとの複雑度に応じて変更し,σはσc-1 に所定のオフセットを足したものであるような構成でもよい。
 また,量子化統計量としては,本実施形態では,ピクチャの各マクロブロックの量子化パラメータの平均値を利用するものとする。
 以下で説明する実施形態では,符号化方式として,H.264の規格に従った符号化を行うものとする。また,符号化順ピクチャ群はGOPとする。符号化する際のGOPの概念図は図5に示した通りである。1つのGOPは10ピクチャで構成され,表示順で,Iピクチャを先頭にBピクチャとPピクチャとが交互に並ぶものとする。
 本実施形態の装置構成例を,図12に示す。入力バッファ110は,入力される映像信号を蓄積するとともに,符号化部120に符号化対象の映像信号を出力する。さらに,入力バッファ110は,後述の量子化統計量計算部140から,ピクチャの量子化統計量が所定の閾値を超えたため,再符号化を行うことを示す情報(リトライ情報)を受けた場合,符号化中のGOPの先頭のピクチャから映像信号を再度,符号化部120に出力する。また,リトライ情報を受けずにGOPの符号化が完了した場合,入力バッファ110は,蓄積していた当該GOPの映像信号を破棄する。
 符号化部120は,入力バッファ110から入力された映像信号を符号化し,符号化ストリームを出力バッファ130に出力する。また,符号化部120は,入力された映像信号を符号化した際の各マクロブロックの量子化パラメータ(量子化パラメータ情報)を量子化統計量計算部140に出力する。さらに,符号化部120は,量子化統計量計算部140からリトライ情報を受けた場合,符号化中のGOPの先頭ピクチャからの映像信号が入力バッファ110から再度入力されるとともに,パラメータ調整部160から再符号化用符号化パラメータが入力されるため,入力された再符号化用符号化パラメータを利用して再符号化を行う。
 出力バッファ130は,GOPの符号化ストリームが全て蓄積された段階で,当該GOPの符号化ストリームを出力し,一方で,量子化統計量計算部140からリトライ情報を受けた場合,符号化中のGOPについて蓄積した符号化ストリームを破棄する。
 量子化統計量計算部140は,符号化部120から入力される量子化パラメータ情報を利用して,ピクチャ単位で変化する量子化統計量を求める。そして,量子化統計量が所定の閾値を超えた場合,量子化統計量計算部140は,リトライ情報を入力バッファ110,符号化部120,リトライカウント管理部150,出力バッファ130に出力し,量子化統計量が所定の閾値を超えたことを通知する。
 リトライカウント管理部150は,量子化統計量計算部140からリトライ情報を受けた場合,現在のリトライカウントの値に1を加算し,更新後のリトライカウントをパラメータ調整部160に通知する。また,量子化統計量計算部140からリトライ情報を受けずに,現在符号化中のGOPの符号化が完了した場合,リトライカウントの値が1以上であれば,リトライカウント管理部150は,リトライカウントの値から1を減算し,更新後のリトライカウントをパラメータ調整部160に通知する。GOPの符号化が完了したときに,リトライカウントの値が0であれば,リトライカウント管理部150は,リトライカウント=0をパラメータ調整部160に通知する。
 パラメータ調整部160は,リトライカウント管理部150からリトライカウントを受けると,リトライカウントに応じて定められた符号化パラメータを符号化部120に入力する。これにより,符号化部120は,同じGOPについて再符号化の繰り返し回数が多くなるほど,発生符号量が小さくなる符号化パラメータを用いて符号化をすることになる。
 以上のように,本実施形態では,再符号化が発生すると値が増加し,GOPの符号化が完了した時点で値が減らされるリトライカウントという概念を導入し,リトライカウント管理部150にてリトライカウントを管理する。このリトライカウントには,例えば上限値が「3」というように,所定の上限値があり,上限値に達するまで同じGOPの再符号化を行ってよいものとする。符号化時における量子化パラメータのオフセット値,プレフィルタのフィルタ強度はリトライカウントの値に応じて変化する。
 リトライカウントが0のときには,デフォルト符号化パラメータが利用される。リトライカウントが0以外の場合には,例えばリトライカウントの上限値が3の場合,リトライカウントの1,2,3のそれぞれに対応した再符号化用符号化パラメータを,符号化パラメータテーブルとしてあらかじめ用意しておいて,その符号化パラメータテーブルから得た符号化パラメータを再符号化に利用してもよい。
 本実施形態における符号化処理の流れについて,図11のフローチャートに沿って説明する。以下の説明では,S101,S102,…といったように,文章中に図11のフローチャートとの対応を記載する。
 あるGOPの符号化を行う処理について,以下のように3つのケースに場合分けをして説明する。
・[ケース1]:GOPの符号化において量子化統計量が所定の閾値を超えることがなかった。
・[ケース2]:GOPの符号化において複数回量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた。
・[ケース3]:GOPの符号化において複数回量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった。
 [ケース1の処理例]
 まず,GOPの符号化において量子化統計量が所定の閾値を超えることがなかった場合のケース1について説明する。GOPのピクチャが入力バッファ110に入力されると,入力バッファ110は当該ピクチャを蓄積するとともに,符号化部120に当該ピクチャを符号化対象ピクチャとして入力する(S101)。そして,符号化部120は当該ピクチャを符号化し,出力バッファ130に符号化ストリームを出力するとともに(出力バッファ130は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部140に出力する(S102)。
 ここで,例えばリトライカウントが初期値の0であるとすると,符号化においてはデフォルト符号化パラメータが利用され,デフォルト符号化パラメータに対応したプレフィルタ強度で符号化対象ピクチャに,プレフィルタ部121によるフィルタリング処理が適用される。また,本ピクチャで発生したDCT係数は,デフォルト符号化パラメータに従った量子化パラメータで,量子化部122により量子化される。リトライカウントが1以上の場合には,それぞれリトライカウントに応じて定められたフィルタ強度および量子化パラメータによるプレフィルタ,量子化処理で符号化が行われる。
 量子化統計量計算部140は,当該ピクチャについて,符号化部120から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この例では量子化統計量が所定の閾値を超えることがないため,量子化統計量計算部140は,リトライ情報の出力はしない(S103)。符号化対象ピクチャが入力映像信号中の最終ピクチャであれば,出力バッファ130は蓄積している符号化ストリームを出力し,符号化処理が完了する(S104)。あるいは,符号化対象ピクチャがGOPの最終ピクチャであれば,出力バッファ130は蓄積していた符号化ストリームを出力するとともに,入力バッファ110は蓄積していたピクチャを破棄し,次のGOPの最初のピクチャの符号化処理に移る(S105~S107)。
 このケース1のように,各ピクチャの符号化において量子化統計量が所定の閾値を超えずにGOPの符号化が完了した場合,リトライカウントが0のときを除き,リトライカウント管理部150が現在のリトライカウントから値を1減らす(S106)。現在符号化が完了したGOPより前のGOPで再符号化が生じている場合に,リトライカウントが0でないことがある。リトライカウント管理部150は変更後のリトライカウントをパラメータ調整部160に通知し,パラメータ調整部160は,通知されたリトライカウントに対応した符号化パラメータを符号化部120に設定し,次のGOPの先頭ピクチャの符号化が開始される。
 [ケース2の処理例]
 次に,GOPの符号化において複数回,量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた場合のケース2について説明する。ここでは,GOPの符号化を開始する時点でのリトライカウントが1であるとし,同じGOPで2回再符号化が行われた場合を説明する。
 GOPのピクチャが入力バッファ110に入力されると,入力バッファ110は当該ピクチャを蓄積するとともに,符号化部120に当該ピクチャを符号化対象ピクチャとして入力する(S101)。そして,符号化部120は当該ピクチャを符号化し,出力バッファ130に符号化ストリームを出力するとともに(出力バッファ130は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部140に出力する(S102)。ここで,符号化においては,リトライカウント=1に対応した符号化パラメータが利用される。
 量子化統計量計算部140は,当該ピクチャについて,符号化部120から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この結果,当該ピクチャについて,量子化統計量が所定の閾値を超えることを,量子化統計量計算部140が検知した場合,量子化統計量計算部140は,符号化部120,リトライカウント管理部150,入力バッファ110,出力バッファ130にリトライ情報を出力する(S103)。
 現在のリトライカウントは1であり,上限値の3には達していないので(S108),入力バッファ110は,蓄積していた符号化中のGOPの先頭ピクチャを符号化部120に出力する(S109)。一方で,リトライカウント管理部150でリトライカウントが1増加され,値が2となったリトライカウントがパラメータ調整部160に出力される(S110)。
 パラメータ調整部160では,リトライカウントが2のときの符号化パラメータを符号化パラメータテーブルから読み出し,その符号化パラメータを符号化部120に設定する(S111)。出力バッファ130は,符号化中のGOPの符号化ストリームを破棄する。
 符号化部120では,量子化統計量が所定の閾値を超えない限り,順次,GOPのピクチャが入力バッファ110から入力されて符号化が進められる。この符号化の際に,同じGOPで再度,量子化統計量が所定の閾値を超えた場合,前述した処理と同様な処理によって,リトライカウントが1増加し,3になる。これにより,符号化パラメータがリトライカウント=3に対応するものに変更された上で,同じGOPについて再度,先頭ピクチャから符号化が順次行われる。
 このGOPの符号化において,これ以上,量子化統計量が所定の閾値を超えなかった場合,リトライカウント管理部150によってリトライカウントが1減らされ,リトライカウントが2となって,次のGOPの符号化が進められる。このときの入力バッファ110および出力バッファ130の動作は,前述した例と同様である。
 このケース2の例におけるリトライカウント,符号化パラメータの推移の概念図を,図13に示す。図13の例では,リトライカウントが1の状態で,2番目のGOP2を符号化しているときに,6ピクチャ目の符号化で量子化統計量が所定の閾値を超えたので,リトライカウントを2にし,再度,リトライカウント=2に対応する符号化パラメータでGOP2の先頭のIピクチャから再符号化している。この再符号化でも,8番目のピクチャで量子化統計量が所定の閾値を超えてしまい,さらにリトライカウント=3に対応する発生符号量が少ない符号化パラメータで再符号化する。再度の再符号化では,量子化統計量が所定の閾値を超えることがなかったので,GOP2の符号化完了時にリトライカウントから1を減じ,リトライカウントが2の符号化パラメータを用いて,次のGOP3の符号化に処理が移行している。
 再符号化が行われた際のCPB残符号量の遷移の概念図は,図8に示した通りである。太線で示した部分が再符号化後のCPB残符号量である。再符号化では,プレフィルタでぼかし度合いを強め,量子化パラメータもデフォルト符号化パラメータよりも大きくするため,発生符号量が抑えられ,CPB残符号量の遷移が,例えば図8に示すようになる。この結果,再符号化が生じたピクチャにおいてのCPB残符号量が,再符号化時には増加し,当該ピクチャで大きな画質劣化が生じることを回避できる。
 さらに,再符号化が行われた際の量子化統計量の遷移の概念図は,図9に示した通りである。図9に示すように,再符号化時に符号化パラメータを変更するため,再符号化を開始したピクチャの量子化統計量が大きくなるものの,その影響で図8に示すようにCPB残符号量に余裕が出るため,再符号化が生じたピクチャにおいては,量子化統計量が再符号化前より小さくなる。
 [ケース3の処理例]
 最後に,同じGOPの符号化において複数回量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合のケース3について説明する。
 あるGOPを符号化中に,ケース2の場合と同様に,リトライカウントが3に達したとする。さらに,同じGOPの符号化において,量子化統計量計算部140により量子化統計量が所定の閾値を超えたことが検知された場合(S103),リトライカウント管理部150でリトライカウントが上限値に達していることが検知され(S108),再符号化が行われずに符号化処理が進められる。
 再符号化が行われ,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合の量子化統計量の遷移の概念図は,図10に示した通りである。ケース3は,例えば図10に示すように,再符号化を開始するGOPの先頭において,すでに量子化統計量が大きい場合に生じ得る。
 なお,再符号化時に通常の符号化時よりも量子化パラメータが大きくなることにより,再符号化時に,再符号化のきっかけとなったピクチャよりも符号化順で過去のピクチャで量子化統計量が閾値を超えることも起こりえる。これが生じる可能性を低減するため,リトライカウントの各値に対応する量子化パラメータのオフセット値を次のように決めてもよい。
 リトライカウントの最大値(前述の実施形態では3)に対応する量子化パラメータのオフセット値(これは予め決められた所定の値)を通常の符号化時の量子化パラメータに足し,その値が量子化統計量の閾値を超える場合,当該閾値と値が等しくなるようにリトライカウントの最大値に対応する量子化パラメータのオフセット値を修正する。そして,当該オフセット値をもとに他のリトライカウントの値に対応するオフセット値を決める(例えば,前述の実施形態の場合であれば,リトライカウントの最大値に対応するオフセット値をAとしたとき,リトライカウント0,1,2のオフセット値を,それぞれ0,A/3,2×(A/3)のように等分してもよい)。ただし,再符号化時の量子化パラメータが通常の符号化時よりも小さくならないように,通常の符号化時の量子化パラメータが量子化統計量以上の場合には,リトライカウントの全ての値に対応するオフセット値を0とする。また,リトライカウントの最大値に対応する,予め決められた量子化パラメータのオフセット値を通常の符号化時の量子化パラメータに足した値が量子化統計量の閾値を超えない場合には,当該オフセット値をもとに他のリトライカウントの値に対応するオフセット値を決めればよい。
[第3実施形態]
 以下,本発明の第3実施形態を,図面を用いて詳細に説明する。図14は,本実施形態に係る動画像符号化制御方法を示す処理フローチャートである。
 まず,入力映像信号における符号化が終了したピクチャの次のピクチャを符号化対象として設定する(ステップS201)。符号化対象として設定した入力ピクチャを,H.264その他の所定の符号化方式により符号化する(ステップS202)。入力ピクチャを符号化した際の当該ピクチャの量子化統計量が所定の閾値を超えているかどうかを判定し(ステップS203),量子化統計量が所定の閾値を超えている場合には,処理がステップS208へ進む。
 量子化統計量が所定の閾値を超えていなければ,最終ピクチャの符号化が完了したかどうかを判定し(ステップS204),最終ピクチャまで符号化が完了したならば符号化処理を終了する。
 そうでなければ,符号化順ピクチャ群の符号化が完了したかどうかを判定する(ステップS205)。符号化順ピクチャ群の符号化が完了していなければ,処理がステップS201へ戻り,次のピクチャについて同様に符号化処理を続ける。
 符号化順ピクチャ群の符号化が完了した場合,以下の条件が満たされるかを判定し,条件が満たされ場合にだけ,リトライカウントを1減らす(ステップS206)。
・条件1:リトライカウントが1以上であること。
・条件2:CPB残符号量が所定の閾値以上であること。
リトライカウントが0の場合,またはCPB残符号量が所定の閾値より少ない場合には,リトライカウントは減らさずに,元のままとする。
 その後,リトライカウントに基づき,あらかじめリトライカウントに応じて定められた符号化パラメータを設定し(ステップS207),処理がステップS201へ戻って,次の符号化順ピクチャ群の先頭のピクチャから符号化処理を行う。
 ステップS203において量子化統計量が所定の閾値を超えていることが検出された場合,現在のリトライカウントの値が,あらかじめ定められた最大値になっているかどうかを判定する(ステップS208)。リトライカウントが最大値の場合,さらに再符号化を行わず,処理がステップS204へ進んでそのまま符号化処理を継続する。
 リトライカウントが最大値に到達していない場合,現在の符号化順ピクチャ群の再符号化のため,現在の符号化順ピクチャ群の先頭のピクチャを符号化対象として設定する(ステップS209)。そして,リトライカウントを1だけ増やす(ステップS210)。その後,リトライカウントに基づき,2つの符号化パラメータ(量子化パラメータ,プレフィルタ強度)のうち1つ以上を変更し(量子化パラメータはステップサイズをより大きく変更し,フィルタ強度の場合はぼかし度合いをより大きく変更)(ステップS211),処理がステップS202へ戻って,符号化中の符号化順ピクチャ群を再符号化する。
 本実施形態は,入力映像の全フレームを2回符号化する従来技術bと異なり,基本的には1回の符号化処理とし,再符号化条件が成立した場合に限り,符号化順ピクチャ群(例えばGOP)の各ピクチャを再符号化条件が成立しなくなるまで発生符号量を段階的に抑えて繰り返し符号化する。2回目以降の符号化時には,リトライカウントに応じて定められた発生符号量を抑制する符号化パラメータで符号化を行う。したがって,入力映像の全てのピクチャを2度符号化する従来技術bと比較して演算量を削減できるとともに,再符号化による画質の劣化も小さくすることができる。
 以上のように本実施形態では,再符号化時に符号化パラメータをリトライカウントに応じて変更する。ここでは,符号化時に入力映像に対してプレフィルタを適用するものとし,変更する符号化パラメータとしては,量子化パラメータとプレフィルタ強度とする。この2つの符号化パラメータの双方を変更してもよいし,いずれか一方だけを変更してもよい。
 量子化パラメータについては,通常の符号化時に定められる量子化パラメータ値に対して,リトライカウントに応じて段階的に大きくなる所定のオフセット値を足し,より大きい量子化パラメータで再符号化する。
 プレフィルタについては,本実施形態では,ガウシアンフィルタを利用するものとする。ガウシアンフィルタは,次式で示されるガウス分布をx,yについてサンプリングすることによって作成できる。
 g(x,y)={1/(2πσ)}×exp{-(x+y)/(2σ)}
 上記の式から分かるように,σの値が大きいほど,ぼかし度合いが大きくなる。ぼかし度合いが大きいほど,高周波数成分が減るため,符号化時の発生符号量が減ることになる。ガウシアンフィルタの詳細は,例えば上述した非特許文献2に記載されている。
 σ=0の場合には,ガウシアンフィルタをかけないものとし,例えばデフォルト符号化パラメータはσ=0,再符号化用符号化パラメータは,リトライカウントの値をcとすると,σとする。σは,cの値が大きいほど大きな値とする。0<σ<σ<……である。なお,本実施形態ではローパスフィルタの種類は問わない。また,例えばデフォルト符号化パラメータのσは,ピクチャごとの複雑度に応じて変更し,σはσc-1 に所定のオフセットを足したものであるような構成でもよい。
 また,量子化統計量としては,本実施形態では,ピクチャの各マクロブロックの量子化パラメータの平均値を利用するものとする。
 以下で説明する実施形態では,符号化方式として,H.264の規格に従った符号化を行うものとする。また,符号化順ピクチャ群はGOPとする。符号化する際のGOPの概念図は図5に示した通りである。1つのGOPは10ピクチャで構成され,表示順で,Iピクチャを先頭にBピクチャとPピクチャとが交互に並ぶものとする。
 本実施形態の装置構成例を,図15に示す。入力バッファ210は,入力される映像信号を蓄積するとともに,符号化部220に符号化対象の映像信号を出力する。さらに,入力バッファ210は,後述の量子化統計量計算部240から,ピクチャの量子化統計量が所定の閾値を超えたため,再符号化を行うことを示す情報(リトライ情報)を受けた場合,符号化中のGOPの先頭のピクチャから映像信号を再度,符号化部220に出力する。また,リトライ情報を受けずにGOPの符号化が完了した場合,入力バッファ210は,蓄積していた当該GOPの映像信号を破棄する。
 符号化部220は,入力バッファ210から入力された映像信号を符号化し,符号化ストリームを出力バッファ230に出力する。また,符号化部220は,入力された映像信号を符号化した際の各マクロブロックの量子化パラメータ(量子化パラメータ情報)を量子化統計量計算部240に出力する。また,符号化部220は,GOPの符号化が完了した時点で,CPB残符号量情報をCPB状態予測部260に通知する。
 さらに,符号化部220は,量子化統計量計算部240からリトライ情報を受けた場合,符号化中のGOPの先頭ピクチャからの映像信号が入力バッファ210から再度入力されるとともに,パラメータ調整部270から再符号化用符号化パラメータが入力されるため,入力された再符号化用符号化パラメータを利用して再符号化を行う。
 出力バッファ230は,GOPの符号化ストリームが全て蓄積された段階で,当該GOPの符号化ストリームを出力し,一方で,量子化統計量計算部240からリトライ情報を受けた場合,符号化中のGOPについて蓄積した符号化ストリームを破棄する。
 量子化統計量計算部240は,符号化部220から入力される量子化パラメータ情報を利用して,ピクチャ単位で変化する量子化統計量を求める。そして,量子化統計量が所定の閾値を超えた場合,量子化統計量計算部240は,リトライ情報を入力バッファ210,符号化部220,リトライカウント管理部250,出力バッファ230に出力し,量子化統計量が所定の閾値を超えたことを通知する。
 リトライカウント管理部250は,量子化統計量計算部240からリトライ情報を受けた場合,現在のリトライカウントの値に1を加算し,更新後のリトライカウントをパラメータ調整部270に通知する。また,量子化統計量計算部240からリトライ情報を受けずに,現在符号化中のGOPの符号化が完了した場合,リトライカウントの値が1以上であれば,リトライカウント管理部250は,リトライカウントの値から1を減算し,更新後のリトライカウントをパラメータ調整部270に通知する。ただし,CPB状態予測部260から通知されたパラメータ変更有無情報が「パラメータ変更無し」を示していれば,リトライカウント管理部250は,リトライカウントが1以上であっても,リトライカウントから1を減算しない。また,リトライカウントが0の場合にも,リトライカウント管理部250は,リトライカウントから1を減算しないで,現在のリトライカウントの値をパラメータ調整部270に通知する。
 CPB状態予測部260は,GOPの符号化が完了した時点で符号化部220から通知されたCPB残符号量情報をもとに,CPB残符号量が所定の閾値以上か否かを判定し,CPB残符号量が閾値以上の場合,パラメータ変更有無情報として符号化パラメータを変更することをリトライカウント管理部250に通知する。一方,CPB残符号量が閾値より少ない場合,CPB状態予測部260は,パラメータ変更有無情報として,符号化パラメータを変更しないことをリトライカウント管理部250に通知する。
 パラメータ調整部270は,リトライカウント管理部250からリトライカウントを受けると,リトライカウントに応じて定められた符号化パラメータを符号化部220に入力する。これにより,符号化部220は,同じGOPについて再符号化の繰り返し回数が多くなるほど,発生符号量が小さくなる符号化パラメータを用いて符号化をすることになる。
 以上のように,本実施形態では,再符号化が発生すると値が増加し,GOPの符号化が完了した時点で値が減らされるリトライカウントという概念を導入し,リトライカウント管理部250にてリトライカウントを管理する。このリトライカウントには,例えば上限値が「3」というように,所定の上限値があり,上限値に達するまで同じGOPの再符号化を行ってよいものとする。符号化時における量子化パラメータのオフセット値,プレフィルタのフィルタ強度はリトライカウントの値に応じて変化する。
 リトライカウントが0のときには,デフォルト符号化パラメータが利用される。リトライカウントが0以外の場合には,例えばリトライカウントの上限値が3の場合,リトライカウントの1,2,3のそれぞれに対応した再符号化用符号化パラメータを,符号化パラメータテーブルとしてあらかじめ用意しておいて,その符号化パラメータテーブルから得た符号化パラメータを再符号化に利用してもよい。
 本実施形態における符号化処理の流れについて,図14のフローチャートに沿って説明する。以下の説明では,S201,S202,…といったように,文章中に図14のフローチャートとの対応を記載する。
 あるGOPの符号化を行う処理について,以下のように3つのケースに場合分けをして説明する。
・[ケース1]:GOPの符号化において量子化統計量が所定の閾値を超えることがなかった。
・[ケース2]:GOPの符号化において複数回量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた。
・[ケース3]:GOPの符号化において複数回量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった。
 [ケース1の処理例]
 まず,GOPの符号化において量子化統計量が所定の閾値を超えることがなかった場合のケース1について説明する。GOPのピクチャが入力バッファ210に入力されると,入力バッファ210は当該ピクチャを蓄積するとともに,符号化部220に当該ピクチャを符号化対象ピクチャとして入力する(S201)。そして,符号化部220は当該ピクチャを符号化し,出力バッファ230に符号化ストリームを出力するとともに(出力バッファ230は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部240に出力する(S202)。
 ここで,例えばリトライカウントが初期値の0であるとすると,符号化においてはデフォルト符号化パラメータが利用され,デフォルト符号化パラメータに対応したプレフィルタ強度で符号化対象ピクチャに,プレフィルタ部221によるフィルタリング処理が適用される。また,本ピクチャで発生したDCT係数は,デフォルト符号化パラメータに従った量子化パラメータで,量子化部222により量子化される。リトライカウントが1以上の場合には,それぞれリトライカウントに応じて定められたフィルタ強度および量子化パラメータによるプレフィルタ,量子化処理で符号化が行われる。
 量子化統計量計算部240は,当該ピクチャについて,符号化部220から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この例では量子化統計量が所定の閾値を超えることがないため,量子化統計量計算部240は,リトライ情報の出力はしない(S203)。符号化対象ピクチャが入力映像信号中の最終ピクチャであれば,出力バッファ230は蓄積している符号化ストリームを出力し,符号化処理が完了する(S204)。あるいは,符号化対象ピクチャがGOPの最終ピクチャであれば,出力バッファ230は蓄積していた符号化ストリームを出力するとともに,入力バッファ210は蓄積していたピクチャを破棄し,次のGOPの最初のピクチャの符号化処理に移る(S205~S207)。
 このケース1のように,量子化統計量が所定の閾値を超えずに,GOPの符号化が完了した場合,符号化部220は,GOPの符号化が完了した時点で,CPB残符号量情報をCPB状態予測部260に通知する。CPB状態予測部260は,CPB残符号量が所定の閾値以上か否かを判定し,CPB残符号量が閾値以上の場合,パラメータ変更有無情報として符号化パラメータを変更することをリトライカウント管理部250に通知する。一方,CPB残符号量が閾値よりも少ない場合,パラメータ変更有無情報として符号化パラメータを変更しないことをリトライカウント管理部250に通知する。リトライカウント管理部250は,パラメータ変更有無情報が符号化パラメータを変更することを示す場合に限り,現在のリトライカウントから値を1減らす(S206)。
 すなわち,現在符号化が完了したGOPより前のGOPで再符号化が生じている場合に,リトライカウントが0でないことがある。そのとき,リトライカウント管理部250は,CPB状態予測部260からのパラメータ変更有無情報の通知に従って,リトライカウントを変更し,変更後のリトライカウントをパラメータ調整部270に通知する。パラメータ調整部270は,通知されたリトライカウントに対応した符号化パラメータを符号化部220に設定し,次のGOPの先頭ピクチャの符号化が開始される。
 [ケース2の処理例]
 次に,GOPの符号化において複数回,量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた場合のケース2について説明する。ここでは,GOPの符号化を開始する時点でのリトライカウントが1であるとし,同じGOPで2回再符号化が行われた場合を説明する。
 GOPのピクチャが入力バッファ210に入力されると,入力バッファ210は当該ピクチャを蓄積するとともに,符号化部220に当該ピクチャを符号化対象ピクチャとして入力する(S201)。そして,符号化部220は当該ピクチャを符号化し,出力バッファ230に符号化ストリームを出力するとともに(出力バッファ230は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部240に出力する(S202)。ここで,符号化においては,リトライカウント=1に対応した符号化パラメータが利用される。
 量子化統計量計算部240は,当該ピクチャについて,符号化部220から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この結果,当該ピクチャについて,量子化統計量が所定の閾値を超えることを,量子化統計量計算部240が検知した場合,量子化統計量計算部240は,符号化部220,リトライカウント管理部250,入力バッファ210,出力バッファ230にリトライ情報を出力する(S203)。
 現在のリトライカウントは1であり,上限値の3には達していないので(S208),入力バッファ210は,蓄積していた符号化中のGOPの先頭ピクチャを符号化部220に出力する(S209)。一方で,リトライカウント管理部250でリトライカウントが1増加され,値が2となったリトライカウントがパラメータ調整部270に出力される(S210)。
 パラメータ調整部270では,リトライカウントが2のときの符号化パラメータを符号化パラメータテーブルから読み出し,その符号化パラメータを符号化部220に設定する(S211)。出力バッファ230は,符号化中のGOPの符号化ストリームを破棄する。
 符号化部220では,量子化統計量が所定の閾値を超えない限り,順次,GOPのピクチャが入力バッファ210から入力されて符号化が進められる。この符号化の際に,同じGOPで再度,量子化統計量が所定の閾値を超えた場合,前述した処理と同様な処理によって,リトライカウントが1増加し,3になる。これにより,符号化パラメータがリトライカウント=3に対応するものに変更された上で,同じGOPについて再度,先頭ピクチャから符号化が順次行われる。
 このGOPの符号化において,これ以上,量子化統計量が所定の閾値を超えなかった場合,符号化部220は,CPB残符号量情報をCPB状態予測部260に通知する。CPB状態予測部260は,CPB残符号量が所定の閾値以上の場合,パラメータ変更有無情報を「変更あり」とし,それ以外の場合にはパラメータ変更有無情報を「変更なし」として,リトライカウント管理部250に通知する。
 通知されたパラメータ変更有無情報が「変更あり」の場合,リトライカウント管理部250によってリトライカウントが1減らされ,リトライカウントが2となって,次のGOPの符号化が進められる。このときの入力バッファ210および出力バッファ230の動作は,前述した例と同様である。パラメータ変更有無情報が「変更なし」の場合には,リトライカウントが3のままで,次のGOPの符号化が進められる。
 このケース2の例におけるリトライカウント,符号化パラメータの推移の概念図は,図13に示した通りである。図13の例では,リトライカウントが1の状態で,2番目のGOP2を符号化しているときに,6ピクチャ目の符号化で量子化統計量が所定の閾値を超えたので,リトライカウントを2にし,再度,リトライカウント=2に対応する符号化パラメータでGOP2の先頭のIピクチャから再符号化している。この再符号化でも,8番目のピクチャで量子化統計量が所定の閾値を超え,さらにリトライカウント=3に対応する発生符号量が少ない符号化パラメータで再符号化が行われている。
 再度の再符号化では量子化統計量が所定の閾値を超えなかったので,CPB残符号量が所定の閾値以上かを判定する。ここでは,CPB残符号量が所定の閾値以上であったので,GOP2の符号化完了時にリトライカウントから1を減じ,リトライカウントが2の符号化パラメータを用いて,次のGOP3の符号化に処理が移行している。
 再符号化が行われた際のCPB残符号量の遷移の概念図は,図8に示した通りである。太線で示した部分が再符号化後のCPB残符号量である。再符号化では,プレフィルタでぼかし度合いを強め,量子化パラメータもデフォルト符号化パラメータよりも大きくするため,発生符号量が抑えられ,CPB残符号量の遷移が,例えば図8に示すようになる。この結果,再符号化が生じたピクチャにおいてのCPB残符号量が,再符号化時には増加し,当該ピクチャで大きな画質劣化が生じることを回避できる。
 さらに,再符号化が行われた際の量子化統計量の遷移の概念図は,図9に示した通りである。図9に示すように,再符号化時に符号化パラメータを変更するため,再符号化を開始したピクチャの量子化統計量が大きくなるものの,その影響で図8に示すようにCPB残符号量に余裕が出るため,再符号化が生じたピクチャにおいては,量子化統計量が再符号化前より小さくなる。
 [ケース3の処理例]
 最後に,同じGOPの符号化において複数回量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合のケース3について説明する。
 あるGOPを符号化中に,ケース2の場合と同様に,リトライカウントが3に達したとする。さらに,同じGOPの符号化において,量子化統計量計算部240により量子化統計量が所定の閾値を超えたことが検知された場合(S203),リトライカウント管理部250でリトライカウントが上限値に達していることが検知され(S208),再符号化が行われずに符号化処理が進められる。
 再符号化が行われ,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合の量子化統計量の遷移の概念図は,図10に示した通りである。ケース3は,例えば図10に示すように,再符号化を開始するGOPの先頭において,すでに量子化統計量が大きい場合に生じ得る。
 なお,再符号化時に通常の符号化時よりも量子化パラメータが大きくなることにより,再符号化時に,再符号化のきっかけとなったピクチャよりも符号化順で過去のピクチャで量子化統計量が閾値を超えることも起こりえる。これが生じる可能性を低減するため,リトライカウントの各値に対応する量子化パラメータのオフセット値を次のように決めてもよい。
 リトライカウントの最大値(前述の実施形態では3)に対応する量子化パラメータのオフセット値(これは予め決められた所定の値)を通常の符号化時の量子化パラメータに足し,その値が量子化統計量の閾値を超える場合,当該閾値と値が等しくなるようにリトライカウントの最大値に対応する量子化パラメータのオフセット値を修正する。そして,当該オフセット値をもとに他のリトライカウントの値に対応するオフセット値を決める(例えば,前述の実施形態の場合であれば,リトライカウントの最大値に対応するオフセット値をAとしたとき,リトライカウント0,1,2のオフセット値を,それぞれ0,A/3,2×(A/3)のように等分してもよい)。ただし,再符号化時の量子化パラメータが通常の符号化時よりも小さくならないように,通常の符号化時の量子化パラメータが量子化統計量以上の場合には,リトライカウントの全ての値に対応するオフセット値を0とする。また,リトライカウントの最大値に対応する,予め決められた量子化パラメータのオフセット値を通常の符号化時の量子化パラメータに足した値が量子化統計量の閾値を超えない場合には,当該オフセット値をもとに他のリトライカウントの値に対応するオフセット値を決めればよい。
[第4実施形態]
 以下,本発明の第4実施形態を,図面を用いて詳細に説明する。図16は,本実施形態に係る動画像符号化制御方法を示す処理フローチャートである。
 まず,入力映像信号における符号化が終了したピクチャの次のピクチャを符号化対象として設定する(ステップS301)。符号化対象として設定した入力ピクチャを,H.264その他の所定の符号化方式により符号化する(ステップS302)。入力ピクチャを符号化した際の当該ピクチャの量子化統計量が所定の閾値を超えているかどうかを判定し(ステップS303),量子化統計量が所定の閾値を超えている場合には,処理がステップS311へ進む。
 量子化統計量が所定の閾値を超えていなければ,最終ピクチャの符号化が完了したかどうかを判定し(ステップS304),最終ピクチャまで符号化が完了したならば符号化処理を終了する。
 そうでなければ,符号化したピクチャは符号化順ピクチャ群の先頭のIピクチャかどうかを判定する(ステップS305)。現在符号化したピクチャが符号化順ピクチャ群の先頭のIピクチャの場合,そのIピクチャをリトライポイントとして設定する(ステップS306)。これは,後述するステップS309において,CPB残符号量が所定の閾値未満の場合に,リトライポイントが1つ前の符号化順ピクチャ群の先頭に設定されたままであるので,次のIピクチャで再符号化条件(量子化統計量が所定の閾値を超える)が成立しないことを確認してからリトライポイントを更新するための処理である。なお,ステップS310においてリトライポイントが設定されている場合には,同じ位置にリトライポイントを再設定することになるが,処理上,不都合は生じない。その後,処理がステップS301へ戻って,次のピクチャの符号化を進める。
 符号化したピクチャが符号化順ピクチャ群の先頭でない場合,次に,符号化順ピクチャ群の符号化が完了したかどうかを判定する(ステップS307)。符号化順ピクチャ群の符号化が完了していなければ,処理がステップS301へ戻り,次のピクチャについて同様に符号化処理を続ける。符号化順ピクチャ群の符号化が完了した場合,符号化パラメータが符号化順ピクチャ群の再符号化(リトライ)で変更されていれば,符号化パラメータを通常の符号化時の値に戻す(ステップS308)。
 また,符号化順ピクチャ群の符号化が完了した時点で,CPB残符号量が所定の閾値以上かどうかを判定する(ステップS309)。CPB残符号量が所定の閾値以上であれば,リトライポイントを,次の符号化順ピクチャ群の先頭のIピクチャに設定する(ステップS310)。その後,処理がステップS301へ戻って,次の符号化順ピクチャ群の先頭から順番に符号化を行う。
 CPB残符号量が所定の閾値未満の場合には,リトライポイントを更新しないで,処理がステップS301へ戻り,次の符号化順ピクチャ群の符号化へ進む。
 ステップS303において量子化統計量が所定の閾値を超えていることが検出された場合,現在の符号化順ピクチャ群は再符号化が行われたかどうか(リトライ済みかどうか)を判定する(ステップS311)。リトライ済みの場合,さらに再符号化を行わず,処理がステップS304へ進んでそのまま符号化処理を継続する。
 リトライ済みでない場合,現在の符号化順ピクチャ群の再符号化のため,リトライポイントのピクチャを符号化対象として設定する(ステップS312)。そして,2つの符号化パラメータ(量子化パラメータ,プレフィルタ強度)のうち1つ以上を変更し(量子化パラメータはステップサイズをより大きく変更し,フィルタ強度の場合はぼかし度合いをより大きく変更)(ステップS313),処理がステップS302へ戻って,符号化中の符号化順ピクチャ群を再符号化する。
 すなわち,入力映像の全フレームを2回符号化する従来技術bと異なり,量子化統計量が所定の閾値を超えた場合に限り,符号化順ピクチャ群(例えばGOP)を2回符号化する。2回目の符号化時には,発生符号量を抑制する符号化パラメータで符号化を行う。再符号化条件が成立した場合に限り,それが成立した符号化順ピクチャ群のみを再符号化することで(なお,例外的に1つ前の符号化順ピクチャ群から再符号化することもある),CPBアンダーフローを抑制しつつ画質劣化を軽減する。したがって,入力映像の全てのピクチャを2度符号化する従来技術bと比較して演算量を削減できる。
 図17は,本実施形態の変形例に係る動画像符号化制御方法を示す処理フローチャートである。本実施形態は,図16に示すステップS308の処理を,図17に示すステップS381~S383の処理に置き換えて実施することもできる。ステップS308以外の処理は,図16とほぼ同様である。
 図16のステップS307の処理の後,符号化パラメータがリトライで変更されているかどうかを判定する(ステップS381)。符号化パラメータがリトライで変更されていなければ,処理がステップS309へ進む。符号化パラメータがリトライで変更されていれば,次にCPB残符号量が所定の第一の閾値以上かどうかを判定する(ステップS382)。CPB残符号量が所定の閾値未満であれば,符号化パラメータを再符号化で用いた状態のままとし,CPB残符号量が所定の閾値以上の場合にだけ符号化パラメータを元のデフォルト符号化パラメータに戻す(ステップS383)。その後,処理がステップS309へ進み,CPB残符号量が所定の第二の閾値以上かどうかを判定するが,この処理およびステップS310の処理は,図16に示すステップS309,S310の処理と同様である。なお,第一の閾値と第二の閾値とは,同じ値であっても異なる値であってもどちらでもよい。
 図17に示す変形例では,以上のように符号化順ピクチャ群の符号化が完了した時点でCPB残符号量が所定量を超えている場合にだけ,符号化パラメータを通常の符号化時の値に戻す。これは次の理由による。符号化順ピクチャ群の符号化が完了したとしても,CPB残符号量が少ない場合,符号化パラメータを通常の符号化時の値に戻すと発生符号量がより多くなるため,次の符号化順ピクチャ群のピクチャの符号化で再符号化条件が成立する可能性が高まる。図17の処理では,CPB残符号量が少ない場合には,符号化パラメータを変更しないため,図16の処理に比べて,次の符号化順ピクチャ群の符号化における再符号化の発生が抑制され,演算量がさらに削減されることになる。
 以上のように本実施形態では,再符号化時に符号化パラメータを変更する。ここでは,符号化時に入力映像に対してプレフィルタを適用するものとし,変更する符号化パラメータとしては,量子化パラメータとプレフィルタ強度とする。この2つの符号化パラメータの双方を変更してもよいし,いずれか一方だけを変更してもよい。
 量子化パラメータについては,通常の符号化時の量子化パラメータ値に対して,所定のオフセット値を足し,より大きい量子化パラメータで再符号化する。
 プレフィルタについては,本実施形態では,ガウシアンフィルタを利用するものとする。ガウシアンフィルタは,次式で示されるガウス分布をx,yについてサンプリングすることによって作成できる。
 g(x,y)={1/(2πσ)}×exp{-(x+y)/(2σ)}
 上記の式から分かるように,σの値が大きいほど,ぼかし度合いが大きくなる。ぼかし度合いが大きいほど,高周波数成分が減るため,符号化時の発生符号量が減ることになる。ガウシアンフィルタの詳細は,例えば上述した非特許文献2に記載されている。
 σ=0の場合には,ガウシアンフィルタをかけないものとし,例えばデフォルト符号化パラメータはσ=0,再符号化用符号化パラメータはσ>0とする。なお,本実施形態ではローパスフィルタの種類は問わない。また,再符号化時のぼかし度合いの強め方も予め任意に定めてよい。例えば,デフォルト符号化パラメータのσは,ピクチャごとの複雑度に応じて変更し,σはσに所定のオフセットを足したものであるような構成でもよい。
 また,量子化統計量としては,本実施形態では,ピクチャの各マクロブロックの量子化パラメータの平均値を利用するものとする。
 符号化は,H.264の規格に従った符号化を行うものとする。また,本実施形態では,符号化順ピクチャ群はGOPとする。符号化する際のGOPの概念図は図5に示した通りである。1つのGOPは10ピクチャで構成され,表示順で,Iピクチャを先頭にBピクチャとPピクチャとが交互に並ぶものとする。
 本実施形態の装置構成例を,図18に示す。入力バッファ310は,入力される映像信号を蓄積するとともに,符号化部320に符号化対象の映像信号を出力する。さらに,入力バッファ310は,後述の量子化統計量計算部340から,ピクチャの量子化統計量が所定の閾値を超えたため,再符号化を行うことを示す情報(リトライ情報)を受けた場合,リトライポイントとして設定されたGOPの先頭ピクチャから映像信号を再度,符号化部320に出力する。また,リトライポイント管理部360からリトライポイント情報を入力した場合に,入力バッファ310は,リトライポイントより前の蓄積していたGOPの映像信号を破棄する。
 符号化部320は,入力バッファ310から入力された映像信号を符号化し,符号化ストリームを出力バッファ330に出力する。また,符号化部320は,入力された映像信号を符号化した際に発生した量子化パラメータ(量子化パラメータ情報)を量子化統計量計算部340に出力する。さらに,符号化部320は,量子化統計量計算部340からリトライ情報を受けた場合,リトライポイントが示すGOPの先頭ピクチャからの映像信号が入力バッファ310から再度入力されるとともに,パラメータ調整部370から再符号化用符号化パラメータが入力されるため,入力された再符号化用符号化パラメータを利用して再符号化を行う。また,符号化部320は,GOPの符号化が完了した時点におけるCPB残符号量の情報を,CPB状態予測部350に出力する。
 出力バッファ330は,リトライポイント管理部360からのリトライポイント情報に基づき,出力することが確定した符号化ストリーム,すなわち再符号化の必要がないことが確定した符号化結果の符号化ストリームを出力する。一方で,出力バッファ330は,量子化統計量計算部340からリトライ情報を受けた場合,符号化中のGOPについて蓄積した符号化ストリームを破棄する。
 量子化統計量計算部340は,符号化部320から入力される量子化パラメータ情報を利用して,ピクチャ単位で変化する量子化統計量を求める。そして,量子化統計量が所定の閾値を超えた場合,量子化統計量計算部340は,リトライ情報を入力バッファ310,符号化部320,パラメータ調整部370,出力バッファ330に出力し,量子化統計量が所定の閾値を超えたことを通知する。
 CPB状態予測部350は,CPB残符号量が所定の閾値以上か否かの判定を行い,CPB残符号量が閾値以上の場合には,リトライポイント管理部360に,次のGOPのリトライポイントは当該GOPの先頭のIピクチャであることを示す情報を,リトライポイント変更有無情報として通知する。逆に,CPB残符号量が閾値より小さい場合には,CPB状態予測部350は,次のGOPの先頭ピクチャのリトライポイントは当該GOPの直前のGOPの先頭ピクチャ(Iピクチャ)であることを示す情報を,リトライポイント変更有無情報としてリトライポイント管理部360に通知する。
 リトライポイント管理部360は,これから符号化するGOPの先頭ピクチャにおいて,リトライポイントが直前のGOPの先頭ピクチャであることをリトライ変更有無情報が示す場合に,そのリトライポイントを入力バッファ310に通知するとともに,先頭のピクチャの符号化において再符号化が生じなかった場合に,次のピクチャの符号化からリトライポイントを現在符号化しているGOPの先頭ピクチャとすることを,入力バッファ310に通知する。また,リトライポイントがこれから符号化するGOPの先頭ピクチャであることをリトライ変更有無情報が示す場合に,リトライポイント管理部360は,そのリトライポイントを入力バッファ310と出力バッファ330に通知する。ここでは,これらの通知情報をリトライポイント情報という。前述のように,入力バッファ310は,再符号化時にはリトライポイント情報に基づくピクチャから符号化部320に映像信号を入力し,出力バッファ330は,リトライポイント情報に基づき出力することが確定した符号化ストリームのみを出力する。
 パラメータ調整部370は,量子化統計量計算部340からリトライ情報を受けた場合,前述のように再符号化用符号化パラメータを符号化部320に入力する。これにより,符号化部320は,再符号化時には,同じGOPについて,発生符号量が小さくなる符号化パラメータを用いて符号化をすることになる。
 本実施形態における符号化処理の流れについて,図16のフローチャートに沿って説明する。以下の説明では,S301,S302,…といったように,文章中に図16のフローチャートとの対応を記載する。
 あるGOPの符号化を行う処理について,最初のGOPをGOP1,次のGOPをGOP2として,以下のように4つのケースに場合分けをして説明する。
・[ケース1]:GOP1の符号化において,量子化統計量が所定の閾値を超えるという再符号化条件が成立することなくGOP1の符号化が完了し,次のGOP2の先頭ピクチャの符号化においても再符号化条件が成立しなかった。
・[ケース2]:GOP1の符号化が完了し,次のGOP2の先頭ピクチャの符号化において再符号化条件が成立し,再符号化が必要になった。
・[ケース3]:GOP2の中間のピクチャの符号化において再符号化条件が成立し,再符号化が必要になった。
・[ケース4]:GOP2の中間のピクチャの符号化において再符号化条件が成立し,再符号化でも量子化統計量が閾値を超えるのを回避できなかった。
 [ケース1の処理例]
 まず,GOP1の符号化において,量子化統計量が所定の閾値を超えることがなかった場合(再符号化条件が成立しなかった場合)のケース1について説明する。GOP1のピクチャが入力バッファ310に入力されると,入力バッファ310は当該ピクチャを蓄積するとともに,符号化部320に当該ピクチャを符号化対象ピクチャとして入力する(S301)。そして,符号化部320は当該ピクチャを符号化し,出力バッファ330に符号化ストリームを出力するとともに(出力バッファ330は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部340に出力する(S302)。
 ここで,符号化においてはデフォルト符号化パラメータが利用され,デフォルト符号化パラメータに対応したプレフィルタ強度で符号化対象ピクチャに,プレフィルタ部321によるフィルタリング処理が適用される。また,本ピクチャで発生したDCT係数は,デフォルト符号化パラメータに従った量子化パラメータで,量子化部322により量子化される。
 量子化統計量計算部340は,当該ピクチャについて,符号化部320から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この例では量子化統計量が所定の閾値を超えることがないため,量子化統計量計算部340は,リトライ情報の出力はしない(S303)。符号化対象ピクチャが入力映像信号中の最終ピクチャであれば,出力バッファ330は蓄積している符号化ストリームを出力し,符号化処理が完了する(S304)。
 符号化対象ピクチャがGOP1の先頭ピクチャであれば(S305),リトライポイント管理部360は,GOP1の先頭ピクチャ(Iピクチャ)をリトライポイントとして設定し(S306),続いて符号化部320は,次のピクチャの符号化を進める。
 あるいは,符号化対象ピクチャがGOPの最終ピクチャであれば(S307),パラメータ調整部370は,再符号化で再符号化用符号化パラメータが利用されていた場合に,符号化パラメータをデフォルト符号化パラメータに変更する(S308)。
 その一方で,符号化部320がCPB残符号量情報をCPB状態予測部350に出力し,CPB状態予測部350は,CPB残符号量が所定の閾値以上かを判定する(S309)。CPB状態予測部350は,その判定結果を,前述のリトライポイント変更有無情報として,リトライポイント管理部360に通知する。リトライポイント管理部360は,リトライポイント変更有無情報がリトライポイントを変更しないこと(CPB残符号量が閾値未満)を示す場合,入力バッファ310にリトライポイントがGOP1の先頭ピクチャであることをリトライポイント情報として通知する。
 その後,処理は,GOP2の先頭のIピクチャの符号化処理に進み(S302),そのIピクチャの符号化で量子化統計量が所定の閾値を超えなかった場合(S303),リトライポイント管理部360は,入力バッファ310および出力バッファ330にリトライポイントがGOP2の先頭ピクチャであることを通知する(S306)。すなわち,それ以降のGOP2のピクチャにおいて再符号化が生じた場合,GOP2の先頭ピクチャから再符号化が行われる。
 前述したGOP1の符号化が完了した時点で,CPB残符号量が十分にある場合には,リトライポイントを変更することを示すリトライポイント変更有無情報がCPB状態予測部350からリトライポイント管理部360へ出力され,リトライポイント管理部360は,入力バッファ310にリトライポイントはGOP2の先頭ピクチャであることをリトライポイント情報として通知する(S310)。この場合,次にGOP2のどのピクチャにおいて,量子化統計量が所定の閾値を超えても,GOP2の先頭ピクチャから再符号化が行われる。
 [ケース2の処理例]
 次に,GOP2の先頭ピクチャの符号化において量子化統計量が所定の閾値を超えたが,その後に再符号化で量子化統計量が閾値を超えるのを回避できた場合のケース2について説明する。ケース1と同様に,GOP1の符号化が完了した時点でのリトライポイント変更有無情報が,CPB残符号量が少ないためにリトライポイントを変更しないことを示す場合,リトライポイント管理部360は,入力バッファ310にリトライポイントはGOP1の先頭のIピクチャであることを通知する。
 処理が,GOP2の先頭のIピクチャの符号化処理に進み,当該ピクチャで量子化統計量計算部340により量子化統計量が所定の閾値を超えたことが検出された場合(S303),量子化統計量計算部340からのリトライ情報に基づき,入力バッファ310は,GOP1の先頭ピクチャから順次,符号化部320にピクチャを入力させ,符号化部320で再符号化が行われる。このときの符号化パラメータは,パラメータ調整部370から設定された再符号化用符号化パラメータが用いられる(S313)。この再符号化では,プレフィルタ部321により,再符号化用符号化パラメータに対応したプレフィルタ強度(デフォルト符号化パラメータよりぼかし度合いが大きい)で,符号化対象ピクチャにプレフィルタリング処理が適用される。また,本ピクチャで発生したDCT係数は,再符号化用符号化パラメータに従った量子化パラメータ(デフォルト符号化パラメータより量子化ステップサイズが大きい)で,量子化部322により量子化される。
 このGOP1の再符号化により,GOP1の最終ピクチャまでの符号化が完了した場合,そのときのCPB残符号量によって,リトライポイントがGOP1の先頭ピクチャまたはGOP2の先頭ピクチャに設定され,続いてGOP2の先頭ピクチャの符号化処理が進められる。
 [ケース3の処理例]
 前のケース2では,GOP2の先頭ピクチャの符号化において量子化統計量が所定の閾値を超えたため,再符号化が必要になった例を説明した。一方,GOP2の先頭ピクチャ以外のピクチャで量子化統計量が所定の閾値を超えた場合には,同様に再符号化用符号化パラメータを用いて,GOP2の先頭ピクチャから再符号化が行われることになる。
 GOP2の中間のピクチャで再符号化が行われた際の符号化パラメータの変更の概念図は,図7に示した通りである。図7の例では,GOP2の6ピクチャ目の符号化で,量子化統計量が所定の閾値を超えたので,発生符号量を抑制する再符号化用符号化パラメータを設定して,GOP2の先頭のIピクチャから再符号化している。再符号化により量子化統計量が所定の閾値を超えなくなったので,次のGOP3の符号化では,再符号化用符号化パラメータをデフォルト符号化パラメータに戻し,符号化処理を続ける。
 再符号化が行われた際のCPB残符号量の遷移の概念図は,図8に示した通りである。太線で示した部分が再符号化後のCPB残符号量である。再符号化では,プレフィルタでぼかし度合いを強め,量子化パラメータもデフォルト符号化パラメータよりも大きくするため,発生符号量が抑えられ,CPB残符号量の遷移が,例えば図8に示すようになる。この結果,再符号化が生じたピクチャにおいてのCPB残符号量が,再符号化時には増加し,当該ピクチャで大きな画質劣化が生じることを回避できる。
 さらに,再符号化が行われた際の量子化統計量の遷移の概念図は,図9に示した通りである。図9に示すように,再符号化時に符号化パラメータを変更するため,再符号化を開始したピクチャの量子化統計量が大きくなるものの,その影響で図8に示すようにCPB残符号量に余裕が出るため,再符号化が生じたピクチャにおいては,量子化統計量が再符号化前より小さくなる。
 [ケース4の処理例]
 最後に,GOP2の中間のピクチャの符号化において量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合のケース4について説明する。
 再符号化が行われ,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合の量子化統計量の遷移の概念図は,図10に示した通りである。ケース4は,例えば図10に示すように,再符号化を開始するGOPの先頭において,すでに量子化統計量が大きい場合に生じ得る。この場合,量子化統計量計算部340によって量子化統計量が所定の閾値を超えたことが検知され,GOP2の再符号化を行う動作はケース3と同様である。このGOP2の再符号化中に量子化統計量が所定の閾値を超えた場合(S303,S311),さらに再符号化を行わず,そのまま符号化処理を継続する(S304へ移行)。
 なお,再符号化時に通常の符号化時よりも量子化パラメータが大きくなることにより,再符号化時に,再符号化のきっかけとなったピクチャよりも符号化順で過去のピクチャで量子化統計量が閾値を超えることも起こりえる。これが生じる可能性を低減するため,再符号化時の量子化パラメータが量子化統計量の閾値よりも大きくなる場合,再符号化時の量子化パラメータを量子化統計量の閾値と等しい値に修正してもよい。ただし,再符号化時の量子化パラメータが通常の符号化時よりも小さくならないように,通常の符号化時の量子化パラメータが量子化統計量以上の場合には,再符号化時の量子化パラメータの値を通常の符号化時の値と等しくする。
[第5実施形態]
 以下,本発明の第5実施形態を,図面を用いて詳細に説明する。図19は,本実施形態に係る動画像符号化制御方法を示す処理フローチャートである。
 符号化順でM枚目のピクチャとN枚目(N>M)のピクチャに関して,N-Mをピクチャ間距離という。最初に,外部から与えられた利用可能なメモリ量の情報に基づき,再符号化時にメモリ制限内で最大で遡ることができるピクチャ間距離である最大ピクチャ間距離を求め,記憶する(S400)。
 次に,入力映像信号における符号化が終了したピクチャの次のピクチャ(符号化開始時には入力映像信号の先頭ピクチャ)を符号化対象として設定する(ステップS401)。符号化対象として設定した入力ピクチャを,H.264その他の所定の符号化方式により符号化する(ステップS402)。入力ピクチャを符号化した際の当該ピクチャの量子化統計量が所定の閾値を超えているかどうかを判定し(ステップS403),量子化統計量が所定の閾値を超えている場合には,処理がステップS407へ進む。
 量子化統計量が所定の閾値を超えていなければ,最終ピクチャの符号化が完了したかどうかを判定し(ステップS404),最終ピクチャまで符号化が完了したならば符号化処理を終了する。
 そうでなければ,符号化順ピクチャ群の符号化が完了したかどうかを判定する(ステップS405)。符号化順ピクチャ群の符号化が完了していなければ,処理がステップS401へ戻り,次のピクチャについて同様に符号化処理を続ける。符号化順ピクチャ群の符号化が完了した場合,符号化パラメータが符号化順ピクチャ群の再符号化(リトライ)で変更されていれば,符号化パラメータを通常の符号化時の値に戻し(ステップS406),処理がステップS401へ戻って,次の符号化順ピクチャ群の先頭のピクチャから符号化処理を行う。
 ステップS403において量子化統計量が所定の閾値を超えていることが検出された場合,現在の符号化順ピクチャ群は再符号化が行われたかどうか(リトライ済みかどうか)を判定する(ステップS407)。リトライ済みの場合,さらに再符号化を行わず,処理がステップS404へ進んでそのまま符号化処理を継続する。
 リトライ済みでない場合,現在の符号化順ピクチャ群内のピクチャの再符号化のため,リトライポイントを設定する。すなわち,ステップS400で算出した最大ピクチャ間距離の範囲内の符号化中の符号化順ピクチャ群に含まれる最も離れたピクチャを,符号化対象として設定する(ステップS408)。そして,2つの符号化パラメータ(量子化パラメータ,プレフィルタ強度)のうち1つ以上を変更し(量子化パラメータはステップサイズをより大きく変更し,フィルタ強度の場合はぼかし度合いをより大きく変更)(ステップS409),処理がステップS402へ戻って,リトライポイントとして設定した符号化順ピクチャ群のピクチャから再符号化する。
 以上の再符号化処理によれば,入力映像の全フレームを2回符号化する従来技術bと異なり,符号化したピクチャの量子化統計量が大き過ぎる場合に限り,符号化順ピクチャ群(例えばGOP)内の複数ピクチャを2回符号化する。2回目の符号化時には,CPB残符号量がより増加する符号化パラメータを用いて,現在符号化中の符号化順ピクチャ群内の複数ピクチャのみを再符号化する。これにより,映像が単純なシーンから複雑なシーンに移るときの画質の劣化を軽減しつつ,入力映像の全てのピクチャを2回符号化する従来技術bと比較して演算量を削減できる。また,入力バッファおよび出力バッファとして必要となるメモリも,所定数のピクチャに相当する分だけでよく,メモリの削減を図ることができる。
 図20は,本実施形態の変形例に係る動画像符号化制御方法を示す処理フローチャートである。本実施形態は,図19に示すステップS406の処理を,図20に示すステップS461~S463の処理に置き換えて実施することもできる。ステップS406以外の処理は,図19と同様である。
 図19のステップS405の処理の後,符号化パラメータがリトライで変更されているかどうかを判定する(ステップS461)。符号化パラメータがリトライで変更されていなければ,処理が図19のステップS401へ戻る。符号化パラメータがリトライで変更されていれば,次にCPB残符号量が所定の閾値以上かどうかを判定する(ステップS462)。CPB残符号量が所定の閾値未満であれば,符号化パラメータを再符号化で用いた状態のままとし,CPB残符号量が所定の閾値以上の場合にだけ符号化パラメータを元のデフォルト符号化パラメータに戻す(ステップS463)。その後に,処理が図19のステップS401へ戻り,次の符号化順ピクチャ群の符号化に移る。
 図20に示す変形例では,符号化順ピクチャ群の符号化が完了した時点でCPB残符号量が所定量を超えている場合にだけ,符号化パラメータを通常の符号化時の値に戻す。これは次の理由による。符号化順ピクチャ群の符号化が完了したとしても,CPB残符号量が少ない場合,符号化パラメータを通常の符号化時の値に戻すと発生符号量がより多くなるため,次の符号化順ピクチャ群の符号化で,再度,符号化したピクチャの量子化統計量が所定の閾値を超える可能性が高まる。図20の処理では,CPB残符号量が少ない場合には,符号化パラメータを変更しないため,図19の処理に比べて,次の符号化順ピクチャ群の符号化における再符号化の発生が抑制され,演算量がさらに削減されることになる。
 以上のように本実施形態では,再符号化時に符号化パラメータを変更する。ここでは,符号化時に入力映像に対してプレフィルタを適用するものとし,変更する符号化パラメータとしては,量子化パラメータとプレフィルタ強度とする。この2つの符号化パラメータの双方を変更してもよいし,いずれか一方だけを変更してもよい。
 量子化パラメータについては,通常の符号化時の量子化パラメータ値に対して,所定のオフセット値を足し,より大きい量子化パラメータで再符号化する。
 プレフィルタについては,本実施形態では,ガウシアンフィルタを利用するものとする。ガウシアンフィルタは,次式で示されるガウス分布をx,yについてサンプリングすることによって作成できる。
 g(x,y)={1/(2πσ)}×exp{-(x+y)/(2σ)}
 上記の式から分かるように,σの値が大きいほど,ぼかし度合いが大きくなる。ぼかし度合いが大きいほど,高周波数成分が減るため,符号化時の発生符号量が減ることになる。ガウシアンフィルタの詳細は,例えば上述した非特許文献2に記載されている。
 σ=0の場合には,ガウシアンフィルタをかけないものとし,例えばデフォルト符号化パラメータはσ=0,再符号化用符号化パラメータはσ>0とする。なお,本実施形態ではローパスフィルタの種類は問わない。また,再符号化時のぼかし度合いの強め方も予め任意に定めてよい。例えば,デフォルト符号化パラメータのσは,ピクチャごとの複雑度に応じて変更し,σはσに所定のオフセットを足したものであるような構成でもよい。
 また,量子化統計量としては,本実施形態では,ピクチャの各マクロブロックの量子化パラメータの平均値を利用するものとする。
 符号化は,H.264の規格に従った符号化を行うものとする。また,本実施形態では,符号化順ピクチャ群はGOPとする。符号化する際のGOPの概念図は図5に示した通りである。1つのGOPは10ピクチャで構成され,表示順で,Iピクチャを先頭にBピクチャとPピクチャとが交互に並ぶものとする。
 本実施形態の装置構成例を,図21に示す。最大ピクチャ間距離決定部500は,外部から使用可能メモリ量を通知され(使用可能メモリ量情報),これに基づき再符号化時に最大で遡れる最大ピクチャ間距離を求める。本実施形態では,再符号化に備えるために,入力バッファ410に符号化中のGOPの入力映像信号を蓄積し,出力バッファ430に符号化中のGOPの符号化ストリームを蓄積しておく。最大ピクチャ間距離決定部500は,GOP長を最大ピクチャ間距離とした場合から始め,最大ピクチャ間距離の値を減らしながら,入力バッファ410および出力バッファ430の最悪のケースでの必要メモリ量および他の利用メモリ量の総和が,使用可能メモリ量以下になるピクチャ間距離を求め,最大ピクチャ間距離を決定する。
 ここで,最大ピクチャ間距離を求める際の必要メモリ量の計算例を示す。まず,入力バッファ410の必要メモリ量は,次のようになる。
 入力バッファの必要メモリ量=(最大ピクチャ間距離+1)×(1ピクチャのデータ量)
 一方で,出力バッファ430の必要メモリ量は,CPBの大きさ,およびビットレートの制限下で,CPBアンダーフローを生じさせずに発生し得る最大の符号量とする。具体的には,GOPの符号開始直前においてCPB残符号量がCPBの大きさと等しい状態で,CPBにビットレートに従って入力されるデータを全て使い切った場合(GOP符号化後にCPB残符号量が0)が,発生し得る最大の符号量となる。ビット数での計算式としては,出力バッファの必要メモリ量は,次式のようになる。
  出力バッファの必要メモリ量=(ビットレート/1秒あたりのピクチャ数)×(最大ピクチャ間距離+1)+(ビット数でのCPBの大きさ)
 さらに,次のようなデータのデータ量も計算する必要がある場合がある。H.264の場合,再符号化に備えてGOPの符号化中に作成された復号画像を,参照画像として残しておく必要がある(残しておかない場合,再符号化時にリトライポイントから符号化する際の参照画像がない状態となる)。GOP内のピクチャは当該GOP以前のピクチャを参照しないため,参照画像としてDPB(Decoded Picture Buffer)に格納するのは,IおよびPピクチャの前提の場合,次のようにメモリを確保しておけば,あらゆる状況においてメモリが足りることになる。
 GOPの最後のピクチャにおいて再符号化が生じた場合に,再符号化を開始するピクチャ(最大ピクチャ間距離のピクチャ)よりも,符号化順において過去である符号化順ピクチャ群内のIおよびPピクチャの数の分だけメモリを持っていればよい。
 図22に,この必要メモリ量を説明する概念図を示す。例えば,図22に示すようにGOPが10ピクチャ構成で,最大ピクチャ間距離が6であるとする。入力バッファ410に保持すべきピクチャ数は最大で7となる。一方,図22の例の場合,再符号化のためには,先頭のIピクチャと次のPピクチャの復号画像についても,参照画像としてメモリに保持しておく必要がある。最大ピクチャ間距離がGOP長と等しい場合と比較すると,図22のような場合に先頭のIピクチャと2番目のPピクチャの2ピクチャ(図22の参照符号RS22)分のDPBを追加で保持する必要があるが,入力バッファ410に保持すべきピクチャ数は3つ減る。すなわち,最大ピクチャ間距離が小さいほど参照画像のメモリ量が増えるが,入力バッファ410に格納すべきピクチャ数の減少量のほうが多いため,最大ピクチャ間距離を小さくすると必要メモリ量が減ることがわかる。
 また,H.264では,参照画像の動きベクトルを参照する場合があるため,当該動きベクトルのためのメモリが必要な場合がある。その他,エンコーダの構成等に依存して必要なメモリを計算する。これらの総和が使用可能メモリ量以下にあるピクチャ間距離を求めて最大ピクチャ間距離を決定することになる。
 なお,本発明の実施にあたって,最大ピクチャ間距離決定部500に,外部から使用可能メモリ量を通知して最大ピクチャ間距離を計算するのではなく,外部で最大ピクチャ間距離を計算して,最大ピクチャ間距離決定部500に与えるようにしてもよい。
 最大ピクチャ間距離決定部500は,決定した最大ピクチャ間距離情報をリトライポイント管理部460に通知する。
 入力バッファ410は,入力される映像信号を蓄積するとともに,符号化部420に符号化対象の映像信号を出力する。さらに,入力バッファ410は,後述の量子化統計量計算部440から,量子化統計量が所定の閾値を超えたことにより再符号化を行うことを示す情報(リトライ情報)を受けた場合,リトライポイント管理部460から通知されたリトライポイントのピクチャから映像信号を再度,符号化部420に出力する。また,入力バッファ410は,リトライポイント管理部460からリトライポイント情報を通知されると,蓄積していたリトライポイント以前のピクチャに対応する映像信号のデータを破棄する。
 符号化部420は,入力バッファ410から入力された映像信号を符号化し,符号化ストリームを出力バッファ430に出力する。また,符号化部420は,ピクチャの符号化が完了したときに,入力された映像信号を符号化した際に発生した量子化パラメータ(量子化パラメータ情報)を量子化統計量計算部440に出力するとともに,リトライポイント管理部460にピクチャの符号化が完了したことを示す情報(符号化完了ピクチャ情報)を出力する。さらに,符号化部420は,量子化統計量計算部440からリトライ情報を受けた場合,符号化中のGOPにおけるリトライポイントのピクチャからの映像信号が入力バッファ410から再度入力されるとともに,パラメータ調整部450から再符号化用符号化パラメータが入力されるため,入力された再符号化用符号化パラメータを利用して再符号化を行う。
 出力バッファ430は,GOPの符号化結果である符号化ストリームを蓄積するとともに,リトライポイント管理部460からリトライポイント情報を通知されると,それまでに蓄積していたリトライポイント以前のピクチャに対応する符号化ストリームを出力し,そのデータを出力バッファ430から取り除く。また,量子化統計量計算部440からリトライ情報を受けた場合,符号化中のGOPについて蓄積した符号化ストリームを破棄する。
 量子化統計量計算部440は,符号化部420から入力される量子化パラメータ情報を利用して,ピクチャ単位で変化する量子化統計量を求める。そして,量子化統計量が所定の閾値を超えた場合,量子化統計量計算部440は,リトライ情報を入力バッファ410,符号化部420,パラメータ調整部450,出力バッファ430に出力し,量子化統計量が所定の閾値を超えたことを通知する。
 パラメータ調整部450は,量子化統計量計算部440からリトライ情報を受けた場合,前述のように再符号化用符号化パラメータを符号化部420に入力する。これにより,符号化部420は,再符号化時には,同じGOPについて,発生符号量が小さくなる符号化パラメータを用いて符号化をすることになる。
 リトライポイント管理部460は,符号化完了ピクチャ情報および最大ピクチャ間距離情報に基づき,次のピクチャの符号化で量子化統計量が所定の閾値を超えた場合に,どこがリトライポイントになるかを示すリトライポイント情報を,入力バッファ410,出力バッファ430に通知する。
 本実施形態における符号化処理の流れについて,図19のフローチャートに沿って説明する。以下の説明では,S401,S402,…といったように,文章中に図19のフローチャートとの対応を記載する。
 あるGOPの符号化を行う処理について,以下のように3つのケースに場合分けをして説明する。
・[ケース1]:GOPの符号化において量子化統計量が所定の閾値を超えることがなかった。
・[ケース2]:GOPの符号化において量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた。
・[ケース3]:GOPの符号化において量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった。
 [ケース1の処理例]
 まず,GOPの符号化において量子化統計量が所定の閾値を超えることがなかった場合のケース1について説明する。GOPのピクチャが入力バッファ410に入力されると,入力バッファ410は当該ピクチャを蓄積するとともに,符号化部420に当該ピクチャを符号化対象ピクチャとして入力する(S401)。そして,符号化部420は当該ピクチャを符号化し,出力バッファ430に符号化ストリームを出力するとともに(出力バッファ430は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部440に出力する。また,符号化部420は,リトライポイント管理部460に,符号化完了ピクチャ情報を出力する(S402)。
 ここで,符号化においてはデフォルト符号化パラメータが利用され,デフォルト符号化パラメータに対応したプレフィルタ強度で符号化対象ピクチャに,プレフィルタ部421によるフィルタリング処理が適用される。また,本ピクチャで発生したDCT係数は,デフォルト符号化パラメータに従った量子化パラメータで,量子化部422により量子化される。
 量子化統計量計算部440は,当該ピクチャについて,符号化部420から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この例では量子化統計量が所定の閾値を超えることがないため,量子化統計量計算部440は,リトライ情報の出力はしない(S403)。符号化対象ピクチャが入力映像信号中の最終ピクチャであれば,出力バッファ430は蓄積している符号化ストリームを出力し,符号化処理が完了する(S404)。あるいは,符号化対象ピクチャがGOPの最終ピクチャであれば,出力バッファ430は蓄積していた符号化ストリームを出力するとともに,入力バッファ410は蓄積していたピクチャを破棄し,処理が,次のGOPの最初のピクチャの符号化処理に移る(S405)。ここで,当該GOPでは再符号化が生じなかったため,符号化パラメータに変更を加えずに,次のGOPの最初のピクチャの符号化処理に移る(S406)。
 [ケース2の処理例]
 次に,GOPの符号化において量子化統計量が所定の閾値を超えたが,再符号化で量子化統計量が閾値を超えるのを回避できた場合のケース2について説明する。GOPのピクチャが入力バッファ410に入力されると,入力バッファ410は当該ピクチャを蓄積するとともに,符号化部420に当該ピクチャを符号化対象ピクチャとして入力する(S401)。そして,符号化部420は当該ピクチャを符号化し,出力バッファ430に符号化ストリームを出力するとともに(出力バッファ430は当該符号化ストリームを出力せず,蓄積する),当該ピクチャに関する量子化パラメータ情報を量子化統計量計算部440に出力する(S402)。ここで,符号化においてはデフォルト符号化パラメータが利用される。
 量子化統計量計算部440は,当該ピクチャについて,符号化部420から入力された量子化パラメータ情報をもとに量子化統計量を計算する。この結果,当該ピクチャについて,量子化統計量が所定の閾値を超えることを,量子化統計量計算部440が検知した場合,量子化統計量計算部440は,符号化部420,パラメータ調整部450,入力バッファ410,出力バッファ430にリトライ情報を出力する(S403)。
 符号化中のGOPについてまだリトライが発生していない場合(S407),入力バッファ410は,蓄積していた符号化中のGOPにおけるリトライポイントが示す位置のピクチャを符号化部420に出力するとともに(S408),パラメータ調整部450は,符号化部420に再符号化用符号化パラメータを出力する(S409)。さらに,出力バッファ430は,符号化中のGOPの符号化ストリームを破棄する。そして,符号化部420は,再符号化用符号化パラメータを利用して入力されたリトライポイント以降のピクチャを符号化する。
 ここで,符号化においては再符号化用符号化パラメータが利用され,再符号化用符号化パラメータに対応したプレフィルタ強度(デフォルト符号化パラメータよりぼかし度合いが大きい)で符号化対象ピクチャに,プレフィルタ部421によるプレフィルタリング処理が適用される。また,本ピクチャで発生したDCT係数は,再符号化用符号化パラメータに従った量子化パラメータ(デフォルト符号化パラメータより量子化ステップサイズが大きい)で,量子化部422により量子化される。
 この後,量子化統計量が所定の閾値を超えない限り,当該GOPのピクチャが順次入力バッファ410から符号化部420に入力され,符号化部420により符号化処理が行われる。そして,GOPの最終ピクチャの符号化が完了した場合(S405),出力バッファ430から当該GOPの符号化ストリームが出力されるとともに,符号化部420は符号化パラメータをデフォルト符号化パラメータに設定し(S406),処理が,次のGOPの符号化処理に進む。なお,入力映像の最終ピクチャの符号化が完了した場合の動作は前述のケース1の場合と同様に動作する。
 再符号化が行われた際の符号化パラメータの変更の概念図は,図7に示した通りである。図7の例では,2番目のGOP2の6ピクチャ目の符号化で量子化統計量が所定の閾値を超えたので,発生符号量を抑制する再符号化用符号化パラメータを設定して,最大ピクチャ間距離の範囲内のGOP2の先頭のIピクチャから再符号化している。再符号化により量子化統計量が所定の閾値を超えることがなくなったので,次のGOP3の符号化では,再符号化用符号化パラメータをデフォルト符号化パラメータに戻し,符号化処理を続けている。
 再符号化が行われた際のCPB残符号量の遷移の概念図は,図8に示した通りである。太線で示した部分が再符号化後のCPB残符号量である。再符号化では,プレフィルタでぼかし度合いを強め,量子化パラメータもデフォルト符号化パラメータよりも大きくするため,発生符号量が抑えられ,CPB残符号量の遷移が,例えば図8に示すようになる。この結果,再符号化が生じたピクチャにおいてのCPB残符号量が,再符号化時には増加し,当該ピクチャで大きな画質劣化が生じることを回避できる。
 再符号化が行われた際の量子化統計量の遷移の概念図は,図9に示した通りである。図9に示すように,再符号化時に符号化パラメータを変更するため,再符号化を開始したピクチャの量子化統計量が大きくなるものの,その影響で図8に示すようにCPB残符号量に余裕が出るため,再符号化が生じたピクチャにおいては,量子化統計量が再符号化前より小さくなる。
 図23は,リトライポイントを最大ピクチャ間距離で制限することによる入力バッファと出力バッファのメモリ削減を説明する図である。本実施形態によりリトライポイントを設定する場合を「ケースA」として説明する。例えば,本実施形態とは異なり,量子化統計量が所定の閾値を超えたときに再符号化を開始するピクチャを,常に符号化順ピクチャ群(例えばGOP)の先頭ピクチャとすることも考えられる。これを「ケースB」という。ケースAとケースBとを比較すると,例えばケースAでは,現在符号化しているピクチャが,図23に示すようにGOP2の9番目のBピクチャであり,最大ピクチャ間距離が「5」であったとすると,リトライポイントはGOP2の4番目のピクチャ(Pピクチャ)となり,それ以前のGOP2の先頭から3ピクチャは,再符号化に用いない。このため,これらのピクチャに対応した入力バッファ410および出力バッファ430のデータは,保持しておく必要がなくなり,破棄可能である(図23の参照符号RS23)。これに対して,ケースBのような場合には,GOP2の先頭ピクチャの符号化が開始されてからGOP2の最終ピクチャの符号化が完了するまで,入力バッファ410および出力バッファ430に,これらのピクチャに対応するデータを保持しておく必要があるため,必要となるメモリ量が増加する。本実施形態(ケースA)では,最大ピクチャ間距離を算出してリトライポイントを設定するため,ケースBよりもメモリ量を削減することができる。
 [ケース3の処理例]
 最後に,GOPの符号化において量子化統計量が所定の閾値を超え,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合のケース3について説明する。
 再符号化が行われ,再符号化でも量子化統計量が閾値を超えるのを回避できなかった場合の量子化統計量の遷移の概念図は,図10に示した通りである。ケース3は,例えば図10に示すように,再符号化を開始するGOPの先頭において,すでに量子化統計量が大きい場合に生じ得る。この場合,量子化統計量計算部440によって量子化統計量が所定の閾値を超えたことが検知され,GOPの再符号化を行う動作はケース2と同様である。このGOPの再符号化中に量子化統計量が所定の閾値を超えた場合(S403,S407),さらに再符号化を行わず,そのまま符号化処理を継続する(処理が,S404へ移行)。
 なお,再符号化時に通常の符号化時よりも量子化パラメータが大きくなることにより,再符号化時に,再符号化のきっかけとなったピクチャよりも符号化順で過去のピクチャで量子化統計量が閾値を超えることも起こりえる。これが生じる可能性を低減するため,再符号化時の量子化パラメータが量子化統計量の閾値よりも大きくなる場合,再符号化時の量子化パラメータを量子化統計量の閾値と等しい値に修正してもよい。ただし,再符号化時の量子化パラメータが通常の符号化時よりも小さくならないように,通常の符号化時の量子化パラメータが量子化統計量以上の場合には,再符号化時の量子化パラメータの値を通常の符号化時の値と等しくする。
 以上説明した動画像符号化制御の処理は,コンピュータとソフトウェアプログラムとによっても実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも,ネットワークを通して提供することも可能である。
 以上,本発明の実施形態について図面を参照して詳述したが,具体的な構成はこれら実施形態に限られるものではなく,本発明の要旨を逸脱しない範囲の設計等(構成の付加,省略,置換,およびその他の変更)も含まれる。本発明は前述した説明によって限定されることはなく,添付の請求の範囲によってのみ限定される。
 本発明は,例えば,映像信号を符号化するための動画像符号化技術に利用可能である。本発明によれば,仮想デコーダにおける符号化ピクチャバッファ等の仮想バッファの破綻が生じないように,かつ画質の劣化が大きくならないように映像信号を符号化できる。
 10 入力バッファ
 20 符号化部
 21 プレフィルタ部
 22 量子化部
 30 出力バッファ
 40 量子化統計量計算部
 50 パラメータ調整部
 110 入力バッファ
 120 符号化部
 121 プレフィルタ部
 122 量子化部
 130 出力バッファ
 140 量子化統計量計算部
 150 リトライカウント管理部
 160 パラメータ調整部
 210 入力バッファ
 220 符号化部
 221 プレフィルタ部
 222 量子化部
 230 出力バッファ
 240 量子化統計量計算部
 250 リトライカウント管理部
 260 CPB状態予測部
 270 パラメータ調整部
 310 入力バッファ
 320 符号化部
 321 プレフィルタ部
 322 量子化部
 330 出力バッファ
 340 量子化統計量計算部
 350 CPB状態予測部
 360 リトライポイント管理部
 370 パラメータ調整部
 410 入力バッファ
 420 符号化部
 421 プレフィルタ部
 422 量子化部
 430 出力バッファ
 440 量子化統計量計算部
 450 パラメータ調整部
 460 リトライポイント管理部
 500 最大ピクチャ間距離決定部

Claims (16)

  1.  デコーダにおける仮想バッファが破綻しないように発生符号量を制御して入力映像信号を符号化する動画像符号化制御方法であって,
     所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである符号化順ピクチャ群の各ピクチャについて,所定の符号化パラメータに従って順次符号化するステップと,
     前記ピクチャの符号化ごとに,当該ピクチャの符号化において利用した量子化パラメータ情報をもとに当該ピクチャの量子化統計量を算出し,前記量子化統計量が所定の閾値を超えたか否かを検査するステップと,
     前記量子化統計量が前記所定の閾値を超えた場合に,前記符号化パラメータを符号化による発生符号量が減少するように変更し,符号化中の符号化順ピクチャ群の先頭のピクチャから変更後の符号化パラメータを用いて再符号化するステップと
     を有する動画像符号化制御方法。
  2.  請求項1記載の動画像符号化制御方法において,
     前記順次符号化するステップでは,前記符号化順ピクチャ群の各ピクチャを,再符号化回数を示すリトライカウントに応じて設定された符号化パラメータに従って順次符号化し,
     前記再符号化するステップでは,前記量子化統計量が前記所定の閾値を超えた場合に,前記リトライカウントを増加させ,前記符号化パラメータを前記リトライカウントの値が大きいほど符号化による発生符号量が減少する符号化パラメータに変更する
     動画像符号化制御方法。
  3.  請求項2記載の動画像符号化制御方法において,
     前記符号化順ピクチャ群における最終ピクチャの符号化が完了するまで,符号化した各ピクチャの量子化統計量が前記所定の閾値を超えなかった場合に,前記仮想バッファの残符号量を調べ,前記残符号量が所定の残符号量閾値未満または前記リトライカウントが0であれば,前記リトライカウントの値を変更せず,前記残符号量が前記残符号量閾値以上かつ前記リトライカウントが0でなければ,前記リトライカウントを減少させるステップを有する
     動画像符号化制御方法。
  4.  請求項2記載の動画像符号化制御方法において,
     前記符号化順ピクチャ群における最終ピクチャの符号化が完了するまで,符号化した各ピクチャの量子化統計量が前記所定の閾値を超えなかった場合に,前記リトライカウントを減少させるステップを有する
     動画像符号化制御方法。
  5.  請求項2から請求項4までのいずれか1項に記載の動画像符号化制御方法において,
     前記符号化パラメータは,量子化パラメータもしくは前記入力映像信号に対するプレフィルタのフィルタ強度,またはその双方であり,前記符号化パラメータが前記量子化パラメータの場合には,前記リトライカウントの値が大きいほど,前記量子化パラメータのステップサイズが大きい符号化パラメータが設定され,前記符号化パラメータが前記プレフィルタの前記フィルタ強度の場合には,前記リトライカウントの値が大きいほど,フィルタリング処理によるぼかし度合いが大きい符号化パラメータが設定される
     動画像符号化制御方法。
  6.  デコーダにおける仮想バッファが破綻しないように発生符号量を制御して入力映像信号を符号化する動画像符号化制御方法であって,
     画面内予測符号化ピクチャを先頭とする所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである符号化順ピクチャ群の各ピクチャについて,所定の符号化パラメータに従って順次符号化するステップと,
     前記ピクチャの符号化ごとに,当該ピクチャの符号化において利用した量子化パラメータ情報をもとに当該ピクチャの量子化統計量を算出し,前記量子化統計量が所定の閾値を超えたか否かを検査するステップと,
     前記量子化統計量が前記所定の閾値を超えた場合に,前記符号化パラメータを符号化による発生符号量が減少するように変更し,リトライポイントとして設定された符号化順ピクチャ群の先頭のピクチャから変更後の符号化パラメータを用いて再符号化するステップと,
     前記符号化順ピクチャ群の符号化が完了したときに,前記仮想バッファの残符号量を調べ,前記残符号量が所定の残符号量閾値以上であれば,前記リトライポイントを次の符号化順ピクチャ群の先頭ピクチャに設定し,前記仮想バッファの前記残符号量が前記所定の残符号量閾値未満であれば,前記リトライポイントを変更せず,前記次の符号化順ピクチャ群の前記先頭ピクチャの符号化において前記量子化統計量が前記所定の閾値を超えなかったときに,前記リトライポイントを当該符号化順ピクチャ群の先頭ピクチャに設定するステップとを有する
     動画像符号化制御方法。
  7.  デコーダにおける仮想バッファが破綻しないように発生符号量を制御して入力映像信号を符号化する動画像符号化制御方法であって,
     所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである符号化順ピクチャ群の各ピクチャについて,所定の符号化パラメータに従って順次符号化するステップと,
     前記ピクチャの符号化ごとに,当該ピクチャの符号化において利用した量子化パラメータ情報をもとに当該ピクチャの量子化統計量を算出し,前記量子化統計量が所定の閾値を超えたか否かを検査するステップと,
     前記量子化統計量が前記所定の閾値を超えた場合に,前記符号化パラメータを符号化による発生符号量が減少するように変更し,符号化中の符号化順ピクチャ群においてリトライポイントとして設定されたピクチャから変更後の符号化パラメータを用いて再符号化するステップと,
     再符号化時に,再符号化対象のピクチャとして遡ることができる最大のピクチャ数である最大ピクチャ間距離をもとに,前記再符号化を開始するピクチャの位置を示すリトライポイントを設定するステップとを有する
     動画像符号化制御方法。
  8.  請求項1,請求項6または請求項7記載の動画像符号化制御方法において,
     前記符号化順ピクチャ群の再符号化において当該符号化順ピクチャ群の最終のピクチャの符号化が完了するまで,符号化した各ピクチャの量子化統計量が前記所定の閾値を超えなかった場合に,次の符号化順ピクチャ群の符号化に用いる符号化パラメータを,通常の符号化時の符号化パラメータ値に戻す
     動画像符号化制御方法。
  9.  請求項1,請求項6または請求項7記載の動画像符号化制御方法において,
     前記符号化順ピクチャ群の再符号化において,当該符号化順ピクチャ群の最終のピクチャの符号化が完了するまで,前記量子化統計量が前記所定の閾値を超えなかった場合に,前記仮想バッファの残符号量を調べ,前記残符号量が所定の残符号量閾値未満であれば,次の符号化順ピクチャ群の符号化に用いる符号化パラメータを変更せず,前記残符号量が前記所定の残符号量閾値以上であれば,前記符号化パラメータを通常の符号化時の符号化パラメータ値に戻す
     動画像符号化制御方法。
  10.  請求項1,および,請求項6から請求項9までのいずれか1項に記載の動画像符号化制御方法において,
     前記符号化パラメータは,量子化パラメータもしくは前記入力映像信号に対するプレフィルタのフィルタ強度,またはその双方であり,前記符号化順ピクチャ群の再符号化時において,前記符号化パラメータが前記量子化パラメータの場合には,再符号化時に前記量子化パラメータのステップサイズを大きくし,前記符号化パラメータが前記プレフィルタの前記フィルタ強度の場合には,フィルタリング処理によるぼかし度合いを大きくする符号化パラメータの変更を行う
     動画像符号化制御方法。
  11.  デコーダにおける仮想バッファが破綻しないように発生符号量を制御して入力映像信号を符号化する動画像符号化装置であって,
     所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである符号化順ピクチャ群の各ピクチャについて,所定の符号化パラメータに従って順次符号化する符号化部と,
     前記ピクチャの符号化ごとに,当該ピクチャの符号化において利用した量子化パラメータ情報をもとに当該ピクチャの量子化統計量を算出し,前記量子化統計量が所定の閾値を超えたか否かを検査し,前記量子化統計量が前記所定の閾値を超えたことを検出した場合にリトライ情報を出力する量子化統計量計算部と,
     前記リトライ情報が出力された場合に,前記符号化パラメータを符号化による発生符号量が減少するように変更し,変更された符号化パラメータを前記符号化部へ通知するパラメータ調整部とを備え,
     前記符号化部は,前記リトライ情報が出力された場合に,符号化中の符号化順ピクチャ群の先頭のピクチャから,前記パラメータ調整部が変更した符号化パラメータを用いて前記入力映像信号を再符号化する
     動画像符号化装置。
  12.  請求項11記載の動画像符号化装置において,
     前記符号化部は,前記符号化順ピクチャ群の各ピクチャを,再符号化回数を示すリトライカウントに応じて設定された符号化パラメータに従って順次符号化し,
     前記動画像符号化装置は,前記リトライ情報が出力された場合に,前記リトライカウントを増加させ,前記符号化順ピクチャ群における最終ピクチャの符号化が完了するまで,前記リトライ情報が出力されなかった場合に,前記リトライカウントを減少させるリトライカウント管理部を備え,
     前記パラメータ調整部は,前記リトライカウントに応じて定められた,前記リトライカウントの値が大きいほど符号化による発生符号量が減少する符号化パラメータを設定し,設定された符号化パラメータを前記符号化部へ通知する
     動画像符号化装置。
  13.  請求項12記載の動画像符号化装置において,
     前記符号化順ピクチャ群における最終ピクチャまで,前記量子化統計量が前記所定の閾値を超えないで符号化が完了した場合に,前記仮想バッファの残符号量が所定の残符号量閾値以上か否かによりパラメータ変更要またはパラメータ変更不要を示すパラメータ変更有無情報を出力するバッファ状態予測部を備え,
     前記リトライカウント管理部は,前記バッファ状態予測部から前記パラメータ変更有無情報を入力した場合に,前記パラメータ変更有無情報がパラメータ変更不要を示すかまたは前記リトライカウントが0であれば,前記リトライカウントの値を変更せず,前記パラメータ変更有無情報がパラメータ変更要を示しかつ前記リトライカウントが0でなければ,前記リトライカウントを減少させる
     動画像符号化装置。
  14.  デコーダにおける仮想バッファが破綻しないように発生符号量を制御して入力映像信号を符号化する動画像符号化装置であって,
     所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである符号化順ピクチャ群の各ピクチャについて,所定の符号化パラメータに従って順次符号化する符号化部と,
     前記ピクチャの符号化ごとに,当該ピクチャの符号化において利用した量子化パラメータ情報をもとに当該ピクチャの量子化統計量を算出し,前記量子化統計量が所定の閾値を超えたか否かを検査し,前記量子化統計量が前記所定の閾値を超えたことを検出した場合にリトライ情報を出力する量子化統計量計算部と,
     前記リトライ情報が出力された場合に,前記符号化パラメータを符号化による発生符号量が減少するように変更し,変更された符号化パラメータを前記符号化部へ通知するパラメータ調整部と,
     前記符号化順ピクチャ群の符号化が完了したときに,前記仮想バッファの残符号量を調べ,前記残符号量が所定の残符号量閾値以上であるか否かを判定するバッファ状態予測部と,
     前記バッファ状態予測部の判定結果に従って,前記仮想バッファの前記残符号量が前記所定の残符号量閾値以上であれば,リトライポイントを次の符号化順ピクチャ群の先頭ピクチャに設定し,前記仮想バッファの前記残符号量が前記所定の残符号量閾値未満であれば,前記リトライポイントを変更せず,次の符号化順ピクチャ群の先頭ピクチャの符号化において前記量子化統計量が前記所定の閾値を超えなかったときに,前記リトライポイントを当該符号化順ピクチャ群の先頭ピクチャに設定するリトライポイント管理部とを備え,
     前記符号化部は,前記リトライ情報が出力された場合に,前記リトライポイントとして設定された符号化順ピクチャ群の先頭のピクチャから,前記パラメータ調整部が変更した符号化パラメータを用いて前記入力映像信号を再符号化する
     動画像符号化装置。
  15.  デコーダにおける仮想バッファが破綻しないように発生符号量を制御して入力映像信号を符号化する動画像符号化装置であって,
     所定数のピクチャで構成され,符号化順で連続するピクチャの集まりである符号化順ピクチャ群の各ピクチャについて,所定の符号化パラメータに従って順次符号化する符号化部と,
     前記ピクチャの符号化ごとに,当該ピクチャの符号化において利用した量子化パラメータ情報をもとに当該ピクチャの量子化統計量を算出し,前記量子化統計量が所定の閾値を超えたか否かを検査し,前記量子化統計量が前記所定の閾値を超えたことを検出した場合にリトライ情報を出力する量子化統計量計算部と,
     前記リトライ情報が出力された場合に,前記符号化パラメータを符号化による発生符号量が減少するように変更し,変更された符号化パラメータを前記符号化部へ通知するパラメータ調整部と,
     再符号化時に,再符号化対象のピクチャとして遡ることができる最大のピクチャ数である最大ピクチャ間距離をもとに,前記再符号化を開始するピクチャの位置を示すリトライポイントを設定するリトライポイント管理部とを備え,
     前記符号化部は,前記リトライ情報が出力された場合に,符号化中の符号化順ピクチャ群において前記リトライポイントとして設定されたピクチャから,前記パラメータ調整部が変更した符号化パラメータを用いて前記入力映像信号を再符号化する
     動画像符号化装置。
  16.  請求項1から請求項10までのいずれか1項に記載の動画像符号化制御方法を,コンピュータに実行させるための動画像符号化プログラム。
PCT/JP2011/060522 2010-05-12 2011-05-02 動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム WO2011142291A1 (ja)

Priority Applications (9)

Application Number Priority Date Filing Date Title
US13/695,865 US9179149B2 (en) 2010-05-12 2011-05-02 Video encoding control method, video encoding apparatus, and video encoding program
CA2798354A CA2798354C (en) 2010-05-12 2011-05-02 A video encoding bit rate control technique using a quantization statistic threshold to determine whether re-encoding of an encoding-order picture group is required
EP11780548.1A EP2571268B1 (en) 2010-05-12 2011-05-02 Video coding control method, video coding device and video coding program
RU2012147239/08A RU2527740C2 (ru) 2010-05-12 2011-05-02 Способ управления кодированием видео, устройство кодирования видео и программа кодирования видео
JP2012514773A JP5286581B2 (ja) 2010-05-12 2011-05-02 動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム
BR112012028576A BR112012028576A2 (pt) 2010-05-12 2011-05-02 método de controle de codificação de vídeo, aparelho de codificação de vídeo, e programa de codificação de vídeo
KR1020127029220A KR101391661B1 (ko) 2010-05-12 2011-05-02 동화상 부호화 제어 방법, 동화상 부호화 장치 및 동화상 부호화 프로그램
ES11780548T ES2773329T3 (es) 2010-05-12 2011-05-02 Método de control de codificación de vídeo, dispositivo de codificación de vídeo y programa de codificación de vídeo
CN201180022987.1A CN102870415B (zh) 2010-05-12 2011-05-02 活动图像编码控制方法、活动图像编码装置以及活动图像编码程序

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
JP2010-109874 2010-05-12
JP2010109878 2010-05-12
JP2010109874 2010-05-12
JP2010109875 2010-05-12
JP2010-109877 2010-05-12
JP2010-109875 2010-05-12
JP2010109876 2010-05-12
JP2010-109876 2010-05-12
JP2010109877 2010-05-12
JP2010-109878 2010-05-12

Publications (1)

Publication Number Publication Date
WO2011142291A1 true WO2011142291A1 (ja) 2011-11-17

Family

ID=44914347

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/060522 WO2011142291A1 (ja) 2010-05-12 2011-05-02 動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム

Country Status (11)

Country Link
US (1) US9179149B2 (ja)
EP (1) EP2571268B1 (ja)
JP (1) JP5286581B2 (ja)
KR (1) KR101391661B1 (ja)
CN (1) CN102870415B (ja)
BR (1) BR112012028576A2 (ja)
CA (1) CA2798354C (ja)
ES (1) ES2773329T3 (ja)
RU (1) RU2527740C2 (ja)
TW (1) TWI507016B (ja)
WO (1) WO2011142291A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103517080A (zh) * 2012-06-21 2014-01-15 北京数码视讯科技股份有限公司 实时视频流编码器和实时视频流编码方法
CN107426567A (zh) * 2017-05-19 2017-12-01 西安电子科技大学 基于编码顺序已知图像集的多参考图像确定方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130083845A1 (en) 2011-09-30 2013-04-04 Research In Motion Limited Methods and devices for data compression using a non-uniform reconstruction space
US9374585B2 (en) 2012-12-19 2016-06-21 Qualcomm Incorporated Low-delay buffering model in video coding
US9591321B2 (en) 2013-04-07 2017-03-07 Dolby International Ab Signaling change in output layer sets
CN109547815B (zh) * 2013-04-07 2021-05-18 杜比国际公司 用于视频解码的方法和电子设备
KR102071580B1 (ko) 2014-11-03 2020-01-30 삼성전자주식회사 이미지 재부호화 방법 및 그 장치
EP3125108A1 (en) * 2015-07-31 2017-02-01 ARM Limited Vector processing using loops of dynamic vector length
JP2017158183A (ja) * 2016-02-29 2017-09-07 大学共同利用機関法人情報・システム研究機構 画像処理装置
KR102282455B1 (ko) * 2017-07-11 2021-07-28 한화테크윈 주식회사 영상 처리 장치 및 영상 처리 방법
JP7077141B2 (ja) * 2018-05-28 2022-05-30 シャープ株式会社 画像記録装置、画像記録方法およびプログラム
KR20220044279A (ko) 2019-08-15 2022-04-07 바이트댄스 아이엔씨 팔레트 이스케이프 심벌에 대한 엔트로피 코딩
CN114424545A (zh) * 2019-09-19 2022-04-29 字节跳动有限公司 用于调色板模式的量化参数推导
CN112822516B (zh) * 2020-12-30 2022-07-26 北京大学 基于数据块重组的图像组传输方法、装置、设备和系统
CN113055673B (zh) * 2021-04-23 2023-06-23 北京汇钧科技有限公司 视频流的处理方法、装置、电子设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10304311A (ja) * 1997-04-23 1998-11-13 Matsushita Electric Ind Co Ltd 映像符号化装置及び映像復号化装置
JP2003018603A (ja) 2001-06-29 2003-01-17 Toshiba Corp 動画像符号化方法及び装置
JP2006295535A (ja) 2005-04-11 2006-10-26 Toshiba Corp 動画像符号化装置および方法
JP2008109259A (ja) * 2006-10-24 2008-05-08 Victor Co Of Japan Ltd 動画像符号化装置及び動画像符号化プログラム
JP2008258858A (ja) * 2007-04-04 2008-10-23 Victor Co Of Japan Ltd 動画像符号化装置
JP2009260595A (ja) * 2008-04-16 2009-11-05 Nippon Telegr & Teleph Corp <Ntt> 量子化マトリクス切り換え方法,映像符号化装置,映像符号化プログラムおよびその記録媒体

Family Cites Families (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5136371A (en) 1990-03-15 1992-08-04 Thomson Consumer Electronics, Inc. Digital image coding using random scanning
US5134476A (en) 1990-03-30 1992-07-28 At&T Bell Laboratories Video signal encoding with bit rate control
US5461420A (en) 1992-09-18 1995-10-24 Sony Corporation Apparatus for coding and decoding a digital video signal derived from a motion picture film source
US5786858A (en) 1993-01-19 1998-07-28 Sony Corporation Method of encoding image signal, apparatus for encoding image signal, method of decoding image signal, apparatus for decoding image signal, and image signal recording medium
US5589884A (en) 1993-10-01 1996-12-31 Toko Kabushiki Kaisha Adaptive quantization controlled by scene change detection
KR950030491A (ko) 1994-04-30 1995-11-24 배순훈 부호화기
JP3911035B2 (ja) 1994-08-31 2007-05-09 ソニー株式会社 動画像符号化方法及び動画像符号化装置
JPH09510070A (ja) 1994-12-28 1997-10-07 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ 可変ビットレート圧縮システムのバッファ管理
US5606369A (en) * 1994-12-28 1997-02-25 U.S. Philips Corporation Buffering for digital video signal encoders using joint bit-rate control
KR100203637B1 (ko) 1995-09-29 1999-06-15 전주범 동영상을 부호화하는 장치
US5982436A (en) 1997-03-28 1999-11-09 Philips Electronics North America Corp. Method for seamless splicing in a video encoder
JPH1118083A (ja) 1997-06-25 1999-01-22 Sony Corp ディジタル信号符号化方法及び装置、信号記録媒体並びに信号伝送方法
US6301428B1 (en) * 1997-12-09 2001-10-09 Lsi Logic Corporation Compressed video editor with transition buffer matcher
US6167088A (en) * 1998-04-03 2000-12-26 Sarnoff Corporation Method and apparatus for performing adaptive encoding rate control of a video information stream including 3:2 pull-down video information
US6859496B1 (en) 1998-05-29 2005-02-22 International Business Machines Corporation Adaptively encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel
US6310915B1 (en) 1998-11-20 2001-10-30 Harmonic Inc. Video transcoder with bitstream look ahead for rate control and statistical multiplexing
US6493402B1 (en) 1999-05-27 2002-12-10 Zenith Electronics Corporation Mode control for trellis decoder
US6529558B1 (en) 1999-05-27 2003-03-04 Zenith Electronics Corporation Coding and decoding a signal modified in accordance with the feedback states of an encoder
KR100634660B1 (ko) 1999-09-13 2006-10-16 마츠시타 덴끼 산교 가부시키가이샤 부호화장치 및 부호화방법
GB2356998A (en) 1999-12-02 2001-06-06 Sony Uk Ltd Video signal processing
US6300973B1 (en) 2000-01-13 2001-10-09 Meir Feder Method and system for multimedia communication control
US6522693B1 (en) 2000-02-23 2003-02-18 International Business Machines Corporation System and method for reencoding segments of buffer constrained video streams
US6674797B1 (en) * 2000-03-30 2004-01-06 Lucent Technologies Inc. Ensuring video buffer verifer integrity in MPEG-like encoding
US6553150B1 (en) * 2000-04-25 2003-04-22 Hewlett-Packard Development Co., Lp Image sequence compression featuring independently coded regions
US6647061B1 (en) * 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
US20050193408A1 (en) 2000-07-24 2005-09-01 Vivcom, Inc. Generating, transporting, processing, storing and presenting segmentation information for audio-visual programs
US20050210145A1 (en) 2000-07-24 2005-09-22 Vivcom, Inc. Delivering and processing multimedia bookmark
JP4428680B2 (ja) 2000-11-06 2010-03-10 パナソニック株式会社 映像信号符号化方法および映像信号符号化装置
EP1231794A1 (en) 2001-02-09 2002-08-14 STMicroelectronics S.r.l. A process for changing the resolution of MPEG bitstreams, a system and a computer program product therefor
EP1231793A1 (en) 2001-02-09 2002-08-14 STMicroelectronics S.r.l. A process for changing the syntax, resolution and bitrate of MPEG bitstreams, a system and a computer program product therefor
US6804301B2 (en) 2001-08-15 2004-10-12 General Instrument Corporation First pass encoding of I and P-frame complexity for compressed digital video
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
US7356079B2 (en) 2001-11-21 2008-04-08 Vixs Systems Inc. Method and system for rate control during video transcoding
WO2004004359A1 (en) 2002-07-01 2004-01-08 E G Technology Inc. Efficient compression and transport of video over a network
US8837605B2 (en) 2006-09-26 2014-09-16 Onmobile Global Limited Method and apparatus for compressed video bitstream conversion with reduced-algorithmic-delay
CN1206864C (zh) * 2002-07-22 2005-06-15 中国科学院计算技术研究所 结合率失真优化的码率控制的方法及其装置
US20040252758A1 (en) * 2002-08-14 2004-12-16 Ioannis Katsavounidis Systems and methods for adaptively filtering discrete cosine transform (DCT) coefficients in a video encoder
MY134659A (en) 2002-11-06 2007-12-31 Nokia Corp Picture buffering for prediction references and display
US7099389B1 (en) 2002-12-10 2006-08-29 Tut Systems, Inc. Rate control with picture-based lookahead window
US8054880B2 (en) * 2004-12-10 2011-11-08 Tut Systems, Inc. Parallel rate control for digital video encoder with multi-processor architecture and picture-based look-ahead window
WO2004105253A1 (ja) * 2003-05-21 2004-12-02 Sony Corporation データ処理装置、符号化装置および符号化方法、復号装置および復号方法、並びにプログラム
US7609762B2 (en) 2003-09-07 2009-10-27 Microsoft Corporation Signaling for entry point frames with predicted first field
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7839930B2 (en) 2003-11-13 2010-11-23 Microsoft Corporation Signaling valid entry points in a video stream
US8345754B2 (en) * 2003-09-07 2013-01-01 Microsoft Corporation Signaling buffer fullness
US7346106B1 (en) 2003-12-30 2008-03-18 Apple Inc. Robust multi-pass variable bit rate encoding
US7453938B2 (en) 2004-02-06 2008-11-18 Apple Inc. Target bitrate estimator, picture activity and buffer management in rate control for video coder
US20050201471A1 (en) * 2004-02-13 2005-09-15 Nokia Corporation Picture decoding method
KR20050090841A (ko) * 2004-03-10 2005-09-14 엘지전자 주식회사 비트율 제어 방법
JP4418762B2 (ja) 2004-05-07 2010-02-24 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4988567B2 (ja) 2004-06-27 2012-08-01 アップル インコーポレイテッド マルチパスのビデオ符号化
US8005139B2 (en) 2004-06-27 2011-08-23 Apple Inc. Encoding with visual masking
EP1819170A4 (en) * 2004-12-02 2010-04-14 Sony Corp DEVICE, METHOD, AND ENCODING PROGRAM
US7983341B2 (en) * 2005-02-24 2011-07-19 Ericsson Television Inc. Statistical content block matching scheme for pre-processing in encoding and transcoding
US20060256868A1 (en) 2005-05-16 2006-11-16 Ensequence, Inc. Methods and systems for repositioning mpeg image content without recoding
EP1908303A4 (en) * 2005-07-01 2011-04-06 Sonic Solutions METHOD, DEVICE AND SYSTEM FOR USE IN MULTIMEDIA SIGNAL CODING
US20070025441A1 (en) 2005-07-28 2007-02-01 Nokia Corporation Method, module, device and system for rate control provision for video encoders capable of variable bit rate encoding
JP4492484B2 (ja) 2005-08-22 2010-06-30 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US8218655B2 (en) 2005-09-19 2012-07-10 Maxim Integrated Products, Inc. Method, system and device for improving video quality through in-loop temporal pre-filtering
US8879635B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Methods and device for data alignment with time domain boundary
US8548048B2 (en) * 2005-10-27 2013-10-01 Qualcomm Incorporated Video source rate control for video telephony
US8406309B2 (en) * 2005-10-21 2013-03-26 Qualcomm Incorporated Video rate adaptation to reverse link conditions
US8295343B2 (en) * 2005-11-18 2012-10-23 Apple Inc. Video bit rate control method
US9071844B2 (en) * 2005-12-16 2015-06-30 Texas Instruments Incorporated Motion estimation with motion vector penalty
US7826536B2 (en) 2005-12-29 2010-11-02 Nokia Corporation Tune in time reduction
JP4584871B2 (ja) 2006-06-09 2010-11-24 パナソニック株式会社 画像符号化記録装置および画像符号化記録方法
US7804435B2 (en) * 2006-08-31 2010-09-28 Ati Technologies Ulc Video decoder with reduced power consumption and method thereof
US9582060B2 (en) * 2006-08-31 2017-02-28 Advanced Silicon Technologies Llc Battery-powered device with reduced power consumption based on an application profile data
WO2008042259A2 (en) * 2006-09-28 2008-04-10 Thomson Licensing Method for rho-domain frame level bit allocation for effective rate control and enhanced video coding quality
US8711929B2 (en) 2006-11-01 2014-04-29 Skyfire Labs, Inc. Network-based dynamic encoding
US20080120676A1 (en) * 2006-11-22 2008-05-22 Horizon Semiconductors Ltd. Integrated circuit, an encoder/decoder architecture, and a method for processing a media stream
KR100846512B1 (ko) 2006-12-28 2008-07-17 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
US20090161766A1 (en) 2007-12-21 2009-06-25 Novafora, Inc. System and Method for Processing Video Content Having Redundant Pixel Values
JP4577357B2 (ja) * 2007-12-27 2010-11-10 ソニー株式会社 符号化装置及び方法、並びにプログラム
US8189677B2 (en) * 2008-04-15 2012-05-29 Sony Corporation Estimation of P frame average rate quantization parameter (QP) in a group of pictures (GOP)
WO2010032457A1 (ja) * 2008-09-16 2010-03-25 パナソニック株式会社 撮像装置および動画データ作成方法
CN102318345B (zh) 2009-02-27 2014-07-30 富士通株式会社 动态图像编码装置、动态图像编码方法
TWI387314B (zh) 2009-03-10 2013-02-21 Univ Nat Central Image processing apparatus and method thereof
US8879623B2 (en) * 2009-09-02 2014-11-04 Sony Computer Entertainment Inc. Picture-level rate control for video encoding a scene-change I picture

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10304311A (ja) * 1997-04-23 1998-11-13 Matsushita Electric Ind Co Ltd 映像符号化装置及び映像復号化装置
JP2003018603A (ja) 2001-06-29 2003-01-17 Toshiba Corp 動画像符号化方法及び装置
JP2006295535A (ja) 2005-04-11 2006-10-26 Toshiba Corp 動画像符号化装置および方法
JP2008109259A (ja) * 2006-10-24 2008-05-08 Victor Co Of Japan Ltd 動画像符号化装置及び動画像符号化プログラム
JP2008258858A (ja) * 2007-04-04 2008-10-23 Victor Co Of Japan Ltd 動画像符号化装置
JP2009260595A (ja) * 2008-04-16 2009-11-05 Nippon Telegr & Teleph Corp <Ntt> 量子化マトリクス切り換え方法,映像符号化装置,映像符号化プログラムおよびその記録媒体

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KADONO; KIKUCHI; SUZUKI: "Third Revised Edition H.264/AVC Textbook, "Third Revised Edition", 2009, IMPRESS R & D, pages: 189 - 191
OKUTOMI; OZAWA; SHIMIZU; HORI: "Digital Image Processing", COMPUTER GRAPHIC ARTS SOCIETY, 2006, pages 108 - 110

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103517080A (zh) * 2012-06-21 2014-01-15 北京数码视讯科技股份有限公司 实时视频流编码器和实时视频流编码方法
CN107426567A (zh) * 2017-05-19 2017-12-01 西安电子科技大学 基于编码顺序已知图像集的多参考图像确定方法
CN107426567B (zh) * 2017-05-19 2019-11-15 西安电子科技大学 基于编码顺序已知图像集的多参考图像确定方法

Also Published As

Publication number Publication date
US9179149B2 (en) 2015-11-03
RU2012147239A (ru) 2014-06-20
CA2798354A1 (en) 2011-11-17
ES2773329T3 (es) 2020-07-10
TW201215150A (en) 2012-04-01
EP2571268A1 (en) 2013-03-20
US20130051458A1 (en) 2013-02-28
EP2571268B1 (en) 2019-11-27
EP2571268A4 (en) 2015-12-16
RU2527740C2 (ru) 2014-09-10
KR101391661B1 (ko) 2014-05-07
BR112012028576A2 (pt) 2016-08-02
JPWO2011142291A1 (ja) 2013-07-22
CA2798354C (en) 2016-01-26
CN102870415A (zh) 2013-01-09
TWI507016B (zh) 2015-11-01
JP5286581B2 (ja) 2013-09-11
KR20130006684A (ko) 2013-01-17
CN102870415B (zh) 2015-08-26

Similar Documents

Publication Publication Date Title
JP5286581B2 (ja) 動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム
US9369720B2 (en) Image coding apparatus and image coding method
US8189660B2 (en) Bit rate control method and apparatus
JP5295429B2 (ja) 動画像符号化制御方法,動画像符号化装置および動画像符号化プログラム
JP4532980B2 (ja) 動画像符号化装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP7343817B2 (ja) 符号化装置、符号化方法、及び符号化プログラム
JP4485996B2 (ja) 画像符号化装置及び画像符号化プログラム
KR20180056382A (ko) 비디오를 인코딩하기 위한 방법 및 인코더 시스템
JP4942208B2 (ja) 符号化装置
US8781241B2 (en) Image encoding device encoding an image by performing sequential processing, method for encoding image, and computer-readable storage medium storing image encoding program
JP2009246489A (ja) 映像信号切替装置
JP7450078B1 (ja) 映像符号化装置、および、映像符号化方法
JP2007020216A (ja) 符号化装置、符号化方法、フィルタ処理装置およびフィルタ処理方法
JP6874844B2 (ja) 動画像符号化装置、動画像符号化方法、及び、動画像符号化プログラム
JP3311312B2 (ja) 符号化制御方法、符号化制御装置、および符号化制御プログラムを記録した記録媒体
JP2015019319A (ja) 符号化装置、符号化方法及びプログラム
JP2011066592A (ja) 符号化モード選択方法,符号化モード選択装置および符号化モード選択プログラム
JP2006166103A (ja) 動画像符号化装置、その方法、そのプログラム、その記憶媒体
JP2006166104A (ja) 動画像符号化装置、その方法、そのプログラム、その記憶媒体
JP2007006533A (ja) 符号化装置、符号化方法、フィルタ処理装置およびフィルタ処理方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180022987.1

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11780548

Country of ref document: EP

Kind code of ref document: A1

DPE2 Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2012514773

Country of ref document: JP

ENP Entry into the national phase

Ref document number: 2798354

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 13695865

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 9553/DELNP/2012

Country of ref document: IN

Ref document number: 2011780548

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20127029220

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2012147239

Country of ref document: RU

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112012028576

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112012028576

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20121107