Image compression method and image coder
Abstract
Bildkodierungsverfahren zur Umwandlung eines Bildes in eine Datenbitfolge unter Auflösung in eine Mehrzahl von einzeln numerierten oder mit Bildpunktkoordinaten versehenen Bildpunkten, denen jeweils ein Helligkeits- und/oder Farbwert aus einer Mehrzahl von vorbestimmten Helligkeits- und/oder Farbwerten entspricht, wobei jedem der im Bild auftretenden Helligkeits- und/oder Farbwerte die Nummern bzw. Bildpunktkoordinaten der diesen Helligkeits- und/oder Farbwert aufweisenden Bildpunkte zugeordnet werden.

Term
Term ended
Projected expiry passed 20 August 2021, 5.1 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
15 claims: 5 independent, 10 dependent
- 1Image coding method for converting an image into a data bit sequence with resolution into a plurality of individually numbered or provided with pixel coordinates, each of which corresponds to a brightness and / or color value from a plurality of predetermined brightness and / or color values, characterized in that each of the brightness and / or color values occurring in the image are assigned the numbers or image point coordinates of the image points having this brightness and / or color value.
- 5Image coding method according to one of the preceding claims, characterized in that the pixels assigned to the occurring brightness and / or color values are specified in a predetermined order of the brightness and / or color values, the distance from the previous brightness and / or color value in front of the pixels assigned to a specific brightness and / or color value characteristic value is prefixed.
- 6Image coding method according to one of the preceding claims, characterized in that for data reduction, brightness and / or color values to which a number of pixels falling below a certain threshold value are assigned are not coded.
- 9Image coding method according to one of the preceding claims, characterized in that the image is subdivided into partial images in a predetermined order, in which the pixels are each numbered separately or provided with pixel coordinates.
- 10Image encoder for performing the image coding method according to one of the preceding claims, marked by a pixel assignment device for assigning the pixels having a specific brightness and / or color value to the corresponding brightness and / or color value.
Independent claims5
28 paragraphs, as filed
The invention relates to an image coding method according to the preamble of claim 1 and an image encoder for performing this method.
Digital image processing, today usually abbreviated as image processing, is a rapidly developing technical field with diverse and ever expanding application possibilities. The range of applications extends from non-destructive material and design testing to the automatic control of robots and entire industrial systems, astronomy, elementary particle physics, cartography and meteorology to a wide variety of biological and medical applications.
The digitization of an image or image coding can be done in different ways - for example, photos or drawings on a carrier are scanned line by line, while images (as an analog video signal) can be converted electronically into data bit sequences by analog-to-digital conversion. Basically, digitization consists of two steps, namely the decomposition of the original image into small areas (called pixels or pixels) (rasterization) and the assignment of a brightness and / or color value to each pixel (quantization).
On the part of the user, image processing and coding are subject to ever higher demands with regard to spatial resolution, that is to say the number of pixels per unit area, and the number of quantization levels of the brightness or color values on the one hand and with regard to the amount of image material to be processed and Processing speed on the other hand. It is therefore a matter of processing very large amounts of image data as quickly as possible, so that intensive developments regarding the possibilities of data compression or reduction have been going on for a long time. A large number of methods are already in practical use in the various fields of application, with bitmap-oriented methods being distinguished from the coding of the image as a wave function or the vector coding.
The aim of all of these methods is to describe the image to be encoded using as little data to be stored or transmitted as possible. It is also known not to save or transfer image details that are less important in order to reduce the size of the image data, to combine image data of pixels located close to one another, to describe image-describing wave functions in order to shorten wave components with little information content, etc. The aim of these image data compression methods is to save storage space or to accelerate the image data transmission.
The starting point of the essential known methods for image description is a so-called bitmap, which is obtained for each pixel by splitting the image into an XY matrix from pixels and assigning a memory area in which a brightness value and, if appropriate, a color value are stored as digital values. Here, a predetermined sequence of discrete brightness or Color values assigned to the pixel are those that most closely match the actual color value.
The following applies to this procedure: An image is a fixed number of pixels, each of which is assigned a brightness and / or color value. The number of pixels used, on the one hand, and brightness and color levels, on the other, differ greatly depending on the specific application. Regardless of the specific definition of the corresponding values, these methods have in terms of compressibility or Reducibility of the image data scope basic limitations.
The invention is therefore based on the object of providing an image coding method with significantly improved image data compression or reduction options. Furthermore, a corresponding, powerful and fast picture encoder should be specified.
This object is achieved in terms of its method aspect by an image coding method with the features of claim 1 and in terms of its device aspect by a device with the features of claim 10.
The method according to the invention, which can be briefly referred to as DLC (Dynamic Luminance and Crominance Encoding / Decoding) method, includes the following basic processing rule: An image is a fixed number of color and brightness values, which are dependent on the image content, to which the Pixels obtained during screening are assigned.
In order to encode an image using this method, it is assumed that image data that has already been digitized, based on established techniques, in particular a bitmap file. In the course of carrying out the method, it is first analyzed which brightness and color values occur in the image at all. Color and brightness values that do not occur are eliminated from the processing-relevant color and brightness scale, since they are not required for image description. This alone can already considerably reduce the scope of the data bit sequence or "DLC file" (depending on the image content) forming the result of the process, without loss of information. The color or brightness values required for the image description are then assigned the pixel coordinates or numbers which define those pixels in which the respective color or brightness value occurs.
In the most widespread implementation of conventional image processing methods, pixel coordinates are assigned to the pixels as value pairs from Cartesian coordinates (X and Y values). Accordingly, the pixels in the data bit sequence generated according to the method are specified as pairs of values, while the brightness and / or color values to which the pixels are assigned are preferably encoded as individual numerical values. In another embodiment - which is certainly less significant in practice - polar coordinates (r and ϕ values) are assigned to the pixels - and here, too, the brightness and color values are preferably coded as individual numerical values.
The pixels assigned to the occurring brightness and color values are preferably encoded in a predetermined order of the brightness and color values in the data bit sequence, with in an expedient embodiment all pixels assigned to a specific brightness and color value each characterizing the distance from the previous brightness and color value Value is prepended. This procedure gives particular advantages in terms of brightness or Color scale marked "incomplete" pictures. Instead of the distance values mentioned, the brightness or color absolute values can also be encoded directly in the data bit sequence, each of which is followed by the associated pixel numbers or coordinates (value pairs).
As a simplified example of this, the image data coding for an image with 640 x 480 pixels and 128 color values is briefly described. It goes without saying that a larger number of pixels and a finer graded color space and the (additional or sole) coding of brightness values can be carried out analogously.
The following assignment of selected color values and pixels applies to the image: <tables id="tabl0001" num="0001"><table frame="all"><tgroup cols="2" colsep="1" rowsep="0"><colspec colnum="1" colname="col1" colwidth="78.75mm" /><colspec colnum="2" colname="col2" colwidth="78.75mm" /><thead valign="top"><row rowsep="1"><entry namest="col1" nameend="col1" align="left">Color value</entry><entry namest="col2" nameend="col2" align="left">Pixels (X / Y)</entry></row></thead><tbody valign="top"><row><entry namest="col1" nameend="col1" align="left">1</entry><entry namest="col2" nameend="col2" align="left">88/78 78/88 78/89</entry></row><row><entry namest="col1" nameend="col1" align="left">2</entry><entry namest="col2" nameend="col2" /></row><row><entry namest="col1" nameend="col1" align="left">3</entry><entry namest="col2" nameend="col2" /></row><row><entry namest="col1" nameend="col1" align="left">4</entry><entry namest="col2" nameend="col2" /></row><row><entry namest="col1" nameend="col1" align="left">5</entry><entry namest="col2" nameend="col2" align="left">55/55</entry></row><row><entry namest="col1" nameend="col1" align="left">...</entry><entry namest="col2" nameend="col2" /></row><row><entry namest="col1" nameend="col1" align="left">22</entry><entry namest="col2" nameend="col2" align="left">27/56 27/57 66/89</entry></row><row><entry namest="col1" nameend="col1" align="left">23</entry><entry namest="col2" nameend="col2" align="left">17/88 18/78</entry></row><row rowsep="1"><entry namest="col1" nameend="col1" align="left">128</entry><entry namest="col2" nameend="col2" align="left">67/78 67/90 123/89 126/67 200/56</entry></row></tbody></tgroup></table></tables>
As a first step in data compression, there is no storage or transmission of color values to which no pixels are assigned. The DLC file looks like this:<tables id="tabl0002" num="0002"><table frame="all"><tgroup cols="2" colsep="1" rowsep="0"><colspec colnum="1" colname="col1" colwidth="78.75mm" /><colspec colnum="2" colname="col2" colwidth="78.75mm" /><tbody valign="top"><row><entry namest="col1" nameend="col1" align="left">1</entry><entry namest="col2" nameend="col2" align="left">88/78 78/88 78/89</entry></row><row><entry namest="col1" nameend="col1" align="left">5</entry><entry namest="col2" nameend="col2" align="left">55/55</entry></row><row><entry namest="col1" nameend="col1" align="left">...</entry><entry namest="col2" nameend="col2" /></row><row><entry namest="col1" nameend="col1" align="left">22</entry><entry namest="col2" nameend="col2" align="left">27/56 27/57 66/89</entry></row><row><entry namest="col1" nameend="col1" align="left">23</entry><entry namest="col2" nameend="col2" align="left">17/88 18/78</entry></row><row rowsep="1"><entry namest="col1" nameend="col1" align="left">128</entry><entry namest="col2" nameend="col2" align="left">67/78 67/90 123/89 126/67 200/56</entry></row></tbody></tgroup></table></tables>
Next, according to an algorithm implemented in the image encoder (encoder) as well as in the decoder, a sequence of numbers is generated, in which numbers separated from one another by a slash denote the X and Y coordinates of a pixel, while individual numbers indicate a distance from previous color values ("jump in the color value "). The sequence of numbers is: 88/78 78/88 78/89 4 55/55 17 27/56 27/57 66/89 1 17/88 17/78 105 67/78 67/90 123/89 126/67 200 / 56.
An additional possibility for data compression arises if a certain number of partial images is defined within the image according to a predetermined algorithm, for example two partial images (left / right) or four partial images (top left / top right / bottom left / bottom right), and the agreement is implemented in the image encoder and decoder software that the description of a next field begins within the number sequence (data bit sequence), if lower values occur again after increasing X or Y coordinates.
This is also illustrated using an example:<img file="EP1185084A2_D0001.tif" />
An essential possibility for data reduction results from the fact that brightness and / or color values, to which a number of pixels falling below a certain threshold value are assigned, are not coded in the DLC file. In the simplest case, the corresponding pixels no longer appear in the reduced data bit sequence. This procedure is refined in that those pixels whose brightness and / or color values are not coded are each assigned to the next adjacent brightness and / or color value. The first option, which is simpler in the coding, can also be refined, namely in that on the decoder side those pixels for which no brightness or. Color value was supplied, a value calculated from information about the surrounding pixels is assigned.
To limit the consequences of loss of information, it is possible to define protected image areas. If a pixel originates from this specially defined area, implemented data reduction methods are not used for this at all or after a weakened mode. The relevant information must only be present in the picture encoder and not communicated to the decoder, so that the procedure does not require any additional transmission capacity.
The method steps and aspects mentioned above each have a device equivalent in the implementation of a picture encoder in hardware or software implementation. The image encoder according to the invention comprises, in particular, a pixel assignment device for realizing the aforementioned assignment of numbers or coordinates of pixels to the individually occurring brightness or color values. Furthermore, it comprises in particular a brightness / color value detection device for examining the image - or a primary bitmap - for the occurrence of the individual brightness and / or color values from a predetermined plurality of such values.
Finally, the image encoder has in particular a digital input for a primary data bit sequence (bitmap) and a digital output for the secondary - compressed and possibly reduced - data bit sequence (DLC file).
In an embodiment which enables the above-mentioned data reduction by non-coding of rarely occurring brightness or color values, the image encoder has a brightness / color threshold value discriminator and a counter device connected to this and to the brightness / color detection device for determining the number of one Brightness or Color value assigned pixels and to discriminate this number of pixels on a predetermined (programmed) threshold.
In a further special embodiment, a neighboring value assignment device is connected to these components, which assigns those pixels the next adjacent brightness or color value of the primary value scale whose original brightness or color value is not coded due to the small number of assigned pixels.
In a further special embodiment, the image encoder comprises an image division device, which becomes effective in the step of rasterizing the image mentioned at the beginning and either defines an image area with high priority (or also a plurality of such image areas) and / or the image into partial images, each with separate pixel numbering or -Coordinate assignment divided.
The implementation of the invention is not limited to these aspects and the above-mentioned simplified examples, but can be carried out within the scope of the appended claims in a large number of modifications which are within the scope of professional action.
The use of numerous already known methods for data reduction and data compression is sensibly possible with the DLC method in terms of reducing the amount of data as much as possible. So z. B. the known method of run length coding a way to further reduce the number of bits to be transmitted or stored. The method of forming image clusters is well suited for combination with the DLC method, in which the transmission of neighboring pixels with the same color or brightness information takes place by forming a cluster as a summary of these pixels to be described in abbreviated form.
1 sheet
Sheet 1
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| EP0407614A1 | Cites | European Patent Office (EPO) | Search report |
| EP0711069A1 | Cites | European Patent Office (EPO) | Search report |
| US5003494A | Cites | United States of America | Search report |
| US5247589A | Cites | United States of America | Search report |
| US5408542A | Cites | United States of America | Search report |
| US5659631A | Cites | United States of America | Search report |
| US5787192A | Cites | United States of America | Search report |
5 members in 4 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 10041037 | Germany | A | |
| 10041037 | Germany | A | |
| 10041037 | Germany | – | |
| 10041037 | – | – | – |
| DE2000141037 | – | – | – |
Members5
| Document | Office | Kind | |
|---|---|---|---|
| EP1185084A2This record | European Patent Office (EPO) | A2 | |
| DE10041037A1 | Germany | A1 | |
| US2002064306A1 | United States of America | A1 | |
| JP2002165099A | Japan | A | |
| EP1185084A3 | European Patent Office (EPO) | A3 |
11 legal events, as 2 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Application deemed to be withdrawnWithdrawn18D | 18D | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWNSTAA | STAA | EP | |
| Designated country de not longer valid8566 | 8566 | DE | |
| Designation fees paidAKX | AKX | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | EP | |
| Party data changed (applicant data changed or rights of an application transferred)RAP1 | RAP1 | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAL;LT;LV;MK;RO;SIAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1185084
- Publication, DOCDB
- 1185084
- Publication, EPODOC
- EP1185084
- Application
- 1120036
- Application, DOCDB
- 01120036
- Application, EPODOC
- EP20010120036
Titles3
- German
- Bildkodierungsverfahren und Bildkodierer
- English
- Image compression method and image coder
- French
- Procédé de codage d'image et codeur d'image
Classification
- CPC, 1
- H04N1/64
- IPC, 4
- H04N11 04
- H04N1 41
- H04N1 64
- H04N7 26
Designated states2
- Contracting states, 1
- Türkiye
- Extension states, 1
- Slovenia