Back to EveryPatent.com
United States Patent |
5,701,159
|
Ohira
,   et al.
|
December 23, 1997
|
Digital image decoding apparatus
Abstract
Data which has been decoded by a decoding portion 101 are compressed by a
compressing portion 102 and stored in a prediction/display frame memory
portion 103. From the data stored in the prediction/display frame memory
portion 103, any data required for decoding other frames in the decoding
portion 101 are decompressed through a decompressing A portion 104 and
supplied to the decoding portion 101. Alternatively, data to be displayed
is read from the prediction/display frame memory portion 103, decompressed
at a decompressing B portion 105 and supplied to a display apparatus.
Writing to and reading from the above-mentioned prediction/display frame
memory portion 103 is controlled by an address controlling portion 106.
Since compressed data are stored in the prediction/display frame memory
portion 103, the memory capacity can be decreased.
Inventors:
|
Ohira; Hideo (Tokyo, JP);
Murakami; Tokumichi (Tokyo, JP);
Asai; Kohtaro (Tokyo, JP);
Shimada; Toshiaki (Tokyo, JP)
|
Assignee:
|
Mitsubishi Denki Kabushiki Kaisha (Tokyo, JP)
|
Appl. No.:
|
715161 |
Filed:
|
September 17, 1996 |
Foreign Application Priority Data
| Mar 04, 1996[JP] | HEI 8-046345 |
Current U.S. Class: |
375/240.12; 375/240.03; 375/240.24 |
Intern'l Class: |
H04N 007/50 |
Field of Search: |
348/421,410,404,405,412,415,420
|
References Cited
U.S. Patent Documents
5543843 | Aug., 1996 | Kato | 348/421.
|
Other References
SGS-Thomson Microelectronics STI3500 Mpeg-2/CCIR 601 Video Decoder, Apr.
1994.
|
Primary Examiner: Britton; Howard W.
Attorney, Agent or Firm: Wolf, Greenfield & Sacks, P.C.
Claims
What is claimed is:
1. A digital image decoding apparatus, said apparatus comprising:
a decoding circuit for decoding inter-frame coded image coded data at a
block unit and obtaining decoded data;
a compressing circuits for compressing the block unit decoded data obtained
by the decoding circuits and obtaining compressed data;
a prediction frame memory for storing at least one image frame of block
unit compressed data obtained by the compressing circuits;
a decompressing circuits for decompressing the compressed data which has
been stored in the prediction frame memory; and
an address controlling circuits for controlling the writing of the
compressed data to the prediction frame memory and the reading of the
compressed data from the prediction frame memory.
2. A digital image decoding apparatus according to claim 1, further
comprising
a display frame memory for storing at least one image frame of block unit
compressed data obtained by the compressing circuits, said image frame to
be used for display only.
3. A digital image decoding apparatus according to claim 1, wherein
the compressing circuits deems one of the pixels which constitute the block
as a standard pixel and first quantizes the data of the standard pixel,
and then quantizes pixels other than the standard pixel based on the
differences of the coded data of positionally adjoining pixels.
4. A digital image decoding apparatus according to claim 1, wherein
the compressing circuits selects one standard pixel from each pixel row of
the block, and first quantizes the data of the standard pixel, and then
quantizes pixels other than the standard pixel based on the differences of
the coded data of adjoining pixels within the pixel row to which the
pixels belong.
5. A digital image decoding apparatus according to claim 1, wherein
the compressing circuits allocates a small amount of information to a high
frequency signal and allocates a large amount of information to a low
frequency signal when compressing.
6. A digital image decoding apparatus according to claim 1, further
comprising
a block data amount controlling circuits for controlling the compressing
rate to ensure that the data amount of each block which has been
compressed by the compressing circuits will be less than a predetermined
data amount.
7. A digital image decoding apparatus according to claim 6, wherein
the compressing circuits compresses the data of each block, both by
a first compressing method in which one of the pixels which constitute the
block is deemed a standard pixel and the data of pixels other than the
standard pixel are expressed as differences of the coded data between
adjoining pixels, and a short word-length is allocated for these
differences of the coded data when the differences are close to zero and a
long word-length is allocated for the differences which are larger,
and by a second compressing method in which one of the pixels which
constitute the block is deemed a standard pixel and first the data of the
standard pixel is quantized, and then the data of pixels other than the
standard pixel are quantized, with a predetermined quantization bit
number, based on the differences of the coded data of adjoining pixels;
and
a block data amount controlling circuits operates such that, if the data
amount of the data which have been compressed by the first compressing
method of the compressing circuit is less than a predetermined value, an
instruction is sent to the compressing circuits to output the data
resulting from the first compressing method and, if the data amount of the
data which have been compressed by the first compressing method is greater
than the predetermined value, the block data amount controlling circuits
chooses a quantization bit number to ensure that the data amount will be
less than the predetermined value, and sends an instruction to the
compressing means to compress the data resulting from the second
compressing method using this chosen quantization bit number.
8. A digital image decoding apparatus according to claim 6, wherein
the compressing circuits compresses the data of each block, both by
a first compressing method in which one of the pixels which constitute the
block is deemed a standard pixel and the data of pixels other than the
standard pixel are expressed as differences of the coded data between
adjoining pixels, and a short word-length is allocated for these
differences of the coded data when the differences are close to zero and a
long word-length is allocated for differences which are larger,
and by a second compressing method in which one pixel in each of the pixel
rows of the block is deemed a standard pixel and first, the data of the
standard pixel is quantized, and then the data of pixels other than the
standard pixel are quantized, with a predetermined quantization bit
number, based on the differences of the coded data of adjoining pixels
within the pixel row to which the pixel belongs; and
the block data amount controlling circuits operates such that, if the data
amount of the data which have been compressed by the first compressing
method of the compressing circuit is less than the predetermined value, an
instruction is sent to the compressing circuits to output the data
resulting from the first compressing method and, if the data amount of the
data which have been compressed by the first compressing method is greater
than the predetermined value,
the block data amount controlling means chooses a quantization bit number
to ensure that the data amount will be less than the predetermined data
amount, and sends an instruction to the compressing circuits to compress
the data resulting from the second compressing method using the chosen
quantization bit number.
9. A digital image decoding apparatus according to claim 1, further
comprising
a frame data amount controlling circuit for controlling the compressing
rate to ensure that the data amount of each frame which has been
compressed by the compressing circuits will be less than a predetermined
image frame data amount.
10. A digital image decoding apparatus according to claim 9, wherein
the frame data amount controlling circuits compares the total data amount
at a predetermined time during the compression operation of one image
frame, with a standard data amount at the predetermined time, and operates
such that, if the total data amount has exceeded the standard data amount,
the maximum permitted data amount value of each block in the subsequent
compressing is set to a lower value, and, if the total data amount is less
than the standard data amount, the maximum permitted data amount value of
each block in the subsequent compressing is set to a higher value.
11. A digital image decoding apparatus according to claim 10, wherein
the apparatus also has a block data amount controlling circuits for
controlling the compressing rate to ensure that the data amount of each
block compressed by the compressing circuits is less than a predetermined
data amount; and wherein
the compressing means compresses the data of each block both by
a first compressing method in which one of the pixels which constitute the
block is deemed a standard pixel and the data of pixels other than the
standard pixel are expressed as differences of the coded data between
adjoining pixels, and a short word-length is allocated for these
differences of the coded data when the differences are close to zero and a
long word-length is allocated for the differences which are larger,
and by a second compressing method in which one pixel in each of the pixel
rows of the block is deemed a standard pixel and first, the data of the
standard pixel is quantized, and then the data of pixels other than the
standard pixel are quantized, with a predetermined quantization bit
number, based on the differences of the coded data of adjoining pixels
within the pixel row to which the pixel belongs.
12. A digital image decoding apparatus according to claim 10, wherein
the apparatus also has a block data amount controlling circuits for
controlling the compressing rate to ensure that the data amount of each
block compressed by the compressing circuits is less than a predetermined
data amount; and wherein
the compressing means compresses the data of each block both by
a first compressing method in which one of the pixels which constitute the
block is deemed a standard pixel and the data of pixels other than the
standard pixel are expressed as differences of the coded data between
adjoining pixels, and a short word-length is allocated for these
differences of the coded data when the differences are close to zero and a
long word-length is allocated for the differences which are larger,
and by a second compressing method in which one pixel in each of the pixel
rows of the block is deemed a standard pixel and first, the data of the
standard pixel is quantized, and then the data of pixels other than the
standard pixel are quantized, with a predetermined quantization bit
number, based on the differences of the coded data of adjoining pixels
within the pixel row to which the pixel belongs; and
the block data amount controlling circuit operates such that, if the data
amount of the data which have been compressed by the first compressing
method of the compressing circuits is less than the maximum permitted
value set by the frame data amount controlling circuit, the block data
amount controlling circuits sends an instruction to the compressing
circuit to output the data resulting from the first compressing method,
and, if the data amount of the data which have been compressed by the first
compressing method is greater than the maximum permitted value set by the
frame data amount controlling circuit, the block data amount controlling
circuits chooses a quantization bit number to ensure that the data amount
will be less than the maximum permitted value set by the frame data amount
controlling circuit, and sends an instruction to the compressing circuits
to compress the data resulting from the second compressing method using
the chosen quantization bit number.
Description
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to a digital image decoding
apparatus and more particularly to a digital image decoding system used in
digital CATV and digital broadcasting systems.
2. Description of the Prior Art
FIGS. 15 and 16 show an LSI block diagram and an external memory map based
on those described in the manual for SGS-Thomson Microelectronics image
processing LSI "STi3500 (trade name)".
As FIG. 15 shows, a FIFO memory 502, a start code detection portion 503, a
memory I/O unit 504, a variable-length decoding portion 505, a decoding
processing portion 506 and a display processing portion 507 are connected
through data lines 552 to a microcomputer bus 551 and the microcomputer
bus 551 is connected to a microcomputer interface 501 through an interface
line 550. The FIFO memory 502, start code detection portion 503, memory
I/O unit 504, variable-length decoding portion 505, decoding processing
portion 506 and display processing portion 507 are also connected through
data lines 553 to an external memory bus 554 and the external memory bus
is connected to an eternal memory 508.
As FIG. 16 shows, the external memory 508 has a bit buffer region 601, an
on-screen display (hereinafter OSD) region 602, a first prediction frame
memory region 603, a second prediction frame memory region 604 and a
display frame memory region 605.
Coded data which has accumulated in the bit buffer region 601 of the
external memory 508 is first sent to the start code detection portion 503
through the external memory bus 554. When the start code detection portion
503 detects a start code, the coded data which follows the start code is
sent through the FIFO memory 502 to the variable-length decoding portion
505, where variable-length decoding is carried out. Then, image decoding
is carried out at the decoding processing portion 506 and a decoded image
is written into the external memory 508 through the memory I/O unit 504.
The external memory 508 uses the first prediction frame memory region 603,
second prediction frame memory region 604 and display frame memory region
605 to store the decoded image. In particular, image data for use in the
prediction of other frames is written either in the first prediction frame
memory region 603 or the second prediction frame memory region 604, and
data for display use only is written in the display frame memory region
605.
The data written in the display frame memory region 605 are read in
synchronization with a horizontal synchronization signal such as a
television picture and output through the external memory bus 554 to the
display processing portion 507.
Display data for character data and the like are stored in the OSD region
602 within the external memory 508, and similar to the data in the display
frame memory region 605, are accessed when required and supplied through
the external memory bus 554 to the display processing portion 507. In the
display processing portion 507, if the data from the OSD region 602 are
valid, they are overlaid on the data from the display frame memory region
605 and are output to a display (not shown).
Thus a display picture is obtained based on the data stored in the external
memory 508.
In the above conventional digital image decoding apparatus all data
required when decoding must be stored in the external memory 508. In the
case of data which has been inter-frame coded, in order to decode the
image data of the relevant frame all the data of the other frames used in
the decoding of the relevant frame must also be stored.
This has led to the problem that, because storage of an enormous quantity
of data is required for decoding, both the capacity of the external memory
508 and the amount of hardware required for implementation are very large.
SUMMARY OF THE INVENTION
It is therefore the object of the present invention to eliminate the
problems described above by providing a digital image decoding apparatus
which reduces the amount of hardware required by moderating the amount of
memory required.
(1) A first digital image decoding apparatus of the present invention
includes a decoding means for decoding, into block units, image coded data
which has been inter-frame coded to obtain decoded data, a compressing
means for compressing the decoded data to obtain block unit compressed
data, a prediction frame memory means for retaining at least one image
frame of the block unit compressed data, a decompressing means for reading
and decompressing the compressed data which has been retained by the
prediction frame memory means for use with the decoding means, and an
address controlling means for controlling the reading and writing of
compressed data to and from the prediction frame memory means.
In this configuration, data which have been decoded by the decoding means
are compressed by the compressing means. Therefore the data which is
stored in the prediction frame memory means is data which have been
compressed by the compressing means. Consequently, a smaller capacity
prediction frame memory means is sufficient. Moreover, since the capacity
of the prediction frame memory means can be reduced, the data range for
addressing, reading or writing is also reduced and the entire apparatus
can be scaled-down. Thus, the hardware configuration of the digital image
decoding apparatus is simplified, processing can be accomplished at higher
speed, and the processing of moving image data can be more efficiently
carried out.
(2) In another digital image decoding apparatus of the present invention,
the apparatus described in above-mentioned item (1) also has a display
frame memory means for retaining at least one image frame of the block
unit compressed data obtained by the compressing means which is to be used
for display only.
In this configuration, as with the prediction frame memory means, the
capacity of the display frame memory means can be reduced and the entire
apparatus can be scaled-down. Thus the hardware configuration of the
digital image decoding apparatus is simplified, processing can be
accomplished at higher speed and the processing of moving image data can
be more efficiently carried out.
(3) In another digital image decoding apparatus of the present invention,
the apparatus described in above-mentioned item (1) is configured such
that the compressing means deems one of the pixels which constitute the
block as a standard pixel and first quantizes the data of the standard
pixel, and then quantizes pixels other than the standard pixel based on
the differences of the coded data of positionally adjoining pixels.
In this configuration, quantizing of the differences of the coded data of
positionally adjoining pixels other than the standard pixel is carried
out. Since the data for adjoining pixels usually do not differ greatly,
even if the number of bits used when quantizing the differences of the
coded data is reduced, any image deterioration resulting from this
compression will not be extensive. Therefore compression can be carried
out with little deterioration.
(4) In another digital image decoding apparatus of the present invention,
the apparatus described in above-mentioned item (1) is configured such
that the compressing means deems one standard pixel in each pixel row
quantizes of the block, and first the data of the standard pixel, and then
quantizes pixels other than the standard pixel based on the differences of
the coded data of adjoining pixels within the pixel row to which the
pixels belong.
In this configuration, quantizing of the differences of the coded data of
adjoining pixels other than the standard pixel is carried out. Since the
data for adjoining pixels usually do not differ greatly, even if the
number of bits used when quantizing the differences of the coded data is
reduced, any image deterioration resulting from this compression will not
be extensive. Therefore compression can be carried out with little
deterioration.
(5) In another digital image decoding apparatus of the present invention,
the apparatus described in above-mentioned item (1) is configured such
that the compressing means allocates a small amount of information to a
high frequency signal and allocates a large amount of information to a low
frequency signal when compressing.
In this configuration, by allocating a large amount of information to a low
frequency signal, which has a large degree of influence on image quality,
and allocating a small amount of information to a high frequency signal,
which has a minor influence on image quality, an image can be compressed
with little deterioration. Thus compression can be carried out with little
image deterioration.
(6) In another digital image decoding apparatus of the present invention,
the apparatus described in above-mentioned item (1) also includes a block
data amount controlling means which controls the compressing rate so that
the data amount of each block compressed by the compressing means will be
less than a predetermined data amount.
In this configuration, the compressing rate can be altered in accordance
with the image information and any deterioration in image quality can be
limited. For instance, provided that the amount of information after
compressing is less than the predetermined data amount, compressing
processing is carried out using a method with little image deterioration.
Compressing processing using a method which can cause higher image
deterioration is used only in cases in which the predetermined value is
exceeded. Consequently, the overall deterioration in image quality can be
limited when compared to cases where a single ordinary compression method
is used.
(7) In another digital image decoding apparatus of the present invention,
the compressing means and the block data amount controlling means of the
apparatus described in item (6) are configured as described below.
The compressing means compresses the data of each block both by: a first
compressing method in which one of the pixels which constitute the block
is deemed a standard pixel and the data of pixels other than the standard
pixel are expressed as differences of the coded data between adjoining
pixels, and a short word-length is allocated for these differences of the
coded data when the differences are close to zero and a long word-length
is allocated for the differences which are larger; and by a second
compressing method in which one of the pixels which constitute the block
is deemed a standard pixel and first the data of the standard pixel is
quantized, and then the data of pixels other than the standard pixel are
quantized, with a predetermined quantization bit number, based on the
differences of the coded data of adjoining pixels.
Moreover, if the data amount of the data which have been compressed by the
first compressing method of the compressing means is less than a
predetermined value, the block data amount controlling means sends an
instruction to the compressing means to output the data resulting from the
first compressing method, and, if the data amount of the data which have
been compressed by the first compressing method is greater than the
predetermined value, the block data amount controlling means chooses a
quantization bit number to ensure that the data amount will be less than
the predetermined value, and sends an instruction to the compressing means
to compress the data resulting from the second compressing method using
the chosen quantization bit number.
In this configuration, using the first compressing method there is little
image deterioration and only minimal compressing is carried out, and using
the second compressing method there is greater image deterioration but
compressing can be carried out precisely. As such, it is possible to use
the method which is appropriate to the image which is to be compressed. In
addition, in the second compressing method, since the quantization bit
number allocated to the differences of the coded data can also be
controlled as appropriate, the compressing rate can be even further
suitably altered. Thus by controlling the compressing rate to be
appropriate for the image information which is to be compressed, even when
using a memory with a comparatively small capacity, compression can be
carried out with little image deterioration.
(8) In another digital image decoding apparatus of the present invention,
the compressing means and the block data amount controlling means of the
apparatus described in item (6) are configured as described below.
The compressing means compresses the data of each block both by: a first
compressing method in which one of the pixels which constitute the block
is deemed a standard pixel and the data of pixels other than the standard
pixel are expressed as differences of the coded data between adjoining
pixels, and a short word-length is allocated for the differences of the
coded data when the differences are close to zero and a long word-length
is allocated for the differences which are larger; and by a second
compressing method in which one pixel in each of the pixel rows of the
block is deemed a standard pixel and first the data of the standard pixel
is quantized, and then the data of pixels other than the standard pixel
are quantized, with a predetermined quantization bit number, based on the
differences of the coded data of adjoining pixels within the pixel row to
which the pixel belongs.
Moreover, if the data amount of the data which have been compressed by the
first compressing method of the compressing means is less than the
predetermined value, the block data amount controlling means sends an
instruction to the compressing means to output the data resulting from the
first compressing method, and, if the data amount of the data which have
been compressed by the first compressing method is greater than the
predetermined value, the block data amount controlling means chooses a
quantization bit number to ensure that the data amount will be less than
the predetermined value, and sends an instruction to the compressing means
to compress the data resulting from the second compressing method using
the chosen quantization bit number.
In this configuration, using the first compressing method there is little
image deterioration and only minimal compressing is carried out, and using
the second compressing method there is greater image deterioration but
compressing can be carried out precisely. As such, it is possible to use
the method which is appropriate to the image which is to be compressed. In
addition, in the second compressing method, since the quantization bit
number allocated to the differences of the coded data can also be
controlled as appropriate, the compressing rate can be even further
suitably altered. Thus by controlling the compressing rate to be
appropriate for the image information which is to be compressed, even when
using a memory with a comparatively small capacity, compressing can be
carried out with little image deterioration.
(9) In another digital image decoding apparatus of the present invention,
the apparatus described in item (1) also includes a frame data amount
controlling means which controls the compressing rate to ensure that the
data amount compressed by the compressing means is less than a
predetermined image frame data amount.
In this configuration, the compressing rate can be altered in accordance
with the image information and any deterioration in image quality can be
limited. For instance, provided that the amount of information after
compressing is less than the predetermined data amount, compressing
processing is carried out using a method with little image deterioration.
Compressing processing using a method which can cause higher image
deterioration is used only in cases in which the predetermined value is
exceeded. Consequently, the overall deterioration in image quality can be
limited when compared to cases where an ordinary method is used.
(10) In another digital image decoding apparatus of the present invention,
the frame data amount controlling means of the apparatus described in item
(9) compares the total data amount prior to a predetermined time during
the compression operation of one image frame with a standard data amount
at the predetermined time and if the total data amount has exceeded the
standard data amount, sets the maximum permitted data amount value of each
block in the subsequent compressing to a lower value, and, if the total
data amount is less than the standard data amount sets the maximum
permitted data amount value of each block in the subsequent compressing to
a higher value.
In this configuration, the compressing rate can be altered in accordance
with the image information and any deterioration in image quality can be
limited. In particular, in a case where initially the data amount is large
and a large memory region would be used, by further compression the data
amount of each frame can be limited to a designated amount. Alternatively,
in a case where initially the data amount is small and a small region of
memory would be used, image deterioration can be reduced by only
compressing a little.
(11) In another digital image decoding apparatus of the present invention,
the frame data amount controlling means of the apparatus described in item
(10) also includes a block data amount controlling means which controls
the compressing rate to ensure that the data amount of each block
compressed by the compressing means is less than a predetermined data
amount, wherein the compressing means and the frame data amount
controlling means are configured as described below.
The compressing means compresses the data of each block both by: a first
compressing method in which one of the pixels which constitute the block
is deemed a standard pixel and the data of pixels other than the standard
pixel are expressed as differences of the coded data between adjoining
pixels, and a short word-length is allocated for the differences of the
coded data when the differences are close to zero and a long word-length
is allocated for the differences which are larger; and by a second
compressing method in which one pixel in each of the pixel rows of the
block is deemed a standard pixel and first the data of the standard pixel
is quantized, and then the data of pixels other than the standard pixel
are quantized, with a predetermined quantization bit number, based on the
differences of the coded data of adjoining pixels within the pixel row to
which the pixel belongs.
Moreover, if the data amount of the data which have been compressed by the
first compressing method of the compressing means is less than the maximum
permitted value set by the frame data amount controlling means, the block
data amount controlling means sends an instruction to the compressing
means to output the data resulting from the first compressing method, and,
if the data amount of the data which have been compressed by the first
compressing method is greater than the set maximum permitted value, the
block data amount controlling means chooses a quantization bit number to
ensure that the data amount will be less than the set maximum permitted
value, and sends an instruction to the compressing means to compress the
data resulting from the second compressing method using the chosen
quantization bit number.
In this configuration, the compressing rate can be altered in accordance
with the image information and any deterioration in image quality can be
limited. In particular, in a case where initially the data amount is large
and a large memory region would be used, by further compression the data
amount of each frame can be limited to a designated amount. Alternatively,
in a case where initially the data amount is small and a small region of
memory would be used, image deterioration can be reduced by only
compressing a little.
Moreover, in the compressing of individual blocks, the first compressing
method, in which there is little image deterioration and only minimal
compressing is carried out, and the second compressing method, in which
there is higher image deterioration but more precise compressing, can be
used as appropriate to the block which is to be compressed. In addition,
in the second compressing method, since the quantization bit number can
also be adjustably controlled the compressing rate can be even more
suitably controlled. Thus, by controlling the compressing rate as
appropriate to the image information which is to be compressed, even when
using a memory with a comparatively small capacity, compressing can be
carried out with little image deterioration.
(12) In another digital image decoding apparatus of the present invention,
the apparatus described in item (10) also includes a block data amount
controlling means which controls the compressing rate to ensure that the
data amount of each block compressed by the compressing means is less than
a predetermined data amount, and the compressing means and the frame data
amount controlling means are configured as described below.
The compressing means compresses the data of each block both by: a first
compressing method in which one of the pixels which constitute the block
is deemed a standard pixel and the data of pixels other than the standard
pixel are expressed as differential coded data between adjoining pixels,
and a short word-length is allocated for these differences of the coded
data when the differences are close to zero and a long word-length is
allocated for the differences which are larger; and by a second
compressing method in which one pixel in each of the pixel rows of the
block is deemed a standard pixel and first the data of the standard pixel
is quantized, and then the data of pixels other than the standard pixel
are quantized, with a predetermined quantization bit number, based on the
differences of the coded data of adjoining pixels within the pixel row to
which the pixel belongs.
Moreover, if the data amount of the data which have been compressed by the
first compressing method of the compressing means is less than the maximum
permitted value set by the frame data amount controlling means, the block
data amount controlling means sends an instruction to the compressing
means to output the data resulting from the first compressing method, and,
if the data amount of the data which have been compressed by the first
compressing method is greater than the set maximum permitted value, the
block data amount controlling means chooses a quantization bit number to
ensure that the data amount will be less than the set maximum permitted
value, and sends an instruction to the compressing means to compress the
data resulting from the second compressing method using the chosen
quantization bit number.
In this configuration, the compressing rate can be altered in accordance
with the image information and any deterioration in image quality can be
limited. In particular, in a case where initially the data amount is large
and a large memory region would be used, by further compression the data
amount of each frame can be limited to a designated amount. Alternatively,
in a case where initially the data amount is small and a small region of
memory would be used, image deterioration can be reduced by only
compressing a little.
Moreover, with a first compressing method in which there is little image
deterioration and only minimal compressing is carried out, and a second
compressing method wherein there is higher image deterioration but
compressing can be precisely carried out, these two methods can be used as
appropriate for the image which is to be compressed. In addition, in the
second compressing method, since the quantization bit number can also be
adjustably controlled the compressing rate can be even more suitably
controlled. Thus, by controlling the compressing rate as appropriate to
the image information which is to be compressed, even when using a memory
with a comparatively small capacity, compressing can be carried out with
little image deterioration.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram showing a general configuration of the present
invention in a first embodiment.
FIG. 2 is a diagram depicting an address within a prediction and display
frame memory portion in the first embodiment.
FIG. 3 is a diagram showing the classification of image frames.
FIG. 4 is a diagram depicting a bit map of the prediction and display frame
memory portion in the first embodiment.
FIG. 5 is a diagram showing a pixel configuration of 1 image block.
FIG. 6 is a diagram explaining the quantumization processing of
differential coded data in the first embodiment.
FIG. 7 is a diagram depicting an example of compressing processing in the
first embodiment.
FIG. 8 is a diagram depicting a matrix displaying a Harr conversion used in
the conversion processing.
FIG. 9 is a block diagram showing a general configuration of the present
invention in a second embodiment.
FIG. 10 is a diagram showing the relation between differential coded data
of adjoining pixels of image data and incidence.
FIG. 11 is a diagram explaining the quantumization of differential coded
data in the second embodiment.
FIG. 12 is a diagram showing an example of Huffman coding in the second
embodiment.
FIG. 13 is a block diagram showing a third embodiment of the present
invention.
FIG. 14 is a diagram explaining the monitoring of an data amount in the
third embodiment.
FIG. 15 is a block diagram depicting the configuration of a prior art
example.
FIG. 16 is a diagram depicting a frame memory bit map of a prior art
example.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
The preferred embodiments of the present invention will be described with
reference to the diagrams.
Embodiment 1
FIG. 1 is a block diagram showing a general configuration of a first
embodiment of the invention. A decoding portion 101 uses decompressed data
155 as prediction data to decode coded data 150 which has been externally
supplied. The decoded data 151 obtained as a result of the decoding are
compressed at a compressing portion 102 and the data amount is also
compressed. The compressed data 152 obtained as a result of the
compressing are then written in a prediction/display frame memory 103.
An address controlling portion 106 controls the prediction/display frame
memory portion 103 input and output and creates frame memory addresses
such that the data will be written into address positions corresponding to
each of the blocks into which each image frame is divided. The address
controlling portion 106 sends frame memory addresses through an address
line 159 to the prediction/display frame memory portion 103. For instance,
if the first address in a compressed image frame is A and the data amount
generated in 1 block is T bits, then the writing position of a Gth block
will be from (A+(G-1)*T) to (A+G*T-1). The configuration of the
prediction/display frame memory 103 is shown in FIG. 2. The writing
position of a frame 210 is shown by diagonal lines and double diagonal
lines and the writing position of a Gth block 211 within this frame is
shown by the double diagonal lines. The address controlling portion 106 is
also connected to the compressing portion 102, a decompressing A portion
104 and a decompressing B portion 105 by control lines 156, 157, and 158
respectively.
In order to display an image, compressed data are read in raster sequence,
decompressed at the decompressing B portion 105, and sent as display data
154 to a display.
The decompressing A portion 104 accesses the prediction/display frame
memory portion 103 to obtain compressed data 153, then decompresses the
compressed data 153, and sends it as decompressed data 155 (prediction
data) to the decoding portion 101.
When data are read from the prediction/display frame memory portion 103,
the address controlling portion 106 controls addresses in the same way as
the above described storage of compressed data in the prediction/display
frame memory portion 103.
In this configuration, the prediction/display frame memory portion 103 can
be configured with a smaller capacity than the data amount of the target
image data because the stored data is compressed.
FIG. 3 is a diagram showing the relation between display frames and
prediction frames when coded image data is decoded. FIG. 4 shows the
configuration of the memory regions of the prediction/display frame memory
portion 103.
Prediction frames 301 are stored in a prediction frame region 310 and are
used in both the decoding of other prediction frames and in the decoding
of display frames 302. The display frames 302 are stored in a display
frame memory region 311 and are used only for display.
Next, quantizing processing in the present embodiment will be described
with reference to FIGS. 5 and 6. FIG. 5 shows a block, which is one
portion of one image frame, comprising 8*8 pixels. The data for each pixel
are identified by a code M.sub.xy where x is the vertical sequential order
and y is the horizontal sequential order. As the diagram shows, the upper
left pixel is M.sub.00 and the bottom right pixel is M.sub.77.
In quantization, one of the pixels in this block, for instance pixel
M.sub.00, is used as a standard pixel, and for this standard pixel
M.sub.00, the uncompressed data is used as it is. The other pixels in the
block are quantized using the differences of the coded data of adjoining
pixels. For instance, for the pixel M.sub.x0 in the (y=0) left end column,
quantizing is carried out based on
M'.sub.x0 =Q›M.sub.x0 -M.sub.(x-1)0 ! (1)
while for pixels M.sub.xy other than those above, (i.e. y.noteq.0),
quantizing is carried out based on
M'.sub.xy =Q›M.sub.xy -M.sub.x(y-1) ! (2)
M'.sub.xy indicates the data in a pixel after quantizing and Q › !
indicates the quantizing process.
For instance, if the data for each pixel before quantizing is 8 bits, then
the differential data are indicated by 9 bits (-256.about.255). If these
are quantized with for instance 4 bits, a typical quantizing value of less
than 16 can be used. In addition, since the differential of adjoining
pixels is usually close to zero, it is acceptable to carry out non-linear
quantizing as shown in FIG. 6 whereby the quantizing range is decreased
when the differential is around zero and increased as the differential
departs from zero.
According to this type of quantizing, by storing the standard pixel
M.sub.00 with 8 bits and other pixels with 4 bits, the quantizing data
amount becomes
(data amount after compression)=8+4*(8*8-1)=260 bits (3)
while the data amount before compression is
(data amount before compression)=8*8*8=512 bits (4)
thus the compression rate (data amount before compression-data amount after
compression/data amount before compression) is approximately 50%.
Quantizing processing can also be carried out by further subdividing the
block, selecting one pixel within each of the resulting small blocks as a
standard pixel, and then calculating differential data for the remaining
pixels within the small blocks which can then be quantumized.
For instance, one line of the block shown in FIG. 5 can be predetermined as
the small block, and the pixel on the far left of each small block can be
designated as the standard pixel. In other words, pixel M.sub.x0 becomes a
standard pixel and its data prior to compression are used as they are. For
the other pixels, that is, for pixels where y.noteq.0, quantizing is
carried out based on equation (2) described above. Moreover, with regard
to the quantizing range, it is acceptable to carry out non-liner
quantizing as shown in FIG. 6.
As in the above-mentioned case, if quantizing is carried out with 8 bits
for data prior to compression and 4 bits for differentials of adjoining
data, for a block of 8*8 pixels the data amount after compression becomes
(data amount after compression)=8*((8+4*(8-1))=288 bits (5)
Thus the compressing rate is approximately 50%.
The above compression method used a pixel on the upper left or far left as
the standard, but it is not restricted to these pixels. As a further
example, a block can also be further subdivided at each line or each
column, for instance a block of 4*4 pixels can be divided into 4 sections.
Moreover, the above describes an example wherein 4-bit quantizing is used
for an 8*8 pixel block, but the block size and quantizing bit number can
also be chosen as deemed appropriate.
In FIG. 7 a summary of the sequence of another type of compressing process
is shown. The decoded block data undergo a predetermined conversion
process at the decoding portion 101 shown in FIG. 1. In FIG. 7 a block 201
of M*M pixels is taken as an example. If every pixel is displayed with t
bits, the data amount in the block is M*M*t. By undergoing a conversion
process such as a discrete cos conversion, the data in the M*M pixels is
divided such that: the upper left portion is a low frequency signal, the
central portion is a middle frequency signal, and the bottom right portion
is a high frequency signal.
In the processing at the compressing portion 102 (shown in FIG. 1)
conversion processing is carried out on the block 201 of M*M pixel units
in compliance with the characteristics of the image, and after conversion
the block is divided into a low frequency signal region 202, a middle
frequency signal region 203, and a high frequency signal region 204. The
number of pixels in the low frequency signal, the middle frequency signal
and the high frequency signal are assigned as r1, r2, r3, and the bit
number division allocations for each signal are s1, s2, s3 (bits/pixels).
However, s1>s2>s3, and r1+r2+r3=M*M. Because more bits are assigned to the
low frequency signal region there is less effect on the image quality.
Consequently the effect on the image is diminished and better compression
of the data amount is accomplished.
By assigning bit numbers in this way and then carrying out quantumization,
the data amount in the block becomes
(data amount after compression) T=r1*s1+r2*s2+r3*s3 (6)
Moreover, this data amount is normally constant.
FIG. 8 shows a matrix A for a Harr conversion which can be used in the
conversion processing in FIG. 7. This matrix A is a coefficient matrix for
converting an 8*8 pixel block.
If the image of a block prior to one-dimensional Harr conversion is X and
the image of the block after conversion is B, then
B=AX (7)
and when B is quantized and the image of the block after compression is B'
then the decompressed block Y obtained by decompressing this is
Y=A.sup.-1 B' (8)
and compression and decompression can be carried out according to this
method.
In this process, since reduction of the bit numbers is carried out after
quantizing, the conversion is non-reversible. Furthermore, although Harr
conversion was used in the example shown above, other equations are
acceptable provided that the signals for each frequency region can be
separated. Moreover, the conversion process is not restricted to using a
low frequency signal, a middle frequency signal and a high frequency
signal.
Embodiment 2
FIG. 9 is block diagram showing a general configuration of a second
embodiment of the present invention. The coding process is identical to
that in the first embodiment described above and its explanation is
omitted here. The present embodiment is characterized in that a block data
amount controlling portion 107 is connected to the compressing portion 102
through a controlling line 160. For each image to be compressed, the block
data amount controlling portion 107 monitors the data amount after
compression processing in the compressing portion 102 to ensure that the
data amount is less than a predetermined maximum value U. If the data
amount is above the predetermined maximum value U, the compressing portion
102 is instructed to change the compressing rate and recompress. Since the
data amount for 1 block of compressed image data is adjusted within a
range which does not exceed the maximum permitted value U, the address
controlling portion 106 stores the addresses of the prediction/display
frame memory portion 103 in which the data for each block has been
written. Decompression of the compressed data is then carried out in
compliance with these addresses at the decompressing A portion 104 and the
decompressing B portion 105.
As in the first embodiment, the prediction/display frame memory portion 103
can be configured with a capacity less than the data amount of the target
image data because the stored data is compressed.
Moreover, by appropriately altering the compressing rate to match the data
amount after compressing, as in the case of an image which is small
originally compared to the memory capacity, image deterioration can be
limited without much compressing.
The following explains the changes to the compressing rate. FIG. 10 is a
graph showing an example of the incidence of differences in the coded data
of adjoining pixels of image data. Since image data between adjoining
pixels are usually extremely similar having only small differences, as the
diagram shows the curve is concentrated around the point at which the
difference is zero and decreases sharply as the difference becomes larger.
Then, at higher values of the absolute value of the difference, the curve
becomes practically zero. In consideration of this characteristic, a short
word-length is allocated when the differences of the image data (the
differences of the coded data) are close to zero, and a long word-length
is allocated as the difference becomes larger. Such allocation is termed
Huffman coding, an example of which is shown in FIG. 11. When such
allocating is carried out, near zero the data amount decreases due to the
short word-length and since incidence here is high, the data amount of the
entire block is also reduced.
The compressing portion 102 first compresses the decoded data according to
the above-mentioned Huffman coding, and the block data amount controlling
portion 107 judges whether or not this data amount is less than the
maximum value U. If the data amount is less than the predetermined maximum
value U, further quantizing is not carried out. Since in the
above-mentioned Huffman coding differences of the coded data are merely
being substituted, no image deterioration is caused. Thus, in this case,
no image deterioration is caused.
If the data amount of the data compressed according to Huffman coding is
greater than the maximum permitted value, further compressing is carried
out by a method such as according to the equations (1) and (2) described
in the first embodiment. In the first embodiment differences of the coded
data were quantizing using 4 bits, but, in the present embodiment the
block data amount controlling portion 107 determines a quantizing bit
number w which will ensure that the data amount after compressing is less
than the maximum permitted value, and quantizing is carried out at the
compressing portion 102 based on this quantizing bit number. An example of
the data before and after being quantized in this quantizing processing is
shown in FIG. 12. As FIG. 12 shows, in a case where quantizing is carried
out with 4 bits, a resulting quantizing of (2.sup.(w-1) 1)*2+1 is carried
out. In other words, for image data which has a large data amount the bit
number w is decreased and the compressing range is widened, and for data
having a small data amount the bit number w is increased and the
compressing range is narrowed to control image deterioration due to
compressing.
Embodiment 3
FIG. 13 is a general block diagram showing a general configuration of a
third embodiment of the present invention. The coding process is identical
to that in the first and second embodiments and its explanation is omitted
here. The present embodiment is the same as the second embodiment but is
characterized in that a frame data amount controlling portion 108 has been
provided. The frame data amount controlling portion 108 is connected to
the block data amount controlling portion 107 through a controlling line
161. The frame data amount controlling portion 108 monitors the data
amount of each frame after compression processing to ensure that the data
amount for each frame is less than a predetermined frame value S. If the
data amount is above the predetermined frame amounts, the compressing
portion 102 is instructed to change the compressing rate and recompress.
Since the data amount for 1 block of compressed image data is adjusted in
response to the image, the address controlling portion 106 stores the
addresses of the prediction/display frame memory portion 103 in which the
data for each block has been written. Decompression of the compressed data
is then carried out in compliance with these addresses at the
decompressing A portion 104 and the decompressing B portion 105.
FIG. 14 will be used to explain the operation of the data amount
controlling portion 108. The horizontal axis indicates the time required
for compressing processing, a block is sequentially compressed in raster
sequence, and the processing of 1 frame is completed in a time T. The
vertical axis indicates the information amount after compressing, and the
predetermined maximum information value for 1 image frame is the frame
value S bits. The frame value S is determined according to the capacity of
the prediction/display frame memory portion 103. If the data amount of
compressed image data increases proportional to the number of blocks for
which compressing processing has been completed, that is, if it increases
along the dashed line R in the center of the diagram, the data amount
attains its maximum permitted value when the processing of 1 frame is
completed.
However, depending on the image which is to be compressed, the image
quality of certain images can be maintained even after substantial
compressing, while there are other images which must be compressed as
little as possible to maintain the image quality. At a predetermined point
during the processing of 1 frame, the frame data amount controlling
portion 108 compares the data amount generated up to that point with the
proportionally increasing standard value R and executes an instruction to
alter the compressing rate to ensure that the data amount at the point of
completion of the processing of 1 frame will attain the maximum permitted
value S. For instance, if the amount of information compressed by a time
t.sub.1 as indicated by the graph line H is large in comparison with the
standard value R, in the subsequent processing an instruction is executed
to alter the compressing rate so that more substantial compressing is
carried out. Alternatively, if the amount of information compressed by a
time t.sub.1 as indicated by the graph line L is small in comparison with
the standard value R, in the subsequent processing an instruction is
executed to alter the compressing rate so that less substantial
compressing is carried out.
Alteration of the compressing rate is carried out as follows. As in the
second embodiment, Huffman coding is first applied to the decoded data at
the compressing portion 102. Then, at a designated time t.sub.1 the total
of the data amount of the blocks processed up to that time is compared
with the standard value R. Then, as described above, judgment is made with
regard to the alteration of the subsequent compressing rate based on this
comparison. In a case where it has been judged that alteration of the
compressing rate is necessary, the frame data amount controlling portion
108 sends an instruction to the block data amount controlling portion 107
to alter the maximum permitted value U of the data amount for 1 block.
Alteration of the compressing rate to match this maximum permitted value U
is carried out at the compressing portion 102 and compressing processing
is effected. The operation of the compressing portion 102 can be the same
type as that in the second embodiment. Moreover, when the predetermined
times t.sub.2 and t.sub.3 are reached, comparison between the standard
value R and the data amount up to these points can be carried out once
again, suitability is judged as mentioned above and alteration is carried
out as required. The number of comparisons carried out is not restricted
to 3 times and other values can also be taken. Furthermore, the time for
carrying out the comparison is not restricted to those shown here and can
be altered to another predetermined time. For instance, in the initial
stage of processing 1 frame the frequency can be increased and the
distinctive qualities of the image being processed can be speedily
identified and control of the subsequent compressing rate can be carried
out based on this. In addition, the compressing rate at the initial stage
of the compressing processing can be determined with reference to the
information relating to the previously processed frame.
Other Embodiments
In each of the embodiments described above, image data decoded by the
decoding portion 101 was compressed and sent to the prediction/display
frame memory portion 103, but it is also acceptable to write data which
are not compressed in a display memory region. In such a case, the
decompressing B portion 105 would not be necessary and the display image
would not suffer deterioration due to compressing processing.
Moreover, in the third embodiment, the compressing rate of the compressing
portion 102 is altered by altering the maximum permitted value U of the
data amount for 1 block as determined by the block data amount controlling
portion 107. However, the configuration is not restricted, and a
configuration is also acceptable wherein, for instance, the frame data
amount controlling portion 108 directly sends an instruction for the
quantizing bit number w and alters the compressing rate.
While there has been described what are at present considered to be
preferred embodiments of the invention, it will be understood that various
modifications may be made to the present invention and it is intended that
the appended claims cover all such modifications as fall within the true
spirit and scope of the invention.
Top