WO2007061380A1 - Repetition and correlation coding - Google Patents

Repetition and correlation coding Download PDF

Info

Publication number
WO2007061380A1
WO2007061380A1 PCT/SG2005/000398 SG2005000398W WO2007061380A1 WO 2007061380 A1 WO2007061380 A1 WO 2007061380A1 SG 2005000398 W SG2005000398 W SG 2005000398W WO 2007061380 A1 WO2007061380 A1 WO 2007061380A1
Authority
WO
WIPO (PCT)
Prior art keywords
value
image
bit plane
recorded
difference
Prior art date
Application number
PCT/SG2005/000398
Other languages
French (fr)
Inventor
Arvind Thiagarajan
Original Assignee
Matrixview Limited
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 Matrixview Limited filed Critical Matrixview Limited
Priority to JP2008542281A priority Critical patent/JP2009516985A/en
Priority to AU2005338473A priority patent/AU2005338473A1/en
Priority to PCT/SG2005/000398 priority patent/WO2007061380A1/en
Priority to US12/094,599 priority patent/US20080260269A1/en
Priority to EP05803611A priority patent/EP1952539A4/en
Publication of WO2007061380A1 publication Critical patent/WO2007061380A1/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Definitions

  • the invention concerns a method for compressing image data of an image.
  • RCC Repetition Coded Compression
  • RCC achieves a very impressive level of compression based on coding repetitions. For example, consider this data sequence of pixel values, where each pixel is represented by 8 bits:
  • a method for compressing image data of an image wherein the difference between each element and a previous element is calculated comprising: comparing the difference with a predetermined correlation value and: if they are equal, a first value is recorded; and if they are not equal, a second value is recorded.
  • the first and second values may be recorded in a bit plane.
  • the value of the element may not be stored, and if the second value is recorded, the value of the element may be stored.
  • the method may further comprise associating the predetermined correlation value with the bit plane.
  • the predetermined correlation value may be a value from -8 to +8.
  • the method may further comprise repeating the comparison of the difference for each predetermined correlation value, and where a separate bit plane is used for each predetermined correlation value.
  • the first value may be 1 and the second value may be 0.
  • Each element may be a pixel.
  • the method may further comprise the initial step of: comparing each image element with a previous image element and if they are within a predetermined range of each other, modifying the image element to be equal to the previous image element; where repetition is increased to enable lossy compression of the image.
  • the comparison may be performed in raster order, from left to right and then top to bottom.
  • the comparison may be performed in non-raster order, the comparison being one from the group consisting of: vertical and diagonal.
  • the method may further comprise transforming the image data according to any one from the group consisting: Repetition Coded Compression (RCC), Repetition Coded Compression Predict (RCCP), Repetition Coded Adaptive (RCCA), and Repetition Coded Compression Multidimensional.
  • the method may further comprise dividing the image into a plurality of tiles.
  • the method may further comprise streaming the tiles via a network.
  • a method for compressing data comprising a plurality of data elements, wherein the difference between each element and a previous element is calculated, the method comprising: comparing the difference with a predetermined correlation value and: if they are equal, a first value is recorded; and if they are not equal, a second value is recorded.
  • a system for compressing image data of an image wherein the difference between each element and a previous element is calculated comprising: a comparison module to compare the difference with a predetermined correlation value, and if they are equal, a first value is recorded in a bit plane, and if they are not equal, a second value is recorded in the bit plane; and an encoder to encode first and second values in the bit plane into a bit plane index; wherein the compressed image is able to be decompressed using the bit plane index and the bit plane.
  • the compressed image and bit plane may be stored on a storage medium and the compressed image is stored as a plurality of tiles to enable streaming of the compressed image.
  • Figure 1 is an illustration of an 81 -pixel region within a sample of a colour image
  • Figure 2 is a graph illustrating the distribution of correlation values for a typical colour image
  • Figure 3 is a process flow diagram of Repetition & Correlation Coding in accordance with a preferred embodiment of the present invention.
  • FIG. 4 is a system architecture diagram of the Repetition & Correlation Coding system in accordance with a preferred embodiment of the present invention. Detailed Description of the Drawings
  • Image data is highly correlated. This means that more often than not, adjacent data values in an image are repetitive in nature. If they are not repetitive, then more often than not they are related to each other in some manner.
  • pixel values range from 0 to 255 to provide 256 distinct levels of gray. Each pixel is represented by 8 bits.
  • pixel values range from 0 (black) to 255 (brightest red) to provide 256 distinct levels of colour for an RGB image. There may be less repetition in a colour image but there remains a significant correlation between adjacent pixel values. It has been discovered that the difference between adjacent pixel values falls mostly within a limited range as illustrated in Figure 2.
  • the top row of the data sequence of the pixel region is used an example.
  • RCC is not effective as all values need to be stored.
  • a method for Repetition & Correlation Coding is provided.
  • the pixels are scanned 301 in the horizontal direction (raster order) in the image matrix.
  • Each element and its previous element are compared 302.
  • the difference between an element and its previous element is calculated 303 by subtracting the value of the element from the value of its previous element. For the first element in the data sequence, no calculation is performed and its value is recorded.
  • a correlation value is selected for this first scan to be compared 304 with the correlation or difference between adjacent elements.
  • the first scan is performed with a correlation value of +1.
  • the correlation value is associated 305 with a bit plane.
  • the bit plane is not an indication of pixel value.
  • a comparison 306 is performed between the correlation of adjacent elements in the data sequence and the correlation value. If the correlation and correlation value are equal 307 then a 1 is recorded 308 in the bit plane. Otherwise a 0 is recorded 309 in the bit plane.
  • the data sequence is encoded by storing 311 the value of the element where there is a 0 in the bit plane for that position and where there is a 1 in the bit plane, no value is stored 310.
  • a second scan is performed 312 with a correlation value of -1:
  • bit plane For each scan, a separate bit plane is used. The difference between adjacent pixel values falls mostly within the range -8 to +8. Thus, up to 16 bit planes may be used where the process is performed 16 times to cover each correlation value.
  • a multidimensional bit plane may be used to increase compressibility.
  • the multidimensional bit plane performs a combination of the first and second bit planes.
  • a binary addition or an "OR" operation is performed on the two bit planes and is stored as a lossless compressed multidimensional bit plane.
  • the multidimensional bit plane is:
  • a “NOT” is performed between the multidimensional bit plane and the original image matrix. Both the "OR” and “NOT” operations maintain the integrity of the image data and preserves the lossless nature of the transform.
  • the multidimensional bit plane is a consolidated bit plane representation of all the bit planes created by comparing the image pixel data with the predetermined correlation value. Consequently, the entire range of bit planes (based on the range of predetermined correlation values) are represented in a reduced number of bit planes thereby further enhancing compressibility of the image data.
  • the original image data is decomposed to one or more bit planes and stored along with an index of the image. The reconstruction is performed losslessly using the index and the bit plane.
  • the bit plane is inspected. If there is a 0 stored in a position of the bit plane, then the value has been stored. This value is retrieved to reproduce the element for the original image matrix. If there is a 1 stored in a position of the bit plane, then no value has been stored. When there is no value stored, the correlation value associated with the bit plane is added to the previous element to determine the value for the current element in order to reproduce the original image matrix.
  • the encoded data is:
  • an exemplary system 400 for compressing image data 401 of an image is provided.
  • the difference between each element and a previous element is calculated by the system 400.
  • the system 400 generally comprises a comparison module 410 and an encoder 420.
  • the comparison module 410 compares the difference with a predetermined correlation value, and if they are equal, a first value is recorded in a bit plane 430, and if they are not equal, a second value is recorded in the bit plane 430.
  • the encoder 420 encodes the first and second values in the bit plane 430 into a bit plane index, and compresses the image data.
  • the compressed image 440 and bit plane 430 are stored on a storage medium 450.
  • the compressed image 440 may be stored as separate tiles 460 to enable streaming of the image to users 470.
  • the compressed image 440 is able to be decompressed using the bit plane index and the bit plane 430.
  • the image data may be sourced from an analog image capturing device 403 such as a still camera or video camera. If this is the case, an analog to digital converter 402 is required which may be a digital image scanner. Otherwise, if the image is already in digital form, it may be directly input to the comparison module 410 of the system 400.
  • an analog image capturing device 403 such as a still camera or video camera. If this is the case, an analog to digital converter 402 is required which may be a digital image scanner. Otherwise, if the image is already in digital form, it may be directly input to the comparison module 410 of the system 400.
  • lossy compression is possible. One way is by increasing repetition in the original image matrix. If the difference between adjacent pixels is less than a given arbitrary threshold value, then the adjacent pixels are made identical. This further increases the number of repetitions in the image data and therefore also increases the compression ratio after applying RCC.
  • the value of the threshold can be varied according to the requirements of the particular application, and system. The higher the threshold, the better the compression ratio and also the
  • RCC predict transformation RCCP
  • RCC adaptive transformation RCCA
  • Repetition & Correlation Coding may also be applied to streaming applications such as images displayed on a web page or mobile phone via MMS message.
  • the image is streamed via a network from an image source to a user.
  • the image source may be a distributed database.
  • the image may be divided into smaller tiles, each tile being transmitted in compressed form (after Repetition & Correlation Coding) to the user.
  • Multiple tiles may be transmitted simultaneously by multiple servers to maximise bandwidth of the network. Initially, tiles are transmitted according to a predetermined scheme such as interlacing, or every fifth tile of the image is first transmitted, tiles are first transmitted incrementally from the center to the periphery of the image. Alternatively, the tiles to be first transmitted are selected at random.
  • the transmission order continues in this manner unless interrupted by the user.
  • the transmission of tiles is able to be intuitive and interactive whereby if the user selects a specific portion of the image they wish to zoom in on or inspect first, tiles within the selected portion are transmitted with a higher priority than other tiles of the image. Tiles adjacent to the selected portion are given the next priority, and the remaining tiles further away from the selected portion are given a lower priority. Therefore the transmission of tiles to the user is ordered according to a priority determined by the selection or action of the user.
  • the relevant portion of the image which is of interest to a user is reproduced faster for display in contrast to conventional methods where the image typically is reproduced in raster order from left to right, top to bottom. So, if the area of interest is located in the bottom right corner of the image, the user has to wait for the entire transmission to complete.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

A method for compressing image data of an image wherein a difference between each element and a previous element is calculated (303), the method comprising: comparing (304) the difference with a predetermined correlation value; if they are equal, a first value is recorded into a bit plane (308), where the predetermined correlation value is associated with the bit plane (305); and if they are not equal, a second value is recorded into the bit plane (309). Where a first value is recorded in the bit plane, the value of the element is not stored (310), where there is a second value in the bit plane, the value of the element is stored (311). The compressed image can be decompressed using both the bit plane and the bit plane index.

Description

Title
Repetition and Correlation Coding
Technical Field The invention concerns a method for compressing image data of an image.
Cross-reference to related applications
Title: REPETITION CODED COMPRESSION FOR HIGHLY CORRELATED IMAGE DATA Application No.: PCT/IN03/00049 Filed: 7 March 2003 Inventor: Arvind Thiagarajan
Title: COMPRESSING IMAGE DATA
Application No.: PCT/SG2004/000411 Filed: 15 December 2004 Inventor: Arvind Thiagarajan
Background of the Invention
Repetition Coded Compression (RCC) is a technology invented by the present inventor to increase compressibility of data. RCC is disclosed in the two previously filed cross-related applications, the contents of which are herein incorporated by reference.
RCC achieves a very impressive level of compression based on coding repetitions. For example, consider this data sequence of pixel values, where each pixel is represented by 8 bits:
Figure imgf000003_0001
Using RCC1 the data sequence is able to be compressed by 32% in this example.
However, further compression is desirable.
Summary of the Invention
In a first preferred aspect, there is provided a method for compressing image data of an image wherein the difference between each element and a previous element is calculated, the method comprising: comparing the difference with a predetermined correlation value and: if they are equal, a first value is recorded; and if they are not equal, a second value is recorded.
The first and second values may be recorded in a bit plane.
If first value is recorded, the value of the element may not be stored, and if the second value is recorded, the value of the element may be stored.
The method may further comprise associating the predetermined correlation value with the bit plane.
The predetermined correlation value may be a value from -8 to +8.
The method may further comprise repeating the comparison of the difference for each predetermined correlation value, and where a separate bit plane is used for each predetermined correlation value.
The first value may be 1 and the second value may be 0. Each element may be a pixel.
The method may further comprise the initial step of: comparing each image element with a previous image element and if they are within a predetermined range of each other, modifying the image element to be equal to the previous image element; where repetition is increased to enable lossy compression of the image.
The comparison may be performed in raster order, from left to right and then top to bottom.
The comparison may be performed in non-raster order, the comparison being one from the group consisting of: vertical and diagonal.
The method may further comprise transforming the image data according to any one from the group consisting: Repetition Coded Compression (RCC), Repetition Coded Compression Predict (RCCP), Repetition Coded Adaptive (RCCA), and Repetition Coded Compression Multidimensional. The method may further comprise dividing the image into a plurality of tiles.
The method may further comprise streaming the tiles via a network.
In a second aspect, there is provided a method for compressing data, the data comprising a plurality of data elements, wherein the difference between each element and a previous element is calculated, the method comprising: comparing the difference with a predetermined correlation value and: if they are equal, a first value is recorded; and if they are not equal, a second value is recorded.
In a third aspect, there is provided a system for compressing image data of an image wherein the difference between each element and a previous element is calculated, the system comprising: a comparison module to compare the difference with a predetermined correlation value, and if they are equal, a first value is recorded in a bit plane, and if they are not equal, a second value is recorded in the bit plane; and an encoder to encode first and second values in the bit plane into a bit plane index; wherein the compressed image is able to be decompressed using the bit plane index and the bit plane.
The compressed image and bit plane may be stored on a storage medium and the compressed image is stored as a plurality of tiles to enable streaming of the compressed image.
Brief Description of the Drawings
An example of the invention will now be described with reference to the accompanying drawings, in which:
Figure 1 is an illustration of an 81 -pixel region within a sample of a colour image;
Figure 2 is a graph illustrating the distribution of correlation values for a typical colour image;
Figure 3 is a process flow diagram of Repetition & Correlation Coding in accordance with a preferred embodiment of the present invention; and
Figure 4 is a system architecture diagram of the Repetition & Correlation Coding system in accordance with a preferred embodiment of the present invention. Detailed Description of the Drawings
The drawings and the following discussion are intended to provide a brief, general description of a suitable computing environment in which the present invention may be implemented. Although not required, the invention will be described in the general context of computer-executable instructions, such as program modules, being executed by a computer such as a personal computer, laptop computer, notebook computer, tablet computer, PDA and the like. Generally, program modules include routines, programs, characters, components, data structures, that perform particular tasks or implement particular abstract data types. As those skilled in the art will appreciate, the invention may be practiced with other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
Image data is highly correlated. This means that more often than not, adjacent data values in an image are repetitive in nature. If they are not repetitive, then more often than not they are related to each other in some manner.
In 8 bit grayscale images, pixel values range from 0 to 255 to provide 256 distinct levels of gray. Each pixel is represented by 8 bits. For colour images, pixel values range from 0 (black) to 255 (brightest red) to provide 256 distinct levels of colour for an RGB image. There may be less repetition in a colour image but there remains a significant correlation between adjacent pixel values. It has been discovered that the difference between adjacent pixel values falls mostly within a limited range as illustrated in Figure 2.
Referring to Figure 1 , the top row of the data sequence of the pixel region is used an example.
Data Sequence: 10 9 10 g 8 10 9 10 11
If RCC is applied:
Bit Plane: 1 1 1 1 1 1 1 1 1 Value Stored: 10 9 I 10 I 9 8 I 10 9 10 11
As there are no repetitions in this data sequence, RCC is not effective as all values need to be stored.
Referring to Figure 3, a method for Repetition & Correlation Coding is provided. The pixels are scanned 301 in the horizontal direction (raster order) in the image matrix. Each element and its previous element are compared 302. The difference between an element and its previous element is calculated 303 by subtracting the value of the element from the value of its previous element. For the first element in the data sequence, no calculation is performed and its value is recorded.
Using the example of Figure 1, the data sequence and correlation between adjacent elements are:
Figure imgf000007_0001
Next, a correlation value is selected for this first scan to be compared 304 with the correlation or difference between adjacent elements. For example, the first scan is performed with a correlation value of +1. The correlation value is associated 305 with a bit plane. The bit plane is not an indication of pixel value. A comparison 306 is performed between the correlation of adjacent elements in the data sequence and the correlation value. If the correlation and correlation value are equal 307 then a 1 is recorded 308 in the bit plane. Otherwise a 0 is recorded 309 in the bit plane.
Figure imgf000007_0002
During encoding, the data sequence is encoded by storing 311 the value of the element where there is a 0 in the bit plane for that position and where there is a 1 in the bit plane, no value is stored 310.
Rather than storing 9 X 8 = 72 bits for the data sequence, only 6 X 8 bits = 48 bits are stored +9 bits for the bit plane to code the correlation of values. Thus, the compression achieved is (72 - 57) ÷ 72 = 21%.
A second scan is performed 312 with a correlation value of -1:
Bit Plane (-1): I 0 Value Stored: 10 10 I 10 I 10 11
Rather than storing 9 X 8 bits = 72 bits for the data sequence, only 5 X 8 bits are stored +9 bits for the bit plane to code the correlation of values. Thus, the compression achieved is (72 - 49) ÷ 72 = 32%.
For each scan, a separate bit plane is used. The difference between adjacent pixel values falls mostly within the range -8 to +8. Thus, up to 16 bit planes may be used where the process is performed 16 times to cover each correlation value.
Where multiple bit planes are used, a multidimensional bit plane may be used to increase compressibility. Using the present example, the multidimensional bit plane performs a combination of the first and second bit planes. A binary addition or an "OR" operation is performed on the two bit planes and is stored as a lossless compressed multidimensional bit plane.
Using the same example above:
Bit Plane (+1): 0 0 0
Figure imgf000008_0001
The multidimensional bit plane is:
Figure imgf000008_0002
A "NOT" is performed between the multidimensional bit plane and the original image matrix. Both the "OR" and "NOT" operations maintain the integrity of the image data and preserves the lossless nature of the transform.
I Multidimensional bit plane: 1 1 1 1 0 1 1
0
After NOT operation: 1 0 0 0 0 1 0 0 0
The multidimensional bit plane is a consolidated bit plane representation of all the bit planes created by comparing the image pixel data with the predetermined correlation value. Consequently, the entire range of bit planes (based on the range of predetermined correlation values) are represented in a reduced number of bit planes thereby further enhancing compressibility of the image data. Thus, the original image data is decomposed to one or more bit planes and stored along with an index of the image. The reconstruction is performed losslessly using the index and the bit plane.
To decode, the bit plane is inspected. If there is a 0 stored in a position of the bit plane, then the value has been stored. This value is retrieved to reproduce the element for the original image matrix. If there is a 1 stored in a position of the bit plane, then no value has been stored. When there is no value stored, the correlation value associated with the bit plane is added to the previous element to determine the value for the current element in order to reproduce the original image matrix.
Using the example of Figure 1 again, the encoded data is:
Figure imgf000009_0001
Referring to Figure 4, an exemplary system 400 for compressing image data 401 of an image is provided. The difference between each element and a previous element is calculated by the system 400. The system 400 generally comprises a comparison module 410 and an encoder 420. The comparison module 410 compares the difference with a predetermined correlation value, and if they are equal, a first value is recorded in a bit plane 430, and if they are not equal, a second value is recorded in the bit plane 430. The encoder 420 encodes the first and second values in the bit plane 430 into a bit plane index, and compresses the image data. The compressed image 440 and bit plane 430 are stored on a storage medium 450. The compressed image 440 may be stored as separate tiles 460 to enable streaming of the image to users 470. The compressed image 440 is able to be decompressed using the bit plane index and the bit plane 430.
The image data may be sourced from an analog image capturing device 403 such as a still camera or video camera. If this is the case, an analog to digital converter 402 is required which may be a digital image scanner. Otherwise, if the image is already in digital form, it may be directly input to the comparison module 410 of the system 400. Although a lossless system has been described, it is envisaged that lossy compression is possible. One way is by increasing repetition in the original image matrix. If the difference between adjacent pixels is less than a given arbitrary threshold value, then the adjacent pixels are made identical. This further increases the number of repetitions in the image data and therefore also increases the compression ratio after applying RCC. The value of the threshold can be varied according to the requirements of the particular application, and system. The higher the threshold, the better the compression ratio and also the higher the loss in the quality of the reconstructed image.
Also, RCC predict transformation (RCCP) and RCC adaptive transformation (RCCA) may be used together with the present invention to increase compressibility. RCCP and RCCA are disclosed in PCT/SG2004/000411 , the contents of which are herein incorporated by reference.
Repetition & Correlation Coding may also be applied to streaming applications such as images displayed on a web page or mobile phone via MMS message. In streaming applications, the image is streamed via a network from an image source to a user. The image source may be a distributed database. In this application, the image may be divided into smaller tiles, each tile being transmitted in compressed form (after Repetition & Correlation Coding) to the user. Multiple tiles may be transmitted simultaneously by multiple servers to maximise bandwidth of the network. Initially, tiles are transmitted according to a predetermined scheme such as interlacing, or every fifth tile of the image is first transmitted, tiles are first transmitted incrementally from the center to the periphery of the image. Alternatively, the tiles to be first transmitted are selected at random. The transmission order continues in this manner unless interrupted by the user. The transmission of tiles is able to be intuitive and interactive whereby if the user selects a specific portion of the image they wish to zoom in on or inspect first, tiles within the selected portion are transmitted with a higher priority than other tiles of the image. Tiles adjacent to the selected portion are given the next priority, and the remaining tiles further away from the selected portion are given a lower priority. Therefore the transmission of tiles to the user is ordered according to a priority determined by the selection or action of the user. Thus the relevant portion of the image which is of interest to a user is reproduced faster for display in contrast to conventional methods where the image typically is reproduced in raster order from left to right, top to bottom. So, if the area of interest is located in the bottom right corner of the image, the user has to wait for the entire transmission to complete.
It will be appreciated by persons skilled in the art that numerous variations and/or modifications may be made to the invention as shown in the specific embodiments without departing from the scope or spirit of the invention as broadly described. The present embodiments are, therefore, to be considered in all respects illustrative and not restrictive.

Claims

WE CLAIM:
1. A method for compressing image data of an image wherein the difference between each element and a previous element is calculated, the method comprising: comparing the difference with a predetermined correlation value and: if they are equal, a first value is recorded; and if they are not equal, a second value is recorded.
2. The method according to claim 1, wherein the first and second values are recorded in a bit plane.
3. The method according to claim 1 , wherein if first value is recorded, the value of the element is not stored, and if the second value is recorded, the value of the element is stored.
4. The method according to claim 2, further comprising associating the predetermined correlation value with the bit plane.
5. The method according to claim 1, wherein the predetermined correlation value is a value from -8 to +8.
6. The method according to claim 5, further comprising repeating the comparison of the difference for each predetermined correlation value, and where a separate bit plane is used for each predetermined correlation value.
7. The method according to claim 1, wherein the first value is 1 and the second value is 0.
8. The method according to claim 1, wherein each element is a pixel.
9. The method according to claim 1 , further comprising the initial step of: comparing each image element with a previous image element and if they are within a predetermined range of each other, modifying the image element to be equal to the previous image element; where repetition is increased to enable lossy compression of the image.
10. The method according to claim 1, wherein the comparison is performed in raster order, from left to right and then top to bottom.
11. The method according to claim 1, wherein the comparison is performed in non-raster order, the comparison being one from the group consisting of: vertical and diagonal.
12. The method according to claim 1, further comprising transforming the image data according to any one from the group consisting: Repetition Coded Compression (RCC), Repetition Coded Compression Predict (RCCP), Repetition Coded Adaptive (RCCA), and Repetition Coded Compression Multidimensional.
13. The method according to claim 1, further comprising dividing the image into a plurality of tiles.
14. The method according to claim 1 , further comprising streaming the tiles via a network.
15. A method for compressing data, the data comprising a plurality of data elements, wherein the difference between each element and a previous element is calculated, the method comprising: comparing the difference with a predetermined correlation value and: if they are equal, a first value is recorded; and if they are not equal, a second value is recorded.
16. A system for compressing image data of an image wherein the difference between each element and a previous element is calculated, the system comprising: a comparison module to compare the difference with a predetermined correlation value, and if they are equal, a first value is recorded in a bit plane, and if they are not equal, a second value is recorded in the bit plane; and an encoder to encode first and second values in the bit plane into a bit plane index; wherein the compressed image is able to be decompressed using the bit plane index and the bit plane.
17. The system according to claim 16, wherein the compressed image and bit plane are stored on a storage medium and the compressed image is stored as a plurality of tiles to enable streaming of the compressed image.
PCT/SG2005/000398 2005-11-22 2005-11-22 Repetition and correlation coding WO2007061380A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008542281A JP2009516985A (en) 2005-11-22 2005-11-22 Iterative correlation coding
AU2005338473A AU2005338473A1 (en) 2005-11-22 2005-11-22 Repetition and correlation coding
PCT/SG2005/000398 WO2007061380A1 (en) 2005-11-22 2005-11-22 Repetition and correlation coding
US12/094,599 US20080260269A1 (en) 2005-11-22 2005-11-22 Repetition and Correlation Coding
EP05803611A EP1952539A4 (en) 2005-11-22 2005-11-22 Repetition and correlation coding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/SG2005/000398 WO2007061380A1 (en) 2005-11-22 2005-11-22 Repetition and correlation coding

Publications (1)

Publication Number Publication Date
WO2007061380A1 true WO2007061380A1 (en) 2007-05-31

Family

ID=38067493

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/SG2005/000398 WO2007061380A1 (en) 2005-11-22 2005-11-22 Repetition and correlation coding

Country Status (5)

Country Link
US (1) US20080260269A1 (en)
EP (1) EP1952539A4 (en)
JP (1) JP2009516985A (en)
AU (1) AU2005338473A1 (en)
WO (1) WO2007061380A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101616320B (en) * 2008-06-26 2011-05-04 展讯通信(上海)有限公司 Method and equipment for compressing and decompressing image

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9207754B2 (en) * 2011-10-20 2015-12-08 Microsoft Technology Licensing, Llc Enabling immersive, interactive desktop image presentation
US20130104025A1 (en) * 2011-10-20 2013-04-25 Microsoft Corporation Enabling immersive search engine home pages
KR102120865B1 (en) * 2014-01-14 2020-06-17 삼성전자주식회사 Display Device, Driver of Display Device, Electronic Device including thereof and Display System
US9640376B1 (en) 2014-06-16 2017-05-02 Protein Metrics Inc. Interactive analysis of mass spectrometry data
US9385751B2 (en) 2014-10-07 2016-07-05 Protein Metrics Inc. Enhanced data compression for sparse multidimensional ordered series data
US10354421B2 (en) 2015-03-10 2019-07-16 Protein Metrics Inc. Apparatuses and methods for annotated peptide mapping
US10319573B2 (en) 2017-01-26 2019-06-11 Protein Metrics Inc. Methods and apparatuses for determining the intact mass of large molecules from mass spectrographic data
US10546736B2 (en) 2017-08-01 2020-01-28 Protein Metrics Inc. Interactive analysis of mass spectrometry data including peak selection and dynamic labeling
US11626274B2 (en) 2017-08-01 2023-04-11 Protein Metrics, Llc Interactive analysis of mass spectrometry data including peak selection and dynamic labeling
US10510521B2 (en) 2017-09-29 2019-12-17 Protein Metrics Inc. Interactive analysis of mass spectrometry data
US11640901B2 (en) 2018-09-05 2023-05-02 Protein Metrics, Llc Methods and apparatuses for deconvolution of mass spectrometry data
US11346844B2 (en) 2019-04-26 2022-05-31 Protein Metrics Inc. Intact mass reconstruction from peptide level data and facilitated comparison with experimental intact observation
WO2022047368A1 (en) 2020-08-31 2022-03-03 Protein Metrics Inc. Data compression for multidimensional time series data
US11758104B1 (en) * 2022-10-18 2023-09-12 Illuscio, Inc. Systems and methods for predictive streaming of image data for spatial computing

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0222592A2 (en) * 1985-11-05 1987-05-20 Sony Corporation High efficiency technique for coding a digital video signal
JP2000299866A (en) * 1999-04-12 2000-10-24 Ntt Software Corp Method for encoding image
US6266372B1 (en) * 1993-03-31 2001-07-24 Canon Kabushiki Kaisha Apparatus for image reproduction using motion estimation
US20020012393A1 (en) * 2000-07-17 2002-01-31 Sanyo Electric Co., Ltd. Motion detecting device
US20030085823A1 (en) * 2001-10-19 2003-05-08 Samsung Electronics Co., Ltd. Methods for compressing and decompressing data
US20040264792A1 (en) * 2003-06-26 2004-12-30 Academia Sinica Coding and decoding of video data
WO2005057937A1 (en) * 2003-12-15 2005-06-23 Matrixview Limited Compressing image data
EP1578116A1 (en) * 2002-12-26 2005-09-21 Mitsubishi Denki Kabushiki Kaisha Image processor

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPP248498A0 (en) * 1998-03-20 1998-04-23 Canon Kabushiki Kaisha A method and apparatus for encoding and decoding an image
US6263109B1 (en) * 1998-09-25 2001-07-17 Hewlett-Packard Company Context-based ordering and coding of transform coefficient bit-planes for embedded bitstreams
AUPR192800A0 (en) * 2000-12-06 2001-01-04 Canon Kabushiki Kaisha Digital image compression and decompression
NZ536300A (en) * 2002-04-01 2006-12-22 Matrixview Ltd Repetition coded compression for highly correlated image data

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0222592A2 (en) * 1985-11-05 1987-05-20 Sony Corporation High efficiency technique for coding a digital video signal
US6266372B1 (en) * 1993-03-31 2001-07-24 Canon Kabushiki Kaisha Apparatus for image reproduction using motion estimation
JP2000299866A (en) * 1999-04-12 2000-10-24 Ntt Software Corp Method for encoding image
US20020012393A1 (en) * 2000-07-17 2002-01-31 Sanyo Electric Co., Ltd. Motion detecting device
US20030085823A1 (en) * 2001-10-19 2003-05-08 Samsung Electronics Co., Ltd. Methods for compressing and decompressing data
EP1578116A1 (en) * 2002-12-26 2005-09-21 Mitsubishi Denki Kabushiki Kaisha Image processor
US20040264792A1 (en) * 2003-06-26 2004-12-30 Academia Sinica Coding and decoding of video data
WO2005057937A1 (en) * 2003-12-15 2005-06-23 Matrixview Limited Compressing image data

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHI MAI L.: "Chapter 10.8 JPEG", XP008118099, Retrieved from the Internet <URL:http://www.web.archive.org/web> *
CHI MAI L.: "Introduction to computer vision and image processing", XP008118836, Retrieved from the Internet <URL:http://www.web.archive.org/web> *
PATENT ABSTRACTS OF JAPAN *
See also references of EP1952539A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101616320B (en) * 2008-06-26 2011-05-04 展讯通信(上海)有限公司 Method and equipment for compressing and decompressing image

Also Published As

Publication number Publication date
AU2005338473A1 (en) 2007-05-31
JP2009516985A (en) 2009-04-23
EP1952539A1 (en) 2008-08-06
US20080260269A1 (en) 2008-10-23
EP1952539A4 (en) 2011-04-20

Similar Documents

Publication Publication Date Title
US20080260269A1 (en) Repetition and Correlation Coding
RU2503138C2 (en) Embedded graphics coding for images with sparse histograms
CN101350929B (en) Enhanced compression in representing non-frame-edge blocks of image frames
US9077960B2 (en) Non-zero coefficient block pattern coding
JPH06511361A (en) Adaptive block size image compression method and system
US8331454B2 (en) Integer transform function for video compression systems
Chawla et al. Image compression techniques: a review
CN102595109A (en) Decoding method and device for JPEG image
CN101415119B (en) Device and method for compressing image data
US8600181B2 (en) Method for compressing images and a format for compressed images
Kim et al. A sub-pixel gradient compression algorithm for text image display on a smart device
Kim et al. A lossless color image compression method based on a new reversible color transform
CN113473139A (en) Image processing method and image processing device
JP2008042683A (en) Image processing apparatus and its control method, computer program and computer readable storage medium
Zhang et al. Fast intra bit rate transcoding for HEVC screen content coding
CN101065760B (en) System and method for processing image data
CN1652600A (en) Scrambling apparatus and method using conversion of motion vector information of video data
KR20080093977A (en) Repetition and correlation coding
US7570818B2 (en) Method for deblocking and transcoding a media stream
KR20150068603A (en) Method for Multiple Description Coding using Directional Discrete Cosine Transform
CN112449187B (en) Video decoding method, video encoding device, video encoding medium, and electronic apparatus
KR100495001B1 (en) Image compression encoding method and system
Gupta et al. A new lossless KMK technique for image compression
EP2887667A1 (en) Coding of high dynamic range images
NZ536300A (en) Repetition coded compression for highly correlated image data

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 12094599

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2008542281

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2005338473

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 2005803611

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2005338473

Country of ref document: AU

Date of ref document: 20051122

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 1020087014901

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 3107/CHENP/2008

Country of ref document: IN