Block transform coder for arbitrarily shaped image segments

Abstract: A Transform Coder Unit (TCU) (6) for transforming an arbitrarily shaped image into optimal transform coefficients (OTC) for data transmission comprises a forward transform (7) which transforms the image to transform coefficients, and a TCS generator (8) which generates a transform coefficient set (TCS) from the transform coefficients. The TCU also contains an inverse transform (9) which transforms the TCS to a computed region block having computed pel values. Finally, the TCU comprises a replacer (10) which replaces those computed pel values corresponding to the interior pel set with the original pel values to form a modified computed region block which is re-iterated until optimal transform coefficients are determined. A process for determining optimal transform coefficients using the aforementioned device is described.

Description: This invention relates to apparatus for transforming an arbitrarily shaped image into optimal transform coefficients for data transmission. Although current video coding standards may operate at very low bitrates, the trade-off between temporal and spatial resolution results in visually annoying motion or spatial artifacts. Therefore, the International Organization for Standardization is considering developing a new standard for very low bitrate A/V coding. ISO/IEC JTC1/SC29/WG11 MPEG 92/699, "Project Description for Very-Low Bitrate A/V Coding" (Nov. 5, 1992). This document reviews the state of the art and proposes a direction for future research. In typical image coding systems, the image to be coded is usually processed using N × N blocks of picture elements (pels) regardless of the image content. This approach, however, may lead to visible distortions known as blocking and mosquito effects, particularly at low bitrates. To avoid these visual artifacts, region-based image representation partitions the image into regions of similar motion or texture, yielding image segments of arbitrary shape instead of fixed (rectangular) blocks. Such image representation offers several advantages over the conventional block-based representation such as adaptation to local image characteristics. Consequently, region-based image representation has received considerable attention in MPEG4 video coding standard work for very low bitrate coding. A fundamental issue in region-based image compression is the coding of arbitrarily shaped image segments. An arbitrarily shaped image segment f(x,y) can be approximated by a set of basis functions optimized for the shape of the image segment to be coded: where x,y ε S, S is the region occupied by the image segment, ƒ(x,y) is the approximation of the image segment, and  i 's are the basis functions. However, such shape-adapted transform techniques require a large amount of memory for storing the set of basis functions. As a result, these techniques are only suitable for small regions. Furthermore, for each new segment a new set of basis functions has to be computed. Thus, extensive computation is involved. Since no fast algorithms exist, these techniques are not attractive for practical use. Another popular approach is to use one of the most popular image compression techniques, transform coding. In transform coding, an image is transformed from the image intensity domain to a new domain prior to coding and transmission. The new domain is selected so that the energy of the image becomes concentrated to a small region in the new domain. Among the various transforms, the discrete cosine transform (DCT) is the most widely used transform. It has become the industry standard because it provides a good approximation of the optimal Karhunen-Loeve transform (KLT) for a certain class of images, and can be computed by means of fast algorithms. With block transform coding, the image segment can be approximated by a set of two-dimensional basis functions defined on a rectangular block "B" which circumscribes the image: where x,y ∈ S , and ψ i 's are the basis functions defined on the full block B . The best approximation ƒ(x,y) of an image segment can be found by minimizing the squared error between the image segment and the approximation, i.e., error = Σ (f(x,y)- ƒ(x,y)). 2 This is equivalent to solving the Gaussian normal equations. Note that the summation is taken over the region defined by the image segment; pels outside the region are discarded. Since the number of pels of the image segment is usually less than the number of basis functions, the problem is undetermined, and several solutions are possible. To arrive at a single solution, the problem can be solved by successive approximation. This involves starting with a small subset of basis functions and exhaustively searching for the best solution. Although successive progression will yield a solution, the computational cost is high. Furthermore, like the shape-adapted techniques, no fast algorithms are available to make real-time implementation possible. A more efficient approach is to perform the transform on the entire block, where x, y ∈ B , and B is the area of the block. The transform can be performed in real-time by special purpose chips designed for block transforms. However, this technique requires that the pels outside the image segment be initialized before the transform occurs. The outside pels can be chosen such that the sum of squared errors over the image segment expressed by Equation (3) is minimized. This approach enables the transform spectrum to be optimized by choosing appropriate pel values outside the image segment. To this end, zeroing the outside pels would be an easy way to initialize them. This approach, however, introduces discontinuities at the boundary of the image segment, yielding high frequency components that degrade the coding performance. To alleviate the problem, the image segments can be extrapolated outside the boundary by mirroring or pel repetition such that a smoother transformation can be obtained. This ad hoc approach though, fails to provide consistent, satisfactory results. Consequently, a more promising method is needed. The present invention fulfills this need. The present invention utilizes the theory of successive projection onto convex sets (POCS). In Patrick L. Combettes, "The Foundation of Set Theoretic Estimation," Proceedings of the IEEE , Vol. 81, No. 2 (Feb. 1993), this theory is described in a theoretical sense. SIGNAL PROCESSING IV: THEORIES AND APPLICATIONS 1 September 1988, ELSEVIER SCIENCE (NL) pages 1145-1148 FRANKE ET AL. 'Constrained Iterative restoration Techniques: A Powerful Tool in region Oriented Texture Coding' investigates the properties of texture coding in the spectral domain. Constrained iterative restoration techniques are used by repeated transformation between the original and spatial domains to obtain optimised reconstructions that coincide with the receiver's a priori knowledge concerning the region form and bonded value range of the signals. SIGNAL PROCESSING V: THEORIES AND APPLICATIONS, vol. 11, 18 September 1990, ELSEVIER SCIENCE (NL) pages 901-904, XP365734 YU ET AL. 'Pictorial Transform Coding for Tessellating Arbitrary Shaped Regions' is directed to an adaptive image coding algorithm which transforms data over arbitrarily shaped regions. The algorithm works in two steps. First, it segments the image into regions based on a homogeneous criterion; then transform coding and inverse transform coding is applied in an iterative loop for obtaining optimised image data to encode the content of the regions. However, these documents deal only with theoretical considerations of image processing without disclosing a concrete and detailed structure of an apparatus for transforming an arbitrarily shaped image into optimal transform coefficients for data transmission. The present invention applies the known theory of successive projection onto convex sets in a practical sense to image coding. According to one aspect of this invention there is provided apparatus as claimed in claim 1. According to another aspect of this invention there is provided apparatus as claimed in claim 10. The present invention relates to determining the optimal transform coefficients for an arbitrarily shaped image for data transmission. The invention uses block transforms with frequency domain region-zeroing and space domain region-enforcing operations for effectively coding arbitrarily shaped image segments. The block transform is computed over a rectangular block which circumscribes the arbitrary shape. To find the best values for a group of selected transform coefficients, the invention uses an iterative technique based on the theory of successive projection onto convex sets (POCS). A key feature of the technique is that it works with existing block transform coding hardware (such as DCT chips) and software. Therefore, it can be implemented using existing codec component at an insignificant cost. Brief Description of The Drawings Fig. 1 depicts an arbitrary shape and the circumscribed rectangular region. Fig. 2 shows a preferred embodiment of the TCU which detects convergence in the image domain. Fig. 3 shows another preferred embodiment of the TCU which detects convergence in the transform domain. Fig. 4 shows another preferred embodiment of the present invention wherein a multiplicity of TCU are connected in series. Detailed Description of The Present Invention The present invention relates to an iterative technique to determine optimal transform coefficient values for the coding of arbitrarily shaped images. The convergence of the iteration to the optimal solution is guaranteed by the theory of successive projection onto convex sets (POCS). The technique can be described within the POCS context by using two sets of images. The first set is defined based on a basic premise of transform coding -- the energy compaction property of transform coefficients. This property provides that a large amount of energy is concentrated in a small fraction of the transform coefficients, and only these coefficients need to be kept for coding the image. The set of images which can be represented using a selected group of transform coefficients constitute the first set and will be referred to as the transform coefficients set (TCS). This set is convex for all linear and some non-linear transformations. The projection of an arbitrarily shaped image block onto this set can be determined by computing the block transform and selecting and retaining high energy coefficients. The remaining, non-selected coefficients are zeroed (region-zeroing in the frequency domain). The second set is derived form the fact that the values of the pels outside of the arbitrary shaped region are irrelevant to coding. Thus, the second set becomes the set of images whose pel values within the arbitrarily shaped region are specified by the image to be coded. This set is referred to as the region of support set (RSS). This set is convex. The projection of an arbitrarily shaped region onto this set can be obtained by replacing those pel values corresponding to the image's interior pels with the original pel values (region-enforcing in the space domain). This theory provides the basis for the present invention. The present invention basically comprises two parts. Fig. 1 depicts the first part which involves generating and preparing the data to be coded. In this step, a rectangular region block is circumscribed around an arbitrarily shaped image 2. This defines an original internal pel set 3 which lies within arbitrarily shaped image 2 and within region block 1, and an original external pel set 4 which lies outside arbitrarily shaped image 2 and within region block 1. To initialize the pel values of external pel set 4, an extrapolator 5 extrapolates the pel values of internal pel set 3. Examples of extrapolation methods include mirroring or pel repetition of the segments of internal pel set 3. Once external pel set 4 is initialized, the image data can be manipulated in the second part. The second part involves a transform coder unit (TCU) 6 performing a POCS iteration loop on the image data. TCU 6 is shown in Fig. 2. TCU 6 comprises a forward transform 7, which operates at real-time and transforms the image from the image domain 30 to the transform domain 31. Next, a TCS generator 8 generates a transform coefficient set (TCS) from the transform coefficients. This can be accomplished in a couple of ways. First, TCS generator 8 may contain a quantizer which generates the TCS by quantizing the transform coefficients. There is no convergence guarantee, however, under this alternative. A more preferred embodiment utilizes the energy compaction property of transform coefficients. This property holds that a large amount of energy is concentrated in a small fraction of the transform coefficients. Therefore, TCS generator 8 need only select and retain these coefficients for coding the image. The remaining transform coefficients can be zeroed. If the energy compaction property is used to generate the TCS, then the number of coefficients to retain should be established. This may accomplished via a rate controller 12. Rate controller 12 can establish the threshold energy level at which to retain coefficients based on the size of the arbitrarily shaped image, and the bit budget of the encoder which will eventually code the transform coefficients. Alternatively, the number of transform coefficients to retain can be established independently via a TCS limiter 13 at the beginning of each iteration. A combination of both these mechanisms could be used as well. TCS generator 8 outputs the TCS from the TCU if the TCS represents the optimal transform coefficients (OTC). Otherwise, TCS generator 8 sends the TCS to an inverse transform 9. Inverse transform 9 converts the TCS from transform domain 31 to image domain 30, thereby producing a computed regional block having computed pel values. A replacer 10 replaces those computed pel values corresponding with internal pel set 3 with the original pel values, thereby forming a modified computed regional block (MCRB). The MCRB is then re-iterated through a re-iterative forward transform. In the preferred embodiment of Figs. 2 and 3, the re-iterative forward transform and forward transform 7 are the same. Thus, the same TCU will re-iterate the MCRB. The re-iterative forward transform and forward transform 7, however, can be different. For example, Fig. 4 shows a successive connection of TCUs 201-204. In this configuration, the re-iterative forward transform of TCU 201 is the forward transform of succeeding TCU 202. Thus, the modified computed region block is re-iterated through different TCUs. The number of TCUs in series determines the number of iterations performed. Although the number of iterations depends upon the number of successive TCUs in the embodiment of Fig. 4, the number of iterations is variable in the embodiments of Figs. 2 and 3. Consequently, an iteration controller 11 is employed in both embodiments. Referring only to Fig. 2, iteration controller 11 controls switch 15 which has a first position 19 and a second position 20. First position 19 directs the TCS from TCS generator 8 to inverse transform 9 when the TCS does not represent the OTC. Second position 20 directs the TCS from TCS generator 8 to a quantizer when the TCS represents the OTC. Iteration controller 11 may control the switching of switch 15 through a couple of mechanisms. As Fig. 2 shows, an iteration counter 14 can be used to count the number of iterations. When a pre-determined number is reached, iteration counter 14 will signal iteration controller 11 which will move switch 15 from first position 19 to second position 20. Fig. 2 depicts another method of controlling switch 15 by monitoring image domain 30 of the TCU. Here, a convergence detector 21, and a frame buffer 17 are employed. Frame buffer 17 stores the pel values of the previous iteration. Convergence detector 21 switches switch 15 from first position 19 to second position 20 when the mean squared difference between the computed pel values stored in frame buffer 17 and those of the current iteration reaches a pre-determined level. Fig. 3 depicts a device which also controls switch 115, but does so by monitoring transform domain 131 of TCU 106 using a convergence detector 121, and a frame buffer 117. Frame buffer 117 stores the TCS of the previous iteration. Convergence detector 121 switches switch 115 from first position 119 to second position 120 when the mean squared difference between the TCS stored in frame buffer 117 and that of the current iteration reaches a pre-determined level.

Claims: Apparatus for transforming an arbitrarily shaped image into optimal transform coefficients (OTC) for data transmission, said apparatus comprising: (a) first means (7) for transforming said arbitrarily shaped image to transform coefficients; (b) second means (8) coupled to said first means (7) for generating a transform coefficient set (TCS) from said transform coefficients, said second means (8) being coupled to a first switch (15) configured to move between a second position (20) to output said TCS when said TCS represents said OTC , and a first position (19) to send said TCS to an inverse transform (9) when said TCS does not represent said OTC, said first switch (15) being movable between said first and second position upon receiving at least one signal from an iteration controller (11) for controlling the switching of said first switch (15), said iteration controller (11) transmitting said at least one signal to said first switch (15) after a pre-determined number of iterations are performed by an iteration counter (14) coupled to said iteration controller (11) to move said first switch (15) to said second position (20); (c) said inverse transform (9) being coupled to said second means (8) for transforming said TCS from a transform domain (31) to an image domain (30) thereby producing a series of computed pel values; and (d) third means (10) coupled to said inverse transform (9) for replacing computed pel values corresponding to an interior pel set of said arbitrarily shaped image with original pel values of said arbitrarily shaped image so as to form a modified computed region block (MCRB), said third means (10) being configured to send a modified computed region block to a reiterative forward transform (7) for re-iteration via a second switch (16) controlled by said iteration controller (11), wherein said reiterative forward transform (7) and said forward transform (7) are one and the same. Apparatus as claimed in claim 1, wherein said second means (8) comprises a quantizer which generates said TCS by quantizing said transform coefficients. Apparatus as claimed in claim 1, wherein for generating said TCS said second means (8) comprises a selector for selecting and retaining those transform coefficients which have high energy according to the energy compaction property of transform coefficients, and by zeroing all the non-selected transform coefficients. Apparatus as claimed in claim 3 wherein said second means (8) comprises a rate controller (12) to establish a threshold energy level at which said TCS selector retains transform coefficients, and said rate controller (12) establishes said level based on the bit budget of an encoder for coding said transform coefficients and the size of said arbitrarily shaped image. Apparatus as claimed in claim 3 wherein said second means (8) comprises a TCS limiter (13) to independently establish the number of transform coefficients to retain. Apparatus as claimed in claim 1, wherein said iteration controller (11) contains a convergence detector (21), and a frame buffer (17), said frame buffer (17) stores the pel values of a previous iteration, and said convergence detector (21) switches said first switch (15) from said first position (19) to said second position (20) when the mean squared difference between said MCRB stored in said frame buffer (17) and that of the current iteration reaches a pre-determined level. Apparatus as claimed in claim 1, wherein said iteration controller (11) contains a convergence detector (21), and a frame buffer (17), said frame buffer (17) stores the TCS of a previous iteration, and said convergence detector (21) switches said first switch (15) from said first position (19) to said second position (20) when the mean squared difference between the TCS stored in said frame buffer (17) and that of the current iteration reaches a pre-determined level. Apparatus as claimed in claim 1 wherein said re-iterative forward transform (7) comprises a forward transform of a succeeding apparatus, said succeeding apparatus being connected in series with said apparatus. Apparatus as claimed in claim 1 wherein said forward transform (7) is a discrete cosine transform (DCT) chip. Apparatus for transforming an arbitrarily shaped image into optimal transform coefficients (OTC) for data transmission. said apparatus comprising: a) generating means for generating original pel values, said generating means comprising: i) circumscribing means for circumscribing said arbitrarily shaped image (2) with a rectangular region block (1), thereby creating an internal pel set (3) which lies within said arbitrarily shaped image (2) and within said region block (1), and an external pel set (4) which lies outside said arbitrarily shaped image (2) within said region block (1); and ii) extrapolator means (5) for initializing pel values of said external pel set (4) by extrapolating the pel values of said internal pel set (3); and b) a transform coder unit (TCU) (6) which calculates optimal transform coefficients, said TCU comprising: i) means for performing (7) a forward transform on said region block (1) to generate transform coefficients; ii) means for generating (8) a transform coefficient set (TCS) from said transform coefficients, said means for generating said TCS being configured to select and retain those transform coefficients which have high energy according to the energy compaction property of transform coefficients, and zeroing the non-selected transform coefficients, said TCU comprising a rate controller (12) to establish a threshold energy level at which said transform coefficients are retained, said rate controller (12) being configured to establish said level based upon the bit budget of an encoder for coding said transform coefficients and the size of said arbitrarily shaped image (2); iii) means for performing an inverse transform (9) on said TCS thereby generating a computed region block having computed pel values; iv) means for replacing (10) those computed pel values corresponding to said internal pel set (3) with original pel values to form a modified computed region block (MCRB); v) means (8) for determining whether said TCS represents said OTC; vi) means (11) for reactivating said means (7) for performing a forward transform and said means (8) for generating said TCS for processing said modified computed region block and outputting said TCS when said TCS represents OTC; and vii) means (11) for reactivating said means (7,8,9,10,11) in (i) to (v) to perform their specified functions on said modified computed region block when said TCS values do not represent said OTC. Apparatus as claimed in claim 10, wherein said means for performing a forward transform (7) comprises a discrete cosine transform (DCT) chip. Apparatus as claimed in claim 10, wherein said means for generating (8) said TCS is configured to quantize said transform coefficients. Apparatus as claimed in claim 10, wherein said means for generating (8) said TCS is further configured to independently establish a number of transform coefficients to retain. Apparatus as claimed in claim 10, wherein said means for determining whether said TCS represents said OTC is configured to independently establish the number of iterations to perform. Apparatus as claimed in claim 14, wherein said means for determining whether said TCS represents said OTC is further configured to determine when the mean squared difference between said MCRB of one iteration and that of a subsequent iteration reaches a predetermined threshold.

Inventors: CHEN HOMER H, CIVANLAR MEHMET R, HASKELL BARIN G, CHEN, HOMER H,, CIVANLAR, MEHMET R., HASKELL, BARIN G.
Applicants: AT & T CORP, AT&T CORP.
Application year: 1994
Main classification: H04N7
IPC codes: H04N7, H04N1