ES2808953T3 - Procedimiento y aparato de identificación de código de barras - Google Patents

Procedimiento y aparato de identificación de código de barras Download PDF

Info

Publication number
ES2808953T3
ES2808953T3 ES17865471T ES17865471T ES2808953T3 ES 2808953 T3 ES2808953 T3 ES 2808953T3 ES 17865471 T ES17865471 T ES 17865471T ES 17865471 T ES17865471 T ES 17865471T ES 2808953 T3 ES2808953 T3 ES 2808953T3
Authority
ES
Spain
Prior art keywords
row
pixels
barcode
character string
current
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
Application number
ES17865471T
Other languages
English (en)
Inventor
Zhengbao Liu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies Co Ltd
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 Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Application granted granted Critical
Publication of ES2808953T3 publication Critical patent/ES2808953T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10544Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation by scanning of the records by radiation in the optical part of the electromagnetic spectrum
    • G06K7/10712Fixed beam scanning
    • G06K7/10722Photodetector array or CCD scanning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/14131D bar codes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Character Discrimination (AREA)
  • Character Input (AREA)

Abstract

Un procedimiento de identificación de código de barras, comprendiendo el procedimiento: determinar, en base a una política de extracción y a una regla de caracteres predeterminada, un resultado de identificación de una imagen de código de barras, en el que la política de extracción define una fila inicial de píxeles en la imagen de código de barras y una regla para seleccionar una fila siguiente de píxeles después de una fila actual de píxeles en la imagen de código de barras, en el que la determinación comprende: seleccionar, como una fila actual, la fila inicial de píxeles definida por la política de extracción; extraer (S201) la fila actual de píxeles de la imagen de código de barras; analizar (S202) la fila actual de píxeles para obtener una cadena de caracteres actual correspondiente a la fila actual de píxeles; y determinar (S203) si la cadena de caracteres actual cumple la regla de caracteres predeterminada y (i) si es así, determinar (S208) la cadena de caracteres actual como un resultado de identificación de un código de barras en la imagen de código de barras, y (ii) de no ser así, realizar una iteración de: seleccionar (S204) como la fila actual de píxeles una fila siguiente de píxeles de acuerdo con la política de extracción; extraer (S204) la fila actual de píxeles de la imagen de código de barras; analizar (S205) la fila actual de píxeles para obtener una cadena de caracteres actual correspondiente a la fila actual de píxeles; y determinar primero si (i) (S206) la cadena de caracteres actual satisface la regla de caracteres predeterminada y, de no ser así, si (ii) (S207) la cadena de caracteres actual es la misma que la cadena de caracteres actual inmediatamente anterior, y si alguna de ellas es verdadera, determinar (S208) la cadena de caracteres actual como un resultado de identificación de un código de barras en la imagen de código de barras y, de lo contrario, continuar la iteración de seleccionar (S204), extraer (S204), analizar (S205) y determinar (S206, S207).

Description

DESCRIPCIÓN
Procedimiento y aparato de identificación de código de barras
Campo técnico
La presente solicitud se refiere al campo de las tecnologías informáticas y, en particular, a un procedimiento y a un aparato de identificación de código de barras.
Antecedentes
Con el rápido desarrollo de las tecnologías de Internet, los códigos de barras aparecieron en la vida de las personas. Al escanear e identificar los códigos de barras, se pueden implementar varios servicios como pagos, agregar amigos y de adquisición de información. La tasa de identificación de código de barras se ha convertido en una medida importante para la experiencia de usuario.
La publicación de patente WO 2010/014084 Al de Optoelectronics Co Ltd., et al., titulada "Lector de código de barras unidimensional que utiliza un sensor de imagen bidimensional", publicada el 4 de febrero de 2010, divulga un procedimiento y un aparato que utiliza un sensor de imagen bidimensional para leer un símbolo unidimensional tal como un código de barras. El código de barras unidimensional es creado en imagen usando un conjunto seleccionado de filas del sensor de imagen bidimensional, y luego se promedian las posiciones correspondientes en las filas seleccionadas. La secuencia única de valores promediados se convierte luego en un código de longitud de ejecución para decodificar los datos asociados. El número y la ubicación de las filas de elementos del sensor bidimensional que se utilizan pueden variar para ajustar diversas características del lector. La publicación de patente CN 104361 309 A de Wangyibao Co. Ltd. titulada "Procedimiento de identificación de código de barras y equipo de identificación de código de barras", publicada el 18 de febrero de 2015, divulga un procedimiento y un aparato que aborda el problema en la técnica anterior, en el que si una imagen contiene una pluralidad de códigos de barras al mismo tiempo, es imposible admitir la identificación simultánea de una pluralidad de códigos de barras al mismo tiempo, pero el escaneo y la decodificación se realizan uno por uno, lo que resulta en una baja eficiencia de reconocimiento del código de barras. Un procedimiento escanea una imagen original línea por línea, cuenta el número de píxeles en las dos bandas de color alternativamente en la línea de escaneo, obtiene una secuencia de datos de la línea de escaneo, determina si se incluye la misma o similar subsecuencia en la secuencia de datos en N escaneos consecutivos, y si es así, determina que la subsecuencia incluye al menos un código de barras y decodifica la subsecuencia. De esta manera, el procedimiento admite la identificación de una pluralidad de códigos de barras en la imagen original al mismo tiempo.
La publicación de patente JP 2009 151504 A de Fuji Xerox Co. Ltd. titulada "Dispositivo y programa de reconocimiento de códigos", publicada el 9 de julio de 2009, divulga un decodificador de código de barras que puede leer un código que puede decodificarse como múltiples tipos de códigos de barras. El documento divulga un aparato y un programa para reconocer un código de barras con un sistema de código apropiado.
Sumario
En vista de lo anterior, la presente solicitud proporciona un procedimiento y un aparato de identificación de código de barras. La invención se define en las reivindicaciones.
La presente solicitud se implementa específicamente mediante el uso de las siguientes soluciones técnicas. Se divulga un ejemplo de procedimiento de identificación de código de barras, y el procedimiento incluye: extraer una fila de píxeles de una imagen de código de barras en base a una política de extracción predeterminada; analizar la fila de píxeles para obtener una primera cadena de caracteres correspondiente; y determinar la primera cadena de caracteres como un resultado de identificación de un código de barras en la imagen de código de barras cuando la primera cadena de caracteres satisface una regla de caracteres predeterminada.
Se divulga un aparato de ejemplo para la identificación de código de barras, y el aparato incluye: una unidad de extracción de píxel, configurado para extraer una fila de píxeles de una imagen de código de barras en base a una política de extracción predeterminada; una unidad de análisis de píxel, configurada para analizar la fila de píxeles para obtener una primera cadena de caracteres correspondiente; y una primera unidad de identificación, configurada para determinar la primera cadena de caracteres como un resultado de identificación de un código de barras en la imagen de código de barras cuando la primera cadena de caracteres satisface una regla de caracteres predeterminada.
Se puede observar a partir de las descripciones anteriores que la mayoría de las cadenas de caracteres incluidas en el código de barras cumplen con la regla de caracteres predeterminada. Por lo tanto, en la presente solicitud, cuando una cadena de caracteres correspondiente a una fila de píxeles en la imagen de código de barras satisface la regla de caracteres, la cadena de caracteres se puede determinar como el resultado de identificación del código de barras sin realizar análisis una pluralidad de veces, mejorando de esta forma una tasa de identificación de código de barras.
Breve descripción de los dibujos
La Figura 1 es un diagrama de flujo esquemático que ilustra un procedimiento de identificación de código de barras, de acuerdo con una implementación a modo de ejemplo de la presente solicitud;
La Figura 2 es un diagrama de flujo esquemático que ilustra otro procedimiento de identificación de código de barras, de acuerdo con una implementación a modo de ejemplo de la presente solicitud;
La Figura 3 es un diagrama estructural esquemático que ilustra un aparato de identificación de código de barras, de acuerdo con una implementación a modo de ejemplo de la presente solicitud; y
La Figura 4 es un diagrama de bloques que ilustra un aparato de identificación de código de barras, de acuerdo con una implementación a modo de ejemplo de la presente solicitud.
Descripción de implementaciones
Las implementaciones de ejemplo se describen en detalle aquí, y los ejemplos de las implementaciones de ejemplo se presentan en los dibujos adjuntos. Cuando la siguiente descripción se refiere a los dibujos adjuntos, a menos que se especifique lo contrario, los mismos números en diferentes dibujos adjuntos representan elementos iguales o similares. Las implementaciones descritas en las siguientes implementaciones a modo de ejemplo no representan todas las implementaciones consistentes con la presente solicitud. Por el contrario, las implementaciones son solo ejemplos de aparatos y procedimientos consistentes con algunos aspectos de la presente solicitud que se describen en detalle en las reivindicaciones adjuntas.
Los términos utilizados en la presente solicitud son meramente para ilustrar implementaciones específicas, y no están destinados a limitar la presente solicitud. Los términos "un", "una", "la" y "el" de formas singulares utilizados en la presente solicitud y las reivindicaciones adjuntas también pretenden incluir formas plurales, a menos que se especifique claramente lo contrario en el contexto. Debe entenderse además que el término "y/o" utilizado en la presente memoria descriptiva indica e incluye cualquiera o todas las combinaciones posibles de uno o más elementos enumerados asociados.
Debe entenderse que, aunque los términos "primero", "segundo", "tercero", etc., pueden ser utilizados en la presente solicitud para describir varios tipos de información, la información no se limita a los términos. Estos términos solo se usan para diferenciar información del mismo tipo. Por ejemplo, sin apartarse del alcance de la presente solicitud, la primera información también puede denominarse segunda información y, de manera similar, la segunda información puede denominarse la primera información. Dependiendo del contexto, por ejemplo, la palabra "si" se usa en la presente memoria puede explicarse como "mientras ","cuando" o "en respuesta a la determinación".
La Figura 1 es un diagrama de flujo esquemático que ilustra un procedimiento de identificación de código de barras, de acuerdo con un ejemplo de implementación de la presente solicitud.
Con referencia a la Figura 1, el procedimiento de identificación de código de barras se puede aplicar a un dispositivo de terminal, como un teléfono móvil o una tableta, e incluye las siguientes etapas.
Etapa 101: Extraer una fila de píxeles de una imagen de código de barras en base a una política de extracción predeterminada.
En esta implementación, después de escanear un código de barras, el dispositivo de terminal puede obtener una imagen que incluye el código de barras. Para facilitar la identificación posterior, el dispositivo de terminal puede realizar compresión, procesamiento en escala de grises, binarización, etc. en la imagen, incluyendo el código de barras. Para el procesamiento y la implementación de esta parte, se pueden hacer referencias a la tecnología relacionada. Los detalles se omiten en la presente solicitud por simplicidad.
En esta implementación, la imagen que incluye el código de barras que se obtiene después de realizar la compresión, procesamiento de escala de grises, binarización, etc. se puede referir como una imagen de código de barras. En la presente etapa, se puede extraer una fila de píxeles de la imagen de código de barras de acuerdo con la política de extracción predeterminada. La política de extracción predeterminada es extraer píxeles en función de una unidad de una fila, y un desarrollador puede establecerla específicamente.
En un ejemplo, los píxeles pueden ser extraídos a partir de una fila predeterminada en un intervalo de un número fijo de filas, hasta que una fila de extracción objetivo sobrepasa la imagen de código de barras. Suponiendo que la fila predeterminada está establecida en la primera fila de la imagen de código de barras y que el número fijo de filas puede ser 10. En base a dicha política de extracción, la primera fila de píxeles en la imagen de código de barras se extrae por primera vez, la 11.a fila de píxeles en la imagen de código de barras se extrae por segunda vez, la 21.a fila de píxeles en la imagen de código de barras se extrae por tercera vez, y la (1 (N - 1) x io)"esima fila de píxeles en la imagen de código de barras se extraen por enésima vez. La extracción de píxel no termina hasta que la (1 (N - 1) x 10)"esima fila de píxeles sobrepasa la imagen de código de barras. Ciertamente, la fila predeterminada puede ser la segunda fila de la imagen de código de barras, y el número fijo de filas puede ser 15, etc. Las implementaciones no están especialmente limitadas en la presente solicitud.
En otro ejemplo, los píxeles pueden ser extraídos a partir de una fila predeterminada en un intervalo de un número cambiado dinámicamente de filas, hasta que una fila de extracción objetivo sobrepasa la imagen de código de barras. Suponiendo que la fila predeterminada está establecida en la primera fila de la imagen de código de barras y que el número de filas del intervalo varía de 10 a 20. En base a dicha política de extracción, la primera fila de píxeles en la imagen de código de barras se extrae por primera vez, la 11.a fila de píxeles en la imagen de código de barras se extrae por segunda vez, la 31.a fila de píxeles en la imagen de código de barras se extrae por tercera vez, la 41.a fila de píxeles en la imagen de código de barras se extrae por cuarta vez y la 61.a fila de píxeles en la imagen de código de barras se extrae por quinta vez. Por analogía, la extracción de píxeles no termina hasta que la fila de extracción objetivo sobrepasa la imagen de código de barras.
Etapa 102: Analizar la fila de píxeles para obtener una primera cadena de caracteres correspondiente.
En base a la etapa 101, después de extraer la fila de píxeles, la fila de píxeles se puede analizar para obtener la primera cadena de caracteres correspondiente. Vale la pena hacer notar que, en base a una regla de composición de código de barras, un código de barras generalmente incluye un código de verificación. Para un código de barras que incluye un código de verificación, la primera cadena de caracteres obtenida mediante el análisis ha pasado la verificación del código de verificación. Ciertamente, algunos códigos de barras no incluyen un código de verificación. Para un código de barras que no incluye un código de verificación, la primera cadena de caracteres no se verifica. Para el procesamiento y la implementación de esta parte, se pueden hacer referencias a la tecnología relacionada. Los detalles se omiten en la presente solicitud por simplicidad.
Etapa 103: Determinar la primera cadena de caracteres como un resultado de identificación de un código de barras en la imagen de código de barras cuando la primera cadena de caracteres satisfaga una regla de caracteres predeterminada.
En base a la etapa 102, después de obtener la primera cadena de caracteres, se puede determinar si la primera cadena de caracteres satisface la regla de caracteres predeterminada. Si la primera cadena de caracteres satisface la regla de caracteres, se puede determinar que la primera cadena de caracteres es el resultado de identificación del código de barras en la imagen de código de barras.
En esta implementación, la regla de caracteres puede establecerse por un desarrollador. Por ejemplo, no existen caracteres predeterminados consecutivos, y los caracteres predeterminados generalmente no incluyen 26 letras mayúsculas y minúsculas, 0 a 9 y espacios. Es decir, los caracteres predeterminados pueden ser caracteres diferentes de las 26 letras mayúsculas, las 26 letras minúsculas, 0 a 9, y los espacios, por ejemplo, los caracteres "&", "%" y "#". Específicamente, en aplicaciones reales, una probabilidad que un carácter predeterminado aparezca consecutivamente en un código de barras es casi 0. Por lo tanto, en la presente etapa, se puede determinar si no existen caracteres predeterminados consecutivos en la primera cadena de caracteres, y si no existen caracteres predeterminados consecutivos en la primera cadena de caracteres, se puede determinar que la primera cadena de caracteres es el resultado de identificación del código de barras. Ciertamente, en aplicaciones reales, el desarrollador puede establecer otra regla de caracteres basada en una característica de una cadena de caracteres incluida en un código de barras. Por ejemplo, los primeros tres dígitos en un código de barras de un producto doméstico generalmente oscilan entre 690 y 699 y, por lo tanto, la regla de caracteres puede además incluir que los primeros tres dígitos oscilen entre 690 y 699 para el código de barras del producto nacional.
Se puede observar a partir de las descripciones anteriores que la mayoría de las palabras incluidas en el código de barras cumplen la regla de caracteres predeterminada. Por lo tanto, en la presente solicitud, cuando una cadena de caracteres correspondiente a una fila de píxeles en la imagen de código de barras satisface la regla de caracteres, la cadena de caracteres se puede determinar como el resultado de identificación del código de barras sin realizar análisis una pluralidad de veces, mejorando de esta forma una tasa de identificación de código de barras.
Opcionalmente, en otro ejemplo de la presente solicitud, en base a la implementación mostrada en la Figura 1, para mejorar la precisión de la identificación del código de barras, cuando la primera cadena de caracteres obtenida mediante el análisis en la etapa 102 no satisface la regla de caracteres predeterminada, se puede determinar adicionalmente si la primera cadena de caracteres es igual a una segunda cadena de caracteres, y la primera cadena de caracteres se determina como el resultado de identificación del código de barras cuando la primera cadena de caracteres es la misma que la segunda cadena de caracteres, donde la segunda cadena de caracteres corresponde a una fila de píxeles que son diferentes de la fila de píxeles correspondiente a la primera cadena de caracteres y que se extrae de la imagen de código de barras inmediatamente anterior en base a la política de extracción.
Específicamente, aunque casi el 100% de las cadenas de caracteres incluidas en el código de barras satisfaga la regla de caracteres predeterminada, para evitar un problema de que el código de barras incluye una cadena de caracteres que no satisface la regla de caracteres y un error de identificación de código de barras se produce cuando el procedimiento mostrado en la Figura 1 se utiliza, cuando la primera cadena de caracteres obtenida mediante el análisis en la etapa 102 no cumple la regla de caracteres predeterminada, se puede determinar adicionalmente si los resultados de análisis de píxeles extraídos por dos veces consecutivas son iguales. El mismo resultado de análisis puede determinarse como el resultado de identificación del código de barras si los resultados de análisis son los mismos, mejorando de esta forma la precisión de la identificación del código de barras. Si los resultados del análisis son diferentes, los píxeles pueden continuar extrayéndose en base a la política de extracción predeterminada, y se determina si una cadena de caracteres correspondiente a los píxeles extraídos esta vez cumple la regla de caracteres, hasta que una cadena de caracteres correspondiente a una fila de píxeles satisface la regla de caracteres o las cadenas de caracteres correspondientes a píxeles extraídos por dos veces consecutivas son iguales.
Se puede observar a partir de las descripciones anteriores que en la presente solicitud, cuando una cadena de caracteres incluidos en el código de barras no puede ser identificada en base a la regla de caracteres, que puede determinarse si las cadenas de caracteres correspondientes a los píxeles extraídos por dos veces consecutivas son iguales y la misma cadena de caracteres se determina como resultado de identificación del código de barras, mejorando de esta forma la precisión de la identificación del código de barras. Ciertamente, en aplicaciones reales, para mejorar aún más la precisión de la identificación de código de barras, cuando una cadena de caracteres incluida en el código de barras no se puede identificar en función de la regla de caracteres, se puede determinar si las cadenas de caracteres correspondientes a píxeles extraídos por tres o cuatro veces consecutivas son iguales, y las cadenas consecutivas de tres o cuatro caracteres que son iguales se utilizan como resultado de identificación del código de barras. Las implementaciones no están especialmente limitadas en la presente solicitud.
Opcionalmente, en otro ejemplo de la presente solicitud, cuando la fila de extracción objetivo sobrepasa la imagen de código de barras, si el resultado de identificación del código de barras todavía no se determina en función de la regla de caracteres o la solución anterior de que las cadenas consecutivas de dos caracteres son iguales, se puede contar un número de frecuencias de ocurrencia de cada cadena de caracteres obtenida a través del análisis y una cadena de caracteres cuyo número de frecuencias de ocurrencia es más grande y mayor que 1 se determina como el resultado de identificación del código de barras en la imagen de código de barras. Por ejemplo, suponiendo que se obtienen dos cadenas de caracteres a través del análisis, que son respectivamente la cadena de caracteres A y la cadena de caracteres B, la cadena de caracteres A aparece tres veces y la cadena de caracteres B aparece una vez. En este caso, la cadena de caracteres A se puede determinar como el resultado de identificación del código de barras. En la presente solicitud, la imagen de código de barras que no puede identificarse en el procedimiento anterior puede identificarse más en función del número de frecuencias de ocurrencia de la cadena de caracteres obtenida mediante el análisis, mejorando de esta forma la precisión de la identificación del código de barras. Se puede entender que, en la implementación real, el número de frecuencias de ocurrencia utilizadas para determinar el resultado de identificación del código de barras se puede establecer en más de 2 o 3, con el fin de mejorar aún más la precisión de la identificación del código de barras. Por ejemplo, se puede establecer un número mayor de frecuencias de ocurrencia para un código de barras que no incluye un código de verificación. En esta implementación, se puede determinar que la identificación del código de barras falla si el número de frecuencias de ocurrencia de cada cadena de caracteres obtenida mediante el análisis es 1. Además, se puede determinar que la identificación del código de barras falla si no se obtiene una cadena de caracteres mediante el análisis cuando la fila de extracción objetivo sobrepasa la imagen de código de barras.
En la presente solicitud, una tasa de identificación del código de barras en base a la regla de caracteres es la más rápida, y la mayoría de los códigos de barras pueden ser identificados. Por lo tanto, el código de barras se puede identificar primero en función de la regla de caracteres en la presente solicitud. Una tasa de realización de identificación en el procedimiento en la que las cadenas de caracteres correspondientes a los píxeles extraídos por dos veces consecutivas ocupa el segundo lugar. Por lo tanto, el procedimiento puede usarse como un complemento del procedimiento de identificación basado en reglas de caracteres en la presente solicitud. La tasa de realización de identificación mediante el uso del número de frecuencias de ocurrencia es la más lenta. Por lo tanto, el procedimiento se utiliza como complemento de los dos procedimientos de identificación anteriores en la presente solicitud. Se puede ver que, en la presente solicitud, el código de barras se puede identificar en tres procedimientos de identificación, y la precisión de la identificación del código de barras se puede mejorar a la vez que se garantiza una tasa de identificación.
La Figura 2 es un diagrama de flujo esquemático que ilustra otro procedimiento de identificación de código de barras, de acuerdo con una implementación a modo de ejemplo de la presente solicitud.
Con referencia a la figura. 2, el procedimiento de identificación de código de barras en este ejemplo puede incluir las siguientes etapas.
Etapa 201: Extraer una fila predeterminada de píxeles de una imagen de código de barras en base a una política de extracción predeterminada.
En esta implementación, se supone que la imagen de código de barras obtenida después de que un dispositivo de terminal realiza compresión, procesamiento de escala de grises y binarización, etc. tiene un total de 40 filas de píxeles, la fila por defecto es la primera fila, y la política de extracción predeterminada es extraer píxeles en un intervalo de 10 filas. En la etapa actual, la primera fila de píxeles en la imagen de código de barras se extrae por primera vez.
Etapa 202: Analizar la fila de píxeles para obtener una cadena de caracteres correspondiente A.
En la presente etapa, la primera fila de píxeles en la imagen de código de barras es analizada para obtener la cadena de caracteres A correspondiente.
Etapa 203: Determinar si la cadena de caracteres A satisface una regla de caracteres predeterminada; y realizar la etapa 204 si la cadena de caracteres A no satisface la regla de caracteres; o realizar la etapa 208 si la cadena de caracteres A satisface la regla de caracteres.
Etapa 204: Extraer otra fila de píxeles de la imagen de código de barras en base a la política de extracción. En base a un resultado de determinación en la etapa 203, cuando la cadena de caracteres A correspondiente a la primera fila de píxeles en la imagen de código de barras no satisface la regla de caracteres, la 11.a fila de píxeles en la imagen de código de barras puede extraerse en base a la política de extracción.
Etapa 205: Analizar la fila de píxeles para obtener una cadena de caracteres B correspondiente.
En base a la etapa 204, la 11.a fila de píxeles se puede analizar para obtener la cadena de caracteres B correspondiente.
Etapa 206: Determinar si la cadena de caracteres B satisface la regla de caracteres; y realizar la etapa 208 si la cadena de caracteres B cumple la regla de caracteres; o realizar la etapa 207 si la cadena de caracteres B no cumple con la regla de caracteres.
Etapa 207: Determinar si la cadena de caracteres B es la misma que la cadena de caracteres (cadena de caracteres A) correspondiente a los píxeles extraídos inmediatamente antes; y realizar la etapa 208 si las cadenas de caracteres son las mismas; o continuar realizando la etapa 204 si las cadenas de caracteres son diferentes.
En base a un resultado de la determinación en la etapa 206, cuando la cadena de caracteres B correspondiente a la 11.a fila de píxeles en la imagen de código de barras no satisface la regla de caracteres, se puede determinar si la cadena de caracteres B es la misma que la cadena de caracteres A, y la etapa 208 se puede realizar si la cadena de caracteres B es la misma que la cadena de caracteres A.
Etapa 208: Determinar un resultado de identificación de un código de barras.
En base al resultado de determinación en la etapa 203, cuando la cadena de caracteres A correspondiente a la primera fila de píxeles en la imagen de código de barras satisface la regla de caracteres, la cadena de caracteres A puede determinarse como el resultado de identificación del código de barras.
En base al resultado de determinación en la etapa 206, cuando la cadena de caracteres B correspondiente a la 11.a fila de píxeles en la imagen de código de barras satisface la regla de caracteres, la cadena de caracteres B se puede determinar como el resultado de identificación del código de barras.
En base a un resultado de determinación en la etapa 207 anterior, cuando la cadena de caracteres B es la misma que la cadena de caracteres A, la cadena de caracteres B puede determinarse como el resultado de identificación del código de barras.
En esta implementación, si se determina en la etapa 207 que la cadena de caracteres B es diferente de la cadena de caracteres A, la etapa 204 se puede realizar de nuevo para extraer el 21.a fila de píxeles de la imagen de código de barras, y la etapa 202 sigue siendo realizada para analizar la 21.a fila de píxeles para obtener una cadena de caracteres correspondiente C. Se determina si la cadena de caracteres C satisface la regla de caracteres, y la cadena de caracteres C puede determinarse como el resultado de identificación del código de barras si la cadena de caracteres C cumple la regla de caracteres. Si la cadena de caracteres C no cumple con la regla de caracteres, se determina si la cadena de caracteres C es la misma que la cadena de caracteres B, y la cadena de caracteres C se puede determinar como el resultado de identificación del código de barras si la cadena de caracteres C es igual a la cadena de caracteres B. Si la cadena de caracteres C es diferente de la cadena de caracteres B, la 31.a fila de píxeles se puede extraer de la imagen de código de barras, y la 31.a fila de píxeles se analiza para obtener una cadena de caracteres correspondiente D. Si la cadena de caracteres D no satisface la regla de caracteres, y la cadena de caracteres D es diferente de la cadena de caracteres C, y la 41.a fila de píxeles sobrepasa la imagen de código de barras, se puede contar un número de frecuencias de ocurrencia de cada cadena de caracteres y una cadena de caracteres cuyo número de frecuencias de ocurrencia es más grande y mayor que 1 se determina como el resultado de identificación del código de barras. Se puede determinar que la identificación del código de barras falla si el número de frecuencias de ocurrencia de cada cadena de caracteres es 1.
En correspondencia con la implementación del procedimiento de identificación de código de barras, la presente solicitud proporciona además una implementación de un aparato de identificación de código de barras.
La implementación del aparato de identificación de código de barras en la presente solicitud se puede aplicar a un dispositivo de terminal. La implementación del aparato puede implementarse mediante software, hardware o una combinación de hardware y software. La implementación de software se utiliza como ejemplo. Como aparato lógico, el aparato se forma leyendo una instrucción de programa de computadora correspondiente en una memoria no volátil a una memoria por un procesador de un dispositivo de terminal donde se encuentra el aparato. En términos de hardware, la Figura 3 es un diagrama estructural que ilustra el hardware del dispositivo de terminal donde se encuentra el aparato de identificación de código de barras en la presente solicitud. Además de un procesador, una memoria, una interfaz de red y una memoria no volátil mostrada en la Figura 3, el dispositivo de terminal donde se encuentra el aparato en esta implementación generalmente puede incluir otro hardware basado en una función real del dispositivo de terminal. Los detalles se omiten aquí por simplicidad. La Figura 4 es un diagrama de bloques que ilustra un aparato de identificación de código de barras, de acuerdo con una implementación a modo de ejemplo de la presente solicitud.
Con referencia a la Figura 4, un aparato 300 de identificación de código de barras puede aplicarse al dispositivo de terminal mostrado en la Figura 3, y el aparato incluye una unidad de extracción de píxel 301, una unidad de análisis de píxel 302, una primera unidad de identificación 303, una unidad de determinación de igualdad 304, una segunda unidad de identificación 305, una unidad de recuento de número de frecuencia 306, una tercera unidad de identificación 307, un cuarta unidad de identificación 308, y una quinta unidad de identificación 309. La unidad de extracción de píxel 301 está configurada para extraer una fila de píxeles de una imagen de código de barras en base a una política de extracción predeterminada.
La unidad de análisis de píxel 302 está configurada para analizar la fila de píxeles para obtener una primera cadena de caracteres correspondiente.
La primera unidad de identificación 303 está configurada para determinar la primera cadena de caracteres como un resultado de identificación de un código de barras en la imagen de código de barras cuando la primera cadena de caracteres satisface una regla de caracteres predeterminada.
La unidad de determinación de igualdad 304 está configurada para determinar si la primera cadena de caracteres es igual que una segunda cadena de caracteres cuando la primera cadena de caracteres no satisface la regla de caracteres, donde la segunda cadena de caracteres corresponde a una fila de píxeles que es diferente de la fila de píxeles correspondiente a la primera cadena de caracteres y que se extrae de la imagen de código de barras inmediatamente anterior en función de la política de extracción.
La segunda unidad de identificación 305 está configurada para: determinar la primera cadena de caracteres como el resultado de identificación del código de barras de la imagen de código de barras cuando la primera cadena de caracteres es igual que la segunda cadena de caracteres; o regresar a la unidad de extracción de píxel cuando la primera cadena de caracteres es diferente de la segunda cadena de caracteres.
Opcionalmente, la política de extracción es extraer píxeles comenzando desde una fila predeterminada en un intervalo de un número fijo de filas, hasta que una fila de extracción objetivo sobrepase la imagen de código de barras.
Opcionalmente, la política de extracción es extraer píxeles comenzando desde una fila predeterminada en un intervalo de un número de filas cambiado dinámicamente, hasta que una fila de extracción objetivo sobrepase la imagen de código de barras.
La unidad de recuento de número de frecuencia 306 está configurada para contar un número de frecuencias de ocurrencia de cada cadena de caracteres obtenida a través del análisis cuando la fila de extracción objetivo sobrepasa la imagen de código de barras.
La tercera unidad de identificación 307 está configurada para determinar una cadena de caracteres cuyo número de frecuencias de ocurrencia es más grande y mayor que 1 como resultado de identificación del código de barras en la imagen de código de barras.
La cuarta unidad de identificación 308 está configurada para determinar que la identificación de código de barras falla cuando el número de frecuencias de ocurrencia de cada cadena de caracteres obtenida a través del análisis es 1.
La quinta unidad de identificación 309 está configurada para determinar que la identificación de código de barras falla si no se obtiene la cadena de caracteres a través de análisis cuando la fila de extracción objetivo sobrepasa la imagen de código de barras.
Opcionalmente, la regla de caracteres es que no existan caracteres predeterminados consecutivos, y los caracteres predeterminados no incluyen 26 letras mayúsculas y minúsculas, 0 a 9, y espacios.
Para un proceso de implementación detallado de las funciones y las funciones de cada unidad en el aparato, las referencias se pueden hacer para un proceso de implementación de las etapas en el procedimiento anterior correspondiente. Los detalles se omiten aquí por simplicidad.
Debido a que una implementación del aparato básicamente corresponde a una implementación del procedimiento, para las partes relacionadas, las referencias se pueden hacer a las descripciones relacionadas en la implementación del procedimiento. La implementación del aparato descrita anteriormente es simplemente un ejemplo. Las unidades descritas como partes separadas pueden o no estar físicamente separadas, y las partes mostradas como unidades pueden o no ser unidades físicas, pueden estar ubicadas en una posición o pueden distribuirse en una pluralidad de unidades de red. Algunos o todos los módulos se pueden seleccionar en función de las necesidades reales para lograr los objetivos de las soluciones en la presente solicitud. Una persona de habilidad ordinaria en la técnica puede comprender e implementar las implementaciones de la presente solicitud sin esfuerzos creativos.
Las descripciones anteriores son meramente ejemplos de implementaciones de la presente solicitud, pero no están destinados a limitar la presente solicitud.

Claims (8)

REIVINDICACIONES
1. Un procedimiento de identificación de código de barras, comprendiendo el procedimiento:
determinar, en base a una política de extracción y a una regla de caracteres predeterminada, un resultado de identificación de una imagen de código de barras, en el que la política de extracción define una fila inicial de píxeles en la imagen de código de barras y una regla para seleccionar una fila siguiente de píxeles después de una fila actual de píxeles en la imagen de código de barras, en el que la determinación comprende:
seleccionar, como una fila actual, la fila inicial de píxeles definida por la política de extracción; extraer (S201) la fila actual de píxeles de la imagen de código de barras;
analizar (S202) la fila actual de píxeles para obtener una cadena de caracteres actual correspondiente a la fila actual de píxeles; y
determinar (S203) si la cadena de caracteres actual cumple la regla de caracteres predeterminada y (i) si es así, determinar (S208) la cadena de caracteres actual como un resultado de identificación de un código de barras en la imagen de código de barras, y (ii) de no ser así, realizar una iteración de: seleccionar (S204) como la fila actual de píxeles una fila siguiente de píxeles de acuerdo con la política de extracción;
extraer (S204) la fila actual de píxeles de la imagen de código de barras;
analizar (S205) la fila actual de píxeles para obtener una cadena de caracteres actual correspondiente a la fila actual de píxeles; y
determinar primero si (i) (S206) la cadena de caracteres actual satisface la regla de caracteres predeterminada y, de no ser así, si (ii) (S207) la cadena de caracteres actual es la misma que la cadena de caracteres actual inmediatamente anterior, y si alguna de ellas es verdadera, determinar (S208) la cadena de caracteres actual como un resultado de identificación de un código de barras en la imagen de código de barras y, de lo contrario, continuar la iteración de seleccionar (S204), extraer (S204), analizar (S205) y determinar (S206, S207).
2. El procedimiento de acuerdo con la reivindicación 1, en el que la política de extracción es extraer píxeles comenzando desde una fila predeterminada y luego en un intervalo de un número fijo de filas, hasta que una fila de extracción objetivo sobrepase la imagen de código de barras.
3. El procedimiento de acuerdo con la reivindicación 1, en el que la política de extracción es extraer píxeles comenzando desde una fila predeterminada a una fila de extracción objetivo en base al intervalo de extracción que cambia dinámicamente un intervalo entre las filas a extraer, hasta que la fila de extracción objetivo sobrepase la imagen de código de barras.
4. El procedimiento de acuerdo con la reivindicación 2 o 3, que además comprende:
contar un número de frecuencias de ocurrencia de cada cadena de caracteres obtenida mediante el análisis cuando la fila de extracción objetivo sobrepasa la imagen de código de barras; y determinar una cadena de caracteres cuyo número de frecuencias de ocurrencia es más grande y mayor que 1 como resultado de identificación del código de barras en la imagen de código de barras.
5. El procedimiento de acuerdo con la reivindicación 4, que además comprende:
determinar que la identificación del código de barras falla cuando el número de frecuencias de ocurrencia de cada cadena de caracteres obtenida mediante el análisis es 1.
6. El procedimiento de acuerdo con la reivindicación 1, en el que la regla de caracteres es que no existen caracteres predeterminados consecutivos, y los caracteres predeterminados consecutivos no comprenden letras mayúsculas, letras minúsculas, números del 0 al 9 ni espacios.
7. El procedimiento de acuerdo con la reivindicación 1, que además comprende:
obtener una imagen que incluye el código de barras; y
procesar la imagen realizando al menos una operación de compresión, un procesamiento en escala de grises y una operación de binarización.
8. Un aparato de identificación de código de barras, en el que el aparato está configurado para realizar todas las etapas del procedimiento de una cualquiera de las reivindicaciones 1 a 7.
ES17865471T 2016-10-24 2017-10-17 Procedimiento y aparato de identificación de código de barras Active ES2808953T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610939696.3A CN107016316B (zh) 2016-10-24 2016-10-24 一种条形码的识别方法和装置
PCT/CN2017/106483 WO2018077059A1 (zh) 2016-10-24 2017-10-17 一种条形码的识别方法和装置

Publications (1)

Publication Number Publication Date
ES2808953T3 true ES2808953T3 (es) 2021-03-02

Family

ID=59439485

Family Applications (1)

Application Number Title Priority Date Filing Date
ES17865471T Active ES2808953T3 (es) 2016-10-24 2017-10-17 Procedimiento y aparato de identificación de código de barras

Country Status (12)

Country Link
US (1) US10726223B2 (es)
EP (1) EP3531335B1 (es)
JP (1) JP2019537177A (es)
KR (1) KR102194567B1 (es)
CN (2) CN111274841B (es)
ES (1) ES2808953T3 (es)
MY (1) MY193086A (es)
PH (1) PH12019500901A1 (es)
PL (1) PL3531335T3 (es)
SG (1) SG11201903685PA (es)
TW (1) TWI683258B (es)
WO (1) WO2018077059A1 (es)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274841B (zh) * 2016-10-24 2023-05-12 创新先进技术有限公司 一种条形码的识别方法和装置
CN111144161A (zh) * 2020-04-03 2020-05-12 支付宝(杭州)信息技术有限公司 条形码的识别方法及装置、商品信息确定方法及支付方法
JP7690354B2 (ja) * 2021-08-26 2025-06-10 キヤノン株式会社 画像処理装置、プログラム、画像処理方法
CN119445229B (zh) * 2024-10-29 2025-11-25 中国物品编码中心 一种条码检测方法、装置、设备及介质

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4873426A (en) 1988-08-03 1989-10-10 Image Business Systems Corporation Technique for reading bar codes
JP3376175B2 (ja) * 1995-07-06 2003-02-10 富士通株式会社 バーコード認識装置
JP3758266B2 (ja) * 1997-01-08 2006-03-22 株式会社デンソー コード読取装置
JP2005165948A (ja) * 2003-12-05 2005-06-23 Toshiba Social Automation Systems Co Ltd バーコード読み取り方法及びバーコード読み取り装置
CN100479331C (zh) * 2004-03-30 2009-04-15 深圳市朗科科技股份有限公司 条码的解码方法
GB2424109B (en) 2005-03-08 2008-02-27 Roke Manor Research Information encoding methods, and sets of graphical codes
CN101093547B (zh) * 2007-05-18 2010-06-09 上海邮政科学研究院 基于高度参数的条码和数字协同识别物品的方法
CN100456314C (zh) * 2007-05-31 2009-01-28 中国农业大学 基于聊天用摄像头的快速响应矩阵码识读方法
JP5092732B2 (ja) * 2007-12-19 2012-12-05 富士ゼロックス株式会社 コード認識装置及びプログラム
EP2310896B1 (en) * 2008-07-30 2014-03-19 Optoelectronics Co., Ltd. One dimensional barcode reader using two dimensional image sensor
CN101556618A (zh) * 2009-05-07 2009-10-14 中兴通讯股份有限公司 流媒体播放方法及终端
US8254725B2 (en) * 2009-07-28 2012-08-28 Ncr Corporation Apparatus, method and system for elongating pixel data
CN101882207B (zh) * 2010-06-01 2012-06-20 福建新大陆电脑股份有限公司 Data Matrix码条码解码芯片及其解码方法
US8523075B2 (en) * 2010-09-30 2013-09-03 Apple Inc. Barcode recognition using data-driven classifier
JP2012198763A (ja) * 2011-03-22 2012-10-18 Denso Wave Inc コードリーダ
CN102737214A (zh) * 2011-04-15 2012-10-17 上海真石信息技术有限公司 条形码图像阀值频率手机识别技术
CN102521558B (zh) * 2011-11-18 2014-04-02 深圳市宝捷信科技有限公司 一种条码识别方法及装置
CN103136500A (zh) * 2011-11-24 2013-06-05 成绵广 分类方法
CN102779275B (zh) * 2012-07-04 2015-06-17 广州广电运通金融电子股份有限公司 一种纸类字符识别方法及相关装置
CN103914680B (zh) * 2013-01-07 2018-03-23 上海宝信软件股份有限公司 一种喷印字符图像识别与校验系统及方法
US9324052B2 (en) * 2014-03-28 2016-04-26 Mckesson Medical-Surgical Minnesota Supply Inc. System, method, and apparatus for barcode identification workflow
CN104112153B (zh) 2014-07-17 2017-10-10 上海透云物联网科技有限公司 基于移动终端的条维码识别方法及其系统
CN104361309B (zh) * 2014-12-05 2017-08-29 网易宝有限公司 条形码识别方法和设备
CN105991670B (zh) * 2015-01-28 2020-02-14 中兴通讯股份有限公司 数据分享方法、数据分享装置及终端
CN104992136B (zh) 2015-07-29 2018-08-03 北京京东尚科信息技术有限公司 识别条形码的方法及装置
CN111274841B (zh) * 2016-10-24 2023-05-12 创新先进技术有限公司 一种条形码的识别方法和装置

Also Published As

Publication number Publication date
MY193086A (en) 2022-09-26
EP3531335A1 (en) 2019-08-28
WO2018077059A1 (zh) 2018-05-03
PH12019500901A1 (en) 2019-12-02
KR102194567B1 (ko) 2020-12-28
KR20190071780A (ko) 2019-06-24
CN111274841A (zh) 2020-06-12
JP2019537177A (ja) 2019-12-19
US20190251313A1 (en) 2019-08-15
TW201816659A (zh) 2018-05-01
CN107016316B (zh) 2020-01-31
TWI683258B (zh) 2020-01-21
EP3531335A4 (en) 2019-08-28
CN107016316A (zh) 2017-08-04
SG11201903685PA (en) 2019-05-30
PL3531335T3 (pl) 2020-11-02
US10726223B2 (en) 2020-07-28
CN111274841B (zh) 2023-05-12
EP3531335B1 (en) 2020-07-22

Similar Documents

Publication Publication Date Title
US11954930B2 (en) Decoding 1D-barcodes in digital capture systems
ES2808953T3 (es) Procedimiento y aparato de identificación de código de barras
CN101882207B (zh) Data Matrix码条码解码芯片及其解码方法
US9501680B2 (en) Method and device for batch scanning 2D barcodes
CN101908125B (zh) Qr码条码解码芯片及其解码方法
US8550351B2 (en) Matrix type two-dimensional barcode decoding chip and decoding method thereof
ES2972819T3 (es) Ordenador móvil configurado para leer múltiples indicios decodificables
CN102622626B (zh) 二维码的识别方法
AU2010234172B2 (en) Two-dimensional array code
CN101908128B (zh) Aztec Code条码解码芯片及其解码方法
CN102004935A (zh) 基于ldpc码的二维条码编码与解码方法
Kieseberg et al. Malicious pixels using QR codes as attack vector
AU2010234173B2 (en) Two-dimensional array code
CN117540762A (zh) 条形码的识别方法、装置、设备及可读存储介质
KR101109510B1 (ko) 2차원 바코드 인식방법
CN101923632B (zh) Maxi Code条码解码芯片及其解码方法
CN113869077A (zh) 一种条码识别方法、装置及电子设备
KR101109509B1 (ko) 모바일 기기용 2차원 바코드
CN114564978B (zh) 用于二维码解码的方法及装置、电子设备、存储介质
CN104200251A (zh) 一种二维码
HK1241099A (en) Method and apparatus for identifying bar code
HK1241099A1 (en) Method and apparatus for identifying bar code
CN106022201A (zh) 全向可读二维条形码系统及其识读方法