DE10229975B4 - Method for compressing and decompressing image data - Google Patents
Method for compressing and decompressing image data Download PDFInfo
- Publication number
- DE10229975B4 DE10229975B4 DE10229975.7A DE10229975A DE10229975B4 DE 10229975 B4 DE10229975 B4 DE 10229975B4 DE 10229975 A DE10229975 A DE 10229975A DE 10229975 B4 DE10229975 B4 DE 10229975B4
- Authority
- DE
- Germany
- Prior art keywords
- pixel
- value
- pixels
- key
- groups
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/44—Secrecy systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/005—Statistical coding, e.g. Huffman, run length coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/20—Contour coding, e.g. using detection of edges
-
- 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
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
-
- 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
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- 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
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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 an image region, e.g. an object
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Storage Device Security (AREA)
Abstract
Verfahren zur Komprimierung von Bilddaten, die aus einem Array einzelner Bildpunkte (Pixel) bestehen, wobei jedes Pixel (0-419) einen Pixelwert aufweist, der Farb- oder Helligkeitsinformation des Pixels beschreibt, mit den Schritten: a) Ermitteln eines Prioritätswertes für jedes Pixel des Arrays durch Festlegen des verwendeten Pixels als Bezugspixel (P0) und Berechnen eines Pixeldifferenzwertes anhand des jeweiligen Pixelwerts des Bezugspixels (P0) in Bezug auf die Pixelwerte einer zuvor festgelegten Gruppe von benachbarten Pixeln (P1–P4); b) Zusammenfassen der für die Berechnung des Prioritätswertes hinzugezogenen Pixel (P0–P4) zu einer Pixelgruppe, c) Sortieren der Pixelgruppen des Bildarrays anhand des Prioritätswertes des zugeordneten Bezugspixels (P0); und d) Abspeichern und/oder Übertragen der Pixelgruppen entsprechend ihrer Priorität, wobei je nach dem angestrebten Kompressionsfaktor nur ein Teil der Pixelgruppen abgespeichert und/oder übertragen wird, nach dem Hauptpatent DE 101 52 612 B4, dadurch gekennzeichnet, dass mindestens ein Schlüssel angewendet wird, mit welchem wahlweise der Positionswert und/oder der Pixelwert/die Pixelwerte einer Pixelgruppe verschlüsselt werden.A method of compressing image data consisting of an array of individual pixels, each pixel (0-419) having a pixel value describing color or brightness information of the pixel, comprising the steps of: a) determining a priority value for each pixel setting the pixel used as a reference pixel (P0) and calculating a pixel difference value from the respective pixel value of the reference pixel (P0) with respect to the pixel values of a predetermined group of adjacent pixels (P1-P4); b) combining the pixels (P0-P4) used for the calculation of the priority value into a pixel group, c) sorting the pixel groups of the image array based on the priority value of the assigned reference pixel (P0); and d) storing and / or transmitting the pixel groups according to their priority, wherein depending on the desired compression factor only a part of the pixel groups is stored and / or transmitted, according to the main patent DE 101 52 612 B4, characterized in that at least one key is applied with which optionally the position value and / or the pixel value (s) of a pixel group are encrypted.
Description
Die Erfindung betrifft ein Verfahren zur Komprimierung und von Bilddaten, die aus einem Array einzelner Bildpunkte (Pixel) bestehen, wobei jedes Pixel einen Pixelwert aufweist, der Farb- oder Helligkeitsinformation des Pixels beschreibt, mit den Schritten:
- a) Ermitteln eines Prioritätswertes für jedes Pixel des Arrays durch Festlegen des verwendeten Pixels als Bezugspixel (P0) und Berechnen eines Pixeldifferenzwertes anhand des jeweiligen Pixelwerts des Bezugspixels (P0) in Bezug auf die Pixelwerte einer zuvor festgelegten Gruppe von benachbarten Pixeln (P1–P4);
- b) Zusammenfassen der für die Berechnung des Prioritätswertes hinzugezogenen Pixel (P0–P4) zu einer Pixelgruppe,
- c) Sortieren der Pixelgruppen des Bildarrays anhand des Prioritätswertes des zugeordneten Bezugspixels (P0); und
- d) Abspeichern und/oder Übertragen der Pixelgruppen entsprechend ihrer Priorität, wobei je nach dem angestrebten Kompressionsfaktor nur ein Teil der Pixelgruppen abgespeichert und/oder übertragen wird,
- a) Determining a priority value for each pixel of the array by specifying the pixel used as a reference pixel (P0) and calculating a pixel difference value from the respective pixel value of the reference pixel (P0) with respect to the pixel values of a predetermined group of neighboring pixels (P1-P4) ;
- b) combining the pixels (P0-P4) used for the calculation of the priority value into a pixel group,
- c) sorting the pixel groups of the image array based on the priority value of the associated reference pixel (P0); and
- d) storing and / or transmitting the pixel groups according to their priority, wherein, depending on the desired compression factor, only a part of the pixel groups is stored and / or transmitted,
Gleichermaßen betrifft die Erfindung ein Verfahren zur Dekomprimierung von Bilddaten, die mit dem entsprechenden Kompressionsverfahren komprimiert wurden, mit den Schritten:
- a) Generieren eines leeren Bildarrays aus den eingelesenen Kenngrößen des komprimierten Bildes,
- b) Einlesen der Eck-Pixelgruppen und Einfügen an den vier Bildecken des Bildarrays,
- c) Bilden von Dreiecken durch Verbinden von jeweils drei unmittelbar benachbarten Pixelgruppen durch mindestens eine Linie,
- d) Ausfüllen der die Fläche der Dreiecke bildenden Pixel durch einen aus den das Dreieck bildenden Pixelgruppen berechneten Farb- und/oder Helligkeitsverlauf,
- e) Einlesen und Einfügen der nächsten Pixelgruppe in das Bildarray;
- f) Wiederholen der Schritte c) bis f).
- a) generating an empty image array from the imported characteristics of the compressed image,
- b) reading in the corner pixel groups and inserting them on the four corners of the image array,
- c) forming triangles by connecting each of three immediately adjacent pixel groups by at least one line,
- d) filling in the pixels forming the surface of the triangles by a color and / or brightness curve calculated from the pixel groups forming the triangle
- e) reading and inserting the next pixel group into the image array;
- f) repeating steps c) to f).
Die Erstellung von Informationsinhalten z. B. Bilder, Videos, Audiodaten und Dokumenten ist sehr aufwendig. Bei der Übertragung und Speicherung solcher Informationsinhalte ist es in vielen Anwendungsfällen sinnvoll und notwendig, den Informationsinhalt zu verschlüsseln, um diesen vor unbefugtem Zugriff zu schützen. Hierzu gibt es eine Reihe von Verschlüsselungsverfahren und Applikationen, die diese Aufgabe erfüllen.The creation of information content z. As pictures, videos, audio data and documents is very expensive. In the transmission and storage of such information content, it is useful and necessary in many applications to encrypt the information content in order to protect it against unauthorized access. There are a number of encryption methods and applications that fulfill this task.
Dabei kann eine Verschlüsselung des Informationsinhalts auf verschiedenen Ebenen erfolgen.
- – Direkt in einer Anwendung, z. B. durch Kennwortschutz bei Personal Computern oder für einen Programmzugriff
- – Unabhängig von einer Anwendung, z. B. mittels des bekannten PGP Verschlüsselungsverfahrens bei E-Mail Anwendungen
- – Bei der Übertragung der Informationen, z. B. Informationsübertragung über das Internet mittels IPSec (Internet Protocol Security)
- - Directly in an application, eg. By password protection on personal computers or for program access
- - Regardless of an application, eg. By using the well-known PGP encryption method in e-mail applications
- - When transmitting the information, eg. B. Information transmission over the Internet by means of IPSec (Internet Protocol Security)
Den bisher bekannten Verschlüsselungsverfahren fehlt es an der Möglichkeit, den Informationsinhalt flexibel und skalierbar zu verschlüsseln. Das heißt, es bestehen keine flexiblen Einstellmöglichkeiten, um zum Beispiel in Abhängigkeit vom Informationsinhalt und der spezifischen Anwendung eine angepasste Verschlüsselung durchführen zu können. So etwas kann jedoch sinnvoll sein wenn man z. B. Video auf Abruf (video on demand) anbieten will, wobei für unterschiedliche Videoqualitäten, z. B. in Abhängigkeit von der Bildauflösung, unterschiedliche Gebühren berechnet werden sollen.The previously known encryption method lacks the possibility of encrypting the information content in a flexible and scalable manner. That is, there are no flexible settings, for example, depending on the information content and the specific application to perform an adapted encryption can. However, this can be useful if you z. B. video on demand (video on demand) wants to offer, for different video qualities, eg. B. depending on the image resolution, different fees should be calculated.
Es sind verschiedene Verfahren zur Komprimierung und Dekomprimierung von Bilddaten auch mit zusätzlicher Verschlüsselung bekannt. Der Aufsatz von Simon, Serge: Generalized Run-Length Coding for SNR-scalable Image Compression; In: Signal Processing VII, Theories and Applications, Edinburgh, UK, 1994, S. 560–563, beschreibt Verfahren zur Codierung von digitalen Bildern. Die Verfahren basieren auf der sogenannten Lauflängencodierung (Run length Encoding). Lauflängencodierung ist ein Verfahren zur Datenkompression, das bei der Quellcodierung eingesetzt wird. Es beruht darauf, dass in einer wie auch immer gearteten Datei oft bestimmte Zeichen mehrmals hintereinander erscheinen. Diese Zeichenfolge wird dann durch das Zeichen selbst und eine Zahl für seine Häufigkeit ersetzt. Die Speicherung von N zusammenhängenden Pixeln, die alle den identischen Pixelwert Px aufweisen, erfolgt als Wertepaar (N, Px), wodurch für N > 2 eine informationsverlustfreie und eindeutig umkehrbare Datenreduktion bewirkt wird. Eine Verschlüsselung der kodierten Daten oder Teilen davon mit einem zusätzlichen Schlüssel erfolgt nicht.Various methods for compressing and decompressing image data are also known with additional encryption. The Essay by Simon, Serge: Generalized Run-Length Coding for SNR-scalable Image Compression; Signal Processing VII, Theories and Applications, Edinburgh, UK, 1994, pages 560-563, describes methods for encoding digital images. The methods are based on the so-called run length encoding. Run-length coding is a method of data compression used in source coding. It is based on the fact that in some file often certain characters appear several times in a row. This string is then replaced by the character itself and a number for its frequency. The storage of N contiguous pixels, which all have the identical pixel value Px, takes place as a value pair (N, Px), whereby for N> 2 a Information loss-free and uniquely reversible data reduction is effected. An encryption of the encoded data or parts thereof with an additional key does not occur.
Die Veröffentlichung
Die Aufgabe der Erfindung besteht darin, ein Verfahren nach dem Hauptpatent
Diese Aufgabe wird erfindungsgemäß durch die kennzeichnenden Merkmale der Patentansprüche 1 und 2 gelöst.This object is achieved by the characterizing features of claims 1 and 2.
Gemäß dem Hauptpatent werden z. B. digitale Bild- oder Videodaten bearbeitet, die aus einem Array einzelner Bildpunkte (Pixel) bestehen, wobei jedes Pixel einen sich zeitlich verändernden Pixelwert aufweist, der Farb- oder Helligkeitsinformation des Pixels beschreibt. Erfindungsgemäß wird jedem Pixel bzw. jeder Pixelgruppe eine Priorität zugeordnet und die Pixel entsprechend ihrer Priorisierung in einem Prioritätenarray abgelegt. Dieses Array enthält zu jedem Zeitpunkt, die nach der Priorisierung sortierten Pixelwerte. Entsprechend der Priorisierung werden diese Pixel, und die für die Berechnung der Priorisierung benutzten Pixelwerte, übertragen bzw. abgespeichert. Ein Pixel bekommt eine hohe Priorität, wenn die Unterschiede zu seinen benachbarten Pixel sehr groß sind. Zur Rekonstruktion werden die jeweils aktuellen Pixelwerte auf dem Display dargestellt. Die noch nicht übertragenden Pixel werden aus den schon übertragenden Pixeln berechnet.According to the main patent z. Digital image or video data consisting of an array of individual pixels (pixels), each pixel having a time-varying pixel value describing color or brightness information of the pixel. According to the invention, a priority is assigned to each pixel or each pixel group and the pixels are stored in a priority array in accordance with their prioritization. At any given time, this array contains the pixel values sorted after prioritization. According to the prioritization, these pixels, and the pixel values used for the calculation of the prioritization, are transferred or stored. A pixel gets a high priority if the differences to its neighboring pixels are very large. For reconstruction, the current pixel values are shown on the display. The not yet transmitted pixels are calculated from the already transmitted pixels.
Erfindungsgemäß erfolgt die Übertragung bzw. das Speichern der priorisierten Pixelgruppen in Form von Datenpaketen, wobei die Datenpakete nicht nur Bilddaten in Form von Bildpunkten (Pixel) enthalten können, sondern jegliche Art von digitalen Daten die in einem Array speicherbar sind. Dabei besteht ein Datenpaket aus einem Datenwert, der die Position der Pixelgruppe im Array beschreibt und aus den Werten der einzelnen Pixel der Pixelgruppen. Durch Verschlüsselung des Positionswertes der Pixelgruppen und/oder der Pixelwerte der Pixelgruppen ist es möglich, den Dateninhalt gegen unbefugten Zugriff zu schützen. In Abhängigkeit von den verwendeten Schlüsseln und davon, welche Teile des Informationsinhalts verschlüsselt werden, z. B. Positionswerte und/oder Pixelgruppenwerte, können die unterschiedlichsten Bedürfnisse bei der Verschlüsselung berücksichtigt werden. Die Datenpakete werden ihrer Wichtigkeit nach in abgehender Reihenfolge übertragen und/oder gespeichert. Dadurch ist, zumindest bei statischen, sich zeitliche nicht verändernden n-dimensionalen Arrays erfindungsgemäß auch eine Ver- und Entschlüsselung der Pixelgruppen anhand ihrer Wichtigkeit möglich.According to the invention, the transmission or storage of the prioritized pixel groups takes place in the form of data packets, wherein the data packets can contain not only image data in the form of pixels, but any type of digital data that can be stored in an array. In this case, a data packet consists of a data value that describes the position of the pixel group in the array and the values of the individual pixels of the pixel groups. By encrypting the position value of the pixel groups and / or the pixel values of the pixel groups, it is possible to protect the data content against unauthorized access. Depending on the keys used and which parts of the information content are encrypted, e.g. As position values and / or pixel group values, the most diverse needs in the encryption can be considered. The data packets are transmitted in their order of importance in outgoing order and / or stored. As a result, according to the invention, at least in the case of static non-changing n-dimensional arrays of temporal duration, encryption and decryption of the pixel groups based on their importance are also possible.
Die Vorteile der Erfindung gegenüber dem aktuellen Stand der Technik bestehen in der skalierbaren Handhabung des Verschlüsselungsverfahrens. Im Gegensatz zu herkömmlichen Verfahren bietet die getrennte Verschlüsselung der Positionswerte und/oder Pixelgruppenwerte für unterschiedliche Anforderung den Vorteil, dass in den entsprechenden Anwendungen und Geräten nur dieses Verfahren implementiert werden muss. Ist dieses Verfahren einmal implementiert, können die unterschiedlichsten Anforderungen ein gemeinsames Verfahren nutzen. Dieses reduziert die Anzahl der Implementierungen, was unter anderem Speicherplatz spart, der insbesondere bei mobilen Endgeräten nur begrenzt zur Verfügung steht. Die Reduzierung der Anzahl der Implementierungen ergibt sich aus den Möglichkeit, Audio, Bild und Videodaten mit dem gleichen Verfahren zu verschlüsseln.The advantages of the invention over the current state of the art are the scalable handling of the encryption method. In contrast to conventional methods, the separate encryption of the position values and / or pixel group values for different requirements offers the advantage that in the corresponding applications and devices only this method has to be implemented. Once this procedure has been implemented, the most diverse requirements can use a common procedure. This reduces the number of implementations, which, among other things, saves storage space that is only limitedly available, in particular for mobile terminals. The reduction in the number of implementations results from the ability to encrypt audio, video and video data using the same procedure.
Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben. In folgenden werden einige Ausführungsbeispiele der Erfindung erläutert.Advantageous embodiments and further developments of the invention are specified in the subclaims. In the following some embodiments of the invention will be explained.
Es wird davon ausgegangen, dass der Informationsinhalt als 2-dimensionale Bilddatei (Bildarray) vorliegt. Jeder Bildpunkt (Pixel) des Bildarrays wird z. B. durch einen 32 Bit Wert (Pixelwert) repräsentiert. Die 32 Bit sind z. B. in 4 Werte (Transparent, Rot, Grün, Blau) mit jeweils 8 Bit aufgeteilt. Die Bildpunkte des Bildarrays werden durchgezählt, wobei die Position jedes Pixels durch eine ganze Zahl festgelegt ist. Es werden Pixelgruppen gebildet, die aus einem Bezugspixel, das die Position der Pixelgruppe innerhalb des Arrays angibt, und weiteren, das Bezugspixel umgebenden Pixel bestehen. Jeder Pixelgruppe wird je nach deren „Bildwichtigkeit” eine Priorität zugeordnet, wobei die Pixelgruppen mit der höchsten Priorität zuerst gespeichert bzw. übertragen werden.It is assumed that the information content is present as a 2-dimensional image file (image array). Each pixel of the image array is z. B. represented by a 32 bit value (pixel value). The 32 bits are z. B. divided into 4 values (transparent, red, green, blue) with 8 bits each. The pixels of the image array are counted, the position of each pixel being determined by an integer. Pixel groups are formed which consist of a reference pixel which indicates the position of the pixel group within the array and further pixels surrounding the reference pixel. Each pixel group is assigned a priority according to their "image importance", with the highest priority pixel groups first being stored or transmitted.
Die Pixelgruppen können nun erfindungsgemäß in verschiedenen Verschlüsselungsstufen übertragen bzw. abgespeichert werden. The pixel groups can now be transmitted or stored according to the invention in various encryption levels.
Ohne Verschlüsselung:Without encryption:
Es besteht ein freier Zugriff auf den gesamten Informationsinhalt, d. h. die Pixelgruppen werden unverschlüsselt übertragen.There is free access to the entire information content, ie. H. the pixel groups are transmitted unencrypted.
Verwendung eines einfachen Schlüssels:Using a simple key:
Es wird ein einziger Schlüssel zum ver- und entschlüsseln verwendet, d. h. ein symmetrisches Verschlüsselungsverfahren angewandt. Hierbei können z. B. die Positionswerte der Bezugspixel einer Pixelgruppe verschlüsselt werden, so dass ohne den passenden Schlüssel eine lagerichtige Positionierung der Pixelgruppe im Bildarray nicht mehr möglich ist. Der Schlüssel kann über einen zweiten Übertragungsweg übermittelt werden, z. B. per E-Mail oder Postweg. Es wird keine weitere Infrastruktur benötigt. Ein symmetrisches Verschlüsselungsverfahren ist schneller als ein asymmetrisches Verfahren, beispielsweise PGP.A single key is used for encryption and decryption, i. H. a symmetric encryption method applied. This z. B. the position values of the reference pixels of a pixel group are encrypted, so that without the right key a positionally correct positioning of the pixel group in the image array is no longer possible. The key can be transmitted via a second transmission path, z. By e-mail or post. No additional infrastructure is needed. A symmetric encryption method is faster than an asymmetric method, such as PGP.
Verwendung eines asymmetrischen Verschlüsselungsverfahrens: Es wird jeweils ein privater und ein öffentlicher Schlüssel zum ver- und entschlüsseln des Informationsinhalts verwendet. Die Verschlüsselung ist im Vergleich zum symmetrischen Verfahren aufwendiger und nur auf eine Punkt-zu-Punkt Beziehung beschränkt. Es ist jedoch kein zweiter Übertragungsweg zur Übertragung des Schlüssels notwendig.Using an asymmetric encryption method: A private and a public key are used to encrypt and decrypt the information content. Encryption is more expensive than the symmetric method and is limited to a point-to-point relationship. However, there is no need for a second transmission path for transmitting the key.
Verwendung eines mehrfachen Schlüssels:Using a multiple key:
Bei einem mehrfachen Schlüssel wird der Schlüssel aus einer Kombination von einzelnen Schlüsseln zusammengestellt. Die Schlüssel können Abhängigkeiten zum Intormationsinhalt, zur Zeit, zur Urheberquelle, zum Übertragungsmedium oder zu anderen Merkmalen aufweisen. Damit lassen sich die Wiedergabemöglichkeiten des Informationsinhalts bei Bedarf beliebig einschränken, und der Informationsinhalt kann so situationsgerecht dargestellt werden. Hierzu einige Beispiele:
- – Zeitliche Komponente im Schlüssel: Der Informationsinhalt lässt sich nur ab/bis zu einen bestimmten Zeitpunkt entschlüsseln
- – Schlüssel abhängig vom Übertragungsmedium: Der Informationsinhalt lässt sich nur entschlüsseln, wenn das Übertragungsmedium eine bestimmte Identifikation besitzt
- – Schlüssel abhängig von der Urheberquelle: Der Informationsinhalt lässt sich nur auf dem Gerät entschlüsseln, auf dem er aufgenommen wurde, z. B. als Missbrauchsschutz bei der Erstellung von Sicherheitskopien
- - Time component in the key: The information content can only be decrypted from / to a certain point in time
- - Key depends on the transmission medium: The information content can only be decrypted if the transmission medium has a specific identification
- - Key depending on the originator: The information content can only be decrypted on the device on which it was recorded, eg. B. as abuse protection when creating backup copies
Verwendung von kaskadierten Schlüsseln:Use of cascaded keys:
Kaskadierte Schlüssel können benutzt werden, um eine Teilverschlüsselung des Informationsinhalts durchzuführen. Dieses kann zum Beispiel angebracht sein, um im gleichen Datenstrom, die normale Qualität in verschlüsselter Form, und eine schlechte Qualität, z. B. für eine Bildvorschau, in unverschlüsselter Form zu übertragen, ohne dass dabei Redundanz entsteht. Dabei kann zum Beispiel die Auflösung eines Bildes heruntergesetzt werden. Unter „Auflösung” ist in diesem Fall nicht die „Bildhöhe × Bildbreite” gemeint, da diese bei Anwendung des Verfahrens unverändert bleibt. Vielmehr ist mit heruntergesetzter Auflösung eine Abweichung zum Originalbild gemeint, die bei der Rekonstruktion durch noch nicht übertragene und/oder entschlüsselte Pixelgruppen entstehen können. Das Verfahren der kaskadierten Schlüssel arbeitet nach dem Prinzip der Zwiebelschalen. Bei Anwendung des Verfahrens der priorisierten Pixelübertragung kann z. B. eine Reduzierung der Pixelgruppengröße zur Bildung einer kaskadierten Verschlüsselung dienen. Eine Pixelgruppe besteht aus einem (Referenz) Pixel, der durch seinen Positionswert eindeutig bestimmt wird, und einer Anzahl weiterer Pixel. Besteht eine Pixelgruppe z. B. aus insgesamt 9 Pixel, so können zum Beispiel 5 Pixel unverschlüsselt und 4 Pixel verschlüsselt übertragen werden. Die äußere Schale, welche die 5 unverschlüsselten Pixel umfasst, enthält keine Verschlüsselung und würde es zum Beispiel erlauben, ohne Schlüssel ein Video in Briefmarkengröße anzusehen. In der nächsten Schale werden ein oder mehrere der verschlüsselten Pixel übertragen. Für jede weitere Schale wird ein weiterer Schlüssel verwendet. Die Art der Schalen werden vor der Übertragung zwischen Sender und Empfänger vereinbart. Auf diese Art und Weise kann derjenige der alle Schlüssel besitzt und alle Schalen entschlüsseln kann, das Video in der besten Qualität ansehen.Cascaded keys can be used to perform partial encryption of the information content. This may be appropriate, for example, in the same data stream, the normal quality in encrypted form, and poor quality, e.g. B. for a picture preview, in unencrypted form, without causing redundancy. In this case, for example, the resolution of an image can be lowered. By "resolution" in this case is not meant the "image height × image width" since it remains unchanged when the method is used. Rather, with lowered resolution, a deviation from the original image is meant, which can arise during reconstruction by not yet transmitted and / or decrypted pixel groups. The process of cascaded keys works on the principle of onion skins. When using the method of prioritized pixel transmission z. For example, a reduction in pixel group size may serve to form a cascaded encryption. A pixel group consists of a (reference) pixel, which is uniquely determined by its position value, and a number of other pixels. Is there a pixel group z. B. from a total of 9 pixels, so for example 5 pixels can be transmitted unencrypted and 4 pixels encrypted. The outer shell, which includes the 5 unencrypted pixels, contains no encryption and would allow, for example, to view a stamp-sized video without a key. In the next shell, one or more of the encrypted pixels are transmitted. For each additional bowl another key is used. The type of shells are agreed upon before transmission between sender and receiver. In this way, the one who has all the keys and can decrypt all the shells can watch the video in the best quality.
Um Störungen zu verringern, die z. B. durch Abhängigkeiten zwischen den Daten der einzelnen Schalten entstehen können, kann bei dieser Art der Verschlüsselung zusätzlich zu dem Positionswert und den Werten der Pixelgruppen ein Hash-Wert übertragen werden, der sich aus dem Positionswert und den Werten der Pixelgruppen errechnet. Stimmt der im Empfänger berechnete Hash-Wert nicht mit dem übertragenen Hash-Wert überein, wird diese Pixelgruppe nicht entschlüsselt. Dadurch wird erreicht, dass keine Störungen durch andere Schalen auftreten.To reduce interference, the z. For example, due to dependencies between the data of the individual switches, in this type of encryption, in addition to the position value and the values of the pixel groups, a hash value can be transmitted which is calculated from the position value and the values of the pixel groups. If the hash value calculated in the receiver does not match the transmitted hash value, that pixel group is not decrypted. This ensures that no interference from other shells occur.
Eine Kombination der unterschiedlichen Schlüssel und Verfahren ist möglich.A combination of different keys and procedures is possible.
Selbstverständlich ist das erfindungsgemäße Verschlüsselungsverfahren nicht nur auf Bild- und Videodaten anwendbar, sondern auf alle Arten von digitalen Daten, die sich in Datenblöcke, ähnlich den Datenblöcken von Bildpunkten, unterteilen lassen.Of course, the encryption method according to the invention is applicable not only to image and video data, but to all types of digital data that can be subdivided into data blocks, similar to the data blocks of pixels.
Die Erfindung wird nachfolgend anhand eines einfachen Beispiels näher erläutert.The invention will be explained in more detail below with reference to a simple example.
In Tabelle 1 ist ein Teil eines Datenstromes dargestellt, der nach dem Verfahren der priorisierenden Pixelübertragung aufbereitet wurde. Der Wert „Pos x” gibt die jeweilige Position der Pixelgruppe an, die Werte „Px_n” die einzelnen Pixelwerte der in der Pixelgruppe enthaltenen Pixel. Jede Pixelgruppe besteht beispielsweise aus 5 Pixeln. Tabelle 1: Table 1 shows a part of a data stream that has been prepared according to the method of prioritizing pixel transmission. The value "Pos x" indicates the respective position of the pixel group, the values "Px_n" the individual pixel values of the pixels contained in the pixel group. For example, each pixel group consists of 5 pixels. Table 1:
Tabelle 2 zeigt die Verschlüsselung nur der Positionswerte. Vorteil: Es braucht nur ein Teil des Datenstroms verschlüsselt werden, was eine deutliche Steigerung der Performance gegenüber einer kompletten Verschlüsselung aller Daten bringt. Eine Rekonstruktion der so verschlüsselten Daten ohne Kenntnis des Schlüssels ist nicht oder nur mit großem Rechenaufwand möglich. Tabelle 2: Table 2 shows the encryption of only the position values. Advantage: Only a part of the data stream needs to be encrypted, which results in a significant increase in performance compared to a complete encryption of all data. A reconstruction of the data thus encrypted without knowledge of the key is not possible or only with great computational effort. Table 2:
Tabelle 3 zeigt die Verschlüsselung eines Teils der Pixelgruppe. Vorteil: Der gleiche Datenstrom erlaubt aufgrund einer unterschiedlichen Verschlüsselung der Pixelwerte unterschiedliche Qualitäten bei der Rekonstruktion der Bilddaten. In dem unten angeführten Beispiel kann der Empfänger den Positionswert und die Pixelwerte Px_0 bis Px_2 ohne Schlüssel verwenden. Zur Entschlüsselung der Pixelwerte Px_3 bis Px_5 wird jeweils der passende Schlüssel benötigt. Besitzt der Empfänger den/die Schlüssel für die Pixelwerte Px_3 bis Px_5 nicht, so muss die Applikation diese Pixelwerte aus den frei verfügbaren Werten Px_0 bis Px_2 rekonstruieren. Da dem Empfänger aber eine Vielzahl von Pixelwerten fehlen, ist die Qualität der Rekonstruktion (Auflösung) deutlich reduziert. Tabelle 3: Table 3 shows the encryption of a part of the pixel group. Advantage: Due to a different encryption of the pixel values, the same data stream allows different qualities in the reconstruction of the image data. In the example below, the receiver may use the position value and pixel values Px_0 to Px_2 without a key. For decrypting the pixel values Px_3 to Px_5, the appropriate key is required in each case. If the receiver does not have the key (s) for the pixel values Px_3 to Px_5, then the application must reconstruct these pixel values from the freely available values Px_0 to Px_2. However, since the receiver lacks a multiplicity of pixel values, the quality of the reconstruction (resolution) is significantly reduced. Table 3:
In den angeführten Beispielen werden verschlüsselte und nicht verschlüsselte Daten im gleichen Datenstrom übertragen. Um Übertragungsfehler zu erkennen und um zu erkennen, ob die Entschlüsselung erfolgreich war, kann jeder Teil der Pixelgruppe (Positionswert und Px_n) in der entschlüsselten Form eine CRC-Prüfung enthalten. Tritt ein Übertragungsfehler auf, und die CRC-Prüfung schlägt fehl, so wird der entsprechende Pixelwert nicht zur Rekonstruktion verwendet. Der andere Teil der Pixelgruppe kann weiterhin verwendet werden. Auf diese Art und Weise erhöht sich gleichzeitig die Robustheit des Übertragungsverfahrens gegenüber Übertragungsfehlern. Anstelle einer CRC-Prüfung können auch Hash Funktionen zum Einsatz kommen. Diese bieten einen besseren Sicherungsschutz benötigen aber eine höhere Rechenleistung.In the examples given, encrypted and non-encrypted data is transmitted in the same data stream. To detect transmission errors and to see if the decryption was successful, each part of the pixel group (position value and Px_n) in the decrypted form may contain a CRC check. If a transmission error occurs and the CRC check fails, the corresponding pixel value is not used for reconstruction. The other part of the pixel group can still be used. In this way, the robustness of the transmission method against transmission errors increases at the same time. Instead of a CRC check, hash functions can also be used. These offer better protection but require more computing power.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10229975.7A DE10229975B4 (en) | 2001-10-25 | 2002-07-03 | Method for compressing and decompressing image data |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10152612A DE10152612B4 (en) | 2001-03-21 | 2001-10-25 | Method for compressing and decompressing image data |
DE10229975.7A DE10229975B4 (en) | 2001-10-25 | 2002-07-03 | Method for compressing and decompressing image data |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10229975A1 DE10229975A1 (en) | 2004-01-29 |
DE10229975B4 true DE10229975B4 (en) | 2017-02-09 |
Family
ID=30001444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10229975.7A Expired - Lifetime DE10229975B4 (en) | 2001-10-25 | 2002-07-03 | Method for compressing and decompressing image data |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10229975B4 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0671845A2 (en) * | 1994-03-12 | 1995-09-13 | Victor Company Of Japan Limited | Multi-dimensional image compression and decompression method |
US5757382A (en) * | 1994-12-29 | 1998-05-26 | Daewoo Electronics Co., Ltd. | Apparatus for tracing contours of segmented regions |
JPH1188857A (en) * | 1997-09-03 | 1999-03-30 | Oki Electric Ind Co Ltd | Image enciphering device |
-
2002
- 2002-07-03 DE DE10229975.7A patent/DE10229975B4/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0671845A2 (en) * | 1994-03-12 | 1995-09-13 | Victor Company Of Japan Limited | Multi-dimensional image compression and decompression method |
US5757382A (en) * | 1994-12-29 | 1998-05-26 | Daewoo Electronics Co., Ltd. | Apparatus for tracing contours of segmented regions |
JPH1188857A (en) * | 1997-09-03 | 1999-03-30 | Oki Electric Ind Co Ltd | Image enciphering device |
Non-Patent Citations (1)
Title |
---|
SIMON, Serge: Generalized Run-Length Coding for SNR-scalable Image Compression. In: Signal Processing VII, Theories and Applications, Edinburgh, UK, 1994, S.560-563 * |
Also Published As
Publication number | Publication date |
---|---|
DE10229975A1 (en) | 2004-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60216542T2 (en) | Standard compliant watermark for access management | |
DE69106033T2 (en) | Method and device for scrambling-descrambling digital image data. | |
DE69324077T2 (en) | Encryption and decryption device | |
DE69535161T2 (en) | Method for controlling data copyright | |
DE69228893T2 (en) | Device and method for data mixing and demixing | |
DE19520232C1 (en) | Method for encrypting sequences consisting of number-coded information units | |
DE19906449C1 (en) | Multimedia data stream encryption method provides first section of useful data block which is not encrypted for providing preview or prelist function | |
DE19521969C1 (en) | Method for marking binary coded data sets | |
DE69813230T2 (en) | METHOD FOR MARKING A COMPRESSED DIGITAL VIDEO SIGNAL | |
EP1276320B1 (en) | Method for making unrecognisable and for restoring image content | |
DE69607844T2 (en) | METHOD FOR CERTIFICATING DIGITAL DATA WORKS | |
DE60303034T2 (en) | METHOD AND METHOD FOR FAKE-RESISTANT VISUAL ENCRYPTION | |
DE69128935T2 (en) | ERROR PROTECTION FOR DATA OF VARIABLE LENGTH | |
DE102005009621A1 (en) | Circuit, apparatus and method for receiving, conditional access and copy protection of digital video transmission signals | |
DE112016000791T5 (en) | Media key block based broadcast encryption | |
DE10229976B4 (en) | Method for encrypting and decrypting digital data transmitted or stored according to the method of prioritized pixel transmission | |
DE69932407T2 (en) | RECORDING DEVICE FOR RECORDING A DIGITAL INFORMATION SIGNAL ON A RECORD CARRIER | |
DE10229975B4 (en) | Method for compressing and decompressing image data | |
DE112020000150T5 (en) | IMPROVED IMAGE WATERMARKS | |
DE102018113772B4 (en) | Encryption method | |
DE60104213T2 (en) | PARTIAL ENCRYPTION OF ASSOCIATED BITSTROSTS | |
DE102018126763B4 (en) | CRYPTOGRAPHY METHOD | |
DE102022104205B3 (en) | Automatic parameter loading procedure and system as well as service server and client server | |
DE602004011465T2 (en) | Watermarking images | |
EP1589475B1 (en) | Method for inserting a digital watermark into image or video data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AF | Is addition to no. |
Ref document number: 10152612 Country of ref document: DE Kind code of ref document: P |
|
OP8 | Request for examination as to paragraph 44 patent law | ||
AF | Is addition to no. |
Ref document number: 10152612 Country of ref document: DE Kind code of ref document: P |
|
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R020 | Patent grant now final | ||
R071 | Expiry of right |