CA2186748C - Fixed quality source coder - Google Patents
Fixed quality source coder Download PDFInfo
- Publication number
- CA2186748C CA2186748C CA002186748A CA2186748A CA2186748C CA 2186748 C CA2186748 C CA 2186748C CA 002186748 A CA002186748 A CA 002186748A CA 2186748 A CA2186748 A CA 2186748A CA 2186748 C CA2186748 C CA 2186748C
- Authority
- CA
- Canada
- Prior art keywords
- signal
- error
- source coder
- receiving
- encoder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3082—Vector coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/008—Vector quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/162—User input
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Error Detection And Correction (AREA)
Abstract
A fixed quality source coder (20) receives and performs VQ on an input signal ID. The fixed quality source coder (20) includes an encoder (28) and may also include a decoder (34). The encoder may include a lossy codec (52) that receives and encodes the signal ID to provide encoded information (38) to a multiplexer (30) regarding the signal ID. The lossy codec (52) also decodes the encoded signal to produce a decoded signal IVQ-I (62). A summer (66) receives ID and IVQ-I and determines an error signal ER (70) where ER equals ID IVQ-I. A threshold circuit (74) receives the signal ER and passes a truncated error signal ET'. The threshold level T may be set to ensure that the maximum error allowed in the encoder (28) is equal to a particular desired maximum error.
Description
2 ~ 8 6 7 4 ~ PCT~S95103771 FUMED QUALTTY SOURCE CODER
Technical Field:
S The present invention relates to a source coder and, more particularly, to a fixed quality source coder with a fixed threshold that may be used in compression of medical image data.
Background Art: In a normal hospital radiological environment, a large amount of medical image data is generated from different modalities, such as, computed tomography (CT), magnetic resonance (Iv112) imaging, and computed radiography (CR). Devices that process the image data typically include an analog-to-digital converter (ADC) that converts analog image data to digital image data.
Converting to digital image data serves two purposes. First, there are certain advantages in processing digital rather than analog data. Second, the process of digitizing analog data has the potential of more efficiently compressing the analog data because the compressed digital data can take less memory space to store.
A quantizer is a device that represents one signal that can take on a large number of values by another signal that can take on only a limited number of values. A four-bit ADC, for example, represents the value of a continuously varying i.e., analog) signal by a digital signal that can have only one of sixteen values. Scalar quantizers operate on signals having a single degree of freedom, such as an ADC operating on a voltage signal. ADCs perform "scalar quantization"
(SQ) in that each sample is unrelated to the previous and next samples.
Referring to Fig. 1, a traditional source coder 10 includes a low pass filter 12, a sample and hold circuit (S/F)] 14, and an n-bit ADC 16.
Typically, S/H
14. and ADC 16 work together. Low pass filter 12 removes high frequency components from the analog input signal to prevent abasing problems. SIH 14 samples the continuous waveform into a discrete analog signal on conductor 15 that is digitized by ADC 16, which typically is a uniform scalar quantizer that converts the analog signal into one of a fuute number of uniformly spaced levels spanning the analog range. The sampling rate of S/H controls the number of r x s samples/frune of an image. For example, a typical value for r x s samples/frame is 512 X 512 sampleslframe. ADC provides a digital signal IDO to conductor 18. Because there are a finite number of sampling points for sample and hold circuit 14 and a finite W0 95/26591 - - PCTIfJS95103771 number of levels in ADC 16, the conversion of the original analog signal to a digital signal IDp introduces quantization error when compared to the original analog signal.
All ADCs have a finite number of levels and all ADCs have quantization distortion.
Because a finite number of levels are used to represent the data accurately, some data compression occurs in all ADCs.
Vector quantizers, by contrast, operate on signals having multiple degrees of freedom. In contrast to SQ, vector quantization (VQ) deals with a block of samples or vector at once, and as a result VQ has some performance advantages as compared with scalar quantization. VQ can be viewed as pattern matching, where input patterns or vectors are approximated by one of many stored patterns in a codebook. The resulting quantization error from such an approximation clearly depends upon how well the stored patterns, referred to as code vectors, represent the input vectors. Consequently, codebook generation may be greatly improved by prior knowledge of the information source and is important to the perfom~ance of VQ.
Consider an image that is divided into numerous small areas called pixels (for picture element). Pixels are sufficiently small that the intensity of the image is approximately constant across the pixel area. For example, a black and white image of a house might be divided into a grid of 600 rows and 600 pixels per row. Each pixel would be like a small dot in the image. A block or group of pixels in the same region would form a vector which can be thought of as a small subimage. For example, a 6 x 6 square block of pixels forms a 36 element vector, which may be a portion of a shadow or part of the roof line against a light background.
Mean-removed VQ (M12VQ) is a special case of product codes.
Product codes refer to a family of vector quantization methods in which one large codebook is replaced by more than one smaller codebook. As a result, the vector space represented by the overall quantizer is given as the Cartesian product of smaller vector spaces, and hence the name product codes. In MRVQ, the sample mean of each input vector is computed and then subtracted from every vector component. The resulting mean removed, or residual, vector is then vector quantized. The utility of MRVQ is that the residual vectors can be adequately represented with many fewer code vectors as compared to the original image vectors. The mean of each vector is also coded and included along with each code WO 95/26591 218 6 7 4 ~~ PCTIUS951D3771 vector index. Since the mean is a scalar quantity, it is scalar quantized. As a result, the mean includes all of the possible quantization levels of the scalar quantizer.
MRVQ can provide a significant reduction in the overall complexity of a VQ
system as compared to direct VQ.
It is desirable to apply a high quality compression in order to reduce storage costs. Data compression techniques are typically classified as either lossy or lossless. Lossy algorithms are capable of high compression ratios, but they may distort the data in some way which is not tolerable for some diagnostic medical images. Lossless algorithms do not distort the data, but they are limited to much lower compression ratios. It is noteworthy that an ADC with a finite number of levels with binary codes is a lossy compressor because there is quantization error.
In many applications, the ADC outputs are losslessly sent to the decoder, but there still is quantization error of the original ADC at the decoder.
DISCLOSURE OF INVENTION
A fixed quality source coder receives and performs VQ on an input signal ID. The signal ID may be characterized by the number of bits/sample (intensity) and the number of samples/flame (spatial resolution), and may be provided by a traditional source coder. The traditional source coder may include a sample-and-hold (S/I~ circuit producing r x s samples/frame and an ADC
providing n bits per pixel. In a first embodiment, the number of bits/sample is increased. In the second embodiment, the number of samples/flame is increased. In a third embodiment, both the number of bits/sample and the number of samples/frame are increased.
Measurements made in simulations involving the first and second embodiments show that the fixed quality source coder has a smaller data rate, mean absolute error (MAE) and root mean square error (RMSE) than that of the traditional source coder, while maintaining the same or less maximum error. It is believed that - the third embodiment would have superior results to that of the first and second embodiments.
The fixed quality source coder includes an encoder and may also include a decoder. The encoder may include a lossy codec that receives and encodes the signal ID to provide encoded information to a multiplexer regarding the signal ID.
2186748 ~~ 95~~377 1 ~.~A~~us 27 OCT X85 .f _4_ The lossy codes also decodes the encoded signal to produce a decoded signal IVQ'.
A summer receives ID and I~Q' and determines an error signal ER, where ER may equal ID - I~Q 1. A threshold circuit receives the signal ER and passes a threshold signal F~, which may perforn the following equation: E,. = ER - T when ER > T, F? = 0 when -T <_ ER <_ T, and E,. = ER + T when ER < -T. (Of course, the decisions at the equalities could be different, such as, for example, E,. = ER
- T
when ER ? T, E,. = 0 when -T < ER < T, and E,. = ER + T when ER <_ -T.) The threshold level T may be set to ensure that the maximum error allowed in the encoder is equal to a particular desired maximum error. This allows a particular user to set a maximum error. The threshold level T may be changed by the user.
The maximum error may be equal to the least significant bit of an n-bit ADC or to some other greater or lesser value. The signal ET is then received by a preferably lossless encoder that produces an error component signal E,..
The der oder receives and decodes the signal E,. and the encoded information to produce LS IRp, which is a reconstruction of the original signal Ip.
BRIEF DESCRIPTION OF DRAWINGS
Fig. 1 is a schematic of a prior art source coder.
Fig. 2 is a block diagram of a fixed quality source coder in combination with a traditional source coder according to a fsst embodiment of the present invention.
Fig. 3 is a block diagram of a circuit used to make comparisons between the fixed quality source coder of a fast embodiment of the present invention and a traditional source coder.
Fig. 4 is a table showing theoretical mean absolute error (MAE), root mean square error (RMSE), and maximum error values for the traditional source coder when it is encoding uniformly distributed random noise. The results are shown for cases of truncation and rounding the k least significant number of bits, where k = 1, 2,.., 6.
Fig. 5 is a table showing the measured MAE,,QS~" RMSE"QSC-,, and Max ErrorvQs~, results of the fixed quality source coder of the present invention for tested MR, CT, and DR images and particular bits per pixel (bpp).
WriENDED SHEET
w0 95126591 PCT/US95103771 -S-Fig. 6 is a table showing SQ to VQSC-I compression ratio (CR-I), SQ
to VQSC-I mean absolute error ratio (MAER-n and SQ to VQSC root mean square error ratio (RMSER-n, where SQ is performed by truncation.
Fig. 7 is a table showing SQ to VQSC-I Compression ratio (CR-I), SQ to VQSC-I mean absolute error ratio (MAER-I) and SQ to VQSC-I root mean square error ratio (RMSER-n, where SQ is performed by rounding.
Fig. 8 is a graph showing average error versus column number for MR images of VQSC-I and SQ.
Fig. 9 is a graph showing average error versus column number for DR images of VQSC-I and SQ.
Fig. 10 is a graph showing average error versus column number for CT images of VQSC-I and SQ.
Fig. 11 is a block diagram of a fixed quality source coder in combination with a traditional source coder according to a second embodiment of the present invention.
Fig. 12 is a block diagram of a circuit used to make comparisons between the fixed quality source coder of the second embodiment of the present invention and a traditional source coder.
Fig. 13 is a table showing the measured MAE~a, RMSES~B, and Max Error~_n results of the traditional source coder for MR, DR, and CT
images, for particular bits per pixels.
Fig. 14 is a table showing the measured MAE~~Ga, RMSE,.QS~_n, and M~ ~rvQscn results of the traditional source coder for MR, DR, and CT images, for particular bits per pixels.
Fig. 15 is a table showing SQ to VQSC-II compression ratio (CR-n, SQ to VQSC-II mean absolute error ratio (MAER-I) and SQ to VQSC-II root mean square error ratio (RMSER-In.
Fig. 16 is a graph showing average error versus column number for MR images of VQSC and SQ.
Fig. 17 is a graph showing average error versus column number for DR images of VQSC and SQ.
Fig. 18 is a graph showing average error versus column number for CT images of VQSC and SQ.
WO 95/26591 218 6 7 4 ~~ PCT/f1S95103771 Fig. 19 is a block diagram of a fixed quality source coder in combination with a traditional source coder according to a third embodiment of the present invention.
Fig. 20 is a block diagram of controls allowing the user to set the value of threshold T.
MODES FOR CARRYING OUT THE INVENTION
A. Structure and poeration Referring to Fig. 2, the present invention includes a combination of a fixed quality source coder (hybrid coder) 20 with traditional source coder 10 in which the number of bitslpixel (intensity) and/or samples per frame (spatial resolution) is increased. In the particular embodiments described in connection with Fig. 2, the bitslpixel is increased, but the samples/frame remains the same as that of a traditional source coder.
First and second embodiments of the invention illustrate the performance of fixed quality source coder 20. In the first embodiment, illustrated in Fig. 2, the intensity (or pixel depth) of the signal IDl received by fixed quality source coder 20 is increased by increasing the number of bits of ADC 16 in traditional source coder 10. In the second embodiment, illustrated in Fig. 11, the spatial resolution of the signal IDZ received by fixed quality source coder 20 is increased by increasing the sampling rate of S/Ii 14 (and, if necessary, the cut-off frequency of low pass filter 12). As compared to traditional source coder 10 alone without the increased intensity or spatial resolution, the first and second embodiments have a substantially better compression ratio, better average error and data rate, and at least as good maximum error.
A third embodiment, illustrated in Fig. 19, is a combination of the first and second embodiments, both the intensity and spatial resolution are increased.
It is believed that the third embodiment will have superior results to that of the first and second embodiments.
As used herein, S/Fi 14 operates at r x s sampleslframe (~ 512 X
512), and S/Fi 22 is a sample-and-hold circuit operating at R x S
sampleslfrnnle (e~..
1024 X 1024). Note that the cut-off frequency of low pass filter 12 may be adjusted depending on the frequency of S/H 14 or SIH 22. ADC 16 is an n-bit ADC and ADC 24 is an n + k bit ADC, where k is a positive integer. For comparison purposes only, R/r = 1,2,..., and S/s = 1,2,.... However, no particular value of R, r, S, or s are required.
The combination of S/H 14 and ADC 16 produces signal Im on conductor 18, as shown in Fig. 1. The combination of SB 14 and ADC 24 produces signal IDl on conductor 18, as shown in Fig. 2. The combination of S/H
22 and ADC 16 produces signal IDZ on conductor 18, as shown in Fig. 11. The combination of S/H 22 and ADC 24 produces signal ID3 on conductor 18, as shown in Fig. 19. Signal "ID" is used to represent a generalized signai that could be IDI, Io2, or ID3 depending on which embodiment is employed.
The value of fixed quality source coder 20 becomes apparent when it is considered that the extra expense and space associated increasing the number of bits of ADC 16 or increasing the sampling late of S/H 14 is minuscule in comparison with the saving reaped by reduced memory requirements. At the same time, doctors and hospitals can be assured that a particular maximum error Ievel is met.
Referring to Fig. 2, a preferred embodiment fixed quality source coder 20 includes an encoder 28, a multiplexer 30, a demultiplexer 32, and a decoder 34. Fixed quality source coder 20 receives signal ID, conductor 18 from SIH 14 and ADC 24. Typically, there is a storage device and/or a transmission link between multiplexer 30 and demultiplexer 32. Where the data is stored for later use, the amount of memory in the storage device is typically enormous.
Encoder 28 produces an encoded information signal I~ on conductor 38 regarding signal IDS and an error component signal Er on conductor 40, which are provided to multiplexer 30. An overscore signifies that a parameter is vector quantized. In a preferred embodiment of fixed quality source coder 20, the encoded information I~ includes a mean residual vector quantizer (MI2VQ) component and address information. Multiplexer 30 provides a signal IvQ~.
As used herein, VQSC signifies "vector quantization source coder"
and represents fixed quality source coder 20. VQSC-I signifies "vector quantization source coder" with respect to the first embodiment of the invention. VQSC is contrasted with SQ, which signifies scalar quantization and represents traditional source coder ADC 10, as shown in Fig. 1.
w0 95126591 PCTIUS95103771 _8-The information in multiplexer 30 may be stored and later reconstructed as follows. Demultiplexer 32 provides MRVQ component and address information I,,,~ and error component E,. on conductor 44 and 46, respectively, which are received by decoder 34. Decoder 34 includes a lossless decoder 86, a lossy decoder 90, a threshold circuit 94, and a summer 98, together which perform -the inverse of encoder 28 to provide a reconstructed digital signal I,~"
having r x s samples/fiame and n + k bits per sample. Ideally, Ice, is identical to ID,, but in practice I,~, will be only a very close approximation of ID,.
Encoder 28 includes a lossy codes 52 that receives signal ID,. Lossy codes 52 includes an encoder that performs VQ on signal IDS to produce encoded information signal I,,~ on conductor 38, and a decoder that produces a signal I"Q', which is a reconstruction of signal IDS. L.ossy codes 52 may perform any of a variety of VQ techniques or other lossy techniques. These techniques include, but are not limited to, tree-stnlctured VQ (TSVQ), multi-stage VQ (MSVQ), hierarchical VQ (HVQ), and JPEG. Adaptive algorithms may be employed in adaptive tree search vector quantization (ATSVQ), multi-stage adaptive search VQ (MASVQ), and hierarchical adaptive search vector quantization (HASVQ).
TSVQ has low encoding complexity and performance that is close to the optimal full search encoder for VQ. MSVQ is a product code technique and has the same low complexity as TSVQ. However, the memory requirement for a MSVQ codebook is directly proportional to the number of stages while the memory requirement for a TSVQ codebook is exponentially proportional to the codebook address size. In MSVQ, the performance improvement rapidly degrades as the number of stages increases.
In MRVQ, the mean of each vector is subtracted from each vector component before the codebook generation process begins. For reasonably sized codebooks, however, there are occasions when the codebook can no longer adequately represent edge or texture information. HVQ has been proposed to overcome this problem. In HVQ, an image is usually partitioned into several blocks of different size such that the contents of the smaller blocks are inside the larger blocks. An independent codebook using a standard VQ codebook generation algorithm (such as LBG) is generated for each block size. In the encoding process, the largest block is encoded first. If the texture or information in the image is not WO 95/26591 2 ~ g r ~ ,~ ~ PCTfUS95/03771 adequately recovered, the next smaller block is encoded, and so forth. HVQ has the greatest encoding complexity and memory requirement of the techniques described herein.
The JPEG technique is described in Wallace et al., "The JPF.G Still Picture Compression Standard," )~ Transactions on Consumer Electronics, Vol.
38, No. 1, February 1992, pp. xviii-xxxiv.
TASVQ and HASVQ are adaptive versions of TSVQ and HVQ, respectively, and provide much better performance. A version of ATSVQ is described in U.S. Patent No. 5,172,228 to Paul D. Israelsen, entitled "Image Compression Method and Apparatus Employing Distortion Adaptive Tree Search Vector Quantization." The MASVQ technique has the low complexity and simple structure of the MSVQ, but better performance.
The following adaptive algorithm is presented for ATSVQ but may be used in various other techniques. In the adaptive tree search for ATSVQ, given a constant rate, the encoder traverses the depth of the tree where it will search for a match that best describes the input vector. Depending on the given rate, the encoder will search down the tree to find the best possible match or will stop somewhere along the tree and transmit a shorter codeword suffering a minimal increase in distortion. For the product VQ (e.g., mean-residual with adaptive search), however, if the input vector is rather flat, then only the mean of the vector needs to be transmitted and a few bits are saved for more active vectors which take more bits to be transmitted. A buffer is used to allow the encoder to adapt to varying statistics of the input vectors. The buffer characteristics are defined using two parameters, the error threshold and the current buffer level. The error threshold is usually a function of the current buffer level, and the choice of this function can be optimized to improve algorithmic performance. The function is chosen to be linear. The following is a pseudocode form of the algorithm:
1: Based on the initial buffer level evaluate the initial threshold.
2: Given an input vector, do a) while distortion > threshold look for the best match (minimum distortion) for the input vector at the current level of the tree codebook. If distortion 5 threshold then go to step b.
218b748 -lo-else if the current Ievel <_ maximum level of the tree codebook, then current level = current level + 1 else go to step b.
b) Determine the number of bits n for the best match.
This includes the index along with a prefix to identify the level of the tree where the best match was found.
c) Use n found in the previous step to update the current buffer level b according to b = b + n - outbits where outbits is the designated constant rate of the encoder.
d) Evaluate the new threshold.
This adaptive algorithm is a rather universal scheme and can easily be adapted to different VQ techniques, as described below.
For MRVQ, the algorithm can be modified so that when the distortion, compared to the mean only, is less than the threshold only, the index of the mean of the vector would be transmitted. This saves encoding time and channel bandwidth.
When the HASVQ employs the adaptive search algorithm, the HASVQ algorithm starts with the largest block (vector). If the distortion is still greater than the threshold after going down to the bottom of the tree-structured codebook (for the respective vector), then the entire adaptive encoding process restarts for the next block size, and so on. The index of the best match along with a prefix that includes the codebook type (vector size) plus the level of the tree are transmitted.
MASVQ may also employ the adaptive search algorithm. MASVQ is .
particularly suited to exploit the successive approximation nature of a multi-stage VQ
codebook. Given a constant rate, the encoder searches every successive stage and looks for the best match. If the rate is high, the encoder will search through all the stages, and if the rate is low the encoder will compromise with a minimum increase in distortion for a shorter codeword. MASVQ employs a buffer adapted to the varying statistics of the input image. As the input vector arrives, the multi-stage WO 95/26591 218 6 7 4 8 PCT~S95/03771 codebook is searched for the best match starting with the first stage and traversing through the successive codebooks one stage at a time. If the distortion requirement is met, further search of the codebook is terminated and the index of the best match along with a prefix to specify the stage of the search are transmitted. The tree-structured codebook may be incorporated at each stage of the search.
Therefore, in a sense, MASVQ is an adaptive algorithm not only along each successive stage, but also adaptive for each level of the tree-structured codebook of the respective stage.
Consequently, the prefix specifies the stage and the level of the codebook for that stage.
MASVQ may employ a tree structured codebook. MASVQ with a tree structured codebook was employed in lossy codec 52 to make the performance measurements described below.
MRVQ is described in U.S. Patent No. 4,958,225 to Bi et al, entitled "A Full-Search-Equivalent Method For Matching Data and A Vector Quantizer Utilizing Such Method," and in a PhD. dissertation entitted "Vector Quantization of Digital Images" by Richard Baker, published in June 1984 at Stanford University. A
preferred circuit for searching the codebook in MRVQ is described in U.S.
Patent No. 5,031,037 to Paul D. Israelsen entitled "Vector Quantizer Codebook Processing Circuit."
Multiplexer 30 and demultiplexer 32 are desirable, but may not be necessary depending on the type of encoding that is used in lossy codec 52.
Referring to Fig. 2, a summer 66 receives signals ID, and IvQ' and provides residual data signal ER to conductor 70, where ER = IDI - IvQ 1.
Threshold circuit 74 receives ER and a programmable fixed threshold value T and provides a tnincated error signal E,. on conductor 78. The value of truncated error signal E,. is calculated according to equation (1), below:
ER - T> if ER > T;
~, = 0, if -T s ER s T; (1) ER + T, if ER < -T.
where ER and T are described above. The maximum error allowed then is the threshold T.
WO 95/26591 , PCT1US95103771 The threshold T is set to insure the maximum error allowed by fixed quality source coder 20. The value of T is preferably programmable through software or hardwired buttons, allowing the clinician to select the maximum error that may be tolerated. In general, of course, a smaller the maximum error leads to larger memory requirements, but usually a reduced maximum error and average error. Threshold T could be equal to the least significant bit of a traditional source coder in Fig. 1, i-e., n-bit ADC 16. Threshold T could be another value according to the desired level of accuracy. If T is other than an integer rounding or truncation may occur. The threshold T is added back in decoder 34, as described below.
Signal E,.is received by a lossless encoder 82, which provides signal E, to conductor 40. Lossless encoder 82 may be a Rice coder, such as is described in Venbrux et al., "A VLSI Chip Set for High-Speed Lossless Data Compression,"
TFFF-Transactions on Circuits and Systems for Video Technology, Vol. 2, No. 4, December 1992, pp. 381-391. Other lossless encoders could be used including, but not limited to Huffman, Splaytrees, and LZW encoders. A lossy encoder could be used in place of lossless encoder 82, but it would introduce additional error.
Referring to decoder 34, lossless decoder 86 provides a signal E,.', which is analogous to signal E,. on conductor 78. Threshold circuit 94 provides F,~' according to equation (2), below:
U, if E,j.' = 0 _ 13i,' + T, if F.1.' s 0 (2) F..i.' - T, if EL' s 0, where E,.' is received by threshold circuit 94 and T is the threshold level of threshold circuit 94.
Fig. 2 represents the invention in block diagram form. The functions of encoder 28, muItiplexer 30, demultiplexer 32, and decoder 34 could be performed by a microprocessor, related circuitry, and memory. In that case, the "conductors"
of Fig. 2 may represent transfer of data to and from memory rather than to the other circuits shown in the Fig. 2.
The analog signal received by low pass filter 12 typically originates from a high quality sensor from contemporaneously detected information.
However, WO 95126591 2 ~ 8 6 7 4 8 PCT~S95/03771 the originally sensed signal may be processed by a variety of circuitry including, but not limited to, a low pass filter and a sample-and-hold circuit. Moreover, other circuitry may interact with various circuits of fixed quality source coder 20.
For example, processing circuitry could be placed between ADC 24 and encoder 28.
Encoder 28 could receive signals from ADC 24 and other circuitry. Multiplexer could receive signals from encoder 28 and other circuitry. In short, fixed quality source coder 20 may interact with or act in combination with other circuitry to provide additional benefits beyond the scope of the present invention.
Referring to Fig. 11, the second embodiment of the invention is illustrated by the combination of fixed quality source coder 20 and a traditional source coder including low pass filter 12, S/H 22 (supplying R x S
samples/frulle) and n-bit ADC 16, which provides signal IDZ, having R x S samples/frame and n bits per sample. The bandwidth and cut-off frequency of low pass filter 12 is preferably increased with the increase in sampleslframe. The operation of fixed quality source coder 20 is described in connection with Fig. 2, above. Fixed quality source coder provides reconstructed signal I~z, which is ideally equal to IDZ.
Referring to Fig. 19, the third embodiment of the invention is illustrated by the combination of fixed quality source coder 20 and a traditional source coder including low pass filter 12, S/H 22 (supplying R x S
samples/frdlne) 20 and n + k bit ADC 24, which provides signal Ip3, having R x S samples/frame and n + k bits per sample. The operation of fixed quality source coder 20 is described in connection with Fig. 2, above. Fixed quality source coder 20 provides reconstructed signal I,~, which is ideally equal to IDS~
Referring to Fig. 20, the value of threshold T in fixed quality source coder 20 may be set by the user through control module 120. Control module 120 could include keys, buttons, or other controls integral to fixed quality source coder 20 oa keys, buttons, or other controls in a stand alone computer, such as, for example, an IBM PC type computer or an Apple Macintosh type computer. In a preferred embodiment of the invention, there is only a single value of threshold T
for both encoder 28 and decoder 34. . Alternatively, the value of threshold T
for encoder 28 could be different than the value of threshold T for decoder 34.
Again, the user could decide the value of each for their particular needs.
B. Performance The performance of fixed quality source coder 20 may be illustrated through various measures described below and through comparisons with the performance of the traditional source coder.
The mean absolute error (MAE) and root mean square error (RMSE) are two measures of distortion. The MAE of n-bit ADC 10 is MAF.~ and is defined in equation (3), below:
N
MAEsQ = 1 ~II~-IsQtl (3)>
N isi where N is the total number of pixels, ID; is a particular sample of input signal Ip, and Ice; is a particular sample of signal ISQ. The MAE of fixed quality source coder 20 is MAE~Q~, defined in equation (4), below:
N
MAEvQSC = N~~In~- Ixn~ ~ (4)~
where N and ID; are defined above and Ice; is a particular sample of signal I~
at the output of decoder 34.
The RMSE of n-bit ADC 10 is RMSEsQ, defined in equation (5), below:
N
RMSE~ _ [ 1 ~ (1~ -IS~)2]In N ;al where N, ID;, and ISQ; are defined above.
The RMSE of fixed quality source coder 20 is RMSE"~c, defined in equation (6), below:
N
RMSEv~c = [N ~(IM-I~)2]la where N, ID;, and I,~; are defined above.
WO 95126591 218 6 7 4 ~ PCT~S95/03771 The compression ratio (CR) of n-bit ADC 10 to fixed quality source coder 20 is defined in equation ('~, below:
CR = BRA / BR"QS~
where BRSQ is the bit rate of Is~.r at the output of n-bit ADC 10 and BRvQSC
is the bit rate of Iv~c; at the output of multiplexer 30. The bit rate (or data rate) is defined as bits per pixel (BPP).
The mean average error ratio (MAFR) of scalar quantizer 10 to fixed quality source coder 20 is defined in equation (8), below:
MAER = MAEs~/MAEvasc (8)~
where MAF.~Q and MAF"~~ are defined in equations (3) and (4), above.
The root mean square error ratio (RMSER) of scalar quantizer 10 to fixed quality source coder 20 is defined in equation (9), below:
RMSER = RMSESQ/ RMSE"Q~ (9), where RMSFSQ and RMSE"QSC are defined in equations (5) and (6), above.
A comparison of the first embodiment of the invention is described in connection with Fig. 3. Referring to Fig. 3, n + k bit ADC 24 receives signal IA
and provides an n + k bit digital signal IDS at conductor 102. Signal IDl is received by n-bit ADC 10 and fixed quality source coder 28. N-bit ADC 10 provides a n-bit scalar quantized signal Is~r, the least significant bit of which is more significant than the kth bit of the signal ID,. For example, if n is 8 and k is 3, ID, would have three bits with less significance than the least significant bit of signal IS~r. The signal ISQ_x is received by multiplier circuit 104, which multiples the signal Is~.r by f' (or shifts left by k-bits) to produce an n + k bit scalar quantized signal ISQ. The signal ISQ has n + k bits, the k least significant bits of which are zero. Because ADC 10 performs scalar quantization, the letters "SQ" are used to represent ADC 10 and multiplier 104. Referring to Figs. Z and 3, the output of fixed quality source coder 20 is I,~1.
Simulations were made with the circuit of Fig. 3 to compare fixed quality source coder 20 with traditional source coder 10. Three different types of medical images were used in the simulations: two magnetic resonance images (Mlt), one computed tomography (CT) image, and one digital radiography (DR) image.
The MR images had 8-bit 480x392 samples per image, the DR image had 12-bit 608x496 samples per image, and the CT image had 12-bit 512x512 samples per image.
WO 95126591 21 ~ ~ -, ~ ~ FC1'IUS95/03771 The table of Fig. 4 shows theoretical MAEsQ, RSMEsQ, and maximum error (Max ErrsQ) for traditional source coder ADC 10 for the cases of truncation and rounding of the specified least significant number of bits (k). The data in the table of Fig. 4 are in counts, i.e., the bit levels. The data present the best possible error measures achievable from a uniform SQ and assumes that the image data is uniformly distributed over the range of the quantizer.
The table of Fig. 5 shows the measured MAF.~,Qsm, RSME,,Qsc_~, and maximum error (Max ErrVQs~ results of fixed quality source coder 20 for the tested MR, CT, and DR images and particular bits per pixel (bpp).
Using the results of the tables of Figs. 4 and 5, the table of Figs. 6 and 7 show CR-I, MAER-I, and RMSER-I as defined in equations ('n, (8), and (9), for particular specified bpp, and in which VQSC-I and SQ have the same maximum error. In Fig. 6, SQ is performed by truncation. In Fig. 7, SQ is performed by rounding. These results are obtained under the same maximum error condition.
The tables of Fig. 6 and 7 show that CR-I, MAER-I, and RMSER-I are always greater than I. That is, in the same maximum error condition, VQSC-I always has a smaller BR, MA)rI, and RMSE-I than SQ. Thus, in every case simulated, VQSC-I
is a superior quantizer to the uniform SQ.
In order to visually demonstrate that VQSC-I is superior to SQ, the average error versus column number for MR, DR, and CT images were computed.
These results are illustrated in Figs. 9, 10, and lI, in each of which cases the max-imum errors Max ErrvQSC_~ and Max Errsc are each 7 and VQSC has fewer bits per sample than SQ. These results show that for each image the average error at each columa of VQSC-I is less than or equal to that of SQ. Accordingly, VQSC-I is superior to SQ.
In summary, the simulation results show that the fixed quality source coder has a smaller MAE, RSME and data rate than the traditional coder, while maintaining the same maximum error.
A comparison of the second embodiment of the invention is described in connection with Fig. 12. Referring to Fig. 12, a interpolator 110 receives signal Im from the traditional source coder of Fig. 1. Interpolator 110 provides the signal Ir,,.I. through, for example, (1) linear interpolation, (2) cubic interpolation, or (3) increasing the number of samples/frame by, for example, repeating each pixel twice WO 95126592 PCTlUS95/0377t in a line and repeating each line. Interpolator 110 reconstructs the r x s samples/frame image into R x S samples/frame image. The resulting signal Ia,.,. has R x S samples/frune and may be compared with signal I,~2 of fixed quality source coder 20 in Fig. 11.
Referring to Fig. 11, in order to compare the performance of the SQ
with VQSC-II, each frame of the analog image is sampled by S/FI 22 with a resolution of R x S samples. Then, each sample is quantized into an n-bit digital signal by ADC 16. This R x S n-bit digital signal IDZ is assumed to be the original signal. See Fig. 12. This signal is low pass filtered by low pass filter 12 and sub-sampled into r x s sampleslfrnme and to obtain the output of the SQ. The output with n-bit r x s samples/frame is the same IDO of Fig. 1. These r x s samples of the digital signal are reconstructed into R x S samples by interpolator 110 and constitute the digital signal of the larger frame.
The MAE and RMSE between the original signal and the reconstnicted signal of the SQ can be evaluated. MAE and RMSE between the original signal and the output of the VQSC-II are also evaluated.
The same test images used in connection with the VQSC-I simulation described above were also used in connection with VQSC-II. The original signals were low pass filtered and 2:1 sub-sampled as the output of SQ. The low pass filtering and sub-sampling processes were actually done by taking the average of each two consecutive pixels to represent one pixel. The output of SQ was up-sampled and filtered (by a cubic spline interpolation) to obtain the reconstructed image. The MAE and RMSE between the SQ reconstructed image and the original image were evaluated and are shown in the table of Fig. 15.
The original images were also coded by using fixed quality source coder 20, as shown in Fig. 11. Measured values of MAE"Q~a and RMSE"~~" and Max Error,,QSGa are provided in the table of Fig. 14 for particular images and bits per pixel.
The table of Fig. 13 shows measured MAESQ, RMSESQ, and Max ErrorSQ for the traditional source coder of Fig. 1 for MR, DR, and CT images for particular bits per pixel.
The table of Fig. 15 shows that the compression ratio MAER, and RMSER of VQSC-II are always greater than one and, therefore, less than those of WO 95!26591 2 ~ g ~ 7 4 ~ PCT/US95103771 SQ. That is, VQSC-II always has fewer bits per sample, and a smaller MAE and RMSE than does SQ. VQSC-Ii also has a smaller max error. Thus, in every case simulated, VQSC-II is a superior quantizer than is SQ.
A comparison circuit for the circuit of Fig. 19 would be analogous to those of Figs. 3 and 12.
In comparison with the traditional source coder, the present invention allows (1) improved quality with the same storage requirements, (2) improved storage requirements with the same quality, {3) some improvement in both quality and storage, or {4) some other tradeoff in quafity and storage requirements.
The present invention is not limited to any particular video standard.
The use of the term "conductor" in the singular is used several times with reference to the circuits of the figures. This is not to imply that there could not be parallel conductors to transmit data in parallel. For example, conductor 18 could comprise more than one individual conductor.
The present invention may be embodied in specific farms other than those of the preceding description, which are to be considered only as illustrative and not restrictive. Accordingly, the scope of the invention is indicated by the following claims, including equivalents thereof, rather than by the specific eml~diments described in the preceding description.
Technical Field:
S The present invention relates to a source coder and, more particularly, to a fixed quality source coder with a fixed threshold that may be used in compression of medical image data.
Background Art: In a normal hospital radiological environment, a large amount of medical image data is generated from different modalities, such as, computed tomography (CT), magnetic resonance (Iv112) imaging, and computed radiography (CR). Devices that process the image data typically include an analog-to-digital converter (ADC) that converts analog image data to digital image data.
Converting to digital image data serves two purposes. First, there are certain advantages in processing digital rather than analog data. Second, the process of digitizing analog data has the potential of more efficiently compressing the analog data because the compressed digital data can take less memory space to store.
A quantizer is a device that represents one signal that can take on a large number of values by another signal that can take on only a limited number of values. A four-bit ADC, for example, represents the value of a continuously varying i.e., analog) signal by a digital signal that can have only one of sixteen values. Scalar quantizers operate on signals having a single degree of freedom, such as an ADC operating on a voltage signal. ADCs perform "scalar quantization"
(SQ) in that each sample is unrelated to the previous and next samples.
Referring to Fig. 1, a traditional source coder 10 includes a low pass filter 12, a sample and hold circuit (S/F)] 14, and an n-bit ADC 16.
Typically, S/H
14. and ADC 16 work together. Low pass filter 12 removes high frequency components from the analog input signal to prevent abasing problems. SIH 14 samples the continuous waveform into a discrete analog signal on conductor 15 that is digitized by ADC 16, which typically is a uniform scalar quantizer that converts the analog signal into one of a fuute number of uniformly spaced levels spanning the analog range. The sampling rate of S/H controls the number of r x s samples/frune of an image. For example, a typical value for r x s samples/frame is 512 X 512 sampleslframe. ADC provides a digital signal IDO to conductor 18. Because there are a finite number of sampling points for sample and hold circuit 14 and a finite W0 95/26591 - - PCTIfJS95103771 number of levels in ADC 16, the conversion of the original analog signal to a digital signal IDp introduces quantization error when compared to the original analog signal.
All ADCs have a finite number of levels and all ADCs have quantization distortion.
Because a finite number of levels are used to represent the data accurately, some data compression occurs in all ADCs.
Vector quantizers, by contrast, operate on signals having multiple degrees of freedom. In contrast to SQ, vector quantization (VQ) deals with a block of samples or vector at once, and as a result VQ has some performance advantages as compared with scalar quantization. VQ can be viewed as pattern matching, where input patterns or vectors are approximated by one of many stored patterns in a codebook. The resulting quantization error from such an approximation clearly depends upon how well the stored patterns, referred to as code vectors, represent the input vectors. Consequently, codebook generation may be greatly improved by prior knowledge of the information source and is important to the perfom~ance of VQ.
Consider an image that is divided into numerous small areas called pixels (for picture element). Pixels are sufficiently small that the intensity of the image is approximately constant across the pixel area. For example, a black and white image of a house might be divided into a grid of 600 rows and 600 pixels per row. Each pixel would be like a small dot in the image. A block or group of pixels in the same region would form a vector which can be thought of as a small subimage. For example, a 6 x 6 square block of pixels forms a 36 element vector, which may be a portion of a shadow or part of the roof line against a light background.
Mean-removed VQ (M12VQ) is a special case of product codes.
Product codes refer to a family of vector quantization methods in which one large codebook is replaced by more than one smaller codebook. As a result, the vector space represented by the overall quantizer is given as the Cartesian product of smaller vector spaces, and hence the name product codes. In MRVQ, the sample mean of each input vector is computed and then subtracted from every vector component. The resulting mean removed, or residual, vector is then vector quantized. The utility of MRVQ is that the residual vectors can be adequately represented with many fewer code vectors as compared to the original image vectors. The mean of each vector is also coded and included along with each code WO 95/26591 218 6 7 4 ~~ PCTIUS951D3771 vector index. Since the mean is a scalar quantity, it is scalar quantized. As a result, the mean includes all of the possible quantization levels of the scalar quantizer.
MRVQ can provide a significant reduction in the overall complexity of a VQ
system as compared to direct VQ.
It is desirable to apply a high quality compression in order to reduce storage costs. Data compression techniques are typically classified as either lossy or lossless. Lossy algorithms are capable of high compression ratios, but they may distort the data in some way which is not tolerable for some diagnostic medical images. Lossless algorithms do not distort the data, but they are limited to much lower compression ratios. It is noteworthy that an ADC with a finite number of levels with binary codes is a lossy compressor because there is quantization error.
In many applications, the ADC outputs are losslessly sent to the decoder, but there still is quantization error of the original ADC at the decoder.
DISCLOSURE OF INVENTION
A fixed quality source coder receives and performs VQ on an input signal ID. The signal ID may be characterized by the number of bits/sample (intensity) and the number of samples/flame (spatial resolution), and may be provided by a traditional source coder. The traditional source coder may include a sample-and-hold (S/I~ circuit producing r x s samples/frame and an ADC
providing n bits per pixel. In a first embodiment, the number of bits/sample is increased. In the second embodiment, the number of samples/flame is increased. In a third embodiment, both the number of bits/sample and the number of samples/frame are increased.
Measurements made in simulations involving the first and second embodiments show that the fixed quality source coder has a smaller data rate, mean absolute error (MAE) and root mean square error (RMSE) than that of the traditional source coder, while maintaining the same or less maximum error. It is believed that - the third embodiment would have superior results to that of the first and second embodiments.
The fixed quality source coder includes an encoder and may also include a decoder. The encoder may include a lossy codec that receives and encodes the signal ID to provide encoded information to a multiplexer regarding the signal ID.
2186748 ~~ 95~~377 1 ~.~A~~us 27 OCT X85 .f _4_ The lossy codes also decodes the encoded signal to produce a decoded signal IVQ'.
A summer receives ID and I~Q' and determines an error signal ER, where ER may equal ID - I~Q 1. A threshold circuit receives the signal ER and passes a threshold signal F~, which may perforn the following equation: E,. = ER - T when ER > T, F? = 0 when -T <_ ER <_ T, and E,. = ER + T when ER < -T. (Of course, the decisions at the equalities could be different, such as, for example, E,. = ER
- T
when ER ? T, E,. = 0 when -T < ER < T, and E,. = ER + T when ER <_ -T.) The threshold level T may be set to ensure that the maximum error allowed in the encoder is equal to a particular desired maximum error. This allows a particular user to set a maximum error. The threshold level T may be changed by the user.
The maximum error may be equal to the least significant bit of an n-bit ADC or to some other greater or lesser value. The signal ET is then received by a preferably lossless encoder that produces an error component signal E,..
The der oder receives and decodes the signal E,. and the encoded information to produce LS IRp, which is a reconstruction of the original signal Ip.
BRIEF DESCRIPTION OF DRAWINGS
Fig. 1 is a schematic of a prior art source coder.
Fig. 2 is a block diagram of a fixed quality source coder in combination with a traditional source coder according to a fsst embodiment of the present invention.
Fig. 3 is a block diagram of a circuit used to make comparisons between the fixed quality source coder of a fast embodiment of the present invention and a traditional source coder.
Fig. 4 is a table showing theoretical mean absolute error (MAE), root mean square error (RMSE), and maximum error values for the traditional source coder when it is encoding uniformly distributed random noise. The results are shown for cases of truncation and rounding the k least significant number of bits, where k = 1, 2,.., 6.
Fig. 5 is a table showing the measured MAE,,QS~" RMSE"QSC-,, and Max ErrorvQs~, results of the fixed quality source coder of the present invention for tested MR, CT, and DR images and particular bits per pixel (bpp).
WriENDED SHEET
w0 95126591 PCT/US95103771 -S-Fig. 6 is a table showing SQ to VQSC-I compression ratio (CR-I), SQ
to VQSC-I mean absolute error ratio (MAER-n and SQ to VQSC root mean square error ratio (RMSER-n, where SQ is performed by truncation.
Fig. 7 is a table showing SQ to VQSC-I Compression ratio (CR-I), SQ to VQSC-I mean absolute error ratio (MAER-I) and SQ to VQSC-I root mean square error ratio (RMSER-n, where SQ is performed by rounding.
Fig. 8 is a graph showing average error versus column number for MR images of VQSC-I and SQ.
Fig. 9 is a graph showing average error versus column number for DR images of VQSC-I and SQ.
Fig. 10 is a graph showing average error versus column number for CT images of VQSC-I and SQ.
Fig. 11 is a block diagram of a fixed quality source coder in combination with a traditional source coder according to a second embodiment of the present invention.
Fig. 12 is a block diagram of a circuit used to make comparisons between the fixed quality source coder of the second embodiment of the present invention and a traditional source coder.
Fig. 13 is a table showing the measured MAE~a, RMSES~B, and Max Error~_n results of the traditional source coder for MR, DR, and CT
images, for particular bits per pixels.
Fig. 14 is a table showing the measured MAE~~Ga, RMSE,.QS~_n, and M~ ~rvQscn results of the traditional source coder for MR, DR, and CT images, for particular bits per pixels.
Fig. 15 is a table showing SQ to VQSC-II compression ratio (CR-n, SQ to VQSC-II mean absolute error ratio (MAER-I) and SQ to VQSC-II root mean square error ratio (RMSER-In.
Fig. 16 is a graph showing average error versus column number for MR images of VQSC and SQ.
Fig. 17 is a graph showing average error versus column number for DR images of VQSC and SQ.
Fig. 18 is a graph showing average error versus column number for CT images of VQSC and SQ.
WO 95/26591 218 6 7 4 ~~ PCT/f1S95103771 Fig. 19 is a block diagram of a fixed quality source coder in combination with a traditional source coder according to a third embodiment of the present invention.
Fig. 20 is a block diagram of controls allowing the user to set the value of threshold T.
MODES FOR CARRYING OUT THE INVENTION
A. Structure and poeration Referring to Fig. 2, the present invention includes a combination of a fixed quality source coder (hybrid coder) 20 with traditional source coder 10 in which the number of bitslpixel (intensity) and/or samples per frame (spatial resolution) is increased. In the particular embodiments described in connection with Fig. 2, the bitslpixel is increased, but the samples/frame remains the same as that of a traditional source coder.
First and second embodiments of the invention illustrate the performance of fixed quality source coder 20. In the first embodiment, illustrated in Fig. 2, the intensity (or pixel depth) of the signal IDl received by fixed quality source coder 20 is increased by increasing the number of bits of ADC 16 in traditional source coder 10. In the second embodiment, illustrated in Fig. 11, the spatial resolution of the signal IDZ received by fixed quality source coder 20 is increased by increasing the sampling rate of S/Ii 14 (and, if necessary, the cut-off frequency of low pass filter 12). As compared to traditional source coder 10 alone without the increased intensity or spatial resolution, the first and second embodiments have a substantially better compression ratio, better average error and data rate, and at least as good maximum error.
A third embodiment, illustrated in Fig. 19, is a combination of the first and second embodiments, both the intensity and spatial resolution are increased.
It is believed that the third embodiment will have superior results to that of the first and second embodiments.
As used herein, S/Fi 14 operates at r x s sampleslframe (~ 512 X
512), and S/Fi 22 is a sample-and-hold circuit operating at R x S
sampleslfrnnle (e~..
1024 X 1024). Note that the cut-off frequency of low pass filter 12 may be adjusted depending on the frequency of S/H 14 or SIH 22. ADC 16 is an n-bit ADC and ADC 24 is an n + k bit ADC, where k is a positive integer. For comparison purposes only, R/r = 1,2,..., and S/s = 1,2,.... However, no particular value of R, r, S, or s are required.
The combination of S/H 14 and ADC 16 produces signal Im on conductor 18, as shown in Fig. 1. The combination of SB 14 and ADC 24 produces signal IDl on conductor 18, as shown in Fig. 2. The combination of S/H
22 and ADC 16 produces signal IDZ on conductor 18, as shown in Fig. 11. The combination of S/H 22 and ADC 24 produces signal ID3 on conductor 18, as shown in Fig. 19. Signal "ID" is used to represent a generalized signai that could be IDI, Io2, or ID3 depending on which embodiment is employed.
The value of fixed quality source coder 20 becomes apparent when it is considered that the extra expense and space associated increasing the number of bits of ADC 16 or increasing the sampling late of S/H 14 is minuscule in comparison with the saving reaped by reduced memory requirements. At the same time, doctors and hospitals can be assured that a particular maximum error Ievel is met.
Referring to Fig. 2, a preferred embodiment fixed quality source coder 20 includes an encoder 28, a multiplexer 30, a demultiplexer 32, and a decoder 34. Fixed quality source coder 20 receives signal ID, conductor 18 from SIH 14 and ADC 24. Typically, there is a storage device and/or a transmission link between multiplexer 30 and demultiplexer 32. Where the data is stored for later use, the amount of memory in the storage device is typically enormous.
Encoder 28 produces an encoded information signal I~ on conductor 38 regarding signal IDS and an error component signal Er on conductor 40, which are provided to multiplexer 30. An overscore signifies that a parameter is vector quantized. In a preferred embodiment of fixed quality source coder 20, the encoded information I~ includes a mean residual vector quantizer (MI2VQ) component and address information. Multiplexer 30 provides a signal IvQ~.
As used herein, VQSC signifies "vector quantization source coder"
and represents fixed quality source coder 20. VQSC-I signifies "vector quantization source coder" with respect to the first embodiment of the invention. VQSC is contrasted with SQ, which signifies scalar quantization and represents traditional source coder ADC 10, as shown in Fig. 1.
w0 95126591 PCTIUS95103771 _8-The information in multiplexer 30 may be stored and later reconstructed as follows. Demultiplexer 32 provides MRVQ component and address information I,,,~ and error component E,. on conductor 44 and 46, respectively, which are received by decoder 34. Decoder 34 includes a lossless decoder 86, a lossy decoder 90, a threshold circuit 94, and a summer 98, together which perform -the inverse of encoder 28 to provide a reconstructed digital signal I,~"
having r x s samples/fiame and n + k bits per sample. Ideally, Ice, is identical to ID,, but in practice I,~, will be only a very close approximation of ID,.
Encoder 28 includes a lossy codes 52 that receives signal ID,. Lossy codes 52 includes an encoder that performs VQ on signal IDS to produce encoded information signal I,,~ on conductor 38, and a decoder that produces a signal I"Q', which is a reconstruction of signal IDS. L.ossy codes 52 may perform any of a variety of VQ techniques or other lossy techniques. These techniques include, but are not limited to, tree-stnlctured VQ (TSVQ), multi-stage VQ (MSVQ), hierarchical VQ (HVQ), and JPEG. Adaptive algorithms may be employed in adaptive tree search vector quantization (ATSVQ), multi-stage adaptive search VQ (MASVQ), and hierarchical adaptive search vector quantization (HASVQ).
TSVQ has low encoding complexity and performance that is close to the optimal full search encoder for VQ. MSVQ is a product code technique and has the same low complexity as TSVQ. However, the memory requirement for a MSVQ codebook is directly proportional to the number of stages while the memory requirement for a TSVQ codebook is exponentially proportional to the codebook address size. In MSVQ, the performance improvement rapidly degrades as the number of stages increases.
In MRVQ, the mean of each vector is subtracted from each vector component before the codebook generation process begins. For reasonably sized codebooks, however, there are occasions when the codebook can no longer adequately represent edge or texture information. HVQ has been proposed to overcome this problem. In HVQ, an image is usually partitioned into several blocks of different size such that the contents of the smaller blocks are inside the larger blocks. An independent codebook using a standard VQ codebook generation algorithm (such as LBG) is generated for each block size. In the encoding process, the largest block is encoded first. If the texture or information in the image is not WO 95/26591 2 ~ g r ~ ,~ ~ PCTfUS95/03771 adequately recovered, the next smaller block is encoded, and so forth. HVQ has the greatest encoding complexity and memory requirement of the techniques described herein.
The JPEG technique is described in Wallace et al., "The JPF.G Still Picture Compression Standard," )~ Transactions on Consumer Electronics, Vol.
38, No. 1, February 1992, pp. xviii-xxxiv.
TASVQ and HASVQ are adaptive versions of TSVQ and HVQ, respectively, and provide much better performance. A version of ATSVQ is described in U.S. Patent No. 5,172,228 to Paul D. Israelsen, entitled "Image Compression Method and Apparatus Employing Distortion Adaptive Tree Search Vector Quantization." The MASVQ technique has the low complexity and simple structure of the MSVQ, but better performance.
The following adaptive algorithm is presented for ATSVQ but may be used in various other techniques. In the adaptive tree search for ATSVQ, given a constant rate, the encoder traverses the depth of the tree where it will search for a match that best describes the input vector. Depending on the given rate, the encoder will search down the tree to find the best possible match or will stop somewhere along the tree and transmit a shorter codeword suffering a minimal increase in distortion. For the product VQ (e.g., mean-residual with adaptive search), however, if the input vector is rather flat, then only the mean of the vector needs to be transmitted and a few bits are saved for more active vectors which take more bits to be transmitted. A buffer is used to allow the encoder to adapt to varying statistics of the input vectors. The buffer characteristics are defined using two parameters, the error threshold and the current buffer level. The error threshold is usually a function of the current buffer level, and the choice of this function can be optimized to improve algorithmic performance. The function is chosen to be linear. The following is a pseudocode form of the algorithm:
1: Based on the initial buffer level evaluate the initial threshold.
2: Given an input vector, do a) while distortion > threshold look for the best match (minimum distortion) for the input vector at the current level of the tree codebook. If distortion 5 threshold then go to step b.
218b748 -lo-else if the current Ievel <_ maximum level of the tree codebook, then current level = current level + 1 else go to step b.
b) Determine the number of bits n for the best match.
This includes the index along with a prefix to identify the level of the tree where the best match was found.
c) Use n found in the previous step to update the current buffer level b according to b = b + n - outbits where outbits is the designated constant rate of the encoder.
d) Evaluate the new threshold.
This adaptive algorithm is a rather universal scheme and can easily be adapted to different VQ techniques, as described below.
For MRVQ, the algorithm can be modified so that when the distortion, compared to the mean only, is less than the threshold only, the index of the mean of the vector would be transmitted. This saves encoding time and channel bandwidth.
When the HASVQ employs the adaptive search algorithm, the HASVQ algorithm starts with the largest block (vector). If the distortion is still greater than the threshold after going down to the bottom of the tree-structured codebook (for the respective vector), then the entire adaptive encoding process restarts for the next block size, and so on. The index of the best match along with a prefix that includes the codebook type (vector size) plus the level of the tree are transmitted.
MASVQ may also employ the adaptive search algorithm. MASVQ is .
particularly suited to exploit the successive approximation nature of a multi-stage VQ
codebook. Given a constant rate, the encoder searches every successive stage and looks for the best match. If the rate is high, the encoder will search through all the stages, and if the rate is low the encoder will compromise with a minimum increase in distortion for a shorter codeword. MASVQ employs a buffer adapted to the varying statistics of the input image. As the input vector arrives, the multi-stage WO 95/26591 218 6 7 4 8 PCT~S95/03771 codebook is searched for the best match starting with the first stage and traversing through the successive codebooks one stage at a time. If the distortion requirement is met, further search of the codebook is terminated and the index of the best match along with a prefix to specify the stage of the search are transmitted. The tree-structured codebook may be incorporated at each stage of the search.
Therefore, in a sense, MASVQ is an adaptive algorithm not only along each successive stage, but also adaptive for each level of the tree-structured codebook of the respective stage.
Consequently, the prefix specifies the stage and the level of the codebook for that stage.
MASVQ may employ a tree structured codebook. MASVQ with a tree structured codebook was employed in lossy codec 52 to make the performance measurements described below.
MRVQ is described in U.S. Patent No. 4,958,225 to Bi et al, entitled "A Full-Search-Equivalent Method For Matching Data and A Vector Quantizer Utilizing Such Method," and in a PhD. dissertation entitted "Vector Quantization of Digital Images" by Richard Baker, published in June 1984 at Stanford University. A
preferred circuit for searching the codebook in MRVQ is described in U.S.
Patent No. 5,031,037 to Paul D. Israelsen entitled "Vector Quantizer Codebook Processing Circuit."
Multiplexer 30 and demultiplexer 32 are desirable, but may not be necessary depending on the type of encoding that is used in lossy codec 52.
Referring to Fig. 2, a summer 66 receives signals ID, and IvQ' and provides residual data signal ER to conductor 70, where ER = IDI - IvQ 1.
Threshold circuit 74 receives ER and a programmable fixed threshold value T and provides a tnincated error signal E,. on conductor 78. The value of truncated error signal E,. is calculated according to equation (1), below:
ER - T> if ER > T;
~, = 0, if -T s ER s T; (1) ER + T, if ER < -T.
where ER and T are described above. The maximum error allowed then is the threshold T.
WO 95/26591 , PCT1US95103771 The threshold T is set to insure the maximum error allowed by fixed quality source coder 20. The value of T is preferably programmable through software or hardwired buttons, allowing the clinician to select the maximum error that may be tolerated. In general, of course, a smaller the maximum error leads to larger memory requirements, but usually a reduced maximum error and average error. Threshold T could be equal to the least significant bit of a traditional source coder in Fig. 1, i-e., n-bit ADC 16. Threshold T could be another value according to the desired level of accuracy. If T is other than an integer rounding or truncation may occur. The threshold T is added back in decoder 34, as described below.
Signal E,.is received by a lossless encoder 82, which provides signal E, to conductor 40. Lossless encoder 82 may be a Rice coder, such as is described in Venbrux et al., "A VLSI Chip Set for High-Speed Lossless Data Compression,"
TFFF-Transactions on Circuits and Systems for Video Technology, Vol. 2, No. 4, December 1992, pp. 381-391. Other lossless encoders could be used including, but not limited to Huffman, Splaytrees, and LZW encoders. A lossy encoder could be used in place of lossless encoder 82, but it would introduce additional error.
Referring to decoder 34, lossless decoder 86 provides a signal E,.', which is analogous to signal E,. on conductor 78. Threshold circuit 94 provides F,~' according to equation (2), below:
U, if E,j.' = 0 _ 13i,' + T, if F.1.' s 0 (2) F..i.' - T, if EL' s 0, where E,.' is received by threshold circuit 94 and T is the threshold level of threshold circuit 94.
Fig. 2 represents the invention in block diagram form. The functions of encoder 28, muItiplexer 30, demultiplexer 32, and decoder 34 could be performed by a microprocessor, related circuitry, and memory. In that case, the "conductors"
of Fig. 2 may represent transfer of data to and from memory rather than to the other circuits shown in the Fig. 2.
The analog signal received by low pass filter 12 typically originates from a high quality sensor from contemporaneously detected information.
However, WO 95126591 2 ~ 8 6 7 4 8 PCT~S95/03771 the originally sensed signal may be processed by a variety of circuitry including, but not limited to, a low pass filter and a sample-and-hold circuit. Moreover, other circuitry may interact with various circuits of fixed quality source coder 20.
For example, processing circuitry could be placed between ADC 24 and encoder 28.
Encoder 28 could receive signals from ADC 24 and other circuitry. Multiplexer could receive signals from encoder 28 and other circuitry. In short, fixed quality source coder 20 may interact with or act in combination with other circuitry to provide additional benefits beyond the scope of the present invention.
Referring to Fig. 11, the second embodiment of the invention is illustrated by the combination of fixed quality source coder 20 and a traditional source coder including low pass filter 12, S/H 22 (supplying R x S
samples/frulle) and n-bit ADC 16, which provides signal IDZ, having R x S samples/frame and n bits per sample. The bandwidth and cut-off frequency of low pass filter 12 is preferably increased with the increase in sampleslframe. The operation of fixed quality source coder 20 is described in connection with Fig. 2, above. Fixed quality source coder provides reconstructed signal I~z, which is ideally equal to IDZ.
Referring to Fig. 19, the third embodiment of the invention is illustrated by the combination of fixed quality source coder 20 and a traditional source coder including low pass filter 12, S/H 22 (supplying R x S
samples/frdlne) 20 and n + k bit ADC 24, which provides signal Ip3, having R x S samples/frame and n + k bits per sample. The operation of fixed quality source coder 20 is described in connection with Fig. 2, above. Fixed quality source coder 20 provides reconstructed signal I,~, which is ideally equal to IDS~
Referring to Fig. 20, the value of threshold T in fixed quality source coder 20 may be set by the user through control module 120. Control module 120 could include keys, buttons, or other controls integral to fixed quality source coder 20 oa keys, buttons, or other controls in a stand alone computer, such as, for example, an IBM PC type computer or an Apple Macintosh type computer. In a preferred embodiment of the invention, there is only a single value of threshold T
for both encoder 28 and decoder 34. . Alternatively, the value of threshold T
for encoder 28 could be different than the value of threshold T for decoder 34.
Again, the user could decide the value of each for their particular needs.
B. Performance The performance of fixed quality source coder 20 may be illustrated through various measures described below and through comparisons with the performance of the traditional source coder.
The mean absolute error (MAE) and root mean square error (RMSE) are two measures of distortion. The MAE of n-bit ADC 10 is MAF.~ and is defined in equation (3), below:
N
MAEsQ = 1 ~II~-IsQtl (3)>
N isi where N is the total number of pixels, ID; is a particular sample of input signal Ip, and Ice; is a particular sample of signal ISQ. The MAE of fixed quality source coder 20 is MAE~Q~, defined in equation (4), below:
N
MAEvQSC = N~~In~- Ixn~ ~ (4)~
where N and ID; are defined above and Ice; is a particular sample of signal I~
at the output of decoder 34.
The RMSE of n-bit ADC 10 is RMSEsQ, defined in equation (5), below:
N
RMSE~ _ [ 1 ~ (1~ -IS~)2]In N ;al where N, ID;, and ISQ; are defined above.
The RMSE of fixed quality source coder 20 is RMSE"~c, defined in equation (6), below:
N
RMSEv~c = [N ~(IM-I~)2]la where N, ID;, and I,~; are defined above.
WO 95126591 218 6 7 4 ~ PCT~S95/03771 The compression ratio (CR) of n-bit ADC 10 to fixed quality source coder 20 is defined in equation ('~, below:
CR = BRA / BR"QS~
where BRSQ is the bit rate of Is~.r at the output of n-bit ADC 10 and BRvQSC
is the bit rate of Iv~c; at the output of multiplexer 30. The bit rate (or data rate) is defined as bits per pixel (BPP).
The mean average error ratio (MAFR) of scalar quantizer 10 to fixed quality source coder 20 is defined in equation (8), below:
MAER = MAEs~/MAEvasc (8)~
where MAF.~Q and MAF"~~ are defined in equations (3) and (4), above.
The root mean square error ratio (RMSER) of scalar quantizer 10 to fixed quality source coder 20 is defined in equation (9), below:
RMSER = RMSESQ/ RMSE"Q~ (9), where RMSFSQ and RMSE"QSC are defined in equations (5) and (6), above.
A comparison of the first embodiment of the invention is described in connection with Fig. 3. Referring to Fig. 3, n + k bit ADC 24 receives signal IA
and provides an n + k bit digital signal IDS at conductor 102. Signal IDl is received by n-bit ADC 10 and fixed quality source coder 28. N-bit ADC 10 provides a n-bit scalar quantized signal Is~r, the least significant bit of which is more significant than the kth bit of the signal ID,. For example, if n is 8 and k is 3, ID, would have three bits with less significance than the least significant bit of signal IS~r. The signal ISQ_x is received by multiplier circuit 104, which multiples the signal Is~.r by f' (or shifts left by k-bits) to produce an n + k bit scalar quantized signal ISQ. The signal ISQ has n + k bits, the k least significant bits of which are zero. Because ADC 10 performs scalar quantization, the letters "SQ" are used to represent ADC 10 and multiplier 104. Referring to Figs. Z and 3, the output of fixed quality source coder 20 is I,~1.
Simulations were made with the circuit of Fig. 3 to compare fixed quality source coder 20 with traditional source coder 10. Three different types of medical images were used in the simulations: two magnetic resonance images (Mlt), one computed tomography (CT) image, and one digital radiography (DR) image.
The MR images had 8-bit 480x392 samples per image, the DR image had 12-bit 608x496 samples per image, and the CT image had 12-bit 512x512 samples per image.
WO 95126591 21 ~ ~ -, ~ ~ FC1'IUS95/03771 The table of Fig. 4 shows theoretical MAEsQ, RSMEsQ, and maximum error (Max ErrsQ) for traditional source coder ADC 10 for the cases of truncation and rounding of the specified least significant number of bits (k). The data in the table of Fig. 4 are in counts, i.e., the bit levels. The data present the best possible error measures achievable from a uniform SQ and assumes that the image data is uniformly distributed over the range of the quantizer.
The table of Fig. 5 shows the measured MAF.~,Qsm, RSME,,Qsc_~, and maximum error (Max ErrVQs~ results of fixed quality source coder 20 for the tested MR, CT, and DR images and particular bits per pixel (bpp).
Using the results of the tables of Figs. 4 and 5, the table of Figs. 6 and 7 show CR-I, MAER-I, and RMSER-I as defined in equations ('n, (8), and (9), for particular specified bpp, and in which VQSC-I and SQ have the same maximum error. In Fig. 6, SQ is performed by truncation. In Fig. 7, SQ is performed by rounding. These results are obtained under the same maximum error condition.
The tables of Fig. 6 and 7 show that CR-I, MAER-I, and RMSER-I are always greater than I. That is, in the same maximum error condition, VQSC-I always has a smaller BR, MA)rI, and RMSE-I than SQ. Thus, in every case simulated, VQSC-I
is a superior quantizer to the uniform SQ.
In order to visually demonstrate that VQSC-I is superior to SQ, the average error versus column number for MR, DR, and CT images were computed.
These results are illustrated in Figs. 9, 10, and lI, in each of which cases the max-imum errors Max ErrvQSC_~ and Max Errsc are each 7 and VQSC has fewer bits per sample than SQ. These results show that for each image the average error at each columa of VQSC-I is less than or equal to that of SQ. Accordingly, VQSC-I is superior to SQ.
In summary, the simulation results show that the fixed quality source coder has a smaller MAE, RSME and data rate than the traditional coder, while maintaining the same maximum error.
A comparison of the second embodiment of the invention is described in connection with Fig. 12. Referring to Fig. 12, a interpolator 110 receives signal Im from the traditional source coder of Fig. 1. Interpolator 110 provides the signal Ir,,.I. through, for example, (1) linear interpolation, (2) cubic interpolation, or (3) increasing the number of samples/frame by, for example, repeating each pixel twice WO 95126592 PCTlUS95/0377t in a line and repeating each line. Interpolator 110 reconstructs the r x s samples/frame image into R x S samples/frame image. The resulting signal Ia,.,. has R x S samples/frune and may be compared with signal I,~2 of fixed quality source coder 20 in Fig. 11.
Referring to Fig. 11, in order to compare the performance of the SQ
with VQSC-II, each frame of the analog image is sampled by S/FI 22 with a resolution of R x S samples. Then, each sample is quantized into an n-bit digital signal by ADC 16. This R x S n-bit digital signal IDZ is assumed to be the original signal. See Fig. 12. This signal is low pass filtered by low pass filter 12 and sub-sampled into r x s sampleslfrnme and to obtain the output of the SQ. The output with n-bit r x s samples/frame is the same IDO of Fig. 1. These r x s samples of the digital signal are reconstructed into R x S samples by interpolator 110 and constitute the digital signal of the larger frame.
The MAE and RMSE between the original signal and the reconstnicted signal of the SQ can be evaluated. MAE and RMSE between the original signal and the output of the VQSC-II are also evaluated.
The same test images used in connection with the VQSC-I simulation described above were also used in connection with VQSC-II. The original signals were low pass filtered and 2:1 sub-sampled as the output of SQ. The low pass filtering and sub-sampling processes were actually done by taking the average of each two consecutive pixels to represent one pixel. The output of SQ was up-sampled and filtered (by a cubic spline interpolation) to obtain the reconstructed image. The MAE and RMSE between the SQ reconstructed image and the original image were evaluated and are shown in the table of Fig. 15.
The original images were also coded by using fixed quality source coder 20, as shown in Fig. 11. Measured values of MAE"Q~a and RMSE"~~" and Max Error,,QSGa are provided in the table of Fig. 14 for particular images and bits per pixel.
The table of Fig. 13 shows measured MAESQ, RMSESQ, and Max ErrorSQ for the traditional source coder of Fig. 1 for MR, DR, and CT images for particular bits per pixel.
The table of Fig. 15 shows that the compression ratio MAER, and RMSER of VQSC-II are always greater than one and, therefore, less than those of WO 95!26591 2 ~ g ~ 7 4 ~ PCT/US95103771 SQ. That is, VQSC-II always has fewer bits per sample, and a smaller MAE and RMSE than does SQ. VQSC-Ii also has a smaller max error. Thus, in every case simulated, VQSC-II is a superior quantizer than is SQ.
A comparison circuit for the circuit of Fig. 19 would be analogous to those of Figs. 3 and 12.
In comparison with the traditional source coder, the present invention allows (1) improved quality with the same storage requirements, (2) improved storage requirements with the same quality, {3) some improvement in both quality and storage, or {4) some other tradeoff in quafity and storage requirements.
The present invention is not limited to any particular video standard.
The use of the term "conductor" in the singular is used several times with reference to the circuits of the figures. This is not to imply that there could not be parallel conductors to transmit data in parallel. For example, conductor 18 could comprise more than one individual conductor.
The present invention may be embodied in specific farms other than those of the preceding description, which are to be considered only as illustrative and not restrictive. Accordingly, the scope of the invention is indicated by the following claims, including equivalents thereof, rather than by the specific eml~diments described in the preceding description.
Claims (13)
1. A data compression system comprising a fixed quality source coder for encoding a digital signal ID and a decoder, the codes comprising:
codec leans for receiving the signal I D, for encoding the signal I D to provide encoded information signal I~~ regarding the signal I D, and for decoding the encoded signal to produce a decoded signal I VQ-1;
means for determining an error signal E~ by comparison of the signal I D and the decoded signal I VQ-1;
a first threshold means for receiving the signal E ~ and for passing a threshold signal E~ based on a first fixed threshold value;
lossless encoder means for reasiving and encoding the signal E~ to provide a signal E~;
and the decoder comprising:
decoding means for receiving the signals ~~ and I~~, said decoding means providing a signal ~~, responsive to signal E~, and a signal I MR, responsive to signal I MR;
second threshold means for receiving the signal E T and for passing a truncated error signal E ~, based on a comparison of E T and a second fixed threshold value; and means for providing a signal I ~ by utilising signals E~, and I MR, wherein I RD is a reconstruction of the signal I D.
codec leans for receiving the signal I D, for encoding the signal I D to provide encoded information signal I~~ regarding the signal I D, and for decoding the encoded signal to produce a decoded signal I VQ-1;
means for determining an error signal E~ by comparison of the signal I D and the decoded signal I VQ-1;
a first threshold means for receiving the signal E ~ and for passing a threshold signal E~ based on a first fixed threshold value;
lossless encoder means for reasiving and encoding the signal E~ to provide a signal E~;
and the decoder comprising:
decoding means for receiving the signals ~~ and I~~, said decoding means providing a signal ~~, responsive to signal E~, and a signal I MR, responsive to signal I MR;
second threshold means for receiving the signal E T and for passing a truncated error signal E ~, based on a comparison of E T and a second fixed threshold value; and means for providing a signal I ~ by utilising signals E~, and I MR, wherein I RD is a reconstruction of the signal I D.
2. The system of claim 1 in which the first and second threshold values are selected by a user.
3. The system of claim 1, further comprising:
multiplexing means for receiving the signal E T and the the signal I MR and for multiplexing the signal E T and the signal I MR to provide a multiplexed signal responsive thereto; and demultiplexing means for receiving the multiplexed signals and for providing demultiplexed signals responsive thereto to said decoding means.
multiplexing means for receiving the signal E T and the the signal I MR and for multiplexing the signal E T and the signal I MR to provide a multiplexed signal responsive thereto; and demultiplexing means for receiving the multiplexed signals and for providing demultiplexed signals responsive thereto to said decoding means.
4. The system of claim i further including an N + R
bit analog to digital converter in communication with said codec means wherein the signal I D has n + k bits and the coder has a maximum error that is no greater than that of an n-bit analog to digital converter, but with an average error and a data rate that are substantially smaller than that of the n-bit analog to digital converter.
bit analog to digital converter in communication with said codec means wherein the signal I D has n + k bits and the coder has a maximum error that is no greater than that of an n-bit analog to digital converter, but with an average error and a data rate that are substantially smaller than that of the n-bit analog to digital converter.
5. The system of claim 1 in which the signal I D has R x S samples/frame and the coder has a maximum error that is no greater than that of a signal having r x s samples/frame where R
is larger than r and S is larger than s, but with an average error and a data rate that are substantially smaller than that of the signal having r x s samples/frame.
is larger than r and S is larger than s, but with an average error and a data rate that are substantially smaller than that of the signal having r x s samples/frame.
6. The system of claim 1 in which the lossless encoder means includes a Rice encoder.
7. The system of claim 1 in which the codec means includes a lossy encoder that performs multi-stage tree adaptive search vector quantisation.
8. The system of claim 1 in which E R = I D - I VQ-1.
9. The system of claim i in which E T - E R - T when E R > T, E T = 0 when -T ~ E R ~ T, and E T = E R + T when E R < -T.
~
~
10. The system of claim 1 therein said means for determining said error signal E R determines said error signal E R
by comparing the digital signal I D and the decoded signal I VQ-1.
by comparing the digital signal I D and the decoded signal I VQ-1.
11. The system of claim 10 in which the codec is a lossy codec and includes a lossy encoder.
12. The system of claim 1 wherein said first fixed threshold value is identical to said second fixed threshold value.
13. A method for compressing input data comprising the steps of:
receiving a signal I D and encoding said signal I D to produce a signal I MR;
decoding said encoded signal I D to produce a decoded signal IVQ-1;
determining a first orror signal E R by comparing the signal I D with the signal I VQ-1;
said method being characterised by the steps of:
receiving the first error signal E R and determining a truncated error signal E T
based on a comparison of E R and a first fixed threshold values;
encoding ssid signal E T to produce a signal E T;
relaying said sighal E T and said signal I MR
to a decoding means to produce respectively a responsive signal E T' and s responsive signal I MR;
receiving the signal E T' and determining a truncated error signal E R' based on a comparison of E T' and a second fixed threshold value; and utilising said signal E R' and said signal I MR' to provide a decoded signal I MD which is a reconstruction of I D.
receiving a signal I D and encoding said signal I D to produce a signal I MR;
decoding said encoded signal I D to produce a decoded signal IVQ-1;
determining a first orror signal E R by comparing the signal I D with the signal I VQ-1;
said method being characterised by the steps of:
receiving the first error signal E R and determining a truncated error signal E T
based on a comparison of E R and a first fixed threshold values;
encoding ssid signal E T to produce a signal E T;
relaying said sighal E T and said signal I MR
to a decoding means to produce respectively a responsive signal E T' and s responsive signal I MR;
receiving the signal E T' and determining a truncated error signal E R' based on a comparison of E T' and a second fixed threshold value; and utilising said signal E R' and said signal I MR' to provide a decoded signal I MD which is a reconstruction of I D.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US21860194A | 1994-03-28 | 1994-03-28 | |
US218,601 | 1994-03-28 | ||
US08/274,622 US5541594A (en) | 1994-03-28 | 1994-07-13 | Fixed quality source coder with fixed threshold |
US274,622 | 1994-07-13 | ||
PCT/US1995/003771 WO1995026591A1 (en) | 1994-03-28 | 1995-03-27 | Fixed quality source coder |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2186748A1 CA2186748A1 (en) | 1995-10-05 |
CA2186748C true CA2186748C (en) | 2000-06-27 |
Family
ID=26913076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002186748A Expired - Fee Related CA2186748C (en) | 1994-03-28 | 1995-03-27 | Fixed quality source coder |
Country Status (5)
Country | Link |
---|---|
US (1) | US5541594A (en) |
EP (1) | EP0753218B1 (en) |
CA (1) | CA2186748C (en) |
DE (1) | DE69511390T2 (en) |
WO (1) | WO1995026591A1 (en) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3302229B2 (en) * | 1994-09-20 | 2002-07-15 | 株式会社リコー | Encoding method, encoding / decoding method and decoding method |
US5748786A (en) * | 1994-09-21 | 1998-05-05 | Ricoh Company, Ltd. | Apparatus for compression using reversible embedded wavelets |
US6873734B1 (en) * | 1994-09-21 | 2005-03-29 | Ricoh Company Ltd | Method and apparatus for compression using reversible wavelet transforms and an embedded codestream |
US6549666B1 (en) * | 1994-09-21 | 2003-04-15 | Ricoh Company, Ltd | Reversible embedded wavelet system implementation |
US5881176A (en) | 1994-09-21 | 1999-03-09 | Ricoh Corporation | Compression and decompression with wavelet style and binary style including quantization by device-dependent parser |
US6229927B1 (en) | 1994-09-21 | 2001-05-08 | Ricoh Company, Ltd. | Reversible embedded wavelet system implementation |
US5694126A (en) * | 1995-03-20 | 1997-12-02 | Oki Data Corporation | Adaptive predictive data compression method and apparatus |
US6968003B1 (en) * | 1996-01-29 | 2005-11-22 | International Business Machines Corporation | Speed-memory tradeoff for MPEG decoders |
JP3987582B2 (en) * | 1996-11-11 | 2007-10-10 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | Data compression / expansion using rice encoder / decoder |
US6529551B1 (en) * | 1996-12-10 | 2003-03-04 | Thomson Licensing S.A. | Data efficient quantization table for a digital video signal processor |
US5999656A (en) * | 1997-01-17 | 1999-12-07 | Ricoh Co., Ltd. | Overlapped reversible transforms for unified lossless/lossy compression |
US5940585A (en) * | 1997-06-17 | 1999-08-17 | Hewlett-Packard Company | Data merge unit |
US6044172A (en) * | 1997-12-22 | 2000-03-28 | Ricoh Company Ltd. | Method and apparatus for reversible color conversion |
DE69944788C5 (en) | 1998-04-09 | 2023-10-19 | Koninklijke Philips N.V. | LOSSLESS CODING/DECODING IN A TRANSMISSION SYSTEM |
EP0973340A3 (en) * | 1998-06-29 | 2001-03-28 | Xerox Corporation | HVQ compression with an error term |
EP0969656B1 (en) | 1998-06-29 | 2007-01-24 | Xerox Corporation | Compression for image boundaries |
US6499060B1 (en) * | 1999-03-12 | 2002-12-24 | Microsoft Corporation | Media coding for loss recovery with remotely predicted data units |
US20020016161A1 (en) * | 2000-02-10 | 2002-02-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for compression of speech encoded parameters |
US6898323B2 (en) * | 2001-02-15 | 2005-05-24 | Ricoh Company, Ltd. | Memory usage scheme for performing wavelet processing |
US6895120B2 (en) | 2001-03-30 | 2005-05-17 | Ricoh Co., Ltd. | 5,3 wavelet filter having three high pair and low pair filter elements with two pairs of cascaded delays |
US6859563B2 (en) | 2001-03-30 | 2005-02-22 | Ricoh Co., Ltd. | Method and apparatus for decoding information using late contexts |
US7006697B1 (en) | 2001-03-30 | 2006-02-28 | Ricoh Co., Ltd. | Parallel block MQ arithmetic image compression of wavelet transform coefficients |
US6950558B2 (en) * | 2001-03-30 | 2005-09-27 | Ricoh Co., Ltd. | Method and apparatus for block sequential processing |
US7062101B2 (en) | 2001-03-30 | 2006-06-13 | Ricoh Co., Ltd. | Method and apparatus for storing bitplanes of coefficients in a reduced size memory |
JP4129812B2 (en) * | 2001-05-24 | 2008-08-06 | 株式会社リコー | Image processing method, apparatus, and image forming apparatus |
US7581027B2 (en) * | 2001-06-27 | 2009-08-25 | Ricoh Co., Ltd. | JPEG 2000 for efficent imaging in a client/server environment |
US7630563B2 (en) * | 2001-07-19 | 2009-12-08 | Qualcomm Incorporated | System and method for decoding digital image and audio data in a lossless manner |
US7280252B1 (en) | 2001-12-19 | 2007-10-09 | Ricoh Co., Ltd. | Error diffusion of multiresolutional representations |
US7095907B1 (en) | 2002-01-10 | 2006-08-22 | Ricoh Co., Ltd. | Content and display device dependent creation of smaller representation of images |
US7120305B2 (en) * | 2002-04-16 | 2006-10-10 | Ricoh, Co., Ltd. | Adaptive nonlinear image enlargement using wavelet transform coefficients |
US6798360B1 (en) * | 2003-06-27 | 2004-09-28 | Canadian Space Agency | Method and system for compressing a continuous data flow in real-time using recursive hierarchical self-organizing cluster vector quantization (HSOCVQ) |
US8085844B2 (en) * | 2003-09-07 | 2011-12-27 | Microsoft Corporation | Signaling reference frame distances |
US8634413B2 (en) | 2004-12-30 | 2014-01-21 | Microsoft Corporation | Use of frame caching to improve packet loss recovery |
US8290057B2 (en) | 2005-02-18 | 2012-10-16 | Mediatek Incorporation | Method of decoding a digital video sequence and related apparatus |
US20100223061A1 (en) * | 2009-02-27 | 2010-09-02 | Nokia Corporation | Method and Apparatus for Audio Coding |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5851471B2 (en) * | 1975-04-09 | 1983-11-16 | 日本電気株式会社 | TV synopsis |
US4652905A (en) * | 1978-04-19 | 1987-03-24 | Quanticon Inc. | Instantaneous neutral colors in dither-quantized color television |
US4560977A (en) * | 1982-06-11 | 1985-12-24 | Mitsubishi Denki Kabushiki Kaisha | Vector quantizer |
JPS6029090A (en) * | 1983-07-28 | 1985-02-14 | Kokusai Denshin Denwa Co Ltd <Kdd> | Transfer quantization system of vector signal |
US4670851A (en) * | 1984-01-09 | 1987-06-02 | Mitsubishi Denki Kabushiki Kaisha | Vector quantizer |
DE3685238D1 (en) * | 1985-02-28 | 1992-06-17 | Mitsubishi Electric Corp | ADAPTIVE INTERFACE VECTOR QUANTIZER ENCODER. |
ATE52371T1 (en) * | 1985-12-04 | 1990-05-15 | Siemens Ag | PROCESS FOR DATA REDUCTION OF DIGITAL IMAGE SIGNALS THROUGH VECTOR QUANTIZATION. |
US4903317A (en) * | 1986-06-24 | 1990-02-20 | Kabushiki Kaisha Toshiba | Image processing apparatus |
GB2210236B (en) * | 1987-09-24 | 1991-12-18 | Newbridge Networks Corp | Speech processing system |
FR2625060B1 (en) * | 1987-12-16 | 1990-10-05 | Guichard Jacques | ENCODING AND DECODING METHOD AND DEVICES FOR TRANSMITTING IMAGES THROUGH A VARIABLE RATE NETWORK |
US5194950A (en) * | 1988-02-29 | 1993-03-16 | Mitsubishi Denki Kabushiki Kaisha | Vector quantizer |
US4943855A (en) * | 1988-07-22 | 1990-07-24 | At&T Bell Laboratories | Progressive sub-band image coding system |
US5031037A (en) * | 1989-04-06 | 1991-07-09 | Utah State University Foundation | Method and apparatus for vector quantizer parallel processing |
US5124791A (en) * | 1989-05-31 | 1992-06-23 | Utah State University Foundation | Frame-to-frame compression of vector quantized signals and other post-processing |
US4958225A (en) * | 1989-06-09 | 1990-09-18 | Utah State University Foundation | Full-search-equivalent method for matching data and a vector quantizer utilizing such method |
WO1992009142A1 (en) * | 1989-06-13 | 1992-05-29 | Utah State University Foundation | Method and apparatus for data compression with reduced distortion |
GB9013217D0 (en) * | 1990-06-13 | 1990-08-01 | Indep Broadcasting Authority | Evaluation of detail in video images,and applications thereof |
US5204899A (en) * | 1991-11-19 | 1993-04-20 | Scientific-Atlanta, Inc. | Vector quantization method employing mirrored input vectors to search codebook |
US5172228A (en) * | 1991-11-19 | 1992-12-15 | Utah State University Foundation | Image compression method and apparatus employing distortion adaptive tree search vector quantization |
US5235418A (en) * | 1991-11-19 | 1993-08-10 | Scientific-Atlanta, Inc. | Method and apparatus for low frequency removal in vector quantization |
US5371544A (en) * | 1992-02-07 | 1994-12-06 | At&T Corp. | Geometric vector quantization |
-
1994
- 1994-07-13 US US08/274,622 patent/US5541594A/en not_active Expired - Lifetime
-
1995
- 1995-03-27 DE DE69511390T patent/DE69511390T2/en not_active Expired - Fee Related
- 1995-03-27 CA CA002186748A patent/CA2186748C/en not_active Expired - Fee Related
- 1995-03-27 WO PCT/US1995/003771 patent/WO1995026591A1/en active IP Right Grant
- 1995-03-27 EP EP95914888A patent/EP0753218B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
WO1995026591A1 (en) | 1995-10-05 |
EP0753218A1 (en) | 1997-01-15 |
US5541594A (en) | 1996-07-30 |
CA2186748A1 (en) | 1995-10-05 |
DE69511390T2 (en) | 2000-05-11 |
DE69511390D1 (en) | 1999-09-16 |
EP0753218B1 (en) | 1999-08-11 |
EP0753218A4 (en) | 1997-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2186748C (en) | Fixed quality source coder | |
JP3978478B2 (en) | Apparatus and method for performing fixed-speed block-unit image compression with estimated pixel values | |
FI107682B (en) | Adaptive block size image compression method and system | |
US6125201A (en) | Method, apparatus and system for compressing data | |
CN100355286C (en) | Adaptive variable-length coding methods for image data | |
US6301392B1 (en) | Efficient methodology to select the quantization threshold parameters in a DWT-based image compression scheme in order to score a predefined minimum number of images into a fixed size secondary storage | |
CN103458242B (en) | Method for compressing image based on color classification Yu cluster | |
US5339164A (en) | Method and apparatus for encoding of data using both vector quantization and runlength encoding and using adaptive runlength encoding | |
JP3369422B2 (en) | Data decoding method and apparatus | |
JP3868014B2 (en) | Video signal encoding method and apparatus | |
EP0908055A1 (en) | Method, apparatus and system for compressing data | |
US5592227A (en) | Method and apparatus for compressing a digital signal using vector quantization | |
US5719961A (en) | Adaptive technique for encoder and decoder signal transformation | |
JPH09507347A (en) | Quad-tree WALSH conversion video / image coding | |
WO2004064402A1 (en) | Processing of images using a limited number of bits | |
Patidar et al. | A review on medical image data compression techniques | |
KR100242635B1 (en) | A system for variable-length-coding and variable-length-decoding digital data | |
US5448296A (en) | Variable parameter block coding and data compression system | |
Ghafourian et al. | Comparison between several adaptive search vector quantization schemes and JPEG standard for image compression | |
JPH05509209A (en) | Hierarchical Entropy Coding Lattice Threshold Quantization Coding Method and Apparatus for Image and Video Compression | |
Riskin et al. | Variable rate vector quantization for medical image compression with applications to progressive transmission | |
KR900004962B1 (en) | Picture image transmiting system of telephone | |
Shavers et al. | Evaluation of TVQ as an Image Coding Technique | |
Fowler Jr et al. | Design of a Real-Time Video-Compression System Using Differential Vector Quantization | |
JPH09307895A (en) | Digital video frame signal coding method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |