WO1997016918A2 - Image scanning compression method - Google Patents
Image scanning compression method Download PDFInfo
- Publication number
- WO1997016918A2 WO1997016918A2 PCT/NZ1996/000118 NZ9600118W WO9716918A2 WO 1997016918 A2 WO1997016918 A2 WO 1997016918A2 NZ 9600118 W NZ9600118 W NZ 9600118W WO 9716918 A2 WO9716918 A2 WO 9716918A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- output
- values
- group
- stream
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000007906 compression Methods 0.000 title claims description 32
- 230000006835 compression Effects 0.000 title claims description 32
- 230000008859 change Effects 0.000 claims abstract description 9
- 230000009897 systematic effect Effects 0.000 claims abstract description 7
- 230000008569 process Effects 0.000 claims description 13
- 230000000630 rising effect Effects 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 6
- 230000001186 cumulative effect Effects 0.000 claims description 2
- 238000001454 recorded image Methods 0.000 claims description 2
- 238000013144 data compression Methods 0.000 abstract description 5
- 238000010191 image analysis Methods 0.000 abstract description 3
- 239000002131 composite material Substances 0.000 abstract 1
- 230000005540 biological transmission Effects 0.000 description 6
- 230000006837 decompression Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 239000000872 buffer Substances 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 230000000717 retained effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000033458 reproduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
Definitions
- This invention relates to the field of data handling, data or information representing images, data compression, and more particularly to means for reducing the bulk of a file of information-carrying data while retaining the detailed information content of the data, using a compression technique.
- Compressing electrical representations of images in order to minimise the bulk of data required to adequately represent the image has been an active area of software and hardware development in recent times, with particular reference to digitised television and providing household cable access to movies.
- JPEG Joint motion Pictures Engineers' Group
- Video signals have a number of requirements such as that the resulting image after transmission and/or storage in a compressed form remains pleasing to the eye, and is substantially free of objectionable defects.
- These compression techniques generally treat the image in a two-dimensional form (both across and up and down an image) and for example the JPEG technique generally handles data in increments of 8 x 8 pixel cells.
- compression would be an advantage in order to minimise the delay in the process while a collected image is moved out of the camera.
- This example application is for stock and inventory control of logs being shipped from a transport base. For example, images captured in electrical form of spatial information which may be rather detailed as compared to the pitch of the sampling elements
- pixels may be intended solely for “appreciation” by a machine. Compression of the JPEG type
- a "word” is a unit sequence of bits of information such as but not limited to the well-known "byte” comprising 8 binary bits of information in sequence from most significant bit to least significant bit.
- the invention provides an image compression method for accepting a stream of words (as herein defined) in a linear sequence; the words being digitized point values representing a two dimensional image of known size and encoding the digitized point values within a data processor so that an encoded compressed output is constructed, wherein the method of encoding follows a set of predetermined rules providing for assessing the value of each word in sequence so as to establish the existence, identify the type, and establish the size of a group of adjacent words as being of, or not of, a first class, the class comprising one or more groups each having a substantially orderly sequence (as herein defined) of change in value, and if the group is from the first class, then select and encode a group type from a predetermined list of group types together with a code representing the change in value, or to establish the existence of, and size ofthe group of adjacent words as being of, or not of, a second class, comprising a further group type not having a substantially orderly sequence of change of value but each word
- the invention provides an image compression method as described above wherein the output following an initializing word value generated at the start of each stream comprises a series of word values for each of which a first part comprises a plurality of bits reserved for use in describing the type of the group, and a second part comprises a code comprised of a plurality of bits reserved for use as a descriptor of the group so described, capable when decoded of substantially characterising the word or sequence of words within the group when cumulative information obtained from previously decoded output is included.
- the invention provides a method as described above wherein the group types available for selection in the first class includes group types capable of identifying systematic rises or falls in level for one or more specific sizes.
- the invention provides a method as described above wherein the group types available for selection in the first class includes group types capable of identifying linear rises or falls in level for one or more specific sizes.
- the invention provides a method as described above for taking, at an input to a processor, a representation of an electrically recorded image as at least one stream represented by a series of digitised point values, and then encoding the values within the processor so that an encoded, compressed output is constructed wherein the method of encoding involves the steps of: a. While there remain fixed-length streams of values to be compressed, process each stream; b. Send the first value in each stream as output (in unchanged form); c. While there are still enough values on the current stream for the required minimum rise or fall, check to see if the next ones are consistently rising or falling to a minimum total difference, and check to see if the steps are not too different from one another (i.e.
- the invention provides a method as described above for representing an electrically recorded version of an image as at least one stream each represented by a series of digitised point values, and encoding the values, wherein the compressed data is capable of being subjected to an analysis procedure while remaining in its compressed form.
- the invention provides a method for decoding a compressed version of an image encoded as described above, wherein the original information is capable of being reconstructed by a process of reading a word value, determining whether it is an unencoded value or an encoded value, and if it is an encoded value, using the predetermined set of rules in reverse to substantially reconstruct the original data.
- the invention provides a method for decoding a compressed version of an image encoded as described above, wherein the original information is capable of being reconstructed by a process of reading a byte, determining whether it is an unencoded byte or an encoded byte, and if the latter, using the coding rules as previously described in reverse to substantially reconstruct the original data.
- the rules for carrying out decompression comprise the following steps, where the first value is that calculated from the previous sequence (or the actual first value if at the second value): a. (LOOP:) While there remain fixed-length lines of values to be decompressed, process each line. b. At the first value for each line, place the first value obtained from the input channel in the output channel in unchanged form. c. (LOOP:) Repeat the following (step 4) until the line is complete - as determined by the output line having acquired the prescribed number of bytes. d.
- the invention provides a package of information wherein the package represents an image which has been encoded in the manner described above.
- the invention provides software for a computer wherein the software is capable of causing the computer to carry out an image compression method as described above.
- the invention provides apparatus wherein the apparatus is capable of implementing an image compression method as described above.
- the invention provides apparatus as described above, wherein the apparatus is capable of carrying out an image compression method as described above.
- the invention provides an image compression method for taking a stream of words corresponding to a series of digitised point values representing an image; and then encoding the values within a data processor so that an encoded, compressed output is constructed wherein the number of values in the compressed output is smaller, wherein the method of encoding involves assessing the value of each word and the value of each of a group of adjacent approaching words in the stream, classifying the type and scale of the trend, and preparing an output capable of uniquely representing the value of each word, according to a predetermined set of rules.
- the invention provides an image compression method, wherein the output following an initialising word value at the start of each stream comprises a series of word values for each of which a first part comprises a plurality of bits reserved for use as a classifier of trends, and a second part comprises a plurality of bits reserved for use as a classifier-dependent descriptor of the scale ofthe trend so classified.
- the invention provides a method for encoding as previously described, wherein the classifier may signify that the following bytes are (a) substantially constant in value, and the descriptor indicates the number of bytes of that value, (bl) four bytes, substantially steadily rising in value, and the descriptor indicates the magnitude of the rise, (b2) three bytes, substantially steadily rising in value, and the descriptor indicates the magnitude of the rise, (b3) two bytes, substantially steadily rising in value, and the descriptor indicates the magnitude of the rise, (cl) four bytes, substantially steadily falling in value, and the descriptor indicates the magnitude ofthe fall, (c2) three bytes, substantially steadily falling in value, and the descriptor indicates the magnitude of the fall, (c3) two bytes, substantially steadily falling in value, and the descriptor indicates the magnitude of the fall, or (d) have no substantially consistent trend, and the descriptor indicates the approximate value ofthe byte.
- the invention provides a method as described above for representing an electrically recorded version of an image as a series of streams each represented by a series of digitised point values, and encoding the values in a manner that discards redundant information so that an encoded, compressed form has been constructed, wherein the compressed data may be subjected to an analysis procedure while remaining in its compressed form.
- the invention provides apparatus capable of taking a stream of words corresponding to a series of digitised point values representing an image; and then encoding the values within the apparatus so that an encoded, compressed output is constructed wherein the number of values in the compressed output is smaller, wherein the apparatus is capable of determining the value of each word and the value of each of a group of adjacent approaching words in the stream, classifying the values in terms of systematic trends exhibited by the group, and preparing an output capable of uniquely representing the value of each word, according to a predetermined set of rules.
- the invention provides apparatus as described above wherein the apparatus is capable of repeatedly receiving an input comprising digitised information in the form of a series of words each representing one of a linear series of point values, holding the series of words for examination by an evaluation processor, evaluating absolute values and trends within the series of words according to a set of rules as follows: a. While there remain fixed-length streams of values to be compressed, process each stream; b. Send the first value in each stream as output (in unchanged form); c. While there are still enough values on the current stream for the required minimum rise or fall, check to see if the next one are consistently rising or falling to a minimum total difference, and the steps are not too different from one another (i.e. reasonably consistent rate of rise or fall exists); d.
- the invention provides apparatus as described above implemented in hardware.
- the invention provides apparatus as described above implemented in the form of a custom logic circuit.
- the invention provides apparatus as described above implemented in the form of an at least partially programmable solid-state circuit.
- the invention provides apparatus as described above comprising a microprocessor device such as a DSP processor chip.
- the invention provides apparatus as described above comprising a general-purpose digital computer running software capable of performing these functions.
- the invention provides a package of information that represents an image which has been encoded in the manner described previously in this section. DESCRIPTION OF THE INVENTION
- Fig 1 illustrates, in block diagram form, a hardware embodiment of this invention.
- a word comprises 8 bits - alternatively called a byte - and that the process is carried out by software within a digital computer.
- the process can be implemented either in a specifically constructed and programmed microprocessor (such as a digital signal processor (DSP) chip), or in a circuit comprising digital logic elements. Indeed, it could be built into a CCD camera chip or, perhaps more usefully, into an A-D converter chip.
- DSP digital signal processor
- words of different bit sizes such as 12, 16, 32..
- the system can also be applied to floating point variables and not just to integers.
- the method can be considered as comprising steps to assess the value of each word in sequence as it comes up to the encoding processor so as to establish the existence, identify the type, and establish the size of a group of adjacent words as perhaps belonging to a first class which comprises a number of groups of defined types, such as rising steadily by 8 points between each word or falling by 12 points in a substantially orderly sequence. If the group is from the first class, then the processor selects and encodes a group type from the predetermined list of group types, (comprising the header) together with a code representing the change in value.
- group types by length, and for our 8-bit words we limit length to 2, 3, or 4 words in a group.
- a series of substantially constant values as being a second class, of some size that may be up to 31 words in length under an 8-bit word system.
- a third class comprising a yet further group type of individual words, not in any recognisable orderly sequence and not similar in value to the immediately preceding encoded value. And finally there are those words at the beginning or at the end of a stream, not preceded or followed by another value.
- Certain numbers used within the procedure can be empirically determined for a 256-level (eight-bit binary) word. They may be varied in order to optimise the amount of compression, depending on the particular application in use. They may be programmed into a machine as constants, they may be selected by the user for a particular task, or the machine may automatically set the selectable variable(s) during use according to real-time testing and verification of useful information being obtained.
- Selectable variable #1 Nonsystematic data fluctuations of less than 6 are insignificant, are "noise”, and may be ignored. We refer to these as being “substantially constant”.
- Selectable variable #2 Fluctuations by a factor of 2 or more between adjacent differences cannot be treated as being one average slope. This may be a multiplicative "constant"; a ratio, or a fixed value.
- Selectable variable #3 Fluctuations of 8 or less in the difference between the last encoded value and the value two ahead are considered to be insigificant rises or falls.
- selectable variable #1 we noted that at 4, it provides an average of 22% (17-27%) and the striping mentioned elsewhere is substantially absent. At 6, the average compression is down to 14%, and at 12, it is compressed to about 8% of the original data size. We use 6 in the numerical examples (sample outputs) below.
- the output byte is 64 OR (gradient value) (e) If the byte under consideration is the first of three with a substantially consistent fall (at least selectable variable #3), the output byte is 128 OR (gradient value) (f) If the byte under consideration is the first of four with a substantially consistent fall (at least selectable variable #3), the output byte is 160 OR (gradient value)
- Output 100 163 ( 160 OR 3) ( 160 is code for fall, 3 is (5-2), representing the average fall.)
- This header construct complies with the general rules for such headers. Among other things, this header defines at tag lOOh the image width and at tag lOlh the image length. These can be useful when decompressing an image in order to define the point at which a line end occurs, in case a data error occurred.
- ⁇ FF header we attach some user-specific material at tag 103h and at/after tag D2C2h; describing conditions within and about the image capture device, and defines the subject material itself; namely it identifies in context the items bearing the labels which are portrayed in the attached image.
- Fig 1 illustrates an outline to show the principles of a hardware processor 100 capable of performing compression according to this invention.
- 101 is a data input and 102 is a strobe input (assuming an asynchronous processor).
- the data arrives in a stream 8 bits wide (alternatively formatted serial data in a single line) and may be stored temporarily in a FIFO (first in, first out) buffer 109 before analysis, because the shifting of data through the shift register may be of variable speed.
- a series of shift registers 104, 104' temporarily store data within a series of cells. A total of five cells are shown here although it may be preferable to use more than 8-bit words in te encoded message and represent more classes of systematic trends in a wider header 'nibble' or part-word.
- each register can be read by a processor section 105. This may act under control of stored microinstructions 106, or it may be fabricated (wired, lithographed, or programmed by software or by cutting links in a PLD device) so that it follows certain rules.
- the processor emits clock pulses through the line 108, to cause the data to advance through the series of registers, then the clock pulses halt until the set of data is evaluated.
- the processor 105 will commence processing the data by advancing 5 words of data from the input so that the first word reaches the lowest register 104". Then the processor records the value in register 104" and passes it to the output (see instruction 2 of Table 1). The processor then examines the values in the other registers to determine what action to take, in accordance with the rules in Table 1.
- the "processor” may be logic circuits laid down within an integrated circuit or the like, which is probably the fastest option, or may be created within a "post-construction-modifiable” integrated circuit, such as a PAL or a PLD chip.
- a digital signal processor (DSP) chip may provide a ready- made environment in which to use the procedure.
- the entire procedure may also be implemented within a digital computer. (This may well be the slowest option, although increased flexibility is an advantage).
- ring buffers may be used instead of shift registers, and an entire line may be read into such a buffer before processing.
- Speed may be quite useful, as when large arrays (of the order of 1 to 4 million words) are to be compressed.
- An existing application for which the invention can be used is an item tracking system.
- snapshots of aggregated items lying in a certain place and at a certain time are analysed to detect and read encoded labels.
- Automatic machine decoding of information is carried out on optically readable indicia uniquely printed upon paper labels.
- the markings are basically similar to bar codes but are produced in a more sophisticated form as a two-dimensional matrix, including redundancy, locators, and a grey level as well as black or white.
- a medium-resolution CCD camera is used to capture a single image of a large number such as 50-100 of items (here, tree trunks) each bearing a label.
- the data representing one image is about 1.5 Megabytes which is not a trivial size for transmission to a remote receiving station.
- Any useful compression system should retain the fine detail, which algorithms (such as JPEG) designed for human viewing generally are not optimised for.
- One of our first steps is to find the position of a label by searching for the characteristic "signatures" of locator markings placed around the indicia on a label. Our searching procedure has already looked for a fall to a low (black) level, and then a rise to a high (white) level, and this information is now provided within the compressed data.
- More pictures may be saved on a given storage device or the storage device can be smaller, or because processing and storage time is lower, power drain is reduced in proportion, or downloading can be faster, or wireless transmission requirements (power * bandwidth) can be relaxed.
- a CCD camera of higher resolution e.g. one having about 3 times as many pixels in each axis (and retaining the same volume of data):
- More labels may be captured in a single image, or smaller (hence cheaper) labels may be used, or data on a label may be replicated, or more information may be placed in each label .
- VARIATIONS In other than an 8-bit word system (for example) it is easy to include other prescribed cases in the list of rules. For example if the compressed protocol assumed 12-bit words as it is easy to do if the compressed form exists during transmission but never actually requires length-matched hardware, we can devise codes to represent steadily changing curves, step functions, or the like. We could attempt to recognise the distinctive label locators during compression and give the values representing a presumed locator a particular header code which can be found easily.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU72320/96A AU7232096A (en) | 1995-10-20 | 1996-10-21 | Image scanning compression method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NZ28030795 | 1995-10-20 | ||
NZ280307 | 1995-10-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO1997016918A2 true WO1997016918A2 (en) | 1997-05-09 |
WO1997016918A3 WO1997016918A3 (en) | 1997-07-31 |
Family
ID=19925516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/NZ1996/000118 WO1997016918A2 (en) | 1995-10-20 | 1996-10-21 | Image scanning compression method |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU7232096A (en) |
WO (1) | WO1997016918A2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4103287A (en) * | 1973-12-17 | 1978-07-25 | Bell Telephone Laboratories, Incorporated | Variable length codes for high quality image encoding |
US4225885A (en) * | 1977-02-12 | 1980-09-30 | U.S. Philips Corporation | Method and apparatus for adaptive transform coding of picture signals |
US4325085A (en) * | 1980-06-09 | 1982-04-13 | Digital Communications Corporation | Method and apparatus for adaptive facsimile compression using a two dimensional maximum likelihood predictor |
US4590606A (en) * | 1982-12-13 | 1986-05-20 | International Business Machines Corporation | Multi-function image processing system |
US4626829A (en) * | 1985-08-19 | 1986-12-02 | Intelligent Storage Inc. | Data compression using run length encoding and statistical encoding |
-
1996
- 1996-10-21 AU AU72320/96A patent/AU7232096A/en not_active Abandoned
- 1996-10-21 WO PCT/NZ1996/000118 patent/WO1997016918A2/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4103287A (en) * | 1973-12-17 | 1978-07-25 | Bell Telephone Laboratories, Incorporated | Variable length codes for high quality image encoding |
US4225885A (en) * | 1977-02-12 | 1980-09-30 | U.S. Philips Corporation | Method and apparatus for adaptive transform coding of picture signals |
US4325085A (en) * | 1980-06-09 | 1982-04-13 | Digital Communications Corporation | Method and apparatus for adaptive facsimile compression using a two dimensional maximum likelihood predictor |
US4590606A (en) * | 1982-12-13 | 1986-05-20 | International Business Machines Corporation | Multi-function image processing system |
US4626829A (en) * | 1985-08-19 | 1986-12-02 | Intelligent Storage Inc. | Data compression using run length encoding and statistical encoding |
Also Published As
Publication number | Publication date |
---|---|
WO1997016918A3 (en) | 1997-07-31 |
AU7232096A (en) | 1997-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6411229B2 (en) | Variable length decoder | |
US5463701A (en) | System and method for pattern-matching with error control for image and video compression | |
KR950002671B1 (en) | Image data processing apparatus | |
US5583657A (en) | Method and apparatus for scanning image data | |
US5177622A (en) | Method and apparatus for detecting run length of two successive pixels and subjecting run length to universal coding | |
CN103918272A (en) | Data encoding and decoding | |
JP2003505991A (en) | Video compression method using wavelet | |
US5883981A (en) | Lattice vector transform coding method for image and video compression | |
US6363176B1 (en) | Picture data decompression apparatus | |
KR900007191A (en) | High efficiency video signal coding device | |
Sayood et al. | A differential lossless image compression scheme | |
WO1997016918A2 (en) | Image scanning compression method | |
US5055919A (en) | Apparatus for image data transposition and compression/decompression | |
KR100579417B1 (en) | High speed image compression apparatus | |
US6339659B1 (en) | Fractal coding/decoding of picture data using memory capacity information | |
Sayood | Data Compression. | |
US20120106861A1 (en) | Image compression method | |
US5940542A (en) | Encoding and decoding apparatus and method for analog and digital signals | |
US5903675A (en) | System and method for compressing data using a dynamically changing compression window | |
JPS6118387B2 (en) | ||
KR930003201B1 (en) | Bit image data compressing method and apparatus | |
JPH0936749A (en) | Coding decoding device and coding method used for it | |
JPH06245200A (en) | Method and device for scanning two-dimensional data by energy distribution | |
JPH05316355A (en) | Picture data coding and decoding device | |
JP3123797B2 (en) | Coding device and decoding device for predictive coding method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE HU IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG US UZ VN AM AZ BY KG KZ MD RU TJ TM |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG |
|
AK | Designated states |
Kind code of ref document: A3 Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE HU IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TR TT UA UG US UZ VN AM AZ BY KG KZ MD RU TJ TM |
|
AL | Designated countries for regional patents |
Kind code of ref document: A3 Designated state(s): KE LS MW SD SZ UG AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
122 | Ep: pct application non-entry in european phase |