-
Die
Erfindung betrifft ein Verfahren und eine Vorrichtung zur Markierung
von zweidimensionalen georeferenzierten Bilddaten.
-
Unter
georeferenzierten Bilddaten werden Bilddaten und/oder Kartendaten
der Erde, eines anderen Planeten oder eines anderen Untergrundes verstanden,
wie beispielsweise Landkarten, Luftaufnahmen, Satellitenbilder.
Andererseits werden unter georeferenzierten Bilddaten aufbereitete
Daten verstanden, die auf ein Koordinatensystem oder eine Projektion
des Untergrundes bezogen sind, z. B. für spezielle Anwendung wie die
Landwirtschaft oder den Umweltschutz aufbereitete Daten. Dabei muss es
sich nicht um reale Bilddaten handeln, sondern z. B. auch um simulierte
Bilddaten. Auch können
in den Bilddaten wiederum auf den Untergrund bzw. das Koordinatensystem
bezogene Zusatzinformationen enthalten sein, etwa Beschriftungen,
Pfeile. Insbesondere können
die georeferenzierten Bilddaten in Form von Raster-Bildern aufbereitet
sein oder aufbereitet werden. Dabei können die Rasterlinien optional ebenfalls
Teil der Bilddaten sein, wie es beispielsweise bei Karten der Fall
ist, die Teile der Erdoberfläche mit
ausgewählten
zugehörigen
Breiten- und Längengeraden
zeigen.
-
Georeferenzierte
Bilddaten werden häufig mit
hohem Aufwand erzeugt. Insbesondere sind häufig teure technische Aufnahmesysteme
erforderlich, um die Bilddaten mit einer hohen Auflösung zu
erzeugen. Außerdem
ist die Nachbearbeitung, um die Bilddaten für den Nutzer geeignet darstellen
zu können, meist
ebenfalls sehr aufwendig und enthält teilweise das Ergebnis gestalterischer
Leistungen.
-
Daher
besteht der Wunsch, die Urheberrechte und Verwertungsrechte zu schützen. Insbesondere
soll nachgewiesen werden können,
ob Bilddaten durch illegales Kopieren hergestellt wurden. Dies soll möglichst
auch dann noch festgestellt werden können, wenn die kopierten Bilddaten
nachträglich
verändert
wurden. Es ist eine Aufgabe der vorliegenden Erfindung, ein Verfahren
anzugeben, das eine solche Feststellung erlaubt.
-
Die
Veröffentlichung „Minimum-Impact-on-Classifier
(MIC) watermarking for protection of remote sensing imagery", 2004, international
Geoscience and Remote Sensing Symposium (IGARSS'04), Vol. 7, S. 4436–4439, ISBN: 0-7803-8742-2,
DOI: 10.1109/IGARSS.2004.1370134 (M. Barni et al.) beschreibt das
Anbringen eines digitalen Wasserzeichens auf Fernerkundungsbilder.
Es wird ein Verfahren vorgeschlagen, das nicht von einem speziellen Wasserzeichenschema
abhängt,
dass Merkmale der Originaldaten, wie z. B. Textur, Kanten usw. explizit berücksichtigt
und dass die Auswirkungen des Wasserzeichens auf diese Merkmale
minimiert. Es wird eine vorläufige
Bild-Clusterung durchgeführt
und das Wasserzeichen wird in der Weise eingefügt, dass die Clusterung des
mit dem Wasserzeichen versehenen Bildes der Clusterung des Originalbildes
so ähnlich wie
möglich
ist.
-
Die
Veröffentlichung „Joint
Near-lossless Watermarking and Compression for the Authentication
of Remote Sensing Images",
2004, International Geoscience and Remote Sensing Symposium (IGARSS'04), DOI: 10.1109/IGARSS.2004.1369020, ISBN:
0-7803-8742-2, S. 297–300,
(Caldelli, R. et al.) beschreibt einen Algorithmus zum Anbringen
eines Wasserzeichens für
eine nahezu verlustfreie Kompression und Authentifizierung von Fernerkundungsbildern.
In der Einleitung der Druckschrift wird ein Algorithmus von Fridrich
für das
Einbetten von Wasserzeichen beschrieben. Dabei wird das Bild in
Blöcke von
8×16 Pixeln
unterteilt und das LSB von jedem Block wird separat modifiziert.
-
Die
Veröffentlichung „Watermarking
techniques for electronic delivery of remote sensing images", 2001, International
Geoscience and Remote Sensing Symposium (IGARSS'01), Vol. 5 S. 2265–2267, DOI: 10.1109/IGARSS.2001.977970 (Barni,
M., Bartolini, F., Cappelini, V. et al) enthält eine Studie zu der Anwendbarkeit
von Wasserzeichen-Techniken auf Fernerkundungsbilder. Es wird in Bezug
auf die Bild-Klassifizierung
ein Beispiel gegeben. Dabei wird ein Landschaftsbild in 5 Cluster
mit jeweils ähnlichen
Grauwerten klassifiziert. Die Cluster bilden jedoch kein miteinander
zusammenhängendes
Gebiet. Die Bilddaten liegen in drei verschiedenen Frequenzbändern vor.
Die Markierungen werden in jedem Band separat eingesetzt.
-
Ein
Grundgedanke der vorliegenden Erfindung besteht darin, die Bilddaten
mit einer Markierung zu versehen, die vorzugsweise unsichtbar oder zumindest
für den
Betrachter nicht störend
ist. Bevorzugt wird außerdem,
dass die Markierung auch nach typischerweise in der Praxis vorkommenden
Verarbeitungsschritten, wie Farbraum konvertierungen, affinen Transformationen,
Digital-Analog- oder Analog-Digital-Konvertierungen
(z. B. beim Ausdrucken der Bilddaten) erhalten bleibt oder zumindest
feststellbar bleibt.
-
Insbesondere
wird ein Verfahren zur Markierung von zweidimensionalen georeferenzierten
Bilddaten vorgeschlagen, wobei
- – zumindest
ein Bildsegment vorliegt und/oder ermittelt wird,
- – innerhalb
des zumindest einen Bildsegments eine Vielzahl von Kacheln definiert
wird, die jeweils einer Teilfläche
des Bildsegments entsprechen, und
- – Bildeigenschaften
zumindest eines Teils der Kacheln verändert werden und dadurch eine
Markierung der Bilddaten vorgenommen wird.
-
Die
Nutzung des Bildsegments zur Markierung hat den Vorteil, dass das
Bildsegment beim Wiederauffinden der Markierung identifiziert werden kann.
Dies gilt zumindest dann, wenn Eigenschaften des Bildsegments bekannt
sind (z. B. dessen Außenkontur
oder Bildwerte oder zumindest ein Bereich, in dem die Bildwerte
liegen) und/oder wenn Informationen darüber bekannt sind, wie das Bildsegment
ermittelt werden kann. Beispielsweise wird die Vorschrift, wie das
Bildsegment aufgefunden werden kann, geheim gehalten, so dass eine
Person, die die Bilddaten unberechtigt kopiert, die Markierung nicht auffinden
kann.
-
Beispielsweise
werden zumindest drei Bildsegmente an verschiedene Positionen für die Markierung
genutzt und/oder zumindest ermittelt. Dies ermöglicht es, auch die Orientierung
und/oder Skalierung der möglicherweise
veränderten
Bilddaten im Verhältnis
zu den Originalbilddaten festzustellen bzw. die veränderten
Bilddaten mit den Originalbilddaten zu registrieren (d. h. einen
Bezug der Koordinatensysteme der beiden verschiedenen Bilddaten
zueinander herzustellen und/oder die einen Bilddaten in das Koordinatensystem
der anderen Bilddaten zu transformieren).
-
Erfindungsgemäß wird innerhalb
des zumindest einen Bildsegments eine Vielzahl von Kacheln definiert.
Jede Kachel entspricht einer Teilfläche des Bildsegments, wobei
die Kacheln beliebige Form, Außenabmessungen
und Außenkonturen
haben können.
Die Kacheln innerhalb des Bildsegments können gleiche oder unterschiedliche
Form haben. Sie können
alle oder einige davon aneinandergrenzen oder es kann ein Abstand
zwischen benachbarten Kacheln vorhanden sein. Bevorzugt wird jedoch eine
Kachelung (Tesselierung), bei der alle Kacheln innerhalb desselben
Bildsegments oder aller für
die Markierung verwendeten Bildsegmente dieselbe Form und Größe aufweisen
und vorzugsweise auch zumindest jeweils einen Teilbereich des Bildsegments
ohne Lücken
abdecken. Im Fall von digitalen Bilddaten, die auf ein zweidimensionales
Koordinatensystem bezogen sind, enthält jede Kachel daher vorzugsweise
die gleiche Anzahl von Pixeln in beiden Koordinatenachsenrichtungen
und gehört
das Pixel, welches in einer betrachteten Richtung auf das letzte, den
Außenrand
einer Kachel definierendes Pixel folgt, zu der nächst benachbarten Kachel, sofern
es sich nicht um eine Kachel am Außenrand der gekachelten Fläche handelt.
Vorzugsweise weist jede Kachel eine Vielzahl von Pixeln auf.
-
Gemäß dem oben
vorgeschlagenen Verfahren werden Bildeigenschaften von Kacheln verändert und
wird dadurch die Markierung in die Bilddaten eingebracht. Beispielsweise
können
bei digitalen Bilddaten die Farbwerte, Grauwerte und/oder andere
einem Pixel zugeordnete Werte in vordefinierter oder zufälliger Weise
verändert
werden. Beispielsweise kann so ein bestimmtes Muster von Pixeln
innerhalb einer zu verändernden
Kachel verändert
werden. Unter einem Muster wird eine dem Muster zugeordnete Anzahl
von Pixeln mit entsprechenden Relativpositionen verstanden bzw.
im Fall analoger Bilddaten eine Anzahl von Teilbereichen des Bildes.
-
Insbesondere
ist das zumindest eine Bildsegment durch eine in sich geschlossen
umlaufende Umrisslinie definiert oder kann durch eine solche Umrisslinie
definiert werden. Somit liegt ein definierter gegen die Außenwelt
des Bildsegments abgeschlossener Bereich vor, so dass Kacheln in
dem Bildsegment eindeutig diesem zugeordnet sind.
-
Beispielsweise
ist das Bildsegment dadurch definiert, dass innerhalb des Bildsegments
Bildeigenschaften gemäß einem
vordefinierten Homogenitätskriterium
homogen sind. Es kann daher auch davon gesprochen werden, dass das
Bildsegment dem Homogenitätskriterium
genügt.
Beispielsweise besteht das Homogenitätskriterium darin, dass aneinander angrenzende
analoge Bildbereiche oder im Fall digitaler Bilddaten aneinandergrenzende
Pixel Bildwerte aufweisen, die innerhalb eines vordefinierten Bereichs
liegen. Z. B. werden die Grauwerte oder Farbwerte der Bildbereiche
bzw. Pixel betrachtet. Das Homogenitätskriterium kann aber auch
komplexer formuliert sein. Z. B. kann zugelassen sein, dass die Bildwerte
einzelner Pixel oder Bildbereiche außerhalb des vordefinierten
Wertebereichs liegen, wenn diese Bildbereiche oder Pixel vollständig von
anderen Bereichen oder Pixeln umgeben sind, deren Bildwerte in dem
vordefinierten Wertebereich liegen. Selbstverständlich kann das Homogenitätskriterium auch
anders definiert sein, z. B. unter Verwendung über einen örtlichen Bereich (z. B. ein
Teilbereich des Bildsegments oder das gesamte Bildsegment) gemittelter
Bildwerte.
-
Der
Identifizierung des Bildsegments über ein Homogenitätskriterium
liegt der Gedanke zugrunde, dass Gebiete mit homogenen Bildwerten
leicht identifiziert werden können,
andererseits aber meistens immer noch Variationen der Bildwerte
vorhanden sind, so dass Markierungen durch Veränderung der Bildwerte angebracht
werden können,
die mit bloßem
Auge nicht erkannt werden können.
Daher stören
die Markierungen nicht und fallen auch dem unbefugten Benutzer der
Bilddaten nicht auf.
-
Vorzugsweise
wird die Markierung so angebracht, dass auch das Bildsegment mit
den Kacheln, deren Bildeigenschaften verändert wurden, dem vordefinierten
Homogenitätskriterium
genügt.
-
Beispielsweise
weist das Homogenitätskriterium
zumindest einen Grenzwert für
die (optional auch örtlich
gemittelten) Bildeigenschaften auf, der nicht und/oder nur für eine limitierte
Anzahl von Bildelementen überschritten
werden darf, damit das Bildsegment dem Homogenitätskriterium genügt, und wobei
durch die Veränderung
der Bildeigenschaften der Grenzwert nicht überschritten wird und/oder
die limitierte Anzahl von Bildelementen nicht überschritten wird.
-
Die
Erfindung betrifft außerdem
eine Vorrichtung zur Markierung von zweidimensionalen georeferenzierten
Bilddaten, insbesondere zur Ausführung des
Verfahrens in einer der Ausgestaltungen, die in dieser Beschreibung
offenbart ist, wobei die Vorrichtung Folgendes aufweist:
- – eine
Schnittstelle zum Empfangen der Bilddaten und/oder einen Datenspeicher,
in dem die Bilddaten gespeichert sind,
- – eine
Ermittlungseinrichtung zur Ermittlung zumindest eines Bildsegments
aus den Bilddaten,
- – eine
Tesselierungseinrichtung zur Definition einer Vielzahl von Kacheln
innerhalb des zumindest einen Bildsegments, wobei die Kacheln jeweils
einer Teilfläche
des Bildsegments entsprechen, und
- – eine
Markierungseinrichtung, die ausgestaltet ist, Bildeigenschaften
zumindest eines Teils der Kacheln zu verändern und dadurch eine Markierung
der Bilddaten vorzunehmen.
-
Bei
der Vorrichtung kann es sich insbesondere um einen Computer handeln.
-
Ferner
gehört
zum Umfang der Erfindung ein Computerprogramm, das bei Ablauf auf
einem Computer oder Computer-Netzwerk das erfindungsgemäße Verfahren
in einer seiner Ausgestaltungen ausführt.
-
Weiterhin
gehört
zum Umfang der Erfindung ein Computerprogramm mit Programmcode-Mitteln, um
das erfindungsgemäße Verfahren
in einer seiner Ausgestaltungen durchzuführen, wenn das Programm auf
einem Computer oder Computer-Netzwerk ausgeführt wird. Insbesondere können die
Programmcode-Mittel auf einem computerlesbaren Datenträger gespeichert
sein.
-
Außerdem gehört zum Umfang
der Erfindung ein Datenträger,
auf dem eine Datenstruktur gespeichert ist, die nach einem Laden
in einen Arbeits- und/oder Hauptspeicher eines Computers oder Computer-Netzwerkes
das erfindungsgemäße Verfahren in
einer seiner Ausgestaltungen ausführen kann.
-
Auch
gehört
zum Umfang der Erfindung ein Computerprogramm-Produkt mit auf einem
maschinenlesbaren Träger
gespeicherten Programmcode-Mitteln, um das erfindungsgemäße Verfahren
in einer seiner Ausgestaltungen durchzuführen, wenn das Programm auf
einem Computer oder Computer-Netzwerk ausgeführt wird.
-
Dabei
wird unter einem Computer-Programmprodukt das Programm als handelbares
Produkt verstanden. Es kann grundsätzlich in beliebiger Form vorliegen,
so zum Beispiel auf Papier oder einem computerlesbaren Datenträger und
kann insbesondere über
ein Datenübertragungsnetz
verteilt werden.
-
Ausführungsbeispiele
der Erfindung werden nun unter Bezugnahme auf die beigefügte Zeichnung beschrieben.
Die einzelnen Figuren der Zeichnung zeigen:
-
1 Geo-Bilddaten
mit drei Bildsegmenten,
-
2 eines
der in 1 dargestellten Bildsegmente, wobei das Bildsegment
gekachelt ist,
-
3 eine
Kachel aus 2 mit einer Vielzahl von Pixeln,
die unterschiedliche Bildwerte aufweisen und
-
4 die
Kachel gemäß 3,
wobei zur Markierung der Bilddaten ein Muster in die Kachel eingebracht
wurde.
-
1 zeigt
eine bildliche Darstellung von georeferenzierten zweidimensionalen
Bilddaten. Außer den
eigentlichen Bilddaten sind horizontale und vertikale Linien dargestellt,
die jeweils in der durch ein Koordinatensystem der Bilddaten vorgegebenen
Richtung verlaufen. Beispielsweise kann es sich bei den Linien um
Linien mit konstanten Längengeraden
bzw. Breitengeraden handeln. Von den Bilddaten sind drei Objekte 1, 2, 3 dargestellt.
Von den Objekten ist jeweils nur die Außenkontur bzw. äußere Umrisslinie dargestellt.
Die Bereiche innerhalb der Umrisslinien genügen einem vordefinierten Homogenitätskriterium.
Daher können
die Objekte 1, 2, 3 als Bildsegmente
bezeichnet werden. Die Bilddaten können außerdem noch weitere Objekte
enthalten. Auch können
die Bildwerte in Gebieten der Bilddaten, anders als in 1 dargestellt
ist, variieren.
-
In 2 ist
das Bildsegment 1 aus 1 vergrößert dargestellt.
Ein Teilgebiet des Bildsegments 1 ist in quadratische Kacheln
unterteilt. Auf diese Weise entstehen neun vollständige quadratische
Kacheln a bis i.
-
Diese
Kachelung ist lediglich als Beispiel zu verstehen. In der Praxis
wird ein Bildsegment vorzugsweise in sehr viel mehr Kacheln unterteilt,
so dass ein größeres Gebiet
des Bildsegments gekachelt ist, wobei die Kacheln vorzugsweise das
Gebiet vollständig
abdecken, d. h. keine Lücken
lassen.
-
3 und 4 zeigen
die Kachel a gemäß 2.
Die Kachel a weist 144 Pixel auf, die durch Quadrate repräsentiert
sind. In den Ausgangsbilddaten sind einige der Pixel (links oben,
links unten und rechts unten in der Kachel) mit deutlich anderen
Bildwerten versehen als die Mehrzahl der Kacheln in der Kachel-Mitte
und rechts oben. Der durchschnittliche Bildwert sämtlicher
Pixel der Kachel liegt daher etwa bei dem Bildwert der Mehrzahl
der Kacheln. Dies ist eine Situation, die bei Bildgebieten mit homogenen Werten
häufig
angetroffen wird.
-
Dies
wird nun dadurch genutzt, dass ein Muster in die Kachel eingebracht
wird. Dazu werden gemäß einer
vordefinierten Vorschrift bestimmte Pixel in ihren Bildwerten verändert, z.
B. der Farbwert oder Grauwert verändert. Dabei sind die Relativpositionen
der Pixel durch die Vorschrift vorgegeben und vorzugsweise ist auch
die Position der zu verändernden
Pixel innerhalb der Kachel vorgegeben. In dem dargestellten Ausführungsbeispiel
ist vorgegeben, dass der Farbwert des Pixels in der rechten oberen Ecke
der Kachel auf einen bestimmten Farbwert gesetzt wird und außerdem weitere
sieben Pixel in der in 4 dargestellten Relativposition
auf denselben Farbwert verändert
werden.
-
Beispielsweise
kann dasselbe Muster in mehren Kacheln eingebracht werden, um die
Robustheit der Markierung gegen Veränderungen der Bilddaten zu
erhöhen.
-
Alternativ
oder zusätzlich
können
jedoch auch andere Muster in eine oder mehrere der Kacheln eingebracht
werden.
-
Die
Erfindung ist jedoch nicht hierauf beschränkt. Vielmehr kann außerdem oder
anstelle der Muster auch in anderer Weise eine Markierung angebracht
werden. Beispielsweise kann in einem vordefinierten Gebiet eine
bestimmte Anzahl von Pixeln oder analogen Bildbereichen vordefinierter
Größe in ihren
Bildwerten in vordefinierter Weise eingestellt werden.
-
Allgemein,
unabhängig
von dem zuvor beschriebenen Ausführungsbeispiel,
wird bevorzugt, dass durch die Markierung eine vordefinierte Information
in die Bilddaten codiert wird, die z. B. bei Kenntnis eines Codierungsschlüssels wieder
ausgelesen werden kann. Dabei wird bevorzugt, dass die Weise, wie
die Bildwerte verändert
werden, durch ein oder mehrere kryptographische Hashfunktionen vordefiniert
ist. Dies hat den Vorteil, dass eine Rückberechnung der Ausgangsinformation,
die zu codieren war, nicht möglich
ist (Avalanche-Eigenschaft).
-
Im
Folgenden wird ein weiteres Ausführungsbeispiel
der Erfindung beschrieben.
-
Das
Verfahren stellt dabei sicher, dass wesentliche semantische Informationen,
die in den Geodaten dargestellt werden, durch die Einbettung der Markierung
nicht verfremdet oder verfälscht
werden. Hierzu können
für die
Einbettung der Markierung selbst diese semantischen Eigenarten,
d. h. insbesondere Geometrie, Texturen, und Überlagerung von Ebenen mit
herangezogen werden.
-
Die
Wiederfindung der Markierung bzw. kodierten Information kann blind
(d. h. ohne die originalen, nicht markierten Bilddaten) oder nicht-blind
(d. h. mit den originalen, nicht markierten Bilddaten) erfolgen.
-
Bei
geeigneter Kodierung, die als Einbringen eines digitalen Wasserzeichens
bezeichnet werden kann, können
bei der Markierung Nutzdaten in die Bilddaten eingebracht werden,
die Informationen über
den Prozess der Markierung und/oder bezüglich der nicht markierten
(Quelldaten) enthalten. Beispielsweise wird ein Wasserzeichen mit
ein so genanntes n-Bit-Wasserzeichen durch den Prozess der Markierung
eingebracht. Bei erhöhten
Anforderungen an die Robustheit der Markierung gegen nachfolgende
Veränderung
(insbesondere unerwünschte Manipulation)
der Bilddaten, kann auch lediglich ein 1-Bit-Wasserzeichen eingebracht
werden, das den Nachweis der Urheberschaft der Bilddaten ermöglicht.
-
Die
Kapazität
bzw. Robustheit der Markierung ist dabei von der Anzahl und Größe der für die Markierung
zur Verfügung
stehenden Bildsegmente und deren Auflösung z. B. in einer Raster-Repräsentation
abhängig.
-
Für die Einbettung
von Markierungen können
z. B. vektorbasierte Datenformate, Geodaten-Beschreibungssprachen,
sowie Raster-Grafikformate herangezogen werden. Die Beschreibung
der folgenden Ausführungsbeispiele
wird auf Raster-Grafikformate
beschränkt
werden, da die anderen Datenformate sowohl im Fall proprietärer als
auch im Fall standardkonformer Verfahren in ein geeignetes Raster-Grafikformat überführt werden
können.
-
Die
Einbettung der Markierung aufgrund reiner Raster-Daten erfordert
die Identifikation von Bildsegmenten mit definierten Randgebieten.
Unter reinen Raster-Daten
werden Bilddaten verstanden, die keine Zusatzinformationen aufweisen,
wie sie z. B. aus der Aufbereitung zu Rasterdaten zur Verfügung stehen
können.
In diesem Fall ist der hier beschriebene erste Schritt zu überspringen
und diese Daten sind direkt zu verwenden.
-
Die
Identifikation der Bildsegmente kann mittels verschiedener Verfahren
erfolgen, die an sich aus der Literatur bekannt sind, z. B. unter
Anwendung eines Gauß'sches Glättungsverfahren
zur Entfernung bestehender Texturinformation, um Fehldetektionen
zu vermeiden, die durch die Anwendung eines Kantenerkennungsverfahrens
verursacht werden können.
-
Für komplexe
Texturinformationen und Geodaten-Material kann auch die Verwendung
komplexerer Erkennungsverfahren sinnvoll sein. Die im Folgenden
beschriebene Weiterverarbeitung erfordert lediglich Segmente mit
kontinuierlichen und in sich geschlossen umlaufenden Kanten und
stellt keine weiteren Anforderungen. Falls im Rahmen eines bestimmten
Kantenerkennungverfahrens Lücken
in einer Kante entstehen, werden diese z. B. durch Interpolation
aufgefüllt.
-
Um
die Wasserzeichen-Markierung selbst einbringen zu können, werden
die Bildsegmente in einem weiteren Verfahrensschritt in Kacheln
unterteilt (tesseliert). Diese Kacheln können in Abhängigkeit von Anforderungen
an Robustheit und Kapazität der
Wasserzeichen anschließend
mit identischen und/oder unterschiedlichen Markierungen belegt werden.
-
Für die Tesselierung
in dem hier beschriebenen Ausführungsbeispiel
ist die Rastergrafik (d. h. die zweidimensionalen, auf das Raster
bzw. Koordinatensystem bezogenen Bilddaten) durch eine Matrix A mit
einer horizontalen Dimension x und vertikalen Dimension y repräsentiert,
wobei ihr Ursprung in der oberen linken Ecke des Rasters liegt.
-
Der
im Folgenden beschriebene Algorithmus unterteilt ein gegebenes Bildsegment
in eine (potentiell leere) Menge von rechteckigen Kacheln von fester
aber beliebiger Größe (z. B.
Kacheln mit Kantenlänge
n, m = 8), die in einem nachfolgenden Schritt jeweils mit einer
individuellen, Markierungs-Textur (Muster) versehen werden.
-
Zunächst wird
die Raster-Matrix gegen den Uhrzeigersinn rotiert, so dass eine
bevorzugte Richtung (z. B. die Nordrichtung) auf die Abszisse der Raster-Repräsentation
ausgerichtet ist. Dann wird wiederholt eine zusammenhängende horizontale
Folge von n Matrix-Elementen innerhalb des Bildsegments gesucht
und anschließend
eine vertikale Folge von m Elementen für jedes Element der horizontalen Folge
innerhalb des Bildsegments gesucht.
-
Der
vorgenannte Algorithmus stellt sicher, dass eine Menge von nicht überschneidenden
(aber nicht notwendig zusammenhängenden)
Kacheln der Größe n × m zur
Verfügung
steht, in denen jeweils Markierungen angebracht werden können.
-
Es
sei hierbei angemerkt, dass die Wahl rechteckiger Tesselierungen
nicht notwendig für
die Ausführung
des Verfahrens ist. Das Verfahren lässt sich insbesondere mit allen
regulären
Tesselierungen (auch aperiodische oder Penrose-Tesselierungen) durchführen. Reguläre Tesselierungen
aber aufgrund der einfacheren Wiederfindung der Markierung zu bevorzugen.
-
In
jede der mit einem Verfahren wie zuvor beschriebenen erhaltenen
Kacheln wird eine Textur eingebracht, deren Inhalt in Abhängigkeit
von Kapazitäts-
und Robustheitsanforderungen über
mehrere Kacheln konstant gehalten werden kann. Alternativ oder zusätzlich können über mehrere
Kacheln verschiedene Markierungen in ein Bildsegment eingebracht
werden.
-
Für das einbringen
der Markierung kann eine idealisierte kryptographische Hashfunktion
H verwendet werden, z. B. gemäß einem
oder mehreren der Algorithmen SHA-1, SHA-256, oder RIPE-MD, die
eine Avalanche-Eigenschaft aufweisen.
-
Um
eine Herleitung des Wasserzeichens durch Dritte verhindern zu können, kann
ein geheimer Schlüssel
beim Einbringen der Markierung verwendet werden. Dieser Schlüssel sollte
zur Vermeidung von Sequenz-Angriffen mit einem Nonce oder Zeitstempel
verknüpft
sein.
-
Der
Schlüssel
oder eine mit dem Schlüssel verschlüsselte Ausgangsinformation
wird unter Anwendung der Hashfunktion in ein Muster umgewandelt,
welches zur Markierung in die Bilddaten eingebracht wird. An Stelle
des wiederholten Einbringens von Mustern kann eine irreguläre Textur
erzeugt werden. Dies kann z. B. durch wiederholte Anwendung einer
Hashfunktion erfolgen.
-
Die
Wiederfindung der Markierung erfordert abhängig von den Verarbeitungsschritte,
die seit dem Einbringen der Markierung vorgenommen wurden, eine
Reihe von Bildverarbeitungsschritten.
-
Insbesondere
beinhalten die Bildverarbeitungsschritte die Registrierung der Matrix,
gefolgt von einer erneuten Segmentierung zum Auffinden der Bildsegmente.
Die Wiederfindung kann sowohl blind als auch nicht-blind erfolgen.
Für den
Fall einer blinden Wiederfindung werden wiederholte Autokorrelationen über die Segmentierung
durchgeführt.
Da dies verhältnismäßig aufwändig ist,
wird im Folgenden eine nicht-blinde Markierung beschrieben.
-
Die
Registrierung kann durch einen Abgleich der Segmentgrenzen und die
Anwendung einer affinen Transformation ausgehend von je drei identifizierten
Punkten in den ursprünglichen
Bilddaten einerseits und im zu untersuchenden Bildsegment andererseits
erfolgen. Sofern durch nichtlineare Transformationen nicht zu große Rundungsfehler
eingeführt
wurden, können
hierdurch auch nichtlineare Transformationen invertiert werden.
-
Um
eine Wiederfindung auch nach Rundungsfehlern und Verschiebungen
gewährleisten
zu können,
kann als Zwischenschritt eine Kachel mittels einer Autokorrelation
identifiziert und abgeglichen werden.
-
Dies
erlaubt die Identifikation von Perioden im Raster und, sofern ein
wie zuvor beschriebenes Markierungsmuster vorhanden ist, kann dieses
analog zum oben beschriebenen Vorgang wiederum anhand von drei korrelierten
Koordinatenpunkten wiedergefunden werden.
-
Für blinde
Wiederfindung erfordert dies die Annahme, dass die lokale Umgebung
um ein Element des Markierungsmusters homogen (nach Binarisierung)
ist und einen Vergleich mit der lokalen Umgebung gestattet.
-
Sofern
die vor der Wiederfindung und Registrierung angewandeten Transformationen
keine Beschneidung des vorliegenden Segmentes beinhalteten, kann
der oben beschriebene Tesselierungs-Algorithmus zum Auffinden der
Kacheln angewendet werden.
-
Eine
Wiederfindung eines gegebenen (direkt erhaltenen oder aus Schlüsselmaterial
für eine
Position berechneten) Musters für
eine Kachel gilt in dem Ausführungsbeispiel
dann als erfolgreich, wenn alle Punkte des Musters nach den vorgenannten
Schritten wiedererkannt wurden. Für wiederholte Markierungen über mehrere
Kacheln einer Tesselierung können
zudem Wahrscheinlichkeiten von Fehlerkennungen berechnet werden.