Technical Field
[0001] The present invention relates to a picture encoding apparatus, method and program,
and a picture decoding apparatus, method and program.
Background Art
[0002] In order to efficiently transmit and store picture data (still picture data and moving
picture data), the picture data is conventionally compressed using compression encoding
technology. As the compression encoding technology, systems such as, for example,
MPEG-1 to 4 and H.261 to H.264 are widely used for the moving picture data.
[0003] In such encoding systems, an encoding process is performed after dividing picture
data serving as an encoding target into a plurality of blocks. Then, a prediction
signal for a pixel signal in a target block serving as the encoding target is produced.
As a prediction method for producing a prediction signal, there are an intra-frame
prediction that makes prediction from a decoded signal of an already encoded region
within a frame, and an inter-frame prediction that makes prediction from the decoded
signal of the previously encoded frame.
[0004] In the infra-frame prediction, there is a method in which a prediction signal is
produced by extrapolating an already reproduced pixel value adjacent to the encoding
target block in a predetermined direction (for example, refer to Patent Literature
1 below).
[0005] On the other hand, generally in the inter-frame prediction, a prediction signal is
produced by a method of searching the already reproduced frame for a signal similar
to the pixel signal in the encoding target block. Then, a motion vector that is a
spatial displacement amount between a region configured by the signal identified in
the search as similar to the pixel signal and the target block is encoded.
[0006] In order to correspond to local feature changes of the picture, H.264 uses a method
in which the target block (for example, 16 × 16) is divided into sub-blocks in various
block sizes (for example, 8 × 8, 8 × 16, 16 × 8, 8 × 4, 4 × 8, 4 × 4 and the like,
in addition to 16 × 16) and for each sub-block, a prediction signal is produced. The
size of a prediction block in H.264 is described in Patent Literature 2, for example.
[0007] Next, the pixel signal of the target block is subtracted from the prediction signal
of the target block to produce a residual signal, which is frequency transformed by
a discrete cosine transform or the like. Generally, when there is no rise and fall
in the residual signal of a transform block, as the block size for frequency transform
becomes larger, transform efficiency increases. However, the signal discontinues at
a boundary of the prediction block, and if the frequency transform is applied to a
large residual block for a residual signal straddling the boundary of the prediction
block, a high frequency component increases and thereby encoding efficiency decreases.
Therefore, the frequency transform is performed for the block unit equivalent to that
in producing the prediction signal or for the block unit smaller than that in producing
the prediction signal.
[0008] A frequency-transformed transform coefficient is quantized and then entropy-coded
as a quantized transform coefficient. There is a tendency that many zero values are
included in the quantized transform coefficients of each block and such tendency becomes
stronger, as prediction efficiency increases. As a method for efficiently encoding
a zero-value coefficient, there is zero-tree encoding. In that method, the quantized
transform coefficients of the block are mapped out on leaves in a tree structure (lower
end in the tree structure) and based on a coefficient value at the leaf, a state (0
or 1) of a node (at a branch point in the tree structure) and the leaf in the tree
structure is updated. Then, the state in the tree structure and the value of a non-zero
quantized transform coefficient are encoded. Accordingly, by mapping out the quantized
transform coefficient of the block on the leaf in the tree structure in such a way
that the nodes and leaves below a certain node in the tree structure are zero values,
it is possible to collectively encode the zero-value quantized transform coefficient
with small encoding amount. The zero-encoding is described in Patent Literature 3,
for example.
[0009] As for the non-zero quantized transform coefficient, an absolute value and a plus
and minus sign of each coefficient are arithmetic coded in an order proceeding from
the coefficient of the high frequency component to the coefficient of the low frequency
component (arithmetic encoding is described in Patent Literature 4, for example).
An absolute value of the non-zero quantized transform coefficient is, as shown in
Fig. 3, transformed into bin strings in Unary binarization and each bin value is binary
arithmetic coded using a predetermined estimated probability. The plus and minus of
the coefficient is also binary arithmetic coded using the estimated probability of
the plus and minus sign that the plus is represented by 0 and the minus by 1.
[0010] Fig. 4 shows an example of encoding the non-zero quantized transform coefficient,
when the frequency transform is performed in a 4 × 4 block unit. C[0] to C[15] of
a block 301 represent 16 pieces of the quantized transform coefficients. For binary
arithmetic encoding/decoding the absolute value of each transform coefficient, the
estimated probabilities P[0] to P[15] prepared in advance for the respective transform
coefficients of the frequency component, are used. The non-zero quantized transform
coefficients are aligned, as shown in a sequence of coefficients 302, in the order
of an inverse-zigzag scan proceeding from the high frequency component to the low
frequency component and are binary arithmetic coded/decoded.
[0011] 1n the coefficient sequence 302, first, "0" representing the bin strings of the absolute
value "1" of C[6] in the Unary binarization is arithmetic coded using a probability
P[6]. Subsequently, "0" representing the plus sign is encoded using the estimated
probability of the plus and minus sign.
[0012] Similarly, the absolute values of C[3], C[5], C[8], C[1], and C[0] are transformed,
in accordance with Fig. 4, into the bin strings in the Unary binarization and the
respective transformed bits are binary arithmetic coded/decoded using the estimated
probabilities of P[3], P[5], P[8], P[1], and P[0], respectively. It should be noted
that each estimated probability is updated, based on the probability of actually encoded/decoded
coefficient in encoding procedures. In the updating process, similar processes can
be performed at an encoding and decoding side, whereby no mismatch between an encoding
process and a decoding process occurs.
[Citation List]
[Patent Literature]
[0013]
Patent Literature 1 is United States Patent No. 6765964.
Patent Literature 2 is United States Patent No. 7003035.
Patent Literature 3 is United States Patent Application Publication No. 2005/133680.
Patent Literature 4 is United States Patent No. 6906647.
Summary of Invention
Technical Problem
[0014] In conventional technologies, encoding and decoding the absolute value of the non-zero
quantized transform coefficients is performed using the fixed estimated probability
allocated to each frequency component. However, since the absolute value of the quantized
transform coefficients changes with local features of the picture or with prediction
performance of prediction encoding, generally, there is no strong correlation between
each frequency component in the block and the absolute value of the quantized transform
coefficients. Therefore, in the conventional technologies, there are cases where sufficient
encoding efficiency cannot be achieved, especially in pictures including drastic changes
within the frame.
[0015] The present invention has been made to solve the problems described above and aims
to efficiently entropy-code a residual signal.
Solution to Problem
[0016] In one aspect of the present invention, in order to solve the problems described
above, entropy coding of the residual signal is efficiently executed by selecting,
based on the number, or quantity, of already encoded/decoded quantized transform coefficients
in the block or an absolute value of such quantized transform coefficients, from a
probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for encoding/decoding the absolute value of the next non-zero
quantized transform coefficients.
[0017] That is, a picture encoding apparatus according to one aspect of the present invention
includes: a region division unit for dividing an input picture into a plurality of
regions; a prediction unit for producing a prediction signal for a pixel signal included
in one of the regions; a residual signal production unit for producing a residual
signal between the prediction signal and the pixel signal of the one region; a transform
unit for frequency-transforming the residual signal of the one region to produce transform
coefficients; a quantizing unit for quantizing the transform coefficients of the one
region to produce quantized transform coefficients; a zero/non-zero coefficient information
encoding unit for encoding information representing the respective quantized transform
coefficients of the one region as either a zero coefficient or a non-zero coefficient;
and a non-zero coefficient encoding unit for encoding non-zero quantized transform
coefficients among the quantized transform coefficients of the one region; wherein
the non-zero coefficient encoding unit is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for encoding an absolute value of the next non-zero quantized transform
coefficient of the one region. The estimated probability selected from the probability
model based on the quantity of already encoded non-zero quantized transform coefficients
of the one region. It should be noted that, when the quantity of the already encoded
non-zero quantized transform coefficients is N, the non-zero coefficient encoding
unit may be configured to encode the absolute value of the next non-zero quantized
transform coefficient, using the N-th estimated probability in the probability model
composed of the plurality of estimated probabilities.
[0018] A picture encoding apparatus according to one aspect of the present invention may
employ modes described below, in addition to the picture encoding apparatus described
above. That is, the picture encoding apparatus according to one aspect of the present
invention includes: a region division unit for dividing an input picture into a plurality
of regions; a prediction unit for producing a prediction signal for a pixel signal
included in one of the regions; a residual signal production unit for producing a
residual signal between the prediction signal and the pixel signal of the one region;
a transform unit for frequency-transforming the residual signal of the one region
to produce transform coefficients; a quantizing unit for quantizing the transform
coefficients of the one region to produce quantized transform coefficients; a zero/non-zero
coefficient information encoding unit for encoding information representing the respective
quantized transform coefficients of the one region as either a zero coefficient or
a non-zero coefficient; and a non-zero coefficient encoding unit for encoding non-zero
quantized transform coefficients among the quantized transform coefficients of the
one region; wherein the non-zero coefficient encoding unit is configured to select,
from a probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for encoding the absolute value of the next non-zero quantized
transform coefficient of the one region. The estimated probability selected from the
probability model based on an absolute value of an already encoded non-zero quantized
transform coefficient of the one region. It should be noted that, when a sum of the
absolute value of the already encoded non-zero quantized transform coefficient is
N, the non-zero coefficient encoding unit may be configured to encode the absolute
value of the next non-zero quantized transform coefficient, using the N-th estimated
probability in the probability model composed of the plurality of estimated probabilities.
[0019] In the picture encoding apparatus described above, when the quantity of the estimated
probabilities in the probability model is M and the N described above exceeds M, the
non-zero coefficient encoding unit may be configured to encode the absolute value
of the next non-zero quantized transform coefficient, using the M-th estimated probability.
[0020] Furthermore, the non-zero coefficient encoding unit may be configured to encode the
non-zero quantized transform coefficients in the order of proceeding from the coefficient
of a high frequency component to the coefficient of a low frequency component.
[0021] A picture decoding apparatus according to one aspect of the present invention includes:
a data analysis unit for extracting, from compressed data, encoded data of a residual
signal of a target region serving as a process target; a zero/non-zero coefficient
information decoding unit for decoding the encoded data of the residual signal of
the region to restore information representing each quantized transform coefficient
of the region as either a zero coefficient or a non-zero coefficient; a non-zero coefficient
decoding unit for decoding the encoded data of the residual signal of the target region
to restore a non-zero quantized transform coefficient; a de-quantizing unit for de-quantizing
the decoded quantized transform coefficient of the region to produce a reproduction
frequency transform coefficient; an inverse-transform unit for inverse-transforming
the reproduction frequency transform coefficient of the region to produce a reproduction
residual signal; a prediction unit for producing a prediction signal for a pixel signal
included in the region; and a picture restoration unit for adding the prediction signal
of the region and the reproduction residual signal to restore the pixel signal of
the region; wherein the non-zero coefficient decoding unit is configured to select,
from a probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for decoding an absolute value of the next non-zero quantized
transform coefficient. The estimated probability is selected from the probability
model based on a quantity of already decoded non-zero quantized transform coefficients
of the region. It should be noted that, when the quantity of the already decoded non-zero
quantized transform coefficients is N, the non-zero coefficient decoding unit may
be configured to decode the absolute value of the next non-zero quantized transform
coefficient, using the N-th estimated probability in the probability model composed
of the plurality of estimated probabilities.
[0022] A picture decoding apparatus according to one aspect of the present invention may
employ the modes described below, in addition to the picture decoding apparatus described
above. That is; the picture decoding apparatus according to one aspect of the present
invention includes: a data analysis unit for extracting, from compressed data, encoded
data of a residual signal of a target region serving as a process target; a zero/non-zero
coefficient information decoding unit for decoding the encoded data of the residual
signal of the region to restore information representing each quantized transform
coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding unit for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing unit for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient; an inverse-transform
unit for inverse-transforming the reproduction frequency transform coefficient of
the region to restore a reproduction residual signal; a prediction unit for producing
a prediction signal for a pixel signal included in the region; and a picture restoration
unit for adding the prediction signal of the region and the reproduction residual
signal to restore the pixel signal of the region; wherein the non-zero coefficient
decoding unit is configured to select, from a probability model composed of a plurality
of estimated probabilities, an estimated probability to be used for decoding the absolute
value of the next non-zero quantized transform coefficient. The estimated probability
selected from the probability model based on an absolute value of an already decoded
non-zero quantized transform coefficient of the region. It should be noted that, when
a sum of the absolute value of the already decoded non-zero quantized transform coefficient
is N, the non-zero coefficient decoding unit may be configured to decode the absolute
value of the next non-zero quantized transform coefficient, using the N-th estimated
probability in the probability model composed of the plurality of estimated probabilities.
[0023] In the picture decoding apparatus described above, when the quantity of the estimated
probabilities in the probability model is M and the N described above exceeds M, the
non-zero coefficient decoding unit may be configured to decode the absolute value
of the next non-zero quantized transform coefficient, using the M-th estimated probability.
[0024] Furthermore, the non-zero coefficient decoding unit may be configured to decode the
non-zero quantized transform coefficients in the order of proceeding from the coefficient
of a high frequency component to the coefficient of a low frequency component.
[0025] Meanwhile, the invention relating to the picture encoding apparatus described above
may be regarded as an invention relating to a picture encoding method and may be described
as below.
[0026] A picture encoding method according to one aspect of the present invention is a picture
encoding method that is performed by a picture encoding apparatus and includes: a
region division step for dividing an input picture into a plurality of regions; a
prediction step for producing a prediction signal for a pixel signal included in one
of the regions; a residual signal production step for producing a residual signal
between the prediction signal and the pixel signal in the one region; a transform
step for frequency-transforming the residual signal of the one region to produce a
transform coefficient; a quantizing step for quantizing the transform coefficients
of the one region to produce quantized transform coefficients; a zero/non-zero coefficient
information encoding step for encoding information representing the respective quantized
transform coefficients of the one region as either a zero coefficient or a non-zero
coefficient; and a non-zero coefficient encoding step for encoding non-zero quantized
transform coefficients among the quantized transform coefficients of the one region;
wherein in the non-zero coefficient encoding step, the picture encoding apparatus
selects, from a probability model composed of a plurality of estimated probabilities,
an estimated probability to be used for encoding the absolute value of the next non-zero
quantized transform coefficient of the one region, the estimated probability selected
from the probability model based on a quantity of already encoded non-zero quantized
transform coefficients of the one region. It should be noted that in the non-zero
coefficient encoding step, when the quantity of the already encoded non-zero quantized
transform coefficients is N, the picture encoding apparatus may encode the absolute
value of the next non-zero quantized transform coefficient, using the N-th estimated
probability in the probability model composed of the plurality of estimated probabilities.
[0027] A picture encoding method according to one aspect of the present invention may employ
the modes described below, in addition to the picture encoding method described above.
That is, the picture encoding method according to one aspect of the present invention
is a picture encoding method that is performed by a picture encoding apparatus and
includes: a region division step for dividing an input picture into a plurality of
regions; a prediction step for producing a prediction signal for a pixel signal included
in one of the regions; a residual signal production step for producing a residual
signal between the prediction signal and the pixel signal in the one region; a transform
step for frequency-transforming the residual signal of the one region to produce transform
coefficients; a quantizing step for quantizing the transform coefficients of the region
to produce quantized transform coefficients; a zero/non-zero coefficient information
encoding step for encoding information representing the respective quantized transform
coefficients of the one region as either a zero coefficient or a non-zero coefficient;
and a non-zero coefficient encoding step for encoding non-zero quantized transform
coefficients among the quantized transform coefficients of the one region; wherein
in the non-zero coefficient encoding step, the picture encoding apparatus selects,
from a probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for encoding the absolute value of the next non-zero quantized
transform coefficient of the one region, the estimated probability selected from the
probability model based on an absolute value of an already encoded non-zero quantized
transform coefficient of the one region. It should be noted that in the non-zero coefficient
encoding step, when a sum of the absolute value of the already encoded non-zero quantized
transform coefficient is N, the picture encoding apparatus may encode the absolute
value of the next non-zero quantized transform coefficient using the N-th estimated
probability in the probability model composed of the plurality of estimated probabilities.
[0028] Furthermore, the invention relating to the picture decoding apparatus described above
may be regarded as an invention relating to a picture decoding method and may be described
as below.
[0029] A picture decoding method according to one aspect of the present invention is a picture
decoding method that is performed by a picture decoding apparatus, and includes: a
data analysis step for extracting, from compressed data, encoded data of a residual
signal of a target region serving as a process target; a zero/non-zero coefficient
information decoding step for decoding the encoded data of the residual signal of
the region to restore information representing each quantized transform coefficient
of the region as either a zero coefficient or a non-zero coefficient; a non-zero coefficient
decoding step for decoding the encoded data of the residual signal of the target region
to restore a non-zero quantized transform coefficient; a de-quantizing step for de-quantizing
the decoded quantized transform coefficient of the region to produce a reproduction
frequency transform coefficient; an inverse-transform step for inverse-transforming
the reproduction frequency transform coefficient of the region to restore a reproduction
residual signal; a prediction step for producing a prediction signal for a pixel signal
included in the region; and a picture restoration step for adding the prediction signal
of the region and the reproduction residual signal to restore the pixel signal of
the region; wherein in the non-zero coefficient decoding step, the picture decoding
apparatus selects, from a probability model composed of a plurality of estimated probabilities,
an estimated probability to be used for decoding an absolute value of the next non-zero
quantized transform coefficient of the region, the estimated probability selected
from the probability model based on a quantity of already decoded non-zero quantized
transform coefficients of the region. It should be noted that, in the non-zero coefficient
decoding step, when the quantity of the already decoded non-zero quantized transform
coefficients is N, the picture decoding apparatus may decode the absolute value of
the next non-zero quantized transform coefficient, using the N-th estimated probability
in the probability model composed of the plurality of estimated probabilities.
[0030] A picture decoding method according to one aspect of the present invention may employ
the modes described below, in addition to the picture decoding method described above.
That is, a picture decoding method according to one aspect of, the present invention
is a picture decoding method that is performed by a picture decoding apparatus and
includes: a data analysis step for extracting, from compressed data, encoded data
of a residual signal of a target region serving as a process target; a zero/non-zero
coefficient information decoding step for decoding the encoded data of the residual
signal of the region to restore information representing each quantized transform
coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding step for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing step for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient; an inverse-transform
step for inverse-transforming the reproduction frequency transform coefficient of
the region to restore a reproduction residual signal; a prediction step for producing
a prediction signal for a pixel signal included in the region; and a picture restoration
step for adding the prediction signal of the region and the reproduction residual
signal to restore the pixel signal of the region; wherein in the non-zero coefficient
decoding step, the picture decoding apparatus selects, from a probability model composed
of a plurality of estimated probabilities, an estimated probability to be used for
decoding the absolute value of the next non-zero quantized transform coefficient of
the region, the estimated probability selected from the probability model based on
an absolute value of an already decoded non-zero quantized transform coefficient of
the region. It should be noted that, in the non-zero coefficient decoding step, when
a sum of the absolute value of the already decoded non-zero quantized transform coefficient
is N, the picture decoding apparatus may decode the absolute value of the next non-zero
quantized transform coefficient using the N-th estimated probability in the probability
model composed of the plurality of estimated probabilities.
[0031] Meanwhile, the invention relating to the picture encoding apparatus described above
may be regarded as an invention relating to a picture encoding program and may be
described as below.
[0032] A picture encoding program according to one aspect of the present invention makes
a computer function as: a region division module for dividing an input picture into
a plurality of regions; a prediction module for producing a prediction signal for
a pixel signal included in one of the regions; a residual signal production module
for producing a residual signal between the prediction signal and the pixel signal
in the one region; a transform module for frequency-transforming the residual signal
of the one region to produce transform coefficients; a quantizing module for quantizing
the transform coefficients of the one region to produce quantized transform coefficients;
a zero/non-zero coefficient information encoding module for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and a non-zero coefficient encoding module
for encoding non-zero quantized transform coefficients among the quantized transform
coefficients of the one region; wherein the non-zero coefficient encoding module is
configured to select, from a probability model composed of a plurality of estimated
probabilities, an estimated probability to be used for encoding an absolute value
of the next non-zero quantized transform coefficient of the one region. The estimated
probability selected from the probability model based on a quantity of already encoded
non-zero quantized transform coefficients of the one region. It should be noted that,
when the quantity of the already encoded non-zero quantized transform coefficients
is N, the non-zero coefficient encoding module may encode the absolute value of the
next non-zero quantized transform coefficient, using the N-th estimated probability
in the probability model composed of the plurality of estimated probabilities.
[0033] A picture encoding program according to one aspect of the present invention may employ
the modes described below, in addition to the picture encoding program described above.
That is, the picture encoding program according to one aspect of the present invention
makes a computer function as: a region division module for dividing an input picture
into a plurality of regions; a prediction module for producing a prediction signal
for a pixel signal included in one of the regions; a residual signal production module
for producing a residual signal between the prediction signal and the pixel signal
in the one region; a transform module for frequency-transforming the residual signal
of the one region to produce transform coefficients; a quantizing module for quantizing
the transform coefficient of the one region to produce quantized transform coefficients;
a zero/non-zero coefficient information encoding module for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and a non-zero coefficient encoding module
for encoding a non-zero quantized transform coefficient of the regions; wherein the
non-zero coefficient encoding module is configured to select, from a probability model
composed of a plurality of estimated probabilities, an estimated probability to be
used for encoding the absolute value of the next non-zero quantized transform coefficient
of the one region. The estimated probability selected from the probability model based
on an absolute value of an already encoded non-zero quantized transform coefficient
of the one region. It should be noted that, when a sum of the absolute value of the
already encoded non-zero quantized transform coefficient is N, the non-zero coefficient
encoding module may encode the absolute value of the next non-zero quantized transform
coefficient, using the N-th estimated probability in the probability model composed
of the plurality of estimated probabilities.
[0034] Furthermore, the invention relating to the picture decoding apparatus described above
may be regarded as an invention relating to a picture decoding program and may be
described as below.
[0035] A picture decoding program according to one aspect of the present invention makes
a computer function as: a data analysis module for extracting, from compressed data,
encoded data of a residual signal of a target region serving as a process target;
a zero/non-zero coefficient information decoding module for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding module for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing module for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient; an inverse-transform
module for inverse-transforming the reproduction frequency transform coefficient of
the region to restore a reproduction residual signal; a prediction module for producing
a prediction signal for a pixel signal included in the region; and a picture restoration
module for adding the prediction signal of the region and the reproduction residual
signal to restore the pixel signal of the region; wherein the non-zero coefficient
decoding module is configured to select, from a probability model composed of a plurality
of estimated probabilities, an estimated probability to be used for decoding an absolute
value of the next non-zero quantized transform coefficient. The estimated probability
selected from the probability model based on a quantity of already decoded non-zero
quantized transform coefficients of the one region. It should be noted that, when
the quantity of the already decoded non-zero quantized transform coefficients is N,
the non-zero coefficient decoding module may decode the absolute value of the next
non-zero quantized transform coefficient, using the N-th estimated probability in
the probability model composed of the plurality of estimated probabilities.
[0036] A picture decoding program according to one aspect of the present invention may employ
the modes described below, in addition to the picture decoding program described above.
That is, the picture decoding program according to one aspect of the present invention
makes a computer function as: a data analysis module for extracting, from compressed
data, encoded data of a residual signal of a target region serving as a process target;
a zero/non-zero coefficient information decoding module for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding module for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing module for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient; an inverse-transform
module for inverse-transforming the reproduction frequency transform coefficient of
the region to restore a reproduction residual signal; a prediction module for producing
a prediction signal for a pixel signal included in the region; and a picture restoration
module for adding the prediction signal of the region and the reproduction residual
signal to restore the pixel signal of the region; wherein the non-zero coefficient
decoding module is configured to select, from a probability model composed of a plurality
of estimated probabilities, an estimated probability to be used for decoding the absolute
value of the next non-zero quantized transform coefficient of the region. The estimated
probability selected from the probability model based on an absolute value of an already
decoded non-zero quantized transform coefficient of the region. It should be noted
that, when a sum of the absolute value of the already decoded non-zero quantized transform
coefficient is N, the non-zero coefficient decoding module may decode the absolute
value of the next non-zero quantized transform coefficient, using the N-th estimated
probability in the probability model composed of the plurality of estimated probabilities.
Advantageous Effects of Invention
[0037] According to one aspect of the present invention, the estimated probability to be
used for encoding/decoding the non-zero quantized transform coefficients can be selected
in accordance with the state of the previously encoded quantized transform coefficients
in the block, it is thus possible to efficiently entropy-code the residual signal.
Brief Description of Drawings
[0038]
Fig. 1 is a block diagram of a picture encoding apparatus according to the present
embodiment.
Fig. 2 is a schematic view showing a mapping process of a quantized transform coefficient
on a zero-tree.
Fig. 3 is a correspondence table to transform an absolute value of a non-zero quantized
transform coefficient into bin strings in Unary binarization.
Fig. 4 is a schematic view illustrating a conventional estimated probability selection
process used for encoding/decoding a non-zero quantized transform coefficient.
Fig. 5 is a schematic view illustrating an estimated probability selection process
used for encoding/decoding a non-zero quantized transform coefficient of one aspect
of the present invention.
Fig. 6 is a flowchart illustrating a picture encoding method according to the present
embodiment.
Fig. 7 is a flowchart illustrating encoding procedures of the non-zero quantized transform
coefficient according to the present embodiment.
Fig. 8 is a block diagram of a picture decoding apparatus according to the present
embodiment.
Fig. 9 is a flowchart illustrating a picture decoding method according to the present
embodiment.
Fig. 10 is a flowchart illustrating decoding procedures of the non-zero quantized
transform coefficient according to the present embodiment.
Fig. 11 is a view of a hardware configuration of a computer for executing a program
recorded in a recording medium.
Fig. 12 is a perspective view of the computer of Fig. 11.
Fig. 13 is a block diagram showing an example of a module configuration of a picture
encoding program.
Fig. 14 is a block diagram showing an example of a module configuration of a picture
decoding program.
Fig. 15 is a graph illustrating a probability model prepared for encoding/decoding
the non-zero quantized transform coefficient in the present embodiment.
Fig. 16 is a schematic view illustrating another example of the estimated probability
selection process used for encoding/decoding the non-zero quantized transform coefficient
of one aspect of the present invention.
Description of Embodiments
[0039] Embodiments of the present invention will be described with reference to Figs. 1
to 16.
(Picture Encoding Apparatus)
[0040] Fig. 1 shows a block diagram of a picture encoding apparatus 100 according to the
present invention. The picture encoding apparatus 100 includes an input terminal 101,
a block divider 102, a subtracter 103, a transformer 104, a quantizer 105, a zero/non-zero
coefficient information entropy encoder 106, a non-zero coefficient entropy encoder
107, a frame memory 108, a de-quantizer 109, an inverse-transformer 110, an adder
112, a predictor 113, a prediction parameter encoder 115, and an output terminal 114.
[0041] Operations of the picture encoding apparatus 100 configured above will be described
below. A signal for a moving picture composed of a plurality of pictures is input
in the input terminal 101. A picture serving as an encoding target is divided into
a plurality of regions by the block divider 102. The present embodiment describes
an example encoding target that is divided into regions or divided blocks, where each
region or divided block is composed of 8 × 8 pixels. The regions or divided blocks
may be in a different size or shape in other examples.
[0042] Next, a region or divided block that is a target of an encoding process (hereinafter,
referred to as the target block), is input in the subtracter 103.
[0043] The predictor 113 produces a prediction signal for a pixel signal of the target block,
which is output to the subtracter 103. As a prediction method, there are an inter-frame
prediction and an intra-frame prediction. In the inter-frame prediction, a reproduction
picture encoded and then decoded in the past is used as a reference picture or pixel
signal, and from the reference picture motion information providing the prediction
signal having the smallest difference from a sub-block, is obtained. On the other
hand, in the intra-frame prediction, a copying process (copying process to each pixel
position in the sub-block) based on a predetermined method using a value of an already
reproduced pixel, or pixel signal, spatially adjacent to the sub-block, produces an
intra-frame prediction signal. The method for producing a prediction signal is not
specifically limited in the present invention. Side information (prediction method,
motion information, and the like) necessary for producing the prediction signal is
entropy-coded (arithmetic signs, variables-length signs, and the like) and is output
to the output terminal 114.
[0044] The subtracter 103 calculates a difference between a picture signal of the target
block and the prediction signal to produce a residual signal of the target block,
which is output to the transformer 104.
[0045] The residual signal is discrete-cosine-transformed every four 4 × 4 pixel sub-blocks
by the transformer 104, and transform coefficients of each transformed sub-block,
or region, is output to the quantizer 105. It should be noted that, in the present
embodiment, the sub-block size is 4 × 4 pixels, but may be of different sizes. In
addition, division is not necessarily required.
[0046] The quantizer 105 quantizes the transform coefficients of the sub-block to produce
quantized transform coefficients, which are output to the zero/non-zero coefficient
information entropy encoder 106 and the non-zero coefficient entropy encoder 107.
At the same time, the quantized transform coefficients of each sub-block are output
to the de-quantizer 109.
[0047] The zero/non-zero coefficient information entropy encoder 106 entropy-codes a state
of a zero value/non-zero value of each quantized transform coefficient in the sub-block,
while the non-zero coefficient entropy encoder 107 entropy-codes a value of a non-zero
quantized transform coefficient in the sub-block. Encoded data is output as the encoded
data of the residual signal through the output terminal 114. Entropy coding in the
present embodiment is described as arithmetic encoding. Each entropy coding of the
zero/non-zero coefficient information entropy encoder 106 and the non-zero coefficient
entropy encoder 107 is described below.
[0048] The zero/non-zero coefficient information entropy encoder 106 maps the quantized
transform coefficients of each sub-block on leaves in a tree-structure prepared in
advance and updates, based on a coefficient value of each leaf, a state of a node
and the leaves in the tree structure. Then, the state of the node and leaves in the
tree structure is entropy-coded.
[0049] Here, the tree structure, sub-block division and zero-tree encoding are described.
In the present embodiment, a method for dividing a target block of 8 × 8 pixels into
four sub-blocks each composed of 16 pixels is described as an example.
[0050] A method for producing a tree structure is described with reference to Fig. 2. In
the tree structure, a branch point shown by an x mark is called a "node", and a lower
end of the tree represented by the number is called a "leaf". The state of the node
and leaf is represented by 0 or 1 value and the state of each node is decided by the
state of two nodes or leaves at the branch ends. With respect to a certain node represented
by x (target node), when the two nodes (or leaves) at the branch ends are both 0,
the state of the target node becomes 0, while when any one or both of the two nodes
(or leaves) is/are 1, the state of the target node becomes 1.
[0051] The number of a sub-block 61 indicates a position of each quantized transform coefficient
in the sub-block and corresponds to the number in a tree 62 in the tree structure.
Each quantized transform coefficient in the sub-block 61 is mapped on the leaf having
the same number in the tree 62. The state of each leaf becomes 1, when the quantized
transform coefficient mapped thereon is non-zero, and the state of each leaf becomes
0, when the quantized transform coefficient mapped thereon is zero. When the state
of the leaves is decided, the state of the nodes with the x mark are decided in the
order from bottom right to top left in the tree structure. Therefore, it is found
that when the state of x is 0, every value of the quantized transform coefficient
corresponding to the leaves belonging to the tree starting from that node become 0.
[0052] In the zero-tree encoding, the state of the node and leaves in the tree structure
is encoded, in accordance with predetermined procedures (for example, by searching
for x marks in the order from top left to bottom right). At that time, when the state
of a certain node is 0, every state of the nodes and leaves that belong to the tree
starting from the certain node become 0, therefore, it becomes unnecessary to encode
the state of such nodes and leaves. Accordingly, a map indicating a correspondence
between the leaves in the tree structure and each quantized transform coefficient
is determined such that a zero coefficient of the quantized transform coefficient
is efficiently encoded with a small encoding amount. A probability model is obtained
by setting a probability of a single encoding component (the node, here) becoming
0 for each encoding component (the nodes and leaves, here). It should be noted that
the same probability model, which is predetermined and provided in advance, may be
used for encoding the state of the plurality of nodes and leaves. In addition, in
the case of arithmetic coding, the probability model may be updated based on a generated
code.
[0053] In this way, the zero/non-zero coefficient information entropy encoder 106 entropy-codes
the state of the nodes and leaves. Then, encoded data representative of the state
of the nodes and leaves in the target block is output to the output terminal 114.
[0054] The non-zero coefficient entropy encoder 107 encodes the non-zero quantized transform
coefficients of the sub-block in the input target block, which is output to the output
terminal 114.
[0055] With reference to Fig. 5, a method for encoding a non-zero quantized transform coefficient
in the present invention is described.
[0056] In encoding of the non-zero quantized transform coefficients, an absolute value,
and a plus and minus sign of each coefficient are arithmetically coded in the order
proceeding from the coefficient of a high frequency component to the coefficient of
a low frequency component. Specifically, as shown in Fig. 3, the absolute value of
a non-zero quantized transform coefficient is transformed into bin strings in Unary
binarization. Using the probability model for encoding the bin strings that are the
binarized quantized transform coefficients of the sub-block, a plurality of estimated
probabilities each having a different 0 occurrence probability, are prepared. Then,
each bin value is binary arithmetic coded using the estimated probability selected
based on the absolute value of a previously encoded transform coefficient of the sub-block.
The plus and minus signs of the coefficient are also arithmetic coded, as "0" for
the plus sign and "1" for the minus sign, by using the estimated probability of the
plus and minus signs.
[0057] Fig. 5 shows an estimated probability selection process in encoding/decoding the
non-zero transform coefficients, when frequency transform is performed in the unit
of a 4 × 4 sub-block. In a block 301, C[0] to C[15] represent 16 pieces or quantized
transform coefficients (an index in [ ] identifies the position of each of the quantized
transform coefficients in the sub block). Using the probability model for binary arithmetic
coding/decoding of the absolute value of each transform coefficient, 16 estimated
probabilities (or pieces) having a different frequency of 0 binary value (P[0] to
P[15]; an index in [ ] identifies the estimated probability) are prepared. In the
present embodiment, 16 estimated probabilities (or pieces) are prepared and set such
that the occurrence probability of 0 value becomes smaller as proceeding from P[0]
to P[15]. Fig. 15 shows initial data of that probability model. The abscissa of Fig.
15 represents the index of the estimated probabilities and the ordinate represents
the probability that the bin of the next encoding/decoding target becomes 0, respectively.
[0058] The non-zero quantized transform coefficients are arranged, as shown in a sequence
of coefficients 302, in the order of an inverse zig-zag scan proceeding from a high
frequency component to a low frequency component and are binary arithmetic coded/decoded.
[0059] In an example of the sequence of coefficients 302, first, the sequence of the coefficients
is searched in the order of the inverse zig-zag scan and a non-zero coefficient (C[6]
in the example of Fig. 5) is detected. Then, "0" representing the bin strings of the
absolute value "1" of C[6] in the Unary binarization, is arithmetic coded/decoded
using the probability P[0]. Subsequently, "0" representing the plus sign is encoded/decoded
using the estimated probability of the plus and minus sign (for example, the probability
that the sign is plus). It should be noted that P[0] is the first in the 16 estimated
probabilities to start.
[0060] Second, the sequence of coefficients is searched in the order of inverse zig-zag
scan from C[6] and the non-zero coefficient (C[3] in the example of Fig. 5) is detected.
Then, "0" representing the bin strings of the absolute value "1" of C[3] in the Unary
binarization, is arithmetic coded/decoded using the probability P[1] In this case,
since the absolute value of a just previously encoded/decoded coefficient is "1" here,
P[1] obtained by adding "1" to the index of P[0] is used for encoding/decoding. Subsequently,
"1" representing the minus sign is encoded/decoded using the estimated probability
of the plus and minus sign.
[0061] Similarly, third, the sequence of coefficients is searched in the order of inverse
zig-zag scan from C[3] and the non-zero coefficient (C[5] in the example of Fig. 5)
is detected. Then, each bin of "10" representing the bin strings of the absolute value
"2" of C[5] in the Unary binarization, is arithmetic coded/decoded using the probability
P[2], and subsequently "0" representing the plus sign is encoded/decoded using the
estimated probability of the plus and minus sign. In this case, since the absolute
value of the just previously encoded/decoded coefficient is "1", P[2] obtained by
adding "1" to the index of P[1] is used for encoding/decoding.
[0062] Forth, the sequence of coefficients is searched in the order of inverse zig-zag scan
from C[5] and the non-zero coefficient (C[8] in the example of Fig. 5) is detected.
Then, "110" representing the bin strings of the absolute value "3" of C[8] in the
Unary binarization is arithmetic coded/decoded using the probability P[4], and subsequently
"1" representing the minus sign is encoded/decoded using the estimated probability
of the plus and minus sign. In this case, since the absolute value of the just previously
encoded/decoded coefficient is "2", P[4] obtained by adding "2" to the index of P[2]
is used for encoding/decoding.
[0063] Fifth, the sequence of coefficients is searched in the order of inverse zig-zag scan
from C[8] and the non-zero coefficient (C[1] in the example of Fig. 5) is detected.
Then, "0" representing the bin strings of the absolute value "1" of C[1] in the Unary
binarization, is arithmetic coded/decoded using the probability P[7], and subsequently,
"0" representing the plus sign is encoded/decoded using the estimated probability
of the plus and minus sign. In this case, since the absolute value of the just previously
encoded/decoded coefficient is "3", P[7] obtained by adding "3" to the index of P[4]
is used for encoding/decoding.
[0064] Finally, the sequence of coefficients is searched in the order of inverse zig-zag
scan from C[1] and the non-zero coefficient (C[0] in the example of Fig. 5) is detected.
Then, "1110" representing the bin strings of the absolute value "4" of C[0] in the
Unary binarization, is arithmetic coded/decoded using the probability P[8], and subsequently,
"0" representing the plus sign is encoded/decoded using the estimated probability
of the plus and minus sign. In this case, since the absolute value of the just previously
encoded/decoded coefficient is "1" here, P[8] obtained by adding "1" to the index
of P[7] is used for encoding/decoding.
[0065] In this way, the estimated probability to be used for encoding/decoding the absolute
value of the next quantized transform coefficient, is selected based on the absolute
value of the just previously encoded/decoded quantized transform coefficient. It should
be noted that when the index of the estimated probability to be used next exceeds
the maximum value prepared in the probability model (15 in the present embodiment),
P[15] is repeatedly used, as shown in Fig. 5.
[0066] The estimated probability to be used for encoding/decoding the absolute value of
the next quantized transform coefficient, is selected based on the number, or quantity,
of the already encoded/decoded binary values of the sub-block. For example, when the
absolute value of the just previously encoded/decoded quantized transform coefficient
is "2" (in the example C[5] above); P[x+2] obtained by adding "2" to the index of
P[x] (x = 2 in this example) is used for encoding/decoding the absolute value of the
next quantized transform coefficient (in the example C[8]).
[0067] As another example of the method shown in Fig. 5, there is a method in which the
estimated probability to be used for encoding/decoding the next non-zero quantized
transform coefficient, is selected based on the quantity (number of pieces) of the
already encoded/decoded quantized transform coefficients of the sub-block. Fig. 16
shows such an example. In Fig. 16, when the just previous coefficient is encoded/decoded
using P[x] (for example, C[6] is encoded/decoded using P[0]), P[x+1] is used for encoding/decoding
the next coefficient (C[3] is encoded/decoded using P[1]) That is, the index of the
estimated probability to be used is added one-by-one and thereby the estimated probability
having the index corresponding to the quantity of the already encoded/decoded quantized
transform coefficients is selected.
[0068] In addition, each estimated probability may be updated in an encoding/decoding procedure,
based on a frequency of the actually encoded/decoded coefficient in the initial data.
In such an updating process, it is possible to perform a similar process at an encoding/decoding
and a decoding side, whereby a mismatch between the encoding process and a decoding
process is avoided.
[0069] The de-quantizer 109 de-quantizes the quantized transform coefficient of each sub-block
to restore the transform coefficient, which is output to the inverse-transformer 110.
[0070] The inverse-transformer 110 inverse-transforms the transform coefficient of each
sub-block to restore a residual signal, which is output to the adder 112.
[0071] The adder 112 adds the restored residual signal of each sub-block to the prediction
signal of the target block and restores a reproduction signal of the target block.
[0072] The restored reproduction signal is output to the frame memory 108 and is stored
as the reference picture to be used for a prediction process.
(Picture encoding method)
[0073] With reference to Fig. 6, a process relating to the picture encoding method performed
by the picture encoding apparatus 100 will be described below. The diagram illustrates
the encoding process for one block. The target block is an 8 × 8 pixel block.
[0074] First, the predictor 113 produces a prediction signal of the target block and encodes
side information necessary for producing the prediction signal (S101). Subsequently,
the subtracter 103 produces a residual signal between the prediction signal and the
picture signal of the target block for each 4 × 4 pixel sub-block. The transformer
104 transforms the residual signal for each 4 × 4 pixel sub-block, and the quantizer
105 quantizes the transformed residual signal mentioned above for each 4 × 4 pixel
sub-block, whereby quantized transform coefficients are produced (S102).
[0075] Next, the zero/non-zero coefficient information entropy encoder 106 maps the quantized
transform coefficients of the sub-block 61 on the leaves in the tree 62 in the tree
structure, according to the process described in Fig. 2, and updates the state of
the nodes and leaves in the tree structure based on the coefficient value of each
leaf. Then, the state of the nodes and leaves in the tree structure is encoded (S103).
[0076] Next, the non-zero coefficient entropy encoder 107 encodes the non-zero coefficient
out of the quantized transform coefficients of the sub-block, based on the estimated
probability selection process shown in Fig. 5 (S104). Details will be described below.
[0077] Next, the de-quantizer 109 de-quantizes the quantized transform coefficients of each
sub-block and the inverse-transformer 110 inverse-transforms the de-quantized quantized
transform coefficients mentioned above, whereby the residual signal of each sub-block
is restored (S105).
[0078] Next, the adder 112 adds the prediction signal of the target block to the residual
signal of each sub-block to restore the reproduction signal of the target block (S
106).
[0079] Finally, the picture encoding apparatus 100 outputs encoded data of the encoded zero-tree
in the tree structure, encoded data of the non-zero quantized transform coefficients,
and encoded data of the side information to be used for producing the prediction signal,
from the output terminal 114 (S107).
[0080] Fig. 7 shows a non-zero coefficient entropy coding process for the quantized transform
coefficients of one 4 × 4 pixel sub-block, which is performed by the non-zero coefficient
entropy encoder 107 (process at step S104 in Fig. 6). Z[k] in a flowchart of Fig.
7 represents a transformed index Z[k] obtained by transforming an index k of each
coefficient of the block 301 of quantized transform coefficients in Fig. 5 through
the inverse zig-zag scan into the sequence of coefficients 302. A correspondence between
the index k before transformation and the index Z[k] after the transformation is shown
in a table 303 of Fig. 5.
[0081] First, the non-zero coefficient entropy encoder 107 initializes k representing an
encoding order of the quantized transform coefficients of the sub-block and m representing
an index of the estimated probability, to 0 (S501).
[0082] Next, the non-zero coefficient entropy encoder 107 reads a quantized transform coefficient
C[Z[k]] shown in Fig. 5 (S502) and, if the value is "0", it proceeds to S508, while
if not "0", it proceeds to 5504 (5503).
[0083] At S504, the non-zero coefficient entropy encoder 107 binary arithmetic codes bin
strings corresponding to the absolute value of C[Z[k]] using P[m], and subsequently
encodes the binary value of the plus and minus sign of C[Z[k]]. Since the binary arithmetic
encoding is already described in Fig. 5, the description is omitted here.
[0084] The non-zero coefficient entropy encoder 107 adds the absolute value of C[Z[k]] to
m to update the value of m at S505, and examines whether the value of m is 16 or more
at S507. When the value of m is "16" or more, the value of m is set to "15" at S507,
and when the value of m is less than "15", the value of k is added to "1" at S508,
to encode the next quantized transform coefficient.
[0085] Subsequently, until the value of k becomes "16" and the encoding of every quantized
transform coefficient of the sub-block is finished, the processes from S502 to S508
are repeated (S509).
[0086] It should be noted that at step S505, the value of m is updated by adding the absolute
value of C[Z[k]] to m, but instead of the absolute value of C[Z[k]], 1 may be added.
(Picture Decoding Apparatus)
[0087] Fig. 8 shows a block diagram of a picture decoding apparatus 900 according to the
present invention. The picture decoding apparatus 900 includes an input terminal 901,
a data analyzer 902, a zero/non-zero coefficient information entropy decoder 903,
a non-zero coefficient entropy decoder 904, a de-quantizer 906, an inverse-transformer
907, an adder 908, a frame memory 910, a prediction parameter decoder 905, a predictor
911, and an output terminal 909.
[0088] Operations of the picture decoding apparatus 900 configured above will be described
below When an encoded bit stream is input to the input terminal 901, the data analyzer
902 extracts from the bit stream the encoded data necessary for decoding the target
block that is a process target. Then, the data analyzer 902 separates the encoded
data of an 8 × 8 pixel target block serving as the next decoding target (the block
size of the present invention is not limited to 8 × 8) into encoded data of the residual
signal (that is, encoded data obtained by zero-tree encoding the state of the nodes
and leaves in the tree structure, and encoded data of the non-zero quantized transform
coefficients), and encoded data of the side information necessary for producing the
prediction signal. The encoded data obtained by zero-tree encoding the state of the
nodes and leaves in the tree structure is output to the zero/non-zero coefficient
information entropy decoder 903; the encoded data of the non-zero quantized transform
coefficients is output to the non-zero coefficient entropy decoder 904; and the encoded
data of the side information necessary for producing the prediction signal is output
to the prediction parameter decoder 945.
[0089] The zero/non-zero coefficient information entropy decoder 903 entropy-decodes the
state of the nodes and leaves in the tree structure of each sub-block (the size of
the sub-block is 4 × 4 pixels here, but not limited to that size) in the target block.
Then, the zero/non-zero coefficient information entropy decoder 903 outputs information
on the quantized transform coefficients (non-zero quantized transform coefficients)
having the state of the decoded leaf of "1", via a line L903 to the non-zero coefficient
entropy decoder 904.
[0090] The non-zero coefficient entropy decoder 904 entropy-decodes the encoded data of
the input non-zero quantized transform coefficients based on the zero/non-zero information
of the quantized transform coefficients input via the line L903, and restores the
value of the quantized transform coefficients. Decoded values of the restored quantized
transform coefficients of each sub-block are output to the de-quantizer 906.
[0091] As for decoding of the non-zero quantized transform coefficients, the absolute value
and the plus and minus sign of each coefficient are arithmetically decoded in order
from the coefficient of the high frequency component to the coefficient of the low
frequency component. Specifically, first, based on the absolute value of the previously
decoded transform coefficient of the sub-block, the estimated probability to be used
for decoding the next transform coefficient is selected. Next, the bin is binary arithmetic
decoded using the selected estimated probability, until a correspondence to any non-zero
quantized transform coefficient is found in the bin strings in the Unary binarization
shown in Fig. 3. Then, according to Fig. 3, the absolute value of the non-zero quantized
transform coefficient is decided. Subsequently, the plus and minus sign of the coefficient
is also arithmetic decoded using the estimated probability of the plus and minus sign
that the plus is "0" and the minus is "1". The decoding process of the non-zero quantized
transform coefficient and the estimated probability selection process at the time
of decoding the non-zero quantized transform coefficient in the non-zero coefficient
entropy decoder 904, are already described with reference to Fig. 5, Fig. 15 and Fig.
16, and detailed description is omitted here.
[0092] The de-quantizer 906 de-quantizes the decoded value of the quantized transform coefficients
of each sub-block and the transform coefficients of each sub-block is restored. The
inverse-transformer 907 inverse-transforms the transform coefficients of each block
to produce a reproduction residual signal.
[0093] On the other hand, the prediction parameter decoder 905 restores the encoded data
of the side information necessary for producing the prediction signal and subsequently,
the predictor 911 produces the prediction signal of the target block.
[0094] The adder 908 adds the reproduction residual signal of each sub-block to the prediction
signal of the target block to restore the reproduction signal of the target block.
The restored reproduction signal is output to the frame memory 910 and stored as the
reference picture to be used for the prediction process.
(Picture Decoding Method)
[0095] By using Fig. 9, a process relating to the picture decoding method performed by the
picture decoding apparatus 900 will be described below. The diagram illustrates a
decoding process for one block. The target block here is an 8 × 8 pixel block.
[0096] First, in the picture decoding apparatus 900, when compressed data is input (S901),
the data analyzer 902 extracts the encoded data of the target block (S902). That is,
with respect to each sub-block (4 × 4 pixels) of the target block, the encoded data
of the state of the nodes and leaves in the tree structure, the encoded data of the
non-zero quantized transform coefficients (coefficients corresponding to the leaves
having the state of 1 in the tree structure), and the encoded data of the side information
necessary for producing the prediction signal, are extracted. Then, the encoded data
of the state of the nodes and leaves in the tree structure is output to the zero/non-zero
coefficient information entropy decoder 903, and the encoded data of the non-zero
quantized transform coefficients is output to the non-zero coefficient entropy decoder
904, as well as, the encoded data of the side information is output to the prediction
parameter decoder 905.
[0097] The prediction parameter decoder 905 decodes the encoded data of the side information
and the predictor 911 produces the prediction signal of the target block, based on
the side information decoded by the prediction parameter decoder 905 (S903).
[0098] Subsequently, the zero/non-zero coefficient information entropy decoder 903 decodes
the encoded data of the state of the nodes and leaves in the tree structure of each
sub-block (4 × 4 pixels), to restore the state of the nodes and leaves in the tree
structure (S904).
[0099] The non-zero coefficient entropy decoder 904 restores, based on the decoded state
of the nodes and leaves in the tree structure of each sub-block, the value of the
quantized transform coefficients having the state of the leaves representing "1" (non-zero
quantized transform coefficients) (S905). The decoding of the non-zero quantized transform
coefficients will be described below.
[0100] In addition, the de-quantizer 906 de-quantizes the quantized transform coefficients
of each sub-block, while the inverse-transformer 907 inverse-transforms the de-quantized
quantized transform coefficients to thereby restore the residual signal (S906).
[0101] Finally, the adder 908 adds the prediction signal to the restored residual signal
to restore the reproduction signal of the target block. The restored reproduction
signal is temporarily stored in the frame memory 910 (S907).
[0102] Fig. 10 shows a non-zero coefficient decoding process (process at step S905 in Fig.
9) of the quantized transform coefficients for one 4 × 4 pixel sub-block, which is
performed by the non-zero coefficient entropy decoder 904. Z[k] in a flowchart of
Fig. 10 represents a transformed index Z[k] obtained by transforming the index k of
each coefficient of the quantized transform coefficients in sub-block 301 in Fig.
5 through the inverse zig-zag scan into the sequence of coefficients 302, A correspondence
between the index k before the transformation and the index Z[k] after the transformation
is shown in the table 303 of Fig. 5.
[0103] First, the non-zero coefficient entropy decoder 904 initializes k representing a
decoding order of the quantized transform coefficients of the sub-block and m representing
the index of the estimated probability, to "0" (S601).
[0104] Next, the non-zero coefficient entropy decoder 904 reads the value of the leaf[Z[k]]
in the structure corresponding to the quantized transform coefficient C[Z[k]] shown
in Fig. 5 (S602) and decodes, if the value is "0", C[Z[k]] at S608, while, if not
"0", it proceeds to S604 (S603).
[0105] At S604, the non-zero coefficient entropy decoder 904 binary arithmetic decodes the
absolute value of C[Z[k]] using P[m], and subsequently decodes the binary value of
the plus and minus sign of C[Z[k]]. The binary arithmetic decoding is already described
in Fig. 5, and a detailed description is omitted here.
[0106] Then, the non-zero coefficient entropy decoder 904 adds the absolute value of C[Z[k]]
to m to update the value of m at S605, and examines whether the value of m is 16 or
more at S606. When the value of m is "16" or more, the value of m is set to 15 at
S607, and when the value of m is less than "15", "1" is added to the value of k at
S609, to decode the next quantized transform coefficient.
[0107] Subsequently, until the value of k becomes "16" and the decoding of every quantized
transform coefficient of the sub-block is finished, the processes from S602 to S609
are repeated (S610).
[0108] It should be noted that at step S605, the absolute value of C[Z[k]] is added to m
to update the value of m, but "1", instead of the absolute value of C[Z[k]], may be
added.
(Modifications)
[0109] In the above description, encoding and decoding of the non-zero quantized transform
coefficients is performed in the order of the inverse zig-zag scan proceeding from
the high frequency component to the low frequency component, but the order is not
limited thereto. For example, for the coefficients of the block 301, the order of
a raster scan (the order of C[0], C[1], C[2]... in the block 301), the order of a
zig-zag scan (the order of C[0], C[1], C[4], C[8]... in the block 301, the inverse
of the sequence of coeffcients 302), or the order of an inverse-raster scan may be
applied to the present invention.
[0110] In the above description, the probability model prepared is a single type (configured
by P[0] to P[15]). In other examples, the probability model may be prepared individually,
according to the prediction method, the block size, and the like. In addition, it
is unnecessary that the number of pieces of the estimated probability included in
the probability model is the same as the number of the transform coefficients in the
block. As long as the same probability model is provided at the encoding side and
the decoding side, the present invention can be executed with any number of pieces
of the estimated probability.
[0111] Furthermore, in the above description, when the number of the selected estimated
probability becomes larger than the prepared estimated probability, the estimated
probability in the lowest occurrence frequency of "0" is selected, but any estimated
probability may be predetermined in advance or the estimated probability may be prepared
separately.
[0112] In the above description, the quantized transform coefficients in the Unary binarization
are transformed into a binary code, but other binarization may be used. For example,
Truncated Unary binarization where a level of the value is limited; Concatenated Unary
binarization where the level of the value is classified into two stages; and a fixed
length binarization or the like, may be applied to the present invention.
[0113] In the above description, arithmetic encoding is used, but the various length encoding
may be applied to the present invention. In that case, for example, based on the quantity
of and the absolute value of the already encoded/decoded quantized transform coefficients
of the block, among a plurality of predetermined various length code tables, a code
table to be used for encoding/decoding the next quantized transform coefficient is
used.
[0114] In the above description, the state of the zero/non-zero coefficients of the quantized
transform coefficients in the block are encoded by zero-tree encoding, but the invention
is not limited to that method. For example, a method for encoding the quantity of,
and a location of, the non-zero coefficients in the block, or zero-run encoding for
encoding the number of consecutive zeros in the block, may be used.
(Picture Encoding Program, Picture Decoding Program)
[0115] The invention relating to the picture encoding apparatus may be regarded as an invention
relating to a picture encoding program for making a computer function as the picture
encoding apparatus. Alternatively, the picture encoding method according to the present
embodiment may be stored as a computer executable program in a recording medium. In
addition, the invention relating to the picture decoding apparatus may be regarded
as an invention relating to a picture decoding program for making the computer function
as the picture decoding apparatus. Alternatively, the picture decoding method according
to the present embodiment may be stored as a computer executable program in the recording
medium.
[0116] The picture encoding program and the picture decoding program are stored, for example,
in the recording medium and provided. Examples of the recording medium include a recording
medium such as a flexible disk, a CD-ROM, and a DVD; a recording medium such as a
ROM; and a semiconductor memory and the like.
[0117] Fig. 13 shows modules of the picture encoding program for making the computer function
as the picture encoding apparatus. As shown in Fig. 13, a picture encoding program
P 100 includes an input module P101, a block division module P102, a subtraction module
P103, a transform module P104, a quantizing module P105, a zero/non-zero coefficient
information entropy coding module P106, a non-zero coefficient entropy coding module
P107, a memory module P108, a de-quantizing module P109, an inverse-transform module
P110, an addition module P112, a prediction module P113, an output module P114, and
a prediction parameter encoding module P115.
[0118] The function to be implemented by executing each module described above, is the same
as the function of the picture encoding apparatus 100 in Fig. 1 mentioned above. That
is, in an aspect of the function, the input module P101 in Fig. 11 corresponds to
the input terminal 101 in Fig. 1, so does the block division module P102 to the block
divider 102, the subtraction module P103 to the subtracter 103, the transform module
P104 to the transformer 104, the quantizing module P105 to the quantizer 105, the
zero/non-zero coefficient information entropy coding module P106 to the zero/non-zero
coefficient information entropy encoder 106, the non-zero coefficient entropy coding
module P107 to the non-zero coefficient entropy encoder 107, the memory module P108
to the frame memory 108, the de-quantizing module P109 to the de-quantizer 109, the
inverse-transform module P110 to the inverse-transformer 110, the addition module
P112 to the adder 112, the prediction module P113 to the predictor 113, the output
module P114 to the output terminal 114, and the prediction parameter encoding module
P 115 to the prediction parameter encoder 115, respectively.
[0119] Fig. 14 shows the modules of the picture decoding program for making the computer
function as the picture decoding apparatus. As shown in Fig. 14, a picture decoding
program P900 includes, an input module P901, a data analysis module P902, a zero/non-zero
coefficient information entropy decoding module P903, a non-zero coefficient entropy
decoding module P904, a prediction parameter decoding module P905, a de-quantizing
module P906, an inverse-transform module P907, an addition module P908, an output
module P909, a memory module P910, and a prediction module P911.
[0120] The function to be implemented by executing each module above is the same as the
function of the picture decoding apparatus 900 in Fig. 9 mentioned above. That is,
in the aspect of the function, the input module P901 in Fig. 14 corresponds to the
input terminal 901 in Fig. 8, so does the data analysis module P902 to the data analyzer
902, the zero/non-zero coefficient information entropy decoding module P903 to the
zero/non-zero coefficient information entropy decoder 903, the non-zero coefficient
entropy decoding module P904 to the non-zero coefficient entropy decoder 904, the
prediction parameter decoding module P905 to the prediction parameter decoder 905,
the de-quantizing module P906 to the de-quantizer 906, the inverse-transform module
P907 to the inverse-transformer 907, the addition module P908 to the adder 908, the
output module P909 to the output terminal 909, the memory module P910 to the frame
memory 910, and the prediction module P911 to the predictor 911, respectively.
[0121] The picture encoding program P100 and the picture decoding program P900 configured
above are stored in a recording medium 10 shown in Fig. 11, and executed by a computer
30 described below.
[0122] Fig. 11 is a view showing a hardware configuration of the computer for executing
the program recorded in the recording medium, while Fig. 12 is a perspective view
of the computer for executing the program stored in the recording medium. As the computer,
included are a DVD player, a set top box, a cell-phone and the like, which are provided
with a CPU and software for executing a process and control.
[0123] As shown in Fig. 11, the computer 30 includes a reader 12 such as a flexible disk
drive apparatus, a CD-ROM drive apparatus, and a DVD drive apparatus; a working memory
(RAM) 14 including a resident operating system, a memory 16 for storing the program
stored in a recording medium 10; a display apparatus 18 such as a display; input apparatuses
such as a mouse 20 and a keyboard 22; a communication apparatus 24 for transmitting
and receiving data and the like; and a CPU 26 for controlling execution of the program.
Upon insertion of the recording medium 10 into the reader 12, the picture encoding
program P100 stored in the recording medium 10 becomes accessible from the reader
12 and the picture encoding program P100 enables the computer 30 to operate as the
picture encoding apparatus according to the present invention. In addition, upon insertion
of the recording medium 10 into the reader 12, the picture decoding program P900 stored
in the recording medium 10 becomes accessible from the reader 12, and the picture
decoding program P900 enables the computer 30 to operate as the picture decoding apparatus
according to the present invention.
[0124] As shown in Fig. 12, the picture encoding program or the picture decoding program
may be provided as a computer data signal 40 superimposed on a carrier wave through
a network. In that case, the computer 30 is capable of storing the picture encoding
program or the picture decoding program that is received by the communication apparatus
24, in the memory 16 and of executing the picture encoding program or the picture
decoding program.
[0125] According to the embodiments described above, since the estimated probability to
be used for encoding/decoding the absolute value of the next non-zero quantized transform
coefficient, is selected, based on the quantity of the already encoded/decoded quantized
transform coefficients in the block or the absolute value of the quantized transform
coefficient, it is possible to encode a prediction error signal efficiently in accordance
with features of the block or the state of the previously encoded quantized transform
coefficient in the block.
Reference Signs List
[0126] 100: picture encoding apparatus; 101, 901: input terminal; 102: block divider; 103:
subtracter; 104: transformer; 105: quantizer; 106: zero/non-zero coefficient information
entropy encoder; 107: non-zero coefficient entropy encoder; 108, 910: frame memory;
109, 906: de-quantizer; 110, 907: inverse-transformer; 112, 908: adder; 113, 911:
predictor; 114, 909: output terminal; 115: prediction parameter encoder; 900: picture
decoding apparatus; 902: data analyzer; 903: zero/non-zero coefficient information
entropy decoder; 904: non-zero coefficient entropy decoder; and 905: prediction parameter
decoder.
1. A picture encoding apparatus comprising:
a region division unit for dividing an input picture into a plurality of regions;
a prediction unit for producing a prediction signal for a pixel signal included in
one of the regions;
a residual signal production unit for producing a residual signal between the prediction
signal and the pixel signal of the one region;
a transform unit for frequency-transforming the residual signal of the one region
to produce transform coefficients;
a quantizing unit for quantizing the transform coefficients of the one region to produce
quantized transform coefficients;
a zero/non-zero coefficient information encoding unit for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and
a non-zero coefficient encoding unit for encoding non-zero quantized transform coefficients
among the quantized transform coefficients of the one region; wherein
the non-zero coefficient encoding unit is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for encoding an absolute value of the next non-zero quantized transform
coefficient of the one region, the estimated probability selected from the probability
model based on a quantity of already encoded non-zero quantized transform coefficients
of the one region.
2. A picture encoding apparatus comprising:
a region division unit for dividing an input picture into a plurality of regions;
a prediction unit for producing a prediction signal for a pixel signal included in
one of the regions;
a residual signal production unit for producing a residual signal between the prediction
signal and the pixel signal of the one region;
a transform unit for frequency-transforming the residual signal of the one region
to produce transform coefficients;
a quantizing unit for quantizing the transform coefficients of the one region to produce
quantized transform coefficients;
a zero/non-zero coefficient information encoding unit for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and
a non-zero coefficient encoding unit for encoding non-zero quantized transform coefficient;
wherein
the non-zero coefficient encoding unit is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for encoding an absolute value of the next non-zero quantized transform
coefficient of the one region, the estimated probability selected from the probability
model based on an absolute value of the already encoded non-zero quantized transform
coefficient of the one region.
3. The picture encoding apparatus according to claim 1, wherein when the quantity of
the already encoded non-zero quantized transform coefficients is N, the non-zero coefficient
encoding unit is configured to encode the absolute value of the next non-zero quantized
transform coefficient, using the N-th estimated probability in the probability model
composed of the plurality of estimated probabilities.
4. The picture encoding apparatus according to claim 2, wherein when a sum of the absolute
value of the already encoded non-zero quantized transform coefficient is N, the non-zero
coefficient encoding unit is configured to encode the absolute value of the next non-zero
quantized transform coefficient, using the N-th estimated probability in the probability
model composed of the plurality of estimated probabilities.
5. The picture encoding apparatus according to claim 3 or 4, wherein when the quantity
of the estimated probabilities in the probability model is M, and N exceeds M, the
non-zero coefficient encoding unit is configured to encode the absolute value of the
next non-zero quantized transform coefficient, using the M-th estimated probability.
6. The picture encoding apparatus according to any one of claims 1 to 5, wherein the
non-zero coefficient encoding unit is configured to encode the non-zero quantized
transform coefficient in an order proceeding from the coefficient of a high frequency
component to the coefficient of a low frequency component.
7. A picture decoding apparatus comprising:
a data analysis unit for extracting, from compressed data, encoded data of a residual
signal of a region serving as a process target;
a zero/non-zero coefficient information decoding unit for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding unit for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing unit for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient;
an inverse-transform unit for inverse-transforming the reproduction frequency transform
coefficient of the region to produce a reproduction residual signal;
a prediction unit for producing a prediction signal for a pixel signal included in
the region; and
a picture restoration unit for adding the prediction signal of the region and the
reproduction residual signal to restore the pixel signal of the region; wherein
the non-zero coefficient decoding unit is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for decoding an absolute value of the next non-zero quantized transform
coefficient of the region, the estimated probability selected from the probability
model based on a quantity of already decoded non-zero quantized transform coefficients
of the region.
8. A picture decoding apparatus comprising:
a data analysis unit for extracting, from compressed data, encoded data of a residual
signal of a target region serving as a process target;
a zero/non-zero coefficient information decoding unit for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding unit for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing unit for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient;
an inverse-transform unit for inverse-transforming the reproduction frequency transform
coefficient of the region to produce a reproduction residual signal;
a prediction unit for producing a prediction signal for a pixel signal included in
the region; and
a picture restoration unit for adding the prediction signal of the region and the
reproduction residual signal to restore the pixel signal of the region; wherein
the non-zero coefficient decoding unit is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for decoding an absolute value of the next non-zero quantized transform
coefficient of the region, the estimated probability selected from the estimated probability
model based on an absolute value of an already decoded non-zero quantized transform
coefficient of the target region.
9. The picture decoding apparatus according to claim 7, wherein when the quantity of
the already decoded non-zero quantized transform coefficients is N, the non-zero coefficient
decoding unit is configured to decode the absolute value of the next non-zero quantized
transform coefficient, using the N-th estimated probability in the probability model
composed of the plurality of estimated probabilities.
10. The picture decoding apparatus according to claim 8, wherein when a sum of the absolute
value of the already decoded non-zero quantized transform coefficient is N, the non-zero
coefficient decoding unit is configured to decode the absolute value of the next non-zero
quantized transform coefficient, using the N-th estimated probability in the probability
model composed of the plurality of estimated probabilities.
11. The picture decoding apparatus according to claim 9 or 10, wherein when the quantity
of the estimated probabilities in the probability model is M, and N exceeds M, the
non-zero coefficient decoding unit is configured to decode the absolute value of the
next non-zero quantized transform coefficient, using the M-th estimated probability.
12. The picture decoding apparatus according to any one of claims 7 to 11, wherein the
non-zero coefficient decoding unit is configured to decode the non-zero quantized
transform coefficient in an order proceeding from the coefficient of a high frequency
component to the coefficient of a low frequency component.
13. A picture encoding method that is performed by a picture encoding apparatus, the picture
encoding method comprising:
a region division step for dividing an input picture into a plurality of regions;
a prediction step for producing a prediction signal for a pixel signal included in
one of the regions;
a residual signal production step for producing a residual signal between the prediction
signal and the pixel signal of the one region;
a transform step for frequency-transforming the residual signal of the one region
to produce transform coefficients;
a quantizing step for quantizing the transform coefficients of the one region to produce
quantized transform coefficients;
a zero/non-zero coefficient information encoding step for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and
a non-zero coefficient encoding step for encoding non-zero quantized transform coefficients
among the quantized transform coefficients of the one region; wherein
in the non-zero coefficient encoding step, the picture encoding apparatus selects,
from a probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for encoding an absolute value of the next non-zero quantized
transform coefficient of the one region, the estimated probability selected from the
probability model based on a quantity of the already encoded non-zero quantized transform
coefficients of the one region.
14. A picture encoding method that is performed by a picture encoding apparatus, the picture
encoding method comprising:
a region division step for dividing an input picture into a plurality of regions;
a prediction step for producing a prediction signal for a pixel signal included in
one of the regions;
a residual signal production step for producing a residual signal between the prediction
signal and the pixel signal of the one region;
a transform step for frequency-transforming the residual signal of the one region
to produce transform coefficients;
a quantizing step for quantizing the transform coefficients of the one region to produce
quantized transform coefficients;
a zero/non-zero coefficient information encoding step for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and
a non-zero coefficient encoding step for encoding non-zero quantized transform coefficients
of the one region; wherein
in the non-zero coefficient encoding step, the picture encoding apparatus selects,
from a probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for encoding an absolute value of the next non-zero quantized
transform coefficient of the one region, the estimated probability selected from the
probability model based on an absolute value of the already encoded non-zero quantized
transform coefficient of the one region.
15. The picture encoding method according to claim 13, wherein in the non-zero coefficient
encoding step, when the quantity of the already encoded non-zero quantized transform
coefficients is N, the picture encoding apparatus encodes the absolute value of the
next non-zero quantized transform coefficient, using the N-th estimated probability
in the probability model composed of the plurality of estimated probabilities.
16. The picture encoding method according to claim 15, wherein in the non-zero coefficient
encoding step, when a sum of the absolute value of the already encoded non-zero quantized
transform coefficient is N, the picture encoding apparatus encodes the absolute value
of the next non-zero quantized transform coefficient, using the N-th estimated probability
in the probability model composed of the plurality of estimated probabilities.
17. A picture decoding method that is performed by a picture decoding apparatus, the picture
decoding method comprising:
a data analysis step for extracting, from compressed data, encoded data of a residual
signal of a target region serving as a process target;
a zero/non-zero coefficient information decoding step for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding step for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing step for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient;
an inverse-transform step for inverse-transforming the reproduction frequency transform
coefficient of the region to produce a reproduction residual signal;
a prediction step for producing a prediction signal for a pixel signal included in
the region; and
a picture restoration step for adding the prediction signal of the region and the
reproduction residual signal to restore the pixel signal of the region; wherein
in the non-zero coefficient decoding step, the picture decoding apparatus selects,
from a probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for decoding an absolute value of the next non-zero quantized
transform coefficient of the region, the estimated probability selected from the probability
model based on a quantity of already decoded non-zero quantized transform coefficients
of the region.
18. A picture decoding method that is performed by a picture decoding apparatus, the picture
decoding method comprising:
a data analysis step for extracting, from compressed data, encoded data of a residual
signal of a target region serving as a process target;
a zero/non-zero coefficient information decoding step for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding step for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing step for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient;
an inverse-transform step for inverse-transforming the reproduction frequency transform
coefficient of the region to produce a reproduction residual signal;
a prediction step for producing a prediction signal for a pixel signal included in
the region; and
a picture restoration step for adding the prediction signal of the region and the
reproduction residual signal to restore the pixel signal of the region; wherein
in the non-zero coefficient decoding step, the picture decoding apparatus selects,
from a probability model composed of a plurality of estimated probabilities, an estimated
probability to be used for decoding an absolute value of the next non-zero quantized
transform coefficient of the region, the estimated probability selected from the probability
model based on an absolute value of an already decoded non-zero quantized transform
coefficient of the region.
19. The picture decoding method according to claim 17, wherein in the non-zero coefficient
decoding step, when the quantity of the already decoded non-zero quantized transform
coefficients is N, the picture decoding apparatus decodes the absolute value of the
next non-zero quantized transform coefficient, using the N-th estimated probability
in the probability model composed of the plurality of estimated probabilities.
20. The picture decoding method according to claim 18, wherein in the non-zero coefficient
decoding step, when a sum of the absolute value of the already decoded non-zero quantized
transform coefficient is N, the picture decoding apparatus decodes the absolute value
of the next non-zero quantized transform coefficient, using the N-th estimated probability
in the probability model composed of the plurality of estimated probabilities.
21. A picture encoding program that makes a computer function as:
a region division module for dividing an input picture into a plurality of regions;
a prediction module for producing a prediction signal for a pixel signal included
in one of the regions;
a residual signal production module for producing a residual signal between the prediction
signal and the pixel signal of the one region;
a transform module for frequency-transforming the residual signal of the one region
to produce a transform coefficient;
a quantizing module for quantizing the transform coefficient of the one region to
produce quantized transform coefficients;
a zero/non-zero coefficient information encoding module for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and
a non-zero coefficient encoding module for encoding non-zero quantized transform coefficients
among the quantized transform coefficients of the one region, wherein
the non-zero coefficient encoding module is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for encoding an absolute value of the next non-zero quantized transform
coefficient of the one region, the estimated probability selected from the probability
model based on a quantity of already encoded non-zero quantized transform coefficients
of the one region.
22. A picture encoding program that makes a computer function as:
a region division module for dividing an input picture into a plurality of regions;
a prediction module for producing a prediction signal for a pixel signal included
in one of the regions;
a residual signal production module for producing a residual signal between the prediction
signal and the pixel signal of the one region;
a transform module for frequency-transforming the residual signal of the one region
to produce transform coefficients;
a quantizing module for quantizing the transform coefficient of the one region to
produce quantized transform coefficients;
a zero/non-zero coefficient information encoding module for encoding information representing
the respective quantized transform coefficients of the one region as either a zero
coefficient or a non-zero coefficient; and
a non-zero coefficient encoding module for encoding non-zero quantized transform coefficients
among the quantized transform coefficients of the one region, wherein
the non-zero coefficient encoding module is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for encoding an absolute value of the next non-zero quantized transform
coefficient of the one region, the estimated probability selected from the probability
model based on an absolute value of an already encoded non-zero quantized transform
coefficient of the one region.
23. The picture encoding program according to claim 21, wherein when the quantity of the
already encoded non-zero quantized transform coefficients is N, the non-zero coefficient
encoding module is configured to encode the absolute value of the next non-zero quantized
transform coefficient, using the N-th estimated probability in the probability model
composed of the plurality of estimated probabilities.
24. The picture encoding program according to claim 22, wherein when a sum of the absolute
value of the already encoded non-zero quantized transform coefficient is N, the non-zero
coefficient encoding module is configured to encode the absolute value of the next
non-zero quantized transform coefficient, using the N-th estimated probability in
the probability model composed of the plurality of estimated probabilities.
25. A picture decoding program that makes a computer function as:
a data analysis module for extracting, from compressed data, encoded data of a residual
signal of a target region serving as a process target;
a zero/non-zero coefficient information decoding module for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding module for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing module for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient;
an inverse-transform module for inverse-transforming the reproduction frequency transform
coefficient of the region to produce a reproduction residual signal;
a prediction module for producing a prediction signal for a pixel signal included
in the region; and
a picture restoration module for adding the prediction signal of the region and the
reproduction residual signal to restore the pixel signal of the region; wherein
the non-zero coefficient decoding module is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for decoding an absolute value of the next non-zero quantized transform
coefficient of the region, the estimated probability selected from the probability
model based on a quantity of already decoded non-zero quantized transform coefficients
of the region.
26. A picture decoding program that makes a computer function as:
a data analysis module for extracting, from compressed data, encoded data of a residual
signal of a target region serving as a process target;
a zero/non-zero coefficient information decoding module for decoding the encoded data
of the residual signal of the region to restore information representing each quantized
transform coefficient of the region as either a zero coefficient or a non-zero coefficient;
a non-zero coefficient decoding module for decoding the encoded data of the residual
signal of the target region to restore a non-zero quantized transform coefficient;
a de-quantizing module for de-quantizing the decoded quantized transform coefficient
of the region to produce a reproduction frequency transform coefficient;
an inverse-transform module for inverse-transforming the reproduction frequency transform
coefficient of the region to produce a reproduction residual signal;
a prediction module for producing a prediction signal for a pixel signal included
in the region; and
a picture restoration module for adding the prediction signal of the region and the
reproduction residual signal to restore the pixel signal of the region; wherein
the non-zero coefficient decoding module is configured to select, from a probability
model composed of a plurality of estimated probabilities, an estimated probability
to be used for decoding an absolute value of the next non-zero quantized transform
coefficient of the region, the estimated probability selected from the probability
model based on an absolute value of an already decoded non-zero quantized transform
coefficient of the region.
27. The picture decoding program according to claim 25, wherein when the quantity of the
already decoded non-zero quantized transform coefficients is N, the non-zero coefficient
decoding module is configured to decode the absolute value of the next non-zero quantized
transform coefficient, using the N-th estimated probability in the probability model
composed of the plurality of estimated probabilities.
28. The picture decoding program according to claim 26, wherein when a sum of the absolute
value of the already decoded non-zero quantized transform coefficient is N, the non-zero
coefficient decoding module is configured to decode the absolute value of the next
non-zero quantized transform coefficient, using the N-th estimated probability in
the probability model composed of the plurality of estimated probabilities.