CA1255391A - Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts - Google Patents

Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts

Info

Publication number
CA1255391A
CA1255391A CA000510748A CA510748A CA1255391A CA 1255391 A CA1255391 A CA 1255391A CA 000510748 A CA000510748 A CA 000510748A CA 510748 A CA510748 A CA 510748A CA 1255391 A CA1255391 A CA 1255391A
Authority
CA
Canada
Prior art keywords
block
operator
signal
transform
blocks
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
Application number
CA000510748A
Other languages
French (fr)
Inventor
Henrique S. Malvar
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Polycom Inc
Original Assignee
Picturetel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Picturetel Corp filed Critical Picturetel Corp
Application granted granted Critical
Publication of CA1255391A publication Critical patent/CA1255391A/en
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Abstract

ABSTRACT

A method and apparatus for processing n-dimensional digitized signals containing at least two adjacent blocks of digitized sample values. The digitized signal is transformed in accordance with a spatial transform operator. The spatial transform operator is characterized by similar size blocks to the blocks in the input signal, but is operative over blocks of the signal which extend beyond the nominal blocks in the signal by a predetermined number of sample values in at least one dimension. The resultant signal may be similarly transformed by another spatial transform operator to obtain an output transform signal. The latter signal is substantially free from blocking artifacts.

Description

~2~

1 REFERENCE TO_RELATED APPLICATION
The subject matter of this application is related to that of U.S. Patent 4,703,349 which issued October 22, 1987 to Jeffrey G. Bernstein entitled "Method and Apparatus for Multi-Dimensional Signal Processing Using a Short Space Fourier Transform.

BACKGROUND OF THE DISCLOSURE
The invention relates generally to a multi-dimensional signal processing method and apparatus, and in particular to a method and apparatus useful for processing ; multi-dimensional signal.s, such as two-dimensional pictorial images.
The invention is particularly pertinent to the ~ 15 field of image data processing and compression. Image data - compression is a process which allows images to be transmitted in coded form over a communications channel using fewer bits of data than required to transmit an uncoded image. By reducing the quantity of data that i~
transmitted, the received picture is generally degraded in quality from the original. The goal of a particular image data compression method and apparatus is to minimize the amount of degradation that occurs for a given data rate.
One well known compression technique is transform coding. This method involves taking a transformation of the image data to provide a sequence of coefficients which can be encoded using, for example, a non-equal number of bits for each resulting coefficient. In particular, the number of bits employed is based upon the logarithm of the variance for a particular coefficient.
At the receiver, the coded coefficient ::

~2~

1 da~a is employed for reconstructing the coefficient values and performing the inverse of the original transform to obtain an image representative of the original data.
One form of transform coding, block image coding, is 1 often used to accommodate localized variations in image characteristicsO Wi~h block image coding, a digitized function (here referred to as an "image") is decomposed into small I rectangular regions (or "blocks") which are transform coded and I transmitted through a communications channel (generally a I digital channel). At the receiver, the blocks are decoded and ¦l re-assembled in order to reconstruct the image. In a typical situation, an image composed of an array of 256x256 picture elements (pixels) can be viewed as an array of 16x16 blocks, Il where each block contains 16x16 pixels.
~ There are several reasons for breaking up the image 1ll into blocks before coding, among them, considerations of the ; ' amount of data to be processed by the coder at each time, and the possibility of adapting the coder to the particular characteristics of each block. When the coder is designed on 20 1I the basis of an efficient algorithm, block image coding is one ~; ll of the best techniques to achieve significant data compression ; l factors for a given picture quality.
One of the most efficient ways to code each block is to apply the Discrete Cosine Transform (DCT) to the block, ¦ followed by some adaptive quantization scheme. The DCT is a linear transformation that generates a new block of pixels, with each new pixel being a linear combination of all the incoming pixels of the original block. What distinguishes one linear transform from the others is the set of coefficients ased in th~ llnear combinations thet define each tranrformed
-2-~2553~

1 pixel. The particular set used in the DCT has the property of approximating closely what would be an statistically-optimal I set, and at the same time leading to a fast computation algorithm. The "almost-optimality" of the DCT implies that the degree of data compression obtained is very close to the theoretical maximum that can be achieved for any given , reconstruction-error level.
The major disadvantage of block image coding is that the image is degraded by the coding process and the boundaries of the reconstructed blocks can be clearly visible in the resulting received image. In particular, this occurs because in accordance with prior art block transform coding techniques, the quantization noise is generally correlated within blocks but is independent between blocks, yielding mismatches at block i boundaries. Because of these blocking artifacts, coded images appear to be composed of "tiles".
Generally, when the amount of data compression in a block coded image is enough to produce significant errors ~l inside the blocks, the blocking artifacts cause the block , boundaries to become highly visible. This blocking effect i5 i~ very annoying because the eye is quite sensitive to mismatches , across the block boundaries. With the increasing interest on ¦ image coders for very low data rates for video teleconferencing applications, it is important to minimize the blocking effects.
! Several techniques have been described in the prior art for reducing blocking effects. One approach is to overlap the blocks slightly, by one pixel for example, and reconstruct the overlapping regions at the receiver by using the average of the reconstructed pixels from each of the overlapping blocks.
~` 30 l~ This method leads to an overhead in the amount of data to be ll transmitted, since the blocks have to be larger.

~1 ~3~
I
I
: -:

~25i ~3~

1 Another technique, which does not require any additional data to be transmitted, is to use a spatially-variant low-pass filter that blurs the image in the block boundary regions. Although the latter technique is very effective in reducing the blocking effects, image details which happen to be on block boundaries are also blurred, with a perceptible loss in sharpness.
Another approach is to use the Short-Space Fourier Transform, generally referred to as the SSFT, as described in U.S. Patent 4,703,349 referred to above. The SSFT is an extension of the Shor~-Time Fourier T~ansform (STFT) for two-dimensional signals. Like the STFT, the SSFT breaks up the signal into blocks, but the recovery process is such that no discontinuities are introduced in the reconstructed signal. Thus, the SSFT is intrinsically free from ; discontinuity blocking effects. However, another artifact, ; in the form of ringing in the neighborhood of edges, may be introduced. Computationally, the SSFT is less efficient than the DCT or other "fast" transforms.
It is an object of the present invention to provide an improved apparatus and method Eor transforming an n-dimensional function.
Another object is to provide an improved method and apparatus for processing an n-dimensional digitized signal with minimal blocking artifacts.
~ .
~ :~
:~`

~ - 4 -:~ "

:

~2~;5i3~

S VMMA RY OF THE I NVENTI ON
-- I
Briefly, the invention is a system and method for processing an n-dimensional digitized signal containing at least two Ml x M2 x ... x Mn blocks of digitized sample 1~ M2~ o-~ Mn are integers respectively associated with one of the n dimensions.
! In one form of the invention, the digitized signal is first transformed in accordance with a first spatial transform operator to obtain a first transformed signal. The first transformed signal differs from the digitized signal at corresponding sample values contiguous to and including the boundaries of adjacent blocks, and those signals are substantially the same otherwise. The first transformed signal is then transformed in accordance with a second spatial transform operator to obtain an output transformed signal. The output transformed signal substantially corresponds to said digitized signal, with the second spatial transform operator 1 being substantially the inverse of the first spatial !I transform. Prior to the second transformation, the first l transformed signal may be block processed in accordance with a block process characterized by ~1 x M2 x ... x Mn blocks, thereby providing a block processed signal.
¦ In another form of the invention, the digitized signal is first transformed in accordance with a first spatial transform opertor to obtain a first transformed signal, where the first spatial transorm operator is charcteriæed by Ml x ~ M2 x .... x Mn basis functions, and where the first spatial 1~ transform opertor is operative over an n-dimensional peripheral I ~ annulus of (Ml ~ 2Kl) x lM~ ~ 2K2~ x -- x (Mn ~ I
1 2Kn) bloc s of the sample valuea of the digitlzed signal, -5~

~"~ 11
3~

1 where Kl, K2, ... , Kn are non-negative integers, and at le~st one of Kl, K2~ Kn is non-zero. ~he first transformed signal is then transformed in accordance with a second spatial transform operator to obtain an output ; transformed signal. The output transformed signal substantially corresponds to the digitized signal, and with the second spatial transform operator being substantially the inverse of the first spatial transform.

1, ; Ij Prior to the second transformation, the first I transformed signal may be transformed in accordance with a block processing operator characterized by Ml x M2 x x Mn blocks, thereby providing a block processed signal.
In keeping with another form of the invention, a digitized signal is transformed in accordance with a composite ' spatial operator to obtain a first transformed signal. The composite spatial operator, in effect, comprises a first ; spatial transform operator and a block processing operator~
The first spatial transform operator is characterized by Ml x M2 x ... x Mn basis functions. That operator is ~ operative over an n-dimensional peripheral annulus of (Ml +
¦ 2Kl) x (M2 + 2K2) x -- x (Mn ~ 2Kn) blocks of sample value of the digitized signals, where Kl, K2, ..., Kn are non-negative integers, where at least one of those K values is non-zero. The block processing operator is characteri~ed by 1l Ml x M2 x .~. x Mn blocks, and by Ml x M2 x ... x ~n basis functions. The block processing operator is operative over Ml x M2 x...x Mn blocks of the sample values generated by the first spatial transform operator.

:; 11 1 11 . I

~ 6- l - ;.
':

~2~$3~

1 In various forms of the invention~ the first transformed signal is transformed in accordance with the second composite spatial operator to obtain an output transformed signal. The second transorm operator is a block processing operator similarly characterized by Ml x M2 x ... x Mn blocks. In some forms of the invention9 the output transformed signal substantially corresponds to the digitized signal, for example, in an image transmission system. In this case, the - first and second composite spatial operators are the inverse of l each other. Generally speaking, the first and second composite spatial operators are non-orthogonalO
The first and second composite spatial operators may comprise, as one portion thereof, discrete cosine transform operators and inverse discrete cosine transform operators, respectively.
In one form of the invention, the first composite spatial operator has the form of the product of a window function and a modified discrete cosine transform operator.
The modified discrete cosine transform operator is charac-20 1l terized by Ml x M2 x ... x Mn basis functions operative ( 1 2Kl) x (M2 + 2K2 ) x r ~ ~ x ~M ~ 2X )blocks of sample values in the digital signal. The window function is an n-dimensional sequence which is symmetrical in each of the n-dimensions. For each sample value in a block, 25 1l the sum of the windo~ function for that sample value in that ¦I block and the window functions for that sample value in all blocks adjacent to that block is a predetermined value, for ~ example, unity. Further, the rate of change of the window - ll function in eaoh dimension may be relatively smooth near the ¦ block boundaries.

; ~ . I

l In various forms of the invention, the first spatial transform operator effectively modifies sample, values of the digitized signal by replacing selected sample values in the blocks with modified sample values. the modified values correspond to combinations of pairs of associated sample values ,I symmetrically disposed about the boundaries between adjacent I! blocks of the digitized signal. The combinations may be weighted linear combinations of such sample values. In the preferred form, the distribution of weighting coefficients of those combinations for a block is symmetrical across the block. Further, for each modified sample value in a block, the sum of the weighting coefficient for that sample value in that block and the weighting coefficients for that sample value in l! all blocks adjacent to that block is a predetermined value.
15 ~ With the present invention, one can attenuate the blocking effect to unperceivable levels, with little computational overhead (typically, on the order of 10%).

BRIEF DESCRIPTION OF THE DRAWING
The foregoing and other objects of this invention, the 1 various features thereof, as well as the invention itself, may be more fully understood from the following description, when read ~ogéther with the accompanying drawings in which:
Fig. 1 shows, in block diagram form, an exemplary embodiment of the invention:
25 I Fig. 2 shows, in block diagram form, the block processor of the embodiment of Fig. l;
Fig. 3 illustrates an exemplary input signal for the ¦I system of Figs. l and 2;
~ !
~;

:~ I , ! ~ -,~ .
, .
.. . ...

g~2$~39~

1 Eig. 4 illustrates a comparison of the energy distribution in the transform domain of the Direct Cosine Transform and the one dimensional vij-zij Transform of the I present invention;
5 ~ Fig. 4A illustrates two exemplary inverse transform window functions;
Fig. 5 shows diagramatically an exemplary configuration for the preprocessor and block encoder of the system of Figs. 1 and 2;
E'ig. 6 shows diagramatically an exemplary configuration for the block decoder and postprocessor of the system of Figs. 1 and 2;
Fig. 7 illustrates, in detailed form, an alternate form for a portion of one of the butterfly diagrams of Fig. 5;
I Fig. 8 illustrates, in detailed form, an alternate form for a portion of one of the butterfly diagrams of Fig. 6 Fig. 9 shows a flow chart illustrating the operatlon of the invention for a two dimensional input signal;
Fig. 10 shows diagramatically another exemplary l' processing sequence to the block decoder and postprocessor of the system of Figs. 1 and 2 and Fig. 11 shows diagramatically another exemplary processing sequence for the preprocessor, and block encoder of the system of Figs. 1 and 2;
.~: i DESCRIPTION OF THE P~EFERRED_EMBODIMENT
Fig. 1 shows a system 10 exemplifying the present invention. System 10 includes a preprocessor 12 coupled to a i' block processor 14 which in turn is coupled to a post processor 16. In operation, an input signal I is applied to preprocessor iI 12 to generate a first signal T. Block processor 14 processes ~ I
l I
~'., : I _g_ I

.
` ~ ;. ;....... ... .
. .

~25~
\

1 the signal T to provide a block processed signal BP.
Postprocessor 16 processes that signal BP to an output image signal I'. In various forms of the invention, any type of block processing may be used in processor 14. In embodiments 5 1l adapted for image transmission, where the input signal I is representative of an image~ the signal I' substantially matches the input signal I, with minimal blocking artifacts. In other l! embodiments, for example, where the block processor performs a block filtering function, the signal I' is representative of the filtered signal I, again with minimal blocking artifacts.
Fig. 2 illustrates one particular form of processor 14 in which the input signal T is initially transformed by preprocessor 12 and a block encoder 30 to provide a block encoded signal BE. Encoder and transmitter 32 encodes the '~ signal BE in a form suitable for transmission and then ; transmits that encoded signal E over a communications r,ledium (shown in Fig. 2 by arrow 34) to a receiver and decoder 36.
., The receiver and decoder 36 receives and decodes the signal E

! to provide a decoded signal D for application to a block ¦ 20 1 decoder 38. Decoder 38 and postprocessor 16 transforms signal D to the block processed signal BP.

By way of example, elements 30 and 38 may be Il conventional-type discrete cosine transform (DCT) and inverse ¦ discrete cosine ~ransform (IDCT) processors, where block ; 25 1, encoder 30 includes a direct transform element 30A coupled to a ¦I coefficient quantizer element 30B, and where block decoder 38 includes a coefficient reconstructor element 38A and inverse ¦I transform element 38B. Blocks 3~ and 36 may comprise a conventional-type confi~uration of data encoders, modulators, ¦ demodulators and decoders. The block processor 14 performs an ~:~ I . I
-10- l ~' l I
: l I

:~ ~2$$3~

l I efficient compression, transmission, and then reconstruction of the signal T over the communications medium so that the block processed signal BP should match (or be a filtered version of) ll the transform signal T. However, in practice, as described l above, the block processor 14 may potentially introduce blocking artifacts which are undersirableO In the present ¦~l invention, preprocessor 12 and postprocessor 16 are used in conjunction with block processor 14 to effectively provide signal I' which is substantially free of the blocking artifacts l' which might otherwise be introduced by block processor 14.
¦I By way of example, for the system of Figs. l and 2, the input signal I may be a one or two dimensional signal. In the event the block processor 14 is based on the use of the I discrete cosine transform (DCT) in element 30A followed by the 11 use of the inverse discrete cosine transform (IDCT) in element 38B, as in the presently described exemplary configuration, and that configùration was used in accordance with the prior art there would be significant blocking artifacts in signal BP.
ll Such blocking effects would be principally due to the fact that 20 il¦ the basis functions for the DCT do not approach zero at the block boundaries. Therefore, when the reconstruction is carried out, small errors in the transform coefficients would ¦i lead to discontunities in the reconstructed signal. This ~ 1l blocking effect is illustrated in Fig. 3 for a one dimensional ;~ 25 ¦I slice across three blocks of an exemplary image. However, in ~¦ accordance with the present invention, blocking artifacts are ¦¦ eliminated through the use of preprocessor 12 and postprocessor ¦ 16 in conjonction with block processor 14.

~ ~ 11 ~2~;~i3~
!

1 ; In one form of the system of Fig. 1, the preprocessor 12/element 30A combination and the element 38B/postprocessor 16 ~ combination perform transforms on their respective input ¦ I signals which are similar in part to the DCT/IDCT processes.
I 5 l Those combinations each perform as composite spatial operators, each including, in effect, performing as a spatial transform operator and a block processing operator. More particularly, the composite operators are employed which utilize basis ' functions similar to conventional DCT/IDCT basis functions but 10 ll which are characterized by slight extensions into the neighboring blocks in the input signal. After extension, the resulting basis functions are multiplied by a window that ensures smoothness across block boundaries.
The basis functions for the direct transform for the 15 'll preprocessor 12/element 30A combination is determined through the following steps:
1. Extend the basis functions of the DCT to K additional input signal sample values in each direction for each ¦ll dimension, by letting the indices in the DCT definition run ;~ 20 1l through the additional 2K values~
2. Multiply the new set oP extended functions by an ¦ associated window function.
, The basis functions for the inverse transform for the element ll 38/postprocessor 16 combination are is similarly determined.
25 1ll The use of the DCT/IDCT as a foundation for these transform ¦
operators is merely exemplary and, alternatively, another set ¦ of basis functions could be used instead of those from the ~¦~ ¦ DCT/IDCT. However, since the DCT/IDCT is fast-computable and is almost optimal in a statistical sense, i~ is used in the ~1 I
, . . I, ~ ~ -12- I

~` ~_ I

il ~
1 l~ presently described embodiment. This exemplary DCT/IDCT
1 1 embodiment will now be described for one dimensional input I signal I. I A
¦' The DCT basis f~inctions for an 1 x M block are 5 ll q - c(j) cos~ 2M ] , (1) . j .
I where : ! I

2,... ,M ' (2) j'l The indices i,j represent the i-th sample of the j-th basis `~l 10 ll function.
The basis f~inctions for the transform performed by ~;1 preprocessor 12 and element 30A is defined by 1~ ij v = h(j) q '' r(2~
=h(i) c(i) cosl 2M J (3) ~`~15 li i=l,.... ,M
K+l),...,M+K

M
; I c(i)= ~ ~ (4) I ~ ~_ , i=2,... ,M

I
where vij are the coefficients of the new vectors of the ¦ preprocessor transform and h(j) is the direct transform window function.
I
i .

~ ~ I ~13-. _ . :,~
, ~ r~ ~ ;

1 ! The basis functions for the transform performed by element 30A and post processor 16 are defined by z = w(i) q !1 f ( ~ l ) j ~ W ( i ) C ( j ) C O S ~
I ~ 2M (5) i = (-K~1),.... ,1,2l... ,M,M+l,... ,M+K
j = 1,2,,M
where c(j)=~ r~ ' (6) , j=2,...,M

where Zi; are the coefficients of the row vectors of the element 38B/postprocessor 16 transform and w(i) is the window !l I
i function for the inverse transform. The Zi; basis f~nctions ~¦ l, are the entries for the matrix that performs the inverse transform, i.e., the reconstruction of the original signal as a linear combination of a set of basis functions.
~j 15 I Each of the vij functions of the direct transform has length M~2K, but there still are only M functions for a block of size M. Similarly, each of the Zij functions of the jl inverse transform has length M~2K, but there are still only M

functions for a block of size M.
¦ In the present embodiment, for a selected window ~i ~ i ¦ function w(i), the coefficient of h~j) are uniquely determined ¦ since the direct and inverse transforms correspond to two ¦ matrices that are the inverse o~ each other. The coefficinets of the window functions h(j) and w(i) are related by : ~ 1i w( j) ~ I 1-2w(j~
:: , j~
~, . ' . I
~ -14- i ' 11 : li . I

:a.2ss~;~s~

l i The window functions are determined in the following manner. The window function w(i) has three basic properties in order to optimally reduce blocking effects:
¦ l, l. w(i) is symmetric, so that the new basis functions Zi;
are even functions for odd j and odd functions of even j.
As a result of this symmetry, the basis fuctions are approximations to the eigenvectors of the autocovariance matrix of the input signal, like the DCT functions in ; equation (l).
2. The shifted window functions corresponding to neighboring blocks should in the signal I add up to a predetermined value (e.g., exactly one) for all samples.
3. w(i) is a reasonably smooth function, so thak low-frequency basis functions vary slowly, which keeps their correlation 15 I coefficient with the high-frequency functions small.
;''.1 1 I The first two of the above window function properties require that there be only K degrees of freedom in choosing the window coef~icients w(i). Given w(-K~l), w(-K~2), ... .
~; w(-l), w(0), the following relations are required:
i, 20 l w(i~=l-w(1-i) , i=1,2,.D.~K (8) i~ w(i)=l ~ i=K+l,K+2,.~.,M-K (9) w(i)=w~ 1) , i=M-K+l,M-~+2,.. ,M+K (lO) !!

, I
: l ll '~ I . I
1 ~15-Il I

; ,: -.

~2~ i3~

.: ~
1 ~ Two exemplary inverse transform window functions satisfying the above properties are `I
'.

Linear: w(i)- _ , i=1,2,...,K
!' 2K~l j '.

Raised cosine: w(i)= _ [l-cos ( ~K+l~r)]
: i Those two exemplary window functions are illustrated in Fig. 4A. The direct transform window function may be determined from equation (7) above.
The direct and inverse transforms defined by the basis functions Zi; and vij are not orthogonal, in the sense that the basis functions do not form an orthogonal set of functions. However, by keeping the amount of overlap K
relatively small, an~ by using a smooth window, the "degree of - non-orthogonality" of the vij and Zij basis functions is ~¦ maintained small, in the sense that the angle between different functions is kept close to ninety degrees.
Moreover, the transform defined by vij and Zi;
; ~ ¦' leads to an energy distribution among its coefficients that ~1 ¦ closely approximates that of the DCT which has almost-optimal : !1 energy compaction, i.e., the energy of the DCT coefficients is 20~ strongly concentrated in the first coefficients. In Fig. 4, the energy distribution of the vij-zij transform is compared to that of the DCT, for a first-order Gauss-Markov process with a correlation coefficient`~of 0.9, and a ~lock size M of 16. The differences are so small that the same coding : I

. ,. .~ , ~25~

1 procedure that is used for the DCT coefficients can be used for the vij-zij transform, with an increase in the root-mean-square reconstruction error in the order of only a l few tenths of a dB.
1 The vij-zij transform can be efficiently implemented due to its close resemblance to the DCT Since DCT
direct and inverse transform operators are readily available (in hardware or software form), the vij-zij transform can l make full use of those operators, with the addition of a few butterflies that implement the window.
Figs. 5 and 6 show butterfly diagrams across one block ¦
boundary of the signal I defined in the above-descrihed one dimensional example. Fig. 5 shows the composite spatial 1 operator processing performed by preprocessor 12 and block 1 encoder 30 and Fig. 6 shows the composite spatial operator processing per~ormed by block decoder 38 and postprocessor 16.
; While the butterfly diagrams of Figs. 5 and 6 show one ~ implementation of the illustrative embodiment, Figs. 7 and 8 I I illus~rate an alternative implementation of one exemplary butterfly which may be used in place of the butterflies of Figs. 5 and 6. In Figs. 7 and 8, the weighted arrows on both sides of the block boundary are the same ~i.e., h(l) in Fig. 7 and h~l~ in Fig. 8), since the coefficients of the window ' functions are symmetrical across the block boundaries. In that 25 ¦I way, the associated pairs of sample values which are symmetrically disposed about the boundary are combined.
. I With butterflies of the type shown in Figs. 7 and 8, I ~ i the additional computational burden necessary to implement the I ~ I new transform (compared to conventional DCT/IDCT transforms) is I merely 2K multiplications and 4K additions per block.

~ I
~ I -17-~, I .. .
, .. .
-. :..
: i:

~L ' 3~
2~

1 Comparing these numbers with the amount of computation required by the DCT operators, which is given by (3M/2)(log M - 1)+2 additions and M log M - 3M/2 ~ 4 multiplications per block., the vij-zij transform leads to a small overhead in the total ' complexity of the system. For examplel for M=16 and K=2, we ,! need only 10.8% extra additions and 9.1~ extra multiplications in order to implement the vij-zi~ transform.
In the presently described exemplary one dimensional embodiment of the invention, with K=2 as illustrated in Figs. S ll !
and 6, the inp~t signal I may be expressed in terms of an overlapping succession of 1 x (M~2K) matrices of the coefficients of the function I. The preprocessor 12 in that I case is a butterfly network modifying the first two and last l' two coefficients of each of the I matrices, as shown in Fig.
, 5. The direct transform element 30A is a matrix multiplying apparatus which generates the 1 x M matrix of coefficients for : j the signal T' (for application to the coefficient quantizer ~ . 30B) by multiplying the 1 x M T-matrix by the M x M DCT-matrix I (effectively multiplying a 1 x (M+2K) I-matrix by the (M+2K) x 20 1 M vij-matrix). The signal T' may be conventionally processed 1.
by quantizer 30~ and encoder/transmitter 32 to generate the signal E which is txansmitted (via medium 34) to receiver/decoder 36, The receiver/encoder 36 conventionally decodes the received signal E and reconstructs the transform ,I coefficients (signal D'). Signal D' is then applied to element i 38B. Element 38B is a matrix multiplying apparatus which multiplies 1 x M D'-matrix by the M x M IDCT-matrix to generate ;:~ I the 1 x M BP matrixO The butterfly network of postprocessor 16 ¦
I modiies the ~irst two and last two coefficients of the .
!
~` I
;~ -18-..

5;3~

1 BP-matrix, as shown in Fig~ 6, to generate the 1 x M
I'-matrix. In effect, the BP signal is treated as if it was a 1 x (M+2K) signal which is operated on by the butterfly l networks to combine two pixel overlapping regions of adjacent I blocks in order to obtain the 1 x M signal.
In this exemplary two dimensional example, the coefficients of the V-matrix are the vij coefficients ; described above and the coefficients o~ the Z matrix are the Zij coefficients described above.
I The presen~ invention may also be implemented to remove blocking effects in two-dimensional functions, such as 1 images, where blocking effects have posed significant problems ¦ in prior art signal processing applications. With such two-dimensional input signals, two~dimensional transforms are ~; used. Such transforms may be xeadily implemented using the above-described one-dimensional embodiment, for example, by simply processing the rows and columns of each block with the one-dimensional transform in the manner illustrated in the flow chart of Fig. 9. That is, each row and each column of the 1 input signal may be independently preprocessed and postprocessed as in the one-dimensional example. The resultant coefficiently correspond to the block effect-free output signal.
As an example of the implementation of the two-dimensional transform in software, Appendix A includes a ¦ 25 1l listing of a program entitled "Codenew" which performs block ;~ coding of a two-dimensional image by using the present ¦¦ invention. The program is written in the PASCAL language, and utilizes the following hardware and supporting so~tware: IBM
-s ~!j Personal Computer with 2 disk drives, 512 kilobytes of RAM

30 1l memory, and a ~ATACVBE IVG-128 image capture/display board, DOS

I

' l . .

5~;3~

1 operating system and TURBO PASCAL compiler. The program can be easily modified to support a different hardware configuration or translated into another high-level language, like FORTRAN or 5 1l The sections of the program labeled "Pre-filtering~
¦i and "Post-filtering" implement the data intermixing , butterflies, similar to those shown in Figs. 5 and 6. With j this intermixing, the sample values of associated pairs of the I' input signal (symmetrically disposed about a block boundary) are linearly combined to obtain the modified sample values.
The weighting coefficients for the various oombinations for each block are symmetrical across that blockO Moreover, the sum of the weighting coefficients for each sample in a block and the weightlng coefficients for that sample value in ~; 15 , adjacent blocks equals unity.
In summary, the present invention is an improved method and system for block coding of images (or other signals), minimizing blocking effects. The method and system incorporate the following properties: j 20 1l 1. Transforms are performed over input signal blocks ~ I, which are extended in at least one dimension by K samples, or I ! pixels, in each direction so that there is an overlap of 2K
samples between neighboring blocks for each extended j dimension. Nevertheless, for a block of size MxM, there are 1l exactly MxM coefficients, so that minimal data overhead is ¦i incurred.
2 All of the basis functions for the transforms of the disclosed embodiments decay smoothly to zero at their j boundaries, leading to a strong reduction in the blocking effects.
I
~ ~f~

~ I -20-1 3. The transform of the invention is near-orthogonal.
4. The invention can be implemented very efficiently, by making use of existing DCT hardware of software, with a few additional butterfly stages. Alternatively, other block 1 processing may be utilized.
5. The invention provides almost the same level of ; energy compaction as the DCT, so that coding performanc,e is virtually unchanged.
i Although the above embodiments are directed ; 10 ~ principally to a block coding, for example in Figs. 5 and 6, it is clear that the "butterflies" that precede the direct DCT's ~ in Fig. 5 and those following the inverse DCT's in FigO 6 can `~ be considered as pre- and post-operators by themselves.
Therefore, in a more general framework, the DCT and IDCT blocks ~; 15 , in Figs. 5 and 6 may be replaced by any other block-processing ~ operators, such as block filtering, and the butterflies ; 1 corresponding to the w(i) and h(j) windows can be viewed as i! I
pre- and post-filters that intermix (or combine) the data : ji `~ l across block boundaries in a way that blocking effects are 1~ 20 !1 effectively reduced. Such systems are applicable to any signal processing environment where the amount of data to be processed - ~ is large enough to justify block processing, as it is the case for images, speech, geophysics, radar~ sonar and others.
i Figs. 10 and 11 illustrate a more generalized ~; 25 li embodiment of the invention in which K is greater than 2, with ¦I K data intermixing (or combining) butterflies being shown at the block boundaries for three blocks. In addition, the data across block boundaries may be intermixed to be performed by a more general linear operator than the butterflies depicted in il Figs. 10 and 11, since those butterflies impose a somewhat , I
~' !

~L25~ 9:~ 1 1 ~ restrictive way of processing the 2R data points that lie across a block boundary. Accordingly, in keeping with the invention, a general 2K x 2K matrix could be used, although there might be an increase in computational overhead.
5 1 The invention may be embodied in other specific forms ,i without departing from the spirit or essential characteristics thereof. The present embodiments are therefore to be considered in all respects as illustrative and not restrictive, ~ the scope of the invention being indicated by the appended ~ claims rather than by ~he foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.

.~ , ;" ',, I
1.
~, ~ ~ I
~'~, ~ I

~: I -22-I
~:; I . . I

.'':: .

g~ .

APPE~lDIX A
-Progr~m C~don~w;
~ New tr~n~orm ooding o~ e }
{ The ~nput i~ge is copied to ~ 128k-b~ bu~er st~rting 0 5 $50000 { The reconstruoted im~e i8 written to ~ 256k-byte bu~ier $20000 ~
{ Each by~ in the input buRier i~ ~ pix~l. Ehch w~rd in the ou~pu~ }
10 ~ bu~er iæ ~ pix~l, with value~ r~glng ~rom -32640 ~o 32640 ~ 255x128 ) }
{ E~¢h reoonstructed block i8 lldded to the bu~er. When the row ¢ounter?
~ i~ at the third block row, the s~ir~t row c~r3 b~
15 reoons~ruc~d, ~d ~o on. }
00n8t Segment=20~32; ~ =$S00û-128, ~llowing ~or 4 extrel lineæ}
Cardse~rDent-~9000; Recsegment~ ~2000; ib-~300;
type reodot=arr~tO. . 153 o~ roal;
{$1 P~EA~IM~.PAS } i Existing ~ubroutinc ~or Loading im~ge~}
:: 20 {$I FDCTlB.PAS ~ ~ Existing ~ubrout~ne ~or Direct DCT~
: {$I FIDCT16.PAS ~ { Exis~in~ ~ubroutine ~or Inverse D~T}
~$I COPYIMG.~AS ~ { Exi~ti~g eubroutin~ ~or Copying imsges~
; {$I Qu~ntize.p~ } { Exis~in~ subrou~i~o ~or Quantiz~tion var x:~eodet;
pel:arrayt-4.~ 4.~ o~ re~l;
~td~v:arraytO..15,0..15~ o~ ra~l;
bit:arraytO..~5,0..15] o~ inte~r;
~: name:stringrl4];
data~
w,h:arr~rtO.. ~J o~ rsal;

:
;

:
~;

: -23-~ ~ .

3~

ibl, ib2, i, k, hD1, ipel, se~, segl, c~rd eg, c~rdsc~1, ra~ eg, j, j2, 1, r , rr, c, lines, and, indc, indi, indr~ indir, indcr, i~hr, Peosegl~ indol: integ~
~um, hl, h2, wl, w2, dum, dc: real;
iirstp~s~ :bool~an;
begin writeln( ' *** Thi~ is CODENEW. PAS - ~odi~ied DCT c~ding **~
10 rep~at ReadiD~ (lines); until lines=256;
ClrScr;
writeln( 'Fir~t 3/4 oi output bu~er is being cl~ared' );
~or i: =g2000 to $4~ do 2~or ls:=O to 15 do ~elDti:k~:~O;
: 15 Ior i:=S6iî~-127 to $6~ do ~ or Ic:=O to 15 do ~em~i:k]:~O;
Gotoxy(l,l);writ~ln~'Input in~age buî~er will be writt~n '~;
Copyi~age(0,256,Ss~ent);
wrlteln;writ~('Entor image d.o. v~lu2: '3;r~dln(dc);
dc:=~6*dc;
writeln;write('Enter vari~ce data ~ile nam~ :
: ');readln(name);
a~sign(d~ts~ile,~me);reset(d~ta~ilej;
~or i:-0 ~o 15 do for ~:=0 to 15 d~ readln(data~ile,stdevti,i~);
writeln;writs~ 'Ent~r bit p~tterr datY~ P~le n~m~:
' ) ; re!~d ln ( name ) ;
~ ~ssign~datQfile,n~me);reset(data~il~);
; 30 ~or i:-0 to 15 do for j:-0 to 15 do readln(dat~ ,bitti,j~);
~or i:=0 to 15 do ~or j:=0 to 15 do ~devti,~:=sqrt(6tde~tl,~
Clræer;
rep~a~
write( 'Enter amount o~ overlap, K: ' );
readln(k);
~: un~il k in ~1.. 4J;
ibl: ~ k; ib2: =15~k; k~1: =k-1;
:~ 40 {~or i:=O to 3 do begin w~ 1; h[i~:=i end;~
or ~:=O :to ~ml do ~: i begirl i] ~0. 5*(1-cos (p~*( i~l+k~ /( 2*1c~1 ) ~ );
ht~:=w[~]/(2*wti~-~?
45 end;
c~rr:-O to 17 do ~ lo~p s~or ~ll S16+2k)x~16+2k) block~
,~

~ ~ , : ~ - 2 4 -~ , , 1 ond;
. { Post-~ilter rows }
~or i:2ibl to ib2 do b~gin ~or ~:-0 t~ ~ml do b~gln wl:-wr~; w2~ wl;
~2:-15~
dum:=~elti,~J;
pel[i,~ wl*du~;
p~lti,-1-3]:-w2*du~;
du~:=P~lt~
pelti,~2~:-wl*dum;
pelti,l8~jJ:-w2*dum 0nd ~nd;
{ Return bl~ck to cutput bu~er }
~or i:=~bl to ib2 do b~in ~ 20 rec~gl:-recs~B+64*i;
: ~or ~:=ibl to ib2 do begin ~: ~ndr:~indcr~2*~;
ipel:_round(lOO*pzl~ ]); ~ 25 ~ memwtrec~egl:indr~:=ipel~memwtrecsegl:indr~;
~nd ~nd .
:~ e~d { ~olumn loop~
~- end; ~ i~ row ~ 15 :~ ~
i~ r ? 1 ~he~
b~gin :`:: rr:-r-2;
r~cseg:=Recsegment~1024*rr;
cArds eg:-Cardse~me~t+~12*(rr mod 8~;
:porttib]:_4 + rr diY ~;
or ¢:~0 to 23 do : ~ begin ~-( indo:~l6*o;
indcr:=32*o~1~8;
: 40 : ~otoxytl,7~;
writelnt'~econ~tructing blook ',rr,, ',~,' ');
or i~ o ~b2 do be~i~
: : oard~ oards~g+32*~;
recse~l:=recseg~64*i;
for ~:=ibl ~o ib2 do ~: :
i ~

~ 25-:::
; ~ - ' . , 2~3 1 begin i~ r ~ 1~ then b~gi~
~og:=Segm~nt~512*r;
: 5 r~c~e~:~Rec~egment~1024*r;
~or o:=0 to 2~ do begin : indc:~l6*c; iado~:=indo~64;
ind¢r:~32*c~12B;
~o~oxy~1,5);
writeln('Working on block ',r, J J ~ 3 ~ );
: { ~e~ove block ~rom ~mory }
~or ~:-ibl ~o ~bZ do be~in ~ 15 5egl ~sog~32*~;
.~ gor ~ bl to ib2 do psl~ =memtSe~l:ind~
os~;
{ Pre-Yilter r~ws }
or i:~ibl to ~b2 ~o 20 ~egin ~or j:~O *o ~ml do begin hl:-ht~; h2~ hl;
~ 3;
:~. 25 pel~ 3:=hl*pelti,j~h2*pelti,~
: pelEl,~2~:=hl*pel~ 2~+h2*polti,16+~
~nd : ~nd;
., ~ .
:~ { Pre-iilter ~olumns } ~ 30 : ~or i:=0 ~o 15 do begin :: ~o~ ~:=0 t~ km~ do ba~n hl:-ht~; h2:=l-hli ::~ 35 ~2:=1~
: pelt~ :=hl*~el~h2*~elt~ ,i];
peltj2,i~:=hl*pel~2, il~h2*pe end nd;
, ~ Co~put~ DCT on row~ 3 : ~lr6tpass:=truo;
~or i~ l to ib2 do be~i~
~: : ior ~:=0 to 15 do xt~:=pel~
;;~45 FDCT16~x,iirstpas~
: ~or ~:=0 to 15 do p~l~i,3~:=x[~;
~ end:;
,~

. ~ i :
.
~ . .

;i3~
.

1 ~ Compute DCT on ~01umn5 ~or i:-0 to 15 do be~in ~or ~:=0 to 1~ do x[j]:=pel[j,i~;
~ 5 FDCT16(x,~ir~tpass)7 : ~or ~:=0 to 15 do pel~j,i]:=xtj];
~nd;
{ Qu~ntize }
p~ltO,03:-peltO,03-d~;
ior i:=0 ~o l~ do for ~:=0 to lS do b~gin dum:=pel~
qu~nti2etdu~,8tde~i,j],bit[i,J~);
pel~i,3~:-du~
~nd;
p~l ~0, 0~: -pBl tO-03~dc;
{ Comput~ IDCT on column~ }
6tp~s:~tru~;
~or i:-0 ~ 15 do in for j:=0 to 15 do xCjJ:-~el~
-: FIDCT16~x,firstpass);
; ~or j:~0 to 15 do p~lti,i~:=x[~3;
end;
Cempute IDCT on rows }
or i:=ibl to ib2 do ~; begin : ~or j:=0 to 15 do xcj~:=P~lc~3;
i 30 FIDCT16(x,~ir~pas~);
for ~:~0 to 1~ do ~el[i,~]:~xE~9 ; end;
{ Po~t-filter oOlUm~8 }
~or i:-0 to 15 do begin ~t ~or j:~0 to k~l ~o :i bé~in w1:-wt~; w2~ w~;
~: 40 ~u~:=Pelt~
:~ pelt~,i]:=wl*dum;
pel~ =w2*dum;
: dum:=p~lt~2,i~;
~ pel~2,i]:=wl*d~;
:; 45 pel~ :=w2*du~

' ' :

~ , "
-~
, - .
. .

~ ii3~h begin i~pel :-memw~rec~sgl: ind~r~2* j~ i ~pel: ~round( ipel~100);
el < 0 then ipel:-0;
i~ ip~l > 255 then ip~ ~255;
mem~ c~rd~gl: indc+a]: =ipel ~nd end ~nd e~d; { i~ ~ow > ~ }
{ Cls~r re~t o~ ~utput bu~r r-S th~n be~
~otoxy(l,~);writ~ 3Clesring 1~ gu~rter o~ output 15 ~uf~or' ~;
:~ for i:=S5000 ~o ~5~:e do :~ ~or k:=0 to 15 do mem~:k]:=0 end ; end {row l~p}
20 æ~d.

:~ `
:

: ~:
:~ :

.

~ . . . .. .... . ... .
:: . . . .. ; .

Claims (102)

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
1. A method for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2, ..., Mn are integers respectively associated with one of said n dimensions, comprising the steps of:
transform coding said digitized signal in accordance with a first composite spatial operator to obtain a first transform coded signal, said first composite spatial operator comprising:
a first spatial transform coding operator characterized by M1 x M2 x ... x Mn basis functions, where said first spatial transform operator is operative over an n-dimensional peripheral annulus of (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of said sample values of said digitized signal, where K1, K2, ..., Kn are non-negative integers,and at least one of K1, K2, ..., Kn is non-zero, and a first block processing operator characterized by M1 x M2 x ... x Mn blocks, said first block processing operator being characterized by M1 x M2 x ... x Mn basis functions, where said first block processing operator is operative over M1 x M2 x ... x Mn blocks of said signal values generated by said first spatial transform operator, said first transformed signal being a block processed signal.
2. A method according to claim 1 comprising the further step of:
transforming said first transform coded signal in accordance with a second composite spatial operator to obtain an output transformed signal, said second composite spatial operator including a second block processing operator characterized by M1 x M2 x ... x Mn blocks.
3. A method according to claim 2 wherein said output transformed signal substantially corresponds to said digitized signal, and said second composite spatial operator being substantially the inverse of said first composite spatial operator.
4. A method according to claim 3 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said second composite spatial operator comprises an inverse DCT operator.
5. A method according to claim 3 wherein said first and second composite spatial operators are non-orthogonal.
6. A method according to claim 2 comprising after said first composite spatial operator transform coding step and before said second composite spatial operator transforming step, the further sub-steps of:
encoding said block processed signal to obtain an encoded signal adapted for transmission over a communications medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to re-obtain said block processed signal.
7. A method according to claim 2 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said second composite spatial operator comprises an inverse DCT operator.
8. A method according to claim 1 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator.
9. A method according to claim 1 wherein said first composite spatial operator has the form of the product of a window function and a modified discrete cosine transform (DCT) operator, wherein said modified DCT operator being characterized by M1 x M2 x ... x Mn basis functions operative over (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of sample values of said digitized signal, and wherein said window function is an n-dimensional sequence and wherein said window function is symmetrical in each of said n-dimensions, and wherein for each sample value in a block, the sum of the window function for that sample value in that block and the window functions for that sample value in all blocks adjacent to that block is a predetermined value.
10. A method according to claim 1 wherein n = 1.
11. A method according to claim 1 wherein n = 2.
12. A method according to claim 1 wherein said transform cording in accordance with said first spatial transform coding operator comprises the step of modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
13. A method according to claim 12 wherein said modifying step includes the sub-step of generating weighted linear combinations of said pairs of sample values.
14. A method according to claim 13 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
15. A method according to claim 12 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across that block.
16. A method according to claim 15 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
17. In a method for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2, ... Mn are integers respectively associated with one of said n dimensions, including the step of transform coding said digitized signal in accordance with a first block processing operator to obtain a first transform coded signal, said block processing operator being characterized by M1 x M2 x ... x Mn basis functions, the improvement being the further step of:

controlling said transform coding step whereby said block processing operator is operative over (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of said sample values of said digitized signal, wherein K1, K2, ..., Kn are non-negative integers, and at least one of R1, R2, ..., Kn is non-zero, said first transform coded signal being a block processed signal.
18. A method according to claim 17 comprising the further step of:
transforming said block processed signal in accordance with a composite spatial operator to obtain an output transformed signal, said composite spatial operator comprising a second block processing operator characterized by M1 x M2 x ... x Mn blocks.
19. A method according to claim 18 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said second composite spatial operator comprises an inverse DCT operator.
20. A method according to claim 18 wherein said output transformed signal substantially corresponds to said digitized signal, and said composite spatial operator being substantially the inverse of the operator of said controlled transforming step.
21. A method according to claim 20 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said composite spatial operator comprises an inverse DCT operator.
22. A method according to claim 18 comprising between said first controlled transform coding step and said composite spatial operator transforming step, the further sub-steps of:
encoding said block processed signal to obtain an encoded signal adapted for transmission over a communication medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to re-obtain said block processed signal.
23. A method according to claim 17 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator.
24. A method according to claim 17 wherein said controlled transform coding corresponds to a controlled spatial operator having the form of the product of a window function and a modified discrete cosine transform (DCT) operator, wherein said modified DCT operator being characterized by M1 x M2 x ... x Mn basis functions operative over (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of said sample values of said digitized signal, and wherein said window function is an n-dimensional sequence and wherein said window function is symmetrical in each of said n dimensions, and wherein for each sample value in a block, the sum of the window function for that sample value in that block and the window functions for that sample value in all blocks adjacent to that block is a predetermined value.
25. A method according to claim 17 wherein n = 1.
26. A method according to claim 17 wherein n = 2.
27. A method according to claim 17 wherein said transform coding in accordance with said first block processing operator comprises the step of modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
28. A method according to claim 27 wherein said modifying step includes the sub-step of generating weighted linear combinations of said pairs of sample values.
29. A method according to claim 28 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
30. A method according to claim 27 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across that block.
31. A method according to claim 30 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficient for that sample value in all blocks adjacent to that block is a predetermined value.
32. A method for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2, ..., Mn are integers respectively associated with one of said n dimensions, comprising the sequential steps of:

A. transform coding said digitized signal in accordance with a first spatial transform coding operator to obtain a first transform coded signal, whereby said first transform coded signal differs from said digitized signal at corresponding sample values contiguous to and including the boundaries of said adjacent blocks, and said first transform coded signal is substantially the same as said digitized signal otherwise, and B. transforming said first transform coded signal in accordance with a second spatial transform operator to obtain an output transformed signal, whereby said output transformed signal substantially corresponds to said digitized signal, said second spatial transform operator being substantially the inverse of said first spatial transform operator.
33. A method according to claim 32 comprising the further step of block processing said first transform coded signal prior to step B, said block processing being in accordance with a block process characterized by M1 x M2 x ... x Mn blocks, thereby establishing said first transform coded signal as a block processed signal.
34. A method according to claim 33 wherein said block processing step comprises the sub-steps of:
encoding said block encoded signal to obtain an encoded signal adapted for transmission over a communications medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to obtain a decoded signal corresponding to said first transformed signal.
35. A method according to claim 32 or 33 wherein said first and second spatial transform operators are non-orthogonal.
36. A method according to claim 32 or 33 wherein said first spatial transform coding operator is characterized by M1 x M2 x ... x Mn basis functions and where said first spatial transform operator is operative over an n dimensional peripheral annulus of (Ml + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of said sample values of said digitized signal, where K1, K2, ..., Kn are integers, and at least one of K1, R2, ..., Kn is non-zero
37. A method according to claim 36 wherein said first and second spatial transform operators are non-orthogonal
38. A method according to claim 32 wherein said transform coding in accordance with said first spatial transform coding operator comprises the step of modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
39. A method according to claim 38 wherein said modifying step includes the sub-step of generating weighted linear combinations of said pairs of sample values.
40. A method according to claim 39 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
41. A method according to claim 38 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across that block.
42. A method according to claim 41 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
43. A method for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2 ..., Mn are integers respectively associated with one of said n dimensions, comprising the sequential steps of:
A. transform coding said digitized signal in accordance with a first spatial transform coding operator to obtain a first transform coded signal, said first spatial transform coding operator being characterized by M1 x M2 x ... x Mn basis functions, where said first spatial transform coding operator is operative over an n dimensional peripheral annulus of (M1 + 2K1) x (M2 + 2K2) X ... X (Mn + 2Kn) blocks of sample values of said digitized signal, where K1, K2, ..., Kn are integers, and at least one of K1, K2, ..., Kn is non-zero, and B. transforming said transform coded signal in accordance with a second spatial transform operator to obtain an output transformed signal, whereby said output transformed signal substantially corresponds to said digitized signal, and said second spatial transform operator being substantially the inverse of said first spatial transform.
44. A method according to claim 43 comprising the further step of:
block processing said first transform coded signal prior to step B, said block processing being in accordance with a block process characterized by M1 x M2 x ... x Mn blocks, thereby establishing said first transform coded signal as a block processed signal.
45. A method according to claim 44 wherein said block processing step comprises the sub-steps of:
encoding said block encoded signal to obtain an encoded signal adapted for transmission over a communications medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to obtain a decoded signal corresponding to said first transformed signal.
46. A method according to claim 43 or 44 wherein said first and second spatial transform operators are non-orthogonal.
47. A method according to claim 43 wherein said transform coding in accordance with said first spatial transform coding operator comprises the step of modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
48. A method according to claim 47 wherein said modifying step includes the sub-step of generating weighted linear combinations of said pairs of sample values.
49. A method according to claim 48 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
50. A method according to claim 47 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across the block.
51. A method according to claim 50 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
52. A system for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2, ..., Mn are integers respectively associated with one of said n dimensions, comprising:
means for transform coding said digitized signal in accordance with a first composite spatial operator to obtain a first transform coded signal, said first composite spatial operator comprising:
a first spatial transform coding operator characterized by M1 x M2 x ... x Mn basis functions, where said first spatial transform operator is operative over an n-dimensional peripheral annulus of (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of said sample values of said digitized signal, where K1, K2, ..., Kn are non-negative integers, and at least one of K1, K2, ..., Kn is non-zero, and a first block processing operator characterized by M1 x M2 x ... x Mn blocks, and first block processing operator being characterized by M1 x M2 x ... x Mn basis functions, where said first block processing operator is operative over M1 x M2 x ... x Mn blocks of said signal values generated by said first spatial transform operator, said first transformed signal being a block processed signal.
53. A system according to claim 52 further comprising:
means for transforming said first transform coded signal in accordance with a second composite spatial operator to obtain an output transformed signal, said second composite signal operator including a second block processing operator characterized by M1 x M2 x ... x Mn blocks.
54. A system according to claim 53 wherein said output transformed signal substantially corresponds to said digitized signal, and said second composite spatial operator being substantially the inverse of said first composite spatial operator.
55. A system according to claim 54 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said second composite spatial operator comprises an inverse DCT operator.
56. A system according to claim 54 wherein said first and second composite spatial operators are non-orthogonal.
57. A system according to claim 53 comprising means operative after said means for transform coding in accordance with said first composite spatial operator and before said means for transforming in accordance with said second composite spatial operator for:
encoding said block processed signal to obtain an encoded signal adapted for transmission over a communications medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to re-obtain said block processed signal.
58. A system according to claim 53 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said second composite spatial operator comprises an inverse DCT operator.
59. A system according to claim 52 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator.
60. A system according to claim 52 wherein said first composite spatial operator has the form of the product of a window function and a modified discrete cosine transform (DCT) operator, wherein said modified DCT operator being characterized by M1 x M2 x ... x Mn basis functions operative over (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of sample values of said digitized signal, and wherein said window function is an n-dimensional sequence and wherein said window function is symmetrical in each of said n dimensions, and wherein for each sample value in a block, the sum of the window function for that sample value in that block and the window functions for that sample value in all blocks adjacent to that block is a predetermined value.
61. A system according to claim 52 wherein n = 1.
62. A system according to claim 52 wherein n = 2.
63. A system according to claim 52 wherein said means for transform coding in accordance with said first spatial transform coding operator comprises means for modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
64. A system according to claim 63 wherein said means modifying includes means for generating weighted linear combinations of said pairs of sample values.
65. A system according to claim 64 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
66. A system according to claim 63 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across that block.
67. A system according to claim 66 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
68. In a system for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2, .., Mn are integers respectively associated with one of said n dimensions, including means for transform coding said digitized signal in accordance with a first block processing operator to obtain a first transform coded signal, said block processing operator being characterized by M1 x M2 x ... x Mn basis functions, the improvement including:
means controlling said transform coding step whereby said block processing operator is operative over (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) block of said sample values of said digitized signal, where K1, K2, ....
Kn are non-negative integers, and at least one of K1, K2, ..., Kn is non-zero, said first transform coded signal being a block processed signal.
69. A system according to claim 68 further comprising:
means for transforming said block processed signal in accordance with a composite spatial operator to obtain an output transformed signal, said composite spatial operator comprising a second block processing operator characterized by M1 x M2 x ... x Mn blocks.
70. A system according to claim 69 wherein said output transformed signal substantially corresponds to said digitized signal, and said composite spatial operator being substantially the inverse of the operator of said controlled transforming step.
71. A system according to claim 70 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said composite spatial operator comprises an inverse DCT operator.
72. A system according to claim 69 comprising means operative after said controlling means and before said means for transform coding in accordance with composite spatial operator, for:
encoding said block processed signal to obtain an encoded signal adapted for transmission over a communications medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to re-obtain said block processed signal.
73. A system according to claim 69 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator and said second composite spatial operator comprises an inverse DCT operator.
74. A system according to claim 68 wherein said first block processing operator comprises a discrete cosine transform (DCT) operator.
75. A system according to claim 68 wherein said means for controlling said transform coding effects a controlled spatial operator having the form of the product of a window function and a modified discrete cosine transform (DCT) operator, wherein said modified DCT operator being characterized by M1 x M2 x ... x Mn basis functions operative over (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of sample values of said digitized signal, and wherein said window function is an n-dimensional sequence and wherein said window function is symmetrical in each of said n dimensions, and wherein for each sample value in a block, the sum of the window function for that sample value in that block and the window functions for that sample value in all blocks adjacent to that block is a predetermined value.
76. A system according to claim 68 wherein n = 1.
77. A system according to claim 68 wherein n = 2.
78. A system according to claim 68 wherein said means for transform coding in accordance with said first block processing transform operator comprises the means for modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
79. A system according to claim 78 wherein said modified means includes means for generating weighted linear combinations of said pairs of sample values.
80. A system according to claim 79 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
81. A system according to claim 78 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across that block.
82. A system according to claim 81 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
83. A system for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2, ..., Mn are integers respectively associated with one of said n-dimensions, comprising:
A. means for transform coding said digitized signal in accordance with a first spatial transform coding operator to obtain a first transform coded signal, whereby said first transform coded signal differs from said digitized signal at corresponding sample values contiguous to and including the boundaries of said adjacent blocks, and said first transform coded signal is substantially the same as said digitized signal otherwise, and B. means for transform coding said first transformed signal in accordance with a second spatial transform operator to obtain an output transformed signal, whereby said output transform signal substantially corresponds to said digitized signal, said second spatial transform operator being substantially the inverse of said first spatial transform operator.
84. A system according to claim 83 comprising the further means for block processing said first transform coded signal prior to the operation of said means for transforming in accordance with said second spatial operator, said block processing being in accordance with a block process characterized by M1 x M2 x ... x Mn blocks, thereby establishing said first transform coded signal as a block processed signal.
85. A system according to claim 84 wherein said block processing means comprises means for:
encoding said block encoded signal to obtain an encoded signal adapted for transmission over a communications medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to obtain a decoded signal corresponding to said first transformed signal.
86. A system according to claim 83 wherein said first spatial transform coding operator is characterized by M1 x M2 x ... x Mn basis functions and wherein said first spatial transform operator is operative over an n dimensional peripheral annulus of (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of said sample values of said digitized signal, where K1, K2, ..., Kn are integers, and at least one of K1, K2, ..., Kn is non-zero.
87. A system according to claim 86 wherein said first and second spatial transform operators are non-orthogonal.
88. A system according to claim 83 or 84 wherein said first and second spatial transform operators are non-orthogonal.
89. A system according to claim 83 wherein said means for transform coding in accordance with said first spatial transform coding operator comprises means for modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
90. A system according to claim 89 wherein said modifying means includes means for generating weighted linear combinations of said pairs of sample values.
91. A system according to claim 93 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
92. A system according to claim 89 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across that block.
93. A system according to claim 92 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
94. A system for processing an n-dimensional digitized signal containing at least two adjacent M1 x M2 x ... x Mn blocks of digitized sample values, where M1, M2, ..., Mn are integers respectively associated with one of said n dimensions, comprising the sequential steps of:

A. means for transform coding said digitized signal in accordance with a first spatial transform coding operator to obtain a first transform coded signal, and first spatial transform coding operator being characterized by M1 x M2 x ... x Mn basis functions, where said first spatial transform operator is operative over an n dimensional peripheral annulus of (M1 + 2K1) x (M2 + 2K2) x ... x (Mn + 2Kn) blocks of said sample values of said digitized signal, where K1, K2, ..., Kn are integers, and at least one of K1, K2, ..., Kn is non-zero, and B. means for transforming said transform coded signal in accordance with a second spatial transform operator to obtain an output transformed signal, whereby said output transformed signal substantially corresponds to said digitized signal, and said second spatial transform operator being substantially the inverse of said first spatial transform.
95. A system according to claim 94 further comprising:
means for block processing said first transformed signal prior to operation of said means for transforming in accordance with said second spatial operator, said block processing being in accordance with a block process characterized by M1 x M2 x ... x Mn blocks, thereby establishing said first transformed signal as a block processed signal.
96. A system according to claim 95 wherein said block processing means comprises means for:
encoding said block encoded signal to obtain an encoded signal adapted for transmission over a communications medium, transmitting said encoded signal over said medium, receiving said encoded signal and decoding said received encoded signal to obtain an decoded signal corresponding to said first transformed signal.
97. A system according to claim 94 or 95 wherein said first and second spatial transform operators are non-orthogonal.
98. A system according to claim 94 wherein said means for transform coding in accordance with said first spatial transform coding operator comprises the means for modifying said sample values by replacing selective ones of said sample values in said blocks with modified sample values, said modified sample values being equal to the combination of pairs of associated sample values symmetrically disposed about the boundaries between adjacent blocks of said digitized signal.
99. A system according to claim 98 wherein said modifying means includes means for generating weighted linear combinations of said pairs of sample values.
100. A system according to claim 99 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value in all blocks adjacent to that block is a predetermined value.
101. A system according to claim 98 wherein the distribution of weighting coefficients of said combinations for each of said pairs in a block is symmetrical across that block.
102. A system according to claim 101 wherein for each sample value in a block, the sum of said weighting coefficients for that sample value in that block and the weighting coefficients for that sample value on all blocks adjacent to that block is a predetermined value.
CA000510748A 1985-06-03 1986-06-03 Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts Expired CA1255391A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US740,806 1985-06-03
US06/740,806 US4754492A (en) 1985-06-03 1985-06-03 Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts

Publications (1)

Publication Number Publication Date
CA1255391A true CA1255391A (en) 1989-06-06

Family

ID=24978159

Family Applications (1)

Application Number Title Priority Date Filing Date
CA000510748A Expired CA1255391A (en) 1985-06-03 1986-06-03 Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts

Country Status (7)

Country Link
US (1) US4754492A (en)
EP (1) EP0224583B1 (en)
JP (1) JP2651908B2 (en)
AT (1) ATE75333T1 (en)
CA (1) CA1255391A (en)
DE (1) DE3684996D1 (en)
WO (1) WO1986007479A1 (en)

Families Citing this family (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5496927A (en) * 1985-02-04 1996-03-05 Merrell Pharmaceuticals Inc. Peptidase inhibitors
BE904101A (en) * 1986-01-24 1986-07-24 Bell Telephone Mfg Cy IMAGE PROCESSING SYSTEM AND PHASE LOCKING LOOP APPLIED THEREIN.
GB8621994D0 (en) * 1986-09-12 1986-10-22 Crosfield Electronics Ltd Image processing
US5045853A (en) * 1987-06-17 1991-09-03 Intel Corporation Method and apparatus for statistically encoding digital data
GB8800503D0 (en) * 1988-01-11 1988-02-10 Crosfield Electronics Ltd Apparatus for generating two-dimensional coloured display
US5121216A (en) * 1989-07-19 1992-06-09 Bell Communications Research Adaptive transform coding of still images
JP2844695B2 (en) * 1989-07-19 1999-01-06 ソニー株式会社 Signal encoding device
US5267051A (en) * 1989-12-22 1993-11-30 Eastman Kodak Company High speed compression of imagery data
US5502789A (en) * 1990-03-07 1996-03-26 Sony Corporation Apparatus for encoding digital data with reduction of perceptible noise
AU7480691A (en) * 1990-03-15 1991-10-10 Thomson Consumer Electronics S.A. Digital image processing including block edges filtering
US5875266A (en) * 1990-07-31 1999-02-23 Fujitsu Limited Image data processing a method and apparatus
DE69131808T2 (en) 1990-07-31 2000-03-16 Fujitsu Ltd Process and device for image data processing
US5020121A (en) * 1990-08-16 1991-05-28 Hewlett-Packard Company Neighborhood block prediction bit compression
GB2247132A (en) * 1990-08-17 1992-02-19 Sony Broadcast & Communication Digital video data compression
EP0487282B1 (en) * 1990-11-19 2000-03-01 Canon Kabushiki Kaisha Image processing apparatus and method
US5172227A (en) * 1990-12-10 1992-12-15 Eastman Kodak Company Image compression with color interpolation for a single sensor image system
US5218650A (en) * 1991-01-02 1993-06-08 Ricoh Corporation Quantization method for use in image compression
US5625714A (en) * 1991-01-10 1997-04-29 Olympus Optical Co., Ltd. Image signal decoding device capable of removing block distortion with simple structure
GB2253318B (en) * 1991-02-27 1994-07-20 Stc Plc Image processing
JP3297445B2 (en) * 1991-04-23 2002-07-02 キヤノン株式会社 Output method and device
US5742345A (en) * 1991-07-05 1998-04-21 Samsung Electronics Co., Ltd. System for transmitting and receiving video signals using interpolation of adaptive factor
US5454051A (en) * 1991-08-05 1995-09-26 Eastman Kodak Company Method of reducing block artifacts created by block transform compression algorithms
US5787207A (en) * 1991-12-30 1998-07-28 Golin; Stuart J. Method and apparatus for minimizing blockiness in reconstructed images
JPH05219385A (en) * 1992-02-07 1993-08-27 Hudson Soft Co Ltd Picture compression expansion method and device
US6205259B1 (en) * 1992-04-09 2001-03-20 Olympus Optical Co., Ltd. Image processing apparatus
JP3297742B2 (en) * 1992-04-13 2002-07-02 ソニー株式会社 Image reproducing apparatus and image reproducing method
US5367385A (en) * 1992-05-07 1994-11-22 Picturetel Corporation Method and apparatus for processing block coded image data to reduce boundary artifacts between adjacent image blocks
KR0148130B1 (en) * 1992-05-18 1998-09-15 강진구 Apparatus and method for encoding/decoding due to restrain blocking artifact
JP3165296B2 (en) * 1992-12-25 2001-05-14 三菱電機株式会社 Inter-frame coding processing method, inter-frame coding processing method, and coding control method
JPH06327002A (en) * 1993-05-11 1994-11-25 Olympus Optical Co Ltd Moving image encoding device
KR970009302B1 (en) * 1993-08-17 1997-06-10 Lg Electronics Inc Block effect reducing apparatus for hdtv
US5420942A (en) * 1993-09-21 1995-05-30 Levit; Itzhak Methods and devices for self-correcting video compression
JP3195142B2 (en) * 1993-10-29 2001-08-06 キヤノン株式会社 Image processing method and apparatus
US5473384A (en) * 1993-12-16 1995-12-05 At&T Corp. Method of and system for enhancing distorted graphical information
US5742346A (en) * 1994-08-09 1998-04-21 Picture Tel Corporation Spatially adaptive blur filter
US6088130A (en) * 1994-09-27 2000-07-11 Canon Kabushiki Kaisha Image processing apparatus and method
JP3686695B2 (en) * 1994-10-20 2005-08-24 オリンパス株式会社 Image processing device
US5802218A (en) * 1994-11-04 1998-09-01 Motorola, Inc. Method, post-processing filter, and video compression system for suppressing mosquito and blocking atrifacts
US5629778A (en) * 1995-05-15 1997-05-13 Polaroid Corporation Method and apparatus for reduction of image data compression noise
US5751861A (en) * 1995-06-30 1998-05-12 Intel Corporation Reducing residual artifacts in video coding schemes with integer motion compensation
FR2737931B1 (en) * 1995-08-17 1998-10-02 Siemens Ag METHOD FOR PROCESSING DECODED IMAGE BLOCKS OF A BLOCK-BASED IMAGE CODING METHOD
US5774597A (en) * 1995-09-05 1998-06-30 Ge Medical Systems, Inc. Image compression and decompression using overlapped cosine transforms
GB2305798B (en) * 1995-09-28 1999-10-20 Sony Uk Ltd Spatial frequency-domain video signal processing
US5949919A (en) * 1995-10-05 1999-09-07 Microsoft Corporation Precompression extrapolation method
US5787203A (en) * 1996-01-19 1998-07-28 Microsoft Corporation Method and system for filtering compressed video images
US5799113A (en) * 1996-01-19 1998-08-25 Microsoft Corporation Method for expanding contracted video images
US5982438A (en) * 1996-03-22 1999-11-09 Microsoft Corporation Overlapped motion compensation for object coding
US5778098A (en) * 1996-03-22 1998-07-07 Microsoft Corporation Sprite coding
US5764814A (en) * 1996-03-22 1998-06-09 Microsoft Corporation Representation and encoding of general arbitrary shapes
DE19626985C1 (en) * 1996-07-04 1998-01-02 Siemens Ag Method and arrangement for reducing coding artifacts of block-based image coding methods and object-based image coding methods
US6075875A (en) * 1996-09-30 2000-06-13 Microsoft Corporation Segmentation of image features using hierarchical analysis of multi-valued image data and weighted averaging of segmentation results
US6094453A (en) * 1996-10-11 2000-07-25 Digital Accelerator Corporation Digital data compression with quad-tree coding of header file
US5748789A (en) * 1996-10-31 1998-05-05 Microsoft Corporation Transparent block skipping in object-based video coding systems
US6052490A (en) * 1997-02-14 2000-04-18 At&T Corp. Video coder employing pixel transposition
KR100251549B1 (en) * 1997-02-28 2000-04-15 구자홍 Digital image decoder
EP0980564B1 (en) * 1997-05-07 2007-03-28 Landmark Graphics Corporation Method for data compression
FI103003B1 (en) * 1997-06-13 1999-03-31 Nokia Mobile Phones Ltd Filtering procedure, filter and mobile terminal
KR100281099B1 (en) * 1997-07-30 2001-04-02 구자홍 Method for removing block phenomenon presented by cording of moving picture
IL122258A (en) * 1997-11-20 2002-08-14 Israel Aircraft Ind Ltd Method and system for determining temperature and/or emissivity function of objects by remote sensing
US6400831B2 (en) 1998-04-02 2002-06-04 Microsoft Corporation Semantic video object segmentation and tracking
US6029126A (en) * 1998-06-30 2000-02-22 Microsoft Corporation Scalable audio coder and decoder
US6115689A (en) * 1998-05-27 2000-09-05 Microsoft Corporation Scalable audio coder and decoder
US6285801B1 (en) * 1998-05-29 2001-09-04 Stmicroelectronics, Inc. Non-linear adaptive image filter for filtering noise such as blocking artifacts
US6249549B1 (en) * 1998-10-09 2001-06-19 Matsushita Electric Industrial Co., Ltd. Down conversion system using a pre-decimation filter
JP3623679B2 (en) * 1999-01-06 2005-02-23 日本電気株式会社 Video encoding device
FR2790173A1 (en) * 1999-02-24 2000-08-25 Canon Kk DIGITAL SIGNAL TRANSFORMATION DEVICE AND METHOD
US6577766B1 (en) * 1999-11-10 2003-06-10 Logitech, Inc. Method and apparatus for motion detection in the discrete cosine transform domain
KR100884134B1 (en) 2000-08-15 2009-02-17 마이크로소프트 코포레이션 Methods for timecoding media samples
US6822675B2 (en) * 2001-07-03 2004-11-23 Koninklijke Philips Electronics N.V. Method of measuring digital video quality
DE60210479T2 (en) * 2001-08-21 2007-04-12 Koninklijke Philips Electronics N.V. AUDIO CODERS WITH IRREGULAR FILTER BANK
US7024039B2 (en) * 2002-04-25 2006-04-04 Microsoft Corporation Block retouching
US7164797B2 (en) * 2002-04-25 2007-01-16 Microsoft Corporation Clustering
US7263227B2 (en) * 2002-04-25 2007-08-28 Microsoft Corporation Activity detector
US7120297B2 (en) * 2002-04-25 2006-10-10 Microsoft Corporation Segmented layered image system
US7392472B2 (en) * 2002-04-25 2008-06-24 Microsoft Corporation Layout analysis
US7110596B2 (en) * 2002-04-25 2006-09-19 Microsoft Corporation System and method facilitating document image compression utilizing a mask
US7043079B2 (en) * 2002-04-25 2006-05-09 Microsoft Corporation “Don't care” pixel interpolation
US6831868B2 (en) * 2002-12-05 2004-12-14 Intel Corporation Byte aligned redundancy for memory array
US7471726B2 (en) * 2003-07-15 2008-12-30 Microsoft Corporation Spatial-domain lapped transform in digital media compression
US7369709B2 (en) * 2003-09-07 2008-05-06 Microsoft Corporation Conditional lapped transform
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7643688B2 (en) * 2003-10-10 2010-01-05 Hewlett-Packard Development Company, L.P. Reducing artifacts in compressed images
US7570818B2 (en) * 2003-10-17 2009-08-04 Hewlett-Packard Development Company, L.P. Method for deblocking and transcoding a media stream
US7539870B2 (en) * 2004-02-10 2009-05-26 Microsoft Corporation Media watermarking by biasing randomized statistics
US20050226503A1 (en) * 2004-04-07 2005-10-13 Bailey James R Scanned image content analysis
US7545988B2 (en) * 2004-08-09 2009-06-09 George William Meeker Image blocking artifact reduction via transform pair
US7305139B2 (en) * 2004-12-17 2007-12-04 Microsoft Corporation Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
US7471850B2 (en) * 2004-12-17 2008-12-30 Microsoft Corporation Reversible transform for lossy and lossless 2-D data compression
US7428342B2 (en) * 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
JP2006277903A (en) * 2005-03-30 2006-10-12 Hitachi Global Storage Technologies Netherlands Bv Encoding device and decoder
US8036274B2 (en) * 2005-08-12 2011-10-11 Microsoft Corporation SIMD lapped transform-based digital media encoding/decoding
JP4868599B2 (en) * 2007-10-18 2012-02-01 株式会社メガチップス Frequency converter, hierarchical encoder, and hierarchical decoder
US8369638B2 (en) 2008-05-27 2013-02-05 Microsoft Corporation Reducing DC leakage in HD photo transform
US8447591B2 (en) * 2008-05-30 2013-05-21 Microsoft Corporation Factorization of overlapping tranforms into two block transforms
US8275209B2 (en) * 2008-10-10 2012-09-25 Microsoft Corporation Reduced DC gain mismatch and DC leakage in overlap transform processing
US8428959B2 (en) * 2010-01-29 2013-04-23 Polycom, Inc. Audio packet loss concealment by transform interpolation
US9525884B2 (en) * 2010-11-02 2016-12-20 Hfi Innovation Inc. Method and apparatus of slice boundary filtering for high efficiency video coding
CN105594206B (en) * 2013-11-29 2018-09-25 联发科技股份有限公司 The method and apparatus replicated for picture block in the frame in video compress
US10110926B2 (en) 2015-10-15 2018-10-23 Cisco Technology, Inc. Efficient loop filter for video codec
CN107945101B (en) 2016-10-13 2021-01-29 华为技术有限公司 Image processing method and device
CN112543345B (en) * 2020-12-02 2023-01-06 深圳创维新世界科技有限公司 Image processing method, transmitting end, receiving end and computer readable storage medium

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4261048A (en) 1975-12-25 1981-04-07 Citizen Watch Company Limited Analog quartz timepiece
US4224678A (en) * 1976-04-05 1980-09-23 Northrop Corporation Method and apparatus for implementing a processor based on the rationalized Haar transform for the purpose of real time compression of video data
US4027257A (en) * 1976-06-01 1977-05-31 Xerox Corporation Frequency domain automatic equalizer having logic circuitry
US4205341A (en) * 1978-01-24 1980-05-27 Nippon Telegraph And Telephone Public Corporation Picture signal coding apparatus
US4302775A (en) * 1978-12-15 1981-11-24 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
US4394774A (en) * 1978-12-15 1983-07-19 Compression Labs, Inc. Digital video compression system and methods utilizing scene adaptive coding with rate buffer feedback
US4245248A (en) * 1979-04-04 1981-01-13 Bell Telephone Laboratories, Incorporated Motion estimation and encoding of video signals in the transform domain
US4261018A (en) * 1979-06-18 1981-04-07 Bell Telephone Laboratories, Incorporated Progressive image transmission
US4261043A (en) * 1979-08-24 1981-04-07 Northrop Corporation Coefficient extrapolator for the Haar, Walsh, and Hadamard domains
US4288858A (en) * 1979-10-01 1981-09-08 General Electric Company Inverse two-dimensional transform processor
US4281344A (en) * 1980-05-02 1981-07-28 Bell Telephone Laboratories, Incorporated Video interframe transform coding technique
US4447886A (en) * 1981-07-31 1984-05-08 Meeker G William Triangle and pyramid signal transforms and apparatus
US4602286A (en) * 1982-01-15 1986-07-22 Quantel Limited Video processing for composite images
FR2527033A1 (en) * 1982-05-17 1983-11-18 Telediffusion Fse COLOR TELEVISION IMAGE INCLUSIVE SYSTEM
US4616262A (en) * 1983-11-14 1986-10-07 Dainippon Ink And Chemicals, Incorporated Method and apparatus for forming a combined image signal

Also Published As

Publication number Publication date
WO1986007479A1 (en) 1986-12-18
EP0224583A4 (en) 1988-09-07
JPS63500070A (en) 1988-01-07
US4754492A (en) 1988-06-28
EP0224583B1 (en) 1992-04-22
EP0224583A1 (en) 1987-06-10
ATE75333T1 (en) 1992-05-15
DE3684996D1 (en) 1992-05-27
JP2651908B2 (en) 1997-09-10

Similar Documents

Publication Publication Date Title
CA1255391A (en) Method and system for adapting a digitized signal processing system for block processing with minimal blocking artifacts
US5629778A (en) Method and apparatus for reduction of image data compression noise
US5454051A (en) Method of reducing block artifacts created by block transform compression algorithms
CA2125051C (en) Decompression of standard adct-compressed document images
EP0857392B1 (en) Overlapping block zerotree wavelet image coder
EP0555016B1 (en) Dynamic bit allocation for three-dimensional subband video coding
Roese et al. Interframe cosine transform image coding
US8165222B2 (en) Video coder employing pixel transposition
US4703349A (en) Method and apparatus for multi-dimensional signal processing using a Short-Space Fourier transform
US6128344A (en) Image coding/decoding apparatus utilizing sub-band encoding
EP0600642A2 (en) Method and apparatus for reducing correlated errors in subband coding systems with quantizers
AU9470298A (en) Lossless region of interest coding
US8243802B2 (en) Moving picture encoding apparatus, moving picture encoding method, moving picture encoding program, moving picture decoding apparatus, moving picture decoding method, and moving picture decoding program
US5268961A (en) Error control apparatus for a digital video signal processing system
EP0987901A2 (en) Technique for video communications using a coding-matched filter arrangement
US5982442A (en) Method and filter for reducing the blocking effect in image transmission and storage
US4829376A (en) Method for data reduction of digital video signals by vector quantization of coefficients acquired by orthonormal transformation with a symmetrical nearly, cyclical hadamard matrix
Schiller Overlapping block transform for image coding preserving equal number of samples and coefficients
Malvar Efficient signal coding with hierarchical lapped transforms
Liu et al. Segmentation-based coding of motion difference and motion field images for low bit-rate video compression
JP2980218B2 (en) Image information encoding device and image information decoding device
Yang et al. Edge-preserving reconstruction of compressed images using projections and a divide-and-conquer strategy
Torbey et al. System for lossless digital image coding/decoding
Venkatraraman et al. Low-bit-rate compression using recursive block coding techniques
US20030228068A1 (en) Progressive transmission and reception of image data using modified hadamard transform

Legal Events

Date Code Title Description
MKEX Expiry