ES3051171T3 - Method for processing a candidate image - Google Patents
Method for processing a candidate imageInfo
- Publication number
- ES3051171T3 ES3051171T3 ES21700314T ES21700314T ES3051171T3 ES 3051171 T3 ES3051171 T3 ES 3051171T3 ES 21700314 T ES21700314 T ES 21700314T ES 21700314 T ES21700314 T ES 21700314T ES 3051171 T3 ES3051171 T3 ES 3051171T3
- Authority
- ES
- Spain
- Prior art keywords
- image
- characters
- character
- candidate image
- points
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07D—HANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
- G07D7/00—Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency
- G07D7/20—Testing patterns thereon
- G07D7/202—Testing patterns thereon using pattern matching
- G07D7/206—Matching template patterns
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24147—Distances to closest patterns, e.g. nearest neighbour classification
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/1444—Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields
- G06V30/1448—Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields based on markings or identifiers characterising the document or the area
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/18—Extraction of features or characteristics of the image
- G06V30/18143—Extracting features based on salient regional features, e.g. scale invariant feature transform [SIFT] keypoints
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/19007—Matching; Proximity measures
- G06V30/19013—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
- G06V30/1902—Shifting or otherwise transforming the patterns to accommodate for positional errors
- G06V30/19067—Matching configurations of points or features, e.g. constellation matching
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/24—Character recognition characterised by the processing or recognition method
- G06V30/242—Division of the character sequences into groups prior to recognition; Selection of dictionaries
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07D—HANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
- G07D7/00—Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency
- G07D7/06—Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency using wave or particle radiation
- G07D7/12—Visible light, infrared or ultraviolet radiation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Toxicology (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Magnetic Resonance Imaging Apparatus (AREA)
Abstract
La invención se refiere a un método para el procesamiento endógeno de una imagen candidata, siendo esta única y representando un documento con una pluralidad de caracteres. Se caracteriza esencialmente por comprender los siguientes pasos: seleccionar un conjunto de caracteres entre todos o algunos de la pluralidad de caracteres, pudiendo dicho conjunto comprender al menos dos subconjuntos de caracteres; del conjunto seleccionado, extraer al menos uno de los siguientes: al menos un conjunto de caracteres individuales y al menos un paquete de caracteres, cada uno compuesto por una pluralidad de caracteres adyacentes por pares; almacenar los caracteres extraídos individualmente o por paquetes en una memoria; comparar los caracteres almacenados por pares; y enviar una señal representativa del resultado de la comparación. (Traducción automática con Google Translate, sin valor legal)
Description
[0001] DESCRIPCIÓN
[0002] Procedimiento para procesar una imagen candidata
[0003] CAMPO DE LA INVENCIÓN
[0004] La presente invención se refiere al campo del control automático de imágenes por ordenador, en particular para verificar su autenticidad.
[0005] Hoy en día es muy fácil y rápido modificar una imagen digital gracias a los múltiples softwares disponibles en el mercado.
[0006] Las modificaciones de una imagen pueden tener un propósito estético, por ejemplo el retoque de una fotografía por parte de un fotógrafo; o un propósito lúdico, por ejemplo en el contexto de los fotomontajes.
[0007] Sin embargo, también es posible modificar una imagen con el objetivo de falsificarla, por ejemplo modificando o suprimiendo un elemento de una imagen, lo que puede plantear problemas, en particular en el contexto de la verificación de documentos, en particular documentos de identidad, documentos valiosos como cheques, billetes nominativos, o incluso en el campo del arte.
[0008] Por documento, se entiende cualquier documento oficial expedido por un Estado, un gobierno o una administración, por ejemplo tal como: documento de identidad, pasaporte, permiso de conducir, etc., o cualquier documento no oficial expedido por un organismo de derecho público o privado, por ejemplo tal como: abono, abono de transporte, tarjeta de acceso, etc., así como cualquier documento administrativo, en particular contratos o facturas.
[0009] A los efectos de la presente invención, un documento puede o no incluir una fotografía del portador de dicho documento.
[0010] En materia de fraude, se conoce modificar la foto del portador de un documento de identidad mediante software de morphing. Sin embargo, la presente invención no pretende detectar la modificación de una imagen o una fotografía de una cara.
[0011] También se conocen software de esteganografía, que consiste en ocultar una segunda imagen dentro de una primera imagen. También existen soluciones que permiten detectar tales manipulaciones de imágenes, sea fraudulentas o no. También en este caso la presente invención no pretende detectar una modificación de imagen mediante el procedimiento esteganográfico.
[0012] Generalmente, para verificar la autenticidad de una imagen dada, es común comparar una imagen candidata con una imagen de referencia, lo que implica dos imágenes.
[0013] Por ejemplo, se conoce el documento US2007050360, que tiene como objetivo producir un documento de técnica mixta (MMR). Como tal, este documento prevé explícitamente la comparación de una imagen de prueba con una imagen de referencia incluida en una base de datos, lo que constituye una solución exógena.
[0014] Por el contrario, aquí se propone una solución inteligente, denominada endógena en la que una imagen candidata es suficiente por sí misma, que tiene como objetivo detectar si una parte de una imagen candidata se ha movido dentro de dicha imagen. Por analogía con el software de procesamiento de texto, la presente invención tiene como objetivo detectar si una parte de una imagen candidata se ha copiado/pegado dentro de la misma imagen.
[0015] SUMARIO DE LA INVENCIÓN
[0016] Más específicamente, la invención se refiere a un procedimiento para procesar endógenamente una imagen candidata, para detectar si una parte de la imagen candidata se ha movido dentro de dicha imagen, siendo dicha imagen candidata única y representando un documento que comprende una pluralidad de caracteres.
[0017] Se caracteriza esencialmente por que comprende etapas que consisten en:
[0018] seleccionar un conjunto de caracteres de entre todos o parte de la pluralidad de caracteres, pudiendo dicho conjunto de caracteres comprender al menos dos subconjuntos de caracteres,
[0019] En el conjunto seleccionado,
[0020] Extraer al menos uno de:
[0021] al menos un conjunto de caracteres individuales,
[0022] al menos un paquete de caracteres, comprendiendo cada paquete una pluralidad de caracteres adyacentes de dos en dos,
[0023] Guarde los caracteres extraídos individualmente o por paquetes en una memoria,
[0024] Compare los caracteres registrados de dos en dos, y
[0025] Emitir una señal representativa del resultado de la comparación.
[0026] Se puede prever que la etapa de selección incluya etapas que consisten en:
[0027] aplicar una máscara de selección predeterminada a la imagen candidata, comprendiendo la máscara un conjunto de al menos una ventana,
[0028] seleccionar los caracteres incluidos en el conjunto de al menos una ventana,
[0029] comprendiendo la etapa de selección opcionalmente además:
[0030] identificar un conjunto de al menos un punto destacable en la imagen candidata, y
[0031] posicionar la máscara de selección en función de la posición de al menos un punto destacable de dicho conjunto.
[0032] Se puede prever que la etapa de extracción incluya:
[0033] extraer cada carácter individual del conjunto, o cada paquete de caracteres del conjunto, mediante un cuadro delimitador respectivo, y
[0034] guarde cada cuadro delimitador en forma de una subimagen respectiva (F1, F2).
[0035] Se puede prever que la etapa de comparación incluya:
[0036] - calcular un mapa de disimilitud local entre:
[0037] una primera subimagen (F1) de un carácter o un paquete de caracteres de la imagen candidata, y una segunda subimagen (F2) de otro carácter u otro paquete de caracteres de la imagen candidata, - comparar dicho mapa de disimilitud local con un valor umbral (D_CDL).
[0038] También es posible prever una etapa de aprendizaje preliminar mediante un algoritmo de aprendizaje profundo configurado para clasificar caracteres o paquetes de caracteres en un conjunto de al menos una clase, y en el que la etapa de comparación comprende:
[0039] procesar cada carácter individual o cada paquete de caracteres extraídos por el algoritmo de aprendizaje profundo, y
[0040] clasificar dicho carácter o dicho paquete de caracteres en al menos una clase de dicho conjunto del algoritmo de aprendizaje profundo.
[0041] También es posible prever una etapa que consiste en, para un conjunto de subimágenes predeterminado, recortar el carácter o caracteres del paquete de al menos una subimagen de dicho conjunto.
[0042] Se puede prever que la etapa de calcular un mapa de disimilitud incluya etapas que consisten en:
[0043] - definir un conjunto de puntos destacables en la imagen candidata,
[0044] - seleccionar al menos una parte de los puntos destacables definidos,
[0045] - hacer coincidir un conjunto de puntos destacables para formar pares de puntos destacables,
[0046] - dividir los pares de puntos destacables coincidentes, y
[0047] para cada par de cada partición,
[0048] calcular un mapa de disimilitud local entre:
[0049] una primera subimagen (F1) de la imagen candidata que tiene una forma predeterminada centrada en un punto destacable de dicho par de dicha partición, y
[0050] una segunda subimagen (F2) de la imagen candidata, que tiene la misma forma predeterminada y las mismas dimensiones que la primera subimagen (F1), y que está centrada en el otro punto destacable de dicho par de dicha partición.
[0051] Se puede prever que la etapa de definir un conjunto de puntos destacables en la imagen candidata se implemente mediante al menos uno de los siguientes:
[0052] Un detector de Moravec,
[0053] Un detector de Kitchen-Rosenfeld,
[0054] Un detector de Beaudet,
[0055] Un detector de SUSAN,
[0056] Un detector de FAST,
[0057] Un detector de Hesse-Laplace,
[0058] Un detector de Kadir,
[0059] Un detector de MSER,
[0060] Un detector de GLOH,
[0061] Un detector de Harris,
[0062] Un algoritmo de transformación de características visuales invariante en la escala,
[0063] Un algoritmo de características robustas aceleradas,
[0064] Un algoritmo de detección de puntos biométricos,
[0065] Un operador de diferenciación, en particular una diferencia de gaussianas, y
[0066] Un algoritmo de detección de contornos, en particular un laplaciano gaussiano.
[0067] Se puede prever que para la etapa que consiste en particionar los pares de puntos destacables coincidentes, Cada partición incluye todos los pares de puntos destacables puestos en relación que responden a las tres desigualdades:
[0070]
[0072] con D1, D2 y D3 tres valores umbral predefinidos,
[0073] (A; B) un primer par de puntos destacables coincidentes,
[0074] (C; D) un segundo par de puntos destacables coincidentes;
[0075] O mediante un algoritmo de partición.
[0076] Por ejemplo, se puede prever un algoritmo de partición no supervisado tal como:
[0077] - DBSCAN (https://fr.wikipedia.org/wiki/DBSCAN),
[0078] - OPTICS (https://en.wikipedia.org/wiki/OPTICS_algorithml,
[0079] - CURE (https://en.wikipedia.org/wiki/CURE_algorithm),
[0080] - Etc.
[0081] La invención también se refiere a un programa informático que comprende instrucciones de código de programa para ejecutar las etapas del procedimiento según la invención, cuando dicho programa se ejecuta en un ordenador. Otras características y ventajas de la presente invención aparecerán más claramente con la lectura de la descripción siguiente dada a título de ejemplo ilustrativo y no limitativo y hecha con referencia a las figuras adjuntas.
[0082] DESCRIPCIÓN DE LOS DIBUJOS
[0083] - La [Fig.1] ilustra un documento original,
[0084] - La [Fig.2] ilustra el documento de la figura 1, falsificado,
[0085] - La [Fig.3] ilustra la correspondencia de caracteres o paquetes de caracteres según la invención,
[0086] - La [Fig.4] ilustra el resultado de aplicar la invención al documento de la figura 2,
[0087] - La [Fig. 5] ilustra la duplicación de un objeto O en un objeto OD y la relación entre los puntos coincidentes según la invención.
[0088] DESCRIPCIÓN DETALLADA
[0089] Como se indica al principio de la descripción, una imagen se puede alterar añadiendo elementos de otra imagen. Tales manipulaciones denominadas exógenas quedan excluidas de la presente invención.
[0090] De forma endógena, una imagen puede alterarse sustituyendo ciertos elementos de ella por otros elementos de la misma imagen. Por ejemplo, algunos manipuladores de imágenes pueden añadir o invertir cifras existentes para modificar un número, por ejemplo un número de serie; utilizar caracteres existentes en la imagen para modificar una denominación, una capacidad, etc. También pueden copiar un elemento gráfico de una imagen y pegar este elemento gráfico en otra parte de la imagen, mediante un fenómeno de duplicación o clonación, eventualmente combinado con rotación, inversión, redimensionamiento.
[0091] Debido a que los elementos de reemplazo se extraen de la imagen, puede ser muy difícil detectar a simple vista, o incluso con procesamiento digital, que la imagen se ha alterado.
[0092] Para responder a este problema, se propone procesar una imagen candidata de la siguiente manera.
[0093] Imagen candidata
[0094] Según la presente invención, cada imagen candidata se procesa de manera endógena, es decir en sí misma, con exclusión de cualquier otra imagen de referencia. Permite la detección de “copiar y pegar” interno dentro de la imagen candidata.
[0095] En este sentido, una imagen candidata es única. Por ejemplo, una imagen candidata es una imagen tomada por una lente de una cámara o un teléfono inteligente, un fotograma de un flujo de vídeo tomado por una cámara, etc. En particular, la imagen candidata se obtiene mediante una lente de un objeto de comunicación, en particular un teléfono inteligente.
[0096] La imagen candidata representa un documento que incluye una pluralidad de caracteres, en el que por “carácter” se entiende en particular caracteres alfanuméricos, kanji, cualquier otro carácter alfabético o ideograma, así como cualquier elemento gráfico estable, identificable y significativo, tales como un logotipo, un signo distintivo (en particular una marca registrada o solicitada), o un sello.
[0097] Preferiblemente, al menos uno de los caracteres del documento está presente más de una vez en el mismo.
[0098] Por razones de brevedad, aquí sólo se describirá como documento la página de datos del pasaporte, o “datapage” por anglicismo.
[0099] El documento comprende una pluralidad de caracteres, en este caso alfanuméricos, que están distribuidos por áreas cuya posición en el documento es conocida, por ejemplo el área MRZ.
[0100] Además, algunos caracteres pueden ser genéricos, es decir, comunes a una pluralidad de documentos, y otros caracteres pueden ser variables, es decir, específicos de un documento.
[0101] Por ejemplo, caracteres genéricos son etiquetas de campo tales como “APELLIDO”, “NOMBRE”, etc. y los caracteres variables suelen ser en este caso el contenido de estos campos, por ejemplo “DOE”, “JOHN”, etc.
[0102] Selección
[0103] Se prevé seleccionar un conjunto de caracteres de la totalidad o parte de la pluralidad de caracteres del documento. Por ejemplo, se puede seleccionar el documento en su totalidad. También se puede seleccionar una parte del documento, por ejemplo un área del mismo, por ejemplo el área MRZ o VIS, o incluso determinados campos identificados por su encabezado o su posición en el documento. También se puede seleccionar varias áreas de éste, cada una de las cuales constituye un subconjunto.
[0104] Se puede prever utilizar una máscara de selección que comprende una o más ventanas de selección. Preferiblemente, la máscara de selección es una máscara digital aplicada a la imagen candidata. La máscara de selección también puede ser una máscara física aplicada al documento o a una imagen, impresa o visualizada, del mismo.
[0105] Se puede entonces seleccionar los caracteres incluidos en la ventana o ventanas de selección.
[0106] También es posible prever que la etapa de selección comprenda la identificación previa de uno o más puntos destacables sobre la imagen candidata, y el posicionamiento de una máscara de selección en función de la posición de al menos un punto destacable de dicho conjunto.
[0107] Por ejemplo, un punto destacable podría ser uno de los siguientes:
[0108] - una marca,
[0109] - un signo distintivo,
[0110] - un código de barras,
[0111] - una posición predeterminada de la imagen candidata, por ejemplo, esquina superior izquierda, centro, esquina inferior izquierda, etc.
[0112] - el área MRZ de un pasaporte,
[0113] - el área VIS de un pasaporte,
[0114] - un área gráfica marcada por uno o más metadatos o un nombre de campo (APELLIDO, NOMBRE, etc.), - un párrafo predeterminado de un correo,
[0115] - el encabezado de un correo,
[0116] - el pie de página de un correo,
[0117] - Etc.
[0118] Extracción
[0119] Se prevé entonces una etapa de extracción que se aplica al conjunto de caracteres seleccionado.
[0120] Esta etapa consiste en extraer todos o parte de los caracteres del conjunto seleccionado.
[0121] En particular, se puede prever extraer todos los caracteres individuales, sólo una parte de ellos o varias partes de ellos.
[0122] También es posible prever extraer varios caracteres individuales en paquetes, comprendiendo cada paquete una pluralidad de caracteres adyacentes de dos en dos.
[0123] Se puede prever una etapa de recorte de caracteres individuales o paquetes de caracteres.
[0124] Cuando el documento incluye caracteres alfanuméricos, es posible prever en cualquier momento realizar el reconocimiento óptico de caracteres (OCR), al menos de los caracteres seleccionados, o incluso de todos los caracteres de la imagen candidata.
[0125] Los caracteres extraídos individualmente o en paquetes se almacenan en una memoria.
[0126] Los caracteres se pueden extraer mediante cuadros delimitadores: un cuadro delimitador respectivo por carácter o por paquete de caracteres. Los cuadros delimitadores se describen, por ejemplo, en el artículo de K. Khurshid, C. Faure, N. Vincent. “Recherche de mots dans des images de documents par appariement de caractères”. Conferencia Internacional Francófona sobre Escritura y Documentos, octubre de 2008, Francia. pp. 91-96. hal-00334401 (https://hal.archives-ouvertes.fr/hal-00334401/document)
[0127] Cada cuadro delimitador, o más precisamente el contenido de cada cuadro delimitador, se registra como una subimagen F1, F2, etc. respectiva.
[0128] Comparación
[0129] Se pueden entonces comparar los caracteres grabados, o paquetes de caracteres grabados, de dos en dos, y se puede emitir una señal representativa del resultado de la comparación.
[0130] La etapa de comparación puede incluir la comparación de las respectivas subimágenes F1, F2, etc. de dos en dos. En una realización, la comparación se implementa mediante cálculos de mapas de disimilitud, denominados indistintamente mapas de similitud.
[0131] Según diversas variantes, se puede prever calcular una o más medidas de similitud local o global y espacial.
[0132] Por ejemplo, según una variante, para mediciones globales no espaciales entre una primera subimagen F1 de un carácter o de un paquete de caracteres de la imagen candidata y una segunda subimagen F2 de otro carácter o de otro paquete de caracteres de la imagen candidata, se puede prever calcular al menos uno de los valores entre: Una distancia de Chernoff,
[0133] Una distancia de Bhattacharyya,
[0134] Una divergencia de Kullback-Leibler,
[0135] Una distancia de chi2,
[0136] Etc.
[0137] Según una variante, para mediciones globales y espaciales entre una primera subimagen F1 de un carácter o de un paquete de caracteres de la imagen candidata y una segunda subimagen F2 de otro carácter o de otro paquete de caracteres de la imagen candidata, se puede prever calcular al menos uno de los valores entre:
[0138] Un error cuadrático medio (MSE),
[0139] Una correlación cruzada,
[0140] Una información mutua,
[0141] Etc.
[0142] Según una variante, para mediciones locales entre una primera subimagen F1 de un carácter o de un paquete de caracteres de la imagen candidata y una segunda subimagen F2 de otro carácter o de otro paquete de caracteres de la imagen candidata, se puede prever calcular al menos uno de los valores entre:
[0143] Un mapa de disimilitud local (CDL),
[0144] Una similitud estructural (SSIM),
[0145] Etc.
[0146] Por ejemplo, para un CDL, se prevé calcular un mapa de disimilitud local entre:
[0147] - una primera subimagen F1 de un carácter o un paquete de caracteres de la imagen candidata, y
[0148] - una segunda subimagen F2 de otro carácter o paquete de caracteres de la imagen candidata.
[0149] Después, se prevé comparar dicho mapa de disimilitud local con un valor umbral D_CDL predeterminado.
[0150] Más precisamente, para el cálculo de un mapa de disimilitud local:
[0151] En primer lugar, se prevé identificar en la imagen candidata un conjunto de puntos destacables, también denominados “puntos de interés” o “puntos clave”.
[0152] Puntos destacables
[0153] Se prevé definir un conjunto de puntos destacables en la imagen candidata. A los efectos de la presente invención, se entienden indistintamente “definición”, “extracción” y “detección” de puntos destacables.
[0154] Un punto destacable se define como un punto en la imagen candidata, es decir, un píxel o un conjunto de píxeles adyacentes de dos en dos, para el cual el gradiente de contraste, a lo largo de una dirección y distancia predefinidas, es mayor que un valor de umbral predefinido.
[0155] Cada punto destacable se define en particular por sus coordenadas en la imagen candidata. Cada punto destacable está asociado a una orientación intrínseca, es decir, que depende únicamente del contenido local de la imagen candidata alrededor del punto destacable, en el factor de escala considerado.
[0156] Cada punto destacable se caracteriza por un descriptor único. Los descriptores son elementos vectoriales que caracterizan el contenido visual de la imagen candidata de la forma más independiente posible de la escala, el encuadre, el ángulo de observación y la exposición (brillo). Los descriptores tienen la ventaja de ser invariantes a la orientación y resolución de la imagen.
[0157] La definición de un conjunto de puntos destacables se puede implementar mediante cualquier medio conocido, por ejemplo mediante al menos uno de los siguientes:
[0158] Un detector de Moravec,
[0159] Un detector de Kitchen-Rosenfeld,
[0160] Un detector de Beaudet,
[0161] Un detector de SUSAN,
[0162] Un detector de FAST,
[0163] Un detector de Hesse-Laplace,
[0164] Un detector de Kadir,
[0165] Un detector MSER (acrónimo de “Maximally Stable Extremal Regions” en inglés),
[0166] Un detector GLOH (“Gradient Location and Orientation Histogram” en inglés),
[0167] Un detector de Harris,
[0168] Un algoritmo de transformación de características visuales invariante en la escala,
[0169] Un algoritmo de características robustas aceleradas,
[0170] Un algoritmo de detección de puntos biométricos,
[0171] Un operador de diferenciación, en particular una diferencia de gaussianas, y
[0172] Un algoritmo de detección de contornos, en particular un laplaciano gaussiano.
[0173] Un algoritmo de transformación de características visuales invariante a escala es más conocido por su acrónimo SIFT para “Scale Invariant Feature Transform” en inglés.
[0174] Para el algoritmo SIFT, descrito en particular en la publicación D. Lowe. Object recognition from local scale-invariant features. IEEE International Conference on Computer Vision, páginas 1150-1157, 1999, la detección de puntos se
basa en las diferencias de las Gaussianas (DoG) obtenidas calculando la diferencia entre cada par de imágenes suavizadas por un filtro Gaussiano, variando cada vez el parámetro sigma (es decir, la desviación estándar) del filtro. El DoG se puede calcular para diferentes niveles de escalada, lo que permite introducir el concepto de espacio de escalada. La detección de posibles puntos de interés/puntos destacables se produce buscando los extremos del plano de la dimensión de la imagen (x,y) y el plano del factor de escala. Después, una etapa de filtración es necesaria para eliminar los puntos irrelevantes, por ejemplo, eliminar los puntos cuyo contraste es demasiado bajo.
[0175] Un algoritmo de características robustas aceleradas es más conocido por su acrónimo SURF para “Speeded Up Robust Features” en inglés. Se describe en particular en la publicación H. Bay, T. Tuylelaars y L. Van Gool. Surf: Speeded up robust features. European Conference on Computer Vision, páginas 404-417, 2006, el método consiste en utilizar el determinante de la matriz hessiana, para calcular una aproximación de las segundas derivadas de las gaussianas de la imagen mediante filtros a diferentes escalas utilizando máscaras de diferentes tamaños (por ejemplo 9 x 9, 15 x 15, 21 x 21, etc.). Para calcular la orientación de los puntos y los descriptores en función de los puntos, el principio se basa en las sumas de las respuestas de pequeñas ondas de Haar horizontales y verticales así como sus estándar. El área circular de descripción se divide también en 16 regiones. Se realizó un análisis de las pequeñas ondas en cada región con el objetivo de construir el descriptor final. Este último está constituido por la suma de los gradientes en x e y, así como por la suma sus respectivas estándar para el conjunto de 16 regiones. El descriptor vectorial está así constituido por 64 valores que representan propiedades extraídas tanto en el espacio normal como en el espacio de escalas de tamaño.
[0176] Un punto destacable puede ser un punto biométrico si la imagen candidata incluye una cara. Para la detección de puntos biométricos, se puede aplicar un software basado en la biblioteca de software DLIB, que determina la posición de un conjunto de puntos biométricos predeterminados, correspondiendo cada punto a un elemento morfológico predeterminado de una cara, por ejemplo la esquina del ojo derecho, la esquina del ojo izquierdo, la parte inferior de la nariz, las comisuras de la boca, etc.
[0177] En una realización, se prevé realizar una detección global de los puntos destacables en la imagen candidata tomada en su totalidad.
[0178] Alternativamente, se prevé realizar una detección de los puntos destacables a través de una ventana deslizante, preferiblemente no superpuesta y en este caso adyacente, aplicada a la imagen candidata y que permite seleccionar un conjunto de subimágenes, correspondiendo cada subimagen a la parte de la imagen candidata incluida en la ventana deslizante en un momento dado.
[0179] Preferiblemente, se prevé que cada subimagen comprende un número de puntos destacables mayor que un valor de umbral predeterminado. Para este fin, es posible ampliar el tamaño de la ventana deslizante. También es posible ajustar un umbral de rechazo, por ejemplo en el contraste, particularmente cuando se implementa un algoritmo SIFT. Esto permite así conservar los puntos destacables en los contornos y en las áreas de gradiente débil, en el que por “débil” se entiende inferior a un valor umbral predeterminado.
[0180] Los puntos destacables están necesariamente “definidos”. Por concisión, el término “definido” generalmente se omitirá en el resto de esta descripción.
[0181] Alternativamente o en combinación con los puntos destacables, se pueden prever subimágenes de la imagen candidata a las que se aplica un algoritmo tal como PatchMatch (The Generalized PatchMatch Correspondence Algorithm, Connelly Barnes & al.; en K. Daniilidis, P. Maragos, N. Paragios (Eds.): ECCV 2010, Parte III, LNCS 6313, pp. 29-43, 2010.)
[0182] Se puede prever que cada subimagen tenga como centro un punto destacable respectivo.
[0183] Selección
[0184] Se puede prever una etapa de selección de algunos de los puntos destacables, especialmente si éstos son muchos. Por ejemplo, la selección puede ser realizada por un operador. Para ello, éste puede estar equipado con un dispositivo de punteo (ratón, lápiz óptico, pantalla táctil, etc.).
[0185] De esta forma puede seleccionar un conjunto de al menos un área de la imagen candidata que le parezca sospechosa. La selección también se puede realizar de forma automática, en particular en imágenes candidatas que representan un objeto estandarizado.
[0186] Por ejemplo, un objeto estandarizado es un documento de identidad que incluye áreas o campos cuya posición y dimensiones son conocidas, por ejemplo el área MRZ de un pasaporte, estandarizada por la ICAO, o cualquier otra área de contenido alfanumérico.
[0187] Por lo tanto, es posible seleccionar sólo los puntos destacables situados en determinados campos o determinadas áreas.
[0188] La etapa de seleccionar ciertos puntos destacables es opcional, es decir, que se puede prever la selección de todos los puntos destacables de la imagen candidata.
[0189] En esta fase, si los puntos destacables están ilustrados en la imagen candidata, aún no es posible determinar si parte de la imagen candidata se ha clonada en ella.
[0190] Una vez definidos los puntos destacables, se prevé una etapa de comparación que permite determinar si determinadas áreas de la imagen candidata son parecidas.
[0191] Para ello, se prevé comparar los puntos destacables de dos en dos, es decir comparar cada punto destacable con cada otro punto destacable del conjunto de puntos destacables seleccionados.
[0192] En este caso los puntos destacables se caracterizan mediante vectores.
[0193] Esta etapa de comparación es una puesta en relación de puntos destacables en forma de pares de puntos destacables que permite establecer un parecido entre dos puntos destacables mediante el cálculo de una métrica que se presenta en forma de una distancia vectorial.
[0194] Puesta en relación
[0195] En efecto, se puede poner en relación, indistintamente poner en correspondencia, todos los puntos destacables “cercanos”.
[0196] Por “cercano”, se entiende que la distancia vectorial es menor que un valor umbral predeterminado.
[0197] Por ejemplo, la correspondencia clásica de descriptores SIFT prevé un algoritmo que busca áreas de la imagen candidata que contienen elementos visualmente similares a aquellos de una biblioteca de imágenes de referencia. Por el contrario, aquí no existe una biblioteca de imágenes de referencia, los puntos destacables se comparan de dos en dos en la misma imagen candidata, pero según el mismo principio.
[0198] Según una primera variante de la presente invención, la puesta en correspondencia es el método denominado “2NN” descrito para descriptores SIFT por David G. Lowe en el artículo “Distinctive image features from scaleinvariant keypoints.” (International Journal of Computer Vision, 60(2) :91-110, Nov de 2004).
[0199] Es aplicable a los demás descriptores mencionados anteriormente.
[0200] Para un punto destacable dado, el método consiste en encontrar los dos vecinos más cercanos a dicho punto destacable, situados respectivamente a una distancia d1 y d2 (d1 < d2), entre n puntos destacables (n entero natural). Se considera una puesta en correspondencia es positiva entre dicho punto destacable y el vecino más próximo si la relación d1/d2 es inferior a un umbral predeterminado D, comprendido entre 0 y 1, en este caso igual a 0,6.
[0201] Por lo tanto, se tiene una puesta en correspondencia si la distancia al primer vecino más cercano es menor y si la distancia al segundo vecino más cercano también es menor. Por distancia “menor” se entiende inferior a un valor umbral predeterminado. Para poner en correspondencia, se necesita que la distancia d1 al primer vecino más cercano sea significativamente menor que la distancia d2 al segundo vecino más cercano; siendo d1 y d2 las distancias entre los descriptores y no distancias espaciales.
[0202] Esta variante permite detectar si un elemento gráfico de una imagen candidata sólo está duplicado de forma única en dicha imagen, lo que en la práctica puede ser relativamente raro.
[0203] Por esta razón, según una segunda variante de la presente invención, se prevé un método denominado g2NN, que es una generalización del método 2NN anterior, y en el que la prueba 2NN se itera de hecho para los k vecinos más próximos de un punto destacable dado, siendo k un entero natural entre 1 y n-1.
[0204] Se prueba entonces las relaciones de distancia dk / dk+1 (k varía de 1 a n-1) a los k-ésimos vecinos más cercanos, iterativamente haciendo variar el valor de k por incrementos de 1, hasta el valor de k para el cual la relación dk / dk+1 se vuelve mayor que el valor de un umbral DL predeterminado, que puede ser igual al valor del umbral D anterior, y para el cual la iteración se detiene entonces. Se considera que una puesta en correspondencia es positiva si la relación dk / dk+1 es menor que el umbral DL predeterminado.
[0205] Para un punto destacable dado, se ponen en relación todos los puntos destacables i-ésimos vecinos más próximos (i entre 1 y k) que verifican que la relación di / di+1 es inferior al valor del umbral DL.
[0206] Esta iteración se implementa para cada punto destacable, lo que permite detectar un conjunto de clones, es decir detectar si un elemento gráfico de una imagen candidata se ha duplicado varias veces en dicha imagen.
[0207] Esta variante se describe para los descriptores SIFT en el artículo de Amerini & al. “A siftbased forensic method for copy-move attack detection and transformation recovery” (IEEE Transactions on Information Forensics and Security, 6(3):1099-1110, septiembre de 2011).
[0208] Los puntos destacables puestos en relación forman un par de puntos. Su puesta en relación se puede visualizar en una pantalla, en particular mostrando un gráfico predeterminado superpuesto a la imagen candidata.
[0209] En este caso, se prevé que cada par de puntos destacables esté ilustrado por un segmento de línea recta que conecta dichos puntos destacables. También se puede prever colorear los segmentos de línea recta. Por ejemplo, se puede prever que todos los segmentos de línea recta paralelos están entre sí coloreados del mismo color, especialmente aquellos de la misma longitud.
[0210] Dado que existe una correspondencia entre un punto destacable dado y un conjunto de píxeles (adyacentes de dos en dos) de la imagen candidata, un par de puntos destacables puestos en relación significa, por lo tanto, que los conjuntos de píxeles correspondientes se parecen.
[0211] Por lo tanto, esto significa en la imagen candidata que uno de los conjuntos de píxeles puede ser una copia del otro conjunto de píxeles; en otras palabras, puede significar que uno de los conjuntos de píxeles ha sufrido una ley de transformación (traslación, cambio de tamaño, rotación) del otro conjunto de píxeles.
[0212] Esta característica se utiliza ventajosamente para crear un conjunto de particiones.
[0213] Particionado
[0214] Una partición es un conjunto de al menos dos pares de puntos destacables puestos en relación, y preferiblemente al menos 3 pares de puntos destacables puestos en relación, que han sufrido la misma ley de transformación (traslación, cambio de tamaño, rotación).
[0215] Gráficamente, esto se puede ilustrar mediante un conjunto de segmentos de línea recta paralelas entre sí, de aproximadamente la misma longitud y cercanos entre sí. Por “cercano” se entiende que la distancia más corta que separa dos segmentos de línea recta paralelas y adyacentes es menor que un valor umbral predeterminado.
[0216] Por lo tanto, se puede mostrar las particiones en la imagen candidata.
[0217] Así, cuantos más pares de puntos destacables relacionados tenga una partición, mayor será la probabilidad de que uno de los conjuntos de píxeles correspondientes sea una copia del otro.
[0218] Por ejemplo, se define un conjunto de particiones como se describe en Bernard A. Galler y Michael J. Fisher. “An improved equivalence algorithm” Commun. ACM, 7(5):301-303, mayo de 1964, que permite agrupar elementos según reglas de equivalencias.
[0219] La figura 5 ilustra un elemento gráfico O, denominado “de inicio”, de una imagen candidata, que se copia y se duplica (clona) en un elemento gráfico OD, denominado “de final”, en la misma imagen candidata. En este caso OD es la duplicación de O con una ligera rotación y una ligera modificación de escala.
[0220] Los puntos A y C son dos puntos destacables del elemento gráfico (u objeto) O, y los puntos B y D son dos puntos destacables del elemento gráfico (u objeto) OD, correspondientes respectivamente a los puntos destacables A y C. La puesta en correspondencia entre A y B y la puesta en correspondencia entre C y D permite definir el vector y el vector .
[0221] Las puestas en correspondencia entre el par de puntos destacables (A; B) y entre el par de puntos destacables (C; D) se consideran equivalentes y se agrupan, si se verifican las siguientes desigualdades:
[0223]
[0225] (en la que ||X|| representa la norma de X);
[0226] y
[0227]
[0229] con D1, D2 y D3 tres valores umbral predefinidos.
[0230] El umbral D1 permite limitar la diferencia entre dos vectores formados por dos pares de puntos destacables puestos en correspondencia. Esto permite agrupar las puestas en correspondencia de orientación cercana. Gracias al umbral D1, los puntos destacables puestos en correspondencia están sustancialmente en la misma dirección, es decir, los segmentos de línea recta son sustancialmente paralelos. Un valor bajo de D1 tiende a aumentar el número de particiones.
[0231] El umbral D2 establece el tamaño máximo del objeto duplicado OD. Un valor demasiado grande tiende a añadir falsos positivos en las particiones. El umbral D2 permite garantizar que los puntos destacables del elemento gráfico de inicio (A y C en el objeto O) están cerca; y que los puntos destacables del elemento gráfico de final (B y D en el objeto OD) también están cerca.
[0232] El umbral D3 permite garantizar que el objeto O se duplica completamente en el objeto OD, sin superposición. El umbral D3 permite garantizar que los puntos destacables del elemento gráfico de inicio (objeto O) están suficientemente distantes de los puntos destacables del elemento gráfico de final (objeto OD).
[0233] Una partición incluye el conjunto de pares de puntos destacables puestos en relación que satisfacen las desigualdades anteriores. Preferiblemente, se prevé que cada partición incluya al menos 3 pares de puntos destacables puestos en relación.
[0234] En esta fase, es posible detectar que un elemento gráfico de una imagen candidata probablemente se haya duplicado en esta. Ahora bien, pueden persistir falsos positivos, especialmente en el caso de una imagen candidata que incluya estructuras repetitivas (por ejemplo, la fachada de un edificio, texto con muchos caracteres, etc.).
[0235] Por lo tanto, se puede implementar una etapa de filtrado adicional utilizando un mapa de disimilitud local (CDL). Como alternativa a la partición descrita anteriormente, se pueden prever otros métodos de partición no supervisada, por ejemplo:
[0236] - la aplicación de un algoritmo CURE (https://en.wikipedia.org/wiki/CURE_algorithm)
[0237] - la aplicación de un algoritmo OPTICS (https://en.wikipedia.org/wiki/OPTICS_algorithm)
[0238] - la aplicación de un algoritmo DBSCAN (https://fr.wikipedia.org/wiki/DBSCAN)
[0239] Mapa de disimilitud local
[0240] Un mapa de disimilitud local (CDL) permite medir las diferencias locales entre dos imágenes binarias, es decir, dos imágenes en blanco y negro (no en escala de grises).
[0241] El cálculo de un mapa de disimilitud local es una versión modificada de la distancia de Hausdorff, descrita en particular por Morain-Nicolier, Frédéric & LANDRE, Jérome & Ruan, Su. (2009). “Détection d'objet par mesure de dissimilarités locales”.
[0242] Se define por CDLbin el CDL de dos imágenes binarias A y B como siendo:
[0244]
[0246] con p = (x; y) y dX(p) la transformada de distancia de la imagen X al punto p, en la que en este caso X = A o B. La aplicación de un mapa de disimilitud local es conocida en particular en el campo médico para la búsqueda de tumores, como se describe por ejemplo en el artículo “Localisation de tumeurs dans des séquences TEP, par détection de changements au moyen de dissimilarités locales” de Ketata et al. (CORESA 2013 – 16ª edición de las jornadas de COmpresión y REpresentación de Señales Audiovisuales Le Creusot, FRANCIA, 28 y 29 de noviembre de 2013). Por el contrario, aquí se prevé comparar las diferencias locales entre una primera imagen binaria y una segunda imagen binaria, que son subimágenes de la imagen candidata, lo que permite tener un tiempo de cálculo más rápido. Se obtiene en primer lugar una primera subimagen aplicando a la imagen candidata una máscara digital que comprende una primera ventana F1, lo que permite extraer la parte de la imagen candidata incluida en la primera ventana F1. En este caso, la primera ventana F1 tiene una forma predeterminada que está centrada en un punto destacable del objeto inicial O.
[0247] De igual modo, se obtiene entonces una segunda subimagen aplicando a la imagen candidata una máscara digital que comprende una segunda ventana F2, lo que permite extraer la parte de la imagen candidata incluida en la segunda ventana F2. En este caso, la segunda ventana F2 tiene una forma predeterminada que está centrada en el punto destacable del objeto de final OD correspondiente al punto destacable de la primera ventana F1.
[0248] Así, la primera ventana F1 y la segunda ventana F2 permiten extraer los dos puntos destacables de un par de una misma partición.
[0249] Y lo mismo ocurre con todos los pares de puntos destacables puestos en relación para todas las particiones.
[0250] La forma de la ventana F1 es idéntica a la de la ventana F2. El tamaño de la ventana F2 es igual al de la ventana F1, hasta el factor de escala. El contenido de las dos ventanas está alineado en función del ángulo de los puntos destacables asociados. En efecto, las estructuras dentro de las dos ventanas F1 y F2 pueden no estar alineadas (en términos de ángulo) al inicio del procesamiento. Cada punto destacable indica la orientación de la estructura analizada. Para alinear las estructuras dentro de las ventanas F1 y F2, se puede elegir:
[0251] - Calcular el delta entre los dos ángulos para alinear F1 con F2 o viceversa (una de las estructuras está alineada con respecto a la otra).
[0252] - Realizar una rotación igual al inverso de los ángulos de las ventanas F1 y F2 (ambas estructuras están alineadas con el ángulo nulo).
[0253] Si la imagen candidata es una imagen ya binaria, entonces la primera imagen binaria utilizada para el cálculo del mapa de disimilitud local es la primera subimagen obtenida por la primera ventana F1, y la segunda imagen binaria utilizada para el cálculo del mapa de disimilitud local es la segunda subimagen obtenida por la segunda ventana F2.
[0254] Se calcula entonces CDL(F1, F2) el CDL entre la primera subimagen obtenida por la primera ventana F1, y la segunda subimagen obtenida por la segunda ventana F2, para cada par de puntos destacables puestos en relación.
[0255] Después, se compara CDL(F1, F2) con un umbral D_CDL predeterminado, y:
[0256] - si CDL(F1, F2) > D_CDL entonces el par de puntos destacables puestos en relación no se considera como un copia/pega,
[0257] - si CDL(F1, F2) < D_CDL entonces el par de puntos destacables puestos en relación se considera como un copia/pega y se prevé por ejemplo resaltar gráficamente en una pantalla dichos puntos destacables o las ventanas F1 y F2 correspondientes.
[0258] El resaltado gráfico puede ser al menos uno de los siguientes: una modificación del valor del píxel (color, luminancia), mostrar un marco alrededor de los puntos destacables o mostrar un marco en la periferia de las ventanas F1 y F2, por ejemplo con línea de puntos o coloreado, etc.
[0259] Si la imagen candidata es en escala de grises, se divide en varias imágenes binarias.
[0260] Por ejemplo, el valor máximo y el valor mínimo de los píxeles de la imagen candidata se registran en una memoria. La diferencia entre el valor máximo y el valor mínimo se divide en varios valores umbral intermedios, preferiblemente a intervalos regulares.
[0261] Para un primer valor de umbral intermedio, todos los píxeles cuyo valor sea inferior al valor de dicho umbral intermedio se sustituyen por negro y todos los píxeles cuyo valor sea superior al valor de dicho umbral intermedio se sustituyen por blanco. Se obtiene así una primera imagen binaria. Después, se hace variar el valor de umbral y se obtiene una segunda imagen binaria con un segundo valor umbral intermedio. Y así sucesivamente para todos los valores umbral intermedio.
[0262] Se obtiene así N imágenes binarias, siendo N un entero natural igual al número de valores de umbral elegidos, es decir el número de cortes.
[0263] Para cada imagen binaria i (i comprendido entre 1 y N), se calcula CDL_i(F1, F2) el CDL entre la primera subimagen obtenida por la primera ventana F1, y la segunda subimagen obtenida por la segunda ventana F2, para cada par de puntos destacables puestos en relación.
[0264] Se puede entonces calcular el CDL ponderado de todas las N imágenes binarias, es decir, se calcula CDL(F1, F2) = 1/N Σ CDL_N(F1, F2).
[0265] De manera más general, se puede calcular el CDL global del conjunto de N imágenes binarias como siendo:
[0266]
[0268] Con A<i>(respectivamente B<i>) un corte binario i de A (respectivamente B), i comprendido entre 1 y N.
[0269] Después, se compara CDL(F1, F2) con un umbral predeterminado D_CDL, como se describe anteriormente.
[0270] Si la imagen candidata está en color, se puede guardar en escala de grises y procesar como se describe anteriormente. Alternativamente, se puede prever la conversión de la imagen candidata en un espacio de color de 3 dimensiones, o de 3 canales, en este caso en un espacio RGB o un espacio CIE XYZ.
[0271] La imagen candidata se corta en C imágenes binarias, con C que es un número entero natural correspondiente al número de canales, en este caso igual a 3.
[0272] Se puede entonces tratar cada una de las C imágenes binarias de manera similar a las N imágenes binarias obtenidas cuando la imagen candidata está en escala de grises.
[0273] Así, para cada imagen binaria C, se calcula CDL_C(F1, F2), un CDL entre la primera subimagen obtenida por la primera ventana F1 y la segunda subimagen obtenida por la segunda ventana F2, para cada par de puntos destacables puestos en relación.
[0274] Se puede entonces calcular el CDL ponderado del conjunto de imágenes binarias C, es decir, se calcula CDL(F1, F2) = 1/C Σ CDL_C(F1, F2).
[0275] De manera más general, se puede calcular el CDL global del conjunto de imágenes binarias C como siendo:
[0278]
[0280] Con, en este caso, C=3
[0281] Para dos imágenes binarias se obtiene:
[0283]
[0285] Para dos imágenes en escala de grises se obtiene:
[0288]
[0290] Con N que es un número entero natural como máximo igual al número de escalas de grises, y en este caso igual al número de imágenes binarias resultantes del procesamiento de la imagen original en escalas de grises.
[0291] Para dos imágenes con C canales se obtiene:
[0294]
[0296] Siendo C el número de canales, y Ak el canal k ∈ (X;Y;Z) de la imagen A.
[0297] Después, se compara CDL(F1, F2) con un umbral D_CDL predeterminado, como se describe anteriormente.
[0298] Para aumentar la velocidad de comparación, se puede prever agrupar previamente los caracteres, carácter por carácter, de modo que cada grupo sólo incluya un tipo de carácter: un grupo sólo incluya caracteres A, otro grupo sólo incluya caracteres B, etc.
[0299] La comparación puede entonces llevarse a cabo por grupo, de manera a comparar A sólo con A, B sólo con B, etc. Aprendizaje
[0300] Se puede prever que la comparación se implemente, como alternativa o además de las realizaciones anteriores, mediante inteligencia artificial, y más precisamente mediante un algoritmo de aprendizaje profundo.
[0301] Se prevé en este caso una etapa previa de aprendizaje utilizando un algoritmo de aprendizaje profundo.
[0302] Este algoritmo está configurado para clasificar caracteres o paquetes de caracteres en un conjunto de al menos una clase, por ejemplo, una clase “verdadera” y una clase “falsa”. Se pueden considerar otras clases.
[0303] Durante la etapa de aprendizaje, el algoritmo de aprendizaje profundo se entrena con caracteres o paquetes de caracteres que se sabe que pertenecen a una de las clases del algoritmo, por ejemplo, la clase “verdadera”, y el algoritmo aprende en función de esta base.
[0304] Una vez entrenados, los caracteres o paquetes de caracteres extraídos de las imágenes candidatas son procesados por el algoritmo y clasificados por éste en una de sus clases.
[0305] Ventajosamente, es posible prever detectar la posición de cada carácter o de cada paquete de caracteres en la imagen candidata.
[0306] Gracias a esta característica, al final de la etapa de comparación, se puede conocer, y por tanto mostrar, los caracteres o paquetes de caracteres que se han copiado/pegado.
[0307] También se puede prever comparar los caracteres individuales adyacentes extraídos de dos en dos, o paquetes de caracteres adyacentes extraídos de dos en dos, por ejemplo registrando la colorimetría, los gradientes de intensidad, etc. de cada cuadro delimitador y, en particular, el fondo de cada cuadro delimitador.
[0308] Así, partiendo del principio que dos cuadros delimitadores adyacentes tienen un fondo similar, es posible determinar qué carácter o conjunto de caracteres se copió y dónde se pegó.
[0309] En el caso de un nombre o apellido, por ejemplo, es posible reconstruir el nombre o apellido original.
[0310] La presente invención permite detectar la copia de un elemento gráfico de una imagen, incluso si dicho elemento gráfico ha sufrido un post-procesamiento (remuestreo, ajuste de colores o de contraste, etc.) sin identificar no obstante el objeto original del objeto copiado.
[0311] La presente invención se puede aplicar a cualquier tipo de imagen, incluida una imagen de un documento de identidad, una imagen de una obra de arte, una imagen de un embalaje.
[0312] Participa por lo tanto en la lucha contra el fraude, en particular:
[0313] - contra el robo de identidad, por ejemplo detectando modificaciones de caracteres de un nombre, apellido, lugar, fecha, etc. en una imagen de un documento de identidad,
[0314] - contra la falsificación, por ejemplo detectando la modificación de un número de serie de un embalaje o de una marca, etc. en una imagen de un embalaje o de una etiqueta,
[0315] - contra el blanqueo de capitales y la financiación del terrorismo, por ejemplo detectando la modificación de un número o importe en una imagen de un documento fiduciario, por ejemplo una factura.
Claims (10)
1. REIVINDICACIONES
1. Procedimiento de procesamiento endógeno de una imagen candidata, para detectar si una parte de la imagen candidata se ha movido dentro de dicha imagen, siendo dicha imagen candidata única y representando un documento que comprende una pluralidad de caracteres, caracterizado por que comprende las etapas que consisten en:
- seleccionar un conjunto de caracteres de entre todos o parte de la pluralidad de caracteres, pudiendo dicho conjunto de caracteres comprender al menos dos subconjuntos de caracteres,
en el conjunto seleccionado,
- extraer al menos uno de:
al menos un conjunto de caracteres individuales,
al menos un paquete de caracteres, comprendiendo cada paquete una pluralidad de caracteres adyacentes de dos en dos,
- grabar los caracteres extraídos individualmente o por paquetes en una memoria,
- comparar los caracteres registrados de dos en dos, y
- emitir una señal representativa del resultado de la comparación.
2. Procedimiento según la reivindicación 1, en el que la etapa de selección comprende las etapas de:
- aplicar una máscara de selección predeterminada a la imagen candidata, comprendiendo la máscara un conjunto de al menos una ventana,
- seleccionar los caracteres incluidos en el conjunto de al menos una ventana,
comprendiendo la etapa de selección opcionalmente además:
- identificar un conjunto de al menos un punto destacable en la imagen candidata, y
- posicionar la máscara de selección en función de la posición de al menos un punto destacable de dicho conjunto.
3. Procedimiento según una cualquiera de las reivindicaciones anteriores, en el que la etapa de extracción comprende: - extraer cada carácter individual del conjunto, o cada paquete de caracteres del conjunto, mediante un cuadro delimitador respectivo, y
- grabar cada cuadro delimitador como una subimagen respectiva (F1, F2).
4. Procedimiento según una cualquiera de las reivindicaciones anteriores, en el que la etapa de comparación comprende:
- calcular un mapa de disimilitud local entre:
una primera subimagen (F1) de un carácter o un paquete de caracteres de la imagen candidata, y una segunda subimagen (F2) de otro carácter u otro paquete de caracteres de la imagen candidata, - comparar dicho mapa de disimilitud local con un valor umbral (D_CDL).
5. Procedimiento según una cualquiera de las reivindicaciones anteriores, que comprende además una etapa de aprendizaje preliminar mediante un algoritmo de aprendizaje profundo configurado para clasificar caracteres o paquetes de caracteres en un conjunto de al menos una clase, y en el que la etapa de comparación comprende: - procesar cada carácter individual o cada paquete de caracteres extraídos por el algoritmo de aprendizaje profundo, y
- clasificar dicho carácter o dicho paquete de caracteres en al menos una clase de dicho conjunto del algoritmo de aprendizaje profundo.
6. Procedimiento según una cualquiera de las reivindicaciones 3 a 5, que comprende además una etapa que consiste en, para un conjunto predeterminado de subimágenes, recortar el carácter o caracteres del paquete para al menos una subimagen de dicho conjunto.
7. Procedimiento según una cualquiera de las reivindicaciones 4 a 6, en el que la etapa de calcular un mapa de disimilitud comprende las etapas que consisten en:
- definir un conjunto de puntos destacables en la imagen candidata,
- seleccionar al menos una parte de los puntos destacables definidos,
- poner en correspondencia un conjunto de puntos destacables para formar pares de puntos destacables, - dividir los pares de puntos destacables coincidentes, y
para cada par de cada partición,
- calcular un mapa de disimilitud local entre:
una primera subimagen (F1) de la imagen candidata que tiene una forma predeterminada centrada en un punto destacable de dicho par de dicha partición, y
una segunda subimagen (F2) de la imagen candidata, que tiene la misma forma predeterminada y las mismas dimensiones que la primera subimagen (F1), y que está centrada en el otro punto destacable de dicho par de dicha partición.
8. Procedimiento según la reivindicación 7, en el que la etapa de definir un conjunto de puntos destacables en la imagen candidata se implementa mediante al menos uno de entre:
un detector de Moravec,
un detector de Kitchen-Rosenfeld,
un detector de Beaudet,
un detector de SUSAN,
un detector de FAST,
un detector de Hesse-Laplace,
un detector de Kadir,
un detector de MSER,
un detector de GLOH,
un detector de Harris,
un algoritmo de transformación de características visuales invariante en la escala,
un algoritmo de características robustas aceleradas,
un algoritmo de detección de puntos biométricos,
un operador de diferenciación, en particular una diferencia de gaussianas, y
un algoritmo de detección de contornos, en particular un laplaciano gaussiano.
9. Procedimiento según una cualquiera de las reivindicaciones 7 u 8, en el que para la etapa que consiste en realizar una partición de los pares de puntos destacables coincidentes,
cada partición incluye todos los pares de puntos destacables puestos en relación que satisfacen las tres desigualdades:
-
-
con D1, D2 y D3 que son tres valores umbral predefinidos,
(A; B) un primer par de puntos destacables coincidentes,
(C; D) un segundo par de puntos destacables coincidentes;
o incluye el conjunto de pares de puntos destacables puestos en relación mediante un algoritmo de partición.
10. Programa informático que comprende instrucciones de código de programa para llevar a cabo las etapas del procedimiento según una cualquiera de las reivindicaciones anteriores, cuando dicho programa se ejecuta en un ordenador.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2000395A FR3106428B1 (fr) | 2020-01-16 | 2020-01-16 | Procédé de traitement d’une image candidate |
| PCT/EP2021/050816 WO2021144427A1 (fr) | 2020-01-16 | 2021-01-15 | Procede de traitement d'une image candidate |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES3051171T3 true ES3051171T3 (en) | 2025-12-26 |
Family
ID=72088181
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES21700314T Active ES3051171T3 (en) | 2020-01-16 | 2021-01-15 | Method for processing a candidate image |
Country Status (5)
| Country | Link |
|---|---|
| EP (1) | EP4091098B1 (es) |
| ES (1) | ES3051171T3 (es) |
| FR (1) | FR3106428B1 (es) |
| PL (1) | PL4091098T3 (es) |
| WO (1) | WO2021144427A1 (es) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116563231B (zh) * | 2023-04-26 | 2024-08-30 | 北京数慧时空信息技术有限公司 | 基于卷积神经网络的遥感影像变化检测方法 |
| CN118887672B (zh) * | 2024-09-29 | 2024-11-29 | 湖北微模式科技发展有限公司 | 一种有模板图像的卡证印刷文字缺失检测方法及装置 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7672543B2 (en) * | 2005-08-23 | 2010-03-02 | Ricoh Co., Ltd. | Triggering applications based on a captured text in a mixed media environment |
| JP5591578B2 (ja) * | 2010-04-19 | 2014-09-17 | 日本電産サンキョー株式会社 | 文字列認識装置および文字列認識方法 |
| JP6080259B2 (ja) * | 2013-02-06 | 2017-02-15 | 日本電産サンキョー株式会社 | 文字切り出し装置及び文字切り出し方法 |
-
2020
- 2020-01-16 FR FR2000395A patent/FR3106428B1/fr active Active
-
2021
- 2021-01-15 EP EP21700314.4A patent/EP4091098B1/fr active Active
- 2021-01-15 PL PL21700314.4T patent/PL4091098T3/pl unknown
- 2021-01-15 ES ES21700314T patent/ES3051171T3/es active Active
- 2021-01-15 WO PCT/EP2021/050816 patent/WO2021144427A1/fr not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| EP4091098C0 (fr) | 2025-08-13 |
| EP4091098B1 (fr) | 2025-08-13 |
| PL4091098T3 (pl) | 2026-04-27 |
| WO2021144427A1 (fr) | 2021-07-22 |
| FR3106428B1 (fr) | 2022-07-29 |
| EP4091098A1 (fr) | 2022-11-23 |
| FR3106428A1 (fr) | 2021-07-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Bulatovich et al. | MIDV-2020: A comprehensive benchmark dataset for identity document analysis | |
| Risnumawan et al. | A robust arbitrary text detection system for natural scene images | |
| US10510152B2 (en) | Systems, methods, and devices for image matching and object recognition in images using textures | |
| CN113688846B (zh) | 物体尺寸识别方法、可读存储介质及物体尺寸识别系统 | |
| CN110288612B (zh) | 铭牌定位与校正方法及设备 | |
| Xue et al. | Anisotropic-scale junction detection and matching for indoor images | |
| US10025977B2 (en) | Method for identifying a sign on a deformed document | |
| Ji et al. | An evaluation of conventional and deep learning‐based image‐matching methods on diverse datasets | |
| Zhang et al. | Detecting and extracting the photo composites using planar homography and graph cut | |
| ES3051171T3 (en) | Method for processing a candidate image | |
| Morago et al. | An ensemble approach to image matching using contextual features | |
| US10867170B2 (en) | System and method of identifying an image containing an identification document | |
| Diaz-Escobar et al. | Natural Scene Text Detection and Segmentation Using Phase‐Based Regions and Character Retrieval | |
| Azzaoui et al. | Segmentation of crescent sand dunes in high resolution satellite images using a support vector machine for allometry | |
| Chiesa et al. | Advanced face presentation attack detection on light field database | |
| Bogacz et al. | Feature descriptors for spotting 3D characters on triangular meshes | |
| Benedek et al. | Building extraction and change detection in multitemporal aerial and satellite images in a joint stochastic approach | |
| Ozcanlı et al. | Generic object recognition via shock patch fragments | |
| Smith et al. | DeepKey: Towards end-to-end physical key replication from a single photograph | |
| Chang et al. | A variance-based Bayesian framework for improving Land-Cover classification through wide-area learning from large geographic regions | |
| Li | Interest points of general imbalance | |
| BR102018003125B1 (pt) | Método para reconhecimento ótico de marcadores em ambiente externo | |
| Arlazarov et al. | Mobile ID Recognition: Coarse-to-Fine Approach | |
| Sarkar et al. | Approach for Automatic Text Detection and Localization in Video Frames | |
| Sri et al. | Detection of Image Forgery for Forensic Analytics |