Language selection

Search

Patent 2105209 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 2105209
(54) English Title: BIT RATE CONTROL FOR HYBRID DPCM/DCT VIDEO CODEC
(54) French Title: COMMANDE DU DEBIT BINAIRE DANS UN CODEC VIDEO MDIC-TTN HYBRIDE
Status: Deemed Abandoned and Beyond the Period of Reinstatement - Pending Response to Notice of Disregarded Communication
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04N 19/126 (2014.01)
  • H04N 7/12 (2006.01)
  • H04N 19/625 (2014.01)
(72) Inventors :
  • WANG, LIMIN (Canada)
(73) Owners :
  • MINISTER OF INDUSTRY, SCIENCE AND TECHNOLOGY
(71) Applicants :
  • MINISTER OF INDUSTRY, SCIENCE AND TECHNOLOGY (Canada)
(74) Agent: MACERA & JARZYNA LLP
(74) Associate agent:
(45) Issued:
(22) Filed Date: 1993-08-31
(41) Open to Public Inspection: 1995-03-01
Examination requested: 1993-08-31
Availability of licence: N/A
Dedicated to the Public: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data: None

Abstracts

English Abstract


ABSTRACT
A method and apparatus are provided for regulating the
bit stream generated by a hybrid DPCM/DCT video codec so that
the compressed bit stream at a variable rate can be
transmitted over a fixed rate channel. The bit rate
regulation is accomplished by appropriately quantizing the DCT
coefficients where the quantization stepsize is obtained by
multiplying a fixed weighting matrix by a scaling factor. For
each frame, a single quantization scaling factor is determined
by iteratively comparing the output bit rate with the target
bit rate which is based upon the desirable bit rate, frame
code mode and scene changes. The iterative comparison
guarantees a quantization scaling factor which results in a
minimum accumulated bit rate difference from the target bit
rate for each frame.


Claims

Note: Claims are shown in the official language in which they were submitted.


THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. A bit rate control apparatus comprising:
means for setting a constant weighting matrix;
means for iteratively determining a scaling factor
which is independent of a channel buffer occupancy;
means for quantizing an input digital signal, where
a quantization step size is obtained by the factor
of -
(i) the weighting matrix, by
(ii) the scaling factor; and
means coupled to the quantizing means for
controlling an output bit rate.
2. A bit rate controller as recited in Claim 1, in which
means for comparing the resulting bit rate and target
bit rate are provided.
3. A bit rate controller as recited in Claim 1, in which
further means for macroblock intra-frame and inter-frame
coding are provided.
4. A bit rate controller as recited in claim 3, in which
means for adaptively allocating the target bit rate for
each frame based upon the desirable bit rate, frame code
mode, frame complexity and scene change are provided.
5. A bit rate controller as recited in Claim 3, in which
further means for balancing out the appropriately
assigned bit rates of the frames are provided.
6. A method of controlling an output bit rate generated by
a video codec, comprising the steps of:
setting a constant weighting matrix;
determining an appropriate scaling factor; and

establishing a quantization stepsize at which a
compressed bit stream can be transmitted over a
fixed rate channel.
7. A method as recited in Claim 6, said establishing step
comprising multiplying said weighting matrix by said
scaling factor to obtain said quantization stepsize.
8. A method as recited in Claim 6, said establishing step
including the sub steps of:
setting an appropriate target bit rate; and
comparing a resulting bit rate with said target bit
rate.

Description

Note: Descriptions are shown in the official language in which they were submitted.


1 0 ~
BIT RATE CONTROL FOR HYBRID DPCM/~C~ VID~O ÇQ~
The present invention relate~ to the field of electronic
tran~mission of digitized video signal~. More particularly,
the invention relates to the need to alleviate the channel
capacity requirements, by employing a bit compres~ion
technique which reduces data rate without losing too much of
the subjective quality of the images transmitted.
Generally speaking, hybrid DPCM/DCT i~ the most commonly-
used compre~sion technique for digitized video signals having
been adopted in many international standards, recommendations
and proposals. A hybrid DPCM/DCT video codec generates a
compressed bit stream at a variable rate which often needs to
be transmitted over a fixed rate channel.
A currently known method for regulating the variable rate
bit stream is to use a channel buffer. In order to ensure
that the buffer capacity is not exceeded, the buffer occupancy
information is fed back to the video encoder and i~ used to
adjust the quantization scaling factor. In particular, if the
buffer occupancy increa~es, the scaling factor is increa~ed,
which results in a decrease in bit rate. Otherwise, the
scaling factor is decrea~ed, resulting in an increase in bit
rate.
The main difficulty with the buffering technique lies in
the implementation complexity. Typical technical i~sues
associated with the channel buffering technique include the
size of the cha1mel buffer, and the frequency and degree of
adjustment of quantization levels. In general, the more often
the quantization is adjusted, the smoother the variation of
the output bit rate and the smaller the required buffer size.
However, this may result in nonuniform distortion over each
frame. For example, two identical blocks in a frame may be
assigned two different quantization due to the different
buffer occupancy, implying two different quality for the two
identical block~. On the other hand, if the adjustment of

~1 0~209
quantization is based upon a longer period of time, a larger
buffer size may be required to hold the larger variation of
the output bit stream.
The object of the present invention is to provide for a
method for regulating the bit stream generated by the hybrid
DPCM/DCT video codec. Bit rate regulation is accomplished by
appropriately quantizing the DCT coefficients where the
quantization stepsize is obtained by multiplying a fixed
weighting matrix by a variable scaling factor. The weighting
matrix i9 intended to address the human visual characteristics
in the DCT domain while the scaling factor controls the actual
output bit rate. For each frame, the scaling factor is
determined by iteratively comparing the output bit rate with
a target bit rate which is based upon the desirable bit rate,
frtame code mode, frame complexity and ~cene change.
Therefore, since the weighting matrix is fixed, it is the
scaling factor that controls the output bit rate and the
quality of the reconstructed images. The smaller the scaling
factor, the higher the quality and the higher the bit rate.
The iterative procedure, which is independent of the channel
buffer occupancy, guarantees a quantization scaling factor
resulting in a bit rate closest to the target bit rate. Since
a single scaling factor is used for each frame, a relatively
uniform quality over each frtame results.

J ~ ~1 9
BRIEF DES~RIPTI~N OF THE D~RA~IN~S
This invention i~ pointed out with particularity in the
appended claims. The above and further advantages of this
invention may be better understood by referring to the
following description taken in conjunction with the
accompanying drawings, in which:
Fig. 1 is a simplified block diagram of an encoder based
on hybrid DPCM/DCT video coding.
Fig. 2 is an exemplary mapping characteristic of the
quantization scaling factor.
":. `
: . .

~1~J2~
--4--
DETAI~ED DESCRIPTION
Referring first to Fig.1, there i9 shown a block diagram
of an encoder based on hybrid DPCM/DCT video coding arranged
in accordance with the present invention.
A video signal on line 1 is first input and i8 then
partitioned, by a Discrete Cosine Transform (DCT) 2 used to
transform spatial domain signals into frequency domain
signals, into macroblocks consisting of one luminance block
of 16 x 16 pixel~, which is further divided into four 4 x 4
blocks, and two chrominance blocks of 8 x 8 pixels.
Block matching motion estimation 3 is performed on the
16 x 16 luminance block for each macroblock where a closest
macroblock is determined from the reconstructed previous frame
4 within a specific tracking range of up to ~ 15 x + 15
pixels. The criterion used to determine the "closest"
macroblock is the absolute difference, given by,
ABS(V~h) = ~ I Xm til~ m-i ti~VI j+h) I tl)
where xm (i,j) is the luminance pixel value in the macroblock
in the current frame, and ~m-l ti+v, j+h) is the corresponding
luminance pixel in the macroblock that is shifted v pixel
vertically and h pixels horizontally in the previous frame.
The vector, tv*, h*), which yields the minimum absolute
difference,
ABS tv*, h*) = min V,h ABS tv,h) t2)
is called the motion vector. The macroblo~k in the previous
frame specified by the motion vector, tv*, h*), is taken as
the prediction for the macroblock in the current frame.
~ Generally speaking, due to the temporal correlation
between successive frames during continuous scenes, the
current macroblock can be fairly well represented by its
prediction.
However, when there is a major change in picture content
due to uncovered background, fast movement or scene change
little temporal correlation is left to be exploited, implying

2 ~ 9
--5--
that a poor prediction for the current block results. In such
situations, the macroblock should be coded in intra-frame
mode, instead of the inter-frame mode. The decision of
inter/intra frame coding for each macroblock is based on
energy comparison i.e. if the energy of the prediction error
macroblock, a2 difference block, is greater than that of the
original macroblock a2 original block,
1.5 o2 difference block > o2 original block, (3)
intra-frame code mode is selected; otherwise, inter-frame code
mode is used. The criterion of the above equation favours the
intra-frame code mode by a factor of 1.5 because there usually
exists a higher degree of spatial correlation in the original
blocks than in the difference blocks with a similar energy
level. The higher spatial correlation of the original
macroblock can be well addressed by the following DCT in the
coding loop.
The difference between the original block and its
prediction in inter-frame mode (or the original macroblock in
intra-frame mode) undergoes the two dimensional DCT of 8 x 8. -
The DCT coefficients are then quantized.
The quantization 5 step sizes, ql~, i, j = 0, 1, 2, 3, 4,
5, 6, 7, are obtained by multiplying a weighting matrix of
i, j = 0, l, 2, 3, 4, 5, 6, 7, by a scaling factor, Q,
i.e. -
25qV-[ ~ ~ int~
(4)
where [a] int is the truncation of (a + 0.5). The weighting ~-
matrix is designed to address the human visual characteristic
in the DCT domain. For each frame, a single quantization
scaling factor is issued for all the blocks, the reason being
. ~ :

21~S2~9
that is to maintain a relatively uniform distortion or quality
over each frame.
The quantized DCT coefficients are scanned along a zigzag
path and the resulting sequence usually contains long strings
of zeros especially toward the end of the sequence. The
sequence is entropy encoded where each run of consecutive
zeros and the following non-zero coefficient value is coded
as an event.
To synchronize the encoder and decoder, the reference
frame for motion compensation 6 should be identical for both
encoder and decoder. The inverse operation of quantization
7 and DCT 8 coefficients, generates the reconstructed frame
9. That reconstructed frame is then stored in the frame
buffer and use as the reference for the next frame.
A quantization scaling factor is determined for each
frame for a given target bit rate. The quantization scaling
factor selection 10 is an extra sub-loop attached to the
hybrid DPCM/DCT codec which involves only quantization 5 and
variable length coding (VLC) 11. The iteration starts with
the quantization scaling factor used for the previous frame.
The output bit rate generated by variable length coding is
compared with the target bit rate. If the output bit rate 12
is higher ~han the target bit rate, the quantization scaling
factor is increased; otherwise it is decreased. The new
quantization scaling factor is then applied to the DCT
coefficients, which results in a new compressed bit stream.
In general, the new compres~ed bit rate should be closer to
the target bit rate. The quantization and comparison process
continues until the quantization scaling factor re~ulting in
a bit rate closest to the target bit rate is found.
Note that due to the continuity of natural video signals,
the quantization scaling factor used for the previous frame
is often fairly good for the current frame. This implies that
the number of iteration~ required for determining the
quantization scaling factor may be very small.

2 1 ~ ~ 2 ~ 9
The input experience is segmented into groups of N
frames. For each gxoup, the first frame i9 coded in intra-
frame mode and the other~ are in inter-frame mode. In order
to achieve a similar image quality, intra-frame coding usually
requires more bits than inter-frame coding because intra-frame
does not take advantage of the temporal correlation. To
address the difference in bit rate required for the two types
of frames, two target bit rates are given as follows: -
J BintrA target .~ Bd~sirable
¦ Binte~_target~ +N-lBdeg
(5) '~:~
where Bde81rabl0 is the desirable bit rate in bits per group and
a i5 the ratio of Bintrafr~ over Binterfr~e- A logic~l bit
allocation over the frames within each group is given by
J Bk ( ) tllrg~t ~ Bi~trA targ~t
¦ B~(i) target ~ Binter_ta~get~ 2, N-1 -
(6)
whçre Bk(i) iS the target bit rate assigned to the ith frame ~
of group k. -
I When a scene change occurs, it is necessary to code the
change in intra-frame mode as it has little correlation with
the previous frameO Consequently, a group containing scene
changes is allocated more bits because more than one frame in
the group is assigned the intra-frame target bit rate. This
results in peaks in the output bit rate and in order to avoid
the po~sible build up in the channel buffer, the extra intra-

~3~V3
frame target bit rates assigned to the scene change frameshave to be balanced. The adopted method is to code the fir~t
frames of the following groups in inter-frame mode, in~tead
of intra~rame mode, provided they are not scene changes,
until all the extra assignments of intra-frame target bit rate
are balanced.
Let SC be the scene change index indicating the number
of extra assignments of intra-frame target bit rate up to
group k. The procedure for assigning either intra or inter-
frame target bit rate to the first frame of group k + 1 canbe generalized as follows:
1. If SC = 0, implying that all extra assignments of intra-
frame target bit rate have already been balanced, the
first frame of group k ~ 1 is assigned the intra-frame
target bit rate and coded in intra-frame mode.
2. If SC ~ 0, implying that all extra assignments of intra-
frame target bit rate need to be balanced, the first
frame of group k + 1 is assigned the inter-frame target
bit rate and coded in inter-frame mode provided it is
not a scene change, the scene change index is then
decreased by 1,
SC = SC - 1 (7)
as one extra assignment of the intra-frame target bit
rate has been absorbed. However, if the first frame is
also a scene change, it is assigned the intra-frame bit
rate and coded in intra-frame mode. The scene change
index therefore remains unchanged.
~he scene change index is then updated by
i SC = SC + n ~8)
where n is the number of scene changes (except the first
fra~.e) occurring in group k + 1.
A good choice of a is important for obtaining good
quality images as a controls the bit allocation over intra-
and inter~frames, as indicated in equation (5). It is
desirable to have a bit allocation so that equal distortion
-:

21~S209
g
or quality for both intra- and inter-frames result~. However,
the numbers of bits required for intra- and inter-frames for
a given quality vary from scene to scene. To follow this
variation, a is updated on a group-by-group basis according
to the frame complexity measure. Here, the frame complexity
measure is defined as the product of the bit rate generated
by encoding the frame and the quantization scaling factor
used. Specifically, let ak1 be the a value for group k-1, the
a value for each group k is given by
Bintr~xQintra sc= O
ak ~ Binte~XQinter
ak l, SC~O
(9)
where Qintra and Bintra are, respectively, the scaling factor and
the bit rate for the most recent intra-frame before group k,
and Qlnter and Bint~r are the average scaling factor and bit rate
15 for the following inter-frames up to group k. - - -
There are a few remark~ on equation (9~. First of all,
if the scaling factors for intra- and inter-frames are -
identical, i.e. Qintr~ = Qint~r/ the a value will be equal to the
ratio of the intra-frame bit rate and the average inter-frame
bit rates, i.e.,
:
Bintra :
a
Binter ( 10 ) .
'~' - '~ -
Since the fluctuation of the output bit rate can be kept
within a narrow margin, the a value will change only slightly.

o ~
-10--
Secondly, if the actual bit rates are equal to the target bit
rates, i.e.,
J Bintra ~ Bintr~tar~et
~ Bint~r ~ ~ ~nt~_ ta~get ( 1 1 )
the a value for group k is determined by
Cl~k ~ r~k 1 Qintra
Qin ter
(12)
That is, a will be corrected by the ratio of intra- and inter-
frame scaling factors. For example, if Qintr4 ~ Qinter~ a will
be increased. This is quite reasonable because Qlntra > Qint~r
means more quantization distortion may be introduced for the
intra-frame using the bit allocation controlled by ak1. An
increase in a will allocate more bits to the intra-frame and
will reduce the intra-frame scaling factor for the new groups.
Thirdly, if SC ~ O, a will remain unchanged because the
following new groups need to balance the extra as~ignments of
intra-frame target bit rates caused by scene changes.
Referring now to Fig. 2, there is shown an exemplary
mapping characteristic of the quantization scaling factor.
The output bit rate, Bo~ is obtained by using the scaling
factor, QO (the scaling factor used for the previous frame).
The output bit rate, Bo~ is seen to be less than the target
bit rate, Bt4rget, or the bit rate difference, ~0 = Bo -
Btarget < The guantization scaling factor is therefore
reduced by one adjusting unit, ~q. The new quantization
scaling factor, Q1, = Q~ - ~q, is now applied to the DC~
coefficients, generating a new output bit rate Bl. The new
output bit rate, B1, is seen to be closer to the target bit

- `
210~2~9
~11-
rate, but still less than the target bit rate, Bt~rg~t~ The
quantization scaling factor needs to be further decreased by
. The process continues until the bit rate and scaling
factor curve, B1 (Q1), crosses the straight line, B = Bt~rg~t ;
that is, the current and previous bit rate difference have the
opposite signs. Now, one of the last two quantization scaling
factors, Q2 and Q3, which result in the two closest bit rates -;~
to the target bit rate, will be selected depending upon their
impact on the bit rate regulation. That is, one resulting in
a smaller overall accumulated difference in bit rate is
selected.
The procedure for determining the quantization scaling
factor for the next frame k + 1 can be summarized by the
following algorithmic form: -
lS 1. Set the iteration index, i = 0, and the bit rate
difference, At1 = 0. Take the quantization scaling .
factor used for the previous frame a~ the initial one
for frame k + 1, Q1-
2. Apply the quantization scaling factor, Qi,to the DCT
coefficients, resulting in the output bit rate, B1. -~ .
3. Calculate the difference between the output bit rate, B1,
and the target bit rate, Btarg~t
~i = Bi ~ Bt~lrget ( 13 ) -
If the bit rate difference, ~i, has a different sign
from the previous bit rate difference, ~ gO to step
5; otherwise continue. -
4. If ~1 > 0, increase Qi by one adjusting unit of ~9~ Qi =
Qi + ~q, otherwise decrease Qi by ~q, Qi = Qi - ~q- Let
i = i + 1. Go back to Step 2.
5- Ifl ~ Btotal (k) + ~1 I c I Btotal (k~ + ~ , select Q1 as
the final quantization scaling factor; otherwise, Qil. - .
The finally-selected quantization scaling factor is ~ ~.
applied to the DCT coefficients, which results in the actual -
output bit rate, .

r
soutput (k+1) = ¦ B1, for Q1
Bil, for Qi1 (14)
and the bit rate difference,
+l) ~ Boutput(k+l)~Btarget ~(Bi l-Btal~t~ for Pi l
(15)
The ~otal accumulated difference in bit rate up to frame k + 1
is therefore updated by
Btotal ( k+ 1 ) = 1~ BtOtal ( k ) + ~ B ( k+ 1 ) . ( 16 )

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

2024-08-01:As part of the Next Generation Patents (NGP) transition, the Canadian Patents Database (CPD) now contains a more detailed Event History, which replicates the Event Log of our new back-office solution.

Please note that "Inactive:" events refers to events no longer in use in our new back-office solution.

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Event History , Maintenance Fee  and Payment History  should be consulted.

Event History

Description Date
Inactive: IPC deactivated 2014-05-17
Inactive: IPC deactivated 2014-05-17
Inactive: IPC deactivated 2014-05-17
Inactive: IPC from PCS 2014-02-01
Inactive: First IPC from PCS 2014-02-01
Inactive: IPC from PCS 2014-02-01
Inactive: IPC expired 2014-01-01
Inactive: IPC expired 2014-01-01
Inactive: IPC expired 2014-01-01
Inactive: IPC from MCD 2006-03-11
Inactive: IPC from MCD 2006-03-11
Inactive: IPC from MCD 2006-03-11
Inactive: Multiple transfers 2002-10-15
Application Not Reinstated by Deadline 1998-08-31
Time Limit for Reversal Expired 1998-08-31
Inactive: Office letter 1997-12-16
Deemed Abandoned - Failure to Respond to Maintenance Fee Notice 1997-09-02
Application Published (Open to Public Inspection) 1995-03-01
Request for Examination Requirements Determined Compliant 1993-08-31
All Requirements for Examination Determined Compliant 1993-08-31

Abandonment History

Abandonment Date Reason Reinstatement Date
1997-09-02
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
MINISTER OF INDUSTRY, SCIENCE AND TECHNOLOGY
Past Owners on Record
LIMIN WANG
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Cover Page 1995-03-01 1 59
Abstract 1995-03-01 1 35
Claims 1995-03-01 2 96
Drawings 1995-03-01 2 63
Descriptions 1995-03-01 12 690
Representative drawing 1998-07-29 1 12
Courtesy - Abandonment Letter (Maintenance Fee) 1997-10-06 1 188
Correspondence 1997-12-16 1 8
Fees 1996-06-10 1 41
Fees 1995-08-08 1 42
Examiner Requisition 1997-10-21 3 124