BRPI1012480B1 - Método privado e semi-público de marcas d'água raster em mapas vetoriais - Google Patents

Método privado e semi-público de marcas d'água raster em mapas vetoriais Download PDF

Info

Publication number
BRPI1012480B1
BRPI1012480B1 BRPI1012480-2A BRPI1012480A BRPI1012480B1 BR PI1012480 B1 BRPI1012480 B1 BR PI1012480B1 BR PI1012480 A BRPI1012480 A BR PI1012480A BR PI1012480 B1 BRPI1012480 B1 BR PI1012480B1
Authority
BR
Brazil
Prior art keywords
matrices
watermark
vector map
vector
marked
Prior art date
Application number
BRPI1012480-2A
Other languages
English (en)
Inventor
Douglas Aurélio Marques
Karina Mochetti De Magalhães
Ricardo Dahab
Original Assignee
Universidade Estadual De Campinas - Unicamp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Universidade Estadual De Campinas - Unicamp filed Critical Universidade Estadual De Campinas - Unicamp
Priority to BRPI1012480A priority Critical patent/BRPI1012480B8/pt
Publication of BRPI1012480A2 publication Critical patent/BRPI1012480A2/pt
Publication of BRPI1012480B1 publication Critical patent/BRPI1012480B1/pt
Publication of BRPI1012480B8 publication Critical patent/BRPI1012480B8/pt

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0051Embedding of the watermark in the spatial domain

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

método privado e semi-público de marcas d'água raster em mapas vetoriais. a presente invenção trata-se de um método privado de inserção e detecção de marcas d'água raster em mapas vetoriais (rawvec) e um método semi-público de inserção e detecção de marcas d'água raster em mapas vetoriais (sb-rawvec). a invenção traz vantajosamente uma proposta de métodos robustos de marca d'água para mapas vetoriais que utilizam informações específicas do mapa vetorial para inserir uma imagem raster no domínio espacial do mapa. além de serem específicos para mapas vetoriais são robustos a diversos ataques, possuem um bom controle da qualidade do mapa vetorial marcado e inserem uma imagem raster com marca d'água ao invés de uma sequência binária, tornando a verificação da marca d'água extraída mais completa, já que esta pode ser feita tanto por algorítmos probabilísticos como pelo olho humano. a utilização de métodos para identificar a autoridade e posse de imagens raster é essencial para empresas especializadas na tomada de imagens aerofotogramétricas, na produção de mapas e plantas destinadas a planejamento territorial e a projetos de engenharia

Description

MÉTODO PRIVADO E SEMI-PÚBLICO DE MARCAS D'ÁGUA RASTER EM MAPAS VETORIAIS Campo da Invenção
A presente invenção trata-se de um Método privado de inserção e detecção de marcas d’água raster em mapas vetoriais (RAWVec) e um Método semi-público de inserção e detecção de marcas d’água raster em mapas vetoriais (SB-RAWVec). A principal vantagem dos métodos RAWVec e SB-RAWVec é a utilização de uma imagem raster ou bitmap como marca d’água ao invés de uma sequência binária. Desta forma, utilizar um método para identificar a autoridade e posse de tais imagens é essencial para empresas especializadas na tomada de imagens aerofotogramétricas, na produção de mapas e plantas destinadas a planejamento territorial e a projetos de engenharia.
Fundamentos da Invenção
Nos últimos anos marcas d’água em mapas vetoriais têm recebido maior atenção, especialmente devido à popularidade dos Sistemas de Informação Geográfica (GIS) e da utilização de dados espaciais na Web. Tais imagens possuem produção cara, mas podem ser reproduzidas facilmente.
Alguns métodos de marca d’água são desenvolvidos para sinais. Neste caso, o dado que será protegido pode ser um áudio, um video ou uma imagem, que será reinterpretado como um sinal. O documento de patente US6408082 (Rhoads, Geoffrey Β e Sharma, Ravi K., Watermark detection using a fourier mellin transform, 30/11/1999) descreve um método somente de detecção de marcas d’água através de correlação entre sinais, sendo possível encontrar os parâmetros de um ataque de transformação, como rotação, translação e escalonamento. O método descrito no documento de patente CA2276378 (Miller Matthew L e Cox Ingermar J, Robust Digital Watermarking, 26/04/2000) é baseado na Transformada Discreta de Cosseno (DCT) e em domínio espacial. Durante a detecção é possível utilizar a DCT para distorções no sinal e o domínio espacial para encontrar distorções geométricas. Tais métodos não são específicos para mapas vetoriais, e por serem muito gerais, não levam em conta fatores específicos de mapas vetoriais, como os dados espaciais do mapa. Os Métodos RAWVec e SB-RAWVec ora apresentados como invenção são baseados em domínio espacial e permitem parametrização da distorção a ser inserida no mapa vetorial, controlando o erro inserido no mapa e, portanto, a qualidade do mapa vetorial resultante.
Alguns métodos de marca d’água em mapas vetoriais são encontrados no estado da técnica: Um método privado, baseado no domínio espacial, é descrito por Ohbuchi et al. (IEEE Conference on Multimedia and Expo, 1-4, 2002). O método divide o mapa vetorial em blocos e em cada bloco um bit da marca d’água é inserido de forma aditiva, o qual o torna robusto contra ataques de transformação, remoção de vértices, adição de ruído aleatório, mas é vulnerável a ataques de cropping. Um método publico baseado no domínio espacial é apresentado por Voigt et al. (SPIE, Security and watermarking of Multimedia Content, 621-628, 2002) no qual um dado multibit é inserido como marca d’água o que lhe confere somente robustez contra adição de ruído aleatório, sendo vulnerável a ataques de transformação e a adição ou remoção de dados. Outro método público, baseado no domínio espacial, é descrito por Kang et al. (IEEE Computer Society, 234-236, 2001). O mapa vetorial é dividido em blocos, e para cada bloco é usada uma máscara que possui tamanho arbitrário. Cada máscara é dividida em dois triângulos que são deslocados de acordo com o bit da marca d’água. Apesar de ser robusto contra adição de ruído aleatório e reordenação de objetos, o método é vulnerável contra ataques de transformação e o erro adicionado ao mapa vetorial não pode ser controlado. Em Ohbuchi et al. (GRIN’01: No description on Graphics interface 2001, 9-17, 2001) encontramos a descrição de um método privado, baseado em domínio de mesh-spectrum. O método original aborda somente imagens em 3D, mas em Ohbuchi et al. (SMI ’03: Proceedings of the Shape Modeling International, 216-226, 2003) o método é adaptado e expandido para imagens 2D. Tais métodos são robustos contra ataques de transformação, adição de ruído aleatório, cropping e adição de vértices. O método público descrito em Pu et al. (ICPR ’06: Proceedings of the 18th International Conference on Pattern Recognition, 930-933, 2006) calcula uma representação do mapa vetorial, criando uma matriz adjacente. A partir dessa matriz os pontos são classificados e selecionados em grupos, para então, serem marcados. Este método é robusto contra cropping e adição de ruído aleatório. Diferentemente dos métodos já descritos, os métodos RAWVec e SB-RAWVec ora apresentados mostram-se robustos contra diversos ataques, tais como ataques de transformação, ataques de cropping, ataques de inserção e alteração na ordem de objetos, ataques de inserção de ruído aleatório e, principalmente, ataques combinados.
Um exemplo de método público baseado na Transformada Discreta de Fourier (DFT), é descrito por Solachidis et al. (ICIP00, 9-12, 2000). Tal método é robusto contra transformações, reordenação de dados e adição de ruído aleatório. Este tipo de método depende de um grande número de vértices para ser confiável, e sua carga computacional cresce muito rapidamente com o número de vértices. Os métodos RAWVec e SB-RAWVec ora apresentados não possuem este tipo de dependência e sua carga computacional é estável e baixa.
No documento de patente US6813368 (Khanna, Sanjeev e Zane Jr., Francis Xavier, Methods and apparatus for watermarking maps and other structured data, 07/11/2000) a marca d’água só é inserida em um sub-conjunto pré-definido de pontos do mapa vetorial, e não no mapa vetorial inteiro. Neste caso, o mapa vetorial utilizado deve ser mais simples, sendo representado somente como um grafo, com vértices e arestas. O mapa vetorial utilizado pelos Métodos RAWVec e SB-RAWVec ora apresentados não precisa ter tal restrição. Qualquer tipo de mapa, inclusive mapas coloridos, podem ser protegidos por ambos os métodos.
Um método que utiliza uma função de Hash durante a inserção e remoção da marca d'água pode ser encontrado no documento de patente CN101464995 (Wei Wang e Baiyan Wu, Digital watermarking method for two-dimension vector space data based on spacing topological, 22/12/2008). O método utiliza correlação entre vários objetos posicionados no mesmo ponto do mapa, criando camadas para o mapa original. O método descrito no docuemnto de patente US20080123154 (Brundage, Trent e Lofgren, Neil, Digital Watermarking Maps and Signs, and Related Navigational Tools, 23/07/2007) insere a marca d’água em locais específicos do mapa vetorial e não no arquivo inteiro. Ele torna possível a inserção de mais de uma marca d’água no mesmo mapa, o que pode torná-lo vulnerável a ataques de remoção. Dois métodos robustos e específicos para marca d’água vetorial são encontrados nos documentos de patente CN101295336 (Ping Zou, Copyright protection method of navigation electronic map, 03/01/2007) e CN101246586 (Hongsheng Zhang e Yan Li, Vector map watermarking method based on curve segmentation, 22/02/2008). O primeiro divide o mapa vetorial em retângulos e insere a marca d’água em cada retângulo separadamente. A marca d’água é inserida repetidamente, o que cria redundância e melhora a extração e detecção da marca d’água. Já o segundo insere a marca d’água baseado-se na curva de partição do mapa vetorial, garantindo a qualidade do mapa vetorial marcado e a robustez contra diversos tipos de ataques. Nestes últimos métodos apresentados a marca d’água inserida não é uma imagem, assim é necessário um algoritmo específico para comparar a marca d’água extraída e a marca d’água original. Os Métodos RAWVec e SB-RAWVec ora apresentados utilizam uma imagem raster como marca d’água, permitindo que a verificação seja realizada tanto por um método computacional quanto por um observador humano.
Diante de todo estado da técnica a presente invenção traz vantajosamente uma proposta de métodos robustos de marca d’água para mapas vetoriais que utiliza informações específicas do mapa vetorial para inserir uma imagem raster no domínio espacial do mapa. Assim, os métodos além de serem específicos para mapas vetoriais, são robustos a diversos ataques, possuem um bom controle da qualidade do mapa vetorial marcado e inserem uma imagem raster como marca d’água ao invés de uma sequência binária, tornando a verificação da marca d’água extraída mais completa, já que esta pode ser feita tanto por algoritmos probabilísticos como pelo olho humano.
Breve Descrição da Invenção
A presente invenção refere-se a um método privado de marca d’água em mapas vetoriais (RAWVec) compreendendo um estagio de inserção e um de detecção. E um objeto adicional um método semi-público de marca d’água em mapas vetoriais (SB-RAWVec) compreendendo um estágio de inserção e um de detecção.
O primeiro estágio, denominado de estágio de inserção, do método privado de marcas d’água em mapas vetoriais (RAWVec) marca o mapa vetorial com a imagem raster deslocando as coordenadas de suas estruturas geométricas. Já o segundo estágio, denominado de detecção, de tal método usa o mapa vetorial original para extrair a imagem raster e compará-la com a marca d’água original.
No método semi-público de marcas d’água em mapas vetoriais (SB-RAWV dois mapas vetoriais marcados são criados, um deve ser publicado como mapa vetorial marcado, chamado de mapa vetorial marcado para a publicação, o outro deve ser usado somente durante o estágio de detecção, chamado de mapa vetorial marcado para a detecção. O estágio de detecção não utiliza o mapa vetorial original e uma nova constante é acrescentada para ajudar no controle do deslocamento máximo de um pixel.
A principal diferenciação dos métodos RAWVec e SB-RAWVec é uma imagem raster ou bitmap como marca d’água, ao invés de uma seqüência binária, como nos métodos existentes. A utilização de uma imagem raster permite que mais informações visuais sejam marcadas no mapa, e possibilita uma detecção mais completa, que utiliza, alem de algoritmos proba-bilísticos, uma verificação realizada pelo olho humano. Alem disso, ambos os métodos são feitos especialmente para mapas vetoriais, característica muito rara em métodos de marcas d’água em geral, que direcionam seus métodos para vídeos, áudios e imagens bitmaps.
Breve Descrição das Figuras
  • • Figura 01: Diagrama do Estágio 1 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec, onde M é o mapa vetorial original, Ax e Ay, Bx e By são matrizes, R é a marca d;água representada por imagem raster, E ê a imagem raster R redimensionada, C é uma constante real positiva eM'éo mapa vetorial marcado.
  • • Figura 02: Diagrama do Estágio 2 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec, onde M é o mapa vetorial original, N é o mapa de prova, Ax, Ay, Bx, By, Dx e Dy são matrizes, R é a marca d’água representada por imagem raster, E é a imagem raster R redimensionada, C é uma constante real positiva, M' é o mapa vetorial marcado, D é imagem raster extraída e redimensionada, S é a marca d’água extraída e T é a transformação acha pelo Algortimo de Point Pattern Matching.
  • • Figura 03: Diagrama do Estágio 1 do Método Semi-Público de Marcas d’Água em Mapas Vetoriais SB-RAWVec, onde M é o mapa vetorial original, E1, E2, Ax, Ay, B1x, B1y, B2x e B2y são matrizes, R é a marca d’água representada por imagem raster, E é a imagem raster R redimensionada, C e I são constantes reais positivas, M1 é o mapa vetorial marcado para publicação e M2 é o mapa vetorial marcado para detecção.
  • • Figura 04: Diagrama do Estágio 2 do Método Semi-Público de Marcas d’Água em Mapas Vetoriais SB-RAWVec, onde N é o mapa vetorial de prova, Bx, By, B'x, B'y, B2x, B2y, B2x, B2y, Dx e Dy são matrizes, R é a marca d; água representada por imagem raster, E é a imagem raster R redimensionada, C é uma constante real positiva, D é imagem raster extraída e redimensionada, S é a marca d’água extraída e M2 é o mapa vetorial marcado para detecção.
  • • Figura 05: Exemplo de aplicação da função que modifica uma matriz quadrada w(A).
  • • Figura 06: Exemplo de aplicação da função que cria a representação de pontos v().
  • • Figura 07: Um exemplo de Point Pattern Matching, onde q é uma representação de p após uma tranformação T.
  • • Figura 08: Criação da imagem raster E, a partir da imagem raster R redimensionada.
  • • Figura 09: Mapa Vetorial Original 1 - 12540 pontos.
  • • Figura 10: Mapa Vetorial 1 marcado pelo Método RAWVec, com C = 0.027.
  • • Figura 11: Mapa Vetorial 1 marcado pelo Método SB-RAWVec, com C = 0.027 e I = 175.
  • • Figura 12: Mapa Vetorial Original 2 - 5149 pontos.
  • • Figura 13: Mapa Vetorial 2 marcado pelo Método RAWVec, com C = 0.05.
  • • Figura 14: Mapa Vetorial 2 marcado pelo Método SB-RAWVec, com C = 0.05 e I = 200.
  • • Figura 15: Mapa Vetorial Original 3 - 2146 pontos.
  • • Figura 16: Mapa Vetorial 3 marcado pelo Método RAWVec, com C = 0.042.
  • • Figura 17: Mapa Vetorial 3 marcado pelo Método SB-RAWVec, com C = 0.042 e I = 100.
  • • Figura 18: Marca d' água usada no exemplo 1.
  • • Figura 19: Marca d’água usada no exemplo 2.
  • • Figura 20: Marca d’água usada no exemplo 3.
  • • Figura 21: Mapa Vetorial marcado pelo Método RAWVec.
  • • Figura 22: Mapa Vetorial marcado pelo Método RAWVec e atacado com remoção de 75% dos pontos.
  • • Figura 23: Mapa Vetorial marcado pelo Método SB-RAWVec.
  • • Figura 24: Mapa Vetorial marcado pelo Método SB-RAWVec e ata-cado com remoção de 75% dos pontos.
  • • Figura 25: Marca d’água usada no exemplo 4.
  • • Figura 26: Marca d’água usada no exemplo 5.
  • • Figura 27: Marca d’água usada no exemplo 6.
  • • Figura 28: Marca d’água usada no exemplo 7.
Descrição Detalhada da Invenção
Imagens geralmente são armazenadas no computador como uma matriz, em que cada elemento representa a cor ou intensidade de um pixel. Essas imagens são conhecidas como bitmap ou raster. Mapas vetoriais são imagens representadas por estruturas geométricas, como pontos e círculos, portanto são imagens facilmente escaláveis, que possuem um tamanho menor e são facilmente atualizadas. Uma marca d’água é uma informação adicionada de forma imperceptível num dado digital, geralmente com o objetivo de combater cópia e distribuição ilegais de arquivos multimídia como imagens, vídeos e áudio.
A presente invenção refere-se a um método privado de marca d’água em mapas vetoriais compreendendo um estágio de inserção e um de detecção. É um objeto adicional um método semi-público de marca d’água em mapas vetoriais compreendendo um estágio de inserção e um de detecção.
Na presente invenção consideram-se as seguintes definições: mapa vetorial original denominado M, mapa vetorial marcado denominado M', mapa a ser testado denominado N, mapa vetorial marcado para publicação denominado M1, mapa vetorial marcado para detecção denominado M2) imagem raster usada de marca d’água denominada R, imagem raster redimensionada denominada E, imagem raster representando a marca d’água extraída denominada S, imagem raster extraída e redimensionada denominada D, constates reais positivas denominadas CeI, representação de pontos denominadas P e Q, matrizes denominadas Ax, Ay, Bx, By, B'x, Βy' ,Ε1, E2, Β1χ, Bly, B2x, B2y, B2x , B'2y, função que cria a representação de pontos denomianada v(), função que modifica uma matriz quadrada denominada w(), transformações utilizada como ataque denominada T.
Tanto o Método privado quanto o semi-público ultilizam duas funções w() e v() e um algoritmo de Point Pattern Matching.
Funções Auxiliares
A função w() modifica a matriz quadrada AnXn da seguinte forma: seja A uma matriz quadrada de ordem ra; então Β = w(A) tem bij = auv, onde u = n — i + 1 e v = n — j + 1.
Seja A = (aij) uma matriz quadrada de ordem ra. Definimos a função w(), tal que w(A) — (Wij) = (auv) é uma matriz quadrada de ordem ra, onde u = n - i+lev = n — j + 1.
A Figura 5 mostra um exemplo de aplicação da função w().
É importante observar algumas propriedades importantes da função w():
  • (a) Propriedade 1: w(w(A)) = A
  • (b) Propriedade 2: c * w(A) = w(c * A)
  • (c) Propriedade 3: w(A) + w(B) = w(A + Β)
A marca d’agua usada nos dois métodos é uma imagem bitmap, ou imagem raster, que é representada por uma matriz bi-dimensional, cujos elementos armazenam as informações de cor e intensidade de cada pixel. O mapa vetorial também deve ser representado como uma matriz através da função v(), descrita a seguir.
A função v() calcula a representação por pontos P de um mapa vetorial M. Mapas vetoriais são formados por estruturas geométricas e, baseado nos pontos dessas estruturas geométricas, é possível criar uma representação por pontos P = v(M). Para tal, cada estrutura deve ser decomposta em pontos segundo o seu tipo:
  • • Objetos pontuais: Estruturas descritas por pontos, como símbolos e textos. Neste caso as coordenadas de cada ponto devem ser armazenadas.
  • • Objetos lineares: Estruturas descritas por uma seqüência de pontos, como linhas e polígonos. As coordenadas de cada ponto devem ser armazenadas em seqüência.
  • • Objetos parametrizados: Estruturas descritas por parâmetros, como círculos e elipses. Neste caso o objeto pode ser segmentado em alguns pontos que são armazenados; ou os pontos principais são armazenados. Se o objeto for um círculo, por exemplo, podem ser armazenados alguns pontos do círculo, ou somente o seu centro.
Cada coordenada deve possuir uma referência ao seu objeto original, pois somente assim é possível reconstruir cada estrutura do mapa vetorial a partir da representação por pontos. Um exemplo de aplicação da função v() é mostrado na Figura 6.
O Algoritmo de Point Pattern Matching
Na invenção ora apresentada, utilizamos o algoritmo de Point Pattern Matching encontrado em Wamelen et al. (Technical report, Louisiana State University, 1999), que é descrito pelo Algoritmo 1 abaixo. Este algoritmo já é conhecido do estado da técnica, sendo normal mente utilizado em satélites para medir sua posição e orientação.
O i-ésimo ponto em P = v(M) corresponde ao í-ésimo ponto em Q = v(M'). Assim, se o mapa vetorial N é realmente o mapa vetorial M' então o í-ésimo ponto em v(M) deve corresponder ao i-ésimo ponto em P = v(N). Entretanto, o mapa vetorial N pode ser obtido a partir de uma transformação T aplicada em M' e a relação entre os pontos pode não ser tão simples. Um algoritmo de Point Pattern Matching acha essa relação entre os pontos e retorna uma transformação T que pode ter sido utilizada em M' para produzir N.
Algoritmo 1 Point Pattern Matching
ENTRADA: representações por pontos P = v(N) e Q = v(M').
SAÍDA: transformação T e duas representações por pontos Lp e Lq.
1. Obter os k vizinhos mais próximos (KNN) para cada ponto em P e em Q usando a Triangulação de Delaunay
2. global ← falso;
3. enquanto global = falso 3.1. para cada ponto p εP
3.1.1 Obter o ponto mais próximo q εQ
3.1.2 Achar (af,bf), os vizinhos mais distan- tes do KNN, onde af ε KNN(p) e bf εKNN(q)
3.1.3 Calcular a transformação local T que, usada em (p, af), produz (q, bf)
3.1.4 se T(p, a) = (q, b) para pelo menos p k pares (a, b) então
3.1.4.1 se T é uma transformação global então
3.1.4.1.1 global ← verdadeiro;
3.1.4.1.2 retornar (T);
O algoritmo de Point Pattern Matching acha uma transformação que produz (q, b) a partir de (p,a), onde ρ,α  P e q,b £ Q. Tal transformação é testada em um conjunto restrito de pontos; caso ela seja adequada para esse conjunto de pontos, ela é finalmente verificada para todos os pontos. O conjunto menor de pontos consiste no conjunto dos k vizinhos mais próximos (KNN) de cada ponto em P e Q. Portanto, α  KNN(p) e b  KNN(q) são os vizinhos mais distantes de p e q, respectivamente. O cálculo dos k vizinhos mais próximos de um ponto pode ser realizado usando a Triangulação de Delaunay, como descrito em ”On the randomized construction of the de-launay tree” (Jean-Daniel Boissonnat e Monique Teillaud, Theor. Comput. Sci., 112(2):339-354, 1993).
A próxima etapa consiste em achar uma transformação local T que, ao ser aplicada em a, produz b, e que ao ser aplicada em p, produz q; ou seja, T(a) = b eT(p) = q, onde:
Figure img0001
e
tx = qx — pxs cos θ + pys sin θ e ty = qy — pxs sin θ — pys cos θ.
Devemos, então, verificar se tal transformação produz um subconjunto de KNN(q), quando usada em um subconjunto de KNN(p), com pelo menos pk pontos. Esses dois subconjuntos são duas representações por pontos, chamadas La e Lb, respectivamente.
Agora, é necessário verificar se a transformação local T é uma transformação global, calculando a transformação Τ' e aplicando-a em cada ponto q ε Q. Se T'(q) produz um ponto p ε P, então p e q devem ser incluídos nas duas listas de pontos Lp e Lq, respectivamente.
Figure img0002
Figure img0003
Se Lp e Lq possuem pelo menos pt pontos (com t sendo o tamanho de P e Q), a transformação T é global; senão, outro par (p, q) e outra transformação local T devem ser encontrados. Se todos os pontos em P e Q forem usados e nenhuma transformação global foi encontrada, então N não foi produzido a partir de M' e, portanto, não representa um mapa marcado.
O Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec
O Estágio 1 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec marca o mapa vetorial com a imagem raster deslocando as coordenadas de suas estruturas geométricas. Já o Estágio 2 de tal método usa o mapa vetorial original para extrair a imagem raster e compará-la com a marca d’água original.
Estágio 1: Inserção
Entrada: a imagem raster R, o mapa vetorial Mea, constante C.
Saída: o mapa vetorial marcado M'.
  • (a) Calcular a representação por pontos do mapa vetorial.
  • (b) Construir as matrizes Ax e Ay a partir da representação por pontos.
  • (c) Redimensionar a imagem raster R, criando a imagem raster E.
  • (d) Calcular as matrizes Bx e By a partir da constante real C, da imagem raster E e das matrizes Ax e Ay.
  • (e) Construir o mapa vetorial marcado M' a partir das matrizes Bx e By.
O Estágio 1 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec insere uma imagem raster R no mapa vetorial M produzindo o mapa vetorial marcado M'. Para isso uma constante real positiva C é usada; seu principal objetivo é controlar o deslocamento máximo de um pixel, diminuindo, assim, a perturbação inserida no mapa vetorial gerado. A Figura 1 representa um diagrama mostrando as cinco etapas desse estágio.
As duas primeiras etapas (a) e (b) do estágio criam duas matrizes -Ax para os valores da coordenada x e Ay para os valores da coordenada y - a partir da representação por pontos P = v(M). Seja t o número de pontos armazenados em P, n a ordem das matrizes e pi = (xi, yi) os pontos armazenados em P; então
n = [√t],
(Ax)ij Xn(i-1) e (Ay)ij yn(i-1)+j
A etapa (c) redimensiona a imagem raster R, criando uma nova imagem raster E que possui η x n pixels, como ilustra a Figura 8 abaixo.
Recomenda-se que a imagem R tenha dimensões inferiores a n x n, para que a marca d’água possa ser replicada. Dessa forma, cria-se redundância sobre cada pixel da marca, o que é fundamental para a restauração dos trechos mais prejudicados por ataques (um pixel pode ter sido alterado em uma das cópias, mas ainda assim manter seu valor original em outras).
Usando as matrizes Ax e Ay, que representam o mapa vetorial M, e a matriz E, que representa a imagem raster, é possível inserir E no mapa vetorial M. Assim, na etapa (d), as duas matrizes Bx e By são calculadas da seguinte maneira:
Bx = CE + Ax,eBy = Cw(E) + Ay.
Finalmente, o mapa vetorial marcado M' é construído a partir das matrizes Bx e By e da estrutura criada pela função v().
Estágio 2: Detecção
Entrada: a imagem raster R, o mapa vetorial M, a constante C e o mapa vetorial a ser testado N.
Saída: a marca d’água S.
  • (a) Inserir a marca d’água R no mapa vetorial usando o Estágio 1 do Método Privado de Marcas d’Agua em Mapas Vetoriais RAWVec, retornando o mapa vetorial marcado M’.
  • (b) Calcular a representação por pontos P do mapa vetorial marcado e a representação por pontos Q do mapa vetorial de prova.
  • (c) Comparar as representações por pontos P e Q usando um algoritmo de Point Pattern Matching, retornando a transformação T.
  • (d) Construir as matrizes Ax e Ay a partir da representação de pontos do mapa vetorial, e Bx e By a partir da representação de pontos Q com a transformação removida.
  • (e) Calcular as matrizes Dx e Dy a paritr das matrizes Bx, By, Ax, Ay e da contante real C.
  • (f) Construir a marca d’água extraída redimensionada D a partir das matrizes Dx e Dy.
  • (g) Redimensionar a marca d’água D para o tamanho da marca d’água original R, retornando a marca d’agua extraída S.
O Estágio 2 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec consiste na extração e comparação da marca d’água extraída S com a marca d’água original R. A marca d’água S é extraída do mapa vetorial de prova N, ou seja, o mapa vetorial que será testado, usando a constante C, a marca d'água original R e o mapa vetorial original M. Portanto, esse método não é um método público. As etapas básicas desse estágio estão descritos no diagrama da Figura 2.
A etapa (a) do Estágio 2 consiste em usar o Estágiol do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec para inserir a marca d’água R no mapa vetorial M, resultando no mapa vetorial marcado M'. Esse mapa vetorial marcado deve ser comparado com o mapa vetorial de prova N, usando o Algoritmo de Point Pattern Matching de Wamelen et al. (Technical report, Louisiana State University, 1999). Assim, qualquer transformação T usada em um ataque será encontrada e removida do mapa vetorial N.
Desta forma, podemos, agora, construir quatro matrizes: Ax e Ay a partir de v(M) e Bx e By a partir de T-1(N) (ou seja, o conjunto de pontos de P = v(m') que são pré-imagens de pontos de Q = v(N) por T). As matrizes Ax e Ay representam o mapa vetorial original e as matrizes Bx e By representam o mapa vetorial de prova que pode corresponder ao mapa vetorial M'. Assim, a marca d’água presente no mapa vetorial N deve ser calculada e comparada com a imagem usada originalmente. A marca d’água D é calculada usando as quatro matrizes Ax, Ay, Bx e By, a constante C e a função w da seguinte maneira:
Figure img0004
Por fim, a marca d’água D, de tamanho n x n, deve ser redimensionada para o tamanho da marca d’água original R, produzindo a marca d’água S. As marcas d’água S e R podem ser comparadas usando um algoritmo probabilístico e/ou a avaliação do ponto de vista do olho humano. De acordo com o resultado dessa comparação podemos concluir se o mapa vetorial de prova N corresponde ao mapa vetorial marcado M' atacado.
O Método Semi-Público de Marcas d’Água em Mapas Vetoriais SB-RAWVec
No Método Semi-Público de Marcas d’Água em Mapas Vetoriais SB-RAWVec, dois mapas vetoriais marcados são criados, um deve ser publicado como mapa vetorial marcado, chamado de mapa vetorial marcado para a publicação, o outro deve ser usado somente durante o estágio de detecção, chamado de mapa vetorial marcado para a detecção. O estágio de detecção não utiliza o mapa vetorial original e uma nova constante I é acrescentada para ajudar no controle do deslocamento máximo de um pixel.
Estágio 1: Inserção
Entrada: a imagem raster R, o mapa vetorial M e as duas constantes C e I.
Saída: o mapa vetorial marcado para publicação M1 e o mapa vetorial marcado para detecção M2.
  • (a) Calcular a representação por pontos do mapa vetorial.
  • (b) Construir as matrizes Ax e Ay a partir da representação por pontos.
  • (c) Redimensionar a imagem raster R, criando a imagem raster E.
  • (d) Decompor a matriz E em duas matrizes aleatórias E1 e E2.
  • (e) Calcular B1x e B1y a partir das matrizes Ax, Ay e E1 e da constante C.
  • (f) Calcular B2x e B2y a partir das matrizes Ax, Ay e E2 e da constante C.
  • (g) Construir o mapa vetorial marcado para publicação M1 usando as matrizes B1x e B1y.
  • (h) Construir o mapa vetorial marcado para detecção M2 usando as matrizes B2x e B2y.
A maior diferença do Estágio 1 do Método Semi-Público de Marcas d’Água em Mapas Vetoriais SB-RAWVec com o Estágio 1 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec é a etapa (d), na qual a imagem raster é dividida em duas matrizes, resultando em dois mapas vetoriais marcados. A Figura 3 mostra um diagrama desse estágio.
As três primeiras etapas (a), (b) e (c) são idênticas ao Estágio 1 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec. A representação por pontos P = v(M) é criada a partir do mapa vetorial M, assim como as duas matrizes Ax e Ay, que representam as coordenadas x e y, respectivamente. Essas duas matrizes devem ser quadradas e devem ter o mesmo tamanho. Na etapa (c), a imagem raster R é redimensionada gerando uma matriz quadrada E com o mesmo tamanho de Ax e Ay.
As matrizes Ax e Ay representam as posições dos objetos no mapa vetorial, e a matriz E representa a cor de cada pixel na imagem raster.
A etapa (d) representa a criação de duas matrizes E1 e E2, usando a constante inteira positiva I e a matriz E de tal forma que E = E1 + E2 e 0 ≤ z ≤ I, para cada z pertencente a E1. Esta etapa é baseada em Naor et al. (Lecture Notes in Computer Science, 950:1-12, 1995), em que uma imagem é dividida em duas, podendo ser recriada somente pela superposição das duas partes. No caso do nosso método, a imagem pode ser reconstruída somente se as duas partes forem adicionadas. Note que uma das imagens, a imagem E2, não pode ser visualizada corno a imagem original já que ela pode conter elementos negativos.
Com as matrizes Ax, Ay e Ex é possível obter as duas matrizes B1x e B1y e, portanto, construir o mapa vetorial marcado para publicação M1:
B1x = Ax + CE1, e B1y = Ay + Cw(E1).
E, com as matrizes Ax, Ay e E2 é possível obter outras duas matrizes B2x e B2y e, portanto, construir o mapa vetorial marcado para detecção M2:
B2x = Ax — CE2, e B2y = Ay — Cw(E2).
Note que a soma usada no cálculo do mapa vetorial marcado para publicação Μ1 é substituída por uma subtração no cálculo do mapa vetorial marcado para detecção M2.
A perturbação inserida no mapa vetorial Μ1 pode ser controlada pelas duas constantes CeI, forçando, assim, a perturbação inserida no mapa M2; portanto, o mapa M2 só pode ser usado pelo método de detecção.
Estágio 2: Detecção
Entrada: a imagem raster R, o mapa vetorial marcado para detecção M2, a constante C e o mapa vetorial a ser testado N.
Saida: a marca d’água S.
  • (a) Calcular a representação por pontos P do mapa vetorial marcado para detecção e a representação por pontos Q do mapa vetorial a ser testado.
  • (b) Construir as matrizes B2x e B2y a partir de P, e Bx e By a partir de Q.
  • (c) Redimensionar a imagem raster R, criando a matriz E de mesmo tamanho que a matriz B2x.
  • (d) Calcular B'2x e B'2y a partir das matrizes B2x e B2y, da constante C e da imagem raster E.
  • (e) Comparar a representação por pontos obtida através das matrizes B2x e B'2y com a representação por pontos obtida através das matrizes Bx e By usando um algoritmo de Point Pattern Matching.
  • (f) Remover a transformação retornada pelo algoritmo de Point Pattern Matching das matrizes Bx e By, criando as matrizes B'x e B'y.
  • (g) Calcular as matrizes Dx e Dy a paritr das matrizes B'x, B'y, B2x, B2y e da contante real C.
  • (h) Construir a marca d’água extraída redimensionada D a partir das matrizes Dx e Dy.
  • (i) Redimensionar a marca d’água D para o tamanho da marca d’água original R, retornando a marca d’água S.
Apesar de não usar o mapa vetorial original M, o Estágio 2 do Método Semi-Público de Marcas d’Água em Mapas Vetoriais SB-RAWVec usa um algoritmo de Point Pattern Matching para detectar e remover ataques. Isto é possível devido à existência das informações do mapa original escondidas no mapa vetorial marcado para a detecção M2. O diagrama da Figura 4 mostra as etapas principais desse estágio.
As duas primeiras etapas (a) e (b) são simples; elas criam as representações por pontos e as respectivas matrizes para os dois mapa vetoriais: B2x e B2y para o mapa vetorial marcado para detecção M2 e Bx e By para o mapa vetorial a ser testado N. A primeira grande diferença entre este estágio e o Estágio 2 do Método Privado de Marcas d’Água em Mapas Vetoriais RAWVec está na etapa (d), no qual a informação escondida no mapa vetorial de detecção é obtida.
Do Estágio 1 do Método Semi-Público de Marcas d’Água em Mapas Vetoriais SB-RAWVec temos que B2x = Ax — CE2, B2y = Ay — Cw(E2) e E = E1 + E2; assim, é possível extrair a informação necessária para o Algoritmo de Point Pattern Matching da seguinte maneira:
Figure img0005
Se o mapa vetorial de prova N for uma versão alterada do mapa vetorial marcado para publicação M1, será possível compará-lo com M1 usando um algoritmo de Point Pattern Matching. Tal algoritmo achará qualquer transformação e/ou modificação que mapeie N em M1, comparando as matrizes B'2x e B'2y com as matrizes Bx and By.
A etapa (f) remove a transformação e modificações encontradas pelo algoritmo de Point Pattern Matching das matrizes Bx e By, resultando nas duas novas matrizes B'x e B'y. Agora é possível calcular a marca d’água extraída e verificar se o mapa de prova N foi roubado:
Figure img0006
Figure img0007
Se o mapa vetorial de prova N for um versão modificada do mapa vetorial marcado para publicação M1, as matrizes B'x e B'y serão equivalentes às matrizes B1x e B1y; assim:
Figure img0008
O cálculo de Dy utiliza a função w() e suas três propriedades já descritas:
Figure img0009
A matriz D deve ser redimensionada para o tamanho da marca d’água original, criando a marca d’água S. As duas imagens, R, representando a marca d'água original e S, representando a marca d’água extraída, podem ser comparadas utilizando a avaliação do ponto de vista do olho humano e/ou um algoritmo probabilístico como o coeficiente de correlação de Pearson encontrada em Yen et al. (Technical report, Los Alamos National Laboratory, 1996).
Exemplos
A presente invenção será descrita a seguir em termos de exemplos não limitativos de sua concretização preferida. Os exemplos são de execução dos dois métodos RAWVec e SB-RAWVec utilizando diversos ataques encontrados na literatura e uma execução sem nenhum ataque. Todos os exemplos foram realizados com imagens em tons de cinza como marca d água, os mapas vetoriais, no entanto, são coloridos.
Exemplo 1: Extração sem Ataques
O exemplo de concretização ora apresentado demonstra a extração de marcas d’água no caso trivial, ou seja, sem ataques, para os dois métodos apresentados. Foram realizados três testes para diferentes tamanhos de mapa vetorial.
A Tabela 1 mostra os erros absoluto e relativo em cada um dos mapas marcados mostrados anteriormente. Os erros para todos os mapas são muito baixos, mas o Método SB-RAWVec possui erros ainda mais baixos, principalmente porque utiliza duas constantes -CeI- para controlar o deslocamento máximo de um ponto.
Seja po um ponto do mapa vetorial original e pm o ponto do mapa vetorial marcado respectivo; os erros absoluto e relativo são calculados da seguinte forma:
Errabs = |Po-Pm|,
Errrel = (Errabs/po) * 100.
Figure img0010
Para este simples exemplo mostrados na Tabela 2, os valores de r e h para todos os testes mostram que os resultados no caso trivial são muito satisfatórios.
Figure img0011
Exemplo 2: Ataques Geométricos de Transformação em Marcas dÁgua
Ataques Geométricos são os mais utilizados para avaliar marcas d’água em mapas vetoriais. Eles constituem-se de ataques de transformação, como rotação e translação, de cropping, de inserção de objetos, de inserção de ruído aleatório e outros. A avaliação desses ataques para os dois métodos apresentados é realizada nas seções a seguir. Para todos os testes foram utilizados os mapas encontrados nas figuras 9, 10 e 11.
Os principais ataques de transformação consistem nas três transformações afim básicas: rotação, translação e escalonamento. Na rotação todos os objetos da figura são rotacionados em torno de um ponto, normalmente a origem; na translação, todos os objetos da figura são deslocados mantendo a mesma distância entre eles e o mesmo tamanho; e no escalonamento todos os objetos da figura aumentam ou diminuem de tamanho.
As Tabelas 3, 4 e 5 mostram os testes feitos com ataques de transformação. Os resultados para os ataques de rotação mostram que a marca d’água é reconhecível em grande parte dos ângulos testados. Diferente dos ataques de transformação, em que a imagem resultante é independente do valor do deslocamento, os ataques de rotação dependem do ângulo, pois o erro inserido na marca d’água extraída é baseado no seno e no cosseno do ângulo utilizado, que são números reais.
Assim como a transformação, o escalonamento também produz ótimos resultados, para um fator de escalonamento maior que 1. Para valores menores, ou seja, para a redução do tamanho dos objetos, a marca d’água extraída pode ter uma qualidade um pouco inferior. Isso ocorre pois, assim como os senos e cossenos, os fatores de escalonamento são representados por números reais e os arquivos utilizados no teste como mapa vetoriais representam cada ponto como inteiros. Assim, durante o ataque, uma multiplicação do valor do ponto por um número real deve ser realizada, resultando em um arredondamento que pode propagar um erro na marca d’água extraída durante a detecção. Ainda assim, as imagens resultantes são reconhecíveis.
Figure img0012
Figure img0013
Figure img0014
Exemplo 3: Ataques Geométricos de Cropping em Mar- cas d’Água
Ataques de cropping consistem em remover um conjunto de pontos e objetos do mapa. Para uma grande porcentagem de pontos removidos, é mais difícil reconhecer a marca d’água extraída, mas o mapa vetorial também é degradado, ou seja, não pode ser reutilizado.
Os testes representados na Tabela 6 mostram que a qualidade da marca d’água extraída depois de um ataque de cropping é totalmente dependente do número de pontos que foram removidos do mapa vetorial. Quando mais de 75% dos pontos são removidos, a imagem resultante é praticamente irreconhecível, mas o mapa vetorial atacado também é irreconhecível, não podendo mais ser utilizado e perdendo seu valor. As Figuras 21 e 23 mostram os mapas vetoriais das Figuras 22 e 24, respectivamente, depois de um ataque de cropping com 75% dos pontos removidos aleatoriamente. Assim, podemos considerar o resultado para esse ataque satisfatório.
Figure img0015
Exemplo 4: Ataques Geométricos de Inserção de Objetos em Marcas d’Água
Objetos pequenos ou até mesmo transparentes podem ser inseridos no mapa vetorial marcado para dificultar a detecção da marca d’água sem alterar o mapa visualmente. O algoritmo de Point Pattern Matching detecta tais objetos e os descarta durante o estágio de detecção. Nos testes realizados apresentados na Tabela 7, o número de objetos inseridos é proporcional ao número de objetos presentes no mapa vetorial.
A Tabela 7 mostra que a qualidade da marca d’água inserida é praticamente a mesma para todos os testes realizados, independentemente do número de objetos inseridos. Esse resultado é bastante satisfatório, já que pode ser possível inserir objetos com transparência nos mapas vetoriais, o que não reduzirá o valor ou a qualidade do mapa marcado. Portanto, os testes mostram que os dois métodos propostos são muito resistentes a ataques de inserção de objetos.
Figure img0016
Exemplo 5: Ataques Geométricos de Alteração na Or- dem dos Objetos em Marcas d’Água
Ataques de alteração na ordem dos objetos mantêm o mapa vetorial visualmente intacto, pois os mesmos objetos são desenhados, mas podem destruir a marca d'água extraída. Assim, é importante que o algoritmo de Point Pattern Matching encontre a verdadeira ordem dos objetos para que a marca d’água extraída possa ser reconhecida.
Da mesma maneira que os ataques de inserção, os ataques de alteração na ordem dos objetos são facilmente percebidos e removidos pelos dois métodos, resultando em imagens de ótima qualidade, independente do número de objetos reordenados, como mostram os resultados da Tabela 8. Esse resultado também é satisfatório, pois os mapas vetoriais resultantes de ataques de alteração na ordem dos objetos também mantém o seu valor e sua qualidade originais.
Figure img0017
Exemplo 6: Ataques Geométricos de Inserção de Ruído Aleatório em Marcas d’Água
Ataques de inserção de ruído aleatório consistem em adicionar um valor aleatório x, onde 0 ≤ x ≤ max a uma porcentagem dos pontos do mapa vetorial. Assim como os ataques de cropping, quanto maior a porcentagem dos pontos afetados, mais difícil é detectar a marca d’água, mas mais degradado o mapa vetorial atacado será. O valor de max utilizado nos testes abaixo é 5 mm.
O ataque de inserção de ruído aleatório afeta a imagem resultante conforme um grande número de pontos é afetado. Neste caso, o mapa vetorial atacado também possui um grande número de pontos deslocados. Assim como nos ataques de cropping, a marca d’água extraída possui boa qualidade até que 75% dos pontos sejam afetados. A Tabela 9 mostra os resultado dos testes com ataque de inserção de ruído aleatório.
Figure img0018
Exemplo 7: Ataques Geométricos Combinados em Mar- cas d’Água
Ataques combinados reúnem os vários tipos de ataques descritos anteriormente. Assim, é mais difícil detectar e retirar tal ataque. As Tabelas 10 e 11 mostram alguns testes realizados e seus respectivos resultados. T representa o deslocamento usado na translação, R, o ângulo usado na rotação, E o fator de escalonamento, C a porcentagem de pontos removidos no ataque de cropping, O a porcentagem de objetos reordenados, N a porcentagem de pontos em que o ruído aleatório de amplitude máxima max é inserido.
As Tabelas 10 e 11 mostram resultados para diversos ataques combinados. Para testes somente com ataques geométricos, os dois métodos possuem resultados muito bons, com marcas d’água extraídas de ótima qualidade. O principal fator que determina a qualidade da imagem resultante é a porcentagem dos pontos afetados pelo ataque de cropping, pois esse ataque não apenas remove informações da marca d’água, como também dificulta a detecção e remoção dos outros ataques envolvidos. Ainda assim, vários ataques são representados nas tabelas, mostrando imagens satisfatórias para diversas combinações de ataques.
Figure img0019
Figure img0020

Claims (3)

  1. Método privado de marca d’água em mapas vetoriais, caracterizado por compreender:
    - Um Estágio 1 de inserção compreendendo as seguintes etapas:
    • (a) Calcular uma representação por pontos de um mapa vetorial;
    • (b) Construir as matrizes Ax e Ay a partir da representação por pontos;
    • (c) Redimensionar uma imagem raster R, criando uma imagem raster E;
    • (d) Calcular as matrizes Bx e By a partir de uma constante real C, da imagem raster E e das matrizes Ax e Ay; e
    • (e) Construir um mapa vetorial marcado M' a partir das matrizes Bχ e By .

    - Um Estágio 2 de detecção compreendendo as seguintes etapas:
    • (a) Inserir uma marca d’água R em um mapa vetorial usando o Estágio 1, retornando um mapa vetorial marcado M';
    • (b) Calcular uma representação por pontos P do mapa vetorial marcado e uma representação por pontos Q do mapa vetorial de prova;
    • (c) Comparar as representações por pontos P e Q usando um algoritmo de Point Pattern Matching, retornando a transformação T;
    • (d) Construir as matrizes Ax e Ay, a partir da representação de pontos do mapa vetorial, e Bx e By a partir da representação de pontos Q com a transformação T removida;
    • (e) Calcular as matrizes Dx e Dy a paritr das matrizes Bx, By, Ax, Ay e de uma contante real C;
    • (f) Construir uma marca d’água extraída redimensionada D a partir das matrizes Dx e Dy; e
    • (g) Redimensionar a marca d’água D para o tamanho da marca d’água original R, retornando uma marca d’água extraída S.
  2. Método semi-público de marca d’água em mapas vetoriais, caracterizado por compreender:
    - Um Estágio 1 de inserção compreendendo as seguintes etapas:
    • (a) Calcular uma representação por pontos do mapa vetorial;
    • (b) Construir as matrizes Ax e Ay a partir da representação por pontos;
    • (c) Redimensionar uma imagem raster R, criando uma imagem raster E\
    • (d) Decompor a matriz E em duas matrizes aleatórias E1 e E2;
    • (e) Calcular B1x e Bly a partir das matrizes Ax, Ay e E1 e de uma constante C;
    • (f) Calcular B2x e B2y a partir das matrizes Ax, Ay e E2 e de uma constante C;
    • (g) Construir um mapa vetorial marcado para publicação M1 usando as matrizes B1x e B1y; e
    • (h) Construir um mapa vetorial marcado para detecção M2 usando as matrizes B2x e B2y.

    - Um Estágio 2 de detecção compreendendo as seguintes etapas:
    • (a) Calcular uma representação por pontos P do mapa vetorial marcado para detecção e uma representação por pontos Q do mapa vetorial a ser testado;
    • (b) Construir as matrizes B2x e B2y a partir de P, e Bx e By a partir de Q;
    • (c) Redimensionar uma imagem raster R, criando uma matriz E de mesmo tamanho que a matriz B2x;
    • (d) Calcular B'2x e B'2y a partir das matrizes B2x e B2y, de uma constante C e de uma imagem raster E;
    • (e) Comparar a representação por pontos obtida através das matrizes B2x e B2y com a representação por pontos obtida através das matrizes Bx e By usando um algoritmo de Point Pattern Matching;
    • (f) Remover a transformação retornada pelo algoritmo de Point Pattern Matching das matrizes Bx e By, criando as matrizes B'x e B'y,
    • (g) Calcular as matrizes Dx e Dy a paritr das matrizes B'x, B'y, B2x, B2y e de uma contante real C;
    • (h) Construir uma marca d’água extraída redimensionada D a partir das matrizes Dx e Dy; e
    • (i) Redimensionar a marca d’água D para o tamanho da marca d’água original R, retornando uma marca d’água S.
  3. Uso dos métodos descritos nas reivindicações 1 e 2 caracterizado por possibilitar a inserção e detecção de marcas d’água em mapas vetoriais.
BRPI1012480A 2010-03-11 2010-03-11 método privado e semi-público de marcas d'água raster em mapas vetoriais BRPI1012480B8 (pt)

Priority Applications (1)

Application Number Priority Date Filing Date Title
BRPI1012480A BRPI1012480B8 (pt) 2010-03-11 2010-03-11 método privado e semi-público de marcas d'água raster em mapas vetoriais

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
BRPI1012480A BRPI1012480B8 (pt) 2010-03-11 2010-03-11 método privado e semi-público de marcas d'água raster em mapas vetoriais

Publications (3)

Publication Number Publication Date
BRPI1012480A2 BRPI1012480A2 (pt) 2015-03-24
BRPI1012480B1 true BRPI1012480B1 (pt) 2020-09-24
BRPI1012480B8 BRPI1012480B8 (pt) 2020-10-13

Family

ID=52780236

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI1012480A BRPI1012480B8 (pt) 2010-03-11 2010-03-11 método privado e semi-público de marcas d'água raster em mapas vetoriais

Country Status (1)

Country Link
BR (1) BRPI1012480B8 (pt)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112446814B (zh) * 2019-08-27 2022-04-19 中国人民解放军战略支援部队航天工程大学 一种定位篡改实体组的矢量地图数据脆弱水印方法
CN111274557B (zh) * 2020-01-19 2020-10-16 广州数智网络科技有限公司 用于2d矢量图版权保护的鲁棒可逆水印方法
CN112967166A (zh) * 2021-03-19 2021-06-15 北京星汉博纳医药科技有限公司 一种基于openCV的图片水印自动识别处理方法及系统

Also Published As

Publication number Publication date
BRPI1012480A2 (pt) 2015-03-24
BRPI1012480B8 (pt) 2020-10-13

Similar Documents

Publication Publication Date Title
Lee et al. Vector watermarking scheme for GIS vector map management
Ohbuchi et al. A frequency‐domain approach to watermarking 3D shapes
Wang et al. Reversible fragile watermarking for 2-D vector map authentication with localization
CN101246586B (zh) 一种基于曲线分割的矢量地图水印方法
Peng et al. Blind watermarking scheme for polylines in vector geo-spatial data
Jang et al. A crypto-marking method for secure vector map
Zhou et al. Binocular visual characteristics based fragile watermarking scheme for tamper detection in stereoscopic images
Vybornova et al. A new watermarking method for vector map data
KR101905403B1 (ko) 벡터 콘텐츠 인증 보안을 위한 다중 스케일 곡률기반 벡터 데이터 해싱기술
BRPI1012480B1 (pt) Método privado e semi-público de marcas d'água raster em mapas vetoriais
Neyman et al. Reversible fragile watermarking based on difference expansion using manhattan distances for 2d vector map
Li et al. Study on copyright authentication of GIS vector data based on Zero-watermarking
Ren et al. A zero-watermarking scheme based on spatial topological relations for vector dataset
Zope-Chaudhari et al. Copyright protection of vector data using vector watermark
Sun et al. A reversible digital watermarking algorithm for vector maps
CN106599727B (zh) 一种矢量地图完整性认证方法
Wang et al. RST invariant fragile watermarking for 2D vector map authentication
Chou et al. Affine-transformation-invariant public fragile watermarking for 3D model authentication
Li et al. Copyright authentication of digital vector maps based on spatial autocorrelation indices
Abubahia et al. Exploiting vector map properties for GIS data copyright protection
Abubahia et al. Evaluating the topological quality of watermarked vector maps
CN116363309A (zh) 基于点云投影采样的三维信息隐藏方法与装置
Eshraghi et al. 3D watermarking robust to accessible attacks
Yue et al. A fragile watermarking scheme for modification type characterization in 2d vector maps
Abbas et al. Digital vector map watermarking: Applications, techniques and attacks

Legal Events

Date Code Title Description
B03A Publication of an application: publication of a patent application or of a certificate of addition of invention
B06F Objections, documents and/or translations needed after an examination request according art. 34 industrial property law
B06V Preliminary requirement: requests without searches performed by other patent offices: suspension of the patent application procedure
B09A Decision: intention to grant
B16A Patent or certificate of addition of invention granted

Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 24/09/2020, OBSERVADAS AS CONDICOES LEGAIS.

B16C Correction of notification of the grant

Free format text: REF. RPI 2594 DE 24/09/2020 QUANTO AO ENDERECO.