ES2972819T3 - Ordenador móvil configurado para leer múltiples indicios decodificables - Google Patents
Ordenador móvil configurado para leer múltiples indicios decodificables Download PDFInfo
- Publication number
- ES2972819T3 ES2972819T3 ES21160116T ES21160116T ES2972819T3 ES 2972819 T3 ES2972819 T3 ES 2972819T3 ES 21160116 T ES21160116 T ES 21160116T ES 21160116 T ES21160116 T ES 21160116T ES 2972819 T3 ES2972819 T3 ES 2972819T3
- Authority
- ES
- Spain
- Prior art keywords
- image
- decodable
- indicia
- decodable indicia
- successfully decoded
- 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
- 238000003384 imaging method Methods 0.000 claims abstract description 61
- 230000004044 response Effects 0.000 claims abstract description 29
- 238000004891 communication Methods 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims description 33
- 230000000007 visual effect Effects 0.000 claims description 13
- 239000003550 marker Substances 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 20
- 238000012544 monitoring process Methods 0.000 description 13
- 230000008878 coupling Effects 0.000 description 9
- 238000010168 coupling process Methods 0.000 description 9
- 238000005859 coupling reaction Methods 0.000 description 9
- 238000005286 illumination Methods 0.000 description 9
- 238000012015 optical character recognition Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 239000011521 glass Substances 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 4
- 239000000758 substrate Substances 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 239000012530 fluid Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 239000007788 liquid Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 238000010079 rubber tapping Methods 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 230000008685 targeting Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 210000003811 finger Anatomy 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1626—Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
- G06F1/1686—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/10544—Methods 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/10821—Methods 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 further details of bar or optical code scanning devices
- G06K7/10881—Methods 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 further details of bar or optical code scanning devices constructional details of hand-held scanners
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods 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/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods 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/1404—Methods for optical code recognition
- G06K7/1439—Methods for optical code recognition including a method step for retrieval of the optical code
- G06K7/1443—Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- General Engineering & Computer Science (AREA)
- Toxicology (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- User Interface Of Digital Computer (AREA)
- Character Input (AREA)
- Studio Devices (AREA)
- Character Discrimination (AREA)
- Image Input (AREA)
- Telephone Function (AREA)
- Image Processing (AREA)
Abstract
Un dispositivo puede comprender un procesador, una memoria, un subsistema de imágenes configurado para adquirir una imagen de indicios decodificables, una pantalla y una interfaz de comunicación. El dispositivo puede configurarse, en respuesta a la adquisición de una imagen de uno o más objetos dentro de un campo de visión del subsistema de imágenes, para localizar dentro de la imagen y decodificar uno o más indicios decodificables. El dispositivo se puede configurar además para mostrar la imagen en la pantalla y marcar visualmente uno o más indicios decodificables decodificados con éxito. El dispositivo puede configurarse además, en respuesta a la aceptación de la entrada del usuario, seleccionando al menos un indicio decodificable del uno o más indicios decodificables mostrados, para transmitir a una computadora externa al menos un mensaje decodificado correspondiente al al menos un indicio decodificable. (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Ordenador móvil configurado para leer múltiples indicios decodificables
Referencia cruzada a solicitudes relacionadas
La presente solicitud reivindica prioridad sobre la solicitud de patente de EE.UU. n.° de serie 13/748,926, presentada el 24 de enero de 2013, y la solicitud provisional de EE.UU. relacionada n.° 61/726,747, presentada el 15 de noviembre de 2012, cada una de las cuales se titula "Mobile Computer Configured to Read Multiple Decodable Indicia". Esta solicitud reivindica además prioridad sobre la solicitud de patente de EE.UU. n.° de serie 13/743,477, presentada el 17 de enero de 2013, y la solicitud provisional de EE.UU. relacionada n.° 61/737,552, presentada el 14 de diciembre de 2012, cada una de las cuales se titula " Selective Output of Decoded Message Data".
Campo de la invención
La presente invención se refiere en general a dispositivos digitales, y en particular a ordenadores móviles configurados para leer indicios decodificables. La presente invención se refiere en general a sistemas ópticos y específicamente a sistemas ópticos que tienen salida selectiva de datos de mensaje decodificado.
Antecedentes de la invención
Los indicios decodificables son patrones, marcas o mensajes diseñados para ser escaneados e interpretados por ordenador y/u otros métodos mecánicos y/o automatizados. Muchos tipos conocidos de indicios decodificables entran en la categoría de códigos de barras. Los códigos de barras son representaciones gráficas de datos, las más comunes de las cuales se denominan códigos de barras unidimensionales (1D) y bidimensionales (2D). Los códigos de barras 1D son entidades gráficas que representan datos variando la anchura y el espaciado de las líneas paralelas. Los códigos de barras 2D también son entidades gráficas que representan datos, pero además de las líneas paralelas, o barras, un código de barras 2D puede contener rectángulos, puntos, hexágonos y otros patrones geométricos en dos dimensiones. Los datos codificados en los códigos de barras son interpretados por escáneres ópticos y/o software. Los códigos de barras pueden ser escaneados por escáneres ópticos especiales denominados lectores de códigos de barras, así como por dispositivos de propósito general tales como los teléfonos inteligentes. Otros tipos de indicios decodificables son el reconocimiento óptico de caracteres (OCR), los glifos u otras marcas visuales. Asimismo, las tecnologías no visuales, tales como las bandas magnéticas, identificación por radiofrecuencia (RFID) y otras tecnologías no visuales entran también en la definición de indicios decodificables.
El análisis anterior se proporciona simplemente como información de antecedentes general y no pretende usarse como ayuda para determinar el alcance del objeto reivindicado.
Los circuitos integrados de sensores de imagen que tienen matrices de sensores de imagen de múltiples píxeles están disponibles comercialmente. Los aparatos de imágenes que tienen matrices de sensores de imágenes están disponibles en una variedad de formas, incluyendo cámaras digitales, teléfonos móviles, equipos de vigilancia, equipos de diagnóstico médico y aparatos de decodificación de indicios. Los aparatos de imágenes están disponibles en formas con capacidad de decodificación y sin capacidad de decodificación de indicios. Los aparatos de imágenes con capacidad de decodificación de indicios permanente o selectivamente activada pueden considerarse aparatos de lectura de indicios.
Los aparatos de lectura de indicios para leer indicios decodificables están disponibles en múltiples variedades. Por ejemplo, los aparatos de lectura de indicios con características mínimas que carecen de teclado y pantalla son comunes en aplicaciones de punto de venta. Los aparatos de lectura de indicios que carecen de teclado y pantalla están disponibles en el factor de forma reconocible estilo de pistola que tiene un mango y un botón de disparo (gatillo) que puede accionarse con un dedo índice. También se dispone de aparatos de lectura de indicios con teclados y pantallas, a menudo en una forma en la que el teclado y la pantalla suelen estar situados en una pantalla de tipo pantalla táctil, por ejemplo, en un teléfono móvil. Los aparatos de lectura de indicios equipados con teclado y pantalla se suelen usarse en aplicaciones de venta al por menor, transporte y almacenamiento. En un aparato de lectura de indicios equipado con teclado y pantalla, un botón de disparo para activar la salida de mensajes decodificados suele estar situado en un ubicación que permite su accionamiento por el pulgar de un operario. Los aparatos de lectura de indicios sin teclado ni pantalla o equipados con teclado y pantalla se suelen usarse en diversas aplicaciones de recogida de datos, incluyendo las aplicaciones de punto de venta, las aplicaciones de inventario, las aplicaciones de transporte, las aplicaciones de almacenamiento, las aplicaciones de control de seguridad, las aplicaciones de atención al paciente y las aplicaciones de uso personal, en las que los aparatos de lectura de indicios equipados con teclado y pantalla se suministran habitualmente mediante un teléfono móvil personal con función de lectura de indicios. También existen aparatos de lectura de indicios de montaje fijo, por ejemplo, instalados debajo o cerca de un mostrador en un punto de venta. Algunos aparatos de lectura de indicios están adaptados para leer símbolos de códigos de barras, incluidos uno o más códigos de barras unidimensionales (1D), códigos de barras 1D apilados y códigos de barras bidimensionales (2D). Otros aparatos de lectura de indicios están adaptados para leer caracteres OCR, mientras que otros aparatos de lectura de indicios están equipados para leer tanto símbolos de códigos de barras como caracteres OCR. El documento US 5 821 523 A describe un dispositivo de lectura de indicios según el preámbulo de la reivindicación 1.
Compendio de la invención
Según la presente invención, se proporciona un dispositivo de lectura de indicios, un método de lectura de indicios y un programa informático para ejecutar dicho método de lectura de indicios, tal como se define en las reivindicaciones 1, 10 y 19 independientes. Las realizaciones preferidas se definen en las reivindicaciones 2-9, 11-18 dependientes. Todas las demás realizaciones ilustradas se dan simplemente como información adicional de antecedentes técnicos para una mejor comprensión de los principios generales de funcionamiento del objeto tal como se define en las reivindicaciones 1-19.
Un aparato de imágenes puede funcionar para capturar un fotograma de datos de imagen que representa una escena que tiene uno o más indicios decodificables y visualizar los datos de imagen correspondientes al uno o más indicios decodificables. El aparato de imágenes puede funcionar para que en respuesta a un control de entrada del usuario, se emitan selectivamente datos de mensaje decodificado de un indicio decodificable seleccionado. Se pueden proporcionar uno o más programas ejecutables por el procesador para facilitar la salida selectiva de datos de mensaje decodificado.
Breve descripción de los dibujos
Las características descritas en la presente memoria pueden comprenderse mejor con referencia a los dibujos que se describen a continuación. Los dibujos no están necesariamente a escala, sino que se hace hincapié en general en ilustrar los principios de la invención. Debe entenderse que la presente invención no se limita a las disposiciones e instrumentos precisos que se muestran en los dibujos.
Las FIGS. 1a-1b ilustran esquemáticamente una realización de un ordenador móvil descrito en la presente memoria;
La FIG. 2 muestra un diagrama a nivel de componentes de una realización ilustrativa del ordenador móvil descrito en la presente memoria;
La FIG. 3 ilustra esquemáticamente un diagrama de red de una realización ilustrativa de un sistema de recogida de datos que emplea el ordenador móvil descrito en la presente memoria; y
La FIG. 4 ilustra esquemáticamente una realización de un método de procesamiento de múltiples indicios decodificables por el ordenador móvil descrito en la presente memoria.
La FIG. 5 es una vista de forma física en perspectiva (con vista lateral suplementaria) de un aparato de imágenes que visualiza representaciones de una pluralidad de códigos de barras;
La FIG. 6 es un diagrama de bloques de un aparato de imágenes;
La FIG. 7 es un medio de almacenamiento legible por ordenador que almacena uno o más programas;
La FIG. 8 es un diagrama de flujo que ilustra funciones de uno o más programas que pueden ser almacenados en un medio legible por ordenador;
Las FIGS. 9-11 son ejemplos de capturas de pantalla (por ejemplo, que pueden ser visualizadas por una pantalla de un aparato de imágenes de mano portátil o para llevar puesto) que visualizan datos de imagen correspondientes a indicios decodificables.
Descripción detallada
La captura de indicios decodificables puede realizarse usando varias tecnologías. Para capturar códigos de barras 1D puede usarse el escaneado láser o la captura lineal de imágenes. Algunos códigos de barras 2D conocidos como códigos apilados, tal como PDF417, también pueden leerse usando estas tecnologías; sin embargo, los códigos de barras 2D conocidos como códigos matriciales requieren dispositivos que puedan capturar una imagen de 2 dimensiones (2D) del código de barras. Estas imágenes 2D también son útiles para decodificar códigos 1D, 2D apilados, así como OCR u otros indicios visuales decodificables. En el caso de las etiquetas RFID, las bandas magnéticas u otros indicios no decodificables visualmente, las tecnologías pueden implicar el uso de RF, cabezales de lectura magnética u otros medios de captura no visuales. Para los fines de esta descripción, la captura de cualquier indicio decodificable se denominará en general "imagen", y la representación capturada del indicio decodificable por un dispositivo se denominará "imagen".
Los ordenadores móviles, tal como los teléfonos inteligentes, los ordenadores personales (PC) tipo tableta, los asistentes digitales personales (PDA) y otros dispositivos similares equipados con dispositivos de imágenes pueden usarse para leer y/o decodificar indicios decodificables. "Ordenador" se refiere en la presente memoria a un dispositivo programable para el procesamiento y control de datos, que incluye una unidad de procesamiento central (CPU), una memoria y al menos una interfaz de comunicación.
En situaciones en las que dos o más indicios decodificables están presentes dentro una imagen capturada, puede ser necesario un procesamiento adicional para determinar qué indicios y en qué orden deben decodificarse y/o usarse para una aplicación concreta (por ejemplo, para recuperar información de un ordenador externo).
En algunas realizaciones, un ordenador móvil puede, tras localizar y decodificar dos o más indicios decodificables dentro una imagen capturada, visualizar la imagen y marcar visualmente los indicios decodificados dentro de la imagen (por ejemplo, resaltando los indicios decodificables decodificados con éxito, dibujando un recuadro delimitador alrededor de los indicios decodificables decodificados con éxito, colocando un punto circular o algún otro marcador visual en o alrededor del centro de los indicios decodificables decodificados con éxito, etc.). El ordenador móvil puede aceptar entradas del usuario indicando qué indicios y en qué orden deben ser usados por una o más aplicaciones. En una realización ilustrativa, en respuesta a la aceptación de la entrada del usuario que selecciona uno o más indicios decodificables, el ordenador móvil puede transmitir a un ordenador externo los mensajes decodificados correspondientes a los indicios seleccionados. En otra realización ilustrativa, en respuesta a la aceptación de la entrada del usuario que selecciona dos o más indicios decodificables, el ordenador móvil puede transmitir a un ordenador externo, en el orden indicado por el usuario, los mensajes decodificados correspondientes a los indicios seleccionados.
En otro aspecto, la selección de uno o más indicios decodificables puede realizarse a través de la pantalla táctil tocando el usuario en las áreas de la pantalla que contienen las imágenes de uno o más indicios decodificables. En una realización ilustrativa, el toque repetitivo del usuario en el área de la pantalla que contiene una imagen de indicio decodificable puede activar o desactivar la inclusión del indicio y/o un mensaje decodificado correspondiente al indicio en la secuencia de mensajes que se transmitirán a un ordenador externo.
Como se ha indicado anteriormente, el ordenador móvil puede, tras localizar y decodificar dos o más indicios decodificables dentro una imagen capturada, visualizar la imagen y marcar visualmente los indicios decodificados dentro de la imagen (por ejemplo, resaltando los indicios decodificables decodificados con éxito, dibujando un recuadro delimitador alrededor de los indicios decodificables decodificados con éxito, colocando un punto circular o algún otro marcador visual en o alrededor del centro de los indicios decodificables decodificados con éxito, etc.). El ordenador móvil puede aceptar la entrada del usuario que selecciona dentro de la imagen visualizada al menos un indicio decodificable que no esté marcado como decodificado con éxito, y decodificar el indicio decodificable seleccionado.
En algunas realizaciones, un ordenador móvil puede visualizar esquemáticamente uno o más indicios decodificables no visuales decodificados con éxito (por ejemplo, superpuestos sobre una imagen adquirida por el dispositivo de imágenes del ordenador móvil) y aceptar la entrada del usuario indicando qué indicios decodificables no visuales y en qué orden deben decodificarse y/o usarse para una aplicación concreta (por ejemplo, para recuperar información de un ordenador externo).
Una realización ilustrativa de un ordenador móvil descrito en la presente memoria se muestra en la FIG. 1a (vista del panel frontal) y FIG. 1b (vista del panel lateral). El ordenador 100 móvil puede comprender una carcasa 52 dentro de la cual otros componentes del ordenador 100 móvil pueden estar dispuestos. Una pantalla 54 puede estar dispuesta en el panel 56 frontal. También puede estar dispuesta en el panel 56 frontal un teclado 64 que incluya teclas 68 funcionales, teclas 72 de navegación, y/o teclas numéricas. En el panel inferior o lateral de la carcasa 52 puede estar dispuesto al menos un conector de una interfaz de comunicación por cable (por ejemplo, un conector USB, PCMCIA, Ethernet o MiniUSB). Un profesional experto apreciaría el hecho de que otros factores de forma del ordenador 100 móvil están dentro del alcance de la presente descripción.
El diagrama a nivel de componentes de una realización ilustrativa del ordenador móvil se describe ahora con referencia a la FIG. 2. El ordenador 100 móvil puede incluir uno o más procesadores 1060 acoplados comunicativamente al bus 1500 de sistema. Por ejemplo, uno o más procesadores 1060 pueden ser o incluir ilustrativamente una unidad central de procesamiento (CPU), un dispositivo lógico programable complejo (CPLD), un circuito integrado de aplicación específica (ASIC), una matriz de puertas programables en campo (FPGA), o cualquier tipo de circuito capaz de procesar operaciones lógicas, según varias realizaciones.
También acoplados al bus 1500 de sistema puede haber varios circuitos de interfaz para acoplar los dispositivos periféricos, incluyendo, por ejemplo, el circuito 1302 de interfaz para acoplar la pantalla 1304, y el circuito 1402 de interfaz para acoplar el teclado 1404 y el dispositivo 1405 señalador al bus 1500 de sistema. En algunas realizaciones, el dispositivo señalador puede ser proporcionado por una superposición de pantalla táctil asociada con la pantalla 1304.
El ordenador 100 móvil puede comprender además una o más interfaces 1604, 1608 de comunicación para proporcionar comunicaciones con dispositivos externos. Las interfaces 1604, 1608 de comunicación pueden incluir una o más interfaces por cable (por ejemplo, Ethernet (IEEE 802.3), USB, RS/485, etc.) y una o más interfaces inalámbricas (por ejemplo, interfaces configuradas para soportar al menos un protocolo de la familia de protocolos IEEE 802.11/802.15/802.16, al menos un protocolo de la familia de protocolos familia de protocolos HSPA/GSM/GPRS/EDGE, protocolo TDMA, protocolo UMTS, protocolo LTE, y/o al menos un protocolo de la familia de protocolos CDMA/1xEV-DO).
También acoplada al bus 1500 de sistema puede estar la memoria 1085 proporcionada por la memoria de acceso aleatorio (RAM) 1080. En algunas realizaciones, la memoria 1085 puede comprender además una memoria no volátil tal como EPROM 1082, y/o un dispositivo 1084 de memoria de almacenamiento. En una realización, el dispositivo 1084 de memoria de almacenamiento puede ser proporcionado por un dispositivo de almacenamiento de disco magnético. Alternativamente, el dispositivo 1084 de memoria de almacenamiento puede ser proporcionado por un dispositivo de almacenamiento semiconductor tal como ROM, EPROM, memoria flash, y/o cualquier otro dispositivo de almacenamiento tangible legible por ordenador que pueda almacenar programas informáticos e información digital.
En algunas realizaciones, el ordenador 100 móvil puede incluir además una unidad de acceso directo a memoria (DMA) 1070 que proporciona comunicaciones directas de uno o más dispositivos acoplados comunicativamente al bus 1500 de sistema con la RAM 1080. Alternativamente, el ordenador 100 móvil puede emplear un bus de sistema que proporcione un mecanismo de arbitraje de bus (por ejemplo, un bus PCI) eliminando así la necesidad de un controlador DMA central. Pueden proporcionarse otras realizaciones de la arquitectura del bus de sistema y/o componentes de acceso directo a memoria que proporcionen una transferencia de datos eficiente entre uno o más dispositivos acoplados comunicativamente al bus 1500 de sistema y la RAM 1080.
En otro aspecto, el ordenador 100 móvil puede incluir un dispositivo 1040 de imágenes integrado configurado para adquirir imágenes monocromas y/o en color bidimensionales. El dispositivo 1040 de imágenes puede comprender un sensor 1032 de imagen que incluye una matriz de sensores 1033 de imagen de múltiples píxeles que tiene píxeles dispuestos en filas y columnas, un circuito 1034 de columna y un circuito 1035 de fila asociados. En una realización, el sensor 1033 de imagen puede ser proporcionado por un sensor de imagen de dispositivo de carga acoplada (CCD). En otra realización, el sensor de imagen puede ser proporcionado por un sensor de imagen de semiconductor de óxido metálico complementario (CMOS). Un profesional experto apreciaría el hecho de que otros tipos de sensores de imagen están dentro del alcance de la invención. Asociado con el sensor 1032 de imagen puede haber un circuito 1036 amplificador, y un convertidor 1037 A/D que convierte la información de imagen en forma de señales analógicas leídas por el sensor 1033 de imagen en información de imagen en forma de señales digitales. En una realización, el convertidor 1037 A/D puede ser proporcionado por una matriz A/D.
El sensor 1032 de imagen también puede tener un circuito 1038 de temporización y control asociado para su uso en el control, por ejemplo, del periodo de exposición del sensor 1032 de imagen, ganancia aplicada al circuito 1036 amplificador. Como se ha indicado en la presente memoria anteriormente, los componentes 1032, 1036, 1037 y 1038 de circuito se pueden empaquetar en un dispositivo 1040 de imágenes común.
El ordenador 100 móvil puede incluir un circuito 1026 de interfaz para acoplar el circuito 1038 de temporización y control del sensor de imagen al bus 1500 de sistema. El ordenador 100 móvil puede configurarse para leer señales analógicas representativas de la luz incidente sobre uno o más píxeles. Las señales analógicas leídas pueden ser amplificadas por el amplificador 1036 de señal analógica. Las señales analógicas pueden entonces ser alimentadas a la entrada del ADC 1037. Los valores digitales resultantes representativos de las señales analógicas pueden almacenarse en una memoria del sistema, tal como la RAM 1080. Los datos de fotograma de imagen almacenados en la RAM 1080 pueden estar en forma de valores de píxel multibit, representando cada valor de píxel multibit la luz incidente sobre un píxel del sensor 1033 de imagen. La unidad DMA 1070 puede encaminar la información de imagen leída desde el sensor 1032 de imagen a la RAM 1080. En otro aspecto, el procesador 1060 puede programarse para leer datos de imagen almacenados en la memoria 1080 y someter dichos datos de imagen a varios algoritmos de procesamiento de imágenes.
En algunas realizaciones, el ordenador 100 móvil puede incluir una lente 1110 de imágenes de enfoque variable para su uso en el enfoque de una imagen de un indicio decodificable situado dentro de un campo de visión 140 sobre un sustrato 50 sobre el sensor 1033 de imagen. Los rayos de luz de imágenes pueden transmitirse alrededor del eje 25 de imágenes. La lente 1110 de imágenes de enfoque variable puede adaptarse para ser capaz de múltiples distancias de mejor enfoque y múltiples longitudes focales. La 1110 lente de imágenes de enfoque variable puede funcionar para proporcionar una nueva distancia de mejor enfoque y/o longitud focal dentro de una fracción de un tiempo de fotograma en respuesta a una señal de control de entrada aplicada a la lente 1110 de imágenes de enfoque variable. En una realización, la lente 1110 de imágenes de enfoque variable puede ser proporcionada por una lente de imágenes deformable, por ejemplo, una lente de fluido deformable o una lente de gel. En otra realización, la lente 1110 de imágenes de enfoque variable puede ser proporcionada por una lente de fluido no deformable, por ejemplo, una lente de líquido electrohumectante (electrowetting) en donde la tensión superficial de uno o más volúmenes de líquido de lente cambia en respuesta a una señal que se aplica a la lente, o una lente de tipo de cristal líquido en donde los índices de refracción de uno o más volúmenes de fluido de lente cambian en respuesta a una señal que se aplica a la lente.
El ordenador 100 móvil puede comprender además una batería 356. El ordenador 100 móvil puede comprender además un receptor 380 GPS acoplado comunicativamente al bus 1500 de sistema a través de una interfaz 382. El ordenador 100 móvil puede comprender además al menos un conector 390 configurado para recibir una tarjeta de módulo de identidad de abonado (SIM), también acoplado comunicativamente al bus 1500 de sistema. Un profesional experto apreciaría el hecho de que el ordenador 100 móvil puede comprender varios otros componentes, circuitos e interfaces.
En algunas realizaciones, el ordenador 100 móvil puede comprender además un dispositivo 333 de lectura de información codificada incrustada (EIR) acoplado comunicativamente al bus 1500 de sistema a través de la interfaz 335. El dispositivo 333 EIR puede ser proporcionado, por ejemplo, por un dispositivo de escaneo láser, un dispositivo de lectura RFID, un dispositivo de lectura NFC o un dispositivo de lectura de tarjetas magnéticas. El dispositivo EIR puede configurarse para emitir datos de mensajes en bruto que contengan un mensaje codificado y/o emitir datos de mensaje decodificado correspondientes al mensaje codificado. Como se usa en la presente memoria, "mensaje" pretende denotar una secuencia de bytes o una cadena de caracteres alfanuméricos y/o no alfanuméricos. Un mensaje codificado puede usarse para transmitir información, tal como la identificación de la fuente y el módulo de un artículo, por ejemplo, en un código EPC.
En una realización ilustrativa, el dispositivo de lectura RFID puede cumplir con el Protocolo RFID UHF Generación-2 Clase-1 EPCTM para Comunicaciones en 860 MHz - 960 MHz de EPCglobal, comúnmente conocido como el estándar "Gen 2", que define los requisitos físicos y lógicos para un sistema RFID de retrodispersión pasiva e Interrogadorhabla-primero (ITF) que funciona en el intervalo de frecuencias de 860 MHz - 960 MHz.
En una realización ilustrativa, el dispositivo de lectura NFC del terminal EIR puede cumplir con la Especificación Técnica del Protocolo Digital NfC DIGITAL 1.0 NFCForum-TS- DigitalProtocol-1.0 del 17-11 -2010 por NFC Forum™.
Como se ha indicado anteriormente, el ordenador 100 móvil puede transmitir, a través de una interfaz de comunicación por cable o inalámbrica y una o más redes de comunicación, una o más imágenes de indicios decodificables y/o uno o más mensajes correspondientes a indicios decodificables decodificados con éxito a un ordenador externo. Como se ilustra esquemáticamente en la FIG. 3, el ordenador 100a-100z móvil puede acceder al ordenador 171 externo a través de una o más redes 110a-110z de área local y/o amplia. El ordenador 100a-100z móvil puede conectarse a una o más redes 110a-110z, por ejemplo, a través de un punto 135 de acceso inalámbrico. En una realización, al menos una de las redes 110a-110z puede ser proporcionada por una red inalámbrica compatible con IEEE 802.11x. En otra realización, al menos una de las redes 110a-110z puede ser proporcionada por una red Ethernet. En otra realización, al menos una de las redes 110a-110z puede ser proporcionada por una red de área local (LAN). En otra realización, al menos una de las redes 110a-110z puede ser proporcionada por una red de área amplia (WAN). Aunque en la presente memoria se designan diferentes redes, se reconoce que una única red vista desde la capa de red del modelo OSI puede comprender una pluralidad de redes de capa inferior, es decir, lo que puede considerarse como una única red de Protocolo de Internet (IP), puede incluir una pluralidad de redes físicas diferentes.
En otro aspecto, las comunicaciones entre el ordenador 100 móvil y el ordenador 171 externo pueden comprender una serie de peticiones y respuestas transmitidas sobre una o más conexiones TCP, aunque un experto en la técnica apreciaría el hecho de que el uso de otros protocolos de transporte y de nivel de aplicación están dentro del alcance de esta descripción. En algunas realizaciones, al menos un fotograma de datos transmitido por el ordenador 100 móvil al ordenador 171 externo puede comprender una o más imágenes de indicios decodificables y/o uno o más mensajes correspondientes a indicios decodificables decodificados con éxito por el ordenador 100 móvil. En respuesta a la recepción de una imagen de indicio decodificable o un mensaje decodificado del ordenador 100 móvil, el ordenador externo 171 puede, en algunas realizaciones, recuperar información correspondiente al mensaje decodificado de una base de datos y transmitir al menos parte de la información recuperada al ordenador 100 móvil. En una realización ilustrativa, el mensaje decodificado puede comprender un identificador de artículo de venta al por menor, y la información recuperada de la base de datos y transmitida al ordenador 100 móvil puede comprender el precio del artículo de venta al por menor y/u otras características. En otra realización ilustrativa, el mensaje decodificado puede comprender un identificador de paciente médico, y la información recuperada de la base de datos y transmitida al ordenador 100 móvil puede comprender información sobre el tratamiento del paciente.
Una realización de un método de procesamiento de múltiples indicios decodificables por ordenador móvil se ilustra esquemáticamente mediante el diagrama de bloques de la FIG. 4. El método puede implementarse usando uno o más procesadores de uno o más ordenadores. En una realización ilustrativa, el método puede implementarse usando uno o más procesadores de un ordenador 100 móvil. Alternativamente, el método puede implementarse usando uno o más procesadores de dos o más ordenadores.
En la etapa 4010, el ordenador 100 móvil puede adquirir una imagen de uno o más objetos con uno o más indicios decodificables dentro del campo de visión del dispositivo de imágenes del ordenador móvil.
En la etapa 4020, el ordenador 100 móvil puede localizar uno o más indicios decodificables dentro de la imagen adquirida.
En la etapa 4030, el ordenador 100 móvil puede decodificar al menos un indicio decodificable de los indicios decodificables situados dentro la imagen adquirida.
En la etapa 4040, el ordenador 100 móvil puede visualizar la imagen adquirida en la pantalla 1304.
En la etapa 4050, el ordenador 100 móvil puede marcar visualmente el o los indicios decodificables decodificados con éxito dentro de la imagen visualizada. En una realización ilustrativa, el ordenador 100 móvil puede resaltar el indicio decodificable decodificado con éxito. Alternativamente, el terminal móvil 100 puede dibujar un recuadro delimitador alrededor de los indicios decodificables decodificados con éxito. En una realización ilustrativa, se puede colocar un punto circular o algún otro marcador visual en o alrededor del centro del indicio decodificable decodificado con éxito.
En la etapa 4060, el ordenador 100 móvil puede aceptar la entrada del usuario que selecciona al menos un indicio decodificable de los uno o más indicios decodificables visualizados. En una realización ilustrativa, la selección de uno o más indicios decodificables se puede realizar a través de la pantalla táctil mediante el toque del usuario en las áreas de la pantalla que contienen las imágenes de uno o más indicios decodificables. En otra realización ilustrativa, el toque repetitivo del usuario en el área de la pantalla que contiene una imagen de indicios decodificable puede activar o desactivar la inclusión del indicio y/o de un mensaje decodificado correspondiente al indicio en la secuencia de mensajes que se transmitirán a un ordenador externo.
En la etapa 4070, el ordenador 100 móvil puede transmitir a un ordenador externa al menos un mensaje decodificado correspondiente al al menos un indicio decodificable, y el método puede terminar.
En una realización ilustrativa, el ordenador 100 móvil puede aceptar la entrada del usuario indicando qué indicios y en qué orden necesitan ser usados por una o más aplicaciones. En respuesta a la aceptación de la entrada del usuario que selecciona dos o más indicios decodificables, el ordenador móvil puede transmitir a un ordenador externo, en el orden indicado por el usuario, los mensajes decodificados correspondientes a los indicios seleccionados, y el método puede terminar.
En otro aspecto, se proporciona un medio de almacenamiento legible por ordenador que comprende instrucciones ejecutables capaces de configurar uno o más procesadores para implementar el método descrito anteriormente.
Con referencia a la FIG. 5 un aparato 1000 de imágenes puede funcionar para capturar un fotograma de datos de imagen que representa una escena que tiene una pluralidad de indicios decodificables y visualizar datos de imagen correspondientes a los indicios decodificables. El aparato 1000 de imágenes puede funcionar para que, en respuesta a un control de entrada del usuario, se emitan selectivamente datos de mensaje decodificado de un indicio decodificable seleccionado. La salida selectiva puede ser, por ejemplo, a un bloque funcional diferente de un programa actual que realiza la visualización, y/o a un programa diferente, el aparato de imagen y/o a uno o más aparatos externos equipados con procesador para su uso en uno o más programas del mismo.
En la realización de la FIG. 5, el aparato 1000 de imágenes puede incluir un conjunto 400 de imágenes para su uso en la captura de un fotograma de datos de imagen que representa una escena dentro de un campo de visión 600 del conjunto 400 de imágenes. Debido a que el aparato 1000 incluye el conjunto 400 de imágenes, el campo de visión 600 también se puede considerar como un campo de visión del aparato 1000. La escena dentro del campo de visión 600 como se indica en el ejemplo de la FIG. 5 puede incluir una pluralidad de indicios decodificables, por ejemplo, códigos 202, 204, 206 de barras. Los indicios decodificables también pueden incluir texto incluyendo caracteres OCR. En el desarrollo de los aparatos y métodos descritos en la presente memoria se determinó que, sin las adaptaciones que se exponen en la presente memoria, pueden emitirse a un destino de salida designado datos de mensaje decodificado no deseados. Por ejemplo, con referencia a la escena de la FIG. 5, un operador puede desear que se emita un mensaje decodificado mediante el procesamiento de una representación del código 206 de barras; sin embargo, en su lugar puede emitirse inadvertidamente un mensaje decodificado del código 204 de barras, por ejemplo, si el aparato 1000 está programado para decodificar y emitir un indicio decodificable situado más al centro. El aparato 1000 de imágenes puede funcionar para que, en respuesta a una entrada de usuario, controle los datos del mensaje decodificado de un indicio decodificable seleccionado, por ejemplo, se emita selectivamente uno o más de los indicios decodificables seleccionados proporcionados por el código 202 de barras, el código 204 de barras y el código 206 de barras. En un aspecto adicional, el aparato 1000 de imágenes puede funcionar para que el aparato 1000 de imágenes esté restringido para emitir datos de mensaje decodificado de un determinado indicio a menos que el operador introduzca un control en el aparato 1000 para emitir datos de mensaje decodificado de un determinado indicio decodificable.
En la FIG. 2 se expone una plataforma de hardware ejemplar para el aparato 1000. El aparato 1000 de imágenes puede incluir un sensor 1032 de imagen que comprende una matriz de sensores 1033 de imagen de múltiples píxeles que tiene píxeles dispuestos en filas y columnas de píxeles, un circuito 1034 de columna y un circuito 1035 de fila asociados. Asociado con el sensor 1032 de imagen puede haber un circuito 1036 amplificador, y un convertidor 1037 analógico-digital que convierte la información de imagen en forma de señales analógicas leídas de la matriz de sensores 1033 de imagen en información de imagen en forma de señales digitales. El sensor 1032 de imagen también puede tener asociado un circuito 1038 de temporización y control para su uso en el control, por ejemplo, del periodo de exposición del sensor 1032 de imagen, ganancia aplicada al amplificador 1036. Los componentes 1032, 1036, 1037, y 1038 de circuito señalados se pueden empaquetar en un dispositivo 1040 de imágenes (por ejemplo, un circuito integrado de sensor de imagen común). En un ejemplo, el dispositivo 1040 de imágenes puede ser proporcionado por un circuito integrado de sensor de imagen MT9V022 disponible en Micron Technology, Inc. En otro ejemplo, el dispositivo 1040 de imágenes puede incorporar un filtro de patrón Bayer. En una realización de este tipo, la CPU 1060, antes de someter un fotograma a un procesamiento posterior, puede interpolar valores de píxeles intermedios de valores de píxeles verdes para el desarrollo de un fotograma monocromo de datos de imagen.
En el curso de funcionamiento del aparato 1000 las señales de imagen pueden ser leídas desde el sensor 1032 de imagen, convertidas y almacenadas en una memoria de sistema tal como la RAM 1080. Una memoria 1085 del aparato 1000 puede incluir una RAM 1080, una memoria no volátil tal como EPROM 1082 y un dispositivo 1084 de memoria de almacenamiento tal como puede proporcionarse por una memoria flash o una memoria de disco duro. En una realización, el aparato 1000 puede incluir una CPU 1060 que puede adaptarse para leer datos de imagen almacenados en la memoria 1080 y someter dichos datos de imagen a varios algoritmos de procesamiento de imágenes. El aparato 1000 puede incluir una unidad de acceso directo a memoria (DMA) 1070 para encaminar la información de imagen leída desde el sensor 1032 de imagen que ha sido sometida a conversión a la memoria RAM 1080. En otra realización, el aparato 1000 puede emplear un bus de sistema que proporcione un mecanismo de arbitraje de bus (por ejemplo, un bus PCI) eliminando así la necesidad de un controlador DMA central. Un profesional experto apreciaría que otras realizaciones de la arquitectura del bus de sistema y/o componentes de acceso directo a memoria que proporcionan una transferencia de datos eficaz entre el sensor 1032 de imagen y la RAM 1080 entran dentro del alcance de la invención.
Haciendo referencia a otros aspectos del aparato 1000, el conjunto 200 de lentes puede adaptarse para enfocar una imagen de un indicio 15 decodificable situado dentro de un campo de visión 1240 sobre un sustrato 1250 en la matriz de sensores 1033 de imagen. Los rayos de luz de imágenes pueden transmitirse alrededor del eje 25 de imágenes. El conjunto 200 de lentes, en una realización, puede adaptarse para ser capaz de múltiples longitudes focales y múltiples distancias de mejor enfoque. Un conjunto 400 de imágenes del aparato 1000 puede incluir el conjunto 200 de lentes y la matriz de sensores 1033 de imagen.
El aparato 1000 también puede incluir un banco 1204 de fuente de luz de patrón de iluminación y óptica 1205 de conformación de luz asociada para generar un patrón 1260 de iluminación sustancialmente correspondiente a un campo 1240 de visión del aparato 1000. La combinación del banco 1204 y La óptica 1205 puede considerarse como un generador 1206 de patrones de iluminación. El aparato 1000 también puede incluir un banco 1208 de fuente de luz de patrón de enfoque y una óptica 1209 de conformación de luz asociada para generar un patrón 1270 de enfoque sobre el sustrato 1250. La combinación del banco 1208 y la óptica 1209 puede considerarse como un generador 1210 de patrón de enfoque. En uso, el aparato 1000 puede ser orientado por un operador con respecto a un sustrato 1250 con un indicio 15 decodificable de manera que el patrón 1270 de enfoque se proyecte sobre un indicio 15 decodificable. En el ejemplo de la FIG. 6, el indicio 15 decodificable se proporciona mediante un símbolo de código de barras 1D. El indicio 15 decodificable también podría proporcionarse, por ejemplo, mediante un símbolo de código de barras 2D o texto decodificable, tal como caracteres de reconocimiento óptico de caracteres (OCR). En el ejemplo de la FIG. 5, el indicio 202 decodificable se proporciona mediante un símbolo de código de barras UPC, el indicio 204 decodificable se proporciona mediante un símbolo de código QR y el indicio 206 decodificable se proporciona mediante un símbolo de código 128. Cada banco 1204 de fuentes de luz de patrón de iluminación y cada banco 1208 de fuente de luz de patrón de enfoque pueden incluir una o más fuentes de luz. El conjunto 200 de lentes puede controlarse con el uso de la unidad 1055 de entrada de energía eléctrica que proporciona energía para cambiar un plano de enfoque óptimo del conjunto 200 de lentes. En una realización, una unidad 1055 de entrada de energía eléctrica puede funcionar como una fuente de voltaje controlada, y en otra realización, como una fuente de corriente controlada. El banco 1204 de fuente de luz de patrón de iluminación puede controlarse con el uso del circuito 1220 de control de fuente de luz de patrón de iluminación. El banco 1208 de fuentes de luz de patrón de enfoque puede controlarse mediante el uso del circuito 1222 de control de fuente de luz de patrón de enfoque. La unidad 1055 de entrada de energía eléctrica puede aplicar señales para cambiar las características ópticas del conjunto 200 de lentes, por ejemplo, para cambiar una longitud focal y/o una distancia de mejor enfoque de (un plano de enfoque óptimo) del conjunto 200 de lentes. El circuito 1220 de control del banco de fuente de luz de patrón de iluminación puede enviar señales al banco 1204 de fuente de luz de patrón de iluminación, por ejemplo, para cambiar un nivel de salida de iluminación por el banco 1204 de fuente de luz de patrón de iluminación. El circuito 1222 de control del banco de fuente de luz de patrón de enfoque puede enviar señales al banco 1208 de fuentes de luz de patrón de enfoque, por ejemplo, para cambiar un lumen de salida de iluminación por el banco 1208 de fuente de luz de patrón de enfoque. En una realización, el aparato 1000 de imágenes puede carecer de elementos que proyecten un patrón de iluminación.
El aparato 1000 también puede incluir una serie de dispositivos periféricos, incluido el disparador R1408, que puede usarse para activar una señal de disparo para activar la lectura y captura de fotogramas y/o determinados procesos de decodificación y/u otros procesos. El aparato 1000 puede adaptarse para que el accionamiento manual del disparador R1406 active una señal de disparo e inicie un intento de decodificación. En la realización de la FIG. 5, el disparador R1408 es proporcionado por un disparador virtual que se visualiza en la pantalla 1420. Un actuador de hardware, por ejemplo, del teclado 1406 también puede ser configurado como un disparador. El aparato 1000 puede funcionar para que, en respuesta a la activación de una señal de activación, pueda leerse y capturarse una sucesión de fotogramas mediante la lectura de la información de imagen de la matriz de sensores 1033 de imagen (típicamente en forma de señales analógicas) y, a continuación, el almacenamiento de la información de imagen tras su conversión en la memoria 1080 (que puede almacenar en memoria intermedia una o más de la sucesión de fotogramas en un momento dado). La CPU 1060 puede funcionar para someter una o más de la sucesión de fotogramas a un intento de decodificación. Para intentar decodificar un símbolo de código de barras, la CPU 1060 puede procesar los datos de imagen de un fotograma correspondiente a una línea o posiciones de píxel (por ejemplo, una fila, una columna, o un conjunto diagonal de posiciones de píxeles) para determinar un patrón espacial de celdas oscuras y claras y puede convertir cada patrón de celdas claras y oscuras determinado en un carácter o cadena de caracteres a través de la consulta de la tabla. Cuando una representación de indicio decodificable es una simbología de código de barras 2D, un intento de decodificación puede comprender las etapas de localizar un patrón de búsqueda usando un algoritmo de detección de características, localizar líneas de matriz que intersecan el patrón de búsqueda según una relación predeterminada con el patrón de búsqueda, determinar un patrón de celdas oscuras y claras a lo largo de las líneas de matriz, y convertir cada patrón de luz en un carácter o cadena de caracteres a través de la consulta de la tabla. En una realización, la CPU 1060 puede ejecutar uno o más programas 1800 como se expone en la presente memoria cuando decodifica indicios decodificables. En algunas realizaciones, como se expone en la presente memoria, una señal de activación se puede activar introduciendo un modo de salida selectiva de datos de mensaje decodificado en el que el aparato 1000 puede emitir selectivamente datos de mensaje decodificado candidatos en respuesta a un control de entrada del operador para seleccionar la salida datos de mensaje decodificado de un indicio decodificable determinado. En dicho modo de funcionamiento, en una realización, el aparato 1000 puede funcionar para intentar decodificar continuamente fotogramas de una sucesión de fotogramas y, en respuesta a un control de entrada del operador, puede emitir datos de mensaje decodificado de un subconjunto, por ejemplo, uno, de fotogramas decodificados con éxito durante el funcionamiento en el modo.
El aparato 1000 puede incluir varios circuitos de interfaz para acoplar varios de los dispositivos periféricos al bus de direcciones/datos del sistema (bus de sistema) 1500, para comunicación con la CPU 1060 también acoplada al bus 1500 de sistema. El aparato 1000 puede incluir el circuito 1028 de interfaz para acoplar el circuito 1038 de temporización y control del sensor de imagen al bus 1500 de sistema, el circuito 1118 de interfaz para acoplar la unidad 1055 de entrada de energía eléctrica al bus 1500 de sistema, el circuito 1218 de interfaz para acoplar el circuito 1220 de control del banco de fuente de luz de iluminación al bus 1500 de sistema, el circuito 1224 de interfaz para acoplar el circuito 1222 de control del banco de fuente de luz de enfoque al bus 1500 de sistema, y el circuito 1404 de interfaz para acoplar el teclado 1406 al bus 1500 de sistema. El aparato 1000 también puede incluir una pantalla 1420 acoplada al bus 1500 de sistema y en comunicación con la CPU 1060, a través de la interfaz 1418. En otro aspecto, el aparato 1000 puede incluir una interfaz 1426 de comunicación de red acoplada al bus 1500 de sistema. La interfaz 1426 de comunicación de red puede ser, por ejemplo, una o más de una interfaz IEEE 802.11, una interfaz Bluetooth o una interfaz de radio celular. En una realización, el servidor 2000 y el servidor 3000 pueden incluir la CPU 1060, la memoria 1085, el bus 1500 y componentes de interfaz 1426 de comunicación correspondientes a los descritos en relación con el aparato 1000. En una realización, el aparato 1000, el servidor 2000 y el servidor 3000 pueden estar en comunicación entre sí a través de, por ejemplo, el conjunto de protocolos de comunicación de red TCP/UDP o TCP/IP. La pantalla 1420 en una realización puede ser una pantalla táctil que tiene un panel táctil asociado al aparato de visualización.
Una sucesión de fotogramas de datos de imagen que pueden capturarse y someterse al procesamiento descrito pueden ser fotogramas completos (incluyendo valores de píxel correspondientes al número máximo de píxeles sometidos a lectura durante un curso de funcionamiento del aparato 1000). En un ejemplo, un número máximo de píxeles es cada píxel de la matriz de sensores 1033 de imagen. Una sucesión de fotogramas de datos de imagen que pueden capturarse y someterse al procesamiento descrito también pueden ser "fotogramas de ventana" que comprenden valores de píxel correspondientes a menos de un número máximo de píxeles sometidos a lectura durante un curso de funcionamiento del aparato 1000. Una sucesión de fotogramas de datos de imagen que pueden capturarse y someterse al procesamiento descrito también puede comprender una combinación de fotogramas completos y fotogramas de ventana. Un fotograma completo puede capturarse dirigiéndose selectivamente a los píxeles leídos del sensor 1032 de imagen correspondientes al fotograma completo. Se puede capturar un fotograma de ventana dirigiéndose selectivamente a los píxeles leídos del sensor 1032 de imagen correspondientes al fotograma de ventana.
En otro aspecto, el aparato 1000 puede incluir un segundo dispositivo 2040 de imágenes (por ejemplo, un segundo circuito integrado de sensor de imagen) dispuesto en combinación con un segundo conjunto 2200 de lentes de imágenes para la captura de datos de imagen de la manera expuesta en referencia al dispositivo 1040 de imágenes. El segundo dispositivo 2040 de imágenes puede incluir una matriz de sensores 2033 de imagen y los elementos restantes expuestos con referencia al dispositivo 1040 de imágenes. Un segundo conjunto 2400 de imágenes del aparato 1000 puede incluir un conjunto de sensores 2033 de imagen y un conjunto 2200 de lentes. El segundo dispositivo 2040 de imágenes puede estar en comunicación con el bus 1500 de sistema a través de la interfaz 2028. El segundo dispositivo 2040 de imágenes puede ser de apertura para su uso en la captura de fotogramas de datos de imagen en la manera del dispositivo 1040 de imágenes. Los rayos de luz recibidos por el conjunto 400 de imágenes pueden recibirse alrededor del eje 25 de imágenes. Los rayos de luz recibidos por el conjunto 2400 de imágenes pueden ser recibidos por el eje 2025 de imágenes. El eje 25 de imágenes puede extenderse hacia abajo desde el aparato 1000. El eje 2025 de imágenes puede extenderse hacia arriba desde el aparato 1000. Indicado por la vista de referencia de la vista lateral de la FIG. 5, el eje 25 de imágenes puede extenderse verticalmente hacia abajo y puede ser perpendicular con respecto a un plano P420 de visualización sobre el que se extiende la pantalla 1420. El eje 2025 de imágenes puede extenderse verticalmente hacia abajo y puede ser perpendicular con respecto al plano P1420 de visualización sobre el que se extiende la pantalla 1420. El aparato 1000 puede capturar fotogramas de datos de imagen a una velocidad conocida como velocidad de fotogramas. Una frecuencia de imagen típica es de 60 fotogramas por segundo (FPS), lo que se traduce en un tiempo de imagen (periodo de fotograma) de 16,6 ms. Otra velocidad de fotogramas típica es de 30 fotogramas por segundo (FPS), lo que se traduce en un tiempo de fotograma (período de fotograma) de 33,3 ms por fotograma.
Además con respecto al aparato 1000, una entrada de energía eléctrica aplicada por la unidad 1055 de entrada de energía eléctrica para establecer un ajuste de lente deseado del conjunto 200 de lentes puede responder, por ejemplo, a una condición detectada o a un comando de entrada del operador.
En la FIG. 5 se muestra una vista de la forma física del aparato 1000 en una realización. La pantalla 1420 y el teclado 1406 pueden disponerse en un lado común de una carcasa 1014 de mano como se muestra en la FIG. 5. La pantalla 1420 y el teclado 1406 en combinación pueden considerarse como una interfaz de usuario del aparato 1000. La pantalla 1420 puede ser una pantalla táctil en una realización. Una interfaz de usuario del aparato 1000 también se puede proporcionar configurando el aparato 1000 para que funcione para ser reprogramado mediante la decodificación de la programación de símbolos de códigos de barras. El aparato 1000 puede incluir una carcasa 1014 de mano que soporta el conjunto 400 de imágenes y el conjunto 2400 de imágenes que puede disponerse (por ejemplo, total o parcialmente) en la carcasa 1014 de mano.
Como se expone en la FIG. 7 se puede proporcionar un producto 1700 de programa informático que comprende un medio 1702 de almacenamiento legible por ordenador que almacena uno o más programas 1800, el uno o más programas 1800 que comprenden lógica de código de programa para facilitar datos de mensaje decodificado selectivamente. Uno o más programas 1800 pueden incluir instrucciones ejecutables, ejecutables por un ordenador por un procesador, por ejemplo, la CPU 1060 del aparato 1000.
En una realización, la CPU 1060 del aparato 1000 puede funcionar para ejecutar el ordenador uno o más programas 1800 ejecutables que tienen las funciones que se indican en el diagrama de flujo de la FIG. 8. En el bloque 1802, uno o más programas 1800 pueden visualizar datos de imagen correspondientes a una pluralidad de indicios decodificables en el campo de visión del aparato 1000, por ejemplo, un campo de visión 600 como se expone en la FIG. 5. En el bloque 1804, uno o más programas 1800 pueden emitir a un destino de salida datos de mensaje decodificado en respuesta a un control de entrada del operador para emitir datos de mensaje decodificado de un indicio decodificable seleccionado.
En la realización del bloque 1802 en una realización uno o más programas 1800 en la realización del bloque 1802 (visualiza datos de imagen correspondientes a uno o más indicios decodificables) pueden enviar para su visualización en la pantalla 1420 datos de imagen de un fotograma de datos de imagen capturados por el aparato 1000 de imágenes. En el ejemplo específico de la FIG. 5, los datos de imagen visualizados, visualizados en la pantalla 1420 pueden incluir representaciones R202, R204, R206 de indicios decodificables, por ejemplo, los indicios 202, 204, 206 decodificables que se muestran como proporcionados por símbolos de código de barras dentro del campo de visión 600. El fotograma de datos de imagen puede ser un fotograma capturado contemporáneamente, capturado usando el aparato 1000 de imágenes. En una realización, los datos de imagen que se visualizan pueden formatearse resaltando representaciones de indicios decodificables que pueden decodificarse usando los datos de imagen actualmente capturados. Uno o más programas 1800 para determinar si los indicios decodificables que pueden decodificarse usando datos de imagen actualmente capturados pueden intentar decodificar los indicios decodificables usando datos de imagen actualmente capturados, por ejemplo, almacenados actualmente, por ejemplo, almacenados en memoria intermedia para su procesamiento, por ejemplo, como los que pueden ser almacenados en memoria intermedia en la RAM 1080. Uno o más programas 1800 pueden determinar que un indicio decodificable es decodificable decodificando con éxito el indicio. En otra realización, uno o más programas 1800 pueden determinar que un indicio decodificable es decodificable localizando con éxito el indicio decodificable en un fotograma actualmente capturado de datos de imagen. En una realización, un elemento resaltado visualizado que resalta una representación de un indicio decodificable puede ser un borde, por ejemplo, el borde R302, R304, R306. En otra realización de un elemento resaltado, una representación visualizada de indicios decodificables que se determina que es decodificable usando datos de imagen actualmente capturados se visualiza usando una visualización intermitente selectiva (los datos de imagen que representan una escena pueden visualizarse con solo áreas que representan indicios decodificables visualizadas en una visualización intermitente). En otro ejemplo, un elemento resaltado puede incluir mensajes R402, R404, R406 decodificados de un indicio decodificable representado por datos de imagen visualizados. Aunque son posibles varios esquemas de elemento resaltado, se entenderá que no es necesario ningún elemento resaltado. En una realización, uno o más programas 1800 provisionan el aparato 1000 para que un operador pueda seleccionar un determinado indicio decodificable sin ningún elemento resaltado del indicio decodificable (por ejemplo, la simple visualización de una representación del indicio decodificable sin ningún elemento resaltado). En otro aspecto, se expone en la presente memoria un método que comprende visualizar, usando un procesador, datos de imagen correspondientes a uno o más indicios decodificables en un campo de visión de un aparato de imágenes, y emitir, usando el procesador, datos de mensaje decodificado de un indicio decodificado seleccionado en respuesta a un control de entrada del operador para emitir datos de mensaje decodificado de un indicio decodificable seleccionado de uno o más indicios decodificables, en donde un control de entrada del operador para emitir datos de mensaje decodificado de un indicio decodificable seleccionado comprende un toque de una ubicación de una pantalla que visualiza una representación del indicio decodificable seleccionado por el toque. Se puede usar otro método de selección expuesto en la presente memoria en lugar de o además del toque. Según uno o más programas 1800, los datos del mensaje decodificado del indicio decodificable seleccionado pueden determinarse, por ejemplo, antes o después de la selección del indicio decodificable seleccionado.
En una realización, se expone en la presente memoria un método que comprende visualizar, usando un procesador, datos de imagen correspondientes a uno o más indicios decodificables en un campo de visión de un aparato de imágenes, en donde el uno o más indicios decodificables han sido sometidos a un procesamiento de decodificación en un momento de la visualización, y emitir, usando el procesador, datos de mensaje decodificado de un indicio decodificado seleccionado en respuesta a un control de entrada del operador para emitir datos de mensaje decodificado de un indicio decodificable seleccionado del uno o más indicios decodificables. En una realización, el proceso de decodificación comprende el intento de decodificación. En una realización, el procesamiento de descodificación incluye completar la descodificación determinando un mensaje descodificado. En una realización, el procesamiento de decodificación comprende determinar la ubicación de un indicio decodificable (normalmente una primera etapa en un intento de decodificación). Mediante la determinación de una ubicación de un indicio decodificable sin más etapas de procesamiento de decodificación antes de la visualización de los datos de imagen de fotograma en la pantalla 1420, uno o más programas 1800 son capaces de monitorizar una salida de la interfaz 1418 de pantalla de la pantalla 1420 (si se proporciona una pantalla táctil) para determinar si se ha tocado un área de una pantalla correspondiente a una ubicación de una representación de indicio decodificable visualizada.
En la realización del bloque 1804 uno o más programas 1800 pueden emitir selectivamente datos de mensaje decodificado en respuesta a un control de entrada de uso para emitir selectivamente a datos de mensaje decodificado. La salida selectiva puede ser a un destino de salida. En una realización, el destino de salida puede ser un bloque de función diferente de uno o más programas 1800 que se ejecutan en la CPU 1060. En una realización, el destino de salida puede ser un programa que se ejecuta en la CPU 1060 distinto de uno o más programas 1800. En un ejemplo, el destino de salida puede ser un aparato equipado con procesador externo, por ejemplo, servidor 2000 o servidor 3000 para su uso por uno o más programas que se ejecutan en el mismo. En la realización del bloque 1804, donde el destino de salida es un aparato equipado con procesador externo, la CPU 1060 puede comunicarse con una interfaz 1426 de comunicación de red. Una comunicación entre el aparato 1000 y el servidor 2000 o el servidor 3000 puede emplear un protocolo adecuado que se ejecute sobre la capa de transporte TCP/UDP, por ejemplo, HTTP o XML.
En la realización del bloque 1804 para proporcionar la función de determinar que ha ocurrido una selección del operador, uno o más programa 1800 pueden monitorizar una ocurrencia de un control de entrada del operador para transmitir datos de mensaje decodificado de un indicio decodificable seleccionado. Como se expondrá más adelante en la presente memoria, la monitorización que uno o más programas 1800 puede incluir, por ejemplo, monitorización táctil (por ejemplo, tocar la pantalla 1420 si se proporciona una pantalla táctil), monitorización acústica (por ejemplo, cuando un operador introduce un comando de voz), monitorización basada en imágenes (por ejemplo, uno o más programas 1800 determinan dónde está mirando un operador basándose en el procesamiento de datos de imagen capturados usando un conjunto de imágenes).
En una realización, en el bloque 1802, uno o más programas 1800 procesan un único fotograma de datos de imagen, por ejemplo, para visualizar los datos de imagen de fotograma en la pantalla 1420, para intentar decodificar el fotograma de datos de imagen, para determinar si el fotograma de datos de imagen se decodifica usando los datos de imagen actualmente capturados, para resaltar representaciones de indicios decodificables determinados como decodificables usando los datos de imagen actualmente capturados. En dicha realización, uno o más programas 1800 pueden visualizar una imagen fija en la realización del bloque 1802.
En una realización, uno o más programas 1800 en el bloque 1802 procesan una pluralidad de fotogramas de datos de imagen, por ejemplo, para visualizar datos de imagen de fotogramas de una sucesión de fotogramas de datos de imagen en la pantalla 1420 (una representación de una imagen en movimiento), para intentar decodificar fotogramas de una sucesión de fotogramas de datos de imagen, para determinar si los fotogramas de una sucesión de fotogramas de datos de imagen son decodificables usando datos de imagen actualmente capturados, para resaltar representaciones de indicios decodificables en fotogramas de una sucesión de fotogramas determinados como decodificables usando datos de imagen actualmente capturados.
En un ejemplo de uno o más programas 1800 en el bloque 1802 que procesan una pluralidad de fotogramas de datos de imagen, uno o más programas 1800 puede obtener fotogramas de una secuencia de fotogramas emitidos por una biblioteca de cámara que se ejecuta en la CPU 1060. En una realización, un programa de uno o más programas puede controlar el dispositivo 1040 de imágenes para la captura de imágenes como se expone en la presente memoria. Uno o más programa 1800 puede intentar decodificar cada fotograma entrante con un tiempo de espera (abandona la decodificación si la decodificación no se completa dentro de un tiempo especificado). Si uno o más programas 1800 decodifican con éxito un indicio decodificable (o determinan de otro modo que es decodificable usando los datos de imagen actualmente capturados), uno o más programas 1800 pueden resaltar la representación del indicio decodificable en los datos de imagen de fotograma. Cuando uno o más programas 1800 decodifican un indicio decodificable, pueden determinar las coordenadas de las representaciones del indicio decodificable y asociar esos datos de coordenadas a un mensaje decodificado. Uno o más programas 1800 pueden proporcionar elementos resaltados a una representación de indicio decodificable cambiando apropiadamente valores de píxeles en ubicaciones próximas a la representación de indicio decodificable. Si uno o más programas 1800 no tiene éxito en la decodificación de un fotograma de datos de imagen de una sucesión de fotogramas, pueden no obstante enviar datos de imagen de fotograma a la pantalla 1420. Una sucesión de fotogramas visualizados parecerá tener elementos resaltados que rastrean una ubicación de una representación de indicio decodificable a lo largo de una sucesión de fotogramas, siempre que un porcentaje adecuado de los fotogramas tenga representaciones de indicio decodificables que estén resaltadas. Además, en algunos casos, uno o más programas 1800 pueden visualizar un fotograma anterior en la pantalla 1420 con representaciones de indicios decodificables resaltadas después de haberlo decodificado tras haber visualizado un fotograma posterior. Sin embargo, es poco probable que un usuario perciba esta visualización "fuera de secuencia" si la decodificación y el elemento resaltado se realizan con la suficiente rapidez.
En una realización, las funcionalidades expuestas en la presente memoria en relación con el diagrama de flujo de la FIG. 8 pueden activarse al activar un modo de salida de datos de mensaje decodificable selectivo. En dicho modo de funcionamiento en una realización, el aparato 1000 puede funcionar para intentar continuamente decodificar fotogramas de una sucesión de fotogramas y en respuesta a un control de entrada del operador puede emitir datos de mensaje decodificado de un subconjunto (por ejemplo, uno, unos pocos seleccionados) de indicios decodificables representados por fotogramas decodificados con éxito durante el funcionamiento en el modo. Un modo de salida de datos de mensaje decodificable selectivo permite a un operador seleccionar (filtrar) qué datos de mensaje decodificado de una pluralidad de datos de mensaje decodificado candidatos deben emitirse a un destino de salida.
En una realización, el modo de salida de datos de mensaje decodificable selectivo puede activarse accionando el botón R1407 de modo virtual o el botón R1406 de disparo virtual (en una realización específica, el modo de salida de datos de mensaje decodificable selectivo se proporciona como una configuración especial en donde el modo se activa en lugar de la decodificación estándar cuando se activa el botón R1406 de disparo). En una realización del modo de salida de datos de mensaje decodificable selectivo, la activación del modo da lugar a que uno o más programas 1800 en el bloque 1802 visualicen datos de imagen de fotogramas de una sucesión de fotogramas (una imagen de movimiento) en la pantalla 1420 con elemento resaltado de representación de indicio decodificable que pueden decodificarse usando los datos de imagen actualmente capturados. En respuesta a un control de entrada del operador para seleccionar un indicio decodificable, uno o más programas pueden emitir selectivamente datos de mensaje decodificado del indicio decodificable. Los actuadores R1406 y R1407 virtuales son mostrados en una vista punteada en la FIG. 5 ya que uno o más programas 1800 pueden funcionar para que los actuadores R1406 y R1407 virtuales no sean visualizados al mismo tiempo que el resto mostrado como elementos visualizados expuestos en la FIG. 5.
En el caso de uso específico ilustrado con referencia a la FIG. 5 se muestra que el aparato 1000 puede usarse para facilitar la selección de datos de mensaje decodificable de, por ejemplo, uno de una pluralidad de indicios decodificables, teniendo cada uno de la pluralidad de indicios 202, 204, 206 decodificables una representación R202, R204, R206 visualizada correspondiente. Sin embargo, en un aspecto importante, el aparato 1000 según las funciones de uno o más programas 1800 expuestos en la FIG. 8 no necesita ser usado para permitir la selección de uno o más de una pluralidad de indicios decodificables, sino que puede ser usado para seleccionar (o no seleccionar) datos de mensaje decodificado de un único indicio decodificable para salida selectiva. Como se establece en el presente documento uno o más programa 1800 puede ser operativo para que appparatus 1000 se restringe frem salida a un destino de salida designado decodificado datos del mensaje a menos que el mensaje decodificado es de un operador seleccionado indicia decodificable designado como seleccionado por un operador predeterminado control de entrada. En un aspecto, el aparato 1000 se puede usar para permitir que un operador seleccione entre una primera y una segunda indicaciones decodificables... El aparato 1000 puede visualizar representaciones de los indicios primero y segundo simultáneamente (si ambos están en el campo de visión 600 simultáneamente) o secuencialmente (si el aparato 1000 se mueve entre ubicaciones para que los indicios decodificables primero y segundo estén en un campo de visión 600 secuencialmente). En el caso de que el aparato 1000 se mueva entre ubicaciones, puede decodificar secuencialmente una pluralidad de indicios decodificables para que una pluralidad de los datos de mensaje decodificado, por ejemplo, los datos del primer mensaje decodificado, los datos del segundo mensaje decodificado, sean candidatos para la salida. Los datos de mensaje decodificado candidatos que están disponibles para la salida selectiva pueden ser de datos de mensaje decodificado determinados mediante la decodificación de indicios decodificables espacialmente separados (de un fotograma común) o de indicios decodificables secuencialmente separados (representados en fotogramas capturados en diferentes momentos).
Por ejemplo, como se expone en la FIG. 9, la pantalla 1420 muestra una representación R208 correspondiente a un único indicio decodificable. Uno o más programas 1800 en el bloque 1802 y en el bloque 1804 pueden proporcionar el aparato 1000 para permitir a un operador seleccionar o no seleccionar el indicio decodificable de la única representación R208 de indicio decodificable visualizada, permitiendo así el "filtrado", “la no selección” de datos de mensaje decodificado no deseados. Un operador puede desear pasar por alto un determinado indicio decodificable, por ejemplo, si no codifica los datos que se desean emitir a un destino de salida designado.
Uno o más programas 1800 en el bloque 1802 pueden visualizar los elementos resaltados de un indicio decodificable. Tales elementos resaltados son útiles en todos los casos de uso, incluyendo cuando el aparato 1000 se usa para permitir a un operador seleccionar o no seleccionar (pasar por alto) indicios decodificables de una única representación de indicio decodificable. Por ejemplo, cuando los elementos más elementos resaltados son una visualización de un mensaje decodificado, la visualización permite al operador discernir si los datos son los que desea emitir.
Según la presente invención uno o más programas 1800 pueden enviar mensajes a recursos para proporcionar un elemento resaltado para su visualización en la pantalla 1420. Los recursos pueden ser, por ejemplo, una o más bases de datos almacenadas localmente en el aparato 1000 o externamente, por ejemplo, en un servidor local (por ejemplo, un servidor de tienda si se trata de una tienda minorista), o un servidor 3000 remoto. En una realización, la base de datos es una tabla de consulta de precios. En una realización, la base de datos es una tabla de búsqueda de precios. En otra realización, la base de datos es una tabla de búsqueda que correlaciona imágenes de productos con mensajes decodificados. Un ejemplo es la API GOGGLE SHOPPER que, al enviar mensajes con un mensaje decodificado, puede devolver una imagen del producto. Uno o más programas 1800 en el bloque 1802 pueden enviar mensajes a un recurso y en una realización pueden enviar mensajes a un recurso externo, por ejemplo, una base de datos del servidor 2000 o el servidor 3000. Con referencia de nuevo a la FIG. 9, la FIG. 9 ilustra una imagen del producto devuelto visualizada como un elemento resaltado R608. Uno o más programas 1800 también visualizan un elemento resaltado en forma de un precio R708 visualizado. Uno o más programas 1800 en el bloque 1802 pueden determinar los datos de precio enviando mensajes a una tabla de búsqueda de precios almacenada localmente en el aparato 1000 o externamente, por ejemplo, en el servidor 2000 o el servidor 3000.
Después de que uno o más programas 1800 determinen un elemento de datos enviando mensajes a un recurso externo una primera vez durante una ejecución de uno o más programas 1800, pueden almacenar el elemento de datos (un precio, una imagen) en una ubicación de memoria caché de la RAM 1080 para que uno o más programas 1800 puedan evitar enviar mensajes a un recurso externo cada vez que decodifica un mensaje cuando se realiza el bloque 1802, aumentando así el tiempo de visualización de la imagen resaltada. Además, las tablas de búsqueda de precios y las bases de datos de imágenes pueden almacenarse localmente en el aparato 1000. Se ha mencionado que un elemento resaltado visualizado puede incluir un mensaje decodificado. Cuando se decodifica un indicio decodificable, pueden proporcionarse datos distintos de un mensaje decodificado. Dicha otra información puede incluir, por ejemplo, un tiempo transcurrido hasta la decodificación, las coordenadas de localización del indicio decodificable, el número de caracteres, el tipo de indicio decodificable, por ejemplo, el tipo de simbología de código de barras, y otros metadatos, por ejemplo, metadatos que describan un propósito de los datos, un código de seguimiento interno o una dirección codificada. En una realización, de uno o más programas 1800 en el bloque 1802, uno o más elementos de dichos otros datos, como un elemento resaltado, se usan en la ayuda a un operador a determinar si desea seleccionar un determinado indicio decodificable.
En el ejemplo mostrado en la FIG. 9, el elemento resaltado R608 de la imagen del producto se visualiza en una ubicación en una ubicación designada de la pantalla 1420 en una ventana que puede estar espacialmente separada de una representación de indicio decodificable.
Según la presente invención, como se ilustra en la FIG. 10, uno o más programas 1800 en el bloque 1802 visualizan las imágenes de productos en la ubicación de la representación de indicio decodificable asociada a cada imagen del producto. El elemento resaltado R610 de la imagen del producto se visualiza en una ubicación de la representación R210 de indicios decodificables, el elemento resaltado R612 de la imagen del producto se visualiza en una ubicación de la representación R212 de indicios decodificables. El elemento resaltado R614 de la imagen del producto se visualiza en una ubicación de la representación R214 de indicios decodificables. Uno o más programas 1800 en el bloque 1802 pueden visualizar imágenes de productos visualizadas como elementos resaltados en el ejemplo de la FIG. 10, que pueden ser visualizadas en forma semitransparente para que una representación R210, R212, R214 de indicios decodificables pueda ser vista "a través" de la imagen del producto. Para visualizar la imagen semitransparente del producto, uno o más programas 1800 en el bloque 1802 pueden visualizar la imagen en baja resolución. Una visualización de una imagen del producto como elemento resaltado de un indicio decodificable puede ayudar a un operador a determinar si el indicio visualizado corresponde a un indicio decodificable que el operador desea seleccionar.
En el bloque 1802 uno o más programas 1800 pueden visualizar datos de imagen correspondientes a un indicio decodificable. En un ejemplo, los datos de imagen correspondientes a un indicio decodificable pueden comprender una representación de indicio decodificable. En un ejemplo, los datos de imagen correspondientes a un indicio decodificable pueden comprender una representación de indicio decodificable y uno o más elementos resaltados asociados. En un ejemplo, los datos de imagen correspondientes a un indicio decodificable pueden comprender un elemento resaltado de un indicio decodificable, pero pueden carecer de una representación del indicio decodificable. Con referencia a la realización ilustrativa tal como se expone en la FIG. 10, las representaciones de los códigos de barras (que sirven como indicios decodificables) pueden ser eliminadas y sustituidas por una visualización de uno o más elementos resaltados de cada indicio decodificable.
En el bloque 1804 uno o más programas 1800 pueden emitir a datos de mensaje decodificado. Los datos de mensaje decodificado pueden incluir en un ejemplo (a) un mensaje decodificado. Los datos de mensaje decodificado también pueden incluir en un ejemplo (b) otros datos determinados cuando se decodifica un indicio decodificable (por ejemplo, tiempo transcurrido para decodificar, información de coordenadas, número de caracteres, tipo de código). Por ejemplo, como se muestra en la FIG. 11, los elementos resaltados pueden incluir texto que indique el número de caracteres, por ejemplo, R820 y/o el tipo de indicio R916 decodificable (tipo de simbología de código de barras en el ejemplo específico de la FIG. 11). Los datos del mensaje decodificado también pueden incluir, por ejemplo, (c) datos determinados mediante el envío de mensajes a un recurso usando un mensaje decodificado, por ejemplo, el precio de un producto, una imagen de un producto. Los datos del mensaje decodificado que se emiten en el bloque 1804 pueden incluir cualquier combinación de los tipos de datos (a) (b) y (c), por ejemplo, puede incluir datos de todos los tipos (a) (b) y (c) o solo de uno o dos de los tipos, por ejemplo, solo del tipo (a) solo del tipo (b), solo del tipo (c).
Como se ha expuesto en la presente memoria, uno o más programas 1800 en el bloque 1804 pueden monitorizar la selección de un indicio decodificable por un operador. Una monitorización por uno o más programas 1800 puede incluir, por ejemplo, monitorización táctil (por ejemplo, tocar la pantalla 1420 si se proporciona una pantalla táctil), monitorización acústica, (por ejemplo, cuando un operador introduce un comando de voz), una monitorización basada en imágenes, (por ejemplo, uno o más programas 1800 determinan dónde está mirando un operador basándose en el procesamiento de datos de imágenes capturados usando un conjunto de imágenes).
En un ejemplo de monitorización realizada en el bloque 1804, donde la pantalla 1420 se proporciona mediante una pantalla táctil, uno o más programas 1800 en el bloque 1804 pueden hacer que la CPU 1060 esté en comunicación con la interfaz 1418 de pantalla para monitorizar una entrada a la pantalla 1420. En una realización, uno o más programas 1800 en la realización del bloque 1804 pueden proporcionar el aparato 1000 para que un toque por un operador de una ubicación en una pantalla 1420 que visualiza una representación de un indicio decodificable se determine que es un control para emitir selectivamente datos de mensaje decodificado del indicio decodificable visualizado.
En consecuencia, con referencia a la FIG. 5, un toque de la representación R202 resulta en la salida de datos de mensaje decodificado del indicio 202 decodificable en una realización. Un toque de la representación R204 resulta en la salida de un mensaje decodificado del indicio 204 decodificable en una realización. Un toque de la representación R206 resulta en la salida de un mensaje decodificado del indicio 206 decodificable en una realización. Uno o más programas 1800 pueden funcionar para que un operador pueda seleccionar un indicio decodificable tocando un elemento resaltado visualizado en lugar de una representación de indicio decodificable visualizada (cuando se visualiza espacialmente por separado). Por ejemplo, en referencia a la FIG. 9, un operador puede tocar el elemento resaltado R608 para provocar la salida de los datos del mensaje decodificado del indicio decodificable correspondiente a la representación R208 del indicio decodificable. Uno o más programas 1800 pueden proporcionar el aparato 1000 para que un operador pueda seleccionar un indicio decodificable tocando un elemento resaltado visualizado de un indicio decodificable además de o en lugar de una representación de un indicio decodificable. Uno o más programas 1800 pueden proporcionar al aparato 1000 para que la sensibilidad táctil de la pantalla 1420 se proporcione con periodos activos configurados adecuadamente para que, por ejemplo, un operador que toque un área de un elemento resaltado visualizado dentro de un periodo de tiempo de espera después de que deje de visualizarse designe, no obstante, una selección de un indicio decodificable. Uno o más programas 1800 pueden, en una realización, proporcionar el aparato 1000 para que un operador pueda mover (por ejemplo, con un controlador de puntero incorporado en el aparato 1000) un puntero a los datos de imagen correspondientes a un indicio decodificable para la selección del indicio decodificable.
En otro ejemplo de una monitorización realizada en el bloque 1804 uno o más programas 1800 en el bloque 1804 pueden hacer que la CPU 1060 esté en comunicación con un módulo de reconocimiento de voz que procesa los datos de voz recibidos a través de la interfaz 1434 de entrada de audio. Un módulo de reconocimiento de voz puede discriminar varios mensajes de voz. En un ejemplo, dicho módulo de reconocimiento de voz puede ser proporcionado por DRAGON DICTATION para iOS disponible en NUANCE COMMUNICATIONS, INC. En un ejemplo, en el bloque 1804, uno o más programas 1800 pueden hacer que se visualice un índice con las representaciones visualizadas de indicios decodificables. Los índices visualizados pueden ser, por ejemplo, índices numéricos "1" "2" "3", como se indica en las representaciones R502, R504, R506 visualizadas en la FIG. 5, y los mensajes de voz procesados pueden ser mensajes correspondientes a uno o más de los índices visualizados, por ejemplo, mensajes de voz correspondientes a las palabras habladas "UNO", "DOS" o "TRES". Uno o más programas 1800 pueden funcionar en el ejemplo referenciado para hacer que los datos de mensaje decodificado de un indicio decodificable de la representación R202 se emitan en respuesta a un operador que diga la palabra "UNO", para hacer que los datos de mensaje decodificado del indicio decodificable de la representación R204 se emitan en respuesta a un operador que diga la palabra "DOS" y para hacer que los datos de mensaje decodificado del indicio decodificable de la representación R206 se emitan en respuesta a un operador que diga la palabra "TRES".
En otro ejemplo de un control realizado en el bloque 1804 uno o más programas pueden hacer que la CPU 1060 determine cuando un determinado indicio decodificable ha sido seleccionado basándose en datos de imagen procesados capturados con el uso de un conjunto de imágenes. En un ejemplo, uno o más programas 1800 en el bloque 1804 pueden hacer que la CPU 1060 determine que un determinado indicio decodificable ha sido seleccionado basándose en datos de imagen procesados capturados por el conjunto 2400 de imágenes que tiene un eje 2025 de imágenes que se extiende hacia arriba. El conjunto 2400 de imágenes puede incluir un campo de visión que incluya un operador. En una realización, las imágenes capturadas usando el conjunto 2400 de imágenes pueden procesarse para determinar la información de seguimiento ocular, por ejemplo, los ejes retinianos en una realización. Los módulos de software que pueden emplearse para determinar la información de seguimiento ocular incluyen VISIONLAB.NET disponible en XENTRIX y el software de seguimiento ocular ISCAN disponible en Iscan, Inc. Dado que se conocen las posiciones relativas de las ubicaciones visualizadas de las representaciones R202, R204 y R206 y del eje 2025 de imágenes, la información de seguimiento ocular y de posición de la pantalla puede procesarse para determinar qué representación de indicio decodificable, por ejemplo, R202, R204 y R206 está mirando actualmente un operador. Se puede determinar que el indicio decodificable correspondiente a la representación que el operador está mirando es el indicio decodificable seleccionado.
En otra realización de una monitorización que puede ser realizada en el bloque 1804, uno o más programas 1800 pueden ser ejecutados en un aparato 1000 que es proporcionado por un aparato equipado con un procesador de gafas. En dicho aparato de imágenes, la pantalla 1420 puede ser proporcionada por una pantalla semitransparente montada en una montura de gafas. En dicha realización, el aparato 100 puede incluir un acelerómetro y un giroscopio y puede configurarse adecuadamente para que un operador pueda controlar un movimiento de un puntero a una ubicación de datos de imagen correspondiente a un indicio decodificable para la selección de un indicio decodificable. En tal realización, un operador puede controlar un movimiento de un puntero a través del movimiento de la cabeza, o por ejemplo, a través de la voz o a través de un controlador de puntero mecánico (por ejemplo, un teclado de control). Un ejemplo de aparato equipado con procesador incorporado en una gafa es el aparato equipado con procesador basado en una gafa del proyecto GOOGLE GLASS.
En un aspecto, el uno o más programas 1800 proporcionan que el aparato 1000 restrinja la salida de datos de mensaje decodificado de un indicio decodificable a un destino de salida a menos que un operador introduzca una entrada de control de operador para que el aparato 1000 emita datos de mensaje decodificado de un indicio decodificable seleccionado, por ejemplo, los indicios 202, 204, 206 decodificables de las representaciones R202, R204, R206 que pueden seleccionarse mediante un método expuesto en la presente memoria. En una realización, el aparato 1000 está configurado para que uno o más programas 1800 restrinjan al aparato 1000 para que no emita datos de mensajes descodificados distintos de los datos de mensajes descodificados de los indicios decodificables seleccionados durante cada modo de funcionamiento posible del aparato 1000. En una realización, el aparato 1000 está configurado para que uno o más programas 1800 restrinjan de tal manera que el aparato 1000 emita datos de mensaje decodificado distintos de los datos de mensaje decodificado de los indicios decodificables seleccionados durante solo modos de funcionamiento seleccionados del aparato 1000 (y no cada modo de funcionamiento posible).
En relación con los elementos resaltados que se exponen en las distintas vistas, los elementos resaltados R3XX son bordes visualizados, los elementos resaltados R4XX son mensajes decodificados visualizados, los elementos resaltados R5XX son índices visualizados, los elementos resaltados R6XX son imágenes de productos visualizadas, el elemento resaltado R7XX es un precio visualizado, el elemento resaltado R8XX es un recuento de caracteres visualizado (número de caracteres), el elemento resaltado R9XX es un tipo de indicio decodificable visualizado. Los tipos de elementos resaltados indicados pueden visualizarse en cualquier combinación posible, por ejemplo, solo uno de ellos visualizado en asociación con un indicio decodificable o todos ellos visualizados en asociación con un indicio decodificable. En una realización, uno o más elementos resaltados visualizados en asociación con un indicio decodificable pueden ser visualizados en un color determinado, por ejemplo, un color predeterminado. En una realización, el color determinado es un color brillante, por ejemplo, rojo, para aumentar el efecto de dirigir la atención. En relación con la FIG. 5, los elementos resaltados R302, R304 y R306 son elementos resaltados de borde, los elementos resaltados R404, R406 y R408 son elementos resaltados de mensajes decodificados, los elementos resaltados R502, R504 y R506 son elementos resaltados de índices. En relación con la FIG. 9, el elemento resaltado R608 es un elemento resaltado de la imagen del producto y el elemento resaltado R708 es un elemento resaltado de precio. En relación con la FIG. 10, los elementos resaltados R310, R312 y R314 son elementos resaltados de borde, los elementos resaltados R410, R412 y R414 son elementos resaltados de mensaje decodificado, los elementos resaltados R510, R512 y R514 son elementos resaltados de índice. En la FIG. 11,<r>216, R218, R220, R222 y R224 son representaciones de indicio, los elementos resaltados R316, R318, R320, R322 y R324 son elementos resaltados de borde, los elementos resaltados R416, R418, R420, R422 y R424 son elementos resaltados de mensaje decodificado, los elementos resaltados R516, R518, R520, R522 y R524 son marcas de índice, los elementos resaltados R816, R818, R820, R822 y R824 son elementos resaltados de recuento de caracteres y los elementos resaltados R916, R918, R920, R922 y R924 son elementos resaltados de tipo de indicio decodificable.
Uno o más programas 1800 pueden almacenarse en un medio de almacenamiento legible por ordenador no transitorio, por ejemplo, la memoria 1082 o 1084. Uno o más programas 1800 pueden comprender lógica de código de programa, por ejemplo, instrucciones para su ejecución por un procesador para la realización de un método expuesto en la presente memoria, por ejemplo, como se expone en relación con la FIG. 8. El medio legible por ordenador puede ser, por ejemplo, un dispositivo de memoria basado en un circuito integrado semiconductor, un disco compacto, un disquete, una unidad USB, un dispositivo de memoria flash, un disco duro. Uno o más programas 1800 pueden almacenarse en un medio de almacenamiento legible por ordenador proporcionado por uno o más dispositivos de memoria de una memoria de un aparato externo equipado con CPU (por ejemplo, un servidor, un aparato externo configurado en la manera del aparato 1000), y descargarse al aparato 1000. Uno o más programas 1800 pueden almacenarse en un medio de almacenamiento legible por ordenador proporcionado por uno o más dispositivos de memoria de una memoria 1085 del aparato 1000. En una realización, uno o más programas 1800 pueden almacenarse en un medio de almacenamiento legible por ordenador que sea físicamente transportable, por ejemplo, un disco compacto, un disquete o una unidad de memoria USB.
Claims (19)
1. Un dispositivo (100, 1000) lector de indicios, que comprende:
uno o más procesadores (1060);
una memoria (1085);
un subsistema (1040) de imágenes configurado para adquirir una imagen de los indicios (15, 202, 204, 206) decodificables;
una pantalla (54); y
una interfaz (1604, 1608) de comunicación;
en donde dicho dispositivo está configurado, en respuesta a la adquisición de una imagen de uno o más objetos dentro de un campo de visión (140) de dicho subsistema de imágenes, para localizar dentro de dicha imagen y decodificar uno o más indicios decodificables;
en donde dicho dispositivo está configurado además para visualizar dicha imagen en dicha pantalla y marcar visualmente dicho uno o más indicios decodificables decodificados con éxito;
caracterizado por que dicho dispositivo está configurado además para visualizar una imagen del producto en una ubicación de una representación de la imagen asociada de cada uno o más indicios decodificables decodificados con éxito, dicha imagen del producto está asociada con los indicios decodificables decodificados con éxito por dicho dispositivo basándose en una tabla de búsqueda recuperada de una base de datos;
en donde dicho dispositivo está además configurado, en respuesta a la aceptación de la entrada del usuario que selecciona al menos un indicio decodificable decodificado con éxito de dicho uno o más indicios decodificables decodificados con éxito visualizados, para emitir al menos un mensaje decodificado correspondiente al al menos un indicio decodificable decodificado con éxito seleccionado y/o al menos una imagen del producto asociada con el al menos un indicio decodificable decodificado con éxito seleccionado y/o datos determinados cuando se decodifica el al menos un indicio decodificable decodificado con éxito seleccionado.
2. El dispositivo (100, 1000) de lectura de indicios según la reivindicación 1, en donde dicho dispositivo es proporcionado por un teléfono inteligente, una tableta o un asistente digital personal.
3. El dispositivo (100, 1000) lector de indicios según la reivindicación 1, en donde dicho subsistema (1040) de imágenes comprende:
un sensor (1032) de imagen bidimensional configurado para emitir una señal analógica representativa de la luz reflejada por un objeto ubicado dentro de un campo de visión de dicho subsistema de imágenes;
un amplificador (1036) configurado para emitir una señal analógica amplificada mediante la amplificación de dicha señal analógica leída por dicho sensor de imagen; y
un convertidor (1037) analógico-digital (A/D) configurado para convertir dicha señal analógica amplificada en una señal digital que represente dicha imagen adquirida.
4. El dispositivo (100, 1000) lector de indicios según la reivindicación 1, configurado además (i) para aceptar la entrada del usuario que selecciona dentro de dicha imagen visualizada al menos un indicio (15, 202, 204, 206) decodificable que no esté marcado como decodificado con éxito, y (ii) para decodificar dicho al menos un indicio decodificable.
5. El dispositivo lector de indicios según la reivindicación 1, en donde dicha memoria (1085) incluye instrucciones (1800) ejecutables capaces de configurar dicho uno o más procesadores (1060) para:
adquirir, usando al menos un procesador de dicho uno o más procesadores, una imagen de uno o más objetos con uno o más indicios (15, 202, 204, 206) decodificables;
localizar, usando al menos un procesador de dicho uno o más procesadores, uno o más decodificables indicios dentro de dicha imagen;
decodificar, usando al menos un procesador de dicho uno o más procesadores, dicho uno o más indicios decodificables;
visualizar, usando al menos un procesador de dicho uno o más procesadores, dicha imagen; marcar visualmente, usando al menos un procesador de dicho procesador o procesadores, dicho uno o más indicios decodificables decodificados con éxito dentro de dicha imagen visualizada;
transmitir, usando al menos un procesador de dicho uno o más procesadores, a un ordenador (171) externo, al menos un mensaje decodificado correspondiente al al menos un indicio decodificable decodificado con éxito seleccionado y/o al menos una imagen del producto asociado con el al menos un indicio decodificado con éxito seleccionado y/o datos determinados cuando se decodifica el al menos un indicio decodificable decodificado con éxito seleccionado.
6. El dispositivo (100, 1000) de lectura de indicios según la reivindicación 1, en donde dichas instrucciones (1800) ejecutables son además capaces de configurar uno o más procesadores (1060) para que dicha etapa de aceptar la entrada del usuario comprenda aceptar la entrada del usuario que indica un orden en el que los mensajes decodificados correspondientes a dichos dos o más indicios (15, 202, 204, 206) decodificables deben transmitirse a dicho ordenador (171) externo.
7. El dispositivo (100, 1000) de lectura de indicios según la reivindicación 1, en donde dichas instrucciones (1800) ejecutables son además capaces de configurar uno o más procesadores (1060) para:
seleccionar dentro de dicha imagen visualizada al menos un indicio (15,202, 204, 206) decodificables que no esté marcado como decodificado con éxito; y
decodificar dicho al menos un indicio decodificable.
8. El dispositivo (100, 1000) de lectura de indicios según la reivindicación 1, en donde dichas instrucciones (1800) ejecutables son además capaces de configurar uno o más procesadores (1060) para que dicho marcado visual de dicho uno o más indicios (15, 202, 204, 206) decodificables decodificados con éxito dentro de dicha imagen visualizada se realice (i) resaltando dicho uno o más indicios decodificables decodificados con éxito, (ii) representando un recuadro delimitador alrededor de dicho uno o más indicios decodificables decodificados con éxito, o (iii) representando un marcador visual alrededor de un centro de dicho uno o más indicios decodificables decodificados con éxito.
9. El dispositivo (100, 1000) lector de indicios según la reivindicación 1, en donde la imagen del producto visualizada en la ubicación de la representación de la imagen asociada de cada uno de los uno o más indicios decodificables decodificados con éxito se visualiza de forma semitransparente, para que una representación de un indicio decodificable decodificado con éxito pueda verse a través de la imagen del producto.
10. Un método de lectura de indicios en un dispositivo (100, 1000) de lectura de indicios que comprende: uno o más procesadores (1060); una memoria (1085); un subsistema (1040) de imágenes configurado para adquirir una imagen de indicios (15, 202, 204, 206) decodificables; una pantalla (54); y una interfaz (1604, 1608) de comunicación;
el método que comprende:
en respuesta a la adquisición de una imagen de uno o más objetos dentro de un campo de visión (140) de dicho subsistema de imágenes, localizar dentro de dicha imagen y decodificar uno o más indicios decodificables;
visualizar dicha imagen en la pantalla y marcar visualmente dicho uno o más indicios decodificables decodificados con éxito;
caracterizado por que el método comprende además:
asociar cada uno de los indicios decodificados con éxito con una imagen del producto basándose en una tabla de búsqueda recuperada de una base de datos;
visualizar la imagen del producto en una ubicación de una representación de la imagen asociada de cada uno de los uno o más indicios decodificados, y
en respuesta a la aceptación de la entrada del usuario que selecciona al menos un indicio decodificable de dichos uno o más indicios decodificables visualizados, emitir al menos un mensaje decodificado correspondiente al al menos uno de los indicios decodificables seleccionados y/o al menos una imagen del producto asociada con el al menos un indicio decodificable seleccionado y/o datos determinados cuando se decodifica el al menos un indicio decodificable seleccionado.
11. El método según la reivindicación 10, en donde dicho dispositivo (100, 1000) de lectura de indicios es proporcionado por un teléfono inteligente, una tableta o un asistente digital personal.
12. El método según la reivindicación 10, en donde dicho subsistema (1040) de imágenes comprende:
un sensor (1032) de imagen bidimensional configurado para emitir una señal analógica representativa de la luz reflejada por un objeto ubicado dentro de un campo de visión de dicho subsistema de imágenes;
un amplificador (1036) configurado para emitir una señal analógica amplificada mediante la amplificación de dicha señal analógica leída por dicho sensor de imagen; y
un convertidor (1037) analógico-digital (A/D) configurado para convertir dicha señal analógica amplificada en una señal digital que represente dicha imagen adquirida.
13. El método según la reivindicación 10, que comprende además:
(i) aceptar la entrada del usuario que selecciona dentro de dicha imagen visualizada al menos un indicio (15, 202, 204, 206) decodificable que no esté marcado como decodificado con éxito, y
(ii) decodificar dicho al menos un indicio decodificable.
14. El método según la reivindicación 10, que comprende además:
adquirir una imagen de uno o más objetos con uno o más indicios (15, 202, 204, 206) decodificables;
localizar uno o más indicios decodificables dentro de dicha imagen;
decodificar dicho uno o más indicios decodificables;
visualizar dicha imagen;
marcar visualmente dicho uno o más indicios decodificables decodificados con éxito dentro de dicha imagen visualizada;
transmitir a un ordenador (171) externo, al menos un mensaje decodificado correspondiente al al menos un indicio decodificable decodificado con éxito seleccionado y/o al menos una imagen del producto asociada con el al menos un indicio decodificable decodificado con éxito seleccionado y/o datos determinados cuando se decodifica el al menos un indicio decodificable decodificado con éxito seleccionado.
15. El método según la reivindicación 10, en donde aceptar la entrada del usuario comprende aceptar la entrada del usuario que indica un orden en el que los mensajes decodificados correspondientes a dichos dos o más indicios (15, 202, 204, 206) decodificables deben transmitirse a dicho ordenador (171) externo.
16. El método según la reivindicación 10, que comprende además:
seleccionar dentro de dicha imagen visualizada al menos un indicio (15,202, 204, 206) decodificable que no esté marcado como decodificado con éxito; y
decodificar dicho al menos un indicio decodificable.
17. El método según la reivindicación 10, en donde marcar visualmente dicho uno o más indicios (15, 202, 204, 206) decodificables decodificados con éxito dentro de dicha imagen visualizada se realiza (i) resaltando dicho uno o más indicios decodificables decodificados con éxito, (ii) representando un recuadro delimitador alrededor de dicho uno o más indicios decodificables decodificados con éxito, o (iii) representando un marcador visual alrededor de un centro de dicho uno o más indicios decodificables decodificados con éxito.
18. El método según la reivindicación 10, en donde la imagen del producto visualiza en la ubicación de la representación de la imagen asociada de cada uno de los uno o más indicios decodificables decodificados con éxito se visualiza de forma semitransparente, para que una representación de un indicio decodificable decodificado con éxito pueda verse a través de la imagen del producto.
19. Un programa informático que, cuando es ejecutado por un dispositivo (100, 1000) lector de indicios comprende: uno o más procesadores (1060); una memoria (1085); un subsistema (1040) de imágenes configurado para adquirir una imagen de indicios (15, 202, 204, 206) decodificables; una pantalla (54); y una interfaz (1604, 1608) de comunicación; hace que el dispositivo lector de indicios realice un método según la reivindicación 10.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261726747P | 2012-11-15 | 2012-11-15 | |
US201261737552P | 2012-12-14 | 2012-12-14 | |
US13/743,477 US9064168B2 (en) | 2012-12-14 | 2013-01-17 | Selective output of decoded message data |
US13/748,926 US9208367B2 (en) | 2012-11-15 | 2013-01-24 | Mobile computer configured to read multiple decodable indicia |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2972819T3 true ES2972819T3 (es) | 2024-06-17 |
Family
ID=50941089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES21160116T Active ES2972819T3 (es) | 2012-11-15 | 2013-11-08 | Ordenador móvil configurado para leer múltiples indicios decodificables |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP4345681A3 (es) |
JP (6) | JP6339349B2 (es) |
CN (1) | CN204155287U (es) |
DE (4) | DE202013012942U1 (es) |
ES (1) | ES2972819T3 (es) |
PL (1) | PL3866051T3 (es) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016110226A (ja) * | 2014-12-02 | 2016-06-20 | 東芝テック株式会社 | 読取装置 |
SG10201504283QA (en) | 2015-05-30 | 2016-12-29 | Menicon Singapore Pte Ltd | Visual Trigger in Packaging |
US9990524B2 (en) * | 2016-06-16 | 2018-06-05 | Hand Held Products, Inc. | Eye gaze detection controlled indicia scanning system and method |
JP2018018372A (ja) | 2016-07-29 | 2018-02-01 | オリンパス株式会社 | バーコード読取装置、バーコード読取方法、及びプログラム |
CN107609437B (zh) * | 2017-08-17 | 2020-06-30 | 阿里巴巴集团控股有限公司 | 一种目标图形码识别方法和装置 |
JP2019082871A (ja) * | 2017-10-31 | 2019-05-30 | 富士通株式会社 | 表示制御プログラム、表示制御方法、および表示制御装置 |
US11270422B2 (en) * | 2018-10-03 | 2022-03-08 | Helix OpCo, LLC | Secure genomic data accessioning |
CN109409161B (zh) | 2018-10-22 | 2020-08-11 | 腾讯科技(深圳)有限公司 | 图形码识别方法、装置、终端及存储介质 |
US10558831B1 (en) * | 2018-12-10 | 2020-02-11 | Zebra Technologies Corporation | Method and apparatus for decoding spatially related indicia |
JP7323901B1 (ja) | 2022-11-09 | 2023-08-09 | ソノー電機工業株式会社 | 情報処理プログラム及び情報処理端末 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5821523A (en) * | 1992-03-12 | 1998-10-13 | Bunte; Alan G. | Combined code reader and digital camera using a common photodetector |
US5902988A (en) * | 1992-03-12 | 1999-05-11 | Norand Corporation | Reader for decoding two-dimensional optically readable information |
JPH08263585A (ja) * | 1995-03-24 | 1996-10-11 | Casio Comput Co Ltd | コード読取装置 |
JP2001028033A (ja) * | 1999-07-14 | 2001-01-30 | Oki Electric Ind Co Ltd | バーコード認識結果の表示方法およびバーコード認識装置 |
JP4385266B2 (ja) * | 1999-08-31 | 2009-12-16 | ソニー株式会社 | 情報処理装置及び情報処理方法並びに記録媒体 |
JP2004110670A (ja) * | 2002-09-20 | 2004-04-08 | Denso Wave Inc | 情報コード読取装置 |
JP4192847B2 (ja) * | 2004-06-16 | 2008-12-10 | カシオ計算機株式会社 | コード読取装置およびプログラム |
JP2007279155A (ja) * | 2006-04-03 | 2007-10-25 | Mitsubishi Electric Corp | 情報端末装置及び画像表示方法 |
JP4968043B2 (ja) * | 2007-12-19 | 2012-07-04 | 株式会社デンソーウェーブ | 光学的情報読取装置 |
US8994513B2 (en) * | 2009-12-30 | 2015-03-31 | Psion Inc. | Adaptive multi-sensor handheld computing device |
JP5613592B2 (ja) * | 2011-03-01 | 2014-10-29 | シャープ株式会社 | バーコード読み取り装置 |
-
2013
- 2013-11-08 ES ES21160116T patent/ES2972819T3/es active Active
- 2013-11-08 PL PL21160116.6T patent/PL3866051T3/pl unknown
- 2013-11-08 DE DE202013012942.5U patent/DE202013012942U1/de not_active Expired - Lifetime
- 2013-11-08 DE DE202013012944.1U patent/DE202013012944U1/de not_active Expired - Lifetime
- 2013-11-08 EP EP24156878.1A patent/EP4345681A3/en active Pending
- 2013-11-08 DE DE202013012943.3U patent/DE202013012943U1/de not_active Expired - Lifetime
- 2013-11-08 DE DE202013012941.7U patent/DE202013012941U1/de not_active Expired - Lifetime
- 2013-11-14 JP JP2013235590A patent/JP6339349B2/ja active Active
- 2013-11-14 CN CN201320897436.6U patent/CN204155287U/zh not_active Expired - Lifetime
-
2018
- 2018-05-10 JP JP2018091123A patent/JP6608998B2/ja active Active
-
2019
- 2019-10-23 JP JP2019192603A patent/JP7096804B2/ja active Active
-
2021
- 2021-09-27 JP JP2021156354A patent/JP7167279B2/ja active Active
-
2022
- 2022-10-26 JP JP2022171288A patent/JP7460728B2/ja active Active
-
2024
- 2024-03-21 JP JP2024045112A patent/JP2024069640A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
DE202013012944U1 (de) | 2023-03-07 |
CN204155287U (zh) | 2015-02-11 |
JP2023001179A (ja) | 2023-01-04 |
JP2014099176A (ja) | 2014-05-29 |
EP4345681A2 (en) | 2024-04-03 |
PL3866051T3 (pl) | 2024-04-22 |
JP2022002124A (ja) | 2022-01-06 |
JP2018139141A (ja) | 2018-09-06 |
DE202013012942U1 (de) | 2023-03-02 |
EP4345681A3 (en) | 2024-06-19 |
JP6339349B2 (ja) | 2018-06-06 |
DE202013012941U1 (de) | 2023-03-02 |
DE202013012943U1 (de) | 2023-03-06 |
JP2020021511A (ja) | 2020-02-06 |
JP2024069640A (ja) | 2024-05-21 |
JP7167279B2 (ja) | 2022-11-08 |
JP7096804B2 (ja) | 2022-07-06 |
JP6608998B2 (ja) | 2019-11-20 |
JP7460728B2 (ja) | 2024-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2972819T3 (es) | Ordenador móvil configurado para leer múltiples indicios decodificables | |
US9818013B2 (en) | Mobile computer configured to read multiple decodable indicia | |
US9715614B2 (en) | Selective output of decoded message data | |
US9224024B2 (en) | Invariant design image capture device | |
US9390304B2 (en) | Encoded information reading terminal with micro-projector | |
JP2014099176A5 (es) | ||
KR101860569B1 (ko) | 문자 및 바코드를 동시에 인식하는 문자 및 바코드 인식 장치 및 그 제어 방법 | |
US20140001267A1 (en) | Indicia reading terminal with non-uniform magnification | |
US9100576B2 (en) | Camera positioning tool for symbology reading | |
US20160300090A1 (en) | Aimer accessory for capturing a coded image | |
CN107392069B (zh) | 用于采用立体成像来解码可解码标记的标记读取设备和方法 | |
US9959442B2 (en) | Extended depth of field in imaging machine-readable symbol reader using image side telecentric lens | |
CN102077218A (zh) | 具有提高的可视度的瞄准图案的成像***和方法 | |
US20130206838A1 (en) | System having imaging assembly for use in output of image data | |
US9990526B2 (en) | System for capturing a coded image | |
EP2733641B1 (en) | Mobile computer configured to read multiple decodable indicia |